--- title: "Anthropic创始人行动手册:打造一家AI-Native创业公司(附36页中文PDF)" source_url: https://mp.weixin.qq.com/s/_IuT9RX6WC34J_Js2sAl4Q tags: [wechat, article, claude, openai, gpt, agent, harness, openclaw] source_type: wechat provenance_state: extracted sha256: 04da01d83c01f4b0a04d21f3ccf4960d12651ea75ede4da4bf0efe43a29ee7e3 --- --- ANTHROPIC · 2026.05 # 创始人行动手册 The Founder's Playbook 打造一家 AI-Native 创业公司 花叔 x Claude Code 译 这本《创始人行动手册》是 Anthropic上周发布的官方手册,原版 36 页。从Anthropic产品两天一小版,每周一大版的更新节奏来说,我觉得他们是这个时代最AI Native的大公司了。这本手册里融入了不少他们内部的经验以及他们所服务的最先进的AI native初创公司的做法。看完之后觉得它把AI 时代怎么创业这件事讲得还挺清楚的。 所以我烧了几百万 tokens,让 Claude Code 替我把全本译成中文,并按原版结构 1:1 重新排版。本文是面向公众号阅读的线性长文版,约 22000 字。如果你想要排版精美的横版 PDF,文末有下载入口。 **本译本仅供个人学习与内部研究使用,不做商业发行。**原版下载请到 claude.com/blog/the-founders-playbook。 目录 01创业生命周期,为 2026 重新启动 02「创始人」这件事正在改变 03想法阶段 04MVP 阶段 05发布阶段 06规模化阶段 07工作没变,规则变了 08Resources Chapter 1 ## 创业生命周期,为 2026 重新启动 ## 创业生命周期,为 2026 重新启动 AI 正在重塑创业公司的搭建方式。今天,从未写过一行代码的创始人正在把生产级应用交付给用户,「10 人独角兽」也从草根逆袭故事变成了一份可以认真执行的行动方案。 到 2026 年,AI 可以写生产环境代码、做市场调研、梳理竞争格局、起草投资人材料,并把运营流程自动化跑起来。过去那条很陡的学习曲线被它抹平了。即便是经验丰富的技术创始人,以前也得花大量时间去整合工具、平台和系统,才能把想法落地。AI 最大的贡献,是把「谁能开一家创业公司、谁能做出一款产品」这件事拉到了同一条起跑线上。 2026 年,一个好想法能把创始人带得比以往任何时候都更远。Agentic 编程(agentic coding)把过去需要一整支工程团队才能完成的活,压缩成了创始人一个人就能交付的体量。 传统的创业增长曲线,默认路径是:验证 → 融资 → 招人 → 搭建 → 再融资 → 增长 → 继续招人 → 循环往复。现在,AI 已经打破了一个默认预期:创业生命周期里每进入一个新阶段,就必须配上更大的团队、不同的技能组合和新一轮融资。 这本手册会按照这些新现实,重新画出创业旅程的四个核心阶段:想法、MVP、发布、规模化。我们会逐阶段来看:当 AI 成为技术和组织发展的核心基础设施时,每个阶段长什么样、该用哪些工具,以及走在前面的创始人如何用这些工具把时间线压短。如果你想规划从想法到 exit(退出,指被收购或上市)的最短路径,请继续往下读。 Chapter 2 ## 「创始人」这件事正在改变 ## 「创始人」这件事正在改变 过去,创始人是被「能做什么」定义的:技术型创始人写代码,非技术型创始人跑业务、谈合同。但 2026 年创始人手上的模型、系统和 AI agent,已经把「能造东西的人」和「有想法值得造的人」之间那堵墙拆掉了。 AI-Native 创业公司正在从根上改变「当创始人」这件事的含义。现在,一个完全没有工程背景的人,能做出真正能跑起来的生产级软件,把自己的想法落地;而一个技术很强但商业上经验不多的创始人,也能轻松产出 GTM 策略、财务模型和高度打磨的 pitch deck(融资演示文稿)。 过去,创始人大部分时间都在执行模式里:写代码、管人、处理日常运营。在 AI-Native 创业公司里,创始人不再只是个人贡献者,而更像是一群 agent 的编排者(orchestrator)。这些 agent 是专门化的 AI 助手,能读文件、跑命令、执行代码,甚至浏览网页。创始人的注意力开始往上走,转向更高阶的工作:产生想法,然后指挥这些 AI agent、工具和小团队把想法跑出来。 AI 作为核心基础设施最革命性的影响,是把那些有领域专长但没有工程背景的创始人也解锁了出来。当创始人这个群体不再只来自工程背景,你会看到由完全不同人生经验的人创办的公司,去解决传统技术创始人通道从未优先关注,甚至从未注意到的真实问题。 ### AI 为精益创业带来的能力 传统创业模型假定你必须招工程师来造、招销售来卖、招运营来跑公司。「人头数」被当作组织势能和产品成熟度的信号。 2026 年的早期创业公司则完全不一样。它们从设计上就极度精益,往往只有创始人一个人,或者再加上少数几位伙伴。把技术和组织发展都建立在「AI 即基础设施」之上,它们可以在扩张团队之前,就跑通产品验证、做出早期收入,甚至实现盈利。AI 在三个地方能让一家创业公司像大得多的组织一样运转:研究、Agentic 编程,以及把关键业务运营做成工作流自动化。 ### 对话式智能与研究 **类比:**任何领域随叫随到的专家 想一下,一个创始人在头一年里几乎肯定不懂但又必须搞清楚的那些事:工资系统怎么搭?产品开发的冲刺怎么排?一份紧凑的投资人备忘录怎么写? 早期创业的这类问题,过去答案几乎都一样:找个懂的人。对一个自筹资金或种子轮前的创始人来说,这意味着把本该用来搭东西的时间花在打听上,或者把早期资金烧一截给顾问。现在,他们手里就有一个几乎覆盖所有领域、随时在岗的专家:AI。 - 深度研究:竞品分析、市场规模测算、财务建模 - 文档起草:pitch deck、案例研究、投资人备忘录、PRD(产品需求文档) - 战略思考伙伴:反方代言人分析、事前剖析(pre-mortem)、情境推演、路线图优化 ### Agentic 编程 **类比:**那位永远在线、永不被卡住的工程师 过去要做出软件,要么得有个技术合伙人,要么外包给开发公司,要么得有足够长的跑道,先把一支工程团队招齐,才能写下第一行生产代码。 Agentic 编程工具现在让每一个有想法的创始人,都能用大白话描述自己想做什么,再指挥 AI 去生成、测试、调试、重构一份生产级代码库,速度和体量都不输一支完整的工程团队。 从「我有一个想法」到「我有一个产品」之间的时间线被压短了。创始人现在聚焦的是「该做什么、为什么做」,而 AI 负责把面向真实用户的那部分基础设施真正搭起来。 ### 工作流自动化 **类比:**一支随叫随到的自动化运营团队 就算创始人能像顾问一样做研究、像工程团队一样写代码,战略规划和产品开发之外还有一整类活必须有人来做:排期、更新 CRM、拉周报、维护文档、发布内容、跟进合规要求、把公司赖以运转的工具和系统之间的连接管起来。这些事一样要发生。在精益创业公司里,这些活主要落在创始人自己头上,会大量吃掉本该用于高阶判断的时间和注意力。 AI 工具的工作流自动化能把这笔税卸掉。重复性的运营任务可以配置成自动跑:deal 状态一变,CRM 就自动更新;周报自己汇总;产品文档跟着产品改动同步更新。关键的一点是,Claude Cowork 能直接集成创业公司用的那一整套互联系统,比如项目管理工具、沟通栈、数据源,不需要再有人专门去搭和维护这些集成。在第零天创业公司里,那个人几乎总是创始人本人。 ### 时机和编排,是一切 能把 AI 的研究、自动化和 agentic 编程能力真正用起来的创始人,可以用远超团队规模所暗示的杠杆来跑一家公司。他们也能把绝大部分时间和带宽,留给那些真正重要的工作。 但这套东西不会自己跑。负责编排这些 AI 工具的创始人,得知道怎么用、什么时候用。本手册接下来的部分,就是逐阶段拆解 AI-Native 创业路径上的目标和挑战,以及在每个阶段如何把 AI 工具用到位。 Chapter 3 ## 想法阶段 ## 想法阶段 每一位创始人都从同一个地方出发:一个让你停不下来去想的问题。这是创业里想法撞上现实的阶段。2026 年的创业成功,要求你具备一种纪律:证据不充分之前,不动手造。 这一阶段的工作是研究、客户发现、竞品分析,以及对反证(disconfirming evidence)的诚实评估。所有这些都要发生在你让 Claude Code 写下第一行生产环境代码之前。 ### 想法阶段·目标 在想法阶段,创始人的核心目标是以研究为导向的验证:在投入资源开始造之前,攒起扎实证据,证明一个真实问题确实存在,并且你提出的方案确实能解决它。 实务上,想法阶段就是一系列问题,大致按这个顺序回答: - 这个问题真实、具体、足够高频,值得围绕它做一家公司吗? - 到底谁有这个问题?这些人能构成一个市场吗? - 有没有人在解决?如果有,他们怎么做的,做得多好? - 一个真正解决这个问题的方案需要做到什么?我的想法做到了吗? 这些问询加起来,回答一个终极问题:这值不值得做? 所以说,先具体,再行动。「大家做报销很头痛」是观察;「中型公司的财务经理每周要花 4 个小时以上核对报销提交,因为现有工具不和会计软件打通」才是一个可被测试的假设。 ### 想法阶段·退出标准 想法阶段的退出条件,是找到问题-方案匹配(problem-solution fit)。你要在开始造解决方案之前,建立起质性证据,主要来自真实的人类对话,证明你正在为真实的人解决真实的问题。 当你能对以下三个问题都回答「是」,就可以离开想法阶段了: - 这个问题真实且具体吗?你必须能精确说出谁经历这个问题、多频繁、影响多严重、目前他们怎么处理。 - 你的方案对应的是真实问题吗?不是你最初假设的问题,而是验证过程里浮现出来的那一个。两者有时相同,但并不总是。 - 你有足够信号去开干吗?这个阶段你永远不会有 100% 确定,而一味等待确定本身就是一种失败模式。但你需要足够多的质性证据,让投入做 MVP 看起来是有理有据的决定,而不是一次信仰行动。 ### 想法阶段·挑战 想法阶段是创业旅程里最重要的工作发生的地方,因为最致命的错误就在这里酿成。现在搞错一点,能很快把刚起步的事业带偏。多数想法阶段的挑战,归根到底都是前进速度超过了理解所能支撑的范围。带着思考和审慎前行的创始人,才能稳步推进。 ### 把「造」误当作「验证」 **挑战:**当技术障碍被移除,激情冲昏头的创始人很可能跳过创业旅程里最重要的工作:验证自己的想法是不是人们真正需要、也真正会用的方案。 即便在当下的 agentic 编程(agentic coding)时代之前,也有 42% 的创业公司失败,是因为做了没人想要的东西。如今像 Claude Code 这样的 agentic 编程方案已经把「我有一个想法」到「我有一个产品」之间的距离大幅压缩,这个失败率只会继续往上走。 现在确实是怀揣绝妙点子的创业者最好的时代。但一个看起来像产品的原型可以如此快速、轻松地搭起来,反直觉地,这恰恰给 AI-Native 创业公司带来了真正危险的存在性风险。 直到不久前,造东西仍需要真金白银的开发时间和预算,搭个最基本的原型通常都要几个月。如今技术开发门槛基本消失,AI 让创始人太容易直接跳进建造,完全跳过验证它在真实世界里是否有用。 抵达问题-方案匹配,必须先验证假设,再开始造。但许多首次创业者,甚至有经验的创业者,都错误地以为 AI 能让这一步短路,把流程改成:有想法 → 立刻造原型 → 把「原型存在」本身当作验证。原型变成了「我的假设一开始就对」的理由,而那个假设到底是不是真的,从未被检验。 一个能跑的原型很容易被误当作「我正在解决真实问题」的具体证据,但它不是。原型只是你和潜在用户对话时一个有用的压力测试道具。对话本身,才是真正的证据。 ### 过早规模化 **挑战:**当造东西既不费力又即时,你的执行速度可以远远超过业务真正需要的水平。 过早规模化的意思是:在还没有真正验证一条产品路径值得投入之前,你就已经把自己锁在这条路径上。 这一直是创业杀手,但 AI 让创始人更容易在毫无察觉时掉进这个陷阱。Agentic 编程助手太强大了,执行很容易跑在问题-方案匹配验证之前,而你根本没意识到自己已经偏航。 它会围绕一个根本错误的前提,带着同样的热情去生成、测试、调试、重构代码库。系统里的智能是你的。这一阶段的最高指令是:让你的判断力始终走在建造之前,尤其是在建造如此快速、感觉如此轻松的时候。 ### 客观性丧失 **挑战:**让 AI 工具去找支持你既有看法的证据,它一定能找到。确认偏误(confirmation bias)现在配上了一台研究引擎。 确认偏误一直是创业里的职业病:创始人天然对自己的想法充满热情。现在 AI 工具给确认偏误加了很强的外挂。让 AI 验证你的创业想法,它能找出佐证;让它估算潜在市场,它能找到让 TAM(总市场/可服务市场/可获得市场)看起来值得融资的数字。 AI 沿着你的方向走。这意味着一个不问难题的创始人,现在能比以往任何时候都更快构建出一套精致、看似研究充分的坏点子论据,自己还觉得是在做尽调。解药还是同一个工具,只是方向反过来:AI 验证一个想法有多彻底,压力测试(pressure-test)一个想法就有多彻底。当研究和结构化对抗性思考浮现出反方证据、提示想法需要修正时,这就是 pivot(调整方向)的信号。 ## Claude 如何帮助想法阶段的创始人 把你的 AI-Native 创业概念推过想法阶段,常常让人觉得漫长得没头。你是创始人,你只想动手造。但这个至关重要的启动阶段,本质上是一次研究和验证练习,意思是先用那些帮你想得更严谨的工具,不要急着写代码。下面是如何跨 Claude 的三个产品面(Chat、Claude Cowork、Claude Code),尽快又尽职地走完想法阶段。 Chat、Claude Cowork 还是 Claude Code:怎么选合适的 Claude 产品面 AI 让创业者更快交付、自动化繁琐工作流、在规模上运作。但你用哪一面,取决于手头任务。 **Chat** 适合无需离开当前 app 就能完成的快速交流:从一份密集的投资人备忘里抓一句话要点、在董事会前快速核查一个论断、读懂团队一条很长的 Slack 串。 **Claude Cowork** 适合真正需要时间的知识工作:从多个来源拉资料、整理之后产出完成品,比如文档、deck 或电子表格。比如把一文件夹的客户访谈纪要变成下次产品评审用的主题发现文档;融资前把十几家友商网站汇成一张竞争格局图;或者一个周一早上的常驻任务,从你的工具里拉指标,把周度 KPI 简报丢进共享文件夹。 **Claude Code** 是给团队工程师用的 agentic 编程环境:直接接入代码库、Plan Mode、git 集成、本地/IDE/沙盒云环境。精益团队在不断成长的代码库里交付功能、迁移 MVP 时期的遗留代码、把原型推到生产,都在这里完成,不用等更多人头到位。 如果你要做的是…用为什么这样选一个问题、一次改写、一次快速头脑风暴Chat快、对话式、无需配置研究、分析,或基于你的文件和系统产出一份成型文档Claude Cowork文件夹访问、连接器、Skills、计划任务写、测,或交付软件Claude Code代码库访问、diff、git、开发环境 三者底层是同一个 Claude;变的是它周围的工作空间。 ### 定义并压力测试问题假设 你的领域专长和前期研究已经产生了一个假设。第一项工作,是把它打磨到真正可被测试。Claude 在这里特别有用,它会逼你具体:究竟谁有这个问题?多频繁?多严重?他们目前怎么处理?任何不能精确回答这些问题的问题陈述,都还没准备好被验证。 **练习:**和 Claude 一起反复打磨你的问题陈述,直到它变成一个可被测试的假设。比如「合同审查耗时太长」没什么意义;但「中型公司的法务团队每个合同审查周期要花 3 天以上,因为修订意见散落在邮件串里,而不是一份带版本控制的文档」就非常可测试。 下一步,让 Claude 反过来论证你的想法,去找反证。这能浮现出负面市场信号、失败的竞品、用户行为模式,以及那些被「支持性综述」悄悄降权的结构性障碍。 目标是:在进入客户发现之前,你已经拿最强的反方论据把自己的假设压力测试过一遍。这样,用户访谈才会真正开放,而不是一次寻找确认的行动。 **注:**把 Claude 当作结构化的反方代言人来用,是 AI 创业生命周期每一个阶段都成立的核心用法。 ### 市场研究与竞争格局梳理 给竞品大小定个位 创业公司有一种特有现象叫「竞品忽视」(competitor neglect):你太专注自己的愿景和执行,于是系统性低估了同一赛道里别人在做什么。所幸 AI 给了解药:让 Claude 为这个赛道里的某个竞品写出最有说服力的论证,说明为什么它会成功而你不会。 Claude 可以分析为什么对方的方法其实更好,为什么客户会选他们,为什么你以为的差异化可能并没有那么守得住。 **练习:**让 Claude 按层级绘制你的竞争格局:直接竞品、间接竞品、潜在收购方,以及可能进入你所在赛道的相邻玩家。然后让它论证每一层为什么对你的成功构成真实威胁,而不是只列出最容易被你驳倒的那个版本。 市场研究 Claude Code 可以综合公开可得的客户反馈,浮现反复出现的抱怨和未满足的需求。附加价值是:这等于在白嫖竞品客户的质性研究。 **练习:**让 Claude Cowork 汇总关键来源里的竞品评论,找出现有方案仍未解决的高频抱怨。如果你的假设能解决其中一条或多条,这是问题-方案匹配的强信号;如果不能,也值得知道。 Claude Cowork 还能从密集的行业报告、分析师文档和市场研究材料里提取相关信息和数字。这些干净、合成后的输入,会成为 Claude 后续分析工作的理想上下文。 **练习:**基于公开数据构建 TAM/SAM/SOM 模型,并压力测试背后的假设。判断市场是在扩张、整合还是成熟;这个背景会影响你对时机和差异化的判断。再画出买方格局:谁掌握预算,谁影响决策,他们是不是同一个人。 趋势分析 最后,用 Claude 倾听早期信号,判断你是否在正确的时刻进入。追踪那些已经在讨论你这个问题的 subreddit 和 LinkedIn 群组,记下用户描述问题时使用的原话。让 Claude 找出曾经解决过类似问题的类比市场,提取哪些做法有效、哪些无效。浮现可能加速或威胁这个机会的监管、技术或人口趋势。 **练习:**让 Claude 找出三个可能在未来两年显著影响你市场的外部趋势(监管、技术或人口都行),并判断每一个分别是你具体假设的顺风还是逆风。 **注:**本节的市场研究与竞争格局梳理不是一次性练习。你会在 MVP 和发布阶段继续发现、继续演进思考,所以每当假设变化,都要重复这些练习。 ### 规划并设计客户发现 你从潜在用户对话里学到什么,取决于两件事:你问的问题质量,以及你有没有把这些问题问给对的人。Claude 特别适合帮你设计客户发现,包括找谁聊、问什么,以及怎么理解听到的内容。 找谁聊 一份精确的目标画像,比一长串联系人更有价值。画像里要包括最可能强烈经历这个问题的具体职位、公司类型、团队结构和资历层级。接着,识别这些人实际能在哪里被触达:社区、活动、LinkedIn 群组、Slack 工作区。最后建立一个优先级框架,按他们离问题有多近,决定先触达谁。 问什么 目标人群定义好之后,用 Claude 搭访谈框架:正确的问题、正确的顺序,结构能浮现人们「实际做了什么」,而不是「以为自己会做什么」。新手创始人最常犯的错,是问一个泛泛的未来式开放问题,比如「你会用这样的东西吗?」而不是追问相关的过去,比如「跟我讲讲你上一次处理这个问题的过程」。 Claude 也能指出你草稿里哪些问题在诱导受访者、哪些太宽泛、哪些会产生噪音而非信号。它还能帮你设计追问,用来处理回避,或深入挖掘那些重要但含糊的答案。 如果你的假设涉及多个 persona(用户画像),Claude 也能为每一类设计不同的问题组。财务经理和 CFO 面对同一个问题的关系并不相同,单一访谈框架会把这种差异抹平。 **练习:**先手写访谈问题,再让 Claude 审。明确要它标出任何诱导性、面向未来、过宽,或容易引出「社会期许答案」而非真实答案的问题。然后让它为访谈中最可能出现回避的两三个时刻设计追问。 访谈后分析 每次对话后用 Claude 复盘:把笔记喂给它,让它指出哪些确认了你的假设、哪些挑战了它、哪些是真正出乎意料的。 收集一批访谈之后,把全部访谈笔记交给 Claude Cowork,让它浮现反复出现的主题、矛盾,以及正反两个方向最强的信号。再把合成结果带回 Claude,让它指出:你对数据的解读,哪里可能是在把信息凑成你想听到的样子,而不是数据真正呈现的样子。 **练习:**每完成五次访谈,就让 Claude Cowork 综合笔记并产出两张清单:支持你假设的证据,挑战你假设的证据。如果第一张清单明显更长,让 Claude 判断这种不对称是数据本身如此,还是你一开始就希望找到这些。 ### 客户触达与排期 用 Claude Cowork 自动化「建立联系人列表、跑触达、安排用户访谈」这些运营负担。 Claude Cowork 可以基于你和 Claude 定义好的目标画像(包括职位、公司类型、资历层级),研究并整理出一份结构化的潜在客户名单和已验证的联系方式。随后批量起草个性化触达邮件,让每封都贴合对方的角色和处境。 回复进来之后,它通过 MCP 连接 Gmail 和 Google Calendar,管理邮件串、处理排期请求、把访谈放进日历。流程继续往后:Claude Cowork 按设定节奏生成跟进草稿(比如第七天跟进未回复联系人),并在每一步完成时更新追踪表,让你始终知道每个潜在对象在 pipeline 里的位置。 **练习:**把验证过的访谈目标画像交给 Claude Cowork,请它建立潜在客户列表、起草个性化触达序列,并建好一张追踪表(包含触达状态、跟进节奏、访谈完成情况)。然后让它负责协调,你专注准备对话本身。 ### 设计你的最终方案概念 你已经做完了验证工作:问题真实存在,你知道谁有这个问题,也有一个被证据支持的方案概念。用 Claude 从各个角度去发展并挑战这个方案概念:缺口在哪里?有哪些替代方案?这个方案要规模化成立,需要哪些条件?这是一个重要的现实检查:这个设计真的对应了验证过程揭示的那个问题,还是仍在对应你一开始以为的问题? **练习:**把你的方案概念交给 Claude,让它识别这个设计最依赖的三个假设。然后追问:每个假设要成立,必须哪些条件为真?如果任何一个假设不成立,后果是什么? ### 用 Claude Code 搭一个轻量原型 现在到好玩的部分:有了验证过的假设和经过压力测试的方案概念,你终于可以做点东西出来了。 这就是想法阶段里 Claude Code 登场的时刻。哪怕你之前一直在小修小补,现在才是生成正式轻量原型的节点:用最小的产品面,把想法摆到真实的人面前,获得真实反应。 你还不是在造一个真实世界产品,而是在做一份功能样本,用于客户和投资人对话。真实用户触碰到一个能实际操作的东西,会告诉你十几次问题-方案访谈都告诉不了你的事。此前你是在证明这个问题真实存在;现在,你是在邀请潜在用户来反应拟议中的方案本身。 **练习:**定义你的方案所依赖的那一个核心交互。让 Claude Code 只做这一件事。做出来之后,把它放到五个来自已验证目标画像的人面前,请他们试用。这五次对话里学到的东西,将决定你是继续往前造,还是回到画板。 走到想法阶段的尽头,是 AI 创业赛跑里的一次大跃迁。因为你不再是在赌一个直觉,而是在对着证据执行。 接下来进入 MVP 阶段。创始人的指导问题从「这值不值得做?」转向「到底先造什么?」而 AI 的主要角色,也从研究伙伴切换为施工队。 Chapter 4 ## MVP 阶段 ## MVP 阶段 不少创始人把 MVP 阶段当成「开工建设」,但它本质上还是一次收集证据的过程。区别在于,这一阶段你收集的是关于解决方案的证据,不再是问题本身:一群真实、可识别的人,是否觉得这个产品值得用、值得回头再用、值得付费,甚至值得推荐给别人。 ### MVP 阶段·目标 作为 AI-Native 创业公司的创始人,你的目标是把已经验证过的问题,转化成一款真实用户愿意使用的可运行产品。它不是路线图上所有功能都齐全的完整版,而是你想法里最小、最聚焦的那一次迭代:把真实方案摆到真实用户面前,跑出 PMF(产品-市场匹配)的真实证据。 与此同时,你现在怎么做,决定了未来能做什么。所以 MVP 阶段还有第二个同等重要的目标:跑得快,但不要背上那种会复利、等真实用户大规模涌入时反过来缠住你的技术债(technical debt)。 第三,从第一天起就投入精力建设持久上下文,才能让 AI 持续做你的放大器,而不是混乱的来源。在 AI-Native 创业公司里,你的代码库是你和 AI 一次次会话共同协作的对象,可读性是地基。那些跳过规格文档(spec)、架构决策和 CLAUDE.md 这类上下文文件的创始人,迟早会撞上一堵可预见的墙:每次新会话都要重新解释一遍代码库,AI 生成的改动也会一点点偏离最初的愿景。 ### MVP 阶段·退出标准 MVP 阶段的退出条件,是 PMF 的真实证据出现:一个具体、可识别的用户群体觉得产品有价值,愿意回头再用(留存)、愿意付费(收入),或者愿意告诉别人(推荐)。 ### MVP 阶段·挑战 在 MVP 阶段,创始人最关键的两件事是速度和判断力。挑战在于:你能不能用对的方式做对的产品、做得足够快,同时不抄那些日后会让你付代价的近路。 Agentic 技术债(agentic technical debt) **挑战:**AI 几乎抹平了过去那些控制代码进入生产环境的天然瓶颈,速度因此被保证了。但当速度成为创始人在 MVP 阶段唯一考虑的变量,他们就会积累起很难偿还的技术债。 有些技术债在 MVP 阶段是合理的,前提是规模化之前必须把它管住。这种债会逐步累积,可以慢慢还,也可以专门安排一个冲刺(sprint)清掉。但 Agentic 技术债不一样,它会复利。 如果没把规格和架构约束写在 AI 能读到的地方,每次会话都得从零推导一遍基础决策,决策也会一次次发生架构漂移(architectural drift)。最后你会得到一个缺乏一致心智模型的代码库。不是因为某一块代码写得糟糕,而是这些零件从一开始就没被设计成能拼到一起。这是真问题,而且往往要等到很晚才暴露出来。 误把假 PMF 当成真 PMF **挑战:**AI 工具能跑出亮眼的早期数据,但这些数字并不保证市场需要你的产品。 早期势头是创始人能经历的最强心理体验之一。经过数周甚至数月的验证和克制开发之后,把产品发出去,会让人觉得自己从一开始就是对的。 Agentic 编程工具能让你比以往更快抵达这个时刻,但早期牵引(traction)不等于 PMF。发布期的热度可能来自一些短暂因素:创始人的朋友、投资人其他被投公司的潜在买家,或者 Hacker News 上一个标题带来的流量尖峰。可惜,这些都不能可靠预测第六周、第十二周,初始助推消退之后会发生什么。 零摩擦的范围蔓延(scope creep) **挑战:**当开发几乎不费力、近乎免费,总有一个很酷的功能可以加,或一个边缘情况想处理。这种范围蔓延弊大于利。 范围蔓延一直是创业的风险。现在的区别是,过去抑制它的「强制函数」(也就是工程时间的真实成本),已经不再以同样方式存在。加一个功能不再是一个冲刺,而是一个下午。 难点在于,每一项单独的新增看起来都合理。产品当然应该处理那个边缘情况,用户当然会想要那个工作流。由于 agentic 编程让每一项都很省力,当下并不像范围蔓延。但当产品越过原始边界开始摊大饼,你会失去方向和动量。 解药是在动手前先写下范围定义:产品做什么、明确不做什么,以及来自真实用户的哪种具体证据才足以证明应该加新东西。这样,决策点就从「要不要做这个?」变成「是不是已经有足够多用户告诉我们:没有它就拿不到价值?」 因经验不足而不安全 **挑战:**创始人用 AI 工具匆忙把应用推向市场,却没有先搞懂基本安全原则,最终会让用户暴露在本可避免的风险中。 硬道理是:agentic 编程工具生成的是能运行的代码,不是天然安全的代码。功能代码很好判断——要么能跑,要么不能。但安全漏洞在被利用之前是隐形的,没有天然反馈环(feedback loop)会提醒首次创业者哪里出了问题。把上线的 MVP 交给真实用户,意味着真实数据、真实暴露和真实后果。 轻视安全并不是 AI-Native 项目才有的新问题。每个时代的自筹资金创业公司都常常把安全考量拖到很晚,有时甚至拖到生产发布前夕。在任何用户接触你的 app 或方案之前先做一次安全审查,是把最小可行产品送到世界上所需的最低责任门槛。 ### Claude 如何帮助 MVP 阶段创始人 动手之前先定架构 在 Claude Code 写下第一行生产环境代码之前,用 Claude 定义并记录本阶段所有开发都要遵守的架构决策:遵循哪些模式、避开哪些依赖、做了哪些取舍以及为什么。这份输出会成为聚焦的架构上下文文档,建立 Claude Code 要在其中运行的护栏。 没有这份上下文,每次会话都从零开始,Claude Code 只能自行推断结构性假设。让 Claude Code 在没有护栏的情况下开发,会产出功能可用但结构不一致的代码库。在这样的代码库上迭代和扩张,本质是在浪费时间和 token。迟早有一天,代码会不可避免地坍塌,迫使你从头重建。 **练习:**打开 Claude Code 之前,先打开 Claude,描述你要做的事:它解决的核心问题、服务的用户,以及未来六个月你现实预期的规模。让它帮你定义 MVP 开发应遵守的架构原则、在你的约束下应避开的依赖,以及这个阶段你有意识接受的取舍。 接着,把这份输出保存为 CLAUDE.md 文件。这就是你的架构上下文文档:开发过程的第一个产物,也是后续每次会话都依赖的对象。CLAUDE.md 是 Claude Code 的项目级指令,为特定代码库提供上下文和说明,Agent SDK 在该目录运行时会自动读取。功能上,它就是项目的持久记忆。 ### 定义并执行 MVP 范围 零摩擦的范围蔓延,是 AI 时代 MVP 的典型失败模式之一。就像你定义并记录产品的应用架构一样,在任何功能动工之前,也要先定义 MVP 的范围。 Claude 可以帮你写一份范围文档,描述 MVP 做什么、明确不做什么,以及功能修订标准:来自真实用户的哪种具体证据,才足以证明此刻应该加新东西。 当新的功能想法冒出来(它们一定会冒出来),用 Claude 做压力测试:这是用户的真实信号,还是披着产品思考外衣的创始人热情? ### 用 Claude Code 做 MVP 架构和范围定义清楚之后,Claude Code 就是主要的 MVP 开发工具。用它生成、测试、调试、迭代代码库,但要把每次会话当成对你已做出的产品决策的执行,而不是趁机塞进新想法的机会。 每次 Claude Code 会话开始时,先重读范围文档,并给模型提供 CLAUDE.md 架构上下文文档。每次会话结束时,把会话中浮现的决策更新进去。目标是一个你能解释其结构的代码库,而不只是一个能跑起来的代码库。 **练习:**给 Claude Code 工作建一个简单的会话模板,包含架构上下文文档、本次具体任务,以及要遵守的约束或模式。每次会话结束时,在上下文文档里加一条简短日志,记录做了什么、定了哪些决策、引入了哪些假设。每次五分钟的文档记录,是防止架构漂移复利成无法管理的代码库的便宜保险。 ### 任何用户上手之前先做安全审查 作为 AI-Native 创业公司的创始人,你有责任知道代码库里有什么、理解潜在的暴露路径,不要把明显的漏洞交付给那些信任你处理他们数据的真实用户。 Claude 可以对 AI 生成的代码做一轮有用的初步安全审查,帮你识别常见漏洞。这是发布前应该养成的好习惯。但它不能替代安全工具,在更高风险的场景下也不能替代人类审查者。把它当成替代品的创始人,最后往往会出现在事故新闻里。 Claude Code Security 更进一步:它会扫描代码库里的安全漏洞,并为人类审查提出定向补丁建议,浮现传统方法容易漏掉的问题。 **注:**截至本电子书出版时,Claude Code Security 还是受限 beta 版本。加入工作流之前请先确认当前可用状态。 **练习:**部署给任何真实用户之前,用一份明确的 brief 把核心应用代码交给 Claude 审查:认证和会话处理、API 响应中的数据暴露、输入校验和注入风险,以及存在已知漏洞的依赖。认真对待每个发现,判断是否需要修复;凡是涉及认证、密钥或数据处理的部分,都要走人类审查。 ### 发布前先把度量框架建好 那些把早期牵引误判成 PMF 的创始人,通常也是发布之后才开始追踪数据的人,而且挑选的指标往往是为了证明什么有效,而不是浮现什么无效。解药是在第一个用户出现之前,就建立度量框架。 用 Claude 定义你的具体产品应该看哪些指标、基准是多少、数据里哪些模式构成真 PMF、哪些只是好看的噪音。具体来说,发布 MVP 前先设定留存基准、激活标准,以及第 7 日和第 30 日目标。 接着,定义对你的产品而言什么是假阳性:有注册但无激活、有收入但无留存、初始热情但没有重复使用等等。数据到来时,让 Claude 替怀疑者发言:一个怀疑者会怎么解读这些数字? ### 管理用户发现和反馈的运营层 真实用户进入产品之后,运营层会迅速膨胀。Claude Cowork 可以承接重要但琐碎的工作:建立和维护用户联系人列表、跑触达序列、安排反馈会、给 bug 报告做分诊(triage)、追踪迭代周期。想法阶段那套管理用户发现后勤的 MCP 集成,在这里同样适用。 对细腻的用户反馈探索,要让真人留在收集环里。用户说「这很好,但我希望它还能……」时,需要解释:这是核心需求还是锦上添花?是这一个客户特有的,还是代表某个细分人群?缺失功能才是真问题,还是新用户引导(onboarding)上游出了问题?没有工具能替你回答。 **练习:**配置 Claude Cowork 跑你的 MVP 阶段反馈环:给早期用户列表起草触达、安排反馈会、为 bug 和功能请求设计结构化收集流程、每周写一份综合摘要。你先自己读摘要;之后再让 Claude 分析信息,捕捉你可能漏掉的重要点。 ### 朝证据迭代,而不是朝「做完」迭代 MVP 阶段结束的标志,是你拿到了 PMF 的真实证据,而不是产品看起来有多「完成」。宣布达到 PMF、准备从 MVP 阶段进入发布阶段,本质上是一项判断练习,需要把创始人直觉和已收集的证据结合起来。不过,有几个有用的试金石: - Sean Ellis 测试:问你的活跃用户:「如果再也不能用这个产品,你会有什么感觉?」如果超过 40% 的人回答「非常失望」,就是一个有意义的 PMF 指标。 - 努力测试(effort test):PMF 之前,留存需要持续干预:频繁触达、激励、个人跟进,加上创始人那种英雄式的精力维持用户活跃。PMF 之后,产品开始自己承担这项工作。当事情开始「被拉」而不是「被推」时,这种付出感的变化,是真东西发生的最清晰信号之一。 最终,没有哪个单一数据点能确认 PMF,因为它必须在多个迭代周期里持续成立,你才能确认。 ### 数据要求 pivot 时,就要 pivot 如果投入这么多工作之后,仍然摸不到 PMF 怎么办?结果没有印证你最初的方向,并不是失败,而是系统在正常工作:MVP 阶段的设计目的,就是在你对错误答案过度投入之前浮现这些信息。 当数据不支持当前产品时,用 Claude 梳理这些数据到底在告诉你什么。 - 探索替代客户细分。也许那些没转化的用户,从一开始就不是合适的目标。很多时候,对的受众已经在你的数据里,只是权重被低估了。 - 调整产品的价值主张(value prop)。也许受众是对的,但 MVP 没有和用户产生共鸣。调整新用户引导、信息表达或核心功能侧重,可能不用改你已经造好的东西就能修复问题。 同时也要保持开放:设计价值和体验价值之间的脱节,可能深到需要一次更根本的改变。 **练习:**如果你已经完成三轮以上迭代周期,仍然没有朝 PMF 基准的实质推进,让 Claude 在你决定下一步之前先跑一次诊断。把留存数据、用户反馈和最初的问题假设都交给它,问三个问题: - 数据里是不是存在某一段用户的反应方式和其他人不同? - 设计价值与体验价值之间的落差,是定位问题还是产品问题? - 当前产品要找到真正的 PMF,需要哪些条件?以你观察到的现象,那个情境现实吗? 让答案决定你是微调、pivot(调整方向),还是退回想法阶段。 Chapter 5 ## 发布阶段 ## 发布阶段 如果说 MVP 阶段是要证明你的产品值得存在,那么发布阶段就是要证明你的生意值得长大。 ### 发布阶段·目标 在发布阶段,创业者必须把早期势头转化成一台可重复、可持续的增长引擎。除了让产品具备生产就绪状态,你还得同时加固产品底下的基础设施——也就是围绕产品真正搭起一家公司。 创业公司在想法和 MVP 阶段天然以创始人为中心,因为你需要完整的处境感知和紧密的反馈环。但到了发布阶段,那些仍想把每一根线握在自己手里的创始人,会变成创始人瓶颈。目标不是把自己从公司里拿掉,而是搭建运营系统,把注意力释放出来,去做那些只有创始人能做的决定。 ### 发布阶段·退出标准 发布阶段的退出条件包含三项: - 增长是可重复、由渠道驱动的。你不只是在留住用户,而是通过具体渠道、用清晰的单位经济模型(unit economics)可预测地获取用户。CAC(获客成本)、LTV(用户生命周期价值)、回收周期,都是你心里有数、说得清楚的数字。 - 产品扛得住生产工作负载。基础设施已加固,安全与合规到位,可靠性在真实生产条件下也站得住,而不只是在你测试过的条件下。 - 运营在没有创始人瓶颈的情况下也能跑。流程已就位,自动化已部署。你不再是亲自处理客服、分诊、冲刺规划或报表的人。 ### 发布阶段·挑战 找到 PMF 是早期创业生命周期里最难的问题。现在,创始人的挑战变成了把它保住。发布阶段是这样一个地方:那些已经找到真实产品牵引的公司,仍可能在包围和支撑产品的组织跟不上时散掉。下面是要警惕的失败模式。 技术债到期 **挑战:**那个为速度和验证而搭的 MVP 代码库,勉强够证明产品能跑。但生产流量、新功能和持续增长的复杂度,正在把当初的捷径一一暴露出来。 在 MVP 阶段,积累一些技术债是用速度换来的合理代价。到了发布阶段,那笔债开始算利息,拖得越久,修起来越贵。 解决方案是一次系统的架构审查(architectural audit):找出结构性弱点,对最严重的几处做定向重构(refactoring),并实质性地扩展测试覆盖率,确保下一轮功能开发不会重新引入同样的问题。 创始人成了瓶颈 **挑战:**MVP 阶段,创始人参与每个环节是一种资产。到了发布阶段,随着支持工单上涨、产品决策堆积、运营复杂度倍增,同样的本能会变成约束。 从亲自做事,到设计能把事情做完的系统,是创业生命周期里最难的转变之一。因为很少有一个清晰时刻宣告它已经发生,风险就在于你完全错过它,继续停留在「建造者模式」里,而组织在你身边停滞。明显信号包括:本该一小时完成的决策,因为等你处理变成一周;支持请求越堆越多,因为只有你知道答案;运营任务只有在你亲自想起来时才发生。 解药是把你亲自在做的事彻底审视一遍,从最小的任务到最关键的决策,识别哪些能系统化、哪些能委派出去、哪些确实仍值得创始人的时间和注意力。 安全与合规不能再往后拖 **挑战:**MVP 阶段,把安全与合规措施做得简单还能接受。但现在,有真实用户、真实数据,甚至桌上可能摆着企业合同,它会变成负债。 MVP 阶段只有少量 beta 用户、生产环境里没有敏感数据时,安全漏洞还是理论风险。但产品一旦进入生产、有真实用户依赖它,假设就会变成非常现实的暴露风险。再往前一步,那些原型期可以忽略的合规要求,会在你处理客户数据、处理支付或卖给受监管行业的那一刻立刻适用。 解药是在生产规模到来之前(不是之后),做一次系统的安全与合规审查。凡是浮现出来的问题,都要当成下一波用户到来前必须修复的事项,而不是建议。 还没准备好就扩张 **挑战:**新市场和融资机会看起来都像增长机会。它们也可能是 PMF 死掉的地方。 你建立的初始牵引是真实的,但它也具体绑定在早期受众上。过早扩张到一个跟原市场差异很大的市场,会引入新的用户行为、合规要求、支付基础设施和基线预期,而你的产品并不是围绕这些设计的。一下子变量太多,你失去了清晰解读自己数据的能力。你还可能一边追逐新的、未经验证的受众,一边把原始用户群晾在一边。 ### Claude 如何帮助发布阶段创始人 发布阶段会完整用到 Claude 的三种形式,它们彼此支持:每个工具的输出都会变成另外两个工具的输入。结果会自然复利,一个同时使用三者的创始人,得到的不只是简单相加的总和。 这也是超精益创业模型在结构上可行的原因。当 Claude Code 构建产品、Claude Cowork 构建产品周围的公司、Claude 帮助把产品和组织知识运营化,一个小团队就能像大得多的公司那样运行。 在技术债复利之前清算 你的 MVP 代码库能跑,但它也需要一次系统化的修复扫描,找出任何可能变成结构性负债的技术债。 第一步,用 Claude Code 跑一次完整架构审查:识别代码库哪里脆弱、哪些捷径会变得维护昂贵、测试覆盖在哪里薄到下一轮功能开发会重新引入同样的问题。 把 Claude Code 的审查发现喂回 Claude,让它分诊并排序修复工作:什么必须在下一次发布前修、什么可以等一个冲刺、什么在当前阶段属于可接受的持续债务。这也是把 MVP 阶段那些只装在你脑子里的架构决策写下来的时机。把它们放进 CLAUDE.md,能确保未来每次 Claude Code 会话都从同一份理解开始。 **练习:**让 Claude Code 审查 MVP 代码库,产出结构性弱点、测试覆盖缺口和重构候选项的优先级清单。然后把清单交给 Claude,让它把修复工作排进几个冲刺:哪些重大问题要先处理、哪些可以和功能开发并行、哪些可以等等再说。 ### 搭起替代创始人注意力的系统 要搭建能释放你注意力的运营系统,让你专注处理只有创始人能承担的责任,第一步是搞清楚你的注意力到底花在哪里。用 Claude Cowork 对当前运营负荷做一次结构化审计,记录每个重复任务、每个落到你桌上的决策、每个只因为你亲自记得才会发生的工作流。然后让 Claude Cowork 把清单分成三类:能完全自动化的、需要人但不一定需要你的、确实需要创始人判断的。 审计完成后,用 Claude Cowork 设计自动化候选项的工作流逻辑:每个工作流由什么触发、决策规则是什么、输出长什么样、完成后流向哪里。 ### 把安全与合规做成一条产品工作流 用 Claude Code 浮现代码层面的问题:那些常出现在 SOC 2、GDPR、HIPAA 审计以及目标市场要求标准中的问题。它会同时浮现漏洞和合规缺口。把发现交给 Claude,帮你排修复优先级,并设计企业买家签约前会要求的控制项、审计日志和访问管理。 **注:**AI 扫描是一种辅助,不能替代有资质的合规审查。 接下来,把合规工作流并入开发周期,而不是当成一次性项目。合规文档需要持续维护和更新。对正在接近企业合同或国际市场的创始人来说,这也是 Claude Code 安全扫描帮你准备独立安全评估的时机。 **练习:**用 Claude Code 跑一次代码级安全审查,方向对准目标市场所需的框架。把输出喂给 Claude,请它产出两样东西:优先级排序的安全修复序列,以及为了通过潜在企业买家的合规审查、你需要准备的文档和控制清单。 ### 把一直跳过的产品管理流程立起来 发布阶段需要一套轻量、可重复的流程,不需要创始人介入触发或维持也能运行。用 Claude 设计:产品时间线和工作周期如何组织,一份 spec 在 Claude Code 触碰功能前必须包含什么,bug 报告如何分诊和路由,每周指标简报覆盖什么、如何分发。 流程设计好之后,用 Claude Cowork 搭建并运行运营层:安排冲刺仪式、把新进 bug 报告路由到正确位置、从连接的数据源汇总每周指标、维护让用户信号持续流入产品决策的反馈环。 **练习:**请 Claude 设计一套轻量的产品管理操作系统:明确的冲刺节奏、最低规格文档模板、bug 分诊决策树,以及从真实数据源拉取的每周指标简报。然后让 Claude Cowork 执行并运行系统里的重复运营环节(例如排期、路由和报告汇总),让它们按计划发生,而不需要你出手。 Chapter 6 ## 规模化阶段 ## 规模化阶段 在规模化阶段,创始人的角色重新校准,从建造者转向面向公众的高管。产品仍然是核心,但你的日常工作越来越多地落在公司本身。你必须把注意力扩展到规模化阶段的新活动,比如分析师沟通会和 IPO 路演,同时尽量守住那份以 AI 为中心的精益结构性优势。 ### 规模化阶段·目标 扩张技术基础设施的工作不会停,现在又加上一项:扩张组织本身,把它催熟为一门真正的生意。 到了规模化阶段,你要从几千用户走向几百万,从单一市场走向多个市场。前面每个阶段,增长都是你能摸着走的事:贴近用户、依靠紧密反馈环的数据,再加上一点健康的创始人直觉调整方向。现在的目标,是搭建由成熟组织运营支撑的系统化增长。 对一家 AI-Native 创业公司来说,你的目标应该是用累积深度建出一条防御性护城河(defensible moat)。这种深度来自三块:你已经构建进产品里的专业知识、产品与用户所依赖的其他工具和平台之间的深度整合,以及专有系统数据和工作流。那些一直朝同一方向、在同一基础设施上持续构建的创始人,手里现在握着真正难以复制的东西。 到了这个阶段,公开市场投资人、分析师、监管者、企业采购团队和收购方都会施加更大压力,也带着更深的怀疑,因为赌注变高了。你的产品和组织都必须经得起外部审视:不只是已经造出来的能力,还有围绕它的治理、合规姿态、财务控制和战略叙事。 ### 规模化阶段·退出标准 规模化阶段的退出条件不再是单一里程碑,而是一个阈值事件:即使创始人越来越少直接管日常运营,公司也能可持续运转。你已经展示了系统化增长;建好了能满足最苛刻外部审查者的组织治理和合规基础设施;并且能扎实回答这个问题:「如果一个资金充足的在位者今天复制了你的产品,你的用户会留下来吗?」 实际中,这个阈值通常以三种形式之一出现:不再需要外部资本的规模化可持续盈利、IPO 就绪,或被收购。三者都要求你的增长系统化且可审计,产品护城河经得起推敲,组织在运营上成熟可持续。 当这些都成立时,恭喜你:你的创业公司已经从一场赌注,变成了一门生意。 ### 规模化阶段·挑战 把运营层放手出去 **挑战:**规模化阶段的运营系统必须可靠、可持续地运行,不能靠人盯着。对一个从第一天起就亲力亲为的创始人来说,这种转变既是结构挑战,也是心理挑战。 发布阶段的工作是把系统创建出来;规模化阶段的工作则是让这些系统成熟到完全可信,然后真的信任它们。 这比听起来更难。即使你是一个擅长授权的创始人,也未必每次都清楚什么该交出去、什么该留在自己手里。交得太多、太快(尤其是交给 AI 自动化系统),关键决策可能会在缺少创始人独有上下文的情况下被做出来。但抓得太久,你又会变成瓶颈。 这里的根本挑战,是识别那些只存在于创始人脑子里、或藏在未成文工作流里的机构知识,把它编码进有文档、可审计、可交接的系统中。 扩张技术运营 **挑战:**客户不再只评估你的产品,他们还想知道你的组织能不能成为可靠的基础设施伙伴。 创业前三个阶段的技术挑战都围绕代码库:构建对的方案而不积累技术债,再为真实用户加固安全和合规。进入规模化阶段,挑战变成围绕代码库的一切:搭建支持基础设施、文档和可靠性保证,向外界传递成熟信号。 签多年合同的大客户和机构买家,签约前会要求看到这些,签约后也会按这些标准约束你。好在带你走到这里的同一套 AI 基础设施,也能帮你建立专门的支持职能:明确的响应时间、新客户工程团队真正用得上的文档。 扩张组织职能 **挑战:**规模化阶段的公司通常需要招聘、薪资、会计和法务运营等组织基础设施,不管真正在跑公司的人有多少。 发布阶段,系统化运营意味着把那些消耗创始人注意力的工作流自动化。规模化阶段的创业公司现在需要扩展一组更广、某些方面也更要紧的运营职能,比如财务报告、合规监控、合同管理和客户支持。 搭一个 GTM 职能 **挑战:**自然增长有天花板,多数规模化阶段的创始人在真正搭过 GTM 职能之前,就会撞上它。 想法、MVP 和发布阶段的增长,往往来自创始人亲自卖:从一篇恰到好处的 Product Hunt 帖子,到与早期客户的私人关系。这样的自然增长只能走到某个点,多数创业公司会在规模化阶段撞到这个上限。信号包括用户曲线变平、获客成本上升,以及销售管道只有在创始人亲自介入时才会推进。 规模化阶段的增长,需要搭建一台专门的增长引擎,让产品触达更新、更广的人群。但多数创业公司创始人,可能从来没真正运行过市场、销售、分析师关系这类项目。一个像样的 GTM 打法(motion)不只是建立新系统和流程,还要打造一种品牌声音和产品故事,说明你想怎么谈论自己的产品。因为在生命周期的这个阶段,你需要触达的不只是单个新用户,还包括投资人、企业买家等完整目标人群。 好消息是,GTM 职能不必做得很大,也可以有效。构建产品的同一套 AI 基础设施,也能帮你把产品带向市场。 ### Claude 如何帮助规模化阶段创始人 早期阶段,Claude 是产品本身的基础设施:验证想法的研究伙伴、设计并构建原型的工程团队,以及让单人创业公司得以成立的 AI 运营层。走到规模化阶段的 AI-Native 创始人,现在可以继续用 Claude、Claude Code 和 Claude Cowork,沿着同样的方式扩张。 ### 把日常任务交给 Claude Cowork 用清醒的视角开启规模化阶段:你现在最需要把时间和注意力投在哪里?对第一次创业、从未真正搭过一门生意的创始人来说,这一步并不容易。Claude 可以帮你列出在这个阶段只有你能做的事,比如产品叙事决策、董事会关系、企业大单、创始人之间的对话。清单之外的,都是可以委派或交给 Claude Cowork 自动化的候选项。 **练习:**用 Claude 绘制当前运营层的瓶颈地图:所有目前经过你的工作流、决策和审批。然后让 Claude 推演:如果你一周不在,每一项会发生什么?那些会停下来的工作流,就是你还抓得太紧、紧到足以阻碍进展的地方。 这些瓶颈和 Claude 帮你列出的创始人优先事项与责任清单怎么对应? 接下来,压力测试一下你已经搭好的系统:它们真的能随业务增长一起扩张吗? **练习:**用 Claude 绘制当前工作流,再追问:如果你一周不在,每一项会发生什么?那些会停滞的工作流,说明交接标准、升级路径或异常处理还需要收紧。Claude 可以分析失败点并提出修复建议,让你按需更新或替换 Claude Cowork 自动化。 ### 把技术运营升级为企业级基础设施(enterprise-grade infrastructure) 扩张时,买家需要确信你的产品和组织可以被当作长期基础设施来信任。代码库内部的技术工作照常继续,但现在代码库周围的技术工作也必须开始做。 第一步,是把机构知识转换成能扩张的系统。用 Claude 起草并维护企业采购方期望看到的书面基础设施,包括产品文档、支持 playbook 和 SLA。 与此同时,让 Claude Code 按企业合同要求的可靠性和安全标准对代码库做审查与加固,并构建那些 Discord 社区支持从来不需要提供的技术支持基础设施:日志、监控、事故响应工具,以及让 SLA 真正能被执行的可观测性层。 接下来,Claude Cowork 运行企业支持本身的运营层:工单路由、升级工作流、由产品变更触发的文档更新、续约追踪,以及企业客户成功依赖的报告节奏。三者加在一起,让一个小团队拥有大组织级别的支持姿态,而这正是签下多年期企业合同前你必须证明的能力。 **练习:**挑出最苛刻的三个潜在客户,或者列出你最想签下的三个理想客户。让 Claude 做一次差距分析:这些客户的企业采购团队在签多年期合同前,会期待看到哪些文档、SLA 和支持基础设施?你目前哪里还不到位?把分析结果用来安排 Claude Code 和 Claude Cowork 的技术与文档工作。 ### 搭一个真正的 GTM 职能 创始人的 hustle 把你带到了这里,但要把公司继续扩张,你需要做出并执行一套真正的 GTM 策略。AI 可以帮你搭建、运行一整套 GTM 引擎。 Claude 可以从零搭起基础 GTM 资源:市场细分、信息架构、分析师关系策略、销售 playbook,以及当你开始面对公开市场投资人、企业买家和华尔街分析师时关键的投资人指标叙事。每类受众都有自己的语言,并用自己的标准评估你;Claude 的工作,是把产品的价值主张翻译成对每个受众都成立的产品营销方式。 这时候,Claude Cowork 可以成为你的战术执行层:内容管线、外呼节奏、分析师沟通会后勤、新闻和 PR 节奏、CRM 维护、销售管道报告,以及把 GTM 策略转化成实际商业动作的大量重复性周期。 当 GTM 打法需要产品营销基础设施(比如交互式演示环境、集成文档、沙盒租户、API 参考、技术 one-pager),Claude Code 可以为你构建。买家期待从技术层面评估你的产品。在规模化阶段,一段 Loom 视频加一份销售 deck 已经不够看。这也是让 GTM 打法能异步跑起来的基础设施:一个做得到位的 demo 环境,可以在你开董事会的同时帮你成交。 ### 把领域专长(subject matter expertise)和机构知识转化为 AI 上下文 许多超精益的创业公司创始人,正在为某个自己亲身经历或一手观察到的行业真实问题,构建高度具体的 app 或工具。Agentic AI 让从未写过一行代码的创始人,也能用自己的领域专长做出解决复杂问题的产品。Claude、Claude Code 和 Claude Cowork 各自分工,把创始人知识转化成会复利的产品具体性。 用 Claude 捕捉、整理并打磨创始人知识,就是把领域专长放到产品能够触达的地方。通过长对话、Projects 和记忆,创始人可以把自己知道的一切(行业黑话、监管坑、边缘情况、痛点、为什么那些显而易见的答案并不管用)放进结构化、可搜索的上下文里。Skills 可以把重复工作流编码成可复用的例程(比如「我如何审查商业租约」「我如何分诊一份患者入院表」),让 Claude 每次都按同样的方式运行。几个月之后,这会沉淀成一层专有知识基底,通用 AI 无法匹敌。 把领域知识外化到 Claude 里,对于把行业特有的边缘情况编码进产品非常有价值。比如说,一个通用医疗计费工具可能会在 340B 药品项目索赔上栽跟头,而你的工具有专门的逻辑处理它。Claude Code 帮你把同行业其他专业人士的常见痛点,转译成验证逻辑、prompt 优化,或者与某个竞争对手压根没听过的小众行业系统的 MCP 集成。结果是,你的 app 或工具在深度和广度上持续复利,竞争对手没法简单复制。 **练习:**找出一个通用竞品在你的垂直领域一定会做错的边缘情况。基于你真实见过的场景,让 Claude Code 帮你为它写一个专门的测试用例(不是单元测试)。每当类似的边缘情况再次出现,就把它加进去。你的测试套件会逐渐长成一张护城河地图。 ### 让累积的用户数据复利成防御性优势 用户在与产品交互时,会生成行为信号(比如他们接受哪些输出、拒绝哪些输出),这些信号会反过来影响产品路线图。时间一长,你会摸清自己用户群的具体模式、偏好和边缘情况。这就是复利价值(compounding value):每一次改进都让产品更有用,带来更多使用,激发更多反馈,再推动下一轮改进。 这些数据带着时间锁定和具体上下文,没办法被抄袭者重建:你买不到数千名用户在你产品里打磨工作流之后留下的行为指纹。 Claude 可以帮你审计已经收集到的用户交互数据,识别其中信号最强的行为模式,并设计一条把持续使用转化为系统性模型改进的反馈环。 **练习:**给 Claude 一份产品交互数据摘要:你收集了什么、收集了多久、你对用户随时间的使用方式了解多少。让它识别三个信号最强的行为模式,并为每一个设计一条能转化为系统性模型改进的反馈环。然后请它帮你起草一页护城河叙事,用于产品营销:你的数据飞轮(data flywheel)怎么运转、转了多久、为什么一个资源充足的竞争对手即使今天开干,也没法在两年内复制。 ### 制造工作流锁定(workflow lock-in) 数据网络效应(network effects)的复利会让产品更难被复制,而用户工作流的锁定(lock-in)会让产品更难被抛弃。用户在日常运营中跑你的产品越久,它就越深地嵌入他们真实工作的方式。他们在上面搭了自动化,训练团队使用它,把它接到数据源和其他工具。那些 prompt、被打磨过的工作流、被标准化的输出,都是围着你的产品「能做什么、怎么做」长出来的。到了这一步,切换就不再是一个产品决策,而是一项完整规模的运营工程。 制造工作流锁定的第一步,是让 Claude 按集成深度给当前客户群画一张图。对每个客户细分,识别他们在你产品上搭建了哪些工作流、依赖哪些集成。这张图会告诉你产品在哪里真正粘住了,又在哪里还需要扎得更深。 你提供的集成越多,客户就越有空间构建依赖你产品的工作流。Claude Code 可以帮你快速搭起目标用户依赖的数据管线、项目管理工具和其他系统的原生集成。它还能构建 API、webhook 和 SDK,让客户不只是使用你的产品,而是在你的产品之上做开发,这才是最深一层的锁定。 **练习:**让 Claude 为你前十大客户做一次工作流集成审计。对每个客户,记录他们搭建的自动化、依赖的集成、跑在你产品上的团队工作流,以及你估算的切换成本。然后请 Claude 在这群客户里识别共同模式:哪些类型的集成对你这款具体产品锁定最深?你还能构建或开放什么,让目前只停留在表层的客户拥有更深的集成? Chapter 7 ## 工作没变,规则变了 ## 工作没变,规则变了 在 AI 时代,创始人的工作并没有变:找到一个真问题,做出能解决它的东西,把它扩张成一家有意义的公司。变的是通往那里的路。穿过想法、MVP、发布、规模化这四个阶段,AI 把一个个季度压缩成了一个个星期。 那些过去要花几个月的验证周期,现在一个下午就够。一个能跑的原型,不再需要一位拥有合适技术栈的联合创始人;它只需要一个清晰的问题,加上几次专注的会话,再配上一个编程 agent。发布就绪从一段发布前的紧张冲刺,压缩成一条持续工作流。到了规模化阶段,过去把早期员工逼成救火队员的那份运营重量,越来越多可以交给 AI,让你的团队把注意力放在那些会变成护城河的判断决策上。 **瓶颈不再是「你能造什么」,而是「你选择造什么」。** ## Resources ## Resources ### 用 Claude 构建 - Building AI Agents for Startups:讲创业公司如何用 agent,让自己在扩张过程中不再过度依赖创始人本人。 - Claude Code docs:带构建者从初始安装一路走到进阶 agentic 工作流。小提示:先从「How Claude Code works」概览开始。 - Claude Code best practices:覆盖 Anthropic 内部和工程团队验证过的模式,包括上下文管理、权限、规划和验证工作流。 - Using CLAUDE.md files:讲解如何为特定代码库配置 Claude Code。MVP 阶段创始人搭建开发环境时的必读材料。 - Claude Code power user tips:来自 Claude Code 团队自己的工作流模式,包括并行会话和验证环。 - Get started with Claude Cowork:讲解团队如何搭建 Claude Cowork,并开始落地 Skills、插件等能放大影响的功能。 - Tutorials:claude.com/resources/tutorials 提供一份可搜索的、面向具体任务的实操教程清单。 ### 创始人故事 - How three YC startups built their companies with Claude Code:看 HumanLayer (F24)、Ambral (W25)、Vulcan Technologies (S25) 如何用 Claude 让原型快速上市,并用 agentic 编程工作流扩张 AI 驱动平台。 - GC AI:创始人用领域专长打造了一个由 Claude 驱动的法律平台,贴合企业内部法务团队真实的工作方式:公司专属 playbook、跨职能利益相关者、可变的风险容忍阈值。 - Carta Healthcare:用 Claude 驱动其临床抽象平台,每年处理 22,000 例手术,数据抽象时间减少 66%。 - Anything:基于 Claude 和 Agent SDK 构建,已经帮助 150 万用户在不写代码的情况下把想法变成可运行的软件产品,其中包括一位非技术背景的创始人做出并已经在卖的完整招聘平台。Anything 的 AI agent 负责完整构建,让单干创业者(solopreneur)可以把精力 all in 在自己的领域专长上。 - Cogent:一家应用 AI 实验室,构建 agent 来自动化企业关键安全任务。Claude 是其 agent 的推理层,覆盖漏洞全生命周期的调查、优先级排序和修复。 - Airtree:把 Claude Cowork 当作运营基础设施的中心,统一过去散落在十几个工具和团队里的数据。现在,只要一个人用 Skills 搭出一个工作流自动化,组织里所有人都能用它完成那些长期没空做的事。 - Duvo:构建 AI agent,跨 ERP、供应商门户、电子表格、邮件甚至电话,运行采购、供应链和品类管理流程。Duvo 完全构建在 Claude 之上,并用 Agent SDK 跨工作流做编排。 - Zingage:面向居家护理机构(home-care agencies)的 24/7 自动化运营 AI agent 平台。它用 Claude 的结构化工具调用在 EMR 和多条沟通渠道之间编排,再用 Claude 的上下文推理,做出能因患者而异、有细腻判断的结果,而不是只对最常见的情况做模式匹配。 - Kindora:由一位非营利组织高管打造的 AI 驱动平台,用 Claude Sonnet 做出了一个急需的工具:智能匹配慈善组织与资助方。在把数千个匹配筛成少数值得追进的对象之后,Kindora 的 MCP 连接器让非营利机构可以直接在 Claude 里使用它的潜在资助方挖掘工具。 - Wordsmith:由一位转行做 CTO 的律师创办,为企业内部法务团队提供可靠的 AI 法律技术。Claude 是 Wordsmith 合同审查、协议起草和文档审阅能力背后的推理引擎,公司的工程团队则用 Claude Code 来构建并演进平台本身。 ### 创业支持与机会 - Anthropic Startups Program:面向与 Anthropic 的 VC 合作伙伴有合作关系的创业公司,提供免费 API credits、公开可得的最高一档 rate limits,并邀请参加专属创始人活动和工作坊。 - Claude community:面向构建者的论坛和社区空间。 - Live learning resources:大会、网络研讨会、直播和回看录播。 完整 PDF / 微信读书 ## 想要原版横版排版的 PDF? 本文是线性手机版。如果你想要保留 Anthropic 原版双栏+插画排版的 PDF(36 页横版,2.4MB),可以在我官网下载。 huasheng.ai · 公众号回复「创始人手册」 **译者后记|花叔** 这是我用 Claude Code 翻译并排版的第一本 Anthropic 官方手册。整套流程:英文 PDF → Claude Code 拆页 → 多 agent 并行翻译 → 独立 agent 三审三校 → Playwright 排版成 PDF。我自己一行代码、一行译文都没动。 如果你也在用 AI 做产品、做公司,欢迎在这些地方找到我: 📺 **B 站** 花叔v · space.bilibili.com/14097567 📰 **公众号** 花叔 𝕏 **X / Twitter** @AlchainHust ▶️ **YouTube** @Alchain 📕 **小红书** 花叔(只工作不上班版 🌐 **官网** huasheng.ai 花叔 · 2026.05 · huasheng.ai var first_sceen__time = (+new Date()); if ("" == 1 && document.getElementById('js_content')) { document.getElementById('js_content').addEventListener("selectstart",function(e){ e.preventDefault(); }); } 预览时标签不可点 * 微信扫一扫关注该公众号 继续滑动看下一个 轻触阅读原文 花叔 向上滑动看下一个 [知道了](javascript:;) window.img_popup = 1; .weui-dialog_link{-webkit-transform:translateY(-75%);transform:translateY(-75%)} 微信扫一扫使用小程序 **** [取消](javascript:void(0);) [允许](javascript:void(0);) **** [取消](javascript:void(0);) [允许](javascript:void(0);) **** [取消](javascript:void(0);) [允许](javascript:void(0);) × 分析 * * 微信扫一扫可打开此内容,使用完整服务 window.logs.pagetime.page_begin = Date.now(); try { var adIframeUrl = localStorage.getItem('__WXLS_ad_iframe_url'); if (window === top) { if (adIframeUrl) { if (navigator.userAgent.indexOf('iPhone') > -1) { var img = new Image(); img.src = adIframeUrl; } else { var link = document.createElement('link'); link.rel = 'prefetch'; link.href = adIframeUrl; document.getElementsByTagName('head')[0].appendChild(link); } } } } catch (err) { } : , , , , , , , , , , , , 。 视频 小程序 赞 ,轻点两下取消赞 在看 ,轻点两下取消在看 分享 留言 收藏 听过 (function () { var totalCount = 0, finishCount = 0; function _addScript(uri, cb) { totalCount++; var node = document.createElement('SCRIPT'); node.type = 'text/javascript'; node.src = uri; node.setAttribute('nonce', '1342869108'); if (cb) { node.onload = cb; } document.getElementsByTagName('head')[0].appendChild(node); } if ((document.cookie && document.cookie.indexOf('vconsole_open=1') > -1) || location.href.indexOf('vconsole=1') > -1) { _addScript('https://mp.weixin.qq.com/mmbizappmsg/zh_CN/htmledition/js/scripts/vconsole-3.14.6.js', function () { window.vConsole = new window.VConsole(); }); } if (document.cookie && document.cookie.indexOf('__xweb_remote_debug_device_token__') > -1) { _addScript('https://mp.weixin.qq.com/mmbizappmsg/zh_CN/htmledition/js/scripts/mprdev-0.3.0.js', function () { _addScript('https://mp.weixin.qq.com/mmbizappmsg/zh_CN/htmledition/js/scripts/xwebrd-0.0.2.js'); }); } })(); var item_show_type = "0"; var __INLINE_SCRIPT__ = (function () { 'use strict'; var FILTER_ATTRS = ['mp-original-line-height', 'mp-original-font-size']; var __contentFilter = function __contentFilter(container) { if (!container) return; var nodes = container.querySelectorAll("[".concat(FILTER_ATTRS.join('], ['), "]")); for (var i = 0; i var __INLINE_SCRIPT__ = (function (exports) { 'use strict'; function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } var Device = {}; function detect(ua) { var MQQBrowser = ua.match(/MQQBrowser\/(\d+\.\d+)/i); var MQQClient = ua.match(/QQ\/(\d+\.(\d+)\.(\d+)\.(\d+))/i) || ua.match(/V1_AND_SQ_([\d\.]+)/); var WeChat = ua.match(/MicroMessenger\/((\d+)\.(\d+))\.(\d+)/) || ua.match(/MicroMessenger\/((\d+)\.(\d+))/); var MacOS = ua.match(/Mac\sOS\sX\s(\d+[\.|_]\d+)/); var WinOS = ua.match(/Windows(\s+\w+)?\s+?(\d+\.\d+)/); var Linux = ua.match(/Linux\s/); var MiuiBrowser = ua.match(/MiuiBrowser\/(\d+\.\d+)/i); var M1 = ua.match(/MI-ONE/); var MIPAD = ua.match(/MI PAD/); var UC = ua.match(/UCBrowser\/(\d+\.\d+(\.\d+\.\d+)?)/) || ua.match(/\sUC\s/); var IEMobile = ua.match(/IEMobile(\/|\s+)(\d+\.\d+)/) || ua.match(/WPDesktop/); var ipod = ua.match(/(ipod).*\s([\d_]+)/i); var ipad = ua.match(/(ipad).*\s([\d_]+)/i); var iphone = ua.match(/(iphone)\sos\s([\d_]+)/i); var Chrome = ua.match(/Chrome\/(\d+\.\d+)/); var AndriodBrowser = ua.match(/Mozilla.*Linux.*Android.*AppleWebKit.*Mobile Safari/); var android = ua.match(/(android)\s([\d\.]+)/i); var harmony = ua.match(/(OpenHarmony)\s([\d\.]+)/i); Device.browser = Device.browser || {}, Device.os = Device.os || {}; Device.os.type = -1; Device.os.unifiedPC = ua.match(/UnifiedPC/); Device.os.unifiedMac = /UnifiedPCMac/i.test(ua); Device.os.unifiedWindows = /UnifiedPCWindows/i.test(ua); if (window.ActiveXObject) { var vie = 6; (window.XMLHttpRequest || ua.indexOf('MSIE 7.0') > -1) && (vie = 7); (window.XDomainRequest || ua.indexOf('Trident/4.0') > -1) && (vie = 8); ua.indexOf('Trident/5.0') > -1 && (vie = 9); ua.indexOf('Trident/6.0') > -1 && (vie = 10); Device.browser.ie = true, Device.browser.version = vie; } else if (ua.indexOf('Trident/7.0') > -1) { Device.browser.ie = true, Device.browser.version = 11; } if (android) { Device.os.android = true; Device.os.version = android[2]; Device.os.type = 2; } if (harmony) { Device.os.harmony = true; Device.os.version = harmony[2]; Device.os.type = 42; } if (ipod) { Device.os.ios = Device.os.ipod = true; Device.os.version = ipod[2].replace(/_/g, '.'); } if (ipad) { Device.os.ios = Device.os.ipad = true; Device.os.version = ipad[2].replace(/_/g, '.'); Device.os.type = 13; } if (iphone) { Device.os.iphone = Device.os.ios = true; Device.os.version = iphone[2].replace(/_/g, '.'); Device.os.type = 1; } if (WinOS) Device.os.windows = true, Device.os.version = WinOS[2], Device.os.type = 15; if (MacOS) Device.os.Mac = true, Device.os.version = MacOS[1], Device.os.type = 14; if (Linux) Device.os.Linux = true, Device.os.type = 33; if (ua.indexOf('lepad_hls') > 0) Device.os.LePad = true; if (MIPAD) Device.os.MIPAD = true; if (MQQBrowser) Device.browser.MQQ = true, Device.browser.version = MQQBrowser[1]; if (MQQClient) Device.browser.MQQClient = true, Device.browser.version = MQQClient[1]; if (WeChat) Device.browser.WeChat = true, Device.browser.mmversion = Device.browser.version = WeChat[1]; if (MiuiBrowser) Device.browser.MIUI = true, Device.browser.version = MiuiBrowser[1]; if (UC) Device.browser.UC = true, Device.browser.version = UC[1] || NaN; if (IEMobile) Device.browser.IEMobile = true, Device.browser.version = IEMobile[2]; if (AndriodBrowser) { Device.browser.AndriodBrowser = true; } if (M1) { Device.browser.M1 = true; } if (Chrome) { Device.browser.Chrome = true, Device.browser.version = Chrome[1]; } if (Device.os.windows) { if (typeof navigator.platform !== "undefined" && navigator.platform.toLowerCase() == "win64") { Device.os.win64 = true; } else { Device.os.win64 = false; } } if (Device.os.Mac || Device.os.windows || Device.os.Linux || Device.os.unifiedPC || /OpenHarmony/i.test(ua) && /pc/i.test(ua)) { Device.os.pc = true; } var osType = { iPad7: 'iPad; CPU OS 7', LePad: 'lepad_hls', XiaoMi: 'MI-ONE', SonyDTV: "SonyDTV", SamSung: 'SAMSUNG', HTC: 'HTC', VIVO: 'vivo' }; for (var os in osType) { Device.os[os] = ua.indexOf(osType[os]) !== -1; } Device.os.phone = Device.os.phone || /windows phone/i.test(ua); Device.os.getNumVersion = function () { return parseFloat(Device.os.version); }; Device.os.hasTouch = 'ontouchstart' in window; if (Device.os.hasTouch && Device.os.ios && Device.os.getNumVersion() = 3.0; }; Device.browser.isCanOcx = function () { return !!Device.os.windows && (!!Device.browser.ie || Device.browser.isFFCanOcx() || !!Device.browser.webkit); }; Device.browser.isNotIESupport = function () { return !!Device.os.windows && (!!Device.browser.webkit || Device.browser.isFFCanOcx()); }; Device.userAgent = {}; Device.userAgent.browserVersion = Device.browser.version; Device.userAgent.osVersion = Device.os.version; if (Device.os.unifiedPC) { if (Device.os.unifiedWindows) Device.os.type = 37;else if (Device.os.unifiedMac) Device.os.type = 38;else Device.os.type = 39; } delete Device.userAgent.version; } detect(window.navigator.userAgent); function canSupportH5Video() { var ua = window.navigator.userAgent, m = null; if (!!Device.os.android) { if (Device.browser.MQQ && Device.browser.getNumVersion() >= 4.2) { return true; } if (ua.indexOf('MI2') != -1) { return true; } if (Device.os.version >= '4' && (m = ua.match(/MicroMessenger\/((\d+)\.(\d+))\.(\d+)/))) { if (parseFloat(m[1]) >= 4.2) { return true; } } if (Device.os.version >= '4.1') { return true; } } return false; } function canSupportVideoMp4() { var video = document.createElement('video'); if (typeof video.canPlayType === 'function') { if (video.canPlayType('video/mp4; codecs="mp4v.20.8"') === 'probably') { return true; } if (video.canPlayType('video/mp4; codecs="avc1.42E01E"') === 'probably' || video.canPlayType('video/mp4; codecs="avc1.42E01E, mp4a.40.2"') === 'probably') { return true; } } return false; } function canSupportAutoPlay() { if (Device.os.ios && Device.os.getNumVersion() 1 && arguments[1] !== undefined ? arguments[1] : 0; var canEqual = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var nowVersionStr = Device.os.version; if (!nowVersionStr) return false; var versionArr = version.split('.'); var nowVersionArr = nowVersionStr.split('.'); for (var i = 0; i 0) return vi > nvi; if (cp = o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } function _unsupportedIterableToArray$1(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$1(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$1(o, minLen); } function _arrayLikeToArray$1(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i b; } }; function cpVersion(ver, op, canEq, type) { var mmver = false; switch (type) { case 'mac': mmver = getMac(); break; case 'windows': mmver = getWindowsVersionFormat(); break; case 'wxwork': mmver = getWxWork(); break; case 'mpapp': mmver = getMpApp(); break; case 'unifiedpc': mmver = getUnifiedPcVer(); break; default: mmver = get(); break; } if (!mmver) { return; } var mmversion = mmver.split('.'); var version = ver.split('.'); if (!/\d+/g.test(mmversion[mmversion.length - 1])) { mmversion.pop(); } for (var i = 0, len = Math.max(mmversion.length, version.length); i = 64 && parseInt(v) = hexNum; } return false; } var mmversion = { get: get, getMac: getMac, getMacOS: getMacOS, getWindows: getWindows, getInner: getInner, getWxWork: getWxWork, getMpApp: getMpApp, cpVersion: cpVersion, eqVersion: eqVersion, gtVersion: gtVersion, ltVersion: ltVersion, getPlatform: getPlatform, getVersionNumber: getVersionNumber, isWp: is_wp, isIOS: is_ios, isAndroid: is_android$1, isHarmony: is_harmony, isHarmonyWechat: is_harmony && is_wechat && cpVersion('1.0.0', 1, true), isInMiniProgram: is_in_miniProgram, isWechat: is_wechat, isMac: is_mac, isWindows: is_windows, isLinux: is_linux, isMacWechat: is_mac_wechat, isWindowsWechat: is_windows_wechat, isWxWork: is_wx_work, isOnlyWechat: is_wechat && !is_wx_work, isMpapp: is_mpapp, isNewMpApp: false, isIPad: is_ipad, isGooglePlay: is_google_play, isPrefetch: is_prefetch, isDonutAPP: is_donut_app, compareHexVersion: compareHexVersion, isPcWechat: is_windows_wechat || is_mac_wechat, xwebVersion: xweb_version, isUnifiedPcWechat: is_unified_pc_wechat }; var getOriginExpVal = function getOriginExpVal(key) { var _a, _b, _c; return ((_c = (_b = (_a = window.cgiDataNew) === null || _a === void 0 ? void 0 : _a.user_info) === null || _b === void 0 ? void 0 : _b.frontend_exp) === null || _c === void 0 ? void 0 : _c.list) && window.cgiDataNew.user_info.frontend_exp.list.reduce(function (res, item) { if (item.key === key) res = (item === null || item === void 0 ? void 0 : item.value) || ''; return res; }, ''); }; function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } var initJsBridge = false; if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; } function connectWebViewJavascriptBridge(callback) { if (window.WebViewMPapp || window.WebViewJavascriptBridge) { return callback(window.WebViewMPapp || window.WebViewJavascriptBridge); } if (window.WVJBCallbacks) { return window.WVJBCallbacks.push(callback); } window.WVJBCallbacks = [callback]; if (!mmversion.isMpapp) { return false; } if (!initJsBridge) { initJsBridge = true; var WVJBIframe = document.createElement('iframe'); WVJBIframe.style.display = 'none'; WVJBIframe.src = 'https://__bridge_loaded__'; document.body.appendChild(WVJBIframe); setTimeout(function () { initJsBridge = false; document.body.removeChild(WVJBIframe); }, 0); } return false; } function invoke$1(jsapiName, opt, callback) { connectWebViewJavascriptBridge(function (bridge) { try { if (typeof opt === 'function') { callback = opt; } if (_typeof(opt) !== 'object' && typeof opt !== 'string') { opt = {}; } bridge.callHandler(jsapiName, opt, function (res) { try { var ret = _typeof(res) === 'object' ? res : JSON.parse(res); var errMsg = ret.err_msg || ret.errMsg; console.info("[mpapp jsapi] invoke->".concat(jsapiName, " ").concat(opt.action || '', " ").concat(errMsg)); typeof callback === 'function' && callback(ret); } catch (e) { window.WX_BJ_REPORT.BadJs.report('invoke', "callback ".concat(jsapiName, " error:"), { mid: 'mmbizwebapp:js_brridge', _info: e }); console.error("[mpapp jsapi] ".concat(jsapiName, " ").concat(opt.action || ''), e, res); } }); } catch (e) { window.WX_BJ_REPORT.BadJs.report('invoke', 'callback error:', { mid: 'mmbizwebapp:js_brridge', _info: e }); console.error('[mpapp jsapi]', e); } }); } function _regeneratorRuntime$2() { _regeneratorRuntime$2 = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } var doc$1 = {}; var isAcrossOrigin$1 = false; var notFoundedMPPageAction = []; var __moon_report$1 = window.__moon_report || function () {}; var MOON_JSAPI_KEY_OFFSET = 8; try { doc$1 = top.window.document; } catch (e) { isAcrossOrigin$1 = true; } if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; } function ready$1(onBridgeReady) { var bridgeReady = function bridgeReady() { try { if (onBridgeReady) { window.onBridgeReadyTime = window.onBridgeReadyTime || Date.now(); onBridgeReady(); } } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: 'ready', e: e }]); throw e; } window.jsapiReadyTime = Date.now(); }; if (!isAcrossOrigin$1 && (typeof top.window.WeixinJSBridge === 'undefined' || !top.window.WeixinJSBridge.invoke)) { if (doc$1.addEventListener) { doc$1.addEventListener('WeixinJSBridgeReady', bridgeReady, false); } else if (doc$1.attachEvent) { doc$1.attachEvent('WeixinJSBridgeReady', bridgeReady); doc$1.attachEvent('onWeixinJSBridgeReady', bridgeReady); } } else { bridgeReady(); } } var invokeNotWaitA8key = ['notifyPageInfo', 'updatePageAuth' ]; var checkNotFoundedInvoke = function checkNotFoundedInvoke(methodName, args) { if (methodName === 'handleMPPageAction' && (args === null || args === void 0 ? void 0 : args.action) && notFoundedMPPageAction.includes(args === null || args === void 0 ? void 0 : args.action)) { return true; } return false; }; function invoke(_x, _x2, _x3) { return _invoke.apply(this, arguments); } function _invoke() { _invoke = _asyncToGenerator( _regeneratorRuntime$2().mark(function _callee(methodName, args, callback) { return _regeneratorRuntime$2().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: if (!(window.__secPageAuthPromise && !window.__is_page_auth_ok__ && !invokeNotWaitA8key.includes(methodName))) { _context.next = 3; break; } _context.next = 3; return window.__secPageAuthPromise; case 3: ready$1(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object') { alert('请在微信中打开此链接'); return false; } if (checkNotFoundedInvoke(methodName, args)) { setTimeout(function () { if (callback) { callback.apply(window, [{ err_msg: "".concat(methodName, ":fail"), err_desc: 'action isn\'t supported' }]); } }, 0); } else { top.window.WeixinJSBridge.invoke(methodName, args, function () { try { for (var _len2 = arguments.length, rets = new Array(_len2), _key2 = 0; _key2 ".concat(ret.err_msg) : ''; if (['handleMPPageAction', 'handleVideoAction', 'handleHaokanAction'].indexOf(methodName) !== -1) { var action = (args === null || args === void 0 ? void 0 : args.action) || ''; console.info('[system]', "[jsapi] invoke->".concat(methodName, ", action->").concat(action).concat(errMsg)); } else { console.info('[system]', "[jsapi] invoke->".concat(methodName).concat(errMsg)); } if (methodName === 'handleMPPageAction' && (args === null || args === void 0 ? void 0 : args.action) && ((ret === null || ret === void 0 ? void 0 : ret.err_desc) === 'action isn\'t supported' || (ret === null || ret === void 0 ? void 0 : ret.err_msg) === 'handleMPPageAction:fail action is not supported')) { notFoundedMPPageAction.push(args === null || args === void 0 ? void 0 : args.action); } if (callback) { callback.apply(window, rets); } } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: "invoke;methodName:".concat(methodName), e: e }]); throw e; } }); } }); case 4: case "end": return _context.stop(); } }, _callee); })); return _invoke.apply(this, arguments); } function call(_x4) { return _call.apply(this, arguments); } function _call() { _call = _asyncToGenerator( _regeneratorRuntime$2().mark(function _callee2(methodName) { return _regeneratorRuntime$2().wrap(function _callee2$(_context2) { while (1) switch (_context2.prev = _context2.next) { case 0: if (!(window.__secPageAuthPromise && !window.__is_page_auth_ok__)) { _context2.next = 3; break; } _context2.next = 3; return window.__secPageAuthPromise; case 3: ready$1(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object') { return false; } try { top.window.WeixinJSBridge.call(methodName); } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: "call;methodName:".concat(methodName), e: e }]); throw e; } }); case 4: case "end": return _context2.stop(); } }, _callee2); })); return _call.apply(this, arguments); } function on$2(eventName, callback) { ready$1(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object' || !top.window.WeixinJSBridge.on) { return false; } if (!window.JSAPIEventCallbackMap[eventName]) { window.JSAPIEventCallbackMap[eventName] = []; } window.JSAPIEventCallbackMap[eventName].push(callback); if (window.JSAPIEventCallbackMap[eventName].length > 1) { return false; } top.window.WeixinJSBridge.on(eventName, function () { try { for (var _len = arguments.length, rets = new Array(_len), _key = 0; _key ".concat(ret.err_msg) : ''; console.info('[system]', "[jsapi] event->".concat(eventName).concat(errMsg)); if (window.JSAPIEventCallbackMap[eventName] && window.JSAPIEventCallbackMap[eventName].length) { var result; for (var i = 0; i = 0; i--) { if (window.JSAPIEventCallbackMap[eventName][i] === callback) { window.JSAPIEventCallbackMap[eventName].splice(i, 1); result = true; } } return result; }); } var JSAPI = { ready: ready$1, invoke: invoke, call: call, on: on$2, remove: remove$1 }; function _regeneratorRuntime$1() { _regeneratorRuntime$1 = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } var attrs = ['top', 'left', 'right', 'bottom']; var elementComputedStyle = {}; var changeAttrs = []; var callbacks = []; var inited; var support; var jsApiSupport = false; var androidReadyPromise = null; if (Device.os.android) { androidReadyPromise = new Promise(function (resolve) { JSAPI.invoke('handleDeviceInfo', { action: 'getSafeAreaInsets' }, function (res) { if (res.err_msg.indexOf(':ok') !== -1) { elementComputedStyle.top = res.top; elementComputedStyle.left = res.left; elementComputedStyle.right = window.screen.width - res.right; elementComputedStyle.bottom = window.screen.height - res.bottom; jsApiSupport = true; } else { attrs.forEach(function (attr) { elementComputedStyle[attr] = 0; }); } inited = true; resolve(); }); }); } function getSupport() { if (Device.os.android) { support = ''; } else if (!('CSS' in window) || typeof CSS.supports !== 'function') { support = ''; } else if (CSS.supports('top: env(safe-area-inset-top)')) { support = 'env'; } else if (CSS.supports('top: constant(safe-area-inset-top)')) { support = 'constant'; } else { support = ''; } return support; } function attrChange(attr) { if (!changeAttrs.length) { setTimeout(function () { var style = {}; changeAttrs.forEach(function (a) { style[a] = elementComputedStyle[a]; }); changeAttrs.length = 0; callbacks.forEach(function (callback) { callback(style); }); }, 0); } changeAttrs.push(attr); } function init() { support = typeof support === 'string' ? support : getSupport(); if (!support) { attrs.forEach(function (attr) { elementComputedStyle[attr] = 0; }); return; } function setStyle(el, style) { var elStyle = el.style; Object.keys(style).forEach(function (key) { var val = style[key]; elStyle[key] = val; }); } var cbs = []; function parentReady(callback) { if (callback) { cbs.push(callback); } else { cbs.forEach(function (cb) { cb(); }); } } var passiveEvents = false; try { var opts = Object.defineProperty({}, 'passive', { get: function get() { passiveEvents = { passive: true }; } }); window.addEventListener('test', null, opts); } catch (e) {} function addChild(parent, attr) { var a1 = document.createElement('div'); var a2 = document.createElement('div'); var a1Children = document.createElement('div'); var a2Children = document.createElement('div'); var W = 100; var MAX = 10000; var aStyle = { position: 'absolute', width: "".concat(W, "px"), height: '200px', boxSizing: 'border-box', overflow: 'hidden', paddingBottom: "".concat(support, "(safe-area-inset-").concat(attr, ")") }; setStyle(a1, aStyle); setStyle(a2, aStyle); setStyle(a1Children, { transition: '0s', animation: 'none', width: '400px', height: '400px' }); setStyle(a2Children, { transition: '0s', animation: 'none', width: '250%', height: '250%' }); a1.appendChild(a1Children); a2.appendChild(a2Children); parent.appendChild(a1); parent.appendChild(a2); parentReady(function () { a1.scrollTop = MAX; a2.scrollTop = MAX; var a1LastScrollTop = a1.scrollTop; var a2LastScrollTop = a2.scrollTop; function onScroll() { if (this.scrollTop === (this === a1 ? a1LastScrollTop : a2LastScrollTop)) { return; } a1.scrollTop = MAX; a2.scrollTop = MAX; a1LastScrollTop = a1.scrollTop; a2LastScrollTop = a2.scrollTop; attrChange(attr); } a1.addEventListener('scroll', onScroll, passiveEvents); a2.addEventListener('scroll', onScroll, passiveEvents); }); var computedStyle = getComputedStyle(a1); Object.defineProperty(elementComputedStyle, attr, { configurable: true, get: function get() { return parseFloat(computedStyle.paddingBottom); } }); } var parentDiv = document.createElement('div'); setStyle(parentDiv, { position: 'absolute', left: '0', top: '0', width: '0', height: '0', zIndex: '-1', overflow: 'hidden', visibility: 'hidden' }); attrs.forEach(function (key) { addChild(parentDiv, key); }); document.body.appendChild(parentDiv); parentReady(); inited = true; } function getAttr(attr) { if (!inited) { init(); } return elementComputedStyle[attr]; } function onChange(callback) { if (!getSupport()) { return; } if (!inited) { init(); } if (typeof callback === 'function') { callbacks.push(callback); } } function offChange(callback) { var index = callbacks.indexOf(callback); if (index >= 0) { callbacks.splice(index, 1); } } function pollUntilReady(attr) { var timeout = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2000; return new Promise(function (resolve) { var start = Date.now(); function check() { var val = elementComputedStyle[attr]; if (val && val !== 0 || Date.now() - start > timeout) { resolve(); return; } setTimeout(check, 300); } setTimeout(check, 300); }); } var readyPromise = null; function ready() { if (!readyPromise) { readyPromise = _asyncToGenerator( _regeneratorRuntime$1().mark(function _callee() { return _regeneratorRuntime$1().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: if (!androidReadyPromise) { _context.next = 4; break; } _context.next = 3; return androidReadyPromise; case 3: return _context.abrupt("return"); case 4: if (!inited) { init(); } if (!support) { _context.next = 8; break; } _context.next = 8; return pollUntilReady('bottom'); case 8: case "end": return _context.stop(); } }, _callee); }))(); } return readyPromise; } function getAttrAsync(_x) { return _getAttrAsync.apply(this, arguments); } function _getAttrAsync() { _getAttrAsync = _asyncToGenerator( _regeneratorRuntime$1().mark(function _callee2(attr) { return _regeneratorRuntime$1().wrap(function _callee2$(_context2) { while (1) switch (_context2.prev = _context2.next) { case 0: _context2.next = 2; return ready(); case 2: return _context2.abrupt("return", elementComputedStyle[attr]); case 3: case "end": return _context2.stop(); } }, _callee2); })); return _getAttrAsync.apply(this, arguments); } var SafeArea = { get support() { return (typeof support === 'string' ? support : getSupport()).length !== 0 || jsApiSupport; }, get top() { return getAttr('top'); }, get left() { return getAttr('left'); }, get right() { return getAttr('right'); }, get bottom() { return getAttr('bottom'); }, onChange: onChange, offChange: offChange, ready: ready, getAsync: getAttrAsync }; function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _defineProperties(target, props) { for (var i = 0; i d2.exp) return 1; return 0; }); var memCnt = 0; for (var i = 0; i = size) break; var key = keys[i]; memCnt += JSON.stringify(data[key]).length; delete data[key]; } return data; }, 'clear-all': function clearAll() { localStorage$1.clear(); return {}; } }; function formatLogMsg(str) { return "[WXLS] ".concat(str); } var LS = function () { function LS(func, evictionPolicy, logger) { _classCallCheck(this, LS); this.logger = function () {}; if (!func) throw 'require function name.'; this.evictionPolicy = 'noeviction'; this.key = func; if (typeof logger === 'function') { this.logger = function (str, type) { return logger(formatLogMsg(str), type); }; } if (evictionPolicy && Object.keys(evictionPolicies).indexOf(evictionPolicy) !== -1) { this.evictionPolicy = evictionPolicy; } this.init(); } _createClass(LS, [{ key: "init", value: function init() { var _a, _b; this.check(); if (Math.random() * 1000 now) { temp[key] = val; } } this.logger("check info: isReturn:".concat(isReturn, " data:").concat(JSON.stringify(temp)), 'info'); if (isReturn) return temp; LS.setItem(this.key, JSON.stringify(temp), this.logger); } }, { key: "set", value: function set(key, val, exp) { var _a, _b; var data = this.check(true); data[key] = { val: val, exp: exp || +new Date() }; try { if (localStorage$1.getItem(prefix + this.key)) localStorage$1.removeItem(prefix + this.key); localStorage$1.setItem(prefix + this.key, JSON.stringify(data)); this.logger("first set success: LSlen:".concat((_a = window === null || window === void 0 ? void 0 : window.localStorage) === null || _a === void 0 ? void 0 : _a.length, " key:").concat(prefix + this.key, " data:").concat(JSON.stringify(data)), 'success'); } catch (e) { this.logger("first set error: LSlen:".concat((_b = window === null || window === void 0 ? void 0 : window.localStorage) === null || _b === void 0 ? void 0 : _b.length, " error:").concat(e, " key:").concat(prefix + this.key, " data:").concat(JSON.stringify(data), " k:").concat(key, " v:").concat(val, " exp:").concat(exp), 'error'); localStorage$1.clear(); LS.setItem(this.key, JSON.stringify(_defineProperty({}, key, { val: val, exp: exp || +new Date() })), this.logger); } } }, { key: "get", value: function get(key) { var data = this.getData(); data = data[key]; return data ? data.val || null : null; } }, { key: "remove", value: function remove(key) { var data = this.getData(); if (data[key]) delete data[key]; LS.setItem(this.key, JSON.stringify(data), this.logger); } }], [{ key: "getItem", value: function getItem(key) { key = prefix + key; return localStorage$1.getItem(key); } }, { key: "setItem", value: function setItem(key, val, logger) { var _a, _b; key = prefix + key; var n = 3; while (n--) { try { if (localStorage$1.getItem(key)) localStorage$1.removeItem(key); localStorage$1.setItem(key, val); typeof logger === 'function' && logger("setItem success: LSlen:".concat((_a = window === null || window === void 0 ? void 0 : window.localStorage) === null || _a === void 0 ? void 0 : _a.length, " key:").concat(key, " val:").concat(val), 'success'); break; } catch (e) { typeof logger === 'function' && logger("setItem error: LSlen:".concat((_b = window === null || window === void 0 ? void 0 : window.localStorage) === null || _b === void 0 ? void 0 : _b.length, " error:").concat(e, " key:").concat(key, " val:").concat(val), 'error'); LS.clear(); } } } }, { key: "clear", value: function clear() { var i; var k; for (i = localStorage$1.length - 1; i >= 0; i--) { k = localStorage$1.key(i); if (k.indexOf(prefix) == 0) { localStorage$1.removeItem(k); } } } }, { key: "getSupportEvicationPolicy", value: function getSupportEvicationPolicy() { return Object.keys(evictionPolicies); } }]); return LS; }(); var LOCAL_STORAGE_EXPIRE_TIME = 24 * 60 * 60 * 1000; var onceListeners = {}; var permanentListeners = {}; function clean(event, all) { delete onceListeners[event]; if (all) { delete permanentListeners[event]; } } function on$1(event, callback, permanent) { if (typeof callback === 'function') { if (permanent) { if (!permanentListeners[event]) { permanentListeners[event] = []; } permanentListeners[event].push(callback); } else { if (!onceListeners[event]) { onceListeners[event] = []; } onceListeners[event].push(callback); } } } function emit(event) { for (var _len = arguments.length, params = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i -1) { bizMap[bizType] = res.biz; resolve(res.biz); getBizLS.set("".concat(bizType, "_get_biz_result"), res.biz, +new Date() + 3 * 24 * 60 * 60 * 1000); } else { reject('Failed to get biz'); } }); } } else { resolve(bizMap[bizType]); } }); } var getIsAuthor = function getIsAuthor(cb, bizuin, needCheckBiz, bizType) { var _a; if (bizuin === void 0) { bizuin = window.biz; } if (needCheckBiz === void 0) { needCheckBiz = false; } if (bizType === void 0) { bizType = ((_a = window.cgiDataNew) === null || _a === void 0 ? void 0 : _a.biz_type) || 1; } getBiz(needCheckBiz, bizType).then(function (biz) { cb(biz && biz === bizuin); })["catch"](function () { cb(false); }); }; function parseUrl(url) { var len = url.length; var ques_pos = url.indexOf('?'); var hash_pos = url.indexOf('#'); hash_pos = hash_pos == -1 ? len : hash_pos; ques_pos = ques_pos == -1 ? hash_pos : ques_pos; var host = url.substring(0, ques_pos); var query_str = url.substring(ques_pos + 1, hash_pos); var hash = url.substring(hash_pos + 1); return { host: host, query_str: query_str, hash: hash }; } function join(url, args, noEncode) { var ret = parseUrl(url); var query_str = ret.query_str; var args_arr = []; if (_typeof(args) === 'object') { for (var key in args) { if (args.hasOwnProperty(key)) { args_arr.push("".concat(key, "=").concat(noEncode ? args[key] : encodeURIComponent(args[key]))); } } } else { args_arr.push(noEncode ? args : encodeURIComponent(args)); } if (args_arr.length > 0) { query_str += (query_str !== "" ? "&" : "") + args_arr.join("&"); } return ret.host + (query_str !== "" ? "?".concat(query_str) : "") + (ret.hash !== "" ? "#".concat(ret.hash) : ""); } function addParam(url, param, value, forceReplace) { url = url || location.href; var firstAndPos = url.indexOf("&"); var len = url.length; var reverseUrl = url.replace(/^[\w\d]+:[/\\]+/g, "").split("").reverse(); if (!Array.prototype.indexOf) { Array.prototype.indexOf = function (searchElement, fromIndex) { var k; if (this == null) { throw new TypeError('"this" is null or not defined'); } var O = Object(this); var len = O.length >>> 0; if (len === 0) { return -1; } var n = fromIndex || 0; if (Math.abs(n) === Infinity) { n = 0; } if (n >= len) { return -1; } k = Math.max(n >= 0 ? n : len - Math.abs(n), 0); while (k lastSlashPos) { url = url.replace("&", "?"); } var reg = new RegExp("([\\?&]".concat(param, "=)[^&#]*")); if (!url.match(reg)) { var urlInfo = parseUrl(url); var hash = urlInfo.hash ? '#' + urlInfo.hash : ''; url = url.replace(hash, ''); var _pos = url.indexOf("?"); if (_pos == -1) { return "".concat(url, "?").concat(param, "=").concat(value).concat(hash); } if (_pos == url.length - 1) { return "".concat(url + param, "=").concat(value).concat(hash); } return "".concat(url, "&").concat(param, "=").concat(value).concat(hash); } if (forceReplace === true) { return url.replace(reg, "$1".concat(value)); } return url; } function addWxfrom(src, wxfrom) { var offset = window.service_type === 1 ? 10000 : 0; return addParam(src, 'wxfrom', offset + Number(wxfrom), true); } function removeParam(url, param) { var _URL = new URL(url), protocol = _URL.protocol, host = _URL.host, pathname = _URL.pathname, search = _URL.search, hash = _URL.hash; var queryParams = new URLSearchParams(search); queryParams["delete"](param); var newSearch = queryParams.toString(); var newUrl = new URL("".concat(protocol, "//").concat(host).concat(pathname).concat(newSearch ? "?".concat(decodeURIComponent(newSearch)) : "").concat(hash)); return newUrl.toString(); } function getQuery(name, url) { var u = url || window.location.search; var reg = new RegExp("(^|&)".concat(name, "=([^&]*)(&|$)")); var r = u.substring(u.indexOf('?') + 1).match(reg); return r !== null ? r[2] : ''; } function encodeBase64(value) { try { return window.btoa(value); } catch (e) { return ''; } } function decodeBase64(value) { try { return window.atob(value); } catch (e) { return ''; } } function joinUrl$1(url) { var obj = {}; if (typeof window.uin !== 'undefined') { obj.uin = window.uin; } if (typeof window.key !== 'undefined') { obj.key = window.key; } if (typeof window.pass_ticket !== 'undefined') { obj.pass_ticket = window.pass_ticket; } if (typeof window.wxtoken !== 'undefined') { obj.wxtoken = window.wxtoken; } if (typeof window.devicetype !== 'undefined') { obj.devicetype = window.devicetype; } if (typeof window.clientversion !== 'undefined') { obj.clientversion = window.clientversion || mmversion.getInner(); } obj.version = obj.clientversion; if (window.biz) { obj.__biz = window.biz; } if (getQuery('enterid')) { obj.enterid = getQuery('enterid'); } if (typeof window.appmsg_token !== 'undefined') { obj.appmsg_token = window.appmsg_token; } else if (url.indexOf('advertisement_report') > -1) { new Image().src = "".concat(location.protocol, "//mp.weixin.qq.com/mp/jsmonitor?idkey=68064_13_1&r=").concat(Math.random()); } obj.x5 = navigator.userAgent.indexOf('TBS/') !== -1 ? '1' : '0'; obj.f = 'json'; return join(url, obj); } function joinUserArticleRole(url, notJoin, cb) { var bizuin = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : window.biz; var needCheckBiz = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false; if (notJoin) { cb(url); } else { getIsAuthor(function (isAuthor) { cb(addParam(url, 'user_article_role', isAuthor ? 1 : 0, true)); }, bizuin, needCheckBiz); } } function getA8keyQuery(name, url) { return new Promise(function (resolve) { if (window.__secPageAuthPromise) { window.__secPageAuthPromise.then(function () { resolve(getQuery(name, url)); }); } else { resolve(getQuery(name, url)); } }); } function addHash(url, hash) { var isReplace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; if (isReplace) { return "".concat(url.split('#')[0]).concat(hash); } return "".concat(url).concat(url.indexOf('#') === -1 ? '#' : '').concat(hash); } function decodeUrl(url) { var _url = url; while (_url.indexOf('&') !== -1) { _url = _url.htmlDecode(); } return _url; } var Url = { parseUrl: parseUrl, join: join, addParam: addParam, addWxfrom: addWxfrom, addHash: addHash, getQuery: getQuery, getA8keyQuery: getA8keyQuery, encodeBase64: encodeBase64, decodeBase64: decodeBase64, joinUrl: joinUrl$1, joinUserArticleRole: joinUserArticleRole, removeParam: removeParam, decodeUrl: decodeUrl }; var isIPadOS13 = Device.os.ipad && Device.os.getNumVersion() >= 13 && Device.os.getNumVersion() 0 && isFinite(scale)) { window.__dprScale__ = 1 / scale; return window.__dprScale__; } } catch (e) { } window.__dprScale__ = 1; return window.__dprScale__; } function getNativeFontScale() { return getNativeFontScaleVar() * getScaleByDPR(); } function getScaleByDom() { if (typeof document === 'undefined' || !document.body) { return 1; } var fontDom = document.createElement('div'); fontDom.style.fontSize = '16px'; document.body.appendChild(fontDom); var originFontSize = parseFloat(fontDom.style.fontSize); var realFontSize = parseFloat(window.getComputedStyle(fontDom, null).getPropertyValue('font-size')); document.body.removeChild(fontDom); var percent = realFontSize / originFontSize; if (!percent || percent 1000) { continue; } setPair[0].style.fontSize = "".concat(calculatedSize, "px"); setPair[0].style.lineHeight = "".concat(setPair[2]); } } function getLevelScaleByFontLevel(fontLevel) { var level = Math.max(0, Math.min(fontLevel, FONT_LEVEL_TO_SCALE_MAP.length - 1)); return FONT_LEVEL_TO_SCALE_MAP[level]; } function getClientFontScaleValue() { var useFontLevel = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; if (useFontLevel) { var fontLevel = getNativeFontLevelVar(); return getLevelScaleByFontLevel(fontLevel - 1) * 100; } return getNativeFontScale() * 100; } function setArticleContentFontSize(percent, root) { var contentEl = root || document.getElementById('js_content'); if (contentEl) { window.__contentFontScale__ = percent; EventBus.emit(ARTICLE_FONT_SCALE_CHANGE_EVENT, percent); setFontSize(contentEl, percent); } } function _log(level, msg) { if (level === 'log') { level = 'info'; msg = "[WechatFe]".concat(msg); } else { var prefix = "__wap__".concat(window.__second_open__ ? ' (sec)' : ''); msg = "".concat(prefix, " ").concat(msg, " location:[").concat(location.href, "]"); } msg += new Error().stack; if (mmversion.isMpapp) { invoke$1('WNNativeCallbackLog', msg); } else if (mmversion.isWechat) { if (mmversion.isAndroid) { console.warn('[system]', "[MicroMsg.JsApiLog][".concat(level, "] jslog : ").concat(msg)); } else if (mmversion.isIOS) { JSAPI.invoke('writeLog', { level: level, msg: msg }); } else { JSAPI.invoke('log', { level: level, msg: msg }); } } } var Log = { info: function info() { for (var _len = arguments.length, args = new Array(_len), _key = 0; _key = 0) continue; target[key] = source[key]; } return target; } function formatDataToString(data) { var reportData = []; for (var key in data) { if (Object.prototype.hasOwnProperty.call(data, key)) { reportData.push(key + '=' + encodeURIComponent(data[key])); } } return reportData.join('&'); } monitor.getReportData = function (opt) { opt = opt || {}; var idkey = monitor._reportOptions.idkey || {}; var key = null; var reportData = {}; var nextKey; try { for (key in idkey) { if (Object.prototype.hasOwnProperty.call(idkey, key) && idkey[key]) { reportLogs.push(key + '_' + idkey[key]); } } } catch (e) { return false; } if (reportLogs.length === 0) { return false; } if (reportExtraLogs.length) { reportData.lc = reportExtraLogs.length; reportExtraLogs.forEach(function (extraLog, index) { reportData["log".concat(index)] = extraLog; }); } try { var reportOptions = monitor._reportOptions; if (reportOptions !== null && reportOptions !== undefined) { for (nextKey in reportOptions) { if (Object.prototype.hasOwnProperty.call(reportOptions, nextKey)) { reportData[nextKey] = reportOptions[nextKey]; } } } } catch (e) { reportData = {}; } reportData.idkey = reportLogs.join(';'); reportData.t = Math.random(); if (opt.remove !== false) { reportLogs = []; reportExtraLogs = []; monitor._reportOptions = { idkey: {} }; } return reportData; }; monitor.setLogs = function (opt) { var id = opt.id; var key = opt.key; var value = opt.value; var extraLog = opt.log; var others = ObjWithoutProperty(opt, ['id', 'key', 'value', 'log']); var idkey = monitor._reportOptions.idkey || {}; var param = id + '_' + key; if (idkey[param]) { idkey[param] += value; } else { idkey[param] = value; } monitor._reportOptions.idkey = idkey; if (extraLog) { reportExtraLogs.push(extraLog); } try { if (others !== null && others !== undefined) { for (var otherKey in others) { if (Object.prototype.hasOwnProperty.call(others, otherKey)) { monitor._reportOptions[otherKey] = others[otherKey]; } } } } catch (e) { console.log(e); } return monitor; }; monitor.setAvg = function (id, key, value) { var idkey = monitor._reportOptions.idkey || {}; var param1 = id + '_' + key; var param2 = id + '_' + (key - 1); if (idkey[param1]) { idkey[param1] += value; } else { idkey[param1] = value; } if (idkey[param2]) { idkey[param2] += 1; } else { idkey[param2] = 1; } monitor._reportOptions.idkey = idkey; return monitor; }; monitor.setSum = function (id, key) { var value = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1; var idkey = monitor._reportOptions.idkey; var param = id + '_' + key; if (idkey[param]) { idkey[param] += value; } else { idkey[param] = value; } monitor._reportOptions.idkey = idkey; return monitor; }; monitor.send = function (async, ajax, origin) { if (async !== false) { async = true; } var data = monitor.getReportData(); origin = origin || ''; if (!data) { return; } if (!!ajax && ajax instanceof Function) { ajax({ url: origin + sendUrl, type: 'POST', mayAbort: true, data: data, async: async, timeout: 2000, dontReport: true }); } else { new Image().src = origin + '/mp/jsmonitor?' + formatDataToString(data) + '#wechat_redirect'; } }; if (typeof window !== 'undefined' && window.__monitor) { monitor = window.__monitor; } else { typeof window !== 'undefined' && (window.__monitor = monitor); } var monitor$1 = monitor; var logList = []; var log = function log(msg) { logList.push(msg); }; var printLog = function printLog() { for (var i = 0, len = logList.length; i [response ".concat(item.requestType, "]"), item.url, item.response, item); if (item.rdevRequestId && ((_b = (_a = window.RemoteDevSdk) === null || _a === void 0 ? void 0 : _a.instance) === null || _b === void 0 ? void 0 : _b.Network) && item.id !== '__system_log__') { try { var finishedOptions = { requestId: item.rdevRequestId, url: item.url, status: +(item.status || '500'), statusText: StatusTextMap[+(item.status || '500')] || 'Error', responseHeaders: { RDEV_RESPONSE_TYPE: item.requestType }, responseBody: item.response, requestTime: item.requestTime || 0, duration: item.costTime || (item.endTime && item.startTime ? item.endTime - item.startTime : performance.now() / 1000 - (item.requestTime || 0)) }; window.RemoteDevSdk.instance.Network.customRequestFinished(finishedOptions); } catch (err) {} } if (((_c = window.vConsole) === null || _c === void 0 ? void 0 : _c.network) && item.id !== '__system_log__') { try { item.statusText = "".concat(item.status); item.responseSize = item.response.length; item.responseSizeText = "".concat(item.response.length); return (_e = (_d = window.vConsole.network).update) === null || _e === void 0 ? void 0 : _e.call(_d, item.id, Object.assign({}, item, { readyState: 4 })); } catch (err) {} } } function reqType(obj, path) { return obj.url.indexOf(path) > -1 && obj.url.indexOf('action=') === -1 && (!obj.data || !obj.data.action); } function findAjaxScopeByConfig(url, config) { var pathname = new URL(url, location.href).pathname || ''; var scope = config[pathname.slice(1)]; if (scope) { return scope; } } function getAjaxScope(ajaxUrl) { if (Url.getQuery('no_transfer', location.href) !== '1' && mmversion.isWechat && !mmversion.isInMiniProgram && !mmversion.isWxWork && !mmversion.isMpapp && !isAcrossOrigin && window.__ajaxTransferConfig && _typeof(window.__ajaxTransferConfig) === 'object' && ( mmversion.isIOS && mmversion.compareHexVersion('1800282F') || mmversion.isAndroid && mmversion.compareHexVersion('28002234') || mmversion.isWindowsWechat && mmversion.cpVersion('3.9.5', 1, true, 'windows') || mmversion.isMacWechat && mmversion.cpVersion('3.8.4', 1, true, 'mac') || mmversion.isHarmonyWechat && mmversion.compareHexVersion('0xf3100b00') && !mmversion.compareHexVersion('0xf3100c00') || mmversion.compareHexVersion('0xf3800b00'))) { try { return findAjaxScopeByConfig(ajaxUrl, window.__ajaxTransferConfig); } catch (err) { } } } function getActionByData(data) { var _a, _b; if (_typeof(data) === 'object' && !(data instanceof Blob)) { if (data.hasOwnProperty('data') && typeof data.data === 'string') { try { var workedData = JSON.parse(data.data); return workedData.action || ''; } catch (e) {} } return data.action || ''; } if (typeof data === 'string') { return ((_b = (_a = data.split(/[?&]/).find(function (x) { return x.indexOf('action=') >= 0; })) === null || _a === void 0 ? void 0 : _a.split('=')) === null || _b === void 0 ? void 0 : _b[1]) || ''; } return ''; } var METHOD_ENUM = { GET: 0, POST: 1 }; var __moon_report = window.__moon_report || function () {}; var MOON_AJAX_SUCCESS_OFFSET = 3; var MOON_AJAX_NETWORK_OFFSET = 4; var MOON_AJAX_ERROR_OFFSET = 5; var MOON_AJAX_TIMEOUT_OFFSET = 6; var MOON_AJAX_COMPLETE_OFFSET = 7; var LENGTH_LIMIT = 4096; function reportRtError(type, id, key, content) { var log = ''; var prefix = type === 'rt' ? 'rtCheckError' : 'Ajax Length Limit'; if (content === null || content === void 0 ? void 0 : content.length) { var loglen = 1000; var len = content.length; var lc = Math.ceil(len / loglen); log = ["&lc=".concat(lc)]; for (var i = 0; i = 200 && retryStatus 0 ? 'json' : undefined }); var isTimeout = false; handleReqTimeout({ abort: function abort() { isTimeout = true; reqLogItem.endTime = Date.now(); reqLogItem.response = 'timeout'; networkEndLog(reqLogItem); } }); Device.os.pc && monitor$1.setSum(115849, 69, 1); JSAPI.invoke(Device.os.pc ? 'H5ExtTransfer' : 'webTransfer', params, function (res) { var _a, _b, _c, _d, _e, _f; if (isTimeout) return; var status = 400; var result = ''; if (Device.os.pc) { try { var retFlag = res.base_resp.ret === 0 && res.jsapi_resp.ret === 0 && res.err_msg.indexOf(':ok') > -1; var respJsonFlag = res.jsapi_resp.resp_json; status = retFlag && respJsonFlag ? 200 : 400; result = res.jsapi_resp.resp_json; } catch (err) { console.error(err); } } else { status = res && res.errCode * 1 === 0 && typeof res.result === 'string' && res.result ? 200 : 400; result = res.result; } try { Log.log("ajax transfer, status: ".concat(status, ", reqUrl: ").concat(reqUrl)); } catch (err) { console.error(err); } if (status >= 200 && status -1 && retryStatus >= 200 && retryStatus = 200 && status LENGTH_LIMIT) { reportAjaxLength(27613, 17, "ajax get limit[length: ".concat(url.length, "]").concat(url.substring(0, 1024))); } if (data && !(data instanceof Blob) && data.length > LENGTH_LIMIT) { reportAjaxLength(27613, 18, "ajax post limit[length: ".concat(data.length, "]").concat(data.substring(0, 1024))); } if (data && data instanceof Blob && data.size > LENGTH_LIMIT) { reportAjaxLength(27613, 18, "ajax post limit[length: ".concat(data.size, "]blob")); } } catch (e) { } } catch (e) { obj.error && obj.error(xhr, { type: 3, error: e, status: 0 }); } beforeReq(); }); } mmversion.isWindowsWechat && mmversion.compareHexVersion('0xf2550000') || mmversion.isMacWechat && mmversion.compareHexVersion('0xf2650000'); var getBrandServiceType = function getBrandServiceType() { var serviceType = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window.service_type; var _a, _b; var brandServiceType = 0; if (serviceType !== undefined) brandServiceType = serviceType + 1; if (((_b = (_a = window.cgiData) === null || _a === void 0 ? void 0 : _a.trans_appmsg_info) === null || _b === void 0 ? void 0 : _b.trans_type) * 1 === 1) brandServiceType = 3; return brandServiceType; }; function setCurrentMpInfo(ifShow) { var supportNewTopBar = mmversion.isIOS && mmversion.gtVersion('7.0.10', true) || mmversion.isAndroid && mmversion.gtVersion('7.0.12', true); var supportLiveStatus = mmversion.isIOS && mmversion.gtVersion('8.0.46', true) || mmversion.isAndroid && mmversion.gtVersion('8.0.46', true); JSAPI.invoke('currentMpInfo', { userName: window.user_name, brandName: !!supportNewTopBar && window.nickname === '' ? '未命名账号' : window.title, title: window.msg_title || '', brandIcon: window.hd_head_img.replace(/\/0$/, '/132'), itemShowType: window.item_show_type, isPaySubscribe: window.isPaySubscribe, topBarStyle: supportNewTopBar ? 1 : 0, topBarShowed: ifShow, disableShowFinderLiveTopBar: !ifShow && supportLiveStatus ? 1 : 0, brandServiceType: getBrandServiceType() }, function () {}); } function AjaxWx(obj) { var report36408 = typeof obj.report36408 === 'function' ? obj.report36408 : function () {}; obj.url += obj.url.indexOf('?') === -1 ? '?fasttmplajax=1' : '&fasttmplajax=1'; if (getAjaxScope(obj.url)) { Ajax(obj); return; } if (obj.usePb) { obj.type = 'POST'; obj.data = { data: JSON.stringify(obj.data) }; } if (!/^(http:\/\/|https:\/\/|\/\/)/.test(obj.url)) { obj.url = "https://mp.weixin.qq.com/".concat(obj.url.replace(/^\//, '')); } else if (/^\/\//.test(obj.url)) { obj.url = "https:".concat(obj.url); } if (obj.f !== 'html' && (obj.url.indexOf('?f=json') === -1 || obj.url.indexOf('&f=json') === -1)) { obj.url += '&f=json'; } if (!obj.notJoinUrl && obj.f !== 'html') { obj.url = Url.joinUrl(obj.url); } Url.joinUserArticleRole(obj.url, !!obj.notJoinUrl, function (url) { obj.url = url; var urlObj = new URL(url, location.origin); var data = null; if (_typeof(obj.data) === 'object') { var d = obj.data; var ds = []; for (var k in d) { if (d.hasOwnProperty(k)) { ds.push("".concat(k, "=").concat(encodeURIComponent(d[k]))); } } data = ds.join('&'); } else { data = typeof obj.data === 'string' ? obj.data : null; } var header = { Cookie: document.cookie, referer: location.href }; if (obj.contentType) { header['Content-Type'] = obj.contentType; } else if ((obj.type || 'GET').toUpperCase() === 'POST') { header['Content-Type'] = 'application/x-www-form-urlencoded; charset=UTF-8'; } var reqLogItem = networkStartLog({ method: obj.type || 'GET', url: obj.url, postData: obj.data || {}, requestHeader: header, requestType: 'jsapi', startTime: Date.now() }); var retryTime = 1; var jsapiRequest = function jsapiRequest(obj, data) { return JSAPI.invoke('request', { url: obj.url, method: obj.type, data: data, header: header }, function (res) { var _a, _b, _c, _d, _e, _f; if (res.err_msg.indexOf(':ok') > -1 && (!res.statusCode || res.statusCode >= 200 && res.statusCode '27000600')) { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 1, HttpCode: res.statusCode || 0, Ret: ((_c = resData === null || resData === void 0 ? void 0 : resData.base_resp) === null || _c === void 0 ? void 0 : _c.ret) || 0 }); } var _retryTime = retryTime++; JSAPI.invoke('updatePageAuth', {}, function (res) { console.log('[skeleton] updatePageAuth', res); monitor$1.setSum(112287, 3, 1); if (res && res.err_msg && res.err_msg.indexOf(':ok') > -1) { window.top.pass_ticket = encodeURIComponent(Url.getQuery('pass_ticket', res.fullUrl).html(false).replace(/\s/g, '+')); if (obj.pass_ticket) { obj.pass_ticket = window.top.pass_ticket; } console.warn('[skeleton] updatePageAuth resetTopbar'); var supportNewTopBar = mmversion.isIOS && mmversion.gtVersion('7.0.10', true); var showBottomBar = !!window.is_login; if (window.top.item_show_type === '0' && supportNewTopBar) { var top = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop || 0; setCurrentMpInfo(top > 40 && !showBottomBar); } try { obj.url = Url.addParam(obj.url, 'retry', _retryTime, true); } catch (err) { console.error(err); } jsapiRequest(obj, data); monitor$1.setSum(112287, 4, 1); } else { obj.success && obj.success(resData); obj.complete && obj.complete(); if (mmversion.isIOS) { monitor$1.setSum(112287, 35, 1); } else { monitor$1.setSum(112287, 36, 1); } reqLogItem.status = 200; reqLogItem.endTime = Date.now(); reqLogItem.response = resData; networkEndLog(reqLogItem); } }); } else { if (((_d = tmpResData === null || tmpResData === void 0 ? void 0 : tmpResData.base_resp) === null || _d === void 0 ? void 0 : _d.ret) !== 0) { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 4, HttpCode: res.statusCode || 0, Ret: ((_e = tmpResData === null || tmpResData === void 0 ? void 0 : tmpResData.base_resp) === null || _e === void 0 ? void 0 : _e.ret) || 0 }); } } else { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 0, HttpCode: res.statusCode || 0, Ret: ((_f = tmpResData === null || tmpResData === void 0 ? void 0 : tmpResData.base_resp) === null || _f === void 0 ? void 0 : _f.ret) || 0 }); } } obj.success && obj.success(resData); obj.complete && obj.complete(); reqLogItem.status = 200; reqLogItem.endTime = Date.now(); reqLogItem.response = resData; networkEndLog(reqLogItem); } } else if (res.err_msg.indexOf('no permission') > -1 || !mmversion.isOnlyWechat) { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 1, HttpCode: res.statusCode || 0, Ret: 0 }); } Ajax(obj); if (res.err_msg.indexOf('no permission') > -1) { console.warn('[JSAPI Request] No permission'); monitor$1.setSum(112287, 31, 1); } reqLogItem.status = 302; reqLogItem.endTime = Date.now(); reqLogItem.response = res; networkEndLog(reqLogItem); } else { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 2, HttpCode: res.statusCode || 0, Ret: 0 }); } obj.error && obj.error(null, { type: 3, error: res, status: 0 }); obj.complete && obj.complete(); monitor$1.setSum(112287, 32, 1); var sample = 0.001; if (Math.random() = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } var AjaxRouter = function () { var _ref = _asyncToGenerator( _regeneratorRuntime().mark(function _callee(obj) { return _regeneratorRuntime().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: if (!window.__secPageAuthPromise) { _context.next = 3; break; } _context.next = 3; return window.__secPageAuthPromise; case 3: if (!(!mmversion.isWxWork && (window.__second_open__ || !getIsAcrossOrigin() && top.window.__second_open__) && window.__is_page_auth_return__ && !obj.pureHttp)) { _context.next = 5; break; } return _context.abrupt("return", AjaxWx(obj)); case 5: return _context.abrupt("return", Ajax(obj)); case 6: case "end": return _context.stop(); } }, _callee); })); return function AjaxRouter(_x) { return _ref.apply(this, arguments); }; }(); var isx5 = navigator.userAgent.indexOf('TBS/') !== -1; var getDataFunc = []; var reportData = []; var specificData = {}; function joinUrl(url) { var obj = {}; if (typeof window.uin !== 'undefined') { obj.uin = window.uin; } if (typeof window.key !== 'undefined') { obj.key = window.key; } if (typeof window.pass_ticket !== 'undefined') { obj.pass_ticket = window.pass_ticket; } if (typeof window.wxtoken !== 'undefined') { obj.wxtoken = window.wxtoken; } if (typeof window.devicetype !== 'undefined') { obj.devicetype = window.devicetype; } if (typeof window.clientversion !== 'undefined') { obj.clientversion = window.clientversion; } if (typeof window.appmsg_token !== 'undefined') { obj.appmsg_token = window.appmsg_token; } else if (url.indexOf('advertisement_report') > -1) { new Image().src = "".concat(location.protocol, "//mp.weixin.qq.com/mp/jsmonitor?idkey=68064_13_1&r=").concat(Math.random()); } obj.x5 = isx5 ? '1' : '0'; obj.f = 'json'; return Url.join(url, obj); } function isObj(obj) { return obj && _typeof(obj) === 'object'; } function assign(target, source) { if (isObj(target) && isObj(source)) { for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } } function assembleReportData(initiative) { var leaveReportLog = []; leaveReportLog.push({ content: "[LeaveReport] specificData keys: ".concat(Object.keys(specificData)), timestamp: Date.now() }); Log.log("[LeaveReport] specificData keys: ".concat(Object.keys(specificData))); console.log("[LeaveReport] specificData keys: ".concat(Object.keys(specificData))); var allReportData = {}; for (var reportField in specificData) { if (!allReportData[reportField]) { allReportData[reportField] = {}; } for (var i = 0; i = BATCH_SIZE) { batchReport(); } else { if (!timeOutId) { timeOutId = setTimeout(function () { batchReport(); clearTimeout(timeOutId); timeOutId = null; }, BATCH_TIME); } } } _leaveReport.addReport(function () { var repeatedReportJson = getRepeatedReportJson(); if (!repeatedReportJson) return false; var reportData = []; for (var _i = 0, _Object$entries = Object.entries(repeatedReportJson); _i 200 || isScrolling()) { return; } var st = e.changedTouches[0]; if (Math.abs(g.y - st.clientY) 5 || Math.abs(x - e.clientX) > 5)) { clearTimeout(timeOutEvent); timeOutEvent = undefined; typeof cancelCb === 'function' && cancelCb.call(self, e); } }); on(el, 'mouseup', className, function () { mousedown = false; clearTimeout(timeOutEvent); }); on(el, 'click', className, function () { if (triggerLongClick) return false; }); } else { on(el, 'touchstart', className, function (e) { e.touches.length === 1 && (timeOutEvent = setTimeout(function () { timeOutEvent = undefined; cb.call(self, e); }, 500)); }); on(el, 'touchmove', className, function (e) { if (!timeOutEvent) return; var st = e.changedTouches[0]; if (Math.abs(g.y - st.clientY) > 5 || Math.abs(g.x - st.clientX) > 5) { clearTimeout(timeOutEvent); timeOutEvent = undefined; typeof cancelCb === 'function' && cancelCb.call(self, e); } }); on(el, 'touchend', className, function (e) { if (timeOutEvent) { clearTimeout(timeOutEvent); timeOutEvent = undefined; } else { e.preventDefault(); } }, true); } } function doubletap(el, cb) { var _this = this; var __lastTouchVideoTs = 0; var realCb = function realCb(e) { if (Date.now() - __lastTouchVideoTs -1; } function closest(target, className, context) { while (target && !matches(target, className)) { target = target !== context && target.nodeType !== target.DOCUMENT_NODE && target.parentNode; } return target; } function on(el, type, className, cb, flag, extra) { var callback; var handler; var delegator; if (!el) return; if (typeof className === 'function') { extra = flag; flag = cb; cb = className; className = ''; } if (typeof className !== 'string') { className = ''; } if (el == window && type == "load" && /complete|loaded/.test(document.readyState)) { return cb({ type: "load" }); } if (type == 'tap') return tap(el, cb, flag, className); if (type === 'longtap') return longtap(el, cb, flag, className, extra); if (type == "unload" && "onpagehide" in window) { type = "pagehide"; } callback = function callback(e) { var ret = cb(e); if (ret === false) { e.stopPropagation && e.stopPropagation(); e.preventDefault && e.preventDefault(); } return ret; }; if (className && className.charAt(0) == '.') delegator = function delegator(e) { var target = e.target || e.srcElement; var match = closest(target, className, el); if (match) { e.delegatedTarget = match; return callback(e); } }; handler = delegator || callback; cb["".concat(type, "_handler")] = handler; if (el.addEventListener) { el.addEventListener(type, handler, !!flag); return; } if (el.attachEvent) { el.attachEvent("on".concat(type), handler, !!flag); return; } } function off(el, type, cb, flag) { if (!el) return; var handlerType = type; var handler; if (handlerType == 'tap') { if (isUseTap()) { handlerType = 'touchend'; handler = cb.tap_handler && cb.tap_handler.touchend_handler ? cb.tap_handler.touchend_handler : cb; } else { handlerType = 'click'; } } if (!handler) { handler = cb["".concat(handlerType, "_handler")] || cb; } if (el.removeEventListener) { el.removeEventListener(handlerType, handler, !!flag); return; } if (el.detachEvent) { el.detachEvent("on".concat(handlerType), handler, !!flag); return; } if (handlerType == 'tap' && isUseTap()) { if (cb.tap_handler) { cb.tap_handler.touchend_handler = null; } cb.tap_handler = null; } else { cb["".concat(handlerType, "_handler")] = null; } } function getHiddenProp() { if ('hidden' in document) { return 'hidden'; } for (var i = 0; i ', '<', '']; var replaceReverse = ['&', '&', '¥', '¥', '', '>', ' ', ' ', '"', '"', '\'', ''', '`', '`']; var str = _str; var target; if (encode) { target = replaceReverse; } else { target = replace; } for (var i = 0; i ', '<', '', '>', '"', '"', '\'', ''', '`', '`']; var str = _str; var target; if (encode) { target = replaceReverse; } else { target = replace; } for (var i = 0; i 1 && arguments[1] !== undefined ? arguments[1] : 50; var timeout; return function () { for (var _len = arguments.length, args = new Array(_len), _key = 0; _key rectA.right || rectB.bottom rectA.bottom); } var utils = { isNativePage: isNativePage, isNewNativePage: function isNewNativePage() { return Url.getQuery('isNativePage') === '2'; }, isOldNativePage: function isOldNativePage() { return Url.getQuery('isNativePage') === '1'; }, __useWcSlPlayer: false, isWcSlPage: function isWcSlPage() { return utils.__useWcSlPlayer; }, getPlayerType: function getPlayerType() { if (isNativePage()) { return 2; } return 1; }, getParam: function getParam(key) { if (!key) return null; var m = location.href.match(new RegExp("(\\?|&)".concat(key, "=([^&]+)"))); return m ? m[2] : null; }, insertAfter: function insertAfter(newElement, targetElement) { var parentElement = targetElement.parentNode; if (parentElement.lastChild === targetElement) { parentElement.appendChild(newElement); } else { parentElement.insertBefore(newElement, targetElement.nextSibling); } }, getInnerHeight: function getInnerHeight() { var innerHeightFromApp = window.getInnerHeight && window.getInnerHeight(); return innerHeightFromApp || window.innerHeight || document.documentElement.clientHeight; }, getInnerWidth: function getInnerWidth() { return window.innerWidth || document.documentElement.clientWidth; }, getScrollTop: function getScrollTop() { return document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop; }, getDocumentHeight: function getDocumentHeight() { return document.body.scrollHeight; }, getElementActualTop: function getElementActualTop(element) { var elRect = element.getBoundingClientRect(); var actualTop = elRect.top + this.getScrollTop(); return actualTop; }, getElementTop: function getElementTop(element) { return element.getBoundingClientRect().top; }, getElementHeight: function getElementHeight(element) { return element.getBoundingClientRect().height; }, getOrientation: function getOrientation() { var _a, _b; return (_b = (_a = window.screen.orientation) === null || _a === void 0 ? void 0 : _a.angle) !== null && _b !== void 0 ? _b : window.orientation; }, getDirection: function getDirection() { var orientation = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : utils.getOrientation(); return (mmversion.isIPad ? [90, 270] : [0, 180]).indexOf(orientation) > -1 ? 'vertical' : 'horizontal'; }, listenDirectionChange: function listenDirectionChange(cb) { var _a, _b; if ((_b = (_a = window.screen) === null || _a === void 0 ? void 0 : _a.orientation) === null || _b === void 0 ? void 0 : _b.addEventListener) { directionChangeHandlersMap[directionHandlerId] = function (e) { cb === null || cb === void 0 ? void 0 : cb(utils.getDirection(e.target.angle), e.target.angle); }; window.screen.orientation.addEventListener('change', directionChangeHandlersMap[directionHandlerId]); } else { directionChangeHandlersMap[directionHandlerId] = function () { var orientation = utils.getOrientation(); cb === null || cb === void 0 ? void 0 : cb(utils.getDirection(orientation), orientation); }; window.addEventListener('orientationchange', directionChangeHandlersMap[directionHandlerId]); } return directionHandlerId++; }, unlistenDirectionChange: function unlistenDirectionChange(handlerId) { var _a, _b; if ((_b = (_a = window.screen) === null || _a === void 0 ? void 0 : _a.orientation) === null || _b === void 0 ? void 0 : _b.removeEventListener) { window.screen.orientation.removeEventListener('change', directionChangeHandlersMap[handlerId]); } else { window.removeEventListener('orientationchange', directionChangeHandlersMap[handlerId]); } delete directionChangeHandlersMap[handlerId]; }, isScrollEnd: function isScrollEnd(threshold) { return this.getScrollTop() + this.getInnerHeight() + threshold >= this.getDocumentHeight(); }, listenStateChange: function listenStateChange() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; stateChangeCb.push(opt.cb); try { if (parent.window.hasListenStateChange) { return; } } catch (error) { } JSAPI.on('activity:state_change', function (res) { stateChangeCb.forEach(function (callback) { callback(res); }); }); try { parent.window.hasListenStateChange = true; } catch (error) { } }, listenMpPageAction: function listenMpPageAction(cb) { mpPageActionCb.push(cb); try { if (parent.window.hasListenMpPageAction) { return; } } catch (error) { } JSAPI.on('onMPPageAction', function (res) { mpPageActionCb.forEach(function (callback) { callback(res); }); }); try { parent.window.hasListenMpPageAction = true; } catch (error) { } }, getIosMainVersion: function getIosMainVersion() { var versionInfo = navigator.userAgent.toLowerCase().match(/cpu iphone os (.*?) like mac os/); return versionInfo && versionInfo[1] && parseInt(versionInfo[1].split('_')[0], 10); }, report120081: function report120081(key, times) { jsmonitorReport$1.setSum(120081, key, times); jsmonitorReport$1.send(); }, loadNewPageKeepingHistoryStackIfSecOpen: function loadNewPageKeepingHistoryStackIfSecOpen(url) { if (window.__second_open__ && typeof url === 'string' && /^https?:\/\/mp.weixin.qq.com\//.test(url)) { HistoryLS.set(HistoryKey, location.href, Date.now() + 10000); } location.href = "".concat(url.replace(/#.*$/, ''), "#wechat_redirect"); }, initNewPageHistoryStackFromSecOpen: function initNewPageHistoryStackFromSecOpen() { var fromUrl = HistoryLS.get(HistoryKey); if (fromUrl && typeof fromUrl === 'string' && /^https?:\/\/mp.weixin.qq.com\//.test(fromUrl)) { HistoryLS.remove(HistoryKey); if (history && history.replaceState && history.pushState) { var curUrl = location.href; try { history.replaceState({ __mock_secopen_history_stack_reload__: 1 }, '', fromUrl); history.pushState({ __mock_secopen_history_stack_reload__: 1 }, '', curUrl); } catch (e) { console.error('[initNewPageHistoryStackFromSecOpen]', e); } } } if (!hasListenPopstateForSecOpenReload) { hasListenPopstateForSecOpenReload = true; window.addEventListener('popstate', function (e) { if (e.state && e.state.__mock_secopen_history_stack_reload__ === 1) { location.reload(); } }); } }, initWebCompt: function initWebCompt(webComptList, callback) { var flushCb = function flushCb() { while (webComptInitCb.length) { var cb = webComptInitCb.shift(); cb(webComptStatus); } }; if (mmversion.isWechat && !mmversion.isInMiniProgram && (Device.os.iphone && Device.os.getNumVersion() >= 10.3 && (mmversion.gtVersion('7.0.14', 1) && Device.os.getNumVersion() = 5 || Device.os.harmony && mmversion.compareHexVersion('0xf3800c00'))) { document.addEventListener('WeixinOpenTagsReady', function () { webComptStatus = { status: 'ready' }; flushCb(); }); document.addEventListener('WeixinOpenTagsError', function (e) { webComptStatus = { status: 'error', error: e && e.detail && e.detail.errMsg }; flushCb(); }); JSAPI.invoke('handleMPPageAction', { action: 'wxConfig', appid: 'wxmpfakeid', webComptList: webComptList, url: location.href }, function (res) { console.log('wx config web compt result', webComptList, res); Log.info('wx config web compt result', webComptList, JSON.stringify(res)); if (res && res.err_msg && res.err_msg.indexOf(':ok') === -1) { webComptStatus = { status: 'error', error: res.err_msg }; flushCb(); } if (typeof callback === 'function') { callback(res); } }); } else { var res = { err_msg: 'handleMPPageAction:fail_webcompt unsupported' }; console.log('wx config web compt result', webComptList, res); Log.info('wx config web compt result', webComptList, JSON.stringify(res)); webComptStatus = { status: 'error', error: res.err_msg }; flushCb(); if (typeof callback === 'function') { callback(res); } } }, initWebComptForWcSlVideoSharePage: function initWebComptForWcSlVideoSharePage() { var initAfterConfWxOpen = function initAfterConfWxOpen(res) { if (res.err_msg.indexOf(':ok') !== -1) { utils.initNewPageHistoryStackFromSecOpen(); } else { window.__failConfigWxOpen = true; Log.info('failed to config wxopen: res not ok'); jsmonitorReport$1.setSum(221515, Device.os.iphone ? 7 : 8, 1); window.WX_BJ_REPORT && window.WX_BJ_REPORT.BadJs && res && window.WX_BJ_REPORT.BadJs.report('WcSlPlayer:CfgError', (window.__second_open__ ? 'secopen:' : 'h5:') + JSON.stringify(res)); } }; if (mmversion.isAndroid) { var clientVer = mmversion.getInner(); if (clientVer > '27001037' && clientVer = '27001100') { utils.initWebCompt(['wxOpen' ], initAfterConfWxOpen); } else if (mmversion.gtVersion('7.0.15', 1)) { window.__failConfigWxOpen = true; Log.info('failed to config wxopen: android version check failed (gt 7.0.15)'); } else { window.__failConfigWxOpen = true; Log.info('failed to config wxopen: android version check failed'); } } else if (mmversion.isIOS) { if (mmversion.gtVersion('7.0.15', 1)) { utils.initWebCompt(['wxOpen' ], initAfterConfWxOpen); } else { window.__failConfigWxOpen = true; Log.info('failed to config wxopen: ios version check failed'); } } else { window.__failConfigWxOpen = true; } }, getWebComptStatus: function getWebComptStatus(cb) { if (typeof cb !== 'function') { return webComptStatus; } if (webComptStatus.status === 'loading') { webComptInitCb.push(cb); } else { cb(webComptStatus); } return true; }, supportImmersiveMode: mmversion.isWechat && !mmversion.isInMiniProgram && (mmversion.isIOS && mmversion.gtVersion('8.0.9', 1) || mmversion.isAndroid && mmversion.gtVersion('8.0.9', 1)), debounce: debounce, bindDebounceScrollEvent: function bindDebounceScrollEvent(fn) { var scrollEle = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : window; var wait = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; var useCapture = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false; var debounceFn = debounce(fn, wait); DomEvent.on(scrollEle, 'scroll', '', debounceFn, useCapture); }, checkIntersect: checkIntersect, clickRange: function clickRange(evt) { var selection = window.getSelection(); var range = selection.rangeCount && selection.getRangeAt(0); if (!range || range.collapsed || !range.intersectsNode(evt.target)) { return false; } var rangeClientRects = range.getClientRects(); var targetLineHeight = parseFloat(getComputedStyle(evt.target).lineHeight, 10); var targetRect = evt.target.getBoundingClientRect(); for (var i in rangeClientRects) { if (rangeClientRects.hasOwnProperty(i)) { var rect = rangeClientRects[i]; var extraHeight = targetLineHeight ? (targetLineHeight - rect.height) / 2 : 0; if (rect.width && checkIntersect(rect, targetRect) && evt.clientX >= rect.left && evt.clientX = rect.top - extraHeight && evt.clientY 1 && arguments[1] !== undefined ? arguments[1] : []; var frontend_exp_list = []; if (expList && expList.length > 0) { frontend_exp_list = expList; } else if (window.frontend_exp_list) { frontend_exp_list = window.frontend_exp_list; } else { try { var frontend_exp_str = ''; frontend_exp_list = JSON.parse('[' + frontend_exp_str + ']'); } catch (e) { console.log('============error', e); } } var res = frontend_exp_list.reduce(function (res, item) { if (item.key === key) res = item.value === '1'; return res; }, false); return res; } function setAutospace() { if (Device.os.ios && Device.cpVersion('18.4', -1, true)) { document.body.classList.add('autospace'); window.test_autospace = true; new Image().src = "https://mp.weixin.qq.com/mp/jsmonitor?idkey=526340_1_1"; } } function setBottomBarSafeBottom() { var bottomBarSafeBottomKey = '__bottom_bar_safe_bottom__'; var bottomBarSafeBottom = localStorage.getItem(bottomBarSafeBottomKey); if (bottomBarSafeBottom) { document.documentElement.style.setProperty('--immersive-safe-bottom', bottomBarSafeBottom); } SafeArea.getAsync('bottom').then(function (res) { console.error('bottombar-safe-bottom', res); try { if (Device.os.ios || Device.os.android && getEnv('enableAndroidEdge2Edge')) { document.documentElement.style.setProperty('--immersive-safe-bottom', "".concat(res, "px")); localStorage.setItem(bottomBarSafeBottomKey, "".concat(res, "px")); } else { document.documentElement.style.removeProperty('--immersive-safe-bottom'); localStorage.removeItem(bottomBarSafeBottomKey); } } catch (error) { console.log(error); } }); } function setGlobalTextLink() { var normalTextLinks = document.getElementsByClassName('normal_text_link'); var mp_article_text_link = document.getElementsByClassName('mp_article_text_link'); if (!normalTextLinks || normalTextLinks.length === 0 || mp_article_text_link && mp_article_text_link.length > 0) return; for (var i = 0; i 851) { document.body.classList.add('pages_skin_pc'); } } function setWindowsTitleBold() { var ua = navigator.userAgent; var isWindows = /windows\snt/i.test(ua) && !/Windows\sPhone/i.test(ua); if (isWindows) document.body.classList.add('windows-title-bold'); } function setNewCmtUi() { document.body.classList.add('appmsg_cmt_new_ui'); if (window.cgiDataNew && window.cgiDataNew.item_show_type * 1 === 0) { document.body.classList.add('appmsg_content_new_ui'); } } function setDeviceClass() { if (Device.os.ios) { document.body.classList.add('wx-device-ios'); } } function setContentFontSize(localFontScale) { var useFontLevel = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; if (!localFontScale) return; var clientFontScale = getClientFontScaleValue(useFontLevel); window.clientFontScale = clientFontScale; var finalFontScale = localFontScale * clientFontScale / 100; setArticleContentFontSize(finalFontScale); } function isTimeValid(timestamp) { if (!timestamp || timestamp 0) { var foundItem = window.fontScaleDBData.find(function (item) { return item && item.tripleKey === tripleKey; }); if (foundItem) { dbData = foundItem; } } var lsTime = lsData && _typeof(lsData) === 'object' ? lsData.lastUpdateTime || 0 : 0; var dbTime = dbData ? dbData.lastUpdateTime || 0 : 0; var storedClientFontLevel = lsTime >= dbTime && lsData ? lsData.clientFontLevel || null : dbData ? dbData.clientFontLevel || null : null; var currentClientFontLevel = getNativeFontLevelVar(); if (storedClientFontLevel !== null && Number(currentClientFontLevel) !== Number(storedClientFontLevel)) { return null; } var latestTime = Math.max(lsTime, dbTime); if (!isTimeValid(latestTime)) { return null; } var fontScale = null; if (lsTime >= dbTime && lsData) { fontScale = _typeof(lsData) === 'object' ? lsData.fontScale : lsData; } else if (dbData) { fontScale = dbData.fontScale; } if (fontScale) window.lastFontScale = fontScale; console.log('getFontScale result:', fontScale); return fontScale; } function initFontScale(biz, mid, idx) { var useFontLevel = true; var fontScale = getFontScale(biz, mid, idx); var localFontScale = fontScale || 1; setContentFontSize(localFontScale, useFontLevel); } function setGlobalStyle(biz, mid, idx) { initFontScale(biz, mid, idx); setWindowsTitleBold(); setAutospace(); setBottomBarSafeBottom(); setImgPgaeSkinPc(); setNewCmtUi(); setDeviceClass(); } window.canShowAiChatCommentEntry = mmversion.isIOS && mmversion.compareHexVersion('0x18004221') || mmversion.isAndroid && mmversion.compareHexVersion('0x28004150'); window.canShowAiChatRoomEntry = mmversion.isIOS && mmversion.compareHexVersion('0x18004522') || mmversion.isAndroid && mmversion.compareHexVersion('0x28004555'); function setBarAiChat() { if (!window.canShowAiChatRoomEntry) { var barAiChat = document.getElementById('js_bar_ai_chat'); barAiChat === null || barAiChat === void 0 ? void 0 : barAiChat.parentElement.removeChild(barAiChat); } } try { setBarAiChat(); setGlobalTextLink(); } catch (error) { console.log('setGlobalTextLink error', error); } if (!window.__second_open__) { var _window = window, biz = _window.biz, mid = _window.mid, idx = _window.idx; setGlobalStyle(biz, mid, idx); } exports.getFontScale = getFontScale; exports.initFontScale = initFontScale; exports.parseExp = parseExp; exports.setAutospace = setAutospace; exports.setBottomBarSafeBottom = setBottomBarSafeBottom; exports.setContentFontSize = setContentFontSize; exports.setDeviceClass = setDeviceClass; exports.setGlobalStyle = setGlobalStyle; exports.setGlobalTextLink = setGlobalTextLink; exports.setImgPgaeSkinPc = setImgPgaeSkinPc; exports.setNewCmtUi = setNewCmtUi; exports.setWindowsTitleBold = setWindowsTitleBold; Object.defineProperty(exports, '__esModule', { value: true }); return exports; })({});var __INLINE_SCRIPT__ = (function () { 'use strict'; function _arrayLikeToArray$1(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i d2.exp) return 1; return 0; }); var memCnt = 0; for (var i = 0; i = size) break; var key = keys[i]; memCnt += JSON.stringify(data[key]).length; delete data[key]; } return data; }, 'clear-all': function clearAll() { localStorage.clear(); return {}; } }; function formatLogMsg(str) { return "[WXLS] ".concat(str); } var LS = function () { function LS(func, evictionPolicy, logger) { _classCallCheck(this, LS); this.logger = function () {}; if (!func) throw 'require function name.'; this.evictionPolicy = 'noeviction'; this.key = func; if (typeof logger === 'function') { this.logger = function (str, type) { return logger(formatLogMsg(str), type); }; } if (evictionPolicy && Object.keys(evictionPolicies).indexOf(evictionPolicy) !== -1) { this.evictionPolicy = evictionPolicy; } this.init(); } _createClass(LS, [{ key: "init", value: function init() { var _a, _b; this.check(); if (Math.random() * 1000 now) { temp[key] = val; } } this.logger("check info: isReturn:".concat(isReturn, " data:").concat(JSON.stringify(temp)), 'info'); if (isReturn) return temp; LS.setItem(this.key, JSON.stringify(temp), this.logger); } }, { key: "set", value: function set(key, val, exp) { var _a, _b; var data = this.check(true); data[key] = { val: val, exp: exp || +new Date() }; try { if (localStorage.getItem(prefix + this.key)) localStorage.removeItem(prefix + this.key); localStorage.setItem(prefix + this.key, JSON.stringify(data)); this.logger("first set success: LSlen:".concat((_a = window === null || window === void 0 ? void 0 : window.localStorage) === null || _a === void 0 ? void 0 : _a.length, " key:").concat(prefix + this.key, " data:").concat(JSON.stringify(data)), 'success'); } catch (e) { this.logger("first set error: LSlen:".concat((_b = window === null || window === void 0 ? void 0 : window.localStorage) === null || _b === void 0 ? void 0 : _b.length, " error:").concat(e, " key:").concat(prefix + this.key, " data:").concat(JSON.stringify(data), " k:").concat(key, " v:").concat(val, " exp:").concat(exp), 'error'); localStorage.clear(); LS.setItem(this.key, JSON.stringify(_defineProperty({}, key, { val: val, exp: exp || +new Date() })), this.logger); } } }, { key: "get", value: function get(key) { var data = this.getData(); data = data[key]; return data ? data.val || null : null; } }, { key: "remove", value: function remove(key) { var data = this.getData(); if (data[key]) delete data[key]; LS.setItem(this.key, JSON.stringify(data), this.logger); } }], [{ key: "getItem", value: function getItem(key) { key = prefix + key; return localStorage.getItem(key); } }, { key: "setItem", value: function setItem(key, val, logger) { var _a, _b; key = prefix + key; var n = 3; while (n--) { try { if (localStorage.getItem(key)) localStorage.removeItem(key); localStorage.setItem(key, val); typeof logger === 'function' && logger("setItem success: LSlen:".concat((_a = window === null || window === void 0 ? void 0 : window.localStorage) === null || _a === void 0 ? void 0 : _a.length, " key:").concat(key, " val:").concat(val), 'success'); break; } catch (e) { typeof logger === 'function' && logger("setItem error: LSlen:".concat((_b = window === null || window === void 0 ? void 0 : window.localStorage) === null || _b === void 0 ? void 0 : _b.length, " error:").concat(e, " key:").concat(key, " val:").concat(val), 'error'); LS.clear(); } } } }, { key: "clear", value: function clear() { var i; var k; for (i = localStorage.length - 1; i >= 0; i--) { k = localStorage.key(i); if (k.indexOf(prefix) == 0) { localStorage.removeItem(k); } } } }, { key: "getSupportEvicationPolicy", value: function getSupportEvicationPolicy() { return Object.keys(evictionPolicies); } }]); return LS; }(); function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i b; } }; function cpVersion(ver, op, canEq, type) { var mmver = false; switch (type) { case 'mac': mmver = getMac(); break; case 'windows': mmver = getWindowsVersionFormat(); break; case 'wxwork': mmver = getWxWork(); break; case 'mpapp': mmver = getMpApp(); break; case 'unifiedpc': mmver = getUnifiedPcVer(); break; default: mmver = get(); break; } if (!mmver) { return; } var mmversion = mmver.split('.'); var version = ver.split('.'); if (!/\d+/g.test(mmversion[mmversion.length - 1])) { mmversion.pop(); } for (var i = 0, len = Math.max(mmversion.length, version.length); i = 64 && parseInt(v) = hexNum; } return false; } var mmversion = { get: get, getMac: getMac, getMacOS: getMacOS, getWindows: getWindows, getInner: getInner, getWxWork: getWxWork, getMpApp: getMpApp, cpVersion: cpVersion, eqVersion: eqVersion, gtVersion: gtVersion, ltVersion: ltVersion, getPlatform: getPlatform, getVersionNumber: getVersionNumber, isWp: is_wp, isIOS: is_ios, isAndroid: is_android, isHarmony: is_harmony, isHarmonyWechat: is_harmony && is_wechat && cpVersion('1.0.0', 1, true), isInMiniProgram: is_in_miniProgram, isWechat: is_wechat, isMac: is_mac, isWindows: is_windows, isLinux: is_linux, isMacWechat: is_mac_wechat, isWindowsWechat: is_windows_wechat, isWxWork: is_wx_work, isOnlyWechat: is_wechat && !is_wx_work, isMpapp: is_mpapp, isNewMpApp: false, isIPad: is_ipad, isGooglePlay: is_google_play, isPrefetch: is_prefetch, isDonutAPP: is_donut_app, compareHexVersion: compareHexVersion, isPcWechat: is_windows_wechat || is_mac_wechat, xwebVersion: xweb_version, isUnifiedPcWechat: is_unified_pc_wechat }; function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; } function _regeneratorRuntime() { _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } var doc = {}; var isAcrossOrigin = false; var notFoundedMPPageAction = []; var __moon_report = window.__moon_report || function () {}; var MOON_JSAPI_KEY_OFFSET = 8; try { doc = top.window.document; } catch (e) { isAcrossOrigin = true; } if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; } function ready(onBridgeReady) { var bridgeReady = function bridgeReady() { try { if (onBridgeReady) { window.onBridgeReadyTime = window.onBridgeReadyTime || Date.now(); onBridgeReady(); } } catch (e) { __moon_report([{ offset: MOON_JSAPI_KEY_OFFSET, log: 'ready', e: e }]); throw e; } window.jsapiReadyTime = Date.now(); }; if (!isAcrossOrigin && (typeof top.window.WeixinJSBridge === 'undefined' || !top.window.WeixinJSBridge.invoke)) { if (doc.addEventListener) { doc.addEventListener('WeixinJSBridgeReady', bridgeReady, false); } else if (doc.attachEvent) { doc.attachEvent('WeixinJSBridgeReady', bridgeReady); doc.attachEvent('onWeixinJSBridgeReady', bridgeReady); } } else { bridgeReady(); } } var invokeNotWaitA8key = ['notifyPageInfo', 'updatePageAuth' ]; var checkNotFoundedInvoke = function checkNotFoundedInvoke(methodName, args) { if (methodName === 'handleMPPageAction' && (args === null || args === void 0 ? void 0 : args.action) && notFoundedMPPageAction.includes(args === null || args === void 0 ? void 0 : args.action)) { return true; } return false; }; function invoke(_x, _x2, _x3) { return _invoke.apply(this, arguments); } function _invoke() { _invoke = _asyncToGenerator( _regeneratorRuntime().mark(function _callee(methodName, args, callback) { return _regeneratorRuntime().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: if (!(window.__secPageAuthPromise && !window.__is_page_auth_ok__ && !invokeNotWaitA8key.includes(methodName))) { _context.next = 3; break; } _context.next = 3; return window.__secPageAuthPromise; case 3: ready(function () { if (isAcrossOrigin) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object') { alert('请在微信中打开此链接'); return false; } if (checkNotFoundedInvoke(methodName, args)) { setTimeout(function () { if (callback) { callback.apply(window, [{ err_msg: "".concat(methodName, ":fail"), err_desc: 'action isn\'t supported' }]); } }, 0); } else { top.window.WeixinJSBridge.invoke(methodName, args, function () { try { for (var _len2 = arguments.length, rets = new Array(_len2), _key2 = 0; _key2 ".concat(ret.err_msg) : ''; if (['handleMPPageAction', 'handleVideoAction', 'handleHaokanAction'].indexOf(methodName) !== -1) { var action = (args === null || args === void 0 ? void 0 : args.action) || ''; console.info('[system]', "[jsapi] invoke->".concat(methodName, ", action->").concat(action).concat(errMsg)); } else { console.info('[system]', "[jsapi] invoke->".concat(methodName).concat(errMsg)); } if (methodName === 'handleMPPageAction' && (args === null || args === void 0 ? void 0 : args.action) && ((ret === null || ret === void 0 ? void 0 : ret.err_desc) === 'action isn\'t supported' || (ret === null || ret === void 0 ? void 0 : ret.err_msg) === 'handleMPPageAction:fail action is not supported')) { notFoundedMPPageAction.push(args === null || args === void 0 ? void 0 : args.action); } if (callback) { callback.apply(window, rets); } } catch (e) { __moon_report([{ offset: MOON_JSAPI_KEY_OFFSET, log: "invoke;methodName:".concat(methodName), e: e }]); throw e; } }); } }); case 4: case "end": return _context.stop(); } }, _callee); })); return _invoke.apply(this, arguments); } function call(_x4) { return _call.apply(this, arguments); } function _call() { _call = _asyncToGenerator( _regeneratorRuntime().mark(function _callee2(methodName) { return _regeneratorRuntime().wrap(function _callee2$(_context2) { while (1) switch (_context2.prev = _context2.next) { case 0: if (!(window.__secPageAuthPromise && !window.__is_page_auth_ok__)) { _context2.next = 3; break; } _context2.next = 3; return window.__secPageAuthPromise; case 3: ready(function () { if (isAcrossOrigin) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object') { return false; } try { top.window.WeixinJSBridge.call(methodName); } catch (e) { __moon_report([{ offset: MOON_JSAPI_KEY_OFFSET, log: "call;methodName:".concat(methodName), e: e }]); throw e; } }); case 4: case "end": return _context2.stop(); } }, _callee2); })); return _call.apply(this, arguments); } function on(eventName, callback) { ready(function () { if (isAcrossOrigin) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object' || !top.window.WeixinJSBridge.on) { return false; } if (!window.JSAPIEventCallbackMap[eventName]) { window.JSAPIEventCallbackMap[eventName] = []; } window.JSAPIEventCallbackMap[eventName].push(callback); if (window.JSAPIEventCallbackMap[eventName].length > 1) { return false; } top.window.WeixinJSBridge.on(eventName, function () { try { for (var _len = arguments.length, rets = new Array(_len), _key = 0; _key ".concat(ret.err_msg) : ''; console.info('[system]', "[jsapi] event->".concat(eventName).concat(errMsg)); if (window.JSAPIEventCallbackMap[eventName] && window.JSAPIEventCallbackMap[eventName].length) { var result; for (var i = 0; i = 0; i--) { if (window.JSAPIEventCallbackMap[eventName][i] === callback) { window.JSAPIEventCallbackMap[eventName].splice(i, 1); result = true; } } return result; }); } var JSAPI = { ready: ready, invoke: invoke, call: call, on: on, remove: remove }; var Device = {}; function detect(ua) { var MQQBrowser = ua.match(/MQQBrowser\/(\d+\.\d+)/i); var MQQClient = ua.match(/QQ\/(\d+\.(\d+)\.(\d+)\.(\d+))/i) || ua.match(/V1_AND_SQ_([\d\.]+)/); var WeChat = ua.match(/MicroMessenger\/((\d+)\.(\d+))\.(\d+)/) || ua.match(/MicroMessenger\/((\d+)\.(\d+))/); var MacOS = ua.match(/Mac\sOS\sX\s(\d+[\.|_]\d+)/); var WinOS = ua.match(/Windows(\s+\w+)?\s+?(\d+\.\d+)/); var Linux = ua.match(/Linux\s/); var MiuiBrowser = ua.match(/MiuiBrowser\/(\d+\.\d+)/i); var M1 = ua.match(/MI-ONE/); var MIPAD = ua.match(/MI PAD/); var UC = ua.match(/UCBrowser\/(\d+\.\d+(\.\d+\.\d+)?)/) || ua.match(/\sUC\s/); var IEMobile = ua.match(/IEMobile(\/|\s+)(\d+\.\d+)/) || ua.match(/WPDesktop/); var ipod = ua.match(/(ipod).*\s([\d_]+)/i); var ipad = ua.match(/(ipad).*\s([\d_]+)/i); var iphone = ua.match(/(iphone)\sos\s([\d_]+)/i); var Chrome = ua.match(/Chrome\/(\d+\.\d+)/); var AndriodBrowser = ua.match(/Mozilla.*Linux.*Android.*AppleWebKit.*Mobile Safari/); var android = ua.match(/(android)\s([\d\.]+)/i); var harmony = ua.match(/(OpenHarmony)\s([\d\.]+)/i); Device.browser = Device.browser || {}, Device.os = Device.os || {}; Device.os.type = -1; Device.os.unifiedPC = ua.match(/UnifiedPC/); Device.os.unifiedMac = /UnifiedPCMac/i.test(ua); Device.os.unifiedWindows = /UnifiedPCWindows/i.test(ua); if (window.ActiveXObject) { var vie = 6; (window.XMLHttpRequest || ua.indexOf('MSIE 7.0') > -1) && (vie = 7); (window.XDomainRequest || ua.indexOf('Trident/4.0') > -1) && (vie = 8); ua.indexOf('Trident/5.0') > -1 && (vie = 9); ua.indexOf('Trident/6.0') > -1 && (vie = 10); Device.browser.ie = true, Device.browser.version = vie; } else if (ua.indexOf('Trident/7.0') > -1) { Device.browser.ie = true, Device.browser.version = 11; } if (android) { Device.os.android = true; Device.os.version = android[2]; Device.os.type = 2; } if (harmony) { Device.os.harmony = true; Device.os.version = harmony[2]; Device.os.type = 42; } if (ipod) { Device.os.ios = Device.os.ipod = true; Device.os.version = ipod[2].replace(/_/g, '.'); } if (ipad) { Device.os.ios = Device.os.ipad = true; Device.os.version = ipad[2].replace(/_/g, '.'); Device.os.type = 13; } if (iphone) { Device.os.iphone = Device.os.ios = true; Device.os.version = iphone[2].replace(/_/g, '.'); Device.os.type = 1; } if (WinOS) Device.os.windows = true, Device.os.version = WinOS[2], Device.os.type = 15; if (MacOS) Device.os.Mac = true, Device.os.version = MacOS[1], Device.os.type = 14; if (Linux) Device.os.Linux = true, Device.os.type = 33; if (ua.indexOf('lepad_hls') > 0) Device.os.LePad = true; if (MIPAD) Device.os.MIPAD = true; if (MQQBrowser) Device.browser.MQQ = true, Device.browser.version = MQQBrowser[1]; if (MQQClient) Device.browser.MQQClient = true, Device.browser.version = MQQClient[1]; if (WeChat) Device.browser.WeChat = true, Device.browser.mmversion = Device.browser.version = WeChat[1]; if (MiuiBrowser) Device.browser.MIUI = true, Device.browser.version = MiuiBrowser[1]; if (UC) Device.browser.UC = true, Device.browser.version = UC[1] || NaN; if (IEMobile) Device.browser.IEMobile = true, Device.browser.version = IEMobile[2]; if (AndriodBrowser) { Device.browser.AndriodBrowser = true; } if (M1) { Device.browser.M1 = true; } if (Chrome) { Device.browser.Chrome = true, Device.browser.version = Chrome[1]; } if (Device.os.windows) { if (typeof navigator.platform !== "undefined" && navigator.platform.toLowerCase() == "win64") { Device.os.win64 = true; } else { Device.os.win64 = false; } } if (Device.os.Mac || Device.os.windows || Device.os.Linux || Device.os.unifiedPC || /OpenHarmony/i.test(ua) && /pc/i.test(ua)) { Device.os.pc = true; } var osType = { iPad7: 'iPad; CPU OS 7', LePad: 'lepad_hls', XiaoMi: 'MI-ONE', SonyDTV: "SonyDTV", SamSung: 'SAMSUNG', HTC: 'HTC', VIVO: 'vivo' }; for (var os in osType) { Device.os[os] = ua.indexOf(osType[os]) !== -1; } Device.os.phone = Device.os.phone || /windows phone/i.test(ua); Device.os.getNumVersion = function () { return parseFloat(Device.os.version); }; Device.os.hasTouch = 'ontouchstart' in window; if (Device.os.hasTouch && Device.os.ios && Device.os.getNumVersion() = 3.0; }; Device.browser.isCanOcx = function () { return !!Device.os.windows && (!!Device.browser.ie || Device.browser.isFFCanOcx() || !!Device.browser.webkit); }; Device.browser.isNotIESupport = function () { return !!Device.os.windows && (!!Device.browser.webkit || Device.browser.isFFCanOcx()); }; Device.userAgent = {}; Device.userAgent.browserVersion = Device.browser.version; Device.userAgent.osVersion = Device.os.version; if (Device.os.unifiedPC) { if (Device.os.unifiedWindows) Device.os.type = 37;else if (Device.os.unifiedMac) Device.os.type = 38;else Device.os.type = 39; } delete Device.userAgent.version; } detect(window.navigator.userAgent); function canSupportH5Video() { var ua = window.navigator.userAgent, m = null; if (!!Device.os.android) { if (Device.browser.MQQ && Device.browser.getNumVersion() >= 4.2) { return true; } if (ua.indexOf('MI2') != -1) { return true; } if (Device.os.version >= '4' && (m = ua.match(/MicroMessenger\/((\d+)\.(\d+))\.(\d+)/))) { if (parseFloat(m[1]) >= 4.2) { return true; } } if (Device.os.version >= '4.1') { return true; } } return false; } function canSupportVideoMp4() { var video = document.createElement('video'); if (typeof video.canPlayType === 'function') { if (video.canPlayType('video/mp4; codecs="mp4v.20.8"') === 'probably') { return true; } if (video.canPlayType('video/mp4; codecs="avc1.42E01E"') === 'probably' || video.canPlayType('video/mp4; codecs="avc1.42E01E, mp4a.40.2"') === 'probably') { return true; } } return false; } function canSupportAutoPlay() { if (Device.os.ios && Device.os.getNumVersion() 1 && arguments[1] !== undefined ? arguments[1] : 0; var canEqual = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var nowVersionStr = Device.os.version; if (!nowVersionStr) return false; var versionArr = version.split('.'); var nowVersionArr = nowVersionStr.split('.'); for (var i = 0; i 0) return vi > nvi; if (cp -1) { bizMap[bizType] = res.biz; resolve(res.biz); getBizLS.set("".concat(bizType, "_get_biz_result"), res.biz, +new Date() + 3 * 24 * 60 * 60 * 1000); } else { reject('Failed to get biz'); } }); } } else { resolve(bizMap[bizType]); } }); } function LsGetBiz(bizType) { var _a, _b, _c; if (bizType === void 0) { bizType = ((_a = window.cgiDataNew) === null || _a === void 0 ? void 0 : _a.biz_type) || 1; } return (_c = (_b = bizMap[bizType]) !== null && _b !== void 0 ? _b : getBizLS.get("".concat(bizType, "_get_biz_result"))) !== null && _c !== void 0 ? _c : ''; } var getIsAuthorLs = function getIsAuthorLs(bizuin, bizType) { var _a; if (bizuin === void 0) { bizuin = window.biz; } if (bizType === void 0) { bizType = ((_a = window.cgiDataNew) === null || _a === void 0 ? void 0 : _a.biz_type) || 1; } return bizuin && bizuin === LsGetBiz(bizType); }; var getIsAuthor = function getIsAuthor(cb, bizuin, needCheckBiz, bizType) { var _a; if (bizuin === void 0) { bizuin = window.biz; } if (needCheckBiz === void 0) { needCheckBiz = false; } if (bizType === void 0) { bizType = ((_a = window.cgiDataNew) === null || _a === void 0 ? void 0 : _a.biz_type) || 1; } getBiz(needCheckBiz, bizType).then(function (biz) { cb(biz && biz === bizuin); })["catch"](function () { cb(false); }); }; function parseUrl(url) { var len = url.length; var ques_pos = url.indexOf('?'); var hash_pos = url.indexOf('#'); hash_pos = hash_pos == -1 ? len : hash_pos; ques_pos = ques_pos == -1 ? hash_pos : ques_pos; var host = url.substring(0, ques_pos); var query_str = url.substring(ques_pos + 1, hash_pos); var hash = url.substring(hash_pos + 1); return { host: host, query_str: query_str, hash: hash }; } function join(url, args, noEncode) { var ret = parseUrl(url); var query_str = ret.query_str; var args_arr = []; if (_typeof(args) === 'object') { for (var key in args) { if (args.hasOwnProperty(key)) { args_arr.push("".concat(key, "=").concat(noEncode ? args[key] : encodeURIComponent(args[key]))); } } } else { args_arr.push(noEncode ? args : encodeURIComponent(args)); } if (args_arr.length > 0) { query_str += (query_str !== "" ? "&" : "") + args_arr.join("&"); } return ret.host + (query_str !== "" ? "?".concat(query_str) : "") + (ret.hash !== "" ? "#".concat(ret.hash) : ""); } function addParam(url, param, value, forceReplace) { url = url || location.href; var firstAndPos = url.indexOf("&"); var len = url.length; var reverseUrl = url.replace(/^[\w\d]+:[/\\]+/g, "").split("").reverse(); if (!Array.prototype.indexOf) { Array.prototype.indexOf = function (searchElement, fromIndex) { var k; if (this == null) { throw new TypeError('"this" is null or not defined'); } var O = Object(this); var len = O.length >>> 0; if (len === 0) { return -1; } var n = fromIndex || 0; if (Math.abs(n) === Infinity) { n = 0; } if (n >= len) { return -1; } k = Math.max(n >= 0 ? n : len - Math.abs(n), 0); while (k lastSlashPos) { url = url.replace("&", "?"); } var reg = new RegExp("([\\?&]".concat(param, "=)[^&#]*")); if (!url.match(reg)) { var urlInfo = parseUrl(url); var hash = urlInfo.hash ? '#' + urlInfo.hash : ''; url = url.replace(hash, ''); var _pos = url.indexOf("?"); if (_pos == -1) { return "".concat(url, "?").concat(param, "=").concat(value).concat(hash); } if (_pos == url.length - 1) { return "".concat(url + param, "=").concat(value).concat(hash); } return "".concat(url, "&").concat(param, "=").concat(value).concat(hash); } if (forceReplace === true) { return url.replace(reg, "$1".concat(value)); } return url; } function addWxfrom(src, wxfrom) { var offset = window.service_type === 1 ? 10000 : 0; return addParam(src, 'wxfrom', offset + Number(wxfrom), true); } function removeParam(url, param) { var _URL = new URL(url), protocol = _URL.protocol, host = _URL.host, pathname = _URL.pathname, search = _URL.search, hash = _URL.hash; var queryParams = new URLSearchParams(search); queryParams["delete"](param); var newSearch = queryParams.toString(); var newUrl = new URL("".concat(protocol, "//").concat(host).concat(pathname).concat(newSearch ? "?".concat(decodeURIComponent(newSearch)) : "").concat(hash)); return newUrl.toString(); } function getQuery(name, url) { var u = url || window.location.search; var reg = new RegExp("(^|&)".concat(name, "=([^&]*)(&|$)")); var r = u.substring(u.indexOf('?') + 1).match(reg); return r !== null ? r[2] : ''; } function encodeBase64(value) { try { return window.btoa(value); } catch (e) { return ''; } } function decodeBase64(value) { try { return window.atob(value); } catch (e) { return ''; } } function joinUrl(url) { var obj = {}; if (typeof window.uin !== 'undefined') { obj.uin = window.uin; } if (typeof window.key !== 'undefined') { obj.key = window.key; } if (typeof window.pass_ticket !== 'undefined') { obj.pass_ticket = window.pass_ticket; } if (typeof window.wxtoken !== 'undefined') { obj.wxtoken = window.wxtoken; } if (typeof window.devicetype !== 'undefined') { obj.devicetype = window.devicetype; } if (typeof window.clientversion !== 'undefined') { obj.clientversion = window.clientversion || mmversion.getInner(); } obj.version = obj.clientversion; if (window.biz) { obj.__biz = window.biz; } if (getQuery('enterid')) { obj.enterid = getQuery('enterid'); } if (typeof window.appmsg_token !== 'undefined') { obj.appmsg_token = window.appmsg_token; } else if (url.indexOf('advertisement_report') > -1) { new Image().src = "".concat(location.protocol, "//mp.weixin.qq.com/mp/jsmonitor?idkey=68064_13_1&r=").concat(Math.random()); } obj.x5 = navigator.userAgent.indexOf('TBS/') !== -1 ? '1' : '0'; obj.f = 'json'; return join(url, obj); } function joinUserArticleRole(url, notJoin, cb) { var bizuin = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : window.biz; var needCheckBiz = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false; if (notJoin) { cb(url); } else { getIsAuthor(function (isAuthor) { cb(addParam(url, 'user_article_role', isAuthor ? 1 : 0, true)); }, bizuin, needCheckBiz); } } function getA8keyQuery(name, url) { return new Promise(function (resolve) { if (window.__secPageAuthPromise) { window.__secPageAuthPromise.then(function () { resolve(getQuery(name, url)); }); } else { resolve(getQuery(name, url)); } }); } function addHash(url, hash) { var isReplace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; if (isReplace) { return "".concat(url.split('#')[0]).concat(hash); } return "".concat(url).concat(url.indexOf('#') === -1 ? '#' : '').concat(hash); } function decodeUrl(url) { var _url = url; while (_url.indexOf('&') !== -1) { _url = _url.htmlDecode(); } return _url; } var Url = { parseUrl: parseUrl, join: join, addParam: addParam, addWxfrom: addWxfrom, addHash: addHash, getQuery: getQuery, getA8keyQuery: getA8keyQuery, encodeBase64: encodeBase64, decodeBase64: decodeBase64, joinUrl: joinUrl, joinUserArticleRole: joinUserArticleRole, removeParam: removeParam, decodeUrl: decodeUrl }; var isIPadOS13 = Device.os.ipad && Device.os.getNumVersion() >= 13 && Device.os.getNumVersion() 0 && isFinite(scale)) { window.__dprScale__ = 1 / scale; return window.__dprScale__; } } catch (e) { } window.__dprScale__ = 1; return window.__dprScale__; } function getNativeFontScale() { return getNativeFontScaleVar() * getScaleByDPR(); } function getScaleByDom() { if (typeof document === 'undefined' || !document.body) { return 1; } var fontDom = document.createElement('div'); fontDom.style.fontSize = '16px'; document.body.appendChild(fontDom); var originFontSize = parseFloat(fontDom.style.fontSize); var realFontSize = parseFloat(window.getComputedStyle(fontDom, null).getPropertyValue('font-size')); document.body.removeChild(fontDom); var percent = realFontSize / originFontSize; if (!percent || percent 1000) { continue; } setPair[0].style.fontSize = "".concat(calculatedSize, "px"); setPair[0].style.lineHeight = "".concat(setPair[2]); } } function limitFontSizePercent(el, maxPercent) { var nowFontScale = getScaleFromParent(el); var setPercent = Math.min(maxPercent, getNativeFontScale()); if (isIPadOS13) { setFontSize(el, setPercent, nowFontScale); } else if (mmversion.isAndroid || mmversion.isHarmony) { setFontSize(el, setPercent, nowFontScale); } else if (mmversion.isIOS) { el.style.setProperty('-webkit-text-size-adjust', "".concat(Math.min(maxPercent, nowFontScale) * 100, "%")); } } function fixedFontSizePercent(el) { var nowFontScale = getScaleFromParent(el); var setPercent = 1; if (isIPadOS13) { setFontSize(el, setPercent, nowFontScale); } else if (mmversion.isAndroid) { setFontSize(el, setPercent, nowFontScale); } else if (mmversion.isIOS) { el.style.setProperty('-webkit-text-size-adjust', '100%'); } } var key = 'stream_last_read_pos'; new LS(key); var interactionStatusLS = new LS('bottom_interaction_status'); function getInteractionStatus() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var biz = opt.biz || window.biz; var sn = opt.sn || window.sn; var mid = opt.mid || window.mid; var idx = opt.idx || window.idx; var interactionStatusKey = [biz, sn, mid, idx].join('_'); var interactionStatusInfo = interactionStatusLS.get(interactionStatusKey) || {}; if (Object.prototype.toString.call(interactionStatusInfo) !== '[object Object]' || window.cgiData && window.cgiData.trans_appmsg_info && window.cgiData.trans_appmsg_info.trans_type === 1 ) { interactionStatusInfo = {}; } var interactionSubscribeInfo = interactionStatusLS.get(biz + 'interaction_subscribe') || {}; interactionStatusInfo.is_subscribed = interactionSubscribeInfo.is_subscribed || false; return interactionStatusInfo; } function textOverflow(el, binding) { var _a, _b; if (!el || getComputedStyle(el).display === 'none') return; var text = el.innerHTML; if (!text || !text.length) return; var retainTail = []; if ((_a = binding.value) === null || _a === void 0 ? void 0 : _a.tailNum) { retainTail = Array.from(el.childNodes).slice(-binding.value.tailNum); } var count = 0; function needTextOverflow() { var _a; if ((_a = binding.value) === null || _a === void 0 ? void 0 : _a.lineClamp) { return binding.value.lineClamp > 1; count++; range.setEndAfter(leaves[mid]); setNewFrag(el, getFragmentHTML(range.cloneContents())); return needTextOverflow() ? findLastNode(start, mid) : findLastNode(mid, end); }; var findLastCharIndex = function findLastCharIndex(start, end) { if (end - start > 1; count++; range.setEnd(lastNode, mid); setNewFrag(el, getFragmentHTML(range.cloneContents())); return needTextOverflow() ? findLastCharIndex(start, mid) : findLastCharIndex(mid, end); }; var dom = document.createElement('div'); dom.innerHTML = text; var leaves = getLeaf(dom); var range = document.createRange(); range.setStartBefore(leaves[0]); var lastNodeIndex = findLastNode(0, leaves.length - 1); var lastNode = leaves[lastNodeIndex]; findLastCharIndex(0, lastNode.textContent.length); ((_b = binding.value) === null || _b === void 0 ? void 0 : _b.processExtraElement) && binding.value.processExtraElement(el.extraElement, el); } catch (error) { console.error(error); } } } function computeLineNum(el) { var computyStyle = getComputedStyle(el); return Math.round(el.offsetHeight / parseFloat(computyStyle.lineHeight)); } function removeAllChild(el) { var childNodes = Array.from(el.childNodes); childNodes.forEach(function (child) { el.removeChild(child); }); } function setNewFrag(el, frag) { removeAllChild(el); el.appendChild(frag); } var __setBarData = function __setBarData(appmsgBarData, cgiData, allData) { if (Url.getQuery('uninteractive') * 1 === 1) return; var barWarp = document.querySelector('#js_article_bottom_bar'); var barMask = document.querySelector('#js_temp_bar_mask'); var isImageType = (cgiData === null || cgiData === void 0 ? void 0 : cgiData.item_show_type) * 1 === 8; try { if (isImageType) { var imgPagePosLS = new LS('page_pos_image', 'clear-all'); var imgPagePosKey = [cgiData.biz, cgiData.sn, cgiData.mid, cgiData.idx].join('_'); var _ref = imgPagePosLS.get(imgPagePosKey) || {}, barPostion = _ref.barPostion, barIsRelativeStyle = _ref.barIsRelativeStyle; if (document.body.classList.contains('pages_skin_pc') || barPostion === 2 && barIsRelativeStyle) { window._has_not_render_bar_placeholder_ = true; return; } } } catch (err) { console.error(err); } var bottombar = document.getElementById('js_wx_follow_nickname_large_font'); var fontScale = +Url.getQuery('fontScale'); if (!fontScale) { try { var envData = JSON.parse(window.__wxWebEnv && window.__wxWebEnv.getEnv()); if (envData.fontScale) fontScale = +envData.fontScale; } catch (e) {} } if (!appmsgBarData) { return; } function formatReadNum(value) { var unit = '万'; if (window.LANG === 'en') { unit = 'k'; } var result = ''; if (parseInt(value, 10) > 100000) { result = 10 + unit + '+'; } else if (parseInt(value, 10) > 10000 && parseInt(value, 10) = offsetWidth; } catch (e) { console.error('=======compute comment width error ', e); } var interactionStatus = cgiData.isFinderMsg ? {} : getInteractionStatus({ biz: cgiData.biz, mid: cgiData.mid, sn: cgiData.sn, idx: cgiData.idx }); var isAuthorWx = getIsAuthorLs(cgiData.biz, allData.biz_type); if (interactionStatus.is_my_old_like && !isAuthorWx) { oldLikeEl && oldLikeEl.classList.add('praised'); } if (interactionStatus.is_my_like && !isAuthorWx) { likeEl && (appmsgBarData.show_friend_seen === 2 ? likeEl.classList.add('love_btn_loved') : likeEl.classList.add('like_btn_liked')); } var old_like_count = interactionStatus.old_like_count * 1 ? Math.max(interactionStatus.old_like_count * 1, appmsgBarData.old_like_count) : appmsgBarData.old_like_count || 0; var share_count = interactionStatus.share_count * 1 ? Math.max(interactionStatus.share_count * 1, appmsgBarData.share_count) : appmsgBarData.share_count || 0; var like_count = interactionStatus.like_count * 1 ? Math.max(interactionStatus.like_count * 1, appmsgBarData.like_count) : appmsgBarData.like_count || 0; var comment_count = interactionStatus.comment_count * 1 ? Math.max(interactionStatus.comment_count * 1, appmsgBarData.comment_count) : appmsgBarData.comment_count || 0; var comment_enabled = (typeof interactionStatus.comment_enabled === 'number' ? interactionStatus.comment_enabled : appmsgBarData.comment_enabled || 0) * 1; var collect_count = appmsgBarData.collect_count || 0; var read_num = appmsgBarData.read_num || 0; if (barOldlikeBtn) { var defaultWd = isAuthorWx ? '0' : '赞'; barOldlikeBtn.innerText = old_like_count ? formatReadNum(old_like_count) : defaultWd; } if (barShareBtn) { var _defaultWd = isAuthorWx ? '0' : '分享'; barShareBtn.innerText = share_count ? formatReadNum(share_count) : _defaultWd; } if (barLikeBtn) { var _defaultWd2 = isAuthorWx ? '0' : allData && allData.red_flower_like_info && allData.red_flower_like_info.is_red_flower_like * 1 === 1 ? '助力' : '推荐'; barLikeBtn.innerText = like_count ? formatReadNum(like_count) : _defaultWd2; } if (barCommentBtn) { var _defaultWd3 = isAuthorWx ? '0' : isChanegeCommentBtnContext ? '留言' : '写留言'; barCommentBtn.innerText = comment_count ? formatReadNum(comment_count) : _defaultWd3; } if (barCollectBtn) { var _defaultWd4 = isAuthorWx ? '0' : '收藏'; barCollectBtn.innerText = collect_count ? formatReadNum(collect_count) : _defaultWd4; } if (read_num && barReadNum) { if (allData && allData.private_info.private_type === 1) { barReadNum.innerText = '仅自己可见'; } else { barReadNum.innerText = '阅读 ' + formatReadNum(read_num); } } if (mmversion.isInMiniProgram) { if (barShareBtn) { barShareBtn.style.display = 'none'; } if (barLikeBtn) { barLikeBtn.style.display = 'none'; } } var tempbarPraiseBtn = document.getElementById('js_temp_sns_sc_praise_btn'); var tempbarShareBtn = document.getElementById('js_temp_sns_sc_share_btn'); var tempbarCollectBtn = document.getElementById('js_temp_sns_sc_collect_btn'); var tempbarLikeBtn = document.getElementById('js_temp_sns_sc_like_btn'); var tempbarCommentBtn = document.getElementById('js_temp_sns_sc_comment_btn'); var tempbarCommentBtnCon = document.getElementById('js_temp_sns_sc_comment_btn_con'); var tempbarFriendSubscribe = document.getElementById('js_bar_friend_subscribe'); var tempbarSubscribeBtn = document.getElementById('js_temp_bar_subscribe_btn'); var tempbarFriendsList = document.getElementById('js_stream_friends_all'); var tempLoadingInnerHtml = '*'; var handleTempClick = function handleTempClick(_ref2) { var type = _ref2.type, val = _ref2.val, sucCb = _ref2.sucCb, failCb = _ref2.failCb; if (typeof window.__click_temp_btm_bar_cb__ === 'function') { window.__click_temp_btm_bar_cb__({ type: type, val: val, sucCb: sucCb, failCb: failCb }); } else { if (!window.__wait_click_temp_btm_bar_cb__) window.__wait_click_temp_btm_bar_cb__ = []; window.__wait_click_temp_btm_bar_cb__.push(function () { window.__click_temp_btm_bar_cb__({ type: type, val: val, sucCb: sucCb, failCb: failCb }); }); } }; if (isAuthorWx) { tempbarPraiseBtn && tempbarPraiseBtn.classList.add('author_praise_btn'); tempbarLikeBtn && tempbarLikeBtn.classList.add('author_love_btn'); tempbarFriendSubscribe && (tempbarFriendSubscribe.style.display = 'none'); tempbarSubscribeBtn && (tempbarSubscribeBtn.style.display = 'none'); tempbarFriendsList && (tempbarFriendsList.style.display = 'none'); } if (interactionStatus && interactionStatus.is_subscribed) { tempbarFriendSubscribe && (tempbarFriendSubscribe.style.display = 'none'); tempbarSubscribeBtn && (tempbarSubscribeBtn.style.display = 'none'); } tempbarPraiseBtn && barOldlikeBtn && oldLikeEl && tempbarPraiseBtn.addEventListener('click', function () { if (isAuthorWx) { if (tempbarPraiseBtn.getAttribute('has_click') * 1 === 1) return; tempbarPraiseBtn.setAttribute('has_click', 1); var tempInnerHTML = tempbarPraiseBtn.innerHTML; tempbarPraiseBtn.innerHTML = tempLoadingInnerHtml; handleTempClick({ type: 'author_praise', sucCb: function sucCb() { tempbarPraiseBtn.removeAttribute('has_click'); tempbarPraiseBtn.innerHTML = tempInnerHTML; } }); return; } var newPraiseStatus = !oldLikeEl.classList.contains('praised'); var readNum = 0; if (newPraiseStatus) { oldLikeEl.classList.add('praised'); readNum = formatReadNum(interactionStatus.is_my_old_like ? old_like_count : old_like_count + 1); } else { oldLikeEl.classList.remove('praised'); readNum = formatReadNum(interactionStatus.is_my_old_like ? Math.max(0, old_like_count - 1) : old_like_count); } barOldlikeBtn.innerText = readNum ? readNum : '赞'; handleTempClick({ type: 'praise', val: newPraiseStatus }); }); tempbarLikeBtn && barLikeBtn && likeEl && tempbarLikeBtn.addEventListener('click', function () { if (isAuthorWx) { if (tempbarLikeBtn.getAttribute('has_click') * 1 === 1) return; tempbarLikeBtn.setAttribute('has_click', 1); var tempInnerHTML = tempbarLikeBtn.innerHTML; tempbarLikeBtn.innerHTML = tempLoadingInnerHtml; handleTempClick({ type: 'author_recommend', sucCb: function sucCb() { tempbarLikeBtn.removeAttribute('has_click'); tempbarLikeBtn.innerHTML = tempInnerHTML; } }); return; } var newRecommendStatus = appmsgBarData.show_friend_seen === 2 ? !likeEl.classList.contains('love_btn_loved') : !likeEl.classList.contains('like_btn_liked'); var recommendNum = 0; if (newRecommendStatus) { appmsgBarData.show_friend_seen === 2 ? likeEl.classList.add('love_btn_loved') : likeEl.classList.add('like_btn_liked'); recommendNum = formatReadNum(interactionStatus.is_my_like ? like_count : like_count + 1); } else { appmsgBarData.show_friend_seen === 2 ? likeEl.classList.remove('love_btn_loved') : likeEl.classList.remove('like_btn_liked'); recommendNum = formatReadNum(interactionStatus.is_my_like ? Math.max(0, like_count - 1) : like_count); } if (recommendNum) { barLikeBtn.innerText = recommendNum; } else { barLikeBtn.innerText = appmsgBarData.show_friend_seen === 2 ? '推荐' : '在看'; } handleTempClick({ type: 'recommend', val: newRecommendStatus }); }); tempbarShareBtn && barShareBtn && tempbarShareBtn.addEventListener('click', function () { if (tempbarShareBtn.getAttribute('has_click') * 1 === 1) return; tempbarShareBtn.setAttribute('has_click', 1); var tempInnerHTML = tempbarShareBtn.innerHTML; tempbarShareBtn.innerHTML = tempLoadingInnerHtml; handleTempClick({ type: 'share', sucCb: function sucCb() { tempbarShareBtn.removeAttribute('has_click'); tempbarShareBtn.innerHTML = tempInnerHTML; } }); }); tempbarCommentBtn && barCommentBtn && tempbarCommentBtn.addEventListener('click', function () { if (barCommentBtn.getAttribute('has_click') * 1 === 1) return; barCommentBtn.setAttribute('has_click', 1); var tempInnerHTML = barCommentBtn.innerHTML; barCommentBtn.innerHTML = tempLoadingInnerHtml; handleTempClick({ type: 'comment', sucCb: function sucCb() { barCommentBtn.removeAttribute('has_click'); barCommentBtn.innerHTML = tempInnerHTML; } }); }); tempbarCollectBtn && barCollectBtn && tempbarCollectBtn.addEventListener('click', function () { handleTempClick({ type: 'collect' }); }); barSubscribeBtn && barSubscribeBtn.addEventListener('click', function () { handleTempClick({ type: 'subscribe' }); }); tempBarToAnalysis && tempBarToAnalysis.addEventListener('click', function () { handleTempClick({ type: 'to_analysis' }); }); if (comment_enabled || isAuthorWx && comment_count > 0) { tempbarCommentBtnCon && (tempbarCommentBtnCon.style.display = ''); if (isAuthorWx && comment_enabled * 1 === 0) { tempbarCommentBtn.classList.add('sns_sc_lock_comment_btn'); } } } catch (error) { console.error(error); } try { try { var interactionBar = document.querySelectorAll('.interaction_bar_placeholder'); var buttons = document.querySelectorAll('.wx_follow_button_placeholder'); var fixedElements = _toConsumableArray(buttons); var maxSize = 1.24; var maxSizeElements = _toConsumableArray(interactionBar); for (var i = 0; i = 116) { var bigBar = document.querySelector('.js_big_font_size_bottom_bar'); var normalBar = document.querySelector('.js_normal_font_size_bottom_bar'); var normalBarFt = document.querySelector('.js_normal_font_size_bottom_bar_ft'); if (normalBar) normalBar.style.display = 'none'; if (normalBarFt) normalBarFt.style.display = 'none'; if (bigBar) bigBar.style.display = 'block'; var bigTopBar = document.querySelector('.js_big_font_size_top_bar'); var normalTopBar = document.querySelector('.js_normal_font_size_top_bar'); var normalTopBarFt = document.querySelector('.js_normal_font_size_top_bar_ft'); if (normalTopBar) normalTopBar.style.display = 'none'; if (normalTopBarFt) normalTopBarFt.style.display = 'none'; if (bigTopBar) bigTopBar.style.display = 'block'; var js_bar_profile = document.getElementById('js_bar_profile'); js_bar_profile && js_bar_profile.classList.add('large_font_like_profile_bar'); var topbar = document.getElementById('js_wx_follow_nickname_large_font_top'); var topNickNameSpans = document.querySelectorAll('.js_big_font_size_top_bar .nickNameSpan'); var bottomFollowFt = document.querySelectorAll('.js_big_font_size_bottom_bar .wx_follow_ft'); var topFollowFt = document.querySelectorAll('.js_big_font_size_top_bar .wx_follow_ft'); [].concat(_toConsumableArray(topNickNameSpans), _toConsumableArray(bottomFollowFt), _toConsumableArray(topFollowFt)).forEach(function (element) { fixedFontSizePercent(element); }); if (bottombar) { textOverflow(bottombar, { value: { lineClamp: 2, tailNum: 3 } }); } if (topbar) { textOverflow(topbar, { value: { lineClamp: 1, tailNum: 2 } }); } } else { var _bigBar = document.querySelector('.js_big_font_size_bottom_bar'); var _normalBar = document.querySelector('.js_normal_font_size_bottom_bar'); var _normalBarFt = document.querySelector('.js_normal_font_size_bottom_bar_ft'); if (_bigBar) _bigBar.style.display = 'none'; if (_normalBar) _normalBar.style.display = 'block'; if (_normalBarFt) _normalBarFt.style.display = 'block'; var _bigTopBar = document.querySelector('.js_big_font_size_top_bar'); var _normalTopBar = document.querySelector('.js_normal_font_size_top_bar'); var _normalTopBarFt = document.querySelector('.js_normal_font_size_top_bar_ft'); if (_bigTopBar) _bigTopBar.style.display = 'none'; if (_normalTopBar) _normalTopBar.style.display = 'block'; if (_normalTopBarFt) _normalTopBarFt.style.display = 'block'; var normalNickname = document.getElementById('js_wx_follow_nickname_small_font'); if (normalNickname) { var applyTextOverflow = function applyTextOverflow() { textOverflow(normalNickname, { value: { lineClamp: 1, tailNum: 2 } }); }; if (Device.os.pc) { setTimeout(applyTextOverflow, 0); } else { applyTextOverflow(); } } } } catch (error) { console.error('set like_profile style error', error); } barWarp && barWarp.classList.remove('hide'); barMask && barMask.classList.remove('hide'); }; if (!window.__second_open__) { var tmpAppmsgBarData = { show_like: '' * 1, like_count: '' * 1, show_share: '' * 1, share_count: '' * 1, show_old_like: '' * 1, old_like_count: '' * 1, comment_enabled: '' * 1, comment_count: '' * 1, show_collect: '' * 1, collect_count: '' * 1, show_friend_seen: '' * 1, is_subscribed: '' * 1, verify_status: '' * 1, original_content_num: '$user_info.appmsg_bar_data.original_content_num.DATA$' * 1, friend_subscribe_count: '' * 1, read_num: '' * 1 }; var cgiData = { idx: '' , biz: '' , mid: '' , sn: '' , subcount_version: '', isFinderMsg: '' * 1, export_id: '', source: '' * 1, item_show_type: '0' * 1, ori_create_time: '1779145260' * 1 }; __setBarData(tmpAppmsgBarData, cgiData, cgiDataNew); window.__setBarData = __setBarData; } return __setBarData; })();var __INLINE_SCRIPT__ = (function () { 'use strict'; function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _defineProperties(target, props) { for (var i = 0; i d2.exp) return 1; return 0; }); var memCnt = 0; for (var i = 0; i = size) break; var key = keys[i]; memCnt += JSON.stringify(data[key]).length; delete data[key]; } return data; }, 'clear-all': function clearAll() { localStorage.clear(); return {}; } }; function formatLogMsg(str) { return "[WXLS] ".concat(str); } var LS = function () { function LS(func, evictionPolicy, logger) { _classCallCheck(this, LS); this.logger = function () {}; if (!func) throw 'require function name.'; this.evictionPolicy = 'noeviction'; this.key = func; if (typeof logger === 'function') { this.logger = function (str, type) { return logger(formatLogMsg(str), type); }; } if (evictionPolicy && Object.keys(evictionPolicies).indexOf(evictionPolicy) !== -1) { this.evictionPolicy = evictionPolicy; } this.init(); } _createClass(LS, [{ key: "init", value: function init() { var _a, _b; this.check(); if (Math.random() * 1000 now) { temp[key] = val; } } this.logger("check info: isReturn:".concat(isReturn, " data:").concat(JSON.stringify(temp)), 'info'); if (isReturn) return temp; LS.setItem(this.key, JSON.stringify(temp), this.logger); } }, { key: "set", value: function set(key, val, exp) { var _a, _b; var data = this.check(true); data[key] = { val: val, exp: exp || +new Date() }; try { if (localStorage.getItem(prefix + this.key)) localStorage.removeItem(prefix + this.key); localStorage.setItem(prefix + this.key, JSON.stringify(data)); this.logger("first set success: LSlen:".concat((_a = window === null || window === void 0 ? void 0 : window.localStorage) === null || _a === void 0 ? void 0 : _a.length, " key:").concat(prefix + this.key, " data:").concat(JSON.stringify(data)), 'success'); } catch (e) { this.logger("first set error: LSlen:".concat((_b = window === null || window === void 0 ? void 0 : window.localStorage) === null || _b === void 0 ? void 0 : _b.length, " error:").concat(e, " key:").concat(prefix + this.key, " data:").concat(JSON.stringify(data), " k:").concat(key, " v:").concat(val, " exp:").concat(exp), 'error'); localStorage.clear(); LS.setItem(this.key, JSON.stringify(_defineProperty({}, key, { val: val, exp: exp || +new Date() })), this.logger); } } }, { key: "get", value: function get(key) { var data = this.getData(); data = data[key]; return data ? data.val || null : null; } }, { key: "remove", value: function remove(key) { var data = this.getData(); if (data[key]) delete data[key]; LS.setItem(this.key, JSON.stringify(data), this.logger); } }], [{ key: "getItem", value: function getItem(key) { key = prefix + key; return localStorage.getItem(key); } }, { key: "setItem", value: function setItem(key, val, logger) { var _a, _b; key = prefix + key; var n = 3; while (n--) { try { if (localStorage.getItem(key)) localStorage.removeItem(key); localStorage.setItem(key, val); typeof logger === 'function' && logger("setItem success: LSlen:".concat((_a = window === null || window === void 0 ? void 0 : window.localStorage) === null || _a === void 0 ? void 0 : _a.length, " key:").concat(key, " val:").concat(val), 'success'); break; } catch (e) { typeof logger === 'function' && logger("setItem error: LSlen:".concat((_b = window === null || window === void 0 ? void 0 : window.localStorage) === null || _b === void 0 ? void 0 : _b.length, " error:").concat(e, " key:").concat(key, " val:").concat(val), 'error'); LS.clear(); } } } }, { key: "clear", value: function clear() { var i; var k; for (i = localStorage.length - 1; i >= 0; i--) { k = localStorage.key(i); if (k.indexOf(prefix) == 0) { localStorage.removeItem(k); } } } }, { key: "getSupportEvicationPolicy", value: function getSupportEvicationPolicy() { return Object.keys(evictionPolicies); } }]); return LS; }(); var rewardLS = new LS('reward'); var rewardLSData = null; function getRewardLS() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; rewardLSData === null && (rewardLSData = rewardLS.get([opt.biz || window.biz, opt.mid || window.mid, opt.idx || window.idx].join('_'))); return rewardLSData; } var __setReward = function __setReward(cgiData, opt) { var data = getRewardLS(opt); if (data) { data.canReward !== undefined && (cgiData.can_reward = data.canReward); data.isNeedReward !== undefined && (cgiData.is_need_reward = data.isNeedReward); data.closeReward !== undefined && (cgiData.user_info.close_reward = data.closeReward); data.authorId !== undefined && (cgiData.author_id = data.authorId); data.rewardAuthorHead !== undefined && (cgiData.reward_author_head = data.rewardAuthorHead); data.author !== undefined && (cgiData.author = data.author); data.rewardWording !== undefined && (cgiData.reward_wording = data.rewardWording); } }; if (!window.__second_open__) { var data = getRewardLS(); if (data) { if (window.cgiData) { data.canReward !== undefined && (window.cgiData.can_reward = data.canReward); data.isNeedReward !== undefined && (window.cgiData.is_need_reward = data.isNeedReward); data.authorId !== undefined && (window.cgiData.author_id = data.authorId); data.rewardAuthorHead !== undefined && (window.cgiData.reward_author_head = data.rewardAuthorHead); data.author !== undefined && (window.cgiData.author = data.author); data.rewardWording !== undefined && (window.cgiData.reward_wording = data.rewardWording); } else { data.canReward !== undefined && (window.can_reward = data.canReward); data.isNeedReward !== undefined && (window.is_need_reward = data.isNeedReward); data.authorId !== undefined && (window.author_id = data.authorId); data.rewardAuthorHead !== undefined && (window.reward_author_head = data.rewardAuthorHead); data.author !== undefined && (window.author = data.author); data.rewardWording !== undefined && (window.reward_wording = data.rewardWording); } data.canReward !== undefined && (window.cgiDataNew.can_reward = data.canReward); data.closeReward !== undefined && (window.cgiDataNew.user_info.close_reward = data.closeReward); } } return __setReward; })();(function () { 'use strict'; function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i (function () { 'use strict'; if (typeof window.__emojiFormat === 'undefined' && window.weEmoji) { var emoji_url = '//res.wx.qq.com/mmbizappmsg/zh_CN/htmledition/js/images/pic/pic_blank7e1b77.gif'; var emoji_wx_icon = '*'; var dataMap = window.weEmoji.EmojiDataMap; try { var replaceRegex = new RegExp(Object.keys(dataMap).map(function (str) { return str.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); }).sort(function (a, b) { return b.length - a.length; }).join('|'), 'g'); window.__emojiFormat = function (text) { if (!replaceRegex.test(text)) { return text; } return text.replace(replaceRegex, function (match) { if (dataMap[match] && window.weEmoji.EmojiData[dataMap[match].index]) { var data = window.weEmoji.EmojiData[dataMap[match].index]; return emoji_wx_icon.replace('#name#', match).replace('#style#', data.style + ' we-emoji'); } return match; }); }; } catch (e) { window.__emojiFormat = function (text) { return text; }; } } else if (typeof window.__emojiFormat === 'undefined') { window.__emojiFormat = function (text) { return text; }; } })();var __INLINE_SCRIPT__ = (function () { 'use strict'; function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } } function _arrayLikeToArray$1(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i -1) && (vie = 7); (window.XDomainRequest || ua.indexOf('Trident/4.0') > -1) && (vie = 8); ua.indexOf('Trident/5.0') > -1 && (vie = 9); ua.indexOf('Trident/6.0') > -1 && (vie = 10); Device.browser.ie = true, Device.browser.version = vie; } else if (ua.indexOf('Trident/7.0') > -1) { Device.browser.ie = true, Device.browser.version = 11; } if (android) { Device.os.android = true; Device.os.version = android[2]; Device.os.type = 2; } if (harmony) { Device.os.harmony = true; Device.os.version = harmony[2]; Device.os.type = 42; } if (ipod) { Device.os.ios = Device.os.ipod = true; Device.os.version = ipod[2].replace(/_/g, '.'); } if (ipad) { Device.os.ios = Device.os.ipad = true; Device.os.version = ipad[2].replace(/_/g, '.'); Device.os.type = 13; } if (iphone) { Device.os.iphone = Device.os.ios = true; Device.os.version = iphone[2].replace(/_/g, '.'); Device.os.type = 1; } if (WinOS) Device.os.windows = true, Device.os.version = WinOS[2], Device.os.type = 15; if (MacOS) Device.os.Mac = true, Device.os.version = MacOS[1], Device.os.type = 14; if (Linux) Device.os.Linux = true, Device.os.type = 33; if (ua.indexOf('lepad_hls') > 0) Device.os.LePad = true; if (MIPAD) Device.os.MIPAD = true; if (MQQBrowser) Device.browser.MQQ = true, Device.browser.version = MQQBrowser[1]; if (MQQClient) Device.browser.MQQClient = true, Device.browser.version = MQQClient[1]; if (WeChat) Device.browser.WeChat = true, Device.browser.mmversion = Device.browser.version = WeChat[1]; if (MiuiBrowser) Device.browser.MIUI = true, Device.browser.version = MiuiBrowser[1]; if (UC) Device.browser.UC = true, Device.browser.version = UC[1] || NaN; if (IEMobile) Device.browser.IEMobile = true, Device.browser.version = IEMobile[2]; if (AndriodBrowser) { Device.browser.AndriodBrowser = true; } if (M1) { Device.browser.M1 = true; } if (Chrome) { Device.browser.Chrome = true, Device.browser.version = Chrome[1]; } if (Device.os.windows) { if (typeof navigator.platform !== "undefined" && navigator.platform.toLowerCase() == "win64") { Device.os.win64 = true; } else { Device.os.win64 = false; } } if (Device.os.Mac || Device.os.windows || Device.os.Linux || Device.os.unifiedPC || /OpenHarmony/i.test(ua) && /pc/i.test(ua)) { Device.os.pc = true; } var osType = { iPad7: 'iPad; CPU OS 7', LePad: 'lepad_hls', XiaoMi: 'MI-ONE', SonyDTV: "SonyDTV", SamSung: 'SAMSUNG', HTC: 'HTC', VIVO: 'vivo' }; for (var os in osType) { Device.os[os] = ua.indexOf(osType[os]) !== -1; } Device.os.phone = Device.os.phone || /windows phone/i.test(ua); Device.os.getNumVersion = function () { return parseFloat(Device.os.version); }; Device.os.hasTouch = 'ontouchstart' in window; if (Device.os.hasTouch && Device.os.ios && Device.os.getNumVersion() = 3.0; }; Device.browser.isCanOcx = function () { return !!Device.os.windows && (!!Device.browser.ie || Device.browser.isFFCanOcx() || !!Device.browser.webkit); }; Device.browser.isNotIESupport = function () { return !!Device.os.windows && (!!Device.browser.webkit || Device.browser.isFFCanOcx()); }; Device.userAgent = {}; Device.userAgent.browserVersion = Device.browser.version; Device.userAgent.osVersion = Device.os.version; if (Device.os.unifiedPC) { if (Device.os.unifiedWindows) Device.os.type = 37;else if (Device.os.unifiedMac) Device.os.type = 38;else Device.os.type = 39; } delete Device.userAgent.version; } detect(window.navigator.userAgent); function canSupportH5Video() { var ua = window.navigator.userAgent, m = null; if (!!Device.os.android) { if (Device.browser.MQQ && Device.browser.getNumVersion() >= 4.2) { return true; } if (ua.indexOf('MI2') != -1) { return true; } if (Device.os.version >= '4' && (m = ua.match(/MicroMessenger\/((\d+)\.(\d+))\.(\d+)/))) { if (parseFloat(m[1]) >= 4.2) { return true; } } if (Device.os.version >= '4.1') { return true; } } return false; } function canSupportVideoMp4() { var video = document.createElement('video'); if (typeof video.canPlayType === 'function') { if (video.canPlayType('video/mp4; codecs="mp4v.20.8"') === 'probably') { return true; } if (video.canPlayType('video/mp4; codecs="avc1.42E01E"') === 'probably' || video.canPlayType('video/mp4; codecs="avc1.42E01E, mp4a.40.2"') === 'probably') { return true; } } return false; } function canSupportAutoPlay() { if (Device.os.ios && Device.os.getNumVersion() 1 && arguments[1] !== undefined ? arguments[1] : 0; var canEqual = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var nowVersionStr = Device.os.version; if (!nowVersionStr) return false; var versionArr = version.split('.'); var nowVersionArr = nowVersionStr.split('.'); for (var i = 0; i 0) return vi > nvi; if (cp = o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i b; } }; function cpVersion(ver, op, canEq, type) { var mmver = false; switch (type) { case 'mac': mmver = getMac(); break; case 'windows': mmver = getWindowsVersionFormat(); break; case 'wxwork': mmver = getWxWork(); break; case 'mpapp': mmver = getMpApp(); break; case 'unifiedpc': mmver = getUnifiedPcVer(); break; default: mmver = get(); break; } if (!mmver) { return; } var mmversion = mmver.split('.'); var version = ver.split('.'); if (!/\d+/g.test(mmversion[mmversion.length - 1])) { mmversion.pop(); } for (var i = 0, len = Math.max(mmversion.length, version.length); i = 64 && parseInt(v) = hexNum; } return false; } var mmversion = { get: get, getMac: getMac, getMacOS: getMacOS, getWindows: getWindows, getInner: getInner, getWxWork: getWxWork, getMpApp: getMpApp, cpVersion: cpVersion, eqVersion: eqVersion, gtVersion: gtVersion, ltVersion: ltVersion, getPlatform: getPlatform, getVersionNumber: getVersionNumber, isWp: is_wp, isIOS: is_ios, isAndroid: is_android$1, isHarmony: is_harmony, isHarmonyWechat: is_harmony && is_wechat && cpVersion('1.0.0', 1, true), isInMiniProgram: is_in_miniProgram, isWechat: is_wechat, isMac: is_mac, isWindows: is_windows, isLinux: is_linux, isMacWechat: is_mac_wechat, isWindowsWechat: is_windows_wechat, isWxWork: is_wx_work, isOnlyWechat: is_wechat && !is_wx_work, isMpapp: is_mpapp, isNewMpApp: false, isIPad: is_ipad, isGooglePlay: is_google_play, isPrefetch: is_prefetch, isDonutAPP: is_donut_app, compareHexVersion: compareHexVersion, isPcWechat: is_windows_wechat || is_mac_wechat, xwebVersion: xweb_version, isUnifiedPcWechat: is_unified_pc_wechat }; var initJsBridge = false; if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; } function connectWebViewJavascriptBridge(callback) { if (window.WebViewMPapp || window.WebViewJavascriptBridge) { return callback(window.WebViewMPapp || window.WebViewJavascriptBridge); } if (window.WVJBCallbacks) { return window.WVJBCallbacks.push(callback); } window.WVJBCallbacks = [callback]; if (!mmversion.isMpapp) { return false; } if (!initJsBridge) { initJsBridge = true; var WVJBIframe = document.createElement('iframe'); WVJBIframe.style.display = 'none'; WVJBIframe.src = 'https://__bridge_loaded__'; document.body.appendChild(WVJBIframe); setTimeout(function () { initJsBridge = false; document.body.removeChild(WVJBIframe); }, 0); } return false; } function invoke$1(jsapiName, opt, callback) { connectWebViewJavascriptBridge(function (bridge) { try { if (typeof opt === 'function') { callback = opt; } if (_typeof(opt) !== 'object' && typeof opt !== 'string') { opt = {}; } bridge.callHandler(jsapiName, opt, function (res) { try { var ret = _typeof(res) === 'object' ? res : JSON.parse(res); var errMsg = ret.err_msg || ret.errMsg; console.info("[mpapp jsapi] invoke->".concat(jsapiName, " ").concat(opt.action || '', " ").concat(errMsg)); typeof callback === 'function' && callback(ret); } catch (e) { window.WX_BJ_REPORT.BadJs.report('invoke', "callback ".concat(jsapiName, " error:"), { mid: 'mmbizwebapp:js_brridge', _info: e }); console.error("[mpapp jsapi] ".concat(jsapiName, " ").concat(opt.action || ''), e, res); } }); } catch (e) { window.WX_BJ_REPORT.BadJs.report('invoke', 'callback error:', { mid: 'mmbizwebapp:js_brridge', _info: e }); console.error('[mpapp jsapi]', e); } }); } function _regeneratorRuntime$1() { _regeneratorRuntime$1 = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } var doc$1 = {}; var isAcrossOrigin$1 = false; var notFoundedMPPageAction = []; var __moon_report$1 = window.__moon_report || function () {}; var MOON_JSAPI_KEY_OFFSET = 8; try { doc$1 = top.window.document; } catch (e) { isAcrossOrigin$1 = true; } if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; } function ready(onBridgeReady) { var bridgeReady = function bridgeReady() { try { if (onBridgeReady) { window.onBridgeReadyTime = window.onBridgeReadyTime || Date.now(); onBridgeReady(); } } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: 'ready', e: e }]); throw e; } window.jsapiReadyTime = Date.now(); }; if (!isAcrossOrigin$1 && (typeof top.window.WeixinJSBridge === 'undefined' || !top.window.WeixinJSBridge.invoke)) { if (doc$1.addEventListener) { doc$1.addEventListener('WeixinJSBridgeReady', bridgeReady, false); } else if (doc$1.attachEvent) { doc$1.attachEvent('WeixinJSBridgeReady', bridgeReady); doc$1.attachEvent('onWeixinJSBridgeReady', bridgeReady); } } else { bridgeReady(); } } var invokeNotWaitA8key = ['notifyPageInfo', 'updatePageAuth' ]; var checkNotFoundedInvoke = function checkNotFoundedInvoke(methodName, args) { if (methodName === 'handleMPPageAction' && (args === null || args === void 0 ? void 0 : args.action) && notFoundedMPPageAction.includes(args === null || args === void 0 ? void 0 : args.action)) { return true; } return false; }; function invoke(_x, _x2, _x3) { return _invoke.apply(this, arguments); } function _invoke() { _invoke = _asyncToGenerator( _regeneratorRuntime$1().mark(function _callee(methodName, args, callback) { return _regeneratorRuntime$1().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: if (!(window.__secPageAuthPromise && !window.__is_page_auth_ok__ && !invokeNotWaitA8key.includes(methodName))) { _context.next = 3; break; } _context.next = 3; return window.__secPageAuthPromise; case 3: ready(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object') { alert('请在微信中打开此链接'); return false; } if (checkNotFoundedInvoke(methodName, args)) { setTimeout(function () { if (callback) { callback.apply(window, [{ err_msg: "".concat(methodName, ":fail"), err_desc: 'action isn\'t supported' }]); } }, 0); } else { top.window.WeixinJSBridge.invoke(methodName, args, function () { try { for (var _len2 = arguments.length, rets = new Array(_len2), _key2 = 0; _key2 ".concat(ret.err_msg) : ''; if (['handleMPPageAction', 'handleVideoAction', 'handleHaokanAction'].indexOf(methodName) !== -1) { var action = (args === null || args === void 0 ? void 0 : args.action) || ''; console.info('[system]', "[jsapi] invoke->".concat(methodName, ", action->").concat(action).concat(errMsg)); } else { console.info('[system]', "[jsapi] invoke->".concat(methodName).concat(errMsg)); } if (methodName === 'handleMPPageAction' && (args === null || args === void 0 ? void 0 : args.action) && ((ret === null || ret === void 0 ? void 0 : ret.err_desc) === 'action isn\'t supported' || (ret === null || ret === void 0 ? void 0 : ret.err_msg) === 'handleMPPageAction:fail action is not supported')) { notFoundedMPPageAction.push(args === null || args === void 0 ? void 0 : args.action); } if (callback) { callback.apply(window, rets); } } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: "invoke;methodName:".concat(methodName), e: e }]); throw e; } }); } }); case 4: case "end": return _context.stop(); } }, _callee); })); return _invoke.apply(this, arguments); } function call(_x4) { return _call.apply(this, arguments); } function _call() { _call = _asyncToGenerator( _regeneratorRuntime$1().mark(function _callee2(methodName) { return _regeneratorRuntime$1().wrap(function _callee2$(_context2) { while (1) switch (_context2.prev = _context2.next) { case 0: if (!(window.__secPageAuthPromise && !window.__is_page_auth_ok__)) { _context2.next = 3; break; } _context2.next = 3; return window.__secPageAuthPromise; case 3: ready(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object') { return false; } try { top.window.WeixinJSBridge.call(methodName); } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: "call;methodName:".concat(methodName), e: e }]); throw e; } }); case 4: case "end": return _context2.stop(); } }, _callee2); })); return _call.apply(this, arguments); } function on$1(eventName, callback) { ready(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object' || !top.window.WeixinJSBridge.on) { return false; } if (!window.JSAPIEventCallbackMap[eventName]) { window.JSAPIEventCallbackMap[eventName] = []; } window.JSAPIEventCallbackMap[eventName].push(callback); if (window.JSAPIEventCallbackMap[eventName].length > 1) { return false; } top.window.WeixinJSBridge.on(eventName, function () { try { for (var _len = arguments.length, rets = new Array(_len), _key = 0; _key ".concat(ret.err_msg) : ''; console.info('[system]', "[jsapi] event->".concat(eventName).concat(errMsg)); if (window.JSAPIEventCallbackMap[eventName] && window.JSAPIEventCallbackMap[eventName].length) { var result; for (var i = 0; i = 0; i--) { if (window.JSAPIEventCallbackMap[eventName][i] === callback) { window.JSAPIEventCallbackMap[eventName].splice(i, 1); result = true; } } return result; }); } var JSAPI = { ready: ready, invoke: invoke, call: call, on: on$1, remove: remove }; function _log(level, msg) { if (level === 'log') { level = 'info'; msg = "[WechatFe]".concat(msg); } else { var prefix = "__wap__".concat(window.__second_open__ ? ' (sec)' : ''); msg = "".concat(prefix, " ").concat(msg, " location:[").concat(location.href, "]"); } msg += new Error().stack; if (mmversion.isMpapp) { invoke$1('WNNativeCallbackLog', msg); } else if (mmversion.isWechat) { if (mmversion.isAndroid) { console.warn('[system]', "[MicroMsg.JsApiLog][".concat(level, "] jslog : ").concat(msg)); } else if (mmversion.isIOS) { JSAPI.invoke('writeLog', { level: level, msg: msg }); } else { JSAPI.invoke('log', { level: level, msg: msg }); } } } var Log = { info: function info() { for (var _len = arguments.length, args = new Array(_len), _key = 0; _key = 0) continue; target[key] = source[key]; } return target; } function formatDataToString(data) { var reportData = []; for (var key in data) { if (Object.prototype.hasOwnProperty.call(data, key)) { reportData.push(key + '=' + encodeURIComponent(data[key])); } } return reportData.join('&'); } monitor.getReportData = function (opt) { opt = opt || {}; var idkey = monitor._reportOptions.idkey || {}; var key = null; var reportData = {}; var nextKey; try { for (key in idkey) { if (Object.prototype.hasOwnProperty.call(idkey, key) && idkey[key]) { reportLogs.push(key + '_' + idkey[key]); } } } catch (e) { return false; } if (reportLogs.length === 0) { return false; } if (reportExtraLogs.length) { reportData.lc = reportExtraLogs.length; reportExtraLogs.forEach(function (extraLog, index) { reportData["log".concat(index)] = extraLog; }); } try { var reportOptions = monitor._reportOptions; if (reportOptions !== null && reportOptions !== undefined) { for (nextKey in reportOptions) { if (Object.prototype.hasOwnProperty.call(reportOptions, nextKey)) { reportData[nextKey] = reportOptions[nextKey]; } } } } catch (e) { reportData = {}; } reportData.idkey = reportLogs.join(';'); reportData.t = Math.random(); if (opt.remove !== false) { reportLogs = []; reportExtraLogs = []; monitor._reportOptions = { idkey: {} }; } return reportData; }; monitor.setLogs = function (opt) { var id = opt.id; var key = opt.key; var value = opt.value; var extraLog = opt.log; var others = ObjWithoutProperty(opt, ['id', 'key', 'value', 'log']); var idkey = monitor._reportOptions.idkey || {}; var param = id + '_' + key; if (idkey[param]) { idkey[param] += value; } else { idkey[param] = value; } monitor._reportOptions.idkey = idkey; if (extraLog) { reportExtraLogs.push(extraLog); } try { if (others !== null && others !== undefined) { for (var otherKey in others) { if (Object.prototype.hasOwnProperty.call(others, otherKey)) { monitor._reportOptions[otherKey] = others[otherKey]; } } } } catch (e) { console.log(e); } return monitor; }; monitor.setAvg = function (id, key, value) { var idkey = monitor._reportOptions.idkey || {}; var param1 = id + '_' + key; var param2 = id + '_' + (key - 1); if (idkey[param1]) { idkey[param1] += value; } else { idkey[param1] = value; } if (idkey[param2]) { idkey[param2] += 1; } else { idkey[param2] = 1; } monitor._reportOptions.idkey = idkey; return monitor; }; monitor.setSum = function (id, key) { var value = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1; var idkey = monitor._reportOptions.idkey; var param = id + '_' + key; if (idkey[param]) { idkey[param] += value; } else { idkey[param] = value; } monitor._reportOptions.idkey = idkey; return monitor; }; monitor.send = function (async, ajax, origin) { if (async !== false) { async = true; } var data = monitor.getReportData(); origin = origin || ''; if (!data) { return; } if (!!ajax && ajax instanceof Function) { ajax({ url: origin + sendUrl, type: 'POST', mayAbort: true, data: data, async: async, timeout: 2000, dontReport: true }); } else { new Image().src = origin + '/mp/jsmonitor?' + formatDataToString(data) + '#wechat_redirect'; } }; if (typeof window !== 'undefined' && window.__monitor) { monitor = window.__monitor; } else { typeof window !== 'undefined' && (window.__monitor = monitor); } var monitor$1 = monitor; var logList = []; var log = function log(msg) { logList.push(msg); }; var printLog = function printLog() { for (var i = 0, len = logList.length; i d2.exp) return 1; return 0; }); var memCnt = 0; for (var i = 0; i = size) break; var key = keys[i]; memCnt += JSON.stringify(data[key]).length; delete data[key]; } return data; }, 'clear-all': function clearAll() { localStorage.clear(); return {}; } }; function formatLogMsg(str) { return "[WXLS] ".concat(str); } var LS = function () { function LS(func, evictionPolicy, logger) { _classCallCheck(this, LS); this.logger = function () {}; if (!func) throw 'require function name.'; this.evictionPolicy = 'noeviction'; this.key = func; if (typeof logger === 'function') { this.logger = function (str, type) { return logger(formatLogMsg(str), type); }; } if (evictionPolicy && Object.keys(evictionPolicies).indexOf(evictionPolicy) !== -1) { this.evictionPolicy = evictionPolicy; } this.init(); } _createClass(LS, [{ key: "init", value: function init() { var _a, _b; this.check(); if (Math.random() * 1000 now) { temp[key] = val; } } this.logger("check info: isReturn:".concat(isReturn, " data:").concat(JSON.stringify(temp)), 'info'); if (isReturn) return temp; LS.setItem(this.key, JSON.stringify(temp), this.logger); } }, { key: "set", value: function set(key, val, exp) { var _a, _b; var data = this.check(true); data[key] = { val: val, exp: exp || +new Date() }; try { if (localStorage.getItem(prefix + this.key)) localStorage.removeItem(prefix + this.key); localStorage.setItem(prefix + this.key, JSON.stringify(data)); this.logger("first set success: LSlen:".concat((_a = window === null || window === void 0 ? void 0 : window.localStorage) === null || _a === void 0 ? void 0 : _a.length, " key:").concat(prefix + this.key, " data:").concat(JSON.stringify(data)), 'success'); } catch (e) { this.logger("first set error: LSlen:".concat((_b = window === null || window === void 0 ? void 0 : window.localStorage) === null || _b === void 0 ? void 0 : _b.length, " error:").concat(e, " key:").concat(prefix + this.key, " data:").concat(JSON.stringify(data), " k:").concat(key, " v:").concat(val, " exp:").concat(exp), 'error'); localStorage.clear(); LS.setItem(this.key, JSON.stringify(_defineProperty({}, key, { val: val, exp: exp || +new Date() })), this.logger); } } }, { key: "get", value: function get(key) { var data = this.getData(); data = data[key]; return data ? data.val || null : null; } }, { key: "remove", value: function remove(key) { var data = this.getData(); if (data[key]) delete data[key]; LS.setItem(this.key, JSON.stringify(data), this.logger); } }], [{ key: "getItem", value: function getItem(key) { key = prefix + key; return localStorage.getItem(key); } }, { key: "setItem", value: function setItem(key, val, logger) { var _a, _b; key = prefix + key; var n = 3; while (n--) { try { if (localStorage.getItem(key)) localStorage.removeItem(key); localStorage.setItem(key, val); typeof logger === 'function' && logger("setItem success: LSlen:".concat((_a = window === null || window === void 0 ? void 0 : window.localStorage) === null || _a === void 0 ? void 0 : _a.length, " key:").concat(key, " val:").concat(val), 'success'); break; } catch (e) { typeof logger === 'function' && logger("setItem error: LSlen:".concat((_b = window === null || window === void 0 ? void 0 : window.localStorage) === null || _b === void 0 ? void 0 : _b.length, " error:").concat(e, " key:").concat(key, " val:").concat(val), 'error'); LS.clear(); } } } }, { key: "clear", value: function clear() { var i; var k; for (i = localStorage.length - 1; i >= 0; i--) { k = localStorage.key(i); if (k.indexOf(prefix) == 0) { localStorage.removeItem(k); } } } }, { key: "getSupportEvicationPolicy", value: function getSupportEvicationPolicy() { return Object.keys(evictionPolicies); } }]); return LS; }(); var innerVersion = (mmversion.getInner() || '').toUpperCase(); var getBizLS = new LS('get_biz_result'); var bizMap = {}; function getBiz(needCheckBiz, bizType) { var _a; if (needCheckBiz === void 0) { needCheckBiz = false; } if (bizType === void 0) { bizType = ((_a = window.cgiDataNew) === null || _a === void 0 ? void 0 : _a.biz_type) || 1; } return new Promise(function (resolve, reject) { if (needCheckBiz || bizMap[bizType] === undefined) { if (!mmversion.isOnlyWechat || mmversion.isIOS && innerVersion -1) { bizMap[bizType] = res.biz; resolve(res.biz); getBizLS.set("".concat(bizType, "_get_biz_result"), res.biz, +new Date() + 3 * 24 * 60 * 60 * 1000); } else { reject('Failed to get biz'); } }); } } else { resolve(bizMap[bizType]); } }); } var getIsAuthor = function getIsAuthor(cb, bizuin, needCheckBiz, bizType) { var _a; if (bizuin === void 0) { bizuin = window.biz; } if (needCheckBiz === void 0) { needCheckBiz = false; } if (bizType === void 0) { bizType = ((_a = window.cgiDataNew) === null || _a === void 0 ? void 0 : _a.biz_type) || 1; } getBiz(needCheckBiz, bizType).then(function (biz) { cb(biz && biz === bizuin); })["catch"](function () { cb(false); }); }; function parseUrl(url) { var len = url.length; var ques_pos = url.indexOf('?'); var hash_pos = url.indexOf('#'); hash_pos = hash_pos == -1 ? len : hash_pos; ques_pos = ques_pos == -1 ? hash_pos : ques_pos; var host = url.substring(0, ques_pos); var query_str = url.substring(ques_pos + 1, hash_pos); var hash = url.substring(hash_pos + 1); return { host: host, query_str: query_str, hash: hash }; } function join(url, args, noEncode) { var ret = parseUrl(url); var query_str = ret.query_str; var args_arr = []; if (_typeof(args) === 'object') { for (var key in args) { if (args.hasOwnProperty(key)) { args_arr.push("".concat(key, "=").concat(noEncode ? args[key] : encodeURIComponent(args[key]))); } } } else { args_arr.push(noEncode ? args : encodeURIComponent(args)); } if (args_arr.length > 0) { query_str += (query_str !== "" ? "&" : "") + args_arr.join("&"); } return ret.host + (query_str !== "" ? "?".concat(query_str) : "") + (ret.hash !== "" ? "#".concat(ret.hash) : ""); } function addParam(url, param, value, forceReplace) { url = url || location.href; var firstAndPos = url.indexOf("&"); var len = url.length; var reverseUrl = url.replace(/^[\w\d]+:[/\\]+/g, "").split("").reverse(); if (!Array.prototype.indexOf) { Array.prototype.indexOf = function (searchElement, fromIndex) { var k; if (this == null) { throw new TypeError('"this" is null or not defined'); } var O = Object(this); var len = O.length >>> 0; if (len === 0) { return -1; } var n = fromIndex || 0; if (Math.abs(n) === Infinity) { n = 0; } if (n >= len) { return -1; } k = Math.max(n >= 0 ? n : len - Math.abs(n), 0); while (k lastSlashPos) { url = url.replace("&", "?"); } var reg = new RegExp("([\\?&]".concat(param, "=)[^&#]*")); if (!url.match(reg)) { var urlInfo = parseUrl(url); var hash = urlInfo.hash ? '#' + urlInfo.hash : ''; url = url.replace(hash, ''); var _pos = url.indexOf("?"); if (_pos == -1) { return "".concat(url, "?").concat(param, "=").concat(value).concat(hash); } if (_pos == url.length - 1) { return "".concat(url + param, "=").concat(value).concat(hash); } return "".concat(url, "&").concat(param, "=").concat(value).concat(hash); } if (forceReplace === true) { return url.replace(reg, "$1".concat(value)); } return url; } function addWxfrom(src, wxfrom) { var offset = window.service_type === 1 ? 10000 : 0; return addParam(src, 'wxfrom', offset + Number(wxfrom), true); } function removeParam(url, param) { var _URL = new URL(url), protocol = _URL.protocol, host = _URL.host, pathname = _URL.pathname, search = _URL.search, hash = _URL.hash; var queryParams = new URLSearchParams(search); queryParams["delete"](param); var newSearch = queryParams.toString(); var newUrl = new URL("".concat(protocol, "//").concat(host).concat(pathname).concat(newSearch ? "?".concat(decodeURIComponent(newSearch)) : "").concat(hash)); return newUrl.toString(); } function getQuery(name, url) { var u = url || window.location.search; var reg = new RegExp("(^|&)".concat(name, "=([^&]*)(&|$)")); var r = u.substring(u.indexOf('?') + 1).match(reg); return r !== null ? r[2] : ''; } function encodeBase64(value) { try { return window.btoa(value); } catch (e) { return ''; } } function decodeBase64(value) { try { return window.atob(value); } catch (e) { return ''; } } function joinUrl$1(url) { var obj = {}; if (typeof window.uin !== 'undefined') { obj.uin = window.uin; } if (typeof window.key !== 'undefined') { obj.key = window.key; } if (typeof window.pass_ticket !== 'undefined') { obj.pass_ticket = window.pass_ticket; } if (typeof window.wxtoken !== 'undefined') { obj.wxtoken = window.wxtoken; } if (typeof window.devicetype !== 'undefined') { obj.devicetype = window.devicetype; } if (typeof window.clientversion !== 'undefined') { obj.clientversion = window.clientversion || mmversion.getInner(); } obj.version = obj.clientversion; if (window.biz) { obj.__biz = window.biz; } if (getQuery('enterid')) { obj.enterid = getQuery('enterid'); } if (typeof window.appmsg_token !== 'undefined') { obj.appmsg_token = window.appmsg_token; } else if (url.indexOf('advertisement_report') > -1) { new Image().src = "".concat(location.protocol, "//mp.weixin.qq.com/mp/jsmonitor?idkey=68064_13_1&r=").concat(Math.random()); } obj.x5 = navigator.userAgent.indexOf('TBS/') !== -1 ? '1' : '0'; obj.f = 'json'; return join(url, obj); } function joinUserArticleRole(url, notJoin, cb) { var bizuin = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : window.biz; var needCheckBiz = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false; if (notJoin) { cb(url); } else { getIsAuthor(function (isAuthor) { cb(addParam(url, 'user_article_role', isAuthor ? 1 : 0, true)); }, bizuin, needCheckBiz); } } function getA8keyQuery(name, url) { return new Promise(function (resolve) { if (window.__secPageAuthPromise) { window.__secPageAuthPromise.then(function () { resolve(getQuery(name, url)); }); } else { resolve(getQuery(name, url)); } }); } function addHash(url, hash) { var isReplace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; if (isReplace) { return "".concat(url.split('#')[0]).concat(hash); } return "".concat(url).concat(url.indexOf('#') === -1 ? '#' : '').concat(hash); } function decodeUrl(url) { var _url = url; while (_url.indexOf('&') !== -1) { _url = _url.htmlDecode(); } return _url; } var Url = { parseUrl: parseUrl, join: join, addParam: addParam, addWxfrom: addWxfrom, addHash: addHash, getQuery: getQuery, getA8keyQuery: getA8keyQuery, encodeBase64: encodeBase64, decodeBase64: decodeBase64, joinUrl: joinUrl$1, joinUserArticleRole: joinUserArticleRole, removeParam: removeParam, decodeUrl: decodeUrl }; var _a; var doc; var isAcrossOrigin = false; try { doc = (_a = window.top) === null || _a === void 0 ? void 0 : _a.window.document; } catch (e) { isAcrossOrigin = true; } var StatusTextMap = { 200: 'OK', 302: 'Found', 400: 'Bad Request', 500: 'Internal Server Error' }; function getIsAcrossOrigin() { return isAcrossOrigin; } function networkStartLog(item) { var _a, _b, _c, _d, _e; console.log('[system]', " [response ".concat(item.requestType, "]"), item.url, item.response, item); if (item.rdevRequestId && ((_b = (_a = window.RemoteDevSdk) === null || _a === void 0 ? void 0 : _a.instance) === null || _b === void 0 ? void 0 : _b.Network) && item.id !== '__system_log__') { try { var finishedOptions = { requestId: item.rdevRequestId, url: item.url, status: +(item.status || '500'), statusText: StatusTextMap[+(item.status || '500')] || 'Error', responseHeaders: { RDEV_RESPONSE_TYPE: item.requestType }, responseBody: item.response, requestTime: item.requestTime || 0, duration: item.costTime || (item.endTime && item.startTime ? item.endTime - item.startTime : performance.now() / 1000 - (item.requestTime || 0)) }; window.RemoteDevSdk.instance.Network.customRequestFinished(finishedOptions); } catch (err) {} } if (((_c = window.vConsole) === null || _c === void 0 ? void 0 : _c.network) && item.id !== '__system_log__') { try { item.statusText = "".concat(item.status); item.responseSize = item.response.length; item.responseSizeText = "".concat(item.response.length); return (_e = (_d = window.vConsole.network).update) === null || _e === void 0 ? void 0 : _e.call(_d, item.id, Object.assign({}, item, { readyState: 4 })); } catch (err) {} } } function reqType(obj, path) { return obj.url.indexOf(path) > -1 && obj.url.indexOf('action=') === -1 && (!obj.data || !obj.data.action); } function findAjaxScopeByConfig(url, config) { var pathname = new URL(url, location.href).pathname || ''; var scope = config[pathname.slice(1)]; if (scope) { return scope; } } function getAjaxScope(ajaxUrl) { if (Url.getQuery('no_transfer', location.href) !== '1' && mmversion.isWechat && !mmversion.isInMiniProgram && !mmversion.isWxWork && !mmversion.isMpapp && !isAcrossOrigin && window.__ajaxTransferConfig && _typeof(window.__ajaxTransferConfig) === 'object' && ( mmversion.isIOS && mmversion.compareHexVersion('1800282F') || mmversion.isAndroid && mmversion.compareHexVersion('28002234') || mmversion.isWindowsWechat && mmversion.cpVersion('3.9.5', 1, true, 'windows') || mmversion.isMacWechat && mmversion.cpVersion('3.8.4', 1, true, 'mac') || mmversion.isHarmonyWechat && mmversion.compareHexVersion('0xf3100b00') && !mmversion.compareHexVersion('0xf3100c00') || mmversion.compareHexVersion('0xf3800b00'))) { try { return findAjaxScopeByConfig(ajaxUrl, window.__ajaxTransferConfig); } catch (err) { } } } function getActionByData(data) { var _a, _b; if (_typeof(data) === 'object' && !(data instanceof Blob)) { if (data.hasOwnProperty('data') && typeof data.data === 'string') { try { var workedData = JSON.parse(data.data); return workedData.action || ''; } catch (e) {} } return data.action || ''; } if (typeof data === 'string') { return ((_b = (_a = data.split(/[?&]/).find(function (x) { return x.indexOf('action=') >= 0; })) === null || _a === void 0 ? void 0 : _a.split('=')) === null || _b === void 0 ? void 0 : _b[1]) || ''; } return ''; } var METHOD_ENUM = { GET: 0, POST: 1 }; var __moon_report = window.__moon_report || function () {}; var MOON_AJAX_SUCCESS_OFFSET = 3; var MOON_AJAX_NETWORK_OFFSET = 4; var MOON_AJAX_ERROR_OFFSET = 5; var MOON_AJAX_TIMEOUT_OFFSET = 6; var MOON_AJAX_COMPLETE_OFFSET = 7; var LENGTH_LIMIT = 4096; function reportRtError(type, id, key, content) { var log = ''; var prefix = type === 'rt' ? 'rtCheckError' : 'Ajax Length Limit'; if (content === null || content === void 0 ? void 0 : content.length) { var loglen = 1000; var len = content.length; var lc = Math.ceil(len / loglen); log = ["&lc=".concat(lc)]; for (var i = 0; i = 200 && retryStatus 0 ? 'json' : undefined }); var isTimeout = false; handleReqTimeout({ abort: function abort() { isTimeout = true; reqLogItem.endTime = Date.now(); reqLogItem.response = 'timeout'; networkEndLog(reqLogItem); } }); Device.os.pc && monitor$1.setSum(115849, 69, 1); JSAPI.invoke(Device.os.pc ? 'H5ExtTransfer' : 'webTransfer', params, function (res) { var _a, _b, _c, _d, _e, _f; if (isTimeout) return; var status = 400; var result = ''; if (Device.os.pc) { try { var retFlag = res.base_resp.ret === 0 && res.jsapi_resp.ret === 0 && res.err_msg.indexOf(':ok') > -1; var respJsonFlag = res.jsapi_resp.resp_json; status = retFlag && respJsonFlag ? 200 : 400; result = res.jsapi_resp.resp_json; } catch (err) { console.error(err); } } else { status = res && res.errCode * 1 === 0 && typeof res.result === 'string' && res.result ? 200 : 400; result = res.result; } try { Log.log("ajax transfer, status: ".concat(status, ", reqUrl: ").concat(reqUrl)); } catch (err) { console.error(err); } if (status >= 200 && status -1 && retryStatus >= 200 && retryStatus = 200 && status LENGTH_LIMIT) { reportAjaxLength(27613, 17, "ajax get limit[length: ".concat(url.length, "]").concat(url.substring(0, 1024))); } if (data && !(data instanceof Blob) && data.length > LENGTH_LIMIT) { reportAjaxLength(27613, 18, "ajax post limit[length: ".concat(data.length, "]").concat(data.substring(0, 1024))); } if (data && data instanceof Blob && data.size > LENGTH_LIMIT) { reportAjaxLength(27613, 18, "ajax post limit[length: ".concat(data.size, "]blob")); } } catch (e) { } } catch (e) { obj.error && obj.error(xhr, { type: 3, error: e, status: 0 }); } beforeReq(); }); } mmversion.isWindowsWechat && mmversion.compareHexVersion('0xf2550000') || mmversion.isMacWechat && mmversion.compareHexVersion('0xf2650000'); var getBrandServiceType = function getBrandServiceType() { var serviceType = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window.service_type; var _a, _b; var brandServiceType = 0; if (serviceType !== undefined) brandServiceType = serviceType + 1; if (((_b = (_a = window.cgiData) === null || _a === void 0 ? void 0 : _a.trans_appmsg_info) === null || _b === void 0 ? void 0 : _b.trans_type) * 1 === 1) brandServiceType = 3; return brandServiceType; }; function setCurrentMpInfo(ifShow) { var supportNewTopBar = mmversion.isIOS && mmversion.gtVersion('7.0.10', true) || mmversion.isAndroid && mmversion.gtVersion('7.0.12', true); var supportLiveStatus = mmversion.isIOS && mmversion.gtVersion('8.0.46', true) || mmversion.isAndroid && mmversion.gtVersion('8.0.46', true); JSAPI.invoke('currentMpInfo', { userName: window.user_name, brandName: !!supportNewTopBar && window.nickname === '' ? '未命名账号' : window.title, title: window.msg_title || '', brandIcon: window.hd_head_img.replace(/\/0$/, '/132'), itemShowType: window.item_show_type, isPaySubscribe: window.isPaySubscribe, topBarStyle: supportNewTopBar ? 1 : 0, topBarShowed: ifShow, disableShowFinderLiveTopBar: !ifShow && supportLiveStatus ? 1 : 0, brandServiceType: getBrandServiceType() }, function () {}); } function AjaxWx(obj) { var report36408 = typeof obj.report36408 === 'function' ? obj.report36408 : function () {}; obj.url += obj.url.indexOf('?') === -1 ? '?fasttmplajax=1' : '&fasttmplajax=1'; if (getAjaxScope(obj.url)) { Ajax(obj); return; } if (obj.usePb) { obj.type = 'POST'; obj.data = { data: JSON.stringify(obj.data) }; } if (!/^(http:\/\/|https:\/\/|\/\/)/.test(obj.url)) { obj.url = "https://mp.weixin.qq.com/".concat(obj.url.replace(/^\//, '')); } else if (/^\/\//.test(obj.url)) { obj.url = "https:".concat(obj.url); } if (obj.f !== 'html' && (obj.url.indexOf('?f=json') === -1 || obj.url.indexOf('&f=json') === -1)) { obj.url += '&f=json'; } if (!obj.notJoinUrl && obj.f !== 'html') { obj.url = Url.joinUrl(obj.url); } Url.joinUserArticleRole(obj.url, !!obj.notJoinUrl, function (url) { obj.url = url; var urlObj = new URL(url, location.origin); var data = null; if (_typeof(obj.data) === 'object') { var d = obj.data; var ds = []; for (var k in d) { if (d.hasOwnProperty(k)) { ds.push("".concat(k, "=").concat(encodeURIComponent(d[k]))); } } data = ds.join('&'); } else { data = typeof obj.data === 'string' ? obj.data : null; } var header = { Cookie: document.cookie, referer: location.href }; if (obj.contentType) { header['Content-Type'] = obj.contentType; } else if ((obj.type || 'GET').toUpperCase() === 'POST') { header['Content-Type'] = 'application/x-www-form-urlencoded; charset=UTF-8'; } var reqLogItem = networkStartLog({ method: obj.type || 'GET', url: obj.url, postData: obj.data || {}, requestHeader: header, requestType: 'jsapi', startTime: Date.now() }); var retryTime = 1; var jsapiRequest = function jsapiRequest(obj, data) { return JSAPI.invoke('request', { url: obj.url, method: obj.type, data: data, header: header }, function (res) { var _a, _b, _c, _d, _e, _f; if (res.err_msg.indexOf(':ok') > -1 && (!res.statusCode || res.statusCode >= 200 && res.statusCode '27000600')) { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 1, HttpCode: res.statusCode || 0, Ret: ((_c = resData === null || resData === void 0 ? void 0 : resData.base_resp) === null || _c === void 0 ? void 0 : _c.ret) || 0 }); } var _retryTime = retryTime++; JSAPI.invoke('updatePageAuth', {}, function (res) { console.log('[skeleton] updatePageAuth', res); monitor$1.setSum(112287, 3, 1); if (res && res.err_msg && res.err_msg.indexOf(':ok') > -1) { window.top.pass_ticket = encodeURIComponent(Url.getQuery('pass_ticket', res.fullUrl).html(false).replace(/\s/g, '+')); if (obj.pass_ticket) { obj.pass_ticket = window.top.pass_ticket; } console.warn('[skeleton] updatePageAuth resetTopbar'); var supportNewTopBar = mmversion.isIOS && mmversion.gtVersion('7.0.10', true); var showBottomBar = !!window.is_login; if (window.top.item_show_type === '0' && supportNewTopBar) { var top = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop || 0; setCurrentMpInfo(top > 40 && !showBottomBar); } try { obj.url = Url.addParam(obj.url, 'retry', _retryTime, true); } catch (err) { console.error(err); } jsapiRequest(obj, data); monitor$1.setSum(112287, 4, 1); } else { obj.success && obj.success(resData); obj.complete && obj.complete(); if (mmversion.isIOS) { monitor$1.setSum(112287, 35, 1); } else { monitor$1.setSum(112287, 36, 1); } reqLogItem.status = 200; reqLogItem.endTime = Date.now(); reqLogItem.response = resData; networkEndLog(reqLogItem); } }); } else { if (((_d = tmpResData === null || tmpResData === void 0 ? void 0 : tmpResData.base_resp) === null || _d === void 0 ? void 0 : _d.ret) !== 0) { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 4, HttpCode: res.statusCode || 0, Ret: ((_e = tmpResData === null || tmpResData === void 0 ? void 0 : tmpResData.base_resp) === null || _e === void 0 ? void 0 : _e.ret) || 0 }); } } else { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 0, HttpCode: res.statusCode || 0, Ret: ((_f = tmpResData === null || tmpResData === void 0 ? void 0 : tmpResData.base_resp) === null || _f === void 0 ? void 0 : _f.ret) || 0 }); } } obj.success && obj.success(resData); obj.complete && obj.complete(); reqLogItem.status = 200; reqLogItem.endTime = Date.now(); reqLogItem.response = resData; networkEndLog(reqLogItem); } } else if (res.err_msg.indexOf('no permission') > -1 || !mmversion.isOnlyWechat) { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 1, HttpCode: res.statusCode || 0, Ret: 0 }); } Ajax(obj); if (res.err_msg.indexOf('no permission') > -1) { console.warn('[JSAPI Request] No permission'); monitor$1.setSum(112287, 31, 1); } reqLogItem.status = 302; reqLogItem.endTime = Date.now(); reqLogItem.response = res; networkEndLog(reqLogItem); } else { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 2, HttpCode: res.statusCode || 0, Ret: 0 }); } obj.error && obj.error(null, { type: 3, error: res, status: 0 }); obj.complete && obj.complete(); monitor$1.setSum(112287, 32, 1); var sample = 0.001; if (Math.random() = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } var AjaxRouter = function () { var _ref = _asyncToGenerator( _regeneratorRuntime().mark(function _callee(obj) { return _regeneratorRuntime().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: if (!window.__secPageAuthPromise) { _context.next = 3; break; } _context.next = 3; return window.__secPageAuthPromise; case 3: if (!(!mmversion.isWxWork && (window.__second_open__ || !getIsAcrossOrigin() && top.window.__second_open__) && window.__is_page_auth_return__ && !obj.pureHttp)) { _context.next = 5; break; } return _context.abrupt("return", AjaxWx(obj)); case 5: return _context.abrupt("return", Ajax(obj)); case 6: case "end": return _context.stop(); } }, _callee); })); return function AjaxRouter(_x) { return _ref.apply(this, arguments); }; }(); var isx5 = navigator.userAgent.indexOf('TBS/') !== -1; var getDataFunc = []; var reportData = []; var specificData = {}; function joinUrl(url) { var obj = {}; if (typeof window.uin !== 'undefined') { obj.uin = window.uin; } if (typeof window.key !== 'undefined') { obj.key = window.key; } if (typeof window.pass_ticket !== 'undefined') { obj.pass_ticket = window.pass_ticket; } if (typeof window.wxtoken !== 'undefined') { obj.wxtoken = window.wxtoken; } if (typeof window.devicetype !== 'undefined') { obj.devicetype = window.devicetype; } if (typeof window.clientversion !== 'undefined') { obj.clientversion = window.clientversion; } if (typeof window.appmsg_token !== 'undefined') { obj.appmsg_token = window.appmsg_token; } else if (url.indexOf('advertisement_report') > -1) { new Image().src = "".concat(location.protocol, "//mp.weixin.qq.com/mp/jsmonitor?idkey=68064_13_1&r=").concat(Math.random()); } obj.x5 = isx5 ? '1' : '0'; obj.f = 'json'; return Url.join(url, obj); } function isObj(obj) { return obj && _typeof(obj) === 'object'; } function assign(target, source) { if (isObj(target) && isObj(source)) { for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } } function assembleReportData(initiative) { var leaveReportLog = []; leaveReportLog.push({ content: "[LeaveReport] specificData keys: ".concat(Object.keys(specificData)), timestamp: Date.now() }); Log.log("[LeaveReport] specificData keys: ".concat(Object.keys(specificData))); console.log("[LeaveReport] specificData keys: ".concat(Object.keys(specificData))); var allReportData = {}; for (var reportField in specificData) { if (!allReportData[reportField]) { allReportData[reportField] = {}; } for (var i = 0; i = BATCH_SIZE) { batchReport(); } else { if (!timeOutId) { timeOutId = setTimeout(function () { batchReport(); clearTimeout(timeOutId); timeOutId = null; }, BATCH_TIME); } } } _leaveReport.addReport(function () { var repeatedReportJson = getRepeatedReportJson(); if (!repeatedReportJson) return false; var reportData = []; for (var _i = 0, _Object$entries = Object.entries(repeatedReportJson); _i 200 || isScrolling()) { return; } var st = e.changedTouches[0]; if (Math.abs(g.y - st.clientY) 5 || Math.abs(x - e.clientX) > 5)) { clearTimeout(timeOutEvent); timeOutEvent = undefined; typeof cancelCb === 'function' && cancelCb.call(self, e); } }); on(el, 'mouseup', className, function () { mousedown = false; clearTimeout(timeOutEvent); }); on(el, 'click', className, function () { if (triggerLongClick) return false; }); } else { on(el, 'touchstart', className, function (e) { e.touches.length === 1 && (timeOutEvent = setTimeout(function () { timeOutEvent = undefined; cb.call(self, e); }, 500)); }); on(el, 'touchmove', className, function (e) { if (!timeOutEvent) return; var st = e.changedTouches[0]; if (Math.abs(g.y - st.clientY) > 5 || Math.abs(g.x - st.clientX) > 5) { clearTimeout(timeOutEvent); timeOutEvent = undefined; typeof cancelCb === 'function' && cancelCb.call(self, e); } }); on(el, 'touchend', className, function (e) { if (timeOutEvent) { clearTimeout(timeOutEvent); timeOutEvent = undefined; } else { e.preventDefault(); } }, true); } } function doubletap(el, cb) { var _this = this; var __lastTouchVideoTs = 0; var realCb = function realCb(e) { if (Date.now() - __lastTouchVideoTs -1; } function closest(target, className, context) { while (target && !matches(target, className)) { target = target !== context && target.nodeType !== target.DOCUMENT_NODE && target.parentNode; } return target; } function on(el, type, className, cb, flag, extra) { var callback; var handler; var delegator; if (!el) return; if (typeof className === 'function') { extra = flag; flag = cb; cb = className; className = ''; } if (typeof className !== 'string') { className = ''; } if (el == window && type == "load" && /complete|loaded/.test(document.readyState)) { return cb({ type: "load" }); } if (type == 'tap') return tap(el, cb, flag, className); if (type === 'longtap') return longtap(el, cb, flag, className, extra); if (type == "unload" && "onpagehide" in window) { type = "pagehide"; } callback = function callback(e) { var ret = cb(e); if (ret === false) { e.stopPropagation && e.stopPropagation(); e.preventDefault && e.preventDefault(); } return ret; }; if (className && className.charAt(0) == '.') delegator = function delegator(e) { var target = e.target || e.srcElement; var match = closest(target, className, el); if (match) { e.delegatedTarget = match; return callback(e); } }; handler = delegator || callback; cb["".concat(type, "_handler")] = handler; if (el.addEventListener) { el.addEventListener(type, handler, !!flag); return; } if (el.attachEvent) { el.attachEvent("on".concat(type), handler, !!flag); return; } } function off(el, type, cb, flag) { if (!el) return; var handlerType = type; var handler; if (handlerType == 'tap') { if (isUseTap()) { handlerType = 'touchend'; handler = cb.tap_handler && cb.tap_handler.touchend_handler ? cb.tap_handler.touchend_handler : cb; } else { handlerType = 'click'; } } if (!handler) { handler = cb["".concat(handlerType, "_handler")] || cb; } if (el.removeEventListener) { el.removeEventListener(handlerType, handler, !!flag); return; } if (el.detachEvent) { el.detachEvent("on".concat(handlerType), handler, !!flag); return; } if (handlerType == 'tap' && isUseTap()) { if (cb.tap_handler) { cb.tap_handler.touchend_handler = null; } cb.tap_handler = null; } else { cb["".concat(handlerType, "_handler")] = null; } } function getHiddenProp() { if ('hidden' in document) { return 'hidden'; } for (var i = 0; i ', '<', '']; var replaceReverse = ['&', '&', '¥', '¥', '', '>', ' ', ' ', '"', '"', '\'', ''', '`', '`']; var str = _str; var target; if (encode) { target = replaceReverse; } else { target = replace; } for (var i = 0; i ', '<', '', '>', '"', '"', '\'', ''', '`', '`']; var str = _str; var target; if (encode) { target = replaceReverse; } else { target = replace; } for (var i = 0; i 1 && arguments[1] !== undefined ? arguments[1] : 50; var timeout; return function () { for (var _len = arguments.length, args = new Array(_len), _key = 0; _key rectA.right || rectB.bottom rectA.bottom); } var utils = { isNativePage: isNativePage, isNewNativePage: function isNewNativePage() { return Url.getQuery('isNativePage') === '2'; }, isOldNativePage: function isOldNativePage() { return Url.getQuery('isNativePage') === '1'; }, __useWcSlPlayer: false, isWcSlPage: function isWcSlPage() { return utils.__useWcSlPlayer; }, getPlayerType: function getPlayerType() { if (isNativePage()) { return 2; } return 1; }, getParam: function getParam(key) { if (!key) return null; var m = location.href.match(new RegExp("(\\?|&)".concat(key, "=([^&]+)"))); return m ? m[2] : null; }, insertAfter: function insertAfter(newElement, targetElement) { var parentElement = targetElement.parentNode; if (parentElement.lastChild === targetElement) { parentElement.appendChild(newElement); } else { parentElement.insertBefore(newElement, targetElement.nextSibling); } }, getInnerHeight: function getInnerHeight() { var innerHeightFromApp = window.getInnerHeight && window.getInnerHeight(); return innerHeightFromApp || window.innerHeight || document.documentElement.clientHeight; }, getInnerWidth: function getInnerWidth() { return window.innerWidth || document.documentElement.clientWidth; }, getScrollTop: function getScrollTop() { return document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop; }, getDocumentHeight: function getDocumentHeight() { return document.body.scrollHeight; }, getElementActualTop: function getElementActualTop(element) { var elRect = element.getBoundingClientRect(); var actualTop = elRect.top + this.getScrollTop(); return actualTop; }, getElementTop: function getElementTop(element) { return element.getBoundingClientRect().top; }, getElementHeight: function getElementHeight(element) { return element.getBoundingClientRect().height; }, getOrientation: function getOrientation() { var _a, _b; return (_b = (_a = window.screen.orientation) === null || _a === void 0 ? void 0 : _a.angle) !== null && _b !== void 0 ? _b : window.orientation; }, getDirection: function getDirection() { var orientation = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : utils.getOrientation(); return (mmversion.isIPad ? [90, 270] : [0, 180]).indexOf(orientation) > -1 ? 'vertical' : 'horizontal'; }, listenDirectionChange: function listenDirectionChange(cb) { var _a, _b; if ((_b = (_a = window.screen) === null || _a === void 0 ? void 0 : _a.orientation) === null || _b === void 0 ? void 0 : _b.addEventListener) { directionChangeHandlersMap[directionHandlerId] = function (e) { cb === null || cb === void 0 ? void 0 : cb(utils.getDirection(e.target.angle), e.target.angle); }; window.screen.orientation.addEventListener('change', directionChangeHandlersMap[directionHandlerId]); } else { directionChangeHandlersMap[directionHandlerId] = function () { var orientation = utils.getOrientation(); cb === null || cb === void 0 ? void 0 : cb(utils.getDirection(orientation), orientation); }; window.addEventListener('orientationchange', directionChangeHandlersMap[directionHandlerId]); } return directionHandlerId++; }, unlistenDirectionChange: function unlistenDirectionChange(handlerId) { var _a, _b; if ((_b = (_a = window.screen) === null || _a === void 0 ? void 0 : _a.orientation) === null || _b === void 0 ? void 0 : _b.removeEventListener) { window.screen.orientation.removeEventListener('change', directionChangeHandlersMap[handlerId]); } else { window.removeEventListener('orientationchange', directionChangeHandlersMap[handlerId]); } delete directionChangeHandlersMap[handlerId]; }, isScrollEnd: function isScrollEnd(threshold) { return this.getScrollTop() + this.getInnerHeight() + threshold >= this.getDocumentHeight(); }, listenStateChange: function listenStateChange() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; stateChangeCb.push(opt.cb); try { if (parent.window.hasListenStateChange) { return; } } catch (error) { } JSAPI.on('activity:state_change', function (res) { stateChangeCb.forEach(function (callback) { callback(res); }); }); try { parent.window.hasListenStateChange = true; } catch (error) { } }, listenMpPageAction: function listenMpPageAction(cb) { mpPageActionCb.push(cb); try { if (parent.window.hasListenMpPageAction) { return; } } catch (error) { } JSAPI.on('onMPPageAction', function (res) { mpPageActionCb.forEach(function (callback) { callback(res); }); }); try { parent.window.hasListenMpPageAction = true; } catch (error) { } }, getIosMainVersion: function getIosMainVersion() { var versionInfo = navigator.userAgent.toLowerCase().match(/cpu iphone os (.*?) like mac os/); return versionInfo && versionInfo[1] && parseInt(versionInfo[1].split('_')[0], 10); }, report120081: function report120081(key, times) { jsmonitorReport$1.setSum(120081, key, times); jsmonitorReport$1.send(); }, loadNewPageKeepingHistoryStackIfSecOpen: function loadNewPageKeepingHistoryStackIfSecOpen(url) { if (window.__second_open__ && typeof url === 'string' && /^https?:\/\/mp.weixin.qq.com\//.test(url)) { HistoryLS.set(HistoryKey, location.href, Date.now() + 10000); } location.href = "".concat(url.replace(/#.*$/, ''), "#wechat_redirect"); }, initNewPageHistoryStackFromSecOpen: function initNewPageHistoryStackFromSecOpen() { var fromUrl = HistoryLS.get(HistoryKey); if (fromUrl && typeof fromUrl === 'string' && /^https?:\/\/mp.weixin.qq.com\//.test(fromUrl)) { HistoryLS.remove(HistoryKey); if (history && history.replaceState && history.pushState) { var curUrl = location.href; try { history.replaceState({ __mock_secopen_history_stack_reload__: 1 }, '', fromUrl); history.pushState({ __mock_secopen_history_stack_reload__: 1 }, '', curUrl); } catch (e) { console.error('[initNewPageHistoryStackFromSecOpen]', e); } } } if (!hasListenPopstateForSecOpenReload) { hasListenPopstateForSecOpenReload = true; window.addEventListener('popstate', function (e) { if (e.state && e.state.__mock_secopen_history_stack_reload__ === 1) { location.reload(); } }); } }, initWebCompt: function initWebCompt(webComptList, callback) { var flushCb = function flushCb() { while (webComptInitCb.length) { var cb = webComptInitCb.shift(); cb(webComptStatus); } }; if (mmversion.isWechat && !mmversion.isInMiniProgram && (Device.os.iphone && Device.os.getNumVersion() >= 10.3 && (mmversion.gtVersion('7.0.14', 1) && Device.os.getNumVersion() = 5 || Device.os.harmony && mmversion.compareHexVersion('0xf3800c00'))) { document.addEventListener('WeixinOpenTagsReady', function () { webComptStatus = { status: 'ready' }; flushCb(); }); document.addEventListener('WeixinOpenTagsError', function (e) { webComptStatus = { status: 'error', error: e && e.detail && e.detail.errMsg }; flushCb(); }); JSAPI.invoke('handleMPPageAction', { action: 'wxConfig', appid: 'wxmpfakeid', webComptList: webComptList, url: location.href }, function (res) { console.log('wx config web compt result', webComptList, res); Log.info('wx config web compt result', webComptList, JSON.stringify(res)); if (res && res.err_msg && res.err_msg.indexOf(':ok') === -1) { webComptStatus = { status: 'error', error: res.err_msg }; flushCb(); } if (typeof callback === 'function') { callback(res); } }); } else { var res = { err_msg: 'handleMPPageAction:fail_webcompt unsupported' }; console.log('wx config web compt result', webComptList, res); Log.info('wx config web compt result', webComptList, JSON.stringify(res)); webComptStatus = { status: 'error', error: res.err_msg }; flushCb(); if (typeof callback === 'function') { callback(res); } } }, initWebComptForWcSlVideoSharePage: function initWebComptForWcSlVideoSharePage() { var initAfterConfWxOpen = function initAfterConfWxOpen(res) { if (res.err_msg.indexOf(':ok') !== -1) { utils.initNewPageHistoryStackFromSecOpen(); } else { window.__failConfigWxOpen = true; Log.info('failed to config wxopen: res not ok'); jsmonitorReport$1.setSum(221515, Device.os.iphone ? 7 : 8, 1); window.WX_BJ_REPORT && window.WX_BJ_REPORT.BadJs && res && window.WX_BJ_REPORT.BadJs.report('WcSlPlayer:CfgError', (window.__second_open__ ? 'secopen:' : 'h5:') + JSON.stringify(res)); } }; if (mmversion.isAndroid) { var clientVer = mmversion.getInner(); if (clientVer > '27001037' && clientVer = '27001100') { utils.initWebCompt(['wxOpen' ], initAfterConfWxOpen); } else if (mmversion.gtVersion('7.0.15', 1)) { window.__failConfigWxOpen = true; Log.info('failed to config wxopen: android version check failed (gt 7.0.15)'); } else { window.__failConfigWxOpen = true; Log.info('failed to config wxopen: android version check failed'); } } else if (mmversion.isIOS) { if (mmversion.gtVersion('7.0.15', 1)) { utils.initWebCompt(['wxOpen' ], initAfterConfWxOpen); } else { window.__failConfigWxOpen = true; Log.info('failed to config wxopen: ios version check failed'); } } else { window.__failConfigWxOpen = true; } }, getWebComptStatus: function getWebComptStatus(cb) { if (typeof cb !== 'function') { return webComptStatus; } if (webComptStatus.status === 'loading') { webComptInitCb.push(cb); } else { cb(webComptStatus); } return true; }, supportImmersiveMode: mmversion.isWechat && !mmversion.isInMiniProgram && (mmversion.isIOS && mmversion.gtVersion('8.0.9', 1) || mmversion.isAndroid && mmversion.gtVersion('8.0.9', 1)), debounce: debounce, bindDebounceScrollEvent: function bindDebounceScrollEvent(fn) { var scrollEle = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : window; var wait = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; var useCapture = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false; var debounceFn = debounce(fn, wait); DomEvent.on(scrollEle, 'scroll', '', debounceFn, useCapture); }, checkIntersect: checkIntersect, clickRange: function clickRange(evt) { var selection = window.getSelection(); var range = selection.rangeCount && selection.getRangeAt(0); if (!range || range.collapsed || !range.intersectsNode(evt.target)) { return false; } var rangeClientRects = range.getClientRects(); var targetLineHeight = parseFloat(getComputedStyle(evt.target).lineHeight, 10); var targetRect = evt.target.getBoundingClientRect(); for (var i in rangeClientRects) { if (rangeClientRects.hasOwnProperty(i)) { var rect = rangeClientRects[i]; var extraHeight = targetLineHeight ? (targetLineHeight - rect.height) / 2 : 0; if (rect.width && checkIntersect(rect, targetRect) && evt.clientX >= rect.left && evt.clientX = rect.top - extraHeight && evt.clientY 2 && arguments[2] !== undefined ? arguments[2] : false; var oriTimestamp = oriCreateTime * 1; var dateObj = new Date(oriTimestamp * 1000); var now = new Date(svrTime * 1000); var padStart = function padStart(v) { return "0".concat(v).slice(-2); }; var year = dateObj.getFullYear(); var month = withoutZero ? dateObj.getMonth() + 1 : padStart(dateObj.getMonth() + 1); var date = withoutZero ? dateObj.getDate() : padStart(dateObj.getDate()); var hour = padStart(dateObj.getHours()); var minute = padStart(dateObj.getMinutes()); var diffMs = now - dateObj; var diffMinutes = Math.floor(diffMs / (1000 * 60)); var today = new Date(now); today.setHours(0, 0, 0, 0); var yesterday = new Date(today); yesterday.setDate(yesterday.getDate() - 1); var yearStart = new Date(now.getFullYear(), 0, 1); var showDate = ''; if (dateObj >= today) { if (diffMinutes = yesterday) { showDate = "\u6628\u5929".concat(hour, ":").concat(minute); } else if (dateObj >= yearStart) { showDate = "".concat(parseInt(month, 10), "\u6708").concat(parseInt(date, 10), "\u65E5").concat(hour, ":").concat(minute); } else { showDate = "".concat(year, "\u5E74").concat(parseInt(month, 10), "\u6708").concat(parseInt(date, 10), "\u65E5").concat(hour, ":").concat(minute); } return showDate; }; var __setPubTime = function __setPubTime(svrTime, oriCreateTime, createTime, dom, itemShowType) { var oriTimestamp = oriCreateTime * 1; var dateObj = new Date(oriTimestamp * 1000); var padStart = function padStart(v) { return "0".concat(v).slice(-2); }; var year = dateObj.getFullYear(); var month = dateObj.getMonth() + 1; var date = dateObj.getDate(); var hour = padStart(dateObj.getHours()); var minute = padStart(dateObj.getMinutes()); var timeString = "".concat(hour, ":").concat(minute); var dateString = "".concat(year, "年").concat(month, "月").concat(date, "日"); var showDate = "".concat(dateString, " ").concat(timeString); if (itemShowType == '10' || itemShowType == '8') { showDate = setPubTimeNew(svrTime, oriCreateTime, true); } if (dom) { dom.innerText = showDate; } }; if (!window.__second_open__) { var svrDate = '1779245290'; var oriCreateTime = '1779145260'; var createTime = '2026-05-19 07:01'; var itemShowType = window.a_value_which_never_exists || '0'; __setPubTime(svrDate, oriCreateTime, createTime, document.getElementById('publish_time'), itemShowType); window.__setPubTime = __setPubTime; } return __setPubTime; })(); if (!window.console) window.console = { log: function() {} }; if (typeof getComputedStyle == 'undefined') { if (document.body.currentStyle) { window.getComputedStyle = function(el) { return el.currentStyle; } } else { window.getComputedStyle = {}; } } (function(){ window.__zoom = 1; var ua = navigator.userAgent.toLowerCase(); var re = new RegExp("msie ([0-9]+[\.0-9]*)"); var version; if (re.exec(ua) != null) { version = parseInt(RegExp.$1); } var isIE = false; if (typeof version != 'undefined' && version >= 6 && version 0) break; outerWidth += parseFloat(parent_style.paddingLeft) + parseFloat(parent_style.paddingRight) + parseFloat(parent_style.marginLeft) + parseFloat(parent_style.marginRight) + parseFloat(parent_style.borderLeftWidth) + parseFloat(parent_style.borderRightWidth); parent = parent.parentNode; } return parent_width; } var getOuterW = function (dom) { var style = getComputedStyle(dom), w = 0; if (!!style) { w = parseFloat(style.paddingLeft) + parseFloat(style.paddingRight); } return w; }; var getOuterH = function (dom) { var style = getComputedStyle(dom), h = 0; if (!!style) { h = parseFloat(style.paddingTop) + parseFloat(style.paddingBottom); } return h; }; var insertAfter = function (dom, afterDom) { var _p = afterDom.parentNode; if (!_p) { return; } if (_p.lastChild === afterDom) { _p.appendChild(dom); } else { _p.insertBefore(dom, afterDom.nextSibling); } }; var getQuery = function (name, url) { var u = arguments[1] || window.location.search, reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"), r = u.substr(u.indexOf("\?") + 1).match(reg); return r != null ? r[2] : ""; }; function setImgSize(item, widthNum, widthUnit, ratio, breakParentWidth) { setTimeout(function () { var img_padding_border = getOuterW(item) || 0; var img_padding_border_top_bottom = getOuterH(item) || 0; if (widthNum > getParentWidth(item) && !breakParentWidth) { widthNum = getParentWidth(item); } var height = (widthNum - img_padding_border) * ratio + img_padding_border_top_bottom; if (isCarton) { var url = item.getAttribute('data-src'); item.src = url; item.style.height = 'auto'; } else { widthNum !== 'auto' && (item.style.cssText += ";width: " + widthNum + widthUnit + " !important;"); widthNum !== 'auto' && (item.style.cssText += ";height: " + height + widthUnit + " !important;"); } }, 10); } window.__videoDefaultRatio = 16 / 9;//默认值是16/9 window.__getVideoWh = function (dom) { var max_width = getMaxWith(), width = max_width, ratio_ = dom.getAttribute('data-ratio') * 1,//mark16/9 arr = [4 / 3, 16 / 9], ret = arr[0], abs = Math.abs(ret - ratio_); if (!ratio_) { ratio_ = 4 / 3; } else { for (var j = 1, jl = arr.length; j parent_width ? parent_width : width, outerW = getOuterW(dom) || 0, outerH = getOuterH(dom) || 0, videoW = width - outerW, videoH = videoW / ratio_, speedDotH = 12, height = videoH + outerH + speedDotH; return { w: Math.ceil(width), h: Math.ceil(height), vh: videoH, vw: videoW, ratio: ratio_, sdh: speedDotH }; }; (function () { var iframe = document.getElementsByTagName('iframe'); for (var i = 0, il = iframe.length; i '; videoPlaceHolderSpan.style.cssText = "width: " + obj.w + "px !important;"; insertAfter(videoPlaceHolderSpan, a); var mid = "" || "" || "2247490203"; var biz = "" || "Mzg2OTA1OTAxNA=="; var sessionid = "" || "svr_57d314c972a"; var idx = "" || "1"; var hitInfos = [ ]; (function setHitStyle(parentNode, copyIframe, index, vid) { var ret = (hitInfos || []).find(function (info) { return info.video_id === vid; } ); if (!ret) return; var ori = ret.ori_status; var hit_biz_headimg = ret.hit_biz_headimg + '/64'; var hit_nickname = ret.hit_nickname; var hit_username = ret.hit_username; var sourceBiz = ret.hit_bizuin; var selfUserName = "gh_13cc971d267c"; if (ori === 2 && selfUserName !== hit_username) { var videoBar = document.createElement('div'); var videoBarHtml = ''; videoBarHtml += '以下视频来源于'; videoBarHtml += ''; videoBarHtml += ''; videoBarHtml += '' + hit_nickname + ''; videoBarHtml += '*'; videoBarHtml += ''; videoBarHtml += ''; videoBarHtml += ''; videoBar.innerHTML = videoBarHtml; var spanContainer = document.getElementById('js_mp_video_container_' + index); if (spanContainer) { spanContainer.parentNode.insertBefore(videoBar, spanContainer); } else if (parentNode.contains && parentNode.contains(copyIframe)) { parentNode.insertBefore(videoBar, copyIframe); } else { parentNode.insertBefore(videoBar, parentNode.firstElementChild); } var avatorEle = document.getElementById(hit_biz_headimg + index); var avatorSrc = avatorEle.dataset.src; console.log('avatorSrc' + avatorSrc); if (ret.hit_biz_headimg) { avatorEle.style.backgroundImage = 'url(' + avatorSrc + ')'; } } })(a.parentNode, a, i, vid); a.style.cssText += ";width: " + obj.w + "px !important;"; a.setAttribute("width", obj.w); if (window.__zoom != 1) { a.style.display = "block"; videoPlaceHolderSpan.style.display = "none"; a.setAttribute("_ratio", obj.ratio); a.setAttribute("_vid", vid); } else { videoPlaceHolderSpan.style.cssText += "height: " + (obj.h - obj.sdh) + "px !important;margin-bottom: " + obj.sdh + "px !important;"; a.style.cssText += "height: " + obj.h + "px !important;"; a.setAttribute("height", obj.h); } a.setAttribute("data-vh", obj.vh); a.setAttribute("data-vw", obj.vw); if (a.getAttribute("data-mpvid")) { a.setAttribute("data-src", location.protocol + "//mp.weixin.qq.com/mp/readtemplate?t=pages/video_player_tmpl&auto=0&vid=" + vid); } else { a.setAttribute("data-src", location.protocol + "//v.qq.com/iframe/player.html?vid=" + vid + "&width=" + obj.vw + "&height=" + obj.vh + "&auto=0"); } } })(); (function () { if (window.__zoom != 1) { if (!window.__second_open__) { document.getElementById('page-content').style.zoom = window.__zoom; var a = document.getElementById('activity-name'); var b = document.getElementById('meta_content'); if (!!a) { a.style.zoom = 1 / window.__zoom; } if (!!b) { b.style.zoom = 1 / window.__zoom; } } var images = document.getElementsByTagName('img'); for (var i = 0, il = images.length; i = 0 && child.getAttribute("data-vid") == vid) { child.style.cssText += "height: " + h + "px !important;"; child.style.display = ""; } } } } })(); })(); var anchor_tree_msg = ''; var __INLINE_SCRIPT__ = (function (exports, o$7) { 'use strict'; function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } var o__default = _interopDefaultLegacy(o$7); var setImmersiveMode = function setImmersiveMode(itemShowType) { var envStr = window.__wxWebEnv && typeof window.__wxWebEnv.getEnv === 'function' && window.__wxWebEnv.getEnv(); if (!envStr) return; var envObj = {}; if (!envStr) return; try { envObj = JSON.parse(envStr); } catch (err) { console.info(err); } var immersiveListMode = envObj.immersiveListMode || 0; window.__immersiveListMode = Number(immersiveListMode) === 1 ? 1 : 0; window.__test_immersive_list = 0; if (window.__test_immersive_list) { window.__immersiveListMode = 1; } var wxExpandArticleEle = document.getElementById('wx_expand_article'); document.getElementById('js_article'); var bottomLoadingTip = document.getElementById('js_network_msg_wrp'); if (!itemShowType && itemShowType !== 0) { itemShowType = window.item_show_type; } itemShowType = Number(itemShowType); if (window.__immersiveListMode) { try { var immersiveSafeBottom = localStorage.getItem('__immersivefeed_safe_bottom__'); if (immersiveSafeBottom) { document.documentElement.style.setProperty('--immersive-safe-bottom', immersiveSafeBottom); } } catch (error) { console.log(error); } if (wxExpandArticleEle) { wxExpandArticleEle.style.display = 'block'; } if (bottomLoadingTip) { bottomLoadingTip.style.display = 'none'; } if (itemShowType === 10 || itemShowType === 7) { document.body.classList.add('ellapse_short_content'); } else { document.body.classList.add('ellapse_stream_article'); } if (itemShowType === 0) { document.body.classList.add('article_extensive_background'); } else { document.body.classList.add('media_content_extensive_background'); } var interactionPlaceholderEle = document.getElementById('js_interaction_placeholder'); if (interactionPlaceholderEle) { interactionPlaceholderEle.style.display = 'block'; } } }; function _typeof$3(obj) { "@babel/helpers - typeof"; return _typeof$3 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof$3(obj); } function asyncGeneratorStep$1(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } function _asyncToGenerator$1(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep$1(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep$1(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$2(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } function _unsupportedIterableToArray$2(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$2(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$2(o, minLen); } function _arrayLikeToArray$2(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i b; } }; function cpVersion(ver, op, canEq, type) { var mmver = false; switch (type) { case 'mac': mmver = getMac(); break; case 'windows': mmver = getWindowsVersionFormat(); break; case 'wxwork': mmver = getWxWork(); break; case 'mpapp': mmver = getMpApp(); break; case 'unifiedpc': mmver = getUnifiedPcVer(); break; default: mmver = get(); break; } if (!mmver) { return; } var mmversion = mmver.split('.'); var version = ver.split('.'); if (!/\d+/g.test(mmversion[mmversion.length - 1])) { mmversion.pop(); } for (var i = 0, len = Math.max(mmversion.length, version.length); i = 64 && parseInt(v$4) = hexNum; } return false; } var MMVersion = { get: get, getMac: getMac, getMacOS: getMacOS, getWindows: getWindows, getInner: getInner, getWxWork: getWxWork, getMpApp: getMpApp, cpVersion: cpVersion, eqVersion: eqVersion, gtVersion: gtVersion, ltVersion: ltVersion, getPlatform: getPlatform, getVersionNumber: getVersionNumber, isWp: is_wp, isIOS: is_ios, isAndroid: is_android$1, isHarmony: is_harmony, isHarmonyWechat: is_harmony && is_wechat && cpVersion('1.0.0', 1, true), isInMiniProgram: is_in_miniProgram, isWechat: is_wechat, isMac: is_mac, isWindows: is_windows, isLinux: is_linux, isMacWechat: is_mac_wechat, isWindowsWechat: is_windows_wechat, isWxWork: is_wx_work, isOnlyWechat: is_wechat && !is_wx_work, isMpapp: is_mpapp, isNewMpApp: false, isIPad: is_ipad, isGooglePlay: is_google_play, isPrefetch: is_prefetch, isDonutAPP: is_donut_app, compareHexVersion: compareHexVersion, isPcWechat: is_windows_wechat || is_mac_wechat, xwebVersion: xweb_version, isUnifiedPcWechat: is_unified_pc_wechat }; var initJsBridge = false; if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; } function connectWebViewJavascriptBridge(callback) { if (window.WebViewMPapp || window.WebViewJavascriptBridge) { return callback(window.WebViewMPapp || window.WebViewJavascriptBridge); } if (window.WVJBCallbacks) { return window.WVJBCallbacks.push(callback); } window.WVJBCallbacks = [callback]; if (!MMVersion.isMpapp) { return false; } if (!initJsBridge) { initJsBridge = true; var WVJBIframe = document.createElement('iframe'); WVJBIframe.style.display = 'none'; WVJBIframe.src = 'https://__bridge_loaded__'; document.body.appendChild(WVJBIframe); setTimeout(function () { initJsBridge = false; document.body.removeChild(WVJBIframe); }, 0); } return false; } function invoke$1(jsapiName, opt, callback) { connectWebViewJavascriptBridge(function (bridge) { try { if (typeof opt === 'function') { callback = opt; } if (_typeof$3(opt) !== 'object' && typeof opt !== 'string') { opt = {}; } bridge.callHandler(jsapiName, opt, function (res) { try { var ret = _typeof$3(res) === 'object' ? res : JSON.parse(res); var errMsg = ret.err_msg || ret.errMsg; console.info("[mpapp jsapi] invoke->".concat(jsapiName, " ").concat(opt.action || '', " ").concat(errMsg)); typeof callback === 'function' && callback(ret); } catch (e) { window.WX_BJ_REPORT.BadJs.report('invoke', "callback ".concat(jsapiName, " error:"), { mid: 'mmbizwebapp:js_brridge', _info: e }); console.error("[mpapp jsapi] ".concat(jsapiName, " ").concat(opt.action || ''), e, res); } }); } catch (e) { window.WX_BJ_REPORT.BadJs.report('invoke', 'callback error:', { mid: 'mmbizwebapp:js_brridge', _info: e }); console.error('[mpapp jsapi]', e); } }); } function _regeneratorRuntime$6() { _regeneratorRuntime$6 = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof$3(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } var doc$1 = {}; var isAcrossOrigin$1 = false; var notFoundedMPPageAction = []; var __moon_report$1 = window.__moon_report || function () {}; var MOON_JSAPI_KEY_OFFSET = 8; try { doc$1 = top.window.document; } catch (e) { isAcrossOrigin$1 = true; } if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; } function ready(onBridgeReady) { var bridgeReady = function bridgeReady() { try { if (onBridgeReady) { window.onBridgeReadyTime = window.onBridgeReadyTime || Date.now(); onBridgeReady(); } } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: 'ready', e: e }]); throw e; } window.jsapiReadyTime = Date.now(); }; if (!isAcrossOrigin$1 && (typeof top.window.WeixinJSBridge === 'undefined' || !top.window.WeixinJSBridge.invoke)) { if (doc$1.addEventListener) { doc$1.addEventListener('WeixinJSBridgeReady', bridgeReady, false); } else if (doc$1.attachEvent) { doc$1.attachEvent('WeixinJSBridgeReady', bridgeReady); doc$1.attachEvent('onWeixinJSBridgeReady', bridgeReady); } } else { bridgeReady(); } } var invokeNotWaitA8key = ['notifyPageInfo', 'updatePageAuth' ]; var checkNotFoundedInvoke = function checkNotFoundedInvoke(methodName, args) { if (methodName === 'handleMPPageAction' && (args === null || args === void 0 ? void 0 : args.action) && notFoundedMPPageAction.includes(args === null || args === void 0 ? void 0 : args.action)) { return true; } return false; }; function invoke(_x, _x2, _x3) { return _invoke.apply(this, arguments); } function _invoke() { _invoke = _asyncToGenerator$1( _regeneratorRuntime$6().mark(function _callee(methodName, args, callback) { return _regeneratorRuntime$6().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: if (!(window.__secPageAuthPromise && !window.__is_page_auth_ok__ && !invokeNotWaitA8key.includes(methodName))) { _context.next = 3; break; } _context.next = 3; return window.__secPageAuthPromise; case 3: ready(function () { if (isAcrossOrigin$1) return false; if (_typeof$3(top.window.WeixinJSBridge) !== 'object') { alert('请在微信中打开此链接'); return false; } if (checkNotFoundedInvoke(methodName, args)) { setTimeout(function () { if (callback) { callback.apply(window, [{ err_msg: "".concat(methodName, ":fail"), err_desc: 'action isn\'t supported' }]); } }, 0); } else { top.window.WeixinJSBridge.invoke(methodName, args, function () { try { for (var _len2 = arguments.length, rets = new Array(_len2), _key2 = 0; _key2 ".concat(ret.err_msg) : ''; if (['handleMPPageAction', 'handleVideoAction', 'handleHaokanAction'].indexOf(methodName) !== -1) { var action = (args === null || args === void 0 ? void 0 : args.action) || ''; console.info('[system]', "[jsapi] invoke->".concat(methodName, ", action->").concat(action).concat(errMsg)); } else { console.info('[system]', "[jsapi] invoke->".concat(methodName).concat(errMsg)); } if (methodName === 'handleMPPageAction' && (args === null || args === void 0 ? void 0 : args.action) && ((ret === null || ret === void 0 ? void 0 : ret.err_desc) === 'action isn\'t supported' || (ret === null || ret === void 0 ? void 0 : ret.err_msg) === 'handleMPPageAction:fail action is not supported')) { notFoundedMPPageAction.push(args === null || args === void 0 ? void 0 : args.action); } if (callback) { callback.apply(window, rets); } } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: "invoke;methodName:".concat(methodName), e: e }]); throw e; } }); } }); case 4: case "end": return _context.stop(); } }, _callee); })); return _invoke.apply(this, arguments); } function call(_x4) { return _call.apply(this, arguments); } function _call() { _call = _asyncToGenerator$1( _regeneratorRuntime$6().mark(function _callee2(methodName) { return _regeneratorRuntime$6().wrap(function _callee2$(_context2) { while (1) switch (_context2.prev = _context2.next) { case 0: if (!(window.__secPageAuthPromise && !window.__is_page_auth_ok__)) { _context2.next = 3; break; } _context2.next = 3; return window.__secPageAuthPromise; case 3: ready(function () { if (isAcrossOrigin$1) return false; if (_typeof$3(top.window.WeixinJSBridge) !== 'object') { return false; } try { top.window.WeixinJSBridge.call(methodName); } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: "call;methodName:".concat(methodName), e: e }]); throw e; } }); case 4: case "end": return _context2.stop(); } }, _callee2); })); return _call.apply(this, arguments); } function on$2(eventName, callback) { ready(function () { if (isAcrossOrigin$1) return false; if (_typeof$3(top.window.WeixinJSBridge) !== 'object' || !top.window.WeixinJSBridge.on) { return false; } if (!window.JSAPIEventCallbackMap[eventName]) { window.JSAPIEventCallbackMap[eventName] = []; } window.JSAPIEventCallbackMap[eventName].push(callback); if (window.JSAPIEventCallbackMap[eventName].length > 1) { return false; } top.window.WeixinJSBridge.on(eventName, function () { try { for (var _len = arguments.length, rets = new Array(_len), _key = 0; _key ".concat(ret.err_msg) : ''; console.info('[system]', "[jsapi] event->".concat(eventName).concat(errMsg)); if (window.JSAPIEventCallbackMap[eventName] && window.JSAPIEventCallbackMap[eventName].length) { var result; for (var i = 0; i = 0; i--) { if (window.JSAPIEventCallbackMap[eventName][i] === callback) { window.JSAPIEventCallbackMap[eventName].splice(i, 1); result = true; } } return result; }); } var R$4 = { ready: ready, invoke: invoke, call: call, on: on$2, remove: remove$1 }; function initBodyStyle() { window.scrollTo({ top: 0, behavior: 'smooth' }); setTimeout(function () { document.body.scrollTop = document.documentElement.scrollTop = 0; document.body.style.overflow = 'hidden'; }, 100); } var setRowImmersiveMode = function setRowImmersiveMode(itemShowType) { var envStr = window.__wxWebEnv && typeof window.__wxWebEnv.getEnv === 'function' && window.__wxWebEnv.getEnv(); if (!envStr) return; var envObj = {}; try { envObj = JSON.parse(envStr); } catch (err) { console.info(err); } var immersiveListMode = envObj.immersiveListMode || 0; window.__immersiveListMode = Number(immersiveListMode) === 1 ? 1 : 0; window.__rowImmersiveStream = Number(immersiveListMode) === 2 ? 1 : 0; console.log("iiiiiiimmersiveListMode", immersiveListMode, window.__immersiveListMode, window.__rowImmersiveStream); window.__test_row_immersive_list = 0; if (window.__test_row_immersive_list) { window.__rowImmersiveStream = 1; } if (window.__rowImmersiveStream) { initBodyStyle(); var rowImmersiveStreamWrap = document.getElementById('js_row_immersive_stream_wrap'); if (rowImmersiveStreamWrap) { rowImmersiveStreamWrap.style.display = 'block'; } var bottomBar = document.getElementById('js_article_bottom_bar'); if (bottomBar) { bottomBar.classList.add('row_immersive_bottom_bar'); } var immersiveStreamMask = document.getElementById('js_row_immersive_stream_mask'); var enterBigWebview = function enterBigWebview() { immersiveStreamMask.style.display = 'none'; document.body.style.overflow = 'auto'; if (bottomBar) { bottomBar.classList.add('row_immersive_bigview_bottom_bar'); } }; var exitBigWebview = function exitBigWebview() { initBodyStyle(); immersiveStreamMask.style.display = 'block'; if (bottomBar) { bottomBar.classList.remove('row_immersive_bigview_bottom_bar'); } }; immersiveStreamMask.addEventListener('click', function (e) { e.preventDefault(); e.stopPropagation(); R$4.invoke('handleImmersiveStream', { action: 'enterFullArticle', params: { enterTime: Date.now() } }, function (res) { console.log("[immersive] handleImmersiveStream:", res); if (res && res.err_msg && res.err_msg.includes('ok')) { enterBigWebview(); } if (window.__test_row_immersive_list) { setTimeout(function () { console.log("xxxxx ok"); enterBigWebview(); }, 2000); } }); }); R$4.on('immersiveStreamExposeArticle', function (res) { console.log("[immersive] immersiveStreamExposeArticle", res); }); R$4.on('immersiveStreamExitFullArticle', function (res) { console.log("[immersive] immersiveStreamExitFullArticle", res); exitBigWebview(); }); R$4.on('immersiveStreamEnterFullArticle', function (res) { console.log("[immersive] immersiveStreamEnterFullArticle", res); enterBigWebview(); }); R$4.on('immersiveStreamSlideOutArticle', function (res) { console.log("[immersive] immersiveStreamSlideOutArticle", res); exitBigWebview(); }); } }; var getIpWoridng = function getIpWoridng(ipConfig) { var ipWording = ''; if (parseInt(ipConfig.countryId, 10) === 156) { ipWording = ipConfig.provinceName; } else if (ipConfig.countryId) { ipWording = ipConfig.countryName; } return ipWording; }; var __setIpWording = function __setIpWording(ipConfig, userInfo, itemShowType) { var ipWrp = document.getElementById('js_ip_wording_wrp'); var ipWording = document.getElementById('js_ip_wording'); if (ipConfig) { window.ip_wording = { countryName: ipConfig.country_name, countryId: ipConfig.country_id, provinceName: ipConfig.province_name }; } if (userInfo && userInfo.isoversea) { window.is_over_sea = parseInt(userInfo.isoversea, 10); } if (window.ip_wording && ipWrp && ipWording && window.is_over_sea !== 1) { var ipWordingDisplay = getIpWoridng(window.ip_wording); if (ipWordingDisplay !== '') { ipWording.innerHTML = ipWordingDisplay; ipWrp.setAttribute('aria-label', ipWordingDisplay); ipWrp.style.display = 'inline-block'; } } if (+itemShowType === 0) ipWrp && ipWrp.style.display == 'none' && ipWrp.parentNode.removeChild(ipWrp); }; var __setTitleModify = function __setTitleModify(isTitleModified) { var wrp = document.getElementById('js_title_modify_wrp'); var titleModifyNode = document.getElementById('js_title_modify'); if (!wrp) return; if (isTitleModified || window.is_title_modified) { titleModifyNode.innerHTML = '标题已修改'; wrp.style.display = 'inline-block'; } else { wrp.parentNode.removeChild(wrp); } }; function setProfileName() { var ua = window.navigator.userAgent; if (/wxwork/i.test(ua)) { var profileName = document.getElementById('js_name'); var authorName = document.getElementById('js_author_name'); var accountNames = document.getElementsByClassName('account_nickname_inner'); if (profileName) { profileName.classList.add('tips_global_primary'); } if (authorName) { authorName.classList.add('tips_global_primary'); } if (accountNames && accountNames.length) { accountNames[0].classList.add('tips_global_primary'); } } } var __setTitle = function __setTitle(showTitle, itemShowType) { var dom = document.getElementById('activity-name'); if (+itemShowType === 5) dom = document.getElementById('js_video_page_title');else if (+itemShowType === 7) dom = document.getElementById('js_audio_title');else if (+itemShowType === 10) dom = document.getElementById('js_text_title'); if (!dom) return; var title = showTitle; if (showTitle.indexOf('——') > -1) { var replaceHtml = '——'; showTitle = showTitle.replace(/——/g, replaceHtml); } if (typeof window.__emojiFormat === 'function') { var emojiTitle = window.__emojiFormat(showTitle); showTitle = emojiTitle; } if (dom) { if (dom.innerHTML) dom.innerHTML = dom.innerHTML.replace(title, showTitle);else dom.innerHTML = showTitle; } }; var __isNewNovelCardStyle = function __isNewNovelCardStyle() { return true; }; var __setNovelCard = function __setNovelCard(novelCardInfo, userInfo, uin) { var dom = document.getElementById('js_novel_card'); if (!dom) return; try { var cardData; if (typeof novelCardInfo === 'string') { cardData = JSON.parse(novelCardInfo); } else { cardData = novelCardInfo; } if (!cardData || cardData.is_wxa_novel === 0 || cardData.is_wxa_novel === 'false' || !userInfo.show_novel_link) { dom.style.display = 'none'; return; } var titleDom, _coverDom; if (__isNewNovelCardStyle(uin)) { var subtitleDom = dom.querySelector('#js_novel_subtitle'); if (subtitleDom) { var _window$cgiDataNew; subtitleDom.textContent = (((_window$cgiDataNew = window.cgiDataNew) === null || _window$cgiDataNew === void 0 ? void 0 : _window$cgiDataNew.title) || '').htmlDecode(); ; } var coverDom = dom.querySelector('#js_novel_cover img'); if (coverDom) { coverDom.src = cardData.novel_cover; } } dom.style.display = 'flex'; } catch (error) { console.error('设置小说卡片失败:', error); dom.style.display = 'none'; } }; var _Speed = {}; var _userDefine; var _imgurl = 'https://badjs.weixinbridge.com/frontend/reportspeed?'; function saveSpeeds$1(obj) { if (!obj.pid || !obj.speeds) { return -1; } if (!Array.isArray(obj.speeds)) { obj.speeds = [obj.speeds]; } if (obj.user_define) { _userDefine = obj.user_define; } var pid_uin_rid = _conbinUPRid(obj); for (var i = 0; i 20 && os.time >= 0) _setSidTime(pid_uin_rid, os.sid, os.time); } } function send$1() { _doFunc(function () { setTimeout(function () { for (var item in _Speed) { _get({ pid_uin_rid: item, speeds: _Speed[item], user_define: _userDefine }, _imgurl); } _Speed = {}; }, 100); }); } function setFirstViewTime(obj) { _doFunc(function () { if (!obj.pid || !obj.time) return -1; var pid_uin_rid = _conbinUPRid(obj); _setSidTime(pid_uin_rid, 9, obj.time); }); } function setBasicTime$1(obj) { _doFunc(function () { var pid_uin_rid = _conbinUPRid(obj); if (!_Speed[pid_uin_rid]) _Speed[pid_uin_rid] = []; var performance = window.performance || window.msPerformance || window.webkitPerformance || {}; if (!!performance && !!performance.timing) { var timing = performance.timing || {}; _setSidTime(pid_uin_rid, 1, timing.domainLookupEnd - timing.domainLookupStart); _setSidTime(pid_uin_rid, 2, location.protocol == "https:" && timing.secureConnectionStart != 0 ? timing.connectEnd - timing.secureConnectionStart : 0); _setSidTime(pid_uin_rid, 3, timing.connectEnd - timing.connectStart); _setSidTime(pid_uin_rid, 4, timing.responseStart - timing.requestStart); _setSidTime(pid_uin_rid, 5, timing.responseEnd - timing.responseStart); _setSidTime(pid_uin_rid, 6, timing.domContentLoadedEventStart - timing.domLoading); _setSidTime(pid_uin_rid, 7, timing.domComplete == 0 ? 0 : timing.domComplete - timing.domLoading); _setSidTime(pid_uin_rid, 8, timing.loadEventEnd == 0 ? 0 : timing.loadEventEnd - timing.loadEventStart); (function (_Speed) { setTimeout(function () { if (timing.loadEventEnd) { _setSidTime(pid_uin_rid, 7, timing.domComplete == 0 ? 0 : timing.domComplete - timing.domLoading); _setSidTime(pid_uin_rid, 8, timing.loadEventEnd == 0 ? 0 : timing.loadEventEnd - timing.loadEventStart); } }, 0); })(); if (!_Speed[pid_uin_rid][9]) _setSidTime(pid_uin_rid, 9, timing.domContentLoadedEventStart - timing.navigationStart); _setSidTime(pid_uin_rid, 10, timing.redirectEnd - timing.redirectStart); _setSidTime(pid_uin_rid, 11, timing.domainLookupStart - timing.fetchStart); _setSidTime(pid_uin_rid, 12, timing.domLoading - timing.responseStart); } }); } function _setSidTime(pid_uin_rid, sid, time) { _Speed[pid_uin_rid] = _Speed[pid_uin_rid] || []; _Speed[pid_uin_rid][sid] = _Speed[pid_uin_rid][sid] || []; if (time = 0) continue; target[key] = source[key]; } return target; } function formatDataToString(data) { var reportData = []; for (var key in data) { if (Object.prototype.hasOwnProperty.call(data, key)) { reportData.push(key + '=' + encodeURIComponent(data[key])); } } return reportData.join('&'); } monitor.getReportData = function (opt) { opt = opt || {}; var idkey = monitor._reportOptions.idkey || {}; var key = null; var reportData = {}; var nextKey; try { for (key in idkey) { if (Object.prototype.hasOwnProperty.call(idkey, key) && idkey[key]) { reportLogs.push(key + '_' + idkey[key]); } } } catch (e) { return false; } if (reportLogs.length === 0) { return false; } if (reportExtraLogs.length) { reportData.lc = reportExtraLogs.length; reportExtraLogs.forEach(function (extraLog, index) { reportData["log".concat(index)] = extraLog; }); } try { var reportOptions = monitor._reportOptions; if (reportOptions !== null && reportOptions !== undefined) { for (nextKey in reportOptions) { if (Object.prototype.hasOwnProperty.call(reportOptions, nextKey)) { reportData[nextKey] = reportOptions[nextKey]; } } } } catch (e) { reportData = {}; } reportData.idkey = reportLogs.join(';'); reportData.t = Math.random(); if (opt.remove !== false) { reportLogs = []; reportExtraLogs = []; monitor._reportOptions = { idkey: {} }; } return reportData; }; monitor.setLogs = function (opt) { var id = opt.id; var key = opt.key; var value = opt.value; var extraLog = opt.log; var others = ObjWithoutProperty(opt, ['id', 'key', 'value', 'log']); var idkey = monitor._reportOptions.idkey || {}; var param = id + '_' + key; if (idkey[param]) { idkey[param] += value; } else { idkey[param] = value; } monitor._reportOptions.idkey = idkey; if (extraLog) { reportExtraLogs.push(extraLog); } try { if (others !== null && others !== undefined) { for (var otherKey in others) { if (Object.prototype.hasOwnProperty.call(others, otherKey)) { monitor._reportOptions[otherKey] = others[otherKey]; } } } } catch (e) { console.log(e); } return monitor; }; monitor.setAvg = function (id, key, value) { var idkey = monitor._reportOptions.idkey || {}; var param1 = id + '_' + key; var param2 = id + '_' + (key - 1); if (idkey[param1]) { idkey[param1] += value; } else { idkey[param1] = value; } if (idkey[param2]) { idkey[param2] += 1; } else { idkey[param2] = 1; } monitor._reportOptions.idkey = idkey; return monitor; }; monitor.setSum = function (id, key) { var value = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1; var idkey = monitor._reportOptions.idkey; var param = id + '_' + key; if (idkey[param]) { idkey[param] += value; } else { idkey[param] = value; } monitor._reportOptions.idkey = idkey; return monitor; }; monitor.send = function (async, ajax, origin) { if (async !== false) { async = true; } var data = monitor.getReportData(); origin = origin || ''; if (!data) { return; } if (!!ajax && ajax instanceof Function) { ajax({ url: origin + sendUrl, type: 'POST', mayAbort: true, data: data, async: async, timeout: 2000, dontReport: true }); } else { new Image().src = origin + '/mp/jsmonitor?' + formatDataToString(data) + '#wechat_redirect'; } }; if (typeof window !== 'undefined' && window.__monitor) { monitor = window.__monitor; } else { typeof window !== 'undefined' && (window.__monitor = monitor); } var monitor$1 = monitor; function _toPrimitive(input, hint) { if (_typeof$3(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof$3(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof$3(key) === "symbol" ? key : String(key); } function _defineProperty$1(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } var Device = {}; function detect(ua) { var MQQBrowser = ua.match(/MQQBrowser\/(\d+\.\d+)/i); var MQQClient = ua.match(/QQ\/(\d+\.(\d+)\.(\d+)\.(\d+))/i) || ua.match(/V1_AND_SQ_([\d\.]+)/); var WeChat = ua.match(/MicroMessenger\/((\d+)\.(\d+))\.(\d+)/) || ua.match(/MicroMessenger\/((\d+)\.(\d+))/); var MacOS = ua.match(/Mac\sOS\sX\s(\d+[\.|_]\d+)/); var WinOS = ua.match(/Windows(\s+\w+)?\s+?(\d+\.\d+)/); var Linux = ua.match(/Linux\s/); var MiuiBrowser = ua.match(/MiuiBrowser\/(\d+\.\d+)/i); var M1 = ua.match(/MI-ONE/); var MIPAD = ua.match(/MI PAD/); var UC = ua.match(/UCBrowser\/(\d+\.\d+(\.\d+\.\d+)?)/) || ua.match(/\sUC\s/); var IEMobile = ua.match(/IEMobile(\/|\s+)(\d+\.\d+)/) || ua.match(/WPDesktop/); var ipod = ua.match(/(ipod).*\s([\d_]+)/i); var ipad = ua.match(/(ipad).*\s([\d_]+)/i); var iphone = ua.match(/(iphone)\sos\s([\d_]+)/i); var Chrome = ua.match(/Chrome\/(\d+\.\d+)/); var AndriodBrowser = ua.match(/Mozilla.*Linux.*Android.*AppleWebKit.*Mobile Safari/); var android = ua.match(/(android)\s([\d\.]+)/i); var harmony = ua.match(/(OpenHarmony)\s([\d\.]+)/i); Device.browser = Device.browser || {}, Device.os = Device.os || {}; Device.os.type = -1; Device.os.unifiedPC = ua.match(/UnifiedPC/); Device.os.unifiedMac = /UnifiedPCMac/i.test(ua); Device.os.unifiedWindows = /UnifiedPCWindows/i.test(ua); if (window.ActiveXObject) { var vie = 6; (window.XMLHttpRequest || ua.indexOf('MSIE 7.0') > -1) && (vie = 7); (window.XDomainRequest || ua.indexOf('Trident/4.0') > -1) && (vie = 8); ua.indexOf('Trident/5.0') > -1 && (vie = 9); ua.indexOf('Trident/6.0') > -1 && (vie = 10); Device.browser.ie = true, Device.browser.version = vie; } else if (ua.indexOf('Trident/7.0') > -1) { Device.browser.ie = true, Device.browser.version = 11; } if (android) { Device.os.android = true; Device.os.version = android[2]; Device.os.type = 2; } if (harmony) { Device.os.harmony = true; Device.os.version = harmony[2]; Device.os.type = 42; } if (ipod) { Device.os.ios = Device.os.ipod = true; Device.os.version = ipod[2].replace(/_/g, '.'); } if (ipad) { Device.os.ios = Device.os.ipad = true; Device.os.version = ipad[2].replace(/_/g, '.'); Device.os.type = 13; } if (iphone) { Device.os.iphone = Device.os.ios = true; Device.os.version = iphone[2].replace(/_/g, '.'); Device.os.type = 1; } if (WinOS) Device.os.windows = true, Device.os.version = WinOS[2], Device.os.type = 15; if (MacOS) Device.os.Mac = true, Device.os.version = MacOS[1], Device.os.type = 14; if (Linux) Device.os.Linux = true, Device.os.type = 33; if (ua.indexOf('lepad_hls') > 0) Device.os.LePad = true; if (MIPAD) Device.os.MIPAD = true; if (MQQBrowser) Device.browser.MQQ = true, Device.browser.version = MQQBrowser[1]; if (MQQClient) Device.browser.MQQClient = true, Device.browser.version = MQQClient[1]; if (WeChat) Device.browser.WeChat = true, Device.browser.mmversion = Device.browser.version = WeChat[1]; if (MiuiBrowser) Device.browser.MIUI = true, Device.browser.version = MiuiBrowser[1]; if (UC) Device.browser.UC = true, Device.browser.version = UC[1] || NaN; if (IEMobile) Device.browser.IEMobile = true, Device.browser.version = IEMobile[2]; if (AndriodBrowser) { Device.browser.AndriodBrowser = true; } if (M1) { Device.browser.M1 = true; } if (Chrome) { Device.browser.Chrome = true, Device.browser.version = Chrome[1]; } if (Device.os.windows) { if (typeof navigator.platform !== "undefined" && navigator.platform.toLowerCase() == "win64") { Device.os.win64 = true; } else { Device.os.win64 = false; } } if (Device.os.Mac || Device.os.windows || Device.os.Linux || Device.os.unifiedPC || /OpenHarmony/i.test(ua) && /pc/i.test(ua)) { Device.os.pc = true; } var osType = { iPad7: 'iPad; CPU OS 7', LePad: 'lepad_hls', XiaoMi: 'MI-ONE', SonyDTV: "SonyDTV", SamSung: 'SAMSUNG', HTC: 'HTC', VIVO: 'vivo' }; for (var os in osType) { Device.os[os] = ua.indexOf(osType[os]) !== -1; } Device.os.phone = Device.os.phone || /windows phone/i.test(ua); Device.os.getNumVersion = function () { return parseFloat(Device.os.version); }; Device.os.hasTouch = 'ontouchstart' in window; if (Device.os.hasTouch && Device.os.ios && Device.os.getNumVersion() = 3.0; }; Device.browser.isCanOcx = function () { return !!Device.os.windows && (!!Device.browser.ie || Device.browser.isFFCanOcx() || !!Device.browser.webkit); }; Device.browser.isNotIESupport = function () { return !!Device.os.windows && (!!Device.browser.webkit || Device.browser.isFFCanOcx()); }; Device.userAgent = {}; Device.userAgent.browserVersion = Device.browser.version; Device.userAgent.osVersion = Device.os.version; if (Device.os.unifiedPC) { if (Device.os.unifiedWindows) Device.os.type = 37;else if (Device.os.unifiedMac) Device.os.type = 38;else Device.os.type = 39; } delete Device.userAgent.version; } detect(window.navigator.userAgent); function canSupportH5Video() { var ua = window.navigator.userAgent, m = null; if (!!Device.os.android) { if (Device.browser.MQQ && Device.browser.getNumVersion() >= 4.2) { return true; } if (ua.indexOf('MI2') != -1) { return true; } if (Device.os.version >= '4' && (m = ua.match(/MicroMessenger\/((\d+)\.(\d+))\.(\d+)/))) { if (parseFloat(m[1]) >= 4.2) { return true; } } if (Device.os.version >= '4.1') { return true; } } return false; } function canSupportVideoMp4() { var video = document.createElement('video'); if (typeof video.canPlayType === 'function') { if (video.canPlayType('video/mp4; codecs="mp4v.20.8"') === 'probably') { return true; } if (video.canPlayType('video/mp4; codecs="avc1.42E01E"') === 'probably' || video.canPlayType('video/mp4; codecs="avc1.42E01E, mp4a.40.2"') === 'probably') { return true; } } return false; } function canSupportAutoPlay() { if (Device.os.ios && Device.os.getNumVersion() 1 && arguments[1] !== undefined ? arguments[1] : 0; var canEqual = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var nowVersionStr = Device.os.version; if (!nowVersionStr) return false; var versionArr = version.split('.'); var nowVersionArr = nowVersionStr.split('.'); for (var i = 0; i 0) return vi > nvi; if (cp arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i d2.exp) return 1; return 0; }); var memCnt = 0; for (var i = 0; i = size) break; var key = keys[i]; memCnt += JSON.stringify(data[key]).length; delete data[key]; } return data; }, 'clear-all': function clearAll() { localStorage$1.clear(); return {}; } }; function formatLogMsg(str) { return "[WXLS] ".concat(str); } var LS = function () { function LS(func, evictionPolicy, logger) { _classCallCheck$1(this, LS); this.logger = function () {}; if (!func) throw 'require function name.'; this.evictionPolicy = 'noeviction'; this.key = func; if (typeof logger === 'function') { this.logger = function (str, type) { return logger(formatLogMsg(str), type); }; } if (evictionPolicy && Object.keys(evictionPolicies).indexOf(evictionPolicy) !== -1) { this.evictionPolicy = evictionPolicy; } this.init(); } _createClass$1(LS, [{ key: "init", value: function init() { var _a, _b; this.check(); if (Math.random() * 1000 now) { temp[key] = val; } } this.logger("check info: isReturn:".concat(isReturn, " data:").concat(JSON.stringify(temp)), 'info'); if (isReturn) return temp; LS.setItem(this.key, JSON.stringify(temp), this.logger); } }, { key: "set", value: function set(key, val, exp) { var _a, _b; var data = this.check(true); data[key] = { val: val, exp: exp || +new Date() }; try { if (localStorage$1.getItem(prefix + this.key)) localStorage$1.removeItem(prefix + this.key); localStorage$1.setItem(prefix + this.key, JSON.stringify(data)); this.logger("first set success: LSlen:".concat((_a = window === null || window === void 0 ? void 0 : window.localStorage) === null || _a === void 0 ? void 0 : _a.length, " key:").concat(prefix + this.key, " data:").concat(JSON.stringify(data)), 'success'); } catch (e) { this.logger("first set error: LSlen:".concat((_b = window === null || window === void 0 ? void 0 : window.localStorage) === null || _b === void 0 ? void 0 : _b.length, " error:").concat(e, " key:").concat(prefix + this.key, " data:").concat(JSON.stringify(data), " k:").concat(key, " v:").concat(val, " exp:").concat(exp), 'error'); localStorage$1.clear(); LS.setItem(this.key, JSON.stringify(_defineProperty$1({}, key, { val: val, exp: exp || +new Date() })), this.logger); } } }, { key: "get", value: function get(key) { var data = this.getData(); data = data[key]; return data ? data.val || null : null; } }, { key: "remove", value: function remove(key) { var data = this.getData(); if (data[key]) delete data[key]; LS.setItem(this.key, JSON.stringify(data), this.logger); } }], [{ key: "getItem", value: function getItem(key) { key = prefix + key; return localStorage$1.getItem(key); } }, { key: "setItem", value: function setItem(key, val, logger) { var _a, _b; key = prefix + key; var n = 3; while (n--) { try { if (localStorage$1.getItem(key)) localStorage$1.removeItem(key); localStorage$1.setItem(key, val); typeof logger === 'function' && logger("setItem success: LSlen:".concat((_a = window === null || window === void 0 ? void 0 : window.localStorage) === null || _a === void 0 ? void 0 : _a.length, " key:").concat(key, " val:").concat(val), 'success'); break; } catch (e) { typeof logger === 'function' && logger("setItem error: LSlen:".concat((_b = window === null || window === void 0 ? void 0 : window.localStorage) === null || _b === void 0 ? void 0 : _b.length, " error:").concat(e, " key:").concat(key, " val:").concat(val), 'error'); LS.clear(); } } } }, { key: "clear", value: function clear() { var i; var k; for (i = localStorage$1.length - 1; i >= 0; i--) { k = localStorage$1.key(i); if (k.indexOf(prefix) == 0) { localStorage$1.removeItem(k); } } } }, { key: "getSupportEvicationPolicy", value: function getSupportEvicationPolicy() { return Object.keys(evictionPolicies); } }]); return LS; }(); var innerVersion = (MMVersion.getInner() || '').toUpperCase(); var getBizLS = new LS('get_biz_result'); var bizMap = {}; function getBiz(needCheckBiz, bizType) { var _a; if (needCheckBiz === void 0) { needCheckBiz = false; } if (bizType === void 0) { bizType = ((_a = window.cgiDataNew) === null || _a === void 0 ? void 0 : _a.biz_type) || 1; } return new Promise(function (resolve, reject) { if (needCheckBiz || bizMap[bizType] === undefined) { if (!MMVersion.isOnlyWechat || MMVersion.isIOS && innerVersion -1) { bizMap[bizType] = res.biz; resolve(res.biz); getBizLS.set("".concat(bizType, "_get_biz_result"), res.biz, +new Date() + 3 * 24 * 60 * 60 * 1000); } else { reject('Failed to get biz'); } }); } } else { resolve(bizMap[bizType]); } }); } var getIsAuthor = function getIsAuthor(cb, bizuin, needCheckBiz, bizType) { var _a; if (bizuin === void 0) { bizuin = window.biz; } if (needCheckBiz === void 0) { needCheckBiz = false; } if (bizType === void 0) { bizType = ((_a = window.cgiDataNew) === null || _a === void 0 ? void 0 : _a.biz_type) || 1; } getBiz(needCheckBiz, bizType).then(function (biz) { cb(biz && biz === bizuin); })["catch"](function () { cb(false); }); }; function parseUrl$1(url) { var len = url.length; var ques_pos = url.indexOf('?'); var hash_pos = url.indexOf('#'); hash_pos = hash_pos == -1 ? len : hash_pos; ques_pos = ques_pos == -1 ? hash_pos : ques_pos; var host = url.substring(0, ques_pos); var query_str = url.substring(ques_pos + 1, hash_pos); var hash = url.substring(hash_pos + 1); return { host: host, query_str: query_str, hash: hash }; } function join(url, args, noEncode) { var ret = parseUrl$1(url); var query_str = ret.query_str; var args_arr = []; if (_typeof$3(args) === 'object') { for (var key in args) { if (args.hasOwnProperty(key)) { args_arr.push("".concat(key, "=").concat(noEncode ? args[key] : encodeURIComponent(args[key]))); } } } else { args_arr.push(noEncode ? args : encodeURIComponent(args)); } if (args_arr.length > 0) { query_str += (query_str !== "" ? "&" : "") + args_arr.join("&"); } return ret.host + (query_str !== "" ? "?".concat(query_str) : "") + (ret.hash !== "" ? "#".concat(ret.hash) : ""); } function addParam(url, param, value, forceReplace) { url = url || location.href; var firstAndPos = url.indexOf("&"); var len = url.length; var reverseUrl = url.replace(/^[\w\d]+:[/\\]+/g, "").split("").reverse(); if (!Array.prototype.indexOf) { Array.prototype.indexOf = function (searchElement, fromIndex) { var k; if (this == null) { throw new TypeError('"this" is null or not defined'); } var O = Object(this); var len = O.length >>> 0; if (len === 0) { return -1; } var n = fromIndex || 0; if (Math.abs(n) === Infinity) { n = 0; } if (n >= len) { return -1; } k = Math.max(n >= 0 ? n : len - Math.abs(n), 0); while (k lastSlashPos) { url = url.replace("&", "?"); } var reg = new RegExp("([\\?&]".concat(param, "=)[^&#]*")); if (!url.match(reg)) { var urlInfo = parseUrl$1(url); var hash = urlInfo.hash ? '#' + urlInfo.hash : ''; url = url.replace(hash, ''); var _pos = url.indexOf("?"); if (_pos == -1) { return "".concat(url, "?").concat(param, "=").concat(value).concat(hash); } if (_pos == url.length - 1) { return "".concat(url + param, "=").concat(value).concat(hash); } return "".concat(url, "&").concat(param, "=").concat(value).concat(hash); } if (forceReplace === true) { return url.replace(reg, "$1".concat(value)); } return url; } function addWxfrom(src, wxfrom) { var offset = window.service_type === 1 ? 10000 : 0; return addParam(src, 'wxfrom', offset + Number(wxfrom), true); } function removeParam(url, param) { var _URL = new URL(url), protocol = _URL.protocol, host = _URL.host, pathname = _URL.pathname, search = _URL.search, hash = _URL.hash; var queryParams = new URLSearchParams(search); queryParams["delete"](param); var newSearch = queryParams.toString(); var newUrl = new URL("".concat(protocol, "//").concat(host).concat(pathname).concat(newSearch ? "?".concat(decodeURIComponent(newSearch)) : "").concat(hash)); return newUrl.toString(); } function getQuery$1(name, url) { var u = url || window.location.search; var reg = new RegExp("(^|&)".concat(name, "=([^&]*)(&|$)")); var r = u.substring(u.indexOf('?') + 1).match(reg); return r !== null ? r[2] : ''; } function encodeBase64(value) { try { return window.btoa(value); } catch (e) { return ''; } } function decodeBase64(value) { try { return window.atob(value); } catch (e) { return ''; } } function joinUrl$1(url) { var obj = {}; if (typeof window.uin !== 'undefined') { obj.uin = window.uin; } if (typeof window.key !== 'undefined') { obj.key = window.key; } if (typeof window.pass_ticket !== 'undefined') { obj.pass_ticket = window.pass_ticket; } if (typeof window.wxtoken !== 'undefined') { obj.wxtoken = window.wxtoken; } if (typeof window.devicetype !== 'undefined') { obj.devicetype = window.devicetype; } if (typeof window.clientversion !== 'undefined') { obj.clientversion = window.clientversion || MMVersion.getInner(); } obj.version = obj.clientversion; if (window.biz) { obj.__biz = window.biz; } if (getQuery$1('enterid')) { obj.enterid = getQuery$1('enterid'); } if (typeof window.appmsg_token !== 'undefined') { obj.appmsg_token = window.appmsg_token; } else if (url.indexOf('advertisement_report') > -1) { new Image().src = "".concat(location.protocol, "//mp.weixin.qq.com/mp/jsmonitor?idkey=68064_13_1&r=").concat(Math.random()); } obj.x5 = navigator.userAgent.indexOf('TBS/') !== -1 ? '1' : '0'; obj.f = 'json'; return join(url, obj); } function joinUserArticleRole(url, notJoin, cb) { var bizuin = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : window.biz; var needCheckBiz = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false; if (notJoin) { cb(url); } else { getIsAuthor(function (isAuthor) { cb(addParam(url, 'user_article_role', isAuthor ? 1 : 0, true)); }, bizuin, needCheckBiz); } } function getA8keyQuery(name, url) { return new Promise(function (resolve) { if (window.__secPageAuthPromise) { window.__secPageAuthPromise.then(function () { resolve(getQuery$1(name, url)); }); } else { resolve(getQuery$1(name, url)); } }); } function addHash(url, hash) { var isReplace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; if (isReplace) { return "".concat(url.split('#')[0]).concat(hash); } return "".concat(url).concat(url.indexOf('#') === -1 ? '#' : '').concat(hash); } function decodeUrl(url) { var _url = url; while (_url.indexOf('&') !== -1) { _url = _url.htmlDecode(); } return _url; } var Url = { parseUrl: parseUrl$1, join: join, addParam: addParam, addWxfrom: addWxfrom, addHash: addHash, getQuery: getQuery$1, getA8keyQuery: getA8keyQuery, encodeBase64: encodeBase64, decodeBase64: decodeBase64, joinUrl: joinUrl$1, joinUserArticleRole: joinUserArticleRole, removeParam: removeParam, decodeUrl: decodeUrl }; var _a; var doc; var isAcrossOrigin = false; try { doc = (_a = window.top) === null || _a === void 0 ? void 0 : _a.window.document; } catch (e) { isAcrossOrigin = true; } var StatusTextMap = { 200: 'OK', 302: 'Found', 400: 'Bad Request', 500: 'Internal Server Error' }; function getIsAcrossOrigin() { return isAcrossOrigin; } function networkStartLog(item) { var _a, _b, _c, _d, _e; console.log('[system]', " [response ".concat(item.requestType, "]"), item.url, item.response, item); if (item.rdevRequestId && ((_b = (_a = window.RemoteDevSdk) === null || _a === void 0 ? void 0 : _a.instance) === null || _b === void 0 ? void 0 : _b.Network) && item.id !== '__system_log__') { try { var finishedOptions = { requestId: item.rdevRequestId, url: item.url, status: +(item.status || '500'), statusText: StatusTextMap[+(item.status || '500')] || 'Error', responseHeaders: { RDEV_RESPONSE_TYPE: item.requestType }, responseBody: item.response, requestTime: item.requestTime || 0, duration: item.costTime || (item.endTime && item.startTime ? item.endTime - item.startTime : performance.now() / 1000 - (item.requestTime || 0)) }; window.RemoteDevSdk.instance.Network.customRequestFinished(finishedOptions); } catch (err) {} } if (((_c = window.vConsole) === null || _c === void 0 ? void 0 : _c.network) && item.id !== '__system_log__') { try { item.statusText = "".concat(item.status); item.responseSize = item.response.length; item.responseSizeText = "".concat(item.response.length); return (_e = (_d = window.vConsole.network).update) === null || _e === void 0 ? void 0 : _e.call(_d, item.id, Object.assign({}, item, { readyState: 4 })); } catch (err) {} } } function reqType(obj, path) { return obj.url.indexOf(path) > -1 && obj.url.indexOf('action=') === -1 && (!obj.data || !obj.data.action); } function findAjaxScopeByConfig(url, config) { var pathname = new URL(url, location.href).pathname || ''; var scope = config[pathname.slice(1)]; if (scope) { return scope; } } function getAjaxScope(ajaxUrl) { if (Url.getQuery('no_transfer', location.href) !== '1' && MMVersion.isWechat && !MMVersion.isInMiniProgram && !MMVersion.isWxWork && !MMVersion.isMpapp && !isAcrossOrigin && window.__ajaxTransferConfig && _typeof$3(window.__ajaxTransferConfig) === 'object' && ( MMVersion.isIOS && MMVersion.compareHexVersion('1800282F') || MMVersion.isAndroid && MMVersion.compareHexVersion('28002234') || MMVersion.isWindowsWechat && MMVersion.cpVersion('3.9.5', 1, true, 'windows') || MMVersion.isMacWechat && MMVersion.cpVersion('3.8.4', 1, true, 'mac') || MMVersion.isHarmonyWechat && MMVersion.compareHexVersion('0xf3100b00') && !MMVersion.compareHexVersion('0xf3100c00') || MMVersion.compareHexVersion('0xf3800b00'))) { try { return findAjaxScopeByConfig(ajaxUrl, window.__ajaxTransferConfig); } catch (err) { } } } function getActionByData(data) { var _a, _b; if (_typeof$3(data) === 'object' && !(data instanceof Blob)) { if (data.hasOwnProperty('data') && typeof data.data === 'string') { try { var workedData = JSON.parse(data.data); return workedData.action || ''; } catch (e) {} } return data.action || ''; } if (typeof data === 'string') { return ((_b = (_a = data.split(/[?&]/).find(function (x) { return x.indexOf('action=') >= 0; })) === null || _a === void 0 ? void 0 : _a.split('=')) === null || _b === void 0 ? void 0 : _b[1]) || ''; } return ''; } var METHOD_ENUM = { GET: 0, POST: 1 }; var __moon_report = window.__moon_report || function () {}; var MOON_AJAX_SUCCESS_OFFSET = 3; var MOON_AJAX_NETWORK_OFFSET = 4; var MOON_AJAX_ERROR_OFFSET = 5; var MOON_AJAX_TIMEOUT_OFFSET = 6; var MOON_AJAX_COMPLETE_OFFSET = 7; var LENGTH_LIMIT = 4096; function reportRtError(type, id, key, content) { var log = ''; var prefix = type === 'rt' ? 'rtCheckError' : 'Ajax Length Limit'; if (content === null || content === void 0 ? void 0 : content.length) { var loglen = 1000; var len = content.length; var lc = Math.ceil(len / loglen); log = ["&lc=".concat(lc)]; for (var i = 0; i = 200 && retryStatus 0 ? 'json' : undefined }); var isTimeout = false; handleReqTimeout({ abort: function abort() { isTimeout = true; reqLogItem.endTime = Date.now(); reqLogItem.response = 'timeout'; networkEndLog(reqLogItem); } }); Device.os.pc && monitor$1.setSum(115849, 69, 1); R$4.invoke(Device.os.pc ? 'H5ExtTransfer' : 'webTransfer', params, function (res) { var _a, _b, _c, _d, _e, _f; if (isTimeout) return; var status = 400; var result = ''; if (Device.os.pc) { try { var retFlag = res.base_resp.ret === 0 && res.jsapi_resp.ret === 0 && res.err_msg.indexOf(':ok') > -1; var respJsonFlag = res.jsapi_resp.resp_json; status = retFlag && respJsonFlag ? 200 : 400; result = res.jsapi_resp.resp_json; } catch (err) { console.error(err); } } else { status = res && res.errCode * 1 === 0 && typeof res.result === 'string' && res.result ? 200 : 400; result = res.result; } try { Log.log("ajax transfer, status: ".concat(status, ", reqUrl: ").concat(reqUrl)); } catch (err) { console.error(err); } if (status >= 200 && status -1 && retryStatus >= 200 && retryStatus = 200 && status LENGTH_LIMIT) { reportAjaxLength(27613, 17, "ajax get limit[length: ".concat(url.length, "]").concat(url.substring(0, 1024))); } if (data && !(data instanceof Blob) && data.length > LENGTH_LIMIT) { reportAjaxLength(27613, 18, "ajax post limit[length: ".concat(data.length, "]").concat(data.substring(0, 1024))); } if (data && data instanceof Blob && data.size > LENGTH_LIMIT) { reportAjaxLength(27613, 18, "ajax post limit[length: ".concat(data.size, "]blob")); } } catch (e) { } } catch (e) { obj.error && obj.error(xhr, { type: 3, error: e, status: 0 }); } beforeReq(); }); } var photoAccountsEnv = null; var getEnv = function getEnv() { var forceUpdate = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false; if (window.__wxWebEnv && (!photoAccountsEnv || forceUpdate)) { try { photoAccountsEnv = window.__wxWebEnv && typeof window.__wxWebEnv.getEnv === 'function' && window.__wxWebEnv.getEnv(); photoAccountsEnv = photoAccountsEnv ? JSON.parse(photoAccountsEnv) : undefined; } catch (error) { photoAccountsEnv = undefined; console.error('photo accounts env error', error); } } return photoAccountsEnv; }; var isPcDebugVersion = MMVersion.isWindowsWechat && MMVersion.compareHexVersion('0xf2550000') || MMVersion.isMacWechat && MMVersion.compareHexVersion('0xf2650000'); var photoAccountsEnableforC = function photoAccountsEnableforC() { var _a, _b, _c, _d; return ((_b = (_a = getEnv()) === null || _a === void 0 ? void 0 : _a.photoAccount) === null || _b === void 0 ? void 0 : _b.supportViewPhotoAcct) === 1 || MMVersion.isPcWechat && ((_d = (_c = window.cgiDataNew) === null || _c === void 0 ? void 0 : _c.user_info) === null || _d === void 0 ? void 0 : _d.support_view_photo_acct) || isPcDebugVersion || MMVersion.isWxWork; }; var photoAccountsEnableProfileExt = function photoAccountsEnableProfileExt() { var _a, _b, _c, _d; return ((_b = (_a = window.cgiDataNew) === null || _a === void 0 ? void 0 : _a.user_info) === null || _b === void 0 ? void 0 : _b.support_view_photo_profileext) || ((_d = (_c = window.cgiData) === null || _c === void 0 ? void 0 : _c.user_info) === null || _d === void 0 ? void 0 : _d.support_view_photo_profileext) || MMVersion.isWxWork; }; var notSupportPhotoAccountsToast = function notSupportPhotoAccountsToast() { R$4.invoke('openUrlWithExtraWebview', { url: 'https://mp.weixin.qq.com/mp/readtemplate?t=wxversion/index&for=photoAccount#wechat_redirect', openType: 1 }); }; var supportPhotoAccounts = function supportPhotoAccounts() { var needTips = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true; if (photoAccountsEnableforC()) { return true; } else { needTips && notSupportPhotoAccountsToast(); return false; } }; var getBizAttrName = function getBizAttrName(serviceType, platform, phAccountDefault) { var _a; if (serviceType === void 0) { serviceType = ((_a = window.cgiDataNew) === null || _a === void 0 ? void 0 : _a.new_service_type) || 0; } if (platform === void 0) { platform = 'wechat'; } if (serviceType === 8) { if (platform === 'wechat') { return '贴图号' ; } else { return '贴图号'; } } if (serviceType === 2) return '服务号'; return '公众号'; }; var getBrandServiceType = function getBrandServiceType() { var serviceType = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window.service_type; var _a, _b; var brandServiceType = 0; if (serviceType !== undefined) brandServiceType = serviceType + 1; if (((_b = (_a = window.cgiData) === null || _a === void 0 ? void 0 : _a.trans_appmsg_info) === null || _b === void 0 ? void 0 : _b.trans_type) * 1 === 1) brandServiceType = 3; return brandServiceType; }; function setCurrentMpInfo(ifShow) { var supportNewTopBar = MMVersion.isIOS && MMVersion.gtVersion('7.0.10', true) || MMVersion.isAndroid && MMVersion.gtVersion('7.0.12', true); var supportLiveStatus = MMVersion.isIOS && MMVersion.gtVersion('8.0.46', true) || MMVersion.isAndroid && MMVersion.gtVersion('8.0.46', true); R$4.invoke('currentMpInfo', { userName: window.user_name, brandName: !!supportNewTopBar && window.nickname === '' ? '未命名账号' : window.title, title: window.msg_title || '', brandIcon: window.hd_head_img.replace(/\/0$/, '/132'), itemShowType: window.item_show_type, isPaySubscribe: window.isPaySubscribe, topBarStyle: supportNewTopBar ? 1 : 0, topBarShowed: ifShow, disableShowFinderLiveTopBar: !ifShow && supportLiveStatus ? 1 : 0, brandServiceType: getBrandServiceType() }, function () {}); } function AjaxWx(obj) { var report36408 = typeof obj.report36408 === 'function' ? obj.report36408 : function () {}; obj.url += obj.url.indexOf('?') === -1 ? '?fasttmplajax=1' : '&fasttmplajax=1'; if (getAjaxScope(obj.url)) { Ajax(obj); return; } if (obj.usePb) { obj.type = 'POST'; obj.data = { data: JSON.stringify(obj.data) }; } if (!/^(http:\/\/|https:\/\/|\/\/)/.test(obj.url)) { obj.url = "https://mp.weixin.qq.com/".concat(obj.url.replace(/^\//, '')); } else if (/^\/\//.test(obj.url)) { obj.url = "https:".concat(obj.url); } if (obj.f !== 'html' && (obj.url.indexOf('?f=json') === -1 || obj.url.indexOf('&f=json') === -1)) { obj.url += '&f=json'; } if (!obj.notJoinUrl && obj.f !== 'html') { obj.url = Url.joinUrl(obj.url); } Url.joinUserArticleRole(obj.url, !!obj.notJoinUrl, function (url) { obj.url = url; var urlObj = new URL(url, location.origin); var data = null; if (_typeof$3(obj.data) === 'object') { var d = obj.data; var ds = []; for (var k in d) { if (d.hasOwnProperty(k)) { ds.push("".concat(k, "=").concat(encodeURIComponent(d[k]))); } } data = ds.join('&'); } else { data = typeof obj.data === 'string' ? obj.data : null; } var header = { Cookie: document.cookie, referer: location.href }; if (obj.contentType) { header['Content-Type'] = obj.contentType; } else if ((obj.type || 'GET').toUpperCase() === 'POST') { header['Content-Type'] = 'application/x-www-form-urlencoded; charset=UTF-8'; } var reqLogItem = networkStartLog({ method: obj.type || 'GET', url: obj.url, postData: obj.data || {}, requestHeader: header, requestType: 'jsapi', startTime: Date.now() }); var retryTime = 1; var jsapiRequest = function jsapiRequest(obj, data) { return R$4.invoke('request', { url: obj.url, method: obj.type, data: data, header: header }, function (res) { var _a, _b, _c, _d, _e, _f; if (res.err_msg.indexOf(':ok') > -1 && (!res.statusCode || res.statusCode >= 200 && res.statusCode '27000600')) { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 1, HttpCode: res.statusCode || 0, Ret: ((_c = resData === null || resData === void 0 ? void 0 : resData.base_resp) === null || _c === void 0 ? void 0 : _c.ret) || 0 }); } var _retryTime = retryTime++; R$4.invoke('updatePageAuth', {}, function (res) { console.log('[skeleton] updatePageAuth', res); monitor$1.setSum(112287, 3, 1); if (res && res.err_msg && res.err_msg.indexOf(':ok') > -1) { window.top.pass_ticket = encodeURIComponent(Url.getQuery('pass_ticket', res.fullUrl).html(false).replace(/\s/g, '+')); if (obj.pass_ticket) { obj.pass_ticket = window.top.pass_ticket; } console.warn('[skeleton] updatePageAuth resetTopbar'); var supportNewTopBar = MMVersion.isIOS && MMVersion.gtVersion('7.0.10', true); var showBottomBar = !!window.is_login; if (window.top.item_show_type === '0' && supportNewTopBar) { var top = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop || 0; setCurrentMpInfo(top > 40 && !showBottomBar); } try { obj.url = Url.addParam(obj.url, 'retry', _retryTime, true); } catch (err) { console.error(err); } jsapiRequest(obj, data); monitor$1.setSum(112287, 4, 1); } else { obj.success && obj.success(resData); obj.complete && obj.complete(); if (MMVersion.isIOS) { monitor$1.setSum(112287, 35, 1); } else { monitor$1.setSum(112287, 36, 1); } reqLogItem.status = 200; reqLogItem.endTime = Date.now(); reqLogItem.response = resData; networkEndLog(reqLogItem); } }); } else { if (((_d = tmpResData === null || tmpResData === void 0 ? void 0 : tmpResData.base_resp) === null || _d === void 0 ? void 0 : _d.ret) !== 0) { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 4, HttpCode: res.statusCode || 0, Ret: ((_e = tmpResData === null || tmpResData === void 0 ? void 0 : tmpResData.base_resp) === null || _e === void 0 ? void 0 : _e.ret) || 0 }); } } else { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 0, HttpCode: res.statusCode || 0, Ret: ((_f = tmpResData === null || tmpResData === void 0 ? void 0 : tmpResData.base_resp) === null || _f === void 0 ? void 0 : _f.ret) || 0 }); } } obj.success && obj.success(resData); obj.complete && obj.complete(); reqLogItem.status = 200; reqLogItem.endTime = Date.now(); reqLogItem.response = resData; networkEndLog(reqLogItem); } } else if (res.err_msg.indexOf('no permission') > -1 || !MMVersion.isOnlyWechat) { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 1, HttpCode: res.statusCode || 0, Ret: 0 }); } Ajax(obj); if (res.err_msg.indexOf('no permission') > -1) { console.warn('[JSAPI Request] No permission'); monitor$1.setSum(112287, 31, 1); } reqLogItem.status = 302; reqLogItem.endTime = Date.now(); reqLogItem.response = res; networkEndLog(reqLogItem); } else { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 2, HttpCode: res.statusCode || 0, Ret: 0 }); } obj.error && obj.error(null, { type: 3, error: res, status: 0 }); obj.complete && obj.complete(); monitor$1.setSum(112287, 32, 1); var sample = 0.001; if (Math.random() = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } var AjaxRouter = function () { var _ref = _asyncToGenerator$1( _regeneratorRuntime$5().mark(function _callee(obj) { return _regeneratorRuntime$5().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: if (!window.__secPageAuthPromise) { _context.next = 3; break; } _context.next = 3; return window.__secPageAuthPromise; case 3: if (!(!MMVersion.isWxWork && (window.__second_open__ || !getIsAcrossOrigin() && top.window.__second_open__) && window.__is_page_auth_return__ && !obj.pureHttp)) { _context.next = 5; break; } return _context.abrupt("return", AjaxWx(obj)); case 5: return _context.abrupt("return", Ajax(obj)); case 6: case "end": return _context.stop(); } }, _callee); })); return function AjaxRouter(_x) { return _ref.apply(this, arguments); }; }(); var html$1 = function html(_str, encode) { if (!_str) return ''; var replace = ['`', '`', ''', '\'', '"', '"', ' ', ' ', '>', '>', '<', '']; var replaceReverse = ['&', '&', '¥', '¥', '', '>', ' ', ' ', '"', '"', '\'', ''', '`', '`']; var str = _str; var target; if (encode) { target = replaceReverse; } else { target = replace; } for (var i = 0; i ', '<', '', '>', '"', '"', '\'', ''', '`', '`']; var str = _str; var target; if (encode) { target = replaceReverse; } else { target = replace; } for (var i = 0; i -1) { new Image().src = "".concat(location.protocol, "//mp.weixin.qq.com/mp/jsmonitor?idkey=68064_13_1&r=").concat(Math.random()); } obj.x5 = isx5 ? '1' : '0'; obj.f = 'json'; return Url.join(url, obj); } function isObj(obj) { return obj && _typeof$3(obj) === 'object'; } function assign(target, source) { if (isObj(target) && isObj(source)) { for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } } function assembleReportData(initiative) { var leaveReportLog = []; leaveReportLog.push({ content: "[LeaveReport] specificData keys: ".concat(Object.keys(specificData)), timestamp: Date.now() }); Log.log("[LeaveReport] specificData keys: ".concat(Object.keys(specificData))); console.log("[LeaveReport] specificData keys: ".concat(Object.keys(specificData))); var allReportData = {}; for (var reportField in specificData) { if (!allReportData[reportField]) { allReportData[reportField] = {}; } for (var i = 0; i = BATCH_SIZE) { batchReport(); } else { if (!timeOutId) { timeOutId = setTimeout(function () { batchReport(); clearTimeout(timeOutId); timeOutId = null; }, BATCH_TIME); } } } _leaveReport.addReport(function () { var repeatedReportJson = getRepeatedReportJson(); if (!repeatedReportJson) return false; var reportData = []; for (var _i = 0, _Object$entries = Object.entries(repeatedReportJson); _i 1 && arguments[1] !== undefined ? arguments[1] : blockEleTagName; if (!element || element.nodeType !== 1) { return false; } for (var i = 0; i 1 && arguments[1] !== undefined ? arguments[1] : 'className'; var AttrList = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : exceptEleClassName; for (var i = 0; i -1) { return true; } } return false; } var removeChildMedia = function removeChildMedia(element) { var parentNode = element.parentNode; element.parentNode.removeChild(element); if (parentNode.children && parentNode.children.length) { return false; } return true; }; var getParaList = function getParaList(element, _ref) { var _ref$getNestedStructu = _ref.getNestedStructure, getNestedStructure = _ref$getNestedStructu === void 0 ? true : _ref$getNestedStructu, _ref$removeIgoreEle = _ref.removeIgoreEle, removeIgoreEle = _ref$removeIgoreEle === void 0 ? false : _ref$removeIgoreEle; var paraList = function getParaListWithIndex(ele, getNested) { var childNodes = ele.children; if (!childNodes) return []; if (!childNodes.length) { return childNodes; } var child; var paragraphList = []; for (var i = 0; i 0) { var item = queue.pop(); var nodeType = item.nodeType, tagName = item.tagName; if (item.dataset && item.dataset.index) { paraIndex = +item.dataset.index; } if (withinSelectRange && !achiveSelectRangeEnd) { if (nodeType === 3) { result.push({ $node: item, type: NODE_TYPE.text, idx: paraIndex }); } if (tagName === IMG_TAG) { result.push({ $node: item, type: NODE_TYPE.img, idx: paraIndex }); } } if (item === $startNode) { if (nodeType === 3) { try { item.splitText(startOffset); } catch (e) { WX_BJ_REPORT.BadJs.report('ArticleMask:Error', 'splitText Error', { mid: 'mmbizwap:articlemask_Monitor', view: 'wap_business', _info: { type: 'getNodes startNode', startOffset: startOffset, endOffset: endOffset } }); } var $startTextNode = item.nextSibling; result.push({ $node: $startTextNode, type: NODE_TYPE.text, idx: paraIndex }); } else if (tagName === IMG_TAG) { result.push({ $node: item, type: NODE_TYPE.img, idx: paraIndex }); } else { result.push({ $node: item, type: NODE_TYPE.text, idx: paraIndex }); } withinSelectRange = true; } if (item === $endNode || achiveSelectRangeEnd) { if (!achiveSelectRangeEnd) { achiveSelectRangeEnd = true; } if (item === $endNode) result.pop(); if (nodeType === 3) { try { item.splitText(endOffset); } catch (e) { if (typeof WX_BJ_REPORT !== 'undefined' && WX_BJ_REPORT.BadJs) { WX_BJ_REPORT.BadJs.report('ArticleMask:Error', 'splitText Error', { mid: 'mmbizwap:articlemask_Monitor', view: 'wap_business', _info: { type: 'getSplitTextNode endNode', startOffset: startOffset, endOffset: endOffset } }); } } result.push({ $node: item, type: NODE_TYPE.text, idx: paraIndex }); break; } else if (tagName === IMG_TAG) { result.push({ $node: item, type: NODE_TYPE.img, idx: paraIndex }); break; } else { var _children = item.childNodes; for (var i = _children.length - 1; i >= 0; i--) { queue.push(_children[i]); } } } var children = item.childNodes; for (var _i = children.length - 1; _i >= 0; _i--) { queue.push(children[_i]); } } return result; }; var getSelectedNodes = function getSelectedNodes(range) { var start = range.start, end = range.end; var $startNode = start.$node, startOffset = start.offset; var $endNode = end.$node, endOffset = end.offset; if ($startNode === $endNode && $startNode instanceof Text) { return getSplitTextNode($startNode, startOffset, endOffset, start.paraIndex); } return getNodesByDFS(range); }; var checkTextNode = function checkTextNode($node) { return $node && ($node.nodeValue || $node.innerText); }; var connectSiblingText = function connectSiblingText(prev, next, target) { var $delete = target === prev ? next : prev; if (!checkTextNode(prev) || !checkTextNode(next)) { return $delete; } var text = (prev.nodeValue || prev.innerText) + (next.nodeValue || next.innerText); target.nodeValue = text; target.parentNode.removeChild($delete); return target; }; var getTextNodeByOffset = function getTextNodeByOffset($parentNode, offset) { var queue = []; var curOffset = 0; var startOffset = 0; var $curNode; queue.push($parentNode); while (queue.length > 0) { $curNode = queue.pop(); if ($curNode.nodeType === 3) { startOffset = offset - curOffset; curOffset += $curNode.textContent.length; if (curOffset >= offset) { break; } } var children = $curNode.childNodes; for (var i = children.length - 1; i >= 0; i--) { queue.push(children[i]); } } return { $parentNode: $parentNode, $node: $curNode, offset: startOffset }; }; function getBlockOffset(_ref2) { var $blockNode = _ref2.$blockNode, $node = _ref2.$node; if ($blockNode === null) { return null; } var queue = []; var offset = 0; queue.push($blockNode); while (queue.length > 0) { var item = queue.pop(); if (item.nodeType === 3 && item.nodeValue !== $node.nodeValue) { offset += item.textContent.length; } else if (item.nodeType === 1) { offset += 1; if (item === $node) break; } else if (item.nodeValue === $node.nodeValue) { offset += item.textContent.length; break; } var children = item.childNodes; for (var i = children.length - 1; i >= 0; i--) { queue.push(children[i]); } } return offset; } var getDomMeta = function getDomMeta(selection) { selection.$node; var $parentNode = selection.$parentNode; var parentIndex = Number($parentNode.dataset.index); var offset = getBlockOffset($parentNode); return { parentIndex: parentIndex, fromParentoffset: offset }; }; function nodeToSelection($node) { var $blockNode = getBlockNode($node); var paraIndex = +$blockNode.dataset.index; var offset = 0; var item = { $blockNode: $blockNode, $node: $node, paraIndex: paraIndex, offset: offset }; var id = uuid(); return { start: item, end: item, id: id }; } var getSelection = function getSelection() { var selection = window.getSelection(); if (selection.anchorNode === null) { return null; } var selectionRange = selection.getRangeAt(0); if (!selectionRange || !selection.toString()) { return null; } var startContainer = selectionRange.startContainer, endContainer = selectionRange.endContainer, commonAncestorContainer = selectionRange.commonAncestorContainer, startOffset = selectionRange.startOffset, endOffset = selectionRange.endOffset; var $startBlockNode = getBlockNode(startContainer); var $endBlockNode = getBlockNode(endContainer); var startIndex = $startBlockNode && $startBlockNode.dataset.index; var endIndex = $endBlockNode && $endBlockNode.dataset.index; var start = { $blockNode: $startBlockNode, $node: startContainer, offset: startOffset, paraIndex: Number(startIndex) }; var end = { $blockNode: $endBlockNode, $node: endContainer, offset: endOffset, paraIndex: Number(endIndex) }; var $container = typeof commonAncestorContainer === 'string' ? commonAncestorContainer.parentNode : commonAncestorContainer; var id = uuid(); return { start: start, end: end, $container: $container, id: id }; }; var transferTextToElement = function transferTextToElement($node, id) { if (!$node) return null; if ($node.nodeType === 3) { var $wrap = document.createElement(WRAP_TAG); $wrap.setAttribute('data-splitid', id); $wrap.appendChild($node.cloneNode(false)); if ($node.parentNode) { $node.parentNode.replaceChild($wrap, $node); } return $wrap; } return $node; }; var serialize = function serialize(selectionRange) { var start = selectionRange.start, end = selectionRange.end, id = selectionRange.id; var startParaOffset = getBlockOffset(start); var endParaOffset = start.$node === end.$node ? end.offset - start.offset + startParaOffset : getBlockOffset(end); var meta = { id: id, start: { para_offset: startParaOffset, para_index: start.paraIndex }, end: { para_offset: endParaOffset, para_index: end.paraIndex } }; return meta; }; var mapMetaToLocal = function mapMetaToLocal(paraList) { return function (meta) { var paraOffset = meta.para_offset, paraIndex = meta.para_index; var $blockNode = paraList[paraIndex]; var queue = []; var curOffset = 0; var offset = 0; var $curNode; queue.push($blockNode); while (queue.length > 0) { $curNode = queue.pop(); if ($curNode.nodeType === 3) { offset = paraOffset - curOffset; curOffset += $curNode.textContent.length; if (curOffset >= paraOffset) { break; } } if ($curNode.nodeType === 1) { offset = paraOffset - curOffset; curOffset += 1; if (curOffset >= paraOffset) { break; } } var children = $curNode.childNodes; for (var i = children.length - 1; i >= 0; i--) { queue.push(children[i]); } } return { $blockNode: $blockNode, $node: $curNode, offset: offset, paraIndex: paraIndex }; }; }; var deSerialize = function deSerialize(meta, paraList, $container) { var desparaList = mapMetaToLocal(paraList); return { start: desparaList(meta.start), end: desparaList(meta.end), id: meta.id, $container: $container }; }; function getTextNode($node) { if ($node.tagName === IMG_TAG || $node.nodeType === 3) { return $node; } return $node.childNodes[0]; } var resetRange = function resetRange(selectionRange) { window.getSelection().removeAllRanges(); var selection = window.getSelection(); var range = document.createRange(); var $startnode = getTextNode(TEMP_NODES.start); var $endnode = getTextNode(TEMP_NODES.end); range.setStart($startnode, selectionRange.start.offset); range.setEnd($endnode, selectionRange.end.offset); selection.addRange(range); }; var getNodeIndex = function getNodeIndex($block, $node) { var queue = []; var index = 0; queue.push($block); while (queue.length > 0) { var $item = queue.pop(); if ($item === $node) break; index++; var children = $item.children; for (var i = 0; i 0) { var $item = queue.pop(); if (cursor === index) { $result = $item; break; } cursor++; var children = $item.children; for (var i = 0; i 1 && arguments[1] !== undefined ? arguments[1] : ''; var root = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : document.body; if (!node || node === root) return selector; var id = node.getAttribute('id'); var className = node.getAttribute('class'); var tagName = node.tagName.toLowerCase(); var currentSelector = null; if (id && !hasClass(className, 'articlepart-selector-area_choice-button_wrap')) return selector ? "#".concat(id, ">").concat(selector) : "#".concat(id); var whiteClassName = inWhiteList(className); if (whiteClassName) { currentSelector = whiteClassName; } else if (hasClass(className, 'js_choice-img')) { currentSelector = '.js_choice-img'; } else if (hasClass(className, 'articlepart-selector-area_choice')) { currentSelector = node.dataset.splitid ? '' : tagName; } else { currentSelector = tagName; } return getNodeSelector(node.parentNode, [currentSelector, selector].filter(function (item) { return !!item; }).join('>'), root); }; var getNodeSelectorWrap = function getNodeSelectorWrap(node, root) { var selector = getNodeSelector(node, '', root); var collect = []; try { collect = root.querySelectorAll(selector); } catch (error) { console.log('get node selector wrap err', error); } var len = collect.length; var index = null; for (var i = 0; i .js_choice-img>', '>') + "|".concat(len, " ").concat(index || 0); return newSelector; }; var serializeToC = function serializeToC(nodes) { return ( nodes.map(function (item) { var $node = item.$node, type = item.type, idx = item.idx; var index = 0; var data = null; var meta = ''; var blockItem = getBlockNode($node); if (type === NODE_TYPE.text) { var nodeIndex = getNodeIndex(blockItem, $node.parentNode); if ($node && $node.data) { index = nodeIndex; data = $node.data; meta = $node.previousSibling && $node.previousSibling.data; } } else if (type === NODE_TYPE.img) { var imgs = blockItem.getElementsByTagName('img'); data = $node.src; index = Array.prototype.slice.call(imgs).slice(0).indexOf($node); } return { data: data, index: index, idx: idx, type: type, meta: meta }; }).filter(function (item) { return item.index > -1 && !!item.data; }) ); } ; var serializeToC2 = function serializeToC2(nodes, $container) { var root = $container || document.getElementById('js_content'); return nodes.map(function (item) { var $node = item.$node, type = item.type, idx = item.idx; var selector = null; var data = null; var meta = ''; if (type === NODE_TYPE.text) { if ($node && $node.data) { selector = getNodeSelectorWrap($node.parentNode, root); data = $node.data; meta = $node.previousSibling && $node.previousSibling.data; } } else if (type === NODE_TYPE.img) { selector = getNodeSelectorWrap($node, root); data = $node.src; } return { data: data, idx: idx, type: type, meta: meta, selector: selector }; }).filter(function (item) { return !!item.selector && !!item.data; }); }; function setProperty(el, name, value, priority) { if (!!el.style.setProperty) { priority = priority || null; el.style.setProperty(name, value, priority); } else if (typeof el.style.cssText !== 'undefined') { priority = priority ? '!' + priority : ''; el.style.cssText += ';' + name + ':' + value + priority + ';'; } } function hasImgNode($el) { if (!$el) return false; var nodeType = $el.nodeType, tagName = $el.tagName; if (nodeType === 3) { return false; } if (tagName === IMG_TAG) { return true; } return false; } function getContent(tree) { return tree.reduce(function (acc, cur, idx) { if (idx === 0) { if (cur.type === NODE_TYPE.text) { acc.text.push(cur.data); } else if (cur.type === NODE_TYPE.img) { acc.pic.push(cur.data); } return acc; } if (cur.type === NODE_TYPE.text) { if (tree[idx - 1].type === NODE_TYPE.text) { var text = acc.text.pop(); text += cur.data; acc.text.push(text); } else { acc.text.push(cur.data); } return acc; } if (cur.type === NODE_TYPE.img) { acc.pic.push(cur.data); } return acc; }, { audio: [], pic: [], video: [], text: [] }); } function saveNode($node, key) { TEMP_NODES[key] = $node; } function serializeNode($node, $wrap) { var range = nodeToSelection($node); var anchorTree = serializeToC2([{ $node: $node, type: NODE_TYPE.img, idx: range.start.paraIndex }], $wrap); var anchorMeta = serialize(range); var anchorBrief = getContent(anchorTree); return { meta: { anchorTree: anchorTree, anchorMeta: anchorMeta, anchorBrief: anchorBrief }, range: range }; } function findChildIndex(parent, offset) { var childNodes = parent.childNodes; var realOffset = offset; var $node = null; var i = 0; for (i = 0; i realOffset) { break; } else { realOffset -= len; } } } return { $node: $node, cursor: realOffset }; } var qs$1 = function qs(selector, el) { return (el || document).querySelector(selector); }; var qsAll$1 = function qsAll(selector, el) { return (el || document).querySelectorAll(selector); }; var dom = { getDomMeta: getDomMeta, getContent: getContent, getParaList: getParaList, getBlockNode: getBlockNode, getSelectedNodes: getSelectedNodes, connectSiblingText: connectSiblingText, getTextNodeByOffset: getTextNodeByOffset, getBlockOffset: getBlockOffset, getSelection: getSelection, transferTextToElement: transferTextToElement, serialize: serialize, deSerialize: deSerialize, resetRange: resetRange, serializeToC: serializeToC, setProperty: setProperty, hasImgNode: hasImgNode, nodeToSelection: nodeToSelection, saveNode: saveNode, serializeNode: serializeNode, getNodeByIndex: getNodeByIndex, findChildIndex: findChildIndex, serializeToC2: serializeToC2, blockEleTagName: blockEleTagName, getPureBlockNode: getPureBlockNode, qs: qs$1, qsAll: qsAll$1, hasClass: hasClass }; function ownKeys$b(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread$b(e) { for (var r = 1; r node.data.length) { newCursor -= node.data.length; } else { node.data = node.data.slice(0, newCursor).concat(maskMat).concat(node.data.slice(newCursor + len)); } } else if (node.nodeText === 1) { newCursor -= node.innerText && node.innerText.length || 0; } } } function disputeText(data, domNode, cursor) { var len = data.length; var _dom$findChildIndex = dom.findChildIndex(domNode, cursor), textNode = _dom$findChildIndex.$node, realOffset = _dom$findChildIndex.realOffset; try { textNode.splitText(realOffset); } catch (e) { if (typeof WX_BJ_REPORT !== 'undefined' && WX_BJ_REPORT.BadJs) { WX_BJ_REPORT.BadJs.report('ArticleMask:Error', 'splitText Error', { mid: 'mmbizwap:articlemask_Monitor', view: 'wap_business', _info: { type: 'disputeText textNode', data: data, cursor: cursor } }); } } var repalcedNode = textNode.nextSibling; try { repalcedNode.splitText(len); } catch (e) { if (typeof WX_BJ_REPORT !== 'undefined' && WX_BJ_REPORT.BadJs) { WX_BJ_REPORT.BadJs.report('ArticleMask:Error', 'splitText Error', { mid: 'mmbizwap:articlemask_Monitor', view: 'wap_business', _info: { type: 'disputeText nextSibling', data: data, cursor: cursor } }); } } var spanNode = document.createElement('span'); spanNode.style = 'background-color: rgba(0,0,0,0.10);'; spanNode.appendChild(repalcedNode.cloneNode(true)); repalcedNode.parentNode.replaceChild(spanNode, repalcedNode); } function disputeImage(data, domNode) { var spanNode = document.createElement('span'); spanNode.style = 'position:relative;display: inline-block;'; var iconNode = document.createElement('span'); iconNode.style = "\n position: absolute;\n top: 4px;\n left: 4px;\n display: inline-block;\n vertical-align: middle;\n width: 24px;\n height: 24px;\n background-size: cover;\n background-image: url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E %3Cpath fill='%23FFF' fill-rule='evenodd' d='M12 2c5.523 0 10 4.477 10 10s-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2zm-.004 13.339a.878.878 0 0 0-.896.882c0 .499.396.882.896.882.512 0 .902-.383.902-.882 0-.5-.39-.882-.902-.882zm.765-9.203h-1.524l.11 7.596h1.305l.11-7.596z'/%3E%3C/svg%3E\");\n "; var parent = domNode.parentNode; spanNode.appendChild(domNode.cloneNode(false)); parent.replaceChild(spanNode, domNode); spanNode.appendChild(iconNode); } function maskImage(data, domNode) { domNode.style.filter = 'blur(10px)'; domNode.style['-webkit-filter'] = 'blur(10px)'; } function hitMaskText(anchor, domNode) { var data = anchor.data, meta = anchor.meta, index = anchor.index, idx = anchor.idx; var wholeText = domNode.data; var prefixText = (meta || '') + data; if (wholeText.indexOf(prefixText) === -1) { return { hit: false }; } var itemNode = dom.getNodeByIndex(paraList[idx], index); if (itemNode) { totalHit++; } else { if (typeof WX_BJ_REPORT !== 'undefined' && WX_BJ_REPORT.BadJs) { WX_BJ_REPORT.BadJs.report('ArticleMask:Error', 'text node cannot find', { mid: 'mmbizwap:articlemask_Monitor', view: 'wap_business', _info: { anchor: anchor, wholeText: wholeText } }); } } var cursor = itemNode && itemNode.innerText.indexOf(prefixText) + (meta || '').length; return { hit: !!itemNode, $hitDom: itemNode, cursor: cursor }; } function hitMaskImage(anchor, domNode) { var index = anchor.index, idx = anchor.idx, data = anchor.data; var para = paraList[idx]; var allImgNode = para.querySelectorAll('img'); var hitItenNode = allImgNode[index]; var src = hitItenNode && (hitItenNode.getAttribute('data-src') || hitItenNode.getAttribute('src')); if (src === data) { totalHit++; return { hit: true, $hitDom: domNode, cursor: 0 }; } return { hit: false }; } function createMask(anchor, domNode) { return function (hitFn, maskFn, next) { var _hitFn = hitFn(anchor, domNode), hit = _hitFn.hit, $hitDom = _hitFn.$hitDom, cursor = _hitFn.cursor; if (hit) { maskFn(anchor.data, $hitDom, cursor); next(); } }; } function maskAnchors(anchors, paraNode) { var queue = []; var cloneAnchors = _toConsumableArray$1(anchors); queue.push(paraNode); var anchor = null; var next = function next() { anchor = cloneAnchors.shift(); }; next(); while (queue.length > 0 && cloneAnchors.length >= 0 && anchor) { var itemNode = queue.pop(); if (!itemNode) continue; if (!anchor) continue; var nodeType = itemNode.nodeType, tagName = itemNode.tagName; var createMaskFn = createMask(anchor, itemNode); if (nodeType === 3) { if (anchor.type === NODE_TYPE.text) { createMaskFn(hitMaskText, anchor.status === STATUS.ban ? maskText : disputeText, next); } continue; } if (nodeType === 1 && tagName === IMG_TAG) { if (anchor.type === NODE_TYPE.img) { createMaskFn(hitMaskImage, anchor.status === STATUS.ban ? maskImage : disputeImage, next); } continue; } var children = itemNode.childNodes; for (var i = children.length - 1; i >= 0; i--) { queue.push(children[i]); } } } function parseSelector(selectorStr) { if (!selectorStr) return {}; var _selectorStr$split = selectorStr.split('|'), _selectorStr$split2 = _slicedToArray$1(_selectorStr$split, 2), selector = _selectorStr$split2[0], other = _selectorStr$split2[1]; var _other$split = other.split(' '), _other$split2 = _slicedToArray$1(_other$split, 2), total = _other$split2[0], index = _other$split2[1]; return { selector: selector.replace(/>/g, '>'), total: total * 1, index: index * 1 }; } function hitNode(node, anchor) { if (!node) return null; var type = anchor.type, data = anchor.data, meta = anchor.meta; if (type === NODE_TYPE.text) { var nodeText = node.innerText || node.innerHTML || ''; var prefixText = ((meta || '') + data).replace(/&/g, '&'); if (nodeText.indexOf(prefixText) !== -1) { var cursor = nodeText.indexOf(prefixText) + (meta || '').length; return { cursor: cursor, node: node }; } } if (type === NODE_TYPE.img) { var src = node && (node.getAttribute('data-src') || node.getAttribute('src')); if (src === data.replace(/&/g, '&')) { return { cursor: 0, node: node }; } } return null; } function maskNode(anchor, domNode, cursor) { var type = anchor.type, data = anchor.data, status = anchor.status; if (status !== STATUS.ban) return; if (type === NODE_TYPE.text) maskText(data, domNode, cursor); if (type === NODE_TYPE.img) maskImage(data, domNode); } function initOld(wrapNode, anchors) { paraList = dom.getParaList(wrapNode, { getNestedStructure: true, removeIgoreEle: false }); var formatAnchor = keyby(anchors, 'idx'); if (!paraList) return; (paraList || []).forEach(function (para, index) { var paraAnchors = formatAnchor[index]; if (paraAnchors && paraAnchors.length > 0) { addBanner(index, getBannerWord(paraAnchors[0])); maskAnchors(paraAnchors, para); } }); if (anchors && anchors.length !== totalHit) { if (typeof WX_BJ_REPORT !== 'undefined' && WX_BJ_REPORT.BadJs) { WX_BJ_REPORT.BadJs.report('ArticleMask:Error', 'totalHit', { mid: 'mmbizwap:articlemask_Monitor', view: 'wap_business', _info: { totalHit: totalHit, anchors: anchors } }); } } } function addChildBanner(node, anchor) { var blockNode = dom.getPureBlockNode(node); if (!blockNode) return; addBanner(blockNode, getBannerWord()); } function maskAnchors2(wrapNode, anchors) { var missNodes = []; var countList = []; var maskNodeList = []; var cacheSelector = {}; anchors.forEach(function (anchor, i) { var _parseSelector = parseSelector(anchor.selector), selector = _parseSelector.selector, index = _parseSelector.index, total = _parseSelector.total; var nodes = cacheSelector[selector] || []; if (nodes.length === 0) { try { nodes = wrapNode.querySelectorAll(selector); cacheSelector[selector] = nodes; } catch (e) { if (typeof WX_BJ_REPORT !== 'undefined' && WX_BJ_REPORT.BadJs) { WX_BJ_REPORT.BadJs.report('ArticleMask:Error', 'splitText Error', { mid: 'mmbizwap:articlemask_Monitor', view: 'wap_business', _info: { anchor: anchor } }); } } } var cursorLeft = index; var cursorRight = index; var queue = []; var node = null; var cursor = 0; var count = 0; queue.push(nodes[index]); while (queue.length) { var current = queue.pop(); var hitData = hitNode(current, anchor); count++; if (hitData && hitData.node) { node = hitData.node; cursor = hitData.cursor; break; } if (cursorLeft - 1 >= 0 && nodes[cursorLeft - 1]) { queue.push(nodes[cursorLeft - 1]); cursorLeft -= 1; } if (cursorRight + 1 ') !== -1) { missNodes.push(_objectSpread$b(_objectSpread$b({}, anchor), {}, { selector: selector && selector.slice(0, selector.lastIndexOf('>')) + "|".concat(total, " ").concat(index) })); } countList[i] = count; }); maskNodeList.forEach(function (item) { maskNode(item.anchor, item.node, item.cursor); }); if (missNodes.length) { maskAnchors2(wrapNode, missNodes); if (typeof WX_BJ_REPORT !== 'undefined' && WX_BJ_REPORT.BadJs) { WX_BJ_REPORT.BadJs.report('ArticleMask:Error', 'missNodes', { mid: 'mmbizwap:articlemask_Monitor', view: 'wap_business', _info: { missNodes: missNodes } }); } } if (typeof WX_BJ_REPORT !== 'undefined' && WX_BJ_REPORT.BadJs) { WX_BJ_REPORT.BadJs.report('ArticleMask:Info', 'querycount', { mid: 'mmbizwap:articlemask_Monitor', view: 'wap_business', _info: { countList: countList } }); } } function init2(wrapNode, anchors) { maskAnchors2(wrapNode, anchors); } function init(wrapNode, anchors) { var oldAnchors = []; var newAnchors = []; anchors.forEach(function (anchor) { if (anchor.selector) { newAnchors.push(anchor); } else { oldAnchors.push(anchor); } }); init2(wrapNode, newAnchors); if (oldAnchors.length > 0) { initOld(wrapNode, oldAnchors); } } var complainPainter = { init: init }; function setMaskNode(data, $wrap) { try { if (data.anchor_tree_msg) { var start = Date.now(); var anchors = data.anchor_tree_msg ? JSON.parse(data.anchor_tree_msg).anchor_tree : []; var protocol = window.location.protocol; complainPainter.init($wrap, anchors); wxgspeedsdk.saveSpeeds({ sample: 1, uin: window.uin, pid: protocol == 'https:' ? 462 : 417, speeds: { sid: 38, time: Date.now() - start } }); wxgspeedsdk.send(); } } catch (error) { if (typeof WX_BJ_REPORT !== 'undefined' && window.WX_BJ_REPORT.BadJs) { window.WX_BJ_REPORT.BadJs.onError(error, { anchor_tree_msg: window.anchor_tree_msg }); } } } function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } var asyncToGenerator = _asyncToGenerator; function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } var defineProperty = _defineProperty; function _typeof$1(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof_1 = _typeof$1 = function _typeof(obj) { return typeof obj; }; } else { _typeof_1 = _typeof$1 = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof$1(obj); } var _typeof_1 = _typeof$1; var _typeof$2 = _typeof_1; var onceListeners = {}; var permanentListeners = {}; function clean(event, all) { delete onceListeners[event]; if (all) { delete permanentListeners[event]; } } function on$1(event, callback, permanent) { if (typeof callback === 'function') { if (permanent) { if (!permanentListeners[event]) { permanentListeners[event] = []; } permanentListeners[event].push(callback); } else { if (!onceListeners[event]) { onceListeners[event] = []; } onceListeners[event].push(callback); } } } function emit(event) { for (var _len = arguments.length, params = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } function i$2(_x) { return _i.apply(this, arguments); } function _i() { _i = asyncToGenerator( _regeneratorRuntime$4().mark(function _callee(o) { return _regeneratorRuntime$4().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: return _context.abrupt("return", new Promise(function (n) { R$4.invoke("handleEcsAction", { action: "openEcs", ecsJumpInfoBase64: o }, function (c) { n(c); }); })); case 1: case "end": return _context.stop(); } }, _callee); })); return _i.apply(this, arguments); } function t$3() { return _t.apply(this, arguments); } function _t() { _t = asyncToGenerator( _regeneratorRuntime$4().mark(function _callee2() { return _regeneratorRuntime$4().wrap(function _callee2$(_context2) { while (1) switch (_context2.prev = _context2.next) { case 0: return _context2.abrupt("return", new Promise(function (o) { R$4.invoke("handleEcsAction", { action: "checkAction", params: { method: "isActionAvailable", actionName: "openEcs", actionVersion: "1" } }, function (n) { n != null && n.result ? o(!0) : o(!1); }); })); case 1: case "end": return _context2.stop(); } }, _callee2); })); return _t.apply(this, arguments); } function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } var arrayWithHoles$1 = _arrayWithHoles; function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return; var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } var iterableToArrayLimit$1 = _iterableToArrayLimit; function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } function ownKeys$a(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread$a(e) { for (var r = 1; r 1 && (t -= 1), t 0.5 ? a / (2 - o - s) : a / (o + s), o) { case n: r = (e - t) / a + (e 0 && arguments[0] !== undefined ? arguments[0] : []; var _n = slicedToArray(n, 3), e = _n[0], t = _n[1], o = _n[2], s = t / 100, r = o / 100; var i, c, a; if (s === 0) i = c = a = r;else { var u = r 0 && arguments[0] !== undefined ? arguments[0] : []; var _n2 = slicedToArray(n, 3), e = _n2[0], t = _n2[1], o = _n2[2]; if (e 255 || t 255 || o 255) throw new Error("RGB values must be in the range 0-255"); var s = function s(r) { var i = r.toString(16).toUpperCase(); return i.length === 1 ? "0" + i : i; }; return "#".concat(s(e)).concat(s(t)).concat(s(o)); } var d$5; function _$4() { var e, t; return { exportkey: Url.getQuery("exportkey"), __biz: window.biz, article_info: { mp_biz: (window == null ? void 0 : window.atob(window.biz || "")) || "", item_idx: Number(window.itemidx || window.idx), appmsgid: Number(window.mid), item_show_type: Number(window.item_show_type), mp_article_scene: Number(window.source), mp_sub_scene: Number(window.subscene), mp_get_a8key_scene: Number(window.ascene), carrier_type: ((t = (e = window.cgiData) == null ? void 0 : e.product_activity) == null ? void 0 : t.activity_type) || 0, search_click_id: Url.getQuery("search_click_id") } }; } var x$2 = 150; var p$2 = 0; function N$1() { return _N.apply(this, arguments); } function _N() { _N = asyncToGenerator( _regeneratorRuntime$3().mark(function _callee() { return _regeneratorRuntime$3().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: return _context.abrupt("return", d$5 || (window.__secPageAuthPromise ? new Promise(function (n) { window.__secPageAuthPromise.then(function () { d$5 = _$4(), n(d$5); }); }) : (_typeof$2(window.itemidx || window.idx) > "u" || _typeof$2(window.mid) > "u" || _typeof$2(window.item_show_type) > "u") && p$2 0 && arguments[0] !== undefined ? arguments[0] : []; var a; var _ref = (_ref2 = (a = n.filter(function (_ref3) { var u = _ref3.red, w = _ref3.green, m = _ref3.blue; return !(u === 255 && w === 255 && m === 255); })) == null ? void 0 : a[0]) !== null && _ref2 !== void 0 ? _ref2 : { red: 76, green: 76, blue: 76 }, e = _ref.red, t = _ref.green, o = _ref.blue, _h = h$3(e, t, o), _h2 = slicedToArray(_h, 3), s = _h2[0], r = _h2[1], i = _h2[2]; i = Math.min(i, 0.2); var c = g$6([s, r * 100, i * 100]); return e = c[0], t = c[1], o = c[2], [y$2([e, t, o]), { red: e, green: t, blue: o }]; } function M$2() { return (typeof window === "undefined" ? "undefined" : _typeof$2(window)) 0 && arguments[0] !== undefined ? arguments[0] : []; var e = arguments.length > 1 ? arguments[1] : undefined; var o = []; return t.childNodes.forEach(function (n) { var s = L$2(n); if ("data-shadow-slot" in s) { if (!s.slot) return; var l = { attrs: s, domProps: { innerHTML: n.innerHTML === "" ? n.innerText : n.innerHTML }, slot: s.slot }; s.slot = void 0; var m = e(n.tagName, l); o.push(m); } else if (s.slot) { var _l = e("slot", { attrs: { name: s.slot }, slot: s.slot }); o.push(_l); } }), o; } function H$3(_ref) { var t = _ref.iframeWindow, e = _ref.Component, o = _ref.platform, n = _ref.customName, s = _ref.styleText, _ref$extraInfo = _ref.extraInfo, l = _ref$extraInfo === void 0 ? {} : _ref$extraInfo, m = _ref.watchAttr, b = _ref.beforeRender, g = _ref.afterRender, E = _ref.selector, y = _ref.afterMounted, w = _ref.reflowProps, C = _ref.getProps, _ref$eventName = _ref.eventName, A = _ref$eventName === void 0 ? [] : _ref$eventName; var d = window; t && (d = t), l.window = d; var $ = window.test_autospace; d.customElements.define(n, function (_d$HTMLElement) { inherits(_class, _d$HTMLElement); function _class() { var _this; classCallCheck(this, _class); _this = _callSuper(this, _class); var a = _this.attachShadow({ mode: "open" }); _this.shadow = a; return _this; } createClass(_class, [{ key: "connectedCallback", value: function connectedCallback() { var _this2 = this; if (!e.install) { if (e.props && w && w.length) { var i = { watch: {} }; w.forEach(function (u) { i.watch[u] = function () { var p = this.$el.getRootNode().host, x = { compEle: p, compType: n, compIdx: Array.from(document.querySelectorAll(E || n)).indexOf(p) }; b && b(Object.assign({ subCompType: u }, x)), this.$nextTick(function () { g && g(Object.assign({ subCompType: u }, x)); }); }; }), e.mixins.push(i); } typeof e.template == "function" && e.template(e); } var a = A.reduce(function (i, u) { return i[u] = function (p) { _this2.dispatchCustomEvent(u, p); }, i; }, {}), c = new Vue({ render: function render(i) { return i(e, { props: C.call(_this2, o, l), on: a }, j$2(_this2, i)); } }); this.wrapper = c; var r = document.createElement("style"); r.textContent = " \n :host {\n all: initial;\n -webkit-text-size-adjust: inherit;\n ".concat($ ? "text-autospace: normal" : "", "\n }\n \n "), this.shadowRoot.appendChild(r); var h = document.createElement("style"); h.appendChild(document.createTextNode(s)), this.shadowRoot.appendChild(h), this.wrapper.$mount(), this.shadowRoot.appendChild(this.wrapper.$el), this.debounceUpdate = this.debounce(function () { console.log("forceUpdate"), _this2.wrapper && _this2.wrapper.$forceUpdate(); }, 500), this.classList.add("mp_common_widget"), y && y.call(this); } }, { key: "debounce", value: function debounce(a, c) { var r; return function () { for (var _len = arguments.length, h = new Array(_len), _key = 0; _key 2 && arguments[2] !== undefined ? arguments[2] : !1; var t = h$2(o); var r = t.queryStr; var c = []; if (_typeof$2(e) == "object") for (var n in e) Object.prototype.hasOwnProperty.call(e, n) && c.push(n + "=" + (s ? e[n] : encodeURIComponent(e[n])));else c.push(s ? e : encodeURIComponent(e)); return c.length > 0 && (r += (r !== "" ? "&" : "") + c.join("&")), "".concat(t.host).concat(r !== "" ? "?" + r : "").concat(t.hash !== "" ? "#" + t.hash : ""); } function v$2(r, a, d, h, i, t, f, u) { var e = typeof r == "function" ? r.options : r; a && (e.render = a, e.staticRenderFns = d, e._compiled = !0), h && (e.functional = !0), t && (e._scopeId = "data-v-" + t); var o; if (f ? (o = function o(n) { n = n || this.$vnode && this.$vnode.ssrContext || this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext, !n && (typeof __VUE_SSR_CONTEXT__ === "undefined" ? "undefined" : _typeof$2(__VUE_SSR_CONTEXT__)) = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } function ownKeys$9(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread$9(e) { for (var r = 1; r 0 ? 8 : 0); if (i + E 1 && arguments[1] !== undefined ? arguments[1] : 1; var e = Number(A); return Number.isNaN(e) ? (console.warn("[formatUnit] The count is an invalid value!"), "0") : e === 0 ? "0" : e = 0.5) { _this7.$emit("expose", !_this7.hasExpose), _this7.hasExpose = !0; try { e && (_this7.timeout = setTimeout(function () { _this7.isIframe ? e.contentWindow && g$5(e.contentWindow, "webEvent", { type: "valid_expose" }) : _this7.report("element_valid_expose"); }, 500)); } catch (i) { console.error(i); } } else _this7.timeout && clearTimeout(_this7.timeout); }); }, { threshold: 0.5 }), this.observer.observe(this.$refs.js_custom_element); }, handleMessage: function handleMessage(A) { if (A.origin !== rt) return; var t = this.$refs.iframeRef; if (t && A.source === t.contentWindow) { var _Et = Et(A.data), e = _Et.action, i = _Et.value; switch (e) { case "changeFrameStyle": this.changeFrameStyle(A, i); break; case "onFrameReady": this.onFrameReady(A, t); break; case "webEvent": i.type === "click" ? this.clickProduct(A) : i.type === "toast" ? window.weui.toast(i.msg, { extClass: "weui-toast_text common_product_toast" }) : i.type === "dialog" && window.weui.dialog(i); break; } this.$emit("iframe-message", A); } }, onFrameReady: function onFrameReady(A, t) { this.iframeLoadTimeout && clearTimeout(this.iframeLoadTimeout), this.iframeLoading = !1, this.setProductData(A.source, t), this.extraInfo.window && g$5(this.extraInfo.window, "setPageData", { darkMode: this.extraInfo.window.matchMedia("(prefers-color-scheme: dark)").matches }), this.isEditor || this.exposureReport(); }, onCardReady: function onCardReady() { if (this.iframeLoadTimeout && clearTimeout(this.iframeLoadTimeout), this.iframeLoading = !1, this.windowproduct) { var A = this.$el.getRootNode().host; removePlaceholder(A, this.windowproduct); var t = A && A.parentNode; if (t) { var e = t.querySelector(".wx_img_placeholder"); e && t.removeChild(e); } } this.emitCardReadyEvent(), this.isEditor || this.exposureReport(); }, clickProduct: function clickProduct(A) { this.extraInfo.window && this.extraInfo.window.clickedProductWin && A.source !== this.extraInfo.window.clickedProductWin && g$5(this.extraInfo.window.clickedProductWin, "webEvent", { type: "unclick" }), this.extraInfo.window && (this.extraInfo.window.clickedProductWin = A.source), this.active = !0; }, setProductData: function setProductData(A) { g$5(A, "setData", { infos: { scene: "edit" } }), this.immutable && g$5(A, "setPageData", { scene: "immutable" }); }, changeFrameStyle: function changeFrameStyle(A, t) { if (!(!t || _typeof$2(t) != "object" || this.cardtype === 2)) try { this.transferStyle = JSON.stringify(t); } catch (e) { console.error(e); } }, getBRecommendIframeUrl: function getBRecommendIframeUrl() { var A = _objectSpread$9({ reqScene: this.req_scene }, this.urlParams), t = window && window.wx && window.wx.data && window.wx.data.t || p$1(window.location.href).token || this.token; return t && (A.token = t), this.cardtype && (A.cardtype = 1), u$2(at, A); }, getBUrl: function getBUrl() { if (this.cardtype === ot) return this.getBRecommendIframeUrl(); var A = _objectSpread$9({ productkey: this.windowproduct, reqScene: this.req_scene }, this.urlParams), t = window && window.wx && window.wx.data && window.wx.data.t || p$1(window.location.href).token || this.token; return t && (A.token = t), this.cardtype && (A.cardtype = this.cardtype), this.isIframe ? u$2(tt, A) : u$2(it, A); }, getCUrl: function getCUrl() { var A = _objectSpread$9({ productkey: this.windowproduct, reqScene: this.req_scene }, this.urlParams); return this.exportkey && (A.exportkey = this.exportkey), this.wap_export_token && (A.wap_export_token = this.wap_export_token), this.ecsource && (A.ecsource = this.ecsource), this.cardtype && (A.cardtype = this.cardtype), u$2(Bt, A); }, openShop: function openShop() { var A = this.$refs.iframeRef; this.outerclick ? this.$emit("element-click", this.$refs.js_custom_element) : !this.isEditor && A && g$5(A.contentWindow, "webEvent", { type: "openShop", clickType: 0 }); }, getBCardData: function getBCardData() { var _this8 = this; this.failMsg = "", ajax({ url: this.getBUrl(), type: "GET", dataType: "json", contentType: "application/json; charset=UTF-8", success: function success(A) { var t, e, i, B; ((t = A == null ? void 0 : A.resp) == null ? void 0 : t.code) === 0 && (e = A == null ? void 0 : A.resp) != null && e.data ? _this8.productCard = T$5((i = A == null ? void 0 : A.resp) == null ? void 0 : i.data) : _this8.failMsg = ((B = A == null ? void 0 : A.resp) == null ? void 0 : B.msg) || "商品信息获取失败"; }, error: function error(A) { console.error("获取商品数据失败:"), _this8.failMsg = "商品信息获取失败"; } }); }, getCCardData: function getCCardData() { var _this9 = this; var e, i; var A = { article_info: btoa(JSON.stringify({ mp_biz: atob(window.biz || ""), item_idx: Number(window.itemidx || window.idx || 0), appmsgid: Number(window.mid || 0), item_show_type: Number(window.item_show_type || 0), mp_article_scene: Number(window.source || 0), mp_sub_scene: Number(window.subscene || 0), mp_get_a8key_scene: Number(window.ascene || 0), carrier_type: ((i = (e = window.cgiData) == null ? void 0 : e.product_activity) == null ? void 0 : i.activity_type) || 0, search_click_id: Url.getQuery("search_click_id") || "" })), exportkey: Url.getQuery("exportkey") || "", wap_export_token: this.wap_export_token || "", ecsource: this.ecsource || "" }, t = Object.keys(A).map(function (B) { return "".concat(B, "=").concat(A[B]); }).join("&"); this.qrCodeUrl = this.qrCodeUrl.concat(A.article_info), ajax({ url: "/mmec/biz_batchgetproductcard?".concat(t), type: "POST", data: JSON.stringify({ productkey_list: [this.windowproduct], cardtype: this.cardtype }), dataType: "json", contentType: "application/json; charset=UTF-8", success: function success(B) { B.product_card_list && B.product_card_list.length > 0 ? (_this9.productCard = T$5(B.product_card_list[0].product_card_info), _this9.$forceUpdate()) : console.log("未获取到商品数据"); }, error: function error(B) { console.error("获取商品数据失败:", B); } }); }, initProductInfo: function initProductInfo() { this.windowproduct && (this.isEditor ? this.getBCardData() : this.getCCardData()); }, openJumpInfo: function openJumpInfo(A) { var _this10 = this; return asyncToGenerator( _regeneratorRuntime$2().mark(function _callee() { var t, e; return _regeneratorRuntime$2().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: if (!(_this10.platform === "wechat")) { _context.next = 11; break; } _context.next = 3; return t$3(); case 3: if (!_context.sent) { _context.next = 8; break; } _context.next = 6; return i$2(A); case 6: _context.next = 9; break; case 8: (t = window == null ? void 0 : window.weui) == null || t.toast("当前版本不支持打开页面", { extClass: "weui-toast_text" }); case 9: _context.next = 12; break; case 11: (e = window == null ? void 0 : window.weui) == null || e.toast("请在手机微信中打开", { extClass: "weui-toast_text" }); case 12: case "end": return _context.stop(); } }, _callee); }))(); }, handleOpenProduct: function handleOpenProduct() { this.openJumpInfo(this.jumpInfo.cardJumpInfoBase64Str); }, handleBuy: function handleBuy() { this.openJumpInfo(this.jumpInfo.buyButtonJumpInfoBase64Str); }, handleGift: function handleGift() { this.openJumpInfo(this.jumpInfo.giftJumpInfoBase64Str); }, emitCardReadyEvent: function emitCardReadyEvent() { var A = { data: JSON.stringify({ action: "onFrameReady", value: { productTitle: this.productCard.title, productName: this.productCard.title, qrcodeUrl: this.qrCodeUrl } }) }, t = new CustomEvent("iframe-message", { detail: A, bubbles: !0 }); this.$el.dispatchEvent(t), this.$emit("iframe-message", A); }, emitCardClickEvent: function emitCardClickEvent() { var A = { data: JSON.stringify({ action: "webEvent", value: { type: "click" } }) }, t = new CustomEvent("iframe-message", { detail: A, bubbles: !0 }); this.$el.dispatchEvent(t), this.$emit("iframe-message", A); }, handleProductClick: function handleProductClick(A) { var t, e; if (this.emitCardClickEvent(), this.clientType !== "B") { if (this.report("element_click"), Device.os.pc) { this.$set(this.productCard, "qrCodeUrl", this.qrCodeUrl); return; } else if (!MMVersion.isWechat) { (t = window == null ? void 0 : window.weui) == null || t.toast("请在手机微信中打开", { extClass: "weui-toast_text" }); return; } A === "product" ? this.handleOpenProduct() : A === "buy" ? this.handleBuy() : A === "gift" ? this.handleGift() : A === "giftFail" && ((e = window == null ? void 0 : window.weui) == null || e.alert(this.productCard.canntGivePresentMsg || "该商品不支持赠送", { extClass: "weui-toast_text" })); } }, report: function report(A) { var _this11 = this; return asyncToGenerator( _regeneratorRuntime$2().mark(function _callee2() { var t, i; return _regeneratorRuntime$2().wrap(function _callee2$(_context2) { while (1) switch (_context2.prev = _context2.next) { case 0: _context2.next = 2; return N$1(); case 2: t = _context2.sent; i = { logid: "23782", data: { event: A, params: JSON.stringify({ page_name: "mp_article_page", element_name: "commodity_card", productid: _this11.productCard.productId, mp_article_bizuin: t.article_info.mp_biz, mp_article_appmsgid: t.article_info.appmsgid, mp_article_item_idx: t.article_info.item_idx, mp_article_item_show_type: t.article_info.item_show_type, scene: t.article_info.mp_article_scene, cardtype: _this11.cardtype, appid: _this11.productCard.appid, shopLabelTag: _this11.productCard.shopLabelTag || 0 }) } }; O$5(i); case 5: case "end": return _context2.stop(); } }, _callee2); }))(); } } }; var st = function st() { var t = this, e = t._self._c; return t.cardtype === 2 ? e("span", { ref: "js_custom_element", staticClass: "product_card_text_wrp", style: t.wrpStyle, on: { click: t.openShop } }, [e("a", { staticClass: "product_text_link", style: t.isEditor ? "color: #576B95" : "", attrs: { part: "link", href: "javascript:void(0);" } }, [t._v(t._s(t.title))]), t.showIframe ? e("iframe", { ref: "iframeRef", staticClass: "iframe_style", style: [t.iframeStyle, { display: "none" }], attrs: { src: t.iframeUrl, scrolling: "no", frameborder: "0" } }) : t._e()]) : t.cardtype === 4 ? e("div", { ref: "js_custom_element", staticClass: "activity_card_wrp", on: { click: t.openShop } }, [e("div", { staticClass: "activity_card_wrp__container" }, [e("img", { staticClass: "product_image", attrs: { src: t.productImage, alt: "" } }), e("transition", { attrs: { name: "fade" } }, [t.discountedPrice ? e("span", { staticClass: "discounted_price" }, [t._v("¥" + t._s(t.discountedPrice))]) : t._e()]), e("span", { key: t.discountedPrice, staticClass: "origin_price", "class": { has_discount: t.discountedPrice } }, [t._v("¥" + t._s(t.originPrice))])], 1), t.showIframe ? e("iframe", { ref: "iframeRef", staticClass: "iframe_style", style: [t.iframeStyle, { display: "none" }], attrs: { src: t.iframeUrl, scrolling: "no", frameborder: "0" } }) : t._e()]) : t.cardtype === 5 ? e("div", { ref: "js_custom_element", staticClass: "s1s_card_wrp", on: { click: t.openShop } }, [e("img", { staticClass: "product-image", attrs: { src: t.productInfo.product_info.img_url, alt: "商品图片" } }), e("div", { staticClass: "product-info" }, [e("div", { staticClass: "product-title" }, [t._v(t._s(t.productInfo.product_info.title))]), e("div", { staticClass: "product-centercontainer" }, [e("span", { staticClass: "discount-price" }, [t._v("¥" + t._s(t.productInfo.product_info.selling_price / 100))]), t.productInfo.product_info.market_price && t.productInfo.product_info.market_price !== t.productInfo.product_info.selling_price ? [e("span", { staticClass: "discount-price__extra" }, [t._v("起 " + t._s(t.productInfo.product_info.selling_price_wording))]), e("span", { "class": "product-price ".concat(t.productInfo.product_info.friend_send_cnt ? "need-border" : "") }, [t._v("¥" + t._s(t.productInfo.product_info.market_price / 100))])] : t._e(), t.productInfo.product_info.friend_send_cnt ? e("div", { staticClass: "product-gifts" }, [t._v("朋友送过"), e("span", { staticClass: "product-gifts__num" }, [t._v(t._s(t.productInfo.product_info.friend_send_cnt))]), t._v("次 ")]) : t._e()], 2), e("div", { staticClass: "product-brand" }, [e("i", { staticClass: "product-logo" }), t._v(t._s(t.productInfo.shop_info.shop_window_profile_name) + " "), t.productInfo.shop_info.brand_icon_url ? e("img", { staticClass: "shop-verify-icon", attrs: { src: t.productInfo.shop_info.brand_icon_url } }) : t._e()])]), t.showIframe ? e("iframe", { ref: "iframeRef", staticClass: "iframe_style", style: [t.iframeStyle, { display: "none" }], attrs: { src: t.iframeUrl, scrolling: "no", frameborder: "0" } }) : t._e()]) : t.cardtype === 6 ? e("div", { directives: [{ name: "show", rawName: "v-show", value: !t.iframeLoading, expression: "!iframeLoading" }], ref: "js_custom_element", staticClass: "product_spot_card_wrp", on: { click: t.openShop } }, [t._t("spot-product"), t.showIframe ? e("iframe", { ref: "iframeRef", staticClass: "iframe_style", style: [t.iframeStyle, { display: "none" }], attrs: { src: t.iframeUrl, scrolling: "no", frameborder: "0" } }) : t._e()], 2) : t.cardtype === 12 ? e("div", { directives: [{ name: "show", rawName: "v-show", value: !t.iframeLoading, expression: "!iframeLoading" }], ref: "js_custom_element", staticClass: "product_image_wrp" }, [t.showIframe ? e("iframe", { ref: "iframeRef", staticClass: "iframe_style", style: [t.iframeStyle, { display: "none" }], attrs: { src: t.iframeUrl, scrolling: "no", frameborder: "0" } }) : t._e()]) : t.cardtype === 8 ? e("div", { directives: [{ name: "show", rawName: "v-show", value: !t.iframeLoading, expression: "!iframeLoading" }], ref: "js_custom_element", staticClass: "product_recommend_card_wrp" }, [t.showIframe ? e("iframe", { ref: "iframeRef", staticClass: "iframe_style", style: JSON.parse(t.customstyle || "{}"), attrs: { src: t.iframeUrl, scrolling: "no", frameborder: "0" } }) : t._e()]) : e("div", { ref: "js_custom_element", "class": ["iframe_wrp", "wx_card_root", t.is_hover === 1 ? "wx_hover_card" : "", t.is_selected === 1 ? "wx_selected_card" : ""], style: t.wrpStyle }, [t.productCard ? e("Product", { ref: "productCardRef", attrs: { product: t.productCard, "card-type": t.cardtype, "client-type": t.clientType, "is-p-c": t.isPC, "dark-mode": t.darkMode }, on: { open: function open(i) { return t.handleProductClick(i); }, ready: t.onCardReady } }) : t.failMsg && t.isEditor ? e("div", { staticClass: "product_load_fail", attrs: { role: "alert", "aria-live": "polite" }, on: { click: t.emitCardClickEvent } }, [e("div", { staticClass: "product_load_fail__text" }, [t._v(t._s(t.failMsg))])]) : e("div")], 1); }, dt = [], wt = v$2(ct, st, dt, !1, null, "024c715f", null, null); var gt = wt.exports, nt = ".qr-fade-enter-active[data-v-11924fb1],.qr-fade-leave-active[data-v-11924fb1]{transition:opacity .2s cubic-bezier(.4,0,.2,1)}.qr-fade-enter-from[data-v-11924fb1],.qr-fade-leave-to[data-v-11924fb1]{opacity:0}.qr-fade-enter-to[data-v-11924fb1],.qr-fade-leave-from[data-v-11924fb1]{opacity:1}.qr-popover[data-v-11924fb1]{background:#ffffff;-webkit-backdrop-filter:none;backdrop-filter:none;filter:none;box-shadow:0 4px 30px #0003;padding:10px 12px 10px 10px;pointer-events:auto;display:flex;align-items:center;border-radius:12px;transform-origin:center bottom}.qr-popover[data-v-11924fb1]:after{content:\"\";position:absolute;top:100%;left:50%;transform:translate(-50%);border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #ffffff}.qr-content[data-v-11924fb1]{display:flex;align-items:center;gap:12px;background:white;border-radius:6px}.qr-code-container[data-v-11924fb1]{flex-shrink:0}.qr-image-wrapper[data-v-11924fb1]{position:relative;width:76px;height:76px;border-radius:4px;overflow:hidden}.qr-code-image[data-v-11924fb1]{width:76px;height:76px;border-radius:4px;display:block;transition:opacity .2s ease}.qr-code-image.image-hidden[data-v-11924fb1]{opacity:0}.loading[data-v-11924fb1]{width:100%;height:100%;display:block;background:transparent url(\"data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cdefs%3E%3ClinearGradient x1='94.087%25' y1='0%25' x2='94.087%25' y2='90.559%25' id='a'%3E%3Cstop stop-color='%23606060' stop-opacity='0' offset='0%25'/%3E%3Cstop stop-color='%23606060' stop-opacity='.3' offset='100%25'/%3E%3C/linearGradient%3E%3ClinearGradient x1='100%25' y1='8.674%25' y2='90.629%25' id='b'%3E%3Cstop stop-color='%23606060' offset='0%25'/%3E%3Cstop stop-color='%23606060' stop-opacity='.3' offset='100%25'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd' opacity='.9'%3E%3Cpath d='M40 0c22.091 0 40 17.909 40 40S62.091 80 40 80v-7c18.225 0 33-14.775 33-33S58.225 7 40 7V0z' fill='url(%23a)'/%3E%3Cpath d='M40 0v7C21.775 7 7 21.775 7 40s14.775 33 33 33v7C17.909 80 0 62.091 0 40S17.909 0 40 0z' fill='url(%23b)'/%3E%3Ccircle fill='%23606060' cx='40.5' cy='3.5' r='3.5'/%3E%3C/g%3E%3C/svg%3E\") no-repeat center center;background-size:contain;animation:qr-loading-spin-data-v-11924fb1 1s linear infinite;background-size:28px 28px}@keyframes qr-loading-spin-data-v-11924fb1{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.qr-text[data-v-11924fb1]{font-size:12px;line-height:17px;font-weight:400;display:flex;flex-direction:column;color:#000000e6;justify-content:center;text-align:left}.qr-text-line[data-v-11924fb1]{white-space:nowrap}@media (max-width: 480px){.qr-popover[data-v-11924fb1]{padding:8px}.qr-content[data-v-11924fb1]{gap:8px;padding:6px}.qr-image-wrapper[data-v-11924fb1],.qr-code-image[data-v-11924fb1]{width:60px;height:60px}.qr-text[data-v-11924fb1]{font-size:11px;line-height:15px}}.product-title__outer[data-v-40afe61e]{margin-left:16px;margin-right:16px;margin-top:12px}.product-title__outer.little[data-v-40afe61e],.product-title__outer.bar[data-v-40afe61e]{margin:0}.product-title[data-v-40afe61e]{color:#000000e6;line-height:1.3;overflow:hidden;text-overflow:ellipsis}.product-title span[data-v-40afe61e]{font-size:15px}.two-line[data-v-40afe61e]{-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;display:-webkit-box}.one-line[data-v-40afe61e]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-title img[data-v-40afe61e]{display:inline-block;height:1.1em;vertical-align:middle;margin-right:4px;margin-bottom:.2em}.product-title__outer.dark-mode .product-title[data-v-40afe61e]{color:#fffc}.product-shop__outer[data-v-1a13560c]{margin:16px 16px 8px}.product-shop__outer.bar[data-v-1a13560c]{margin:8px 12px}.product-shop[data-v-1a13560c]{overflow:hidden;position:relative;font-size:12px}.product-shop__inner[data-v-1a13560c]{align-items:center;display:flex;flex-direction:row;justify-content:space-between;overflow:hidden}.product-shop .left[data-v-1a13560c]{align-items:center;display:flex;flex-basis:0;flex-direction:row;flex-grow:1;height:1.4em;overflow:hidden}.product-shop .icon[data-v-1a13560c]{width:1.1em;height:1.1em;-o-object-fit:contain;object-fit:contain;border-radius:50%;flex-shrink:0;opacity:.5}.product-shop .right-icon[data-v-1a13560c]{-o-object-fit:contain;object-fit:contain;margin-left:.16em;flex-shrink:0}.product-shop .icon-r[data-v-1a13560c]{border-radius:50%;height:1.1em;width:1.1em}.product-shop .good-shop[data-v-1a13560c]{height:1.33em}.product-shop .text[data-v-1a13560c]{color:#0000004d;font-size:12px;line-height:1.4;margin-left:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-shop__outer.dark-mode .product-shop .text[data-v-1a13560c]{color:#ffffff4d}.product-shop__outer.dark-mode .product-shop .icon.img-color-invert[data-v-1a13560c]{filter:invert(1) brightness(2);opacity:.5}.btn__area[data-v-4b157c62]{display:flex;flex-direction:row;gap:8px}.btn[data-v-4b157c62]{-webkit-tap-highlight-color:rgba(0,0,0,0);align-items:center;background-color:#0000000d;border:0 solid transparent;border-radius:6px;color:#000000e6;cursor:pointer;display:flex;font-size:15px;font-weight:500;justify-content:center;margin:0;outline:none;overflow:hidden;padding:5.5px 12px;position:relative}.btn.type-primary[data-v-4b157c62]{background:#ff6146;color:#fff}.btn.type-secondary[data-v-4b157c62]{background:rgba(223,195,148,.3);color:#47332f}.btn.type-disabled[data-v-4b157c62]{background:rgba(0,0,0,.03);color:#00000026!important;cursor:not-allowed}.btn__area.dark-mode .btn[data-v-4b157c62]{color:#fff}.btn__area.dark-mode .btn.btn.type-secondary[data-v-4b157c62]{background:#faf0e7;color:#443a31}.btn__area.dark-mode .btn.btn.type-default[data-v-4b157c62]{background:hsla(0,0%,100%,.05);color:#fffc}.btn__area.dark-mode .btn.btn.type-disabled[data-v-4b157c62]{background:hsla(0,0%,100%,.3);color:#ffffff26!important}.product_status_text[data-v-4b157c62]{color:#0000004d;font-family:PingFang SC;font-size:12px;font-weight:400;line-height:1.75}.btn__area.dark-mode .product_status_text[data-v-4b157c62]{color:#ffffff4d}.product-img-container[data-v-c88442f6]{width:100%;position:relative;overflow:hidden;display:inline-block}.product-img.little[data-v-c88442f6]{border-radius:4px}.product-img.bar[data-v-c88442f6]{border-radius:2px}.product-img[data-v-c88442f6]{display:block}.product-img-error[data-v-c88442f6]{align-items:center;background-color:#00000005;color:#0000004d;font-size:14px;justify-content:center;position:absolute;top:0;left:0;right:0;bottom:0}.dark-mode .product-img-error[data-v-c88442f6]{background:#202020;color:#ffffff4d}.qrcode__outer[data-v-34552a2a]{margin-left:0;margin-right:0;padding-bottom:0;padding-top:0;position:relative;overflow:hidden;max-height:0;opacity:0;transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1),padding .4s cubic-bezier(.4,0,.2,1);transform:translateY(-10px);transition:max-height .4s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1),padding .4s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1)}.qrcode__outer[data-v-34552a2a]:before{border-top:1px solid rgba(0,0,0,.1);content:\"\";left:16px;position:absolute;right:16px;top:8px;transform:scaleY(.5)}.qrcode__outer.open[data-v-34552a2a]{max-height:300px;opacity:1;padding-bottom:44px;padding-top:8px;transform:translateY(0)}.qrcode__hd[data-v-34552a2a]{align-items:center;display:flex;flex-direction:row;justify-content:flex-end;margin-top:6px;opacity:0;transform:translateY(-5px);transition:opacity .3s cubic-bezier(.4,0,.2,1) .05s,transform .3s cubic-bezier(.4,0,.2,1) .05s}.qrcode__outer.open .qrcode__hd[data-v-34552a2a]{opacity:1;transform:translateY(0)}.close-area[data-v-34552a2a]{align-items:center;color:#00000080;cursor:pointer;display:flex;flex-direction:row;font-family:PingFang SC;font-size:14px;font-weight:400;margin-right:12px;padding:4px 4px 4px 0;position:relative;transition:color .2s ease,transform .2s ease;border-radius:4px}.close-area[data-v-34552a2a]:hover{color:#000000b3;transform:translateY(-1px)}.close-area[data-v-34552a2a]:active{transform:translateY(0)}.arrow-icon[data-v-34552a2a]{height:10px;margin-right:2px;opacity:.55;transform:rotate(180deg);width:20px;transition:opacity .2s ease,transform .3s cubic-bezier(.4,0,.2,1)}.close-area:hover .arrow-icon[data-v-34552a2a]{opacity:.8;transform:rotate(180deg) translateY(-1px)}.qrcode__bd[data-v-34552a2a]{align-items:center;display:flex;height:120px;justify-content:center;margin:10px auto 16px;position:relative;width:120px;opacity:0;transform:scale(.8);transition:opacity .3s cubic-bezier(.4,0,.2,1) .1s,transform .3s cubic-bezier(.4,0,.2,1) .1s}.qrcode__outer.open .qrcode__bd[data-v-34552a2a]{opacity:1;transform:scale(1)}.error-icon[data-v-34552a2a]{height:32px;opacity:.55;width:32px}.qrcode-img[data-v-34552a2a]{height:120px;width:120px;-o-object-fit:contain;object-fit:contain}.loading[data-v-34552a2a]{width:20px;height:20px;display:block;background:transparent url(\"data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Cdefs%3E%3ClinearGradient x1='94.087%25' y1='0%25' x2='94.087%25' y2='90.559%25' id='a'%3E%3Cstop stop-color='%23606060' stop-opacity='0' offset='0%25'/%3E%3Cstop stop-color='%23606060' stop-opacity='.3' offset='100%25'/%3E%3C/linearGradient%3E%3ClinearGradient x1='100%25' y1='8.674%25' y2='90.629%25' id='b'%3E%3Cstop stop-color='%23606060' offset='0%25'/%3E%3Cstop stop-color='%23606060' stop-opacity='.3' offset='100%25'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg fill='none' fill-rule='evenodd' opacity='.9'%3E%3Cpath d='M40 0c22.091 0 40 17.909 40 40S62.091 80 40 80v-7c18.225 0 33-14.775 33-33S58.225 7 40 7V0z' fill='url(%23a)'/%3E%3Cpath d='M40 0v7C21.775 7 7 21.775 7 40s14.775 33 33 33v7C17.909 80 0 62.091 0 40S17.909 0 40 0z' fill='url(%23b)'/%3E%3Ccircle fill='%23606060' cx='40.5' cy='3.5' r='3.5'/%3E%3C/g%3E%3C/svg%3E\") no-repeat center center;background-size:contain;animation:spin-data-v-34552a2a 1s linear infinite}@keyframes spin-data-v-34552a2a{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.qrcode__ft[data-v-34552a2a]{align-items:center;color:#00000080;display:flex;flex-direction:column;font-family:PingFang SC;font-size:14px;font-weight:400;line-height:1.4;opacity:0;transform:translateY(10px);transition:opacity .3s cubic-bezier(.4,0,.2,1) .2s,transform .3s cubic-bezier(.4,0,.2,1) .2s}.qrcode__outer.open .qrcode__ft[data-v-34552a2a]{opacity:1;transform:translateY(0)}.img-color-invert[data-v-34552a2a]{filter:invert(1);border:0 solid transparent}.qrcode__outer:before .dark-mode[data-v-34552a2a]{border-top:1px solid hsla(0,0%,100%,.1)}.qrcode__outer.dark-mode .close-area[data-v-34552a2a],.qrcode__outer.dark-mode .qrcode__ft[data-v-34552a2a]{color:#ffffff80}.product-price[data-v-4ce15964]{align-items:baseline;display:flex;flex-direction:row;flex-shrink:0}.price-box[data-v-4ce15964]{flex-shrink:0}.money[data-v-4ce15964]{color:#ff6146;font-family:WeChatSansStd-Medium;font-size:17px;font-weight:500;line-height:1.2}.more[data-v-4ce15964]{display:flex;align-items:baseline;gap:2px}.add[data-v-4ce15964],.tag[data-v-4ce15964]{color:#ff6146;font-family:PingFang SC;font-size:12px;font-weight:500;margin-left:2px}.product-tag__outer[data-v-339c50a0]{margin-left:16px;margin-right:16px;margin-top:4px;display:flex;flex:1;min-width:0}.product-tag__outer.little[data-v-339c50a0]{margin:0;border:0 solid transparent}.product-tag__outer.bar[data-v-339c50a0]{margin:0 8px .5px}.product-tag[data-v-339c50a0]{display:flex;flex-direction:row;font-size:12px;overflow:hidden;width:100%}.primary[data-v-339c50a0]{color:#0006}.dark-mode .primary[data-v-339c50a0]{color:#fff6}.marketing[data-v-339c50a0]{color:#ff6146}.tag-body[data-v-339c50a0]{display:flex;font-size:12px;font-weight:400;margin-left:8px;overflow:hidden;white-space:nowrap;align-items:center;flex-shrink:0}.tag-body[data-v-339c50a0]:first-child{margin-left:0}.tag-split[data-v-339c50a0]:after{background-color:#0006;content:\"\";height:100%;left:0;position:absolute;top:0;transform:scaleX(.5);width:1px}.product-card[data-v-6dc03843]{background:rgba(0,0,0,.02);border-radius:8px;overflow:hidden;max-width:100%}.mini-product-card[data-v-6dc03843]{border:0 solid transparent;cursor:pointer}.product-card__outer[data-v-6dc03843]{align-items:flex-start;display:flex;flex-direction:row;padding:12px 12px 0}.product-right[data-v-6dc03843]{display:flex;flex-basis:0;flex-direction:column;flex-grow:1;flex-shrink:0;justify-content:center;margin-left:8px;margin-right:12px;overflow:hidden}.product-right-top[data-v-6dc03843]{border:0 solid transparent}.product-right-bottom[data-v-6dc03843]{margin-top:2px;display:flex;flex-direction:row;align-items:end}.product-button__outer[data-v-6dc03843]{flex-shrink:0;margin:auto 0}.product-card.dark-mode[data-v-6dc03843],.product-card.dark-mode .mini-product-card[data-v-6dc03843]{background:#202020}.history[data-v-ca1abb60]{display:flex;border:0 solid transparent;flex-shrink:0;align-items:flex-end}.history.large[data-v-ca1abb60]{margin-left:4px}.history-inner[data-v-ca1abb60]{color:#0000004d;font-size:12px;line-height:1.3;white-space:nowrap}.history.dark-mode .history-inner[data-v-ca1abb60]{color:#ffffff4d}.product-large[data-v-5376dcc1]{background:rgba(0,0,0,.02);border-radius:8px;overflow:hidden;max-width:400px}.normal-product-large[data-v-5376dcc1]{width:100%;margin:0 auto;cursor:pointer}.product-info__outer[data-v-5376dcc1]{margin-left:16px;margin-right:16px;margin-top:6px}.product-info[data-v-5376dcc1]{align-items:flex-end;display:flex;flex-direction:row;justify-content:space-between;flex-wrap:wrap}.product-info .left[data-v-5376dcc1]{display:flex;flex-grow:1;flex-shrink:0}.product-info .right[data-v-5376dcc1]{flex-grow:0;flex-shrink:0}@media screen and (max-width: 600px){.product-large[data-v-5376dcc1]{max-width:100%;margin:0 auto}.normal-product-large[data-v-5376dcc1]{max-width:100%;width:100%}}.product-large.dark-mode[data-v-5376dcc1],.product-large.dark-mode .normal-product-large[data-v-5376dcc1]{background:#202020}.product-little[data-v-d8ab1782]{background-color:#00000005;border-radius:8px;overflow:hidden;width:100%}.small-product-little[data-v-d8ab1782]{border:0 solid transparent}.product-little__outer[data-v-d8ab1782]{align-items:flex-start;display:flex;flex-direction:row;padding:16px 16px 0}.product-right[data-v-d8ab1782]{display:flex;flex-basis:0;flex-direction:column;flex-grow:1;flex-shrink:0;justify-content:space-between;margin-left:10px;overflow:hidden;min-height:88px}.product-right-top[data-v-d8ab1782],.product-right-bottom[data-v-d8ab1782],.product-info__outer[data-v-d8ab1782]{border:0 solid transparent}.product-info[data-v-d8ab1782]{align-items:flex-end;display:flex;flex-wrap:wrap;flex-direction:row;justify-content:space-between}.product-info .info-left[data-v-d8ab1782]{display:flex;flex-grow:1;flex-shrink:0}.product-info .info-right[data-v-d8ab1782]{flex-grow:0;flex-shrink:0}.product-little.dark-mode[data-v-d8ab1782],.product-little.dark-mode .small-product-little[data-v-d8ab1782]{background:#202020}.product_image_link{position:relative;display:inline-block;large-align:bottom;-webkit-user-select:none;-moz-user-select:none;user-select:none;overflow:hidden}.product_image_link:before{background:rgba(95,95,95,.5);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:100%}.wxw-img{large-align:bottom}.product_image_link:after{-webkit-mask:url(\"data:image/svg+xml,%3Csvg width='25' height='25' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.798 13.728c-.32 0-.636-.032-.942-.096-1.792-.378-3.042-1.754-3.042-3.348 0-.426.088-.84.262-1.232l.008-.02 2.008-4.498a3.696 3.696 0 0 1 3.372-2.186h9.8A3.697 3.697 0 0 1 20.662 4.6l1.984 4.432c.178.402.268.82.268 1.248 0 1.596-1.252 2.974-3.044 3.348a4.63 4.63 0 0 1-2.176-.074c-.816-.23-1.514-.68-2.002-1.268-.798.846-2.018 1.368-3.326 1.368-1.308 0-2.52-.52-3.322-1.364-.488.59-1.188 1.042-2.014 1.274-.394.11-.808.168-1.23.168l-.002-.004zM3.46 9.632l-.01.022c-.09.2-.136.412-.136.63 0 .878.762 1.65 1.85 1.88.47.098.994.082 1.458-.048.766-.214 1.368-.728 1.576-1.34a1.43 1.43 0 0 0 .046-.158.748.748 0 1 1 1.448-.056l.026.07.012.03c.392.892 1.448 1.49 2.634 1.49s2.25-.602 2.636-1.498c.02-.046.034-.082.046-.12a.744.744 0 0 1 .754-.502.75.75 0 0 1 .688.588c.012.056.026.108.042.152.214.62.802 1.118 1.572 1.334.466.132.99.148 1.46.048 1.092-.228 1.852-1.002 1.852-1.88 0-.216-.046-.43-.138-.636l-1.988-4.44-.008-.018-.018-.036a2.19 2.19 0 0 0-1.998-1.296h-9.8c-.864 0-1.648.51-2 1.298-.008.016-.014.032-.022.046L3.46 9.634v-.002zM12.364 21.642c-4.142 0-7.566-2.634-7.794-5.996a.75.75 0 1 1 1.498-.102c.174 2.578 2.94 4.598 6.298 4.598s6.122-2.02 6.296-4.598a.75.75 0 1 1 1.498.102c-.228 3.362-3.652 5.996-7.794 5.996h-.002z' fill='%23576B95'/%3E%3C/svg%3E\") no-repeat 50% 50%;mask:url(\"data:image/svg+xml,%3Csvg width='25' height='25' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.798 13.728c-.32 0-.636-.032-.942-.096-1.792-.378-3.042-1.754-3.042-3.348 0-.426.088-.84.262-1.232l.008-.02 2.008-4.498a3.696 3.696 0 0 1 3.372-2.186h9.8A3.697 3.697 0 0 1 20.662 4.6l1.984 4.432c.178.402.268.82.268 1.248 0 1.596-1.252 2.974-3.044 3.348a4.63 4.63 0 0 1-2.176-.074c-.816-.23-1.514-.68-2.002-1.268-.798.846-2.018 1.368-3.326 1.368-1.308 0-2.52-.52-3.322-1.364-.488.59-1.188 1.042-2.014 1.274-.394.11-.808.168-1.23.168l-.002-.004zM3.46 9.632l-.01.022c-.09.2-.136.412-.136.63 0 .878.762 1.65 1.85 1.88.47.098.994.082 1.458-.048.766-.214 1.368-.728 1.576-1.34a1.43 1.43 0 0 0 .046-.158.748.748 0 1 1 1.448-.056l.026.07.012.03c.392.892 1.448 1.49 2.634 1.49s2.25-.602 2.636-1.498c.02-.046.034-.082.046-.12a.744.744 0 0 1 .754-.502.75.75 0 0 1 .688.588c.012.056.026.108.042.152.214.62.802 1.118 1.572 1.334.466.132.99.148 1.46.048 1.092-.228 1.852-1.002 1.852-1.88 0-.216-.046-.43-.138-.636l-1.988-4.44-.008-.018-.018-.036a2.19 2.19 0 0 0-1.998-1.296h-9.8c-.864 0-1.648.51-2 1.298-.008.016-.014.032-.022.046L3.46 9.634v-.002zM12.364 21.642c-4.142 0-7.566-2.634-7.794-5.996a.75.75 0 1 1 1.498-.102c.174 2.578 2.94 4.598 6.298 4.598s6.122-2.02 6.296-4.598a.75.75 0 1 1 1.498.102c-.228 3.362-3.652 5.996-7.794 5.996h-.002z' fill='%23576B95'/%3E%3C/svg%3E\") no-repeat 50% 50%;-webkit-mask-size:15px;mask-size:15px;background:#ffffff}.product_image_link:before,.product_image_link:after{content:\"\";position:absolute;top:8px;right:8px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;z-index:1}.product-container[data-v-71c60811]{width:100%}.client-type-B[data-v-71c60811]{max-width:350px}body,.wx-root{--weui-BG-0: #EDEDED;--weui-BG-1: #F7F7F7;--weui-BG-2: #FFFFFF;--weui-BG-3: #F7F7F7;--weui-BG-4: #4C4C4C;--weui-BG-5: #FFFFFF;--weui-BLUE-100: #10AEFF;--weui-BLUE-120: #3FBEFF;--weui-BLUE-170: #B7E6FF;--weui-BLUE-80: #0C8BCC;--weui-BLUE-90: #0E9CE6;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #5AAFE4;--weui-BLUE-BG-130: #7FC0EA;--weui-BLUE-BG-90: #4095CB;--weui-BRAND-100: #07C160;--weui-BRAND-120: #38CD7F;--weui-BRAND-170: #B4ECCE;--weui-BRAND-80: #059A4C;--weui-BRAND-90: #06AE56;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #3EB575;--weui-BRAND-BG-130: #69C694;--weui-BRAND-BG-90: #259C5C;--weui-FG-0: rgba(0, 0, 0, .9);--weui-FG-0_5: rgba(0, 0, 0, .9);--weui-FG-1: rgba(0, 0, 0, .55);--weui-FG-2: rgba(0, 0, 0, .3);--weui-FG-3: rgba(0, 0, 0, .1);--weui-FG-4: rgba(0, 0, 0, .15);--weui-GLYPH-0: rgba(0, 0, 0, .9);--weui-GLYPH-1: rgba(0, 0, 0, .55);--weui-GLYPH-2: rgba(0, 0, 0, .3);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .8);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .5);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .3);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #91D300;--weui-GREEN-120: #A7DB33;--weui-GREEN-170: #DEF1B3;--weui-GREEN-80: #74A800;--weui-GREEN-90: #82BD00;--weui-GREEN-BG-100: #96BE40;--weui-GREEN-BG-110: #A0C452;--weui-GREEN-BG-130: #B5D179;--weui-GREEN-BG-90: #86AA39;--weui-INDIGO-100: #1485EE;--weui-INDIGO-120: #439DF1;--weui-INDIGO-170: #B8DAF9;--weui-INDIGO-80: #106ABE;--weui-INDIGO-90: #1277D6;--weui-INDIGO-BG-100: #2B77BF;--weui-INDIGO-BG-110: #3F84C5;--weui-INDIGO-BG-130: #6BA0D2;--weui-INDIGO-BG-90: #266AAB;--weui-LIGHTGREEN-100: #95EC69;--weui-LIGHTGREEN-120: #AAEF87;--weui-LIGHTGREEN-170: #DEF9D1;--weui-LIGHTGREEN-80: #77BC54;--weui-LIGHTGREEN-90: #85D35E;--weui-LIGHTGREEN-BG-100: #72CF60;--weui-LIGHTGREEN-BG-110: #80D370;--weui-LIGHTGREEN-BG-130: #9CDD90;--weui-LIGHTGREEN-BG-90: #66B956;--weui-LINK-100: #576B95;--weui-LINK-120: #7888AA;--weui-LINK-170: #CCD2DE;--weui-LINK-80: #455577;--weui-LINK-90: #4E6085;--weui-LINKFINDER-100: #002666;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(245, 245, 245, .95);--weui-MATERIAL-NAVIGATIONBAR: rgba(237, 237, 237, .94);--weui-MATERIAL-REGULAR: rgba(247, 247, 247, .3);--weui-MATERIAL-THICK: rgba(247, 247, 247, .8);--weui-MATERIAL-THIN: rgba(255, 255, 255, .2);--weui-MATERIAL-TOOLBAR: rgba(246, 246, 246, .82);--weui-ORANGE-100: #FA9D3B;--weui-ORANGE-120: #FBB062;--weui-ORANGE-170: #FDE1C3;--weui-ORANGE-80: #C87D2F;--weui-ORANGE-90: #E08C34;--weui-ORANGE-BG-100: #EA7800;--weui-ORANGE-BG-110: #EC8519;--weui-ORANGE-BG-130: #F0A04D;--weui-ORANGE-BG-90: #D26B00;--weui-ORANGERED-100: #FF6146;--weui-OVERLAY: rgba(0, 0, 0, .5);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #6467F0;--weui-PURPLE-120: #8385F3;--weui-PURPLE-170: #D0D1FA;--weui-PURPLE-80: #5052C0;--weui-PURPLE-90: #595CD7;--weui-PURPLE-BG-100: #6769BA;--weui-PURPLE-BG-110: #7678C1;--weui-PURPLE-BG-130: #9496CE;--weui-PURPLE-BG-90: #5C5EA7;--weui-RED-100: #FA5151;--weui-RED-120: #FB7373;--weui-RED-170: #FDCACA;--weui-RED-80: #C84040;--weui-RED-90: #E14949;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #D3625A;--weui-RED-BG-130: #DD847E;--weui-RED-BG-90: #B94840;--weui-SECONDARY-BG: rgba(0, 0, 0, .05);--weui-SEPARATOR-0: rgba(0, 0, 0, .1);--weui-SEPARATOR-1: rgba(0, 0, 0, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(0, 0, 0, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(0, 0, 0, .2);--weui-YELLOW-100: #FFC300;--weui-YELLOW-120: #FFCF33;--weui-YELLOW-170: #FFECB2;--weui-YELLOW-80: #CC9C00;--weui-YELLOW-90: #E6AF00;--weui-YELLOW-BG-100: #EFB600;--weui-YELLOW-BG-110: #F0BD19;--weui-YELLOW-BG-130: #F3CC4D;--weui-YELLOW-BG-90: #D7A400;--weui-FG-HALF: rgba(0, 0, 0, .9);--weui-RED: #FA5151;--weui-ORANGERED: #FF6146;--weui-ORANGE: #FA9D3B;--weui-YELLOW: #FFC300;--weui-GREEN: #91D300;--weui-LIGHTGREEN: #95EC69;--weui-TEXTGREEN: #06AE56;--weui-BRAND: #07C160;--weui-BLUE: #10AEFF;--weui-INDIGO: #1485EE;--weui-PURPLE: #6467F0;--weui-LINK: #576B95;--weui-TAG-TEXT-ORANGE: #FA9D3B;--weui-TAG-TEXT-GREEN: #06AE56;--weui-TAG-TEXT-BLUE: #10AEFF;--weui-REDORANGE: #FF6146;--weui-TAG-TEXT-BLACK: rgba(0, 0, 0, .5);--weui-TAG-BACKGROUND-BLACK: rgba(0, 0, 0, .05);--weui-WHITE: #FFFFFF;--weui-BG: #FFFFFF;--weui-FG: #000;--weui-FG-5: rgba(0, 0, 0, .05);--weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, .1);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, .1)}@media (prefers-color-scheme: dark){.wx-root:not([data-weui-theme=light]),body:not([data-weui-theme=light]){--weui-BG-0: #111111;--weui-BG-1: #1E1E1E;--weui-BG-2: #191919;--weui-BG-3: #202020;--weui-BG-4: #404040;--weui-BG-5: #2C2C2C;--weui-BLUE-100: #10AEFF;--weui-BLUE-120: #0C8BCC;--weui-BLUE-170: #04344D;--weui-BLUE-80: #3FBEFF;--weui-BLUE-90: #28B6FF;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #4095CB;--weui-BLUE-BG-130: #32749E;--weui-BLUE-BG-90: #5AAFE4;--weui-BRAND-100: #07C160;--weui-BRAND-120: #059A4C;--weui-BRAND-170: #023A1C;--weui-BRAND-80: #38CD7F;--weui-BRAND-90: #20C770;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #259C5C;--weui-BRAND-BG-130: #1D7A48;--weui-BRAND-BG-90: #3EB575;--weui-FG-0: rgba(255, 255, 255, .8);--weui-FG-0_5: rgba(255, 255, 255, .6);--weui-FG-1: rgba(255, 255, 255, .5);--weui-FG-2: rgba(255, 255, 255, .3);--weui-FG-3: rgba(255, 255, 255, .1);--weui-FG-4: rgba(255, 255, 255, .15);--weui-GLYPH-0: rgba(255, 255, 255, .8);--weui-GLYPH-1: rgba(255, 255, 255, .5);--weui-GLYPH-2: rgba(255, 255, 255, .3);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .8);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .5);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .3);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #74A800;--weui-GREEN-120: #5C8600;--weui-GREEN-170: #233200;--weui-GREEN-80: #8FB933;--weui-GREEN-90: #82B01A;--weui-GREEN-BG-100: #789833;--weui-GREEN-BG-110: #6B882D;--weui-GREEN-BG-130: #65802B;--weui-GREEN-BG-90: #85A247;--weui-INDIGO-100: #1196FF;--weui-INDIGO-120: #0D78CC;--weui-INDIGO-170: #052D4D;--weui-INDIGO-80: #40ABFF;--weui-INDIGO-90: #28A0FF;--weui-INDIGO-BG-100: #0D78CC;--weui-INDIGO-BG-110: #0B6BB7;--weui-INDIGO-BG-130: #09548F;--weui-INDIGO-BG-90: #2585D1;--weui-LIGHTGREEN-100: #3EB575;--weui-LIGHTGREEN-120: #31905D;--weui-LIGHTGREEN-170: #123522;--weui-LIGHTGREEN-80: #64C390;--weui-LIGHTGREEN-90: #51BC83;--weui-LIGHTGREEN-BG-100: #31905D;--weui-LIGHTGREEN-BG-110: #2C8153;--weui-LIGHTGREEN-BG-130: #226541;--weui-LIGHTGREEN-BG-90: #31905D;--weui-LINK-100: #7D90A9;--weui-LINK-120: #647387;--weui-LINK-170: #252A32;--weui-LINK-80: #97A6BA;--weui-LINK-90: #899AB1;--weui-LINKFINDER-100: #DEE9FF;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(32, 32, 32, .93);--weui-MATERIAL-NAVIGATIONBAR: rgba(18, 18, 18, .9);--weui-MATERIAL-REGULAR: rgba(37, 37, 37, .6);--weui-MATERIAL-THICK: rgba(34, 34, 34, .9);--weui-MATERIAL-THIN: rgba(95, 95, 95, .4);--weui-MATERIAL-TOOLBAR: rgba(35, 35, 35, .93);--weui-ORANGE-100: #C87D2F;--weui-ORANGE-120: #A06425;--weui-ORANGE-170: #3B250E;--weui-ORANGE-80: #D39758;--weui-ORANGE-90: #CD8943;--weui-ORANGE-BG-100: #BB6000;--weui-ORANGE-BG-110: #A85600;--weui-ORANGE-BG-130: #824300;--weui-ORANGE-BG-90: #C1701A;--weui-ORANGERED-100: #FF6146;--weui-OVERLAY: rgba(0, 0, 0, .8);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #8183FF;--weui-PURPLE-120: #6768CC;--weui-PURPLE-170: #26274C;--weui-PURPLE-80: #9A9BFF;--weui-PURPLE-90: #8D8FFF;--weui-PURPLE-BG-100: #6768CC;--weui-PURPLE-BG-110: #5C5DB7;--weui-PURPLE-BG-130: #48498F;--weui-PURPLE-BG-90: #7677D1;--weui-RED-100: #FA5151;--weui-RED-120: #C84040;--weui-RED-170: #4B1818;--weui-RED-80: #FB7373;--weui-RED-90: #FA6262;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #BA4940;--weui-RED-BG-130: #913832;--weui-RED-BG-90: #D3625A;--weui-SECONDARY-BG: rgba(255, 255, 255, .1);--weui-SEPARATOR-0: rgba(255, 255, 255, .05);--weui-SEPARATOR-1: rgba(255, 255, 255, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(255, 255, 255, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(255, 255, 255, .2);--weui-YELLOW-100: #CC9C00;--weui-YELLOW-120: #A37C00;--weui-YELLOW-170: #3D2F00;--weui-YELLOW-80: #D6AF33;--weui-YELLOW-90: #D1A519;--weui-YELLOW-BG-100: #BF9100;--weui-YELLOW-BG-110: #AB8200;--weui-YELLOW-BG-130: #866500;--weui-YELLOW-BG-90: #C59C1A;--weui-FG-HALF: rgba(255, 255, 255, .6);--weui-RED: #FA5151;--weui-ORANGERED: #FF6146;--weui-ORANGE: #C87D2F;--weui-YELLOW: #CC9C00;--weui-GREEN: #74A800;--weui-LIGHTGREEN: #3EB575;--weui-TEXTGREEN: #259C5C;--weui-BRAND: #07C160;--weui-BLUE: #10AEFF;--weui-INDIGO: #1196FF;--weui-PURPLE: #8183FF;--weui-LINK: #7D90A9;--weui-REDORANGE: #FF6146;--weui-TAG-TEXT-BLACK: rgba(255, 255, 255, .5);--weui-TAG-BACKGROUND-BLACK: rgba(255, 255, 255, .05);--weui-WHITE: rgba(255, 255, 255, .8);--weui-FG: #fff;--weui-BG: #000;--weui-FG-5: rgba(255, 255, 255, .1);--weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, .1);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, .1);--weui-TAG-TEXT-ORANGE: rgba(250, 157, 59, .6);--weui-TAG-TEXT-GREEN: rgba(6, 174, 86, .6);--weui-TAG-TEXT-BLUE: rgba(16, 174, 255, .6)}}.wx-root[data-weui-theme=dark],body[data-weui-theme=dark]{--weui-BG-0: #111111;--weui-BG-1: #1E1E1E;--weui-BG-2: #191919;--weui-BG-3: #202020;--weui-BG-4: #404040;--weui-BG-5: #2C2C2C;--weui-BLUE-100: #10AEFF;--weui-BLUE-120: #0C8BCC;--weui-BLUE-170: #04344D;--weui-BLUE-80: #3FBEFF;--weui-BLUE-90: #28B6FF;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #4095CB;--weui-BLUE-BG-130: #32749E;--weui-BLUE-BG-90: #5AAFE4;--weui-BRAND-100: #07C160;--weui-BRAND-120: #059A4C;--weui-BRAND-170: #023A1C;--weui-BRAND-80: #38CD7F;--weui-BRAND-90: #20C770;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #259C5C;--weui-BRAND-BG-130: #1D7A48;--weui-BRAND-BG-90: #3EB575;--weui-FG-0: rgba(255, 255, 255, .8);--weui-FG-0_5: rgba(255, 255, 255, .6);--weui-FG-1: rgba(255, 255, 255, .5);--weui-FG-2: rgba(255, 255, 255, .3);--weui-FG-3: rgba(255, 255, 255, .1);--weui-FG-4: rgba(255, 255, 255, .15);--weui-GLYPH-0: rgba(255, 255, 255, .8);--weui-GLYPH-1: rgba(255, 255, 255, .5);--weui-GLYPH-2: rgba(255, 255, 255, .3);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .8);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .5);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .3);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #74A800;--weui-GREEN-120: #5C8600;--weui-GREEN-170: #233200;--weui-GREEN-80: #8FB933;--weui-GREEN-90: #82B01A;--weui-GREEN-BG-100: #789833;--weui-GREEN-BG-110: #6B882D;--weui-GREEN-BG-130: #65802B;--weui-GREEN-BG-90: #85A247;--weui-INDIGO-100: #1196FF;--weui-INDIGO-120: #0D78CC;--weui-INDIGO-170: #052D4D;--weui-INDIGO-80: #40ABFF;--weui-INDIGO-90: #28A0FF;--weui-INDIGO-BG-100: #0D78CC;--weui-INDIGO-BG-110: #0B6BB7;--weui-INDIGO-BG-130: #09548F;--weui-INDIGO-BG-90: #2585D1;--weui-LIGHTGREEN-100: #3EB575;--weui-LIGHTGREEN-120: #31905D;--weui-LIGHTGREEN-170: #123522;--weui-LIGHTGREEN-80: #64C390;--weui-LIGHTGREEN-90: #51BC83;--weui-LIGHTGREEN-BG-100: #31905D;--weui-LIGHTGREEN-BG-110: #2C8153;--weui-LIGHTGREEN-BG-130: #226541;--weui-LIGHTGREEN-BG-90: #31905D;--weui-LINK-100: #7D90A9;--weui-LINK-120: #647387;--weui-LINK-170: #252A32;--weui-LINK-80: #97A6BA;--weui-LINK-90: #899AB1;--weui-LINKFINDER-100: #DEE9FF;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(32, 32, 32, .93);--weui-MATERIAL-NAVIGATIONBAR: rgba(18, 18, 18, .9);--weui-MATERIAL-REGULAR: rgba(37, 37, 37, .6);--weui-MATERIAL-THICK: rgba(34, 34, 34, .9);--weui-MATERIAL-THIN: rgba(95, 95, 95, .4);--weui-MATERIAL-TOOLBAR: rgba(35, 35, 35, .93);--weui-ORANGE-100: #C87D2F;--weui-ORANGE-120: #A06425;--weui-ORANGE-170: #3B250E;--weui-ORANGE-80: #D39758;--weui-ORANGE-90: #CD8943;--weui-ORANGE-BG-100: #BB6000;--weui-ORANGE-BG-110: #A85600;--weui-ORANGE-BG-130: #824300;--weui-ORANGE-BG-90: #C1701A;--weui-ORANGERED-100: #FF6146;--weui-OVERLAY: rgba(0, 0, 0, .8);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #8183FF;--weui-PURPLE-120: #6768CC;--weui-PURPLE-170: #26274C;--weui-PURPLE-80: #9A9BFF;--weui-PURPLE-90: #8D8FFF;--weui-PURPLE-BG-100: #6768CC;--weui-PURPLE-BG-110: #5C5DB7;--weui-PURPLE-BG-130: #48498F;--weui-PURPLE-BG-90: #7677D1;--weui-RED-100: #FA5151;--weui-RED-120: #C84040;--weui-RED-170: #4B1818;--weui-RED-80: #FB7373;--weui-RED-90: #FA6262;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #BA4940;--weui-RED-BG-130: #913832;--weui-RED-BG-90: #D3625A;--weui-SECONDARY-BG: rgba(255, 255, 255, .1);--weui-SEPARATOR-0: rgba(255, 255, 255, .05);--weui-SEPARATOR-1: rgba(255, 255, 255, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(255, 255, 255, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(255, 255, 255, .2);--weui-YELLOW-100: #CC9C00;--weui-YELLOW-120: #A37C00;--weui-YELLOW-170: #3D2F00;--weui-YELLOW-80: #D6AF33;--weui-YELLOW-90: #D1A519;--weui-YELLOW-BG-100: #BF9100;--weui-YELLOW-BG-110: #AB8200;--weui-YELLOW-BG-130: #866500;--weui-YELLOW-BG-90: #C59C1A;--weui-FG-HALF: rgba(255, 255, 255, .6);--weui-RED: #FA5151;--weui-ORANGERED: #FF6146;--weui-ORANGE: #C87D2F;--weui-YELLOW: #CC9C00;--weui-GREEN: #74A800;--weui-LIGHTGREEN: #3EB575;--weui-TEXTGREEN: #259C5C;--weui-BRAND: #07C160;--weui-BLUE: #10AEFF;--weui-INDIGO: #1196FF;--weui-PURPLE: #8183FF;--weui-LINK: #7D90A9;--weui-REDORANGE: #FF6146;--weui-TAG-TEXT-BLACK: rgba(255, 255, 255, .5);--weui-TAG-BACKGROUND-BLACK: rgba(255, 255, 255, .05);--weui-WHITE: rgba(255, 255, 255, .8);--weui-FG: #fff;--weui-BG: #000;--weui-FG-5: rgba(255, 255, 255, .1);--weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, .1);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, .1);--weui-TAG-TEXT-ORANGE: rgba(250, 157, 59, .6);--weui-TAG-TEXT-GREEN: rgba(6, 174, 86, .6);--weui-TAG-TEXT-BLUE: rgba(16, 174, 255, .6)}.wx-root[data-weui-mode=care],body[data-weui-mode=care]{--weui-BG-0: #EDEDED;--weui-BG-1: #F7F7F7;--weui-BG-2: #FFFFFF;--weui-BG-3: #F7F7F7;--weui-BG-4: #4C4C4C;--weui-BG-5: #FFFFFF;--weui-BLUE-100: #007DBB;--weui-BLUE-120: #3FBEFF;--weui-BLUE-170: #B7E6FF;--weui-BLUE-80: #0C8BCC;--weui-BLUE-90: #0E9CE6;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #5AAFE4;--weui-BLUE-BG-130: #7FC0EA;--weui-BLUE-BG-90: #4095CB;--weui-BRAND-100: #018942;--weui-BRAND-120: #38CD7F;--weui-BRAND-170: #B4ECCE;--weui-BRAND-80: #059A4C;--weui-BRAND-90: #06AE56;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #3EB575;--weui-BRAND-BG-130: #69C694;--weui-BRAND-BG-90: #259C5C;--weui-FG-0: #000000;--weui-FG-0_5: #000000;--weui-FG-1: rgba(0, 0, 0, .6);--weui-FG-2: rgba(0, 0, 0, .42);--weui-FG-3: rgba(0, 0, 0, .1);--weui-FG-4: rgba(0, 0, 0, .15);--weui-GLYPH-0: #000000;--weui-GLYPH-1: rgba(0, 0, 0, .6);--weui-GLYPH-2: rgba(0, 0, 0, .42);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .85);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .55);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .35);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #4F8400;--weui-GREEN-120: #A7DB33;--weui-GREEN-170: #DEF1B3;--weui-GREEN-80: #74A800;--weui-GREEN-90: #82BD00;--weui-GREEN-BG-100: #96BE40;--weui-GREEN-BG-110: #A0C452;--weui-GREEN-BG-130: #B5D179;--weui-GREEN-BG-90: #86AA39;--weui-INDIGO-100: #0075E2;--weui-INDIGO-120: #439DF1;--weui-INDIGO-170: #B8DAF9;--weui-INDIGO-80: #106ABE;--weui-INDIGO-90: #1277D6;--weui-INDIGO-BG-100: #2B77BF;--weui-INDIGO-BG-110: #3F84C5;--weui-INDIGO-BG-130: #6BA0D2;--weui-INDIGO-BG-90: #266AAB;--weui-LIGHTGREEN-100: #2E8800;--weui-LIGHTGREEN-120: #AAEF87;--weui-LIGHTGREEN-170: #DEF9D1;--weui-LIGHTGREEN-80: #77BC54;--weui-LIGHTGREEN-90: #85D35E;--weui-LIGHTGREEN-BG-100: #72CF60;--weui-LIGHTGREEN-BG-110: #80D370;--weui-LIGHTGREEN-BG-130: #9CDD90;--weui-LIGHTGREEN-BG-90: #66B956;--weui-LINK-100: #576B95;--weui-LINK-120: #7888AA;--weui-LINK-170: #CCD2DE;--weui-LINK-80: #455577;--weui-LINK-90: #4E6085;--weui-LINKFINDER-100: #002666;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(245, 245, 245, .95);--weui-MATERIAL-NAVIGATIONBAR: rgba(237, 237, 237, .94);--weui-MATERIAL-REGULAR: rgba(247, 247, 247, .3);--weui-MATERIAL-THICK: rgba(247, 247, 247, .8);--weui-MATERIAL-THIN: rgba(255, 255, 255, .2);--weui-MATERIAL-TOOLBAR: rgba(246, 246, 246, .82);--weui-ORANGE-100: #E17719;--weui-ORANGE-120: #FBB062;--weui-ORANGE-170: #FDE1C3;--weui-ORANGE-80: #C87D2F;--weui-ORANGE-90: #E08C34;--weui-ORANGE-BG-100: #EA7800;--weui-ORANGE-BG-110: #EC8519;--weui-ORANGE-BG-130: #F0A04D;--weui-ORANGE-BG-90: #D26B00;--weui-ORANGERED-100: #D14730;--weui-OVERLAY: rgba(0, 0, 0, .5);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #6265F1;--weui-PURPLE-120: #8385F3;--weui-PURPLE-170: #D0D1FA;--weui-PURPLE-80: #5052C0;--weui-PURPLE-90: #595CD7;--weui-PURPLE-BG-100: #6769BA;--weui-PURPLE-BG-110: #7678C1;--weui-PURPLE-BG-130: #9496CE;--weui-PURPLE-BG-90: #5C5EA7;--weui-RED-100: #DC3636;--weui-RED-120: #FB7373;--weui-RED-170: #FDCACA;--weui-RED-80: #C84040;--weui-RED-90: #E14949;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #D3625A;--weui-RED-BG-130: #DD847E;--weui-RED-BG-90: #B94840;--weui-SECONDARY-BG: rgba(0, 0, 0, .1);--weui-SEPARATOR-0: rgba(0, 0, 0, .1);--weui-SEPARATOR-1: rgba(0, 0, 0, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(0, 0, 0, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(0, 0, 0, .2);--weui-YELLOW-100: #BB8E00;--weui-YELLOW-120: #FFCF33;--weui-YELLOW-170: #FFECB2;--weui-YELLOW-80: #CC9C00;--weui-YELLOW-90: #E6AF00;--weui-YELLOW-BG-100: #EFB600;--weui-YELLOW-BG-110: #F0BD19;--weui-YELLOW-BG-130: #F3CC4D;--weui-YELLOW-BG-90: #D7A400;--weui-FG-HALF: #000000;--weui-RED: #DC3636;--weui-ORANGERED: #D14730;--weui-ORANGE: #E17719;--weui-YELLOW: #BB8E00;--weui-GREEN: #4F8400;--weui-LIGHTGREEN: #2E8800;--weui-TEXTGREEN: #06AE56;--weui-BRAND: #018942;--weui-BLUE: #007DBB;--weui-INDIGO: #0075E2;--weui-PURPLE: #6265F1;--weui-LINK: #576B95;--weui-TAG-TEXT-ORANGE: #E17719;--weui-TAG-TEXT-GREEN: #06AE56;--weui-TAG-TEXT-BLUE: #007DBB;--weui-REDORANGE: #D14730;--weui-TAG-TEXT-BLACK: rgba(0, 0, 0, .5);--weui-WHITE: #FFFFFF;--weui-BG: #FFFFFF;--weui-FG: #000;--weui-FG-5: rgba(0, 0, 0, .05);--weui-TAG-BACKGROUND-ORANGE: rgba(225, 119, 25, .1);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-BACKGROUND-BLUE: rgba(0, 125, 187, .1);--weui-TAG-BACKGROUND-BLACK: rgba(0, 0, 0, .05)}@media (prefers-color-scheme: dark){.wx-root[data-weui-mode=care]:not([data-weui-theme=light]),body[data-weui-mode=care]:not([data-weui-theme=light]){--weui-BG-0: #111111;--weui-BG-1: #1E1E1E;--weui-BG-2: #191919;--weui-BG-3: #202020;--weui-BG-4: #404040;--weui-BG-5: #2C2C2C;--weui-BLUE-100: #10AEFF;--weui-BLUE-120: #0C8BCC;--weui-BLUE-170: #04344D;--weui-BLUE-80: #3FBEFF;--weui-BLUE-90: #28B6FF;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #4095CB;--weui-BLUE-BG-130: #32749E;--weui-BLUE-BG-90: #5AAFE4;--weui-BRAND-100: #07C160;--weui-BRAND-120: #059A4C;--weui-BRAND-170: #023A1C;--weui-BRAND-80: #38CD7F;--weui-BRAND-90: #20C770;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #259C5C;--weui-BRAND-BG-130: #1D7A48;--weui-BRAND-BG-90: #3EB575;--weui-FG-0: rgba(255, 255, 255, .85);--weui-FG-0_5: rgba(255, 255, 255, .65);--weui-FG-1: rgba(255, 255, 255, .55);--weui-FG-2: rgba(255, 255, 255, .35);--weui-FG-3: rgba(255, 255, 255, .1);--weui-FG-4: rgba(255, 255, 255, .15);--weui-GLYPH-0: rgba(255, 255, 255, .85);--weui-GLYPH-1: rgba(255, 255, 255, .55);--weui-GLYPH-2: rgba(255, 255, 255, .35);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .85);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .55);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .35);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #74A800;--weui-GREEN-120: #5C8600;--weui-GREEN-170: #233200;--weui-GREEN-80: #8FB933;--weui-GREEN-90: #82B01A;--weui-GREEN-BG-100: #789833;--weui-GREEN-BG-110: #6B882D;--weui-GREEN-BG-130: #65802B;--weui-GREEN-BG-90: #85A247;--weui-INDIGO-100: #1196FF;--weui-INDIGO-120: #0D78CC;--weui-INDIGO-170: #052D4D;--weui-INDIGO-80: #40ABFF;--weui-INDIGO-90: #28A0FF;--weui-INDIGO-BG-100: #0D78CC;--weui-INDIGO-BG-110: #0B6BB7;--weui-INDIGO-BG-130: #09548F;--weui-INDIGO-BG-90: #2585D1;--weui-LIGHTGREEN-100: #3EB575;--weui-LIGHTGREEN-120: #31905D;--weui-LIGHTGREEN-170: #123522;--weui-LIGHTGREEN-80: #64C390;--weui-LIGHTGREEN-90: #51BC83;--weui-LIGHTGREEN-BG-100: #31905D;--weui-LIGHTGREEN-BG-110: #2C8153;--weui-LIGHTGREEN-BG-130: #226541;--weui-LIGHTGREEN-BG-90: #31905D;--weui-LINK-100: #7D90A9;--weui-LINK-120: #647387;--weui-LINK-170: #252A32;--weui-LINK-80: #97A6BA;--weui-LINK-90: #899AB1;--weui-LINKFINDER-100: #DEE9FF;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(32, 32, 32, .93);--weui-MATERIAL-NAVIGATIONBAR: rgba(18, 18, 18, .9);--weui-MATERIAL-REGULAR: rgba(37, 37, 37, .6);--weui-MATERIAL-THICK: rgba(34, 34, 34, .9);--weui-MATERIAL-THIN: rgba(245, 245, 245, .4);--weui-MATERIAL-TOOLBAR: rgba(35, 35, 35, .93);--weui-ORANGE-100: #C87D2F;--weui-ORANGE-120: #A06425;--weui-ORANGE-170: #3B250E;--weui-ORANGE-80: #D39758;--weui-ORANGE-90: #CD8943;--weui-ORANGE-BG-100: #BB6000;--weui-ORANGE-BG-110: #A85600;--weui-ORANGE-BG-130: #824300;--weui-ORANGE-BG-90: #C1701A;--weui-ORANGERED-100: #FF6146;--weui-OVERLAY: rgba(0, 0, 0, .8);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #8183FF;--weui-PURPLE-120: #6768CC;--weui-PURPLE-170: #26274C;--weui-PURPLE-80: #9A9BFF;--weui-PURPLE-90: #8D8FFF;--weui-PURPLE-BG-100: #6768CC;--weui-PURPLE-BG-110: #5C5DB7;--weui-PURPLE-BG-130: #48498F;--weui-PURPLE-BG-90: #7677D1;--weui-RED-100: #FA5151;--weui-RED-120: #C84040;--weui-RED-170: #4B1818;--weui-RED-80: #FB7373;--weui-RED-90: #FA6262;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #BA4940;--weui-RED-BG-130: #913832;--weui-RED-BG-90: #D3625A;--weui-SECONDARY-BG: rgba(255, 255, 255, .15);--weui-SEPARATOR-0: rgba(255, 255, 255, .05);--weui-SEPARATOR-1: rgba(255, 255, 255, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(255, 255, 255, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(255, 255, 255, .2);--weui-YELLOW-100: #CC9C00;--weui-YELLOW-120: #A37C00;--weui-YELLOW-170: #3D2F00;--weui-YELLOW-80: #D6AF33;--weui-YELLOW-90: #D1A519;--weui-YELLOW-BG-100: #BF9100;--weui-YELLOW-BG-110: #AB8200;--weui-YELLOW-BG-130: #866500;--weui-YELLOW-BG-90: #C59C1A;--weui-FG-HALF: rgba(255, 255, 255, .65);--weui-RED: #FA5151;--weui-ORANGERED: #FF6146;--weui-ORANGE: #C87D2F;--weui-YELLOW: #CC9C00;--weui-GREEN: #74A800;--weui-LIGHTGREEN: #3EB575;--weui-TEXTGREEN: #259C5C;--weui-BRAND: #07C160;--weui-BLUE: #10AEFF;--weui-INDIGO: #1196FF;--weui-PURPLE: #8183FF;--weui-LINK: #7D90A9;--weui-REDORANGE: #FF6146;--weui-TAG-BACKGROUND-BLACK: rgba(255, 255, 255, .05);--weui-FG: #fff;--weui-WHITE: rgba(255, 255, 255, .8);--weui-FG-5: rgba(255, 255, 255, .1);--weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, .1);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, .1);--weui-TAG-TEXT-ORANGE: rgba(250, 157, 59, .6);--weui-BG: #000;--weui-TAG-TEXT-GREEN: rgba(6, 174, 86, .6);--weui-TAG-TEXT-BLUE: rgba(16, 174, 255, .6);--weui-TAG-TEXT-BLACK: rgba(255, 255, 255, .5)}}.wx-root[data-weui-mode=care][data-weui-theme=dark],body[data-weui-mode=care][data-weui-theme=dark]{--weui-BG-0: #111111;--weui-BG-1: #1E1E1E;--weui-BG-2: #191919;--weui-BG-3: #202020;--weui-BG-4: #404040;--weui-BG-5: #2C2C2C;--weui-BLUE-100: #10AEFF;--weui-BLUE-120: #0C8BCC;--weui-BLUE-170: #04344D;--weui-BLUE-80: #3FBEFF;--weui-BLUE-90: #28B6FF;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #4095CB;--weui-BLUE-BG-130: #32749E;--weui-BLUE-BG-90: #5AAFE4;--weui-BRAND-100: #07C160;--weui-BRAND-120: #059A4C;--weui-BRAND-170: #023A1C;--weui-BRAND-80: #38CD7F;--weui-BRAND-90: #20C770;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #259C5C;--weui-BRAND-BG-130: #1D7A48;--weui-BRAND-BG-90: #3EB575;--weui-FG-0: rgba(255, 255, 255, .85);--weui-FG-0_5: rgba(255, 255, 255, .65);--weui-FG-1: rgba(255, 255, 255, .55);--weui-FG-2: rgba(255, 255, 255, .35);--weui-FG-3: rgba(255, 255, 255, .1);--weui-FG-4: rgba(255, 255, 255, .15);--weui-GLYPH-0: rgba(255, 255, 255, .85);--weui-GLYPH-1: rgba(255, 255, 255, .55);--weui-GLYPH-2: rgba(255, 255, 255, .35);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .85);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .55);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .35);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #74A800;--weui-GREEN-120: #5C8600;--weui-GREEN-170: #233200;--weui-GREEN-80: #8FB933;--weui-GREEN-90: #82B01A;--weui-GREEN-BG-100: #789833;--weui-GREEN-BG-110: #6B882D;--weui-GREEN-BG-130: #65802B;--weui-GREEN-BG-90: #85A247;--weui-INDIGO-100: #1196FF;--weui-INDIGO-120: #0D78CC;--weui-INDIGO-170: #052D4D;--weui-INDIGO-80: #40ABFF;--weui-INDIGO-90: #28A0FF;--weui-INDIGO-BG-100: #0D78CC;--weui-INDIGO-BG-110: #0B6BB7;--weui-INDIGO-BG-130: #09548F;--weui-INDIGO-BG-90: #2585D1;--weui-LIGHTGREEN-100: #3EB575;--weui-LIGHTGREEN-120: #31905D;--weui-LIGHTGREEN-170: #123522;--weui-LIGHTGREEN-80: #64C390;--weui-LIGHTGREEN-90: #51BC83;--weui-LIGHTGREEN-BG-100: #31905D;--weui-LIGHTGREEN-BG-110: #2C8153;--weui-LIGHTGREEN-BG-130: #226541;--weui-LIGHTGREEN-BG-90: #31905D;--weui-LINK-100: #7D90A9;--weui-LINK-120: #647387;--weui-LINK-170: #252A32;--weui-LINK-80: #97A6BA;--weui-LINK-90: #899AB1;--weui-LINKFINDER-100: #DEE9FF;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(32, 32, 32, .93);--weui-MATERIAL-NAVIGATIONBAR: rgba(18, 18, 18, .9);--weui-MATERIAL-REGULAR: rgba(37, 37, 37, .6);--weui-MATERIAL-THICK: rgba(34, 34, 34, .9);--weui-MATERIAL-THIN: rgba(245, 245, 245, .4);--weui-MATERIAL-TOOLBAR: rgba(35, 35, 35, .93);--weui-ORANGE-100: #C87D2F;--weui-ORANGE-120: #A06425;--weui-ORANGE-170: #3B250E;--weui-ORANGE-80: #D39758;--weui-ORANGE-90: #CD8943;--weui-ORANGE-BG-100: #BB6000;--weui-ORANGE-BG-110: #A85600;--weui-ORANGE-BG-130: #824300;--weui-ORANGE-BG-90: #C1701A;--weui-ORANGERED-100: #FF6146;--weui-OVERLAY: rgba(0, 0, 0, .8);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #8183FF;--weui-PURPLE-120: #6768CC;--weui-PURPLE-170: #26274C;--weui-PURPLE-80: #9A9BFF;--weui-PURPLE-90: #8D8FFF;--weui-PURPLE-BG-100: #6768CC;--weui-PURPLE-BG-110: #5C5DB7;--weui-PURPLE-BG-130: #48498F;--weui-PURPLE-BG-90: #7677D1;--weui-RED-100: #FA5151;--weui-RED-120: #C84040;--weui-RED-170: #4B1818;--weui-RED-80: #FB7373;--weui-RED-90: #FA6262;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #BA4940;--weui-RED-BG-130: #913832;--weui-RED-BG-90: #D3625A;--weui-SECONDARY-BG: rgba(255, 255, 255, .15);--weui-SEPARATOR-0: rgba(255, 255, 255, .05);--weui-SEPARATOR-1: rgba(255, 255, 255, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(255, 255, 255, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(255, 255, 255, .2);--weui-YELLOW-100: #CC9C00;--weui-YELLOW-120: #A37C00;--weui-YELLOW-170: #3D2F00;--weui-YELLOW-80: #D6AF33;--weui-YELLOW-90: #D1A519;--weui-YELLOW-BG-100: #BF9100;--weui-YELLOW-BG-110: #AB8200;--weui-YELLOW-BG-130: #866500;--weui-YELLOW-BG-90: #C59C1A;--weui-FG-HALF: rgba(255, 255, 255, .65);--weui-RED: #FA5151;--weui-ORANGERED: #FF6146;--weui-ORANGE: #C87D2F;--weui-YELLOW: #CC9C00;--weui-GREEN: #74A800;--weui-LIGHTGREEN: #3EB575;--weui-TEXTGREEN: #259C5C;--weui-BRAND: #07C160;--weui-BLUE: #10AEFF;--weui-INDIGO: #1196FF;--weui-PURPLE: #8183FF;--weui-LINK: #7D90A9;--weui-REDORANGE: #FF6146;--weui-TAG-BACKGROUND-BLACK: rgba(255, 255, 255, .05);--weui-FG: #fff;--weui-WHITE: rgba(255, 255, 255, .8);--weui-FG-5: rgba(255, 255, 255, .1);--weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, .1);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, .1);--weui-TAG-TEXT-ORANGE: rgba(250, 157, 59, .6);--weui-BG: #000;--weui-TAG-TEXT-GREEN: rgba(6, 174, 86, .6);--weui-TAG-TEXT-BLUE: rgba(16, 174, 255, .6);--weui-TAG-TEXT-BLACK: rgba(255, 255, 255, .5)}.wx_hover_card:before{content:\" \";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:8px;box-sizing:border-box;border:1px solid rgba(7,193,96,.3);pointer-events:none;z-index:9}.wx_selected_card:before{content:\" \";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:8px;border:1.5px solid #07C160;box-sizing:border-box;background:rgba(7,193,96,.1);pointer-events:none;z-index:9}.product_card_text_wrp{display:inline;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;font-family:PingFang SC}.iframe_wrp{display:flex;flex-direction:column;-webkit-user-select:none;-moz-user-select:none;user-select:none;align-items:center;position:relative}.iframe_style{height:0px}.product_wx_img_placeholder{width:100%;background:var(--weui-BG-3) url(\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='80px' height='80px' viewBox='0 0 80 80' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3E9.\u5143\u7D20/\u52A0\u8F7D/Black%3C/title%3E%3Cdefs%3E%3ClinearGradient x1='94.0869141%25' y1='0%25' x2='94.0869141%25' y2='90.559082%25' id='linearGradient-1'%3E%3Cstop stop-color='%23606060' stop-opacity='0' offset='0%25'%3E%3C/stop%3E%3Cstop stop-color='%23606060' stop-opacity='0.3' offset='100%25'%3E%3C/stop%3E%3C/linearGradient%3E%3ClinearGradient x1='100%25' y1='8.67370605%25' x2='100%25' y2='90.6286621%25' id='linearGradient-2'%3E%3Cstop stop-color='%23606060' offset='0%25'%3E%3C/stop%3E%3Cstop stop-color='%23606060' stop-opacity='0.3' offset='100%25'%3E%3C/stop%3E%3C/linearGradient%3E%3C/defs%3E%3Cg id='\u9875\u9762-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' opacity='0.9'%3E%3Cg id='LoadingDefault'%3E%3Cpath d='M40,0 C62.09139,0 80,17.90861 80,40 C80,62.09139 62.09139,80 40,80 L40,73 C58.2253967,73 73,58.2253967 73,40 C73,21.7746033 58.2253967,7 40,7 L40,0 Z' id='\u8DEF\u5F84' fill='url(%23linearGradient-1)'%3E%3C/path%3E%3Cpath d='M40,0 L40,7 C21.7746033,7 7,21.7746033 7,40 C7,58.2253967 21.7746033,73 40,73 L40,80 C17.90861,80 0,62.09139 0,40 C0,17.90861 17.90861,0 40,0 Z' id='\u8DEF\u5F84' fill='url(%23linearGradient-2)'%3E%3C/path%3E%3Ccircle id='Oval' fill='%23606060' cx='40.5' cy='3.5' r='3.5'%3E%3C/circle%3E%3C/g%3E%3CanimateTransform attributeName='transform' begin='0s' dur='1s' type='rotate' values='0 40 40;360 40 40' repeatCount='indefinite'/%3E%3C/g%3E%3C/svg%3E%0A\") no-repeat 50% 50%!important;background-size:16px!important;border-radius:8px}:root{--weui-FG-6: rgba(0, 0, 0, .05)}.product_text_link{text-decoration:none;padding:2px 4px;color:var(--weui-LINK);cursor:default;-webkit-user-drag:none;border-radius:4px}.product_text_link:before{content:\"\";display:inline-block;mask-image:url(\"data:image/svg+xml,%3Csvg width='25' height='25' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.798 13.728c-.32 0-.636-.032-.942-.096-1.792-.378-3.042-1.754-3.042-3.348 0-.426.088-.84.262-1.232l.008-.02 2.008-4.498a3.696 3.696 0 0 1 3.372-2.186h9.8A3.697 3.697 0 0 1 20.662 4.6l1.984 4.432c.178.402.268.82.268 1.248 0 1.596-1.252 2.974-3.044 3.348a4.63 4.63 0 0 1-2.176-.074c-.816-.23-1.514-.68-2.002-1.268-.798.846-2.018 1.368-3.326 1.368-1.308 0-2.52-.52-3.322-1.364-.488.59-1.188 1.042-2.014 1.274-.394.11-.808.168-1.23.168l-.002-.004zM3.46 9.632l-.01.022c-.09.2-.136.412-.136.63 0 .878.762 1.65 1.85 1.88.47.098.994.082 1.458-.048.766-.214 1.368-.728 1.576-1.34a1.43 1.43 0 0 0 .046-.158.748.748 0 1 1 1.448-.056l.026.07.012.03c.392.892 1.448 1.49 2.634 1.49s2.25-.602 2.636-1.498c.02-.046.034-.082.046-.12a.744.744 0 0 1 .754-.502.75.75 0 0 1 .688.588c.012.056.026.108.042.152.214.62.802 1.118 1.572 1.334.466.132.99.148 1.46.048 1.092-.228 1.852-1.002 1.852-1.88 0-.216-.046-.43-.138-.636l-1.988-4.44-.008-.018-.018-.036a2.19 2.19 0 0 0-1.998-1.296h-9.8c-.864 0-1.648.51-2 1.298-.008.016-.014.032-.022.046L3.46 9.634v-.002zM12.364 21.642c-4.142 0-7.566-2.634-7.794-5.996a.75.75 0 1 1 1.498-.102c.174 2.578 2.94 4.598 6.298 4.598s6.122-2.02 6.296-4.598a.75.75 0 1 1 1.498.102c-.228 3.362-3.652 5.996-7.794 5.996h-.002z' fill='%23576B95'/%3E%3C/svg%3E\");-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg width='25' height='25' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.798 13.728c-.32 0-.636-.032-.942-.096-1.792-.378-3.042-1.754-3.042-3.348 0-.426.088-.84.262-1.232l.008-.02 2.008-4.498a3.696 3.696 0 0 1 3.372-2.186h9.8A3.697 3.697 0 0 1 20.662 4.6l1.984 4.432c.178.402.268.82.268 1.248 0 1.596-1.252 2.974-3.044 3.348a4.63 4.63 0 0 1-2.176-.074c-.816-.23-1.514-.68-2.002-1.268-.798.846-2.018 1.368-3.326 1.368-1.308 0-2.52-.52-3.322-1.364-.488.59-1.188 1.042-2.014 1.274-.394.11-.808.168-1.23.168l-.002-.004zM3.46 9.632l-.01.022c-.09.2-.136.412-.136.63 0 .878.762 1.65 1.85 1.88.47.098.994.082 1.458-.048.766-.214 1.368-.728 1.576-1.34a1.43 1.43 0 0 0 .046-.158.748.748 0 1 1 1.448-.056l.026.07.012.03c.392.892 1.448 1.49 2.634 1.49s2.25-.602 2.636-1.498c.02-.046.034-.082.046-.12a.744.744 0 0 1 .754-.502.75.75 0 0 1 .688.588c.012.056.026.108.042.152.214.62.802 1.118 1.572 1.334.466.132.99.148 1.46.048 1.092-.228 1.852-1.002 1.852-1.88 0-.216-.046-.43-.138-.636l-1.988-4.44-.008-.018-.018-.036a2.19 2.19 0 0 0-1.998-1.296h-9.8c-.864 0-1.648.51-2 1.298-.008.016-.014.032-.022.046L3.46 9.634v-.002zM12.364 21.642c-4.142 0-7.566-2.634-7.794-5.996a.75.75 0 1 1 1.498-.102c.174 2.578 2.94 4.598 6.298 4.598s6.122-2.02 6.296-4.598a.75.75 0 1 1 1.498.102c-.228 3.362-3.652 5.996-7.794 5.996h-.002z' fill='%23576B95'/%3E%3C/svg%3E\");background-color:currentColor;-webkit-mask-size:contain;mask-size:contain;vertical-align:middle;height:1.1em;width:1.1em;margin-right:2px;margin-top:-.16em}.product-logo{height:1.1em;width:1.1em;display:inline-block;mask-image:url(\"data:image/svg+xml,%3Csvg width='25' height='25' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.798 13.728c-.32 0-.636-.032-.942-.096-1.792-.378-3.042-1.754-3.042-3.348 0-.426.088-.84.262-1.232l.008-.02 2.008-4.498a3.696 3.696 0 0 1 3.372-2.186h9.8A3.697 3.697 0 0 1 20.662 4.6l1.984 4.432c.178.402.268.82.268 1.248 0 1.596-1.252 2.974-3.044 3.348a4.63 4.63 0 0 1-2.176-.074c-.816-.23-1.514-.68-2.002-1.268-.798.846-2.018 1.368-3.326 1.368-1.308 0-2.52-.52-3.322-1.364-.488.59-1.188 1.042-2.014 1.274-.394.11-.808.168-1.23.168l-.002-.004zM3.46 9.632l-.01.022c-.09.2-.136.412-.136.63 0 .878.762 1.65 1.85 1.88.47.098.994.082 1.458-.048.766-.214 1.368-.728 1.576-1.34a1.43 1.43 0 0 0 .046-.158.748.748 0 1 1 1.448-.056l.026.07.012.03c.392.892 1.448 1.49 2.634 1.49s2.25-.602 2.636-1.498c.02-.046.034-.082.046-.12a.744.744 0 0 1 .754-.502.75.75 0 0 1 .688.588c.012.056.026.108.042.152.214.62.802 1.118 1.572 1.334.466.132.99.148 1.46.048 1.092-.228 1.852-1.002 1.852-1.88 0-.216-.046-.43-.138-.636l-1.988-4.44-.008-.018-.018-.036a2.19 2.19 0 0 0-1.998-1.296h-9.8c-.864 0-1.648.51-2 1.298-.008.016-.014.032-.022.046L3.46 9.634v-.002zM12.364 21.642c-4.142 0-7.566-2.634-7.794-5.996a.75.75 0 1 1 1.498-.102c.174 2.578 2.94 4.598 6.298 4.598s6.122-2.02 6.296-4.598a.75.75 0 1 1 1.498.102c-.228 3.362-3.652 5.996-7.794 5.996h-.002z' fill='%23576B95'/%3E%3C/svg%3E\");-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg width='25' height='25' viewBox='0 0 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.798 13.728c-.32 0-.636-.032-.942-.096-1.792-.378-3.042-1.754-3.042-3.348 0-.426.088-.84.262-1.232l.008-.02 2.008-4.498a3.696 3.696 0 0 1 3.372-2.186h9.8A3.697 3.697 0 0 1 20.662 4.6l1.984 4.432c.178.402.268.82.268 1.248 0 1.596-1.252 2.974-3.044 3.348a4.63 4.63 0 0 1-2.176-.074c-.816-.23-1.514-.68-2.002-1.268-.798.846-2.018 1.368-3.326 1.368-1.308 0-2.52-.52-3.322-1.364-.488.59-1.188 1.042-2.014 1.274-.394.11-.808.168-1.23.168l-.002-.004zM3.46 9.632l-.01.022c-.09.2-.136.412-.136.63 0 .878.762 1.65 1.85 1.88.47.098.994.082 1.458-.048.766-.214 1.368-.728 1.576-1.34a1.43 1.43 0 0 0 .046-.158.748.748 0 1 1 1.448-.056l.026.07.012.03c.392.892 1.448 1.49 2.634 1.49s2.25-.602 2.636-1.498c.02-.046.034-.082.046-.12a.744.744 0 0 1 .754-.502.75.75 0 0 1 .688.588c.012.056.026.108.042.152.214.62.802 1.118 1.572 1.334.466.132.99.148 1.46.048 1.092-.228 1.852-1.002 1.852-1.88 0-.216-.046-.43-.138-.636l-1.988-4.44-.008-.018-.018-.036a2.19 2.19 0 0 0-1.998-1.296h-9.8c-.864 0-1.648.51-2 1.298-.008.016-.014.032-.022.046L3.46 9.634v-.002zM12.364 21.642c-4.142 0-7.566-2.634-7.794-5.996a.75.75 0 1 1 1.498-.102c.174 2.578 2.94 4.598 6.298 4.598s6.122-2.02 6.296-4.598a.75.75 0 1 1 1.498.102c-.228 3.362-3.652 5.996-7.794 5.996h-.002z' fill='%23576B95'/%3E%3C/svg%3E\");background-color:currentColor;-webkit-mask-size:contain;mask-size:contain}.shop-verify-icon{height:1em;width:1em;display:inline-block;background-size:contain;background-position:center;background-repeat:no-repeat}.weui-toast{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background-color:#4c4c4c;border-radius:8px;color:#fff;font-size:14px;line-height:1.4;padding:0 20px}.discounted_price.fade-enter,.discounted_price.fade-leave-to{opacity:0;height:0}.discounted_price.fade-enter-to,.discounted_price.fade-leave{opacity:1;height:15px}.discounted_price.fade-enter-active,.discounted_price.fade-leave-active{transition:opacity .15s,height .15s}.activity_card_wrp{-webkit-user-select:none;-moz-user-select:none;user-select:none;width:-moz-fit-content;width:fit-content}.activity_card_wrp .activity_card_wrp__container{display:flex;flex-direction:column;align-items:center;background-color:#0000001a;-webkit-backdrop-filter:blur(50px);backdrop-filter:blur(50px);border-radius:8px;padding:10px}.activity_card_wrp .activity_card_wrp__container .product_image{width:52px;height:52px;border-radius:2px;margin-bottom:8px}.activity_card_wrp .discounted_price{overflow:hidden;font-weight:500;color:#e0b684;line-height:1;font-family:WeChatSansStd-Medium;line-height:normal;font-size:15px}@font-face{font-family:WeChatSansStd-Medium;src:url(data:application/octet-stream;base64,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AwYAAwABBAkABAAsA1oAAwABBAkABQAYA4YAAwABBAkABgAsA54AAwABBAkABwBMA8oAAwABBAkACAAWBBYAAwABBAkACQBGBCwAAwABBAkACwAwBHIAAwABBAkAEAAeBKIAAwABBAkAEQAMBMAAAwABBAkAEwAiBMwAAwABCAQAAABmBO4AAwABCAQAAQAsBVQAAwABCAQAAgAOBYAAAwABCAQABAAsBY4AAwABCAQABwBMBboAAwABCAQACAAWBgYAAwABCAQACQBGBhwAAwABCAQAEAAeBmIAAwABCAQAEQAMBoBDb3B5cmlnaHQgKGMpIDIwMTcgYnkgVGVuY2VudC4gQWxsIHJpZ2h0cyByZXNlcnZlZC5XZUNoYXQgU2FucyBTdGRNZWRpdW1IYW55aSBXZUNoYXQgU2FucyBTdGQtTWVkaXVtOyBWZXJzaW9uIDEuMDBXZUNoYXQgU2FucyBTdGQtTWVkaXVtVmVyc2lvbiAxLjAwV2VDaGF0LVNhbnMtU3RkLU1lZGl1bVdlQ2hhdCBTYW5zIGlzIGEgdHJhZGVtYXJrIG9mIFRlbmNlbnQuSGFueWkgRm9udHNaSEFORyBYdWFuLCBXQU5HIFRpYW5iaSwgTElVIFhpYW95dWh0dHA6Ly93d3cuaGFueWkuY29tLmNuL1dlQ2hhdCBTYW5zIFN0ZE1lZGl1bVdlQ2hhdCBTYW5zIFN0ZC1NZWRpdW3boiSjX7QKMTIzNDU2Nzg5MENvcHlyaWdodCAoYykgMjAxNyBieSBUZW5jZW50LiBBbGwgcmlnaHRzIHJlc2VydmVkLldlQ2hhdCBTYW5zIFN0ZE1lZGl1bUhhbnlpIFdlQ2hhdCBTYW5zIFN0ZC1NZWRpdW07IFZlcnNpb24gMS4wMFdlQ2hhdCBTYW5zIFN0ZC1NZWRpdW1WZXJzaW9uIDEuMDBXZUNoYXQtU2Fucy1TdGQtTWVkaXVtV2VDaGF0IFNhbnMgaXMgYSB0cmFkZW1hcmsgb2YgVGVuY2VudC5IYW55aSBGb250c1pIQU5HIFh1YW4sIFdBTkcgVGlhbmJpLCBMSVUgWGlhb3l1V2VDaGF0IFNhbnMgU3RkLU1lZGl1bQBDAG8AcAB5AHIAaQBnAGgAdAAgACgAYwApACAAMgAwADEANwAgAGIAeQAgAFQAZQBuAGMAZQBuAHQALgAgAEEAbABsACAAcgBpAGcAaAB0AHMAIAByAGUAcwBlAHIAdgBlAGQALgBXAGUAQwBoAGEAdAAgAFMAYQBuAHMAIABTAHQAZAAgAE0AZQBkAGkAdQBtAFIAZQBnAHUAbABhAHIASABhAG4AeQBpACAAVwBlAEMAaABhAHQAIABTAGEAbgBzACAAUwB0AGQALQBNAGUAZABpAHUAbQA7ACAAVgBlAHIAcwBpAG8AbgAgADEALgAwADAAVwBlAEMAaABhAHQAIABTAGEAbgBzACAAUwB0AGQALQBNAGUAZABpAHUAbQBWAGUAcgBzAGkAbwBuACAAMQAuADAAMABXAGUAQwBoAGEAdAAtAFMAYQBuAHMALQBTAHQAZAAtAE0AZQBkAGkAdQBtAFcAZQBDAGgAYQB0ACAAUwBhAG4AcwAgAGkAcwAgAGEAIAB0AHIAYQBkAGUAbQBhAHIAawAgAG8AZgAgAFQAZQBuAGMAZQBuAHQALgBIAGEAbgB5AGkAIABGAG8AbgB0AHMAWgBIAEEATgBHACAAWAB1AGEAbgAsACAAVwBBAE4ARwAgAFQAaQBhAG4AYgBpACwAIABMAEkAVQAgAFgAaQBhAG8AeQB1AGgAdAB0AHAAOgAvAC8AdwB3AHcALgBoAGEAbgB5AGkALgBjAG8AbQAuAGMAbgAvAFcAZQBDAGgAYQB0ACAAUwBhAG4AcwAgAFMAdABkAE0AZQBkAGkAdQBtIKwAogAkAKMgqQClAAoAMQAyADMANAA1ADYANwA4ADkAMABDAG8AcAB5AHIAaQBnAGgAdAAgACgAYwApACAAMgAwADEANwAgAGIAeQAgAFQAZQBuAGMAZQBuAHQALgAgAEEAbABsACAAcgBpAGcAaAB0AHMAIAByAGUAcwBlAHIAdgBlAGQALgBXAGUAQwBoAGEAdAAgAFMAYQBuAHMAIABTAHQAZAAgAE0AZQBkAGkAdQBtAFIAZQBnAHUAbABhAHIAVwBlAEMAaABhAHQAIABTAGEAbgBzACAAUwB0AGQALQBNAGUAZABpAHUAbQBXAGUAQwBoAGEAdAAgAFMAYQBuAHMAIABpAHMAIABhACAAdAByAGEAZABlAG0AYQByAGsAIABvAGYAIABUAGUAbgBjAGUAbgB0AC4ASABhAG4AeQBpACAARgBvAG4AdABzAFoASABBAE4ARwAgAFgAdQBhAG4ALAAgAFcAQQBOAEcAIABUAGkAYQBuAGIAaQAsACAATABJAFUAIABYAGkAYQBvAHkAdQBXAGUAQwBoAGEAdAAgAFMAYQBuAHMAIABTAHQAZABNAGUAZABpAHUAbQAAAAIAAAAAAAD/tQAyAAAAAAAAAAAAAAAAAAAAAAAAAAAAYwAAAAMAJAAlACYAJwAoACkAKgArACwALQAuAC8AMAAxADIAMwA0ADUANgA3ADgAOQA6ADsAPAA9AEQARQBGAEcASABJAEoASwBMAE0ATgBPAFAAUQBSAFMAVABVAFYAVwBYAFkAWgBbAFwAXQATABQAFQAWABcAGAAZABoAGwAcAA8AEQAQAQIBAwCEAQQAvQAHAQUBBgEHAQgBCQEKAQsBDAENAQ4BDwEQAREBEgCFARMBFAEVAJYBFgEXARgBGQEaAA4A7wd1bmkwRTNGB3VuaTIwQjUNY29sb25tb25ldGFyeQd1bmlGRTY5BGRvbmcERXVybwd1bmkyMEIyB3VuaTIwQjQHdW5pMjBBRAd1bmkyMEJFB3VuaTIwQkEHdW5pMjBCQwd1bmkyMEE2B3VuaTIwQjEHdW5pMjBCRAd1bmkyMEI5B3VuaTIwQUEHdW5pMjBCOAd1bmkyMEFFB3VuaTIwQTkHdW5pRkZFMAd1bmlGRjA0B3VuaUZGRTEHdW5pRkZFNgd1bmlGRkU1) format(\"truetype\")}.activity_card_wrp .origin_price{font-weight:500;color:#fff;line-height:1;transition:font-size .15s,font-weight .15s,color .15s,-webkit-text-decoration .15s;transition:font-size .15s,font-weight .15s,color .15s,text-decoration .15s;transition:font-size .15s,font-weight .15s,color .15s,text-decoration .15s,-webkit-text-decoration .15s;font-family:WeChatSansStd-Medium;line-height:normal;font-size:15px}@font-face{font-family:WeChatSansStd-Medium;src:url(data:application/octet-stream;base64,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AwYAAwABBAkABAAsA1oAAwABBAkABQAYA4YAAwABBAkABgAsA54AAwABBAkABwBMA8oAAwABBAkACAAWBBYAAwABBAkACQBGBCwAAwABBAkACwAwBHIAAwABBAkAEAAeBKIAAwABBAkAEQAMBMAAAwABBAkAEwAiBMwAAwABCAQAAABmBO4AAwABCAQAAQAsBVQAAwABCAQAAgAOBYAAAwABCAQABAAsBY4AAwABCAQABwBMBboAAwABCAQACAAWBgYAAwABCAQACQBGBhwAAwABCAQAEAAeBmIAAwABCAQAEQAMBoBDb3B5cmlnaHQgKGMpIDIwMTcgYnkgVGVuY2VudC4gQWxsIHJpZ2h0cyByZXNlcnZlZC5XZUNoYXQgU2FucyBTdGRNZWRpdW1IYW55aSBXZUNoYXQgU2FucyBTdGQtTWVkaXVtOyBWZXJzaW9uIDEuMDBXZUNoYXQgU2FucyBTdGQtTWVkaXVtVmVyc2lvbiAxLjAwV2VDaGF0LVNhbnMtU3RkLU1lZGl1bVdlQ2hhdCBTYW5zIGlzIGEgdHJhZGVtYXJrIG9mIFRlbmNlbnQuSGFueWkgRm9udHNaSEFORyBYdWFuLCBXQU5HIFRpYW5iaSwgTElVIFhpYW95dWh0dHA6Ly93d3cuaGFueWkuY29tLmNuL1dlQ2hhdCBTYW5zIFN0ZE1lZGl1bVdlQ2hhdCBTYW5zIFN0ZC1NZWRpdW3boiSjX7QKMTIzNDU2Nzg5MENvcHlyaWdodCAoYykgMjAxNyBieSBUZW5jZW50LiBBbGwgcmlnaHRzIHJlc2VydmVkLldlQ2hhdCBTYW5zIFN0ZE1lZGl1bUhhbnlpIFdlQ2hhdCBTYW5zIFN0ZC1NZWRpdW07IFZlcnNpb24gMS4wMFdlQ2hhdCBTYW5zIFN0ZC1NZWRpdW1WZXJzaW9uIDEuMDBXZUNoYXQtU2Fucy1TdGQtTWVkaXVtV2VDaGF0IFNhbnMgaXMgYSB0cmFkZW1hcmsgb2YgVGVuY2VudC5IYW55aSBGb250c1pIQU5HIFh1YW4sIFdBTkcgVGlhbmJpLCBMSVUgWGlhb3l1V2VDaGF0IFNhbnMgU3RkLU1lZGl1bQBDAG8AcAB5AHIAaQBnAGgAdAAgACgAYwApACAAMgAwADEANwAgAGIAeQAgAFQAZQBuAGMAZQBuAHQALgAgAEEAbABsACAAcgBpAGcAaAB0AHMAIAByAGUAcwBlAHIAdgBlAGQALgBXAGUAQwBoAGEAdAAgAFMAYQBuAHMAIABTAHQAZAAgAE0AZQBkAGkAdQBtAFIAZQBnAHUAbABhAHIASABhAG4AeQBpACAAVwBlAEMAaABhAHQAIABTAGEAbgBzACAAUwB0AGQALQBNAGUAZABpAHUAbQA7ACAAVgBlAHIAcwBpAG8AbgAgADEALgAwADAAVwBlAEMAaABhAHQAIABTAGEAbgBzACAAUwB0AGQALQBNAGUAZABpAHUAbQBWAGUAcgBzAGkAbwBuACAAMQAuADAAMABXAGUAQwBoAGEAdAAtAFMAYQBuAHMALQBTAHQAZAAtAE0AZQBkAGkAdQBtAFcAZQBDAGgAYQB0ACAAUwBhAG4AcwAgAGkAcwAgAGEAIAB0AHIAYQBkAGUAbQBhAHIAawAgAG8AZgAgAFQAZQBuAGMAZQBuAHQALgBIAGEAbgB5AGkAIABGAG8AbgB0AHMAWgBIAEEATgBHACAAWAB1AGEAbgAsACAAVwBBAE4ARwAgAFQAaQBhAG4AYgBpACwAIABMAEkAVQAgAFgAaQBhAG8AeQB1AGgAdAB0AHAAOgAvAC8AdwB3AHcALgBoAGEAbgB5AGkALgBjAG8AbQAuAGMAbgAvAFcAZQBDAGgAYQB0ACAAUwBhAG4AcwAgAFMAdABkAE0AZQBkAGkAdQBtIKwAogAkAKMgqQClAAoAMQAyADMANAA1ADYANwA4ADkAMABDAG8AcAB5AHIAaQBnAGgAdAAgACgAYwApACAAMgAwADEANwAgAGIAeQAgAFQAZQBuAGMAZQBuAHQALgAgAEEAbABsACAAcgBpAGcAaAB0AHMAIAByAGUAcwBlAHIAdgBlAGQALgBXAGUAQwBoAGEAdAAgAFMAYQBuAHMAIABTAHQAZAAgAE0AZQBkAGkAdQBtAFIAZQBnAHUAbABhAHIAVwBlAEMAaABhAHQAIABTAGEAbgBzACAAUwB0AGQALQBNAGUAZABpAHUAbQBXAGUAQwBoAGEAdAAgAFMAYQBuAHMAIABpAHMAIABhACAAdAByAGEAZABlAG0AYQByAGsAIABvAGYAIABUAGUAbgBjAGUAbgB0AC4ASABhAG4AeQBpACAARgBvAG4AdABzAFoASABBAE4ARwAgAFgAdQBhAG4ALAAgAFcAQQBOAEcAIABUAGkAYQBuAGIAaQAsACAATABJAFUAIABYAGkAYQBvAHkAdQBXAGUAQwBoAGEAdAAgAFMAYQBuAHMAIABTAHQAZABNAGUAZABpAHUAbQAAAAIAAAAAAAD/tQAyAAAAAAAAAAAAAAAAAAAAAAAAAAAAYwAAAAMAJAAlACYAJwAoACkAKgArACwALQAuAC8AMAAxADIAMwA0ADUANgA3ADgAOQA6ADsAPAA9AEQARQBGAEcASABJAEoASwBMAE0ATgBPAFAAUQBSAFMAVABVAFYAVwBYAFkAWgBbAFwAXQATABQAFQAWABcAGAAZABoAGwAcAA8AEQAQAQIBAwCEAQQAvQAHAQUBBgEHAQgBCQEKAQsBDAENAQ4BDwEQAREBEgCFARMBFAEVAJYBFgEXARgBGQEaAA4A7wd1bmkwRTNGB3VuaTIwQjUNY29sb25tb25ldGFyeQd1bmlGRTY5BGRvbmcERXVybwd1bmkyMEIyB3VuaTIwQjQHdW5pMjBBRAd1bmkyMEJFB3VuaTIwQkEHdW5pMjBCQwd1bmkyMEE2B3VuaTIwQjEHdW5pMjBCRAd1bmkyMEI5B3VuaTIwQUEHdW5pMjBCOAd1bmkyMEFFB3VuaTIwQTkHdW5pRkZFMAd1bmlGRjA0B3VuaUZGRTEHdW5pRkZFNgd1bmlGRkU1) format(\"truetype\")}.activity_card_wrp .origin_price.has_discount{font-weight:400;text-decoration:line-through;-webkit-text-decoration-color:#fff;text-decoration-color:#fff;color:#fff;opacity:.5;font-family:WeChatSansStd-Medium;line-height:normal;font-size:12px}@font-face{font-family:WeChatSansStd-Medium;src:url(data:application/octet-stream;base64,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AwYAAwABBAkABAAsA1oAAwABBAkABQAYA4YAAwABBAkABgAsA54AAwABBAkABwBMA8oAAwABBAkACAAWBBYAAwABBAkACQBGBCwAAwABBAkACwAwBHIAAwABBAkAEAAeBKIAAwABBAkAEQAMBMAAAwABBAkAEwAiBMwAAwABCAQAAABmBO4AAwABCAQAAQAsBVQAAwABCAQAAgAOBYAAAwABCAQABAAsBY4AAwABCAQABwBMBboAAwABCAQACAAWBgYAAwABCAQACQBGBhwAAwABCAQAEAAeBmIAAwABCAQAEQAMBoBDb3B5cmlnaHQgKGMpIDIwMTcgYnkgVGVuY2VudC4gQWxsIHJpZ2h0cyByZXNlcnZlZC5XZUNoYXQgU2FucyBTdGRNZWRpdW1IYW55aSBXZUNoYXQgU2FucyBTdGQtTWVkaXVtOyBWZXJzaW9uIDEuMDBXZUNoYXQgU2FucyBTdGQtTWVkaXVtVmVyc2lvbiAxLjAwV2VDaGF0LVNhbnMtU3RkLU1lZGl1bVdlQ2hhdCBTYW5zIGlzIGEgdHJhZGVtYXJrIG9mIFRlbmNlbnQuSGFueWkgRm9udHNaSEFORyBYdWFuLCBXQU5HIFRpYW5iaSwgTElVIFhpYW95dWh0dHA6Ly93d3cuaGFueWkuY29tLmNuL1dlQ2hhdCBTYW5zIFN0ZE1lZGl1bVdlQ2hhdCBTYW5zIFN0ZC1NZWRpdW3boiSjX7QKMTIzNDU2Nzg5MENvcHlyaWdodCAoYykgMjAxNyBieSBUZW5jZW50LiBBbGwgcmlnaHRzIHJlc2VydmVkLldlQ2hhdCBTYW5zIFN0ZE1lZGl1bUhhbnlpIFdlQ2hhdCBTYW5zIFN0ZC1NZWRpdW07IFZlcnNpb24gMS4wMFdlQ2hhdCBTYW5zIFN0ZC1NZWRpdW1WZXJzaW9uIDEuMDBXZUNoYXQtU2Fucy1TdGQtTWVkaXVtV2VDaGF0IFNhbnMgaXMgYSB0cmFkZW1hcmsgb2YgVGVuY2VudC5IYW55aSBGb250c1pIQU5HIFh1YW4sIFdBTkcgVGlhbmJpLCBMSVUgWGlhb3l1V2VDaGF0IFNhbnMgU3RkLU1lZGl1bQBDAG8AcAB5AHIAaQBnAGgAdAAgACgAYwApACAAMgAwADEANwAgAGIAeQAgAFQAZQBuAGMAZQBuAHQALgAgAEEAbABsACAAcgBpAGcAaAB0AHMAIAByAGUAcwBlAHIAdgBlAGQALgBXAGUAQwBoAGEAdAAgAFMAYQBuAHMAIABTAHQAZAAgAE0AZQBkAGkAdQBtAFIAZQBnAHUAbABhAHIASABhAG4AeQBpACAAVwBlAEMAaABhAHQAIABTAGEAbgBzACAAUwB0AGQALQBNAGUAZABpAHUAbQA7ACAAVgBlAHIAcwBpAG8AbgAgADEALgAwADAAVwBlAEMAaABhAHQAIABTAGEAbgBzACAAUwB0AGQALQBNAGUAZABpAHUAbQBWAGUAcgBzAGkAbwBuACAAMQAuADAAMABXAGUAQwBoAGEAdAAtAFMAYQBuAHMALQBTAHQAZAAtAE0AZQBkAGkAdQBtAFcAZQBDAGgAYQB0ACAAUwBhAG4AcwAgAGkAcwAgAGEAIAB0AHIAYQBkAGUAbQBhAHIAawAgAG8AZgAgAFQAZQBuAGMAZQBuAHQALgBIAGEAbgB5AGkAIABGAG8AbgB0AHMAWgBIAEEATgBHACAAWAB1AGEAbgAsACAAVwBBAE4ARwAgAFQAaQBhAG4AYgBpACwAIABMAEkAVQAgAFgAaQBhAG8AeQB1AGgAdAB0AHAAOgAvAC8AdwB3AHcALgBoAGEAbgB5AGkALgBjAG8AbQAuAGMAbgAvAFcAZQBDAGgAYQB0ACAAUwBhAG4AcwAgAFMAdABkAE0AZQBkAGkAdQBtIKwAogAkAKMgqQClAAoAMQAyADMANAA1ADYANwA4ADkAMABDAG8AcAB5AHIAaQBnAGgAdAAgACgAYwApACAAMgAwADEANwAgAGIAeQAgAFQAZQBuAGMAZQBuAHQALgAgAEEAbABsACAAcgBpAGcAaAB0AHMAIAByAGUAcwBlAHIAdgBlAGQALgBXAGUAQwBoAGEAdAAgAFMAYQBuAHMAIABTAHQAZAAgAE0AZQBkAGkAdQBtAFIAZQBnAHUAbABhAHIAVwBlAEMAaABhAHQAIABTAGEAbgBzACAAUwB0AGQALQBNAGUAZABpAHUAbQBXAGUAQwBoAGEAdAAgAFMAYQBuAHMAIABpAHMAIABhACAAdAByAGEAZABlAG0AYQByAGsAIABvAGYAIABUAGUAbgBjAGUAbgB0AC4ASABhAG4AeQBpACAARgBvAG4AdABzAFoASABBAE4ARwAgAFgAdQBhAG4ALAAgAFcAQQBOAEcAIABUAGkAYQBuAGIAaQAsACAATABJAFUAIABYAGkAYQBvAHkAdQBXAGUAQwBoAGEAdAAgAFMAYQBuAHMAIABTAHQAZABNAGUAZABpAHUAbQAAAAIAAAAAAAD/tQAyAAAAAAAAAAAAAAAAAAAAAAAAAAAAYwAAAAMAJAAlACYAJwAoACkAKgArACwALQAuAC8AMAAxADIAMwA0ADUANgA3ADgAOQA6ADsAPAA9AEQARQBGAEcASABJAEoASwBMAE0ATgBPAFAAUQBSAFMAVABVAFYAVwBYAFkAWgBbAFwAXQATABQAFQAWABcAGAAZABoAGwAcAA8AEQAQAQIBAwCEAQQAvQAHAQUBBgEHAQgBCQEKAQsBDAENAQ4BDwEQAREBEgCFARMBFAEVAJYBFgEXARgBGQEaAA4A7wd1bmkwRTNGB3VuaTIwQjUNY29sb25tb25ldGFyeQd1bmlGRTY5BGRvbmcERXVybwd1bmkyMEIyB3VuaTIwQjQHdW5pMjBBRAd1bmkyMEJFB3VuaTIwQkEHdW5pMjBCQwd1bmkyMEE2B3VuaTIwQjEHdW5pMjBCRAd1bmkyMEI5B3VuaTIwQUEHdW5pMjBCOAd1bmkyMEFFB3VuaTIwQTkHdW5pRkZFMAd1bmlGRjA0B3VuaUZGRTEHdW5pRkZFNgd1bmlGRkU1) format(\"truetype\")}.s1s_card_wrp{font-family:system-ui,PingFang SC;display:flex;align-items:center}.s1s_card_wrp .product-image{width:4em;height:4em;border-radius:2px;margin-right:12px}.s1s_card_wrp .product-info{flex:1;width:200px;line-height:1;display:flex;height:4em;flex-direction:column;box-sizing:border-box;padding:4px 0 0;justify-content:space-between}.s1s_card_wrp .product-title{color:var(--weui-FG-0);font-size:15px;width:100%;font-weight:400;padding-bottom:5px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.s1s_card_wrp .product-price{color:#b3b3b3;font-weight:400;text-decoration:line-through;font-family:WeChatSansStd-Medium;line-height:normal;font-size:13px;line-height:1;padding-left:4px;padding-right:6px;position:relative}@font-face{font-family:WeChatSansStd-Medium;src:url(data:application/octet-stream;base64,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AwYAAwABBAkABAAsA1oAAwABBAkABQAYA4YAAwABBAkABgAsA54AAwABBAkABwBMA8oAAwABBAkACAAWBBYAAwABBAkACQBGBCwAAwABBAkACwAwBHIAAwABBAkAEAAeBKIAAwABBAkAEQAMBMAAAwABBAkAEwAiBMwAAwABCAQAAABmBO4AAwABCAQAAQAsBVQAAwABCAQAAgAOBYAAAwABCAQABAAsBY4AAwABCAQABwBMBboAAwABCAQACAAWBgYAAwABCAQACQBGBhwAAwABCAQAEAAeBmIAAwABCAQAEQAMBoBDb3B5cmlnaHQgKGMpIDIwMTcgYnkgVGVuY2VudC4gQWxsIHJpZ2h0cyByZXNlcnZlZC5XZUNoYXQgU2FucyBTdGRNZWRpdW1IYW55aSBXZUNoYXQgU2FucyBTdGQtTWVkaXVtOyBWZXJzaW9uIDEuMDBXZUNoYXQgU2FucyBTdGQtTWVkaXVtVmVyc2lvbiAxLjAwV2VDaGF0LVNhbnMtU3RkLU1lZGl1bVdlQ2hhdCBTYW5zIGlzIGEgdHJhZGVtYXJrIG9mIFRlbmNlbnQuSGFueWkgRm9udHNaSEFORyBYdWFuLCBXQU5HIFRpYW5iaSwgTElVIFhpYW95dWh0dHA6Ly93d3cuaGFueWkuY29tLmNuL1dlQ2hhdCBTYW5zIFN0ZE1lZGl1bVdlQ2hhdCBTYW5zIFN0ZC1NZWRpdW3boiSjX7QKMTIzNDU2Nzg5MENvcHlyaWdodCAoYykgMjAxNyBieSBUZW5jZW50LiBBbGwgcmlnaHRzIHJlc2VydmVkLldlQ2hhdCBTYW5zIFN0ZE1lZGl1bUhhbnlpIFdlQ2hhdCBTYW5zIFN0ZC1NZWRpdW07IFZlcnNpb24gMS4wMFdlQ2hhdCBTYW5zIFN0ZC1NZWRpdW1WZXJzaW9uIDEuMDBXZUNoYXQtU2Fucy1TdGQtTWVkaXVtV2VDaGF0IFNhbnMgaXMgYSB0cmFkZW1hcmsgb2YgVGVuY2VudC5IYW55aSBGb250c1pIQU5HIFh1YW4sIFdBTkcgVGlhbmJpLCBMSVUgWGlhb3l1V2VDaGF0IFNhbnMgU3RkLU1lZGl1bQBDAG8AcAB5AHIAaQBnAGgAdAAgACgAYwApACAAMgAwADEANwAgAGIAeQAgAFQAZQBuAGMAZQBuAHQALgAgAEEAbABsACAAcgBpAGcAaAB0AHMAIAByAGUAcwBlAHIAdgBlAGQALgBXAGUAQwBoAGEAdAAgAFMAYQBuAHMAIABTAHQAZAAgAE0AZQBkAGkAdQBtAFIAZQBnAHUAbABhAHIASABhAG4AeQBpACAAVwBlAEMAaABhAHQAIABTAGEAbgBzACAAUwB0AGQALQBNAGUAZABpAHUAbQA7ACAAVgBlAHIAcwBpAG8AbgAgADEALgAwADAAVwBlAEMAaABhAHQAIABTAGEAbgBzACAAUwB0AGQALQBNAGUAZABpAHUAbQBWAGUAcgBzAGkAbwBuACAAMQAuADAAMABXAGUAQwBoAGEAdAAtAFMAYQBuAHMALQBTAHQAZAAtAE0AZQBkAGkAdQBtAFcAZQBDAGgAYQB0ACAAUwBhAG4AcwAgAGkAcwAgAGEAIAB0AHIAYQBkAGUAbQBhAHIAawAgAG8AZgAgAFQAZQBuAGMAZQBuAHQALgBIAGEAbgB5AGkAIABGAG8AbgB0AHMAWgBIAEEATgBHACAAWAB1AGEAbgAsACAAVwBBAE4ARwAgAFQAaQBhAG4AYgBpACwAIABMAEkAVQAgAFgAaQBhAG8AeQB1AGgAdAB0AHAAOgAvAC8AdwB3AHcALgBoAGEAbgB5AGkALgBjAG8AbQAuAGMAbgAvAFcAZQBDAGgAYQB0ACAAUwBhAG4AcwAgAFMAdABkAE0AZQBkAGkAdQBtIKwAogAkAKMgqQClAAoAMQAyADMANAA1ADYANwA4ADkAMABDAG8AcAB5AHIAaQBnAGgAdAAgACgAYwApACAAMgAwADEANwAgAGIAeQAgAFQAZQBuAGMAZQBuAHQALgAgAEEAbABsACAAcgBpAGcAaAB0AHMAIAByAGUAcwBlAHIAdgBlAGQALgBXAGUAQwBoAGEAdAAgAFMAYQBuAHMAIABTAHQAZAAgAE0AZQBkAGkAdQBtAFIAZQBnAHUAbABhAHIAVwBlAEMAaABhAHQAIABTAGEAbgBzACAAUwB0AGQALQBNAGUAZABpAHUAbQBXAGUAQwBoAGEAdAAgAFMAYQBuAHMAIABpAHMAIABhACAAdAByAGEAZABlAG0AYQByAGsAIABvAGYAIABUAGUAbgBjAGUAbgB0AC4ASABhAG4AeQBpACAARgBvAG4AdABzAFoASABBAE4ARwAgAFgAdQBhAG4ALAAgAFcAQQBOAEcAIABUAGkAYQBuAGIAaQAsACAATABJAFUAIABYAGkAYQBvAHkAdQBXAGUAQwBoAGEAdAAgAFMAYQBuAHMAIABTAHQAZABNAGUAZABpAHUAbQAAAAIAAAAAAAD/tQAyAAAAAAAAAAAAAAAAAAAAAAAAAAAAYwAAAAMAJAAlACYAJwAoACkAKgArACwALQAuAC8AMAAxADIAMwA0ADUANgA3ADgAOQA6ADsAPAA9AEQARQBGAEcASABJAEoASwBMAE0ATgBPAFAAUQBSAFMAVABVAFYAVwBYAFkAWgBbAFwAXQATABQAFQAWABcAGAAZABoAGwAcAA8AEQAQAQIBAwCEAQQAvQAHAQUBBgEHAQgBCQEKAQsBDAENAQ4BDwEQAREBEgCFARMBFAEVAJYBFgEXARgBGQEaAA4A7wd1bmkwRTNGB3VuaTIwQjUNY29sb25tb25ldGFyeQd1bmlGRTY5BGRvbmcERXVybwd1bmkyMEIyB3VuaTIwQjQHdW5pMjBBRAd1bmkyMEJFB3VuaTIwQkEHdW5pMjBCQwd1bmkyMEE2B3VuaTIwQjEHdW5pMjBCRAd1bmkyMEI5B3VuaTIwQUEHdW5pMjBCOAd1bmkyMEFFB3VuaTIwQTkHdW5pRkZFMAd1bmlGRjA0B3VuaUZGRTEHdW5pRkZFNgd1bmlGRkU1) format(\"truetype\")}.s1s_card_wrp .product-price.need-border:after{content:\"\";display:block;width:.5px;height:11px;position:absolute;right:0;top:1px;background-color:var(--weui-FG-2)}.s1s_card_wrp .discount-price{color:var(--weui-ORANGERED-100);font-weight:400;font-family:WeChatSansStd-Medium;line-height:normal;font-size:15px;line-height:1;position:relative;top:1px}@font-face{font-family:WeChatSansStd-Medium;src:url(data:application/octet-stream;base64,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AwYAAwABBAkABAAsA1oAAwABBAkABQAYA4YAAwABBAkABgAsA54AAwABBAkABwBMA8oAAwABBAkACAAWBBYAAwABBAkACQBGBCwAAwABBAkACwAwBHIAAwABBAkAEAAeBKIAAwABBAkAEQAMBMAAAwABBAkAEwAiBMwAAwABCAQAAABmBO4AAwABCAQAAQAsBVQAAwABCAQAAgAOBYAAAwABCAQABAAsBY4AAwABCAQABwBMBboAAwABCAQACAAWBgYAAwABCAQACQBGBhwAAwABCAQAEAAeBmIAAwABCAQAEQAMBoBDb3B5cmlnaHQgKGMpIDIwMTcgYnkgVGVuY2VudC4gQWxsIHJpZ2h0cyByZXNlcnZlZC5XZUNoYXQgU2FucyBTdGRNZWRpdW1IYW55aSBXZUNoYXQgU2FucyBTdGQtTWVkaXVtOyBWZXJzaW9uIDEuMDBXZUNoYXQgU2FucyBTdGQtTWVkaXVtVmVyc2lvbiAxLjAwV2VDaGF0LVNhbnMtU3RkLU1lZGl1bVdlQ2hhdCBTYW5zIGlzIGEgdHJhZGVtYXJrIG9mIFRlbmNlbnQuSGFueWkgRm9udHNaSEFORyBYdWFuLCBXQU5HIFRpYW5iaSwgTElVIFhpYW95dWh0dHA6Ly93d3cuaGFueWkuY29tLmNuL1dlQ2hhdCBTYW5zIFN0ZE1lZGl1bVdlQ2hhdCBTYW5zIFN0ZC1NZWRpdW3boiSjX7QKMTIzNDU2Nzg5MENvcHlyaWdodCAoYykgMjAxNyBieSBUZW5jZW50LiBBbGwgcmlnaHRzIHJlc2VydmVkLldlQ2hhdCBTYW5zIFN0ZE1lZGl1bUhhbnlpIFdlQ2hhdCBTYW5zIFN0ZC1NZWRpdW07IFZlcnNpb24gMS4wMFdlQ2hhdCBTYW5zIFN0ZC1NZWRpdW1WZXJzaW9uIDEuMDBXZUNoYXQtU2Fucy1TdGQtTWVkaXVtV2VDaGF0IFNhbnMgaXMgYSB0cmFkZW1hcmsgb2YgVGVuY2VudC5IYW55aSBGb250c1pIQU5HIFh1YW4sIFdBTkcgVGlhbmJpLCBMSVUgWGlhb3l1V2VDaGF0IFNhbnMgU3RkLU1lZGl1bQBDAG8AcAB5AHIAaQBnAGgAdAAgACgAYwApACAAMgAwADEANwAgAGIAeQAgAFQAZQBuAGMAZQBuAHQALgAgAEEAbABsACAAcgBpAGcAaAB0AHMAIAByAGUAcwBlAHIAdgBlAGQALgBXAGUAQwBoAGEAdAAgAFMAYQBuAHMAIABTAHQAZAAgAE0AZQBkAGkAdQBtAFIAZQBnAHUAbABhAHIASABhAG4AeQBpACAAVwBlAEMAaABhAHQAIABTAGEAbgBzACAAUwB0AGQALQBNAGUAZABpAHUAbQA7ACAAVgBlAHIAcwBpAG8AbgAgADEALgAwADAAVwBlAEMAaABhAHQAIABTAGEAbgBzACAAUwB0AGQALQBNAGUAZABpAHUAbQBWAGUAcgBzAGkAbwBuACAAMQAuADAAMABXAGUAQwBoAGEAdAAtAFMAYQBuAHMALQBTAHQAZAAtAE0AZQBkAGkAdQBtAFcAZQBDAGgAYQB0ACAAUwBhAG4AcwAgAGkAcwAgAGEAIAB0AHIAYQBkAGUAbQBhAHIAawAgAG8AZgAgAFQAZQBuAGMAZQBuAHQALgBIAGEAbgB5AGkAIABGAG8AbgB0AHMAWgBIAEEATgBHACAAWAB1AGEAbgAsACAAVwBBAE4ARwAgAFQAaQBhAG4AYgBpACwAIABMAEkAVQAgAFgAaQBhAG8AeQB1AGgAdAB0AHAAOgAvAC8AdwB3AHcALgBoAGEAbgB5AGkALgBjAG8AbQAuAGMAbgAvAFcAZQBDAGgAYQB0ACAAUwBhAG4AcwAgAFMAdABkAE0AZQBkAGkAdQBtIKwAogAkAKMgqQClAAoAMQAyADMANAA1ADYANwA4ADkAMABDAG8AcAB5AHIAaQBnAGgAdAAgACgAYwApACAAMgAwADEANwAgAGIAeQAgAFQAZQBuAGMAZQBuAHQALgAgAEEAbABsACAAcgBpAGcAaAB0AHMAIAByAGUAcwBlAHIAdgBlAGQALgBXAGUAQwBoAGEAdAAgAFMAYQBuAHMAIABTAHQAZAAgAE0AZQBkAGkAdQBtAFIAZQBnAHUAbABhAHIAVwBlAEMAaABhAHQAIABTAGEAbgBzACAAUwB0AGQALQBNAGUAZABpAHUAbQBXAGUAQwBoAGEAdAAgAFMAYQBuAHMAIABpAHMAIABhACAAdAByAGEAZABlAG0AYQByAGsAIABvAGYAIABUAGUAbgBjAGUAbgB0AC4ASABhAG4AeQBpACAARgBvAG4AdABzAFoASABBAE4ARwAgAFgAdQBhAG4ALAAgAFcAQQBOAEcAIABUAGkAYQBuAGIAaQAsACAATABJAFUAIABYAGkAYQBvAHkAdQBXAGUAQwBoAGEAdAAgAFMAYQBuAHMAIABTAHQAZABNAGUAZABpAHUAbQAAAAIAAAAAAAD/tQAyAAAAAAAAAAAAAAAAAAAAAAAAAAAAYwAAAAMAJAAlACYAJwAoACkAKgArACwALQAuAC8AMAAxADIAMwA0ADUANgA3ADgAOQA6ADsAPAA9AEQARQBGAEcASABJAEoASwBMAE0ATgBPAFAAUQBSAFMAVABVAFYAVwBYAFkAWgBbAFwAXQATABQAFQAWABcAGAAZABoAGwAcAA8AEQAQAQIBAwCEAQQAvQAHAQUBBgEHAQgBCQEKAQsBDAENAQ4BDwEQAREBEgCFARMBFAEVAJYBFgEXARgBGQEaAA4A7wd1bmkwRTNGB3VuaTIwQjUNY29sb25tb25ldGFyeQd1bmlGRTY5BGRvbmcERXVybwd1bmkyMEIyB3VuaTIwQjQHdW5pMjBBRAd1bmkyMEJFB3VuaTIwQkEHdW5pMjBCQwd1bmkyMEE2B3VuaTIwQjEHdW5pMjBCRAd1bmkyMEI5B3VuaTIwQUEHdW5pMjBCOAd1bmkyMEFFB3VuaTIwQTkHdW5pRkZFMAd1bmlGRjA0B3VuaUZGRTEHdW5pRkZFNgd1bmlGRkU1) format(\"truetype\")}.s1s_card_wrp .discount-price__extra{font-size:12px;color:var(--weui-ORANGERED-100);font-weight:400;margin-left:1px;position:relative;top:-1px}.s1s_card_wrp .product-brand{color:var(--weui-FG-1);font-size:12px;display:flex;align-items:center}.s1s_card_wrp .product-brand .product-logo{margin-right:2px}.s1s_card_wrp .product-brand .shop-verify-icon{font-size:14px;margin-left:2px;position:relative;top:-.03em}.s1s_card_wrp .product-centercontainer{display:flex;align-items:flex-end;margin-bottom:5px}.s1s_card_wrp .product-gifts{color:var(--weui-FG-2);font-size:12px;margin-left:6px;position:relative;top:-.06em}.s1s_card_wrp .product-gifts .product-gifts__num{margin:0 1px}.product_image_wrp{width:100%;height:100%}.product_load_fail{display:flex;flex-direction:column;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-height:88px;padding:16px 64px;border-radius:8px;background-color:var(--weui-BG-3, rgba(0, 0, 0, .03));color:var(--weui-FG-2, rgba(0, 0, 0, .3));font-size:14px;line-height:1.4;-webkit-user-select:none;-moz-user-select:none;user-select:none}.product_load_fail__text{text-align:center}@media (prefers-color-scheme: dark){:root{--weui-FG-6: rgba(255, 255, 255, .05)}.s1s_card_wrp .product-price{color:#5e5e5e}.s1s_card_wrp .shop-verify-icon{filter:invert(1)}}\n", J$2 = { windowproduct: "data-windowproduct", customstyle: "data-customstyle", ecsource: "data-ecsource", exportkey: "data-exportkey", wap_export_token: "data-wap_export_token", loaded: "data-loaded", cardtype: "data-cardtype", is_hover: "data-is-hover", is_selected: "data-is-selected", token: "data-token", title: "data-title", immutable: "data-immutable", req_scene: "data-req-scene", urlParams: "data-url-params", extInfo: "data-ext-info", scrollBlur: "data-scroll-blur", wrpStyle: "data-wrp-style", type: "data-type", productImage: "data-product-image", originPrice: "data-origin-price", discountedPrice: "data-discounted-price", outerclick: "data-outerclick", productInfo: "data-product-info" }; function ut(A) { var t = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; var e = {}; return e = o$6.call(this, J$2), e.loaded = Number(e.loaded || 0), e.cardtype = Number(e.cardtype || 0), e.is_hover = Number(e.is_hover || 0), e.is_selected = Number(e.is_selected || 0), e.immutable = Number(e.immutable || 0), e.req_scene = Number(e.req_scene || 0), e.urlParams = JSON.parse(e.urlParams || "{}"), e.extInfo = JSON.parse(e.extInfo || "{}"), e.productInfo = JSON.parse(e.productInfo || "{}"), e.scrollBlur = Number(e.scrollBlur || 0), e.originPrice = Number(e.originPrice || 0), e.discountedPrice = Number(e.discountedPrice || 0), e.outerclick = Number(e.outerclick || 0), _objectSpread$9({ platform: A, extraInfo: t }, e); } function ft(A) { H$3(Object.assign(A, { Component: A.isDev ? A.devComponent : gt, styleText: A.isDev ? A.devStyleText : nt, customName: A.customName || "mp-common-product", watchAttr: Object.values(J$2), getProps: ut, eventName: ["iframe-message", "document-click", "expose", "element-click"] })); } function ownKeys$8(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread$8(e) { for (var r = 1; r 0; } }, watch: { openImgSrc: function openImgSrc() { this.calOpenImgWidth(); } }, mounted: function mounted() { this.calOpenImgWidth(); } }, a$3 = w$4; var r$7 = function r() { var A = this, g = A._self._c; return A._self._setupProxy, g("section", { ref: "js_custom_element", staticClass: "wx-root red_package_cover_wrp", "class": [{ disabled: A.disabled, small: A.smallCard }, A.platformClassname], attrs: { role: "option" } }, [g("section", { staticClass: "red_package_cover__inner wx_tap_card wx_card_root", "class": [A.is_hover === 1 ? "wx_hover_card" : "", A.is_selected === 1 ? "wx_selected_card" : ""] }, [g("section", { staticClass: "red_package_cover__inner__main" }, [g("section", { staticClass: "red_package_cover__body" }, [A.openImgSrc ? g("span", { staticClass: "red_package_cover_img red_package_open_cover_img", style: { "background-image": "url(".concat(A.openImgSrc, ")"), width: A.smallCard ? "" : A.openImgWidth, height: A.smallCard ? "" : A.openImgHeight }, attrs: { "data-notusecover": "1" } }) : g("span", { staticClass: "red_package_cover_img", "class": { synthetic_cover_img: A.isSynthetic === 1 }, style: "background-image: url(" + A.imgSrc + ")", attrs: { "data-notusecover": "1" } }), A.smallCard ? g("span", { staticClass: "title-wrp" }, [g("span", { staticClass: "title" }, [A._v(A._s(A.name) + '的红包封面')]), A.isPurchaseOrder === 1 ? g("span", { staticClass: "red_package_cover__purchase" }, [A._v('付费')]) : A._e()]) : A._e()]), g("section", { staticClass: "red_package_cover__foot" }, [A.smallCard ? [A.status === 0 ? g("span", { staticClass: "weui-btn weui-btn_mini red_package_cover__access-link button" }, [A._v('领取')]) : A.status === 1 ? g("span", { staticClass: "red_package_cover__access-link correct disabled" }, [A._v('已领取')]) : A.status === 2 ? g("span", { staticClass: "red_package_cover__access-link disabled" }, [A._v('已领完')]) : A.status === 3 ? g("span", { staticClass: "red_package_cover__access-link disabled" }, [A._v('不可领取')]) : A._e()] : A.platform !== "wechat" ? [A.disabled ? g("span", { staticClass: "red_package_cover__access-link disabled" }, [A._v('红包封面不可用')]) : g("span", { staticClass: "red_package_cover__access-link" }, [A._v('领取' + A._s(A.name) + '的红包封面')])] : [A.status === 0 ? g("span", { staticClass: "red_package_cover__access-link" }, [A._v('领取' + A._s(A.name) + '的红包封面')]) : A.status === 1 ? g("span", { staticClass: "red_package_cover__access-link disabled" }, [A._v('已领取红包封面')]) : A.status === 2 ? g("span", { staticClass: "red_package_cover__access-link disabled" }, [A._v('红包封面已领取完')]) : A.status === 3 ? g("span", { staticClass: "red_package_cover__access-link disabled" }, [A._v('红包封面不可领取')]) : A._e()], A.isPurchaseOrder === 1 && !A.smallCard ? g("section", { staticClass: "red_package_cover__purchase" }, [A._v('付费')]) : A._e()], 2)]), A._m(0), A.platform !== "wechat" && A.disabled ? g("section", { staticClass: "red_package_cover_disable_wording" }, [A._v('红包封面不可用')]) : A._e()])]); }, t$2 = [function () { var E = this, A = E._self._c; return E._self._setupProxy, A("section", { staticClass: "red_package_cover__extend" }, [A("span", { staticClass: "red_package_cover__extend_icon" }), A("span", { staticClass: "red_package_cover__extend_info" }, [E._v('微信红包封面')])]); }], u$1 = v$2(a$3, r$7, t$2, !1, null, "e0207b94", null, null); var n$5 = u$1.exports, d$3 = ".wx-root,body{--weui-BG-COLOR-ACTIVE: #ececec}.wx-root[data-weui-theme=dark],body[data-weui-theme=dark]{--weui-BG-COLOR-ACTIVE: #373737}@media (prefers-color-scheme: dark){.wx-root:not([data-weui-theme=light]),body:not([data-weui-theme=light]){--weui-BG-COLOR-ACTIVE: #373737}}body,.wx-root,page{--weui-BTN-HEIGHT: 48;--weui-BTN-HEIGHT-MEDIUM: 40;--weui-BTN-HEIGHT-SMALL: 32}.wx-root,body{--weui-BTN-ACTIVE-MASK: rgba(0, 0, 0, .1)}.wx-root[data-weui-theme=dark],body[data-weui-theme=dark]{--weui-BTN-ACTIVE-MASK: rgba(255, 255, 255, .1)}@media (prefers-color-scheme: dark){.wx-root:not([data-weui-theme=light]),body:not([data-weui-theme=light]){--weui-BTN-ACTIVE-MASK: rgba(255, 255, 255, .1)}}.wx-root,body{--weui-BTN-DEFAULT-ACTIVE-BG: #e6e6e6}.wx-root[data-weui-theme=dark],body[data-weui-theme=dark]{--weui-BTN-DEFAULT-ACTIVE-BG: rgba(255, 255, 255, .126)}@media (prefers-color-scheme: dark){.wx-root:not([data-weui-theme=light]),body:not([data-weui-theme=light]){--weui-BTN-DEFAULT-ACTIVE-BG: rgba(255, 255, 255, .126)}}.wx-root,body{--weui-DIALOG-LINE-COLOR: rgba(0, 0, 0, .1)}.wx-root[data-weui-theme=dark],body[data-weui-theme=dark]{--weui-DIALOG-LINE-COLOR: rgba(255, 255, 255, .1)}@media (prefers-color-scheme: dark){.wx-root:not([data-weui-theme=light]),body:not([data-weui-theme=light]){--weui-DIALOG-LINE-COLOR: rgba(255, 255, 255, .1)}}.weui-btn{position:relative;display:block;width:184px;margin-left:auto;margin-right:auto;padding:12px 24px;box-sizing:border-box;font-weight:500;font-size:17px;text-align:center;text-decoration:none;color:#fff;line-height:1.41176471;border-radius:8px;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-user-select:none;-moz-user-select:none;user-select:none}.weui-btn:active:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--weui-BTN-ACTIVE-MASK);border-radius:8px}.weui-btn:active.weui-btn_loading:before,.weui-btn:active.weui-btn_disabled:before,.weui-btn:active[disabled]:before{display:none}.weui-btn_block{width:auto}.weui-btn_inline{display:inline-block}.weui-btn_default{color:var(--weui-FG-0);background-color:var(--weui-FG-5)}.weui-btn_default:not(.weui-btn_disabled):visited{color:var(--weui-FG-0)}.weui-btn_primary{background-color:var(--weui-BRAND)}.weui-btn_primary:not(.weui-btn_disabled):visited{color:#fff}.weui-btn_warn{color:var(--weui-RED);background-color:var(--weui-FG-5)}.weui-btn_warn:not(.weui-btn_disabled):visited{color:var(--weui-RED)}.weui-btn_overlay{color:var(--weui-BRAND);background-color:#fff}.weui-btn_overlay:not(.weui-btn_disabled):visited{color:var(--weui-BRAND)}.weui-btn_disabled,.weui-btn[disabled]{color:var(--weui-FG-4);background-color:var(--weui-BG-1)}.weui-btn_loading .weui-loading{margin:-.2em 8px 0 0}.weui-btn_loading .weui-mask-loading{margin:-.2em 8px 0 0;color:currentColor}.weui-btn_loading .weui-primary-loading{margin:-.2em 8px 0 0;vertical-align:middle;color:currentColor}.weui-btn_loading .weui-primary-loading:before{content:\"\"}.weui-btn_loading.weui-btn_primary{color:var(--weui-WHITE)}.weui-btn_cell{position:relative;display:block;margin-left:auto;margin-right:auto;box-sizing:border-box;font-size:17px;text-align:center;text-decoration:none;color:#fff;line-height:1.41176471;padding:16px;-webkit-tap-highlight-color:rgba(0,0,0,0);overflow:hidden;background-color:var(--weui-BG-5)}.weui-btn_cell+.weui-btn_cell{margin-top:16px}.weui-btn_cell:active{background-color:var(--weui-BG-COLOR-ACTIVE)}.weui-btn_cell__icon{display:inline-block;vertical-align:middle;width:24px;height:24px;margin:-.2em .34em 0 0}.weui-btn_cell-default{color:var(--weui-FG-0)}.weui-btn_cell-primary{color:var(--weui-LINK)}.weui-btn_cell-warn{color:var(--weui-RED)}.weui-bottom-fixed-opr-page{height:100%;display:flex;flex-direction:column}.weui-bottom-fixed-opr-page__content{min-height:0;flex:1;padding-bottom:80px;box-sizing:border-box;overflow-y:auto;-webkit-overflow-scrolling:touch}.weui-bottom-fixed-opr-page__tool{padding:16px 32px 24px;padding:16px calc(32px + constant(safe-area-inset-right)) calc(24px + constant(safe-area-inset-bottom)) calc(32px + constant(safe-area-inset-left));padding:16px calc(32px + env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) calc(32px + env(safe-area-inset-left));background:#ffffff;position:relative;z-index:50}.weui-bottom-fixed-opr-page__tool:before{content:\"\";height:80px;background:linear-gradient(to top,#ffffff,rgba(255,255,255,0));position:absolute;bottom:calc(100% - 1px);left:0;right:0;transform:translateZ(0);pointer-events:none}.wx-root[data-weui-theme=dark] .weui-bottom-fixed-opr-page__tool,body[data-weui-theme=dark] .weui-bottom-fixed-opr-page__tool{background:#191919}@media (prefers-color-scheme: dark){.wx-root:not([data-weui-theme=light]) .weui-bottom-fixed-opr-page__tool,body:not([data-weui-theme=light]) .weui-bottom-fixed-opr-page__tool{background:#191919}}.wx-root[data-weui-theme=dark] .weui-bottom-fixed-opr-page__tool:before,body[data-weui-theme=dark] .weui-bottom-fixed-opr-page__tool:before{background:linear-gradient(to top,#191919,rgba(25,25,25,0))}@media (prefers-color-scheme: dark){.wx-root:not([data-weui-theme=light]) .weui-bottom-fixed-opr-page__tool:before,body:not([data-weui-theme=light]) .weui-bottom-fixed-opr-page__tool:before{background:linear-gradient(to top,#191919,rgba(25,25,25,0))}}.weui-bottom-fixed-opr-page__tips{margin-bottom:24px;padding:0 32px;text-align:center}.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr{display:flex;align-items:center;justify-content:center}.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn{width:184px;padding-left:16px;padding-right:16px}.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2),.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2)+.weui-btn{margin:0 8px;width:136px}.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2):first-child,.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2)+.weui-btn:first-child{margin-left:0}.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2):last-child,.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2)+.weui-btn:last-child{margin-right:0}.weui-bottom-fixed-opr-page_btn-wrap .weui-bottom-fixed-opr{flex-direction:column}.weui-bottom-fixed-opr-page_btn-wrap .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2),.weui-bottom-fixed-opr-page_btn-wrap .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2)+.weui-btn{width:184px;margin:16px 0 0}.weui-bottom-fixed-opr-page_btn-wrap .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2):first-child,.weui-bottom-fixed-opr-page_btn-wrap .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2)+.weui-btn:first-child{margin-top:0}.weui-bottom-fixed-opr-page.weui-form{padding-top:0}.weui-bottom-fixed-opr-page.weui-form .weui-form__bd{padding-top:56px;padding-top:calc(56px + constant(safe-area-inset-top));padding-top:calc(56px + env(safe-area-inset-top))}.weui-bottom-fixed-opr-page.weui-form .weui-form__ft{padding-bottom:0}.weui-bottom-fixed-opr-page.weui-form .weui-form__control-area{margin-bottom:0}.weui-bottom-fixed-opr-page.weui-half-screen-dialog{padding:0}.weui-bottom-fixed-opr-page.weui-half-screen-dialog .weui-half-screen-dialog__hd,.weui-bottom-fixed-opr-page.weui-half-screen-dialog .weui-half-screen-dialog__bd,.weui-bottom-fixed-opr-page.weui-half-screen-dialog .weui-half-screen-dialog__ft{padding-left:24px;padding-left:calc(24px + constant(safe-area-inset-left));padding-left:calc(24px + env(safe-area-inset-left));padding-right:24px;padding-right:calc(24px + constant(safe-area-inset-right));padding-right:calc(24px + env(safe-area-inset-right))}.weui-bottom-fixed-opr-page.weui-half-screen-dialog .weui-half-screen-dialog__bd{padding-bottom:80px}.weui-bottom-fixed-opr-page.weui-half-screen-dialog .weui-half-screen-dialog__ft{padding-bottom:64px;padding-bottom:calc(64px + constant(safe-area-inset-bottom));padding-bottom:calc(64px + env(safe-area-inset-bottom))}.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog{padding:0}.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog .weui-half-screen-dialog__hd{padding:0 24px;padding:0 calc(24px + constant(safe-area-inset-right)) 0 calc(24px + constant(safe-area-inset-left));padding:0 calc(24px + env(safe-area-inset-right)) 0 calc(24px + env(safe-area-inset-left))}.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog .weui-half-screen-dialog__bd{padding-bottom:0;display:flex;flex-direction:column}.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog .weui-half-screen-dialog__ft{padding:0}.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog .weui-bottom-fixed-opr-page{flex:1;min-height:0}.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog .weui-bottom-fixed-opr-page__content{padding:0 24px;padding:0 calc(24px + constant(safe-area-inset-right)) 0 calc(24px + constant(safe-area-inset-left));padding:0 calc(24px + env(safe-area-inset-right)) 0 calc(24px + env(safe-area-inset-left))}.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog .weui-bottom-fixed-opr{padding:16px 0 64px;padding:16px 0 calc(64px + constant(safe-area-inset-bottom));padding:16px 0 calc(64px + env(safe-area-inset-bottom))}button.weui-btn,input.weui-btn{border-width:0;outline:0;-webkit-appearance:none}button.weui-btn:focus,input.weui-btn:focus{outline:0}button.weui-btn_inline,input.weui-btn_inline,button.weui-btn_mini,input.weui-btn_mini{width:auto}.weui-btn_medium{font-size:14px;padding:10px 24px;line-height:calc((var(--weui-BTN-HEIGHT-MEDIUM) - 20) / 14)}.weui-btn_mini{display:inline-block;width:auto;line-height:calc((32 - 12) / 14);padding:6px 12px;font-size:14px;border-radius:6px}.weui-btn_xmini{display:inline-block;width:auto;padding:4px 12px;line-height:calc((28 - 8) / 14);font-size:14px;font-weight:500;border-radius:4px}.weui-btn+.weui-btn{margin-top:16px}.weui-btn.weui-btn_mini+.weui-btn.weui-btn_mini{margin-top:auto}.weui-btn.weui-btn_xmini+.weui-btn.weui-btn_xmini{margin-top:auto}.weui-btn.weui-btn_inline+.weui-btn.weui-btn_inline{margin-left:16px}.weui-btn-area{margin:48px 16px 8px}.weui-btn-area_inline{display:flex}.weui-btn-area_inline .weui-btn{margin-top:auto;margin-right:16px;width:100%;flex:1}.weui-btn-area_inline .weui-btn:last-child{margin-right:0}.weui-btn_reset{background:transparent;border:0;padding:0;outline:0;font-size:inherit}.weui-btn_icon{background:transparent;border:0;padding:0;outline:0;font-size:0}.weui-btn_icon:active [class*=weui-icon-]{color:var(--weui-FG-1)}body,.wx-root{--weui-BG-0: #ededed;--weui-BG-1: #f7f7f7;--weui-BG-2: #fff;--weui-BG-3: #f7f7f7;--weui-BG-4: #4c4c4c;--weui-BG-5: #fff;--weui-RED: #fa5151;--weui-ORANGERED: #ff6146;--weui-ORANGE: #fa9d3b;--weui-YELLOW: #ffc300;--weui-GREEN: #91d300;--weui-LIGHTGREEN: #95ec69;--weui-BRAND: #07c160;--weui-BLUE: #10aeff;--weui-INDIGO: #1485ee;--weui-PURPLE: #6467f0;--weui-WHITE: #fff;--weui-LINK: #576b95;--weui-TEXTGREEN: #06ae56;--weui-BG: #fff;--weui-TAG-TEXT-ORANGE: #fa9d3b;--weui-TAG-TEXT-GREEN: #06ae56;--weui-TAG-TEXT-BLUE: #10aeff;--weui-REDORANGE: #ff6146;--weui-BG-0: #EDEDED;--weui-BG-1: #F7F7F7;--weui-BG-2: #FFFFFF;--weui-BG-3: #F7F7F7;--weui-BG-4: #4C4C4C;--weui-BG-5: #FFFFFF;--weui-BLUE-100: #10AEFF;--weui-BLUE-120: #3FBEFF;--weui-BLUE-170: #B7E6FF;--weui-BLUE-80: #0C8BCC;--weui-BLUE-90: #0E9CE6;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #5AAFE4;--weui-BLUE-BG-130: #7FC0EA;--weui-BLUE-BG-90: #4095CB;--weui-BRAND-100: #07C160;--weui-BRAND-120: #38CD7F;--weui-BRAND-170: #B4ECCE;--weui-BRAND-80: #059A4C;--weui-BRAND-90: #06AE56;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #3EB575;--weui-BRAND-BG-130: #69C694;--weui-BRAND-BG-90: #259C5C;--weui-FG-0: rgba(0, 0, 0, .9);--weui-FG-0_5: rgba(0, 0, 0, .9);--weui-FG-1: rgba(0, 0, 0, .55);--weui-FG-2: rgba(0, 0, 0, .3);--weui-FG-3: rgba(0, 0, 0, .1);--weui-FG-4: rgba(0, 0, 0, .15);--weui-GLYPH-0: rgba(0, 0, 0, .9);--weui-GLYPH-1: rgba(0, 0, 0, .55);--weui-GLYPH-2: rgba(0, 0, 0, .3);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .8);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .5);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .3);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #91D300;--weui-GREEN-120: #A7DB33;--weui-GREEN-170: #DEF1B3;--weui-GREEN-80: #74A800;--weui-GREEN-90: #82BD00;--weui-GREEN-BG-100: #96BE40;--weui-GREEN-BG-110: #A0C452;--weui-GREEN-BG-130: #B5D179;--weui-GREEN-BG-90: #86AA39;--weui-INDIGO-100: #1485EE;--weui-INDIGO-120: #439DF1;--weui-INDIGO-170: #B8DAF9;--weui-INDIGO-80: #106ABE;--weui-INDIGO-90: #1277D6;--weui-INDIGO-BG-100: #2B77BF;--weui-INDIGO-BG-110: #3F84C5;--weui-INDIGO-BG-130: #6BA0D2;--weui-INDIGO-BG-90: #266AAB;--weui-LIGHTGREEN-100: #95EC69;--weui-LIGHTGREEN-120: #AAEF87;--weui-LIGHTGREEN-170: #DEF9D1;--weui-LIGHTGREEN-80: #77BC54;--weui-LIGHTGREEN-90: #85D35E;--weui-LIGHTGREEN-BG-100: #72CF60;--weui-LIGHTGREEN-BG-110: #80D370;--weui-LIGHTGREEN-BG-130: #9CDD90;--weui-LIGHTGREEN-BG-90: #66B956;--weui-LINK-100: #576B95;--weui-LINK-120: #7888AA;--weui-LINK-170: #CCD2DE;--weui-LINK-80: #455577;--weui-LINK-90: #4E6085;--weui-LINKFINDER-100: #002666;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(245, 245, 245, .95);--weui-MATERIAL-NAVIGATIONBAR: rgba(237, 237, 237, .94);--weui-MATERIAL-REGULAR: rgba(247, 247, 247, .3);--weui-MATERIAL-THICK: rgba(247, 247, 247, .8);--weui-MATERIAL-THIN: rgba(255, 255, 255, .2);--weui-MATERIAL-TOOLBAR: rgba(246, 246, 246, .82);--weui-ORANGE-100: #FA9D3B;--weui-ORANGE-120: #FBB062;--weui-ORANGE-170: #FDE1C3;--weui-ORANGE-80: #C87D2F;--weui-ORANGE-90: #E08C34;--weui-ORANGE-BG-100: #EA7800;--weui-ORANGE-BG-110: #EC8519;--weui-ORANGE-BG-130: #F0A04D;--weui-ORANGE-BG-90: #D26B00;--weui-ORANGERED-100: #FF6146;--weui-OVERLAY: rgba(0, 0, 0, .5);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #6467F0;--weui-PURPLE-120: #8385F3;--weui-PURPLE-170: #D0D1FA;--weui-PURPLE-80: #5052C0;--weui-PURPLE-90: #595CD7;--weui-PURPLE-BG-100: #6769BA;--weui-PURPLE-BG-110: #7678C1;--weui-PURPLE-BG-130: #9496CE;--weui-PURPLE-BG-90: #5C5EA7;--weui-RED-100: #FA5151;--weui-RED-120: #FB7373;--weui-RED-170: #FDCACA;--weui-RED-80: #C84040;--weui-RED-90: #E14949;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #D3625A;--weui-RED-BG-130: #DD847E;--weui-RED-BG-90: #B94840;--weui-SECONDARY-BG: rgba(0, 0, 0, .05);--weui-SEPARATOR-0: rgba(0, 0, 0, .1);--weui-SEPARATOR-1: rgba(0, 0, 0, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(0, 0, 0, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(0, 0, 0, .2);--weui-YELLOW-100: #FFC300;--weui-YELLOW-120: #FFCF33;--weui-YELLOW-170: #FFECB2;--weui-YELLOW-80: #CC9C00;--weui-YELLOW-90: #E6AF00;--weui-YELLOW-BG-100: #EFB600;--weui-YELLOW-BG-110: #F0BD19;--weui-YELLOW-BG-130: #F3CC4D;--weui-YELLOW-BG-90: #D7A400;--weui-FG-HALF: rgba(0, 0, 0, .9);--weui-RED: #FA5151;--weui-ORANGERED: #FF6146;--weui-ORANGE: #FA9D3B;--weui-YELLOW: #FFC300;--weui-GREEN: #91D300;--weui-LIGHTGREEN: #95EC69;--weui-TEXTGREEN: #06AE56;--weui-BRAND: #07C160;--weui-BLUE: #10AEFF;--weui-INDIGO: #1485EE;--weui-PURPLE: #6467F0;--weui-LINK: #576B95;--weui-TAG-TEXT-ORANGE: #FA9D3B;--weui-TAG-TEXT-GREEN: #06AE56;--weui-TAG-TEXT-BLUE: #10AEFF;--weui-REDORANGE: #FF6146;--weui-TAG-TEXT-BLACK: rgba(0, 0, 0, .5);--weui-TAG-BACKGROUND-BLACK: rgba(0, 0, 0, .05);--weui-WHITE: #FFFFFF;--weui-BG: #FFFFFF;--weui-FG: #000;--weui-FG-5: rgba(0, 0, 0, .05);--weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, .1);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, .1)}@media (prefers-color-scheme: dark){.wx-root:not([data-weui-theme=light]),body:not([data-weui-theme=light]){--weui-BG-0: #111;--weui-BG-1: #1e1e1e;--weui-BG-5: #2c2c2c;--weui-RED: #fa5151;--weui-ORANGERED: #ff6146;--weui-ORANGE: #c87d2f;--weui-YELLOW: #cc9c00;--weui-GREEN: #74a800;--weui-LIGHTGREEN: #3eb575;--weui-BRAND: #07c160;--weui-BLUE: #10aeff;--weui-INDIGO: #1196ff;--weui-PURPLE: #8183ff;--weui-LINK: #7d90a9;--weui-TEXTGREEN: #259c5c;--weui-REDORANGE: #ff6146;--weui-BG-0: #111111;--weui-BG-1: #1E1E1E;--weui-BG-2: #191919;--weui-BG-3: #202020;--weui-BG-4: #404040;--weui-BG-5: #2C2C2C;--weui-BLUE-100: #10AEFF;--weui-BLUE-120: #0C8BCC;--weui-BLUE-170: #04344D;--weui-BLUE-80: #3FBEFF;--weui-BLUE-90: #28B6FF;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #4095CB;--weui-BLUE-BG-130: #32749E;--weui-BLUE-BG-90: #5AAFE4;--weui-BRAND-100: #07C160;--weui-BRAND-120: #059A4C;--weui-BRAND-170: #023A1C;--weui-BRAND-80: #38CD7F;--weui-BRAND-90: #20C770;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #259C5C;--weui-BRAND-BG-130: #1D7A48;--weui-BRAND-BG-90: #3EB575;--weui-FG-0: rgba(255, 255, 255, .8);--weui-FG-0_5: rgba(255, 255, 255, .6);--weui-FG-1: rgba(255, 255, 255, .5);--weui-FG-2: rgba(255, 255, 255, .3);--weui-FG-3: rgba(255, 255, 255, .1);--weui-FG-4: rgba(255, 255, 255, .15);--weui-GLYPH-0: rgba(255, 255, 255, .8);--weui-GLYPH-1: rgba(255, 255, 255, .5);--weui-GLYPH-2: rgba(255, 255, 255, .3);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .8);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .5);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .3);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #74A800;--weui-GREEN-120: #5C8600;--weui-GREEN-170: #233200;--weui-GREEN-80: #8FB933;--weui-GREEN-90: #82B01A;--weui-GREEN-BG-100: #789833;--weui-GREEN-BG-110: #6B882D;--weui-GREEN-BG-130: #65802B;--weui-GREEN-BG-90: #85A247;--weui-INDIGO-100: #1196FF;--weui-INDIGO-120: #0D78CC;--weui-INDIGO-170: #052D4D;--weui-INDIGO-80: #40ABFF;--weui-INDIGO-90: #28A0FF;--weui-INDIGO-BG-100: #0D78CC;--weui-INDIGO-BG-110: #0B6BB7;--weui-INDIGO-BG-130: #09548F;--weui-INDIGO-BG-90: #2585D1;--weui-LIGHTGREEN-100: #3EB575;--weui-LIGHTGREEN-120: #31905D;--weui-LIGHTGREEN-170: #123522;--weui-LIGHTGREEN-80: #64C390;--weui-LIGHTGREEN-90: #51BC83;--weui-LIGHTGREEN-BG-100: #31905D;--weui-LIGHTGREEN-BG-110: #2C8153;--weui-LIGHTGREEN-BG-130: #226541;--weui-LIGHTGREEN-BG-90: #31905D;--weui-LINK-100: #7D90A9;--weui-LINK-120: #647387;--weui-LINK-170: #252A32;--weui-LINK-80: #97A6BA;--weui-LINK-90: #899AB1;--weui-LINKFINDER-100: #DEE9FF;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(32, 32, 32, .93);--weui-MATERIAL-NAVIGATIONBAR: rgba(18, 18, 18, .9);--weui-MATERIAL-REGULAR: rgba(37, 37, 37, .6);--weui-MATERIAL-THICK: rgba(34, 34, 34, .9);--weui-MATERIAL-THIN: rgba(95, 95, 95, .4);--weui-MATERIAL-TOOLBAR: rgba(35, 35, 35, .93);--weui-ORANGE-100: #C87D2F;--weui-ORANGE-120: #A06425;--weui-ORANGE-170: #3B250E;--weui-ORANGE-80: #D39758;--weui-ORANGE-90: #CD8943;--weui-ORANGE-BG-100: #BB6000;--weui-ORANGE-BG-110: #A85600;--weui-ORANGE-BG-130: #824300;--weui-ORANGE-BG-90: #C1701A;--weui-ORANGERED-100: #FF6146;--weui-OVERLAY: rgba(0, 0, 0, .8);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #8183FF;--weui-PURPLE-120: #6768CC;--weui-PURPLE-170: #26274C;--weui-PURPLE-80: #9A9BFF;--weui-PURPLE-90: #8D8FFF;--weui-PURPLE-BG-100: #6768CC;--weui-PURPLE-BG-110: #5C5DB7;--weui-PURPLE-BG-130: #48498F;--weui-PURPLE-BG-90: #7677D1;--weui-RED-100: #FA5151;--weui-RED-120: #C84040;--weui-RED-170: #4B1818;--weui-RED-80: #FB7373;--weui-RED-90: #FA6262;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #BA4940;--weui-RED-BG-130: #913832;--weui-RED-BG-90: #D3625A;--weui-SECONDARY-BG: rgba(255, 255, 255, .1);--weui-SEPARATOR-0: rgba(255, 255, 255, .05);--weui-SEPARATOR-1: rgba(255, 255, 255, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(255, 255, 255, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(255, 255, 255, .2);--weui-YELLOW-100: #CC9C00;--weui-YELLOW-120: #A37C00;--weui-YELLOW-170: #3D2F00;--weui-YELLOW-80: #D6AF33;--weui-YELLOW-90: #D1A519;--weui-YELLOW-BG-100: #BF9100;--weui-YELLOW-BG-110: #AB8200;--weui-YELLOW-BG-130: #866500;--weui-YELLOW-BG-90: #C59C1A;--weui-FG-HALF: rgba(255, 255, 255, .6);--weui-RED: #FA5151;--weui-ORANGERED: #FF6146;--weui-ORANGE: #C87D2F;--weui-YELLOW: #CC9C00;--weui-GREEN: #74A800;--weui-LIGHTGREEN: #3EB575;--weui-TEXTGREEN: #259C5C;--weui-BRAND: #07C160;--weui-BLUE: #10AEFF;--weui-INDIGO: #1196FF;--weui-PURPLE: #8183FF;--weui-LINK: #7D90A9;--weui-REDORANGE: #FF6146;--weui-TAG-TEXT-BLACK: rgba(255, 255, 255, .5);--weui-TAG-BACKGROUND-BLACK: rgba(255, 255, 255, .05);--weui-WHITE: rgba(255, 255, 255, .8);--weui-FG: #fff;--weui-BG: #000;--weui-FG-5: rgba(255, 255, 255, .1);--weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, .1);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, .1);--weui-TAG-TEXT-ORANGE: rgba(250, 157, 59, .6);--weui-TAG-TEXT-GREEN: rgba(6, 174, 86, .6);--weui-TAG-TEXT-BLUE: rgba(16, 174, 255, .6)}}.wx-root[data-weui-theme=dark],body[data-weui-theme=dark]{--weui-BG-0: #111;--weui-BG-1: #1e1e1e;--weui-BG-5: #2c2c2c;--weui-RED: #fa5151;--weui-ORANGERED: #ff6146;--weui-ORANGE: #c87d2f;--weui-YELLOW: #cc9c00;--weui-GREEN: #74a800;--weui-LIGHTGREEN: #3eb575;--weui-BRAND: #07c160;--weui-BLUE: #10aeff;--weui-INDIGO: #1196ff;--weui-PURPLE: #8183ff;--weui-LINK: #7d90a9;--weui-TEXTGREEN: #259c5c;--weui-REDORANGE: #ff6146;--weui-BG-0: #111111;--weui-BG-1: #1E1E1E;--weui-BG-2: #191919;--weui-BG-3: #202020;--weui-BG-4: #404040;--weui-BG-5: #2C2C2C;--weui-BLUE-100: #10AEFF;--weui-BLUE-120: #0C8BCC;--weui-BLUE-170: #04344D;--weui-BLUE-80: #3FBEFF;--weui-BLUE-90: #28B6FF;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #4095CB;--weui-BLUE-BG-130: #32749E;--weui-BLUE-BG-90: #5AAFE4;--weui-BRAND-100: #07C160;--weui-BRAND-120: #059A4C;--weui-BRAND-170: #023A1C;--weui-BRAND-80: #38CD7F;--weui-BRAND-90: #20C770;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #259C5C;--weui-BRAND-BG-130: #1D7A48;--weui-BRAND-BG-90: #3EB575;--weui-FG-0: rgba(255, 255, 255, .8);--weui-FG-0_5: rgba(255, 255, 255, .6);--weui-FG-1: rgba(255, 255, 255, .5);--weui-FG-2: rgba(255, 255, 255, .3);--weui-FG-3: rgba(255, 255, 255, .1);--weui-FG-4: rgba(255, 255, 255, .15);--weui-GLYPH-0: rgba(255, 255, 255, .8);--weui-GLYPH-1: rgba(255, 255, 255, .5);--weui-GLYPH-2: rgba(255, 255, 255, .3);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .8);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .5);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .3);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #74A800;--weui-GREEN-120: #5C8600;--weui-GREEN-170: #233200;--weui-GREEN-80: #8FB933;--weui-GREEN-90: #82B01A;--weui-GREEN-BG-100: #789833;--weui-GREEN-BG-110: #6B882D;--weui-GREEN-BG-130: #65802B;--weui-GREEN-BG-90: #85A247;--weui-INDIGO-100: #1196FF;--weui-INDIGO-120: #0D78CC;--weui-INDIGO-170: #052D4D;--weui-INDIGO-80: #40ABFF;--weui-INDIGO-90: #28A0FF;--weui-INDIGO-BG-100: #0D78CC;--weui-INDIGO-BG-110: #0B6BB7;--weui-INDIGO-BG-130: #09548F;--weui-INDIGO-BG-90: #2585D1;--weui-LIGHTGREEN-100: #3EB575;--weui-LIGHTGREEN-120: #31905D;--weui-LIGHTGREEN-170: #123522;--weui-LIGHTGREEN-80: #64C390;--weui-LIGHTGREEN-90: #51BC83;--weui-LIGHTGREEN-BG-100: #31905D;--weui-LIGHTGREEN-BG-110: #2C8153;--weui-LIGHTGREEN-BG-130: #226541;--weui-LIGHTGREEN-BG-90: #31905D;--weui-LINK-100: #7D90A9;--weui-LINK-120: #647387;--weui-LINK-170: #252A32;--weui-LINK-80: #97A6BA;--weui-LINK-90: #899AB1;--weui-LINKFINDER-100: #DEE9FF;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(32, 32, 32, .93);--weui-MATERIAL-NAVIGATIONBAR: rgba(18, 18, 18, .9);--weui-MATERIAL-REGULAR: rgba(37, 37, 37, .6);--weui-MATERIAL-THICK: rgba(34, 34, 34, .9);--weui-MATERIAL-THIN: rgba(95, 95, 95, .4);--weui-MATERIAL-TOOLBAR: rgba(35, 35, 35, .93);--weui-ORANGE-100: #C87D2F;--weui-ORANGE-120: #A06425;--weui-ORANGE-170: #3B250E;--weui-ORANGE-80: #D39758;--weui-ORANGE-90: #CD8943;--weui-ORANGE-BG-100: #BB6000;--weui-ORANGE-BG-110: #A85600;--weui-ORANGE-BG-130: #824300;--weui-ORANGE-BG-90: #C1701A;--weui-ORANGERED-100: #FF6146;--weui-OVERLAY: rgba(0, 0, 0, .8);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #8183FF;--weui-PURPLE-120: #6768CC;--weui-PURPLE-170: #26274C;--weui-PURPLE-80: #9A9BFF;--weui-PURPLE-90: #8D8FFF;--weui-PURPLE-BG-100: #6768CC;--weui-PURPLE-BG-110: #5C5DB7;--weui-PURPLE-BG-130: #48498F;--weui-PURPLE-BG-90: #7677D1;--weui-RED-100: #FA5151;--weui-RED-120: #C84040;--weui-RED-170: #4B1818;--weui-RED-80: #FB7373;--weui-RED-90: #FA6262;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #BA4940;--weui-RED-BG-130: #913832;--weui-RED-BG-90: #D3625A;--weui-SECONDARY-BG: rgba(255, 255, 255, .1);--weui-SEPARATOR-0: rgba(255, 255, 255, .05);--weui-SEPARATOR-1: rgba(255, 255, 255, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(255, 255, 255, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(255, 255, 255, .2);--weui-YELLOW-100: #CC9C00;--weui-YELLOW-120: #A37C00;--weui-YELLOW-170: #3D2F00;--weui-YELLOW-80: #D6AF33;--weui-YELLOW-90: #D1A519;--weui-YELLOW-BG-100: #BF9100;--weui-YELLOW-BG-110: #AB8200;--weui-YELLOW-BG-130: #866500;--weui-YELLOW-BG-90: #C59C1A;--weui-FG-HALF: rgba(255, 255, 255, .6);--weui-RED: #FA5151;--weui-ORANGERED: #FF6146;--weui-ORANGE: #C87D2F;--weui-YELLOW: #CC9C00;--weui-GREEN: #74A800;--weui-LIGHTGREEN: #3EB575;--weui-TEXTGREEN: #259C5C;--weui-BRAND: #07C160;--weui-BLUE: #10AEFF;--weui-INDIGO: #1196FF;--weui-PURPLE: #8183FF;--weui-LINK: #7D90A9;--weui-REDORANGE: #FF6146;--weui-TAG-TEXT-BLACK: rgba(255, 255, 255, .5);--weui-TAG-BACKGROUND-BLACK: rgba(255, 255, 255, .05);--weui-WHITE: rgba(255, 255, 255, .8);--weui-FG: #fff;--weui-BG: #000;--weui-FG-5: rgba(255, 255, 255, .1);--weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, .1);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, .1);--weui-TAG-TEXT-ORANGE: rgba(250, 157, 59, .6);--weui-TAG-TEXT-GREEN: rgba(6, 174, 86, .6);--weui-TAG-TEXT-BLUE: rgba(16, 174, 255, .6)}.wx-root[data-weui-mode=care],body[data-weui-mode=care]{--weui-BG-0: #ededed;--weui-BG-1: #f7f7f7;--weui-BG-2: #fff;--weui-BG-3: #f7f7f7;--weui-BG-4: #4c4c4c;--weui-BG-5: #fff;--weui-RED: #dc3636;--weui-ORANGERED: #d14730;--weui-ORANGE: #e17719;--weui-YELLOW: #bb8e00;--weui-GREEN: #4f8400;--weui-LIGHTGREEN: #2e8800;--weui-BLUE: #007dbb;--weui-INDIGO: #0075e2;--weui-PURPLE: #6265f1;--weui-WHITE: #fff;--weui-LINK: #576b95;--weui-TEXTGREEN: #06ae56;--weui-BG: #fff;--weui-TAG-TEXT-ORANGE: #e17719;--weui-TAG-TEXT-GREEN: #06ae56;--weui-TAG-TEXT-BLUE: #007dbb;--weui-REDORANGE: #d14730;--weui-BG-0: #EDEDED;--weui-BG-1: #F7F7F7;--weui-BG-2: #FFFFFF;--weui-BG-3: #F7F7F7;--weui-BG-4: #4C4C4C;--weui-BG-5: #FFFFFF;--weui-BLUE-100: #007DBB;--weui-BLUE-120: #3FBEFF;--weui-BLUE-170: #B7E6FF;--weui-BLUE-80: #0C8BCC;--weui-BLUE-90: #0E9CE6;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #5AAFE4;--weui-BLUE-BG-130: #7FC0EA;--weui-BLUE-BG-90: #4095CB;--weui-BRAND-100: #018942;--weui-BRAND-120: #38CD7F;--weui-BRAND-170: #B4ECCE;--weui-BRAND-80: #059A4C;--weui-BRAND-90: #06AE56;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #3EB575;--weui-BRAND-BG-130: #69C694;--weui-BRAND-BG-90: #259C5C;--weui-FG-0: #000000;--weui-FG-0_5: #000000;--weui-FG-1: rgba(0, 0, 0, .6);--weui-FG-2: rgba(0, 0, 0, .42);--weui-FG-3: rgba(0, 0, 0, .1);--weui-FG-4: rgba(0, 0, 0, .15);--weui-GLYPH-0: #000000;--weui-GLYPH-1: rgba(0, 0, 0, .6);--weui-GLYPH-2: rgba(0, 0, 0, .42);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .85);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .55);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .35);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #4F8400;--weui-GREEN-120: #A7DB33;--weui-GREEN-170: #DEF1B3;--weui-GREEN-80: #74A800;--weui-GREEN-90: #82BD00;--weui-GREEN-BG-100: #96BE40;--weui-GREEN-BG-110: #A0C452;--weui-GREEN-BG-130: #B5D179;--weui-GREEN-BG-90: #86AA39;--weui-INDIGO-100: #0075E2;--weui-INDIGO-120: #439DF1;--weui-INDIGO-170: #B8DAF9;--weui-INDIGO-80: #106ABE;--weui-INDIGO-90: #1277D6;--weui-INDIGO-BG-100: #2B77BF;--weui-INDIGO-BG-110: #3F84C5;--weui-INDIGO-BG-130: #6BA0D2;--weui-INDIGO-BG-90: #266AAB;--weui-LIGHTGREEN-100: #2E8800;--weui-LIGHTGREEN-120: #AAEF87;--weui-LIGHTGREEN-170: #DEF9D1;--weui-LIGHTGREEN-80: #77BC54;--weui-LIGHTGREEN-90: #85D35E;--weui-LIGHTGREEN-BG-100: #72CF60;--weui-LIGHTGREEN-BG-110: #80D370;--weui-LIGHTGREEN-BG-130: #9CDD90;--weui-LIGHTGREEN-BG-90: #66B956;--weui-LINK-100: #576B95;--weui-LINK-120: #7888AA;--weui-LINK-170: #CCD2DE;--weui-LINK-80: #455577;--weui-LINK-90: #4E6085;--weui-LINKFINDER-100: #002666;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(245, 245, 245, .95);--weui-MATERIAL-NAVIGATIONBAR: rgba(237, 237, 237, .94);--weui-MATERIAL-REGULAR: rgba(247, 247, 247, .3);--weui-MATERIAL-THICK: rgba(247, 247, 247, .8);--weui-MATERIAL-THIN: rgba(255, 255, 255, .2);--weui-MATERIAL-TOOLBAR: rgba(246, 246, 246, .82);--weui-ORANGE-100: #E17719;--weui-ORANGE-120: #FBB062;--weui-ORANGE-170: #FDE1C3;--weui-ORANGE-80: #C87D2F;--weui-ORANGE-90: #E08C34;--weui-ORANGE-BG-100: #EA7800;--weui-ORANGE-BG-110: #EC8519;--weui-ORANGE-BG-130: #F0A04D;--weui-ORANGE-BG-90: #D26B00;--weui-ORANGERED-100: #D14730;--weui-OVERLAY: rgba(0, 0, 0, .5);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #6265F1;--weui-PURPLE-120: #8385F3;--weui-PURPLE-170: #D0D1FA;--weui-PURPLE-80: #5052C0;--weui-PURPLE-90: #595CD7;--weui-PURPLE-BG-100: #6769BA;--weui-PURPLE-BG-110: #7678C1;--weui-PURPLE-BG-130: #9496CE;--weui-PURPLE-BG-90: #5C5EA7;--weui-RED-100: #DC3636;--weui-RED-120: #FB7373;--weui-RED-170: #FDCACA;--weui-RED-80: #C84040;--weui-RED-90: #E14949;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #D3625A;--weui-RED-BG-130: #DD847E;--weui-RED-BG-90: #B94840;--weui-SECONDARY-BG: rgba(0, 0, 0, .1);--weui-SEPARATOR-0: rgba(0, 0, 0, .1);--weui-SEPARATOR-1: rgba(0, 0, 0, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(0, 0, 0, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(0, 0, 0, .2);--weui-YELLOW-100: #BB8E00;--weui-YELLOW-120: #FFCF33;--weui-YELLOW-170: #FFECB2;--weui-YELLOW-80: #CC9C00;--weui-YELLOW-90: #E6AF00;--weui-YELLOW-BG-100: #EFB600;--weui-YELLOW-BG-110: #F0BD19;--weui-YELLOW-BG-130: #F3CC4D;--weui-YELLOW-BG-90: #D7A400;--weui-FG-HALF: #000000;--weui-RED: #DC3636;--weui-ORANGERED: #D14730;--weui-ORANGE: #E17719;--weui-YELLOW: #BB8E00;--weui-GREEN: #4F8400;--weui-LIGHTGREEN: #2E8800;--weui-TEXTGREEN: #06AE56;--weui-BRAND: #018942;--weui-BLUE: #007DBB;--weui-INDIGO: #0075E2;--weui-PURPLE: #6265F1;--weui-LINK: #576B95;--weui-TAG-TEXT-ORANGE: #E17719;--weui-TAG-TEXT-GREEN: #06AE56;--weui-TAG-TEXT-BLUE: #007DBB;--weui-REDORANGE: #D14730;--weui-TAG-TEXT-BLACK: rgba(0, 0, 0, .5);--weui-WHITE: #FFFFFF;--weui-BG: #FFFFFF;--weui-FG: #000;--weui-FG-5: rgba(0, 0, 0, .05);--weui-TAG-BACKGROUND-ORANGE: rgba(225, 119, 25, .1);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-BACKGROUND-BLUE: rgba(0, 125, 187, .1);--weui-TAG-BACKGROUND-BLACK: rgba(0, 0, 0, .05)}@media (prefers-color-scheme: dark){.wx-root[data-weui-mode=care]:not([data-weui-theme=light]),body[data-weui-mode=care]:not([data-weui-theme=light]){--weui-BG-0: #111;--weui-BG-1: #1e1e1e;--weui-BG-5: #2c2c2c;--weui-RED: #fa5151;--weui-ORANGERED: #ff6146;--weui-ORANGE: #c87d2f;--weui-YELLOW: #cc9c00;--weui-GREEN: #74a800;--weui-LIGHTGREEN: #3eb575;--weui-BRAND: #07c160;--weui-BLUE: #10aeff;--weui-INDIGO: #1196ff;--weui-PURPLE: #8183ff;--weui-LINK: #7d90a9;--weui-TEXTGREEN: #259c5c;--weui-REDORANGE: #ff6146;--weui-BG-0: #111111;--weui-BG-1: #1E1E1E;--weui-BG-2: #191919;--weui-BG-3: #202020;--weui-BG-4: #404040;--weui-BG-5: #2C2C2C;--weui-BLUE-100: #10AEFF;--weui-BLUE-120: #0C8BCC;--weui-BLUE-170: #04344D;--weui-BLUE-80: #3FBEFF;--weui-BLUE-90: #28B6FF;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #4095CB;--weui-BLUE-BG-130: #32749E;--weui-BLUE-BG-90: #5AAFE4;--weui-BRAND-100: #07C160;--weui-BRAND-120: #059A4C;--weui-BRAND-170: #023A1C;--weui-BRAND-80: #38CD7F;--weui-BRAND-90: #20C770;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #259C5C;--weui-BRAND-BG-130: #1D7A48;--weui-BRAND-BG-90: #3EB575;--weui-FG-0: rgba(255, 255, 255, .85);--weui-FG-0_5: rgba(255, 255, 255, .65);--weui-FG-1: rgba(255, 255, 255, .55);--weui-FG-2: rgba(255, 255, 255, .35);--weui-FG-3: rgba(255, 255, 255, .1);--weui-FG-4: rgba(255, 255, 255, .15);--weui-GLYPH-0: rgba(255, 255, 255, .85);--weui-GLYPH-1: rgba(255, 255, 255, .55);--weui-GLYPH-2: rgba(255, 255, 255, .35);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .85);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .55);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .35);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #74A800;--weui-GREEN-120: #5C8600;--weui-GREEN-170: #233200;--weui-GREEN-80: #8FB933;--weui-GREEN-90: #82B01A;--weui-GREEN-BG-100: #789833;--weui-GREEN-BG-110: #6B882D;--weui-GREEN-BG-130: #65802B;--weui-GREEN-BG-90: #85A247;--weui-INDIGO-100: #1196FF;--weui-INDIGO-120: #0D78CC;--weui-INDIGO-170: #052D4D;--weui-INDIGO-80: #40ABFF;--weui-INDIGO-90: #28A0FF;--weui-INDIGO-BG-100: #0D78CC;--weui-INDIGO-BG-110: #0B6BB7;--weui-INDIGO-BG-130: #09548F;--weui-INDIGO-BG-90: #2585D1;--weui-LIGHTGREEN-100: #3EB575;--weui-LIGHTGREEN-120: #31905D;--weui-LIGHTGREEN-170: #123522;--weui-LIGHTGREEN-80: #64C390;--weui-LIGHTGREEN-90: #51BC83;--weui-LIGHTGREEN-BG-100: #31905D;--weui-LIGHTGREEN-BG-110: #2C8153;--weui-LIGHTGREEN-BG-130: #226541;--weui-LIGHTGREEN-BG-90: #31905D;--weui-LINK-100: #7D90A9;--weui-LINK-120: #647387;--weui-LINK-170: #252A32;--weui-LINK-80: #97A6BA;--weui-LINK-90: #899AB1;--weui-LINKFINDER-100: #DEE9FF;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(32, 32, 32, .93);--weui-MATERIAL-NAVIGATIONBAR: rgba(18, 18, 18, .9);--weui-MATERIAL-REGULAR: rgba(37, 37, 37, .6);--weui-MATERIAL-THICK: rgba(34, 34, 34, .9);--weui-MATERIAL-THIN: rgba(245, 245, 245, .4);--weui-MATERIAL-TOOLBAR: rgba(35, 35, 35, .93);--weui-ORANGE-100: #C87D2F;--weui-ORANGE-120: #A06425;--weui-ORANGE-170: #3B250E;--weui-ORANGE-80: #D39758;--weui-ORANGE-90: #CD8943;--weui-ORANGE-BG-100: #BB6000;--weui-ORANGE-BG-110: #A85600;--weui-ORANGE-BG-130: #824300;--weui-ORANGE-BG-90: #C1701A;--weui-ORANGERED-100: #FF6146;--weui-OVERLAY: rgba(0, 0, 0, .8);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #8183FF;--weui-PURPLE-120: #6768CC;--weui-PURPLE-170: #26274C;--weui-PURPLE-80: #9A9BFF;--weui-PURPLE-90: #8D8FFF;--weui-PURPLE-BG-100: #6768CC;--weui-PURPLE-BG-110: #5C5DB7;--weui-PURPLE-BG-130: #48498F;--weui-PURPLE-BG-90: #7677D1;--weui-RED-100: #FA5151;--weui-RED-120: #C84040;--weui-RED-170: #4B1818;--weui-RED-80: #FB7373;--weui-RED-90: #FA6262;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #BA4940;--weui-RED-BG-130: #913832;--weui-RED-BG-90: #D3625A;--weui-SECONDARY-BG: rgba(255, 255, 255, .15);--weui-SEPARATOR-0: rgba(255, 255, 255, .05);--weui-SEPARATOR-1: rgba(255, 255, 255, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(255, 255, 255, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(255, 255, 255, .2);--weui-YELLOW-100: #CC9C00;--weui-YELLOW-120: #A37C00;--weui-YELLOW-170: #3D2F00;--weui-YELLOW-80: #D6AF33;--weui-YELLOW-90: #D1A519;--weui-YELLOW-BG-100: #BF9100;--weui-YELLOW-BG-110: #AB8200;--weui-YELLOW-BG-130: #866500;--weui-YELLOW-BG-90: #C59C1A;--weui-FG-HALF: rgba(255, 255, 255, .65);--weui-RED: #FA5151;--weui-ORANGERED: #FF6146;--weui-ORANGE: #C87D2F;--weui-YELLOW: #CC9C00;--weui-GREEN: #74A800;--weui-LIGHTGREEN: #3EB575;--weui-TEXTGREEN: #259C5C;--weui-BRAND: #07C160;--weui-BLUE: #10AEFF;--weui-INDIGO: #1196FF;--weui-PURPLE: #8183FF;--weui-LINK: #7D90A9;--weui-REDORANGE: #FF6146;--weui-TAG-BACKGROUND-BLACK: rgba(255, 255, 255, .05);--weui-FG: #fff;--weui-WHITE: rgba(255, 255, 255, .8);--weui-FG-5: rgba(255, 255, 255, .1);--weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, .1);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, .1);--weui-TAG-TEXT-ORANGE: rgba(250, 157, 59, .6);--weui-BG: #000;--weui-TAG-TEXT-GREEN: rgba(6, 174, 86, .6);--weui-TAG-TEXT-BLUE: rgba(16, 174, 255, .6);--weui-TAG-TEXT-BLACK: rgba(255, 255, 255, .5)}}.wx-root[data-weui-mode=care][data-weui-theme=dark],body[data-weui-mode=care][data-weui-theme=dark]{--weui-BG-0: #111;--weui-BG-1: #1e1e1e;--weui-BG-5: #2c2c2c;--weui-RED: #fa5151;--weui-ORANGERED: #ff6146;--weui-ORANGE: #c87d2f;--weui-YELLOW: #cc9c00;--weui-GREEN: #74a800;--weui-LIGHTGREEN: #3eb575;--weui-BRAND: #07c160;--weui-BLUE: #10aeff;--weui-INDIGO: #1196ff;--weui-PURPLE: #8183ff;--weui-LINK: #7d90a9;--weui-TEXTGREEN: #259c5c;--weui-REDORANGE: #ff6146;--weui-BG-0: #111111;--weui-BG-1: #1E1E1E;--weui-BG-2: #191919;--weui-BG-3: #202020;--weui-BG-4: #404040;--weui-BG-5: #2C2C2C;--weui-BLUE-100: #10AEFF;--weui-BLUE-120: #0C8BCC;--weui-BLUE-170: #04344D;--weui-BLUE-80: #3FBEFF;--weui-BLUE-90: #28B6FF;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #4095CB;--weui-BLUE-BG-130: #32749E;--weui-BLUE-BG-90: #5AAFE4;--weui-BRAND-100: #07C160;--weui-BRAND-120: #059A4C;--weui-BRAND-170: #023A1C;--weui-BRAND-80: #38CD7F;--weui-BRAND-90: #20C770;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #259C5C;--weui-BRAND-BG-130: #1D7A48;--weui-BRAND-BG-90: #3EB575;--weui-FG-0: rgba(255, 255, 255, .85);--weui-FG-0_5: rgba(255, 255, 255, .65);--weui-FG-1: rgba(255, 255, 255, .55);--weui-FG-2: rgba(255, 255, 255, .35);--weui-FG-3: rgba(255, 255, 255, .1);--weui-FG-4: rgba(255, 255, 255, .15);--weui-GLYPH-0: rgba(255, 255, 255, .85);--weui-GLYPH-1: rgba(255, 255, 255, .55);--weui-GLYPH-2: rgba(255, 255, 255, .35);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .85);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .55);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .35);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #74A800;--weui-GREEN-120: #5C8600;--weui-GREEN-170: #233200;--weui-GREEN-80: #8FB933;--weui-GREEN-90: #82B01A;--weui-GREEN-BG-100: #789833;--weui-GREEN-BG-110: #6B882D;--weui-GREEN-BG-130: #65802B;--weui-GREEN-BG-90: #85A247;--weui-INDIGO-100: #1196FF;--weui-INDIGO-120: #0D78CC;--weui-INDIGO-170: #052D4D;--weui-INDIGO-80: #40ABFF;--weui-INDIGO-90: #28A0FF;--weui-INDIGO-BG-100: #0D78CC;--weui-INDIGO-BG-110: #0B6BB7;--weui-INDIGO-BG-130: #09548F;--weui-INDIGO-BG-90: #2585D1;--weui-LIGHTGREEN-100: #3EB575;--weui-LIGHTGREEN-120: #31905D;--weui-LIGHTGREEN-170: #123522;--weui-LIGHTGREEN-80: #64C390;--weui-LIGHTGREEN-90: #51BC83;--weui-LIGHTGREEN-BG-100: #31905D;--weui-LIGHTGREEN-BG-110: #2C8153;--weui-LIGHTGREEN-BG-130: #226541;--weui-LIGHTGREEN-BG-90: #31905D;--weui-LINK-100: #7D90A9;--weui-LINK-120: #647387;--weui-LINK-170: #252A32;--weui-LINK-80: #97A6BA;--weui-LINK-90: #899AB1;--weui-LINKFINDER-100: #DEE9FF;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(32, 32, 32, .93);--weui-MATERIAL-NAVIGATIONBAR: rgba(18, 18, 18, .9);--weui-MATERIAL-REGULAR: rgba(37, 37, 37, .6);--weui-MATERIAL-THICK: rgba(34, 34, 34, .9);--weui-MATERIAL-THIN: rgba(245, 245, 245, .4);--weui-MATERIAL-TOOLBAR: rgba(35, 35, 35, .93);--weui-ORANGE-100: #C87D2F;--weui-ORANGE-120: #A06425;--weui-ORANGE-170: #3B250E;--weui-ORANGE-80: #D39758;--weui-ORANGE-90: #CD8943;--weui-ORANGE-BG-100: #BB6000;--weui-ORANGE-BG-110: #A85600;--weui-ORANGE-BG-130: #824300;--weui-ORANGE-BG-90: #C1701A;--weui-ORANGERED-100: #FF6146;--weui-OVERLAY: rgba(0, 0, 0, .8);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #8183FF;--weui-PURPLE-120: #6768CC;--weui-PURPLE-170: #26274C;--weui-PURPLE-80: #9A9BFF;--weui-PURPLE-90: #8D8FFF;--weui-PURPLE-BG-100: #6768CC;--weui-PURPLE-BG-110: #5C5DB7;--weui-PURPLE-BG-130: #48498F;--weui-PURPLE-BG-90: #7677D1;--weui-RED-100: #FA5151;--weui-RED-120: #C84040;--weui-RED-170: #4B1818;--weui-RED-80: #FB7373;--weui-RED-90: #FA6262;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #BA4940;--weui-RED-BG-130: #913832;--weui-RED-BG-90: #D3625A;--weui-SECONDARY-BG: rgba(255, 255, 255, .15);--weui-SEPARATOR-0: rgba(255, 255, 255, .05);--weui-SEPARATOR-1: rgba(255, 255, 255, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(255, 255, 255, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(255, 255, 255, .2);--weui-YELLOW-100: #CC9C00;--weui-YELLOW-120: #A37C00;--weui-YELLOW-170: #3D2F00;--weui-YELLOW-80: #D6AF33;--weui-YELLOW-90: #D1A519;--weui-YELLOW-BG-100: #BF9100;--weui-YELLOW-BG-110: #AB8200;--weui-YELLOW-BG-130: #866500;--weui-YELLOW-BG-90: #C59C1A;--weui-FG-HALF: rgba(255, 255, 255, .65);--weui-RED: #FA5151;--weui-ORANGERED: #FF6146;--weui-ORANGE: #C87D2F;--weui-YELLOW: #CC9C00;--weui-GREEN: #74A800;--weui-LIGHTGREEN: #3EB575;--weui-TEXTGREEN: #259C5C;--weui-BRAND: #07C160;--weui-BLUE: #10AEFF;--weui-INDIGO: #1196FF;--weui-PURPLE: #8183FF;--weui-LINK: #7D90A9;--weui-REDORANGE: #FF6146;--weui-TAG-BACKGROUND-BLACK: rgba(255, 255, 255, .05);--weui-FG: #fff;--weui-WHITE: rgba(255, 255, 255, .8);--weui-FG-5: rgba(255, 255, 255, .1);--weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, .1);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, .1);--weui-TAG-TEXT-ORANGE: rgba(250, 157, 59, .6);--weui-BG: #000;--weui-TAG-TEXT-GREEN: rgba(6, 174, 86, .6);--weui-TAG-TEXT-BLUE: rgba(16, 174, 255, .6);--weui-TAG-TEXT-BLACK: rgba(255, 255, 255, .5)}.wx-root{position:relative;pointer-events:auto;font-family:system-ui,-apple-system,BlinkMacSystemFont,Helvetica Neue,PingFang SC,Hiragino Sans GB,Microsoft YaHei UI,Microsoft YaHei,Arial,sans-serif}.wx_card_root{position:relative}.wxw_hide{display:none!important}.wx_uninteractive{pointer-events:none}:host(.wx_tap_highlight_active) .wx_tap_link{opacity:.5}:host(.wx_tap_highlight_active) .wx_tap_card{background-color:#f3f3f3}:host(.wx_tap_highlight_active) .wx_tap_cell{background-color:#0000000d}@media (prefers-color-scheme: dark){:host(.wx_tap_highlight_active) .wx_tap_card{background-color:#252525}:host(.wx_tap_highlight_active) .wx_tap_cell{background-color:#ffffff1a}}.wx_css_active :active{opacity:.5}.wx_hover_card:before{content:\" \";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:8px;box-sizing:border-box;border:1px solid rgba(7,193,96,.3);pointer-events:none;z-index:9}.wx_selected_card:before{content:\" \";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:8px;border:1.5px solid #07C160;box-sizing:border-box;background:rgba(7,193,96,.1);pointer-events:none;z-index:9}.wx-root,body{--weui-BG-6: rgba(0, 0, 0, .05)}.wx-root[data-weui-theme=dark],body[data-weui-theme=dark]{--weui-BG-6: rgba(255, 255, 255, .1)}@media (prefers-color-scheme: dark){.wx-root:not([data-weui-theme=light]),body:not([data-weui-theme=light]){--weui-BG-6: rgba(255, 255, 255, .1)}}.point_event_no{pointer-events:none}.red_package_cover_wrp{-webkit-user-select:none;-moz-user-select:none;user-select:none;display:block;font-size:0;text-align:center}.red_package_cover_wrp.disabled .red_package_cover__inner{position:relative;cursor:default}.red_package_cover_wrp.disabled .red_package_cover__inner:after{border-radius:inherit;position:absolute;top:0;bottom:0;left:0;right:0;content:\" \";display:block;height:100%;background-color:var(--weui-FG-1)}.red_package_cover_wrp.disabled .red_package_cover_disable_wording{display:block;text-align:center}.red_package_cover_wrp.common-redpacket-web .red_package_cover__inner{max-width:273px}.red_package_cover_wrp .red_package_cover__inner{position:relative;cursor:pointer;display:inline-block;font-size:17px;background:var(--weui-BG-3);border-radius:8px;max-width:300px;width:77%}.red_package_cover_wrp .red_package_cover__inner.red_package_cover__inner__loading{position:relative}.red_package_cover_wrp .red_package_cover__inner.red_package_cover__inner__loading:before{position:absolute;top:50%;left:50%;margin-top:-8px;margin-left:-8px;content:\" \";display:block;width:16px;height:16px}.red_package_cover_wrp .red_package_cover__inner.red_package_cover__inner__loading .red_package_cover__inner__main,.red_package_cover_wrp .red_package_cover__inner.red_package_cover__inner__loading .red_package_cover__extend{opacity:0}.red_package_cover_wrp .red_package_cover__inner__main{width:300px;width:100%;padding:13.6% 0 8%}.red_package_cover_wrp .red_package_cover_img{position:relative;display:block;width:196px;height:324px;border-radius:5px;background-size:cover;background-repeat:no-repeat;background-position:center;margin:0 auto;width:65.33%;height:initial;padding-bottom:108%}.red_package_cover_wrp .red_package_cover_img.red_package_cover_img_loading{background-color:#00000008;position:relative}.wx-root[data-weui-theme=dark] .red_package_cover_wrp .red_package_cover_img.red_package_cover_img_loading,body[data-weui-theme=dark] .red_package_cover_wrp .red_package_cover_img.red_package_cover_img_loading{background-color:#ffffff08}@media (prefers-color-scheme: dark){.wx-root:not([data-weui-theme=light]) .red_package_cover_wrp .red_package_cover_img.red_package_cover_img_loading,body:not([data-weui-theme=light]) .red_package_cover_wrp .red_package_cover_img.red_package_cover_img_loading{background-color:#ffffff08}}.red_package_cover_wrp .red_package_cover_img.red_package_cover_img_loading:before{position:absolute;top:50%;left:50%;margin-top:-8px;margin-left:-8px;content:\" \";display:block;width:16px;height:16px}.red_package_cover_wrp .red_package_cover_img.red_package_cover_img_loading:after{display:none}.red_package_cover_wrp .red_package_cover_img:after{content:\" \";display:block;position:absolute;bottom:0;left:0;right:0;height:100%;background:url(data:image/png;base64,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) no-repeat center bottom;background-size:100% auto}.red_package_cover_wrp .red_package_cover_img.synthetic_cover_img{width:62.33%}.red_package_cover_wrp .red_package_cover_img.synthetic_cover_img:after{content:\" \";display:block;position:absolute;bottom:9.3%;left:8px;right:8px;height:100%;background:url(data:image/png;base64,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CCCAAAIIIIDA0ggQAF6at5IbQQABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQQACBVRcgALzqvwHcPwIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIILI0AAeCleSu5EQQQQAABBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQQQWHUBAsCr/hvA/SOAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAwNIIEABemreSG0EAAQQQQAABBBBAAAEE/v/27t9FrvMKA/D97khCO2vFkXCZIjiFAiZJEdQkIYWjiNiFUwQhgwmGOJX/gATyBxh3cZVSjjHG2iwprEBkZEUBg13YlRJcLLhw4VIi2CuthezdL/dbsWK0Wml/arV7zrPNzM7cmbnvc073cmcIECBAgAABAgQIECBAgAABAtkFFMDZN0B+AgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgTCCCiAw4xSEAIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIEsgsogLNvgPwECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECIQRUACHGaUgBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAhkF1AAZ98A+QkQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQCCOgAA4zSkEIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIEMguoADOvgHyEyBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECAQRkABHGaUghAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgkF1AAZx9A+QnQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQCCMgAI4zCgFIUCAAAECBAgQIECAAAECBAgQIECAAAECBAgQIEAgu4ACOPsGyE+AAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAQBgBBXCYUQpCgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgEB2AQVw9g2QnwABAgQIECBAgAABAgQIECBAgAABAgQIECBAgACBMAIK4DCjFIQAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAgewCCuDsGyA/AQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQJhBBTAYUYpCAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAEC2QUUwNk3QH4CBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBMIIKIDDjFIQAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgSyCyiAs2+A/AQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIhBFQAIcZpSAECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECGQXUABn3wD5CRAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAII6AADjNKQQgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQyC6gAM6+AfITIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIBBGQAEcZpSCECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECCQXUABnH0D5CdAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAIIyAAjjMKAUhQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQCC7gAI4+wbIT4AAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIBAGAEFcJhRCkKAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAQHYBBXD2DZCfAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAIEwAgrgMKMUhAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgACB7AIK4OwbID8BAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAmEEFMBhRikIAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQLZBRTA2TdAfgIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIEwggogMOMUhACBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBLILKICzb4D8BAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAiEEVAAhxmlIAQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIZBdQAGffAPkJECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIEAgjoAAOM0pBCBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBDILqAAzr4B8hMgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgEEZAARxmlIIQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIJBdQAGcfQPkJ0CAAAECBAgQIECAAAECBAgQIECAAAECBAgQIEAgjIACOMwoBSFAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAILuAAjj7BshPgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgEAYAQVwmFEKQoAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIBAdgEFcPYNkJ8AAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAgTACCuAwoxSEAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAIHsAgrg7BsgPwECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECYQQUwGFGKQgBAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAtkFFMDZN0B+AgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgTCCCiAw4xSEAIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIEsgsogLNvgPwECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECIQRUACHGaUgBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAhkF1AAZ98A+QkQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQCCOgAA4zSkEIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIEMguoADOvgHyEyBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECAQRkABHGaUghAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgkF1AAZx9A+QnQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQCCMgAI4zCgFIUCAAAECBAgQIECAAAECBAgQIECAAAECBAgQIEAgu4ACOPsGyE+AAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAQBgBBXCYUQpCgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgEB2AQVw9g2QnwABAgQIECBAgAABAgQIECBAgAABAgQIECBAgACBMAIK4DCjFIQAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAgewCCuDsGyA/AQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQJhBBTAYUYpCAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAEC2QUUwNk3QH4CBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBMIIKIDDjFIQAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgSyCyiAs2+A/AQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIhBFQAIcZpSAECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECGQXUABn3wD5CRAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAII6AADjNKQQgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQyC6gAM6+AfITIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIBBGQAEcZpSCECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECCQXUABnH0D5CdAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAIIyAAjjMKAUhQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQCC7gAI4+wbIT4AAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIBAGAEFcJhRCkKAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAQHYBBXD2DZCfAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAIEwAgrgMKMUhAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgACB7AIK4OwbID8BAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAmEEFMBhRikIAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQLZBRTA2TdAfgIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIEwggogMOMUhACBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBLILKICzb4D8BAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAiEEVAAhxmlIAQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIZBdQAGffAPkJECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIEAgjoAAOM0pBCBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBDILqAAzr4B8hMgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgEEZAARxmlIIQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIJBdQAGcfQPkJ0CAAAECBAgQIECAAAECBAgQIECAAAECBAgQIEAgjIACOMwoBSFAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAILuAAjj7BshPgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgEAYAQVwmFEKQoAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIBAdgEFcPYNkJ8AAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAgTACCuAwoxSEAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAIHsAgrg7BsgPwECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECYQQUwGFGKQgBAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAtkFFMDZN0B+AgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgTCCCiAw4xSEAIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIEsgsogLNvgPwECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECIQRUACHGaUgBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAhkF1AAZ98A+QkQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQCCOgAA4zSkEIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIEMguoADOvgHyEyBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECAQRkABHGaUghAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgkF1AAZx9A+QnQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQCCMgAI4zCgFIUCAAAECBAgQIECAAAECBAgQIECAAAECBAgQIEAgu4ACOPsGyE+AAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAQBgBBXCYUQpCgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgEB2AQVw9g2QnwABAgQIECBAgAABAgQIECBAgAABAgQIECBAgACBMAIK4DCjFIQAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAgewCCuDsGyA/AQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQJhBBTAYUYpCAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAEC2QUUwNk3QH4CBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBMIIKIDDjFIQAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgSyCyiAs2+A/AQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIhBFQAIcZpSAECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECGQXUABn3wD5CRAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAII6AADjNKQQgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQyCLmaNcAAA67SURBVC6gAM6+AfITIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIBBGQAEcZpSCECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECCQXUABnH0D5CdAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAIIyAAjjMKAUhQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQCC7gAI4+wbIT4AAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIBAGAEFcJhRCkKAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAQHYBBXD2DZCfAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAIEwAgrgMKMUhAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgACB7AIK4OwbID8BAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAmEEFMBhRikIAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQLZBRTA2TdAfgIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIEwggogMOMUhACBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBLILKICzb4D8BAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAiEEVAAhxmlIAQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIZBdQAGffAPkJECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIEAgjoAAOM0pBCBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBDILqAAzr4B8hMgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgEEZAARxmlIIQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIJBdQAGcfQPkJ0CAAAECBAgQIECAAAECBAgQIECAAAECBAgQIEAgjIACOMwoBSFAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAILuAAjj7BshPgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgEAYAQVwmFEKQoAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIBAdgEFcPYNkJ8AAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAgTACCuAwoxSEAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAIHsAgrg7BsgPwECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECYQT6UsqtMGkEIUCAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAQFKB1v32tXbzSfOLTYAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAgTACrfsdrgCuCuAwIxWEAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAIGsAq377WtXFMBZN0BuAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgTCCLTuty/VFcBhJioIAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQJpBVr3264A/jytgOAECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAIItC63750ZS5IHjEIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECCQVqB1v33fLSmA066A4AQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIRBFo3W+/dKBXAEeZqBwECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECKQVaN1vPx5PzZWuq2kVBCdAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgMA+F2idb+t++3L2/HxXypV9nsfpEyBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAIK/A0Pm27rdvArV2/84rITkBAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgT2t8BK57tcAJdRvby/4zh7AgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQI5BVY6XyXC+DxgUPvl1IW83JIToAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAgf0p0Lre1vm2s799BfBbF76sXf1gf8Zx1gQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIEMgr0LreMnS+TWC5AG53Su3fbLf+CBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQGD/CEx2vXcK4HGps6V0N/dPDGdKgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgACB3AKt421d74rCnQK4zF76otZyfuUJtwQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECCwtwVax9u63pWzvFMAtwdKX95YecItAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECOxtgdUdb5k83TrUwzdOn/zv8NhTk4+7T4AAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQJ7TuCT6dlLPyil1JUzu/sK4OGJUSmvrDzplgABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgT2pkDrdifL33aWdxXA7YHD3dGZ4aBP231/BAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQILD3BFqn27rd1Wd2TwFcZmcXh1741dUH+p8AAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIE9opA/+rtbvfu87mnAG5Pj7vH/1pKd+XuQ/1HgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAo9aoHW5rdNd6zzWLIBbU1xGo5dL1935seC1XuwxAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIENg9gdbhLne5y9/sfO/nrlkAt8PG5y5+2HXl9Xtf4hECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQeDQC5fXbXe7an37fArgdPj449cehBL629ks9SoAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQK7J1Cu3e5w7/+JDyyAy9v/uFpG3Uv3f7lnCBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQGA3BFp32zrcB33WAwvg9sLpmUvvdH157UFv4jkCBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQeJgC5c/L3e06H7FuAdxeP/3tJ/9QSvfROu/laQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBDYYYHW1U4fe3L4+d71/8r6h9w+4qvnf/XdxcWvP+5q98RGX+M4AgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIENiGQOmujkYHT0yde/ezjbzLhq4Abm/U3rD03bNDu3x9I2/sGAIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBDYukDrZltHu9Hyt33ShgvgdvD0zL8+rn3/m+GDvm7/+yNAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgACBnRdonWzrZltHu5l331QB3N74sZn3LpbSvzh8d3TdzAc5lgABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgTWF2hdbOtkWze7/tF3H7HpAri9fPy3994uff+CK4HvxvQfAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIEtiPQOtjWxbZOdivvM5THW/+7fuaXp8rS0t9r7R7b+rt4JQECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgM5e/19rXPW7nyd0VvWwVwe5MbZ35xoi51/xy+EPqJlTd1S4AAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQKbECjd1dJ3z272N39Xf8KWvgJ68k3aCYxGB08MbfRHk4+7T4AAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQLrC7SutXWu2y1/2ydtuwBubzJ17t3Pxke/97OuL6+1//0RIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAwAYEho61da2tc93A0esesu2vgF79CTfOnPz18JXQZ7taj61+zv8ECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAg0ATKtTLqXpqeufTOTnrsyBXAkyfUTnD6wNTx0pWzQ7tcJ59znwABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABApkFWofautTpg1Pf3+nyt7nu+BXAk8NaeP7UT+ri4l9q7X40+bj7BAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQyCYw/NbvlTIavTw+d/HDh5V9x68AnjzRduLj7tiPSxn9vpTy6eRz7hMgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQCCDQOtKW2fautOHWf42y4d6BfDksOrp06Ob3f/OLNb6p+Hxpyafc58AAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIBBT4ZlfLK4e7oTJmdXdyNfLtWAK+EqbWWhTOnnqlL9cVS6nPD10MfXnnOLQECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBPazwPA1zzeHSvR86csb45mLF4arf+tu5tn1AngyXD198vGFWk7XsvTb4YeOfzqUw6PJ590nQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIDAXhcYSt7F2tUPSu3fHJc6W2YvffGozvmRFsCToesLz3xr4ZtbP6+L5emhBH+6q90Phyp8z5zf5Lm6T4AAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIBAXoGhxKxDk/mf4Urfy2VUL48PHHq/vHXhy70gsmcL1vq7544sLHx1vP9m6fhS1x8fGvPjpavfqaUcGW6PDJhHhsunh9t6aC9AOgcCBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBPa/wHA1763hZ2znh4tW54eWd77U5dvPh280nuu7pbmlA/3ceDw1V86en9+Laf8P5hVEd79xD5kAAAAASUVORK5CYII=) no-repeat center bottom;background-size:100% auto}.red_package_cover_wrp .red_package_cover_img.red_package_open_cover_img:after{display:none}.red_package_cover_wrp .red_package_cover__foot{text-align:center;padding:8% 16px 0}.red_package_cover_wrp .red_package_cover__access-link{font-size:17px;line-height:1.4;font-weight:500;color:var(--weui-RED)}.red_package_cover_wrp .red_package_cover__access-link.disabled{color:var(--weui-FG-2)}.red_package_cover_wrp .red_package_cover__access-link.disabled:after{display:none}.red_package_cover_wrp .red_package_cover__access-link:after{content:\"\";display:inline-block;font-size:10px;width:1.2em;height:2.4em;margin-left:4px;margin-top:-.3em;vertical-align:middle;background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMTJweCIgaGVpZ2h0PSIyNHB4IiB2aWV3Qm94PSIwIDAgMTIgMjQiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYxLjIgKDg5NjUzKSAtIGh0dHBzOi8vc2tldGNoLmNvbSAtLT4KICAgIDx0aXRsZT7liIfniYc8L3RpdGxlPgogICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+CiAgICA8ZGVmcz4KICAgICAgICA8cGF0aCBkPSJNNy41ODc1MDg3MywxMi40Mjk4OTE2IEw2LjUyNjg0ODU2LDEzLjQ5MDU1MTggTDAuNzQ3OTUxNTI2LDcuNzExNjU0NzMgQzAuMzU3ODI2MjI3LDcuMzIxNTI5NDMgMC4zNTQzNjU3ODYsNi42OTI0NzE3OSAwLjc0Nzk1MTUyNiw2LjI5ODg4NjA1IEw2LjUyNjg0ODU2LDAuNTE5OTg5MDE0IEw3LjU4NzUwODczLDEuNTgwNjQ5MTkgTDIuMTYyODg3NTMsNy4wMDUyNzAzOSBMNy41ODc1MDg3MywxMi40Mjk4OTE2IFoiIGlkPSJwYXRoLTEiPjwvcGF0aD4KICAgIDwvZGVmcz4KICAgIDxnIGlkPSJQYWdlLTEiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxnIGlkPSIzLkljb25zL091dGxpbmVkL2Fycm93Ij4KICAgICAgICAgICAgPGcgaWQ9Ikdyb3VwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgyLjAwMDAwMCwgNS4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxtYXNrIGlkPSJtYXNrLTIiIGZpbGw9IndoaXRlIj4KICAgICAgICAgICAgICAgICAgICA8dXNlIHhsaW5rOmhyZWY9IiNwYXRoLTEiPjwvdXNlPgogICAgICAgICAgICAgICAgPC9tYXNrPgogICAgICAgICAgICAgICAgPHVzZSBpZD0i5Zu+5qCH6aKc6ImyIiBmaWxsPSIjRkE1MTUxIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg0LjAyMDc4NCwgNy4wMDUyNzApIHJvdGF0ZSgtMTgwLjAwMDAwMCkgdHJhbnNsYXRlKC00LjAyMDc4NCwgLTcuMDA1MjcwKSAiIHhsaW5rOmhyZWY9IiNwYXRoLTEiPjwvdXNlPgogICAgICAgICAgICA8L2c+CiAgICAgICAgPC9nPgogICAgPC9nPgo8L3N2Zz4=) no-repeat center;background-size:cover}.red_package_cover_wrp .red_package_cover__purchase{font-size:14px;font-weight:400;color:var(--weui-FG-2);margin-top:4px}.red_package_cover_wrp .red_package_cover__extend{display:flex;align-items:center;position:relative;line-height:1.4;padding:8px 16px;font-size:14px;color:var(--weui-FG-1);text-align:left}.red_package_cover_wrp .red_package_cover__extend:before{content:\" \";position:absolute;top:0;left:16px;right:16px;height:1px;background-color:var(--weui-FG-3);transform:scaleY(.5);transform-origin:0 0;-webkit-transform:scaleY(.5);-webkit-transform-origin:0 0}.red_package_cover_wrp .red_package_cover__extend_icon{display:inline-block;vertical-align:middle;font-size:10px;width:1.6em;height:1.6em;margin-right:4px;background:url(\"data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M13.5 8.75149H12.0311C12.1352 8.54415 12.1938 8.30977 12.1938 8.06133C12.1938 7.21422 11.5121 6.52993 10.6741 6.52993C10.259 6.52993 9.86934 6.69916 9.58508 6.99323C8.72588 7.85576 8.3398 8.24353 8.00001 8.58458L6.3806 6.95894C6.09366 6.68304 5.72113 6.52993 5.32607 6.52993C4.48806 6.52993 3.80619 7.21422 3.80619 8.06133C3.80619 8.30977 3.86495 8.54415 3.96891 8.75149H2.50001V2.96628C2.50001 2.57865 2.76965 2.12287 3.11454 1.95118C3.11454 1.95118 3.14324 1.9352 3.23554 1.89586C4.52227 1.34706 6.18193 1 8.00001 1C9.81582 1 11.4782 1.33491 12.7595 1.89368C12.8369 1.92741 12.8815 1.94927 12.8815 1.94927C13.2231 2.12341 13.5 2.57879 13.5 2.96628V8.75149ZM13.5 9.59145V14.3C13.5 14.6875 13.1943 15 12.812 15H3.18804C2.808 15 2.5 14.6873 2.5 14.3V9.59145H5.2614C5.28287 9.59241 5.30446 9.59282 5.32606 9.59282H6.99551C6.41345 10.1719 5.51816 10.9309 4.31259 11.8659L4.81241 12.534C6.06655 11.5614 6.99726 10.7707 7.60789 10.1579L8 9.76423C8.11617 9.88088 8.2467 10.0119 8.4007 10.1663C9.00932 10.7774 9.93721 11.5654 11.1877 12.5342L11.6873 11.8657C10.4797 10.93 9.5844 10.1711 9.00449 9.59282H10.6741C10.6958 9.59282 10.7173 9.59241 10.7387 9.59145H13.5ZM10.7182 8.75143H9.00887L10.1688 7.58691C10.3036 7.44745 10.4821 7.36987 10.6742 7.36987C11.0592 7.36987 11.3688 7.68088 11.3688 8.06127C11.3688 8.42732 11.0825 8.72876 10.7182 8.75143ZM5.28211 8.75143C4.91777 8.72876 4.63136 8.42718 4.63136 8.06127C4.63136 7.68088 4.94111 7.36987 5.32611 7.36987C5.50895 7.36987 5.67945 7.43994 5.80796 7.56341C6.35675 8.11426 6.71506 8.47417 6.99127 8.75143H5.28211Z' fill='%23FA5151'/%3E%3C/svg%3E%0A\") no-repeat 50% 50%;background-size:cover}.red_package_cover_wrp .red_package_cover_disable_wording{display:block;text-align:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1;width:100%;color:#fff}.red_package_cover_wrp.small{width:100%}.red_package_cover_wrp.small .red_package_cover__inner{width:100%;max-width:382px}.red_package_cover_wrp.small .red_package_cover__inner__main{display:flex;flex-direction:row;align-items:center;justify-content:space-between;width:100%;padding:16px 16px 16px 24px;box-sizing:border-box}.red_package_cover_wrp.small .red_package_cover__body{flex-shrink:1;display:flex;flex-direction:row;align-items:center;min-width:0}.red_package_cover_wrp.small .red_package_cover__body span.title-wrp{flex-shrink:1;display:block;margin-left:16px;min-width:0;text-align:left;line-height:1.4}.red_package_cover_wrp.small .red_package_cover__body span.title{display:block;word-break:break-all;font-size:15px;font-weight:500;text-align:left;color:var(--weui-FG-0)}.red_package_cover_wrp.small .red_package_cover__body span.red_package_cover__purchase{display:block;margin-top:2px;font-size:12px;font-weight:400;color:var(--weui-FG-1)}.red_package_cover_wrp.small .red_package_cover_img{flex-shrink:0;height:44px;width:26.4px;margin:0;padding-bottom:unset;border-radius:1px}.red_package_cover_wrp.small .red_package_cover__foot{flex-shrink:0;padding:0;margin-left:16px}.red_package_cover_wrp.small .red_package_cover__access-link{font-size:14px;font-weight:500}.red_package_cover_wrp.small .red_package_cover__access-link.button{color:#fff;background-color:var(--weui-ORANGERED-100);border-radius:6px}.red_package_cover_wrp.small .red_package_cover__access-link.correct:before{position:relative;display:inline-block;content:\"\";margin-right:2px;font-size:16px;width:1em;height:1em;vertical-align:sub;background-color:currentColor;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M5.77124 12.29L2 8.51879L2.94281 7.57598L6.24264 10.8758L13.7851 3.33334L14.7279 4.27614L6.71405 12.29C6.4537 12.5504 6.03159 12.5504 5.77124 12.29Z' fill='black' /%3E%3C/svg%3E%0A\");mask-image:url(\"data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M5.77124 12.29L2 8.51879L2.94281 7.57598L6.24264 10.8758L13.7851 3.33334L14.7279 4.27614L6.71405 12.29C6.4537 12.5504 6.03159 12.5504 5.77124 12.29Z' fill='black' /%3E%3C/svg%3E%0A\");-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center}.red_package_cover_wrp.small .red_package_cover__access-link:after{display:none}.red_package_cover_wrp.small .red_package_cover__extend{display:none}\n", C$4 = { errType: "data-errortype", name: "data-name", isSynthetic: "data-synthetic", imgSrc: "data-receiveimg", openImgSrc: "data-openimg", orderid: "data-orderid", coveruri: "data-coveruri", bizuin: "data-bizuin", status: "data-status", is_hover: "data-is-hover", is_selected: "data-is-selected", isPurchaseOrder: "data-is-purchase-order", smallCard: "data-small-card" }; function o$4(E) { var A = {}; return A = o$6.call(this, C$4), Object.keys(C$4).forEach(function (B) { A[B] = decodeURIComponent(A[B] || ""), ["smallCard", "isSynthetic", "status", "is_hover", "is_selected", "isPurchaseOrder"].indexOf(B) > -1 && (A[B] = A[B] * 1); }), _objectSpread$8({ platform: E }, A); } function b$4() { var E = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; H$3(Object.assign(E, { Component: E.isDev ? E.devComponent : n$5, styleText: E.isDev ? E.devStyleText : d$3, customName: E.customName || "mp-common-redpacket", watchAttr: ["data-errortype", "data-status", "data-receiveimg", "data-synthetic", "data-openimg", "data-is-hover", "data-is-selected"], getProps: o$4 })); } function ownKeys$7(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread$7(e) { for (var r = 1; r 200 || isScrolling()) { return; } var st = e.changedTouches[0]; if (Math.abs(g$4.y - st.clientY) 5 || Math.abs(x - e.clientX) > 5)) { clearTimeout(timeOutEvent); timeOutEvent = undefined; typeof cancelCb === 'function' && cancelCb.call(self, e); } }); on(el, 'mouseup', className, function () { mousedown = false; clearTimeout(timeOutEvent); }); on(el, 'click', className, function () { if (triggerLongClick) return false; }); } else { on(el, 'touchstart', className, function (e) { e.touches.length === 1 && (timeOutEvent = setTimeout(function () { timeOutEvent = undefined; cb.call(self, e); }, 500)); }); on(el, 'touchmove', className, function (e) { if (!timeOutEvent) return; var st = e.changedTouches[0]; if (Math.abs(g$4.y - st.clientY) > 5 || Math.abs(g$4.x - st.clientX) > 5) { clearTimeout(timeOutEvent); timeOutEvent = undefined; typeof cancelCb === 'function' && cancelCb.call(self, e); } }); on(el, 'touchend', className, function (e) { if (timeOutEvent) { clearTimeout(timeOutEvent); timeOutEvent = undefined; } else { e.preventDefault(); } }, true); } } function doubletap(el, cb) { var _this = this; var __lastTouchVideoTs = 0; var realCb = function realCb(e) { if (Date.now() - __lastTouchVideoTs -1; } function closest(target, className, context) { while (target && !matches(target, className)) { target = target !== context && target.nodeType !== target.DOCUMENT_NODE && target.parentNode; } return target; } function on(el, type, className, cb, flag, extra) { var callback; var handler; var delegator; if (!el) return; if (typeof className === 'function') { extra = flag; flag = cb; cb = className; className = ''; } if (typeof className !== 'string') { className = ''; } if (el == window && type == "load" && /complete|loaded/.test(document.readyState)) { return cb({ type: "load" }); } if (type == 'tap') return tap(el, cb, flag, className); if (type === 'longtap') return longtap(el, cb, flag, className, extra); if (type == "unload" && "onpagehide" in window) { type = "pagehide"; } callback = function callback(e) { var ret = cb(e); if (ret === false) { e.stopPropagation && e.stopPropagation(); e.preventDefault && e.preventDefault(); } return ret; }; if (className && className.charAt(0) == '.') delegator = function delegator(e) { var target = e.target || e.srcElement; var match = closest(target, className, el); if (match) { e.delegatedTarget = match; return callback(e); } }; handler = delegator || callback; cb["".concat(type, "_handler")] = handler; if (el.addEventListener) { el.addEventListener(type, handler, !!flag); return; } if (el.attachEvent) { el.attachEvent("on".concat(type), handler, !!flag); return; } } function off(el, type, cb, flag) { if (!el) return; var handlerType = type; var handler; if (handlerType == 'tap') { if (isUseTap()) { handlerType = 'touchend'; handler = cb.tap_handler && cb.tap_handler.touchend_handler ? cb.tap_handler.touchend_handler : cb; } else { handlerType = 'click'; } } if (!handler) { handler = cb["".concat(handlerType, "_handler")] || cb; } if (el.removeEventListener) { el.removeEventListener(handlerType, handler, !!flag); return; } if (el.detachEvent) { el.detachEvent("on".concat(handlerType), handler, !!flag); return; } if (handlerType == 'tap' && isUseTap()) { if (cb.tap_handler) { cb.tap_handler.touchend_handler = null; } cb.tap_handler = null; } else { cb["".concat(handlerType, "_handler")] = null; } } function getHiddenProp() { if ('hidden' in document) { return 'hidden'; } for (var i = 0; i 3 && arguments[3] !== undefined ? arguments[3] : "*"; try { if (!e) return console.warn("postMessageToIframe: win is null"); e.postMessage(JSON.stringify({ action: i, value: E }), G || "*"); } catch (u) { console.log("postMessage error", u); } } var I$3 = { name: "mp-common-bluepacket", mixins: [k$1], props: { extraInfo: { type: Object, "default": function _default() { return {}; } }, scrollBlur: { type: Number, "default": 0 }, loaded: { type: Number, "default": 0 }, urlParams: { type: Object, "default": function _default() { return {}; } }, customstyle: { type: String, "default": "{}" }, wapExportToken: { type: String, "default": "" } }, data: function data() { return { iframeLoading: !0, showIframe: !1, iframeUrl: "", transferStyle: "", active: !1 }; }, computed: { readyToSendToken: function readyToSendToken() { return !this.iframeLoading && this.wapExportToken; }, isEditor: function isEditor() { return this.platform === "web" || this.platform === "app"; }, iframeStyle: function iframeStyle() { var e = {}; return this.platform === "web" ? e.width = "350px" : e.width = "100%", e = Object.assign(e, JSON.parse(this.transferStyle || "{}")), e; } }, watch: { readyToSendToken: function readyToSendToken(e) { e && w$2(this.$refs.iframeRef.contentWindow, "updateToken", { value: this.wapExportToken }); }, loaded: { handler: function handler() { this.loaded && (this.showIframe = !0, this.iframeUrl = this.getCIframeUrl()); }, immediate: !0 } }, created: function created() { this.isEditor && (this.showIframe = !0, this.iframeUrl = this.getBIframeUrl()); }, mounted: function mounted() { var _this = this; this.extraInfo.window && this.extraInfo.window.addEventListener("message", this.handleMessage), this.extraInfo.window && this.extraInfo.window.addEventListener("click", this.handleDocumentClick), this.scrollBlur && this.extraInfo.window && this.extraInfo.window.addEventListener("scroll", this.handleScroll), this.__unbindVisibilityChange = DomEvent.bindVisibilityChangeEvt(this.handleVisibilityChangeEvt), R$4.on("onWindowFocusChanged", this.__onNativeFocusChange = function (e) { var i = Device.os.ios ? !(e.hasFocus * 1) : !!e.hasFocus, E = _this.$refs.iframeRef; i && E != null && E.contentWindow && w$2(E.contentWindow, "pageVisible", { type: "windowFocusChanged" }); }); }, beforeDestroy: function beforeDestroy() { this.extraInfo.window && this.extraInfo.window.removeEventListener("message", this.handleMessage), this.extraInfo.window && this.extraInfo.window.removeEventListener("click", this.handleDocumentClick), R$4.remove("onWindowFocusChanged", this.__onNativeFocusChange), typeof this.__unbindVisibilityChange == "function" && this.__unbindVisibilityChange(); }, methods: { handleVisibilityChangeEvt: function handleVisibilityChangeEvt(e) { var i = this.$refs.iframeRef; e && i != null && i.contentWindow && w$2(i.contentWindow, "pageVisible", { type: "visibilityChange" }); }, handleScroll: function handleScroll() { this.deActive(); }, handleDocumentClick: function handleDocumentClick(e) { this.$refs.js_custom_element.contains(e.target) || (this.deActive(), this.$emit("document-click", e)); }, deActive: function deActive() { var e = this.$refs.iframeRef; e && e.contentWindow && this.active && (w$2(e.contentWindow, "webEvent", { type: "unclick" }), this.active = !1); }, getBIframeUrl: function getBIframeUrl() { var e = _objectSpread$6({}, this.urlParams); delete e.shop_bizuin; var i = window && window.wx && window.wx.data && window.wx.data.t || p$1(window.location.href).token || this.token; return i && (e.token = i), u$2(C$3, e); }, getCIframeUrl: function getCIframeUrl() { var e = _objectSpread$6(_objectSpread$6({}, this.urlParams), {}, { device_type: Device.os.ios ? 1 : 2 }); return delete e.shop_bizuin, u$2(o$2, e); }, handleMessage: function handleMessage(e) { if (e.origin !== T$3) return; var i = this.$refs.iframeRef, E = i == null ? void 0 : i.contentWindow; if (i && e.source === E) { var _s = s$3(e.data), G = _s.action, u = _s.value; switch (G) { case "changeFrameStyle": this.changeFrameStyle(e, u); break; case "onFrameReady": this.onFrameReady(e, i); break; case "webEvent": u.type === "click" ? this.clickProduct(e) : u.type === "toast" ? window.weui.toast(u.msg, { extClass: "weui-toast_text" }) : u.type === "dialog" && window.weui.dialog(u); break; } this.$emit("iframe-message", e); } }, clickProduct: function clickProduct(e) { this.extraInfo.window && this.extraInfo.window.clickedProductWin && e.source !== this.extraInfo.window.clickedProductWin && w$2(this.extraInfo.window.clickedProductWin, "webEvent", { type: "unclick" }), this.extraInfo.window && (this.extraInfo.window.clickedProductWin = e.source), this.active = !0; }, onFrameReady: function onFrameReady() { this.iframeLoadTimeout && clearTimeout(this.iframeLoadTimeout), this.iframeLoading = !1, this.extraInfo.window && w$2(this.extraInfo.window, "setPageData", { darkMode: this.extraInfo.window.matchMedia("(prefers-color-scheme: dark)").matches }), this.isEditor || this.exposureReport(); }, exposureReport: function exposureReport() { var _this2 = this; this.observer = new IntersectionObserver(function (e) { e.forEach(function (i) { var E = _this2.$refs.iframeRef; if (i.isIntersecting && i.intersectionRatio >= 0.5) try { E && E.contentWindow && (_this2.timeout = setTimeout(function () { w$2(E.contentWindow, "webEvent", { type: "valid_expose" }); }, 500)); } catch (G) { console.error(G); } else _this2.timeout && clearTimeout(_this2.timeout); }); }, { threshold: 0.5 }), this.observer.observe(this.$refs.js_custom_element); }, changeFrameStyle: function changeFrameStyle(e, i) { if (!(!i || _typeof$2(i) != "object" || this.cardtype === 2)) try { this.transferStyle = JSON.stringify(i); } catch (E) { console.error(E); } } } }; var n$4 = function n() { var i = this, E = i._self._c; return E("div", { ref: "js_custom_element", staticClass: "iframe_wrp wx_card_root" }, [i.iframeLoading ? E("div", { staticClass: "bluepacket_wx_img_placeholder", style: JSON.parse(i.customstyle || "{}") }) : i._e(), i.showIframe ? E("iframe", { ref: "iframeRef", staticClass: "iframe_style", style: i.iframeStyle, attrs: { src: i.iframeUrl, scrolling: "no", frameborder: "0" } }) : i._e()]); }, O$4 = [], g$3 = v$2(I$3, n$4, O$4, !1, null, "33cbb04e", null, null); var b$2 = g$3.exports, l$4 = "body,.wx-root{--weui-BG-0: #EDEDED;--weui-BG-1: #F7F7F7;--weui-BG-2: #FFFFFF;--weui-BG-3: #F7F7F7;--weui-BG-4: #4C4C4C;--weui-BG-5: #FFFFFF;--weui-BLUE-100: #10AEFF;--weui-BLUE-120: #3FBEFF;--weui-BLUE-170: #B7E6FF;--weui-BLUE-80: #0C8BCC;--weui-BLUE-90: #0E9CE6;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #5AAFE4;--weui-BLUE-BG-130: #7FC0EA;--weui-BLUE-BG-90: #4095CB;--weui-BRAND-100: #07C160;--weui-BRAND-120: #38CD7F;--weui-BRAND-170: #B4ECCE;--weui-BRAND-80: #059A4C;--weui-BRAND-90: #06AE56;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #3EB575;--weui-BRAND-BG-130: #69C694;--weui-BRAND-BG-90: #259C5C;--weui-FG-0: rgba(0, 0, 0, .9);--weui-FG-0_5: rgba(0, 0, 0, .9);--weui-FG-1: rgba(0, 0, 0, .55);--weui-FG-2: rgba(0, 0, 0, .3);--weui-FG-3: rgba(0, 0, 0, .1);--weui-FG-4: rgba(0, 0, 0, .15);--weui-GLYPH-0: rgba(0, 0, 0, .9);--weui-GLYPH-1: rgba(0, 0, 0, .55);--weui-GLYPH-2: rgba(0, 0, 0, .3);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .8);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .5);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .3);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #91D300;--weui-GREEN-120: #A7DB33;--weui-GREEN-170: #DEF1B3;--weui-GREEN-80: #74A800;--weui-GREEN-90: #82BD00;--weui-GREEN-BG-100: #96BE40;--weui-GREEN-BG-110: #A0C452;--weui-GREEN-BG-130: #B5D179;--weui-GREEN-BG-90: #86AA39;--weui-INDIGO-100: #1485EE;--weui-INDIGO-120: #439DF1;--weui-INDIGO-170: #B8DAF9;--weui-INDIGO-80: #106ABE;--weui-INDIGO-90: #1277D6;--weui-INDIGO-BG-100: #2B77BF;--weui-INDIGO-BG-110: #3F84C5;--weui-INDIGO-BG-130: #6BA0D2;--weui-INDIGO-BG-90: #266AAB;--weui-LIGHTGREEN-100: #95EC69;--weui-LIGHTGREEN-120: #AAEF87;--weui-LIGHTGREEN-170: #DEF9D1;--weui-LIGHTGREEN-80: #77BC54;--weui-LIGHTGREEN-90: #85D35E;--weui-LIGHTGREEN-BG-100: #72CF60;--weui-LIGHTGREEN-BG-110: #80D370;--weui-LIGHTGREEN-BG-130: #9CDD90;--weui-LIGHTGREEN-BG-90: #66B956;--weui-LINK-100: #576B95;--weui-LINK-120: #7888AA;--weui-LINK-170: #CCD2DE;--weui-LINK-80: #455577;--weui-LINK-90: #4E6085;--weui-LINKFINDER-100: #002666;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(245, 245, 245, .95);--weui-MATERIAL-NAVIGATIONBAR: rgba(237, 237, 237, .94);--weui-MATERIAL-REGULAR: rgba(247, 247, 247, .3);--weui-MATERIAL-THICK: rgba(247, 247, 247, .8);--weui-MATERIAL-THIN: rgba(255, 255, 255, .2);--weui-MATERIAL-TOOLBAR: rgba(246, 246, 246, .82);--weui-ORANGE-100: #FA9D3B;--weui-ORANGE-120: #FBB062;--weui-ORANGE-170: #FDE1C3;--weui-ORANGE-80: #C87D2F;--weui-ORANGE-90: #E08C34;--weui-ORANGE-BG-100: #EA7800;--weui-ORANGE-BG-110: #EC8519;--weui-ORANGE-BG-130: #F0A04D;--weui-ORANGE-BG-90: #D26B00;--weui-ORANGERED-100: #FF6146;--weui-OVERLAY: rgba(0, 0, 0, .5);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #6467F0;--weui-PURPLE-120: #8385F3;--weui-PURPLE-170: #D0D1FA;--weui-PURPLE-80: #5052C0;--weui-PURPLE-90: #595CD7;--weui-PURPLE-BG-100: #6769BA;--weui-PURPLE-BG-110: #7678C1;--weui-PURPLE-BG-130: #9496CE;--weui-PURPLE-BG-90: #5C5EA7;--weui-RED-100: #FA5151;--weui-RED-120: #FB7373;--weui-RED-170: #FDCACA;--weui-RED-80: #C84040;--weui-RED-90: #E14949;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #D3625A;--weui-RED-BG-130: #DD847E;--weui-RED-BG-90: #B94840;--weui-SECONDARY-BG: rgba(0, 0, 0, .05);--weui-SEPARATOR-0: rgba(0, 0, 0, .1);--weui-SEPARATOR-1: rgba(0, 0, 0, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(0, 0, 0, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(0, 0, 0, .2);--weui-YELLOW-100: #FFC300;--weui-YELLOW-120: #FFCF33;--weui-YELLOW-170: #FFECB2;--weui-YELLOW-80: #CC9C00;--weui-YELLOW-90: #E6AF00;--weui-YELLOW-BG-100: #EFB600;--weui-YELLOW-BG-110: #F0BD19;--weui-YELLOW-BG-130: #F3CC4D;--weui-YELLOW-BG-90: #D7A400;--weui-FG-HALF: rgba(0, 0, 0, .9);--weui-RED: #FA5151;--weui-ORANGERED: #FF6146;--weui-ORANGE: #FA9D3B;--weui-YELLOW: #FFC300;--weui-GREEN: #91D300;--weui-LIGHTGREEN: #95EC69;--weui-TEXTGREEN: #06AE56;--weui-BRAND: #07C160;--weui-BLUE: #10AEFF;--weui-INDIGO: #1485EE;--weui-PURPLE: #6467F0;--weui-LINK: #576B95;--weui-TAG-TEXT-ORANGE: #FA9D3B;--weui-TAG-TEXT-GREEN: #06AE56;--weui-TAG-TEXT-BLUE: #10AEFF;--weui-REDORANGE: #FF6146;--weui-TAG-TEXT-BLACK: rgba(0, 0, 0, .5);--weui-TAG-BACKGROUND-BLACK: rgba(0, 0, 0, .05);--weui-WHITE: #FFFFFF;--weui-BG: #FFFFFF;--weui-FG: #000;--weui-FG-5: rgba(0, 0, 0, .05);--weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, .1);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, .1)}@media (prefers-color-scheme: dark){.wx-root:not([data-weui-theme=light]),body:not([data-weui-theme=light]){--weui-BG-0: #111111;--weui-BG-1: #1E1E1E;--weui-BG-2: #191919;--weui-BG-3: #202020;--weui-BG-4: #404040;--weui-BG-5: #2C2C2C;--weui-BLUE-100: #10AEFF;--weui-BLUE-120: #0C8BCC;--weui-BLUE-170: #04344D;--weui-BLUE-80: #3FBEFF;--weui-BLUE-90: #28B6FF;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #4095CB;--weui-BLUE-BG-130: #32749E;--weui-BLUE-BG-90: #5AAFE4;--weui-BRAND-100: #07C160;--weui-BRAND-120: #059A4C;--weui-BRAND-170: #023A1C;--weui-BRAND-80: #38CD7F;--weui-BRAND-90: #20C770;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #259C5C;--weui-BRAND-BG-130: #1D7A48;--weui-BRAND-BG-90: #3EB575;--weui-FG-0: rgba(255, 255, 255, .8);--weui-FG-0_5: rgba(255, 255, 255, .6);--weui-FG-1: rgba(255, 255, 255, .5);--weui-FG-2: rgba(255, 255, 255, .3);--weui-FG-3: rgba(255, 255, 255, .1);--weui-FG-4: rgba(255, 255, 255, .15);--weui-GLYPH-0: rgba(255, 255, 255, .8);--weui-GLYPH-1: rgba(255, 255, 255, .5);--weui-GLYPH-2: rgba(255, 255, 255, .3);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .8);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .5);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .3);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #74A800;--weui-GREEN-120: #5C8600;--weui-GREEN-170: #233200;--weui-GREEN-80: #8FB933;--weui-GREEN-90: #82B01A;--weui-GREEN-BG-100: #789833;--weui-GREEN-BG-110: #6B882D;--weui-GREEN-BG-130: #65802B;--weui-GREEN-BG-90: #85A247;--weui-INDIGO-100: #1196FF;--weui-INDIGO-120: #0D78CC;--weui-INDIGO-170: #052D4D;--weui-INDIGO-80: #40ABFF;--weui-INDIGO-90: #28A0FF;--weui-INDIGO-BG-100: #0D78CC;--weui-INDIGO-BG-110: #0B6BB7;--weui-INDIGO-BG-130: #09548F;--weui-INDIGO-BG-90: #2585D1;--weui-LIGHTGREEN-100: #3EB575;--weui-LIGHTGREEN-120: #31905D;--weui-LIGHTGREEN-170: #123522;--weui-LIGHTGREEN-80: #64C390;--weui-LIGHTGREEN-90: #51BC83;--weui-LIGHTGREEN-BG-100: #31905D;--weui-LIGHTGREEN-BG-110: #2C8153;--weui-LIGHTGREEN-BG-130: #226541;--weui-LIGHTGREEN-BG-90: #31905D;--weui-LINK-100: #7D90A9;--weui-LINK-120: #647387;--weui-LINK-170: #252A32;--weui-LINK-80: #97A6BA;--weui-LINK-90: #899AB1;--weui-LINKFINDER-100: #DEE9FF;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(32, 32, 32, .93);--weui-MATERIAL-NAVIGATIONBAR: rgba(18, 18, 18, .9);--weui-MATERIAL-REGULAR: rgba(37, 37, 37, .6);--weui-MATERIAL-THICK: rgba(34, 34, 34, .9);--weui-MATERIAL-THIN: rgba(95, 95, 95, .4);--weui-MATERIAL-TOOLBAR: rgba(35, 35, 35, .93);--weui-ORANGE-100: #C87D2F;--weui-ORANGE-120: #A06425;--weui-ORANGE-170: #3B250E;--weui-ORANGE-80: #D39758;--weui-ORANGE-90: #CD8943;--weui-ORANGE-BG-100: #BB6000;--weui-ORANGE-BG-110: #A85600;--weui-ORANGE-BG-130: #824300;--weui-ORANGE-BG-90: #C1701A;--weui-ORANGERED-100: #FF6146;--weui-OVERLAY: rgba(0, 0, 0, .8);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #8183FF;--weui-PURPLE-120: #6768CC;--weui-PURPLE-170: #26274C;--weui-PURPLE-80: #9A9BFF;--weui-PURPLE-90: #8D8FFF;--weui-PURPLE-BG-100: #6768CC;--weui-PURPLE-BG-110: #5C5DB7;--weui-PURPLE-BG-130: #48498F;--weui-PURPLE-BG-90: #7677D1;--weui-RED-100: #FA5151;--weui-RED-120: #C84040;--weui-RED-170: #4B1818;--weui-RED-80: #FB7373;--weui-RED-90: #FA6262;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #BA4940;--weui-RED-BG-130: #913832;--weui-RED-BG-90: #D3625A;--weui-SECONDARY-BG: rgba(255, 255, 255, .1);--weui-SEPARATOR-0: rgba(255, 255, 255, .05);--weui-SEPARATOR-1: rgba(255, 255, 255, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(255, 255, 255, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(255, 255, 255, .2);--weui-YELLOW-100: #CC9C00;--weui-YELLOW-120: #A37C00;--weui-YELLOW-170: #3D2F00;--weui-YELLOW-80: #D6AF33;--weui-YELLOW-90: #D1A519;--weui-YELLOW-BG-100: #BF9100;--weui-YELLOW-BG-110: #AB8200;--weui-YELLOW-BG-130: #866500;--weui-YELLOW-BG-90: #C59C1A;--weui-FG-HALF: rgba(255, 255, 255, .6);--weui-RED: #FA5151;--weui-ORANGERED: #FF6146;--weui-ORANGE: #C87D2F;--weui-YELLOW: #CC9C00;--weui-GREEN: #74A800;--weui-LIGHTGREEN: #3EB575;--weui-TEXTGREEN: #259C5C;--weui-BRAND: #07C160;--weui-BLUE: #10AEFF;--weui-INDIGO: #1196FF;--weui-PURPLE: #8183FF;--weui-LINK: #7D90A9;--weui-REDORANGE: #FF6146;--weui-TAG-TEXT-BLACK: rgba(255, 255, 255, .5);--weui-TAG-BACKGROUND-BLACK: rgba(255, 255, 255, .05);--weui-WHITE: rgba(255, 255, 255, .8);--weui-FG: #fff;--weui-BG: #000;--weui-FG-5: rgba(255, 255, 255, .1);--weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, .1);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, .1);--weui-TAG-TEXT-ORANGE: rgba(250, 157, 59, .6);--weui-TAG-TEXT-GREEN: rgba(6, 174, 86, .6);--weui-TAG-TEXT-BLUE: rgba(16, 174, 255, .6)}}.wx-root[data-weui-theme=dark],body[data-weui-theme=dark]{--weui-BG-0: #111111;--weui-BG-1: #1E1E1E;--weui-BG-2: #191919;--weui-BG-3: #202020;--weui-BG-4: #404040;--weui-BG-5: #2C2C2C;--weui-BLUE-100: #10AEFF;--weui-BLUE-120: #0C8BCC;--weui-BLUE-170: #04344D;--weui-BLUE-80: #3FBEFF;--weui-BLUE-90: #28B6FF;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #4095CB;--weui-BLUE-BG-130: #32749E;--weui-BLUE-BG-90: #5AAFE4;--weui-BRAND-100: #07C160;--weui-BRAND-120: #059A4C;--weui-BRAND-170: #023A1C;--weui-BRAND-80: #38CD7F;--weui-BRAND-90: #20C770;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #259C5C;--weui-BRAND-BG-130: #1D7A48;--weui-BRAND-BG-90: #3EB575;--weui-FG-0: rgba(255, 255, 255, .8);--weui-FG-0_5: rgba(255, 255, 255, .6);--weui-FG-1: rgba(255, 255, 255, .5);--weui-FG-2: rgba(255, 255, 255, .3);--weui-FG-3: rgba(255, 255, 255, .1);--weui-FG-4: rgba(255, 255, 255, .15);--weui-GLYPH-0: rgba(255, 255, 255, .8);--weui-GLYPH-1: rgba(255, 255, 255, .5);--weui-GLYPH-2: rgba(255, 255, 255, .3);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .8);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .5);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .3);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #74A800;--weui-GREEN-120: #5C8600;--weui-GREEN-170: #233200;--weui-GREEN-80: #8FB933;--weui-GREEN-90: #82B01A;--weui-GREEN-BG-100: #789833;--weui-GREEN-BG-110: #6B882D;--weui-GREEN-BG-130: #65802B;--weui-GREEN-BG-90: #85A247;--weui-INDIGO-100: #1196FF;--weui-INDIGO-120: #0D78CC;--weui-INDIGO-170: #052D4D;--weui-INDIGO-80: #40ABFF;--weui-INDIGO-90: #28A0FF;--weui-INDIGO-BG-100: #0D78CC;--weui-INDIGO-BG-110: #0B6BB7;--weui-INDIGO-BG-130: #09548F;--weui-INDIGO-BG-90: #2585D1;--weui-LIGHTGREEN-100: #3EB575;--weui-LIGHTGREEN-120: #31905D;--weui-LIGHTGREEN-170: #123522;--weui-LIGHTGREEN-80: #64C390;--weui-LIGHTGREEN-90: #51BC83;--weui-LIGHTGREEN-BG-100: #31905D;--weui-LIGHTGREEN-BG-110: #2C8153;--weui-LIGHTGREEN-BG-130: #226541;--weui-LIGHTGREEN-BG-90: #31905D;--weui-LINK-100: #7D90A9;--weui-LINK-120: #647387;--weui-LINK-170: #252A32;--weui-LINK-80: #97A6BA;--weui-LINK-90: #899AB1;--weui-LINKFINDER-100: #DEE9FF;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(32, 32, 32, .93);--weui-MATERIAL-NAVIGATIONBAR: rgba(18, 18, 18, .9);--weui-MATERIAL-REGULAR: rgba(37, 37, 37, .6);--weui-MATERIAL-THICK: rgba(34, 34, 34, .9);--weui-MATERIAL-THIN: rgba(95, 95, 95, .4);--weui-MATERIAL-TOOLBAR: rgba(35, 35, 35, .93);--weui-ORANGE-100: #C87D2F;--weui-ORANGE-120: #A06425;--weui-ORANGE-170: #3B250E;--weui-ORANGE-80: #D39758;--weui-ORANGE-90: #CD8943;--weui-ORANGE-BG-100: #BB6000;--weui-ORANGE-BG-110: #A85600;--weui-ORANGE-BG-130: #824300;--weui-ORANGE-BG-90: #C1701A;--weui-ORANGERED-100: #FF6146;--weui-OVERLAY: rgba(0, 0, 0, .8);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #8183FF;--weui-PURPLE-120: #6768CC;--weui-PURPLE-170: #26274C;--weui-PURPLE-80: #9A9BFF;--weui-PURPLE-90: #8D8FFF;--weui-PURPLE-BG-100: #6768CC;--weui-PURPLE-BG-110: #5C5DB7;--weui-PURPLE-BG-130: #48498F;--weui-PURPLE-BG-90: #7677D1;--weui-RED-100: #FA5151;--weui-RED-120: #C84040;--weui-RED-170: #4B1818;--weui-RED-80: #FB7373;--weui-RED-90: #FA6262;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #BA4940;--weui-RED-BG-130: #913832;--weui-RED-BG-90: #D3625A;--weui-SECONDARY-BG: rgba(255, 255, 255, .1);--weui-SEPARATOR-0: rgba(255, 255, 255, .05);--weui-SEPARATOR-1: rgba(255, 255, 255, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(255, 255, 255, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(255, 255, 255, .2);--weui-YELLOW-100: #CC9C00;--weui-YELLOW-120: #A37C00;--weui-YELLOW-170: #3D2F00;--weui-YELLOW-80: #D6AF33;--weui-YELLOW-90: #D1A519;--weui-YELLOW-BG-100: #BF9100;--weui-YELLOW-BG-110: #AB8200;--weui-YELLOW-BG-130: #866500;--weui-YELLOW-BG-90: #C59C1A;--weui-FG-HALF: rgba(255, 255, 255, .6);--weui-RED: #FA5151;--weui-ORANGERED: #FF6146;--weui-ORANGE: #C87D2F;--weui-YELLOW: #CC9C00;--weui-GREEN: #74A800;--weui-LIGHTGREEN: #3EB575;--weui-TEXTGREEN: #259C5C;--weui-BRAND: #07C160;--weui-BLUE: #10AEFF;--weui-INDIGO: #1196FF;--weui-PURPLE: #8183FF;--weui-LINK: #7D90A9;--weui-REDORANGE: #FF6146;--weui-TAG-TEXT-BLACK: rgba(255, 255, 255, .5);--weui-TAG-BACKGROUND-BLACK: rgba(255, 255, 255, .05);--weui-WHITE: rgba(255, 255, 255, .8);--weui-FG: #fff;--weui-BG: #000;--weui-FG-5: rgba(255, 255, 255, .1);--weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, .1);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, .1);--weui-TAG-TEXT-ORANGE: rgba(250, 157, 59, .6);--weui-TAG-TEXT-GREEN: rgba(6, 174, 86, .6);--weui-TAG-TEXT-BLUE: rgba(16, 174, 255, .6)}.wx-root[data-weui-mode=care],body[data-weui-mode=care]{--weui-BG-0: #EDEDED;--weui-BG-1: #F7F7F7;--weui-BG-2: #FFFFFF;--weui-BG-3: #F7F7F7;--weui-BG-4: #4C4C4C;--weui-BG-5: #FFFFFF;--weui-BLUE-100: #007DBB;--weui-BLUE-120: #3FBEFF;--weui-BLUE-170: #B7E6FF;--weui-BLUE-80: #0C8BCC;--weui-BLUE-90: #0E9CE6;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #5AAFE4;--weui-BLUE-BG-130: #7FC0EA;--weui-BLUE-BG-90: #4095CB;--weui-BRAND-100: #018942;--weui-BRAND-120: #38CD7F;--weui-BRAND-170: #B4ECCE;--weui-BRAND-80: #059A4C;--weui-BRAND-90: #06AE56;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #3EB575;--weui-BRAND-BG-130: #69C694;--weui-BRAND-BG-90: #259C5C;--weui-FG-0: #000000;--weui-FG-0_5: #000000;--weui-FG-1: rgba(0, 0, 0, .6);--weui-FG-2: rgba(0, 0, 0, .42);--weui-FG-3: rgba(0, 0, 0, .1);--weui-FG-4: rgba(0, 0, 0, .15);--weui-GLYPH-0: #000000;--weui-GLYPH-1: rgba(0, 0, 0, .6);--weui-GLYPH-2: rgba(0, 0, 0, .42);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .85);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .55);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .35);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #4F8400;--weui-GREEN-120: #A7DB33;--weui-GREEN-170: #DEF1B3;--weui-GREEN-80: #74A800;--weui-GREEN-90: #82BD00;--weui-GREEN-BG-100: #96BE40;--weui-GREEN-BG-110: #A0C452;--weui-GREEN-BG-130: #B5D179;--weui-GREEN-BG-90: #86AA39;--weui-INDIGO-100: #0075E2;--weui-INDIGO-120: #439DF1;--weui-INDIGO-170: #B8DAF9;--weui-INDIGO-80: #106ABE;--weui-INDIGO-90: #1277D6;--weui-INDIGO-BG-100: #2B77BF;--weui-INDIGO-BG-110: #3F84C5;--weui-INDIGO-BG-130: #6BA0D2;--weui-INDIGO-BG-90: #266AAB;--weui-LIGHTGREEN-100: #2E8800;--weui-LIGHTGREEN-120: #AAEF87;--weui-LIGHTGREEN-170: #DEF9D1;--weui-LIGHTGREEN-80: #77BC54;--weui-LIGHTGREEN-90: #85D35E;--weui-LIGHTGREEN-BG-100: #72CF60;--weui-LIGHTGREEN-BG-110: #80D370;--weui-LIGHTGREEN-BG-130: #9CDD90;--weui-LIGHTGREEN-BG-90: #66B956;--weui-LINK-100: #576B95;--weui-LINK-120: #7888AA;--weui-LINK-170: #CCD2DE;--weui-LINK-80: #455577;--weui-LINK-90: #4E6085;--weui-LINKFINDER-100: #002666;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(245, 245, 245, .95);--weui-MATERIAL-NAVIGATIONBAR: rgba(237, 237, 237, .94);--weui-MATERIAL-REGULAR: rgba(247, 247, 247, .3);--weui-MATERIAL-THICK: rgba(247, 247, 247, .8);--weui-MATERIAL-THIN: rgba(255, 255, 255, .2);--weui-MATERIAL-TOOLBAR: rgba(246, 246, 246, .82);--weui-ORANGE-100: #E17719;--weui-ORANGE-120: #FBB062;--weui-ORANGE-170: #FDE1C3;--weui-ORANGE-80: #C87D2F;--weui-ORANGE-90: #E08C34;--weui-ORANGE-BG-100: #EA7800;--weui-ORANGE-BG-110: #EC8519;--weui-ORANGE-BG-130: #F0A04D;--weui-ORANGE-BG-90: #D26B00;--weui-ORANGERED-100: #D14730;--weui-OVERLAY: rgba(0, 0, 0, .5);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #6265F1;--weui-PURPLE-120: #8385F3;--weui-PURPLE-170: #D0D1FA;--weui-PURPLE-80: #5052C0;--weui-PURPLE-90: #595CD7;--weui-PURPLE-BG-100: #6769BA;--weui-PURPLE-BG-110: #7678C1;--weui-PURPLE-BG-130: #9496CE;--weui-PURPLE-BG-90: #5C5EA7;--weui-RED-100: #DC3636;--weui-RED-120: #FB7373;--weui-RED-170: #FDCACA;--weui-RED-80: #C84040;--weui-RED-90: #E14949;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #D3625A;--weui-RED-BG-130: #DD847E;--weui-RED-BG-90: #B94840;--weui-SECONDARY-BG: rgba(0, 0, 0, .1);--weui-SEPARATOR-0: rgba(0, 0, 0, .1);--weui-SEPARATOR-1: rgba(0, 0, 0, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(0, 0, 0, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(0, 0, 0, .2);--weui-YELLOW-100: #BB8E00;--weui-YELLOW-120: #FFCF33;--weui-YELLOW-170: #FFECB2;--weui-YELLOW-80: #CC9C00;--weui-YELLOW-90: #E6AF00;--weui-YELLOW-BG-100: #EFB600;--weui-YELLOW-BG-110: #F0BD19;--weui-YELLOW-BG-130: #F3CC4D;--weui-YELLOW-BG-90: #D7A400;--weui-FG-HALF: #000000;--weui-RED: #DC3636;--weui-ORANGERED: #D14730;--weui-ORANGE: #E17719;--weui-YELLOW: #BB8E00;--weui-GREEN: #4F8400;--weui-LIGHTGREEN: #2E8800;--weui-TEXTGREEN: #06AE56;--weui-BRAND: #018942;--weui-BLUE: #007DBB;--weui-INDIGO: #0075E2;--weui-PURPLE: #6265F1;--weui-LINK: #576B95;--weui-TAG-TEXT-ORANGE: #E17719;--weui-TAG-TEXT-GREEN: #06AE56;--weui-TAG-TEXT-BLUE: #007DBB;--weui-REDORANGE: #D14730;--weui-TAG-TEXT-BLACK: rgba(0, 0, 0, .5);--weui-WHITE: #FFFFFF;--weui-BG: #FFFFFF;--weui-FG: #000;--weui-FG-5: rgba(0, 0, 0, .05);--weui-TAG-BACKGROUND-ORANGE: rgba(225, 119, 25, .1);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-BACKGROUND-BLUE: rgba(0, 125, 187, .1);--weui-TAG-BACKGROUND-BLACK: rgba(0, 0, 0, .05)}@media (prefers-color-scheme: dark){.wx-root[data-weui-mode=care]:not([data-weui-theme=light]),body[data-weui-mode=care]:not([data-weui-theme=light]){--weui-BG-0: #111111;--weui-BG-1: #1E1E1E;--weui-BG-2: #191919;--weui-BG-3: #202020;--weui-BG-4: #404040;--weui-BG-5: #2C2C2C;--weui-BLUE-100: #10AEFF;--weui-BLUE-120: #0C8BCC;--weui-BLUE-170: #04344D;--weui-BLUE-80: #3FBEFF;--weui-BLUE-90: #28B6FF;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #4095CB;--weui-BLUE-BG-130: #32749E;--weui-BLUE-BG-90: #5AAFE4;--weui-BRAND-100: #07C160;--weui-BRAND-120: #059A4C;--weui-BRAND-170: #023A1C;--weui-BRAND-80: #38CD7F;--weui-BRAND-90: #20C770;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #259C5C;--weui-BRAND-BG-130: #1D7A48;--weui-BRAND-BG-90: #3EB575;--weui-FG-0: rgba(255, 255, 255, .85);--weui-FG-0_5: rgba(255, 255, 255, .65);--weui-FG-1: rgba(255, 255, 255, .55);--weui-FG-2: rgba(255, 255, 255, .35);--weui-FG-3: rgba(255, 255, 255, .1);--weui-FG-4: rgba(255, 255, 255, .15);--weui-GLYPH-0: rgba(255, 255, 255, .85);--weui-GLYPH-1: rgba(255, 255, 255, .55);--weui-GLYPH-2: rgba(255, 255, 255, .35);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .85);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .55);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .35);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #74A800;--weui-GREEN-120: #5C8600;--weui-GREEN-170: #233200;--weui-GREEN-80: #8FB933;--weui-GREEN-90: #82B01A;--weui-GREEN-BG-100: #789833;--weui-GREEN-BG-110: #6B882D;--weui-GREEN-BG-130: #65802B;--weui-GREEN-BG-90: #85A247;--weui-INDIGO-100: #1196FF;--weui-INDIGO-120: #0D78CC;--weui-INDIGO-170: #052D4D;--weui-INDIGO-80: #40ABFF;--weui-INDIGO-90: #28A0FF;--weui-INDIGO-BG-100: #0D78CC;--weui-INDIGO-BG-110: #0B6BB7;--weui-INDIGO-BG-130: #09548F;--weui-INDIGO-BG-90: #2585D1;--weui-LIGHTGREEN-100: #3EB575;--weui-LIGHTGREEN-120: #31905D;--weui-LIGHTGREEN-170: #123522;--weui-LIGHTGREEN-80: #64C390;--weui-LIGHTGREEN-90: #51BC83;--weui-LIGHTGREEN-BG-100: #31905D;--weui-LIGHTGREEN-BG-110: #2C8153;--weui-LIGHTGREEN-BG-130: #226541;--weui-LIGHTGREEN-BG-90: #31905D;--weui-LINK-100: #7D90A9;--weui-LINK-120: #647387;--weui-LINK-170: #252A32;--weui-LINK-80: #97A6BA;--weui-LINK-90: #899AB1;--weui-LINKFINDER-100: #DEE9FF;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(32, 32, 32, .93);--weui-MATERIAL-NAVIGATIONBAR: rgba(18, 18, 18, .9);--weui-MATERIAL-REGULAR: rgba(37, 37, 37, .6);--weui-MATERIAL-THICK: rgba(34, 34, 34, .9);--weui-MATERIAL-THIN: rgba(245, 245, 245, .4);--weui-MATERIAL-TOOLBAR: rgba(35, 35, 35, .93);--weui-ORANGE-100: #C87D2F;--weui-ORANGE-120: #A06425;--weui-ORANGE-170: #3B250E;--weui-ORANGE-80: #D39758;--weui-ORANGE-90: #CD8943;--weui-ORANGE-BG-100: #BB6000;--weui-ORANGE-BG-110: #A85600;--weui-ORANGE-BG-130: #824300;--weui-ORANGE-BG-90: #C1701A;--weui-ORANGERED-100: #FF6146;--weui-OVERLAY: rgba(0, 0, 0, .8);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #8183FF;--weui-PURPLE-120: #6768CC;--weui-PURPLE-170: #26274C;--weui-PURPLE-80: #9A9BFF;--weui-PURPLE-90: #8D8FFF;--weui-PURPLE-BG-100: #6768CC;--weui-PURPLE-BG-110: #5C5DB7;--weui-PURPLE-BG-130: #48498F;--weui-PURPLE-BG-90: #7677D1;--weui-RED-100: #FA5151;--weui-RED-120: #C84040;--weui-RED-170: #4B1818;--weui-RED-80: #FB7373;--weui-RED-90: #FA6262;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #BA4940;--weui-RED-BG-130: #913832;--weui-RED-BG-90: #D3625A;--weui-SECONDARY-BG: rgba(255, 255, 255, .15);--weui-SEPARATOR-0: rgba(255, 255, 255, .05);--weui-SEPARATOR-1: rgba(255, 255, 255, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(255, 255, 255, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(255, 255, 255, .2);--weui-YELLOW-100: #CC9C00;--weui-YELLOW-120: #A37C00;--weui-YELLOW-170: #3D2F00;--weui-YELLOW-80: #D6AF33;--weui-YELLOW-90: #D1A519;--weui-YELLOW-BG-100: #BF9100;--weui-YELLOW-BG-110: #AB8200;--weui-YELLOW-BG-130: #866500;--weui-YELLOW-BG-90: #C59C1A;--weui-FG-HALF: rgba(255, 255, 255, .65);--weui-RED: #FA5151;--weui-ORANGERED: #FF6146;--weui-ORANGE: #C87D2F;--weui-YELLOW: #CC9C00;--weui-GREEN: #74A800;--weui-LIGHTGREEN: #3EB575;--weui-TEXTGREEN: #259C5C;--weui-BRAND: #07C160;--weui-BLUE: #10AEFF;--weui-INDIGO: #1196FF;--weui-PURPLE: #8183FF;--weui-LINK: #7D90A9;--weui-REDORANGE: #FF6146;--weui-TAG-BACKGROUND-BLACK: rgba(255, 255, 255, .05);--weui-FG: #fff;--weui-WHITE: rgba(255, 255, 255, .8);--weui-FG-5: rgba(255, 255, 255, .1);--weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, .1);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, .1);--weui-TAG-TEXT-ORANGE: rgba(250, 157, 59, .6);--weui-BG: #000;--weui-TAG-TEXT-GREEN: rgba(6, 174, 86, .6);--weui-TAG-TEXT-BLUE: rgba(16, 174, 255, .6);--weui-TAG-TEXT-BLACK: rgba(255, 255, 255, .5)}}.wx-root[data-weui-mode=care][data-weui-theme=dark],body[data-weui-mode=care][data-weui-theme=dark]{--weui-BG-0: #111111;--weui-BG-1: #1E1E1E;--weui-BG-2: #191919;--weui-BG-3: #202020;--weui-BG-4: #404040;--weui-BG-5: #2C2C2C;--weui-BLUE-100: #10AEFF;--weui-BLUE-120: #0C8BCC;--weui-BLUE-170: #04344D;--weui-BLUE-80: #3FBEFF;--weui-BLUE-90: #28B6FF;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #4095CB;--weui-BLUE-BG-130: #32749E;--weui-BLUE-BG-90: #5AAFE4;--weui-BRAND-100: #07C160;--weui-BRAND-120: #059A4C;--weui-BRAND-170: #023A1C;--weui-BRAND-80: #38CD7F;--weui-BRAND-90: #20C770;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #259C5C;--weui-BRAND-BG-130: #1D7A48;--weui-BRAND-BG-90: #3EB575;--weui-FG-0: rgba(255, 255, 255, .85);--weui-FG-0_5: rgba(255, 255, 255, .65);--weui-FG-1: rgba(255, 255, 255, .55);--weui-FG-2: rgba(255, 255, 255, .35);--weui-FG-3: rgba(255, 255, 255, .1);--weui-FG-4: rgba(255, 255, 255, .15);--weui-GLYPH-0: rgba(255, 255, 255, .85);--weui-GLYPH-1: rgba(255, 255, 255, .55);--weui-GLYPH-2: rgba(255, 255, 255, .35);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .85);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .55);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .35);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #74A800;--weui-GREEN-120: #5C8600;--weui-GREEN-170: #233200;--weui-GREEN-80: #8FB933;--weui-GREEN-90: #82B01A;--weui-GREEN-BG-100: #789833;--weui-GREEN-BG-110: #6B882D;--weui-GREEN-BG-130: #65802B;--weui-GREEN-BG-90: #85A247;--weui-INDIGO-100: #1196FF;--weui-INDIGO-120: #0D78CC;--weui-INDIGO-170: #052D4D;--weui-INDIGO-80: #40ABFF;--weui-INDIGO-90: #28A0FF;--weui-INDIGO-BG-100: #0D78CC;--weui-INDIGO-BG-110: #0B6BB7;--weui-INDIGO-BG-130: #09548F;--weui-INDIGO-BG-90: #2585D1;--weui-LIGHTGREEN-100: #3EB575;--weui-LIGHTGREEN-120: #31905D;--weui-LIGHTGREEN-170: #123522;--weui-LIGHTGREEN-80: #64C390;--weui-LIGHTGREEN-90: #51BC83;--weui-LIGHTGREEN-BG-100: #31905D;--weui-LIGHTGREEN-BG-110: #2C8153;--weui-LIGHTGREEN-BG-130: #226541;--weui-LIGHTGREEN-BG-90: #31905D;--weui-LINK-100: #7D90A9;--weui-LINK-120: #647387;--weui-LINK-170: #252A32;--weui-LINK-80: #97A6BA;--weui-LINK-90: #899AB1;--weui-LINKFINDER-100: #DEE9FF;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(32, 32, 32, .93);--weui-MATERIAL-NAVIGATIONBAR: rgba(18, 18, 18, .9);--weui-MATERIAL-REGULAR: rgba(37, 37, 37, .6);--weui-MATERIAL-THICK: rgba(34, 34, 34, .9);--weui-MATERIAL-THIN: rgba(245, 245, 245, .4);--weui-MATERIAL-TOOLBAR: rgba(35, 35, 35, .93);--weui-ORANGE-100: #C87D2F;--weui-ORANGE-120: #A06425;--weui-ORANGE-170: #3B250E;--weui-ORANGE-80: #D39758;--weui-ORANGE-90: #CD8943;--weui-ORANGE-BG-100: #BB6000;--weui-ORANGE-BG-110: #A85600;--weui-ORANGE-BG-130: #824300;--weui-ORANGE-BG-90: #C1701A;--weui-ORANGERED-100: #FF6146;--weui-OVERLAY: rgba(0, 0, 0, .8);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #8183FF;--weui-PURPLE-120: #6768CC;--weui-PURPLE-170: #26274C;--weui-PURPLE-80: #9A9BFF;--weui-PURPLE-90: #8D8FFF;--weui-PURPLE-BG-100: #6768CC;--weui-PURPLE-BG-110: #5C5DB7;--weui-PURPLE-BG-130: #48498F;--weui-PURPLE-BG-90: #7677D1;--weui-RED-100: #FA5151;--weui-RED-120: #C84040;--weui-RED-170: #4B1818;--weui-RED-80: #FB7373;--weui-RED-90: #FA6262;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #BA4940;--weui-RED-BG-130: #913832;--weui-RED-BG-90: #D3625A;--weui-SECONDARY-BG: rgba(255, 255, 255, .15);--weui-SEPARATOR-0: rgba(255, 255, 255, .05);--weui-SEPARATOR-1: rgba(255, 255, 255, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(255, 255, 255, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(255, 255, 255, .2);--weui-YELLOW-100: #CC9C00;--weui-YELLOW-120: #A37C00;--weui-YELLOW-170: #3D2F00;--weui-YELLOW-80: #D6AF33;--weui-YELLOW-90: #D1A519;--weui-YELLOW-BG-100: #BF9100;--weui-YELLOW-BG-110: #AB8200;--weui-YELLOW-BG-130: #866500;--weui-YELLOW-BG-90: #C59C1A;--weui-FG-HALF: rgba(255, 255, 255, .65);--weui-RED: #FA5151;--weui-ORANGERED: #FF6146;--weui-ORANGE: #C87D2F;--weui-YELLOW: #CC9C00;--weui-GREEN: #74A800;--weui-LIGHTGREEN: #3EB575;--weui-TEXTGREEN: #259C5C;--weui-BRAND: #07C160;--weui-BLUE: #10AEFF;--weui-INDIGO: #1196FF;--weui-PURPLE: #8183FF;--weui-LINK: #7D90A9;--weui-REDORANGE: #FF6146;--weui-TAG-BACKGROUND-BLACK: rgba(255, 255, 255, .05);--weui-FG: #fff;--weui-WHITE: rgba(255, 255, 255, .8);--weui-FG-5: rgba(255, 255, 255, .1);--weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, .1);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, .1);--weui-TAG-TEXT-ORANGE: rgba(250, 157, 59, .6);--weui-BG: #000;--weui-TAG-TEXT-GREEN: rgba(6, 174, 86, .6);--weui-TAG-TEXT-BLUE: rgba(16, 174, 255, .6);--weui-TAG-TEXT-BLACK: rgba(255, 255, 255, .5)}.bluepacket_wx_img_placeholder{width:100%;background:var(--weui-BG-3) url(\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='80px' height='80px' viewBox='0 0 80 80' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3E9.\u5143\u7D20/\u52A0\u8F7D/Black%3C/title%3E%3Cdefs%3E%3ClinearGradient x1='94.0869141%25' y1='0%25' x2='94.0869141%25' y2='90.559082%25' id='linearGradient-1'%3E%3Cstop stop-color='%23606060' stop-opacity='0' offset='0%25'%3E%3C/stop%3E%3Cstop stop-color='%23606060' stop-opacity='0.3' offset='100%25'%3E%3C/stop%3E%3C/linearGradient%3E%3ClinearGradient x1='100%25' y1='8.67370605%25' x2='100%25' y2='90.6286621%25' id='linearGradient-2'%3E%3Cstop stop-color='%23606060' offset='0%25'%3E%3C/stop%3E%3Cstop stop-color='%23606060' stop-opacity='0.3' offset='100%25'%3E%3C/stop%3E%3C/linearGradient%3E%3C/defs%3E%3Cg id='\u9875\u9762-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' opacity='0.9'%3E%3Cg id='LoadingDefault'%3E%3Cpath d='M40,0 C62.09139,0 80,17.90861 80,40 C80,62.09139 62.09139,80 40,80 L40,73 C58.2253967,73 73,58.2253967 73,40 C73,21.7746033 58.2253967,7 40,7 L40,0 Z' id='\u8DEF\u5F84' fill='url(%23linearGradient-1)'%3E%3C/path%3E%3Cpath d='M40,0 L40,7 C21.7746033,7 7,21.7746033 7,40 C7,58.2253967 21.7746033,73 40,73 L40,80 C17.90861,80 0,62.09139 0,40 C0,17.90861 17.90861,0 40,0 Z' id='\u8DEF\u5F84' fill='url(%23linearGradient-2)'%3E%3C/path%3E%3Ccircle id='Oval' fill='%23606060' cx='40.5' cy='3.5' r='3.5'%3E%3C/circle%3E%3C/g%3E%3CanimateTransform attributeName='transform' begin='0s' dur='1s' type='rotate' values='0 40 40;360 40 40' repeatCount='indefinite'/%3E%3C/g%3E%3C/svg%3E%0A\") no-repeat 50% 50%!important;background-size:16px!important;border-radius:8px}.iframe_style{height:0px}.iframe_wrp{display:flex;flex-direction:column;-webkit-user-select:none;-moz-user-select:none;user-select:none;align-items:center;position:relative}\n", r$6 = { loaded: "data-loaded", urlParams: "data-url-params", customstyle: "data-customstyle", scrollBlur: "data-scroll-blur", wapExportToken: "data-wap-export-token" }; function c$2(e) { var i = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; var E = {}; return E = o$6.call(this, r$6), E.loaded = Number(E.loaded || 0), E.urlParams = JSON.parse(E.urlParams || "{}"), E.scrollBlur = Number(E.scrollBlur || 0), _objectSpread$6({ platform: e, extraInfo: i }, E); } function Y(e) { H$3(Object.assign(e, { Component: e.isDev ? e.devComponent : b$2, styleText: e.isDev ? e.devStyleText : l$4, customName: e.customName || "mp-common-bluepacket", watchAttr: Object.values(r$6), getProps: c$2, eventName: ["iframe-message", "document-click", "expose", "element-click"] })); } function parseUrl(url) { var a = document.createElement('a'); a.href = url; return { source: url, protocol: a.protocol.replace(':', ''), host: a.hostname, port: a.port, query: a.search, params: function () { var ret = {}; var seg = a.search.replace(/^\?/, '').split('&'); var len = seg.length; var i = 0; var s; for (; i = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } function O$3(_x) { return _O.apply(this, arguments); } function _O() { _O = asyncToGenerator( _regeneratorRuntime$1().mark(function _callee13(B) { return _regeneratorRuntime$1().wrap(function _callee13$(_context13) { while (1) switch (_context13.prev = _context13.next) { case 0: return _context13.abrupt("return", new Promise(function (A) { R$4.invoke("handleEcsAction", { action: "openEcs", ecsJumpInfoBase64: B }, function (e) { A(e); }); })); case 1: case "end": return _context13.stop(); } }, _callee13); })); return _O.apply(this, arguments); } function L() { return _L.apply(this, arguments); } function _L() { _L = asyncToGenerator( _regeneratorRuntime$1().mark(function _callee14() { return _regeneratorRuntime$1().wrap(function _callee14$(_context14) { while (1) switch (_context14.prev = _context14.next) { case 0: return _context14.abrupt("return", new Promise(function (B) { R$4.invoke("handleEcsAction", { action: "checkAction", params: { method: "isActionAvailable", actionName: "openEcs", actionVersion: "1" } }, function (A) { A != null && A.result ? B(!0) : B(!1); }); })); case 1: case "end": return _context14.stop(); } }, _callee14); })); return _L.apply(this, arguments); } var R$1 = 7, U = { NORMAL: 1, CLOSED: 2, BANED: 3 }, r$5 = { CARD: 1, PRODUCT: 2 }, I$2 = { EXPOSE: 1, CLICK: 2 }, l$3 = { PRODUCT: 0, BANNER: 1, CURATED_SET: 2 }, d$2 = { red: 235, green: 235, blue: 235 }, y = "rgba(0,0,0,0.9)", _$1 = "rgba(0,0,0,0.55)", J$1 = { name: "mp-common-shopprofile", mixins: [k$1], props: { id: { type: String, "default": "" }, appid: { type: String, "default": "" }, shopEncryptKey: { type: String, "default": "" }, is_hover: { type: Number, "default": 0 }, is_selected: { type: Number, "default": 0 } }, data: function data() { return { getShopCardResp: null, requestinggetShopCardResp: !1, _supportOpenEcs: void 0, forceUpdate: !1, productWidth: 0, productHeight: 0, iframeLoading: !0, isDark: window.matchMedia && window.matchMedia("(prefers-color-scheme: dark)").matches, getShopCardPromise: null }; }, computed: { isEditor: function isEditor() { return this.platform === "web" || this.platform === "app"; }, cardStyle: function cardStyle() { var B = {}; return this.platform === "web" ? B.width = "350px" : B.width = "100%", B; }, placeholderStyle: function placeholderStyle() { var B = { height: "108px" }; return this.platform === "web" ? B.width = "350px" : B.width = "100%", B; }, productStyle: function productStyle() { return { width: "".concat(this.productWidth, "px"), height: "".concat(this.productHeight, "px") }; }, pruductImgStyle: function pruductImgStyle() { return { width: "".concat(this.productWidth, "px"), height: "".concat(this.productHeight, "px") }; }, headImgUrl: function headImgUrl() { var B, A, e; return ((e = (A = (B = this.getShopCardResp) == null ? void 0 : B.ec_shop_card) == null ? void 0 : A.profile_info) == null ? void 0 : e.head_img_url) || ""; }, shopProfileName: function shopProfileName() { var B, A, e; return ((e = (A = (B = this.getShopCardResp) == null ? void 0 : B.ec_shop_card) == null ? void 0 : A.profile_info) == null ? void 0 : e.shop_window_profile_name) || ""; }, brandTailWording: function brandTailWording() { var B, A, e, i; return ((i = (e = (A = (B = this.getShopCardResp) == null ? void 0 : B.ec_shop_card) == null ? void 0 : A.profile_info) == null ? void 0 : e.shop_icon) == null ? void 0 : i.icon_r_words) || ""; }, saleWording: function saleWording() { var B, A, e; return ((e = (A = (B = this.getShopCardResp) == null ? void 0 : B.ec_shop_card) == null ? void 0 : A.profile_info) == null ? void 0 : e.sale_wording) || ""; }, brandIconUrl: function brandIconUrl() { var B, A, e, i, E, t, g, w; return this.hasBgColor ? ((w = (g = (t = (E = this.getShopCardResp) == null ? void 0 : E.ec_shop_card) == null ? void 0 : t.profile_info) == null ? void 0 : g.shop_icon) == null ? void 0 : w.icon_r_url_dark) || "" : ((i = (e = (A = (B = this.getShopCardResp) == null ? void 0 : B.ec_shop_card) == null ? void 0 : A.profile_info) == null ? void 0 : e.shop_icon) == null ? void 0 : i.icon_r_url) || ""; }, products: function products() { var B, A; return (((A = (B = this.getShopCardResp) == null ? void 0 : B.ec_shop_card) == null ? void 0 : A.simple_products) || []).slice(0, 3); }, shopJumpInfo: function shopJumpInfo() { var B, A; return ((A = (B = this.getShopCardResp) == null ? void 0 : B.ec_shop_card) == null ? void 0 : A.shop_jump_info_base64_str) || ""; }, shopStatus: function shopStatus() { var B; return (B = this.getShopCardResp) == null ? void 0 : B.shop_status; }, isShopStatusNormal: function isShopStatusNormal() { return this.shopStatus === U.NORMAL; }, statusDesc: function statusDesc() { return this.shopStatus === U.CLOSED ? "店铺已注销" : this.shopStatus === U.BANED ? "店铺已被封禁" : ""; }, showContent: function showContent() { var B; return (B = this.getShopCardResp) == null ? void 0 : B.show_content; }, isProductCard: function isProductCard() { return _typeof$2(this.showContent) > "u" ? !0 : this.showContent === l$3.PRODUCT; }, isBannerCard: function isBannerCard() { return this.showContent === l$3.BANNER; }, isCrratedSetCard: function isCrratedSetCard() { return this.showContent === l$3.CURATED_SET; }, iconStyle: function iconStyle() { return this.isDark && this.platform === "web" ? { backgroundImage: 'url("https://res.wx.qq.com/shop/public/2025-05-10/321b820e-8d8a-4083-8e0f-40b2b01fc8ef.png")' } : {}; }, banners: function banners() { var _this = this; var A; return (((A = this.getShopCardResp) == null ? void 0 : A.banners) || []).slice(0, 3).map(function (e) { var E, t, g, w, o, u, G, Q, M, c; var i = _this.bgColor; return { id: e.id, type: e.type, title: (E = e.banner) == null ? void 0 : E.title, subTitle: (t = e.banner) == null ? void 0 : t.subtitle, imgUrl: (g = e.banner) == null ? void 0 : g.img_url, desc: (w = e.banner) == null ? void 0 : w.description, bgColor: y$2([i.red, i.green, i.blue]), bgColorRgb: i, product: e.product && { showPriceStartWording: (u = (o = e.product) == null ? void 0 : o.price) == null ? void 0 : u.has_range_price, fullPage: e.product.full_page, ecsJumpInfoBase64Str: (G = e.product) == null ? void 0 : G.ecs_jump_info_base64_str }, finderInfo: e.finder && { finderUsername: e.finder.uniq_id, feedId: e.finder.export_id, nickname: (Q = e.finder) == null ? void 0 : Q.nickname }, mpInfo: e.official_account && { url: e.official_account.url, nickname: (M = e.official_account) == null ? void 0 : M.nickname, title: (c = e.official_account) == null ? void 0 : c.title, itemShowType: e.official_account.item_show_type } }; }); }, curatedSets: function curatedSets() { var A; var B = ((A = this.getShopCardResp) == null ? void 0 : A.curated_sets) || []; return B = B.map(function (e) { var i = e.product_total_count; return { mainProductImg: e.cover_img_url, title: e.title, productCnt: i > 99 ? "99+" : i, jumpInfoBase64Str: e.jump_info_base64_str || "" }; }).filter(function (e) { return !!e.mainProductImg; }).slice(0, 3), B; }, background: function background() { var B; return (B = this.getShopCardResp) == null ? void 0 : B.back_ground; }, cardHeadStyle: function cardHeadStyle() { var B, A, e, i; if ((B = this.background) != null && B.img_url) { if (this.hasBgColor) { var E = C$6((A = this.background) == null ? void 0 : A.main_colors)[1]; return { background: "linear-gradient(to left bottom, rgba(".concat(E.red, ", ").concat(E.green, ", ").concat(E.blue, ", 0.7) 0%, rgba(").concat(E.red, ", ").concat(E.green, ", ").concat(E.blue, ", 1) 60%, rgba(").concat(E.red, ", ").concat(E.green, ", ").concat(E.blue, ", 1) ) 100%, url(\"").concat((e = this.background) == null ? void 0 : e.img_url, "\") left top / 100% auto no-repeat") }; } else return { background: "url(\"".concat((i = this.background) == null ? void 0 : i.img_url, "\") left top / 100% auto no-repeat") }; } else return { background: "rgba(".concat(d$2.red, ", ").concat(d$2.green, ", ").concat(d$2.blue, ", 1)") }; }, curatedStyle: function curatedStyle() { var B = this.bgColor; return { width: "".concat(this.productWidth, "px"), height: "".concat(this.productHeight, "px"), backgroundImage: "linear-gradient(to top, rgba(".concat(B.red, ", ").concat(B.green, ", ").concat(B.blue, ", 0.7) 0%, rgba(").concat(B.red, ", ").concat(B.green, ", ").concat(B.blue, ", 1) 100%)") }; }, hasBgColor: function hasBgColor() { var B, A, e; return !!((B = this.background) != null && B.main_colors && (A = this.background) != null && A.main_colors[0] && _typeof$2((e = this.background) == null ? void 0 : e.main_colors[0].red) :not(:first-child){margin-left:4px}.wx_card_root .card_wrap .card_body_warp_banner .banner_card{display:flex;width:100%}.wx_card_root .card_wrap .card_body_warp_banner .banner_card .banner{position:relative;height:100%}.wx_card_root .card_wrap .card_body_warp_banner .banner_card .banner .banner_image_wrap{position:relative}.wx_card_root .card_wrap .card_body_warp_banner .banner_card .banner .banner_image_wrap .banner_image{width:100%;border-radius:4px 4px 0 0;background-size:cover;background-position:center;-o-object-fit:cover;object-fit:cover}.wx_card_root .card_wrap .card_body_warp_banner .banner_card .banner .banner_image_wrap .banner_mask{background-color:#00000008;border-radius:4px 4px 0 0;position:absolute;top:0;right:0;bottom:0;left:0;z-index:10}.wx_card_root .card_wrap .card_body_warp_banner .banner_card .banner .banner_image_wrap .banner_type{width:20px;height:20px;position:absolute;bottom:2px;right:2px;z-index:20}.wx_card_root .card_wrap .card_body_warp_banner .banner_card .banner .banner_title_wrap{position:relative;height:27px;border-radius:0 0 4px 4px;padding-left:6px}.wx_card_root .card_wrap .card_body_warp_banner .banner_card .banner .banner_title_wrap .banner_title{font-size:12px;font-family:PingFang SC;font-weight:500;line-height:16.8px;color:var(--weui-GLYPH-WHITE-3, #ffffff);padding-top:4px;padding-bottom:6px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.wx_card_root .card_wrap .card_body_warp_banner .banner_card>:not(:first-child){margin-left:6px}.wx_card_root .card_wrap .card_body_warp_banner .curated_card{display:flex;width:100%}.wx_card_root .card_wrap .card_body_warp_banner .curated_card .curated{width:100%;height:100%}.wx_card_root .card_wrap .card_body_warp_banner .curated_card .curated .curated_image_wrap{border-radius:4px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.wx_card_root .card_wrap .card_body_warp_banner .curated_card .curated .curated_image_wrap .mask-bg{border-radius:4px;position:absolute;top:3px;left:3px;right:3px;bottom:3px;background-image:url(https://res.wx.qq.com/shop/public/2025-03-10/f5d316c8-e902-44fe-80a1-5320cb32d508.png);background-size:cover}.wx_card_root .card_wrap .card_body_warp_banner .curated_card .curated .curated_image_wrap .set_cover_img{border-radius:4px;background-size:cover;background-position:center;-o-object-fit:cover;object-fit:cover}.wx_card_root .card_wrap .card_body_warp_banner .curated_card .curated .desc_wrap{display:flex;align-items:center;justify-content:start;height:20px;margin-top:4px}.wx_card_root .card_wrap .card_body_warp_banner .curated_card .curated .desc_wrap .desc{font-size:14px;font-family:PingFang SC;font-weight:400;color:var(--weui-FG-0, #000000);height:20px;line-height:20px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.wx_card_root .card_wrap .card_body_warp_banner .curated_card .curated .desc_wrap .count{font-size:12px;font-family:SF Pro Text,\"system-ui\";font-weight:500;height:20px;color:var(--weui-GLYPH-2, rgba(0, 0, 0, .3));line-height:20px;margin-left:4px}.wx_card_root .card_wrap .card_body_warp_banner .curated_card>:not(:first-child){margin-left:6px}.wx_card_root .card_wrap .card_body_warp_banner .shop_icon_wrap{width:100%;display:flex;align-items:center;justify-content:flex-start;margin-top:8px}.wx_card_root .card_wrap .card_body_warp_banner .shop_icon_wrap .shop_icon{width:14px;height:14px;margin-right:2px;background-image:url(https://res.wx.qq.com/shop/public/2025-09-19/1c1526b5-99ba-49a3-9a82-5750bb722c63.png);background-repeat:no-repeat;background-size:contain}.wx_card_root .card_wrap .card_body_warp_banner .shop_icon_wrap .shop_name{font-size:12px;font-family:PingFang SC;font-weight:400;color:var(--weui-GLYPH-2, rgba(0, 0, 0, .55));line-height:16.8px}.wx_card_root .card_wrap .shop_status_desc{color:#0000004d;height:114px;display:flex;align-items:center;justify-content:center}@media (prefers-color-scheme: dark){.wx_card_root .card_wrap{background-color:#ffffff05}.wx_card_root .card_wrap .card_body_warp_banner .shop_icon_wrap .shop_icon{background-image:url(https://res.wx.qq.com/shop/public/2025-09-19/ad530d26-e227-4123-a070-cf5939d96d03.png)}.wx_card_root .card_wrap .shop_status_desc{color:#ffffff4d}.bluepacket_wx_img_placeholder{background-color:#ffffff05}}\n", n$3 = { loaded: "data-loaded", customstyle: "data-customstyle", scrollBlur: "data-scroll-blur", wapExportToken: "data-wap-export-token", appid: "data-appid", shopEncryptKey: "data-shop_encrypt_key", is_hover: "data-is-hover", is_selected: "data-is-selected" }; function q$1(B) { var A = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; var e = o$6.call(this, n$3); return e = o$6.call(this, n$3), e.loaded = Number(e.loaded || 0), e.appid = e.appid || "", e.shopEncryptKey = e.shopEncryptKey || "", e.scrollBlur = Number(e.scrollBlur || 0), e.is_hover *= 1, e.is_selected *= 1, _objectSpread$5({ platform: B, extraInfo: A }, e); } function aA() { var B = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; H$3(Object.assign(B, { Component: X$1, styleText: B.isDev ? B.devStyleText : v, customName: "mp-common-shopprofile", watchAttr: Object.values(n$3), getProps: q$1, eventName: ["document-click", "expose", "element-click", "onFrameReady", "card-click"] })); } var o$1 = (typeof globalThis === "undefined" ? "undefined" : _typeof$2(globalThis)) = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } function ownKeys$4(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread$4(e) { for (var r = 1; r "u" || _typeof$2(window.mid) > "u" || _typeof$2(window.item_show_type) > "u") && M 2; }, products: function products() { var i, e; return (((e = (i = this.getColletionResp) == null ? void 0 : i.curated_set) == null ? void 0 : e.top_brief_products) || []).slice(0, 3); }, collectionJumpInfo: function collectionJumpInfo() { var i, e; return ((e = (i = this.getColletionResp) == null ? void 0 : i.curated_set) == null ? void 0 : e.set_jump_info_base64_str) || ""; }, collectionStatus: function collectionStatus() { return 1; }, isCollectionStatusNormal: function isCollectionStatusNormal() { return this.collectionStatus === ne.NORMAL; }, statusDesc: function statusDesc() { return "合集异常"; }, isDel: function isDel() { var i, e; return ((e = (i = this.getColletionResp) == null ? void 0 : i.curated_set) == null ? void 0 : e.del_flag) === 1; }, iconStyle: function iconStyle() { if (this.isDark && this.platform === "web") return { backgroundImage: 'url("https://res.wx.qq.com/shop/public/2025-05-10/321b820e-8d8a-4083-8e0f-40b2b01fc8ef.png")' }; }, pruductStyle: function pruductStyle() { return { width: "".concat(this.productWidth, "px"), height: "".concat(this.productHeight, "px") }; } }, created: function created() { console.log("created this.shopAppid=".concat(this.shopAppid, " this.curatedSetKey=").concat(this.curatedSetKey)), this.getCollectionCard(); }, mounted: function mounted() { var _this = this; return asyncToGenerator( _regeneratorRuntime().mark(function _callee() { return _regeneratorRuntime().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: _this.extraInfo.window && _this.extraInfo.window.addEventListener("message", _this.handleMessage), _this.extraInfo.window && _this.extraInfo.window.addEventListener("click", _this.handleDocumentClick), _this.reportExpose(); case 1: case "end": return _context.stop(); } }, _callee); }))(); }, beforeDestroy: function beforeDestroy() { this.extraInfo.window && this.extraInfo.window.removeEventListener("message", this.handleMessage), this.extraInfo.window && this.extraInfo.window.removeEventListener("click", this.handleDocumentClick); }, watch: { shopAppid: { handler: function handler() { console.log("shopAppid change to", this.shopAppid), this.forceUpdateCollectionCard(); } }, curatedSetKey: { handler: function handler() { console.log("curatedSetKey change to", this.curatedSetKey), this.forceUpdateCollectionCard(); } } }, methods: { updateImagesSize: function updateImagesSize() { if (!this.products || !this.products.length || !this.$refs.products_container) return; var e = this.$refs.products_container.offsetWidth; this.productWidth = (e - 4 * 2) / 3, this.productHeight = this.productWidth; }, handleDocumentClick: function handleDocumentClick(i) { this.$refs.js_custom_element.contains(i.target) || this.$emit("document-click", i); }, formatPriceInit: function formatPriceInit(i) { return ae(i); }, initReport: function initReport() { var _this2 = this; return asyncToGenerator( _regeneratorRuntime().mark(function _callee2() { return _regeneratorRuntime().wrap(function _callee2$(_context2) { while (1) switch (_context2.prev = _context2.next) { case 0: _context2.next = 2; return W(); case 2: _context2.next = 4; return _this2.getCollectionCard(); case 4: case "end": return _context2.stop(); } }, _callee2); }))(); }, reportExpose: function reportExpose() { var _this3 = this; return asyncToGenerator( _regeneratorRuntime().mark(function _callee3() { return _regeneratorRuntime().wrap(function _callee3$(_context3) { while (1) switch (_context3.prev = _context3.next) { case 0: _context3.next = 2; return _this3.report(_.CARD, G$1.EXPOSE); case 2: _context3.next = 4; return _this3.report(_.PRODUCT, G$1.EXPOSE); case 4: case "end": return _context3.stop(); } }, _callee3); }))(); }, report: function report(i, e, t) { var _this4 = this; return asyncToGenerator( _regeneratorRuntime().mark(function _callee4() { var s, n, r, o, u, d, p, _u, _d; return _regeneratorRuntime().wrap(function _callee4$(_context4) { while (1) switch (_context4.prev = _context4.next) { case 0: if (!(_this4.platform !== "wechat")) { _context4.next = 2; break; } return _context4.abrupt("return"); case 2: _context4.next = 4; return _this4.initReport(); case 4: r = ""; i === _.CARD ? r = "collection_card" : i === _.PRODUCT && (r = "commodity_card"); o = ""; if (e === G$1.CLICK ? o = "element_click" : e === G$1.EXPOSE && (o = "element_valid_expose"), i === _.PRODUCT && e === G$1.EXPOSE) { u = _this4.products; for (d = 0; d = 3; }, reportCardtype: function reportCardtype() { return this.cardtype === R.SHOP ? 9 : 10; }, jumpInfo: function jumpInfo() { var i; return ((i = this.bulkBuyActivityCard) == null ? void 0 : i.bulk_buy_activity_jump_info_base64_str) || ""; }, iconStyle: function iconStyle() { if (this.isDark && this.platform === "web") return { backgroundImage: 'url("https://res.wx.qq.com/shop/public/2025-05-10/321b820e-8d8a-4083-8e0f-40b2b01fc8ef.png")' }; }, appid: function appid() { var i; return ((i = this.storeInfo) == null ? void 0 : i.appid) || ""; }, showActivityDecs: function showActivityDecs() { var e; return ((e = this.activityInfo) == null ? void 0 : e.status) !== T$2.End && (this.participant.length || this.activityInfoUserCountDesc); } }, created: function created() { var _this11 = this; return asyncToGenerator( _regeneratorRuntime().mark(function _callee11() { return _regeneratorRuntime().wrap(function _callee11$(_context11) { while (1) switch (_context11.prev = _context11.next) { case 0: _this11.cardtype === R.SHOP && (_this11.iframeLoading = !0), _this11.getCardData(); case 1: case "end": return _context11.stop(); } }, _callee11); }))(); }, mounted: function mounted() { var _this12 = this; return asyncToGenerator( _regeneratorRuntime().mark(function _callee13() { return _regeneratorRuntime().wrap(function _callee13$(_context13) { while (1) switch (_context13.prev = _context13.next) { case 0: _context13.next = 2; return _this12.getCardData(); case 2: R$4.on("onWindowFocusChanged", _this12.__onNativeFocusChange = function () { var _ref = asyncToGenerator( _regeneratorRuntime().mark(function _callee12(i) { return _regeneratorRuntime().wrap(function _callee12$(_context12) { while (1) switch (_context12.prev = _context12.next) { case 0: (R$3() ? !(i.hasFocus * 1) : i.hasFocus) && _this12.getCardData(!0); case 1: case "end": return _context12.stop(); } }, _callee12); })); return function (_x2) { return _ref.apply(this, arguments); }; }()); _this12.reportExpose(); case 4: case "end": return _context13.stop(); } }, _callee13); }))(); }, beforeDestroy: function beforeDestroy() { R$4.remove("onWindowFocusChanged", this.__onNativeFocusChange); } }, "beforeDestroy", function beforeDestroy() { document.removeEventListener("scroll", this.handleScroll, !0), window.removeEventListener("resize", this.handleScroll); }), "watch", {}), "methods", { formatPrice: function formatPrice(i) { return k$2(i); }, clickLink: function clickLink(i) { var _this13 = this; return asyncToGenerator( _regeneratorRuntime().mark(function _callee14() { var e; return _regeneratorRuntime().wrap(function _callee14$(_context14) { while (1) switch (_context14.prev = _context14.next) { case 0: if (!(_this13.platform === "wechat")) { _context14.next = 4; break; } _this13.jumpActivity(); _context14.next = 17; break; case 4: i.currnetTarget || i.target; _context14.prev = 5; if (_this13.qrcodeUrl) { _context14.next = 11; break; } _context14.next = 9; return _this13.bizGetBulkBuyQrcode(); case 9: e = _context14.sent; _this13.qrcodeUrl = "data:image/jpg;base64,".concat(e.qrcode_data); case 11: _context14.next = 17; break; case 13: _context14.prev = 13; _context14.t0 = _context14["catch"](5); console.error("get qrcode fail. code=".concat(_context14.t0.code, ", message=").concat(_context14.t0.message), _context14.t0); return _context14.abrupt("return"); case 17: case "end": return _context14.stop(); } }, _callee14, null, [[5, 13]]); }))(); }, updateImagesSize: function updateImagesSize() { if (!this.products || !this.products.length || !this.$refs.products_container) return; var e = this.$refs.products_container.offsetWidth; this.productWidth = (e - 4 * 2) / 3, this.productHeight = this.productWidth; }, getCardData: function getCardData() { var _arguments = arguments, _this14 = this; return asyncToGenerator( _regeneratorRuntime().mark(function _callee15() { var i, r, o, s, e, t; return _regeneratorRuntime().wrap(function _callee15$(_context15) { while (1) switch (_context15.prev = _context15.next) { case 0: i = _arguments.length > 0 && _arguments[0] !== undefined ? _arguments[0] : !1; if (_this14.encrypt_key) { _context15.next = 3; break; } return _context15.abrupt("return", Promise.reject({})); case 3: if (!i) { _context15.next = 8; break; } if (!_this14.updateShopCardPromise) { _context15.next = 6; break; } return _context15.abrupt("return", _this14.updateShopCardPromise); case 6: _context15.next = 12; break; case 8: if (!_this14.getShopCardPromise) { _context15.next = 10; break; } return _context15.abrupt("return", _this14.getShopCardPromise); case 10: if (!_this14.resp) { _context15.next = 12; break; } return _context15.abrupt("return", _this14.resp); case 12: e = _this14.bizGetBulkBuyCard(i); i ? _this14.updateShopCardPromise = e : _this14.getShopCardPromise = e; t = {}; _context15.prev = 15; _context15.next = 18; return e; case 18: t = _context15.sent; _context15.next = 24; break; case 21: _context15.prev = 21; _context15.t0 = _context15["catch"](15); return _context15.abrupt("return", (console.error(_context15.t0), Log.error("bizGetBulkBuyCard fail, update=".concat(i, ", code=").concat(t.code, ", message=").concat(t.message)), i ? _this14.updateShopCardPromise = null : ((r = window == null ? void 0 : window.weui) == null || r.toast("\u8BF7\u6C42\u5931\u8D25\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5 ".concat(t.code), { extClass: "weui-toast_text" }), _this14.getShopCardPromise = null), Promise.reject(_context15.t0))); case 24: i ? (_this14.updateShopCardPromise = null, I$5(t) ? (Log.error("bizGetBulkBuyCard fail, update=".concat(i, ", code=").concat(t.code, ", message=").concat(t.message)), console.error("bizGetBulkBuyCard fail, update=".concat(i, ", code=").concat(t.code, ", message=").concat(t.message))) : t.bulk_buy_activity_card && t.bulk_buy_activity_card.activity_info && (_this14.resp.bulk_buy_activity_card = ((s = _this14.resp) == null ? void 0 : s.bulk_buy_activity_card) || {}, _this14.resp.bulk_buy_activity_card.activity_info = t.bulk_buy_activity_card.activity_info)) : I$5(t) ? ((o = window == null ? void 0 : window.weui) == null || o.toast("\u83B7\u53D6\u6570\u636E\u9519\u8BEF ".concat(t.code), { extClass: "weui-toast_text" }), _this14.getShopCardPromise = null, Log.error("bizGetBulkBuyCard fail, update=".concat(i, ", code=").concat(t.code, ", message=").concat(t.message)), console.error("bizGetBulkBuyCard fail, update=".concat(i, ", code=").concat(t.code, ", message=").concat(t.message))) : (_this14.resp = t, setTimeout(function () { _this14.updateImagesSize(); })); case 25: case "end": return _context15.stop(); } }, _callee15, null, [[15, 21]]); }))(); }, bizGetBulkBuyCard: function bizGetBulkBuyCard() { var _arguments2 = arguments, _this15 = this; return asyncToGenerator( _regeneratorRuntime().mark(function _callee16() { var i, e, t, r, o, s, u, n; return _regeneratorRuntime().wrap(function _callee16$(_context16) { while (1) switch (_context16.prev = _context16.next) { case 0: i = _arguments2.length > 0 && _arguments2[0] !== undefined ? _arguments2[0] : !1; e = {}; _context16.prev = 2; _context16.next = 5; return N$1(); case 5: e = _context16.sent; _context16.next = 11; break; case 8: _context16.prev = 8; _context16.t0 = _context16["catch"](2); Log.error("getMPInfo fail ".concat(_context16.t0, "."), _context16.t0); case 11: t = Url.getQuery("exportkey") || ""; r = i ? 1 : 0; o = window.wap_export_token; s = "/mmec/biz_getbulkbuycard?bulk_buy_activity_key=".concat(encodeURIComponent(_this15.encrypt_key), "&query_type=").concat(r, "&cardtype=").concat(_this15.reportCardtype, "&exportkey=").concat(t); if (o ? s = "".concat(s, "&wap_export_token=").concat(o) : s = "".concat(s, "&exportkey=").concat(t), !i) { u = btoa(JSON.stringify((e == null ? void 0 : e.article_info) || {})); s = "".concat(s, "&article_info=").concat(u); } n = _this15; return _context16.abrupt("return", (_this15.requestingGetBulkBuyCardResp = !0, new Promise(function (u, d) { ajax({ type: "GET", url: s, success: function success(p) { if (typeof p == "string") try { p = JSON.parse(p); } catch (g) { return Log.error("/mmec/biz_getbulkbuycard parse res error. res=".concat(p, " err=").concat(g)), console.error("/mmec/biz_getbulkbuycard parse res error. res=".concat(p, " err=").concat(g)), d({ code: -1, message: "parse res fail, ".concat(g.message) }); } i || (n.iframeLoading = !1), n.requestingGetBulkBuyCardResp = !1, u(p); }, error: function error(p) { i || (this.iframeLoading = !1), n.requestingGetBulkBuyCardResp = !1, Log.error("getShopCard err", p), console.error("getShopCard err", p), d(p); } }); }))); case 18: case "end": return _context16.stop(); } }, _callee16, null, [[2, 8]]); }))(); }, bizGetBulkBuyQrcode: function bizGetBulkBuyQrcode() { var _this16 = this; return asyncToGenerator( _regeneratorRuntime().mark(function _callee17() { var i, e, t, r, o; return _regeneratorRuntime().wrap(function _callee17$(_context17) { while (1) switch (_context17.prev = _context17.next) { case 0: if (_this16.encrypt_key) { _context17.next = 2; break; } return _context17.abrupt("return", Promise.reject({ code: -2, message: "empty encrypt key" })); case 2: if (!(_this16.requestingGetQrcode && _this16.getQrcodePromise)) { _context17.next = 4; break; } return _context17.abrupt("return", _this16.getQrcodePromise); case 4: _this16.requestingGetQrcode = !0; _context17.next = 7; return N$1(); case 7: i = _context17.sent; e = Url.getQuery("exportkey") || ""; t = "/mmec/biz_getbulkbuyqrcode?bulk_buy_activity_key=".concat(encodeURIComponent(_this16.encrypt_key), "&cardtype=").concat(_this16.reportCardtype, "&exportkey=").concat(e); r = btoa(JSON.stringify((i == null ? void 0 : i.article_info) || {})); t = "".concat(t, "&article_info=").concat(r); o = _this16; return _context17.abrupt("return", (_this16.getQrcodePromise = new Promise(function (s, n) { ajax({ type: "GET", url: t, success: function success(u) { if (o.requestingGetQrcode = !1, typeof u == "string") try { u = JSON.parse(u); } catch (d) { return Log.error("/mmec/biz_getbulkbuyqrcode parse res error. res=".concat(u, " err=").concat(d)), console.error("/mmec/biz_getbulkbuyqrcode parse res error. res=".concat(u, " err=").concat(d)), n({ code: -1, message: "parse res fail, ".concat(d.message) }); } s(u); }, error: function error(u) { o.requestingGetQrcode = !1, Log.error("getShopCard err", u), console.error("getShopCard err", u), n(u); } }); }), _this16.getQrcodePromise)); case 14: case "end": return _context17.stop(); } }, _callee17); }))(); }, initReport: function initReport() { var _this17 = this; return asyncToGenerator( _regeneratorRuntime().mark(function _callee18() { return _regeneratorRuntime().wrap(function _callee18$(_context18) { while (1) switch (_context18.prev = _context18.next) { case 0: _context18.next = 2; return N$1(); case 2: _context18.next = 4; return _this17.getCardData(); case 4: case "end": return _context18.stop(); } }, _callee18); }))(); }, reportExpose: function reportExpose() { var _this18 = this; return asyncToGenerator( _regeneratorRuntime().mark(function _callee19() { return _regeneratorRuntime().wrap(function _callee19$(_context19) { while (1) switch (_context19.prev = _context19.next) { case 0: _context19.next = 2; return _this18.report(x.CARD, C$2.EXPOSE); case 2: _context19.t0 = _this18.cardtype === R.SHOP; if (!_context19.t0) { _context19.next = 6; break; } _context19.next = 6; return _this18.report(x.PRODUCT, C$2.EXPOSE); case 6: case "end": return _context19.stop(); } }, _callee19); }))(); }, report: function report(i, e, t) { var _this19 = this; return asyncToGenerator( _regeneratorRuntime().mark(function _callee20() { var n, u, r, o, s, d, p, g, _d2, _p; return _regeneratorRuntime().wrap(function _callee20$(_context20) { while (1) switch (_context20.prev = _context20.next) { case 0: if (!(_this19.platform !== "wechat")) { _context20.next = 2; break; } return _context20.abrupt("return"); case 2: _context20.next = 4; return _this19.initReport(); case 4: _context20.next = 6; return N$1(); case 6: r = _context20.sent; o = ""; _this19.cardtype === R.SHOP ? i === x.CARD ? o = "bulkbuy_card" : i === x.PRODUCT && (o = "commodity_card") : _this19.cardtype === R.LINK && (o = "bulkbuy_link"); s = ""; if (e === C$2.CLICK ? s = "element_click" : e === C$2.EXPOSE && (s = "element_valid_expose"), i === x.PRODUCT && e === C$2.EXPOSE) { d = _this19.products; for (p = 0; p i.height ? "center" : "flex-start" }; }, getImageWrapperStyle: function getImageWrapperStyle(i) { var e = { position: "relative", display: "inline-block" }; if (i.width && i.height) { var t = this.width, r = this.height, o = i.width / i.height, s = t / r; o >= s ? (e.width = "100%", e.height = "".concat(t / o, "px"), i.computedHeight = t / o) : (e.width = "".concat(r * o, "px"), e.height = "100%", i.computedWidth = r * o); } else e.maxWidth = "100%", e.maxHeight = "100%"; return e; }, getImageStyle: function getImageStyle(i) { var e = { width: "100%", height: "100%", objectFit: "contain", display: "block" }; return this.pictureClass && (e["class"] = this.pictureClass), e; }, getLabelStyle: function getLabelStyle(i, e) { var o = i.labelName ? i.labelName.length : 0, s = 8, n = 7, u = 4, d = 4, p = 12, g = e.computedWidth || this.width, S = s + d + o * p + d + n + u * 2, A = Math.min(S, g - 12 * 2); var D, y, E, b; if (i.x !== void 0) { var a = i.x, c = a / 100 * g; c g - 12 ? E = "12px" : D = "".concat(a, "%"); } else if (i.right !== void 0) { var _a = i.right; _a / 100 * g this.height - 12 ? b = "12px" : y = "".concat(_a2, "%"); } else if (i.bottom !== void 0) { var _a3 = i.bottom; _a3 / 100 * this.height t ? this.catchMove = !1 : this.catchMove = !0; } if (this.catchMove) { i.preventDefault(); var _t = e.clientX - this.startClientX; this.currentClientX = -(this.innerCurrentIndex * this.width) + _t, this.direction = this.currentClientX 50 && (this.direction === "right" ? t = Math.max(this.innerCurrentIndex - 1, 0) : this.direction === "left" && (t = Math.min(this.innerCurrentIndex + 1, this.swiperList.length - 1)), t !== -1 && this.innerCurrentIndex !== t && (this.innerCurrentIndex = t, this.$emit("change", { index: t, data: this.swiperList[t] }), this.$emit("update:currentIndex", t), this.$emit("current-index-change", t))), this.setIndexPosition(); }, setIndexPosition: function setIndexPosition() { var _this21 = this; this.isTransitioning = !0, this.$refs.swiperWrapper.style.transform = "translateX(-".concat(this.innerCurrentIndex * this.width, "px)"), setTimeout(function () { _this21.isTransitioning = !1; }, 450); }, handleImageLoad: function handleImageLoad(i, e) {}, handleLabelClick: function handleLabelClick(i, e, t) { this.$emit("tagClick", { labelPage: i.labelPage, productId: i.productId, pairingId: e.pairingId }); }, checkBottomPosition: function checkBottomPosition() {} } }; var Ge = function Ge() { var e = this, t = e._self._c; return e.width ? t("div", { staticClass: "swiper-out" }, [t("div", { ref: "swiperWrapper", staticClass: "swiper-wrapper", style: e.wrapperStyle, on: { touchstart: e.handleTouchStart, touchmove: e.handleTouchMove, touchend: e.handleTouchEnd } }, e._l(e.swiperList, function (r, o) { return t("div", { key: o, staticClass: "swiper-item", style: e.getItemStyle(r, o) }, [t("div", { staticClass: "image-container" }, [t("div", { staticClass: "image-wrapper", style: e.getImageWrapperStyle(r) }, [t("img", { staticClass: "swiper-image", style: e.getImageStyle(r), attrs: { src: r.src, alt: r.alt || "" }, on: { load: function load(s) { return e.handleImageLoad(s, o); } } }), r.labelList && r.labelList.length ? t("div", { staticClass: "label-container" }, e._l(r.labelList, function (s) { return t("div", { key: s.productId, staticClass: "label-item", staticStyle: { "pointer-events": "auto", position: "absolute" }, style: e.getLabelStyle(s, r), on: { click: function click(n) { return e.handleLabelClick(s, r, o); } } }, [e._v(" " + e._s(s.labelName) + " ")]); }), 0) : e._e()])])]); }), 0), e.swiperList.length > 1 && !e.hideIndicator ? t("div", { staticClass: "swiper-indicator" }, [t("span", { staticClass: "indicator-text" }, [e._v(e._s(e.innerCurrentIndex + 1) + "/" + e._s(e.swiperList.length))])]) : e._e()]) : e._e(); }, Ae = [], xe = v$2(_e, Ge, Ae, !1, null, null, null, null); var Ce = xe.exports, Re = { name: "SwiperIndicator", props: { swiperList: { type: Array, "default": function _default() { return []; } }, currentIndex: { type: Number, "default": 0 }, hideIndicator: { type: Boolean, "default": !1 }, maxIndicatorIndex: { type: Number, "default": 0 } }, data: function data() { return { innerCurrentIndex: 0 }; }, watch: { currentIndex: { handler: function handler(i) { this.innerCurrentIndex = i; }, immediate: !0 } }, methods: { handleDotClick: function handleDotClick(i) { i !== this.currentIndex && (this.$emit("change", { index: i, data: this.swiperList[i] }), this.$emit("update:currentIndex", i)); } } }; var Be = function Be() { var e = this, t = e._self._c; return e.swiperList.length > 1 && !e.hideIndicator && e.maxIndicatorIndex === 0 ? t("div", { staticClass: "swiper-indicator-wrap-bg" }, [t("div", { staticClass: "swiper-indicator-wrap" }, e._l(e.swiperList, function (r, o) { return t("div", { key: o, staticClass: "swiper-indicator-dot", "class": { active: e.innerCurrentIndex === o }, on: { click: function click(s) { return e.handleDotClick(o); } } }); }), 0)]) : e._e(); }, Ne = [], Le = v$2(Re, Be, Ne, !1, null, null, null, null); var De = Le.exports, O$2 = { title: "国风搭配测试测测", shopInfo: { shopName: "麦当劳", path: "/main/pages/shop/shop?&realappid=wx2b255582a7b4bfd0&shopId=10000000089216", appid: "wx2b255582a7b4bfd0", shopTag: "https://res.wx.qq.com/shop/public/2024-09-26/eb336270-6883-4391-8e4c-4c26230baa2e.svg" }, shopName: "麦当劳", shopAppid: "wx2b255582a7b4bfd0", shopIcon: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SZ/reserved/67aac669000122322aba0bcd0e745415000000a100004f50?imageView2/1/w/583/h/583/format/webp|imageMogr2/auto-orient/strip/ignore-error/1", headSwiper: [{ index: 0, src: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SZ/reserved/67778ec700022d7518cc772027908e0b000000a100004f50", width: 800, height: 800, pairingId: "4066145054106112", labelList: [{ x: "96", y: "32", productId: "10000151274966", productShortName: "休闲裤", productAppid: "wx2b255582a7b4bfd0", labelPage: { appid: "wx2b255582a7b4bfd0", path: "/main/pages/productDetail/productDetail?&realappid=wx2b255582a7b4bfd0&productId=10000151274966" }, labelName: "休闲裤", productName: "限购-开发自动化测试专用-勿动!!!", productImgUrl: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SH/reserved/6639fef400081a7f009acd91cf86bc1e000000a100004f50", productPrice: "100000" }, { x: "30", y: "54", productId: "10000128560001", productShortName: "宠物配饰", productAppid: "wx2b255582a7b4bfd0", labelPage: { appid: "wx2b255582a7b4bfd0", path: "/main/pages/productDetail/productDetail?&realappid=wx2b255582a7b4bfd0&productId=10000128560001" }, labelName: "宠物配饰", productName: "狗狗的漂亮衣服-多个限时抢购", productImgUrl: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SZ/reserved/6641cdc800086320026f8b1d27908e0b000000a000004f50", productPrice: "10" }, { x: "18", y: "20", productId: "10000072904047", productShortName: "羽绒服", productAppid: "wx2b255582a7b4bfd0", labelPage: { appid: "wx2b255582a7b4bfd0", path: "/main/pages/productDetail/productDetail?&realappid=wx2b255582a7b4bfd0&productId=10000072904047" }, labelName: "羽绒服", productName: "(搭配购)预售测试款女外套冬款黑色M", productImgUrl: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SZ/reserved/65376f0c0005f86c0be3041984f90115000000a000004f50", productPrice: "19900" }, { x: "48", y: "22", productId: "10000163612743", productShortName: "休闲裤", productAppid: "wx2b255582a7b4bfd0", labelPage: { appid: "wx2b255582a7b4bfd0", path: "/main/pages/productDetail/productDetail?&realappid=wx2b255582a7b4bfd0&productId=10000163612743" }, labelName: "休闲裤", productName: "(搭配购)韩版牛仔裤修身版型好大码将军同款", productImgUrl: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SZ/reserved/672c793c000cdecf2d7b0f2995918e0b000000a000004f50", productPrice: "15000" }], type: "pairingImg", showLabel: !0, showHeight: 520 }, { index: 1, src: "https://wst.wxapp.tc.qq.com/161/20304/snscosdownload/SZ/reserved/68a317e100049bee200d67fd6f7c4315000000a100004f50", width: 800, height: 600, pairingId: "4066145054106112", labelList: [{ x: "51", y: "40", productId: "10000151274966", productShortName: "休闲裤", productAppid: "wx2b255582a7b4bfd0", labelPage: { appid: "wx2b255582a7b4bfd0", path: "/main/pages/productDetail/productDetail?&realappid=wx2b255582a7b4bfd0&productId=10000151274966" }, labelName: "休闲裤", productName: "限购-开发自动化测试专用-勿动!!!", productImgUrl: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SH/reserved/6639fef400081a7f009acd91cf86bc1e000000a100004f50", productPrice: "100000" }, { x: "56", y: "74", productId: "10000128560001", productShortName: "宠物配饰", productAppid: "wx2b255582a7b4bfd0", labelPage: { appid: "wx2b255582a7b4bfd0", path: "/main/pages/productDetail/productDetail?&realappid=wx2b255582a7b4bfd0&productId=10000128560001" }, labelName: "宠物配饰", productName: "狗狗的漂亮衣服-多个限时抢购", productImgUrl: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SZ/reserved/6641cdc800086320026f8b1d27908e0b000000a000004f50", productPrice: "10" }, { x: "25", y: "64", productId: "10000072904047", productShortName: "羽绒服", productAppid: "wx2b255582a7b4bfd0", labelPage: { appid: "wx2b255582a7b4bfd0", path: "/main/pages/productDetail/productDetail?&realappid=wx2b255582a7b4bfd0&productId=10000072904047" }, labelName: "羽绒服", productName: "(搭配购)预售测试款女外套冬款黑色M", productImgUrl: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SZ/reserved/65376f0c0005f86c0be3041984f90115000000a000004f50", productPrice: "19900" }, { x: "77", y: "54", productId: "10000163612743", productShortName: "休闲裤", productAppid: "wx2b255582a7b4bfd0", labelPage: { appid: "wx2b255582a7b4bfd0", path: "/main/pages/productDetail/productDetail?&realappid=wx2b255582a7b4bfd0&productId=10000163612743" }, labelName: "休闲裤", productName: "(搭配购)韩版牛仔裤修身版型好大码将军同款", productImgUrl: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SZ/reserved/672c793c000cdecf2d7b0f2995918e0b000000a000004f50", productPrice: "15000" }, { x: "64", y: "8", productId: "10000000089216", productShortName: "家居服套装", productAppid: "wx2b255582a7b4bfd0", labelPage: { appid: "wx2b255582a7b4bfd0", path: "/main/pages/productDetail/productDetail?&realappid=wx2b255582a7b4bfd0&productId=10000000089216" }, labelName: "家居服套装", productName: "(搭配购)2025款冬季男女保暖睡衣", productImgUrl: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SZ/reserved/6426b72e000aa70a28f4d1d805618809000000a000004f50", productPrice: "1" }], type: "pairingImg", showLabel: !0, showHeight: 520 }, { index: 2, src: "https://wst.wxapp.tc.qq.com/161/20304/snscosdownload/SZ/reserved/688c891d000674562b1663a705a3ae1e000000a100004f50", width: 900, height: 1100, pairingId: "4066145054106112", labelList: [{ x: "29", y: "66", productId: "10000151274966", productShortName: "休闲裤", productAppid: "wx2b255582a7b4bfd0", labelPage: { appid: "wx2b255582a7b4bfd0", path: "/main/pages/productDetail/productDetail?&realappid=wx2b255582a7b4bfd0&productId=10000151274966" }, labelName: "休闲裤", productName: "限购-开发自动化测试专用-勿动!!!", productImgUrl: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SH/reserved/6639fef400081a7f009acd91cf86bc1e000000a100004f50", productPrice: "100000" }, { x: "34", y: "58", productId: "10000128560001", productShortName: "宠物配饰", productAppid: "wx2b255582a7b4bfd0", labelPage: { appid: "wx2b255582a7b4bfd0", path: "/main/pages/productDetail/productDetail?&realappid=wx2b255582a7b4bfd0&productId=10000128560001" }, labelName: "宠物配饰", productName: "狗狗的漂亮衣服-多个限时抢购", productImgUrl: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SZ/reserved/6641cdc800086320026f8b1d27908e0b000000a000004f50", productPrice: "10" }, { x: "8", y: "32", productId: "10000072904047", productShortName: "羽绒服", productAppid: "wx2b255582a7b4bfd0", labelPage: { appid: "wx2b255582a7b4bfd0", path: "/main/pages/productDetail/productDetail?&realappid=wx2b255582a7b4bfd0&productId=10000072904047" }, labelName: "羽绒服", productName: "(搭配购)预售测试款女外套冬款黑色M", productImgUrl: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SZ/reserved/65376f0c0005f86c0be3041984f90115000000a000004f50", productPrice: "19900" }, { x: "52", y: "32", productId: "10000163612743", productShortName: "休闲裤", productAppid: "wx2b255582a7b4bfd0", labelPage: { appid: "wx2b255582a7b4bfd0", path: "/main/pages/productDetail/productDetail?&realappid=wx2b255582a7b4bfd0&productId=10000163612743" }, labelName: "休闲裤", productName: "(搭配购)韩版牛仔裤修身版型好大码将军同款", productImgUrl: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SZ/reserved/672c793c000cdecf2d7b0f2995918e0b000000a000004f50", productPrice: "15000" }, { x: "71", y: "54", productId: "10000000089216", productShortName: "家居服套装", productAppid: "wx2b255582a7b4bfd0", labelPage: { appid: "wx2b255582a7b4bfd0", path: "/main/pages/productDetail/productDetail?&realappid=wx2b255582a7b4bfd0&productId=10000000089216" }, labelName: "家居服套装", productName: "(搭配购)2025款冬季男女保暖睡衣", productImgUrl: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SZ/reserved/6426b72e000aa70a28f4d1d805618809000000a000004f50", productPrice: "1" }], type: "pairingImg", showLabel: !0, showHeight: 520 }, { index: 3, src: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SZ/reserved/67778ec700022d7518cc772027908e0b000000a100004f50", width: 800, height: 800, pairingId: "4066145054106112", labelList: [{ x: "66", y: "32", productId: "10000151274966", productShortName: "休闲裤", productAppid: "wx2b255582a7b4bfd0", labelPage: { appid: "wx2b255582a7b4bfd0", path: "/main/pages/productDetail/productDetail?&realappid=wx2b255582a7b4bfd0&productId=10000151274966" }, labelName: "休闲裤", productName: "限购-开发自动化测试专用-勿动!!!", productImgUrl: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SH/reserved/6639fef400081a7f009acd91cf86bc1e000000a100004f50", productPrice: "100000" }, { x: "30", y: "54", productId: "10000128560001", productShortName: "宠物配饰", productAppid: "wx2b255582a7b4bfd0", labelPage: { appid: "wx2b255582a7b4bfd0", path: "/main/pages/productDetail/productDetail?&realappid=wx2b255582a7b4bfd0&productId=10000128560001" }, labelName: "宠物配饰", productName: "狗狗的漂亮衣服-多个限时抢购", productImgUrl: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SZ/reserved/6641cdc800086320026f8b1d27908e0b000000a000004f50", productPrice: "10" }, { x: "18", y: "20", productId: "10000072904047", productShortName: "羽绒服", productAppid: "wx2b255582a7b4bfd0", labelPage: { appid: "wx2b255582a7b4bfd0", path: "/main/pages/productDetail/productDetail?&realappid=wx2b255582a7b4bfd0&productId=10000072904047" }, labelName: "羽绒服", productName: "(搭配购)预售测试款女外套冬款黑色M", productImgUrl: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SZ/reserved/65376f0c0005f86c0be3041984f90115000000a000004f50", productPrice: "19900" }, { x: "48", y: "22", productId: "10000163612743", productShortName: "休闲裤", productAppid: "wx2b255582a7b4bfd0", labelPage: { appid: "wx2b255582a7b4bfd0", path: "/main/pages/productDetail/productDetail?&realappid=wx2b255582a7b4bfd0&productId=10000163612743" }, labelName: "休闲裤", productName: "(搭配购)韩版牛仔裤修身版型好大码将军同款", productImgUrl: "https://store.mp.video.tencent-cloud.com/161/20304/snscosdownload/SZ/reserved/672c793c000cdecf2d7b0f2995918e0b000000a000004f50", productPrice: "15000" }], type: "pairingImg", showLabel: !0, showHeight: 520 }], pairingCreator: { pairingCreatorName: "罗意威LOEWE", pairingCreatorTag: "https://res.wx.qq.com/shop/public/2024-09-26/eb336270-6883-4391-8e4c-4c26230baa2e.svg" } }, q = 13; var w$1; var ye = { components: { SwiperProduct: Ce, SwiperIndicator: De }, mixins: [k$1], props: { shopAppid: { type: String, "default": "" }, pairingId: { type: String, "default": "" }, talentAppid: { type: String, "default": "" }, isMock: { type: Number, "default": 0 } }, data: function data() { return { getPairingResp: null, requestinggetPairing: !1, _supportOpenEcs: void 0, forceUpdate: !1, iframeLoading: !0, isDark: window.matchMedia && window.matchMedia("(prefers-color-scheme: dark)").matches, getPairingPromise: null, containerWidth: 350, swiperHeight: 350, currentSwiperIndex: 0, pairingData: { pairingCreator: { pairingCreatorName: "", pairingCreatorTag: "", pairingCreatorTagDark: "" } } }; }, computed: { cardStyle: function cardStyle() { var i = {}; return this.platform === "web" ? (i.width = "350px", this.isDark && (i.background = "rgba(0, 0, 0, 0.02)")) : i.width = "100%", i; }, containerStyle: function containerStyle() { var i = { background: "rgba(255, 255, 255, 0.03)" }; return this.isDark && (i.background = "rgba(0, 0, 0, 0.03)"), i; }, placeholderStyle: function placeholderStyle() { var i = { height: "108px" }; return this.platform === "web" ? i.width = "350px" : i.width = "100%", i; }, pairingCreatorTag: function pairingCreatorTag() { return this.isDark ? this.pairingData.pairingCreator.pairingCreatorTagDark : this.pairingData.pairingCreator.pairingCreatorTag; } }, created: function created() { var _this22 = this; console.log("created this.shopAppid=".concat(this.shopAppid, " this.talentAppid=").concat(this.talentAppid)), this.getPairingCard(), window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change", function (i) { _this22.isDark = i.matches; }); }, mounted: function mounted() { var _this23 = this; return asyncToGenerator( _regeneratorRuntime().mark(function _callee22() { return _regeneratorRuntime().wrap(function _callee22$(_context22) { while (1) switch (_context22.prev = _context22.next) { case 0: _this23.extraInfo.window && _this23.extraInfo.window.addEventListener("message", _this23.handleMessage), _this23.extraInfo.window && _this23.extraInfo.window.addEventListener("click", _this23.handleDocumentClick); case 1: case "end": return _context22.stop(); } }, _callee22); }))(); }, beforeDestroy: function beforeDestroy() { this.extraInfo.window && this.extraInfo.window.removeEventListener("message", this.handleMessage), this.extraInfo.window && this.extraInfo.window.removeEventListener("click", this.handleDocumentClick); }, watch: { shopAppid: { handler: function handler() { console.log("shopAppid change to", this.shopAppid), this.forceUpdatePairingCard(); } }, talentAppid: { handler: function handler() { console.log("talentAppid change to", this.talentAppid), this.forceUpdatePairingCard(); } } }, methods: { handleDocumentClick: function handleDocumentClick(i) { this.$refs.js_custom_element.contains(i.target) || this.$emit("document-click", i); }, forceUpdatePairingCard: function forceUpdatePairingCard() { var _this24 = this; return asyncToGenerator( _regeneratorRuntime().mark(function _callee23() { return _regeneratorRuntime().wrap(function _callee23$(_context23) { while (1) switch (_context23.prev = _context23.next) { case 0: _this24.forceUpdate = !0; _context23.prev = 1; _context23.next = 4; return _this24.getPairingCard(); case 4: _context23.next = 9; break; case 6: _context23.prev = 6; _context23.t0 = _context23["catch"](1); console.error(_context23.t0); case 9: _this24.forceUpdate = !1; case 10: case "end": return _context23.stop(); } }, _callee23, null, [[1, 6]]); }))(); }, getPairingCard: function getPairingCard() { var _this25 = this; return asyncToGenerator( _regeneratorRuntime().mark(function _callee24() { var i, e, o, t, r; return _regeneratorRuntime().wrap(function _callee24$(_context24) { while (1) switch (_context24.prev = _context24.next) { case 0: if (!(!_this25.shopAppid && !_this25.talentAppid)) { _context24.next = 2; break; } return _context24.abrupt("return", Promise.reject({})); case 2: if (!(_this25.requestinggetPairing && _this25.getPairingPromise)) { _context24.next = 4; break; } return _context24.abrupt("return", _this25.getPairingPromise); case 4: if (!(_this25.getPairingResp && !_this25.forceUpdate)) { _context24.next = 6; break; } return _context24.abrupt("return", _this25.getPairingResp); case 6: _this25.requestinggetPairing = !0; _context24.next = 9; return N$1(); case 9: w$1 = _context24.sent; i = (w$1 == null ? void 0 : w$1.exportkey) || Url.getQuery("exportkey") || "", e = btoa(JSON.stringify((w$1 == null ? void 0 : w$1.article_info) || {})); if (!(_this25.computedContainerWidth(), _this25.isMock)) { _context24.next = 14; break; } o = _this25; return _context24.abrupt("return", new Promise(function (s, n) { o.iframeLoading = !1, o.getPairingResp = O$2, o.pairingData = O$2, o.requestinggetPairing = !1, o.$emit("onFrameReady", { nickName: o.talentAppid }), console.log("this.iframeLoading", o.iframeLoading), console.log("containerWidth----", document.getElementById("shopparing_card_wrap")), _this25.computedSwiperHeight(O$2.headSwiper), s(O$2); })); case 14: t = _this25, r = "/mmec/biz_getproductpairinginfo?shop_appid=".concat(_this25.shopAppid, "&pairing_id=").concat(_this25.pairingId, "&talent_appid=").concat(_this25.talentAppid, "&exportkey=").concat(i, "&cardtype=").concat(q, "&article_info=").concat(e); return _context24.abrupt("return", (_this25.getPairingPromise = new Promise(function (o, s) { ajax({ type: "GET", url: r, success: function success(n) { if (console.log("/mmec/biz_getproductpairinginfo res", n), typeof n == "string") try { n = JSON.parse(n); } catch (u) { n = {}, Log.error("/mmec/biz_getproductpairinginfo parse res error. res=".concat(n, " err=").concat(u)); } t.getPairingResp = n, t.formatPairingData(n), t.requestinggetPairing = !1, t.$emit("onFrameReady", { nickName: t.talentAppid }), t.iframeLoading = !1, o(); }, error: function error(n) { t.requestinggetPairing = !1, t.iframeLoading = !1, console.error("getPairingCard err", n), s(n); } }); }), _this25.getPairingPromise)); case 16: case "end": return _context24.stop(); } }, _callee24); }))(); }, formatPairingData: function formatPairingData(i) { var _this26 = this; var e = be.camelizeKeys(i), t = {}; console.log("formatPairingData------", e), e.productList.forEach(function (o) { t[o.productId] = o; }); var r = e.imgList.map(function (o) { var s; return { src: o.imgUrl, width: o.imgWidth, height: o.imgHeight, pairingId: i.pairingId, labelList: (s = o == null ? void 0 : o.labelList) == null ? void 0 : s.map(function (n) { var u = t[n.productId] || {}; return _objectSpread$4(_objectSpread$4({}, n), u); }) }; }); return this.pairingData = { pairingCreator: { pairingCreatorName: e.pairingCreatorName, pairingCreatorTag: e.pairingCreatorTag, pairingCreatorTagDark: e.pairingCreatorTagDark }, jumpInfo: e.ecsJumpInfoBase64Str, pairingId: e.pairingId, headSwiper: r, productNum: e.productList.length, title: e.title, isOffline: e.status !== 20001 }, console.log("headSwiper", r), this.computedSwiperHeight(r), r.length > 0 && (r[0].labelList.forEach(function (o) { _this26.report("commodity_card", "element_valid_expose", o.productId); }), this.report("match_buy_button", "element_valid_expose", "")), e; }, computedContainerWidth: function computedContainerWidth() { var e; var i = this.platform === "web" ? 350 : (e = this.$refs.shopparing_warp) == null ? void 0 : e.offsetWidth; this.containerWidth = i; }, computedSwiperHeight: function computedSwiperHeight(i) { var e = this.containerWidth || 350; if (!i || !i.length) return 350; var t = i[0], r = t.width, o = t.height; if (!r || !o) return 350; var s = r / o, n = 16 / 9, u = 3 / 4; var d = 0; s > n ? d = e * 9 / 16 : s 2 && _arguments3[2] !== undefined ? _arguments3[2] : ""; if (!(console.log(window, window.source, w$1, "--report"), _this32.platform !== "wechat")) { _context30.next = 3; break; } return _context30.abrupt("return"); case 3: _context30.next = 5; return _this32.initReport(); case 5: r = { logid: "23782", data: { event: e, params: JSON.stringify({ page_name: "mp_article_page", element_name: i, productid: t || "", mp_article_bizuin: w$1.article_info.mp_biz, mp_article_appmsgid: w$1.article_info.appmsgid, mp_article_item_idx: w$1.article_info.item_idx, mp_article_item_show_type: w$1.article_info.item_show_type, scene: w$1.article_info.mp_article_scene, cardtype: q, appid: _this32.shopAppid, talent_appid: _this32.talentAppid }) } }; O$5(r); case 7: case "end": return _context30.stop(); } }, _callee30); }))(); } } }; var Ie = function Ie() { var e = this, t = e._self._c; return t("div", { ref: "shopparing_warp", "class": e.isDark ? "shopparing_warp dark-mode" : "shopparing_warp", style: e.containerStyle }, [e.iframeLoading ? t("div", { staticClass: "shopparing_wx_img_placeholder", style: e.placeholderStyle }) : t("div", { ref: "shopparing_card_wrap", staticClass: "shopparing_card_wrap", style: e.cardStyle, attrs: { id: "shopparing_card_wrap" } }, [e.pairingData.isOffline ? t("div", { staticClass: "shopparing-offline-card" }, [t("span", { staticClass: "shopparing-offline-card-text" }, [e._v("该搭配已下架")])]) : [t("SwiperProduct", { ref: "swiperProduct", attrs: { width: e.containerWidth, height: e.swiperHeight, list: e.pairingData.headSwiper }, on: { tagClick: e.jumpProduct, "current-index-change": e.handleSwiperIndexChange } }), t("SwiperIndicator", { attrs: { "swiper-list": e.pairingData.headSwiper, "current-index": e.currentSwiperIndex, "hide-indicator": !1, "max-indicator-index": 0 }, on: { change: e.handleIndicatorChange, "update:current-index": e.handleIndicatorUpdate } }), t("div", { staticClass: "pairing-card-footer" }, [t("div", { staticClass: "pairing-card-footer__info" }, [t("div", { staticClass: "pairing-card-footer__info-text" }, [t("div", { staticClass: "pairing-card-footer__title" }, [e._v(e._s(e.pairingData.title))]), t("div", { staticClass: "pairing-card-footer__desc" }, [e._v("共" + e._s(e.pairingData.productNum) + "件")])]), t("button", { staticClass: "pairing-card-footer__btn", on: { click: e.jumpPairingBuy } }, [e._v("搭配买")])]), t("div", { staticClass: "pairing-card-footer__brand" }, [t("span", { staticClass: "pairing-card-footer__brand-icon" }), t("span", { staticClass: "pairing-card-footer__brand-text" }, [e._v(e._s(e.pairingData.pairingCreator.pairingCreatorName))]), e.pairingCreatorTag ? t("img", { staticClass: "pairing-card-footer__brand-rtag", attrs: { src: e.pairingCreatorTag, alt: "RIcon" } }) : e._e()])])]], 2)]); }, Fe = [], Te = v$2(ye, Ie, Fe, !1, null, null, null, null); var Oe = Te.exports; var ve = { components: { CommonShopcollection: we, CommonShopBuyTogether: Ee, CommonShopShopparing: Oe }, mixins: [k$1], props: { type: { type: [Number, String], required: !0 }, json: { type: String, required: !0 } }, computed: { data: function data() { return _objectSpread$4(_objectSpread$4({}, JSON.parse(this.json || "{}")), {}, { platform: this.platform }); }, classObject: function classObject() { var e; var i = ""; return this.type == 1 ? i = "wx_card_root_common_shopcollection" : this.type == 2 && (i = "wx_card_root_common_buytogether", ["8", "10"].includes(window.item_show_type) && ((e = this.data) == null ? void 0 : e.cardtype) === R.LINK && (i = "wx_card_root_common_buytogether wx_card_root_common_buytogether_inline")), i; } }, mounted: function mounted() { this.extraInfo.window && this.extraInfo.window.addEventListener("click", this.handleDocumentClick); }, beforeDestroy: function beforeDestroy() { this.extraInfo.window && this.extraInfo.window.removeEventListener("click", this.handleDocumentClick); }, methods: { handleDocumentClick: function handleDocumentClick(i) { this.$refs.js_custom_element.contains(i.target) || this.$emit("document-click", i); } } }; var Pe = function Pe() { var e = this, t = e._self._c; return t("div", { ref: "js_custom_element", staticClass: "wx_card_root", "class": e.classObject }, [+e.type == 1 ? t("CommonShopcollection", e._b({}, "CommonShopcollection", e.data, !1)) : e._e(), +e.type == 2 ? t("CommonShopBuyTogether", e._b({}, "CommonShopBuyTogether", e.data, !1)) : e._e(), +e.type == 3 ? t("CommonShopShopparing", e._b({}, "CommonShopShopparing", e.data, !1)) : e._e()], 1); }, ke = [], Se = v$2(ve, Pe, ke, !1, null, "6cb961c5", null, null); var Ue = Se.exports, He = ".wx_hover_card:before{content:\" \";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:8px;box-sizing:border-box;border:1px solid rgba(7,193,96,.3);pointer-events:none;z-index:9}.wx_selected_card:before{content:\" \";position:absolute;top:0;left:0;right:0;bottom:0;border-radius:8px;border:1.5px solid #07C160;box-sizing:border-box;background:rgba(7,193,96,.1);pointer-events:none;z-index:9}body,.wx-root{--weui-BG-0: #EDEDED;--weui-BG-1: #F7F7F7;--weui-BG-2: #FFFFFF;--weui-BG-3: #F7F7F7;--weui-BG-4: #4C4C4C;--weui-BG-5: #FFFFFF;--weui-BLUE-100: #10AEFF;--weui-BLUE-120: #3FBEFF;--weui-BLUE-170: #B7E6FF;--weui-BLUE-80: #0C8BCC;--weui-BLUE-90: #0E9CE6;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #5AAFE4;--weui-BLUE-BG-130: #7FC0EA;--weui-BLUE-BG-90: #4095CB;--weui-BRAND-100: #07C160;--weui-BRAND-120: #38CD7F;--weui-BRAND-170: #B4ECCE;--weui-BRAND-80: #059A4C;--weui-BRAND-90: #06AE56;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #3EB575;--weui-BRAND-BG-130: #69C694;--weui-BRAND-BG-90: #259C5C;--weui-FG-0_5: rgba(0, 0, 0, .9);--weui-GLYPH-0: rgba(0, 0, 0, .9);--weui-GLYPH-1: rgba(0, 0, 0, .55);--weui-GLYPH-2: rgba(0, 0, 0, .3);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .8);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .5);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .3);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #91D300;--weui-GREEN-120: #A7DB33;--weui-GREEN-170: #DEF1B3;--weui-GREEN-80: #74A800;--weui-GREEN-90: #82BD00;--weui-GREEN-BG-100: #96BE40;--weui-GREEN-BG-110: #A0C452;--weui-GREEN-BG-130: #B5D179;--weui-GREEN-BG-90: #86AA39;--weui-INDIGO-100: #1485EE;--weui-INDIGO-120: #439DF1;--weui-INDIGO-170: #B8DAF9;--weui-INDIGO-80: #106ABE;--weui-INDIGO-90: #1277D6;--weui-INDIGO-BG-100: #2B77BF;--weui-INDIGO-BG-110: #3F84C5;--weui-INDIGO-BG-130: #6BA0D2;--weui-INDIGO-BG-90: #266AAB;--weui-LIGHTGREEN-100: #95EC69;--weui-LIGHTGREEN-120: #AAEF87;--weui-LIGHTGREEN-170: #DEF9D1;--weui-LIGHTGREEN-80: #77BC54;--weui-LIGHTGREEN-90: #85D35E;--weui-LIGHTGREEN-BG-100: #72CF60;--weui-LIGHTGREEN-BG-110: #80D370;--weui-LIGHTGREEN-BG-130: #9CDD90;--weui-LIGHTGREEN-BG-90: #66B956;--weui-LINK-100: #576B95;--weui-LINK-120: #7888AA;--weui-LINK-170: #CCD2DE;--weui-LINK-80: #455577;--weui-LINK-90: #4E6085;--weui-LINKFINDER-100: #002666;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(245, 245, 245, .95);--weui-MATERIAL-NAVIGATIONBAR: rgba(237, 237, 237, .94);--weui-MATERIAL-REGULAR: rgba(247, 247, 247, .3);--weui-MATERIAL-THICK: rgba(247, 247, 247, .8);--weui-MATERIAL-THIN: rgba(255, 255, 255, .2);--weui-MATERIAL-TOOLBAR: rgba(246, 246, 246, .82);--weui-ORANGE-100: #FA9D3B;--weui-ORANGE-120: #FBB062;--weui-ORANGE-170: #FDE1C3;--weui-ORANGE-80: #C87D2F;--weui-ORANGE-90: #E08C34;--weui-ORANGE-BG-100: #EA7800;--weui-ORANGE-BG-110: #EC8519;--weui-ORANGE-BG-130: #F0A04D;--weui-ORANGE-BG-90: #D26B00;--weui-ORANGERED-100: #FF6146;--weui-OVERLAY: rgba(0, 0, 0, .5);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #6467F0;--weui-PURPLE-120: #8385F3;--weui-PURPLE-170: #D0D1FA;--weui-PURPLE-80: #5052C0;--weui-PURPLE-90: #595CD7;--weui-PURPLE-BG-100: #6769BA;--weui-PURPLE-BG-110: #7678C1;--weui-PURPLE-BG-130: #9496CE;--weui-PURPLE-BG-90: #5C5EA7;--weui-RED-100: #FA5151;--weui-RED-120: #FB7373;--weui-RED-170: #FDCACA;--weui-RED-80: #C84040;--weui-RED-90: #E14949;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #D3625A;--weui-RED-BG-130: #DD847E;--weui-RED-BG-90: #B94840;--weui-SECONDARY-BG: rgba(0, 0, 0, .05);--weui-SEPARATOR-0: rgba(0, 0, 0, .1);--weui-SEPARATOR-1: rgba(0, 0, 0, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(0, 0, 0, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(0, 0, 0, .2);--weui-YELLOW-100: #FFC300;--weui-YELLOW-120: #FFCF33;--weui-YELLOW-170: #FFECB2;--weui-YELLOW-80: #CC9C00;--weui-YELLOW-90: #E6AF00;--weui-YELLOW-BG-100: #EFB600;--weui-YELLOW-BG-110: #F0BD19;--weui-YELLOW-BG-130: #F3CC4D;--weui-YELLOW-BG-90: #D7A400;--weui-RED: #FA5151;--weui-ORANGERED: #FF6146;--weui-ORANGE: #FA9D3B;--weui-YELLOW: #FFC300;--weui-GREEN: #91D300;--weui-LIGHTGREEN: #95EC69;--weui-TEXTGREEN: #06AE56;--weui-BRAND: #07C160;--weui-BLUE: #10AEFF;--weui-INDIGO: #1485EE;--weui-PURPLE: #6467F0;--weui-LINK: #576B95;--weui-TAG-TEXT-ORANGE: #FA9D3B;--weui-TAG-TEXT-GREEN: #06AE56;--weui-TAG-TEXT-BLUE: #10AEFF;--weui-REDORANGE: #FF6146;--weui-WHITE: #FFFFFF;--weui-BG: #FFFFFF;--weui-BG-0: #ededed;--weui-BG-1: #f7f7f7;--weui-BG-2: #fff;--weui-BG-3: #f7f7f7;--weui-BG-4: #4c4c4c;--weui-BG-5: #fff;--weui-FG-0: rgba(0, 0, 0, .9);--weui-FG-HALF: rgba(0, 0, 0, .9);--weui-FG-1: rgba(0, 0, 0, .55);--weui-FG-2: rgba(0, 0, 0, .3);--weui-FG-3: rgba(0, 0, 0, .1);--weui-FG-4: rgba(0, 0, 0, .15);--weui-FG-5: rgba(0, 0, 0, .05);--weui-RED: #fa5151;--weui-ORANGERED: #ff6146;--weui-ORANGE: #fa9d3b;--weui-YELLOW: #ffc300;--weui-GREEN: #91d300;--weui-LIGHTGREEN: #95ec69;--weui-BRAND: #07c160;--weui-BLUE: #10aeff;--weui-INDIGO: #1485ee;--weui-PURPLE: #6467f0;--weui-WHITE: #fff;--weui-LINK: #576b95;--weui-TEXTGREEN: #06ae56;--weui-FG: #000;--weui-BG: #fff;--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-TEXT-ORANGE: #fa9d3b;--weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, .1);--weui-TAG-TEXT-GREEN: #06ae56;--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-BLUE: #10aeff;--weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, .1);--weui-TAG-TEXT-BLACK: rgba(0, 0, 0, .5);--weui-TAG-BACKGROUND-BLACK: rgba(0, 0, 0, .05);--weui-REDORANGE: #ff6146}@media (prefers-color-scheme: dark){.wx-root:not([data-weui-theme=light]),body:not([data-weui-theme=light]){--weui-BG-0: #111111;--weui-BG-1: #1E1E1E;--weui-BG-5: #2C2C2C;--weui-BLUE-100: #10AEFF;--weui-BLUE-120: #0C8BCC;--weui-BLUE-170: #04344D;--weui-BLUE-80: #3FBEFF;--weui-BLUE-90: #28B6FF;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #4095CB;--weui-BLUE-BG-130: #32749E;--weui-BLUE-BG-90: #5AAFE4;--weui-BRAND-100: #07C160;--weui-BRAND-120: #059A4C;--weui-BRAND-170: #023A1C;--weui-BRAND-80: #38CD7F;--weui-BRAND-90: #20C770;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #259C5C;--weui-BRAND-BG-130: #1D7A48;--weui-BRAND-BG-90: #3EB575;--weui-FG-0_5: rgba(255, 255, 255, .6);--weui-GLYPH-0: rgba(255, 255, 255, .8);--weui-GLYPH-1: rgba(255, 255, 255, .5);--weui-GLYPH-2: rgba(255, 255, 255, .3);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .8);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .5);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .3);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #74A800;--weui-GREEN-120: #5C8600;--weui-GREEN-170: #233200;--weui-GREEN-80: #8FB933;--weui-GREEN-90: #82B01A;--weui-GREEN-BG-100: #789833;--weui-GREEN-BG-110: #6B882D;--weui-GREEN-BG-130: #65802B;--weui-GREEN-BG-90: #85A247;--weui-INDIGO-100: #1196FF;--weui-INDIGO-120: #0D78CC;--weui-INDIGO-170: #052D4D;--weui-INDIGO-80: #40ABFF;--weui-INDIGO-90: #28A0FF;--weui-INDIGO-BG-100: #0D78CC;--weui-INDIGO-BG-110: #0B6BB7;--weui-INDIGO-BG-130: #09548F;--weui-INDIGO-BG-90: #2585D1;--weui-LIGHTGREEN-100: #3EB575;--weui-LIGHTGREEN-120: #31905D;--weui-LIGHTGREEN-170: #123522;--weui-LIGHTGREEN-80: #64C390;--weui-LIGHTGREEN-90: #51BC83;--weui-LIGHTGREEN-BG-100: #31905D;--weui-LIGHTGREEN-BG-110: #2C8153;--weui-LIGHTGREEN-BG-130: #226541;--weui-LIGHTGREEN-BG-90: #31905D;--weui-LINK-100: #7D90A9;--weui-LINK-120: #647387;--weui-LINK-170: #252A32;--weui-LINK-80: #97A6BA;--weui-LINK-90: #899AB1;--weui-LINKFINDER-100: #DEE9FF;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(32, 32, 32, .93);--weui-MATERIAL-NAVIGATIONBAR: rgba(18, 18, 18, .9);--weui-MATERIAL-REGULAR: rgba(37, 37, 37, .6);--weui-MATERIAL-THICK: rgba(34, 34, 34, .9);--weui-MATERIAL-THIN: rgba(95, 95, 95, .4);--weui-MATERIAL-TOOLBAR: rgba(35, 35, 35, .93);--weui-ORANGE-100: #C87D2F;--weui-ORANGE-120: #A06425;--weui-ORANGE-170: #3B250E;--weui-ORANGE-80: #D39758;--weui-ORANGE-90: #CD8943;--weui-ORANGE-BG-100: #BB6000;--weui-ORANGE-BG-110: #A85600;--weui-ORANGE-BG-130: #824300;--weui-ORANGE-BG-90: #C1701A;--weui-ORANGERED-100: #FF6146;--weui-OVERLAY: rgba(0, 0, 0, .8);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #8183FF;--weui-PURPLE-120: #6768CC;--weui-PURPLE-170: #26274C;--weui-PURPLE-80: #9A9BFF;--weui-PURPLE-90: #8D8FFF;--weui-PURPLE-BG-100: #6768CC;--weui-PURPLE-BG-110: #5C5DB7;--weui-PURPLE-BG-130: #48498F;--weui-PURPLE-BG-90: #7677D1;--weui-RED-100: #FA5151;--weui-RED-120: #C84040;--weui-RED-170: #4B1818;--weui-RED-80: #FB7373;--weui-RED-90: #FA6262;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #BA4940;--weui-RED-BG-130: #913832;--weui-RED-BG-90: #D3625A;--weui-SECONDARY-BG: rgba(255, 255, 255, .1);--weui-SEPARATOR-0: rgba(255, 255, 255, .05);--weui-SEPARATOR-1: rgba(255, 255, 255, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(255, 255, 255, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(255, 255, 255, .2);--weui-YELLOW-100: #CC9C00;--weui-YELLOW-120: #A37C00;--weui-YELLOW-170: #3D2F00;--weui-YELLOW-80: #D6AF33;--weui-YELLOW-90: #D1A519;--weui-YELLOW-BG-100: #BF9100;--weui-YELLOW-BG-110: #AB8200;--weui-YELLOW-BG-130: #866500;--weui-YELLOW-BG-90: #C59C1A;--weui-RED: #FA5151;--weui-ORANGERED: #FF6146;--weui-ORANGE: #C87D2F;--weui-YELLOW: #CC9C00;--weui-GREEN: #74A800;--weui-LIGHTGREEN: #3EB575;--weui-TEXTGREEN: #259C5C;--weui-BRAND: #07C160;--weui-BLUE: #10AEFF;--weui-INDIGO: #1196FF;--weui-PURPLE: #8183FF;--weui-LINK: #7D90A9;--weui-REDORANGE: #FF6146;--weui-BG-0: #111;--weui-BG-1: #1e1e1e;--weui-BG-2: #191919;--weui-BG-3: #202020;--weui-BG-4: #404040;--weui-BG-5: #2c2c2c;--weui-FG-0: rgba(255, 255, 255, .8);--weui-FG-HALF: rgba(255, 255, 255, .6);--weui-FG-1: rgba(255, 255, 255, .5);--weui-FG-2: rgba(255, 255, 255, .3);--weui-FG-3: rgba(255, 255, 255, .1);--weui-FG-4: rgba(255, 255, 255, .15);--weui-FG-5: rgba(255, 255, 255, .1);--weui-RED: #fa5151;--weui-ORANGERED: #ff6146;--weui-ORANGE: #c87d2f;--weui-YELLOW: #cc9c00;--weui-GREEN: #74a800;--weui-LIGHTGREEN: #3eb575;--weui-BRAND: #07c160;--weui-BLUE: #10aeff;--weui-INDIGO: #1196ff;--weui-PURPLE: #8183ff;--weui-WHITE: rgba(255, 255, 255, .8);--weui-LINK: #7d90a9;--weui-TEXTGREEN: #259c5c;--weui-FG: #fff;--weui-BG: #000;--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-TEXT-ORANGE: rgba(250, 157, 59, .6);--weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, .1);--weui-TAG-TEXT-GREEN: rgba(6, 174, 86, .6);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-BLUE: rgba(16, 174, 255, .6);--weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, .1);--weui-TAG-TEXT-BLACK: rgba(255, 255, 255, .5);--weui-TAG-BACKGROUND-BLACK: rgba(255, 255, 255, .05);--weui-REDORANGE: #ff6146}}.wx-root[data-weui-theme=dark],body[data-weui-theme=dark]{--weui-BG-0: #111111;--weui-BG-1: #1E1E1E;--weui-BG-5: #2C2C2C;--weui-BLUE-100: #10AEFF;--weui-BLUE-120: #0C8BCC;--weui-BLUE-170: #04344D;--weui-BLUE-80: #3FBEFF;--weui-BLUE-90: #28B6FF;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #4095CB;--weui-BLUE-BG-130: #32749E;--weui-BLUE-BG-90: #5AAFE4;--weui-BRAND-100: #07C160;--weui-BRAND-120: #059A4C;--weui-BRAND-170: #023A1C;--weui-BRAND-80: #38CD7F;--weui-BRAND-90: #20C770;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #259C5C;--weui-BRAND-BG-130: #1D7A48;--weui-BRAND-BG-90: #3EB575;--weui-FG-0_5: rgba(255, 255, 255, .6);--weui-GLYPH-0: rgba(255, 255, 255, .8);--weui-GLYPH-1: rgba(255, 255, 255, .5);--weui-GLYPH-2: rgba(255, 255, 255, .3);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .8);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .5);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .3);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #74A800;--weui-GREEN-120: #5C8600;--weui-GREEN-170: #233200;--weui-GREEN-80: #8FB933;--weui-GREEN-90: #82B01A;--weui-GREEN-BG-100: #789833;--weui-GREEN-BG-110: #6B882D;--weui-GREEN-BG-130: #65802B;--weui-GREEN-BG-90: #85A247;--weui-INDIGO-100: #1196FF;--weui-INDIGO-120: #0D78CC;--weui-INDIGO-170: #052D4D;--weui-INDIGO-80: #40ABFF;--weui-INDIGO-90: #28A0FF;--weui-INDIGO-BG-100: #0D78CC;--weui-INDIGO-BG-110: #0B6BB7;--weui-INDIGO-BG-130: #09548F;--weui-INDIGO-BG-90: #2585D1;--weui-LIGHTGREEN-100: #3EB575;--weui-LIGHTGREEN-120: #31905D;--weui-LIGHTGREEN-170: #123522;--weui-LIGHTGREEN-80: #64C390;--weui-LIGHTGREEN-90: #51BC83;--weui-LIGHTGREEN-BG-100: #31905D;--weui-LIGHTGREEN-BG-110: #2C8153;--weui-LIGHTGREEN-BG-130: #226541;--weui-LIGHTGREEN-BG-90: #31905D;--weui-LINK-100: #7D90A9;--weui-LINK-120: #647387;--weui-LINK-170: #252A32;--weui-LINK-80: #97A6BA;--weui-LINK-90: #899AB1;--weui-LINKFINDER-100: #DEE9FF;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(32, 32, 32, .93);--weui-MATERIAL-NAVIGATIONBAR: rgba(18, 18, 18, .9);--weui-MATERIAL-REGULAR: rgba(37, 37, 37, .6);--weui-MATERIAL-THICK: rgba(34, 34, 34, .9);--weui-MATERIAL-THIN: rgba(95, 95, 95, .4);--weui-MATERIAL-TOOLBAR: rgba(35, 35, 35, .93);--weui-ORANGE-100: #C87D2F;--weui-ORANGE-120: #A06425;--weui-ORANGE-170: #3B250E;--weui-ORANGE-80: #D39758;--weui-ORANGE-90: #CD8943;--weui-ORANGE-BG-100: #BB6000;--weui-ORANGE-BG-110: #A85600;--weui-ORANGE-BG-130: #824300;--weui-ORANGE-BG-90: #C1701A;--weui-ORANGERED-100: #FF6146;--weui-OVERLAY: rgba(0, 0, 0, .8);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #8183FF;--weui-PURPLE-120: #6768CC;--weui-PURPLE-170: #26274C;--weui-PURPLE-80: #9A9BFF;--weui-PURPLE-90: #8D8FFF;--weui-PURPLE-BG-100: #6768CC;--weui-PURPLE-BG-110: #5C5DB7;--weui-PURPLE-BG-130: #48498F;--weui-PURPLE-BG-90: #7677D1;--weui-RED-100: #FA5151;--weui-RED-120: #C84040;--weui-RED-170: #4B1818;--weui-RED-80: #FB7373;--weui-RED-90: #FA6262;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #BA4940;--weui-RED-BG-130: #913832;--weui-RED-BG-90: #D3625A;--weui-SECONDARY-BG: rgba(255, 255, 255, .1);--weui-SEPARATOR-0: rgba(255, 255, 255, .05);--weui-SEPARATOR-1: rgba(255, 255, 255, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(255, 255, 255, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(255, 255, 255, .2);--weui-YELLOW-100: #CC9C00;--weui-YELLOW-120: #A37C00;--weui-YELLOW-170: #3D2F00;--weui-YELLOW-80: #D6AF33;--weui-YELLOW-90: #D1A519;--weui-YELLOW-BG-100: #BF9100;--weui-YELLOW-BG-110: #AB8200;--weui-YELLOW-BG-130: #866500;--weui-YELLOW-BG-90: #C59C1A;--weui-RED: #FA5151;--weui-ORANGERED: #FF6146;--weui-ORANGE: #C87D2F;--weui-YELLOW: #CC9C00;--weui-GREEN: #74A800;--weui-LIGHTGREEN: #3EB575;--weui-TEXTGREEN: #259C5C;--weui-BRAND: #07C160;--weui-BLUE: #10AEFF;--weui-INDIGO: #1196FF;--weui-PURPLE: #8183FF;--weui-LINK: #7D90A9;--weui-REDORANGE: #FF6146;--weui-BG-0: #111;--weui-BG-1: #1e1e1e;--weui-BG-2: #191919;--weui-BG-3: #202020;--weui-BG-4: #404040;--weui-BG-5: #2c2c2c;--weui-FG-0: rgba(255, 255, 255, .8);--weui-FG-HALF: rgba(255, 255, 255, .6);--weui-FG-1: rgba(255, 255, 255, .5);--weui-FG-2: rgba(255, 255, 255, .3);--weui-FG-3: rgba(255, 255, 255, .1);--weui-FG-4: rgba(255, 255, 255, .15);--weui-FG-5: rgba(255, 255, 255, .1);--weui-RED: #fa5151;--weui-ORANGERED: #ff6146;--weui-ORANGE: #c87d2f;--weui-YELLOW: #cc9c00;--weui-GREEN: #74a800;--weui-LIGHTGREEN: #3eb575;--weui-BRAND: #07c160;--weui-BLUE: #10aeff;--weui-INDIGO: #1196ff;--weui-PURPLE: #8183ff;--weui-WHITE: rgba(255, 255, 255, .8);--weui-LINK: #7d90a9;--weui-TEXTGREEN: #259c5c;--weui-FG: #fff;--weui-BG: #000;--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-TEXT-ORANGE: rgba(250, 157, 59, .6);--weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, .1);--weui-TAG-TEXT-GREEN: rgba(6, 174, 86, .6);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-BLUE: rgba(16, 174, 255, .6);--weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, .1);--weui-TAG-TEXT-BLACK: rgba(255, 255, 255, .5);--weui-TAG-BACKGROUND-BLACK: rgba(255, 255, 255, .05);--weui-REDORANGE: #ff6146}.wx-root[data-weui-mode=care],body[data-weui-mode=care]{--weui-BG-0: #EDEDED;--weui-BG-1: #F7F7F7;--weui-BG-2: #FFFFFF;--weui-BG-3: #F7F7F7;--weui-BG-4: #4C4C4C;--weui-BG-5: #FFFFFF;--weui-BLUE-100: #007DBB;--weui-BLUE-120: #3FBEFF;--weui-BLUE-170: #B7E6FF;--weui-BLUE-80: #0C8BCC;--weui-BLUE-90: #0E9CE6;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #5AAFE4;--weui-BLUE-BG-130: #7FC0EA;--weui-BLUE-BG-90: #4095CB;--weui-BRAND-100: #018942;--weui-BRAND-120: #38CD7F;--weui-BRAND-170: #B4ECCE;--weui-BRAND-80: #059A4C;--weui-BRAND-90: #06AE56;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #3EB575;--weui-BRAND-BG-130: #69C694;--weui-BRAND-BG-90: #259C5C;--weui-FG-0_5: #000000;--weui-GLYPH-0: #000000;--weui-GLYPH-1: rgba(0, 0, 0, .6);--weui-GLYPH-2: rgba(0, 0, 0, .42);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .85);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .55);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .35);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #4F8400;--weui-GREEN-120: #A7DB33;--weui-GREEN-170: #DEF1B3;--weui-GREEN-80: #74A800;--weui-GREEN-90: #82BD00;--weui-GREEN-BG-100: #96BE40;--weui-GREEN-BG-110: #A0C452;--weui-GREEN-BG-130: #B5D179;--weui-GREEN-BG-90: #86AA39;--weui-INDIGO-100: #0075E2;--weui-INDIGO-120: #439DF1;--weui-INDIGO-170: #B8DAF9;--weui-INDIGO-80: #106ABE;--weui-INDIGO-90: #1277D6;--weui-INDIGO-BG-100: #2B77BF;--weui-INDIGO-BG-110: #3F84C5;--weui-INDIGO-BG-130: #6BA0D2;--weui-INDIGO-BG-90: #266AAB;--weui-LIGHTGREEN-100: #2E8800;--weui-LIGHTGREEN-120: #AAEF87;--weui-LIGHTGREEN-170: #DEF9D1;--weui-LIGHTGREEN-80: #77BC54;--weui-LIGHTGREEN-90: #85D35E;--weui-LIGHTGREEN-BG-100: #72CF60;--weui-LIGHTGREEN-BG-110: #80D370;--weui-LIGHTGREEN-BG-130: #9CDD90;--weui-LIGHTGREEN-BG-90: #66B956;--weui-LINK-100: #576B95;--weui-LINK-120: #7888AA;--weui-LINK-170: #CCD2DE;--weui-LINK-80: #455577;--weui-LINK-90: #4E6085;--weui-LINKFINDER-100: #002666;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(245, 245, 245, .95);--weui-MATERIAL-NAVIGATIONBAR: rgba(237, 237, 237, .94);--weui-MATERIAL-REGULAR: rgba(247, 247, 247, .3);--weui-MATERIAL-THICK: rgba(247, 247, 247, .8);--weui-MATERIAL-THIN: rgba(255, 255, 255, .2);--weui-MATERIAL-TOOLBAR: rgba(246, 246, 246, .82);--weui-ORANGE-100: #E17719;--weui-ORANGE-120: #FBB062;--weui-ORANGE-170: #FDE1C3;--weui-ORANGE-80: #C87D2F;--weui-ORANGE-90: #E08C34;--weui-ORANGE-BG-100: #EA7800;--weui-ORANGE-BG-110: #EC8519;--weui-ORANGE-BG-130: #F0A04D;--weui-ORANGE-BG-90: #D26B00;--weui-ORANGERED-100: #D14730;--weui-OVERLAY: rgba(0, 0, 0, .5);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #6265F1;--weui-PURPLE-120: #8385F3;--weui-PURPLE-170: #D0D1FA;--weui-PURPLE-80: #5052C0;--weui-PURPLE-90: #595CD7;--weui-PURPLE-BG-100: #6769BA;--weui-PURPLE-BG-110: #7678C1;--weui-PURPLE-BG-130: #9496CE;--weui-PURPLE-BG-90: #5C5EA7;--weui-RED-100: #DC3636;--weui-RED-120: #FB7373;--weui-RED-170: #FDCACA;--weui-RED-80: #C84040;--weui-RED-90: #E14949;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #D3625A;--weui-RED-BG-130: #DD847E;--weui-RED-BG-90: #B94840;--weui-SECONDARY-BG: rgba(0, 0, 0, .1);--weui-SEPARATOR-0: rgba(0, 0, 0, .1);--weui-SEPARATOR-1: rgba(0, 0, 0, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(0, 0, 0, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(0, 0, 0, .2);--weui-YELLOW-100: #BB8E00;--weui-YELLOW-120: #FFCF33;--weui-YELLOW-170: #FFECB2;--weui-YELLOW-80: #CC9C00;--weui-YELLOW-90: #E6AF00;--weui-YELLOW-BG-100: #EFB600;--weui-YELLOW-BG-110: #F0BD19;--weui-YELLOW-BG-130: #F3CC4D;--weui-YELLOW-BG-90: #D7A400;--weui-RED: #DC3636;--weui-ORANGERED: #D14730;--weui-ORANGE: #E17719;--weui-YELLOW: #BB8E00;--weui-GREEN: #4F8400;--weui-LIGHTGREEN: #2E8800;--weui-TEXTGREEN: #06AE56;--weui-BLUE: #007DBB;--weui-INDIGO: #0075E2;--weui-PURPLE: #6265F1;--weui-LINK: #576B95;--weui-TAG-TEXT-ORANGE: #E17719;--weui-TAG-TEXT-GREEN: #06AE56;--weui-TAG-TEXT-BLUE: #007DBB;--weui-REDORANGE: #D14730;--weui-WHITE: #FFFFFF;--weui-BG: #FFFFFF;--weui-BG-0: #ededed;--weui-BG-1: #f7f7f7;--weui-BG-2: #fff;--weui-BG-3: #f7f7f7;--weui-BG-4: #4c4c4c;--weui-BG-5: #fff;--weui-FG-0: #000000;--weui-FG-HALF: #000000;--weui-FG-1: rgba(0, 0, 0, .6);--weui-FG-2: rgba(0, 0, 0, .42);--weui-FG-3: rgba(0, 0, 0, .1);--weui-FG-4: rgba(0, 0, 0, .15);--weui-FG-5: rgba(0, 0, 0, .05);--weui-RED: #dc3636;--weui-ORANGERED: #d14730;--weui-ORANGE: #e17719;--weui-YELLOW: #bb8e00;--weui-GREEN: #4f8400;--weui-LIGHTGREEN: #2e8800;--weui-BRAND: #018942;--weui-BLUE: #007dbb;--weui-INDIGO: #0075e2;--weui-PURPLE: #6265f1;--weui-WHITE: #fff;--weui-LINK: #576b95;--weui-TEXTGREEN: #06ae56;--weui-FG: #000;--weui-BG: #fff;--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-TEXT-ORANGE: #e17719;--weui-TAG-BACKGROUND-ORANGE: rgba(225, 119, 25, .1);--weui-TAG-TEXT-GREEN: #06ae56;--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-BLUE: #007dbb;--weui-TAG-BACKGROUND-BLUE: rgba(0, 125, 187, .1);--weui-TAG-TEXT-BLACK: rgba(0, 0, 0, .5);--weui-TAG-BACKGROUND-BLACK: rgba(0, 0, 0, .05);--weui-REDORANGE: #d14730}@media (prefers-color-scheme: dark){.wx-root[data-weui-mode=care]:not([data-weui-theme=light]),body[data-weui-mode=care]:not([data-weui-theme=light]){--weui-BG-0: #111111;--weui-BG-1: #1E1E1E;--weui-BG-5: #2C2C2C;--weui-BLUE-100: #10AEFF;--weui-BLUE-120: #0C8BCC;--weui-BLUE-170: #04344D;--weui-BLUE-80: #3FBEFF;--weui-BLUE-90: #28B6FF;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #4095CB;--weui-BLUE-BG-130: #32749E;--weui-BLUE-BG-90: #5AAFE4;--weui-BRAND-100: #07C160;--weui-BRAND-120: #059A4C;--weui-BRAND-170: #023A1C;--weui-BRAND-80: #38CD7F;--weui-BRAND-90: #20C770;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #259C5C;--weui-BRAND-BG-130: #1D7A48;--weui-BRAND-BG-90: #3EB575;--weui-FG-0_5: rgba(255, 255, 255, .65);--weui-GLYPH-0: rgba(255, 255, 255, .85);--weui-GLYPH-1: rgba(255, 255, 255, .55);--weui-GLYPH-2: rgba(255, 255, 255, .35);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .85);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .55);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .35);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #74A800;--weui-GREEN-120: #5C8600;--weui-GREEN-170: #233200;--weui-GREEN-80: #8FB933;--weui-GREEN-90: #82B01A;--weui-GREEN-BG-100: #789833;--weui-GREEN-BG-110: #6B882D;--weui-GREEN-BG-130: #65802B;--weui-GREEN-BG-90: #85A247;--weui-INDIGO-100: #1196FF;--weui-INDIGO-120: #0D78CC;--weui-INDIGO-170: #052D4D;--weui-INDIGO-80: #40ABFF;--weui-INDIGO-90: #28A0FF;--weui-INDIGO-BG-100: #0D78CC;--weui-INDIGO-BG-110: #0B6BB7;--weui-INDIGO-BG-130: #09548F;--weui-INDIGO-BG-90: #2585D1;--weui-LIGHTGREEN-100: #3EB575;--weui-LIGHTGREEN-120: #31905D;--weui-LIGHTGREEN-170: #123522;--weui-LIGHTGREEN-80: #64C390;--weui-LIGHTGREEN-90: #51BC83;--weui-LIGHTGREEN-BG-100: #31905D;--weui-LIGHTGREEN-BG-110: #2C8153;--weui-LIGHTGREEN-BG-130: #226541;--weui-LIGHTGREEN-BG-90: #31905D;--weui-LINK-100: #7D90A9;--weui-LINK-120: #647387;--weui-LINK-170: #252A32;--weui-LINK-80: #97A6BA;--weui-LINK-90: #899AB1;--weui-LINKFINDER-100: #DEE9FF;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(32, 32, 32, .93);--weui-MATERIAL-NAVIGATIONBAR: rgba(18, 18, 18, .9);--weui-MATERIAL-REGULAR: rgba(37, 37, 37, .6);--weui-MATERIAL-THICK: rgba(34, 34, 34, .9);--weui-MATERIAL-THIN: rgba(245, 245, 245, .4);--weui-MATERIAL-TOOLBAR: rgba(35, 35, 35, .93);--weui-ORANGE-100: #C87D2F;--weui-ORANGE-120: #A06425;--weui-ORANGE-170: #3B250E;--weui-ORANGE-80: #D39758;--weui-ORANGE-90: #CD8943;--weui-ORANGE-BG-100: #BB6000;--weui-ORANGE-BG-110: #A85600;--weui-ORANGE-BG-130: #824300;--weui-ORANGE-BG-90: #C1701A;--weui-ORANGERED-100: #FF6146;--weui-OVERLAY: rgba(0, 0, 0, .8);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #8183FF;--weui-PURPLE-120: #6768CC;--weui-PURPLE-170: #26274C;--weui-PURPLE-80: #9A9BFF;--weui-PURPLE-90: #8D8FFF;--weui-PURPLE-BG-100: #6768CC;--weui-PURPLE-BG-110: #5C5DB7;--weui-PURPLE-BG-130: #48498F;--weui-PURPLE-BG-90: #7677D1;--weui-RED-100: #FA5151;--weui-RED-120: #C84040;--weui-RED-170: #4B1818;--weui-RED-80: #FB7373;--weui-RED-90: #FA6262;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #BA4940;--weui-RED-BG-130: #913832;--weui-RED-BG-90: #D3625A;--weui-SECONDARY-BG: rgba(255, 255, 255, .15);--weui-SEPARATOR-0: rgba(255, 255, 255, .05);--weui-SEPARATOR-1: rgba(255, 255, 255, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(255, 255, 255, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(255, 255, 255, .2);--weui-YELLOW-100: #CC9C00;--weui-YELLOW-120: #A37C00;--weui-YELLOW-170: #3D2F00;--weui-YELLOW-80: #D6AF33;--weui-YELLOW-90: #D1A519;--weui-YELLOW-BG-100: #BF9100;--weui-YELLOW-BG-110: #AB8200;--weui-YELLOW-BG-130: #866500;--weui-YELLOW-BG-90: #C59C1A;--weui-RED: #FA5151;--weui-ORANGERED: #FF6146;--weui-ORANGE: #C87D2F;--weui-YELLOW: #CC9C00;--weui-GREEN: #74A800;--weui-LIGHTGREEN: #3EB575;--weui-TEXTGREEN: #259C5C;--weui-BRAND: #07C160;--weui-BLUE: #10AEFF;--weui-INDIGO: #1196FF;--weui-PURPLE: #8183FF;--weui-LINK: #7D90A9;--weui-REDORANGE: #FF6146;--weui-BG-0: #111;--weui-BG-1: #1e1e1e;--weui-BG-2: #191919;--weui-BG-3: #202020;--weui-BG-4: #404040;--weui-BG-5: #2c2c2c;--weui-FG-0: rgba(255, 255, 255, .85);--weui-FG-HALF: rgba(255, 255, 255, .65);--weui-FG-1: rgba(255, 255, 255, .55);--weui-FG-2: rgba(255, 255, 255, .35);--weui-FG-3: rgba(255, 255, 255, .1);--weui-FG-4: rgba(255, 255, 255, .15);--weui-FG-5: rgba(255, 255, 255, .1);--weui-RED: #fa5151;--weui-ORANGERED: #ff6146;--weui-ORANGE: #c87d2f;--weui-YELLOW: #cc9c00;--weui-GREEN: #74a800;--weui-LIGHTGREEN: #3eb575;--weui-BRAND: #07c160;--weui-BLUE: #10aeff;--weui-INDIGO: #1196ff;--weui-PURPLE: #8183ff;--weui-WHITE: rgba(255, 255, 255, .8);--weui-LINK: #7d90a9;--weui-TEXTGREEN: #259c5c;--weui-FG: #fff;--weui-BG: #000;--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-TEXT-ORANGE: rgba(250, 157, 59, .6);--weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, .1);--weui-TAG-TEXT-GREEN: rgba(6, 174, 86, .6);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-BLUE: rgba(16, 174, 255, .6);--weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, .1);--weui-TAG-TEXT-BLACK: rgba(255, 255, 255, .5);--weui-TAG-BACKGROUND-BLACK: rgba(255, 255, 255, .05);--weui-REDORANGE: #ff6146}}.wx-root[data-weui-mode=care][data-weui-theme=dark],body[data-weui-mode=care][data-weui-theme=dark]{--weui-BG-0: #111111;--weui-BG-1: #1E1E1E;--weui-BG-5: #2C2C2C;--weui-BLUE-100: #10AEFF;--weui-BLUE-120: #0C8BCC;--weui-BLUE-170: #04344D;--weui-BLUE-80: #3FBEFF;--weui-BLUE-90: #28B6FF;--weui-BLUE-BG-100: #48A6E2;--weui-BLUE-BG-110: #4095CB;--weui-BLUE-BG-130: #32749E;--weui-BLUE-BG-90: #5AAFE4;--weui-BRAND-100: #07C160;--weui-BRAND-120: #059A4C;--weui-BRAND-170: #023A1C;--weui-BRAND-80: #38CD7F;--weui-BRAND-90: #20C770;--weui-BRAND-BG-100: #2AAE67;--weui-BRAND-BG-110: #259C5C;--weui-BRAND-BG-130: #1D7A48;--weui-BRAND-BG-90: #3EB575;--weui-FG-0_5: rgba(255, 255, 255, .65);--weui-GLYPH-0: rgba(255, 255, 255, .85);--weui-GLYPH-1: rgba(255, 255, 255, .55);--weui-GLYPH-2: rgba(255, 255, 255, .35);--weui-GLYPH-WHITE-0: rgba(255, 255, 255, .85);--weui-GLYPH-WHITE-1: rgba(255, 255, 255, .55);--weui-GLYPH-WHITE-2: rgba(255, 255, 255, .35);--weui-GLYPH-WHITE-3: #FFFFFF;--weui-GREEN-100: #74A800;--weui-GREEN-120: #5C8600;--weui-GREEN-170: #233200;--weui-GREEN-80: #8FB933;--weui-GREEN-90: #82B01A;--weui-GREEN-BG-100: #789833;--weui-GREEN-BG-110: #6B882D;--weui-GREEN-BG-130: #65802B;--weui-GREEN-BG-90: #85A247;--weui-INDIGO-100: #1196FF;--weui-INDIGO-120: #0D78CC;--weui-INDIGO-170: #052D4D;--weui-INDIGO-80: #40ABFF;--weui-INDIGO-90: #28A0FF;--weui-INDIGO-BG-100: #0D78CC;--weui-INDIGO-BG-110: #0B6BB7;--weui-INDIGO-BG-130: #09548F;--weui-INDIGO-BG-90: #2585D1;--weui-LIGHTGREEN-100: #3EB575;--weui-LIGHTGREEN-120: #31905D;--weui-LIGHTGREEN-170: #123522;--weui-LIGHTGREEN-80: #64C390;--weui-LIGHTGREEN-90: #51BC83;--weui-LIGHTGREEN-BG-100: #31905D;--weui-LIGHTGREEN-BG-110: #2C8153;--weui-LIGHTGREEN-BG-130: #226541;--weui-LIGHTGREEN-BG-90: #31905D;--weui-LINK-100: #7D90A9;--weui-LINK-120: #647387;--weui-LINK-170: #252A32;--weui-LINK-80: #97A6BA;--weui-LINK-90: #899AB1;--weui-LINKFINDER-100: #DEE9FF;--weui-MATERIAL-ATTACHMENTCOLUMN: rgba(32, 32, 32, .93);--weui-MATERIAL-NAVIGATIONBAR: rgba(18, 18, 18, .9);--weui-MATERIAL-REGULAR: rgba(37, 37, 37, .6);--weui-MATERIAL-THICK: rgba(34, 34, 34, .9);--weui-MATERIAL-THIN: rgba(245, 245, 245, .4);--weui-MATERIAL-TOOLBAR: rgba(35, 35, 35, .93);--weui-ORANGE-100: #C87D2F;--weui-ORANGE-120: #A06425;--weui-ORANGE-170: #3B250E;--weui-ORANGE-80: #D39758;--weui-ORANGE-90: #CD8943;--weui-ORANGE-BG-100: #BB6000;--weui-ORANGE-BG-110: #A85600;--weui-ORANGE-BG-130: #824300;--weui-ORANGE-BG-90: #C1701A;--weui-ORANGERED-100: #FF6146;--weui-OVERLAY: rgba(0, 0, 0, .8);--weui-OVERLAY-WHITE: rgba(242, 242, 242, .8);--weui-PURPLE-100: #8183FF;--weui-PURPLE-120: #6768CC;--weui-PURPLE-170: #26274C;--weui-PURPLE-80: #9A9BFF;--weui-PURPLE-90: #8D8FFF;--weui-PURPLE-BG-100: #6768CC;--weui-PURPLE-BG-110: #5C5DB7;--weui-PURPLE-BG-130: #48498F;--weui-PURPLE-BG-90: #7677D1;--weui-RED-100: #FA5151;--weui-RED-120: #C84040;--weui-RED-170: #4B1818;--weui-RED-80: #FB7373;--weui-RED-90: #FA6262;--weui-RED-BG-100: #CF5148;--weui-RED-BG-110: #BA4940;--weui-RED-BG-130: #913832;--weui-RED-BG-90: #D3625A;--weui-SECONDARY-BG: rgba(255, 255, 255, .15);--weui-SEPARATOR-0: rgba(255, 255, 255, .05);--weui-SEPARATOR-1: rgba(255, 255, 255, .15);--weui-STATELAYER-HOVERED: rgba(0, 0, 0, .02);--weui-STATELAYER-PRESSED: rgba(255, 255, 255, .1);--weui-STATELAYER-PRESSEDSTRENGTHENED: rgba(255, 255, 255, .2);--weui-YELLOW-100: #CC9C00;--weui-YELLOW-120: #A37C00;--weui-YELLOW-170: #3D2F00;--weui-YELLOW-80: #D6AF33;--weui-YELLOW-90: #D1A519;--weui-YELLOW-BG-100: #BF9100;--weui-YELLOW-BG-110: #AB8200;--weui-YELLOW-BG-130: #866500;--weui-YELLOW-BG-90: #C59C1A;--weui-RED: #FA5151;--weui-ORANGERED: #FF6146;--weui-ORANGE: #C87D2F;--weui-YELLOW: #CC9C00;--weui-GREEN: #74A800;--weui-LIGHTGREEN: #3EB575;--weui-TEXTGREEN: #259C5C;--weui-BRAND: #07C160;--weui-BLUE: #10AEFF;--weui-INDIGO: #1196FF;--weui-PURPLE: #8183FF;--weui-LINK: #7D90A9;--weui-REDORANGE: #FF6146;--weui-BG-0: #111;--weui-BG-1: #1e1e1e;--weui-BG-2: #191919;--weui-BG-3: #202020;--weui-BG-4: #404040;--weui-BG-5: #2c2c2c;--weui-FG-0: rgba(255, 255, 255, .85);--weui-FG-HALF: rgba(255, 255, 255, .65);--weui-FG-1: rgba(255, 255, 255, .55);--weui-FG-2: rgba(255, 255, 255, .35);--weui-FG-3: rgba(255, 255, 255, .1);--weui-FG-4: rgba(255, 255, 255, .15);--weui-FG-5: rgba(255, 255, 255, .1);--weui-RED: #fa5151;--weui-ORANGERED: #ff6146;--weui-ORANGE: #c87d2f;--weui-YELLOW: #cc9c00;--weui-GREEN: #74a800;--weui-LIGHTGREEN: #3eb575;--weui-BRAND: #07c160;--weui-BLUE: #10aeff;--weui-INDIGO: #1196ff;--weui-PURPLE: #8183ff;--weui-WHITE: rgba(255, 255, 255, .8);--weui-LINK: #7d90a9;--weui-TEXTGREEN: #259c5c;--weui-FG: #fff;--weui-BG: #000;--weui-TAG-TEXT-RED: rgba(250, 81, 81, .6);--weui-TAG-BACKGROUND-RED: rgba(250, 81, 81, .1);--weui-TAG-TEXT-ORANGE: rgba(250, 157, 59, .6);--weui-TAG-BACKGROUND-ORANGE: rgba(250, 157, 59, .1);--weui-TAG-TEXT-GREEN: rgba(6, 174, 86, .6);--weui-TAG-BACKGROUND-GREEN: rgba(6, 174, 86, .1);--weui-TAG-TEXT-BLUE: rgba(16, 174, 255, .6);--weui-TAG-BACKGROUND-BLUE: rgba(16, 174, 255, .1);--weui-TAG-TEXT-BLACK: rgba(255, 255, 255, .5);--weui-TAG-BACKGROUND-BLACK: rgba(255, 255, 255, .05);--weui-REDORANGE: #ff6146}.wx-root,body{--weui-BG-COLOR-ACTIVE: #ececec}.wx-root[data-weui-theme=dark],body[data-weui-theme=dark]{--weui-BG-COLOR-ACTIVE: #373737}@media (prefers-color-scheme: dark){.wx-root:not([data-weui-theme=light]),body:not([data-weui-theme=light]){--weui-BG-COLOR-ACTIVE: #373737}}body,.wx-root,page{--weui-BTN-HEIGHT: 48;--weui-BTN-HEIGHT-MEDIUM: 40;--weui-BTN-HEIGHT-SMALL: 32}.wx-root,body{--weui-BTN-ACTIVE-MASK: rgba(0, 0, 0, .1)}.wx-root[data-weui-theme=dark],body[data-weui-theme=dark]{--weui-BTN-ACTIVE-MASK: rgba(255, 255, 255, .1)}@media (prefers-color-scheme: dark){.wx-root:not([data-weui-theme=light]),body:not([data-weui-theme=light]){--weui-BTN-ACTIVE-MASK: rgba(255, 255, 255, .1)}}.wx-root,body{--weui-BTN-DEFAULT-ACTIVE-BG: #e6e6e6}.wx-root[data-weui-theme=dark],body[data-weui-theme=dark]{--weui-BTN-DEFAULT-ACTIVE-BG: rgba(255, 255, 255, .126)}@media (prefers-color-scheme: dark){.wx-root:not([data-weui-theme=light]),body:not([data-weui-theme=light]){--weui-BTN-DEFAULT-ACTIVE-BG: rgba(255, 255, 255, .126)}}.wx-root,body{--weui-DIALOG-LINE-COLOR: rgba(0, 0, 0, .1)}.wx-root[data-weui-theme=dark],body[data-weui-theme=dark]{--weui-DIALOG-LINE-COLOR: rgba(255, 255, 255, .1)}@media (prefers-color-scheme: dark){.wx-root:not([data-weui-theme=light]),body:not([data-weui-theme=light]){--weui-DIALOG-LINE-COLOR: rgba(255, 255, 255, .1)}}.weui-btn{position:relative;display:block;width:184px;margin-left:auto;margin-right:auto;padding:12px 24px;box-sizing:border-box;font-weight:500;font-size:17px;text-align:center;text-decoration:none;color:#fff;line-height:1.41176471;border-radius:8px;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-user-select:none;-moz-user-select:none;user-select:none}.weui-btn:active:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--weui-BTN-ACTIVE-MASK);border-radius:8px}.weui-btn:active.weui-btn_loading:before,.weui-btn:active.weui-btn_disabled:before,.weui-btn:active[disabled]:before{display:none}.weui-btn_block{width:auto}.weui-btn_inline{display:inline-block}.weui-btn_default{color:var(--weui-FG-0);background-color:var(--weui-FG-5)}.weui-btn_default:not(.weui-btn_disabled):visited{color:var(--weui-FG-0)}.weui-btn_primary{background-color:var(--weui-BRAND)}.weui-btn_primary:not(.weui-btn_disabled):visited{color:#fff}.weui-btn_warn{color:var(--weui-RED);background-color:var(--weui-FG-5)}.weui-btn_warn:not(.weui-btn_disabled):visited{color:var(--weui-RED)}.weui-btn_overlay{color:var(--weui-BRAND);background-color:#fff}.weui-btn_overlay:not(.weui-btn_disabled):visited{color:var(--weui-BRAND)}.weui-btn_disabled,.weui-btn[disabled]{color:var(--weui-FG-4);background-color:var(--weui-BG-1)}.weui-btn_loading .weui-loading{margin:-.2em 8px 0 0}.weui-btn_loading .weui-mask-loading{margin:-.2em 8px 0 0;color:currentColor}.weui-btn_loading .weui-primary-loading{margin:-.2em 8px 0 0;vertical-align:middle;color:currentColor}.weui-btn_loading .weui-primary-loading:before{content:\"\"}.weui-btn_loading.weui-btn_primary{color:var(--weui-WHITE)}.weui-btn_cell{position:relative;display:block;margin-left:auto;margin-right:auto;box-sizing:border-box;font-size:17px;text-align:center;text-decoration:none;color:#fff;line-height:1.41176471;padding:16px;-webkit-tap-highlight-color:rgba(0,0,0,0);overflow:hidden;background-color:var(--weui-BG-5)}.weui-btn_cell+.weui-btn_cell{margin-top:16px}.weui-btn_cell:active{background-color:var(--weui-BG-COLOR-ACTIVE)}.weui-btn_cell__icon{display:inline-block;vertical-align:middle;width:24px;height:24px;margin:-.2em .34em 0 0}.weui-btn_cell-default{color:var(--weui-FG-0)}.weui-btn_cell-primary{color:var(--weui-LINK)}.weui-btn_cell-warn{color:var(--weui-RED)}.weui-bottom-fixed-opr-page{height:100%;display:flex;flex-direction:column}.weui-bottom-fixed-opr-page__content{min-height:0;flex:1;padding-bottom:80px;box-sizing:border-box;overflow-y:auto;-webkit-overflow-scrolling:touch}.weui-bottom-fixed-opr-page__tool{padding:16px 32px 24px;padding:16px calc(32px + constant(safe-area-inset-right)) calc(24px + constant(safe-area-inset-bottom)) calc(32px + constant(safe-area-inset-left));padding:16px calc(32px + env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) calc(32px + env(safe-area-inset-left));background:#ffffff;position:relative;z-index:50}.weui-bottom-fixed-opr-page__tool:before{content:\"\";height:80px;background:linear-gradient(to top,#ffffff,rgba(255,255,255,0));position:absolute;bottom:calc(100% - 1px);left:0;right:0;transform:translateZ(0);pointer-events:none}.wx-root[data-weui-theme=dark] .weui-bottom-fixed-opr-page__tool,body[data-weui-theme=dark] .weui-bottom-fixed-opr-page__tool{background:#191919}@media (prefers-color-scheme: dark){.wx-root:not([data-weui-theme=light]) .weui-bottom-fixed-opr-page__tool,body:not([data-weui-theme=light]) .weui-bottom-fixed-opr-page__tool{background:#191919}}.wx-root[data-weui-theme=dark] .weui-bottom-fixed-opr-page__tool:before,body[data-weui-theme=dark] .weui-bottom-fixed-opr-page__tool:before{background:linear-gradient(to top,#191919,rgba(25,25,25,0))}@media (prefers-color-scheme: dark){.wx-root:not([data-weui-theme=light]) .weui-bottom-fixed-opr-page__tool:before,body:not([data-weui-theme=light]) .weui-bottom-fixed-opr-page__tool:before{background:linear-gradient(to top,#191919,rgba(25,25,25,0))}}.weui-bottom-fixed-opr-page__tips{margin-bottom:24px;padding:0 32px;text-align:center}.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr{display:flex;align-items:center;justify-content:center}.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn{width:184px;padding-left:16px;padding-right:16px}.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2),.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2)+.weui-btn{margin:0 8px;width:136px}.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2):first-child,.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2)+.weui-btn:first-child{margin-left:0}.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2):last-child,.weui-bottom-fixed-opr-page .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2)+.weui-btn:last-child{margin-right:0}.weui-bottom-fixed-opr-page_btn-wrap .weui-bottom-fixed-opr{flex-direction:column}.weui-bottom-fixed-opr-page_btn-wrap .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2),.weui-bottom-fixed-opr-page_btn-wrap .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2)+.weui-btn{width:184px;margin:16px 0 0}.weui-bottom-fixed-opr-page_btn-wrap .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2):first-child,.weui-bottom-fixed-opr-page_btn-wrap .weui-bottom-fixed-opr .weui-btn:nth-last-child(n+2)+.weui-btn:first-child{margin-top:0}.weui-bottom-fixed-opr-page.weui-form{padding-top:0}.weui-bottom-fixed-opr-page.weui-form .weui-form__bd{padding-top:56px;padding-top:calc(56px + constant(safe-area-inset-top));padding-top:calc(56px + env(safe-area-inset-top))}.weui-bottom-fixed-opr-page.weui-form .weui-form__ft{padding-bottom:0}.weui-bottom-fixed-opr-page.weui-form .weui-form__control-area{margin-bottom:0}.weui-bottom-fixed-opr-page.weui-half-screen-dialog{padding:0}.weui-bottom-fixed-opr-page.weui-half-screen-dialog .weui-half-screen-dialog__hd,.weui-bottom-fixed-opr-page.weui-half-screen-dialog .weui-half-screen-dialog__bd,.weui-bottom-fixed-opr-page.weui-half-screen-dialog .weui-half-screen-dialog__ft{padding-left:24px;padding-left:calc(24px + constant(safe-area-inset-left));padding-left:calc(24px + env(safe-area-inset-left));padding-right:24px;padding-right:calc(24px + constant(safe-area-inset-right));padding-right:calc(24px + env(safe-area-inset-right))}.weui-bottom-fixed-opr-page.weui-half-screen-dialog .weui-half-screen-dialog__bd{padding-bottom:80px}.weui-bottom-fixed-opr-page.weui-half-screen-dialog .weui-half-screen-dialog__ft{padding-bottom:64px;padding-bottom:calc(64px + constant(safe-area-inset-bottom));padding-bottom:calc(64px + env(safe-area-inset-bottom))}.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog{padding:0}.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog .weui-half-screen-dialog__hd{padding:0 24px;padding:0 calc(24px + constant(safe-area-inset-right)) 0 calc(24px + constant(safe-area-inset-left));padding:0 calc(24px + env(safe-area-inset-right)) 0 calc(24px + env(safe-area-inset-left))}.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog .weui-half-screen-dialog__bd{padding-bottom:0;display:flex;flex-direction:column}.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog .weui-half-screen-dialog__ft{padding:0}.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog .weui-bottom-fixed-opr-page{flex:1;min-height:0}.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog .weui-bottom-fixed-opr-page__content{padding:0 24px;padding:0 calc(24px + constant(safe-area-inset-right)) 0 calc(24px + constant(safe-area-inset-left));padding:0 calc(24px + env(safe-area-inset-right)) 0 calc(24px + env(safe-area-inset-left))}.weui-half-screen-dialog_bottom-fixed.weui-half-screen-dialog .weui-bottom-fixed-opr{padding:16px 0 64px;padding:16px 0 calc(64px + constant(safe-area-inset-bottom));padding:16px 0 calc(64px + env(safe-area-inset-bottom))}button.weui-btn,input.weui-btn{border-width:0;outline:0;-webkit-appearance:none}button.weui-btn:focus,input.weui-btn:focus{outline:0}button.weui-btn_inline,input.weui-btn_inline,button.weui-btn_mini,input.weui-btn_mini{width:auto}.weui-btn_medium{font-size:14px;padding:10px 24px;line-height:calc((var(--weui-BTN-HEIGHT-MEDIUM) - 20) / 14)}.weui-btn_mini{display:inline-block;width:auto;line-height:calc((32 - 12) / 14);padding:6px 12px;font-size:14px;border-radius:6px}.weui-btn_xmini{display:inline-block;width:auto;padding:4px 12px;line-height:calc((28 - 8) / 14);font-size:14px;font-weight:500;border-radius:4px}.weui-btn+.weui-btn{margin-top:16px}.weui-btn.weui-btn_mini+.weui-btn.weui-btn_mini{margin-top:auto}.weui-btn.weui-btn_xmini+.weui-btn.weui-btn_xmini{margin-top:auto}.weui-btn.weui-btn_inline+.weui-btn.weui-btn_inline{margin-left:16px}.weui-btn-area{margin:48px 16px 8px}.weui-btn-area_inline{display:flex}.weui-btn-area_inline .weui-btn{margin-top:auto;margin-right:16px;width:100%;flex:1}.weui-btn-area_inline .weui-btn:last-child{margin-right:0}.weui-btn_reset{background:transparent;border:0;padding:0;outline:0;font-size:inherit}.weui-btn_icon{background:transparent;border:0;padding:0;outline:0;font-size:0}.weui-btn_icon:active [class*=weui-icon-]{color:var(--weui-FG-1)}.collection_wx_img_placeholder{width:100%;background-color:#00000005;background:var(--weui-BG-2) url(\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='80px' height='80px' viewBox='0 0 80 80' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3E9.\u5143\u7D20/\u52A0\u8F7D/Black%3C/title%3E%3Cdefs%3E%3ClinearGradient x1='94.0869141%25' y1='0%25' x2='94.0869141%25' y2='90.559082%25' id='linearGradient-1'%3E%3Cstop stop-color='%23606060' stop-opacity='0' offset='0%25'%3E%3C/stop%3E%3Cstop stop-color='%23606060' stop-opacity='0.3' offset='100%25'%3E%3C/stop%3E%3C/linearGradient%3E%3ClinearGradient x1='100%25' y1='8.67370605%25' x2='100%25' y2='90.6286621%25' id='linearGradient-2'%3E%3Cstop stop-color='%23606060' offset='0%25'%3E%3C/stop%3E%3Cstop stop-color='%23606060' stop-opacity='0.3' offset='100%25'%3E%3C/stop%3E%3C/linearGradient%3E%3C/defs%3E%3Cg id='\u9875\u9762-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' opacity='0.9'%3E%3Cg id='LoadingDefault'%3E%3Cpath d='M40,0 C62.09139,0 80,17.90861 80,40 C80,62.09139 62.09139,80 40,80 L40,73 C58.2253967,73 73,58.2253967 73,40 C73,21.7746033 58.2253967,7 40,7 L40,0 Z' id='\u8DEF\u5F84' fill='url(%23linearGradient-1)'%3E%3C/path%3E%3Cpath d='M40,0 L40,7 C21.7746033,7 7,21.7746033 7,40 C7,58.2253967 21.7746033,73 40,73 L40,80 C17.90861,80 0,62.09139 0,40 C0,17.90861 17.90861,0 40,0 Z' id='\u8DEF\u5F84' fill='url(%23linearGradient-2)'%3E%3C/path%3E%3Ccircle id='Oval' fill='%23606060' cx='40.5' cy='3.5' r='3.5'%3E%3C/circle%3E%3C/g%3E%3CanimateTransform attributeName='transform' begin='0s' dur='1s' type='rotate' values='0 40 40;360 40 40' repeatCount='indefinite'/%3E%3C/g%3E%3C/svg%3E%0A\") no-repeat 50% 50%!important;background-size:16px!important;border-radius:8px}.wx_card_root_common_shopcollection{display:flex;flex-direction:column;-webkit-user-select:none;-moz-user-select:none;user-select:none;align-items:center;position:relative}.wx_card_root_common_shopcollection .shopcollection_warp{width:100%;display:flex;justify-content:center}.wx_card_root_common_shopcollection .shopcollection_warp .card_wrap{width:100%;background-color:#00000005;border-radius:8px;padding:16px 16px 8px;margin:0;box-sizing:border-box}.wx_card_root_common_shopcollection .shopcollection_warp .card_wrap .card_head{width:100%;display:flex;flex-direction:row;justify-content:space-between}.wx_card_root_common_shopcollection .shopcollection_warp .card_wrap .card_head .head_left{display:flex;align-items:center}.wx_card_root_common_shopcollection .shopcollection_warp .card_wrap .card_head .head_left .head_mid{display:flex;flex-direction:column}.wx_card_root_common_shopcollection .shopcollection_warp .card_wrap .card_head .head_left .head_mid .head_mid_top{font-size:17px;font-family:PingFang SC;color:var(--weui-FG-0);line-height:21px;word-break:break-all;margin-right:4px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;opacity:.9}.wx_card_root_common_shopcollection .shopcollection_warp .card_wrap .card_head .head_right .tap_home_btn{font-weight:400!important;background-color:var(--weui-FG-5, rgba(0, 0, 0, .05));display:flex;align-items:center;height:32px}.wx_card_root_common_shopcollection .shopcollection_warp .card_wrap .product_list{display:flex;width:100%;justify-content:space-between;margin-top:22px}.wx_card_root_common_shopcollection .shopcollection_warp .card_wrap .product_list .product{position:relative}.wx_card_root_common_shopcollection .shopcollection_warp .card_wrap .product_list .product .product_image{width:100%;height:100%;border-radius:2px}.wx_card_root_common_shopcollection .shopcollection_warp .card_wrap .product_list .product .product_price{bottom:4px;right:4px;position:absolute;border-radius:2px;padding:0 3px;height:15px;font-size:14px;font-family:WeChatSansStd-Medium;font-weight:400;color:#fff;line-height:15px;background-color:#0003}.wx_card_root_common_shopcollection .shopcollection_warp .card_wrap .product_list :not(:first-child){margin-left:4px}.wx_card_root_common_shopcollection .shopcollection_warp .card_wrap .shop_icon_wrap{width:100%;display:flex;align-items:center;justify-content:flex-start;margin-top:12px}.wx_card_root_common_shopcollection .shopcollection_warp .card_wrap .shop_icon_wrap .shop_icon{width:14px;height:14px;margin-right:2px;background-image:url(https://res.wx.qq.com/shop/public/2025-05-10/321b820e-8d8a-4083-8e0f-40b2b01fc8ef.png);background-repeat:no-repeat;background-size:contain}.wx_card_root_common_shopcollection .shopcollection_warp .card_wrap .shop_icon_wrap .shop_name{font-size:12px;font-family:PingFang SC;font-weight:400;color:var(--weui-GLYPH-1, rgba(0, 0, 0, .55));line-height:16.8px}.wx_card_root_common_shopcollection .shopcollection_warp .card_wrap .shop_status_desc{color:#0000004d;height:114px;display:flex;align-items:center;justify-content:center}@media (prefers-color-scheme: dark){.wx_card_root_common_shopcollection .shopcollection_warp .card_wrap{background-color:#ffffff05}.wx_card_root_common_shopcollection .shopcollection_warp .card_wrap .shop_icon_wrap .shop_icon{background-image:url(https://res.wx.qq.com/shop/public/2025-05-21/8f4c69e9-a78b-4c26-a4ce-affa1c47366d.png)}.wx_card_root_common_shopcollection .shopcollection_warp .card_wrap .shop_status_desc{color:#ffffff4d}.wx_card_root_common_shopcollection .shopcollection_warp .card_wrap .collection_wx_img_placeholder{background-color:#ffffff05}}.wx_card_root_common_buytogether{display:flex;flex-direction:column;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative;width:100%}.wx_card_root_common_buytogether_inline{display:inline-block!important;width:auto!important}.common_buytogether_root{display:flex;flex-direction:column;-webkit-user-select:none;-moz-user-select:none;user-select:none;align-items:center;position:relative}.common_buytogether_root .collection_wx_img_placeholder{width:100%;background-color:var(--weui-BG-2, rgba(0, 0, 0, .02)) url(\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='80px' height='80px' viewBox='0 0 80 80' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3E9.\u5143\u7D20/\u52A0\u8F7D/Black%3C/title%3E%3Cdefs%3E%3ClinearGradient x1='94.0869141%25' y1='0%25' x2='94.0869141%25' y2='90.559082%25' id='linearGradient-1'%3E%3Cstop stop-color='%23606060' stop-opacity='0' offset='0%25'%3E%3C/stop%3E%3Cstop stop-color='%23606060' stop-opacity='0.3' offset='100%25'%3E%3C/stop%3E%3C/linearGradient%3E%3ClinearGradient x1='100%25' y1='8.67370605%25' x2='100%25' y2='90.6286621%25' id='linearGradient-2'%3E%3Cstop stop-color='%23606060' offset='0%25'%3E%3C/stop%3E%3Cstop stop-color='%23606060' stop-opacity='0.3' offset='100%25'%3E%3C/stop%3E%3C/linearGradient%3E%3C/defs%3E%3Cg id='\u9875\u9762-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' opacity='0.9'%3E%3Cg id='LoadingDefault'%3E%3Cpath d='M40,0 C62.09139,0 80,17.90861 80,40 C80,62.09139 62.09139,80 40,80 L40,73 C58.2253967,73 73,58.2253967 73,40 C73,21.7746033 58.2253967,7 40,7 L40,0 Z' id='\u8DEF\u5F84' fill='url(%23linearGradient-1)'%3E%3C/path%3E%3Cpath d='M40,0 L40,7 C21.7746033,7 7,21.7746033 7,40 C7,58.2253967 21.7746033,73 40,73 L40,80 C17.90861,80 0,62.09139 0,40 C0,17.90861 17.90861,0 40,0 Z' id='\u8DEF\u5F84' fill='url(%23linearGradient-2)'%3E%3C/path%3E%3Ccircle id='Oval' fill='%23606060' cx='40.5' cy='3.5' r='3.5'%3E%3C/circle%3E%3C/g%3E%3CanimateTransform attributeName='transform' begin='0s' dur='1s' type='rotate' values='0 40 40;360 40 40' repeatCount='indefinite'/%3E%3C/g%3E%3C/svg%3E%0A\") no-repeat 50% 50%!important;background-size:16px!important;border-radius:8px}.common_buytogether_root .link-wrap{align-items:center;flex-grow:1;display:flex;justify-content:center}.common_buytogether_root .link-wrap .product_card_text_wrp{-webkit-user-select:none;-moz-user-select:none;user-select:none;display:inline;font-family:PingFang SC}.common_buytogether_root .link-wrap .product_card_text_wrp .product_text_link:before{display:inline-block;mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='25' height='25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.798 13.728c-.32 0-.636-.032-.942-.096-1.792-.378-3.042-1.754-3.042-3.348 0-.426.088-.84.262-1.232l.008-.02 2.008-4.498a3.696 3.696 0 013.372-2.186h9.8A3.697 3.697 0 0120.662 4.6l1.984 4.432c.178.402.268.82.268 1.248 0 1.596-1.252 2.974-3.044 3.348a4.63 4.63 0 01-2.176-.074c-.816-.23-1.514-.68-2.002-1.268-.798.846-2.018 1.368-3.326 1.368-1.308 0-2.52-.52-3.322-1.364-.488.59-1.188 1.042-2.014 1.274-.394.11-.808.168-1.23.168l-.002-.004zM3.46 9.632l-.01.022c-.09.2-.136.412-.136.63 0 .878.762 1.65 1.85 1.88.47.098.994.082 1.458-.048.766-.214 1.368-.728 1.576-1.34a1.43 1.43 0 00.046-.158.748.748 0 111.448-.056l.026.07.012.03c.392.892 1.448 1.49 2.634 1.49s2.25-.602 2.636-1.498c.02-.046.034-.082.046-.12a.744.744 0 01.754-.502.75.75 0 01.688.588c.012.056.026.108.042.152.214.62.802 1.118 1.572 1.334.466.132.99.148 1.46.048 1.092-.228 1.852-1.002 1.852-1.88 0-.216-.046-.43-.138-.636l-1.988-4.44-.008-.018-.018-.036a2.19 2.19 0 00-1.998-1.296h-9.8c-.864 0-1.648.51-2 1.298-.008.016-.014.032-.022.046L3.46 9.634v-.002zm8.904 12.01c-4.142 0-7.566-2.634-7.794-5.996a.75.75 0 111.498-.102c.174 2.578 2.94 4.598 6.298 4.598s6.122-2.02 6.296-4.598a.75.75 0 111.498.102c-.228 3.362-3.652 5.996-7.794 5.996h-.002z' fill='%23576B95'/%3E%3C/svg%3E\");-webkit-mask-image:url(\"data:image/svg+xml;charset=utf-8,%3Csvg width='25' height='25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.798 13.728c-.32 0-.636-.032-.942-.096-1.792-.378-3.042-1.754-3.042-3.348 0-.426.088-.84.262-1.232l.008-.02 2.008-4.498a3.696 3.696 0 013.372-2.186h9.8A3.697 3.697 0 0120.662 4.6l1.984 4.432c.178.402.268.82.268 1.248 0 1.596-1.252 2.974-3.044 3.348a4.63 4.63 0 01-2.176-.074c-.816-.23-1.514-.68-2.002-1.268-.798.846-2.018 1.368-3.326 1.368-1.308 0-2.52-.52-3.322-1.364-.488.59-1.188 1.042-2.014 1.274-.394.11-.808.168-1.23.168l-.002-.004zM3.46 9.632l-.01.022c-.09.2-.136.412-.136.63 0 .878.762 1.65 1.85 1.88.47.098.994.082 1.458-.048.766-.214 1.368-.728 1.576-1.34a1.43 1.43 0 00.046-.158.748.748 0 111.448-.056l.026.07.012.03c.392.892 1.448 1.49 2.634 1.49s2.25-.602 2.636-1.498c.02-.046.034-.082.046-.12a.744.744 0 01.754-.502.75.75 0 01.688.588c.012.056.026.108.042.152.214.62.802 1.118 1.572 1.334.466.132.99.148 1.46.048 1.092-.228 1.852-1.002 1.852-1.88 0-.216-.046-.43-.138-.636l-1.988-4.44-.008-.018-.018-.036a2.19 2.19 0 00-1.998-1.296h-9.8c-.864 0-1.648.51-2 1.298-.008.016-.014.032-.022.046L3.46 9.634v-.002zm8.904 12.01c-4.142 0-7.566-2.634-7.794-5.996a.75.75 0 111.498-.102c.174 2.578 2.94 4.598 6.298 4.598s6.122-2.02 6.296-4.598a.75.75 0 111.498.102c-.228 3.362-3.652 5.996-7.794 5.996h-.002z' fill='%23576B95'/%3E%3C/svg%3E\");background-color:currentColor;-webkit-mask-size:contain;mask-size:contain;height:1.1em;width:1.1em;content:\"\";vertical-align:middle;margin-right:2px;margin-top:-.16em}.common_buytogether_root .link-wrap .product_card_text_wrp .product_text_link{text-decoration:none;padding:2px 4px;color:var(--weui-LINK, #576b95);cursor:default;-webkit-user-drag:none;border-radius:4px}.common_buytogether_root .common_buytogether_card_wrap{width:100%;background-color:#00000005;border-radius:8px;padding:16px 16px 8px;margin:0;box-sizing:border-box}.common_buytogether_root .common_buytogether_card_wrap .card_head{width:100%;display:flex;flex-direction:row;justify-content:space-between}.common_buytogether_root .common_buytogether_card_wrap .card_head .head_left{display:flex;flex-direction:column;justify-content:center}.common_buytogether_root .common_buytogether_card_wrap .card_head .head_left .head_left_top{display:flex;justify-content:center}.common_buytogether_root .common_buytogether_card_wrap .card_head .head_left .head_left_top .icon{background-image:url(https://res.wx.qq.com/shop/public/2025-06-05/3c0a6519-c7ac-424b-9d1e-6096a089e49b.png);width:24px;height:24px;background-size:cover}.common_buytogether_root .common_buytogether_card_wrap .card_head .head_left .head_left_top .title{flex:1;margin-right:16px;margin-left:5px;font-size:17px;font-family:PingFang SC;font-weight:500;color:var(--weui-ORANGERED-100, #ff6146);line-height:24px}.common_buytogether_root .common_buytogether_card_wrap .card_head .head_left .head_left_bottom{margin-top:6px;display:flex;align-items:center;text-align:center}.common_buytogether_root .common_buytogether_card_wrap .card_head .head_left .head_left_bottom .avatar_list{display:flex;align-items:center}.common_buytogether_root .common_buytogether_card_wrap .card_head .head_left .head_left_bottom .avatar_list .avatar{width:16px;height:16px;border-radius:2px}.common_buytogether_root .common_buytogether_card_wrap .card_head .head_left .head_left_bottom .avatar_list>:not(:first-child){margin-left:2px}.common_buytogether_root .common_buytogether_card_wrap .card_head .head_left .head_left_bottom .desc{margin-left:6px;font-size:12px;font-family:PingFang SC;font-weight:400;color:var(--weui-GLYPH-1);line-height:16px}.common_buytogether_root .common_buytogether_card_wrap .card_head .head_right .tap_home_btn{padding:0 12px!important;border-radius:6px;white-space:nowrap;text-align:center;display:flex;justify-content:center;align-items:center;height:32px;font-size:14px;font-family:PingFang SC;font-weight:500;color:var(--weui-GLYPH-WHITE-3, #ffffff);background-color:var(--weui-ORANGERED-100, #ff6146);border:0}.common_buytogether_root .common_buytogether_card_wrap .product_list{display:flex;width:100%;margin-top:16px}.common_buytogether_root .common_buytogether_card_wrap .product_list .product{display:flex;flex-direction:column}.common_buytogether_root .common_buytogether_card_wrap .product_list .product .product_image{width:100%;border-radius:4px}.common_buytogether_root .common_buytogether_card_wrap .product_list .product .product_price{margin-top:4px}.common_buytogether_root .common_buytogether_card_wrap .product_list .product .product_price .selling_price{font-size:17px;font-family:WeChatSansStd-Medium;font-weight:500;color:var(--weui-GLYPH-0);line-height:19px}.common_buytogether_root .common_buytogether_card_wrap .product_list .product .product_price .before_selling_price{margin-left:2px;position:relative;font-size:12px;font-family:WeChatSansStd-Medium;font-weight:400;color:#afafaf;line-height:16px}.common_buytogether_root .common_buytogether_card_wrap .product_list .product .product_price .newlineationPrice{position:absolute;height:2px;top:50%;left:50%;transform:scaleY(.5) translate(-50%,-50%);width:100%;background:#AFAFAF;border-top:1px solid #fff;border-bottom:1px solid #fff}.common_buytogether_root .common_buytogether_card_wrap .product_list>:not(:first-child){margin-left:4px}.common_buytogether_root .common_buytogether_card_wrap .shop_icon_wrap{width:100%;display:flex;align-items:center;justify-content:flex-start;margin-top:8px}.common_buytogether_root .common_buytogether_card_wrap .shop_icon_wrap .shop_icon{width:14px;height:14px;margin-right:2px;background-image:url(https://res.wx.qq.com/shop/public/2025-05-10/321b820e-8d8a-4083-8e0f-40b2b01fc8ef.png);background-size:contain;background-position:center center;flex-shrink:0}.common_buytogether_root .common_buytogether_card_wrap .shop_icon_wrap .shop_name{font-size:12px;font-family:PingFang SC;font-weight:400;color:var(--weui-GLYPH-1, rgba(0, 0, 0, .55));line-height:16.8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}.common_buytogether_root .qrcode-wrapper{display:flex;align-items:center;padding:10px 12px 10px 10px}.common_buytogether_root .qrcode-wrapper .qrcode{width:76px;height:76px;margin-right:14px}.common_buytogether_root .qrcode-wrapper .desc{font-size:12px;line-height:17px;font-weight:400;display:flex;flex-direction:column;color:var(--weui-FG-0)}@media (prefers-color-scheme: dark){.common_buytogether_root .common_buytogether_card_wrap{background-color:#ffffff05}.common_buytogether_root .common_buytogether_card_wrap .product_list .product .product_price .before_selling_price{color:#5e5e5e}.common_buytogether_root .common_buytogether_card_wrap .product_list .product .product_price .newlineationPrice{background:#5E5E5E;border-top:1px solid #1E1E1E;border-bottom:1px solid #1E1E1E}.common_buytogether_root .common_buytogether_card_wrap .shop_icon_wrap .shop_icon{background-image:url(https://res.wx.qq.com/shop/public/2025-05-21/8f4c69e9-a78b-4c26-a4ce-affa1c47366d.png)}.common_buytogether_root .collection_wx_img_placeholder{background-color:#ffffff05}.common_buytogether_root .qrcode-wrapper .qrcode{filter:invert(1)}}.shopparing_warp{width:100%;display:flex;justify-content:center;background:rgba(255,255,255,.03);-webkit-user-select:none;-moz-user-select:none;user-select:none}.shopparing_warp .shopparing-offline-card{display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.03);height:120px;border-radius:8px}.shopparing_warp .shopparing-offline-card-text{color:#0000004d;font-size:14px}.pairing-card-footer{background:rgba(0,0,0,.02);border-radius:0 0 16px 16px;padding:8px 16px;box-sizing:border-box;min-height:72px}.pairing-card-footer__info{display:flex;align-items:center;justify-content:space-between;flex:1;min-width:0}.pairing-card-footer__title{font-size:15px;color:#000000e6;font-weight:500;flex:1;margin-right:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pairing-card-footer__desc{font-size:14px;color:#0000004d}.pairing-card-footer__brand{display:flex;align-items:center;font-size:13px;color:#b2b2b2;margin-top:12px}.pairing-card-footer__brand-icon{font-size:14px;height:1em;width:1em;margin:0 2px;background-image:url(https://res.wx.qq.com/op_res/jXYqVlv0Bp4U5kA7rRVadiXJa4OoJ3XBiu6NnGwip81QtLP4_tC88GRmSpCoFfkcr2wD4gexp2x7bkYGGRP4Mw);background-repeat:no-repeat;background-size:contain}.pairing-card-footer__brand-text{color:#0000004d}.pairing-card-footer__brand-rtag{font-size:14px;height:1em;width:1em;margin:0 2px}.pairing-card-footer__btn{background:#ff6146;color:#fff;border:none;border-radius:6px;font-size:15px;font-weight:500;padding:5.5px 18px;cursor:pointer;transition:background .2s}.pairing-card-footer__btn:active{background:#ff6146}.dark-mode .shopparing-offline-card{background:rgba(255,255,255,.03)}.dark-mode .shopparing-offline-card-text{color:#ffffff4d}.dark-mode .swiper-wrapper,.dark-mode .swiper-wrapper .image-container{background:#111}.dark-mode .pairing-card-footer{background:rgba(0,0,0,.03)}.dark-mode .pairing-card-footer__title{color:#fffc}.dark-mode .pairing-card-footer__desc{font-size:14px;color:#ffffff4d}.dark-mode .pairing-card-footer__brand{color:#ffffff4d}.dark-mode .pairing-card-footer__brand-icon{color:#ffffff4d;background-image:url(https://res.wx.qq.com/op_res/jXYqVlv0Bp4U5kA7rRVadr_IVVcYZeY_bErEeSJQ0eAObBEiF9qnYrc_HLdsY8q6nQQ5T3WHhgVq1pF5a9XRbg)}.dark-mode .pairing-card-footer__brand-text{color:#ffffff4d}.swiper-out{overflow:hidden;position:relative;background-color:#ededed;border-radius:8px 8px 0 0}.swiper-out .swiper-wrapper{background-color:#ededed;display:flex;will-change:transform}.swiper-out .swiper-item{display:flex;flex-shrink:0;align-items:center}.swiper-out .swiper-item .image-container{position:relative;width:100%;height:100%;background-color:#ededed;display:flex;align-items:center;justify-content:center}.swiper-out .swiper-item .image-container .image-wrapper{position:relative;display:inline-block;max-width:100%;max-height:100%}.swiper-out .swiper-item .image-container .swiper-image{display:block;max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain;transition:opacity .1s;background-color:#ededed}.swiper-out .swiper-item .image-container .label-container{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;overflow:hidden}.swiper-out .swiper-item .image-container .label-container .label-item{display:flex;align-items:center;border-radius:100px;width:-moz-max-content;width:max-content;padding:0 4px;box-sizing:border-box;background:rgba(76,76,76,.5);pointer-events:fill;position:absolute;min-width:0}.swiper-out .swiper-item .image-container .label-container .label-item:before{content:\"\";width:8px;height:8px;border-radius:50%;border:2px solid #a5a5a5;background-color:#fff;margin-right:4px;z-index:9;box-sizing:border-box;position:relative;flex-shrink:0}.swiper-out .swiper-item .image-container .label-container .label-item:after{content:\"\";display:block;width:7px;height:14px;-webkit-mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='24' viewBox='0 0 12 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M2.4541 6.58068L3.51476 5.52002L9.29366 11.2989C9.68378 11.689 9.68724 12.3181 9.29366 12.7117L3.51476 18.4906L2.4541 17.4299L7.87872 12.0053L2.4541 6.58068Z' fill='black'/%3E %3C/svg%3E\");mask-image:url(\"data:image/svg+xml,%3Csvg width='12' height='24' viewBox='0 0 12 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E %3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M2.4541 6.58068L3.51476 5.52002L9.29366 11.2989C9.68378 11.689 9.68724 12.3181 9.29366 12.7117L3.51476 18.4906L2.4541 17.4299L7.87872 12.0053L2.4541 6.58068Z' fill='black'/%3E %3C/svg%3E\");-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:cover;mask-size:cover;background-color:#fff;margin-left:4px;flex-shrink:0}.swiper-out .swiper-item .image-container .label-container .label-item:hover{opacity:.8}.swiper-out .swiper-indicator{position:absolute;bottom:4px;right:8px;border-radius:12px;padding:4px 8px;z-index:1000}.swiper-out .swiper-indicator .indicator-text{font-size:12px;color:#fff;font-weight:500;text-shadow:0 0 .5px rgba(0,0,0,.2)}.swiper-out .swiper-indicator-wrap-bg{background-color:#fff;width:100%}.swiper-out .swiper-indicator-wrap-bg .swiper-indicator-wrap{background:rgba(0,0,0,.02);padding-top:4px;width:100%;display:flex;justify-content:center;z-index:10000}.swiper-out .swiper-indicator-wrap-bg .swiper-indicator-wrap .swiper-indicator-dot{background:rgba(0,0,0,.3);width:5px;height:5px;border-radius:50%;margin-right:3px;transition:opacity .3s}.swiper-out .swiper-indicator-wrap-bg .swiper-indicator-wrap .swiper-indicator-dot:last-child{margin-right:0}.swiper-out .swiper-indicator-wrap-bg .swiper-indicator-wrap .swiper-indicator-dot.active{width:12px;height:4.5px;background:rgba(0,0,0,.9);border-radius:3px}.dark-mode .swiper-out,.dark-mode .swiper-out .swiper-wrapper,.dark-mode .swiper-out .swiper-wrapper .image-container,.dark-mode .swiper-out .swiper-wrapper .image-container .swiper-image{background:#111}.swiper-indicator-wrap-bg{background-color:#fff;width:100%}.swiper-indicator-wrap-bg .swiper-indicator-wrap{background:rgba(0,0,0,.02);padding-top:4px;width:100%;display:flex;justify-content:center;z-index:10000}.swiper-indicator-wrap-bg .swiper-indicator-wrap .swiper-indicator-dot{background:rgba(0,0,0,.1);width:5px;height:5px;border-radius:50%;margin-right:3px;transition:opacity .3s;cursor:pointer}.swiper-indicator-wrap-bg .swiper-indicator-wrap .swiper-indicator-dot:last-child{margin-right:0}.swiper-indicator-wrap-bg .swiper-indicator-wrap .swiper-indicator-dot.active{width:12px;height:4.5px;background:rgba(0,0,0,.9);border-radius:3px}.swiper-indicator-wrap-bg .swiper-indicator-wrap .swiper-indicator-dot:hover{opacity:.8}.dark-mode .swiper-indicator-wrap-bg{background:#191919}.dark-mode .swiper-indicator-wrap-bg .swiper-indicator-dot{background:rgba(255,255,255,.1)}.dark-mode .swiper-indicator-wrap-bg .swiper-indicator-dot.active{background:rgba(255,255,255,.8)}\n", J = { type: "data-type", json: "data-json" }; function Ye(i) { var e = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; var t = o$6.call(this, J); return _objectSpread$4({ platform: i, extraInfo: e }, t); } function Ze() { var i = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; H$3(Object.assign(i, { Component: Ue, styleText: i.isDev ? i.devStyleText : He, customName: i.customName || "mp-common-shoptag", watchAttr: Object.values(J), getProps: Ye, eventName: ["document-click", "onFrameReady", "expose", "element-click"] })); } var g$2 = { canJumpOnTap: false, isNonWechat: false, data: null, appidInfoResp: null, appidInfoCatchErr: null, appInfoSucQueue: [], appInfoErrQueue: [], appidSnInfo: [], appidSnDict: {}, getInfoState: 0 }; var weAppUserNameSuffix = '@app'; function getWeAppUserName(userName) { return userName.indexOf(weAppUserNameSuffix) > -1 ? userName : "".concat(userName).concat(weAppUserNameSuffix); } function getDefaultWeappScene() { var itemShowType = window.item_show_type * 1; var serviceType = window.service_type * 1; var scene; switch (itemShowType) { case 8: scene = serviceType === 5 ? 1432 : 1426; break; case 10: scene = 1427; break; case 5: scene = 1152; break; case 7: scene = 1429; break; default: scene = 1058; } return scene; } initEnv(); function initEnv() { var uaMatch = navigator.userAgent.match(/MicroMessenger\/(\d+)\.(\d+)\.(\d+)/); if (uaMatch) { var version1 = Number(uaMatch[1]); var version2 = Number(uaMatch[2]); var version3 = Number(uaMatch[3]); if (version1 > 6) g$2.canJumpOnTap = true;else if (version1 === 6 && version2 > 5) g$2.canJumpOnTap = true;else if (version1 === 6 && version2 === 5 && version3 >= 3) g$2.canJumpOnTap = true; } else { if (!navigator.userAgent.match(/MicroMessenger\//) && !navigator.userAgent.match(/wxwork/)) { g$2.isNonWechat = true; } } if (Device.os.windows && window.clientversion) { if (parseInt(window.clientversion, 16) >= 0x63050000) { g$2.canJumpOnTap = true; } } else if (Device.os.Mac && window.clientversion) { if (parseInt(window.clientversion, 16) >= 0x13000000) { g$2.canJumpOnTap = true; } } if (navigator.userAgent.match(/wxwork/)) { g$2.canJumpOnTap = true; } batchGetInfo(); } function batchGetInfo() { try { g$2.appidSnInfo = JSON.parse(window.weapp_sn_arr_json).weapp_card_list; } catch (e) { g$2.appidSnInfo = []; } if (!g$2.appidSnInfo || g$2.appidSnInfo.length == 0) { g$2.getInfoState = 1; excuteQueue(); return; } var args = { __biz: window.biz || "", mid: window.mid || "", idx: window.idx || "", uin: window.uin || "", key: window.key || "", pass_ticket: window.pass_ticket || "", weapp_num: g$2.appidSnInfo.length }; var appidListDict = {}; var snListDict = {}; for (var i = 0; i = 0) { r = "".concat(path.slice(0, qmIndex) + (qmIndex > 0 ? '.html' : '') + path.slice(qmIndex), "&").concat(pathArgs); } else { r = path + (path !== '' ? '.html?' : '?') + pathArgs; } return r.replace(/&/g, '&'); } function getcpsRelativeURL(path) { var r = ""; var qmIndex = path.indexOf('?'); r = path.slice(0, qmIndex) + (qmIndex > 0 ? '.html' : '') + path.slice(qmIndex); return r; } function jumpUrl$1(opt) { opt = opt || {}; var _o; if (opt.options) { _o = opt.options; if (_o.relativeURL) { _o.relativeURL = _o.relativeURL.replace(/&/g, '&'); if (_o.relativeURL.indexOf('.html') 0 && arguments[0] !== undefined ? arguments[0] : {}; H$3(Object.assign(a, { Component: a.isDev ? a.devComponent : g$1, styleText: a.isDev ? a.devStyleText : n$2, customName: a.customName || "mp-common-miniprogram", watchAttr: ["data-miniprogram-appid", "data-is-hover", "data-is-selected", "data-miniprogram-title", "data-miniprogram-desc"], getProps: d$1 })); } try { if (typeof parent.window.hasListenMpPageAction === 'undefined') { parent.window.hasListenMpPageAction = false; } if (typeof parent.window.hasListenStateChange === 'undefined') { parent.window.hasListenStateChange = false; } } catch (error) { } var mpPageActionCb = []; var stateChangeCb = []; var HistoryLS = new LS('history4secondopen'); var HistoryKey = 'from'; var hasListenPopstateForSecOpenReload = false; var webComptStatus = { status: 'loading' }; var webComptInitCb = []; var directionHandlerId = 0; var directionChangeHandlersMap = {}; function isNativePage() { return Url.getQuery('isNativePage') === '1' || Url.getQuery('isNativePage') === '2'; } function debounce$1(func) { var wait = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 50; var timeout; return function () { for (var _len = arguments.length, args = new Array(_len), _key = 0; _key rectA.right || rectB.bottom rectA.bottom); } var utils = { isNativePage: isNativePage, isNewNativePage: function isNewNativePage() { return Url.getQuery('isNativePage') === '2'; }, isOldNativePage: function isOldNativePage() { return Url.getQuery('isNativePage') === '1'; }, __useWcSlPlayer: false, isWcSlPage: function isWcSlPage() { return utils.__useWcSlPlayer; }, getPlayerType: function getPlayerType() { if (isNativePage()) { return 2; } return 1; }, getParam: function getParam(key) { if (!key) return null; var m = location.href.match(new RegExp("(\\?|&)".concat(key, "=([^&]+)"))); return m ? m[2] : null; }, insertAfter: function insertAfter(newElement, targetElement) { var parentElement = targetElement.parentNode; if (parentElement.lastChild === targetElement) { parentElement.appendChild(newElement); } else { parentElement.insertBefore(newElement, targetElement.nextSibling); } }, getInnerHeight: function getInnerHeight() { var innerHeightFromApp = window.getInnerHeight && window.getInnerHeight(); return innerHeightFromApp || window.innerHeight || document.documentElement.clientHeight; }, getInnerWidth: function getInnerWidth() { return window.innerWidth || document.documentElement.clientWidth; }, getScrollTop: function getScrollTop() { return document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop; }, getDocumentHeight: function getDocumentHeight() { return document.body.scrollHeight; }, getElementActualTop: function getElementActualTop(element) { var elRect = element.getBoundingClientRect(); var actualTop = elRect.top + this.getScrollTop(); return actualTop; }, getElementTop: function getElementTop(element) { return element.getBoundingClientRect().top; }, getElementHeight: function getElementHeight(element) { return element.getBoundingClientRect().height; }, getOrientation: function getOrientation() { var _a, _b; return (_b = (_a = window.screen.orientation) === null || _a === void 0 ? void 0 : _a.angle) !== null && _b !== void 0 ? _b : window.orientation; }, getDirection: function getDirection() { var orientation = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : utils.getOrientation(); return (MMVersion.isIPad ? [90, 270] : [0, 180]).indexOf(orientation) > -1 ? 'vertical' : 'horizontal'; }, listenDirectionChange: function listenDirectionChange(cb) { var _a, _b; if ((_b = (_a = window.screen) === null || _a === void 0 ? void 0 : _a.orientation) === null || _b === void 0 ? void 0 : _b.addEventListener) { directionChangeHandlersMap[directionHandlerId] = function (e) { cb === null || cb === void 0 ? void 0 : cb(utils.getDirection(e.target.angle), e.target.angle); }; window.screen.orientation.addEventListener('change', directionChangeHandlersMap[directionHandlerId]); } else { directionChangeHandlersMap[directionHandlerId] = function () { var orientation = utils.getOrientation(); cb === null || cb === void 0 ? void 0 : cb(utils.getDirection(orientation), orientation); }; window.addEventListener('orientationchange', directionChangeHandlersMap[directionHandlerId]); } return directionHandlerId++; }, unlistenDirectionChange: function unlistenDirectionChange(handlerId) { var _a, _b; if ((_b = (_a = window.screen) === null || _a === void 0 ? void 0 : _a.orientation) === null || _b === void 0 ? void 0 : _b.removeEventListener) { window.screen.orientation.removeEventListener('change', directionChangeHandlersMap[handlerId]); } else { window.removeEventListener('orientationchange', directionChangeHandlersMap[handlerId]); } delete directionChangeHandlersMap[handlerId]; }, isScrollEnd: function isScrollEnd(threshold) { return this.getScrollTop() + this.getInnerHeight() + threshold >= this.getDocumentHeight(); }, listenStateChange: function listenStateChange() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; stateChangeCb.push(opt.cb); try { if (parent.window.hasListenStateChange) { return; } } catch (error) { } R$4.on('activity:state_change', function (res) { stateChangeCb.forEach(function (callback) { callback(res); }); }); try { parent.window.hasListenStateChange = true; } catch (error) { } }, listenMpPageAction: function listenMpPageAction(cb) { mpPageActionCb.push(cb); try { if (parent.window.hasListenMpPageAction) { return; } } catch (error) { } R$4.on('onMPPageAction', function (res) { mpPageActionCb.forEach(function (callback) { callback(res); }); }); try { parent.window.hasListenMpPageAction = true; } catch (error) { } }, getIosMainVersion: function getIosMainVersion() { var versionInfo = navigator.userAgent.toLowerCase().match(/cpu iphone os (.*?) like mac os/); return versionInfo && versionInfo[1] && parseInt(versionInfo[1].split('_')[0], 10); }, report120081: function report120081(key, times) { jsmonitorReport$1.setSum(120081, key, times); jsmonitorReport$1.send(); }, loadNewPageKeepingHistoryStackIfSecOpen: function loadNewPageKeepingHistoryStackIfSecOpen(url) { if (window.__second_open__ && typeof url === 'string' && /^https?:\/\/mp.weixin.qq.com\//.test(url)) { HistoryLS.set(HistoryKey, location.href, Date.now() + 10000); } location.href = "".concat(url.replace(/#.*$/, ''), "#wechat_redirect"); }, initNewPageHistoryStackFromSecOpen: function initNewPageHistoryStackFromSecOpen() { var fromUrl = HistoryLS.get(HistoryKey); if (fromUrl && typeof fromUrl === 'string' && /^https?:\/\/mp.weixin.qq.com\//.test(fromUrl)) { HistoryLS.remove(HistoryKey); if (history && history.replaceState && history.pushState) { var curUrl = location.href; try { history.replaceState({ __mock_secopen_history_stack_reload__: 1 }, '', fromUrl); history.pushState({ __mock_secopen_history_stack_reload__: 1 }, '', curUrl); } catch (e) { console.error('[initNewPageHistoryStackFromSecOpen]', e); } } } if (!hasListenPopstateForSecOpenReload) { hasListenPopstateForSecOpenReload = true; window.addEventListener('popstate', function (e) { if (e.state && e.state.__mock_secopen_history_stack_reload__ === 1) { location.reload(); } }); } }, initWebCompt: function initWebCompt(webComptList, callback) { var flushCb = function flushCb() { while (webComptInitCb.length) { var cb = webComptInitCb.shift(); cb(webComptStatus); } }; if (MMVersion.isWechat && !MMVersion.isInMiniProgram && (Device.os.iphone && Device.os.getNumVersion() >= 10.3 && (MMVersion.gtVersion('7.0.14', 1) && Device.os.getNumVersion() = 5 || Device.os.harmony && MMVersion.compareHexVersion('0xf3800c00'))) { document.addEventListener('WeixinOpenTagsReady', function () { webComptStatus = { status: 'ready' }; flushCb(); }); document.addEventListener('WeixinOpenTagsError', function (e) { webComptStatus = { status: 'error', error: e && e.detail && e.detail.errMsg }; flushCb(); }); R$4.invoke('handleMPPageAction', { action: 'wxConfig', appid: 'wxmpfakeid', webComptList: webComptList, url: location.href }, function (res) { console.log('wx config web compt result', webComptList, res); Log.info('wx config web compt result', webComptList, JSON.stringify(res)); if (res && res.err_msg && res.err_msg.indexOf(':ok') === -1) { webComptStatus = { status: 'error', error: res.err_msg }; flushCb(); } if (typeof callback === 'function') { callback(res); } }); } else { var res = { err_msg: 'handleMPPageAction:fail_webcompt unsupported' }; console.log('wx config web compt result', webComptList, res); Log.info('wx config web compt result', webComptList, JSON.stringify(res)); webComptStatus = { status: 'error', error: res.err_msg }; flushCb(); if (typeof callback === 'function') { callback(res); } } }, initWebComptForWcSlVideoSharePage: function initWebComptForWcSlVideoSharePage() { var initAfterConfWxOpen = function initAfterConfWxOpen(res) { if (res.err_msg.indexOf(':ok') !== -1) { utils.initNewPageHistoryStackFromSecOpen(); } else { window.__failConfigWxOpen = true; Log.info('failed to config wxopen: res not ok'); jsmonitorReport$1.setSum(221515, Device.os.iphone ? 7 : 8, 1); window.WX_BJ_REPORT && window.WX_BJ_REPORT.BadJs && res && window.WX_BJ_REPORT.BadJs.report('WcSlPlayer:CfgError', (window.__second_open__ ? 'secopen:' : 'h5:') + JSON.stringify(res)); } }; if (MMVersion.isAndroid) { var clientVer = MMVersion.getInner(); if (clientVer > '27001037' && clientVer = '27001100') { utils.initWebCompt(['wxOpen' ], initAfterConfWxOpen); } else if (MMVersion.gtVersion('7.0.15', 1)) { window.__failConfigWxOpen = true; Log.info('failed to config wxopen: android version check failed (gt 7.0.15)'); } else { window.__failConfigWxOpen = true; Log.info('failed to config wxopen: android version check failed'); } } else if (MMVersion.isIOS) { if (MMVersion.gtVersion('7.0.15', 1)) { utils.initWebCompt(['wxOpen' ], initAfterConfWxOpen); } else { window.__failConfigWxOpen = true; Log.info('failed to config wxopen: ios version check failed'); } } else { window.__failConfigWxOpen = true; } }, getWebComptStatus: function getWebComptStatus(cb) { if (typeof cb !== 'function') { return webComptStatus; } if (webComptStatus.status === 'loading') { webComptInitCb.push(cb); } else { cb(webComptStatus); } return true; }, supportImmersiveMode: MMVersion.isWechat && !MMVersion.isInMiniProgram && (MMVersion.isIOS && MMVersion.gtVersion('8.0.9', 1) || MMVersion.isAndroid && MMVersion.gtVersion('8.0.9', 1)), debounce: debounce$1, bindDebounceScrollEvent: function bindDebounceScrollEvent(fn) { var scrollEle = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : window; var wait = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 50; var useCapture = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false; var debounceFn = debounce$1(fn, wait); DomEvent.on(scrollEle, 'scroll', '', debounceFn, useCapture); }, checkIntersect: checkIntersect, clickRange: function clickRange(evt) { var selection = window.getSelection(); var range = selection.rangeCount && selection.getRangeAt(0); if (!range || range.collapsed || !range.intersectsNode(evt.target)) { return false; } var rangeClientRects = range.getClientRects(); var targetLineHeight = parseFloat(getComputedStyle(evt.target).lineHeight, 10); var targetRect = evt.target.getBoundingClientRect(); for (var i in rangeClientRects) { if (rangeClientRects.hasOwnProperty(i)) { var rect = rangeClientRects[i]; var extraHeight = targetLineHeight ? (targetLineHeight - rect.height) / 2 : 0; if (rect.width && checkIntersect(rect, targetRect) && evt.clientX >= rect.left && evt.clientX = rect.top - extraHeight && evt.clientY 100000) { showHTML = "".concat(100, "k+"); } else if (parseInt(realNum) > 10000 && parseInt(realNum) 2 && arguments[2] !== undefined ? arguments[2] : false; var jsapiName = canUsePrivateShare && !forceFallback ? 'sendAppMessagePrivate' : 'sendAppMessage'; console.log('[share] try to share:', jsapiName, opt, forceFallback); Log.info("[share] try to share: ".concat(jsapiName, " ").concat(JSON.stringify(opt), " forceFallback:").concat(forceFallback)); R$4.invoke(jsapiName, opt, function (res) { console.log('[share] try to share res:', res, jsapiName, opt, forceFallback); if (!(res && res.err_msg && (res.err_msg.indexOf(':ok') !== -1 || res.err_msg.indexOf(':confirm') !== -1 || res.err_msg.indexOf(':cancel') !== -1 )) && canUsePrivateShare && !forceFallback) { sendAppMessage(opt, callback, true); } else { typeof callback === 'function' && callback(res); } }); } function shareTimeline(opt, callback) { var forceFallback = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var jsapiName = canUsePrivateShare && !forceFallback ? 'shareTimelinePrivate' : 'shareTimeline'; console.log('[share] try to share:', jsapiName, opt, forceFallback); Log.info("[share] try to share: ".concat(jsapiName, " ").concat(JSON.stringify(opt), " forceFallback:").concat(forceFallback)); R$4.invoke(jsapiName, opt, function (res) { console.log('[share] try to share res:', res, jsapiName, opt, forceFallback); if (!(res && res.err_msg && (res.err_msg.indexOf(':ok') !== -1 || res.err_msg.indexOf('cancel') !== -1)) && canUsePrivateShare && !forceFallback) { shareTimeline(opt, callback, true); } else { typeof callback === 'function' && callback(res); } }); } var e = { d: function d(t, r) { for (var i in r) e.o(r, i) && !e.o(t, i) && Object.defineProperty(t, i, { enumerable: !0, get: r[i] }); }, o: function o(e, t) { return Object.prototype.hasOwnProperty.call(e, t); } }, t = {}; e.d(t, { A: function A() { return s$1; }, Q: function Q() { return a$2; } }); var r$3 = function r(e, t) { var r = {}; for (var i in e) Object.prototype.hasOwnProperty.call(e, i) && t.indexOf(i) 2 && arguments[2] !== undefined ? arguments[2] : {}; var _a, _b; var openUrlWithExtraWebview = function openUrlWithExtraWebview() { R$4.invoke('openUrlWithExtraWebview', { url: url, 'openType': 1 }, function (res) { var _a; if (((_a = res.err_msg) === null || _a === void 0 ? void 0 : _a.indexOf('ok')) === -1) { if (newWin === true) { window.parent.open(url); } else { window.parent.location.href = url; } } }); }; if (!g.inWechat) { if (newWin === true) { window.open(url); } else { location.href = url; } } else { R$4.invoke('openWebViewUseFastLoad', { url: url, item_show_type: (_b = (_a = opt.itemShowType) !== null && _a !== void 0 ? _a : window.item_show_type * 1) !== null && _b !== void 0 ? _b : 0, openType: 0, scene: 1 }, function (res) { if (res && res.err_msg && res.err_msg.indexOf('ok') === -1) { openUrlWithExtraWebview(); } }); } }; var closeWin = function closeWin() { if (!g.inWechat || g.windowWechat || g.macWechat) { window.close(); } else { R$4.invoke('closeWindow', function (res) { if (res.err_msg.indexOf('ok') == -1) { window.close(); } }); } }; function setTwoTabHeight(id) { if (window.hasChannelTwoTab && utils.isNewNativePage()) { var scrollHeight; scrollHeight = document.getElementById('tab').offsetTop - window.__minHeight; var bodyHeight = document.body.offsetHeight; var minMountHeight = pageHeight + scrollHeight; if (bodyHeight 1 && arguments[1] !== undefined ? arguments[1] : {}; if (shareSource === 'album') { var postData = { bizuin: window.biz, url: "".concat(opt.url), ActionType: opt.actionType * 1, Scene: window.source * 1, Network: "".concat(window.__networkType), AlbumId: "".concat(opt.albumId), AlbumType: opt.albumType * 1, ExpType: window.exptype || '', EnterId: window.enterid || '', SessionId: window.sessionid || '', ExpSessionIdStr: window.expsessionid || '', RecReqID: Url.getQuery('req_id') * 1 || 0 }; w$5.report(10380, postData, { success: function success(res) { if (res.err_code * 1 !== 0) { if (typeof WX_BJ_REPORT !== 'undefined' && window.WX_BJ_REPORT.BadJs) { window.WX_BJ_REPORT.BadJs.report('mmdata report failed', 'log_id: 10380', { mid: 'mmbizwap:album_Monitor', _info: { postData: postData, errCode: res.err_code, errMsg: res.err_msg } }); } } } }); } }; var getByClass = function getByClass(className, el) { return (el || document).getElementsByClassName(className); }; var trim = function trim(str) { return "".concat(str || '').replace(/^\s+|\s+$/g, ''); }; var qs = function qs(selector, el) { return (el || document).querySelector(selector); }; var qsAll = function qsAll(selector, el) { return (el || document).querySelectorAll(selector); }; var changeURLArg = function changeURLArg(url, arg, argVal) { var pattern = new RegExp("".concat(arg, "=[^&]*"), 'gi'); var replaceText = "".concat(arg, "=").concat(argVal); if (pattern.test(url)) return url.replace(pattern, replaceText); return url.replace(/(#.*)?$/, "".concat(url.indexOf('?') > -1 ? '&' : '?').concat(replaceText, "$1")); }; function getNetWorkType() { DomEvent.on(window, 'load', function () { if (!window.__networkType && g.inWechat) { var nettypeMap = { 'network_type:fail': 'fail', 'network_type:edge': '2g/3g', 'network_type:wwan': '2g/3g', 'network_type:wifi': 'wifi' }; R$4.invoke('getNetworkType', {}, function (res) { window.__networkType = nettypeMap[res.err_msg]; }); } }, false); } var sceneType = [1, 24, 2, 3, 43, 22, 23, 5]; function shareMessage() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var shareOpt = { appId: opt.appId, img_url: opt.img_url, img_width: opt.img_width, img_height: opt.img_height, link: opt.link.replace(//g, '\n'), desc: opt.desc.replace(//g, '\n'), title: opt.title }; getNetWorkType(); if (!/#wechat_redirect/.test(shareOpt.link)) { shareOpt.link += '#wechat_redirect'; } var shareSource = ''; var reportData = { url: shareOpt.link, actionType: 0 }; var shareReportCallback = shareReport; if (opt.isAlbum) { shareSource = 'album'; shareOpt = Object.assign({ album_id: opt.album_id, album_type: opt.album_type }, shareOpt); reportData = Object.assign({ albumId: opt.album_id, albumType: opt.album_type }, reportData); } else if (typeof opt.shareReport === 'function') { shareReportCallback = function shareReportCallback(shareSource, reportData) { return opt.shareReport(reportData.actionType); }; } R$4.on('menu:share:appmessage', function (argv) { var actionType; if (!!argv && argv.scene === 'favorite') { actionType = 24; shareOpt.link = changeURLArg(shareOpt.link, 'scene', sceneType[1]); } else { actionType = 1; shareOpt.link = changeURLArg(shareOpt.link, 'scene', sceneType[0]); } if (typeof opt.beforeShare === 'function') { try { shareOpt = opt.beforeShare('menu:share:appmessage', shareOpt) || shareOpt; } catch (e) { } } reportData.url = shareOpt.link; reportData.actionType = actionType; shareReportCallback(shareSource, reportData); sendAppMessage(shareOpt); }); R$4.on('menu:share:timeline', function () { shareOpt.link = changeURLArg(shareOpt.link, 'scene', sceneType[2]); reportData.url = shareOpt.link; reportData.actionType = 2; if (typeof opt.beforeShare === 'function') { try { shareOpt = opt.beforeShare('menu:share:timeline', shareOpt) || shareOpt; } catch (e) { } } shareReportCallback(shareSource, reportData); shareTimeline(shareOpt); }); R$4.on('menu:share:weiboApp', function () { shareOpt.link = changeURLArg(shareOpt.link, 'scene', sceneType[3]); reportData.url = shareOpt.link; reportData.actionType = 3; if (typeof opt.beforeShare === 'function') { try { shareOpt = opt.beforeShare('menu:share:weiboApp', shareOpt) || shareOpt; } catch (e) { } } shareReportCallback(shareSource, reportData); R$4.invoke('shareWeiboApp', { img_url: shareOpt.img_url, link: shareOpt.link, title: shareOpt.title }); }); R$4.on('menu:share:facebook', function () { shareOpt.link = changeURLArg(shareOpt.link, 'scene', sceneType[4]); reportData.url = shareOpt.link; reportData.actionType = 7; if (typeof opt.beforeShare === 'function') { try { shareOpt = opt.beforeShare('menu:share:facebook', shareOpt) || shareOpt; } catch (e) { } } shareReportCallback(shareSource, reportData); R$4.invoke('shareFB', shareOpt); }); R$4.on('menu:share:QZone', function () { shareOpt.link = changeURLArg(shareOpt.link, 'scene', sceneType[5]); reportData.url = shareOpt.link; reportData.actionType = 5; if (typeof opt.beforeShare === 'function') { try { shareOpt = opt.beforeShare('menu:share:QZone', shareOpt) || shareOpt; } catch (e) { } } shareReportCallback(shareSource, reportData); R$4.invoke('shareQZone', shareOpt); }); R$4.on('menu:share:qq', function () { shareOpt.link = changeURLArg(shareOpt.link, 'scene', sceneType[6]); reportData.url = shareOpt.link; reportData.actionType = 5; if (typeof opt.beforeShare === 'function') { try { shareOpt = opt.beforeShare('menu:share:qq', shareOpt) || shareOpt; } catch (e) { } } shareReportCallback(shareSource, reportData); R$4.invoke('shareQQ', shareOpt); }); R$4.on('menu:share:email', function () { shareOpt.link = changeURLArg(shareOpt.link, 'scene', sceneType[7]); reportData.url = shareOpt.link; reportData.actionType = 5; if (typeof opt.beforeShare === 'function') { try { shareOpt = opt.beforeShare('menu:share:email', shareOpt) || shareOpt; } catch (e) { } } shareReportCallback(shareSource, reportData); R$4.invoke('sendEmail', { content: shareOpt.link, title: shareOpt.title }); }); } function getQuery(strName) { var strHref = window.location.href; var intPos = strHref.indexOf('?'); var strRight = strHref.substr(intPos + 1); var arrTmp = strRight.split('&'); for (var i = 0; i 0 && arguments[0] !== undefined ? arguments[0] : {}; var jsapiInvokeOpts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; var cb = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : function () {}; var bizAccountStatus = arguments.length > 3 ? arguments[3] : undefined; jsapiInvokeOpts.extra = JSON.stringify({ pageItemShowType: window.item_show_type }); var callProfileJSAPI = function callProfileJSAPI() { var _a, _b; if ((jsapiInvokeOpts.servicetype * 1 === 5 || ((_b = (_a = jsapiInvokeOpts.username) === null || _a === void 0 ? void 0 : _a.startsWith) === null || _b === void 0 ? void 0 : _b.call(_a, 'phacct_'))) && !supportPhotoAccounts(false)) { if (photoAccountsEnableProfileExt()) { R$4.invoke('openUrlWithExtraWebview', { url: "https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=".concat(urlOpts.biz, "#wechat_redirect"), openType: 1 }, cb); } else { supportPhotoAccounts(); } return; } else { R$4.invoke('profile', jsapiInvokeOpts, cb); } }; if (MMVersion.isWxWork) { wxWorkJSAPI(); } else if (MMVersion.isDonutAPP) { callProfileJSAPI(); } else if (!MMVersion.isWechat) { window.weui.alert('请在微信内打开'); } else if (bizAccountStatus === 1 || bizAccountStatus === 5) { openUrl.openUrlWithExtraWebview("https://mp.weixin.qq.com/mp/getprofiletransferpage?__biz=".concat(urlOpts.biz, "#wechat_redirect")); } else if (MMVersion.isWechat && (MMVersion.isIOS || MMVersion.isAndroid || MMVersion.isHarmony || MMVersion.isWindows && MMVersion.cpVersion('3.4.5', 1, true, 'windows') || MMVersion.isMacWechat && MMVersion.cpVersion('3.5.0', 1, true, 'mac') || Device.os.unifiedPC)) { callProfileJSAPI(); } else { location.href = "/mp/profile_ext?action=home&__biz=".concat(urlOpts.biz, "&scene=").concat(urlOpts.scene, "#wechat_redirect"); } } function prepareNativePage(list, attr) { R$4.invoke('createWebViewForFastLoad', { scene: 1 }, function (res) { list.forEach(function (item) { R$4.invoke('downloadPageDataForFastLoad', { itemList: [{ item_show_type: 5, url: item[attr] }] }, function (res) { console.log(res); }); }); }); } function debounce(func, wait) { var immediate = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var timeout; return function () { var context = this; var args = arguments; var later = function later() { timeout = null; if (!immediate) func.apply(context, args); }; var callNow = immediate && !timeout; clearTimeout(timeout); timeout = setTimeout(later, wait); if (callNow) func.apply(context, args); }; } function formatSeconds(value) { var second = parseInt(value, 10); var middle = 0; var hour = 0; if (second > 60) { middle = parseInt(second / 60, 10); second = parseInt(second % 60, 10); if (middle > 60) { hour = parseInt(middle / 60, 10); middle = parseInt(middle % 60, 10); } } if (second 0) { if (middle 0) { if (parseInt(hour, 10) === 0) { hour = ''; } else { if (hour 100000) { result = 10 + '万+'; } else if (parseInt(value, 10) > 10000 && parseInt(value, 10) 0 ? bodyScrollTop : documentScrollTop; return scrollTop; } function getScrollHeight() { var scrollHeight = 0; var bSH; var dSH; if (document.body) { bSH = document.body.scrollHeight; } if (document.documentElement) { dSH = document.documentElement.scrollHeight; } scrollHeight = bSH - dSH > 0 ? bSH : dSH; return scrollHeight; } function getWindowHeight() { var windowHeight = 0; if (document.compatMode === 'CSS1Compat') { windowHeight = document.documentElement.clientHeight; } else { windowHeight = document.body.clientHeight; } return windowHeight; } function openAllVideoPage() { var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var url = "".concat(location.origin, "/mp/profile_ext?action=home&real_type=43&__biz=").concat(opts.biz, "&scene=").concat(opts.scene, "#wechat_redirect"); jumpUrl(url, true); } function openAlbumPage() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var url = "".concat(opt.albumLink.replace('#wechat_redirect', ''), "&scene=").concat(opt.scene, "&is_first_screen=1&subscene=").concat(opt.subscene, "&vid=").concat(opt.vid, "&count=").concat(opt.pageCount ? opt.pageCount : 3, "&from_msgid=").concat(opt.curMsgid ? opt.curMsgid : '', "&from_itemidx=").concat(opt.curItemidx ? opt.curItemidx : '', "&scenenote=").concat(opt.scenenote, "#wechat_redirect"); jumpUrl(url, true); } function getElementTop(element) { return element.getBoundingClientRect().top; } function getElementHeight(element) { return element.getBoundingClientRect().height; } function isPageEnd() { return getScrollTop() + getWindowHeight() + 30 >= getScrollHeight(); } function getMoreVideoInfo(url, vid) { return "".concat(Url.getQuery('__biz', url), "_").concat(Url.getQuery('mid', url), "_").concat(Url.getQuery('idx', url), "_").concat(vid); } function formatAlbumnReadNum(readNum, magnitude) { var isEn = window.LANG === 'en'; var unit = isEn ? 'k' : '万'; var readNumWording = ''; var magnit = magnitude * 10000; var magnitShow = isEn ? magnitude * 10 : magnitude; readNum = parseInt(readNum, 10); if (readNum > magnit) { readNumWording = "".concat(magnitShow + unit, "+"); } else if (readNum >= 10000 && readNum 1 && arguments[1] !== undefined ? arguments[1] : 0.5; var direction = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'vertical'; var container = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : window; if (!el) return false; var isExposed = false; var verticalRatio = 0; var horizontalRatio = 0; var checkVertical = false; var checkHorizontal = false; var containerWidth = container === container.window ? pageWidth : container.getBoundingClientRect().width; var containerHeight = container === container.window ? pageHeight : container.getBoundingClientRect().height; if (typeof ratio === 'number') { verticalRatio = ratio; horizontalRatio = ratio; } else { verticalRatio = ratio.vertical; horizontalRatio = ratio.horizontal; } switch (direction) { case 'vertical': checkVertical = true; break; case 'horizontal': checkHorizontal = true; break; case 'all': checkVertical = true; checkHorizontal = true; break; } var rect = el.getBoundingClientRect(); if (checkVertical) { var offsetHeight = rect.height * verticalRatio; if (rect.bottom > offsetHeight && rect.top offsetWidth && rect.left 1 && arguments[1] !== undefined ? arguments[1] : {}; var type = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'webview'; if (!url) return; if (!/^http/.test(url)) url = "".concat(location.protocol, "//").concat(location.host).concat(url); var paramsStr = (url.indexOf('?') === -1 ? '?' : '&') + Object.keys(params).map(function (key) { return "".concat(key, "=").concat(params[key]); }).join('&'); var hashIdx = url.indexOf('#'); if (hashIdx === -1) { url += "".concat(paramsStr, "#wechat_redirect"); } else { url = url.slice(0, hashIdx) + paramsStr + url.slice(hashIdx); } switch (type) { case 'webview': if (navigator.userAgent.indexOf('MicroMessenger') !== -1 && (MMVersion.isIOS || MMVersion.isAndroid || MMVersion.isWp)) { R$4.invoke('openUrlWithExtraWebview', { url: url, openType: 1 }, function (res) { if (res.err_msg.indexOf('ok') === -1) { location.href = url; } }); } else { window.open(url); } break; case 'href': default: location.href = url; } }; var getUrlParamsMap = function getUrlParamsMap(url) { if (!url || !url.length) return {}; var paramStart = url.indexOf('?'); var paramMap = {}; if (paramStart > -1) { url.slice(paramStart + 1, url.indexOf('#') > -1 ? url.indexOf('#') : undefined).split('&').forEach(function (param) { if (param) { var valueStart = param.indexOf('='); if (valueStart > -1) { paramMap[param.slice(0, valueStart)] = param.slice(valueStart + 1); } else { paramMap[param] = ''; } } }); } return paramMap; }; var numFormat2Unit = function numFormat2Unit() { var num = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0; var radix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1; if (typeof num !== 'number' || typeof radix !== 'number') throw new Error("".concat(num, " and ").concat(radix, " should be a number.")); var param = { value: 0, unit: '' }; var limit = 10000; var units = ['', '万', '亿', '万亿']; var factor = 0; if (window.LANG === 'en') { limit = 1000; units = ['', 'k', 'm', 'b']; } if (num 1 && arguments[1] !== undefined ? arguments[1] : 2; for (var i = 0, len = size - "".concat(v).length; i 1) { var _t2 = window.parseInt(dayDiff); wording = _t2 + '天前'; } } return wording; } function goSouyisou(jsapiOpt) { var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'openWXSearchPage'; var cb = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : function () {}; jsapiOpt.thirdExtParam = Object.assign(jsapiOpt.thirdExtParam || {}, { mp_bizuin_msgid_msgidx: "".concat(atob(window.biz), "_").concat(window.mid, "_").concat(window.idx), aiH5Link: location.href, aiH5Title: window.msg_title }); jsapiOpt.thirdExtParam = encodeURIComponent(JSON.stringify(jsapiOpt.thirdExtParam)); Object.assign(jsapiOpt, m(jsapiOpt)); if (MMVersion.isWechat) { R$4.invoke(type, jsapiOpt, cb); } } function searchWordToSouyisou(query, contextInfo, statInfo) { var options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : { useHalfPage: false, halfPageParam: {}, thirdExtParam: {} }; var halfPageParam = options.halfPageParam || {}; var useHalfPage = options.useHalfPage || false; var params = Object.assign(Object.assign({ query: query }, halfPageParam), { thirdExtParam: Object.assign({ s1sKeywordsData: Object.assign({ s1sContextInfo: contextInfo, s1sStatInfo: statInfo }, options.postype !== undefined && { postype: options.postype }) }, options.thirdExtParam) }); if (useHalfPage) { goSouyisou(params, 'openWXSearchHalfPage'); } else { goSouyisou(params); } } var setPubTimeNew = function setPubTimeNew(svrTime, oriCreateTime) { var withoutZero = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var oriTimestamp = oriCreateTime * 1; var dateObj = new Date(oriTimestamp * 1000); var now = new Date(svrTime * 1000); var padStart = function padStart(v) { return "0".concat(v).slice(-2); }; var year = dateObj.getFullYear(); var month = withoutZero ? dateObj.getMonth() + 1 : padStart(dateObj.getMonth() + 1); var date = withoutZero ? dateObj.getDate() : padStart(dateObj.getDate()); var hour = padStart(dateObj.getHours()); var minute = padStart(dateObj.getMinutes()); var diffMs = now - dateObj; var diffMinutes = Math.floor(diffMs / (1000 * 60)); var today = new Date(now); today.setHours(0, 0, 0, 0); var yesterday = new Date(today); yesterday.setDate(yesterday.getDate() - 1); var yearStart = new Date(now.getFullYear(), 0, 1); var showDate = ''; if (dateObj >= today) { if (diffMinutes = yesterday) { showDate = "\u6628\u5929".concat(hour, ":").concat(minute); } else if (dateObj >= yearStart) { showDate = "".concat(parseInt(month, 10), "\u6708").concat(parseInt(date, 10), "\u65E5").concat(hour, ":").concat(minute); } else { showDate = "".concat(year, "\u5E74").concat(parseInt(month, 10), "\u6708").concat(parseInt(date, 10), "\u65E5").concat(hour, ":").concat(minute); } return showDate; }; function formatDate(ts) { var now = new Date().getTime(); var diff = now / 1000 - ts; var year = new Date().getFullYear(); var sDate = new Date(ts * 1000); var res = ''; if (diff 1; }; var A = { jumpUrl: jumpUrl, closeWin: closeWin, trim: trim, getId: getId, qs: qs, qsAll: qsAll, inWechat: g.inWechat, windowWechat: g.windowWechat, macWechat: g.macWechat, getParam: getParam, getParams: getParams, genUrl: genUrl, prepareNativePage: prepareNativePage, debounce: debounce, throttle: throttle, formatReadNum: formatReadNum, formatSeconds: formatSeconds, formatTimeToMinute: formatTimeToMinute, setTwoTabHeight: setTwoTabHeight, getByClass: getByClass, getScrollTop: getScrollTop, getScrollHeight: getScrollHeight, getWindowHeight: getWindowHeight, shareMessage: shareMessage, getElementTop: getElementTop, formatAlbumnReadNum: formatAlbumnReadNum, getElementHeight: getElementHeight, getQuery: getQuery, openAllVideoPage: openAllVideoPage, getNetWorkType: getNetWorkType, getMoreVideoInfo: getMoreVideoInfo, isPageEnd: isPageEnd, openAlbumPage: openAlbumPage, checkExposedStatus: checkExposedStatus, isParent: isParent, goUrl: goUrl, changeURLArg: changeURLArg, getUrlParamsMap: getUrlParamsMap, numFormat2Unit: numFormat2Unit, goProfile: goProfile, getDefaultFontSize: getDefaultFontSize, enableSelect: enableSelect, disableSelect: disableSelect, formatTime: formatTime, goSouyisou: goSouyisou, searchWordToSouyisou: searchWordToSouyisou, setPubTimeNew: setPubTimeNew, formatDate: formatDate, calLanguageRatio: calLanguageRatio }; var html = function html(_str, encode) { var replace = ['`', '`', ''', '\'', '"', '"', ' ', ' ', '>', '>', '<', '']; var replaceReverse = ['&', '&', '¥', '¥', '', '>', ' ', ' ', '"', '"', '\'', ''', '`', '`']; var str = _str; var target; if (encode) { target = replaceReverse; } else { target = replace; } for (var i = 0; i 1 && arguments[1] !== undefined ? arguments[1] : {}; var i = o$6.call(this, u); return i.articleData = JSON.parse(i.articleData || "{}"), _objectSpread$2({ platform: E, extraInfo: e }, i); } function c() { var E = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; H$3(Object.assign(E, { Component: C$1, styleText: E.isDev ? E.devStyleText : I$1, customName: E.customName || "mp-common-article", watchAttr: Object.values(u), getProps: O$1 })); } var arrayLikeToArray = arrayLikeToArray$2; function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return arrayLikeToArray(arr); } var arrayWithoutHoles$1 = _arrayWithoutHoles; function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter); } var iterableToArray$1 = _iterableToArray; function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var nonIterableSpread$1 = _nonIterableSpread; var arrayWithoutHoles = arrayWithoutHoles$1; var iterableToArray = iterableToArray$1; var unsupportedIterableToArray = unsupportedIterableToArray$2; var nonIterableSpread = nonIterableSpread$1; function _toConsumableArray(arr) { return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread(); } var toConsumableArray = _toConsumableArray; var r$1 = function r(e) { o__default["default"].config.silent || console.warn(e); }; var i = { name: "intersect", "abstract": !0, props: { threshold: { type: Array, required: !1, "default": function _default() { return [0, 0.2]; } }, root: { type: (typeof HTMLElement === "undefined" ? "undefined" : _typeof$2(HTMLElement)) 1) r$1("[VueIntersect] You may only wrap one element in a component.");else if (!e.$slots["default"] || e.$slots["default"].length component."); return; } e.observer.observe(e.$slots["default"][0].elm); }); }, destroyed: function destroyed() { this.$emit("destroyed"), this.observer.disconnect(); }, render: function render() { return this.$slots["default"] ? this.$slots["default"][0] : null; } }; function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread$1(e) { for (var r = 1; r 1 && arguments[1] !== undefined ? arguments[1] : {}; var i = o$6.call(this, F$1); return i.gameprofileData = JSON.parse(i.gameprofileData || "{}"), _objectSpread$1({ platform: E, extraInfo: e }, i); } function K() { var E = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; H$3(Object.assign(E, { Component: H, styleText: E.isDev ? E.devStyleText : s, customName: E.customName || "mp-common-gameprofile", watchAttr: Object.values(F$1), getProps: p })); } function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread(e) { for (var r = 1; r 1 && arguments[1] !== undefined ? arguments[1] : {}; var E = o$6.call(this, G); return E.readData = JSON.parse(E.readData || "{}"), _objectSpread({ platform: i, extraInfo: e }, E); } function d() { var i = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; H$3(Object.assign(i, { Component: I, styleText: i.isDev ? i.devStyleText : O, customName: i.customName || "mp-common-read", watchAttr: Object.values(G), getProps: b })); } var isWp = MMVersion.isWp, isIOS = MMVersion.isIOS, isAndroid = MMVersion.isAndroid, isInMiniProgram = MMVersion.isInMiniProgram, isWechat = MMVersion.isWechat, isMac = MMVersion.isMac, isWindows = MMVersion.isWindows, isMacWechat = MMVersion.isMacWechat, isWindowsWechat = MMVersion.isWindowsWechat, isWxWork = MMVersion.isWxWork, isMpapp = MMVersion.isMpapp, isIPad = MMVersion.isIPad; var commonCompOpts = { platform: 'wechat', extraInfo: { system: { isWp: isWp, isIOS: isIOS, isAndroid: isAndroid, isInMiniProgram: isInMiniProgram, isWechat: isWechat, isMac: isMac, isWindows: isWindows, isMacWechat: isMacWechat, isWindowsWechat: isWindowsWechat, isWxWork: isWxWork, isMpapp: isMpapp, isIPad: isIPad }, device: Device.os }, beforeRender: function beforeRender(data) { pageClsCtrl.renderCompSilentlyPreHandler(data); }, afterRender: function afterRender(data) { pageClsCtrl.renderCompSilently(data); } }; var allRegisterdTags = []; function initOpts() { var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; if (opts.selector) { var selectors = opts.selector.split(','); allRegisterdTags.push.apply(allRegisterdTags, _toConsumableArray$1(selectors)); } return Object.assign(opts, commonCompOpts); } if (!customElements.get('mp-common-product')) { ft(initOpts({ reflowProps: ['customstyle'] })); } if (!customElements.get('mp-common-redpacket')) { b$4(initOpts({ selector: 'mp-common-redpacket' })); } if (!customElements.get('mp-common-bluepacket')) { Y(initOpts({ selector: 'mp-common-bluepacket' })); } if (!customElements.get('mp-common-blockquote')) { c$3(initOpts({ selector: 'mp-common-blockquote' })); } if (!customElements.get('mp-common-shopprofile')) { aA(initOpts({ selector: 'mp-common-shopprofile' })); } if (!customElements.get('mp-common-shoptag')) { Ze(initOpts({ selector: 'mp-common-shoptag' })); } if (!customElements.get('mp-common-article')) { c(initOpts({ selector: 'mp-common-article' })); } if (!customElements.get('mp-common-miniprogram')) { h(initOpts({ selector: 'mp-common-miniprogram' })); } if (!customElements.get('mp-common-read')) { d(initOpts({ selector: 'mp-common-read' })); } if (!customElements.get('mp-common-gameprofile')) { K(initOpts({ selector: 'mp-common-gameprofile' })); } if (window.__listenMobileClick__) { window.__listenMobileClick__(allRegisterdTags); } else { window.__listenMobileClick__task__ = window.__listenMobileClick__task__ || []; window.__listenMobileClick__task__.push(allRegisterdTags); } function AppmsgInline(data, tempContent) { setImmersiveMode(data.item_show_type); setRowImmersiveMode(data.item_show_type); __setIpWording(data.ip_wording, data.user_info, data.item_show_type); __setTitleModify(data.is_title_modified); __setTitle(data.title, +data.item_show_type); __setNovelCard(data.appmsgalbuminfo, data.user_info, parseInt(data.user_uin || '0', 10)); setProfileName(); setMaskNode(data, tempContent); } if (!window.__second_open__) { AppmsgInline(window.cgiDataNew, document.getElementById('js_content')); } exports.AppmsgInline = AppmsgInline; Object.defineProperty(exports, '__esModule', { value: true }); return exports; })({}, Vue);var __INLINE_SCRIPT__ = (function () { 'use strict'; var _Speed = {}; var _userDefine; var _imgurl = 'https://badjs.weixinbridge.com/frontend/reportspeed?'; function saveSpeeds$1(obj) { if (!obj.pid || !obj.speeds) { return -1; } if (!Array.isArray(obj.speeds)) { obj.speeds = [obj.speeds]; } if (obj.user_define) { _userDefine = obj.user_define; } var pid_uin_rid = _conbinUPRid(obj); for (var i = 0; i 20 && os.time >= 0) _setSidTime(pid_uin_rid, os.sid, os.time); } } function send$1() { _doFunc(function () { setTimeout(function () { for (var item in _Speed) { _get({ pid_uin_rid: item, speeds: _Speed[item], user_define: _userDefine }, _imgurl); } _Speed = {}; }, 100); }); } function setFirstViewTime(obj) { _doFunc(function () { if (!obj.pid || !obj.time) return -1; var pid_uin_rid = _conbinUPRid(obj); _setSidTime(pid_uin_rid, 9, obj.time); }); } function setBasicTime$1(obj) { _doFunc(function () { var pid_uin_rid = _conbinUPRid(obj); if (!_Speed[pid_uin_rid]) _Speed[pid_uin_rid] = []; var performance = window.performance || window.msPerformance || window.webkitPerformance || {}; if (!!performance && !!performance.timing) { var timing = performance.timing || {}; _setSidTime(pid_uin_rid, 1, timing.domainLookupEnd - timing.domainLookupStart); _setSidTime(pid_uin_rid, 2, location.protocol == "https:" && timing.secureConnectionStart != 0 ? timing.connectEnd - timing.secureConnectionStart : 0); _setSidTime(pid_uin_rid, 3, timing.connectEnd - timing.connectStart); _setSidTime(pid_uin_rid, 4, timing.responseStart - timing.requestStart); _setSidTime(pid_uin_rid, 5, timing.responseEnd - timing.responseStart); _setSidTime(pid_uin_rid, 6, timing.domContentLoadedEventStart - timing.domLoading); _setSidTime(pid_uin_rid, 7, timing.domComplete == 0 ? 0 : timing.domComplete - timing.domLoading); _setSidTime(pid_uin_rid, 8, timing.loadEventEnd == 0 ? 0 : timing.loadEventEnd - timing.loadEventStart); (function (_Speed) { setTimeout(function () { if (timing.loadEventEnd) { _setSidTime(pid_uin_rid, 7, timing.domComplete == 0 ? 0 : timing.domComplete - timing.domLoading); _setSidTime(pid_uin_rid, 8, timing.loadEventEnd == 0 ? 0 : timing.loadEventEnd - timing.loadEventStart); } }, 0); })(); if (!_Speed[pid_uin_rid][9]) _setSidTime(pid_uin_rid, 9, timing.domContentLoadedEventStart - timing.navigationStart); _setSidTime(pid_uin_rid, 10, timing.redirectEnd - timing.redirectStart); _setSidTime(pid_uin_rid, 11, timing.domainLookupStart - timing.fetchStart); _setSidTime(pid_uin_rid, 12, timing.domLoading - timing.responseStart); } }); } function _setSidTime(pid_uin_rid, sid, time) { _Speed[pid_uin_rid] = _Speed[pid_uin_rid] || []; _Speed[pid_uin_rid][sid] = _Speed[pid_uin_rid][sid] || []; if (time = 0) continue; target[key] = source[key]; } return target; } function formatDataToString(data) { var reportData = []; for (var key in data) { if (Object.prototype.hasOwnProperty.call(data, key)) { reportData.push(key + '=' + encodeURIComponent(data[key])); } } return reportData.join('&'); } monitor.getReportData = function (opt) { opt = opt || {}; var idkey = monitor._reportOptions.idkey || {}; var key = null; var reportData = {}; var nextKey; try { for (key in idkey) { if (Object.prototype.hasOwnProperty.call(idkey, key) && idkey[key]) { reportLogs.push(key + '_' + idkey[key]); } } } catch (e) { return false; } if (reportLogs.length === 0) { return false; } if (reportExtraLogs.length) { reportData.lc = reportExtraLogs.length; reportExtraLogs.forEach(function (extraLog, index) { reportData["log".concat(index)] = extraLog; }); } try { var reportOptions = monitor._reportOptions; if (reportOptions !== null && reportOptions !== undefined) { for (nextKey in reportOptions) { if (Object.prototype.hasOwnProperty.call(reportOptions, nextKey)) { reportData[nextKey] = reportOptions[nextKey]; } } } } catch (e) { reportData = {}; } reportData.idkey = reportLogs.join(';'); reportData.t = Math.random(); if (opt.remove !== false) { reportLogs = []; reportExtraLogs = []; monitor._reportOptions = { idkey: {} }; } return reportData; }; monitor.setLogs = function (opt) { var id = opt.id; var key = opt.key; var value = opt.value; var extraLog = opt.log; var others = ObjWithoutProperty(opt, ['id', 'key', 'value', 'log']); var idkey = monitor._reportOptions.idkey || {}; var param = id + '_' + key; if (idkey[param]) { idkey[param] += value; } else { idkey[param] = value; } monitor._reportOptions.idkey = idkey; if (extraLog) { reportExtraLogs.push(extraLog); } try { if (others !== null && others !== undefined) { for (var otherKey in others) { if (Object.prototype.hasOwnProperty.call(others, otherKey)) { monitor._reportOptions[otherKey] = others[otherKey]; } } } } catch (e) { console.log(e); } return monitor; }; monitor.setAvg = function (id, key, value) { var idkey = monitor._reportOptions.idkey || {}; var param1 = id + '_' + key; var param2 = id + '_' + (key - 1); if (idkey[param1]) { idkey[param1] += value; } else { idkey[param1] = value; } if (idkey[param2]) { idkey[param2] += 1; } else { idkey[param2] = 1; } monitor._reportOptions.idkey = idkey; return monitor; }; monitor.setSum = function (id, key) { var value = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1; var idkey = monitor._reportOptions.idkey; var param = id + '_' + key; if (idkey[param]) { idkey[param] += value; } else { idkey[param] = value; } monitor._reportOptions.idkey = idkey; return monitor; }; monitor.send = function (async, ajax, origin) { if (async !== false) { async = true; } var data = monitor.getReportData(); origin = origin || ''; if (!data) { return; } if (!!ajax && ajax instanceof Function) { ajax({ url: origin + sendUrl, type: 'POST', mayAbort: true, data: data, async: async, timeout: 2000, dontReport: true }); } else { new Image().src = origin + '/mp/jsmonitor?' + formatDataToString(data) + '#wechat_redirect'; } }; if (typeof window !== 'undefined' && window.__monitor) { monitor = window.__monitor; } else { typeof window !== 'undefined' && (window.__monitor = monitor); } var monitor$1 = monitor; function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } var Device = {}; function detect(ua) { var MQQBrowser = ua.match(/MQQBrowser\/(\d+\.\d+)/i); var MQQClient = ua.match(/QQ\/(\d+\.(\d+)\.(\d+)\.(\d+))/i) || ua.match(/V1_AND_SQ_([\d\.]+)/); var WeChat = ua.match(/MicroMessenger\/((\d+)\.(\d+))\.(\d+)/) || ua.match(/MicroMessenger\/((\d+)\.(\d+))/); var MacOS = ua.match(/Mac\sOS\sX\s(\d+[\.|_]\d+)/); var WinOS = ua.match(/Windows(\s+\w+)?\s+?(\d+\.\d+)/); var Linux = ua.match(/Linux\s/); var MiuiBrowser = ua.match(/MiuiBrowser\/(\d+\.\d+)/i); var M1 = ua.match(/MI-ONE/); var MIPAD = ua.match(/MI PAD/); var UC = ua.match(/UCBrowser\/(\d+\.\d+(\.\d+\.\d+)?)/) || ua.match(/\sUC\s/); var IEMobile = ua.match(/IEMobile(\/|\s+)(\d+\.\d+)/) || ua.match(/WPDesktop/); var ipod = ua.match(/(ipod).*\s([\d_]+)/i); var ipad = ua.match(/(ipad).*\s([\d_]+)/i); var iphone = ua.match(/(iphone)\sos\s([\d_]+)/i); var Chrome = ua.match(/Chrome\/(\d+\.\d+)/); var AndriodBrowser = ua.match(/Mozilla.*Linux.*Android.*AppleWebKit.*Mobile Safari/); var android = ua.match(/(android)\s([\d\.]+)/i); var harmony = ua.match(/(OpenHarmony)\s([\d\.]+)/i); Device.browser = Device.browser || {}, Device.os = Device.os || {}; Device.os.type = -1; Device.os.unifiedPC = ua.match(/UnifiedPC/); Device.os.unifiedMac = /UnifiedPCMac/i.test(ua); Device.os.unifiedWindows = /UnifiedPCWindows/i.test(ua); if (window.ActiveXObject) { var vie = 6; (window.XMLHttpRequest || ua.indexOf('MSIE 7.0') > -1) && (vie = 7); (window.XDomainRequest || ua.indexOf('Trident/4.0') > -1) && (vie = 8); ua.indexOf('Trident/5.0') > -1 && (vie = 9); ua.indexOf('Trident/6.0') > -1 && (vie = 10); Device.browser.ie = true, Device.browser.version = vie; } else if (ua.indexOf('Trident/7.0') > -1) { Device.browser.ie = true, Device.browser.version = 11; } if (android) { Device.os.android = true; Device.os.version = android[2]; Device.os.type = 2; } if (harmony) { Device.os.harmony = true; Device.os.version = harmony[2]; Device.os.type = 42; } if (ipod) { Device.os.ios = Device.os.ipod = true; Device.os.version = ipod[2].replace(/_/g, '.'); } if (ipad) { Device.os.ios = Device.os.ipad = true; Device.os.version = ipad[2].replace(/_/g, '.'); Device.os.type = 13; } if (iphone) { Device.os.iphone = Device.os.ios = true; Device.os.version = iphone[2].replace(/_/g, '.'); Device.os.type = 1; } if (WinOS) Device.os.windows = true, Device.os.version = WinOS[2], Device.os.type = 15; if (MacOS) Device.os.Mac = true, Device.os.version = MacOS[1], Device.os.type = 14; if (Linux) Device.os.Linux = true, Device.os.type = 33; if (ua.indexOf('lepad_hls') > 0) Device.os.LePad = true; if (MIPAD) Device.os.MIPAD = true; if (MQQBrowser) Device.browser.MQQ = true, Device.browser.version = MQQBrowser[1]; if (MQQClient) Device.browser.MQQClient = true, Device.browser.version = MQQClient[1]; if (WeChat) Device.browser.WeChat = true, Device.browser.mmversion = Device.browser.version = WeChat[1]; if (MiuiBrowser) Device.browser.MIUI = true, Device.browser.version = MiuiBrowser[1]; if (UC) Device.browser.UC = true, Device.browser.version = UC[1] || NaN; if (IEMobile) Device.browser.IEMobile = true, Device.browser.version = IEMobile[2]; if (AndriodBrowser) { Device.browser.AndriodBrowser = true; } if (M1) { Device.browser.M1 = true; } if (Chrome) { Device.browser.Chrome = true, Device.browser.version = Chrome[1]; } if (Device.os.windows) { if (typeof navigator.platform !== "undefined" && navigator.platform.toLowerCase() == "win64") { Device.os.win64 = true; } else { Device.os.win64 = false; } } if (Device.os.Mac || Device.os.windows || Device.os.Linux || Device.os.unifiedPC || /OpenHarmony/i.test(ua) && /pc/i.test(ua)) { Device.os.pc = true; } var osType = { iPad7: 'iPad; CPU OS 7', LePad: 'lepad_hls', XiaoMi: 'MI-ONE', SonyDTV: "SonyDTV", SamSung: 'SAMSUNG', HTC: 'HTC', VIVO: 'vivo' }; for (var os in osType) { Device.os[os] = ua.indexOf(osType[os]) !== -1; } Device.os.phone = Device.os.phone || /windows phone/i.test(ua); Device.os.getNumVersion = function () { return parseFloat(Device.os.version); }; Device.os.hasTouch = 'ontouchstart' in window; if (Device.os.hasTouch && Device.os.ios && Device.os.getNumVersion() = 3.0; }; Device.browser.isCanOcx = function () { return !!Device.os.windows && (!!Device.browser.ie || Device.browser.isFFCanOcx() || !!Device.browser.webkit); }; Device.browser.isNotIESupport = function () { return !!Device.os.windows && (!!Device.browser.webkit || Device.browser.isFFCanOcx()); }; Device.userAgent = {}; Device.userAgent.browserVersion = Device.browser.version; Device.userAgent.osVersion = Device.os.version; if (Device.os.unifiedPC) { if (Device.os.unifiedWindows) Device.os.type = 37;else if (Device.os.unifiedMac) Device.os.type = 38;else Device.os.type = 39; } delete Device.userAgent.version; } detect(window.navigator.userAgent); function canSupportH5Video() { var ua = window.navigator.userAgent, m = null; if (!!Device.os.android) { if (Device.browser.MQQ && Device.browser.getNumVersion() >= 4.2) { return true; } if (ua.indexOf('MI2') != -1) { return true; } if (Device.os.version >= '4' && (m = ua.match(/MicroMessenger\/((\d+)\.(\d+))\.(\d+)/))) { if (parseFloat(m[1]) >= 4.2) { return true; } } if (Device.os.version >= '4.1') { return true; } } return false; } function canSupportVideoMp4() { var video = document.createElement('video'); if (typeof video.canPlayType === 'function') { if (video.canPlayType('video/mp4; codecs="mp4v.20.8"') === 'probably') { return true; } if (video.canPlayType('video/mp4; codecs="avc1.42E01E"') === 'probably' || video.canPlayType('video/mp4; codecs="avc1.42E01E, mp4a.40.2"') === 'probably') { return true; } } return false; } function canSupportAutoPlay() { if (Device.os.ios && Device.os.getNumVersion() 1 && arguments[1] !== undefined ? arguments[1] : 0; var canEqual = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var nowVersionStr = Device.os.version; if (!nowVersionStr) return false; var versionArr = version.split('.'); var nowVersionArr = nowVersionStr.split('.'); for (var i = 0; i 0) return vi > nvi; if (cp = o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } function _unsupportedIterableToArray$1(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$1(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$1(o, minLen); } function _arrayLikeToArray$1(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i b; } }; function cpVersion(ver, op, canEq, type) { var mmver = false; switch (type) { case 'mac': mmver = getMac(); break; case 'windows': mmver = getWindowsVersionFormat(); break; case 'wxwork': mmver = getWxWork(); break; case 'mpapp': mmver = getMpApp(); break; case 'unifiedpc': mmver = getUnifiedPcVer(); break; default: mmver = get(); break; } if (!mmver) { return; } var mmversion = mmver.split('.'); var version = ver.split('.'); if (!/\d+/g.test(mmversion[mmversion.length - 1])) { mmversion.pop(); } for (var i = 0, len = Math.max(mmversion.length, version.length); i = 64 && parseInt(v) = hexNum; } return false; } var mmversion = { get: get, getMac: getMac, getMacOS: getMacOS, getWindows: getWindows, getInner: getInner, getWxWork: getWxWork, getMpApp: getMpApp, cpVersion: cpVersion, eqVersion: eqVersion, gtVersion: gtVersion, ltVersion: ltVersion, getPlatform: getPlatform, getVersionNumber: getVersionNumber, isWp: is_wp, isIOS: is_ios, isAndroid: is_android, isHarmony: is_harmony, isHarmonyWechat: is_harmony && is_wechat && cpVersion('1.0.0', 1, true), isInMiniProgram: is_in_miniProgram, isWechat: is_wechat, isMac: is_mac, isWindows: is_windows, isLinux: is_linux, isMacWechat: is_mac_wechat, isWindowsWechat: is_windows_wechat, isWxWork: is_wx_work, isOnlyWechat: is_wechat && !is_wx_work, isMpapp: is_mpapp, isNewMpApp: false, isIPad: is_ipad, isGooglePlay: is_google_play, isPrefetch: is_prefetch, isDonutAPP: is_donut_app, compareHexVersion: compareHexVersion, isPcWechat: is_windows_wechat || is_mac_wechat, xwebVersion: xweb_version, isUnifiedPcWechat: is_unified_pc_wechat }; var initJsBridge = false; if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; } function connectWebViewJavascriptBridge(callback) { if (window.WebViewMPapp || window.WebViewJavascriptBridge) { return callback(window.WebViewMPapp || window.WebViewJavascriptBridge); } if (window.WVJBCallbacks) { return window.WVJBCallbacks.push(callback); } window.WVJBCallbacks = [callback]; if (!mmversion.isMpapp) { return false; } if (!initJsBridge) { initJsBridge = true; var WVJBIframe = document.createElement('iframe'); WVJBIframe.style.display = 'none'; WVJBIframe.src = 'https://__bridge_loaded__'; document.body.appendChild(WVJBIframe); setTimeout(function () { initJsBridge = false; document.body.removeChild(WVJBIframe); }, 0); } return false; } function invoke$1(jsapiName, opt, callback) { connectWebViewJavascriptBridge(function (bridge) { try { if (typeof opt === 'function') { callback = opt; } if (_typeof(opt) !== 'object' && typeof opt !== 'string') { opt = {}; } bridge.callHandler(jsapiName, opt, function (res) { try { var ret = _typeof(res) === 'object' ? res : JSON.parse(res); var errMsg = ret.err_msg || ret.errMsg; console.info("[mpapp jsapi] invoke->".concat(jsapiName, " ").concat(opt.action || '', " ").concat(errMsg)); typeof callback === 'function' && callback(ret); } catch (e) { window.WX_BJ_REPORT.BadJs.report('invoke', "callback ".concat(jsapiName, " error:"), { mid: 'mmbizwebapp:js_brridge', _info: e }); console.error("[mpapp jsapi] ".concat(jsapiName, " ").concat(opt.action || ''), e, res); } }); } catch (e) { window.WX_BJ_REPORT.BadJs.report('invoke', 'callback error:', { mid: 'mmbizwebapp:js_brridge', _info: e }); console.error('[mpapp jsapi]', e); } }); } function _regeneratorRuntime$1() { _regeneratorRuntime$1 = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } var doc$1 = {}; var isAcrossOrigin$1 = false; var notFoundedMPPageAction = []; var __moon_report$1 = window.__moon_report || function () {}; var MOON_JSAPI_KEY_OFFSET = 8; try { doc$1 = top.window.document; } catch (e) { isAcrossOrigin$1 = true; } if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; } function ready(onBridgeReady) { var bridgeReady = function bridgeReady() { try { if (onBridgeReady) { window.onBridgeReadyTime = window.onBridgeReadyTime || Date.now(); onBridgeReady(); } } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: 'ready', e: e }]); throw e; } window.jsapiReadyTime = Date.now(); }; if (!isAcrossOrigin$1 && (typeof top.window.WeixinJSBridge === 'undefined' || !top.window.WeixinJSBridge.invoke)) { if (doc$1.addEventListener) { doc$1.addEventListener('WeixinJSBridgeReady', bridgeReady, false); } else if (doc$1.attachEvent) { doc$1.attachEvent('WeixinJSBridgeReady', bridgeReady); doc$1.attachEvent('onWeixinJSBridgeReady', bridgeReady); } } else { bridgeReady(); } } var invokeNotWaitA8key = ['notifyPageInfo', 'updatePageAuth' ]; var checkNotFoundedInvoke = function checkNotFoundedInvoke(methodName, args) { if (methodName === 'handleMPPageAction' && (args === null || args === void 0 ? void 0 : args.action) && notFoundedMPPageAction.includes(args === null || args === void 0 ? void 0 : args.action)) { return true; } return false; }; function invoke(_x, _x2, _x3) { return _invoke.apply(this, arguments); } function _invoke() { _invoke = _asyncToGenerator( _regeneratorRuntime$1().mark(function _callee(methodName, args, callback) { return _regeneratorRuntime$1().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: if (!(window.__secPageAuthPromise && !window.__is_page_auth_ok__ && !invokeNotWaitA8key.includes(methodName))) { _context.next = 3; break; } _context.next = 3; return window.__secPageAuthPromise; case 3: ready(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object') { alert('请在微信中打开此链接'); return false; } if (checkNotFoundedInvoke(methodName, args)) { setTimeout(function () { if (callback) { callback.apply(window, [{ err_msg: "".concat(methodName, ":fail"), err_desc: 'action isn\'t supported' }]); } }, 0); } else { top.window.WeixinJSBridge.invoke(methodName, args, function () { try { for (var _len2 = arguments.length, rets = new Array(_len2), _key2 = 0; _key2 ".concat(ret.err_msg) : ''; if (['handleMPPageAction', 'handleVideoAction', 'handleHaokanAction'].indexOf(methodName) !== -1) { var action = (args === null || args === void 0 ? void 0 : args.action) || ''; console.info('[system]', "[jsapi] invoke->".concat(methodName, ", action->").concat(action).concat(errMsg)); } else { console.info('[system]', "[jsapi] invoke->".concat(methodName).concat(errMsg)); } if (methodName === 'handleMPPageAction' && (args === null || args === void 0 ? void 0 : args.action) && ((ret === null || ret === void 0 ? void 0 : ret.err_desc) === 'action isn\'t supported' || (ret === null || ret === void 0 ? void 0 : ret.err_msg) === 'handleMPPageAction:fail action is not supported')) { notFoundedMPPageAction.push(args === null || args === void 0 ? void 0 : args.action); } if (callback) { callback.apply(window, rets); } } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: "invoke;methodName:".concat(methodName), e: e }]); throw e; } }); } }); case 4: case "end": return _context.stop(); } }, _callee); })); return _invoke.apply(this, arguments); } function call(_x4) { return _call.apply(this, arguments); } function _call() { _call = _asyncToGenerator( _regeneratorRuntime$1().mark(function _callee2(methodName) { return _regeneratorRuntime$1().wrap(function _callee2$(_context2) { while (1) switch (_context2.prev = _context2.next) { case 0: if (!(window.__secPageAuthPromise && !window.__is_page_auth_ok__)) { _context2.next = 3; break; } _context2.next = 3; return window.__secPageAuthPromise; case 3: ready(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object') { return false; } try { top.window.WeixinJSBridge.call(methodName); } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: "call;methodName:".concat(methodName), e: e }]); throw e; } }); case 4: case "end": return _context2.stop(); } }, _callee2); })); return _call.apply(this, arguments); } function on(eventName, callback) { ready(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object' || !top.window.WeixinJSBridge.on) { return false; } if (!window.JSAPIEventCallbackMap[eventName]) { window.JSAPIEventCallbackMap[eventName] = []; } window.JSAPIEventCallbackMap[eventName].push(callback); if (window.JSAPIEventCallbackMap[eventName].length > 1) { return false; } top.window.WeixinJSBridge.on(eventName, function () { try { for (var _len = arguments.length, rets = new Array(_len), _key = 0; _key ".concat(ret.err_msg) : ''; console.info('[system]', "[jsapi] event->".concat(eventName).concat(errMsg)); if (window.JSAPIEventCallbackMap[eventName] && window.JSAPIEventCallbackMap[eventName].length) { var result; for (var i = 0; i = 0; i--) { if (window.JSAPIEventCallbackMap[eventName][i] === callback) { window.JSAPIEventCallbackMap[eventName].splice(i, 1); result = true; } } return result; }); } var JSAPI = { ready: ready, invoke: invoke, call: call, on: on, remove: remove }; function _log(level, msg) { if (level === 'log') { level = 'info'; msg = "[WechatFe]".concat(msg); } else { var prefix = "__wap__".concat(window.__second_open__ ? ' (sec)' : ''); msg = "".concat(prefix, " ").concat(msg, " location:[").concat(location.href, "]"); } msg += new Error().stack; if (mmversion.isMpapp) { invoke$1('WNNativeCallbackLog', msg); } else if (mmversion.isWechat) { if (mmversion.isAndroid) { console.warn('[system]', "[MicroMsg.JsApiLog][".concat(level, "] jslog : ").concat(msg)); } else if (mmversion.isIOS) { JSAPI.invoke('writeLog', { level: level, msg: msg }); } else { JSAPI.invoke('log', { level: level, msg: msg }); } } } var Log = { info: function info() { for (var _len = arguments.length, args = new Array(_len), _key = 0; _key arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i d2.exp) return 1; return 0; }); var memCnt = 0; for (var i = 0; i = size) break; var key = keys[i]; memCnt += JSON.stringify(data[key]).length; delete data[key]; } return data; }, 'clear-all': function clearAll() { localStorage.clear(); return {}; } }; function formatLogMsg(str) { return "[WXLS] ".concat(str); } var LS = function () { function LS(func, evictionPolicy, logger) { _classCallCheck(this, LS); this.logger = function () {}; if (!func) throw 'require function name.'; this.evictionPolicy = 'noeviction'; this.key = func; if (typeof logger === 'function') { this.logger = function (str, type) { return logger(formatLogMsg(str), type); }; } if (evictionPolicy && Object.keys(evictionPolicies).indexOf(evictionPolicy) !== -1) { this.evictionPolicy = evictionPolicy; } this.init(); } _createClass(LS, [{ key: "init", value: function init() { var _a, _b; this.check(); if (Math.random() * 1000 now) { temp[key] = val; } } this.logger("check info: isReturn:".concat(isReturn, " data:").concat(JSON.stringify(temp)), 'info'); if (isReturn) return temp; LS.setItem(this.key, JSON.stringify(temp), this.logger); } }, { key: "set", value: function set(key, val, exp) { var _a, _b; var data = this.check(true); data[key] = { val: val, exp: exp || +new Date() }; try { if (localStorage.getItem(prefix + this.key)) localStorage.removeItem(prefix + this.key); localStorage.setItem(prefix + this.key, JSON.stringify(data)); this.logger("first set success: LSlen:".concat((_a = window === null || window === void 0 ? void 0 : window.localStorage) === null || _a === void 0 ? void 0 : _a.length, " key:").concat(prefix + this.key, " data:").concat(JSON.stringify(data)), 'success'); } catch (e) { this.logger("first set error: LSlen:".concat((_b = window === null || window === void 0 ? void 0 : window.localStorage) === null || _b === void 0 ? void 0 : _b.length, " error:").concat(e, " key:").concat(prefix + this.key, " data:").concat(JSON.stringify(data), " k:").concat(key, " v:").concat(val, " exp:").concat(exp), 'error'); localStorage.clear(); LS.setItem(this.key, JSON.stringify(_defineProperty({}, key, { val: val, exp: exp || +new Date() })), this.logger); } } }, { key: "get", value: function get(key) { var data = this.getData(); data = data[key]; return data ? data.val || null : null; } }, { key: "remove", value: function remove(key) { var data = this.getData(); if (data[key]) delete data[key]; LS.setItem(this.key, JSON.stringify(data), this.logger); } }], [{ key: "getItem", value: function getItem(key) { key = prefix + key; return localStorage.getItem(key); } }, { key: "setItem", value: function setItem(key, val, logger) { var _a, _b; key = prefix + key; var n = 3; while (n--) { try { if (localStorage.getItem(key)) localStorage.removeItem(key); localStorage.setItem(key, val); typeof logger === 'function' && logger("setItem success: LSlen:".concat((_a = window === null || window === void 0 ? void 0 : window.localStorage) === null || _a === void 0 ? void 0 : _a.length, " key:").concat(key, " val:").concat(val), 'success'); break; } catch (e) { typeof logger === 'function' && logger("setItem error: LSlen:".concat((_b = window === null || window === void 0 ? void 0 : window.localStorage) === null || _b === void 0 ? void 0 : _b.length, " error:").concat(e, " key:").concat(key, " val:").concat(val), 'error'); LS.clear(); } } } }, { key: "clear", value: function clear() { var i; var k; for (i = localStorage.length - 1; i >= 0; i--) { k = localStorage.key(i); if (k.indexOf(prefix) == 0) { localStorage.removeItem(k); } } } }, { key: "getSupportEvicationPolicy", value: function getSupportEvicationPolicy() { return Object.keys(evictionPolicies); } }]); return LS; }(); var innerVersion = (mmversion.getInner() || '').toUpperCase(); var getBizLS = new LS('get_biz_result'); var bizMap = {}; function getBiz(needCheckBiz, bizType) { var _a; if (needCheckBiz === void 0) { needCheckBiz = false; } if (bizType === void 0) { bizType = ((_a = window.cgiDataNew) === null || _a === void 0 ? void 0 : _a.biz_type) || 1; } return new Promise(function (resolve, reject) { if (needCheckBiz || bizMap[bizType] === undefined) { if (!mmversion.isOnlyWechat || mmversion.isIOS && innerVersion -1) { bizMap[bizType] = res.biz; resolve(res.biz); getBizLS.set("".concat(bizType, "_get_biz_result"), res.biz, +new Date() + 3 * 24 * 60 * 60 * 1000); } else { reject('Failed to get biz'); } }); } } else { resolve(bizMap[bizType]); } }); } var getIsAuthor = function getIsAuthor(cb, bizuin, needCheckBiz, bizType) { var _a; if (bizuin === void 0) { bizuin = window.biz; } if (needCheckBiz === void 0) { needCheckBiz = false; } if (bizType === void 0) { bizType = ((_a = window.cgiDataNew) === null || _a === void 0 ? void 0 : _a.biz_type) || 1; } getBiz(needCheckBiz, bizType).then(function (biz) { cb(biz && biz === bizuin); })["catch"](function () { cb(false); }); }; function parseUrl(url) { var len = url.length; var ques_pos = url.indexOf('?'); var hash_pos = url.indexOf('#'); hash_pos = hash_pos == -1 ? len : hash_pos; ques_pos = ques_pos == -1 ? hash_pos : ques_pos; var host = url.substring(0, ques_pos); var query_str = url.substring(ques_pos + 1, hash_pos); var hash = url.substring(hash_pos + 1); return { host: host, query_str: query_str, hash: hash }; } function join(url, args, noEncode) { var ret = parseUrl(url); var query_str = ret.query_str; var args_arr = []; if (_typeof(args) === 'object') { for (var key in args) { if (args.hasOwnProperty(key)) { args_arr.push("".concat(key, "=").concat(noEncode ? args[key] : encodeURIComponent(args[key]))); } } } else { args_arr.push(noEncode ? args : encodeURIComponent(args)); } if (args_arr.length > 0) { query_str += (query_str !== "" ? "&" : "") + args_arr.join("&"); } return ret.host + (query_str !== "" ? "?".concat(query_str) : "") + (ret.hash !== "" ? "#".concat(ret.hash) : ""); } function addParam(url, param, value, forceReplace) { url = url || location.href; var firstAndPos = url.indexOf("&"); var len = url.length; var reverseUrl = url.replace(/^[\w\d]+:[/\\]+/g, "").split("").reverse(); if (!Array.prototype.indexOf) { Array.prototype.indexOf = function (searchElement, fromIndex) { var k; if (this == null) { throw new TypeError('"this" is null or not defined'); } var O = Object(this); var len = O.length >>> 0; if (len === 0) { return -1; } var n = fromIndex || 0; if (Math.abs(n) === Infinity) { n = 0; } if (n >= len) { return -1; } k = Math.max(n >= 0 ? n : len - Math.abs(n), 0); while (k lastSlashPos) { url = url.replace("&", "?"); } var reg = new RegExp("([\\?&]".concat(param, "=)[^&#]*")); if (!url.match(reg)) { var urlInfo = parseUrl(url); var hash = urlInfo.hash ? '#' + urlInfo.hash : ''; url = url.replace(hash, ''); var _pos = url.indexOf("?"); if (_pos == -1) { return "".concat(url, "?").concat(param, "=").concat(value).concat(hash); } if (_pos == url.length - 1) { return "".concat(url + param, "=").concat(value).concat(hash); } return "".concat(url, "&").concat(param, "=").concat(value).concat(hash); } if (forceReplace === true) { return url.replace(reg, "$1".concat(value)); } return url; } function addWxfrom(src, wxfrom) { var offset = window.service_type === 1 ? 10000 : 0; return addParam(src, 'wxfrom', offset + Number(wxfrom), true); } function removeParam(url, param) { var _URL = new URL(url), protocol = _URL.protocol, host = _URL.host, pathname = _URL.pathname, search = _URL.search, hash = _URL.hash; var queryParams = new URLSearchParams(search); queryParams["delete"](param); var newSearch = queryParams.toString(); var newUrl = new URL("".concat(protocol, "//").concat(host).concat(pathname).concat(newSearch ? "?".concat(decodeURIComponent(newSearch)) : "").concat(hash)); return newUrl.toString(); } function getQuery(name, url) { var u = url || window.location.search; var reg = new RegExp("(^|&)".concat(name, "=([^&]*)(&|$)")); var r = u.substring(u.indexOf('?') + 1).match(reg); return r !== null ? r[2] : ''; } function encodeBase64(value) { try { return window.btoa(value); } catch (e) { return ''; } } function decodeBase64(value) { try { return window.atob(value); } catch (e) { return ''; } } function joinUrl$1(url) { var obj = {}; if (typeof window.uin !== 'undefined') { obj.uin = window.uin; } if (typeof window.key !== 'undefined') { obj.key = window.key; } if (typeof window.pass_ticket !== 'undefined') { obj.pass_ticket = window.pass_ticket; } if (typeof window.wxtoken !== 'undefined') { obj.wxtoken = window.wxtoken; } if (typeof window.devicetype !== 'undefined') { obj.devicetype = window.devicetype; } if (typeof window.clientversion !== 'undefined') { obj.clientversion = window.clientversion || mmversion.getInner(); } obj.version = obj.clientversion; if (window.biz) { obj.__biz = window.biz; } if (getQuery('enterid')) { obj.enterid = getQuery('enterid'); } if (typeof window.appmsg_token !== 'undefined') { obj.appmsg_token = window.appmsg_token; } else if (url.indexOf('advertisement_report') > -1) { new Image().src = "".concat(location.protocol, "//mp.weixin.qq.com/mp/jsmonitor?idkey=68064_13_1&r=").concat(Math.random()); } obj.x5 = navigator.userAgent.indexOf('TBS/') !== -1 ? '1' : '0'; obj.f = 'json'; return join(url, obj); } function joinUserArticleRole(url, notJoin, cb) { var bizuin = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : window.biz; var needCheckBiz = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false; if (notJoin) { cb(url); } else { getIsAuthor(function (isAuthor) { cb(addParam(url, 'user_article_role', isAuthor ? 1 : 0, true)); }, bizuin, needCheckBiz); } } function getA8keyQuery(name, url) { return new Promise(function (resolve) { if (window.__secPageAuthPromise) { window.__secPageAuthPromise.then(function () { resolve(getQuery(name, url)); }); } else { resolve(getQuery(name, url)); } }); } function addHash(url, hash) { var isReplace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; if (isReplace) { return "".concat(url.split('#')[0]).concat(hash); } return "".concat(url).concat(url.indexOf('#') === -1 ? '#' : '').concat(hash); } function decodeUrl(url) { var _url = url; while (_url.indexOf('&') !== -1) { _url = _url.htmlDecode(); } return _url; } var Url = { parseUrl: parseUrl, join: join, addParam: addParam, addWxfrom: addWxfrom, addHash: addHash, getQuery: getQuery, getA8keyQuery: getA8keyQuery, encodeBase64: encodeBase64, decodeBase64: decodeBase64, joinUrl: joinUrl$1, joinUserArticleRole: joinUserArticleRole, removeParam: removeParam, decodeUrl: decodeUrl }; var _a; var doc; var isAcrossOrigin = false; try { doc = (_a = window.top) === null || _a === void 0 ? void 0 : _a.window.document; } catch (e) { isAcrossOrigin = true; } var StatusTextMap = { 200: 'OK', 302: 'Found', 400: 'Bad Request', 500: 'Internal Server Error' }; function getIsAcrossOrigin() { return isAcrossOrigin; } function networkStartLog(item) { var _a, _b, _c, _d, _e; console.log('[system]', " [response ".concat(item.requestType, "]"), item.url, item.response, item); if (item.rdevRequestId && ((_b = (_a = window.RemoteDevSdk) === null || _a === void 0 ? void 0 : _a.instance) === null || _b === void 0 ? void 0 : _b.Network) && item.id !== '__system_log__') { try { var finishedOptions = { requestId: item.rdevRequestId, url: item.url, status: +(item.status || '500'), statusText: StatusTextMap[+(item.status || '500')] || 'Error', responseHeaders: { RDEV_RESPONSE_TYPE: item.requestType }, responseBody: item.response, requestTime: item.requestTime || 0, duration: item.costTime || (item.endTime && item.startTime ? item.endTime - item.startTime : performance.now() / 1000 - (item.requestTime || 0)) }; window.RemoteDevSdk.instance.Network.customRequestFinished(finishedOptions); } catch (err) {} } if (((_c = window.vConsole) === null || _c === void 0 ? void 0 : _c.network) && item.id !== '__system_log__') { try { item.statusText = "".concat(item.status); item.responseSize = item.response.length; item.responseSizeText = "".concat(item.response.length); return (_e = (_d = window.vConsole.network).update) === null || _e === void 0 ? void 0 : _e.call(_d, item.id, Object.assign({}, item, { readyState: 4 })); } catch (err) {} } } function reqType(obj, path) { return obj.url.indexOf(path) > -1 && obj.url.indexOf('action=') === -1 && (!obj.data || !obj.data.action); } function findAjaxScopeByConfig(url, config) { var pathname = new URL(url, location.href).pathname || ''; var scope = config[pathname.slice(1)]; if (scope) { return scope; } } function getAjaxScope(ajaxUrl) { if (Url.getQuery('no_transfer', location.href) !== '1' && mmversion.isWechat && !mmversion.isInMiniProgram && !mmversion.isWxWork && !mmversion.isMpapp && !isAcrossOrigin && window.__ajaxTransferConfig && _typeof(window.__ajaxTransferConfig) === 'object' && ( mmversion.isIOS && mmversion.compareHexVersion('1800282F') || mmversion.isAndroid && mmversion.compareHexVersion('28002234') || mmversion.isWindowsWechat && mmversion.cpVersion('3.9.5', 1, true, 'windows') || mmversion.isMacWechat && mmversion.cpVersion('3.8.4', 1, true, 'mac') || mmversion.isHarmonyWechat && mmversion.compareHexVersion('0xf3100b00') && !mmversion.compareHexVersion('0xf3100c00') || mmversion.compareHexVersion('0xf3800b00'))) { try { return findAjaxScopeByConfig(ajaxUrl, window.__ajaxTransferConfig); } catch (err) { } } } function getActionByData(data) { var _a, _b; if (_typeof(data) === 'object' && !(data instanceof Blob)) { if (data.hasOwnProperty('data') && typeof data.data === 'string') { try { var workedData = JSON.parse(data.data); return workedData.action || ''; } catch (e) {} } return data.action || ''; } if (typeof data === 'string') { return ((_b = (_a = data.split(/[?&]/).find(function (x) { return x.indexOf('action=') >= 0; })) === null || _a === void 0 ? void 0 : _a.split('=')) === null || _b === void 0 ? void 0 : _b[1]) || ''; } return ''; } var METHOD_ENUM = { GET: 0, POST: 1 }; var __moon_report = window.__moon_report || function () {}; var MOON_AJAX_SUCCESS_OFFSET = 3; var MOON_AJAX_NETWORK_OFFSET = 4; var MOON_AJAX_ERROR_OFFSET = 5; var MOON_AJAX_TIMEOUT_OFFSET = 6; var MOON_AJAX_COMPLETE_OFFSET = 7; var LENGTH_LIMIT = 4096; function reportRtError(type, id, key, content) { var log = ''; var prefix = type === 'rt' ? 'rtCheckError' : 'Ajax Length Limit'; if (content === null || content === void 0 ? void 0 : content.length) { var loglen = 1000; var len = content.length; var lc = Math.ceil(len / loglen); log = ["&lc=".concat(lc)]; for (var i = 0; i = 200 && retryStatus 0 ? 'json' : undefined }); var isTimeout = false; handleReqTimeout({ abort: function abort() { isTimeout = true; reqLogItem.endTime = Date.now(); reqLogItem.response = 'timeout'; networkEndLog(reqLogItem); } }); Device.os.pc && monitor$1.setSum(115849, 69, 1); JSAPI.invoke(Device.os.pc ? 'H5ExtTransfer' : 'webTransfer', params, function (res) { var _a, _b, _c, _d, _e, _f; if (isTimeout) return; var status = 400; var result = ''; if (Device.os.pc) { try { var retFlag = res.base_resp.ret === 0 && res.jsapi_resp.ret === 0 && res.err_msg.indexOf(':ok') > -1; var respJsonFlag = res.jsapi_resp.resp_json; status = retFlag && respJsonFlag ? 200 : 400; result = res.jsapi_resp.resp_json; } catch (err) { console.error(err); } } else { status = res && res.errCode * 1 === 0 && typeof res.result === 'string' && res.result ? 200 : 400; result = res.result; } try { Log.log("ajax transfer, status: ".concat(status, ", reqUrl: ").concat(reqUrl)); } catch (err) { console.error(err); } if (status >= 200 && status -1 && retryStatus >= 200 && retryStatus = 200 && status LENGTH_LIMIT) { reportAjaxLength(27613, 17, "ajax get limit[length: ".concat(url.length, "]").concat(url.substring(0, 1024))); } if (data && !(data instanceof Blob) && data.length > LENGTH_LIMIT) { reportAjaxLength(27613, 18, "ajax post limit[length: ".concat(data.length, "]").concat(data.substring(0, 1024))); } if (data && data instanceof Blob && data.size > LENGTH_LIMIT) { reportAjaxLength(27613, 18, "ajax post limit[length: ".concat(data.size, "]blob")); } } catch (e) { } } catch (e) { obj.error && obj.error(xhr, { type: 3, error: e, status: 0 }); } beforeReq(); }); } mmversion.isWindowsWechat && mmversion.compareHexVersion('0xf2550000') || mmversion.isMacWechat && mmversion.compareHexVersion('0xf2650000'); var getBrandServiceType = function getBrandServiceType() { var serviceType = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window.service_type; var _a, _b; var brandServiceType = 0; if (serviceType !== undefined) brandServiceType = serviceType + 1; if (((_b = (_a = window.cgiData) === null || _a === void 0 ? void 0 : _a.trans_appmsg_info) === null || _b === void 0 ? void 0 : _b.trans_type) * 1 === 1) brandServiceType = 3; return brandServiceType; }; function setCurrentMpInfo(ifShow) { var supportNewTopBar = mmversion.isIOS && mmversion.gtVersion('7.0.10', true) || mmversion.isAndroid && mmversion.gtVersion('7.0.12', true); var supportLiveStatus = mmversion.isIOS && mmversion.gtVersion('8.0.46', true) || mmversion.isAndroid && mmversion.gtVersion('8.0.46', true); JSAPI.invoke('currentMpInfo', { userName: window.user_name, brandName: !!supportNewTopBar && window.nickname === '' ? '未命名账号' : window.title, title: window.msg_title || '', brandIcon: window.hd_head_img.replace(/\/0$/, '/132'), itemShowType: window.item_show_type, isPaySubscribe: window.isPaySubscribe, topBarStyle: supportNewTopBar ? 1 : 0, topBarShowed: ifShow, disableShowFinderLiveTopBar: !ifShow && supportLiveStatus ? 1 : 0, brandServiceType: getBrandServiceType() }, function () {}); } function AjaxWx(obj) { var report36408 = typeof obj.report36408 === 'function' ? obj.report36408 : function () {}; obj.url += obj.url.indexOf('?') === -1 ? '?fasttmplajax=1' : '&fasttmplajax=1'; if (getAjaxScope(obj.url)) { Ajax(obj); return; } if (obj.usePb) { obj.type = 'POST'; obj.data = { data: JSON.stringify(obj.data) }; } if (!/^(http:\/\/|https:\/\/|\/\/)/.test(obj.url)) { obj.url = "https://mp.weixin.qq.com/".concat(obj.url.replace(/^\//, '')); } else if (/^\/\//.test(obj.url)) { obj.url = "https:".concat(obj.url); } if (obj.f !== 'html' && (obj.url.indexOf('?f=json') === -1 || obj.url.indexOf('&f=json') === -1)) { obj.url += '&f=json'; } if (!obj.notJoinUrl && obj.f !== 'html') { obj.url = Url.joinUrl(obj.url); } Url.joinUserArticleRole(obj.url, !!obj.notJoinUrl, function (url) { obj.url = url; var urlObj = new URL(url, location.origin); var data = null; if (_typeof(obj.data) === 'object') { var d = obj.data; var ds = []; for (var k in d) { if (d.hasOwnProperty(k)) { ds.push("".concat(k, "=").concat(encodeURIComponent(d[k]))); } } data = ds.join('&'); } else { data = typeof obj.data === 'string' ? obj.data : null; } var header = { Cookie: document.cookie, referer: location.href }; if (obj.contentType) { header['Content-Type'] = obj.contentType; } else if ((obj.type || 'GET').toUpperCase() === 'POST') { header['Content-Type'] = 'application/x-www-form-urlencoded; charset=UTF-8'; } var reqLogItem = networkStartLog({ method: obj.type || 'GET', url: obj.url, postData: obj.data || {}, requestHeader: header, requestType: 'jsapi', startTime: Date.now() }); var retryTime = 1; var jsapiRequest = function jsapiRequest(obj, data) { return JSAPI.invoke('request', { url: obj.url, method: obj.type, data: data, header: header }, function (res) { var _a, _b, _c, _d, _e, _f; if (res.err_msg.indexOf(':ok') > -1 && (!res.statusCode || res.statusCode >= 200 && res.statusCode '27000600')) { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 1, HttpCode: res.statusCode || 0, Ret: ((_c = resData === null || resData === void 0 ? void 0 : resData.base_resp) === null || _c === void 0 ? void 0 : _c.ret) || 0 }); } var _retryTime = retryTime++; JSAPI.invoke('updatePageAuth', {}, function (res) { console.log('[skeleton] updatePageAuth', res); monitor$1.setSum(112287, 3, 1); if (res && res.err_msg && res.err_msg.indexOf(':ok') > -1) { window.top.pass_ticket = encodeURIComponent(Url.getQuery('pass_ticket', res.fullUrl).html(false).replace(/\s/g, '+')); if (obj.pass_ticket) { obj.pass_ticket = window.top.pass_ticket; } console.warn('[skeleton] updatePageAuth resetTopbar'); var supportNewTopBar = mmversion.isIOS && mmversion.gtVersion('7.0.10', true); var showBottomBar = !!window.is_login; if (window.top.item_show_type === '0' && supportNewTopBar) { var top = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop || 0; setCurrentMpInfo(top > 40 && !showBottomBar); } try { obj.url = Url.addParam(obj.url, 'retry', _retryTime, true); } catch (err) { console.error(err); } jsapiRequest(obj, data); monitor$1.setSum(112287, 4, 1); } else { obj.success && obj.success(resData); obj.complete && obj.complete(); if (mmversion.isIOS) { monitor$1.setSum(112287, 35, 1); } else { monitor$1.setSum(112287, 36, 1); } reqLogItem.status = 200; reqLogItem.endTime = Date.now(); reqLogItem.response = resData; networkEndLog(reqLogItem); } }); } else { if (((_d = tmpResData === null || tmpResData === void 0 ? void 0 : tmpResData.base_resp) === null || _d === void 0 ? void 0 : _d.ret) !== 0) { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 4, HttpCode: res.statusCode || 0, Ret: ((_e = tmpResData === null || tmpResData === void 0 ? void 0 : tmpResData.base_resp) === null || _e === void 0 ? void 0 : _e.ret) || 0 }); } } else { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 0, HttpCode: res.statusCode || 0, Ret: ((_f = tmpResData === null || tmpResData === void 0 ? void 0 : tmpResData.base_resp) === null || _f === void 0 ? void 0 : _f.ret) || 0 }); } } obj.success && obj.success(resData); obj.complete && obj.complete(); reqLogItem.status = 200; reqLogItem.endTime = Date.now(); reqLogItem.response = resData; networkEndLog(reqLogItem); } } else if (res.err_msg.indexOf('no permission') > -1 || !mmversion.isOnlyWechat) { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 1, HttpCode: res.statusCode || 0, Ret: 0 }); } Ajax(obj); if (res.err_msg.indexOf('no permission') > -1) { console.warn('[JSAPI Request] No permission'); monitor$1.setSum(112287, 31, 1); } reqLogItem.status = 302; reqLogItem.endTime = Date.now(); reqLogItem.response = res; networkEndLog(reqLogItem); } else { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 2, HttpCode: res.statusCode || 0, Ret: 0 }); } obj.error && obj.error(null, { type: 3, error: res, status: 0 }); obj.complete && obj.complete(); monitor$1.setSum(112287, 32, 1); var sample = 0.001; if (Math.random() = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } var AjaxRouter = function () { var _ref = _asyncToGenerator( _regeneratorRuntime().mark(function _callee(obj) { return _regeneratorRuntime().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: if (!window.__secPageAuthPromise) { _context.next = 3; break; } _context.next = 3; return window.__secPageAuthPromise; case 3: if (!(!mmversion.isWxWork && (window.__second_open__ || !getIsAcrossOrigin() && top.window.__second_open__) && window.__is_page_auth_return__ && !obj.pureHttp)) { _context.next = 5; break; } return _context.abrupt("return", AjaxWx(obj)); case 5: return _context.abrupt("return", Ajax(obj)); case 6: case "end": return _context.stop(); } }, _callee); })); return function AjaxRouter(_x) { return _ref.apply(this, arguments); }; }(); var html = function html(_str, encode) { if (!_str) return ''; var replace = ['`', '`', ''', '\'', '"', '"', ' ', ' ', '>', '>', '<', '']; var replaceReverse = ['&', '&', '¥', '¥', '', '>', ' ', ' ', '"', '"', '\'', ''', '`', '`']; var str = _str; var target; if (encode) { target = replaceReverse; } else { target = replace; } for (var i = 0; i ', '<', '', '>', '"', '"', '\'', ''', '`', '`']; var str = _str; var target; if (encode) { target = replaceReverse; } else { target = replace; } for (var i = 0; i -1) { new Image().src = "".concat(location.protocol, "//mp.weixin.qq.com/mp/jsmonitor?idkey=68064_13_1&r=").concat(Math.random()); } obj.x5 = isx5 ? '1' : '0'; obj.f = 'json'; return Url.join(url, obj); } function isObj(obj) { return obj && _typeof(obj) === 'object'; } function assign(target, source) { if (isObj(target) && isObj(source)) { for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } } function assembleReportData(initiative) { var leaveReportLog = []; leaveReportLog.push({ content: "[LeaveReport] specificData keys: ".concat(Object.keys(specificData)), timestamp: Date.now() }); Log.log("[LeaveReport] specificData keys: ".concat(Object.keys(specificData))); console.log("[LeaveReport] specificData keys: ".concat(Object.keys(specificData))); var allReportData = {}; for (var reportField in specificData) { if (!allReportData[reportField]) { allReportData[reportField] = {}; } for (var i = 0; i = BATCH_SIZE) { batchReport(); } else { if (!timeOutId) { timeOutId = setTimeout(function () { batchReport(); clearTimeout(timeOutId); timeOutId = null; }, BATCH_TIME); } } } _leaveReport.addReport(function () { var repeatedReportJson = getRepeatedReportJson(); if (!repeatedReportJson) return false; var reportData = []; for (var _i = 0, _Object$entries = Object.entries(repeatedReportJson); _i 1 && arguments[1] !== undefined ? arguments[1] : blockEleTagName; if (!element || element.nodeType !== 1) { return false; } for (var i = 0; i 1 && arguments[1] !== undefined ? arguments[1] : 'className'; var AttrList = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : exceptEleClassName; for (var i = 0; i -1) { return true; } } return false; } var removeChildMedia = function removeChildMedia(element) { var parentNode = element.parentNode; element.parentNode.removeChild(element); if (parentNode.children && parentNode.children.length) { return false; } return true; }; var getParaList = function getParaList(element, _ref) { var _ref$getNestedStructu = _ref.getNestedStructure, getNestedStructure = _refgetNestedStructu, _ref$removeIgoreEle = _ref.removeIgoreEle, removeIgoreEle = _refremoveIgoreEle; var paraList = function getParaListWithIndex(ele, getNested) { var childNodes = ele.children; if (!childNodes) return []; if (!childNodes.length) { return childNodes; } var child; var paragraphList = []; for (var i = 0; i 0) { var item = queue.pop(); var nodeType = item.nodeType, tagName = item.tagName; if (item.dataset && item.dataset.index) { paraIndex = +item.dataset.index; } if (withinSelectRange && !achiveSelectRangeEnd) { if (nodeType === 3) { result.push({ $node: item, type: NODE_TYPE.text, idx: paraIndex }); } if (tagName === IMG_TAG) { result.push({ $node: item, type: NODE_TYPE.img, idx: paraIndex }); } } if (item === $startNode) { if (nodeType === 3) { try { item.splitText(startOffset); } catch (e) { WX_BJ_REPORT.BadJs.report('ArticleMask:Error', 'splitText Error', { mid: 'mmbizwap:articlemask_Monitor', view: 'wap_business', _info: { type: 'getNodes startNode', startOffset: startOffset, endOffset: endOffset } }); } var $startTextNode = item.nextSibling; result.push({ startTextNode, type: NODE_TYPE.text, idx: paraIndex }); } else if (tagName === IMG_TAG) { result.push({ $node: item, type: NODE_TYPE.img, idx: paraIndex }); } else { result.push({ $node: item, type: NODE_TYPE.text, idx: paraIndex }); } withinSelectRange = true; } if (item === $endNode || achiveSelectRangeEnd) { if (!achiveSelectRangeEnd) { achiveSelectRangeEnd = true; } if (item === $endNode) result.pop(); if (nodeType === 3) { try { item.splitText(endOffset); } catch (e) { if (typeof WX_BJ_REPORT !== 'undefined' && WX_BJ_REPORT.BadJs) { WX_BJ_REPORT.BadJs.report('ArticleMask:Error', 'splitText Error', { mid: 'mmbizwap:articlemask_Monitor', view: 'wap_business', _info: { type: 'getSplitTextNode endNode', startOffset: startOffset, endOffset: endOffset } }); } } result.push({ $node: item, type: NODE_TYPE.text, idx: paraIndex }); break; } else if (tagName === IMG_TAG) { result.push({ $node: item, type: NODE_TYPE.img, idx: paraIndex }); break; } else { var _children = item.childNodes; for (var i = _children.length - 1; i >= 0; i--) { queue.push(_children[i]); } } } var children = item.childNodes; for (var _i = children.length - 1; _i >= 0; _i--) { queue.push(children[_i]); } } return result; }; var getSelectedNodes = function getSelectedNodes(range) { var start = range.start, end = range.end; var node, startOffset = start.offset; var node, endOffset = end.offset; if (endNode && $startNode instanceof Text) { return getSplitTextNode($startNode, startOffset, endOffset, start.paraIndex); } return getNodesByDFS(range); }; var checkTextNode = function checkTextNode($node) { return $node && (node.innerText); }; var connectSiblingText = function connectSiblingText(prev, next, target) { var $delete = target === prev ? next : prev; if (!checkTextNode(prev) || !checkTextNode(next)) { return $delete; } var text = (prev.nodeValue || prev.innerText) + (next.nodeValue || next.innerText); target.nodeValue = text; target.parentNode.removeChild($delete); return target; }; var getTextNodeByOffset = function getTextNodeByOffset($parentNode, offset) { var queue = []; var curOffset = 0; var startOffset = 0; var $curNode; queue.push($parentNode); while (queue.length > 0) { $curNode = queue.pop(); if ($curNode.nodeType === 3) { startOffset = offset - curOffset; curOffset += $curNode.textContent.length; if (curOffset >= offset) { break; } } var children = $curNode.childNodes; for (var i = children.length - 1; i >= 0; i--) { queue.push(children[i]); } } return { parentNode, curNode, offset: startOffset }; }; function getBlockOffset(_ref2) { var blockNode, node; if ($blockNode === null) { return null; } var queue = []; var offset = 0; queue.push($blockNode); while (queue.length > 0) { var item = queue.pop(); if (item.nodeType === 3 && item.nodeValue !== $node.nodeValue) { offset += item.textContent.length; } else if (item.nodeType === 1) { offset += 1; if (item === $node) break; } else if (item.nodeValue === $node.nodeValue) { offset += item.textContent.length; break; } var children = item.childNodes; for (var i = children.length - 1; i >= 0; i--) { queue.push(children[i]); } } return offset; } var getDomMeta = function getDomMeta(selection) { selection.$node; var parentNode; var parentIndex = Number($parentNode.dataset.index); var offset = getBlockOffset($parentNode); return { parentIndex: parentIndex, fromParentoffset: offset }; }; function nodeToSelection($node) { var $blockNode = getBlockNode($node); var paraIndex = +$blockNode.dataset.index; var offset = 0; var item = { blockNode, node, paraIndex: paraIndex, offset: offset }; var id = uuid(); return { start: item, end: item, id: id }; } var getSelection = function getSelection() { var selection = window.getSelection(); if (selection.anchorNode === null) { return null; } var selectionRange = selection.getRangeAt(0); if (!selectionRange || !selection.toString()) { return null; } var startContainer = selectionRange.startContainer, endContainer = selectionRange.endContainer, commonAncestorContainer = selectionRange.commonAncestorContainer, startOffset = selectionRange.startOffset, endOffset = selectionRange.endOffset; var $startBlockNode = getBlockNode(startContainer); var $endBlockNode = getBlockNode(endContainer); var startIndex = startBlockNode.dataset.index; var endIndex = endBlockNode.dataset.index; var start = { startBlockNode, $node: startContainer, offset: startOffset, paraIndex: Number(startIndex) }; var end = { endBlockNode, $node: endContainer, offset: endOffset, paraIndex: Number(endIndex) }; var $container = typeof commonAncestorContainer === 'string' ? commonAncestorContainer.parentNode : commonAncestorContainer; var id = uuid(); return { start: start, end: end, container, id: id }; }; var transferTextToElement = function transferTextToElement($node, id) { if (!$node) return null; if ($node.nodeType === 3) { var $wrap = document.createElement(WRAP_TAG); $wrap.setAttribute('data-splitid', id); $wrap.appendChild($node.cloneNode(false)); if ($node.parentNode) { $node.parentNode.replaceChild(node); } return $wrap; } return $node; }; var serialize = function serialize(selectionRange) { var start = selectionRange.start, end = selectionRange.end, id = selectionRange.id; var startParaOffset = getBlockOffset(start); var endParaOffset = start.node ? end.offset - start.offset + startParaOffset : getBlockOffset(end); var meta = { id: id, start: { para_offset: startParaOffset, para_index: start.paraIndex }, end: { para_offset: endParaOffset, para_index: end.paraIndex } }; return meta; }; var mapMetaToLocal = function mapMetaToLocal(paraList) { return function (meta) { var paraOffset = meta.para_offset, paraIndex = meta.para_index; var $blockNode = paraList[paraIndex]; var queue = []; var curOffset = 0; var offset = 0; var $curNode; queue.push($blockNode); while (queue.length > 0) { $curNode = queue.pop(); if ($curNode.nodeType === 3) { offset = paraOffset - curOffset; curOffset += $curNode.textContent.length; if (curOffset >= paraOffset) { break; } } if ($curNode.nodeType === 1) { offset = paraOffset - curOffset; curOffset += 1; if (curOffset >= paraOffset) { break; } } var children = $curNode.childNodes; for (var i = children.length - 1; i >= 0; i--) { queue.push(children[i]); } } return { blockNode, curNode, offset: offset, paraIndex: paraIndex }; }; }; var deSerialize = function deSerialize(meta, paraList, $container) { var desparaList = mapMetaToLocal(paraList); return { start: desparaList(meta.start), end: desparaList(meta.end), id: meta.id, container }; }; function getTextNode($node) { if (node.nodeType === 3) { return $node; } return $node.childNodes[0]; } var resetRange = function resetRange(selectionRange) { window.getSelection().removeAllRanges(); var selection = window.getSelection(); var range = document.createRange(); var $startnode = getTextNode(TEMP_NODES.start); var $endnode = getTextNode(TEMP_NODES.end); range.setStart($startnode, selectionRange.start.offset); range.setEnd($endnode, selectionRange.end.offset); selection.addRange(range); }; var getNodeIndex = function getNodeIndex(node) { var queue = []; var index = 0; queue.push($block); while (queue.length > 0) { var $item = queue.pop(); if (node) break; index++; var children = $item.children; for (var i = 0; i 0) { var $item = queue.pop(); if (cursor === index) { item; break; } cursor++; var children = $item.children; for (var i = 0; i 1 && arguments[1] !== undefined ? arguments[1] : ''; var root = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : document.body; if (!node || node === root) return selector; var id = node.getAttribute('id'); var className = node.getAttribute('class'); var tagName = node.tagName.toLowerCase(); var currentSelector = null; if (id && !hasClass(className, 'articlepart-selector-area_choice-button_wrap')) return selector ? "#".concat(id, ">").concat(selector) : "#".concat(id); var whiteClassName = inWhiteList(className); if (whiteClassName) { currentSelector = whiteClassName; } else if (hasClass(className, 'js_choice-img')) { currentSelector = '.js_choice-img'; } else if (hasClass(className, 'articlepart-selector-area_choice')) { currentSelector = node.dataset.splitid ? '' : tagName; } else { currentSelector = tagName; } return getNodeSelector(node.parentNode, [currentSelector, selector].filter(function (item) { return !!item; }).join('>'), root); }; var getNodeSelectorWrap = function getNodeSelectorWrap(node, root) { var selector = getNodeSelector(node, '', root); var collect = []; try { collect = root.querySelectorAll(selector); } catch (error) { console.log('get node selector wrap err', error); } var len = collect.length; var index = null; for (var i = 0; i .js_choice-img>', '>') + "|".concat(len, " ").concat(index || 0); return newSelector; }; var serializeToC = function serializeToC(nodes) { return ( nodes.map(function (item) { var node, type = item.type, idx = item.idx; var index = 0; var data = null; var meta = ''; var blockItem = getBlockNode($node); if (type === NODE_TYPE.text) { var nodeIndex = getNodeIndex(blockItem, $node.parentNode); if (node.data) { index = nodeIndex; data = $node.data; meta = node.previousSibling.data; } } else if (type === NODE_TYPE.img) { var imgs = blockItem.getElementsByTagName('img'); data = $node.src; index = Array.prototype.slice.call(imgs).slice(0).indexOf($node); } return { data: data, index: index, idx: idx, type: type, meta: meta }; }).filter(function (item) { return item.index > -1 && !!item.data; }) ); } ; var serializeToC2 = function serializeToC2(nodes, $container) { var root = $container || document.getElementById('js_content'); return nodes.map(function (item) { var node, type = item.type, idx = item.idx; var selector = null; var data = null; var meta = ''; if (type === NODE_TYPE.text) { if (node.data) { selector = getNodeSelectorWrap($node.parentNode, root); data = $node.data; meta = node.previousSibling.data; } } else if (type === NODE_TYPE.img) { selector = getNodeSelectorWrap($node, root); data = $node.src; } return { data: data, idx: idx, type: type, meta: meta, selector: selector }; }).filter(function (item) { return !!item.selector && !!item.data; }); }; function setProperty(el, name, value, priority) { if (!!el.style.setProperty) { priority = priority || null; el.style.setProperty(name, value, priority); } else if (typeof el.style.cssText !== 'undefined') { priority = priority ? '!' + priority : ''; el.style.cssText += ';' + name + ':' + value + priority + ';'; } } function hasImgNode($el) { if (!$el) return false; var nodeType = $el.nodeType, tagName = $el.tagName; if (nodeType === 3) { return false; } if (tagName === IMG_TAG) { return true; } return false; } function getContent(tree) { return tree.reduce(function (acc, cur, idx) { if (idx === 0) { if (cur.type === NODE_TYPE.text) { acc.text.push(cur.data); } else if (cur.type === NODE_TYPE.img) { acc.pic.push(cur.data); } return acc; } if (cur.type === NODE_TYPE.text) { if (tree[idx - 1].type === NODE_TYPE.text) { var text = acc.text.pop(); text += cur.data; acc.text.push(text); } else { acc.text.push(cur.data); } return acc; } if (cur.type === NODE_TYPE.img) { acc.pic.push(cur.data); } return acc; }, { audio: [], pic: [], video: [], text: [] }); } function saveNode($node, key) { TEMP_NODES[key] = $node; } function serializeNode(wrap) { var range = nodeToSelection($node); var anchorTree = serializeToC2([{ node, type: NODE_TYPE.img, idx: range.start.paraIndex }], $wrap); var anchorMeta = serialize(range); var anchorBrief = getContent(anchorTree); return { meta: { anchorTree: anchorTree, anchorMeta: anchorMeta, anchorBrief: anchorBrief }, range: range }; } function findChildIndex(parent, offset) { var childNodes = parent.childNodes; var realOffset = offset; var $node = null; var i = 0; for (i = 0; i realOffset) { break; } else { realOffset -= len; } } } return { node, cursor: realOffset }; } var qs = function qs(selector, el) { return (el || document).querySelector(selector); }; var qsAll = function qsAll(selector, el) { return (el || document).querySelectorAll(selector); }; var dom = { getDomMeta: getDomMeta, getContent: getContent, getParaList: getParaList, getBlockNode: getBlockNode, getSelectedNodes: getSelectedNodes, connectSiblingText: connectSiblingText, getTextNodeByOffset: getTextNodeByOffset, getBlockOffset: getBlockOffset, getSelection: getSelection, transferTextToElement: transferTextToElement, serialize: serialize, deSerialize: deSerialize, resetRange: resetRange, serializeToC: serializeToC, setProperty: setProperty, hasImgNode: hasImgNode, nodeToSelection: nodeToSelection, saveNode: saveNode, serializeNode: serializeNode, getNodeByIndex: getNodeByIndex, findChildIndex: findChildIndex, serializeToC2: serializeToC2, blockEleTagName: blockEleTagName, getPureBlockNode: getPureBlockNode, qs: qs, qsAll: qsAll, hasClass: hasClass }; function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; } function _objectSpread(e) { for (var r = 1; r node.data.length) { newCursor -= node.data.length; } else { node.data = node.data.slice(0, newCursor).concat(maskMat).concat(node.data.slice(newCursor + len)); } } else if (node.nodeText === 1) { newCursor -= node.innerText && node.innerText.length || 0; } } } function disputeText(data, domNode, cursor) { var len = data.length; var _dom$findChildIndex = dom.findChildIndex(domNode, cursor), textNode = _domnode, realOffset = _dom$findChildIndex.realOffset; try { textNode.splitText(realOffset); } catch (e) { if (typeof WX_BJ_REPORT !== 'undefined' && WX_BJ_REPORT.BadJs) { WX_BJ_REPORT.BadJs.report('ArticleMask:Error', 'splitText Error', { mid: 'mmbizwap:articlemask_Monitor', view: 'wap_business', _info: { type: 'disputeText textNode', data: data, cursor: cursor } }); } } var repalcedNode = textNode.nextSibling; try { repalcedNode.splitText(len); } catch (e) { if (typeof WX_BJ_REPORT !== 'undefined' && WX_BJ_REPORT.BadJs) { WX_BJ_REPORT.BadJs.report('ArticleMask:Error', 'splitText Error', { mid: 'mmbizwap:articlemask_Monitor', view: 'wap_business', _info: { type: 'disputeText nextSibling', data: data, cursor: cursor } }); } } var spanNode = document.createElement('span'); spanNode.style = 'background-color: rgba(0,0,0,0.10);'; spanNode.appendChild(repalcedNode.cloneNode(true)); repalcedNode.parentNode.replaceChild(spanNode, repalcedNode); } function disputeImage(data, domNode) { var spanNode = document.createElement('span'); spanNode.style = 'position:relative;display: inline-block;'; var iconNode = document.createElement('span'); iconNode.style = "\n position: absolute;\n top: 4px;\n left: 4px;\n display: inline-block;\n vertical-align: middle;\n width: 24px;\n height: 24px;\n background-size: cover;\n background-image: url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E %3Cpath fill='%23FFF' fill-rule='evenodd' d='M12 2c5.523 0 10 4.477 10 10s-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2zm-.004 13.339a.878.878 0 0 0-.896.882c0 .499.396.882.896.882.512 0 .902-.383.902-.882 0-.5-.39-.882-.902-.882zm.765-9.203h-1.524l.11 7.596h1.305l.11-7.596z'/%3E%3C/svg%3E\");\n "; var parent = domNode.parentNode; spanNode.appendChild(domNode.cloneNode(false)); parent.replaceChild(spanNode, domNode); spanNode.appendChild(iconNode); } function maskImage(data, domNode) { domNode.style.filter = 'blur(10px)'; domNode.style['-webkit-filter'] = 'blur(10px)'; } function hitMaskText(anchor, domNode) { var data = anchor.data, meta = anchor.meta, index = anchor.index, idx = anchor.idx; var wholeText = domNode.data; var prefixText = (meta || '') + data; if (wholeText.indexOf(prefixText) === -1) { return { hit: false }; } var itemNode = dom.getNodeByIndex(paraList[idx], index); if (itemNode) { totalHit++; } else { if (typeof WX_BJ_REPORT !== 'undefined' && WX_BJ_REPORT.BadJs) { WX_BJ_REPORT.BadJs.report('ArticleMask:Error', 'text node cannot find', { mid: 'mmbizwap:articlemask_Monitor', view: 'wap_business', _info: { anchor: anchor, wholeText: wholeText } }); } } var cursor = itemNode && itemNode.innerText.indexOf(prefixText) + (meta || '').length; return { hit: !!itemNode, $hitDom: itemNode, cursor: cursor }; } function hitMaskImage(anchor, domNode) { var index = anchor.index, idx = anchor.idx, data = anchor.data; var para = paraList[idx]; var allImgNode = para.querySelectorAll('img'); var hitItenNode = allImgNode[index]; var src = hitItenNode && (hitItenNode.getAttribute('data-src') || hitItenNode.getAttribute('src')); if (src === data) { totalHit++; return { hit: true, $hitDom: domNode, cursor: 0 }; } return { hit: false }; } function createMask(anchor, domNode) { return function (hitFn, maskFn, next) { var _hitFn = hitFn(anchor, domNode), hit = _hitFn.hit, hitDom, cursor = _hitFn.cursor; if (hit) { maskFn(anchor.data, $hitDom, cursor); next(); } }; } function maskAnchors(anchors, paraNode) { var queue = []; var cloneAnchors = _toConsumableArray(anchors); queue.push(paraNode); var anchor = null; var next = function next() { anchor = cloneAnchors.shift(); }; next(); while (queue.length > 0 && cloneAnchors.length >= 0 && anchor) { var itemNode = queue.pop(); if (!itemNode) continue; if (!anchor) continue; var nodeType = itemNode.nodeType, tagName = itemNode.tagName; var createMaskFn = createMask(anchor, itemNode); if (nodeType === 3) { if (anchor.type === NODE_TYPE.text) { createMaskFn(hitMaskText, anchor.status === STATUS.ban ? maskText : disputeText, next); } continue; } if (nodeType === 1 && tagName === IMG_TAG) { if (anchor.type === NODE_TYPE.img) { createMaskFn(hitMaskImage, anchor.status === STATUS.ban ? maskImage : disputeImage, next); } continue; } var children = itemNode.childNodes; for (var i = children.length - 1; i >= 0; i--) { queue.push(children[i]); } } } function parseSelector(selectorStr) { if (!selectorStr) return {}; var _selectorStr$split = selectorStr.split('|'), _selectorStr$split2 = _slicedToArray(_selectorStr$split, 2), selector = _selectorStr$split2[0], other = _selectorStr$split2[1]; var _other$split = other.split(' '), _other$split2 = _slicedToArray(_other$split, 2), total = _other$split2[0], index = _other$split2[1]; return { selector: selector.replace(/>/g, '>'), total: total * 1, index: index * 1 }; } function hitNode(node, anchor) { if (!node) return null; var type = anchor.type, data = anchor.data, meta = anchor.meta; if (type === NODE_TYPE.text) { var nodeText = node.innerText || node.innerHTML || ''; var prefixText = ((meta || '') + data).replace(/&/g, '&'); if (nodeText.indexOf(prefixText) !== -1) { var cursor = nodeText.indexOf(prefixText) + (meta || '').length; return { cursor: cursor, node: node }; } } if (type === NODE_TYPE.img) { var src = node && (node.getAttribute('data-src') || node.getAttribute('src')); if (src === data.replace(/&/g, '&')) { return { cursor: 0, node: node }; } } return null; } function maskNode(anchor, domNode, cursor) { var type = anchor.type, data = anchor.data, status = anchor.status; if (status !== STATUS.ban) return; if (type === NODE_TYPE.text) maskText(data, domNode, cursor); if (type === NODE_TYPE.img) maskImage(data, domNode); } function initOld(wrapNode, anchors) { paraList = dom.getParaList(wrapNode, { getNestedStructure: true, removeIgoreEle: false }); var formatAnchor = keyby(anchors, 'idx'); if (!paraList) return; (paraList || []).forEach(function (para, index) { var paraAnchors = formatAnchor[index]; if (paraAnchors && paraAnchors.length > 0) { addBanner(index, getBannerWord(paraAnchors[0])); maskAnchors(paraAnchors, para); } }); if (anchors && anchors.length !== totalHit) { if (typeof WX_BJ_REPORT !== 'undefined' && WX_BJ_REPORT.BadJs) { WX_BJ_REPORT.BadJs.report('ArticleMask:Error', 'totalHit', { mid: 'mmbizwap:articlemask_Monitor', view: 'wap_business', _info: { totalHit: totalHit, anchors: anchors } }); } } } function addChildBanner(node, anchor) { var blockNode = dom.getPureBlockNode(node); if (!blockNode) return; addBanner(blockNode, getBannerWord()); } function maskAnchors2(wrapNode, anchors) { var missNodes = []; var countList = []; var maskNodeList = []; var cacheSelector = {}; anchors.forEach(function (anchor, i) { var _parseSelector = parseSelector(anchor.selector), selector = _parseSelector.selector, index = _parseSelector.index, total = _parseSelector.total; var nodes = cacheSelector[selector] || []; if (nodes.length === 0) { try { nodes = wrapNode.querySelectorAll(selector); cacheSelector[selector] = nodes; } catch (e) { if (typeof WX_BJ_REPORT !== 'undefined' && WX_BJ_REPORT.BadJs) { WX_BJ_REPORT.BadJs.report('ArticleMask:Error', 'splitText Error', { mid: 'mmbizwap:articlemask_Monitor', view: 'wap_business', _info: { anchor: anchor } }); } } } var cursorLeft = index; var cursorRight = index; var queue = []; var node = null; var cursor = 0; var count = 0; queue.push(nodes[index]); while (queue.length) { var current = queue.pop(); var hitData = hitNode(current, anchor); count++; if (hitData && hitData.node) { node = hitData.node; cursor = hitData.cursor; break; } if (cursorLeft - 1 >= 0 && nodes[cursorLeft - 1]) { queue.push(nodes[cursorLeft - 1]); cursorLeft -= 1; } if (cursorRight + 1 ') !== -1) { missNodes.push(_objectSpread(_objectSpread({}, anchor), {}, { selector: selector && selector.slice(0, selector.lastIndexOf('>')) + "|".concat(total, " ").concat(index) })); } countList[i] = count; }); maskNodeList.forEach(function (item) { maskNode(item.anchor, item.node, item.cursor); }); if (missNodes.length) { maskAnchors2(wrapNode, missNodes); if (typeof WX_BJ_REPORT !== 'undefined' && WX_BJ_REPORT.BadJs) { WX_BJ_REPORT.BadJs.report('ArticleMask:Error', 'missNodes', { mid: 'mmbizwap:articlemask_Monitor', view: 'wap_business', _info: { missNodes: missNodes } }); } } if (typeof WX_BJ_REPORT !== 'undefined' && WX_BJ_REPORT.BadJs) { WX_BJ_REPORT.BadJs.report('ArticleMask:Info', 'querycount', { mid: 'mmbizwap:articlemask_Monitor', view: 'wap_business', _info: { countList: countList } }); } } function init2(wrapNode, anchors) { maskAnchors2(wrapNode, anchors); } function init(wrapNode, anchors) { var oldAnchors = []; var newAnchors = []; anchors.forEach(function (anchor) { if (anchor.selector) { newAnchors.push(anchor); } else { oldAnchors.push(anchor); } }); init2(wrapNode, newAnchors); if (oldAnchors.length > 0) { initOld(wrapNode, oldAnchors); } } var complainPainter = { init: init }; function setMaskNode(data, $wrap) { try { if (data.anchor_tree_msg) { var start = Date.now(); var anchors = data.anchor_tree_msg ? JSON.parse(data.anchor_tree_msg).anchor_tree : []; var protocol = window.location.protocol; complainPainter.init($wrap, anchors); wxgspeedsdk.saveSpeeds({ sample: 1, uin: window.uin, pid: protocol == 'https:' ? 462 : 417, speeds: { sid: 38, time: Date.now() - start } }); wxgspeedsdk.send(); } } catch (error) { if (typeof WX_BJ_REPORT !== 'undefined' && window.WX_BJ_REPORT.BadJs) { window.WX_BJ_REPORT.BadJs.onError(error, { anchor_tree_msg: window.anchor_tree_msg }); } } } return setMaskNode; })();(function () { 'use strict'; var AD_TYPE = { ANDROID_APP_PRODUCT_TYPE: 12, IOS_APP_PRODUCT_TYPE: 19, ADD_CONTACT_PRODUCT_TYPE: 23, MINI_GAME_PRODUCT_TYPE: 46, CARD_PRODUCT_TYPE: 36, SHOP_PRODUCT_TYPE: 30, WECHATCARD_PRODUCT_TYPE: 47, BRAND_WECHAT_PRODUCT_TYPE: 29, BRAND_GDT_PRODUCT_TYPE: 31 }; var AD_POS = { POS_BOTTOM: 0, POS_BOTTOM_PC: 38, POS_MID: 4, POS_MID_PC: 39, POS_SPONSOR: 3, POS_AD_BEFORE_VIDEO: 7, POS_AD_AFTER_VIDEO: 9, POS_AD_MID_VIDEO: 16, POS_AD_KEYWORD: 36, POS_AD_COMMENT: 43, PC_POS_AD_COMMENT: 44 }; var AD_DEST_TYPE = { AD_DEST_TYPE: 0, OUTER_DEST_TYPE: 1, APPDETAIL_DEST_TYPE: 2, BIZ_DEST_TYPE: 3, APPINFO_PAGE_DEST_TYPE: 4, WECHAT_SHOP_DEST_TYPE: 5, WECHAT_APPLET_DEST_TYPE: 6, LEAF_DEST_TYPE: 7, CANVAS_AD_DEST_TYPE: 9 }; var AD_CACHE_TIME = 0.5 * 60 * 1000; var AD_JSAPI_WHITE_LIST = ['openUrlWithExtraWebview', 'openADCanvas', 'addContact', 'profile', 'getInstallState', 'installDownloadTask', 'addDownloadTask', 'pauseDownloadTask', 'resumeDownloadTask', 'queryDownloadTask', 'launchApplication', 'writeCommData', 'adDataReport', 'downloadAppInternal', 'wxdownload:progress_change', 'menu:share:appmessage', 'menu:share:timeline', 'menu:share:weibo', 'menu:share:facebook', 'menu:general:share', 'launch3rdApp', 'addDownloadTaskStraight', 'sendAppMessage', 'shareTimeline', 'getNetworkType', 'openBizChat', 'jumpToBizProfile', 'shareWeibo', 'shareFB', 'imagePreview', 'getBackgroundAudioState', 'openWeApp', 'openEmbeddedWeApp', 'preloadMiniProgramContacts', 'preloadMiniProgramEnv', 'calRqt', 'openCardDetail', 'batchAddCard', 'handleMPPageAction', 'makePhoneCall', 'getOAID', 'saveWaid', 'batchPreloadMiniProgram', 'onScreenShot', 'handleAdAction', 'activity:state_change', 'getAdIdInfo', 'onWebPageUrlExposed', 'openFinderView', 'predownloadMiniProgramPackage', 'openCustomerServiceChat', 'showOpenIMContactProfile', 'openWXSearchPage', 'openWXSearchHalfPage']; var AD_REQ_PATH_WHITE_LIST = [ '/mp/advertisement_report', '/mp/ad_report', '/mp/ad_video_report', '/mp/jsmonitor', '/mp/ad_complaint', '/mp/jsreport', '/tp/datacenter/report', '/mp/getappmsgad', '/mp/ad_biz_info', '/mp/appmsg_video_snap', '/mp/cps_product_info', '/mp/mini_drama_info']; var AD_WEB_COMPT_REQ_PATH_WHITE_LIST = [/(https?:)?\/\/mp\.weixin\.qq\.com\/mp\/advertisement_report/, /(https?:)?\/\/mp\.weixin\.qq\.com\/mp\/ad_report/, /(https?:)?\/\/mp\.weixin\.qq\.com\/mp\/ad_video_report/, /(https?:)?\/\/mp\.weixin\.qq\.com\/mp\/jsmonitor/, /(https?:)?\/\/mp\.weixin\.qq\.com\/mp\/ad_complaint/, /(https?:)?\/\/mp\.weixin\.qq\.com\/mp\/jsreport/, /(https?:)?\/\/mp\.weixin\.qq\.com\/tp\/datacenter\/report/, /(https?:)?\/\/mp\.weixin\.qq\.com\/mp\/getappmsgad/, /(https?:)?\/\/mp\.weixin\.qq\.com\/mp\/ad_biz_info/, /(https?:)?\/\/mp\.weixin\.qq\.com\/tp\/goods_info/, /(https?:)?\/\/mp\.weixin\.qq\.com\/tp\/app_mobile/, /(https?:)?\/\/mp\.weixin\.qq\.com\/tp\/datareport\/report/, /(https?:)?\/\/mp\.weixin\.qq\.com\/promotion\/wxalandpage\/getcanvasinfo/]; var transformText = '转化按钮'; var extraText = '广告文案或辅助信息'; var defaultMidAdData = { hint_txt: '创意-20200827_1', url: 'https://ad.weixin.qq.com/guide/196?weixinadkey=59d5cf0b4fbf7d2f66cd90aaa82a5208057512dd06fcb64d7fd57e71ec15945e1744ac499e05a04999381c3bf30c21ca&gdt_vid=wx0clsqxat6lzly601&weixinadinfo=315019981.wx0clsqxat6lzly601.75.1', type: '0', rl: 'http://ad.wx.com:12638/cgi-bin/click?viewid=AQM1xOr6MFeZmWeZrowCvQcrvQUBUq4o8ER2yFgwF9grPdtUR9bIJQ8laqMAJjGlkGLuVbyABIPX6Eifa2%2FK%2Buq17IIT21tYcUnpeU4VqEEsEQhc5Pa7C7drAvl0Mz30CNepODMXeD%2BEdny8SmmxN7prV78e1L2S6oqhNjrnTqM1t40ZGU84httoAODXEjmE89IX0ncOiP1oTsgm1tYwahSkxN6HLZIb6bhxZrc5ba3mCKMZ5GV4UEyDuQCyySxtA5QTt0eQJJA%2FSgHe79yTxUrzzoGrtlhK0O3HussVeRjKcvLkE6w%2FpQBnropwT%2FmE23RT2bOoyw%2BVCMlWTtk%2Bvxh%2FIOFAmrWHYzDuNkDNRo3um26RD2TFpeyRasbZoFRAV7RA9k4P3REAH4vemxktbNq24rtuF6MFGEcXpcGOD%2FxZJlBmInM7rguFAhRQWvCy3nIpO7knN2rl2DZv%2FcfkuoP4bedzUMcxtrU2Wz%2B82EG9ULHJunGHT%2F%2BcWj%2Bv8n%2Fh9bUtAtk7Fr1HBQdkQ8SbYadhRDWWuSEC2iMfqpMyzNqLltdxhyXxMRpsruPb2p4WoHnSvuGfbnkXIKcDppOTLB38xStPIbbaaR4FC%2B4AOF1UqbtMor9JJQQNz3vspSngY%2F37uYiQXAKNYB2RAB%2BbfoYMSS2VcJvY%2B0lWH3%2BYFTmBs6%2BxixGTJmB4%2FXZZcNs4PgRs6OoIefEnLz%2FvwoAvrs%2FUPotqevoiHfq%2FlLILAzo28D%2FKSU9hOOHXrS4LrUYhK47WKSeoglnagaOZI5kGZa9iBcwj9V6FR4HEml51P9u5xaTOnPZjfEAx5l6BBxTT4379irAZCB2Zfcd6wBU2Eo5p9yXVSH%2FCH8yVAgIEsrJ9oeqpO%2FwozsQ2PkXw%2Bz77B56hYp1zYG7HK%2BCDjx1NSisa6g8PFa72xOb8wpjZ9Lao70oGSWshIjCH4kWfKX0P8uFJc22L%2FZihKj0J%2BqgC1LgiMc6SXmFHdvTSIxTRKm9GImpbVfLTN3xrT%2BGGutwMTfgWta7EDR7d6HXQBA1orNotnnK37GOw1jHud8fzQkfuMN%2F7DO6kW0wAXs4LDMhJpnHi2%2Ba4VjL8Yjh0wmTZkVy4iIPYDmYSAzuJ3aP3cXuGv%2B1JwF%2Fod7hCA6RBYwZN2fXvO5AUo7FdoRr8ssPB7eAiNhcFonMv5%2Bt8L1b7QLoXGlplvxh9Fz669q43xnDsEy8ucOfyush8RiYLPxGj4YFr2gy6%2BAV5u%2FMgZIShq149jRn42%2B%2BnmzPC8JdiiIe4p5Ec7KFFrv%2F302DcKBPI9lQDsC1xWAvIfJcnxC%2FqYgDikLE1SsurxV2PV1icS%2BpU706S2LmnpyAsZw%3D%3D', apurl: 'http://ad.wx.com:12638/cgi-bin/exposure?viewid=AQM1xOr6MFeZmWeZrowCvQcrvQUBUq4o8ER2yFgwF9grPdtUR9bIJQ8laqMAJjGlkGLuVbyABIPX6Eifa2%2FK%2Buq17IIT21tYcUnpeU4VqEEsEQhc5Pa7C7drAvl0Mz30CNepODMXeD%2BEdny8SmmxN7prV78e1L2S6oqhNjrnTqM1t40ZGU84httoAODXEjmE89IX0ncOiP1oTsgm1tYwahSkxN6HLZIb6bhxZrc5ba3mCKMZ5GV4UEyDuQCyySxtA5QTt0eQJJA%2FSgHe79yTxUrzzoGrtlhK0O3HussVeRjKcvLkE6w%2FpQBnropwT%2FmE23RT2bOoyw%2BVCMlWTtk%2Bvxh%2FIOFAmrWHYzDuNkDNRo3um26RD2TFpeyRasbZoFRAV7RA9k4P3REAH4vemxktbNq24rtuF6MFGEcXpcGOD%2FxZJlBmInM7rguFAhRQWvCy3nIpO7knN2rl2DZv%2FcfkuoP4bedzUMcxtrU2Wz%2B82EG9ULHJunGHT%2F%2BcWj%2Bv8n%2Fh9bUtAtk7Fr1HBQdkQ8SbYadhRDWWuSEC2iMfqpMyzNqLltdxhyXxMRpsruPb2p4WoHnSvuGfbnkXIKcDppOTLB38xStPIbbaaR4FC%2B4AOF1UqbtMor9JJQQNz3vspSngY%2F37uYiQXAKNYB2RAB%2BbfoYMSS2VcJvY%2B0lWH3%2BYFTmBs6%2BxixGTJmB4%2FXZZcNs4PgRs6OoIefEnLz%2FvwoAvrs%2FUPotqevoiHfq%2FlLILAzo28D%2FKSU9hOOHXrS4LrUYhK47WKSeoglnagaOZI5kGZa9iBcwj9V6FR4HEml51P9u5xaTOnPZjfEAx5l6BBxTT4379irAZCB2Zfcd6wBU2Eo5p9yXVSH%2FCH8yVAgIEsrJ9oeqpO%2FwozsQ2PkXw%2Bz77B56hYp1zYG7HK%2BCDjx1NSisa6g8PFa72xOb8wpjZ9Lao70oGSWshIjCH4kWfKX0P8uFJc22L%2FZihKj0J%2BqgC1LgiMc6SXmFHdvTSIxTRKm9GImpbVfLTN3xrT%2BGGutwMTfgWta7EDR7d6HXQBA1orNotnnK37GOw1jHud8fzQkfuMN%2F7DO6kW0wAXs4LDMhJpnHi2%2Ba4VjL8Yjh0wmTZkVy4iIPYDmYSAzuJ3aP3cXuGv%2B1JwF%2Fod7hCA6RBYwZN2fXvO5AUo7FdoRr8ssPB7eAiNhcFonMv5%2Bt8L1b7QLoXGlplvxh9Fz669q43xnDsEy8ucOfyush8RiYLPxGj4YFr2gy6%2BAV5u%2FMgZIShq149jRn42%2B%2BnmzPC8JdiiIe4p5Ec7KFFrv%2F302DcKBPI9lQDsC1xWAvIfJcnxC%2FqYgDikLE1SsurxV2PV1icS%2BpU706S2LmnpyAsZw%3D%3D', traceid: 'wx0clsqxat6lzly601', group_id: 'wx0clsqxat6lzly600_wx0clsqxat6lzly601', ticket: '', pt: 2, image_url: 'http://wxsnsdythumb.wxs.qq.com/141/20204/snscosdownload/SH/reserved/5f4604790009bfd700000000b3679d090000008d00004eec?m=1c9e9086c11018ef774e28ee3b744a67&ck=1c9e9086c11018ef774e28ee3b744a67', ad_desc: '', biz_appid: 'wx69618ae091cf2c76', biz_info: { user_name: 'gh_1e80bb81a1d2', nick_name: '微信广告', head_img: 'https://wxa.wxs.qq.com/res/images/bizsdk/preview/wxlogo.png', biz_uin: 3094043316, signature: '微信广告' }, pos_type: 4, watermark_type: 0, logo: '', is_cpm: 0, dest_type: 1, material_width: 960, material_height: 540, ad_width: 0, ad_height: 0, use_new_protocol: 2, product_type: 29, material_type: 0, crt_exp_tid: 0, crt_exp_info: '', flow_exp_info: '[{"exp_para":[{"name":94574,"value":"gb"},{"name":100036,"value":"1"}]}]', watermark_text: '活动推广', crt_size: '484', button_action: "{"button_text":"".concat(transformText, "","jump_type":1,"jump_url":"https:\\/\\/ad.weixin.qq.com\\/guide\\/196?weixinadkey=bd80a7a5a0e57a3b971b1c372bb06a3748f8f01c44f1bfe1a0aa4fe927e21037fc57ddfe77f5e0648611197259574f4b&gdt_vid=wx0clsqxat6lzly601&weixinadinfo=315019981.wx0clsqxat6lzly601.75.1","text_type":0}"), position_index: 21, shop_image: [], material_id_list: [], uxinfo: '315019981|wx0clsqxat6lzly601|289237697|0|1598496949|0|0|9020229299926746||AgI0AyUHOnPeccmEYhaAko8Pr4P95P7Vl6qjqKrxaR/CSGQ3e+STumguP/V43UuYT8o=|315020504', ext_info: '{}', ad_token: 'bf8463b9a4b692768c820c412bb705a73e8a9dd2c769f22549e4bb5aeaaeccc1358b60b6ce7546f95cfdf7f73d187572', crt_info: "[{"width":960,"height":540,"thumb_url":"http://wxsnsdythumb.wxs.qq.com/141/20204/snscosdownload/SH/reserved/5f4604790009bfd700000000b3679d090000008d00004eec?m=1c9e9086c11018ef774e28ee3b744a67&ck=1c9e9086c11018ef774e28ee3b744a67","image_url":"http://wxsnsdythumb.wxs.qq.com/141/20204/snscosdownload/SH/reserved/5f4604790009bfd700000000b3679d090000008d00004eec?m=1c9e9086c11018ef774e28ee3b744a67&ck=1c9e9086c11018ef774e28ee3b744a67","size":18323,"image_md5":"1c9e9086c11018ef774e28ee3b744a67","materialId":"112199640","card_info":{"mp_tag_type":2,"mp_brandeffect_isopen":0,"mp_tags":["".concat(extraText, ""]}}]"), reranking_ext_info: '{"tid":315020504}', ext_back_comm: '{"pctr":0.019999999553}' }; var CPS_GOODS_TYPE = { OLD_GOODS: 'mp', NEW_GOODS: 'cps-to-reader', IMAGE_GOODS: 'cps-to-image-reader', SHORT_PLAY: 'short-play', MINI_GAME: 'mini-game' }; var MOUNT_POINT = { BODY: 'body', DRAWER: 'drawer' }; var AD_CONFIG = { defaultMidAdData: defaultMidAdData, AD_TYPE: AD_TYPE, AD_POS: AD_POS, AD_CACHE_TIME: AD_CACHE_TIME, AD_DEST_TYPE: AD_DEST_TYPE, MOUNT_POINT: MOUNT_POINT, AD_FRAME_DOMAIN: 'https://wxa.wxs.qq.com', CPS_AD_FRAME_DOMAIN: 'https://file.daihuo.qq.com', INVALID_METHOD_NAME_MSG_PREFIX: 'Invalid methodName', INVALID_METHOD_TYPE_MSG_PREFIX: 'Invalid methodType', INVALID_ARGS_MSG_PREFIX: 'Invalid args', INVALID_REQ_PATH_MSG_PREFIX: 'Invalid request path', AD_IFRAME_HIDE_CLASS: 'iframe_ad_dn', AD_JSAPI_WHITE_LIST: AD_JSAPI_WHITE_LIST, AD_REQ_PATH_WHITE_LIST: AD_REQ_PATH_WHITE_LIST, AD_WEB_COMPT_REQ_PATH_WHITE_LIST: AD_WEB_COMPT_REQ_PATH_WHITE_LIST, FRAME_ERROR: 'onError', FRAME_READY: 'onFrameReadyV2', CHANGE_FRAME_STYLE: 'changeFrameStyle', PROXY_CONSOLE: 'consoleOnHostEnv', PROXY_ACTION: 'onProxyV2', PROXY_CALLBACK_ACTION: 'proxyCallbackV2', CLICK_OUTSIDE_ACTION: 'clickOutsideV2', CLICK_AD_ACTION: 'onAdClick', PAGE_SCROLL_ACTION: 'pageScrollV2', ORIGIN_VIDEO_VID_PREFIX: 'wxv', AD_VIDEO_FIN_ACTION: 'adVideoEnd', AD_VIDEO_PLAY_ACTION: 'onVideoPlayV2', AD_VIDEO_END_ACTION: 'onVideoEndV2', AD_PLAY_VIDEO_ACTION: 'playVideoV2', AD_EXPOSE_IMAGE_ACTION: 'exposeImage', AD_HIDE_IMAGE_ACTION: 'hideImage', AD_CHANGE_VIDEO_STATE: 'changeVideoPlayState', AD_VIDEO_SET_SCREEN_STATE_ACTION: 'setScreenState', AD_IMAGE_SET_EXPAND_STATE_ACTION: 'setImageExpandState', GET_APPMSGAD_READY_STATUS_ACTION: 'getAppmsgadReadyStatus', APPMSGAD_READY_ACTION: 'appmsgadReady', HAS_AD_DATA_QUERY_KEY: 'has_ad_data', GET_AD_DATA_AFTER_VIDEO_ACTION_NAME: 'getAdDataAfterVideo', SET_PAGE_DATA_ACTION_NAME: 'setPageDataV2', SET_AD_DATA_ACTION_NAME: 'setAdDataV2', SEND_AD_VID_ACTION: 'sendAdVid', GET_AD_VID_ACTION: 'getAdVid', CPS_GOODS_TYPE: CPS_GOODS_TYPE, AD_FEED_BACK_ACTION: 'feedback', EMIT_AD_DATA_ACTION: 'emitAdData', AD_TOUCH_ACTION: 'touchEvent', SET_AD_FONT_SIZE_ACTION: 'setAdFontSize', DRAWER_OPEN_CHANGE: 'onDrawerOpenChange' }; var g = { defaultContentTpl: '', config: [{ querySelector: 'redpacketcover', genId: function genId() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return decodeURIComponent(opt.node.getAttribute('data-coveruri') || ''); }, calW: function calW() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return opt.parentWidth * 0.7854; }, calH: function calH() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return this.calW({ parentWidth: opt.parentWidth }) / 0.73346 + 27 + 37; }, replaceContentCssText: '', outerContainerLeft: '', outerContainerRight: '' }, { querySelector: 'mppoi', genId: function genId() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return opt.node.getAttribute('data-id') || ''; }, calW: function calW() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return opt.parentWidth * 1; }, calH: function calH() { return 219; }, replaceContentCssText: '', appendContentCssText: 'diplay:block;', outerContainerLeft: '', outerContainerRight: '' }, { querySelector: 'mpsearch', genId: function genId() { return decodeURIComponent('mp-common-search'); }, calW: function calW() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return opt.parentWidth * 1; }, calH: function calH() { return 100; }, replaceContentCssText: '', appendContentCssText: 'diplay:block;', outerContainerLeft: '', outerContainerRight: '' }, { querySelector: 'mpvideosnap', genId: function genId() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var type = opt.node.getAttribute('data-type') || 'video'; if (type === 'live') { return decodeURIComponent(opt.node.getAttribute('data-noticeid') || ''); } return decodeURIComponent(opt.node.getAttribute('data-id') || ''); }, calW: function calW() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var type = opt.node.getAttribute('data-type') || 'video'; var width = opt.node.getAttribute('data-width') || ''; var height = opt.node.getAttribute('data-height') || ''; if (type === 'live' || type === 'topic') { return opt.parentWidth; } var ratio = 1; ratio = width / height; var computedHeight = 0; var computedWidth = 0; var isHorizontal = false; if (ratio > 1) { isHorizontal = true; ratio = 4 / 3; } else { ratio = 3 / 4; } opt.node.setAttribute('data-ratio', ratio); opt.node.setAttribute('data-isHorizontal', isHorizontal); if (isHorizontal === true) { computedWidth = opt.parentWidth; } else { if (window.innerWidth 0 && arguments[0] !== undefined ? arguments[0] : {}; var desc = opt.node.getAttribute('data-desc') || ''; var type = opt.node.getAttribute('data-type') || 'video'; var computedHeight = opt.node.getAttribute('data-computedHeight') || ''; switch (type) { case 'live': return desc ? 152 : 116; case 'topic': return 201; case 'image': case 'video': return parseFloat(computedHeight); } }, getBorderRadius: function getBorderRadius() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var type = opt.node.getAttribute('data-type') || 'video'; if (type === 'video') { return 4; } return 8; }, replaceContentCssText: '', appendContentCssText: 'display:flex;margin:0px auto;', outerContainerLeft: '', outerContainerRight: '' }, { querySelector: 'mp-wxaproduct', genId: function genId() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return decodeURIComponent(opt.node.getAttribute('data-wxaproduct-productid') || ''); }, calW: function calW() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return opt.parentWidth * 1 || '100%'; }, calH: function calH() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var cardtype = opt.node.getAttribute('data-wxaproduct-cardtype') || ''; return cardtype === 'mini' ? 124 : 466; }, replaceContentCssText: '', outerContainerLeft: '', outerContainerRight: '' }, { querySelector: 'mpprofile', genId: function genId(opt) { return opt.node.getAttribute('data-id') || ''; }, calW: function calW() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return opt.parentWidth * 1; }, calH: function calH() { return 143; }, replaceContentCssText: '', appendContentCssText: 'diplay:block;', outerContainerLeft: '', outerContainerRight: '' }, { querySelector: 'mp-common-product:not([data-cardtype="2"])', genId: function genId(opt) { return opt.node.getAttribute('data-windowproduct') || ''; }, calW: function calW() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; if (opt.node.getAttribute('data-cardtype') === "0") { return Math.min(opt.parentWidth, 400) * 1 || '100%'; } return opt.parentWidth * 1 || '100%'; }, calH: function calH(opt) { var customstyle = opt.node.getAttribute('data-customstyle') || '{}'; if (customstyle) { try { var _JSON$parse = JSON.parse(customstyle), display = _JSON$parse.display, height = _JSON$parse.height; if (display !== 'none') { var customHeight = parseInt(height, 10); var ratio; if (opt.node.getAttribute('data-cardtype') === "0") { ratio = Math.min(400, opt.parentWidth) / 350.0 || 1; } else { ratio = opt.parentWidth / 350.0 || 1; } customHeight = Math.round(customHeight * ratio); return customHeight; } return 0; } catch (err) { console.error(err); } } return 0; }, replaceContentCssText: '', appendContentCssText: 'diplay:block;', outerContainerLeft: '', outerContainerRight: '' }, { querySelector: 'mpcps:not([data-templateid="video-play"]),mp-common-cpsad:not([data-templateid="video-play"])', genId: function genId(opt) { var node = opt.node; var planId = node.getAttribute('data-planid'); var goodId = node.getAttribute('data-pid'); var traceId = node.getAttribute('data-traceid'); return goodId || planId || traceId || ''; }, calW: function calW() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var node = opt.node; var templateId = node.getAttribute('data-templateid'); var adType = node.getAttribute('data-adtype'); var width = 0; if (templateId === 'list') { width = '100%'; } else if (templateId === 'card') { if (adType === AD_CONFIG.CPS_GOODS_TYPE.SHORT_PLAY || adType === AD_CONFIG.CPS_GOODS_TYPE.MINI_GAME) { width = opt.parentWidth ? opt.parentWidth * 0.65 : '100%'; } else { width = '100%'; } } return width; }, calH: function calH(opt) { var node = opt.node; var templateId = node.getAttribute('data-templateid'); var adType = node.getAttribute('data-adtype'); var height = 0; if (templateId === 'list') { if (adType === AD_CONFIG.CPS_GOODS_TYPE.MINI_GAME) { height = 79; } else { height = 16 + 112 + 16 + 8 + 12 * 1.4; } } else if (templateId === 'card') { if (adType === AD_CONFIG.CPS_GOODS_TYPE.SHORT_PLAY) { var width = opt.parentWidth * 0.65; height = Math.ceil(width * (4 / 3)) + 68; } else if (adType === AD_CONFIG.CPS_GOODS_TYPE.MINI_GAME) { var _width = opt.parentWidth * 0.65; height = Math.ceil(_width * (4 / 3)) + 64; } else { height = Math.ceil(opt.parentWidth + 111); } } return height; }, replaceContentCssText: '', appendContentCssText: 'diplay:block;', outerContainerLeft: '', outerContainerRight: '' } ] }; function preloadingInit() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; if (typeof document.querySelectorAll !== 'function') { return; } var g = { maxWith: document.getElementById('img-content').getBoundingClientRect().width, idAttr: 'data-preloadingid' }; for (var i = 0, il = opt.config.length; i ", "<", " -1) { var arg = query[i].substring(0, eqIndex); params[arg] = query[i].substring(eqIndex + 1); } } if (params['pass_ticket']) { params['pass_ticket'] = encodeURIComponent(decode(params['pass_ticket']).replace(/\s/g, '+')); } return params; } function insertAfter(dom, afterDom) { var _p = afterDom.parentNode; if (!_p) { return; } if (_p.lastChild === afterDom) { _p.appendChild(dom); } else { _p.insertBefore(dom, afterDom.nextSibling); } } if (typeof getComputedStyle === 'undefined') { if (document.body.currentStyle) { window.getComputedStyle = function (el) { return el.currentStyle; }; } else { window.getComputedStyle = {}; } } function getMaxWith() { var container = document.getElementById('img-content'); var max_width = container.offsetWidth; var container_padding = 0; var container_style = getComputedStyle(container); container_padding = parseFloat(container_style.paddingLeft) + parseFloat(container_style.paddingRight); max_width -= container_padding; if (!max_width) { max_width = window.innerWidth - 32; } return max_width; } function getParentWidth(dom) { var parent_width = 0; var parent = dom.parentNode; var outerWidth = 0; while (true) { if (!parent || parent.nodeType != 1) break; var parent_style = getComputedStyle(parent); if (!parent_style) break; parent_width = parent.clientWidth - parseFloat(parent_style.paddingLeft) - parseFloat(parent_style.paddingRight) - outerWidth; if (parent_width > 0) break; outerWidth += parseFloat(parent_style.paddingLeft) + parseFloat(parent_style.paddingRight) + parseFloat(parent_style.marginLeft) + parseFloat(parent_style.marginRight) + parseFloat(parent_style.borderLeftWidth) + parseFloat(parent_style.borderRightWidth); parent = parent.parentNode; } return parent_width; } function getOuterW(dom) { var style = getComputedStyle(dom); var w = 0; if (!!style) { w = parseFloat(style.paddingLeft) + parseFloat(style.paddingRight) + parseFloat(style.borderLeftWidth) + parseFloat(style.borderRightWidth); } return w; } function getOuterH(dom) { var style = getComputedStyle(dom); var h = 0; if (!!style) { h = parseFloat(style.paddingTop) + parseFloat(style.paddingBottom) + parseFloat(style.borderTopWidth) + parseFloat(style.borderBottomWidth); } return h; } function getVideoWh(dom, vid, data) { var max_width = getMaxWith(); var width = max_width; var ratio_ = dom.getAttribute('data-ratio') * 1 || 4 / 3; if (data.video_page_infos && Array.isArray(data.video_page_infos) && data.video_page_infos.some(function (x) { return x.video_id === vid; })) { var videoData = data.video_page_infos.find(function (x) { return x.video_id === vid; }); if (Array.isArray(videoData.mp_video_trans_info) && videoData.mp_video_trans_info.length) { var transInfo = videoData.mp_video_trans_info[0]; if (!!transInfo.width && !!transInfo.height) { ratio_ = transInfo.width / transInfo.height; } } } var arr = [4 / 3, 16 / 9]; var ret = arr[0]; var abs = Math.abs(ret - ratio_); for (var j = 1, jl = arr.length; j parent_width ? parent_width : width; var outerW = getOuterW(dom) || 0; var outerH = getOuterH(dom) || 0; var videoW = rwidth - outerW; var videoH = videoW / ratio_; var speedDotH = 12; var rheight = videoH + outerH + speedDotH; return { w: Math.ceil(rwidth), h: Math.ceil(rheight), vh: videoH, vw: videoW, ratio: ratio_, sdh: speedDotH }; } function setImgSize(item, widthNum, widthUnit, ratio, breakParentWidth, finalSetSize) { var imgPaddingBorder = getOuterW(item) || 0; var imgPaddingBorderTopBottom = getOuterH(item) || 0; if (widthNum > getParentWidth(item) && !breakParentWidth) { widthNum = getParentWidth(item); } var heightNum = (widthNum - imgPaddingBorder) * ratio + imgPaddingBorderTopBottom; widthNum !== 'auto' && (item.style.cssText += ";width: ".concat(widthNum).concat(widthUnit, " !important;")); if (widthNum !== 'auto' && finalSetSize) { if (getComputedStyle(document.body).aspectRatio) { item.style.cssText += ";height: auto !important; aspect-ratio: calc(1/".concat(ratio, ");"); } else { item.style.cssText += ";height: ".concat(heightNum).concat(widthUnit, " !important;"); } } return { finalWidth: widthNum, finalHeight: heightNum }; } var isAccessibilityKey = 'isMpUserAccessibility'; var imgPlaceholderClass = 'js_img_placeholder'; var isAccessMode = window.localStorage.getItem(isAccessibilityKey); var imgSizeData; var validArr = ',' + [0.875, 1, 1.125, 1.25, 1.375].join(',') + ','; var match = window.location.href.match(/winzoom=(\d+(?:\.\d+)?)/); if (match && match[1]) { var winzoom = parseFloat(match[1]); if (validArr.indexOf(',' + winzoom + ',') >= 0) ; } function getImgSrcMainInfo(src) { var pathName = new URL(src).pathname; var lastIndex = pathName.lastIndexOf('/'); return lastIndex > 0 ? pathName.slice(0, lastIndex) : pathName; } function setSize(images, videos, data) { var bypassPreloading = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false; var noWidth = !document.body.clientWidth || !document.getElementById('img-content') || !document.getElementById('img-content').offsetWidth; var _loop = function _loop() { if (noWidth) { return 0; } if (window.__second_open__ && videos[vi].getAttribute('__sec_open_place_holder__')) { return 1; } var a = videos[vi]; var src_ = a.getAttribute('src') || a.getAttribute('data-src') || ''; var vid = getQuery(src_).vid || a.getAttribute('data-mpvid'); if (!vid) { return 1; } vid = vid.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ''); a.removeAttribute('src'); a.style.display = 'none'; var obj = getVideoWh(a, vid, data); var videoPlaceHolderSpan = document.createElement('span'); videoPlaceHolderSpan.className = "".concat(imgPlaceholderClass, " wx_widget_placeholder"); videoPlaceHolderSpan.setAttribute('data-vid', vid); videoPlaceHolderSpan.innerHTML = ''; videoPlaceHolderSpan.style.cssText = "width: " + obj.w + "px !important;"; insertAfter(videoPlaceHolderSpan, a); a.style.cssText += ';width: ' + obj.w + 'px !important;'; a.setAttribute('width', obj.w); { videoPlaceHolderSpan.style.cssText += 'height: ' + (obj.h - obj.sdh) + 'px !important;margin-bottom: ' + obj.sdh + 'px !important;'; a.style.cssText += 'height: ' + obj.h + 'px !important;'; a.setAttribute('height', obj.h); } a.setAttribute('data-vh', obj.vh); a.setAttribute('data-vw', obj.vw); if (a.getAttribute("data-mpvid")) { a.setAttribute("data-src", location.protocol + "//mp.weixin.qq.com/mp/readtemplate?t=pages/video_player_tmpl&auto=0&vid=" + vid); } else { a.setAttribute("data-src", location.protocol + "//v.qq.com/iframe/player.html?vid=" + vid + "&width=" + obj.vw + "&height=" + obj.vh + "&auto=0"); } a.setAttribute('__sec_open_place_holder__', true); var index = vi; (function setHitStyle() { var hitInfos = data.video_page_infos; var ret = (hitInfos || []).find(function (info) { return info.video_id === vid; }); if (!ret) return; var ori = ret.ori_status; var hit_biz_headimg = ret.hit_biz_headimg, hit_nickname = ret.hit_nickname, hit_username = ret.hit_username; var sourceBiz = ret.hit_bizuin; var selfUserName = data.user_name; if (ori === 2 && selfUserName !== hit_username) { var videoBar = document.createElement('div'); var videoBarHtml = "\n \n _(\"\u4EE5\u4E0B\u89C6\u9891\u6765\u6E90\u4E8E\")\n \n \n ").concat(hit_nickname, "\n *\n \n \n "); videoBar.innerHTML = videoBarHtml; document.querySelectorAll('.video_iframe').forEach(function (item) { if (item.getAttribute('data-mpvid') === vid && item.getAttribute('data-hasSource') !== '1') { item.setAttribute('data-hasSource', 1); item.parentNode.insertBefore(videoBar, item); } }); var avatorEle = document.getElementById(hit_biz_headimg + index); var avatorSrc = avatorEle.dataset.src; if (ret.hit_biz_headimg) avatorEle.style.backgroundImage = "url(".concat(avatorSrc, ")"); } })(); }, _ret; for (var vi = 0, viLen = videos.length; vi 1682352000) { hasWidthHeightCount && (new Image().src = "//mp.weixin.qq.com/mp/jsmonitor?idkey=330742_20_".concat(hasWidthHeightCount, "&r=").concat(Math.random())); noWidthHeightCount && (new Image().src = "//mp.weixin.qq.com/mp/jsmonitor?idkey=330742_21_".concat(noWidthHeightCount, "&r=").concat(Math.random())); if (!data.picture_page_info_list.length) { setTimeout(function () { noWidthHeightCount = document.querySelectorAll('#js_content img').length; noWidthHeightCount && (new Image().src = "//mp.weixin.qq.com/mp/jsmonitor?idkey=330742_21_".concat(noWidthHeightCount, "&r=").concat(Math.random())); }, 300); } } } function adjustTableColumnWidths() { var screenWidth = window.innerWidth; var tables = document.querySelectorAll('table'); tables.forEach(function (table) { var rows = table.querySelectorAll('tr'); var shouldSkipTable = false; for (var i = 0; i 1) { var colWidths = cells.map(function (cell) { return parseInt(cell.getAttribute('data-colwidth'), 10) || 0; }); var allEqual = colWidths.every(function (width) { return width === colWidths[0]; }); console.log('allEqual:', allEqual); if (!allEqual) { return; } var totalColWidth = colWidths.reduce(function (sum, width) { return sum + width; }, 0); cells.forEach(function (cell, index) { var colWidth = colWidths[index]; if (colWidth > 0 && totalColWidth > 0) { var widthPercentage = colWidth / totalColWidth; var newWidth = screenWidth * widthPercentage; cell.style.width = "".concat(newWidth, "px"); } }); } }); }); } adjustTableColumnWidths(); for (var im = 0, imLen = images.length; im 0) { if (!(isCarton || isEmoji)) { img.src = "data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='1px' height='1px' viewBox='0 0 1 1' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Ctitle%3E%3C/title%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' fill-opacity='0'%3E%3Cg transform='translate(-249.000000, -126.000000)' fill='%23FFFFFF'%3E%3Crect x='249' y='126' width='1' height='1'%3E%3C/rect%3E%3C/g%3E%3C/g%3E%3C/svg%3E"; if (noWidth) { var fallbackWidth = img.style.width || img.getAttribute('width') || width_; var fallbackMaxWidth = 360; fallbackWidth = parseFloat(fallbackWidth, 10) > fallbackMaxWidth ? fallbackMaxWidth : fallbackWidth; if (fallbackWidth === 'inherit') { fallbackWidth = fallbackMaxWidth; } if (fallbackWidth) { img.setAttribute('_width', !isNaN(fallbackWidth * 1) ? fallbackWidth + 'px' : fallbackWidth); } if (typeof fallbackWidth === 'string' && fallbackWidth.indexOf('%') !== -1) { fallbackWidth = parseFloat(fallbackWidth.replace('%', ''), 10) / 100 * fallbackMaxWidth; } if (fallbackWidth === 'auto') { fallbackWidth = width_; if (width_ === 'auto' || !width_) { fallbackWidth = fallbackMaxWidth; } else { fallbackWidth = width_; } } var fallbackRes = /^(\d+(?:\.\d+)?)([a-zA-Z%]+)?$/.exec(fallbackWidth); var fallbackLastWidth = fallbackRes && fallbackRes.length >= 2 ? fallbackRes[1] : 0; var fallbackUnit = fallbackRes && fallbackRes.length >= 3 && fallbackRes[2] ? fallbackRes[2] : 'px'; setImgSize(img, fallbackLastWidth, fallbackUnit, imgRatio, true); img.classList.add(imgPlaceholderClass, "wx_img_placeholder"); continue; } img.classList.add(imgPlaceholderClass, "wx_img_placeholder"); } var parent_width = getParentWidth(img) || max_width; var init_width = img.style.width || img.getAttribute('width') || width_ || parent_width; init_width = parseFloat(init_width, 10) > max_width ? max_width : init_width; if (init_width === 'inherit') { init_width = parent_width; } if (init_width) { img.setAttribute('_width', !isNaN(init_width * 1) ? init_width + 'px' : init_width); } if (typeof init_width === 'string' && init_width.indexOf('%') !== -1) { setImgSize(img, width_, 'px', imgRatio, true); parent_width = getParentWidth(img) || max_width; init_width = parseFloat(init_width.replace('%', ''), 10) / 100 * parent_width; } if (init_width === 'auto') { init_width = width_; if (width_ === 'auto' || !width_) { init_width = parent_width; } else { init_width = width_; } } var res = /^(\d+(?:\.\d+)?)([a-zA-Z%]+)?$/.exec(init_width); width_num = res && res.length >= 2 ? res[1] : 0; width_unit = res && res.length >= 3 && res[2] ? res[2] : 'px'; var imgWidth = width_num; if (isCarton || isEmoji) { img.src = imgDataSrc; img.style.height = 'auto'; } else { setImgSize(img, imgWidth, width_unit, imgRatio, true); var _setImgSize = setImgSize(img, imgWidth, width_unit, imgRatio, false, true), finalWidth = _setImgSize.finalWidth, finalHeight = _setImgSize.finalHeight; if (finalWidth (function () { 'use strict'; var AD_TYPE = { ANDROID_APP_PRODUCT_TYPE: 12, IOS_APP_PRODUCT_TYPE: 19, ADD_CONTACT_PRODUCT_TYPE: 23, MINI_GAME_PRODUCT_TYPE: 46, CARD_PRODUCT_TYPE: 36, SHOP_PRODUCT_TYPE: 30, WECHATCARD_PRODUCT_TYPE: 47, BRAND_WECHAT_PRODUCT_TYPE: 29, BRAND_GDT_PRODUCT_TYPE: 31 }; var AD_POS = { POS_BOTTOM: 0, POS_BOTTOM_PC: 38, POS_MID: 4, POS_MID_PC: 39, POS_SPONSOR: 3, POS_AD_BEFORE_VIDEO: 7, POS_AD_AFTER_VIDEO: 9, POS_AD_MID_VIDEO: 16, POS_AD_KEYWORD: 36, POS_AD_COMMENT: 43, PC_POS_AD_COMMENT: 44 }; var AD_DEST_TYPE = { AD_DEST_TYPE: 0, OUTER_DEST_TYPE: 1, APPDETAIL_DEST_TYPE: 2, BIZ_DEST_TYPE: 3, APPINFO_PAGE_DEST_TYPE: 4, WECHAT_SHOP_DEST_TYPE: 5, WECHAT_APPLET_DEST_TYPE: 6, LEAF_DEST_TYPE: 7, CANVAS_AD_DEST_TYPE: 9 }; var AD_CACHE_TIME = 0.5 * 60 * 1000; var AD_JSAPI_WHITE_LIST = ['openUrlWithExtraWebview', 'openADCanvas', 'addContact', 'profile', 'getInstallState', 'installDownloadTask', 'addDownloadTask', 'pauseDownloadTask', 'resumeDownloadTask', 'queryDownloadTask', 'launchApplication', 'writeCommData', 'adDataReport', 'downloadAppInternal', 'wxdownload:progress_change', 'menu:share:appmessage', 'menu:share:timeline', 'menu:share:weibo', 'menu:share:facebook', 'menu:general:share', 'launch3rdApp', 'addDownloadTaskStraight', 'sendAppMessage', 'shareTimeline', 'getNetworkType', 'openBizChat', 'jumpToBizProfile', 'shareWeibo', 'shareFB', 'imagePreview', 'getBackgroundAudioState', 'openWeApp', 'openEmbeddedWeApp', 'preloadMiniProgramContacts', 'preloadMiniProgramEnv', 'calRqt', 'openCardDetail', 'batchAddCard', 'handleMPPageAction', 'makePhoneCall', 'getOAID', 'saveWaid', 'batchPreloadMiniProgram', 'onScreenShot', 'handleAdAction', 'activity:state_change', 'getAdIdInfo', 'onWebPageUrlExposed', 'openFinderView', 'predownloadMiniProgramPackage', 'openCustomerServiceChat', 'showOpenIMContactProfile', 'openWXSearchPage', 'openWXSearchHalfPage']; var AD_REQ_PATH_WHITE_LIST = [ '/mp/advertisement_report', '/mp/ad_report', '/mp/ad_video_report', '/mp/jsmonitor', '/mp/ad_complaint', '/mp/jsreport', '/tp/datacenter/report', '/mp/getappmsgad', '/mp/ad_biz_info', '/mp/appmsg_video_snap', '/mp/cps_product_info', '/mp/mini_drama_info']; var AD_WEB_COMPT_REQ_PATH_WHITE_LIST = [/(https?:)?\/\/mp\.weixin\.qq\.com\/mp\/advertisement_report/, /(https?:)?\/\/mp\.weixin\.qq\.com\/mp\/ad_report/, /(https?:)?\/\/mp\.weixin\.qq\.com\/mp\/ad_video_report/, /(https?:)?\/\/mp\.weixin\.qq\.com\/mp\/jsmonitor/, /(https?:)?\/\/mp\.weixin\.qq\.com\/mp\/ad_complaint/, /(https?:)?\/\/mp\.weixin\.qq\.com\/mp\/jsreport/, /(https?:)?\/\/mp\.weixin\.qq\.com\/tp\/datacenter\/report/, /(https?:)?\/\/mp\.weixin\.qq\.com\/mp\/getappmsgad/, /(https?:)?\/\/mp\.weixin\.qq\.com\/mp\/ad_biz_info/, /(https?:)?\/\/mp\.weixin\.qq\.com\/tp\/goods_info/, /(https?:)?\/\/mp\.weixin\.qq\.com\/tp\/app_mobile/, /(https?:)?\/\/mp\.weixin\.qq\.com\/tp\/datareport\/report/, /(https?:)?\/\/mp\.weixin\.qq\.com\/promotion\/wxalandpage\/getcanvasinfo/]; var transformText = '转化按钮'; var extraText = '广告文案或辅助信息'; var defaultMidAdData = { hint_txt: '创意-20200827_1', url: 'https://ad.weixin.qq.com/guide/196?weixinadkey=59d5cf0b4fbf7d2f66cd90aaa82a5208057512dd06fcb64d7fd57e71ec15945e1744ac499e05a04999381c3bf30c21ca&gdt_vid=wx0clsqxat6lzly601&weixinadinfo=315019981.wx0clsqxat6lzly601.75.1', type: '0', rl: 'http://ad.wx.com:12638/cgi-bin/click?viewid=AQM1xOr6MFeZmWeZrowCvQcrvQUBUq4o8ER2yFgwF9grPdtUR9bIJQ8laqMAJjGlkGLuVbyABIPX6Eifa2%2FK%2Buq17IIT21tYcUnpeU4VqEEsEQhc5Pa7C7drAvl0Mz30CNepODMXeD%2BEdny8SmmxN7prV78e1L2S6oqhNjrnTqM1t40ZGU84httoAODXEjmE89IX0ncOiP1oTsgm1tYwahSkxN6HLZIb6bhxZrc5ba3mCKMZ5GV4UEyDuQCyySxtA5QTt0eQJJA%2FSgHe79yTxUrzzoGrtlhK0O3HussVeRjKcvLkE6w%2FpQBnropwT%2FmE23RT2bOoyw%2BVCMlWTtk%2Bvxh%2FIOFAmrWHYzDuNkDNRo3um26RD2TFpeyRasbZoFRAV7RA9k4P3REAH4vemxktbNq24rtuF6MFGEcXpcGOD%2FxZJlBmInM7rguFAhRQWvCy3nIpO7knN2rl2DZv%2FcfkuoP4bedzUMcxtrU2Wz%2B82EG9ULHJunGHT%2F%2BcWj%2Bv8n%2Fh9bUtAtk7Fr1HBQdkQ8SbYadhRDWWuSEC2iMfqpMyzNqLltdxhyXxMRpsruPb2p4WoHnSvuGfbnkXIKcDppOTLB38xStPIbbaaR4FC%2B4AOF1UqbtMor9JJQQNz3vspSngY%2F37uYiQXAKNYB2RAB%2BbfoYMSS2VcJvY%2B0lWH3%2BYFTmBs6%2BxixGTJmB4%2FXZZcNs4PgRs6OoIefEnLz%2FvwoAvrs%2FUPotqevoiHfq%2FlLILAzo28D%2FKSU9hOOHXrS4LrUYhK47WKSeoglnagaOZI5kGZa9iBcwj9V6FR4HEml51P9u5xaTOnPZjfEAx5l6BBxTT4379irAZCB2Zfcd6wBU2Eo5p9yXVSH%2FCH8yVAgIEsrJ9oeqpO%2FwozsQ2PkXw%2Bz77B56hYp1zYG7HK%2BCDjx1NSisa6g8PFa72xOb8wpjZ9Lao70oGSWshIjCH4kWfKX0P8uFJc22L%2FZihKj0J%2BqgC1LgiMc6SXmFHdvTSIxTRKm9GImpbVfLTN3xrT%2BGGutwMTfgWta7EDR7d6HXQBA1orNotnnK37GOw1jHud8fzQkfuMN%2F7DO6kW0wAXs4LDMhJpnHi2%2Ba4VjL8Yjh0wmTZkVy4iIPYDmYSAzuJ3aP3cXuGv%2B1JwF%2Fod7hCA6RBYwZN2fXvO5AUo7FdoRr8ssPB7eAiNhcFonMv5%2Bt8L1b7QLoXGlplvxh9Fz669q43xnDsEy8ucOfyush8RiYLPxGj4YFr2gy6%2BAV5u%2FMgZIShq149jRn42%2B%2BnmzPC8JdiiIe4p5Ec7KFFrv%2F302DcKBPI9lQDsC1xWAvIfJcnxC%2FqYgDikLE1SsurxV2PV1icS%2BpU706S2LmnpyAsZw%3D%3D', apurl: 'http://ad.wx.com:12638/cgi-bin/exposure?viewid=AQM1xOr6MFeZmWeZrowCvQcrvQUBUq4o8ER2yFgwF9grPdtUR9bIJQ8laqMAJjGlkGLuVbyABIPX6Eifa2%2FK%2Buq17IIT21tYcUnpeU4VqEEsEQhc5Pa7C7drAvl0Mz30CNepODMXeD%2BEdny8SmmxN7prV78e1L2S6oqhNjrnTqM1t40ZGU84httoAODXEjmE89IX0ncOiP1oTsgm1tYwahSkxN6HLZIb6bhxZrc5ba3mCKMZ5GV4UEyDuQCyySxtA5QTt0eQJJA%2FSgHe79yTxUrzzoGrtlhK0O3HussVeRjKcvLkE6w%2FpQBnropwT%2FmE23RT2bOoyw%2BVCMlWTtk%2Bvxh%2FIOFAmrWHYzDuNkDNRo3um26RD2TFpeyRasbZoFRAV7RA9k4P3REAH4vemxktbNq24rtuF6MFGEcXpcGOD%2FxZJlBmInM7rguFAhRQWvCy3nIpO7knN2rl2DZv%2FcfkuoP4bedzUMcxtrU2Wz%2B82EG9ULHJunGHT%2F%2BcWj%2Bv8n%2Fh9bUtAtk7Fr1HBQdkQ8SbYadhRDWWuSEC2iMfqpMyzNqLltdxhyXxMRpsruPb2p4WoHnSvuGfbnkXIKcDppOTLB38xStPIbbaaR4FC%2B4AOF1UqbtMor9JJQQNz3vspSngY%2F37uYiQXAKNYB2RAB%2BbfoYMSS2VcJvY%2B0lWH3%2BYFTmBs6%2BxixGTJmB4%2FXZZcNs4PgRs6OoIefEnLz%2FvwoAvrs%2FUPotqevoiHfq%2FlLILAzo28D%2FKSU9hOOHXrS4LrUYhK47WKSeoglnagaOZI5kGZa9iBcwj9V6FR4HEml51P9u5xaTOnPZjfEAx5l6BBxTT4379irAZCB2Zfcd6wBU2Eo5p9yXVSH%2FCH8yVAgIEsrJ9oeqpO%2FwozsQ2PkXw%2Bz77B56hYp1zYG7HK%2BCDjx1NSisa6g8PFa72xOb8wpjZ9Lao70oGSWshIjCH4kWfKX0P8uFJc22L%2FZihKj0J%2BqgC1LgiMc6SXmFHdvTSIxTRKm9GImpbVfLTN3xrT%2BGGutwMTfgWta7EDR7d6HXQBA1orNotnnK37GOw1jHud8fzQkfuMN%2F7DO6kW0wAXs4LDMhJpnHi2%2Ba4VjL8Yjh0wmTZkVy4iIPYDmYSAzuJ3aP3cXuGv%2B1JwF%2Fod7hCA6RBYwZN2fXvO5AUo7FdoRr8ssPB7eAiNhcFonMv5%2Bt8L1b7QLoXGlplvxh9Fz669q43xnDsEy8ucOfyush8RiYLPxGj4YFr2gy6%2BAV5u%2FMgZIShq149jRn42%2B%2BnmzPC8JdiiIe4p5Ec7KFFrv%2F302DcKBPI9lQDsC1xWAvIfJcnxC%2FqYgDikLE1SsurxV2PV1icS%2BpU706S2LmnpyAsZw%3D%3D', traceid: 'wx0clsqxat6lzly601', group_id: 'wx0clsqxat6lzly600_wx0clsqxat6lzly601', ticket: '', pt: 2, image_url: 'http://wxsnsdythumb.wxs.qq.com/141/20204/snscosdownload/SH/reserved/5f4604790009bfd700000000b3679d090000008d00004eec?m=1c9e9086c11018ef774e28ee3b744a67&ck=1c9e9086c11018ef774e28ee3b744a67', ad_desc: '', biz_appid: 'wx69618ae091cf2c76', biz_info: { user_name: 'gh_1e80bb81a1d2', nick_name: '微信广告', head_img: 'https://wxa.wxs.qq.com/res/images/bizsdk/preview/wxlogo.png', biz_uin: 3094043316, signature: '微信广告' }, pos_type: 4, watermark_type: 0, logo: '', is_cpm: 0, dest_type: 1, material_width: 960, material_height: 540, ad_width: 0, ad_height: 0, use_new_protocol: 2, product_type: 29, material_type: 0, crt_exp_tid: 0, crt_exp_info: '', flow_exp_info: '[{"exp_para":[{"name":94574,"value":"gb"},{"name":100036,"value":"1"}]}]', watermark_text: '活动推广', crt_size: '484', button_action: "{"button_text":"".concat(transformText, "","jump_type":1,"jump_url":"https:\\/\\/ad.weixin.qq.com\\/guide\\/196?weixinadkey=bd80a7a5a0e57a3b971b1c372bb06a3748f8f01c44f1bfe1a0aa4fe927e21037fc57ddfe77f5e0648611197259574f4b&gdt_vid=wx0clsqxat6lzly601&weixinadinfo=315019981.wx0clsqxat6lzly601.75.1","text_type":0}"), position_index: 21, shop_image: [], material_id_list: [], uxinfo: '315019981|wx0clsqxat6lzly601|289237697|0|1598496949|0|0|9020229299926746||AgI0AyUHOnPeccmEYhaAko8Pr4P95P7Vl6qjqKrxaR/CSGQ3e+STumguP/V43UuYT8o=|315020504', ext_info: '{}', ad_token: 'bf8463b9a4b692768c820c412bb705a73e8a9dd2c769f22549e4bb5aeaaeccc1358b60b6ce7546f95cfdf7f73d187572', crt_info: "[{"width":960,"height":540,"thumb_url":"http://wxsnsdythumb.wxs.qq.com/141/20204/snscosdownload/SH/reserved/5f4604790009bfd700000000b3679d090000008d00004eec?m=1c9e9086c11018ef774e28ee3b744a67&ck=1c9e9086c11018ef774e28ee3b744a67","image_url":"http://wxsnsdythumb.wxs.qq.com/141/20204/snscosdownload/SH/reserved/5f4604790009bfd700000000b3679d090000008d00004eec?m=1c9e9086c11018ef774e28ee3b744a67&ck=1c9e9086c11018ef774e28ee3b744a67","size":18323,"image_md5":"1c9e9086c11018ef774e28ee3b744a67","materialId":"112199640","card_info":{"mp_tag_type":2,"mp_brandeffect_isopen":0,"mp_tags":["".concat(extraText, ""]}}]"), reranking_ext_info: '{"tid":315020504}', ext_back_comm: '{"pctr":0.019999999553}' }; var CPS_GOODS_TYPE = { OLD_GOODS: 'mp', NEW_GOODS: 'cps-to-reader', IMAGE_GOODS: 'cps-to-image-reader', SHORT_PLAY: 'short-play', MINI_GAME: 'mini-game' }; var MOUNT_POINT = { BODY: 'body', DRAWER: 'drawer' }; var AD_CONFIG = { defaultMidAdData: defaultMidAdData, AD_TYPE: AD_TYPE, AD_POS: AD_POS, AD_CACHE_TIME: AD_CACHE_TIME, AD_DEST_TYPE: AD_DEST_TYPE, MOUNT_POINT: MOUNT_POINT, AD_FRAME_DOMAIN: 'https://wxa.wxs.qq.com', CPS_AD_FRAME_DOMAIN: 'https://file.daihuo.qq.com', INVALID_METHOD_NAME_MSG_PREFIX: 'Invalid methodName', INVALID_METHOD_TYPE_MSG_PREFIX: 'Invalid methodType', INVALID_ARGS_MSG_PREFIX: 'Invalid args', INVALID_REQ_PATH_MSG_PREFIX: 'Invalid request path', AD_IFRAME_HIDE_CLASS: 'iframe_ad_dn', AD_JSAPI_WHITE_LIST: AD_JSAPI_WHITE_LIST, AD_REQ_PATH_WHITE_LIST: AD_REQ_PATH_WHITE_LIST, AD_WEB_COMPT_REQ_PATH_WHITE_LIST: AD_WEB_COMPT_REQ_PATH_WHITE_LIST, FRAME_ERROR: 'onError', FRAME_READY: 'onFrameReadyV2', CHANGE_FRAME_STYLE: 'changeFrameStyle', PROXY_CONSOLE: 'consoleOnHostEnv', PROXY_ACTION: 'onProxyV2', PROXY_CALLBACK_ACTION: 'proxyCallbackV2', CLICK_OUTSIDE_ACTION: 'clickOutsideV2', CLICK_AD_ACTION: 'onAdClick', PAGE_SCROLL_ACTION: 'pageScrollV2', ORIGIN_VIDEO_VID_PREFIX: 'wxv', AD_VIDEO_FIN_ACTION: 'adVideoEnd', AD_VIDEO_PLAY_ACTION: 'onVideoPlayV2', AD_VIDEO_END_ACTION: 'onVideoEndV2', AD_PLAY_VIDEO_ACTION: 'playVideoV2', AD_EXPOSE_IMAGE_ACTION: 'exposeImage', AD_HIDE_IMAGE_ACTION: 'hideImage', AD_CHANGE_VIDEO_STATE: 'changeVideoPlayState', AD_VIDEO_SET_SCREEN_STATE_ACTION: 'setScreenState', AD_IMAGE_SET_EXPAND_STATE_ACTION: 'setImageExpandState', GET_APPMSGAD_READY_STATUS_ACTION: 'getAppmsgadReadyStatus', APPMSGAD_READY_ACTION: 'appmsgadReady', HAS_AD_DATA_QUERY_KEY: 'has_ad_data', GET_AD_DATA_AFTER_VIDEO_ACTION_NAME: 'getAdDataAfterVideo', SET_PAGE_DATA_ACTION_NAME: 'setPageDataV2', SET_AD_DATA_ACTION_NAME: 'setAdDataV2', SEND_AD_VID_ACTION: 'sendAdVid', GET_AD_VID_ACTION: 'getAdVid', CPS_GOODS_TYPE: CPS_GOODS_TYPE, AD_FEED_BACK_ACTION: 'feedback', EMIT_AD_DATA_ACTION: 'emitAdData', AD_TOUCH_ACTION: 'touchEvent', SET_AD_FONT_SIZE_ACTION: 'setAdFontSize', DRAWER_OPEN_CHANGE: 'onDrawerOpenChange' }; var g = { defaultContentTpl: '', config: [{ querySelector: 'redpacketcover', genId: function genId() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return decodeURIComponent(opt.node.getAttribute('data-coveruri') || ''); }, calW: function calW() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return opt.parentWidth * 0.7854; }, calH: function calH() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return this.calW({ parentWidth: opt.parentWidth }) / 0.73346 + 27 + 37; }, replaceContentCssText: '', outerContainerLeft: '', outerContainerRight: '' }, { querySelector: 'mppoi', genId: function genId() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return opt.node.getAttribute('data-id') || ''; }, calW: function calW() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return opt.parentWidth * 1; }, calH: function calH() { return 219; }, replaceContentCssText: '', appendContentCssText: 'diplay:block;', outerContainerLeft: '', outerContainerRight: '' }, { querySelector: 'mpsearch', genId: function genId() { return decodeURIComponent('mp-common-search'); }, calW: function calW() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return opt.parentWidth * 1; }, calH: function calH() { return 100; }, replaceContentCssText: '', appendContentCssText: 'diplay:block;', outerContainerLeft: '', outerContainerRight: '' }, { querySelector: 'mpvideosnap', genId: function genId() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var type = opt.node.getAttribute('data-type') || 'video'; if (type === 'live') { return decodeURIComponent(opt.node.getAttribute('data-noticeid') || ''); } return decodeURIComponent(opt.node.getAttribute('data-id') || ''); }, calW: function calW() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var type = opt.node.getAttribute('data-type') || 'video'; var width = opt.node.getAttribute('data-width') || ''; var height = opt.node.getAttribute('data-height') || ''; if (type === 'live' || type === 'topic') { return opt.parentWidth; } var ratio = 1; ratio = width / height; var computedHeight = 0; var computedWidth = 0; var isHorizontal = false; if (ratio > 1) { isHorizontal = true; ratio = 4 / 3; } else { ratio = 3 / 4; } opt.node.setAttribute('data-ratio', ratio); opt.node.setAttribute('data-isHorizontal', isHorizontal); if (isHorizontal === true) { computedWidth = opt.parentWidth; } else { if (window.innerWidth 0 && arguments[0] !== undefined ? arguments[0] : {}; var desc = opt.node.getAttribute('data-desc') || ''; var type = opt.node.getAttribute('data-type') || 'video'; var computedHeight = opt.node.getAttribute('data-computedHeight') || ''; switch (type) { case 'live': return desc ? 152 : 116; case 'topic': return 201; case 'image': case 'video': return parseFloat(computedHeight); } }, getBorderRadius: function getBorderRadius() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var type = opt.node.getAttribute('data-type') || 'video'; if (type === 'video') { return 4; } return 8; }, replaceContentCssText: '', appendContentCssText: 'display:flex;margin:0px auto;', outerContainerLeft: '', outerContainerRight: '' }, { querySelector: 'mp-wxaproduct', genId: function genId() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return decodeURIComponent(opt.node.getAttribute('data-wxaproduct-productid') || ''); }, calW: function calW() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return opt.parentWidth * 1 || '100%'; }, calH: function calH() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var cardtype = opt.node.getAttribute('data-wxaproduct-cardtype') || ''; return cardtype === 'mini' ? 124 : 466; }, replaceContentCssText: '', outerContainerLeft: '', outerContainerRight: '' }, { querySelector: 'mpprofile', genId: function genId(opt) { return opt.node.getAttribute('data-id') || ''; }, calW: function calW() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; return opt.parentWidth * 1; }, calH: function calH() { return 143; }, replaceContentCssText: '', appendContentCssText: 'diplay:block;', outerContainerLeft: '', outerContainerRight: '' }, { querySelector: 'mp-common-product:not([data-cardtype="2"])', genId: function genId(opt) { return opt.node.getAttribute('data-windowproduct') || ''; }, calW: function calW() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; if (opt.node.getAttribute('data-cardtype') === "0") { return Math.min(opt.parentWidth, 400) * 1 || '100%'; } return opt.parentWidth * 1 || '100%'; }, calH: function calH(opt) { var customstyle = opt.node.getAttribute('data-customstyle') || '{}'; if (customstyle) { try { var _JSON$parse = JSON.parse(customstyle), display = _JSON$parse.display, height = _JSON$parse.height; if (display !== 'none') { var customHeight = parseInt(height, 10); var ratio; if (opt.node.getAttribute('data-cardtype') === "0") { ratio = Math.min(400, opt.parentWidth) / 350.0 || 1; } else { ratio = opt.parentWidth / 350.0 || 1; } customHeight = Math.round(customHeight * ratio); return customHeight; } return 0; } catch (err) { console.error(err); } } return 0; }, replaceContentCssText: '', appendContentCssText: 'diplay:block;', outerContainerLeft: '', outerContainerRight: '' }, { querySelector: 'mpcps:not([data-templateid="video-play"]),mp-common-cpsad:not([data-templateid="video-play"])', genId: function genId(opt) { var node = opt.node; var planId = node.getAttribute('data-planid'); var goodId = node.getAttribute('data-pid'); var traceId = node.getAttribute('data-traceid'); return goodId || planId || traceId || ''; }, calW: function calW() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var node = opt.node; var templateId = node.getAttribute('data-templateid'); var adType = node.getAttribute('data-adtype'); var width = 0; if (templateId === 'list') { width = '100%'; } else if (templateId === 'card') { if (adType === AD_CONFIG.CPS_GOODS_TYPE.SHORT_PLAY || adType === AD_CONFIG.CPS_GOODS_TYPE.MINI_GAME) { width = opt.parentWidth ? opt.parentWidth * 0.65 : '100%'; } else { width = '100%'; } } return width; }, calH: function calH(opt) { var node = opt.node; var templateId = node.getAttribute('data-templateid'); var adType = node.getAttribute('data-adtype'); var height = 0; if (templateId === 'list') { if (adType === AD_CONFIG.CPS_GOODS_TYPE.MINI_GAME) { height = 79; } else { height = 16 + 112 + 16 + 8 + 12 * 1.4; } } else if (templateId === 'card') { if (adType === AD_CONFIG.CPS_GOODS_TYPE.SHORT_PLAY) { var width = opt.parentWidth * 0.65; height = Math.ceil(width * (4 / 3)) + 68; } else if (adType === AD_CONFIG.CPS_GOODS_TYPE.MINI_GAME) { var _width = opt.parentWidth * 0.65; height = Math.ceil(_width * (4 / 3)) + 64; } else { height = Math.ceil(opt.parentWidth + 111); } } return height; }, replaceContentCssText: '', appendContentCssText: 'diplay:block;', outerContainerLeft: '', outerContainerRight: '' } ] }; function preloadingInit() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; if (typeof document.querySelectorAll !== 'function') { return; } var g = { maxWith: document.getElementById('img-content').getBoundingClientRect().width, idAttr: 'data-preloadingid' }; for (var i = 0, il = opt.config.length; i function htmlDecode(str) { return str .replace(/'/g, '\'') .replace(//g, '\n') .replace(/ /g, ' ') .replace(/ 0) { originSvrStyleType = parseInt(originStyleType); } else if (!isNaN(parseInt(originTypeSetting))) { originSvrStyleType = parseInt(originTypeSetting); } else { originSvrStyleType = 0; } if (reprint_type > 0 && originSvrStyleType !== currentSvrStyleType && parseInt(reprintEditable) === 0) { var dc = document.getElementById('js_content').classList; dc.remove('autoTypeSetting'); dc.remove('autoTypeSetting24'); dc.remove('autoTypeSetting24psection'); var finalSetting = parseInt(originSvrStyleType); if (finalSetting === 1) { dc.add('autoTypeSetting'); } else if (finalSetting === 2) { dc.add('autoTypeSetting24'); } else if (finalSetting === 3) { dc.add('autoTypeSetting24psection'); } } window.wxtoken = "777"; window.is_login = '' * 1; var title = "花叔"; var is_new_msg = true; var is_wash = '' * 1; var topbarEnable = false; var enterid = "1779245290" * 1 || "1779245290" * 1 || "" * 1 || parseInt(Date.now() / 1000); var reloadid = '' * 1 || parseInt(Date.now() / 1000); var reloadseq = '' * 1 || 1; var miniprogram_appid = ""; var defaultAvatarUrl = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBjbGlwLXBhdGg9InVybCgjY2xpcDBfNDIyMF8yNjc0KSI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTAgMGg0MHY0MEgweiIvPjxwYXRoIGZpbGw9IiNFREVERUQiIGQ9Ik0wIDBoNDB2NDBIMHoiLz48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTExLjUgMjlhMSAxIDAgMCAxLTEtMXYtLjY4NGMwLS42ODYuNDk4LTEuNDg0IDEuMTE0LTEuNzg1bDUuNjYtMi43NjJjLjgyMS0uNCAxLjAxMi0xLjI4OC40Mi0xLjk5bC0uMzYyLS40MjljLS43MzYtLjg3Mi0xLjMzMi0yLjUtMS4zMzItMy42NFYxNWMwLTIuMjEgMS43OTUtNCA0LTQgMi4yMSAwIDQgMS43OTMgNCA0djEuNzFjMCAxLjE0LS42IDIuNzczLTEuMzMyIDMuNjQybC0uMzYxLjQyOGMtLjU5LjY5OS0uNDA2IDEuNTg4LjQxOSAxLjk5bDUuNjYgMi43NjJjLjYxNS4zIDEuMTE0IDEuMDkzIDEuMTE0IDEuNzg0VjI4YTEgMSAwIDAgMS0xIDFoLTE3eiIgZmlsbD0iIzAwMCIgZmlsbC1vcGFjaXR5PSIuOSIgb3BhY2l0eT0iLjIiLz48L2c+PGRlZnM+PGNsaXBQYXRoIGlkPSJjbGlwMF80MjIwXzI2NzQiPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0wIDBoNDB2NDBIMHoiLz48L2NsaXBQYXRoPjwvZGVmcz48L3N2Zz4='; document.addEventListener('DOMContentLoaded', function () { window.domCompleteTime = Date.now(); }); var hasRecommendMsg = 0; ; var isPayTopic = '' * 1; var payTopicPrice = '' * 1; var isRemovedFromPayTopic = '' * 1; var isPaySubscribe = '0' * 1; var isPaid = '0' * 1; var isRefund = '' * 1; var payShowIAPPrice = 1; var payProductId = '' || ''; var previewPercent = '0' || ''; var payGiftsCount = '0' * 1 || 0; var payDesc = htmlDecode(''); var payFreeGift = '' * 1 || 0; var is_finished_preview = 0; var jump2pay = '' * 1; var isFans; var can_reward = '0' * 1 || 0; var is_need_reward = (isPaySubscribe && !isPaid) ? 0 : "0" * 1; var rewardsn = ''; var rewardTimestamp = '' * 1 || 0; var is_teenager = '' * 1 || 0; var is_care_mode = '' * 1 || 0; var zhuge_user_limit = '' * 1 || 0; var segment_comment_id = '4521810537428697091'; var showRewardListDialog = '' * 1 || 0; var colorScheme = ''; var iapPriceInfo = { }; var productPayPackage = { iap_price_info: iapPriceInfo }; var isCartoonCopyright = '0' * 1; var show_msg_voice = '' * 1; var qnaCardData = ''; var exptype = '' || ''; var expsessionid = '' || ''; var goContentId = ''; var goReplyId = ''; var fromCommentShare = ''; var extra_comment_id = '4521810536539504640' || '0'; var goAddedInfo = '' * 1; var goAddedInfoContentId = ''; var hitProduct = '' * 1; var preload_comment_list = ''; var preload_comment_total_cnt = '' * 1; var show_related_article = '' * 1; var wwdistype = ''; var refuteSourceUrl = ''; var verify_status = "1" * 1; window.cgiData = { appImg: '//res.wx.qq.com/mmbizappmsg/zh_CN/htmledition/js/images/pic/pic_tencent_video7e1b77.png', } var loveNotifyMsg = '' * 1; var loveFriendId = ''; window.ip_wording = { countryName: '美国', countryId: '840', provinceName: '', provinceId: '', cityName: '', cityId: '' }; window.show_ip_wording = '1' * 1; window.source_appid = 'wx7507e06ae00b968a' || 'wxc3923acb47c0d396'; window.is_over_sea = '0' * 1; window.showAdMark = "0" * 1; window.is_title_modified = "" * 1; window.alias = "WatsonBM" || ""; window.claim_source = { claim_source_type: '' * 1 || 0, claim_source: '', media_source_type_info: { }, aigc_type: '' * 1 || 0, aigc_wording: '', }; window.hideAdMarkOnCps = ("" || "0" * 1) ? 1 : 0; window.bar_version = '' * 1; window.short_link = '' || ''; window.appmsg_bar_data = { verify_status: '' * 1, show_like: '' * 1, like_count: '' * 1, show_share: '' * 1, share_count: '' * 1, show_old_like: '' * 1, old_like_count: '' * 1, show_collect: '' * 1, collect_count: '' * 1, comment_enabled: '' * 1, comment_count: '' * 1, show_friend_seen: '' * 1, friend_seen_info: { }, is_subscribed: '' * 1, friend_subscribe_count: '' * 1, ecs_jump_info_str: '', red_flower_like_info: { is_red_flower_like: '0' * 1 || 0, red_flower_wording: '', tencent_gongyi_wxa_path: '', tencent_gongyi_wxa_appid: '', red_flower_like_sn: '', tencent_gongyi_wxa_username: '', }, is_show_newsflash_feeds: '' * 1 === 1, newsflash_feeds_url: '', }; window.subcount_version = '' * 1; window.show_comment_bar = '' * 1; window.picture_page_info_list = [ ]; window.show_comment_entrance = '' * 1; window.search_keywords = [ { keyword: htmlDecode("Anthropic"), s1s_stat_info: htmlDecode('%7B%22bizuin%22%3A3869059014%2C%22msgid%22%3A2247490203%2C%22msgidx%22%3A1%2C%22docid%22%3A%228863571527187500363%22%2C%22keywordItem%22%3A%7B%22keyword%22%3A%22Anthropic%22%2C%22section_idx%22%3A5%2C%22begin_idx%22%3A13%2C%22end_idx%22%3A21%2C%22type%22%3A2048%2C%22lemma_id%22%3A%22%22%7D%2C%22category%22%3A%22%E7%A7%91%E6%8A%80_%E4%BF%A1%E6%81%AF%E6%8A%80%E6%9C%AF%3A0.354310%22%2C%22reqId%22%3A15749529532733454390%2C%22S1SPageType%22%3A1%2C%22strReqId%22%3A%2215749529532733454390%22%2C%22orgReqId%22%3A%226901397505047175039%22%2C%22item_show_type%22%3A0%2C%22common_value_expt%22%3A0%2C%22highlight_preload%22%3A0%7D'), s1s_context_info: htmlDecode('%7B%22keyword%22%3A%22anthropic%22%2C%22isNeedUpdateGPTInfo%22%3Afalse%2C%22S1SPageType%22%3A1%2C%22search_id%22%3A%226901397505047175039%22%2C%22doc_info%22%3A%7B%22triple%22%3A%7B%22bizuin%22%3A3869059014%2C%22msgid%22%3A2247490203%2C%22msgidx%22%3A1%7D%2C%22docid%22%3A8863571527187501056%2C%22publish_time%22%3A1779145260%7D%2C%22idx_range%22%3A%7B%22section_idx%22%3A5%2C%22begin_idx%22%3A13%2C%22end_idx%22%3A21%7D%2C%22expt_value%22%3A0%2C%22source%22%3A2048%2C%22needPreRender%22%3Afalse%7D'), s1s_jsapi_paras: htmlDecode('{"query":"Anthropic","scene":139,"hiddenSearchHeader":0,"webviewHeightRatio":0.699999988,"kvItems":[{"key":"mpEndHalfPageResultTab","textValue":"0"},{"key":"firstSearchRequest","uintValue":1},{"key":"MPHalfSearchAIBox","uintValue":3}],"sessionKvItems":[{"key":"mpEndHalfPageResultTab","textValue":"0"},{"key":"MPHalfSearchAIBox","uintValue":3}],"parentType":135,"isAutoShowUnitInHalfScreen":1}'), s1s_jsapi_name: 'openWXSearchHalfPage', idx_range_list: [ { begin_idx: '13', end_idx: '21', section_idx: '5', } , { begin_idx: '3', end_idx: '11', section_idx: '363', } ], } , { keyword: htmlDecode("GTM"), s1s_stat_info: htmlDecode('%7B%22bizuin%22%3A3869059014%2C%22msgid%22%3A2247490203%2C%22msgidx%22%3A1%2C%22docid%22%3A%228863571527187500363%22%2C%22keywordItem%22%3A%7B%22keyword%22%3A%22GTM%22%2C%22section_idx%22%3A310%2C%22begin_idx%22%3A4%2C%22end_idx%22%3A6%2C%22type%22%3A2048%2C%22baike_docid%22%3A%226072793324048899408%22%2C%22lemma_id%22%3A%22%22%7D%2C%22category%22%3A%22%E7%A7%91%E6%8A%80_%E4%BF%A1%E6%81%AF%E6%8A%80%E6%9C%AF%3A0.354310%22%2C%22reqId%22%3A15749529532733454390%2C%22S1SPageType%22%3A1%2C%22strReqId%22%3A%2215749529532733454390%22%2C%22orgReqId%22%3A%226901397505047175039%22%2C%22item_show_type%22%3A0%2C%22common_value_expt%22%3A0%2C%22highlight_preload%22%3A0%7D'), s1s_context_info: htmlDecode('%7B%22keyword%22%3A%22gtm%22%2C%22isNeedUpdateGPTInfo%22%3Afalse%2C%22S1SPageType%22%3A1%2C%22search_id%22%3A%226901397505047175039%22%2C%22doc_info%22%3A%7B%22triple%22%3A%7B%22bizuin%22%3A3869059014%2C%22msgid%22%3A2247490203%2C%22msgidx%22%3A1%7D%2C%22docid%22%3A8863571527187501056%2C%22publish_time%22%3A1779145260%7D%2C%22idx_range%22%3A%7B%22section_idx%22%3A310%2C%22begin_idx%22%3A4%2C%22end_idx%22%3A6%7D%2C%22expt_value%22%3A0%2C%22source%22%3A2048%2C%22needPreRender%22%3Afalse%7D'), s1s_jsapi_paras: htmlDecode('{"query":"GTM","scene":139,"hiddenSearchHeader":0,"webviewHeightRatio":0.699999988,"kvItems":[{"key":"mpEndHalfPageResultTab","textValue":"0"},{"key":"firstSearchRequest","uintValue":1},{"key":"MPHalfSearchAIBox","uintValue":3}],"sessionKvItems":[{"key":"mpEndHalfPageResultTab","textValue":"0"},{"key":"MPHalfSearchAIBox","uintValue":3}],"parentType":135,"isAutoShowUnitInHalfScreen":1}'), s1s_jsapi_name: 'openWXSearchHalfPage', idx_range_list: [ { begin_idx: '4', end_idx: '6', section_idx: '310', } ], } , { keyword: htmlDecode("AI-Native"), s1s_stat_info: htmlDecode('%7B%22bizuin%22%3A3869059014%2C%22msgid%22%3A2247490203%2C%22msgidx%22%3A1%2C%22docid%22%3A%228863571527187500363%22%2C%22keywordItem%22%3A%7B%22keyword%22%3A%22AI-Native%22%2C%22section_idx%22%3A29%2C%22begin_idx%22%3A0%2C%22end_idx%22%3A8%2C%22type%22%3A128%2C%22lemma_id%22%3A%22%22%7D%2C%22category%22%3A%22%E7%A7%91%E6%8A%80_%E4%BF%A1%E6%81%AF%E6%8A%80%E6%9C%AF%3A0.354310%22%2C%22reqId%22%3A15749529532733454390%2C%22S1SPageType%22%3A1%2C%22strReqId%22%3A%2215749529532733454390%22%2C%22orgReqId%22%3A%226901397505047175039%22%2C%22item_show_type%22%3A0%2C%22common_value_expt%22%3A0%2C%22highlight_preload%22%3A0%7D'), s1s_context_info: htmlDecode('%7B%22keyword%22%3A%22ai-native%22%2C%22isNeedUpdateGPTInfo%22%3Afalse%2C%22S1SPageType%22%3A1%2C%22search_id%22%3A%226901397505047175039%22%2C%22doc_info%22%3A%7B%22triple%22%3A%7B%22bizuin%22%3A3869059014%2C%22msgid%22%3A2247490203%2C%22msgidx%22%3A1%7D%2C%22docid%22%3A8863571527187501056%2C%22publish_time%22%3A1779145260%7D%2C%22idx_range%22%3A%7B%22section_idx%22%3A29%2C%22begin_idx%22%3A0%2C%22end_idx%22%3A8%7D%2C%22expt_value%22%3A0%2C%22source%22%3A128%2C%22needPreRender%22%3Afalse%7D'), s1s_jsapi_paras: htmlDecode('{"query":"AI-Native","scene":139,"hiddenSearchHeader":0,"webviewHeightRatio":0.699999988,"kvItems":[{"key":"mpEndHalfPageResultTab","textValue":"0"},{"key":"firstSearchRequest","uintValue":1},{"key":"MPHalfSearchAIBox","uintValue":3}],"sessionKvItems":[{"key":"mpEndHalfPageResultTab","textValue":"0"},{"key":"MPHalfSearchAIBox","uintValue":3}],"parentType":135,"isAutoShowUnitInHalfScreen":1}'), s1s_jsapi_name: 'openWXSearchHalfPage', idx_range_list: [ { begin_idx: '0', end_idx: '8', section_idx: '29', } , { begin_idx: '35', end_idx: '43', section_idx: '30', } ], } , { keyword: htmlDecode("AI Native"), s1s_stat_info: htmlDecode('%7B%22bizuin%22%3A3869059014%2C%22msgid%22%3A2247490203%2C%22msgidx%22%3A1%2C%22docid%22%3A%228863571527187500363%22%2C%22keywordItem%22%3A%7B%22keyword%22%3A%22AI%20Native%22%2C%22section_idx%22%3A5%2C%22begin_idx%22%3A82%2C%22end_idx%22%3A90%2C%22type%22%3A128%2C%22lemma_id%22%3A%22%22%7D%2C%22category%22%3A%22%E7%A7%91%E6%8A%80_%E4%BF%A1%E6%81%AF%E6%8A%80%E6%9C%AF%3A0.354310%22%2C%22reqId%22%3A15749529532733454390%2C%22S1SPageType%22%3A1%2C%22strReqId%22%3A%2215749529532733454390%22%2C%22orgReqId%22%3A%226901397505047175039%22%2C%22item_show_type%22%3A0%2C%22common_value_expt%22%3A0%2C%22highlight_preload%22%3A0%7D'), s1s_context_info: htmlDecode('%7B%22keyword%22%3A%22ai%20native%22%2C%22isNeedUpdateGPTInfo%22%3Afalse%2C%22S1SPageType%22%3A1%2C%22search_id%22%3A%226901397505047175039%22%2C%22doc_info%22%3A%7B%22triple%22%3A%7B%22bizuin%22%3A3869059014%2C%22msgid%22%3A2247490203%2C%22msgidx%22%3A1%7D%2C%22docid%22%3A8863571527187501056%2C%22publish_time%22%3A1779145260%7D%2C%22idx_range%22%3A%7B%22section_idx%22%3A5%2C%22begin_idx%22%3A82%2C%22end_idx%22%3A90%7D%2C%22expt_value%22%3A0%2C%22source%22%3A128%2C%22needPreRender%22%3Afalse%7D'), s1s_jsapi_paras: htmlDecode('{"query":"AI Native","scene":139,"hiddenSearchHeader":0,"webviewHeightRatio":0.699999988,"kvItems":[{"key":"mpEndHalfPageResultTab","textValue":"0"},{"key":"firstSearchRequest","uintValue":1},{"key":"MPHalfSearchAIBox","uintValue":3}],"sessionKvItems":[{"key":"mpEndHalfPageResultTab","textValue":"0"},{"key":"MPHalfSearchAIBox","uintValue":3}],"parentType":135,"isAutoShowUnitInHalfScreen":1}'), s1s_jsapi_name: 'openWXSearchHalfPage', idx_range_list: [ { begin_idx: '82', end_idx: '90', section_idx: '5', } ], } , { keyword: htmlDecode("PMF"), s1s_stat_info: htmlDecode('%7B%22bizuin%22%3A3869059014%2C%22msgid%22%3A2247490203%2C%22msgidx%22%3A1%2C%22docid%22%3A%228863571527187500363%22%2C%22keywordItem%22%3A%7B%22keyword%22%3A%22PMF%22%2C%22section_idx%22%3A160%2C%22begin_idx%22%3A112%2C%22end_idx%22%3A114%2C%22type%22%3A16384%2C%22lemma_id%22%3A%22%22%7D%2C%22category%22%3A%22%E7%A7%91%E6%8A%80_%E4%BF%A1%E6%81%AF%E6%8A%80%E6%9C%AF%3A0.354310%22%2C%22reqId%22%3A15749529532733454390%2C%22S1SPageType%22%3A1%2C%22strReqId%22%3A%2215749529532733454390%22%2C%22orgReqId%22%3A%226901397505047175039%22%2C%22item_show_type%22%3A0%2C%22common_value_expt%22%3A0%2C%22highlight_preload%22%3A0%7D'), s1s_context_info: htmlDecode('%7B%22keyword%22%3A%22pmf%22%2C%22isNeedUpdateGPTInfo%22%3Afalse%2C%22S1SPageType%22%3A1%2C%22search_id%22%3A%226901397505047175039%22%2C%22doc_info%22%3A%7B%22triple%22%3A%7B%22bizuin%22%3A3869059014%2C%22msgid%22%3A2247490203%2C%22msgidx%22%3A1%7D%2C%22docid%22%3A8863571527187501056%2C%22publish_time%22%3A1779145260%7D%2C%22idx_range%22%3A%7B%22section_idx%22%3A160%2C%22begin_idx%22%3A112%2C%22end_idx%22%3A114%7D%2C%22expt_value%22%3A0%2C%22source%22%3A16384%2C%22needPreRender%22%3Afalse%7D'), s1s_jsapi_paras: htmlDecode('{"query":"PMF","scene":139,"hiddenSearchHeader":0,"webviewHeightRatio":0.699999988,"kvItems":[{"key":"mpEndHalfPageResultTab","textValue":"0"},{"key":"firstSearchRequest","uintValue":1},{"key":"MPHalfSearchAIBox","uintValue":3}],"sessionKvItems":[{"key":"mpEndHalfPageResultTab","textValue":"0"},{"key":"MPHalfSearchAIBox","uintValue":3}],"parentType":135,"isAutoShowUnitInHalfScreen":1}'), s1s_jsapi_name: 'openWXSearchHalfPage', idx_range_list: [ { begin_idx: '112', end_idx: '114', section_idx: '160', } ], } ]; window.s1s_keywords_exp_info = 'CMbP9LQOEJv1168IGAEiEzg4NjM1NzE1MjcxODc1MDAzNjMo/77qsPOOrONf'; var need_baike_preload = true; ; window.ad_keywords = [ ]; window.show_ad_keyword = 'false'; window.get_search_keyword_realtime = '0' * 1; window.clear_desc_flag = "" * 1; window.mmlisten_playlist_info_buffer = ''; window.key_text = ''; window.appmsg_listen_id = '150440632477525545'; if (window.isPaySubscribe) { function onWeixinJsBridgeReady() { window.WeixinJSBridge.invoke('hideMenuItems', { menuList: ['control:showButtonScreenShot'] }, function (res) {}); } if (typeof WeixinJSBridge === 'undefined') { if (document.addEventListener) { document.addEventListener('WeixinJSBridgeReady', onWeixinJsBridgeReady, false); } else if (document.attachEvent) { document.attachEvent('WeixinJSBridgeReady', onWeixinJsBridgeReady); document.attachEvent('onWeixinJSBridgeReady', onWeixinJsBridgeReady); } } else { onWeixinJsBridgeReady(); } } var __INLINE_SCRIPT__ = (function () { 'use strict'; var dealLikeReadShow_en = function dealLikeReadShow_en(realNum, showZero) { var defaultStr = showZero ? '0' : ''; if (typeof LANG === 'undefined' || !window.LANG) { return parseInt(realNum) === 0 ? defaultStr : realNum; } if (window.LANG == 'en') { var showHTML = ''; if (parseInt(realNum) > 100000) { showHTML = 100 + 'k+'; } else if (parseInt(realNum) > 10000 && parseInt(realNum) = o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } function _unsupportedIterableToArray$2(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$2(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$2(o, minLen); } function _arrayLikeToArray$2(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i b; } }; function cpVersion(ver, op, canEq, type) { var mmver = false; switch (type) { case 'mac': mmver = getMac(); break; case 'windows': mmver = getWindowsVersionFormat(); break; case 'wxwork': mmver = getWxWork(); break; case 'mpapp': mmver = getMpApp(); break; case 'unifiedpc': mmver = getUnifiedPcVer(); break; default: mmver = get(); break; } if (!mmver) { return; } var mmversion = mmver.split('.'); var version = ver.split('.'); if (!/\d+/g.test(mmversion[mmversion.length - 1])) { mmversion.pop(); } for (var i = 0, len = Math.max(mmversion.length, version.length); i = 64 && parseInt(v) = hexNum; } return false; } var mmVersion = { get: get, getMac: getMac, getMacOS: getMacOS, getWindows: getWindows, getInner: getInner, getWxWork: getWxWork, getMpApp: getMpApp, cpVersion: cpVersion, eqVersion: eqVersion, gtVersion: gtVersion, ltVersion: ltVersion, getPlatform: getPlatform, getVersionNumber: getVersionNumber, isWp: is_wp, isIOS: is_ios, isAndroid: is_android, isHarmony: is_harmony, isHarmonyWechat: is_harmony && is_wechat && cpVersion('1.0.0', 1, true), isInMiniProgram: is_in_miniProgram, isWechat: is_wechat, isMac: is_mac, isWindows: is_windows, isLinux: is_linux, isMacWechat: is_mac_wechat, isWindowsWechat: is_windows_wechat, isWxWork: is_wx_work, isOnlyWechat: is_wechat && !is_wx_work, isMpapp: is_mpapp, isNewMpApp: false, isIPad: is_ipad, isGooglePlay: is_google_play, isPrefetch: is_prefetch, isDonutAPP: is_donut_app, compareHexVersion: compareHexVersion$1, isPcWechat: is_windows_wechat || is_mac_wechat, xwebVersion: xweb_version, isUnifiedPcWechat: is_unified_pc_wechat }; function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } var initJsBridge = false; if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; } function connectWebViewJavascriptBridge(callback) { if (window.WebViewMPapp || window.WebViewJavascriptBridge) { return callback(window.WebViewMPapp || window.WebViewJavascriptBridge); } if (window.WVJBCallbacks) { return window.WVJBCallbacks.push(callback); } window.WVJBCallbacks = [callback]; if (!mmVersion.isMpapp) { return false; } if (!initJsBridge) { initJsBridge = true; var WVJBIframe = document.createElement('iframe'); WVJBIframe.style.display = 'none'; WVJBIframe.src = 'https://__bridge_loaded__'; document.body.appendChild(WVJBIframe); setTimeout(function () { initJsBridge = false; document.body.removeChild(WVJBIframe); }, 0); } return false; } function invoke$1(jsapiName, opt, callback) { connectWebViewJavascriptBridge(function (bridge) { try { if (typeof opt === 'function') { callback = opt; } if (_typeof(opt) !== 'object' && typeof opt !== 'string') { opt = {}; } bridge.callHandler(jsapiName, opt, function (res) { try { var ret = _typeof(res) === 'object' ? res : JSON.parse(res); var errMsg = ret.err_msg || ret.errMsg; console.info("[mpapp jsapi] invoke->".concat(jsapiName, " ").concat(opt.action || '', " ").concat(errMsg)); typeof callback === 'function' && callback(ret); } catch (e) { window.WX_BJ_REPORT.BadJs.report('invoke', "callback ".concat(jsapiName, " error:"), { mid: 'mmbizwebapp:js_brridge', _info: e }); console.error("[mpapp jsapi] ".concat(jsapiName, " ").concat(opt.action || ''), e, res); } }); } catch (e) { window.WX_BJ_REPORT.BadJs.report('invoke', 'callback error:', { mid: 'mmbizwebapp:js_brridge', _info: e }); console.error('[mpapp jsapi]', e); } }); } function _regeneratorRuntime$4() { _regeneratorRuntime$4 = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } var doc$1 = {}; var isAcrossOrigin$1 = false; var notFoundedMPPageAction = []; var __moon_report$1 = window.__moon_report || function () {}; var MOON_JSAPI_KEY_OFFSET = 8; try { doc$1 = top.window.document; } catch (e) { isAcrossOrigin$1 = true; } if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; } function ready(onBridgeReady) { var bridgeReady = function bridgeReady() { try { if (onBridgeReady) { window.onBridgeReadyTime = window.onBridgeReadyTime || Date.now(); onBridgeReady(); } } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: 'ready', e: e }]); throw e; } window.jsapiReadyTime = Date.now(); }; if (!isAcrossOrigin$1 && (typeof top.window.WeixinJSBridge === 'undefined' || !top.window.WeixinJSBridge.invoke)) { if (doc$1.addEventListener) { doc$1.addEventListener('WeixinJSBridgeReady', bridgeReady, false); } else if (doc$1.attachEvent) { doc$1.attachEvent('WeixinJSBridgeReady', bridgeReady); doc$1.attachEvent('onWeixinJSBridgeReady', bridgeReady); } } else { bridgeReady(); } } var invokeNotWaitA8key = ['notifyPageInfo', 'updatePageAuth' ]; var checkNotFoundedInvoke = function checkNotFoundedInvoke(methodName, args) { if (methodName === 'handleMPPageAction' && (args === null || args === void 0 ? void 0 : args.action) && notFoundedMPPageAction.includes(args === null || args === void 0 ? void 0 : args.action)) { return true; } return false; }; function invoke(_x, _x2, _x3) { return _invoke.apply(this, arguments); } function _invoke() { _invoke = _asyncToGenerator( _regeneratorRuntime$4().mark(function _callee(methodName, args, callback) { return _regeneratorRuntime$4().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: if (!(window.__secPageAuthPromise && !window.__is_page_auth_ok__ && !invokeNotWaitA8key.includes(methodName))) { _context.next = 3; break; } _context.next = 3; return window.__secPageAuthPromise; case 3: ready(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object') { alert('请在微信中打开此链接'); return false; } if (checkNotFoundedInvoke(methodName, args)) { setTimeout(function () { if (callback) { callback.apply(window, [{ err_msg: "".concat(methodName, ":fail"), err_desc: 'action isn\'t supported' }]); } }, 0); } else { top.window.WeixinJSBridge.invoke(methodName, args, function () { try { for (var _len2 = arguments.length, rets = new Array(_len2), _key2 = 0; _key2 ".concat(ret.err_msg) : ''; if (['handleMPPageAction', 'handleVideoAction', 'handleHaokanAction'].indexOf(methodName) !== -1) { var action = (args === null || args === void 0 ? void 0 : args.action) || ''; console.info('[system]', "[jsapi] invoke->".concat(methodName, ", action->").concat(action).concat(errMsg)); } else { console.info('[system]', "[jsapi] invoke->".concat(methodName).concat(errMsg)); } if (methodName === 'handleMPPageAction' && (args === null || args === void 0 ? void 0 : args.action) && ((ret === null || ret === void 0 ? void 0 : ret.err_desc) === 'action isn\'t supported' || (ret === null || ret === void 0 ? void 0 : ret.err_msg) === 'handleMPPageAction:fail action is not supported')) { notFoundedMPPageAction.push(args === null || args === void 0 ? void 0 : args.action); } if (callback) { callback.apply(window, rets); } } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: "invoke;methodName:".concat(methodName), e: e }]); throw e; } }); } }); case 4: case "end": return _context.stop(); } }, _callee); })); return _invoke.apply(this, arguments); } function call(_x4) { return _call.apply(this, arguments); } function _call() { _call = _asyncToGenerator( _regeneratorRuntime$4().mark(function _callee2(methodName) { return _regeneratorRuntime$4().wrap(function _callee2$(_context2) { while (1) switch (_context2.prev = _context2.next) { case 0: if (!(window.__secPageAuthPromise && !window.__is_page_auth_ok__)) { _context2.next = 3; break; } _context2.next = 3; return window.__secPageAuthPromise; case 3: ready(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object') { return false; } try { top.window.WeixinJSBridge.call(methodName); } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: "call;methodName:".concat(methodName), e: e }]); throw e; } }); case 4: case "end": return _context2.stop(); } }, _callee2); })); return _call.apply(this, arguments); } function on(eventName, callback) { ready(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object' || !top.window.WeixinJSBridge.on) { return false; } if (!window.JSAPIEventCallbackMap[eventName]) { window.JSAPIEventCallbackMap[eventName] = []; } window.JSAPIEventCallbackMap[eventName].push(callback); if (window.JSAPIEventCallbackMap[eventName].length > 1) { return false; } top.window.WeixinJSBridge.on(eventName, function () { try { for (var _len = arguments.length, rets = new Array(_len), _key = 0; _key ".concat(ret.err_msg) : ''; console.info('[system]', "[jsapi] event->".concat(eventName).concat(errMsg)); if (window.JSAPIEventCallbackMap[eventName] && window.JSAPIEventCallbackMap[eventName].length) { var result; for (var i = 0; i = 0; i--) { if (window.JSAPIEventCallbackMap[eventName][i] === callback) { window.JSAPIEventCallbackMap[eventName].splice(i, 1); result = true; } } return result; }); } var JSAPI = { ready: ready, invoke: invoke, call: call, on: on, remove: remove }; function createErrorResult(message, details, playbackMethod) { var result = { success: false, error: { message: message, details: details } }; if (playbackMethod) { result.playbackMethod = playbackMethod; } return result; } function createSuccessResult(playbackMethod, action, data) { var result = { success: true, playbackMethod: playbackMethod, action: action }; if (data !== undefined) { result.data = data; } return result; } function createResultFromJSAPI(res, playbackMethod, action, errorMessage, successMessage) { var errMsg = res.err_msg || res.errMsg; if (errMsg && errMsg.indexOf('ok') !== -1) { return createSuccessResult(playbackMethod, action, res); } else { return createErrorResult(errMsg || errorMessage, res, playbackMethod); } } var PlayMode; (function (PlayMode) { PlayMode[PlayMode["SEQUENCE"] = 0] = "SEQUENCE"; PlayMode[PlayMode["LIST_LOOP"] = 1] = "LIST_LOOP"; PlayMode[PlayMode["SINGLE_LOOP"] = 2] = "SINGLE_LOOP"; })(PlayMode || (PlayMode = {})); var PlayStatus = { IDLE: 'idle', PLAYING: 'playing', PAUSED: 'paused', LOADING: 'loading' }; var PlaybackMethod; (function (PlaybackMethod) { PlaybackMethod["TING"] = "ting"; PlaybackMethod["BACKGROUND"] = "background"; PlaybackMethod["H5_AUDIO"] = "h5_audio"; })(PlaybackMethod || (PlaybackMethod = {})); var currentBackgroundItem = null; function getBackgroundAudioState(callback) { return new Promise(function (resolve) { JSAPI.invoke('getBackgroundAudioState', {}, function (res) { if (!res.status && !res.state) { if (!res.src && !res.dataUrl) { res.status = PlayStatus.IDLE; } else if (res.paused === true || res.paused === 1) { res.status = PlayStatus.PAUSED; } else { res.status = PlayStatus.PLAYING; } } if (!res.item && currentBackgroundItem) { res.item = currentBackgroundItem; } if (callback) callback(res); resolve(createResultFromJSAPI(res, PlaybackMethod.BACKGROUND, 'get', 'Failed to get background audio state')); }); }); } function onBackgroundAudioStateChanged(callback) { try { var listener = function listener(res) { var status = res.state || res.status; if (status === 'ended' || status === 'stop') { status = PlayStatus.IDLE; } else if (status === 'play' || status === 'playing') { status = PlayStatus.PLAYING; } else if (status === 'pause' || status === 'paused') { status = PlayStatus.PAUSED; } else if (status === 'waiting' || status === 'canplay') { status = PlayStatus.LOADING; } var state = { status: status || (res.paused ? 'paused' : 'playing'), currentTime: res.currentTime || res.position || 0, duration: res.duration || 0, item: res.item || currentBackgroundItem || {}, source: PlaybackMethod.BACKGROUND }; callback(state); }; JSAPI.on('onBackgroundAudioStateChange', listener); return listener; } catch (error) { console.error('Failed to register onBackgroundAudioStateChange:', error); return null; } } function getH5AudioState() { try { var audio = window.__tingAudioInstance; if (audio) { return createSuccessResult(PlaybackMethod.H5_AUDIO, 'get', { status: audio.paused ? 'paused' : 'playing', currentTime: audio.currentTime || 0, duration: audio.duration || 0, item: window.__tingAudioCurrentItem || {}, source: PlaybackMethod.H5_AUDIO }); } return createErrorResult('No H5 Audio instance available', undefined, PlaybackMethod.H5_AUDIO); } catch (error) { console.error('[play_voice][h5] getState error:', error); return createErrorResult('Failed to get H5 Audio state', error, PlaybackMethod.H5_AUDIO); } } function _regeneratorRuntime$3() { _regeneratorRuntime$3 = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$1(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } function _unsupportedIterableToArray$1(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$1(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$1(o, minLen); } function _arrayLikeToArray$1(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i = 18720 || isDebugXwebVersion); var TING_SUPPORT_TYPES = [0, 1, 2, 3, 4, 7, 10, 11]; var KUGOU_TYPES = [5, 6, 9]; function isSupportTing(type) { var isPlatformSupported = isWechat && !mmVersion.isPcWechat || isTingSupportedPC; if (!isPlatformSupported) return false; if (type === undefined || type === null) return true; if (KUGOU_TYPES.includes(type)) { return !mmVersion.isIOS || mmVersion.compareHexVersion('18004600'); } return TING_SUPPORT_TYPES.includes(type); } var isTingSupportedPCVersion = isTingSupportedPC; typeof navigator !== 'undefined' && (navigator.userAgent.indexOf('QQMusic/') > 0 || typeof location !== 'undefined' && location.href.indexOf('_qqclient=1') > 0); var PLAYBACK_METHODS_FALLBACK = [PlaybackMethod.TING, PlaybackMethod.BACKGROUND, PlaybackMethod.H5_AUDIO]; function tryAllMethods(_x, _x2, _x3, _x4, _x5) { return _tryAllMethods.apply(this, arguments); } function _tryAllMethods() { _tryAllMethods = _asyncToGenerator( _regeneratorRuntime$3().mark(function _callee(executor, errorMessage, onSuccess, callback, methods) { var errors, _iterator2, _step2, method, result, finalResult; return _regeneratorRuntime$3().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: errors = {}; _iterator2 = _createForOfIteratorHelper(methods || PLAYBACK_METHODS_FALLBACK); _context.prev = 2; _iterator2.s(); case 4: if ((_step2 = _iterator2.n()).done) { _context.next = 23; break; } method = _step2.value; _context.prev = 6; _context.next = 9; return executor(method); case 9: result = _context.sent; if (!result.success) { _context.next = 13; break; } onSuccess === null || onSuccess === void 0 ? void 0 : onSuccess(method); return _context.abrupt("return", result); case 13: errors[method] = result.error; console.warn("".concat(method, " failed, trying next..."), result.error); _context.next = 21; break; case 17: _context.prev = 17; _context.t0 = _context["catch"](6); errors[method] = _context.t0; console.warn("".concat(method, " exception, trying next..."), _context.t0); case 21: _context.next = 4; break; case 23: _context.next = 28; break; case 25: _context.prev = 25; _context.t1 = _context["catch"](2); _iterator2.e(_context.t1); case 28: _context.prev = 28; _iterator2.f(); return _context.finish(28); case 31: console.error(errorMessage, errors); finalResult = createErrorResult(errorMessage, errors); callback === null || callback === void 0 ? void 0 : callback(finalResult); return _context.abrupt("return", finalResult); case 35: case "end": return _context.stop(); } }, _callee, null, [[2, 25, 28, 31], [6, 17]]); })); return _tryAllMethods.apply(this, arguments); } function getTingAudioState(callback) { return new Promise(function (resolve) { JSAPI.invoke('getTingAudioState', { sourceType: 2 }, function (res2) { if (res2 && res2.status && res2.status === 'idle') { JSAPI.invoke('getTingAudioState', { sourceType: 1 }, function (res1) { if (callback) callback(res1); resolve(createResultFromJSAPI(res1, PlaybackMethod.TING, 'get', 'Failed to get Ting audio state')); }); } else { if (callback) callback(res2); resolve(createResultFromJSAPI(res2, PlaybackMethod.TING, 'get', 'Failed to get Ting audio state')); } }); }); } function onTingAudioStateChanged(callback) { try { if (isTingSupportedPCVersion) { JSAPI.invoke('getTingAudioState', {}, function () {}); } var listener = function listener(res) { if (!res.status && !res.item) { return; } var state = { status: res.status, currentTime: res.currentTime || 0, duration: res.duration || 0, item: res.item, source: PlaybackMethod.TING }; callback(state); }; JSAPI.on('onTingAudioStateChanged', listener); return listener; } catch (error) { console.error('Failed to register onTingAudioStateChanged:', error); return null; } } var callbackQueue = []; var listenersRegistered = false; var tingListener = null; var backgroundListener = null; function notifyListeners(state) { callbackQueue.forEach(function (callback) { try { callback(state); } catch (error) { console.error('Error in audio state listener:', error); } }); } function registerAllListeners() { if (listenersRegistered) return; listenersRegistered = true; if (!tingListener) { tingListener = onTingAudioStateChanged(function (state) { notifyListeners(state); }); } if (!backgroundListener) { backgroundListener = onBackgroundAudioStateChanged(function (state) { notifyListeners(state); }); } } function addListener(callback) { if (!callbackQueue.includes(callback)) { callbackQueue.push(callback); registerAllListeners(); } } function removeListener(callback) { var index = callbackQueue.indexOf(callback); if (index > -1) { callbackQueue.splice(index, 1); } } function _regeneratorRuntime$2() { _regeneratorRuntime$2 = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } undefined && undefined.__rest || function (s, e) { var t = {}; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } var AudioStateManagerClass = function () { function AudioStateManagerClass() { var _this = this; _classCallCheck(this, AudioStateManagerClass); this.POLLING_INTERVAL = 1000; this.subscribers = new Set(); this.pollingTimer = null; this.listenerUnsubscribe = null; this.lastFullState = null; this.subscribe = function (callback) { _this.subscribers.add(callback); if (_this.subscribers.size === 1) { _this.startGlobalSubscription(); } return function () { _this.subscribers["delete"](callback); if (_this.subscribers.size === 0) { _this.stopGlobalSubscription(); } }; }; this.getCachedState = function () { return _this.lastFullState; }; this.poll = _asyncToGenerator( _regeneratorRuntime$1().mark(function _callee() { var result; return _regeneratorRuntime$1().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: if (!(!_this.pollingTimer && _this.subscribers.size === 0)) { _context.next = 2; break; } return _context.abrupt("return"); case 2: _context.prev = 2; _context.next = 5; return getAudioState(); case 5: result = _context.sent; if (result.success && result.data) { _this.lastFullState = _this.buildExtendedState(result.data, 'polling'); _this.notifySubscribers(_this.lastFullState); } _context.next = 12; break; case 9: _context.prev = 9; _context.t0 = _context["catch"](2); console.warn('[AudioStateManager] Polling error:', _context.t0); case 12: if (_this.subscribers.size > 0) { _this.pollingTimer = setTimeout(_this.poll, _this.POLLING_INTERVAL); } else { _this.stopPolling(); } case 13: case "end": return _context.stop(); } }, _callee, null, [[2, 9]]); })); this.handleEventStateChange = function (eventState) { _this.lastFullState = _this.buildExtendedState(eventState, 'event'); _this.notifySubscribers(_this.lastFullState); _this.startPolling(); }; } _createClass(AudioStateManagerClass, [{ key: "buildExtendedState", value: function buildExtendedState(data, updateSource) { var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k; var currListenId = (_a = data.item) === null || _a === void 0 ? void 0 : _a.listenId; var isSameAudio = !!(currListenId && currListenId === ((_c = (_b = this.lastFullState) === null || _b === void 0 ? void 0 : _b.item) === null || _c === void 0 ? void 0 : _c.listenId)); var status = data.status || ((_d = this.lastFullState) === null || _d === void 0 ? void 0 : _d.status) || 'idle'; var item = data.item && _typeof(data.item) === 'object' ? data.item : (_f = (_e = this.lastFullState) === null || _e === void 0 ? void 0 : _e.item) !== null && _f !== void 0 ? _f : data; return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, isSameAudio ? Object.assign({}, this.lastFullState) : {}), { status: status, currentTime: (_g = data.currentTime) !== null && _g !== void 0 ? _g : 0, duration: (_h = data.duration) !== null && _h !== void 0 ? _h : 0, item: item, source: (_k = (_j = data.source) !== null && _j !== void 0 ? _j : getCurrentPlaybackMethod()) !== null && _k !== void 0 ? _k : PlaybackMethod.TING }), data.playRate !== undefined && { playRate: data.playRate }), data.shutdown !== undefined && { shutdown: data.shutdown }), data.categoryId !== undefined && { categoryId: data.categoryId }), data.buffered !== undefined && { buffered: data.buffered }), { updateSource: updateSource, timestamp: Date.now() }); } }, { key: "notifySubscribers", value: function notifySubscribers(state) { this.subscribers.forEach(function (cb) { try { cb(state); } catch (e) { console.error('[AudioStateManager] Callback error:', e); } }); } }, { key: "stopPolling", value: function stopPolling() { if (this.pollingTimer) { clearTimeout(this.pollingTimer); this.pollingTimer = null; } } }, { key: "startPolling", value: function startPolling() { if (this.pollingTimer) return; this.pollingTimer = setTimeout(this.poll, this.POLLING_INTERVAL); } }, { key: "startGlobalSubscription", value: function () { var _startGlobalSubscription = _asyncToGenerator( _regeneratorRuntime$1().mark(function _callee2() { return _regeneratorRuntime$1().wrap(function _callee2$(_context2) { while (1) switch (_context2.prev = _context2.next) { case 0: if (!this.listenerUnsubscribe) { this.listenerUnsubscribe = onAudioStateChanged(this.handleEventStateChange); } _context2.next = 3; return this.poll(); case 3: case "end": return _context2.stop(); } }, _callee2, this); })); function startGlobalSubscription() { return _startGlobalSubscription.apply(this, arguments); } return startGlobalSubscription; }() }, { key: "stopGlobalSubscription", value: function stopGlobalSubscription() { this.stopPolling(); if (this.listenerUnsubscribe) { this.listenerUnsubscribe(); this.listenerUnsubscribe = null; } this.lastFullState = null; } }], [{ key: "getInstance", value: function getInstance() { if (!AudioStateManagerClass.instance) { AudioStateManagerClass.instance = new AudioStateManagerClass(); } return AudioStateManagerClass.instance; } }]); return AudioStateManagerClass; }(); var AudioStateManager = AudioStateManagerClass.getInstance(); AudioStateManager.subscribe; AudioStateManager.getCachedState; function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } var Device = {}; function detect(ua) { var MQQBrowser = ua.match(/MQQBrowser\/(\d+\.\d+)/i); var MQQClient = ua.match(/QQ\/(\d+\.(\d+)\.(\d+)\.(\d+))/i) || ua.match(/V1_AND_SQ_([\d\.]+)/); var WeChat = ua.match(/MicroMessenger\/((\d+)\.(\d+))\.(\d+)/) || ua.match(/MicroMessenger\/((\d+)\.(\d+))/); var MacOS = ua.match(/Mac\sOS\sX\s(\d+[\.|_]\d+)/); var WinOS = ua.match(/Windows(\s+\w+)?\s+?(\d+\.\d+)/); var Linux = ua.match(/Linux\s/); var MiuiBrowser = ua.match(/MiuiBrowser\/(\d+\.\d+)/i); var M1 = ua.match(/MI-ONE/); var MIPAD = ua.match(/MI PAD/); var UC = ua.match(/UCBrowser\/(\d+\.\d+(\.\d+\.\d+)?)/) || ua.match(/\sUC\s/); var IEMobile = ua.match(/IEMobile(\/|\s+)(\d+\.\d+)/) || ua.match(/WPDesktop/); var ipod = ua.match(/(ipod).*\s([\d_]+)/i); var ipad = ua.match(/(ipad).*\s([\d_]+)/i); var iphone = ua.match(/(iphone)\sos\s([\d_]+)/i); var Chrome = ua.match(/Chrome\/(\d+\.\d+)/); var AndriodBrowser = ua.match(/Mozilla.*Linux.*Android.*AppleWebKit.*Mobile Safari/); var android = ua.match(/(android)\s([\d\.]+)/i); var harmony = ua.match(/(OpenHarmony)\s([\d\.]+)/i); Device.browser = Device.browser || {}, Device.os = Device.os || {}; Device.os.type = -1; Device.os.unifiedPC = ua.match(/UnifiedPC/); Device.os.unifiedMac = /UnifiedPCMac/i.test(ua); Device.os.unifiedWindows = /UnifiedPCWindows/i.test(ua); if (window.ActiveXObject) { var vie = 6; (window.XMLHttpRequest || ua.indexOf('MSIE 7.0') > -1) && (vie = 7); (window.XDomainRequest || ua.indexOf('Trident/4.0') > -1) && (vie = 8); ua.indexOf('Trident/5.0') > -1 && (vie = 9); ua.indexOf('Trident/6.0') > -1 && (vie = 10); Device.browser.ie = true, Device.browser.version = vie; } else if (ua.indexOf('Trident/7.0') > -1) { Device.browser.ie = true, Device.browser.version = 11; } if (android) { Device.os.android = true; Device.os.version = android[2]; Device.os.type = 2; } if (harmony) { Device.os.harmony = true; Device.os.version = harmony[2]; Device.os.type = 42; } if (ipod) { Device.os.ios = Device.os.ipod = true; Device.os.version = ipod[2].replace(/_/g, '.'); } if (ipad) { Device.os.ios = Device.os.ipad = true; Device.os.version = ipad[2].replace(/_/g, '.'); Device.os.type = 13; } if (iphone) { Device.os.iphone = Device.os.ios = true; Device.os.version = iphone[2].replace(/_/g, '.'); Device.os.type = 1; } if (WinOS) Device.os.windows = true, Device.os.version = WinOS[2], Device.os.type = 15; if (MacOS) Device.os.Mac = true, Device.os.version = MacOS[1], Device.os.type = 14; if (Linux) Device.os.Linux = true, Device.os.type = 33; if (ua.indexOf('lepad_hls') > 0) Device.os.LePad = true; if (MIPAD) Device.os.MIPAD = true; if (MQQBrowser) Device.browser.MQQ = true, Device.browser.version = MQQBrowser[1]; if (MQQClient) Device.browser.MQQClient = true, Device.browser.version = MQQClient[1]; if (WeChat) Device.browser.WeChat = true, Device.browser.mmversion = Device.browser.version = WeChat[1]; if (MiuiBrowser) Device.browser.MIUI = true, Device.browser.version = MiuiBrowser[1]; if (UC) Device.browser.UC = true, Device.browser.version = UC[1] || NaN; if (IEMobile) Device.browser.IEMobile = true, Device.browser.version = IEMobile[2]; if (AndriodBrowser) { Device.browser.AndriodBrowser = true; } if (M1) { Device.browser.M1 = true; } if (Chrome) { Device.browser.Chrome = true, Device.browser.version = Chrome[1]; } if (Device.os.windows) { if (typeof navigator.platform !== "undefined" && navigator.platform.toLowerCase() == "win64") { Device.os.win64 = true; } else { Device.os.win64 = false; } } if (Device.os.Mac || Device.os.windows || Device.os.Linux || Device.os.unifiedPC || /OpenHarmony/i.test(ua) && /pc/i.test(ua)) { Device.os.pc = true; } var osType = { iPad7: 'iPad; CPU OS 7', LePad: 'lepad_hls', XiaoMi: 'MI-ONE', SonyDTV: "SonyDTV", SamSung: 'SAMSUNG', HTC: 'HTC', VIVO: 'vivo' }; for (var os in osType) { Device.os[os] = ua.indexOf(osType[os]) !== -1; } Device.os.phone = Device.os.phone || /windows phone/i.test(ua); Device.os.getNumVersion = function () { return parseFloat(Device.os.version); }; Device.os.hasTouch = 'ontouchstart' in window; if (Device.os.hasTouch && Device.os.ios && Device.os.getNumVersion() = 3.0; }; Device.browser.isCanOcx = function () { return !!Device.os.windows && (!!Device.browser.ie || Device.browser.isFFCanOcx() || !!Device.browser.webkit); }; Device.browser.isNotIESupport = function () { return !!Device.os.windows && (!!Device.browser.webkit || Device.browser.isFFCanOcx()); }; Device.userAgent = {}; Device.userAgent.browserVersion = Device.browser.version; Device.userAgent.osVersion = Device.os.version; if (Device.os.unifiedPC) { if (Device.os.unifiedWindows) Device.os.type = 37;else if (Device.os.unifiedMac) Device.os.type = 38;else Device.os.type = 39; } delete Device.userAgent.version; } detect(window.navigator.userAgent); function canSupportH5Video() { var ua = window.navigator.userAgent, m = null; if (!!Device.os.android) { if (Device.browser.MQQ && Device.browser.getNumVersion() >= 4.2) { return true; } if (ua.indexOf('MI2') != -1) { return true; } if (Device.os.version >= '4' && (m = ua.match(/MicroMessenger\/((\d+)\.(\d+))\.(\d+)/))) { if (parseFloat(m[1]) >= 4.2) { return true; } } if (Device.os.version >= '4.1') { return true; } } return false; } function canSupportVideoMp4() { var video = document.createElement('video'); if (typeof video.canPlayType === 'function') { if (video.canPlayType('video/mp4; codecs="mp4v.20.8"') === 'probably') { return true; } if (video.canPlayType('video/mp4; codecs="avc1.42E01E"') === 'probably' || video.canPlayType('video/mp4; codecs="avc1.42E01E, mp4a.40.2"') === 'probably') { return true; } } return false; } function canSupportAutoPlay() { if (Device.os.ios && Device.os.getNumVersion() 1 && arguments[1] !== undefined ? arguments[1] : 0; var canEqual = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var nowVersionStr = Device.os.version; if (!nowVersionStr) return false; var versionArr = version.split('.'); var nowVersionArr = nowVersionStr.split('.'); for (var i = 0; i 0) return vi > nvi; if (cp = 0) continue; target[key] = source[key]; } return target; } function formatDataToString(data) { var reportData = []; for (var key in data) { if (Object.prototype.hasOwnProperty.call(data, key)) { reportData.push(key + '=' + encodeURIComponent(data[key])); } } return reportData.join('&'); } monitor.getReportData = function (opt) { opt = opt || {}; var idkey = monitor._reportOptions.idkey || {}; var key = null; var reportData = {}; var nextKey; try { for (key in idkey) { if (Object.prototype.hasOwnProperty.call(idkey, key) && idkey[key]) { reportLogs.push(key + '_' + idkey[key]); } } } catch (e) { return false; } if (reportLogs.length === 0) { return false; } if (reportExtraLogs.length) { reportData.lc = reportExtraLogs.length; reportExtraLogs.forEach(function (extraLog, index) { reportData["log".concat(index)] = extraLog; }); } try { var reportOptions = monitor._reportOptions; if (reportOptions !== null && reportOptions !== undefined) { for (nextKey in reportOptions) { if (Object.prototype.hasOwnProperty.call(reportOptions, nextKey)) { reportData[nextKey] = reportOptions[nextKey]; } } } } catch (e) { reportData = {}; } reportData.idkey = reportLogs.join(';'); reportData.t = Math.random(); if (opt.remove !== false) { reportLogs = []; reportExtraLogs = []; monitor._reportOptions = { idkey: {} }; } return reportData; }; monitor.setLogs = function (opt) { var id = opt.id; var key = opt.key; var value = opt.value; var extraLog = opt.log; var others = ObjWithoutProperty(opt, ['id', 'key', 'value', 'log']); var idkey = monitor._reportOptions.idkey || {}; var param = id + '_' + key; if (idkey[param]) { idkey[param] += value; } else { idkey[param] = value; } monitor._reportOptions.idkey = idkey; if (extraLog) { reportExtraLogs.push(extraLog); } try { if (others !== null && others !== undefined) { for (var otherKey in others) { if (Object.prototype.hasOwnProperty.call(others, otherKey)) { monitor._reportOptions[otherKey] = others[otherKey]; } } } } catch (e) { console.log(e); } return monitor; }; monitor.setAvg = function (id, key, value) { var idkey = monitor._reportOptions.idkey || {}; var param1 = id + '_' + key; var param2 = id + '_' + (key - 1); if (idkey[param1]) { idkey[param1] += value; } else { idkey[param1] = value; } if (idkey[param2]) { idkey[param2] += 1; } else { idkey[param2] = 1; } monitor._reportOptions.idkey = idkey; return monitor; }; monitor.setSum = function (id, key) { var value = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1; var idkey = monitor._reportOptions.idkey; var param = id + '_' + key; if (idkey[param]) { idkey[param] += value; } else { idkey[param] = value; } monitor._reportOptions.idkey = idkey; return monitor; }; monitor.send = function (async, ajax, origin) { if (async !== false) { async = true; } var data = monitor.getReportData(); origin = origin || ''; if (!data) { return; } if (!!ajax && ajax instanceof Function) { ajax({ url: origin + sendUrl, type: 'POST', mayAbort: true, data: data, async: async, timeout: 2000, dontReport: true }); } else { new Image().src = origin + '/mp/jsmonitor?' + formatDataToString(data) + '#wechat_redirect'; } }; if (typeof window !== 'undefined' && window.__monitor) { monitor = window.__monitor; } else { typeof window !== 'undefined' && (window.__monitor = monitor); } var monitor$1 = monitor; var logList = []; var log = function log(msg) { logList.push(msg); }; var printLog = function printLog() { for (var i = 0, len = logList.length; i arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i d2.exp) return 1; return 0; }); var memCnt = 0; for (var i = 0; i = size) break; var key = keys[i]; memCnt += JSON.stringify(data[key]).length; delete data[key]; } return data; }, 'clear-all': function clearAll() { localStorage.clear(); return {}; } }; function formatLogMsg(str) { return "[WXLS] ".concat(str); } var LS = function () { function LS(func, evictionPolicy, logger) { _classCallCheck(this, LS); this.logger = function () {}; if (!func) throw 'require function name.'; this.evictionPolicy = 'noeviction'; this.key = func; if (typeof logger === 'function') { this.logger = function (str, type) { return logger(formatLogMsg(str), type); }; } if (evictionPolicy && Object.keys(evictionPolicies).indexOf(evictionPolicy) !== -1) { this.evictionPolicy = evictionPolicy; } this.init(); } _createClass(LS, [{ key: "init", value: function init() { var _a, _b; this.check(); if (Math.random() * 1000 now) { temp[key] = val; } } this.logger("check info: isReturn:".concat(isReturn, " data:").concat(JSON.stringify(temp)), 'info'); if (isReturn) return temp; LS.setItem(this.key, JSON.stringify(temp), this.logger); } }, { key: "set", value: function set(key, val, exp) { var _a, _b; var data = this.check(true); data[key] = { val: val, exp: exp || +new Date() }; try { if (localStorage.getItem(prefix + this.key)) localStorage.removeItem(prefix + this.key); localStorage.setItem(prefix + this.key, JSON.stringify(data)); this.logger("first set success: LSlen:".concat((_a = window === null || window === void 0 ? void 0 : window.localStorage) === null || _a === void 0 ? void 0 : _a.length, " key:").concat(prefix + this.key, " data:").concat(JSON.stringify(data)), 'success'); } catch (e) { this.logger("first set error: LSlen:".concat((_b = window === null || window === void 0 ? void 0 : window.localStorage) === null || _b === void 0 ? void 0 : _b.length, " error:").concat(e, " key:").concat(prefix + this.key, " data:").concat(JSON.stringify(data), " k:").concat(key, " v:").concat(val, " exp:").concat(exp), 'error'); localStorage.clear(); LS.setItem(this.key, JSON.stringify(_defineProperty({}, key, { val: val, exp: exp || +new Date() })), this.logger); } } }, { key: "get", value: function get(key) { var data = this.getData(); data = data[key]; return data ? data.val || null : null; } }, { key: "remove", value: function remove(key) { var data = this.getData(); if (data[key]) delete data[key]; LS.setItem(this.key, JSON.stringify(data), this.logger); } }], [{ key: "getItem", value: function getItem(key) { key = prefix + key; return localStorage.getItem(key); } }, { key: "setItem", value: function setItem(key, val, logger) { var _a, _b; key = prefix + key; var n = 3; while (n--) { try { if (localStorage.getItem(key)) localStorage.removeItem(key); localStorage.setItem(key, val); typeof logger === 'function' && logger("setItem success: LSlen:".concat((_a = window === null || window === void 0 ? void 0 : window.localStorage) === null || _a === void 0 ? void 0 : _a.length, " key:").concat(key, " val:").concat(val), 'success'); break; } catch (e) { typeof logger === 'function' && logger("setItem error: LSlen:".concat((_b = window === null || window === void 0 ? void 0 : window.localStorage) === null || _b === void 0 ? void 0 : _b.length, " error:").concat(e, " key:").concat(key, " val:").concat(val), 'error'); LS.clear(); } } } }, { key: "clear", value: function clear() { var i; var k; for (i = localStorage.length - 1; i >= 0; i--) { k = localStorage.key(i); if (k.indexOf(prefix) == 0) { localStorage.removeItem(k); } } } }, { key: "getSupportEvicationPolicy", value: function getSupportEvicationPolicy() { return Object.keys(evictionPolicies); } }]); return LS; }(); var innerVersion = (mmVersion.getInner() || '').toUpperCase(); var getBizLS = new LS('get_biz_result'); var bizMap = {}; function getBiz(needCheckBiz, bizType) { var _a; if (needCheckBiz === void 0) { needCheckBiz = false; } if (bizType === void 0) { bizType = ((_a = window.cgiDataNew) === null || _a === void 0 ? void 0 : _a.biz_type) || 1; } return new Promise(function (resolve, reject) { if (needCheckBiz || bizMap[bizType] === undefined) { if (!mmVersion.isOnlyWechat || mmVersion.isIOS && innerVersion -1) { bizMap[bizType] = res.biz; resolve(res.biz); getBizLS.set("".concat(bizType, "_get_biz_result"), res.biz, +new Date() + 3 * 24 * 60 * 60 * 1000); } else { reject('Failed to get biz'); } }); } } else { resolve(bizMap[bizType]); } }); } var getIsAuthor = function getIsAuthor(cb, bizuin, needCheckBiz, bizType) { var _a; if (bizuin === void 0) { bizuin = window.biz; } if (needCheckBiz === void 0) { needCheckBiz = false; } if (bizType === void 0) { bizType = ((_a = window.cgiDataNew) === null || _a === void 0 ? void 0 : _a.biz_type) || 1; } getBiz(needCheckBiz, bizType).then(function (biz) { cb(biz && biz === bizuin); })["catch"](function () { cb(false); }); }; function parseUrl(url) { var len = url.length; var ques_pos = url.indexOf('?'); var hash_pos = url.indexOf('#'); hash_pos = hash_pos == -1 ? len : hash_pos; ques_pos = ques_pos == -1 ? hash_pos : ques_pos; var host = url.substring(0, ques_pos); var query_str = url.substring(ques_pos + 1, hash_pos); var hash = url.substring(hash_pos + 1); return { host: host, query_str: query_str, hash: hash }; } function join(url, args, noEncode) { var ret = parseUrl(url); var query_str = ret.query_str; var args_arr = []; if (_typeof(args) === 'object') { for (var key in args) { if (args.hasOwnProperty(key)) { args_arr.push("".concat(key, "=").concat(noEncode ? args[key] : encodeURIComponent(args[key]))); } } } else { args_arr.push(noEncode ? args : encodeURIComponent(args)); } if (args_arr.length > 0) { query_str += (query_str !== "" ? "&" : "") + args_arr.join("&"); } return ret.host + (query_str !== "" ? "?".concat(query_str) : "") + (ret.hash !== "" ? "#".concat(ret.hash) : ""); } function addParam(url, param, value, forceReplace) { url = url || location.href; var firstAndPos = url.indexOf("&"); var len = url.length; var reverseUrl = url.replace(/^[\w\d]+:[/\\]+/g, "").split("").reverse(); if (!Array.prototype.indexOf) { Array.prototype.indexOf = function (searchElement, fromIndex) { var k; if (this == null) { throw new TypeError('"this" is null or not defined'); } var O = Object(this); var len = O.length >>> 0; if (len === 0) { return -1; } var n = fromIndex || 0; if (Math.abs(n) === Infinity) { n = 0; } if (n >= len) { return -1; } k = Math.max(n >= 0 ? n : len - Math.abs(n), 0); while (k lastSlashPos) { url = url.replace("&", "?"); } var reg = new RegExp("([\\?&]".concat(param, "=)[^&#]*")); if (!url.match(reg)) { var urlInfo = parseUrl(url); var hash = urlInfo.hash ? '#' + urlInfo.hash : ''; url = url.replace(hash, ''); var _pos = url.indexOf("?"); if (_pos == -1) { return "".concat(url, "?").concat(param, "=").concat(value).concat(hash); } if (_pos == url.length - 1) { return "".concat(url + param, "=").concat(value).concat(hash); } return "".concat(url, "&").concat(param, "=").concat(value).concat(hash); } if (forceReplace === true) { return url.replace(reg, "$1".concat(value)); } return url; } function addWxfrom(src, wxfrom) { var offset = window.service_type === 1 ? 10000 : 0; return addParam(src, 'wxfrom', offset + Number(wxfrom), true); } function removeParam(url, param) { var _URL = new URL(url), protocol = _URL.protocol, host = _URL.host, pathname = _URL.pathname, search = _URL.search, hash = _URL.hash; var queryParams = new URLSearchParams(search); queryParams["delete"](param); var newSearch = queryParams.toString(); var newUrl = new URL("".concat(protocol, "//").concat(host).concat(pathname).concat(newSearch ? "?".concat(decodeURIComponent(newSearch)) : "").concat(hash)); return newUrl.toString(); } function getQuery(name, url) { var u = url || window.location.search; var reg = new RegExp("(^|&)".concat(name, "=([^&]*)(&|$)")); var r = u.substring(u.indexOf('?') + 1).match(reg); return r !== null ? r[2] : ''; } function encodeBase64(value) { try { return window.btoa(value); } catch (e) { return ''; } } function decodeBase64(value) { try { return window.atob(value); } catch (e) { return ''; } } function joinUrl$1(url) { var obj = {}; if (typeof window.uin !== 'undefined') { obj.uin = window.uin; } if (typeof window.key !== 'undefined') { obj.key = window.key; } if (typeof window.pass_ticket !== 'undefined') { obj.pass_ticket = window.pass_ticket; } if (typeof window.wxtoken !== 'undefined') { obj.wxtoken = window.wxtoken; } if (typeof window.devicetype !== 'undefined') { obj.devicetype = window.devicetype; } if (typeof window.clientversion !== 'undefined') { obj.clientversion = window.clientversion || mmVersion.getInner(); } obj.version = obj.clientversion; if (window.biz) { obj.__biz = window.biz; } if (getQuery('enterid')) { obj.enterid = getQuery('enterid'); } if (typeof window.appmsg_token !== 'undefined') { obj.appmsg_token = window.appmsg_token; } else if (url.indexOf('advertisement_report') > -1) { new Image().src = "".concat(location.protocol, "//mp.weixin.qq.com/mp/jsmonitor?idkey=68064_13_1&r=").concat(Math.random()); } obj.x5 = navigator.userAgent.indexOf('TBS/') !== -1 ? '1' : '0'; obj.f = 'json'; return join(url, obj); } function joinUserArticleRole(url, notJoin, cb) { var bizuin = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : window.biz; var needCheckBiz = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false; if (notJoin) { cb(url); } else { getIsAuthor(function (isAuthor) { cb(addParam(url, 'user_article_role', isAuthor ? 1 : 0, true)); }, bizuin, needCheckBiz); } } function getA8keyQuery(name, url) { return new Promise(function (resolve) { if (window.__secPageAuthPromise) { window.__secPageAuthPromise.then(function () { resolve(getQuery(name, url)); }); } else { resolve(getQuery(name, url)); } }); } function addHash(url, hash) { var isReplace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; if (isReplace) { return "".concat(url.split('#')[0]).concat(hash); } return "".concat(url).concat(url.indexOf('#') === -1 ? '#' : '').concat(hash); } function decodeUrl(url) { var _url = url; while (_url.indexOf('&') !== -1) { _url = _url.htmlDecode(); } return _url; } var Url = { parseUrl: parseUrl, join: join, addParam: addParam, addWxfrom: addWxfrom, addHash: addHash, getQuery: getQuery, getA8keyQuery: getA8keyQuery, encodeBase64: encodeBase64, decodeBase64: decodeBase64, joinUrl: joinUrl$1, joinUserArticleRole: joinUserArticleRole, removeParam: removeParam, decodeUrl: decodeUrl }; var _a; var doc; var isAcrossOrigin = false; try { doc = (_a = window.top) === null || _a === void 0 ? void 0 : _a.window.document; } catch (e) { isAcrossOrigin = true; } var StatusTextMap = { 200: 'OK', 302: 'Found', 400: 'Bad Request', 500: 'Internal Server Error' }; function getIsAcrossOrigin() { return isAcrossOrigin; } function networkStartLog(item) { var _a, _b, _c, _d, _e; console.log('[system]', " [response ".concat(item.requestType, "]"), item.url, item.response, item); if (item.rdevRequestId && ((_b = (_a = window.RemoteDevSdk) === null || _a === void 0 ? void 0 : _a.instance) === null || _b === void 0 ? void 0 : _b.Network) && item.id !== '__system_log__') { try { var finishedOptions = { requestId: item.rdevRequestId, url: item.url, status: +(item.status || '500'), statusText: StatusTextMap[+(item.status || '500')] || 'Error', responseHeaders: { RDEV_RESPONSE_TYPE: item.requestType }, responseBody: item.response, requestTime: item.requestTime || 0, duration: item.costTime || (item.endTime && item.startTime ? item.endTime - item.startTime : performance.now() / 1000 - (item.requestTime || 0)) }; window.RemoteDevSdk.instance.Network.customRequestFinished(finishedOptions); } catch (err) {} } if (((_c = window.vConsole) === null || _c === void 0 ? void 0 : _c.network) && item.id !== '__system_log__') { try { item.statusText = "".concat(item.status); item.responseSize = item.response.length; item.responseSizeText = "".concat(item.response.length); return (_e = (_d = window.vConsole.network).update) === null || _e === void 0 ? void 0 : _e.call(_d, item.id, Object.assign({}, item, { readyState: 4 })); } catch (err) {} } } function reqType(obj, path) { return obj.url.indexOf(path) > -1 && obj.url.indexOf('action=') === -1 && (!obj.data || !obj.data.action); } function findAjaxScopeByConfig(url, config) { var pathname = new URL(url, location.href).pathname || ''; var scope = config[pathname.slice(1)]; if (scope) { return scope; } } function getAjaxScope(ajaxUrl) { if (Url.getQuery('no_transfer', location.href) !== '1' && mmVersion.isWechat && !mmVersion.isInMiniProgram && !mmVersion.isWxWork && !mmVersion.isMpapp && !isAcrossOrigin && window.__ajaxTransferConfig && _typeof(window.__ajaxTransferConfig) === 'object' && ( mmVersion.isIOS && mmVersion.compareHexVersion('1800282F') || mmVersion.isAndroid && mmVersion.compareHexVersion('28002234') || mmVersion.isWindowsWechat && mmVersion.cpVersion('3.9.5', 1, true, 'windows') || mmVersion.isMacWechat && mmVersion.cpVersion('3.8.4', 1, true, 'mac') || mmVersion.isHarmonyWechat && mmVersion.compareHexVersion('0xf3100b00') && !mmVersion.compareHexVersion('0xf3100c00') || mmVersion.compareHexVersion('0xf3800b00'))) { try { return findAjaxScopeByConfig(ajaxUrl, window.__ajaxTransferConfig); } catch (err) { } } } function getActionByData(data) { var _a, _b; if (_typeof(data) === 'object' && !(data instanceof Blob)) { if (data.hasOwnProperty('data') && typeof data.data === 'string') { try { var workedData = JSON.parse(data.data); return workedData.action || ''; } catch (e) {} } return data.action || ''; } if (typeof data === 'string') { return ((_b = (_a = data.split(/[?&]/).find(function (x) { return x.indexOf('action=') >= 0; })) === null || _a === void 0 ? void 0 : _a.split('=')) === null || _b === void 0 ? void 0 : _b[1]) || ''; } return ''; } var METHOD_ENUM = { GET: 0, POST: 1 }; var __moon_report = window.__moon_report || function () {}; var MOON_AJAX_SUCCESS_OFFSET = 3; var MOON_AJAX_NETWORK_OFFSET = 4; var MOON_AJAX_ERROR_OFFSET = 5; var MOON_AJAX_TIMEOUT_OFFSET = 6; var MOON_AJAX_COMPLETE_OFFSET = 7; var LENGTH_LIMIT = 4096; function reportRtError(type, id, key, content) { var log = ''; var prefix = type === 'rt' ? 'rtCheckError' : 'Ajax Length Limit'; if (content === null || content === void 0 ? void 0 : content.length) { var loglen = 1000; var len = content.length; var lc = Math.ceil(len / loglen); log = ["&lc=".concat(lc)]; for (var i = 0; i = 200 && retryStatus 0 ? 'json' : undefined }); var isTimeout = false; handleReqTimeout({ abort: function abort() { isTimeout = true; reqLogItem.endTime = Date.now(); reqLogItem.response = 'timeout'; networkEndLog(reqLogItem); } }); Device.os.pc && monitor$1.setSum(115849, 69, 1); JSAPI.invoke(Device.os.pc ? 'H5ExtTransfer' : 'webTransfer', params, function (res) { var _a, _b, _c, _d, _e, _f; if (isTimeout) return; var status = 400; var result = ''; if (Device.os.pc) { try { var retFlag = res.base_resp.ret === 0 && res.jsapi_resp.ret === 0 && res.err_msg.indexOf(':ok') > -1; var respJsonFlag = res.jsapi_resp.resp_json; status = retFlag && respJsonFlag ? 200 : 400; result = res.jsapi_resp.resp_json; } catch (err) { console.error(err); } } else { status = res && res.errCode * 1 === 0 && typeof res.result === 'string' && res.result ? 200 : 400; result = res.result; } try { Log.log("ajax transfer, status: ".concat(status, ", reqUrl: ").concat(reqUrl)); } catch (err) { console.error(err); } if (status >= 200 && status -1 && retryStatus >= 200 && retryStatus = 200 && status LENGTH_LIMIT) { reportAjaxLength(27613, 17, "ajax get limit[length: ".concat(url.length, "]").concat(url.substring(0, 1024))); } if (data && !(data instanceof Blob) && data.length > LENGTH_LIMIT) { reportAjaxLength(27613, 18, "ajax post limit[length: ".concat(data.length, "]").concat(data.substring(0, 1024))); } if (data && data instanceof Blob && data.size > LENGTH_LIMIT) { reportAjaxLength(27613, 18, "ajax post limit[length: ".concat(data.size, "]blob")); } } catch (e) { } } catch (e) { obj.error && obj.error(xhr, { type: 3, error: e, status: 0 }); } beforeReq(); }); } mmVersion.isWindowsWechat && mmVersion.compareHexVersion('0xf2550000') || mmVersion.isMacWechat && mmVersion.compareHexVersion('0xf2650000'); var getBrandServiceType = function getBrandServiceType() { var serviceType = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window.service_type; var _a, _b; var brandServiceType = 0; if (serviceType !== undefined) brandServiceType = serviceType + 1; if (((_b = (_a = window.cgiData) === null || _a === void 0 ? void 0 : _a.trans_appmsg_info) === null || _b === void 0 ? void 0 : _b.trans_type) * 1 === 1) brandServiceType = 3; return brandServiceType; }; function setCurrentMpInfo(ifShow) { var supportNewTopBar = mmVersion.isIOS && mmVersion.gtVersion('7.0.10', true) || mmVersion.isAndroid && mmVersion.gtVersion('7.0.12', true); var supportLiveStatus = mmVersion.isIOS && mmVersion.gtVersion('8.0.46', true) || mmVersion.isAndroid && mmVersion.gtVersion('8.0.46', true); JSAPI.invoke('currentMpInfo', { userName: window.user_name, brandName: !!supportNewTopBar && window.nickname === '' ? '未命名账号' : window.title, title: window.msg_title || '', brandIcon: window.hd_head_img.replace(/\/0$/, '/132'), itemShowType: window.item_show_type, isPaySubscribe: window.isPaySubscribe, topBarStyle: supportNewTopBar ? 1 : 0, topBarShowed: ifShow, disableShowFinderLiveTopBar: !ifShow && supportLiveStatus ? 1 : 0, brandServiceType: getBrandServiceType() }, function () {}); } function AjaxWx(obj) { var report36408 = typeof obj.report36408 === 'function' ? obj.report36408 : function () {}; obj.url += obj.url.indexOf('?') === -1 ? '?fasttmplajax=1' : '&fasttmplajax=1'; if (getAjaxScope(obj.url)) { Ajax(obj); return; } if (obj.usePb) { obj.type = 'POST'; obj.data = { data: JSON.stringify(obj.data) }; } if (!/^(http:\/\/|https:\/\/|\/\/)/.test(obj.url)) { obj.url = "https://mp.weixin.qq.com/".concat(obj.url.replace(/^\//, '')); } else if (/^\/\//.test(obj.url)) { obj.url = "https:".concat(obj.url); } if (obj.f !== 'html' && (obj.url.indexOf('?f=json') === -1 || obj.url.indexOf('&f=json') === -1)) { obj.url += '&f=json'; } if (!obj.notJoinUrl && obj.f !== 'html') { obj.url = Url.joinUrl(obj.url); } Url.joinUserArticleRole(obj.url, !!obj.notJoinUrl, function (url) { obj.url = url; var urlObj = new URL(url, location.origin); var data = null; if (_typeof(obj.data) === 'object') { var d = obj.data; var ds = []; for (var k in d) { if (d.hasOwnProperty(k)) { ds.push("".concat(k, "=").concat(encodeURIComponent(d[k]))); } } data = ds.join('&'); } else { data = typeof obj.data === 'string' ? obj.data : null; } var header = { Cookie: document.cookie, referer: location.href }; if (obj.contentType) { header['Content-Type'] = obj.contentType; } else if ((obj.type || 'GET').toUpperCase() === 'POST') { header['Content-Type'] = 'application/x-www-form-urlencoded; charset=UTF-8'; } var reqLogItem = networkStartLog({ method: obj.type || 'GET', url: obj.url, postData: obj.data || {}, requestHeader: header, requestType: 'jsapi', startTime: Date.now() }); var retryTime = 1; var jsapiRequest = function jsapiRequest(obj, data) { return JSAPI.invoke('request', { url: obj.url, method: obj.type, data: data, header: header }, function (res) { var _a, _b, _c, _d, _e, _f; if (res.err_msg.indexOf(':ok') > -1 && (!res.statusCode || res.statusCode >= 200 && res.statusCode '27000600')) { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 1, HttpCode: res.statusCode || 0, Ret: ((_c = resData === null || resData === void 0 ? void 0 : resData.base_resp) === null || _c === void 0 ? void 0 : _c.ret) || 0 }); } var _retryTime = retryTime++; JSAPI.invoke('updatePageAuth', {}, function (res) { console.log('[skeleton] updatePageAuth', res); monitor$1.setSum(112287, 3, 1); if (res && res.err_msg && res.err_msg.indexOf(':ok') > -1) { window.top.pass_ticket = encodeURIComponent(Url.getQuery('pass_ticket', res.fullUrl).html(false).replace(/\s/g, '+')); if (obj.pass_ticket) { obj.pass_ticket = window.top.pass_ticket; } console.warn('[skeleton] updatePageAuth resetTopbar'); var supportNewTopBar = mmVersion.isIOS && mmVersion.gtVersion('7.0.10', true); var showBottomBar = !!window.is_login; if (window.top.item_show_type === '0' && supportNewTopBar) { var top = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop || 0; setCurrentMpInfo(top > 40 && !showBottomBar); } try { obj.url = Url.addParam(obj.url, 'retry', _retryTime, true); } catch (err) { console.error(err); } jsapiRequest(obj, data); monitor$1.setSum(112287, 4, 1); } else { obj.success && obj.success(resData); obj.complete && obj.complete(); if (mmVersion.isIOS) { monitor$1.setSum(112287, 35, 1); } else { monitor$1.setSum(112287, 36, 1); } reqLogItem.status = 200; reqLogItem.endTime = Date.now(); reqLogItem.response = resData; networkEndLog(reqLogItem); } }); } else { if (((_d = tmpResData === null || tmpResData === void 0 ? void 0 : tmpResData.base_resp) === null || _d === void 0 ? void 0 : _d.ret) !== 0) { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 4, HttpCode: res.statusCode || 0, Ret: ((_e = tmpResData === null || tmpResData === void 0 ? void 0 : tmpResData.base_resp) === null || _e === void 0 ? void 0 : _e.ret) || 0 }); } } else { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 0, HttpCode: res.statusCode || 0, Ret: ((_f = tmpResData === null || tmpResData === void 0 ? void 0 : tmpResData.base_resp) === null || _f === void 0 ? void 0 : _f.ret) || 0 }); } } obj.success && obj.success(resData); obj.complete && obj.complete(); reqLogItem.status = 200; reqLogItem.endTime = Date.now(); reqLogItem.response = resData; networkEndLog(reqLogItem); } } else if (res.err_msg.indexOf('no permission') > -1 || !mmVersion.isOnlyWechat) { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 1, HttpCode: res.statusCode || 0, Ret: 0 }); } Ajax(obj); if (res.err_msg.indexOf('no permission') > -1) { console.warn('[JSAPI Request] No permission'); monitor$1.setSum(112287, 31, 1); } reqLogItem.status = 302; reqLogItem.endTime = Date.now(); reqLogItem.response = res; networkEndLog(reqLogItem); } else { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 2, HttpCode: res.statusCode || 0, Ret: 0 }); } obj.error && obj.error(null, { type: 3, error: res, status: 0 }); obj.complete && obj.complete(); monitor$1.setSum(112287, 32, 1); var sample = 0.001; if (Math.random() = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } var AjaxRouter = function () { var _ref = _asyncToGenerator( _regeneratorRuntime().mark(function _callee(obj) { return _regeneratorRuntime().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: if (!window.__secPageAuthPromise) { _context.next = 3; break; } _context.next = 3; return window.__secPageAuthPromise; case 3: if (!(!mmVersion.isWxWork && (window.__second_open__ || !getIsAcrossOrigin() && top.window.__second_open__) && window.__is_page_auth_return__ && !obj.pureHttp)) { _context.next = 5; break; } return _context.abrupt("return", AjaxWx(obj)); case 5: return _context.abrupt("return", Ajax(obj)); case 6: case "end": return _context.stop(); } }, _callee); })); return function AjaxRouter(_x) { return _ref.apply(this, arguments); }; }(); var html = function html(_str, encode) { if (!_str) return ''; var replace = ['`', '`', ''', '\'', '"', '"', ' ', ' ', '>', '>', '<', '']; var replaceReverse = ['&', '&', '¥', '¥', '', '>', ' ', ' ', '"', '"', '\'', ''', '`', '`']; var str = _str; var target; if (encode) { target = replaceReverse; } else { target = replace; } for (var i = 0; i ', '<', '', '>', '"', '"', '\'', ''', '`', '`']; var str = _str; var target; if (encode) { target = replaceReverse; } else { target = replace; } for (var i = 0; i -1) { new Image().src = "".concat(location.protocol, "//mp.weixin.qq.com/mp/jsmonitor?idkey=68064_13_1&r=").concat(Math.random()); } obj.x5 = isx5 ? '1' : '0'; obj.f = 'json'; return Url.join(url, obj); } function isObj(obj) { return obj && _typeof(obj) === 'object'; } function assign(target, source) { if (isObj(target) && isObj(source)) { for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } } function assembleReportData(initiative) { var leaveReportLog = []; leaveReportLog.push({ content: "[LeaveReport] specificData keys: ".concat(Object.keys(specificData)), timestamp: Date.now() }); Log.log("[LeaveReport] specificData keys: ".concat(Object.keys(specificData))); console.log("[LeaveReport] specificData keys: ".concat(Object.keys(specificData))); var allReportData = {}; for (var reportField in specificData) { if (!allReportData[reportField]) { allReportData[reportField] = {}; } for (var i = 0; i 100000) { result = '10万+'; } else if (parseInt(value, 10) > 10000 && parseInt(value, 10) 100000) { dom.innerText = "".concat(formatReadNum(cnt), ""); dom.setAttribute('aria-labelledby', 'js_ting_heard js_a11y_op_ting_heard'); } else if (cnt > 0) { dom.innerText = "".concat(formatReadNum(cnt), "人"); dom.setAttribute('aria-labelledby', 'js_ting_heard js_a11y_op_ting_heard'); } else { dom.innerText = "听全文"; dom.setAttribute('aria-labelledby', 'js_ting_heard'); } dom.style.removeProperty('display'); window.__hasClickedAudioPanelHandler = function () { window.__hasClickedAudioPanel = true; }; dom.addEventListener('click', window.__hasClickedAudioPanelHandler); } else { dom.parentNode.removeChild(dom); } }; if (!window.__second_open__) { var tempkey = window.tempkey || ''; var tingHeardDom = document.querySelector('#js_ting_heard'); document.querySelector('#js_a11y_op_ting_heard'); var tingIsShow = (window.tts_is_show || '') && !(window.noneed_tts || '' === '1'); var tingHeardCnt = window.tts_heard_person_cnt || ''; console.log('tingIsShow, tingHeardCnt', tingIsShow, tingHeardCnt); !!(tingIsShow * 1) && __setTingHeard(document.querySelector('#js_content'), tingHeardDom, tingHeardCnt * 1, !!tempkey); window.__setTingHeard = __setTingHeard; } return __setTingHeard; })();var __INLINE_SCRIPT__ = (function (exports) { 'use strict'; function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$1(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } function _unsupportedIterableToArray$1(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$1(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$1(o, minLen); } function _arrayLikeToArray$1(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i b; } }; function cpVersion(ver, op, canEq, type) { var mmver = false; switch (type) { case 'mac': mmver = getMac(); break; case 'windows': mmver = getWindowsVersionFormat(); break; case 'wxwork': mmver = getWxWork(); break; case 'mpapp': mmver = getMpApp(); break; case 'unifiedpc': mmver = getUnifiedPcVer(); break; default: mmver = get(); break; } if (!mmver) { return; } var mmversion = mmver.split('.'); var version = ver.split('.'); if (!/\d+/g.test(mmversion[mmversion.length - 1])) { mmversion.pop(); } for (var i = 0, len = Math.max(mmversion.length, version.length); i = 64 && parseInt(v) = hexNum; } return false; } var mmVersion = { get: get, getMac: getMac, getMacOS: getMacOS, getWindows: getWindows, getInner: getInner, getWxWork: getWxWork, getMpApp: getMpApp, cpVersion: cpVersion, eqVersion: eqVersion, gtVersion: gtVersion, ltVersion: ltVersion, getPlatform: getPlatform, getVersionNumber: getVersionNumber, isWp: is_wp, isIOS: is_ios, isAndroid: is_android, isHarmony: is_harmony, isHarmonyWechat: is_harmony && is_wechat && cpVersion('1.0.0', 1, true), isInMiniProgram: is_in_miniProgram, isWechat: is_wechat, isMac: is_mac, isWindows: is_windows, isLinux: is_linux, isMacWechat: is_mac_wechat, isWindowsWechat: is_windows_wechat, isWxWork: is_wx_work, isOnlyWechat: is_wechat && !is_wx_work, isMpapp: is_mpapp, isNewMpApp: false, isIPad: is_ipad, isGooglePlay: is_google_play, isPrefetch: is_prefetch, isDonutAPP: is_donut_app, compareHexVersion: compareHexVersion, isPcWechat: is_windows_wechat || is_mac_wechat, xwebVersion: xweb_version, isUnifiedPcWechat: is_unified_pc_wechat }; var initJsBridge = false; if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; } function connectWebViewJavascriptBridge(callback) { if (window.WebViewMPapp || window.WebViewJavascriptBridge) { return callback(window.WebViewMPapp || window.WebViewJavascriptBridge); } if (window.WVJBCallbacks) { return window.WVJBCallbacks.push(callback); } window.WVJBCallbacks = [callback]; if (!mmVersion.isMpapp) { return false; } if (!initJsBridge) { initJsBridge = true; var WVJBIframe = document.createElement('iframe'); WVJBIframe.style.display = 'none'; WVJBIframe.src = 'https://__bridge_loaded__'; document.body.appendChild(WVJBIframe); setTimeout(function () { initJsBridge = false; document.body.removeChild(WVJBIframe); }, 0); } return false; } function invoke$1(jsapiName, opt, callback) { connectWebViewJavascriptBridge(function (bridge) { try { if (typeof opt === 'function') { callback = opt; } if (_typeof(opt) !== 'object' && typeof opt !== 'string') { opt = {}; } bridge.callHandler(jsapiName, opt, function (res) { try { var ret = _typeof(res) === 'object' ? res : JSON.parse(res); var errMsg = ret.err_msg || ret.errMsg; console.info("[mpapp jsapi] invoke->".concat(jsapiName, " ").concat(opt.action || '', " ").concat(errMsg)); typeof callback === 'function' && callback(ret); } catch (e) { window.WX_BJ_REPORT.BadJs.report('invoke', "callback ".concat(jsapiName, " error:"), { mid: 'mmbizwebapp:js_brridge', _info: e }); console.error("[mpapp jsapi] ".concat(jsapiName, " ").concat(opt.action || ''), e, res); } }); } catch (e) { window.WX_BJ_REPORT.BadJs.report('invoke', 'callback error:', { mid: 'mmbizwebapp:js_brridge', _info: e }); console.error('[mpapp jsapi]', e); } }); } function _regeneratorRuntime$1() { _regeneratorRuntime$1 = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } var doc$1 = {}; var isAcrossOrigin$1 = false; var notFoundedMPPageAction = []; var __moon_report$1 = window.__moon_report || function () {}; var MOON_JSAPI_KEY_OFFSET = 8; try { doc$1 = top.window.document; } catch (e) { isAcrossOrigin$1 = true; } if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; } function ready(onBridgeReady) { var bridgeReady = function bridgeReady() { try { if (onBridgeReady) { window.onBridgeReadyTime = window.onBridgeReadyTime || Date.now(); onBridgeReady(); } } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: 'ready', e: e }]); throw e; } window.jsapiReadyTime = Date.now(); }; if (!isAcrossOrigin$1 && (typeof top.window.WeixinJSBridge === 'undefined' || !top.window.WeixinJSBridge.invoke)) { if (doc$1.addEventListener) { doc$1.addEventListener('WeixinJSBridgeReady', bridgeReady, false); } else if (doc$1.attachEvent) { doc$1.attachEvent('WeixinJSBridgeReady', bridgeReady); doc$1.attachEvent('onWeixinJSBridgeReady', bridgeReady); } } else { bridgeReady(); } } var invokeNotWaitA8key = ['notifyPageInfo', 'updatePageAuth' ]; var checkNotFoundedInvoke = function checkNotFoundedInvoke(methodName, args) { if (methodName === 'handleMPPageAction' && (args === null || args === void 0 ? void 0 : args.action) && notFoundedMPPageAction.includes(args === null || args === void 0 ? void 0 : args.action)) { return true; } return false; }; function invoke(_x, _x2, _x3) { return _invoke.apply(this, arguments); } function _invoke() { _invoke = _asyncToGenerator( _regeneratorRuntime$1().mark(function _callee(methodName, args, callback) { return _regeneratorRuntime$1().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: if (!(window.__secPageAuthPromise && !window.__is_page_auth_ok__ && !invokeNotWaitA8key.includes(methodName))) { _context.next = 3; break; } _context.next = 3; return window.__secPageAuthPromise; case 3: ready(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object') { alert('请在微信中打开此链接'); return false; } if (checkNotFoundedInvoke(methodName, args)) { setTimeout(function () { if (callback) { callback.apply(window, [{ err_msg: "".concat(methodName, ":fail"), err_desc: 'action isn\'t supported' }]); } }, 0); } else { top.window.WeixinJSBridge.invoke(methodName, args, function () { try { for (var _len2 = arguments.length, rets = new Array(_len2), _key2 = 0; _key2 ".concat(ret.err_msg) : ''; if (['handleMPPageAction', 'handleVideoAction', 'handleHaokanAction'].indexOf(methodName) !== -1) { var action = (args === null || args === void 0 ? void 0 : args.action) || ''; console.info('[system]', "[jsapi] invoke->".concat(methodName, ", action->").concat(action).concat(errMsg)); } else { console.info('[system]', "[jsapi] invoke->".concat(methodName).concat(errMsg)); } if (methodName === 'handleMPPageAction' && (args === null || args === void 0 ? void 0 : args.action) && ((ret === null || ret === void 0 ? void 0 : ret.err_desc) === 'action isn\'t supported' || (ret === null || ret === void 0 ? void 0 : ret.err_msg) === 'handleMPPageAction:fail action is not supported')) { notFoundedMPPageAction.push(args === null || args === void 0 ? void 0 : args.action); } if (callback) { callback.apply(window, rets); } } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: "invoke;methodName:".concat(methodName), e: e }]); throw e; } }); } }); case 4: case "end": return _context.stop(); } }, _callee); })); return _invoke.apply(this, arguments); } function call(_x4) { return _call.apply(this, arguments); } function _call() { _call = _asyncToGenerator( _regeneratorRuntime$1().mark(function _callee2(methodName) { return _regeneratorRuntime$1().wrap(function _callee2$(_context2) { while (1) switch (_context2.prev = _context2.next) { case 0: if (!(window.__secPageAuthPromise && !window.__is_page_auth_ok__)) { _context2.next = 3; break; } _context2.next = 3; return window.__secPageAuthPromise; case 3: ready(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object') { return false; } try { top.window.WeixinJSBridge.call(methodName); } catch (e) { __moon_report$1([{ offset: MOON_JSAPI_KEY_OFFSET, log: "call;methodName:".concat(methodName), e: e }]); throw e; } }); case 4: case "end": return _context2.stop(); } }, _callee2); })); return _call.apply(this, arguments); } function on(eventName, callback) { ready(function () { if (isAcrossOrigin$1) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object' || !top.window.WeixinJSBridge.on) { return false; } if (!window.JSAPIEventCallbackMap[eventName]) { window.JSAPIEventCallbackMap[eventName] = []; } window.JSAPIEventCallbackMap[eventName].push(callback); if (window.JSAPIEventCallbackMap[eventName].length > 1) { return false; } top.window.WeixinJSBridge.on(eventName, function () { try { for (var _len = arguments.length, rets = new Array(_len), _key = 0; _key ".concat(ret.err_msg) : ''; console.info('[system]', "[jsapi] event->".concat(eventName).concat(errMsg)); if (window.JSAPIEventCallbackMap[eventName] && window.JSAPIEventCallbackMap[eventName].length) { var result; for (var i = 0; i = 0; i--) { if (window.JSAPIEventCallbackMap[eventName][i] === callback) { window.JSAPIEventCallbackMap[eventName].splice(i, 1); result = true; } } return result; }); } var JSAPI = { ready: ready, invoke: invoke, call: call, on: on, remove: remove }; function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } } function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i -1) && (vie = 7); (window.XDomainRequest || ua.indexOf('Trident/4.0') > -1) && (vie = 8); ua.indexOf('Trident/5.0') > -1 && (vie = 9); ua.indexOf('Trident/6.0') > -1 && (vie = 10); Device.browser.ie = true, Device.browser.version = vie; } else if (ua.indexOf('Trident/7.0') > -1) { Device.browser.ie = true, Device.browser.version = 11; } if (android) { Device.os.android = true; Device.os.version = android[2]; Device.os.type = 2; } if (harmony) { Device.os.harmony = true; Device.os.version = harmony[2]; Device.os.type = 42; } if (ipod) { Device.os.ios = Device.os.ipod = true; Device.os.version = ipod[2].replace(/_/g, '.'); } if (ipad) { Device.os.ios = Device.os.ipad = true; Device.os.version = ipad[2].replace(/_/g, '.'); Device.os.type = 13; } if (iphone) { Device.os.iphone = Device.os.ios = true; Device.os.version = iphone[2].replace(/_/g, '.'); Device.os.type = 1; } if (WinOS) Device.os.windows = true, Device.os.version = WinOS[2], Device.os.type = 15; if (MacOS) Device.os.Mac = true, Device.os.version = MacOS[1], Device.os.type = 14; if (Linux) Device.os.Linux = true, Device.os.type = 33; if (ua.indexOf('lepad_hls') > 0) Device.os.LePad = true; if (MIPAD) Device.os.MIPAD = true; if (MQQBrowser) Device.browser.MQQ = true, Device.browser.version = MQQBrowser[1]; if (MQQClient) Device.browser.MQQClient = true, Device.browser.version = MQQClient[1]; if (WeChat) Device.browser.WeChat = true, Device.browser.mmversion = Device.browser.version = WeChat[1]; if (MiuiBrowser) Device.browser.MIUI = true, Device.browser.version = MiuiBrowser[1]; if (UC) Device.browser.UC = true, Device.browser.version = UC[1] || NaN; if (IEMobile) Device.browser.IEMobile = true, Device.browser.version = IEMobile[2]; if (AndriodBrowser) { Device.browser.AndriodBrowser = true; } if (M1) { Device.browser.M1 = true; } if (Chrome) { Device.browser.Chrome = true, Device.browser.version = Chrome[1]; } if (Device.os.windows) { if (typeof navigator.platform !== "undefined" && navigator.platform.toLowerCase() == "win64") { Device.os.win64 = true; } else { Device.os.win64 = false; } } if (Device.os.Mac || Device.os.windows || Device.os.Linux || Device.os.unifiedPC || /OpenHarmony/i.test(ua) && /pc/i.test(ua)) { Device.os.pc = true; } var osType = { iPad7: 'iPad; CPU OS 7', LePad: 'lepad_hls', XiaoMi: 'MI-ONE', SonyDTV: "SonyDTV", SamSung: 'SAMSUNG', HTC: 'HTC', VIVO: 'vivo' }; for (var os in osType) { Device.os[os] = ua.indexOf(osType[os]) !== -1; } Device.os.phone = Device.os.phone || /windows phone/i.test(ua); Device.os.getNumVersion = function () { return parseFloat(Device.os.version); }; Device.os.hasTouch = 'ontouchstart' in window; if (Device.os.hasTouch && Device.os.ios && Device.os.getNumVersion() = 3.0; }; Device.browser.isCanOcx = function () { return !!Device.os.windows && (!!Device.browser.ie || Device.browser.isFFCanOcx() || !!Device.browser.webkit); }; Device.browser.isNotIESupport = function () { return !!Device.os.windows && (!!Device.browser.webkit || Device.browser.isFFCanOcx()); }; Device.userAgent = {}; Device.userAgent.browserVersion = Device.browser.version; Device.userAgent.osVersion = Device.os.version; if (Device.os.unifiedPC) { if (Device.os.unifiedWindows) Device.os.type = 37;else if (Device.os.unifiedMac) Device.os.type = 38;else Device.os.type = 39; } delete Device.userAgent.version; } detect(window.navigator.userAgent); function canSupportH5Video() { var ua = window.navigator.userAgent, m = null; if (!!Device.os.android) { if (Device.browser.MQQ && Device.browser.getNumVersion() >= 4.2) { return true; } if (ua.indexOf('MI2') != -1) { return true; } if (Device.os.version >= '4' && (m = ua.match(/MicroMessenger\/((\d+)\.(\d+))\.(\d+)/))) { if (parseFloat(m[1]) >= 4.2) { return true; } } if (Device.os.version >= '4.1') { return true; } } return false; } function canSupportVideoMp4() { var video = document.createElement('video'); if (typeof video.canPlayType === 'function') { if (video.canPlayType('video/mp4; codecs="mp4v.20.8"') === 'probably') { return true; } if (video.canPlayType('video/mp4; codecs="avc1.42E01E"') === 'probably' || video.canPlayType('video/mp4; codecs="avc1.42E01E, mp4a.40.2"') === 'probably') { return true; } } return false; } function canSupportAutoPlay() { if (Device.os.ios && Device.os.getNumVersion() 1 && arguments[1] !== undefined ? arguments[1] : 0; var canEqual = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; var nowVersionStr = Device.os.version; if (!nowVersionStr) return false; var versionArr = version.split('.'); var nowVersionArr = nowVersionStr.split('.'); for (var i = 0; i 0) return vi > nvi; if (cp = 0) continue; target[key] = source[key]; } return target; } function formatDataToString(data) { var reportData = []; for (var key in data) { if (Object.prototype.hasOwnProperty.call(data, key)) { reportData.push(key + '=' + encodeURIComponent(data[key])); } } return reportData.join('&'); } monitor.getReportData = function (opt) { opt = opt || {}; var idkey = monitor._reportOptions.idkey || {}; var key = null; var reportData = {}; var nextKey; try { for (key in idkey) { if (Object.prototype.hasOwnProperty.call(idkey, key) && idkey[key]) { reportLogs.push(key + '_' + idkey[key]); } } } catch (e) { return false; } if (reportLogs.length === 0) { return false; } if (reportExtraLogs.length) { reportData.lc = reportExtraLogs.length; reportExtraLogs.forEach(function (extraLog, index) { reportData["log".concat(index)] = extraLog; }); } try { var reportOptions = monitor._reportOptions; if (reportOptions !== null && reportOptions !== undefined) { for (nextKey in reportOptions) { if (Object.prototype.hasOwnProperty.call(reportOptions, nextKey)) { reportData[nextKey] = reportOptions[nextKey]; } } } } catch (e) { reportData = {}; } reportData.idkey = reportLogs.join(';'); reportData.t = Math.random(); if (opt.remove !== false) { reportLogs = []; reportExtraLogs = []; monitor._reportOptions = { idkey: {} }; } return reportData; }; monitor.setLogs = function (opt) { var id = opt.id; var key = opt.key; var value = opt.value; var extraLog = opt.log; var others = ObjWithoutProperty(opt, ['id', 'key', 'value', 'log']); var idkey = monitor._reportOptions.idkey || {}; var param = id + '_' + key; if (idkey[param]) { idkey[param] += value; } else { idkey[param] = value; } monitor._reportOptions.idkey = idkey; if (extraLog) { reportExtraLogs.push(extraLog); } try { if (others !== null && others !== undefined) { for (var otherKey in others) { if (Object.prototype.hasOwnProperty.call(others, otherKey)) { monitor._reportOptions[otherKey] = others[otherKey]; } } } } catch (e) { console.log(e); } return monitor; }; monitor.setAvg = function (id, key, value) { var idkey = monitor._reportOptions.idkey || {}; var param1 = id + '_' + key; var param2 = id + '_' + (key - 1); if (idkey[param1]) { idkey[param1] += value; } else { idkey[param1] = value; } if (idkey[param2]) { idkey[param2] += 1; } else { idkey[param2] = 1; } monitor._reportOptions.idkey = idkey; return monitor; }; monitor.setSum = function (id, key) { var value = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1; var idkey = monitor._reportOptions.idkey; var param = id + '_' + key; if (idkey[param]) { idkey[param] += value; } else { idkey[param] = value; } monitor._reportOptions.idkey = idkey; return monitor; }; monitor.send = function (async, ajax, origin) { if (async !== false) { async = true; } var data = monitor.getReportData(); origin = origin || ''; if (!data) { return; } if (!!ajax && ajax instanceof Function) { ajax({ url: origin + sendUrl, type: 'POST', mayAbort: true, data: data, async: async, timeout: 2000, dontReport: true }); } else { new Image().src = origin + '/mp/jsmonitor?' + formatDataToString(data) + '#wechat_redirect'; } }; if (typeof window !== 'undefined' && window.__monitor) { monitor = window.__monitor; } else { typeof window !== 'undefined' && (window.__monitor = monitor); } var monitor$1 = monitor; var logList = []; var log = function log(msg) { logList.push(msg); }; var printLog = function printLog() { for (var i = 0, len = logList.length; i d2.exp) return 1; return 0; }); var memCnt = 0; for (var i = 0; i = size) break; var key = keys[i]; memCnt += JSON.stringify(data[key]).length; delete data[key]; } return data; }, 'clear-all': function clearAll() { localStorage$1.clear(); return {}; } }; function formatLogMsg(str) { return "[WXLS] ".concat(str); } var LS = function () { function LS(func, evictionPolicy, logger) { _classCallCheck(this, LS); this.logger = function () {}; if (!func) throw 'require function name.'; this.evictionPolicy = 'noeviction'; this.key = func; if (typeof logger === 'function') { this.logger = function (str, type) { return logger(formatLogMsg(str), type); }; } if (evictionPolicy && Object.keys(evictionPolicies).indexOf(evictionPolicy) !== -1) { this.evictionPolicy = evictionPolicy; } this.init(); } _createClass(LS, [{ key: "init", value: function init() { var _a, _b; this.check(); if (Math.random() * 1000 now) { temp[key] = val; } } this.logger("check info: isReturn:".concat(isReturn, " data:").concat(JSON.stringify(temp)), 'info'); if (isReturn) return temp; LS.setItem(this.key, JSON.stringify(temp), this.logger); } }, { key: "set", value: function set(key, val, exp) { var _a, _b; var data = this.check(true); data[key] = { val: val, exp: exp || +new Date() }; try { if (localStorage$1.getItem(prefix + this.key)) localStorage$1.removeItem(prefix + this.key); localStorage$1.setItem(prefix + this.key, JSON.stringify(data)); this.logger("first set success: LSlen:".concat((_a = window === null || window === void 0 ? void 0 : window.localStorage) === null || _a === void 0 ? void 0 : _a.length, " key:").concat(prefix + this.key, " data:").concat(JSON.stringify(data)), 'success'); } catch (e) { this.logger("first set error: LSlen:".concat((_b = window === null || window === void 0 ? void 0 : window.localStorage) === null || _b === void 0 ? void 0 : _b.length, " error:").concat(e, " key:").concat(prefix + this.key, " data:").concat(JSON.stringify(data), " k:").concat(key, " v:").concat(val, " exp:").concat(exp), 'error'); localStorage$1.clear(); LS.setItem(this.key, JSON.stringify(_defineProperty({}, key, { val: val, exp: exp || +new Date() })), this.logger); } } }, { key: "get", value: function get(key) { var data = this.getData(); data = data[key]; return data ? data.val || null : null; } }, { key: "remove", value: function remove(key) { var data = this.getData(); if (data[key]) delete data[key]; LS.setItem(this.key, JSON.stringify(data), this.logger); } }], [{ key: "getItem", value: function getItem(key) { key = prefix + key; return localStorage$1.getItem(key); } }, { key: "setItem", value: function setItem(key, val, logger) { var _a, _b; key = prefix + key; var n = 3; while (n--) { try { if (localStorage$1.getItem(key)) localStorage$1.removeItem(key); localStorage$1.setItem(key, val); typeof logger === 'function' && logger("setItem success: LSlen:".concat((_a = window === null || window === void 0 ? void 0 : window.localStorage) === null || _a === void 0 ? void 0 : _a.length, " key:").concat(key, " val:").concat(val), 'success'); break; } catch (e) { typeof logger === 'function' && logger("setItem error: LSlen:".concat((_b = window === null || window === void 0 ? void 0 : window.localStorage) === null || _b === void 0 ? void 0 : _b.length, " error:").concat(e, " key:").concat(key, " val:").concat(val), 'error'); LS.clear(); } } } }, { key: "clear", value: function clear() { var i; var k; for (i = localStorage$1.length - 1; i >= 0; i--) { k = localStorage$1.key(i); if (k.indexOf(prefix) == 0) { localStorage$1.removeItem(k); } } } }, { key: "getSupportEvicationPolicy", value: function getSupportEvicationPolicy() { return Object.keys(evictionPolicies); } }]); return LS; }(); var innerVersion = (mmVersion.getInner() || '').toUpperCase(); var getBizLS = new LS('get_biz_result'); var bizMap = {}; function getBiz(needCheckBiz, bizType) { var _a; if (needCheckBiz === void 0) { needCheckBiz = false; } if (bizType === void 0) { bizType = ((_a = window.cgiDataNew) === null || _a === void 0 ? void 0 : _a.biz_type) || 1; } return new Promise(function (resolve, reject) { if (needCheckBiz || bizMap[bizType] === undefined) { if (!mmVersion.isOnlyWechat || mmVersion.isIOS && innerVersion -1) { bizMap[bizType] = res.biz; resolve(res.biz); getBizLS.set("".concat(bizType, "_get_biz_result"), res.biz, +new Date() + 3 * 24 * 60 * 60 * 1000); } else { reject('Failed to get biz'); } }); } } else { resolve(bizMap[bizType]); } }); } var getIsAuthor = function getIsAuthor(cb, bizuin, needCheckBiz, bizType) { var _a; if (bizuin === void 0) { bizuin = window.biz; } if (needCheckBiz === void 0) { needCheckBiz = false; } if (bizType === void 0) { bizType = ((_a = window.cgiDataNew) === null || _a === void 0 ? void 0 : _a.biz_type) || 1; } getBiz(needCheckBiz, bizType).then(function (biz) { cb(biz && biz === bizuin); })["catch"](function () { cb(false); }); }; function parseUrl(url) { var len = url.length; var ques_pos = url.indexOf('?'); var hash_pos = url.indexOf('#'); hash_pos = hash_pos == -1 ? len : hash_pos; ques_pos = ques_pos == -1 ? hash_pos : ques_pos; var host = url.substring(0, ques_pos); var query_str = url.substring(ques_pos + 1, hash_pos); var hash = url.substring(hash_pos + 1); return { host: host, query_str: query_str, hash: hash }; } function join(url, args, noEncode) { var ret = parseUrl(url); var query_str = ret.query_str; var args_arr = []; if (_typeof(args) === 'object') { for (var key in args) { if (args.hasOwnProperty(key)) { args_arr.push("".concat(key, "=").concat(noEncode ? args[key] : encodeURIComponent(args[key]))); } } } else { args_arr.push(noEncode ? args : encodeURIComponent(args)); } if (args_arr.length > 0) { query_str += (query_str !== "" ? "&" : "") + args_arr.join("&"); } return ret.host + (query_str !== "" ? "?".concat(query_str) : "") + (ret.hash !== "" ? "#".concat(ret.hash) : ""); } function addParam(url, param, value, forceReplace) { url = url || location.href; var firstAndPos = url.indexOf("&"); var len = url.length; var reverseUrl = url.replace(/^[\w\d]+:[/\\]+/g, "").split("").reverse(); if (!Array.prototype.indexOf) { Array.prototype.indexOf = function (searchElement, fromIndex) { var k; if (this == null) { throw new TypeError('"this" is null or not defined'); } var O = Object(this); var len = O.length >>> 0; if (len === 0) { return -1; } var n = fromIndex || 0; if (Math.abs(n) === Infinity) { n = 0; } if (n >= len) { return -1; } k = Math.max(n >= 0 ? n : len - Math.abs(n), 0); while (k lastSlashPos) { url = url.replace("&", "?"); } var reg = new RegExp("([\\?&]".concat(param, "=)[^&#]*")); if (!url.match(reg)) { var urlInfo = parseUrl(url); var hash = urlInfo.hash ? '#' + urlInfo.hash : ''; url = url.replace(hash, ''); var _pos = url.indexOf("?"); if (_pos == -1) { return "".concat(url, "?").concat(param, "=").concat(value).concat(hash); } if (_pos == url.length - 1) { return "".concat(url + param, "=").concat(value).concat(hash); } return "".concat(url, "&").concat(param, "=").concat(value).concat(hash); } if (forceReplace === true) { return url.replace(reg, "$1".concat(value)); } return url; } function addWxfrom(src, wxfrom) { var offset = window.service_type === 1 ? 10000 : 0; return addParam(src, 'wxfrom', offset + Number(wxfrom), true); } function removeParam(url, param) { var _URL = new URL(url), protocol = _URL.protocol, host = _URL.host, pathname = _URL.pathname, search = _URL.search, hash = _URL.hash; var queryParams = new URLSearchParams(search); queryParams["delete"](param); var newSearch = queryParams.toString(); var newUrl = new URL("".concat(protocol, "//").concat(host).concat(pathname).concat(newSearch ? "?".concat(decodeURIComponent(newSearch)) : "").concat(hash)); return newUrl.toString(); } function getQuery(name, url) { var u = url || window.location.search; var reg = new RegExp("(^|&)".concat(name, "=([^&]*)(&|$)")); var r = u.substring(u.indexOf('?') + 1).match(reg); return r !== null ? r[2] : ''; } function encodeBase64(value) { try { return window.btoa(value); } catch (e) { return ''; } } function decodeBase64(value) { try { return window.atob(value); } catch (e) { return ''; } } function joinUrl$1(url) { var obj = {}; if (typeof window.uin !== 'undefined') { obj.uin = window.uin; } if (typeof window.key !== 'undefined') { obj.key = window.key; } if (typeof window.pass_ticket !== 'undefined') { obj.pass_ticket = window.pass_ticket; } if (typeof window.wxtoken !== 'undefined') { obj.wxtoken = window.wxtoken; } if (typeof window.devicetype !== 'undefined') { obj.devicetype = window.devicetype; } if (typeof window.clientversion !== 'undefined') { obj.clientversion = window.clientversion || mmVersion.getInner(); } obj.version = obj.clientversion; if (window.biz) { obj.__biz = window.biz; } if (getQuery('enterid')) { obj.enterid = getQuery('enterid'); } if (typeof window.appmsg_token !== 'undefined') { obj.appmsg_token = window.appmsg_token; } else if (url.indexOf('advertisement_report') > -1) { new Image().src = "".concat(location.protocol, "//mp.weixin.qq.com/mp/jsmonitor?idkey=68064_13_1&r=").concat(Math.random()); } obj.x5 = navigator.userAgent.indexOf('TBS/') !== -1 ? '1' : '0'; obj.f = 'json'; return join(url, obj); } function joinUserArticleRole(url, notJoin, cb) { var bizuin = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : window.biz; var needCheckBiz = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false; if (notJoin) { cb(url); } else { getIsAuthor(function (isAuthor) { cb(addParam(url, 'user_article_role', isAuthor ? 1 : 0, true)); }, bizuin, needCheckBiz); } } function getA8keyQuery(name, url) { return new Promise(function (resolve) { if (window.__secPageAuthPromise) { window.__secPageAuthPromise.then(function () { resolve(getQuery(name, url)); }); } else { resolve(getQuery(name, url)); } }); } function addHash(url, hash) { var isReplace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false; if (isReplace) { return "".concat(url.split('#')[0]).concat(hash); } return "".concat(url).concat(url.indexOf('#') === -1 ? '#' : '').concat(hash); } function decodeUrl(url) { var _url = url; while (_url.indexOf('&') !== -1) { _url = _url.htmlDecode(); } return _url; } var Url = { parseUrl: parseUrl, join: join, addParam: addParam, addWxfrom: addWxfrom, addHash: addHash, getQuery: getQuery, getA8keyQuery: getA8keyQuery, encodeBase64: encodeBase64, decodeBase64: decodeBase64, joinUrl: joinUrl$1, joinUserArticleRole: joinUserArticleRole, removeParam: removeParam, decodeUrl: decodeUrl }; var _a; var doc; var isAcrossOrigin = false; try { doc = (_a = window.top) === null || _a === void 0 ? void 0 : _a.window.document; } catch (e) { isAcrossOrigin = true; } var StatusTextMap = { 200: 'OK', 302: 'Found', 400: 'Bad Request', 500: 'Internal Server Error' }; function getIsAcrossOrigin() { return isAcrossOrigin; } function networkStartLog(item) { var _a, _b, _c, _d, _e; console.log('[system]', " [response ".concat(item.requestType, "]"), item.url, item.response, item); if (item.rdevRequestId && ((_b = (_a = window.RemoteDevSdk) === null || _a === void 0 ? void 0 : _a.instance) === null || _b === void 0 ? void 0 : _b.Network) && item.id !== '__system_log__') { try { var finishedOptions = { requestId: item.rdevRequestId, url: item.url, status: +(item.status || '500'), statusText: StatusTextMap[+(item.status || '500')] || 'Error', responseHeaders: { RDEV_RESPONSE_TYPE: item.requestType }, responseBody: item.response, requestTime: item.requestTime || 0, duration: item.costTime || (item.endTime && item.startTime ? item.endTime - item.startTime : performance.now() / 1000 - (item.requestTime || 0)) }; window.RemoteDevSdk.instance.Network.customRequestFinished(finishedOptions); } catch (err) {} } if (((_c = window.vConsole) === null || _c === void 0 ? void 0 : _c.network) && item.id !== '__system_log__') { try { item.statusText = "".concat(item.status); item.responseSize = item.response.length; item.responseSizeText = "".concat(item.response.length); return (_e = (_d = window.vConsole.network).update) === null || _e === void 0 ? void 0 : _e.call(_d, item.id, Object.assign({}, item, { readyState: 4 })); } catch (err) {} } } function reqType(obj, path) { return obj.url.indexOf(path) > -1 && obj.url.indexOf('action=') === -1 && (!obj.data || !obj.data.action); } function findAjaxScopeByConfig(url, config) { var pathname = new URL(url, location.href).pathname || ''; var scope = config[pathname.slice(1)]; if (scope) { return scope; } } function getAjaxScope(ajaxUrl) { if (Url.getQuery('no_transfer', location.href) !== '1' && mmVersion.isWechat && !mmVersion.isInMiniProgram && !mmVersion.isWxWork && !mmVersion.isMpapp && !isAcrossOrigin && window.__ajaxTransferConfig && _typeof(window.__ajaxTransferConfig) === 'object' && ( mmVersion.isIOS && mmVersion.compareHexVersion('1800282F') || mmVersion.isAndroid && mmVersion.compareHexVersion('28002234') || mmVersion.isWindowsWechat && mmVersion.cpVersion('3.9.5', 1, true, 'windows') || mmVersion.isMacWechat && mmVersion.cpVersion('3.8.4', 1, true, 'mac') || mmVersion.isHarmonyWechat && mmVersion.compareHexVersion('0xf3100b00') && !mmVersion.compareHexVersion('0xf3100c00') || mmVersion.compareHexVersion('0xf3800b00'))) { try { return findAjaxScopeByConfig(ajaxUrl, window.__ajaxTransferConfig); } catch (err) { } } } function getActionByData(data) { var _a, _b; if (_typeof(data) === 'object' && !(data instanceof Blob)) { if (data.hasOwnProperty('data') && typeof data.data === 'string') { try { var workedData = JSON.parse(data.data); return workedData.action || ''; } catch (e) {} } return data.action || ''; } if (typeof data === 'string') { return ((_b = (_a = data.split(/[?&]/).find(function (x) { return x.indexOf('action=') >= 0; })) === null || _a === void 0 ? void 0 : _a.split('=')) === null || _b === void 0 ? void 0 : _b[1]) || ''; } return ''; } var METHOD_ENUM = { GET: 0, POST: 1 }; var __moon_report = window.__moon_report || function () {}; var MOON_AJAX_SUCCESS_OFFSET = 3; var MOON_AJAX_NETWORK_OFFSET = 4; var MOON_AJAX_ERROR_OFFSET = 5; var MOON_AJAX_TIMEOUT_OFFSET = 6; var MOON_AJAX_COMPLETE_OFFSET = 7; var LENGTH_LIMIT = 4096; function reportRtError(type, id, key, content) { var log = ''; var prefix = type === 'rt' ? 'rtCheckError' : 'Ajax Length Limit'; if (content === null || content === void 0 ? void 0 : content.length) { var loglen = 1000; var len = content.length; var lc = Math.ceil(len / loglen); log = ["&lc=".concat(lc)]; for (var i = 0; i = 200 && retryStatus 0 ? 'json' : undefined }); var isTimeout = false; handleReqTimeout({ abort: function abort() { isTimeout = true; reqLogItem.endTime = Date.now(); reqLogItem.response = 'timeout'; networkEndLog(reqLogItem); } }); Device.os.pc && monitor$1.setSum(115849, 69, 1); JSAPI.invoke(Device.os.pc ? 'H5ExtTransfer' : 'webTransfer', params, function (res) { var _a, _b, _c, _d, _e, _f; if (isTimeout) return; var status = 400; var result = ''; if (Device.os.pc) { try { var retFlag = res.base_resp.ret === 0 && res.jsapi_resp.ret === 0 && res.err_msg.indexOf(':ok') > -1; var respJsonFlag = res.jsapi_resp.resp_json; status = retFlag && respJsonFlag ? 200 : 400; result = res.jsapi_resp.resp_json; } catch (err) { console.error(err); } } else { status = res && res.errCode * 1 === 0 && typeof res.result === 'string' && res.result ? 200 : 400; result = res.result; } try { Log.log("ajax transfer, status: ".concat(status, ", reqUrl: ").concat(reqUrl)); } catch (err) { console.error(err); } if (status >= 200 && status -1 && retryStatus >= 200 && retryStatus = 200 && status LENGTH_LIMIT) { reportAjaxLength(27613, 17, "ajax get limit[length: ".concat(url.length, "]").concat(url.substring(0, 1024))); } if (data && !(data instanceof Blob) && data.length > LENGTH_LIMIT) { reportAjaxLength(27613, 18, "ajax post limit[length: ".concat(data.length, "]").concat(data.substring(0, 1024))); } if (data && data instanceof Blob && data.size > LENGTH_LIMIT) { reportAjaxLength(27613, 18, "ajax post limit[length: ".concat(data.size, "]blob")); } } catch (e) { } } catch (e) { obj.error && obj.error(xhr, { type: 3, error: e, status: 0 }); } beforeReq(); }); } mmVersion.isWindowsWechat && mmVersion.compareHexVersion('0xf2550000') || mmVersion.isMacWechat && mmVersion.compareHexVersion('0xf2650000'); var getBrandServiceType = function getBrandServiceType() { var serviceType = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window.service_type; var _a, _b; var brandServiceType = 0; if (serviceType !== undefined) brandServiceType = serviceType + 1; if (((_b = (_a = window.cgiData) === null || _a === void 0 ? void 0 : _a.trans_appmsg_info) === null || _b === void 0 ? void 0 : _b.trans_type) * 1 === 1) brandServiceType = 3; return brandServiceType; }; function setCurrentMpInfo(ifShow) { var supportNewTopBar = mmVersion.isIOS && mmVersion.gtVersion('7.0.10', true) || mmVersion.isAndroid && mmVersion.gtVersion('7.0.12', true); var supportLiveStatus = mmVersion.isIOS && mmVersion.gtVersion('8.0.46', true) || mmVersion.isAndroid && mmVersion.gtVersion('8.0.46', true); JSAPI.invoke('currentMpInfo', { userName: window.user_name, brandName: !!supportNewTopBar && window.nickname === '' ? '未命名账号' : window.title, title: window.msg_title || '', brandIcon: window.hd_head_img.replace(/\/0$/, '/132'), itemShowType: window.item_show_type, isPaySubscribe: window.isPaySubscribe, topBarStyle: supportNewTopBar ? 1 : 0, topBarShowed: ifShow, disableShowFinderLiveTopBar: !ifShow && supportLiveStatus ? 1 : 0, brandServiceType: getBrandServiceType() }, function () {}); } function AjaxWx(obj) { var report36408 = typeof obj.report36408 === 'function' ? obj.report36408 : function () {}; obj.url += obj.url.indexOf('?') === -1 ? '?fasttmplajax=1' : '&fasttmplajax=1'; if (getAjaxScope(obj.url)) { Ajax(obj); return; } if (obj.usePb) { obj.type = 'POST'; obj.data = { data: JSON.stringify(obj.data) }; } if (!/^(http:\/\/|https:\/\/|\/\/)/.test(obj.url)) { obj.url = "https://mp.weixin.qq.com/".concat(obj.url.replace(/^\//, '')); } else if (/^\/\//.test(obj.url)) { obj.url = "https:".concat(obj.url); } if (obj.f !== 'html' && (obj.url.indexOf('?f=json') === -1 || obj.url.indexOf('&f=json') === -1)) { obj.url += '&f=json'; } if (!obj.notJoinUrl && obj.f !== 'html') { obj.url = Url.joinUrl(obj.url); } Url.joinUserArticleRole(obj.url, !!obj.notJoinUrl, function (url) { obj.url = url; var urlObj = new URL(url, location.origin); var data = null; if (_typeof(obj.data) === 'object') { var d = obj.data; var ds = []; for (var k in d) { if (d.hasOwnProperty(k)) { ds.push("".concat(k, "=").concat(encodeURIComponent(d[k]))); } } data = ds.join('&'); } else { data = typeof obj.data === 'string' ? obj.data : null; } var header = { Cookie: document.cookie, referer: location.href }; if (obj.contentType) { header['Content-Type'] = obj.contentType; } else if ((obj.type || 'GET').toUpperCase() === 'POST') { header['Content-Type'] = 'application/x-www-form-urlencoded; charset=UTF-8'; } var reqLogItem = networkStartLog({ method: obj.type || 'GET', url: obj.url, postData: obj.data || {}, requestHeader: header, requestType: 'jsapi', startTime: Date.now() }); var retryTime = 1; var jsapiRequest = function jsapiRequest(obj, data) { return JSAPI.invoke('request', { url: obj.url, method: obj.type, data: data, header: header }, function (res) { var _a, _b, _c, _d, _e, _f; if (res.err_msg.indexOf(':ok') > -1 && (!res.statusCode || res.statusCode >= 200 && res.statusCode '27000600')) { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 1, HttpCode: res.statusCode || 0, Ret: ((_c = resData === null || resData === void 0 ? void 0 : resData.base_resp) === null || _c === void 0 ? void 0 : _c.ret) || 0 }); } var _retryTime = retryTime++; JSAPI.invoke('updatePageAuth', {}, function (res) { console.log('[skeleton] updatePageAuth', res); monitor$1.setSum(112287, 3, 1); if (res && res.err_msg && res.err_msg.indexOf(':ok') > -1) { window.top.pass_ticket = encodeURIComponent(Url.getQuery('pass_ticket', res.fullUrl).html(false).replace(/\s/g, '+')); if (obj.pass_ticket) { obj.pass_ticket = window.top.pass_ticket; } console.warn('[skeleton] updatePageAuth resetTopbar'); var supportNewTopBar = mmVersion.isIOS && mmVersion.gtVersion('7.0.10', true); var showBottomBar = !!window.is_login; if (window.top.item_show_type === '0' && supportNewTopBar) { var top = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop || 0; setCurrentMpInfo(top > 40 && !showBottomBar); } try { obj.url = Url.addParam(obj.url, 'retry', _retryTime, true); } catch (err) { console.error(err); } jsapiRequest(obj, data); monitor$1.setSum(112287, 4, 1); } else { obj.success && obj.success(resData); obj.complete && obj.complete(); if (mmVersion.isIOS) { monitor$1.setSum(112287, 35, 1); } else { monitor$1.setSum(112287, 36, 1); } reqLogItem.status = 200; reqLogItem.endTime = Date.now(); reqLogItem.response = resData; networkEndLog(reqLogItem); } }); } else { if (((_d = tmpResData === null || tmpResData === void 0 ? void 0 : tmpResData.base_resp) === null || _d === void 0 ? void 0 : _d.ret) !== 0) { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 4, HttpCode: res.statusCode || 0, Ret: ((_e = tmpResData === null || tmpResData === void 0 ? void 0 : tmpResData.base_resp) === null || _e === void 0 ? void 0 : _e.ret) || 0 }); } } else { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 0, HttpCode: res.statusCode || 0, Ret: ((_f = tmpResData === null || tmpResData === void 0 ? void 0 : tmpResData.base_resp) === null || _f === void 0 ? void 0 : _f.ret) || 0 }); } } obj.success && obj.success(resData); obj.complete && obj.complete(); reqLogItem.status = 200; reqLogItem.endTime = Date.now(); reqLogItem.response = resData; networkEndLog(reqLogItem); } } else if (res.err_msg.indexOf('no permission') > -1 || !mmVersion.isOnlyWechat) { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 1, HttpCode: res.statusCode || 0, Ret: 0 }); } Ajax(obj); if (res.err_msg.indexOf('no permission') > -1) { console.warn('[JSAPI Request] No permission'); monitor$1.setSum(112287, 31, 1); } reqLogItem.status = 302; reqLogItem.endTime = Date.now(); reqLogItem.response = res; networkEndLog(reqLogItem); } else { if (!obj.dontReport) { report36408({ CgiPath: urlObj.pathname || '', Action: urlObj.searchParams.get('action') || getActionByData(obj.data) || '', Query: urlObj.search || '', PostData: obj.type === 'POST' && !(data instanceof Blob) ? data : '', Method: obj.type || '', RequestType: 20, RetType: 2, HttpCode: res.statusCode || 0, Ret: 0 }); } obj.error && obj.error(null, { type: 3, error: res, status: 0 }); obj.complete && obj.complete(); monitor$1.setSum(112287, 32, 1); var sample = 0.001; if (Math.random() = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } var AjaxRouter = function () { var _ref = _asyncToGenerator( _regeneratorRuntime().mark(function _callee(obj) { return _regeneratorRuntime().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: if (!window.__secPageAuthPromise) { _context.next = 3; break; } _context.next = 3; return window.__secPageAuthPromise; case 3: if (!(!mmVersion.isWxWork && (window.__second_open__ || !getIsAcrossOrigin() && top.window.__second_open__) && window.__is_page_auth_return__ && !obj.pureHttp)) { _context.next = 5; break; } return _context.abrupt("return", AjaxWx(obj)); case 5: return _context.abrupt("return", Ajax(obj)); case 6: case "end": return _context.stop(); } }, _callee); })); return function AjaxRouter(_x) { return _ref.apply(this, arguments); }; }(); var isx5 = navigator.userAgent.indexOf('TBS/') !== -1; var getDataFunc = []; var reportData = []; var specificData = {}; function joinUrl(url) { var obj = {}; if (typeof window.uin !== 'undefined') { obj.uin = window.uin; } if (typeof window.key !== 'undefined') { obj.key = window.key; } if (typeof window.pass_ticket !== 'undefined') { obj.pass_ticket = window.pass_ticket; } if (typeof window.wxtoken !== 'undefined') { obj.wxtoken = window.wxtoken; } if (typeof window.devicetype !== 'undefined') { obj.devicetype = window.devicetype; } if (typeof window.clientversion !== 'undefined') { obj.clientversion = window.clientversion; } if (typeof window.appmsg_token !== 'undefined') { obj.appmsg_token = window.appmsg_token; } else if (url.indexOf('advertisement_report') > -1) { new Image().src = "".concat(location.protocol, "//mp.weixin.qq.com/mp/jsmonitor?idkey=68064_13_1&r=").concat(Math.random()); } obj.x5 = isx5 ? '1' : '0'; obj.f = 'json'; return Url.join(url, obj); } function isObj(obj) { return obj && _typeof(obj) === 'object'; } function assign(target, source) { if (isObj(target) && isObj(source)) { for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } } function assembleReportData(initiative) { var leaveReportLog = []; leaveReportLog.push({ content: "[LeaveReport] specificData keys: ".concat(Object.keys(specificData)), timestamp: Date.now() }); Log.log("[LeaveReport] specificData keys: ".concat(Object.keys(specificData))); console.log("[LeaveReport] specificData keys: ".concat(Object.keys(specificData))); var allReportData = {}; for (var reportField in specificData) { if (!allReportData[reportField]) { allReportData[reportField] = {}; } for (var i = 0; i = BATCH_SIZE) { batchReport(); } else { if (!timeOutId) { timeOutId = setTimeout(function () { batchReport(); clearTimeout(timeOutId); timeOutId = null; }, BATCH_TIME); } } } _leaveReport.addReport(function () { var repeatedReportJson = getRepeatedReportJson(); if (!repeatedReportJson) return false; var reportData = []; for (var _i = 0, _Object$entries = Object.entries(repeatedReportJson); _i ', '<', '']; var replaceReverse = ['&', '&', '¥', '¥', '', '>', ' ', ' ', '"', '"', '\'', ''', '`', '`']; var str = _str; var target; if (encode) { target = replaceReverse; } else { target = replace; } for (var i = 0; i ', '<', '', '>', '"', '"', '\'', ''', '`', '`']; var str = _str; var target; if (encode) { target = replaceReverse; } else { target = replace; } for (var i = 0; i 0 && arguments[0] !== undefined ? arguments[0] : true; hasStar = 1; realCnt = realCnt + 1; renderDom(dom, realCnt, hasStar); if (dispatchEvent) window.dispatchEvent(new CustomEvent('star')); } function cancelStar() { var dispatchEvent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true; hasStar = 0; realCnt = realCnt - 1; renderDom(dom, realCnt, hasStar); if (dispatchEvent) window.dispatchEvent(new CustomEvent('cancel-star')); } if (dom) { renderDom(dom, cnt, statStatus); var clickHander = function clickHander() { if (hasStar === 0) { JSAPI.invoke('operateStar', { opType: 'addStar' }, function (res) { if (res.err_msg && /:ok$/.test(res.err_msg)) addStar(); }); } else { JSAPI.invoke('operateStar', { opType: 'cancelStar' }, function (res) { if (res.err_msg && /:ok$/.test(res.err_msg)) cancelStar(); }); } var data = { BizUin: window.biz, AppMsgID: window.mid * 1, ItemIndex: window.idx * 1, Scene: window.scene, SubScene: window.subscene * 1, EnterId: window.enterid, SessionId: "".concat(window.sessionid), Event: hasStar ? 8 : 7, ItemShowType: window.item_show_type * 1 }; commReport.report(17335, data); }; var exposeHandler = function exposeHandler() { if (hasReportExpose) return; var data = { BizUin: window.biz, AppMsgID: window.mid * 1, ItemIndex: window.idx * 1, Scene: window.scene, SubScene: window.subscene * 1, EnterId: window.enterid, SessionId: "".concat(window.sessionid), Event: 6, ItemShowType: window.item_show_type * 1 }; commReport.report(17335, data); hasReportExpose = true; }; dom.addEventListener('click', clickHander); JSAPI.on('onPageStarStateChanged', function (res) { console.log('onPageStarStateChanged', res); if (res.state) addStar();else cancelStar(); window.__hasStarInLifecycle = !!hasStar; }); var intersectionObserver = new IntersectionObserver(exposeHandler); intersectionObserver.observe(dom); window.addEventListener('star', function (e) { if (e && e.detail && e.detail.from === 'frontend') addStar(false); }); window.addEventListener('cancel-star', function (e) { if (e && e.detail && e.detail.from === 'frontend') cancelStar(false); }); document.addEventListener('visibilitychange', function () { var visible = document.visibilityState === 'visible'; if (!visible) return; window.__hasStarInLifecycle = !!hasStar; }); } }; if (!window.__second_open__) { var starDom = document.querySelector('#js_star'); var canUseStar = window.canUseStar || isIOS && mmVersion.compareHexVersion('18003623') || isAndroid && mmVersion.compareHexVersion('28003630'); var startPersonCnt = window.star_person_cnt || ''; console.log('canUseStar, startPersonCnt', canUseStar, startPersonCnt); if (!!(canUseStar * 1)) { var starSwitch = localStorage.getItem('mp_star_switch'); if (starSwitch === 'true') { var starInfo = localStorage.getItem('star_info'); var hasStar = 0; if (starInfo) { var parseStarInfo = JSON.parse(starInfo); if (Number(parseStarInfo.mid) === Number(window.mid) && Number(parseStarInfo.idx) === Number(window.idx) && parseStarInfo.has_star) { hasStar = 1; } } starDom && renderDom(starDom, startPersonCnt * 1, hasStar); var spanElement = document.getElementById('meta_content_hide_info'); spanElement && spanElement.classList.remove('rich_media_meta_padding'); } else { starDom && starDom.parentNode.removeChild(starDom); } } else { starDom && starDom.parentNode.removeChild(starDom); } window.__setStar = __setStar; } exports.__setStar = __setStar; exports.renderDom = renderDom; Object.defineProperty(exports, '__esModule', { value: true }); return exports; })({});var __INLINE_SCRIPT__ = (function () { 'use strict'; function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } } function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; } function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i b; } }; function cpVersion(ver, op, canEq, type) { var mmver = false; switch (type) { case 'mac': mmver = getMac(); break; case 'windows': mmver = getWindowsVersionFormat(); break; case 'wxwork': mmver = getWxWork(); break; case 'mpapp': mmver = getMpApp(); break; case 'unifiedpc': mmver = getUnifiedPcVer(); break; default: mmver = get(); break; } if (!mmver) { return; } var mmversion = mmver.split('.'); var version = ver.split('.'); if (!/\d+/g.test(mmversion[mmversion.length - 1])) { mmversion.pop(); } for (var i = 0, len = Math.max(mmversion.length, version.length); i = 64 && parseInt(v) = hexNum; } return false; } ({ get: get, getMac: getMac, getMacOS: getMacOS, getWindows: getWindows, getInner: getInner, getWxWork: getWxWork, getMpApp: getMpApp, cpVersion: cpVersion, eqVersion: eqVersion, gtVersion: gtVersion, ltVersion: ltVersion, getPlatform: getPlatform, getVersionNumber: getVersionNumber, isWp: is_wp, isIOS: is_ios, isAndroid: is_android, isHarmony: is_harmony, isHarmonyWechat: is_harmony && is_wechat && cpVersion('1.0.0', 1, true), isInMiniProgram: is_in_miniProgram, isWechat: is_wechat, isMac: is_mac, isWindows: is_windows, isLinux: is_linux, isMacWechat: is_mac_wechat, isWindowsWechat: is_windows_wechat, isWxWork: is_wx_work, isOnlyWechat: is_wechat && !is_wx_work, isMpapp: is_mpapp, isNewMpApp: false, isIPad: is_ipad, isGooglePlay: is_google_play, isPrefetch: is_prefetch, isDonutAPP: is_donut_app, compareHexVersion: compareHexVersion, isPcWechat: is_windows_wechat || is_mac_wechat, xwebVersion: xweb_version, isUnifiedPcWechat: is_unified_pc_wechat }); if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; } function _regeneratorRuntime() { _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o = 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc = 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc = 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; } var doc = {}; var isAcrossOrigin = false; var notFoundedMPPageAction = []; var __moon_report = window.__moon_report || function () {}; var MOON_JSAPI_KEY_OFFSET = 8; try { doc = top.window.document; } catch (e) { isAcrossOrigin = true; } if (!window.JSAPIEventCallbackMap) { window.JSAPIEventCallbackMap = {}; } function ready(onBridgeReady) { var bridgeReady = function bridgeReady() { try { if (onBridgeReady) { window.onBridgeReadyTime = window.onBridgeReadyTime || Date.now(); onBridgeReady(); } } catch (e) { __moon_report([{ offset: MOON_JSAPI_KEY_OFFSET, log: 'ready', e: e }]); throw e; } window.jsapiReadyTime = Date.now(); }; if (!isAcrossOrigin && (typeof top.window.WeixinJSBridge === 'undefined' || !top.window.WeixinJSBridge.invoke)) { if (doc.addEventListener) { doc.addEventListener('WeixinJSBridgeReady', bridgeReady, false); } else if (doc.attachEvent) { doc.attachEvent('WeixinJSBridgeReady', bridgeReady); doc.attachEvent('onWeixinJSBridgeReady', bridgeReady); } } else { bridgeReady(); } } var invokeNotWaitA8key = ['notifyPageInfo', 'updatePageAuth' ]; var checkNotFoundedInvoke = function checkNotFoundedInvoke(methodName, args) { if (methodName === 'handleMPPageAction' && (args === null || args === void 0 ? void 0 : args.action) && notFoundedMPPageAction.includes(args === null || args === void 0 ? void 0 : args.action)) { return true; } return false; }; function invoke(_x, _x2, _x3) { return _invoke.apply(this, arguments); } function _invoke() { _invoke = _asyncToGenerator( _regeneratorRuntime().mark(function _callee(methodName, args, callback) { return _regeneratorRuntime().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: if (!(window.__secPageAuthPromise && !window.__is_page_auth_ok__ && !invokeNotWaitA8key.includes(methodName))) { _context.next = 3; break; } _context.next = 3; return window.__secPageAuthPromise; case 3: ready(function () { if (isAcrossOrigin) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object') { alert('请在微信中打开此链接'); return false; } if (checkNotFoundedInvoke(methodName, args)) { setTimeout(function () { if (callback) { callback.apply(window, [{ err_msg: "".concat(methodName, ":fail"), err_desc: 'action isn\'t supported' }]); } }, 0); } else { top.window.WeixinJSBridge.invoke(methodName, args, function () { try { for (var _len2 = arguments.length, rets = new Array(_len2), _key2 = 0; _key2 ".concat(ret.err_msg) : ''; if (['handleMPPageAction', 'handleVideoAction', 'handleHaokanAction'].indexOf(methodName) !== -1) { var action = (args === null || args === void 0 ? void 0 : args.action) || ''; console.info('[system]', "[jsapi] invoke->".concat(methodName, ", action->").concat(action).concat(errMsg)); } else { console.info('[system]', "[jsapi] invoke->".concat(methodName).concat(errMsg)); } if (methodName === 'handleMPPageAction' && (args === null || args === void 0 ? void 0 : args.action) && ((ret === null || ret === void 0 ? void 0 : ret.err_desc) === 'action isn\'t supported' || (ret === null || ret === void 0 ? void 0 : ret.err_msg) === 'handleMPPageAction:fail action is not supported')) { notFoundedMPPageAction.push(args === null || args === void 0 ? void 0 : args.action); } if (callback) { callback.apply(window, rets); } } catch (e) { __moon_report([{ offset: MOON_JSAPI_KEY_OFFSET, log: "invoke;methodName:".concat(methodName), e: e }]); throw e; } }); } }); case 4: case "end": return _context.stop(); } }, _callee); })); return _invoke.apply(this, arguments); } function call(_x4) { return _call.apply(this, arguments); } function _call() { _call = _asyncToGenerator( _regeneratorRuntime().mark(function _callee2(methodName) { return _regeneratorRuntime().wrap(function _callee2$(_context2) { while (1) switch (_context2.prev = _context2.next) { case 0: if (!(window.__secPageAuthPromise && !window.__is_page_auth_ok__)) { _context2.next = 3; break; } _context2.next = 3; return window.__secPageAuthPromise; case 3: ready(function () { if (isAcrossOrigin) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object') { return false; } try { top.window.WeixinJSBridge.call(methodName); } catch (e) { __moon_report([{ offset: MOON_JSAPI_KEY_OFFSET, log: "call;methodName:".concat(methodName), e: e }]); throw e; } }); case 4: case "end": return _context2.stop(); } }, _callee2); })); return _call.apply(this, arguments); } function on(eventName, callback) { ready(function () { if (isAcrossOrigin) return false; if (_typeof(top.window.WeixinJSBridge) !== 'object' || !top.window.WeixinJSBridge.on) { return false; } if (!window.JSAPIEventCallbackMap[eventName]) { window.JSAPIEventCallbackMap[eventName] = []; } window.JSAPIEventCallbackMap[eventName].push(callback); if (window.JSAPIEventCallbackMap[eventName].length > 1) { return false; } top.window.WeixinJSBridge.on(eventName, function () { try { for (var _len = arguments.length, rets = new Array(_len), _key = 0; _key ".concat(ret.err_msg) : ''; console.info('[system]', "[jsapi] event->".concat(eventName).concat(errMsg)); if (window.JSAPIEventCallbackMap[eventName] && window.JSAPIEventCallbackMap[eventName].length) { var result; for (var i = 0; i = 0; i--) { if (window.JSAPIEventCallbackMap[eventName][i] === callback) { window.JSAPIEventCallbackMap[eventName].splice(i, 1); result = true; } } return result; }); } var JSAPI = { ready: ready, invoke: invoke, call: call, on: on, remove: remove }; var __setPreview = function __setPreview() { var extData = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; if (extData && extData.previewType === 1) { JSAPI.invoke('setNavigationBarButtons', { right: { hidden: true } }); } var quotePreviewSwitch = document.getElementById('js_quote_preview_switch'); if (quotePreviewSwitch && extData && extData.quoteList && extData.quoteList.length) { quotePreviewSwitch.innerHTML = "备注内容仅自己可见,可" + ' [' + '预览公开发表视角' + '](javascript:;)'; } }; if (!window.__second_open__) { var previewType = '' * 1; var quoteList = null; try { quoteList = JSON.parse('[]'); } catch (e) { console.error(e); } var extData = { quoteList: quoteList, previewType: previewType }; __setPreview(extData); window.__setPreview = __setPreview; } return __setPreview; })();(function () { 'use strict'; function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } function _defineProperties(target, props) { for (var i = 0; i '10') { if (el.getAttribute('begin') !== 'click' && el.getAttribute('end') !== 'click') { el.setAttribute('repeatCount', 'undefined'); el.setAttribute('attributeName', 'undefined'); new Image().src = 'https://mp.weixin.qq.com/mp/jsmonitor?idkey=306525_1_1'; } } } if (el.tagName === 'OL') { if ((el.parentNode === document.getElementById('js_content') || el.parentNode.getAttribute('id') === 'js_secopen_content') && el.getAttribute('style') && el.getAttribute('style').indexOf('padding-left') = 10 && el.childNodes.length 100) { el.classList.add('extra-list-padding-level2'); el.style.paddingLeft = '3.2em'; } } } if (el.tagName === 'MP-STYLE-TYPE') { var styleType = parseInt(el.getAttribute('data-value'), 10); if (styleType === 3) { if (el.parentNode && el.parentNode.previousSibling) { var realLastP = el.parentNode.previousSibling; if ((realLastP.tagName === 'P' || realLastP.tagName === 'SECTION') && realLastP.style && !realLastP.style.marginBottom) { realLastP.style.marginBottom = '0'; } } } } if (el.tagName === 'svg') { if (!el.hasAttribute('role')) { el.setAttribute('role', 'img'); } if (!el.hasAttribute('aria-label')) { el.setAttribute('aria-label', '插图'); } } } }]); return _class; }(Plugin); }; } if (!window.__second_open__ && window.Darkmode) { var cost = 0; window.Darkmode.extend([DomFilter()]); window.Darkmode.run(document.querySelectorAll('#js_content *'), { mode: '', defaultDarkTextColor: '#989898', defaultDarkBgColor: '', whitelist: { attribute: ['data-no-dark'] }, error: function error() { new Image().src = 'https://mp.weixin.qq.com/mp/jsmonitor?idkey=125617_0_1'; }, begin: function begin(isSwitch) { new Image().src = 'https://mp.weixin.qq.com/mp/jsmonitor?idkey=125617_2_1'; isSwitch && (new Image().src = 'https://mp.weixin.qq.com/mp/jsmonitor?idkey=125617_4_1'); cost = new Date() * 1; }, showFirstPage: function showFirstPage() { document.getElementById('js_content').style.removeProperty('opacity'); cost = new Date() * 1 - cost; var isTop = (document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop) === 0; if (cost 10 && cost 20 && cost 30 && cost 40 && cost 50 && cost var __INLINE_SCRIPT__ = (function (exports) { 'use strict'; function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function _arrayLikeToArray$1(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i = o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; } function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i 0) { albumlist = voiceList.voice_in_appmsg; } var mpvoices = _toConsumableArray(dom.querySelectorAll('mpvoice')); mpvoices.forEach(function (mpvoice) { var mpaudio = document.createElement('mp-common-mpaudio'); var attrs = mpvoice.getAttributeNames().reduce(function (acc, name) { if (name === 'data-trans_state' || name === 'err_tips') return acc; return _objectSpread(_objectSpread({}, acc), {}, _defineProperty({}, name, mpvoice.getAttribute(name))); }, {}); for (var key in attrs) { mpaudio.setAttribute(key, attrs[key]); } mpaudio.setAttribute('data-trans_state', 1); mpvoice.parentNode.replaceChild(mpaudio, mpvoice); }); var mpaudios = _toConsumableArray(dom.querySelectorAll('mp-common-mpaudio')); mpaudios.forEach(function (mpaudio) { mpaudio.style.opacity = 0; mpaudio.setAttribute('author', data.nick_name || ''); var album = albumlist.find(function (a) { var voice_encode_fileid = mpaudio.getAttribute('voice_encode_fileid'); try { voice_encode_fileid = decodeURIComponent(voice_encode_fileid); } catch (e) {} return a.voice_id === voice_encode_fileid && a.appmsgalbuminfo; }); if (album) { mpaudio.setAttribute('data-topic_id', album.appmsgalbuminfo.album_id || 0); mpaudio.setAttribute('data-topic_name', album.appmsgalbuminfo.title || ''); mpaudio.setAttribute('data-topic_link', album.appmsgalbuminfo.link.html(false).replace('#wechat_redirect', '') + '#wechat_redirect'); mpaudio.setAttribute('data-topic_num', album.appmsgalbuminfo.tag_content_num || 0); } }); var claudios = _toConsumableArray(dom.querySelectorAll('mp-common-claudio')); claudios.forEach(function (claudio) { claudio.style.opacity = 0; }); } function handleTagReplacement(ele, newTagName) { var newTag = document.createElement(newTagName); var _iterator2 = _createForOfIteratorHelper(ele.attributes), _step2; try { for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { var attr = _step2.value; newTag.setAttribute(attr.name, attr.value); } } catch (err) { _iterator2.e(err); } finally { _iterator2.f(); } newTag.innerHTML = ele.innerHTML; ele.parentNode.replaceChild(newTag, ele); return newTag; } function preprocessMpMusic(root) { var qqmusicEles = _toConsumableArray(root.querySelectorAll('qqmusic')); qqmusicEles.forEach(function (ele) { return handleTagReplacement(ele, 'mp-common-qqmusic'); }); } if (!window.__second_open__) { updateCustomElementAttrs(window.document, window.mp_profile); preprocessMpAudios(window.document, { voiceList: window.voiceList, nick_name: window.nickname }); preprocessMpMusic(window.document); } exports.preprocessMpAudios = preprocessMpAudios; exports.preprocessMpMusic = preprocessMpMusic; exports.updateCustomElementAttrs = updateCustomElementAttrs; exports.updateProfileAttr = updateProfileAttr; Object.defineProperty(exports, '__esModule', { value: true }); return exports; })({});var __INLINE_SCRIPT__ = (function () { 'use strict'; function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); } function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _defineProperties(target, props) { for (var i = 0; i d2.exp) return 1; return 0; }); var memCnt = 0; for (var i = 0; i = size) break; var key = keys[i]; memCnt += JSON.stringify(data[key]).length; delete data[key]; } return data; }, 'clear-all': function clearAll() { localStorage.clear(); return {}; } }; function formatLogMsg(str) { return "[WXLS] ".concat(str); } var LS = function () { function LS(func, evictionPolicy, logger) { _classCallCheck(this, LS); this.logger = function () {}; if (!func) throw 'require function name.'; this.evictionPolicy = 'noeviction'; this.key = func; if (typeof logger === 'function') { this.logger = function (str, type) { return logger(formatLogMsg(str), type); }; } if (evictionPolicy && Object.keys(evictionPolicies).indexOf(evictionPolicy) !== -1) { this.evictionPolicy = evictionPolicy; } this.init(); } _createClass(LS, [{ key: "init", value: function init() { var _a, _b; this.check(); if (Math.random() * 1000 now) { temp[key] = val; } } this.logger("check info: isReturn:".concat(isReturn, " data:").concat(JSON.stringify(temp)), 'info'); if (isReturn) return temp; LS.setItem(this.key, JSON.stringify(temp), this.logger); } }, { key: "set", value: function set(key, val, exp) { var _a, _b; var data = this.check(true); data[key] = { val: val, exp: exp || +new Date() }; try { if (localStorage.getItem(prefix + this.key)) localStorage.removeItem(prefix + this.key); localStorage.setItem(prefix + this.key, JSON.stringify(data)); this.logger("first set success: LSlen:".concat((_a = window === null || window === void 0 ? void 0 : window.localStorage) === null || _a === void 0 ? void 0 : _a.length, " key:").concat(prefix + this.key, " data:").concat(JSON.stringify(data)), 'success'); } catch (e) { this.logger("first set error: LSlen:".concat((_b = window === null || window === void 0 ? void 0 : window.localStorage) === null || _b === void 0 ? void 0 : _b.length, " error:").concat(e, " key:").concat(prefix + this.key, " data:").concat(JSON.stringify(data), " k:").concat(key, " v:").concat(val, " exp:").concat(exp), 'error'); localStorage.clear(); LS.setItem(this.key, JSON.stringify(_defineProperty({}, key, { val: val, exp: exp || +new Date() })), this.logger); } } }, { key: "get", value: function get(key) { var data = this.getData(); data = data[key]; return data ? data.val || null : null; } }, { key: "remove", value: function remove(key) { var data = this.getData(); if (data[key]) delete data[key]; LS.setItem(this.key, JSON.stringify(data), this.logger); } }], [{ key: "getItem", value: function getItem(key) { key = prefix + key; return localStorage.getItem(key); } }, { key: "setItem", value: function setItem(key, val, logger) { var _a, _b; key = prefix + key; var n = 3; while (n--) { try { if (localStorage.getItem(key)) localStorage.removeItem(key); localStorage.setItem(key, val); typeof logger === 'function' && logger("setItem success: LSlen:".concat((_a = window === null || window === void 0 ? void 0 : window.localStorage) === null || _a === void 0 ? void 0 : _a.length, " key:").concat(key, " val:").concat(val), 'success'); break; } catch (e) { typeof logger === 'function' && logger("setItem error: LSlen:".concat((_b = window === null || window === void 0 ? void 0 : window.localStorage) === null || _b === void 0 ? void 0 : _b.length, " error:").concat(e, " key:").concat(key, " val:").concat(val), 'error'); LS.clear(); } } } }, { key: "clear", value: function clear() { var i; var k; for (i = localStorage.length - 1; i >= 0; i--) { k = localStorage.key(i); if (k.indexOf(prefix) == 0) { localStorage.removeItem(k); } } } }, { key: "getSupportEvicationPolicy", value: function getSupportEvicationPolicy() { return Object.keys(evictionPolicies); } }]); return LS; }(); var key = 'stream_last_read_pos'; new LS(key); var interactionStatusLS = new LS('bottom_interaction_status'); function getInteractionStatus() { var opt = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var biz = opt.biz || window.biz; var sn = opt.sn || window.sn; var mid = opt.mid || window.mid; var idx = opt.idx || window.idx; var interactionStatusKey = [biz, sn, mid, idx].join('_'); var interactionStatusInfo = interactionStatusLS.get(interactionStatusKey) || {}; if (Object.prototype.toString.call(interactionStatusInfo) !== '[object Object]' || window.cgiData && window.cgiData.trans_appmsg_info && window.cgiData.trans_appmsg_info.trans_type === 1 ) { interactionStatusInfo = {}; } var interactionSubscribeInfo = interactionStatusLS.get(biz + 'interaction_subscribe') || {}; interactionStatusInfo.is_subscribed = interactionSubscribeInfo.is_subscribed || false; return interactionStatusInfo; } var formatReadNum = function formatReadNum(value) { var result = ''; var unit = window.LANG === 'en' ? 'k' : '万'; if (parseInt(value, 10) > 100000) { result = 10 + unit + '+'; } else if (parseInt(value, 10) > 10000 && parseInt(value, 10) (function(_g){ _g.appmsg_like_type = "2" * 1 ? "2" * 1 : 1; _g.clientversion = ""; _g.passparam = ""; if(!_g.msg_link) { _g.msg_link = "https://mp.weixin.qq.com/s/_IuT9RX6WC34J_Js2sAl4Q"; } _g.appmsg_type = "9"; _g.devicetype = ""; _g.kanyikan_video_educate_pic = "//res.wx.qq.com/mmbizappmsg/zh_CN/htmledition/js/images/pic/pic_like_comment_primary7e1b77.png"; _g.kanyikan_educate_pic = "//res.wx.qq.com/mmbizappmsg/zh_CN/htmledition/js/images/pic/pic_like_comment7e1b77.png"; })(window); (function() { var ua = navigator.userAgent; if (ua.indexOf("MicroMessenger") != -1 && ua.indexOf("Android") != -1){ var script = document.createElement('script'); var head = document.getElementsByTagName('head')[0]; script.type = 'text/javascript'; script.src = "https://midas.gtimg.cn/h5sdk/js/api/h5sdk.js"; head.appendChild(script); } })(); var real_show_page_time = +new Date(); if (!!window.addEventListener){ window.addEventListener("load", function(){ window.onload_endtime = +new Date(); }); } (function() { const ua = navigator.userAgent; const is_ios = /(iPhone|iPad|iPod|iOS)/i.test(ua); const is_wp = /Windows\sPhone/i.test(ua); const is_mac = /mac\sos/i.test(ua) && !is_ios; const is_windows = /windows\snt/i.test(ua) && !is_wp; if ((is_mac && !is_ios) || (is_windows && !is_wp)) { var script = document.createElement('script'); var head = document.getElementsByTagName('head')[0]; script.type = 'text/javascript'; script.src = "https://res.wx.qq.com/connect/zh_CN/htmledition/js/wxopensdk.js"; head.appendChild(script); } })(); new Image().src='https://mp.weixin.qq.com/mp/jsmonitor?idkey=66881_111_1&t='+Math.random(); !function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",(function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()}),!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}(); System.import(document.getElementById('vite-legacy-entry').getAttribute('data-src'))