@fudanda/admin-antd 2.20261107.1-beta.1 → 2.20261109.1-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunks/{App-BF96TQ_D.js → App-CfQx7jWq.js} +4 -4
- package/dist/chunks/{App-BF96TQ_D.js.map → App-CfQx7jWq.js.map} +1 -1
- package/dist/chunks/{AppModal-CLkMJ-96.js → AppModal-CVoUC2t3.js} +2 -2
- package/dist/chunks/{AppModal-CLkMJ-96.js.map → AppModal-CVoUC2t3.js.map} +1 -1
- package/dist/chunks/{ArcBaseAdmin--xQxd4tg.js → ArcBaseAdmin-DQyddbFC.js} +2 -2
- package/dist/chunks/{ArcBaseAdmin--xQxd4tg.js.map → ArcBaseAdmin-DQyddbFC.js.map} +1 -1
- package/dist/chunks/{DepartmentsPage-D6YVegPU.js → DepartmentsPage-CQx53QGE.js} +2 -2
- package/dist/chunks/{DepartmentsPage-D6YVegPU.js.map → DepartmentsPage-CQx53QGE.js.map} +1 -1
- package/dist/chunks/{DictsPage-uV3Uukwc.js → DictsPage-BGnamkWk.js} +2 -2
- package/dist/chunks/{DictsPage-uV3Uukwc.js.map → DictsPage-BGnamkWk.js.map} +1 -1
- package/dist/chunks/EntityContextRuntime-C9q95WDf.js +1 -0
- package/dist/chunks/{EntityContextRuntime-DbjyzCtY.js → EntityContextRuntime-CbzeMNXR.js} +2 -2
- package/dist/chunks/{EntityContextRuntime-DbjyzCtY.js.map → EntityContextRuntime-CbzeMNXR.js.map} +1 -1
- package/dist/chunks/{ExportButton-e2ybxuHb.js → ExportButton-sMPAV2hd.js} +2 -2
- package/dist/chunks/{ExportButton-e2ybxuHb.js.map → ExportButton-sMPAV2hd.js.map} +1 -1
- package/dist/chunks/{FileViewerPreviewPanel-BhI3pTi8.js → FileViewerPreviewPanel-Rti7pUhU.js} +3 -3
- package/dist/chunks/{FileViewerPreviewPanel-BhI3pTi8.js.map → FileViewerPreviewPanel-Rti7pUhU.js.map} +1 -1
- package/dist/chunks/{FilesPage-BI35mStl.js → FilesPage-D_iYsUwl.js} +3 -3
- package/dist/chunks/{FilesPage-BI35mStl.js.map → FilesPage-D_iYsUwl.js.map} +1 -1
- package/dist/chunks/IdentitySecurityPage-rDYX5ksX.js +9 -0
- package/dist/chunks/IdentitySecurityPage-rDYX5ksX.js.map +1 -0
- package/dist/chunks/{LogStatsScaffold-m0vVUXPh.js → LogStatsScaffold-CMIz4z0a.js} +2 -2
- package/dist/chunks/{LogStatsScaffold-m0vVUXPh.js.map → LogStatsScaffold-CMIz4z0a.js.map} +1 -1
- package/dist/chunks/{LoginLogsPage-BzBUR4Oo.js → LoginLogsPage-Bv5pPJb2.js} +2 -2
- package/dist/chunks/{LoginLogsPage-BzBUR4Oo.js.map → LoginLogsPage-Bv5pPJb2.js.map} +1 -1
- package/dist/chunks/{LoginLogsTable-BweUEjQX.js → LoginLogsTable-DYcTx2oR.js} +2 -2
- package/dist/chunks/{LoginLogsTable-BweUEjQX.js.map → LoginLogsTable-DYcTx2oR.js.map} +1 -1
- package/dist/chunks/{MarkdownPreviewPanel-C1OKSLmh.js → MarkdownPreviewPanel-lqs6AsoN.js} +2 -2
- package/dist/chunks/{MarkdownPreviewPanel-C1OKSLmh.js.map → MarkdownPreviewPanel-lqs6AsoN.js.map} +1 -1
- package/dist/chunks/{MasterDetailLayout-KVizcSNO.js → MasterDetailLayout-B5uqvh98.js} +2 -2
- package/dist/chunks/{MasterDetailLayout-KVizcSNO.js.map → MasterDetailLayout-B5uqvh98.js.map} +1 -1
- package/dist/chunks/{McpSettingsPage-Dhf0CbDN.js → McpSettingsPage-Cdej9Evi.js} +2 -2
- package/dist/chunks/{McpSettingsPage-Dhf0CbDN.js.map → McpSettingsPage-Cdej9Evi.js.map} +1 -1
- package/dist/chunks/{MemberAssignmentSheet-TYpnyA0z.js → MemberAssignmentSheet-AKvLbbYW.js} +2 -2
- package/dist/chunks/{MemberAssignmentSheet-TYpnyA0z.js.map → MemberAssignmentSheet-AKvLbbYW.js.map} +1 -1
- package/dist/chunks/{MenuCommandPalette-BcvpUfK7.js → MenuCommandPalette-ia0pSIFg.js} +2 -2
- package/dist/chunks/{MenuCommandPalette-BcvpUfK7.js.map → MenuCommandPalette-ia0pSIFg.js.map} +1 -1
- package/dist/chunks/{MenusPage-Dd7OLQYT.js → MenusPage-Bh55bvKH.js} +2 -2
- package/dist/chunks/{MenusPage-Dd7OLQYT.js.map → MenusPage-Bh55bvKH.js.map} +1 -1
- package/dist/chunks/{MonacoPreviewPanel-BW1j3ZTF.js → MonacoPreviewPanel-CT_sjf7Z.js} +2 -2
- package/dist/chunks/{MonacoPreviewPanel-BW1j3ZTF.js.map → MonacoPreviewPanel-CT_sjf7Z.js.map} +1 -1
- package/dist/chunks/{NavListPanel-Iz1RCkVw.js → NavListPanel-DMIUMh7q.js} +2 -2
- package/dist/chunks/{NavListPanel-Iz1RCkVw.js.map → NavListPanel-DMIUMh7q.js.map} +1 -1
- package/dist/chunks/{OperationLogsPage-Dt22tU4I.js → OperationLogsPage-7XVfmhxP.js} +2 -2
- package/dist/chunks/{OperationLogsPage-Dt22tU4I.js.map → OperationLogsPage-7XVfmhxP.js.map} +1 -1
- package/dist/chunks/{OperationLogsTable-B23Ry-2v.js → OperationLogsTable-gp-WZxiF.js} +3 -3
- package/dist/chunks/{OperationLogsTable-B23Ry-2v.js.map → OperationLogsTable-gp-WZxiF.js.map} +1 -1
- package/dist/chunks/{PDFPreviewPanel-kBPz5dQr.js → PDFPreviewPanel-CyfhyWav.js} +3 -3
- package/dist/chunks/{PDFPreviewPanel-kBPz5dQr.js.map → PDFPreviewPanel-CyfhyWav.js.map} +1 -1
- package/dist/chunks/{PositionsPage-BIKYQDB5.js → PositionsPage-Bwua1vNV.js} +2 -2
- package/dist/chunks/{PositionsPage-BIKYQDB5.js.map → PositionsPage-Bwua1vNV.js.map} +1 -1
- package/dist/chunks/{PreferencesSheetBody-D276rrp4.js → PreferencesSheetBody-C80D3dOM.js} +2 -2
- package/dist/chunks/{PreferencesSheetBody-D276rrp4.js.map → PreferencesSheetBody-C80D3dOM.js.map} +1 -1
- package/dist/chunks/{ProfilePage-DLftC6KZ.js → ProfilePage-DeTw-59a.js} +2 -2
- package/dist/chunks/{ProfilePage-DLftC6KZ.js.map → ProfilePage-DeTw-59a.js.map} +1 -1
- package/dist/chunks/{ProjectInfoPage-DkuBLC8t.js → ProjectInfoPage-Bqn3gfXa.js} +2 -2
- package/dist/chunks/{ProjectInfoPage-DkuBLC8t.js.map → ProjectInfoPage-Bqn3gfXa.js.map} +1 -1
- package/dist/chunks/{RelationPanel-B4BeO0Bz.js → RelationPanel-Bio-ig-l.js} +2 -2
- package/dist/chunks/{RelationPanel-B4BeO0Bz.js.map → RelationPanel-Bio-ig-l.js.map} +1 -1
- package/dist/chunks/{RolesPage-BhltU2Qm.js → RolesPage-fwUSs2HR.js} +2 -2
- package/dist/chunks/{RolesPage-BhltU2Qm.js.map → RolesPage-fwUSs2HR.js.map} +1 -1
- package/dist/chunks/{SessionConflictModal-3R8jdYkI.js → SessionConflictModal-Dw4opoNP.js} +2 -2
- package/dist/chunks/{SessionConflictModal-3R8jdYkI.js.map → SessionConflictModal-Dw4opoNP.js.map} +1 -1
- package/dist/chunks/{SettingModuleDetail-Dppk9An1.js → SettingModuleDetail-I9CSJ-fh.js} +2 -2
- package/dist/chunks/{SettingModuleDetail-Dppk9An1.js.map → SettingModuleDetail-I9CSJ-fh.js.map} +1 -1
- package/dist/chunks/{SettingsPage-DMzeDrnc.js → SettingsPage-Cy5-q-P6.js} +2 -2
- package/dist/chunks/{SettingsPage-DMzeDrnc.js.map → SettingsPage-Cy5-q-P6.js.map} +1 -1
- package/dist/chunks/{StatCard-C0xSZyiS.js → StatCard-BROG4NSp.js} +2 -2
- package/dist/chunks/{StatCard-C0xSZyiS.js.map → StatCard-BROG4NSp.js.map} +1 -1
- package/dist/chunks/{UserGroupsPage-DTJdszHl.js → UserGroupsPage-CsTBkUPy.js} +2 -2
- package/dist/chunks/{UserGroupsPage-DTJdszHl.js.map → UserGroupsPage-CsTBkUPy.js.map} +1 -1
- package/dist/chunks/{UserLogsPanels-z4UhQtgu.js → UserLogsPanels-3u8Z93YU.js} +2 -2
- package/dist/chunks/{UserLogsPanels-z4UhQtgu.js.map → UserLogsPanels-3u8Z93YU.js.map} +1 -1
- package/dist/chunks/{UserTransferSelect-BJNUXMhl.js → UserTransferSelect-ChLj4EkS.js} +2 -2
- package/dist/chunks/{UserTransferSelect-BJNUXMhl.js.map → UserTransferSelect-ChLj4EkS.js.map} +1 -1
- package/dist/chunks/{UsersPage--p68X2Yr.js → UsersPage-CfNnQJi4.js} +2 -2
- package/dist/chunks/{UsersPage--p68X2Yr.js.map → UsersPage-CfNnQJi4.js.map} +1 -1
- package/dist/chunks/{browser-BKLM0ThC-3Xar5rZw.js → browser-BKLM0ThC-D0TgzKTC.js} +1 -1
- package/dist/chunks/{code-P0HJS_q1.js → code-BkkeN2fd.js} +1 -1
- package/dist/chunks/{direct-engine-BYEscsGg.js → direct-engine-m32m22nx.js} +1 -1
- package/dist/chunks/{html-B__1Vr_C.js → html-BGNWR_Bp.js} +1 -1
- package/dist/chunks/{line-DzLRZVEq.js → line-CsTeuEcK.js} +1 -1
- package/dist/chunks/{lrc-kf-TilFB.js → lrc-D6gjnGZ5.js} +1 -1
- package/dist/chunks/{markdown-xIo-vnKK.js → markdown-BglUe9j8.js} +1 -1
- package/dist/chunks/{patch-BEaX-xYV.js → patch-C97Yl3jr.js} +1 -1
- package/dist/chunks/{worker-engine-FCdIQLzN.js → worker-engine-B7_3qQVS.js} +1 -1
- package/dist/core/hooks/queries/settings.d.ts +6 -0
- package/dist/core/hooks/queries/settings.d.ts.map +1 -1
- package/dist/core/hooks/queries/settings.js +34 -25
- package/dist/core/hooks/queries/settings.js.map +1 -1
- package/dist/core/hooks/useAuth.d.ts +2 -0
- package/dist/core/hooks/useAuth.d.ts.map +1 -1
- package/dist/core/hooks/useAuth.js.map +1 -1
- package/dist/core/index.js +7 -7
- package/dist/core/lib/go-auth-api.d.ts +1 -1
- package/dist/core/lib/go-auth-api.d.ts.map +1 -1
- package/dist/core/lib/go-auth-api.js +12 -8
- package/dist/core/lib/go-auth-api.js.map +1 -1
- package/dist/core/lib/native-operations.d.ts +85 -4
- package/dist/core/lib/native-operations.d.ts.map +1 -1
- package/dist/core/lib/native-operations.js +1 -0
- package/dist/core/lib/native-operations.js.map +1 -1
- package/dist/core/providers/GoAuthProvider.d.ts.map +1 -1
- package/dist/core/providers/GoAuthProvider.js +191 -142
- package/dist/core/providers/GoAuthProvider.js.map +1 -1
- package/dist/core/session-renewal.d.ts +15 -0
- package/dist/core/session-renewal.d.ts.map +1 -0
- package/dist/core/session-renewal.js +95 -0
- package/dist/core/session-renewal.js.map +1 -0
- package/dist/core/session-transition.d.ts +2 -0
- package/dist/core/session-transition.d.ts.map +1 -1
- package/dist/core/session-transition.js +20 -7
- package/dist/core/session-transition.js.map +1 -1
- package/dist/core/session.d.ts +4 -0
- package/dist/core/session.d.ts.map +1 -1
- package/dist/core/session.js +88 -61
- package/dist/core/session.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/{src-C8_bzBi4.js → src-DAkFn9SG.js} +2 -2
- package/dist/{src-C8_bzBi4.js.map → src-DAkFn9SG.js.map} +1 -1
- package/package.json +9 -9
- package/dist/chunks/EntityContextRuntime-BOJySc1D.js +0 -1
- package/dist/chunks/IdentitySecurityPage-DW5ybVL4.js +0 -9
- package/dist/chunks/IdentitySecurityPage-DW5ybVL4.js.map +0 -1
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import{n as e}from"./rolldown-runtime-Bruge11p.js";import{H as t,Ht as n,M as r,R as i,T as a,V as o,Vt as s,b as c,bt as l,f as u,m as d,xt as f}from"./clipboard-dpqHdCyy.js";import{i as p}from"./feedback-B1UL2ETz.js";import{n as m,t as h}from"./MasterDetailLayout-B5uqvh98.js";import{i as g,s as _}from"./toolbar-controls-CrM8hKZg.js";import{n as v,t as y}from"./info-CMEL1G7n.js";import{n as b,t as ee}from"./monitor-DjHEaSak.js";import{n as te,t as x}from"./save-CSrPWJxC.js";import{n as S,t as C}from"./shield-Cf8xmgtJ.js";import{n as w,r as T}from"./NavListPanel-DMIUMh7q.js";import{i as E,n as D,r as ne,t as re}from"./useSectionSelection-DBggfIoz.js";import{useEffect as ie,useRef as ae,useState as oe}from"react";import{Fragment as O,jsx as k,jsxs as A}from"react/jsx-runtime";import{GoaError as j}from"@fudanda/client";import{usePermission as M}from"@fudanda/admin-antd/core/hooks/usePermission";import{useSaveSettings as N,useSettings as P}from"@fudanda/admin-antd/core/hooks/queries/settings";import{SESSION_CONCURRENCY_SCOPES as F,SESSION_CONCURRENCY_SCOPE_LABELS as I,SESSION_EXCEED_ACTIONS as L,SESSION_EXCEED_ACTION_LABELS as R}from"@fudanda/client/identity";import{formatSessionPolicyHint as z}from"@fudanda/client/settings";import{ApiIdentitySecuritySettingsSchema as B}from"@fudanda/client/api/settings";import{foundationSettingDefaults as V}from"@fudanda/client/settings/foundation";var H,U;function W(){return(W=e((()=>{
|
|
2
|
+
/**
|
|
3
|
+
* @license lucide-react v1.67.0 - ISC
|
|
4
|
+
*
|
|
5
|
+
* This source code is licensed under the ISC license.
|
|
6
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
7
|
+
*/
|
|
8
|
+
f(),H={name:`key`,size:24,node:[[`path`,{d:`m2 21 9.6-9.6`,key:`9l79m3`}],[`path`,{d:`m7.5 15.5 2.3 2.3a1 1 0 0 1 0 1.4l-2.1 2.1a1 1 0 0 1-1.4 0L4 19`,key:`fw8biw`}],[`circle`,{cx:`15.5`,cy:`7.5`,r:`5.5`,key:`4wxmhb`}]]},H.node,U=l(H)})))()}function G(e){return e<=0?`unlimited`:e===1?`single`:`limited`}function K({supportsRenewal:e}){let r=o(),{values:a}=t(),c=a?.session,l={maxSessions:c?.maxSessions??0,scope:c?.scope??`global`,exceedAction:c?.exceedAction??`kick-oldest`},u=G(l.maxSessions),d=u===`unlimited`,f=z(l),p=e=>{let t=e===`unlimited`?0:e===`single`?1:Math.max(l.maxSessions,q);r.setValue(`session.maxSessions`,t)};return/* @__PURE__ */ A(O,{children:[e&&/* @__PURE__ */ A(O,{children:[/* @__PURE__ */ k(i.Switch,{field:`session.autoRenew`,label:`自动续期`,extraText:`应用在线时,在会话临近到期时自动续期;达到最长登录期限后需重新登录`}),/* @__PURE__ */ k(i.InputNumber,{field:`session.maxLifetimeDays`,label:`最长登录期限`,min:1,max:365,precision:0,suffix:`天`,style:{width:160},rules:[{required:!0,type:`integer`,min:1,max:365,message:`请输入 1–365 之间的整数天数`}],extraText:`从首次登录开始计算,范围为 1–365 天`})]}),/* @__PURE__ */ k(i.Slot,{label:`同时在线`,children:/* @__PURE__ */ A(`div`,{className:`session-policy-limit`,children:[/* @__PURE__ */ A(n,{value:u,onChange:e=>p(e.target.value),"aria-label":`同时在线上限`,children:[/* @__PURE__ */ k(s,{value:`unlimited`,children:`不限制`}),/* @__PURE__ */ k(s,{value:`single`,children:`仅一处登录`}),/* @__PURE__ */ k(s,{value:`limited`,children:`最多 N 处`})]}),/* @__PURE__ */ k(i.InputNumber,{field:`session.maxSessions`,noLabel:!0,min:u===`limited`?2:0,max:20,style:{width:120},fieldStyle:{padding:0},fieldClassName:u===`limited`?void 0:`session-policy-limit-hidden`,suffix:`处`,"aria-label":`同时在线上限(处)`})]})}),/* @__PURE__ */ k(i.Select,{field:`session.scope`,label:`统计范围`,disabled:d,style:{width:260},optionList:F.map(e=>({value:e,label:I[e]})),extraText:`按终端分别计算时,网页、移动审批、桌面端各占一份名额`}),/* @__PURE__ */ k(i.RadioGroup,{field:`session.exceedAction`,label:`超限处理`,disabled:d,options:L.map(e=>({value:e,label:R[e]})),extraText:`拒绝新登录时,用户可在登录页选择下线其它设备后继续登录`}),/* @__PURE__ */ k(i.Slot,{label:` `,children:/* @__PURE__ */ A(`div`,{className:`session-policy-preview`,role:`status`,children:[/* @__PURE__ */ k(y,{size:14,"aria-hidden":!0}),/* @__PURE__ */ k(`span`,{children:f})]})})]})}var q;function J(){return(J=e((()=>{r(),v(),q=3})))()}function Y(e){return{...e,session:{...Q.session,...e.session}}}function se(){let{hasPermission:e}=M(),t=e(`system:identity-security:manage`),n=D(Z,`password`),r=n.active,o=ae(null),[s,l]=oe(Q),f=P(`identitySecurity`,t),m=N(`identitySecurity`),_=f.data?.effective.session,v=_?.autoRenew!==void 0&&_?.maxLifetimeDays!==void 0;ie(()=>{f.data&&l(Y(B.parse(f.data.effective)))},[f.data]);async function y(){if(!o.current||!f.data)return;let e;try{e=await o.current?.validate()}catch{let e=o.current.getFieldsError().find(({errors:e})=>e.length>0)?.name[0];e===`password`?n.select(`password`):e===`loginChallenge`?n.select(`login-challenge`):e===`session`&&n.select(`session`);return}try{let t=v?e:{...e,session:{maxSessions:e.session.maxSessions,scope:e.session.scope,exceedAction:e.session.exceedAction}},n=await m.mutateAsync({body:{version:f.data?.version??0,data:t}});l(Y(B.parse(n.effective))),p.success(`身份安全策略已保存`)}catch(e){e instanceof j&&e.status===409&&f.refetch()}}return t?/* @__PURE__ */ k(`div`,{className:`page-container page-container--stretch`,children:/* @__PURE__ */ k(h,{defaultSize:260,minSize:200,maxSize:400,persistKey:`identity-security`,style:{flex:1,minHeight:0,overflow:`hidden`},showDetail:r!==null,onBack:n.back,onResponsiveChange:n.responsiveChange,master:/* @__PURE__ */ k(w,{title:`安全模块`,rawBody:!0,children:/* @__PURE__ */ k(ne,{sections:X,active:r,onSelect:n.select})}),detail:/* @__PURE__ */ A(O,{children:[/* @__PURE__ */ k(h.Header,{extra:/* @__PURE__ */ A(a,{children:[/* @__PURE__ */ k(d,{type:`primary`,icon:/* @__PURE__ */ k(x,{size:14}),loading:m.isPending,disabled:!f.data||f.isFetching,onClick:y,children:`保存`}),/* @__PURE__ */ k(g,{onClick:()=>void f.refetch(),loading:f.isFetching,children:`重载`})]}),children:/* @__PURE__ */ k(`strong`,{children:X.find(e=>e.key===r)?.title??`身份安全`})}),/* @__PURE__ */ A(h.Body,{padding:24,children:[f.error&&/* @__PURE__ */ k(u,{type:`danger`,description:`身份安全策略加载失败,请重载后重试。`}),/* @__PURE__ */ A(i,{initValues:s,getFormApi:e=>{o.current=e},disabled:!f.data||m.isPending,labelPosition:`left`,labelWidth:150,style:{maxWidth:760},children:[/* @__PURE__ */ A(`section`,{hidden:r!==`password`,children:[/* @__PURE__ */ k(i.InputNumber,{field:`password.minLength`,label:`最小长度`,min:6,max:64}),/* @__PURE__ */ k(i.Switch,{field:`password.requireUppercase`,label:`必须包含大写`}),/* @__PURE__ */ k(i.Switch,{field:`password.requireSpecialChar`,label:`必须包含特殊字符`}),/* @__PURE__ */ k(i.Switch,{field:`password.expiryEnabled`,label:`启用密码过期`}),/* @__PURE__ */ k(i.InputNumber,{field:`password.expiryDays`,label:`过期天数`,min:1,max:3650})]}),/* @__PURE__ */ A(`section`,{hidden:r!==`login-challenge`,children:[/* @__PURE__ */ k(i.InputNumber,{field:`loginChallenge.maxAttemptsPerSource`,label:`单来源失败阈值`,min:1,max:1e3,extraText:`同一账号 + 同一 IP 的失败次数,达到后该来源需先过验证码`}),/* @__PURE__ */ k(i.InputNumber,{field:`loginChallenge.sourceLimit`,label:`多来源失败阈值`,min:1,max:100,extraText:`窗口内失败来源 IP 数,达到后该账号所有来源都需验证码(防分布式猜解)`}),/* @__PURE__ */ k(i.InputNumber,{field:`loginChallenge.windowMinutes`,label:`计数窗口(分钟)`,min:1,max:1440})]}),/* @__PURE__ */ k(`section`,{hidden:r!==`session`,children:/* @__PURE__ */ k(K,{supportsRenewal:v})})]},JSON.stringify(s))]})]})})}):/* @__PURE__ */ k(c,{description:`无访问权限`})}var X,Z,Q;function $(){return($=e((()=>{r(),W(),b(),te(),S(),m(),T(),E(),re(),_(),J(),X=[{key:`password`,title:`密码策略`,description:`密码强度与过期规则`,icon:U},{key:`login-challenge`,title:`登录失败防护`,description:`失败阈值与验证码防护`,icon:C},{key:`session`,title:`会话策略`,description:`登录状态与在线设备策略`,icon:ee}],Z=X.map(e=>e.key),Q=V.identitySecurity})))()}$();export{se as default};
|
|
9
|
+
//# sourceMappingURL=IdentitySecurityPage-rDYX5ksX.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IdentitySecurityPage-rDYX5ksX.js","mappings":"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","names":["__iconData","createLucideIcon","modeOf","maxSessions","SessionPolicyFields","formApi","useFormApi","useFormState","draft","values","session","mode","unlimited","preview","formatSessionPolicyHint","changeMode","value","next","DEFAULT_LIMITED","_Fragment","supportsRenewal","Form","RadioGroup","Radio","SESSION_CONCURRENCY_SCOPES","SESSION_CONCURRENCY_SCOPE_LABELS","SESSION_EXCEED_ACTIONS","SESSION_EXCEED_ACTION_LABELS","Info","withSessionDefaults","policy","defaultPolicy","IdentitySecurityPage","usePermission","canManagePolicy","hasPermission","navigation","useSectionSelection","SECTION_KEYS","activeSection","useRef","setPolicy","useState","policyQuery","useSettings","savePolicyMutation","useSaveSettings","sessionPolicy","useEffect","identitySecuritySettingsSchema","handleSavePolicy","field","errors","data","saved","Toast","err","GoaError","MasterDetailLayout","NavListPanel","SectionNavigation","SECTIONS","Space","Button","Save","RefreshButton","section","Banner","api","Empty","Key","Shield","Monitor","foundationSettingDefaults"],"ignoreList":[0],"sources":["../../../../node_modules/lucide-react/dist/esm/icons/key.mjs","../../src/pages/system/identity-security/SessionPolicyFields.tsx","../../src/pages/system/identity-security/IdentitySecurityPage.tsx"],"sourcesContent":[null,"import { Form, RadioGroup, Radio, useFormApi, useFormState } from \"@/ui\";\nimport { Info } from 'lucide-react';\nimport { SESSION_CONCURRENCY_SCOPE_LABELS, SESSION_CONCURRENCY_SCOPES, SESSION_EXCEED_ACTION_LABELS, SESSION_EXCEED_ACTIONS } from '@fudanda/shared/identity';\nimport { formatSessionPolicyHint, type SessionConcurrencyPolicy } from '@fudanda/shared/settings';\ntype LimitMode = 'unlimited' | 'single' | 'limited';\n/** 「最多 N 处」的默认起点:从单处切过来时给一个有意义的 N,避免落在 0 / 1 上又变回别的模式 */\nconst DEFAULT_LIMITED = 3;\nfunction modeOf(maxSessions: number): LimitMode {\n if (maxSessions <= 0)\n return 'unlimited';\n return maxSessions === 1 ? 'single' : 'limited';\n}\n/**\n * 身份安全 → 会话策略。渲染在 <Form> 内:同时在线用单选表达「不限 / 单处 / 最多 N 处」,\n * 落到同一个 session.maxSessions 字段;不限制时范围与超限处理置灰。\n */\nexport function SessionPolicyFields({ supportsRenewal }: { supportsRenewal: boolean }) {\n const formApi = useFormApi();\n const { values } = useFormState<{\n session?: Partial<SessionConcurrencyPolicy>;\n }>();\n const draft = values?.session;\n const session: SessionConcurrencyPolicy = {\n maxSessions: draft?.maxSessions ?? 0,\n scope: draft?.scope ?? 'global',\n exceedAction: draft?.exceedAction ?? 'kick-oldest',\n };\n const mode = modeOf(session.maxSessions);\n const unlimited = mode === 'unlimited';\n const preview = formatSessionPolicyHint(session);\n const changeMode = (next: LimitMode) => {\n const value = next === 'unlimited' ? 0 : next === 'single' ? 1 : Math.max(session.maxSessions, DEFAULT_LIMITED);\n formApi.setValue('session.maxSessions', value);\n };\n return (<>\n {supportsRenewal && <>\n <Form.Switch field=\"session.autoRenew\" label=\"自动续期\" extraText=\"应用在线时,在会话临近到期时自动续期;达到最长登录期限后需重新登录\"/>\n <Form.InputNumber field=\"session.maxLifetimeDays\" label=\"最长登录期限\" min={1} max={365} precision={0} suffix=\"天\" style={{ width: 160 }} rules={[{ required: true, type: 'integer', min: 1, max: 365, message: '请输入 1–365 之间的整数天数' }]} extraText=\"从首次登录开始计算,范围为 1–365 天\"/>\n </>}\n <Form.Slot label=\"同时在线\">\n <div className=\"session-policy-limit\">\n <RadioGroup value={mode} onChange={(e) => changeMode(e.target.value as LimitMode)} aria-label=\"同时在线上限\">\n <Radio value=\"unlimited\">不限制</Radio>\n <Radio value=\"single\">仅一处登录</Radio>\n <Radio value=\"limited\">最多 N 处</Radio>\n </RadioGroup>\n {/* 常驻挂载:Semi Field 卸载会连带移除表单值,切回「不限 / 单处」时 maxSessions 必须仍在提交体里;非 N 处模式仅隐藏 */}\n <Form.InputNumber field=\"session.maxSessions\" noLabel min={mode === 'limited' ? 2 : 0} max={20} style={{ width: 120 }} fieldStyle={{ padding: 0 }} fieldClassName={mode === 'limited' ? undefined : 'session-policy-limit-hidden'} suffix=\"处\" aria-label=\"同时在线上限(处)\"/>\n </div>\n </Form.Slot>\n <Form.Select field=\"session.scope\" label=\"统计范围\" disabled={unlimited} style={{ width: 260 }} optionList={SESSION_CONCURRENCY_SCOPES.map((value) => ({ value, label: SESSION_CONCURRENCY_SCOPE_LABELS[value] }))} extraText=\"按终端分别计算时,网页、移动审批、桌面端各占一份名额\"/>\n <Form.RadioGroup field=\"session.exceedAction\" label=\"超限处理\" disabled={unlimited} options={SESSION_EXCEED_ACTIONS.map((value) => ({ value, label: SESSION_EXCEED_ACTION_LABELS[value] }))} extraText=\"拒绝新登录时,用户可在登录页选择下线其它设备后继续登录\"/>\n <Form.Slot label=\" \">\n <div className=\"session-policy-preview\" role=\"status\">\n <Info size={14} aria-hidden/>\n <span>{preview}</span>\n </div>\n </Form.Slot>\n </>);\n}\n","import { useEffect, useRef, useState } from 'react';\nimport { Banner, Button, Empty, Form, Space, Toast } from \"@/ui\";\nimport type { FormApi } from \"@/ui\";\nimport { Key, Monitor, Save, Shield } from 'lucide-react';\nimport { ApiIdentitySecuritySettingsSchema as identitySecuritySettingsSchema, type ApiIdentitySecuritySettings as IdentitySecuritySettings } from '@fudanda/shared/api/settings';\nimport { foundationSettingDefaults } from '@fudanda/shared/settings/foundation';\nimport { MasterDetailLayout } from '@/components/MasterDetailLayout';\nimport { NavListPanel } from '@/components/NavListPanel';\nimport { SectionNavigation } from '@/components/SectionNavigation';\nimport { useSectionSelection } from '@/hooks/useSectionSelection';\n\nimport { usePermission } from \"@fudanda/react-core/hooks/usePermission\";\nimport { useSaveSettings, useSettings } from \"@fudanda/react-core/hooks/queries/settings\";\nimport { GoaError } from '@fudanda/client';\nimport { RefreshButton } from \"@/components/toolbar-controls\";\nimport { SessionPolicyFields } from \"@/pages/system/identity-security/SessionPolicyFields\";\nimport \"@/pages/system/identity-security/IdentitySecurityPage.css\";\nconst SECTIONS = [\n { key: 'password', title: '密码策略', description: '密码强度与过期规则', icon: Key },\n { key: 'login-challenge', title: '登录失败防护', description: '失败阈值与验证码防护', icon: Shield },\n { key: 'session', title: '会话策略', description: '登录状态与在线设备策略', icon: Monitor },\n] as const;\nconst SECTION_KEYS = SECTIONS.map(section => section.key);\n// 默认值以 shared schema 为唯一真相(通用设置页与服务端同源)\nconst defaultPolicy: IdentitySecuritySettings = foundationSettingDefaults.identitySecurity;\nfunction withSessionDefaults(policy: IdentitySecuritySettings): IdentitySecuritySettings {\n return { ...policy, session: { ...defaultPolicy.session, ...policy.session } };\n}\nexport default function IdentitySecurityPage() {\n const { hasPermission } = usePermission();\n const canManagePolicy = hasPermission('system:identity-security:manage');\n const navigation = useSectionSelection(SECTION_KEYS, 'password');\n const activeSection = navigation.active;\n // useEditModal 例外:页面级全局配置表单(身份安全策略),保存后不关闭;表单 key 跟随策略值重挂载\n const formApi = useRef<FormApi | null>(null);\n const [policy, setPolicy] = useState<IdentitySecuritySettings>(defaultPolicy);\n // 页面级全局配置表单(无弹窗、保存后不关闭),不走 useEditModal;策略由运行时设置 identitySecurity 模块承载\n const policyQuery = useSettings('identitySecurity', canManagePolicy);\n const savePolicyMutation = useSaveSettings('identitySecurity');\n const sessionPolicy = policyQuery.data?.effective.session;\n const supportsRenewal = sessionPolicy?.autoRenew !== undefined && sessionPolicy?.maxLifetimeDays !== undefined;\n useEffect(() => {\n if (policyQuery.data)\n setPolicy(withSessionDefaults(identitySecuritySettingsSchema.parse(policyQuery.data.effective)));\n }, [policyQuery.data]);\n async function handleSavePolicy() {\n if (!formApi.current || !policyQuery.data) return;\n let values: IdentitySecuritySettings;\n try {\n values = await formApi.current?.validate() as IdentitySecuritySettings;\n }\n catch {\n const field = formApi.current.getFieldsError().find(({ errors }) => errors.length > 0)?.name[0];\n if (field === 'password') navigation.select('password');\n else if (field === 'loginChallenge') navigation.select('login-challenge');\n else if (field === 'session') navigation.select('session');\n return;\n }\n try {\n const data = supportsRenewal ? values : {\n ...values,\n session: { maxSessions: values.session.maxSessions, scope: values.session.scope, exceedAction: values.session.exceedAction },\n };\n const saved = await savePolicyMutation.mutateAsync({ body: { version: policyQuery.data?.version ?? 0, data } });\n setPolicy(withSessionDefaults(identitySecuritySettingsSchema.parse(saved.effective)));\n Toast.success('身份安全策略已保存');\n }\n catch (err) {\n // 409 = 他人已修改:请求层已提示,重载最新值供比对后再保存\n if (err instanceof GoaError && err.status === 409)\n void policyQuery.refetch();\n }\n }\n if (!canManagePolicy)\n return <Empty description=\"无访问权限\"/>;\n return (<div className=\"page-container page-container--stretch\">\n <MasterDetailLayout defaultSize={260} minSize={200} maxSize={400} persistKey=\"identity-security\"\n style={{ flex: 1, minHeight: 0, overflow: 'hidden' }} showDetail={activeSection !== null}\n onBack={navigation.back} onResponsiveChange={navigation.responsiveChange}\n master={<NavListPanel title=\"安全模块\" rawBody>\n <SectionNavigation sections={SECTIONS} active={activeSection} onSelect={navigation.select} />\n </NavListPanel>}\n detail={<>\n <MasterDetailLayout.Header extra={<Space>\n <Button type=\"primary\" icon={<Save size={14}/>} loading={savePolicyMutation.isPending} disabled={!policyQuery.data || policyQuery.isFetching} onClick={handleSavePolicy}>保存</Button>\n <RefreshButton onClick={() => void policyQuery.refetch()} loading={policyQuery.isFetching}>重载</RefreshButton>\n </Space>}>\n <strong>{SECTIONS.find(section => section.key === activeSection)?.title ?? '身份安全'}</strong>\n </MasterDetailLayout.Header>\n <MasterDetailLayout.Body padding={24}>\n {policyQuery.error && <Banner type=\"danger\" description=\"身份安全策略加载失败,请重载后重试。\" />}\n <Form key={JSON.stringify(policy)} initValues={policy} getFormApi={(api) => { formApi.current = api; }} disabled={!policyQuery.data || savePolicyMutation.isPending} labelPosition=\"left\" labelWidth={150} style={{ maxWidth: 760 }}>\n <section hidden={activeSection !== 'password'}>\n <Form.InputNumber field=\"password.minLength\" label=\"最小长度\" min={6} max={64}/>\n <Form.Switch field=\"password.requireUppercase\" label=\"必须包含大写\"/>\n <Form.Switch field=\"password.requireSpecialChar\" label=\"必须包含特殊字符\"/>\n <Form.Switch field=\"password.expiryEnabled\" label=\"启用密码过期\"/>\n <Form.InputNumber field=\"password.expiryDays\" label=\"过期天数\" min={1} max={3650}/>\n </section>\n\n {/* 登录失败不再锁定账号:达到阈值只要求验证码,真正的用户凭正确密码 + 验证码仍可登录 */}\n <section hidden={activeSection !== 'login-challenge'}>\n <Form.InputNumber field=\"loginChallenge.maxAttemptsPerSource\" label=\"单来源失败阈值\" min={1} max={1000} extraText=\"同一账号 + 同一 IP 的失败次数,达到后该来源需先过验证码\"/>\n <Form.InputNumber field=\"loginChallenge.sourceLimit\" label=\"多来源失败阈值\" min={1} max={100} extraText=\"窗口内失败来源 IP 数,达到后该账号所有来源都需验证码(防分布式猜解)\"/>\n <Form.InputNumber field=\"loginChallenge.windowMinutes\" label=\"计数窗口(分钟)\" min={1} max={1440}/>\n </section>\n <section hidden={activeSection !== 'session'}>\n <SessionPolicyFields supportsRenewal={supportsRenewal} />\n </section>\n </Form>\n </MasterDetailLayout.Body>\n </>} />\n </div>);\n}\n"]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{n as e}from"./rolldown-runtime-Bruge11p.js";import{D as t,E as n,M as r,Pt as i,Ut as a,m as o,y as s}from"./clipboard-dpqHdCyy.js";import{i as c}from"./feedback-B1UL2ETz.js";import{$ as l,$n as u,$t as ee,A as d,Ai as f,An as te,Ar as p,At as m,Bn as h,Bt as g,Ci as _,Ct as v,D as ne,Dn as y,Dt as b,E as x,Ei as re,En as ie,Et as ae,F as oe,Fn as S,Fr as se,Ft as ce,G as le,Gr as ue,Gt as de,H as fe,Hr as pe,Ht as me,I as he,In as ge,Ir as C,It as _e,Jr as ve,Jt as ye,K as be,Kr as xe,Kt as Se,L as Ce,Lr as we,Lt as Te,M as Ee,Mn as De,Mr as Oe,Mt as ke,N as Ae,Nn as je,Nt as Me,O as Ne,Oi as Pe,On as Fe,Or as w,Ot as Ie,P as Le,Pn as Re,Pr as ze,Pt as Be,Q as Ve,Qn as He,Qt as Ue,R as We,Rn as Ge,Rt as Ke,Si as qe,Sn as Je,St as Ye,T as Xe,Ti as Ze,Tr as Qe,Tt as $e,U as et,Ut as tt,Vn as nt,Vr as rt,Vt as it,W as at,Wt as ot,Xt as st,Yr as ct,Yt as lt,Zt as ut,_ as dt,_i as T,_n as ft,_r as pt,_t as mt,ai as ht,an as gt,bn as _t,bt as vt,ci as yt,cn as bt,cr as xt,di as St,dn as E,dr as Ct,ei as D,en as wt,fi as Tt,fn as Et,gi as O,gn as Dt,hn as Ot,hr as kt,ii as At,in as jt,ir as Mt,j as Nt,ji as Pt,jn as Ft,jr as It,jt as Lt,k as Rt,ki as zt,kn as Bt,kr as Vt,kt as Ht,li as Ut,ln as Wt,lr as Gt,mn as Kt,mr as qt,n as Jt,ni as Yt,nn as k,oi as A,on as Xt,or as Zt,pi as Qt,pn as $t,q as en,qr as tn,qt as nn,r as rn,ri as an,rn as on,rr as sn,si as j,sn as cn,sr as ln,ti as un,tn as dn,ui as fn,un as pn,ur as mn,vi as hn,vn as gn,vr as _n,vt as vn,w as yn,wr as bn,wt as xn,xi as Sn,xn as Cn,xt as wn,y as Tn,yi as En,yn as Dn,yt as On,z as kn,zn as M,zt as An}from"./StatCard-C0xSZyiS.js";import{n as jn,t as Mn}from"./list-wgUaW69x.js";import{n as Nn,t as Pn}from"./trash-Ay_Vtz4n.js";import{B as Fn,V as In}from"./App-BF96TQ_D.js";import{n as Ln,t as Rn}from"./AppModal-CLkMJ-96.js";import{Ar as zn,Dr as N,Er as P,Ft as Bn,Gn as Vn,Hn,In as F,Kn as Un,Lt as I,Nn as L,Nt as Wn,Or as R,Pt as z,Un as Gn,Wn as Kn,_ as qn,_r as Jn,b as Yn,cr as Xn,g as Zn,gr as Qn,jr as $n,kr as B,lr as er,x as tr}from"./chart-data-DI8rr6W3.js";import{a as nr,ar as rr,ir,ln as ar,o as or,un as V}from"./chart-renderer-Dl8qlg1n.js";import{useContext as sr,useState as cr}from"react";import{Fragment as H,jsx as U,jsxs as W}from"react/jsx-runtime";import lr from"dayjs";import{ToolbarSlotContext as ur}from"@fudanda/admin-antd/core/components/toolbar-slot-context";var dr;function fr(){return(fr=e((()=>{u(),F(),P(),dr=class extends He{constructor(){super(...arguments),this._getSeriesStyle=(e,t,n)=>{for(let n of L(t)){let t=this.series.getSeriesStyle(e)?.(n);if(!1!==t||n!==`fill`&&n!==`stroke`||(t=n===`fill`?this.series.getSeriesStyle(e)?.(`stroke`)?.[0]:this.series.getSeriesStyle(e)?.(`fill`)),N(t))return t}return n}}}})))()}var pr;function mr(){return(mr=e((()=>{nt(),Cn(),pr=Object.assign(Object.assign(Object.assign({},h),Je),{area:{name:`area`,type:`area`}})})))()}var hr;function gr(){return(gr=e((()=>{qt(),hr=()=>{kt(),pt(),_n()}})))()}var _r;function vr(){return(vr=e((()=>{P(),$t(),ar(),_r=class extends Et{constructor(){super(...arguments),this._supportStack=!0}_transformLabelSpec(e){let t=!1!==e.point?.visible&&!1!==e.point?.style?.visible;this._addMarkLabelSpec(e,(e=>{let n=e.position===`inside-middle`;return!t||n?`area`:`point`})),this._addMarkLabelSpec(e,`area`,`areaLabel`,`initLineLabelMarkStyle`,void 0,!0)}_transformSpecAfterMergingTheme(e,t,n){var r;super._transformSpecAfterMergingTheme(e,t,n);let{area:i={},line:a={},seriesMark:o}=e,s=!1!==i.visible&&!1!==i.style?.visible,c=!1!==a.visible&&!1!==a.style?.visible;i.support3d=!(!i.support3d&&!a.support3d),i.zIndex=N(i.zIndex)||N(a.zIndex)?Math.max(i.zIndex??0,a.zIndex??0):void 0,i.style&&delete i.style.stroke,i.state&&Object.keys(i.state).forEach((e=>{`style`in i.state[e]?delete i.state[e].style.stroke:delete i.state[e].stroke}));let l=i,u=a;(o===`line`||c&&!s)&&(l=a,u=i),i.style=V({},u.style,l.style),i.state=V({},u.state,l.state),!1===i.interactive&&(i.style.fillPickable=!1),!1===a.interactive&&(a.style.strokePickable=!1),i.interactive=!(!i.interactive&&(r=a.interactive)!=null&&!r),e.area=i,e.line=a}}})))()}var yr;function br(){return(br=e((()=>{yr={label:{visible:!1,offset:5,position:`top`,style:{stroke:{type:`palette`,key:`backgroundColor`},lineWidth:2}},point:{style:{symbolType:`circle`}},seriesMark:`area`}})))()}var G,xr;function Sr(){return(Sr=e((()=>{Qn(),_t(),y(),Vt(),St(),T(),ge(),Zt(),Dt(),mt(),Kt(),fr(),mr(),j(),gr(),vr(),Bt(),Se(),ye(),an(),ot(),me(),br(),G=class e extends ie{constructor(){super(...arguments),this.type=O.area,this.transformerConstructor=_r,this._sortDataByAxis=!1}_getSpecUpdatePolicy(){let e=super._getSpecUpdatePolicy();return Object.assign(Object.assign({},e),{dataRelatedKeys:Object.assign(Object.assign({},e.dataRelatedKeys),gn)})}initMark(){let t=this._spec.seriesMark??`area`,n=this._isAreaVisible()||this._isLineVisible();this._areaMark=this._createMark(e.mark.area,{groupKey:this._seriesField,isSeriesMark:n&&t!==`point`},{morphElementKey:this.getDimensionField()[0]}),this.initSymbolMark(t===`point`)}initMarkStyle(){this.initAreaMarkStyle(),this.initSymbolMarkStyle()}initAreaMarkStyle(){let e=this.getSpec().area?.style?.curveType??this.getSpec().line?.style?.curveType,t=e===`monotone`?this._direction===`horizontal`?`monotoneY`:`monotoneX`:e,n=this._areaMark;if(n){let e=this._isAreaVisible(),r=this._isLineVisible();e||r?n.setVisible(!0):n.setVisible(!1),this._direction===`horizontal`?this.setMarkStyle(this._areaMark,{x:this.dataToPositionX.bind(this),x1:e=>{var t;return Qt(this.dataToPositionX1(e),((t=this._xAxisHelper)?.getScale)?.call(t,0))},y:this.dataToPositionY.bind(this),y1:this.dataToPositionY.bind(this),z:this._fieldZ?this.dataToPositionZ.bind(this):null,orient:this._direction},`normal`,w.Series):this.setMarkStyle(this._areaMark,{x:this.dataToPositionX.bind(this),x1:this.dataToPositionX.bind(this),y1:e=>{var t;return Qt(this.dataToPositionY1(e),((t=this._yAxisHelper)?.getScale)?.call(t,0))},y:this.dataToPositionY.bind(this),z:this._fieldZ?this.dataToPositionZ.bind(this):null},`normal`,w.Series),this.setMarkStyle(n,{fill:!!e&&this.getColorAttribute(),stroke:!!r&&this.getColorAttribute()},`normal`,w.Series),this._invalidType!==`zero`&&this.setMarkStyle(n,{defined:this._getInvalidDefined.bind(this),connectedType:this._getInvalidConnectType()},`normal`,w.Series),this.getStack()&&this.setMarkStyle(n,{zIndex:e=>-e[Yt]},`normal`,w.Series),this.setMarkStyle(n,{curveType:t},`normal`,w.Built_In),Object.keys(n.stateStyle).forEach((e=>{n.stateStyle[e].stroke&&n.setPostProcess(`stroke`,(e=>[e,!1,!1,!1]),e)}))}}initAnimation(){let e={direction:this.direction},t=this._spec.animationAppear?.preset;if(this._lineMark&&this._lineMark.setAnimationConfig(S(A.getAnimationInKey(`line`)?.(e,t),M(`line`,this._spec,this._markAttributeContext))),this._areaMark&&this._areaMark.setAnimationConfig(S(A.getAnimationInKey(`area`)?.(e,t),M(`area`,this._spec,this._markAttributeContext))),this._symbolMark){let e=Fe(this);this._symbolMark.setAnimationConfig(S(A.getAnimationInKey(`scaleInOut`)?.(),M(`point`,this._spec,this._markAttributeContext),e))}}_isAreaVisible(){let e=this._spec.area||{};return!1!==e.visible&&!1!==e.style?.visible}_isLineVisible(){let e=this._spec.line||{};return!1!==e.visible&&!1!==e.style?.visible}initTooltip(){this._tooltipHelper=new dr(this);let{group:e,mark:t}=this._tooltipHelper.activeTriggerSet;this._areaMark&&e.add(this._areaMark),this._lineMark&&e.add(this._lineMark),this._symbolMark&&(t.add(this._symbolMark),e.add(this._symbolMark))}viewDataStatisticsUpdate(e){super.viewDataStatisticsUpdate(e),this.encodeDefined(this._areaMark,`defined`)}compile(){super.compile(),this.addSamplingCompile(),this.addOverlapCompile()}getDefaultShapeType(){return`square`}getActiveMarks(){return[this._areaMark,this._symbolMark,this._lineMark]}onLayoutEnd(){super.onLayoutEnd(),this.reCompileSampling()}getSeriesStyle(e){return t=>{let n=this._spec.seriesMark??`area`,r=this._seriesMark?.getAttribute(t,e)??void 0;return t!==`fill`||r&&n!==`line`||(t=`stroke`,r=this._seriesMark?.getAttribute(t,e)??void 0),t===`stroke`&&Jn(r)?r[0]:r}}},G.type=O.area,G.builtInTheme={area:yr},G.mark=pr,G.transformerConstructor=_r,Hn(G,Dn),xr=()=>{tt(),de(),ft(),vn(),Ot(),hr(),lt(),nn(),A.registerSeries(G.type,G)}})))()}var Cr;function wr(){return(wr=e((()=>{Te(),ze(),Cr=class extends _e{_getDefaultSeriesSpec(e){return super._getDefaultSeriesSpec(e,[`point`,`line`,`area`,`seriesMark`,`activePoint`,`sampling`,`samplingFactor`,`pointDis`,`pointDisMul`,`markOverlap`,`areaLabel`,`useSequentialAnimation`])}transformSpec(e){super.transformSpec(e),se(e)}}})))()}var K,Tr;function Er(){return(Er=e((()=>{Sr(),T(),j(),wr(),it(),ce(),ke(),m(),Ht(),ae(),v(),wn(),On(),K=class extends g{constructor(){super(...arguments),this.transformerConstructor=Cr,this.type=`area`,this.seriesType=O.area}_setModelOption(){this._modelOption.getDimensionInfo=b,this._modelOption.getDimensionInfoByValue=Ie,this._modelOption.getRectByDimensionData=$e}},K.type=`area`,K.seriesType=O.area,K.transformerConstructor=Cr,Hn(K,Be),Tr=()=>{xn(),Ye(),vt(),Me(),xr(),Lt(),A.registerChart(K.type,K)}})))()}var Dr;function Or(){return(Or=e((()=>{F(),P(),R(),Zn(),E(),De(),Bt(),ue(),Dr=class extends Ft{constructor(){super(...arguments),this.coordinate=`polar`,this._outerRadius=bt,this._innerRadius=0,this._angleField=[],this._radiusField=[],this._sortDataByAxis=!1}get outerRadius(){return this._outerRadius}get innerRadius(){return this._innerRadius}getAngleField(){return this._angleField}setAngleField(e){return this._angleField=N(e)?L(e):[],this._angleField}getRadiusField(){return this._radiusField}setRadiusField(e){return this._radiusField=N(e)?L(e):[],this._radiusField}get innerRadiusField(){return this._innerRadiusField}setInnerRadiusField(e){return this._innerRadiusField=L(e),this._innerRadiusField}get radiusScale(){return this._radiusScale}setRadiusScale(e){return this._radiusScale=e,e}get angleScale(){return this._angleScale}setAngleScale(e){return this._angleScale=e,e}get angleAxisHelper(){return this._angleAxisHelper}set angleAxisHelper(e){this._angleAxisHelper=e,this.onAngleAxisHelperUpdate()}get radiusAxisHelper(){return this._radiusAxisHelper}set radiusAxisHelper(e){this._radiusAxisHelper=e,this.onRadiusAxisHelperUpdate()}get sortDataByAxis(){return this._sortDataByAxis}_buildMarkAttributeContext(){super._buildMarkAttributeContext(),this._markAttributeContext.valueToPosition=this.valueToPosition.bind(this),this._markAttributeContext.getCenter=()=>this.angleAxisHelper.center(),this._markAttributeContext.getLayoutRadius=()=>this._computeLayoutRadius()}valueToPosition(e,t){if(B(e)||B(t)||!this.angleAxisHelper||!this.radiusAxisHelper)return{x:NaN,y:NaN};let n=this.radiusAxisHelper.dataToPosition(L(t));if(n<0){if(this._invalidType===`break`||this._invalidType===`link`)return{x:NaN,y:NaN};if(this._invalidType===`zero`)return this.angleAxisHelper.center()}let r=this.angleAxisHelper.dataToPosition(L(e));return this.angleAxisHelper.coordToPoint({angle:r,radius:n})}dataToPosition(e,t){return e&&this.angleAxisHelper&&this.radiusAxisHelper?t&&!this.isDatumInViewData(e)?null:this.valueToPosition(this.getDatumPositionValues(e,this._angleField),this.getDatumPositionValues(e,this._radiusField)):null}dataToPositionX(e){return this.dataToPosition(e)?.x}dataToPositionY(e){return this.dataToPosition(e)?.y}dataToPositionZ(e){return 0}positionToData(e){}radiusToData(e){}angleToData(e){}getStatisticFields(){var e,t;let n=[];return(e=this.radiusAxisHelper)!=null&&e.getScale&&this._radiusField.forEach((e=>{let t={key:e,operations:[]};t.operations=qn(this.radiusAxisHelper.getScale(0).type)?[`max`,`min`]:[`values`],n.push(t)})),(t=this.angleAxisHelper)!=null&&t.getScale&&this._angleField.forEach((e=>{let t={key:e,operations:[]};t.operations=qn(this.angleAxisHelper.getScale(0).type)?[`max`,`min`]:[`values`],n.push(t)})),n}setAttrFromSpec(){super.setAttrFromSpec(),N(this._spec.outerRadius)&&(this._outerRadius=this._spec.outerRadius),N(this._spec.radius)&&(this._outerRadius=this._spec.radius),N(this._spec.innerRadius)&&(this._innerRadius=this._spec.innerRadius),N(this._spec.sortDataByAxis)&&(this._sortDataByAxis=!0===this._spec.sortDataByAxis)}onRadiusAxisHelperUpdate(){this.onMarkPositionUpdate()}onAngleAxisHelperUpdate(){this.onMarkPositionUpdate()}afterInitMark(){super.afterInitMark()}_computeLayoutRadius(){let e=this._angleAxisHelper||this._radiusAxisHelper;if(e)return e.layoutRadius();let{width:t,height:n}=this._region.getLayoutRect();return Math.min(t/2,n/2)}initEvent(){super.initEvent(),this.sortDataByAxis&&this.event.on(pe.scaleDomainUpdate,{filter:e=>e.model.id===this._angleAxisHelper?.getAxisId()},(()=>{this._sortDataInAxisDomain()}))}_sortDataInAxisDomain(){var e;(e=this.getViewData()?.latestData)!=null&&e.length&&te(this.angleAxisHelper,this._angleField[0],this.getViewData().latestData)}getInvalidCheckFields(){let e=[];return this.angleAxisHelper.isContinuous&&this._angleField.forEach((t=>{e.push(t)})),this.radiusAxisHelper.isContinuous&&this._radiusField.forEach((t=>{e.push(t)})),e}}})))()}function q(e){return Ze(e)?Number.parseFloat(e):0}var kr,Ar;function jr(){return(jr=e((()=>{re(),qe(),E(),R(),Bn(),kr=(e,t)=>{let{asStartAngle:n,asEndAngle:r,asMiddleAngle:i,asRadian:a,asRatio:o,asQuadrant:s,asK:c,showAllZero:l,supportNegative:u,showEmptyCircle:ee}=t,d=t.angleField(),f=t.startAngle(),te=t.endAngle(),p=t.minAngle(),m=e.map((e=>Object.assign({},e)));if(!m||m.length===0)return m;if(!l&&ee&&Ar(m,d,u))return[];let h=(e,t,o)=>{e[n]=t,e[r]=t+o,e[i]=t+o/2,e[a]=o,e[s]=Wn(t+o/2)},g=0,_=-1/0,v=!0;for(let e=0;e<m.length;e++){let t=u?Math.abs(q(m[e][d])):q(m[e][d]);g+=t,_=Math.max(t,_),v&&t!==0&&(v=!1),m[e][cn]=t}let ne=m.map((e=>Number(e[d]))),y=te-f,b=f,x=y,re=0,ie=Sn(ne);if(m.forEach(((e,t)=>{let n=e[cn],r=g?n/g:0,i=r*y;i<p?(i=p,x-=p):re+=n;let a=b,s=b+i;e[o]=r,e[c]=_?n/_:0,e._percent_=ie[t],h(e,a,i),b=s})),x<y){if(x<=.001){let e=y/m.length;m.forEach(((t,n)=>{h(t,f+n*e,e)}))}else{let e=x/re;b=f,m.forEach((t=>{let n=t[a]===p?p:t[cn]*e;h(t,b,n),b+=n}))}}if(g!==0&&(m[m.length-1][r]=te),v&&l){let e=y/m.length;m.forEach(((t,n)=>{h(t,f+n*e,e)}))}return m},Ar=(e,t,n)=>!!B(e)||e.length===0||!!e.every((e=>q(e[t])===0))||!n&&e.reduce(((e,n)=>e+q(n[t])),0)===0})))()}function Mr(e,t,n){return(r,i,a)=>t?e.growField===`radius`?{overall:0}:{overall:e.growFrom(r,i,n)}:{overall:!1}}function Nr(e,t){if(!1===t)return{};switch(t){case`fadeIn`:return Fr;case`growRadius`:return Pr(Object.assign(Object.assign({},e),{growField:`radius`}));default:return Pr(Object.assign(Object.assign({},e),{growField:`angle`}))}}var Pr,Fr,Ir,Lr,Rr,zr;function Br(){return(Br=e((()=>{we(),j(),qt(),Pr=e=>({type:e.growField===`radius`?`growRadiusIn`:`growAngleIn`,options:Mr(e,!0,C.appear)}),Fr={type:`fadeIn`},Ir=e=>({type:e.growField===`radius`?`growRadiusIn`:`growAngleIn`,easing:`linear`,options:Mr(e,!0,C.enter)}),Lr=e=>({type:e.growField===`radius`?`growRadiusOut`:`growAngleOut`,easing:`linear`,options:Mr(e,!0,C.exit)}),Rr=()=>{A.registerAnimation(`pie`,((e,t)=>({appear:Nr(e,t),enter:Ir(e),exit:Lr(e),disappear:{duration:Ct.disappear.duration}})))},zr=()=>{A.registerAnimation(`emptyCircle`,((e,t)=>({appear:Nr(e,t)})))}})))()}function Vr(e,t){var n;let r=t.options?.distance??10,i=er(t.duration)?t.duration/2:1e3,a=t.options.easing??`cubicOut`;return{oneByOne:t.oneByOne,loop:(n=t.loop)!=null&&n,timeSlices:[{duration:i,effects:{easing:a,channel:{x:{from:t=>e.getAttribute(`x`,t),to:t=>e.getAttribute(`x`,t)+I({x:0,y:0},r,t[k]).x},y:{from:t=>e.getAttribute(`y`,t),to:t=>e.getAttribute(`y`,t)+I({x:0,y:0},r,t[k]).y}}}},{duration:i,effects:{easing:a,channel:{x:{to:t=>e.getAttribute(`x`,t),from:t=>e.getAttribute(`x`,t)+I({x:0,y:0},r,t[k]).x},y:{to:t=>e.getAttribute(`y`,t),from:t=>e.getAttribute(`y`,t)+I({x:0,y:0},r,t[k]).y}}}}]}}function Hr(){return(Hr=e((()=>{E(),Xn(),Bn()})))()}var Ur;function Wr(){return(Wr=e((()=>{nt(),Ur=Object.assign(Object.assign({},h),{pie:{name:`pie`,type:`arc`},labelLine:{name:`labelLine`,type:`path`}})})))()}var Gr;function Kr(){return(Kr=e((()=>{Qn(),P(),ar(),Re(),Gr=class extends je{_transformLabelSpec(e){this._addMarkLabelSpec(e,`pie`)}_mergeThemeToSpec(e,t){let n=this._theme,r=e;if(this._shouldMergeThemeToSpec()){let n=this._getDefaultSpecFromChart(t);r=V({},this._theme,n,e);let i=(e,t)=>V({},e===`inside`||e===`inside-center`?this._theme.innerLabel:this._theme.outerLabel,t);Jn(r.label)?r.label=r.label.map((e=>i(e.position,e))):r.label=i(r.label.position,r.label)}return{spec:r,theme:n}}_getDefaultSpecFromChart(e){let t=super._getDefaultSpecFromChart(e)??{},{centerX:n,centerY:r}=e;return N(n)&&(t.centerX=n),N(r)&&(t.centerY=r),Object.keys(t).length>0?t:void 0}}})))()}var qr;function Jr(){return(Jr=e((()=>{ht(),qr=`${At}_LABEL_VISIBLE`})))()}var Yr;function Xr(){return(Xr=e((()=>{Yr={outerRadius:.6,pie:{style:{fillOpacity:1}},label:{visible:!1,interactive:!0,position:`outside`,style:{fontWeight:`normal`,stroke:{type:`palette`,key:`backgroundColor`},fillOpacity:1}},innerLabel:{style:{lineWidth:2}},emptyCircle:{style:{fill:{type:`palette`,key:`emptyCircleColor`},fillOpacity:1}}}})))()}var Zr,Qr,J,Y,$r;function ei(){return(ei=e((()=>{P(),R(),Bn(),tr(),E(),Vt(),an(),ht(),qe(),St(),En(),Or(),T(),jr(),Br(),ge(),we(),Hr(),Ve(),Wr(),j(),Kr(),Jr(),ue(),ee(),fn(),Qe(),Xr(),Zr={valueField:!0,angleField:!0,startAngle:!0,endAngle:!0,minAngle:!0},Qr={outerRadius:!0},J=class e extends Dr{constructor(){super(...arguments),this.transformerConstructor=Gr,this._pieMarkName=`pie`,this._pieMarkType=`arc`,this.getCenter=()=>{let e=this._region.getLayoutRect();return{x:yt(this._spec?.centerX,e.width,e,e.width/2),y:yt(this._spec?.centerY,e.height,e,e.height/2)}},this._startAngle=pn,this._endAngle=Wt,this._pieMark=null,this._labelMark=null,this._labelLineMark=null,this._emptyArcMark=null,this.dataToCentralPosition=e=>{let t=e[k];if(B(t))return null;let n=this.computeDatumRadius(e),r=this.computeDatumInnerRadius(e),i=this.computeCenter(e);return I(i,(n+r)/2,t)}}_buildMarkAttributeContext(){super._buildMarkAttributeContext(),this._markAttributeContext.getCenter=()=>({x:()=>this.getCenter().x,y:()=>this.getCenter().y}),this._markAttributeContext.startAngleScale=e=>this.startAngleScale(e),this._markAttributeContext.endAngleScale=e=>this.endAngleScale(e)}setAttrFromSpec(){var e,t,n;super.setAttrFromSpec(),this._centerOffset=this._spec.centerOffset??0,this._cornerRadius=this._spec.cornerRadius??0;let r=_(N(this._spec.startAngle)?z(this._spec.startAngle):this._startAngle,N(this._spec.endAngle)?z(this._spec.endAngle):this._endAngle);this._startAngle=r.startAngle,this._endAngle=r.endAngle,this._padAngle=N(this._spec.padAngle)?z(this._spec.padAngle):0,this.setAngleField(this._spec.valueField||this._spec.angleField),this._spec.categoryField&&this.setSeriesField(this._spec.categoryField),this._radiusField=[],this._specAngleField=this._angleField.slice(),this._specRadiusField=[],this._showEmptyCircle=(e=this._spec.emptyPlaceholder?.showEmptyCircle)!=null&&e,this._showAllZero=(t=this._spec.showAllZero)!=null&&t,this._supportNegative=(n=this._spec.supportNegative)!=null&&n}initData(){super.initData();let e=this.getViewData();if(!e)return;rt(this._dataSet,`pie`,kr),e.transform({type:`pie`,options:{angleField:()=>this._angleField[0],startAngle:()=>this._startAngle,endAngle:()=>this._endAngle,minAngle:()=>N(this._spec.minAngle)?z(this._spec.minAngle):0,asStartAngle:Xt,asEndAngle:wt,asRatio:gt,asMiddleAngle:k,asRadian:jt,asQuadrant:on,asK:dn,showAllZero:this._showAllZero,supportNegative:this._supportNegative,showEmptyCircle:this._showEmptyCircle}},!1);let t=new Yn(this._dataSet,{name:`${At}_series_${this.id}_viewDataLabel`});t.parse([this.getViewData()],{type:`dataview`}),this._viewDataLabel=new bn(this._option,t)}compileData(){var e;super.compileData(),(e=this._viewDataLabel)==null||e.compile()}initMark(){this._pieMark=this._createMark(Object.assign(Object.assign({},e.mark.pie),{name:this._pieMarkName,type:this._pieMarkType}),{key:un,groupKey:this._seriesField,isSeriesMark:!0},{morph:Ge(this._spec,this._pieMarkName),morphElementKey:this._seriesField}),this._showEmptyCircle&&(this._emptyArcMark=this._createMark({name:`emptyCircle`,type:`arc`},{dataView:!1}),this._data.addRelatedMark(this._emptyArcMark))}startAngleScale(e){return hn(Xt)(e)}endAngleScale(e){return hn(wt)(e)}_computeLayoutRadius(){return Ue((()=>this._spec.layoutRadius),this.getLayoutRect,this.getCenter,(()=>({startAngle:this._startAngle,endAngle:this._endAngle})))}initMarkStyle(){let e={x:()=>this.getCenter().x,y:()=>this.getCenter().y,fill:this.getColorAttribute(),outerRadius:Tt(this._outerRadius)?this._outerRadius:()=>this._computeLayoutRadius()*this._outerRadius,innerRadius:Tt(this._innerRadius)?this._innerRadius:()=>this._computeLayoutRadius()*this._innerRadius,cornerRadius:()=>this._computeLayoutRadius()*this._cornerRadius,startAngle:e=>this.startAngleScale(e),endAngle:e=>this.endAngleScale(e),padAngle:this._padAngle,centerOffset:this._centerOffset},t=this._pieMark;t&&this.setMarkStyle(t,e,`normal`,w.Series);let n=this._emptyArcMark;n&&this.setMarkStyle(n,Object.assign(Object.assign({},e),{visible:()=>{let e=this.getViewData().latestData;return!e||!e.length}}),`normal`,w.Series)}getInteractionTriggers(){return this._parseInteractionConfig(this._pieMark?[this._pieMark]:[])}initTooltip(){super.initTooltip(),this._pieMark&&this._tooltipHelper.activeTriggerSet.mark.add(this._pieMark)}initMarkStyleWithSpec(e,t){if(super.initMarkStyleWithSpec(e,t),e.name===this._pieMarkName){let t=this.getSpec()[e.name];if(t)for(let n in t.state||{})this.setMarkStyle(e,this.generateRadiusStyle(t.state[n]),n,w.User_Mark)}e.name===`emptyCircle`&&this.setMarkStyle(e,this.generateRadiusStyle(t.style),`normal`,w.User_Mark)}initLabelMarkStyle(e){e&&this.setMarkStyle(e,{visible:hn(qr).bind(this),text:e=>e[this.getDimensionField()[0]],fill:this.getColorAttribute(),z:this.dataToPositionZ.bind(this)})}afterInitMark(){super.afterInitMark()}initEvent(){var e;super.initEvent(),(e=this._viewDataLabel.getDataView())==null||e.target.addListener(`change`,this.viewDataLabelUpdate.bind(this))}initGroups(){}onLayoutEnd(){this._viewDataLabel.getDataView().reRunAllTransform(),this.onMarkPositionUpdate(),super.onLayoutEnd()}getDimensionField(){return this._seriesField?[this._seriesField]:[]}getMeasureField(){return this._specAngleField}viewDataLabelUpdate(){this.event.emit(pe.viewDataLabelUpdate,{model:this}),this._viewDataLabel.updateData()}generateRadiusStyle(e){if(!e)return;let t={};return e.outerRadius&&(t.outerRadius=()=>this._computeLayoutRadius()*e.outerRadius),e.innerRadius&&(t.innerRadius=()=>this._computeLayoutRadius()*e.innerRadius),e.cornerRadius&&(t.cornerRadius=()=>this._computeLayoutRadius()*e.cornerRadius),t}computeCenter(e){return{x:this._pieMark.getAttribute(`x`,e,`normal`),y:this._pieMark.getAttribute(`y`,e,`normal`)}}getRadius(e=`normal`){return(e===`normal`?this.getSpec()[this._pieMark?.name||`pie`]?.style?.outerRadius:this.getSpec()[this._pieMark?.name||`pie`]?.state?.[e]?.outerRadius)??this._outerRadius}getInnerRadius(e=`normal`){return(e===`normal`?this.getSpec()[this._pieMark?.name||`pie`]?.style?.innerRadius:this.getSpec()[this._pieMark?.name||`pie`]?.state?.[e]?.innerRadius)??this._innerRadius}computeRadius(e,t){return this._computeLayoutRadius()*e*(B(t)?1:t)+this._centerOffset}computeDatumRadius(e,t){return this._computeLayoutRadius()*this.getRadius(t)+this._centerOffset}_getSpecUpdatePolicy(){let e=super._getSpecUpdatePolicy();return Object.assign(Object.assign({},e),{compileOnlyKeys:Object.assign(Object.assign({},e.compileOnlyKeys),Qr),dataRelatedKeys:Object.assign(Object.assign({},e.dataRelatedKeys),Zr)})}_compareSpec(e,t,n){n??={data:!0};let r=[`centerX`,`centerY`,`centerOffset`,`radius`,`innerRadius`,`cornerRadius`,`startAngle`,`endAngle`,`padAngle`];r.forEach((e=>{n[e]=!0}));let i=super._compareSpec(e,t,n);return e??={},r.some((n=>e[n]!==t[n]))&&(i.reRender=!0,i.change=!0),i}computeDatumInnerRadius(e,t){return this._computeLayoutRadius()*this.getInnerRadius(t)+this._centerOffset}dataToPosition(e,t){let n=e[k];if(B(n)||t&&!this.isDatumInViewData(e))return null;let r=this.computeDatumRadius(e),i=this.computeCenter(e);return I(i,r,n)}initAnimation(){let e={growFrom:(e,t,n)=>{if(n===C.appear)return this._startAngle;if(n===C.disappear)return this._endAngle;let r=[C.disappear,C.exit],i=this._pieMark.getGraphics(),a=e?.[D];if(i.find((e=>e.context.data[0]?.[D]<a))===void 0)return this._startAngle;if(i.find((e=>e.context.data[0]?.[D]>a))===void 0)return this._endAngle;let o=[...i].reverse().find((e=>e.context.data[0]?.[D]<a));return r.includes(n)?o?.getFinalAttribute()?.endAngle:o?.attribute?.endAngle}},t=this._spec.animationAppear?.preset;if(this._pieMark){let n=S(A.getAnimationInKey(`pie`)?.(e,t),M(`pie`,this._spec,this._markAttributeContext));n.normal&&n.normal.type&&(n.normal=Vr(this._pieMark,n.normal)),this._pieMark.setAnimationConfig(n)}if(this._emptyArcMark){let n=S(A.getAnimationInKey(`emptyCircle`)?.(e,t??`fadeIn`));this._emptyArcMark.setAnimationConfig(n)}}getDefaultShapeType(){return`circle`}getGroupFields(){return[]}getStackGroupFields(){return[]}getStackValueField(){return``}_noAnimationDataKey(e,t){return t}getActiveMarks(){return[this._pieMark]}},J.transformerConstructor=Gr,J.mark=Ur,J.builtInTheme={pie:Yr},Y=class extends J{constructor(){super(...arguments),this.type=O.pie}},Y.type=O.pie,$r=()=>{l(),Rr(),zr(),A.registerSeries(Y.type,Y)}})))()}var ti;function ni(){return(ni=e((()=>{F(),Qn(),R(),P(),An(),ti=class extends Ke{_isValidSeries(e){return!this.seriesType||e===this.seriesType}getIndicatorSpec(e){let t=L(e.indicator),n=e.innerRadius??e.series?.[0]?.innerRadius;return N(n)&&t.forEach((e=>{B(e.limitRatio)&&(e.limitRatio=n)})),t}_getDefaultSeriesSpec(e,t){return super._getDefaultSeriesSpec(e,[`radius`,`outerRadius`,`innerRadius`,`startAngle`,`endAngle`,`centerX`,`centerY`,`sortDataByAxis`],t)}transformSpec(e){super.transformSpec(e),Jn(e.dataZoom)&&e.dataZoom.length>0&&e.dataZoom.forEach((e=>{e.filterMode===`axis`&&(e.filterMode=`filter`)})),this.transformSeriesSpec(e),N(e.indicator)&&(e.indicator=this.getIndicatorSpec(e))}}})))()}var X;function ri(){return(ri=e((()=>{ni(),X=class extends ti{needAxes(){return!1}_getDefaultSeriesSpec(e){let t=super._getDefaultSeriesSpec(e,[`center`,`centerOffset`,`cornerRadius`,`padAngle`,`minAngle`,`emptyPlaceholder`,`showAllZero`,`supportNegative`,`useSequentialAnimation`,`layoutRadius`]);return this._addSeriesRelatedSpecKeys([`valueField`,`angleField`]),t.categoryField=e.categoryField||e.seriesField,t.valueField=e.valueField||e.angleField,t.emptyCircle=e.emptyPlaceholder?.emptyCircle,t}}})))()}var ii;function ai(){return(ai=e((()=>{it(),ri(),ii=class extends g{constructor(){super(...arguments),this.transformerConstructor=X}},ii.transformerConstructor=X})))()}var Z,oi;function si(){return(si=e((()=>{ei(),T(),ai(),j(),ri(),wn(),Z=class extends ii{constructor(){super(...arguments),this.transformerConstructor=X,this.type=`pie`,this.seriesType=O.pie}},Z.type=`pie`,Z.seriesType=O.pie,Z.transformerConstructor=X,oi=()=>{Ye(),$r(),A.registerChart(Z.type,Z)}})))()}var ci;function li(){return(li=e((()=>{F(),zn(),ci=(e,t)=>{let{datum:n,title:r,content:i}=$n(t)?t():t,a=[],o=n.call(null);return r.visible&&a.push({type:`title`,index:0,datum:o,spec:r}),L(i).forEach(((e,t)=>{e.visible&&a.push({type:`content`,index:t,datum:o,spec:e})})),a}})))()}var ui,di;function fi(){return(fi=e((()=>{ui=(e,t)=>({fontSize:{type:`token`,key:e},fill:{type:`palette`,key:t},fontWeight:`normal`,fillOpacity:1,textBaseline:`top`,textAlign:`center`}),di={title:{visible:!0,autoLimit:!1,autoFit:!1,style:ui(`l1FontSize`,`primaryFontColor`)},content:{visible:!0,style:ui(`l2FontSize`,`tertiaryFontColor`)}}})))()}var pi,Q,mi;function hi(){return(hi=e((()=>{tr(),Oe(),zt(),ut(),ar(),ve(),fn(),Gn(),P(),zn(),F(),Vn(),li(),Qe(),or(),j(),Mt(),tn(),fi(),pi=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n},Q=class extends st{constructor(){super(...arguments),this.type=Pe.indicator,this.name=Pe.indicator,this.specKey=`indicator`,this.layoutType=`none`,this.layoutZIndex=It.Indicator,this.layoutLevel=p.Indicator,this._gap=0,this._activeDatum=null}static getSpecInfo(e){return sn(e,this.specKey,this.type,(e=>e&&!1!==e.visible))}created(){super.created(),this.initData(),this.initEvent()}setAttrFromSpec(){super.setAttrFromSpec(),this._gap=this._spec.gap||0,this._title=this._spec.title,this._content=L(this._spec.content),this._regions=this._option.getRegionsInUserIdOrIndex(L(this._spec.regionId),L(this._spec.regionIndex))}_compareSpec(e,t){let n=super._compareSpec(e,t);return Kn(t,e)||n.reMake||n.reCompile||(n.change=!0,n.reRender=!0,n.effects=Object.assign(Object.assign({},n.effects),{component:!0,layout:!0,render:!0})),n}initEvent(){this._option.disableTriggerEvent||this._spec.trigger!==`none`&&(this._spec.trigger===`hover`?(this.event.on(`element-highlight:start`,(e=>{let t=e.graphics[0];this.isRelativeModel(t)&&this.updateDatum(xe(t))})),this.event.on(`element-highlight:reset`,(e=>{this._activeDatum&&this.updateDatum(null)}))):(this.event.on(`element-select:start`,(e=>{let t=e.graphics[0];this.isRelativeModel(t)&&this.updateDatum(xe(t))})),this.event.on(`element-select:reset`,(e=>{this._activeDatum&&this.updateDatum(null)}))))}updateDatum(e){this._activeDatum=e,this._displayData.updateData();let t=this._getIndicatorAttrs();this._createOrUpdateIndicatorComponent(t)}initData(){rt(this._option.dataSet,`indicatorFilter`,ci);let e=new Yn(this._option.dataSet,{name:`${this.type}_${this.id}_data`});e.transform({type:`indicatorFilter`,options:()=>({title:this._title,content:this._content,datum:()=>this._activeDatum})}),e.target.addListener(`change`,this.updateDatum.bind(this)),this._displayData=new bn(this._option,e)}updateLayoutAttribute(){let e=this._getIndicatorAttrs();this._createOrUpdateIndicatorComponent(e),super.updateLayoutAttribute()}_getIndicatorAttrs(){if(!1===this._spec.visible||!1===this._spec.fixed&&this._activeDatum===null)return{visible:!1};let e=this._regions[0],{width:t,height:n}=e.getLayoutRect(),{x:r,y:i}=e.getLayoutStartPoint(),a=this._spec,{content:o,offsetX:s,offsetY:c,limitRatio:l,title:u}=a,ee=pi(a,[`content`,`offsetX`,`offsetY`,`limitRatio`,`title`]),d=[];return L(o).forEach((e=>{let t=V({},this._theme.content,e);d.push({visible:!1!==t.visible&&(!t.field||this._activeDatum!==null),space:t.space||this._gap,autoLimit:t.autoLimit,autoFit:t.autoFit,fitPercent:t.fitPercent,fitStrategy:t.fitStrategy,style:Object.assign(Object.assign({},ct(Un(t.style,[`text`]),this._activeDatum)),{text:this._createText(t.field,t.style.text)})})})),Object.assign({visible:!0,size:{width:t,height:n},zIndex:this.layoutZIndex,x:r,y:i,dx:s?Ut(s,this._computeLayoutRadius()):0,dy:c?Ut(c,this._computeLayoutRadius()):0,limitRatio:l||1/0,title:{visible:!1!==u.visible&&(!N(u.field)||this._activeDatum!==null),space:u.space||this._gap,autoLimit:u.autoLimit,autoFit:u.autoFit,fitPercent:u.fitPercent,fitStrategy:u.fitStrategy,style:Object.assign(Object.assign({},ct(Un(u.style,[`text`]),this._activeDatum)),{text:this._createText(u.field,u.style.text)})},content:d},ee)}_createOrUpdateIndicatorComponent(e){if(!1===e.visible)return this._indicatorComponent&&this._indicatorComponent.parent&&this._indicatorComponent.parent.removeChild(this._indicatorComponent),void(this._indicatorComponent=null);if(this._indicatorComponent)Kn(e,this._cacheAttrs)||this._indicatorComponent.setAttributes(e);else{let t=this.getContainer(),n=new nr(e);n.name=`indicator`,t.add(n),this._indicatorComponent=n,this._indicatorComponent.on(`*`,((e,t)=>this._delegateEvent(this._indicatorComponent,e,t)))}this._cacheAttrs=e}_createText(e,t){return e?this._activeDatum?this._activeDatum[e]:``:$n(t)?t(this._activeDatum,void 0)??``:t??``}_computeLayoutRadius(){let{width:e,height:t}=this._regions[0].getLayoutRect();return Math.min(e/2,t/2)}isRelativeModel(e){return this._regions.some((t=>!!t.getSeriesInId(e.context.modelId)))}_getNeedClearVRenderComponents(){return[this._indicatorComponent]}clear(){this._cacheAttrs=null,super.clear()}getIndicatorComponent(){return this._indicatorComponent}},Q.type=Pe.indicator,Q.builtInTheme={indicator:di},Q.specKey=`indicator`,mi=()=>{A.registerComponent(Q.type,Q)}})))()}var gi;function _i(){return(_i=e((()=>{xt(),Er(),he(),Le(),ne(),yn(),gi=x(`AreaChart`,{type:`area`,vchartConstructor:ln},[Tr,Ce,oe,...Xe])})))()}var vi;function yi(){return(yi=e((()=>{at(),be(),fe(),We(),Ee(),d(),Ne(),Gt(),ir(),vi=[mn,rr,et,Nt,en,le,Ae,Rt,kn]})))()}var bi;function xi(){return(xi=e((()=>{xt(),si(),hi(),he(),ne(),yi(),bi=x(`PieChart`,{type:`pie`,vchartConstructor:ln},[oi,Ce,mi,...vi])})))()}function Si({height:e=260,text:t=`暂无数据`,tone:n=`muted`}){return/* @__PURE__ */ U(`div`,{style:{height:e,display:`flex`,alignItems:`center`,justifyContent:`center`,color:n===`success`?`var(--arc-antd-color-success)`:`var(--arc-antd-color-text-2)`,fontSize:13},children:t})}function Ci(){return(Ci=e((()=>{})))()}var wi,Ti;function Ei(){return(Ei=e((()=>{Pt(),jn(),wi=[{key:`list`,title:`日志列表`,description:`查询、筛选和查看日志`,icon:Mn},{key:`stats`,title:`统计分析`,description:`趋势与分布统计`,icon:f}],Ti=wi.map(e=>e.key)})))()}function Di(e,t=`日志`){return e===0?`清除全部${t}`:`清除${ki[e]??`${e} 天前`}的${t}`}function Oi({clean:e,onCleared:t}){let[n,r]=cr(!1),[i,a]=cr(0),[o,s]=cr(!1);return{modalVisible:n,days:i,verifying:o,openClearModal:e=>{a(e),r(!0)},closeModal:()=>r(!1),confirmClear:async()=>{if(!o){s(!0);try{await e(i),r(!1),c.success(i===0?`历史日志已清除`:`已清除${ki[i]??`${i} 天前`}的日志,最近 ${i} 天的记录已保留`),t?.()}finally{s(!1)}}}}}var ki,$;function Ai(){return(Ai=e((()=>{r(),ki={30:`一个月前`,90:`三个月前`,180:`六个月前`,365:`一年前`},$=[0,365,180,90,30]})))()}function ji({loading:e,onClear:n,label:r=`日志`}){return sr(ur)===`mobile-actions`?/* @__PURE__ */ U(H,{children:$.map(t=>/* @__PURE__ */ U(o,{type:`danger`,theme:`light`,icon:/* @__PURE__ */ U(Pn,{size:14}),loading:e,onClick:()=>n(t),children:Di(t,r)},t))}):/* @__PURE__ */ W(t,{children:[/* @__PURE__ */ U(o,{type:`danger`,theme:`light`,icon:/* @__PURE__ */ U(Pn,{size:14}),loading:e,onClick:()=>n($[0]),children:Di($[0],r)}),/* @__PURE__ */ U(s,{trigger:`click`,position:`bottomRight`,clickToHide:!0,render:/* @__PURE__ */ U(s.Menu,{children:$.map(t=>/* @__PURE__ */ U(s.Item,{disabled:e,onClick:()=>n(t),children:Di(t,r)},t))}),children:/* @__PURE__ */ U(o,{type:`danger`,theme:`light`,disabled:e,"aria-label":`选择清除${r}范围`,icon:/* @__PURE__ */ U(Fn,{size:14})})})]})}function Mi({logName:e,control:t}){return/* @__PURE__ */ U(Rn,{title:Di(t.days,e),visible:t.modalVisible,onCancel:t.closeModal,okText:`确认清除`,okButtonProps:{type:`danger`,loading:t.verifying},onOk:t.confirmClear,maskClosable:!1,children:/* @__PURE__ */ W(`p`,{style:{marginBottom:12},children:[`此操作将永久删除当前数据权限范围内`,t.days===0?`的全部${e}`:`${ki[t.days]??`${t.days} 天前`}的${e}`,`,不可恢复。`,t.days>0&&/* @__PURE__ */ W(H,{children:[/* @__PURE__ */ U(`br`,{}),`最近 `,t.days,` 天的记录将保留。`]}),e===`操作日志`&&/* @__PURE__ */ W(H,{children:[/* @__PURE__ */ U(`br`,{}),`本次清除操作仍会生成一条操作日志。`]})]})})}function Ni(){return(Ni=e((()=>{r(),In(),Nn(),Ln(),Ai()})))()}function Pi(e){let t=Array(7).fill(0);for(let n of e??[])t[(lr(n.date).day()+6)%7]+=n.count;return Hi.map((e,n)=>({name:e,count:t[n]}))}function Fi(e,t){return t>0?e-t:null}function Ii(e){return e==null||e.total===0?null:(e.successCount/e.total*100).toFixed(1)}function Li(e,t){return e&&t&&e.total>0&&t.total>0?e.successCount/e.total-t.successCount/t.total:null}function Ri(){return/* @__PURE__ */ U(i,{loading:!0,active:!0,placeholder:/* @__PURE__ */ W(H,{children:[/* @__PURE__ */ U(Jt,{style:{marginBottom:16},children:Array.from({length:4},(e,t)=>`sk-stat-${t}`).map(e=>/* @__PURE__ */ W(`div`,{children:[/* @__PURE__ */ U(i.Title,{style:{width:64,height:26,marginBottom:10}}),/* @__PURE__ */ U(i.Paragraph,{rows:1,style:{width:80,marginBottom:0}})]},e))}),/* @__PURE__ */ W(`div`,{className:`zx-panel`,style:{marginBottom:16},children:[/* @__PURE__ */ U(i.Title,{style:{width:180,height:14,marginBottom:16}}),/* @__PURE__ */ U(i.Image,{style:{width:`100%`,height:230}})]}),/* @__PURE__ */ U(`div`,{className:`chart-grid`,children:[`sk-chart-a`,`sk-chart-b`].map(e=>/* @__PURE__ */ W(`div`,{className:`zx-panel`,children:[/* @__PURE__ */ U(i.Title,{style:{width:120,height:14,marginBottom:16}}),/* @__PURE__ */ U(i.Image,{style:{width:`100%`,height:260}})]},e))})]}),children:null})}function zi({days:e,onDaysChange:t,loading:r,fetching:i,children:o}){return/* @__PURE__ */ W(`div`,{children:[/* @__PURE__ */ U(`div`,{style:{display:`flex`,justifyContent:`flex-end`,marginBottom:16},children:/* @__PURE__ */ U(a,{value:e,onChange:e=>t(e),style:{width:140},children:Vi.map(e=>/* @__PURE__ */ U(a.Option,{value:e.value,children:e.label},e.value))})}),r?/* @__PURE__ */ U(Ri,{}):/* @__PURE__ */ U(n,{spinning:i,children:o})]})}function Bi({title:e,children:t,danger:n}){return/* @__PURE__ */ W(`div`,{className:`zx-panel`,children:[/* @__PURE__ */ U(`div`,{style:{...Tn,color:n?`var(--arc-antd-color-danger)`:Tn.color},children:e}),t]})}var Vi,Hi;function Ui(){return(Ui=e((()=>{r(),dt(),rn(),Vi=[{label:`最近 7 天`,value:7},{label:`最近 30 天`,value:30},{label:`最近 90 天`,value:90}],Hi=[`周一`,`周二`,`周三`,`周四`,`周五`,`周六`,`周日`]})))()}export{gi as C,Sr as D,$r as E,xr as O,vi as S,ei as T,Si as _,Li as a,xi as b,Pi as c,Ni as d,Ai as f,Ei as g,Ti as h,Ii as i,ji as l,wi as m,zi as n,Fi as o,Oi as p,Hi as r,Ui as s,Bi as t,Mi as u,Ci as v,_i as w,yi as x,bi as y};
|
|
2
|
-
//# sourceMappingURL=LogStatsScaffold-
|
|
1
|
+
import{n as e}from"./rolldown-runtime-Bruge11p.js";import{D as t,E as n,M as r,Pt as i,Ut as a,m as o,y as s}from"./clipboard-dpqHdCyy.js";import{i as c}from"./feedback-B1UL2ETz.js";import{$ as l,$n as u,$t as ee,A as d,Ai as f,An as te,Ar as p,At as m,Bn as h,Bt as g,Ci as _,Ct as v,D as ne,Dn as y,Dt as b,E as x,Ei as re,En as ie,Et as ae,F as oe,Fn as S,Fr as se,Ft as ce,G as le,Gr as ue,Gt as de,H as fe,Hr as pe,Ht as me,I as he,In as ge,Ir as C,It as _e,Jr as ve,Jt as ye,K as be,Kr as xe,Kt as Se,L as Ce,Lr as we,Lt as Te,M as Ee,Mn as De,Mr as Oe,Mt as ke,N as Ae,Nn as je,Nt as Me,O as Ne,Oi as Pe,On as Fe,Or as w,Ot as Ie,P as Le,Pn as Re,Pr as ze,Pt as Be,Q as Ve,Qn as He,Qt as Ue,R as We,Rn as Ge,Rt as Ke,Si as qe,Sn as Je,St as Ye,T as Xe,Ti as Ze,Tr as Qe,Tt as $e,U as et,Ut as tt,Vn as nt,Vr as rt,Vt as it,W as at,Wt as ot,Xt as st,Yr as ct,Yt as lt,Zt as ut,_ as dt,_i as T,_n as ft,_r as pt,_t as mt,ai as ht,an as gt,bn as _t,bt as vt,ci as yt,cn as bt,cr as xt,di as St,dn as E,dr as Ct,ei as D,en as wt,fi as Tt,fn as Et,gi as O,gn as Dt,hn as Ot,hr as kt,ii as At,in as jt,ir as Mt,j as Nt,ji as Pt,jn as Ft,jr as It,jt as Lt,k as Rt,ki as zt,kn as Bt,kr as Vt,kt as Ht,li as Ut,ln as Wt,lr as Gt,mn as Kt,mr as qt,n as Jt,ni as Yt,nn as k,oi as A,on as Xt,or as Zt,pi as Qt,pn as $t,q as en,qr as tn,qt as nn,r as rn,ri as an,rn as on,rr as sn,si as j,sn as cn,sr as ln,ti as un,tn as dn,ui as fn,un as pn,ur as mn,vi as hn,vn as gn,vr as _n,vt as vn,w as yn,wr as bn,wt as xn,xi as Sn,xn as Cn,xt as wn,y as Tn,yi as En,yn as Dn,yt as On,z as kn,zn as M,zt as An}from"./StatCard-BROG4NSp.js";import{n as jn,t as Mn}from"./list-wgUaW69x.js";import{n as Nn,t as Pn}from"./trash-Ay_Vtz4n.js";import{B as Fn,V as In}from"./App-CfQx7jWq.js";import{n as Ln,t as Rn}from"./AppModal-CVoUC2t3.js";import{Ar as zn,Dr as N,Er as P,Ft as Bn,Gn as Vn,Hn,In as F,Kn as Un,Lt as I,Nn as L,Nt as Wn,Or as R,Pt as z,Un as Gn,Wn as Kn,_ as qn,_r as Jn,b as Yn,cr as Xn,g as Zn,gr as Qn,jr as $n,kr as B,lr as er,x as tr}from"./chart-data-DI8rr6W3.js";import{a as nr,ar as rr,ir,ln as ar,o as or,un as V}from"./chart-renderer-Dl8qlg1n.js";import{useContext as sr,useState as cr}from"react";import{Fragment as H,jsx as U,jsxs as W}from"react/jsx-runtime";import lr from"dayjs";import{ToolbarSlotContext as ur}from"@fudanda/admin-antd/core/components/toolbar-slot-context";var dr;function fr(){return(fr=e((()=>{u(),F(),P(),dr=class extends He{constructor(){super(...arguments),this._getSeriesStyle=(e,t,n)=>{for(let n of L(t)){let t=this.series.getSeriesStyle(e)?.(n);if(!1!==t||n!==`fill`&&n!==`stroke`||(t=n===`fill`?this.series.getSeriesStyle(e)?.(`stroke`)?.[0]:this.series.getSeriesStyle(e)?.(`fill`)),N(t))return t}return n}}}})))()}var pr;function mr(){return(mr=e((()=>{nt(),Cn(),pr=Object.assign(Object.assign(Object.assign({},h),Je),{area:{name:`area`,type:`area`}})})))()}var hr;function gr(){return(gr=e((()=>{qt(),hr=()=>{kt(),pt(),_n()}})))()}var _r;function vr(){return(vr=e((()=>{P(),$t(),ar(),_r=class extends Et{constructor(){super(...arguments),this._supportStack=!0}_transformLabelSpec(e){let t=!1!==e.point?.visible&&!1!==e.point?.style?.visible;this._addMarkLabelSpec(e,(e=>{let n=e.position===`inside-middle`;return!t||n?`area`:`point`})),this._addMarkLabelSpec(e,`area`,`areaLabel`,`initLineLabelMarkStyle`,void 0,!0)}_transformSpecAfterMergingTheme(e,t,n){var r;super._transformSpecAfterMergingTheme(e,t,n);let{area:i={},line:a={},seriesMark:o}=e,s=!1!==i.visible&&!1!==i.style?.visible,c=!1!==a.visible&&!1!==a.style?.visible;i.support3d=!(!i.support3d&&!a.support3d),i.zIndex=N(i.zIndex)||N(a.zIndex)?Math.max(i.zIndex??0,a.zIndex??0):void 0,i.style&&delete i.style.stroke,i.state&&Object.keys(i.state).forEach((e=>{`style`in i.state[e]?delete i.state[e].style.stroke:delete i.state[e].stroke}));let l=i,u=a;(o===`line`||c&&!s)&&(l=a,u=i),i.style=V({},u.style,l.style),i.state=V({},u.state,l.state),!1===i.interactive&&(i.style.fillPickable=!1),!1===a.interactive&&(a.style.strokePickable=!1),i.interactive=!(!i.interactive&&(r=a.interactive)!=null&&!r),e.area=i,e.line=a}}})))()}var yr;function br(){return(br=e((()=>{yr={label:{visible:!1,offset:5,position:`top`,style:{stroke:{type:`palette`,key:`backgroundColor`},lineWidth:2}},point:{style:{symbolType:`circle`}},seriesMark:`area`}})))()}var G,xr;function Sr(){return(Sr=e((()=>{Qn(),_t(),y(),Vt(),St(),T(),ge(),Zt(),Dt(),mt(),Kt(),fr(),mr(),j(),gr(),vr(),Bt(),Se(),ye(),an(),ot(),me(),br(),G=class e extends ie{constructor(){super(...arguments),this.type=O.area,this.transformerConstructor=_r,this._sortDataByAxis=!1}_getSpecUpdatePolicy(){let e=super._getSpecUpdatePolicy();return Object.assign(Object.assign({},e),{dataRelatedKeys:Object.assign(Object.assign({},e.dataRelatedKeys),gn)})}initMark(){let t=this._spec.seriesMark??`area`,n=this._isAreaVisible()||this._isLineVisible();this._areaMark=this._createMark(e.mark.area,{groupKey:this._seriesField,isSeriesMark:n&&t!==`point`},{morphElementKey:this.getDimensionField()[0]}),this.initSymbolMark(t===`point`)}initMarkStyle(){this.initAreaMarkStyle(),this.initSymbolMarkStyle()}initAreaMarkStyle(){let e=this.getSpec().area?.style?.curveType??this.getSpec().line?.style?.curveType,t=e===`monotone`?this._direction===`horizontal`?`monotoneY`:`monotoneX`:e,n=this._areaMark;if(n){let e=this._isAreaVisible(),r=this._isLineVisible();e||r?n.setVisible(!0):n.setVisible(!1),this._direction===`horizontal`?this.setMarkStyle(this._areaMark,{x:this.dataToPositionX.bind(this),x1:e=>{var t;return Qt(this.dataToPositionX1(e),((t=this._xAxisHelper)?.getScale)?.call(t,0))},y:this.dataToPositionY.bind(this),y1:this.dataToPositionY.bind(this),z:this._fieldZ?this.dataToPositionZ.bind(this):null,orient:this._direction},`normal`,w.Series):this.setMarkStyle(this._areaMark,{x:this.dataToPositionX.bind(this),x1:this.dataToPositionX.bind(this),y1:e=>{var t;return Qt(this.dataToPositionY1(e),((t=this._yAxisHelper)?.getScale)?.call(t,0))},y:this.dataToPositionY.bind(this),z:this._fieldZ?this.dataToPositionZ.bind(this):null},`normal`,w.Series),this.setMarkStyle(n,{fill:!!e&&this.getColorAttribute(),stroke:!!r&&this.getColorAttribute()},`normal`,w.Series),this._invalidType!==`zero`&&this.setMarkStyle(n,{defined:this._getInvalidDefined.bind(this),connectedType:this._getInvalidConnectType()},`normal`,w.Series),this.getStack()&&this.setMarkStyle(n,{zIndex:e=>-e[Yt]},`normal`,w.Series),this.setMarkStyle(n,{curveType:t},`normal`,w.Built_In),Object.keys(n.stateStyle).forEach((e=>{n.stateStyle[e].stroke&&n.setPostProcess(`stroke`,(e=>[e,!1,!1,!1]),e)}))}}initAnimation(){let e={direction:this.direction},t=this._spec.animationAppear?.preset;if(this._lineMark&&this._lineMark.setAnimationConfig(S(A.getAnimationInKey(`line`)?.(e,t),M(`line`,this._spec,this._markAttributeContext))),this._areaMark&&this._areaMark.setAnimationConfig(S(A.getAnimationInKey(`area`)?.(e,t),M(`area`,this._spec,this._markAttributeContext))),this._symbolMark){let e=Fe(this);this._symbolMark.setAnimationConfig(S(A.getAnimationInKey(`scaleInOut`)?.(),M(`point`,this._spec,this._markAttributeContext),e))}}_isAreaVisible(){let e=this._spec.area||{};return!1!==e.visible&&!1!==e.style?.visible}_isLineVisible(){let e=this._spec.line||{};return!1!==e.visible&&!1!==e.style?.visible}initTooltip(){this._tooltipHelper=new dr(this);let{group:e,mark:t}=this._tooltipHelper.activeTriggerSet;this._areaMark&&e.add(this._areaMark),this._lineMark&&e.add(this._lineMark),this._symbolMark&&(t.add(this._symbolMark),e.add(this._symbolMark))}viewDataStatisticsUpdate(e){super.viewDataStatisticsUpdate(e),this.encodeDefined(this._areaMark,`defined`)}compile(){super.compile(),this.addSamplingCompile(),this.addOverlapCompile()}getDefaultShapeType(){return`square`}getActiveMarks(){return[this._areaMark,this._symbolMark,this._lineMark]}onLayoutEnd(){super.onLayoutEnd(),this.reCompileSampling()}getSeriesStyle(e){return t=>{let n=this._spec.seriesMark??`area`,r=this._seriesMark?.getAttribute(t,e)??void 0;return t!==`fill`||r&&n!==`line`||(t=`stroke`,r=this._seriesMark?.getAttribute(t,e)??void 0),t===`stroke`&&Jn(r)?r[0]:r}}},G.type=O.area,G.builtInTheme={area:yr},G.mark=pr,G.transformerConstructor=_r,Hn(G,Dn),xr=()=>{tt(),de(),ft(),vn(),Ot(),hr(),lt(),nn(),A.registerSeries(G.type,G)}})))()}var Cr;function wr(){return(wr=e((()=>{Te(),ze(),Cr=class extends _e{_getDefaultSeriesSpec(e){return super._getDefaultSeriesSpec(e,[`point`,`line`,`area`,`seriesMark`,`activePoint`,`sampling`,`samplingFactor`,`pointDis`,`pointDisMul`,`markOverlap`,`areaLabel`,`useSequentialAnimation`])}transformSpec(e){super.transformSpec(e),se(e)}}})))()}var K,Tr;function Er(){return(Er=e((()=>{Sr(),T(),j(),wr(),it(),ce(),ke(),m(),Ht(),ae(),v(),wn(),On(),K=class extends g{constructor(){super(...arguments),this.transformerConstructor=Cr,this.type=`area`,this.seriesType=O.area}_setModelOption(){this._modelOption.getDimensionInfo=b,this._modelOption.getDimensionInfoByValue=Ie,this._modelOption.getRectByDimensionData=$e}},K.type=`area`,K.seriesType=O.area,K.transformerConstructor=Cr,Hn(K,Be),Tr=()=>{xn(),Ye(),vt(),Me(),xr(),Lt(),A.registerChart(K.type,K)}})))()}var Dr;function Or(){return(Or=e((()=>{F(),P(),R(),Zn(),E(),De(),Bt(),ue(),Dr=class extends Ft{constructor(){super(...arguments),this.coordinate=`polar`,this._outerRadius=bt,this._innerRadius=0,this._angleField=[],this._radiusField=[],this._sortDataByAxis=!1}get outerRadius(){return this._outerRadius}get innerRadius(){return this._innerRadius}getAngleField(){return this._angleField}setAngleField(e){return this._angleField=N(e)?L(e):[],this._angleField}getRadiusField(){return this._radiusField}setRadiusField(e){return this._radiusField=N(e)?L(e):[],this._radiusField}get innerRadiusField(){return this._innerRadiusField}setInnerRadiusField(e){return this._innerRadiusField=L(e),this._innerRadiusField}get radiusScale(){return this._radiusScale}setRadiusScale(e){return this._radiusScale=e,e}get angleScale(){return this._angleScale}setAngleScale(e){return this._angleScale=e,e}get angleAxisHelper(){return this._angleAxisHelper}set angleAxisHelper(e){this._angleAxisHelper=e,this.onAngleAxisHelperUpdate()}get radiusAxisHelper(){return this._radiusAxisHelper}set radiusAxisHelper(e){this._radiusAxisHelper=e,this.onRadiusAxisHelperUpdate()}get sortDataByAxis(){return this._sortDataByAxis}_buildMarkAttributeContext(){super._buildMarkAttributeContext(),this._markAttributeContext.valueToPosition=this.valueToPosition.bind(this),this._markAttributeContext.getCenter=()=>this.angleAxisHelper.center(),this._markAttributeContext.getLayoutRadius=()=>this._computeLayoutRadius()}valueToPosition(e,t){if(B(e)||B(t)||!this.angleAxisHelper||!this.radiusAxisHelper)return{x:NaN,y:NaN};let n=this.radiusAxisHelper.dataToPosition(L(t));if(n<0){if(this._invalidType===`break`||this._invalidType===`link`)return{x:NaN,y:NaN};if(this._invalidType===`zero`)return this.angleAxisHelper.center()}let r=this.angleAxisHelper.dataToPosition(L(e));return this.angleAxisHelper.coordToPoint({angle:r,radius:n})}dataToPosition(e,t){return e&&this.angleAxisHelper&&this.radiusAxisHelper?t&&!this.isDatumInViewData(e)?null:this.valueToPosition(this.getDatumPositionValues(e,this._angleField),this.getDatumPositionValues(e,this._radiusField)):null}dataToPositionX(e){return this.dataToPosition(e)?.x}dataToPositionY(e){return this.dataToPosition(e)?.y}dataToPositionZ(e){return 0}positionToData(e){}radiusToData(e){}angleToData(e){}getStatisticFields(){var e,t;let n=[];return(e=this.radiusAxisHelper)!=null&&e.getScale&&this._radiusField.forEach((e=>{let t={key:e,operations:[]};t.operations=qn(this.radiusAxisHelper.getScale(0).type)?[`max`,`min`]:[`values`],n.push(t)})),(t=this.angleAxisHelper)!=null&&t.getScale&&this._angleField.forEach((e=>{let t={key:e,operations:[]};t.operations=qn(this.angleAxisHelper.getScale(0).type)?[`max`,`min`]:[`values`],n.push(t)})),n}setAttrFromSpec(){super.setAttrFromSpec(),N(this._spec.outerRadius)&&(this._outerRadius=this._spec.outerRadius),N(this._spec.radius)&&(this._outerRadius=this._spec.radius),N(this._spec.innerRadius)&&(this._innerRadius=this._spec.innerRadius),N(this._spec.sortDataByAxis)&&(this._sortDataByAxis=!0===this._spec.sortDataByAxis)}onRadiusAxisHelperUpdate(){this.onMarkPositionUpdate()}onAngleAxisHelperUpdate(){this.onMarkPositionUpdate()}afterInitMark(){super.afterInitMark()}_computeLayoutRadius(){let e=this._angleAxisHelper||this._radiusAxisHelper;if(e)return e.layoutRadius();let{width:t,height:n}=this._region.getLayoutRect();return Math.min(t/2,n/2)}initEvent(){super.initEvent(),this.sortDataByAxis&&this.event.on(pe.scaleDomainUpdate,{filter:e=>e.model.id===this._angleAxisHelper?.getAxisId()},(()=>{this._sortDataInAxisDomain()}))}_sortDataInAxisDomain(){var e;(e=this.getViewData()?.latestData)!=null&&e.length&&te(this.angleAxisHelper,this._angleField[0],this.getViewData().latestData)}getInvalidCheckFields(){let e=[];return this.angleAxisHelper.isContinuous&&this._angleField.forEach((t=>{e.push(t)})),this.radiusAxisHelper.isContinuous&&this._radiusField.forEach((t=>{e.push(t)})),e}}})))()}function q(e){return Ze(e)?Number.parseFloat(e):0}var kr,Ar;function jr(){return(jr=e((()=>{re(),qe(),E(),R(),Bn(),kr=(e,t)=>{let{asStartAngle:n,asEndAngle:r,asMiddleAngle:i,asRadian:a,asRatio:o,asQuadrant:s,asK:c,showAllZero:l,supportNegative:u,showEmptyCircle:ee}=t,d=t.angleField(),f=t.startAngle(),te=t.endAngle(),p=t.minAngle(),m=e.map((e=>Object.assign({},e)));if(!m||m.length===0)return m;if(!l&&ee&&Ar(m,d,u))return[];let h=(e,t,o)=>{e[n]=t,e[r]=t+o,e[i]=t+o/2,e[a]=o,e[s]=Wn(t+o/2)},g=0,_=-1/0,v=!0;for(let e=0;e<m.length;e++){let t=u?Math.abs(q(m[e][d])):q(m[e][d]);g+=t,_=Math.max(t,_),v&&t!==0&&(v=!1),m[e][cn]=t}let ne=m.map((e=>Number(e[d]))),y=te-f,b=f,x=y,re=0,ie=Sn(ne);if(m.forEach(((e,t)=>{let n=e[cn],r=g?n/g:0,i=r*y;i<p?(i=p,x-=p):re+=n;let a=b,s=b+i;e[o]=r,e[c]=_?n/_:0,e._percent_=ie[t],h(e,a,i),b=s})),x<y){if(x<=.001){let e=y/m.length;m.forEach(((t,n)=>{h(t,f+n*e,e)}))}else{let e=x/re;b=f,m.forEach((t=>{let n=t[a]===p?p:t[cn]*e;h(t,b,n),b+=n}))}}if(g!==0&&(m[m.length-1][r]=te),v&&l){let e=y/m.length;m.forEach(((t,n)=>{h(t,f+n*e,e)}))}return m},Ar=(e,t,n)=>!!B(e)||e.length===0||!!e.every((e=>q(e[t])===0))||!n&&e.reduce(((e,n)=>e+q(n[t])),0)===0})))()}function Mr(e,t,n){return(r,i,a)=>t?e.growField===`radius`?{overall:0}:{overall:e.growFrom(r,i,n)}:{overall:!1}}function Nr(e,t){if(!1===t)return{};switch(t){case`fadeIn`:return Fr;case`growRadius`:return Pr(Object.assign(Object.assign({},e),{growField:`radius`}));default:return Pr(Object.assign(Object.assign({},e),{growField:`angle`}))}}var Pr,Fr,Ir,Lr,Rr,zr;function Br(){return(Br=e((()=>{we(),j(),qt(),Pr=e=>({type:e.growField===`radius`?`growRadiusIn`:`growAngleIn`,options:Mr(e,!0,C.appear)}),Fr={type:`fadeIn`},Ir=e=>({type:e.growField===`radius`?`growRadiusIn`:`growAngleIn`,easing:`linear`,options:Mr(e,!0,C.enter)}),Lr=e=>({type:e.growField===`radius`?`growRadiusOut`:`growAngleOut`,easing:`linear`,options:Mr(e,!0,C.exit)}),Rr=()=>{A.registerAnimation(`pie`,((e,t)=>({appear:Nr(e,t),enter:Ir(e),exit:Lr(e),disappear:{duration:Ct.disappear.duration}})))},zr=()=>{A.registerAnimation(`emptyCircle`,((e,t)=>({appear:Nr(e,t)})))}})))()}function Vr(e,t){var n;let r=t.options?.distance??10,i=er(t.duration)?t.duration/2:1e3,a=t.options.easing??`cubicOut`;return{oneByOne:t.oneByOne,loop:(n=t.loop)!=null&&n,timeSlices:[{duration:i,effects:{easing:a,channel:{x:{from:t=>e.getAttribute(`x`,t),to:t=>e.getAttribute(`x`,t)+I({x:0,y:0},r,t[k]).x},y:{from:t=>e.getAttribute(`y`,t),to:t=>e.getAttribute(`y`,t)+I({x:0,y:0},r,t[k]).y}}}},{duration:i,effects:{easing:a,channel:{x:{to:t=>e.getAttribute(`x`,t),from:t=>e.getAttribute(`x`,t)+I({x:0,y:0},r,t[k]).x},y:{to:t=>e.getAttribute(`y`,t),from:t=>e.getAttribute(`y`,t)+I({x:0,y:0},r,t[k]).y}}}}]}}function Hr(){return(Hr=e((()=>{E(),Xn(),Bn()})))()}var Ur;function Wr(){return(Wr=e((()=>{nt(),Ur=Object.assign(Object.assign({},h),{pie:{name:`pie`,type:`arc`},labelLine:{name:`labelLine`,type:`path`}})})))()}var Gr;function Kr(){return(Kr=e((()=>{Qn(),P(),ar(),Re(),Gr=class extends je{_transformLabelSpec(e){this._addMarkLabelSpec(e,`pie`)}_mergeThemeToSpec(e,t){let n=this._theme,r=e;if(this._shouldMergeThemeToSpec()){let n=this._getDefaultSpecFromChart(t);r=V({},this._theme,n,e);let i=(e,t)=>V({},e===`inside`||e===`inside-center`?this._theme.innerLabel:this._theme.outerLabel,t);Jn(r.label)?r.label=r.label.map((e=>i(e.position,e))):r.label=i(r.label.position,r.label)}return{spec:r,theme:n}}_getDefaultSpecFromChart(e){let t=super._getDefaultSpecFromChart(e)??{},{centerX:n,centerY:r}=e;return N(n)&&(t.centerX=n),N(r)&&(t.centerY=r),Object.keys(t).length>0?t:void 0}}})))()}var qr;function Jr(){return(Jr=e((()=>{ht(),qr=`${At}_LABEL_VISIBLE`})))()}var Yr;function Xr(){return(Xr=e((()=>{Yr={outerRadius:.6,pie:{style:{fillOpacity:1}},label:{visible:!1,interactive:!0,position:`outside`,style:{fontWeight:`normal`,stroke:{type:`palette`,key:`backgroundColor`},fillOpacity:1}},innerLabel:{style:{lineWidth:2}},emptyCircle:{style:{fill:{type:`palette`,key:`emptyCircleColor`},fillOpacity:1}}}})))()}var Zr,Qr,J,Y,$r;function ei(){return(ei=e((()=>{P(),R(),Bn(),tr(),E(),Vt(),an(),ht(),qe(),St(),En(),Or(),T(),jr(),Br(),ge(),we(),Hr(),Ve(),Wr(),j(),Kr(),Jr(),ue(),ee(),fn(),Qe(),Xr(),Zr={valueField:!0,angleField:!0,startAngle:!0,endAngle:!0,minAngle:!0},Qr={outerRadius:!0},J=class e extends Dr{constructor(){super(...arguments),this.transformerConstructor=Gr,this._pieMarkName=`pie`,this._pieMarkType=`arc`,this.getCenter=()=>{let e=this._region.getLayoutRect();return{x:yt(this._spec?.centerX,e.width,e,e.width/2),y:yt(this._spec?.centerY,e.height,e,e.height/2)}},this._startAngle=pn,this._endAngle=Wt,this._pieMark=null,this._labelMark=null,this._labelLineMark=null,this._emptyArcMark=null,this.dataToCentralPosition=e=>{let t=e[k];if(B(t))return null;let n=this.computeDatumRadius(e),r=this.computeDatumInnerRadius(e),i=this.computeCenter(e);return I(i,(n+r)/2,t)}}_buildMarkAttributeContext(){super._buildMarkAttributeContext(),this._markAttributeContext.getCenter=()=>({x:()=>this.getCenter().x,y:()=>this.getCenter().y}),this._markAttributeContext.startAngleScale=e=>this.startAngleScale(e),this._markAttributeContext.endAngleScale=e=>this.endAngleScale(e)}setAttrFromSpec(){var e,t,n;super.setAttrFromSpec(),this._centerOffset=this._spec.centerOffset??0,this._cornerRadius=this._spec.cornerRadius??0;let r=_(N(this._spec.startAngle)?z(this._spec.startAngle):this._startAngle,N(this._spec.endAngle)?z(this._spec.endAngle):this._endAngle);this._startAngle=r.startAngle,this._endAngle=r.endAngle,this._padAngle=N(this._spec.padAngle)?z(this._spec.padAngle):0,this.setAngleField(this._spec.valueField||this._spec.angleField),this._spec.categoryField&&this.setSeriesField(this._spec.categoryField),this._radiusField=[],this._specAngleField=this._angleField.slice(),this._specRadiusField=[],this._showEmptyCircle=(e=this._spec.emptyPlaceholder?.showEmptyCircle)!=null&&e,this._showAllZero=(t=this._spec.showAllZero)!=null&&t,this._supportNegative=(n=this._spec.supportNegative)!=null&&n}initData(){super.initData();let e=this.getViewData();if(!e)return;rt(this._dataSet,`pie`,kr),e.transform({type:`pie`,options:{angleField:()=>this._angleField[0],startAngle:()=>this._startAngle,endAngle:()=>this._endAngle,minAngle:()=>N(this._spec.minAngle)?z(this._spec.minAngle):0,asStartAngle:Xt,asEndAngle:wt,asRatio:gt,asMiddleAngle:k,asRadian:jt,asQuadrant:on,asK:dn,showAllZero:this._showAllZero,supportNegative:this._supportNegative,showEmptyCircle:this._showEmptyCircle}},!1);let t=new Yn(this._dataSet,{name:`${At}_series_${this.id}_viewDataLabel`});t.parse([this.getViewData()],{type:`dataview`}),this._viewDataLabel=new bn(this._option,t)}compileData(){var e;super.compileData(),(e=this._viewDataLabel)==null||e.compile()}initMark(){this._pieMark=this._createMark(Object.assign(Object.assign({},e.mark.pie),{name:this._pieMarkName,type:this._pieMarkType}),{key:un,groupKey:this._seriesField,isSeriesMark:!0},{morph:Ge(this._spec,this._pieMarkName),morphElementKey:this._seriesField}),this._showEmptyCircle&&(this._emptyArcMark=this._createMark({name:`emptyCircle`,type:`arc`},{dataView:!1}),this._data.addRelatedMark(this._emptyArcMark))}startAngleScale(e){return hn(Xt)(e)}endAngleScale(e){return hn(wt)(e)}_computeLayoutRadius(){return Ue((()=>this._spec.layoutRadius),this.getLayoutRect,this.getCenter,(()=>({startAngle:this._startAngle,endAngle:this._endAngle})))}initMarkStyle(){let e={x:()=>this.getCenter().x,y:()=>this.getCenter().y,fill:this.getColorAttribute(),outerRadius:Tt(this._outerRadius)?this._outerRadius:()=>this._computeLayoutRadius()*this._outerRadius,innerRadius:Tt(this._innerRadius)?this._innerRadius:()=>this._computeLayoutRadius()*this._innerRadius,cornerRadius:()=>this._computeLayoutRadius()*this._cornerRadius,startAngle:e=>this.startAngleScale(e),endAngle:e=>this.endAngleScale(e),padAngle:this._padAngle,centerOffset:this._centerOffset},t=this._pieMark;t&&this.setMarkStyle(t,e,`normal`,w.Series);let n=this._emptyArcMark;n&&this.setMarkStyle(n,Object.assign(Object.assign({},e),{visible:()=>{let e=this.getViewData().latestData;return!e||!e.length}}),`normal`,w.Series)}getInteractionTriggers(){return this._parseInteractionConfig(this._pieMark?[this._pieMark]:[])}initTooltip(){super.initTooltip(),this._pieMark&&this._tooltipHelper.activeTriggerSet.mark.add(this._pieMark)}initMarkStyleWithSpec(e,t){if(super.initMarkStyleWithSpec(e,t),e.name===this._pieMarkName){let t=this.getSpec()[e.name];if(t)for(let n in t.state||{})this.setMarkStyle(e,this.generateRadiusStyle(t.state[n]),n,w.User_Mark)}e.name===`emptyCircle`&&this.setMarkStyle(e,this.generateRadiusStyle(t.style),`normal`,w.User_Mark)}initLabelMarkStyle(e){e&&this.setMarkStyle(e,{visible:hn(qr).bind(this),text:e=>e[this.getDimensionField()[0]],fill:this.getColorAttribute(),z:this.dataToPositionZ.bind(this)})}afterInitMark(){super.afterInitMark()}initEvent(){var e;super.initEvent(),(e=this._viewDataLabel.getDataView())==null||e.target.addListener(`change`,this.viewDataLabelUpdate.bind(this))}initGroups(){}onLayoutEnd(){this._viewDataLabel.getDataView().reRunAllTransform(),this.onMarkPositionUpdate(),super.onLayoutEnd()}getDimensionField(){return this._seriesField?[this._seriesField]:[]}getMeasureField(){return this._specAngleField}viewDataLabelUpdate(){this.event.emit(pe.viewDataLabelUpdate,{model:this}),this._viewDataLabel.updateData()}generateRadiusStyle(e){if(!e)return;let t={};return e.outerRadius&&(t.outerRadius=()=>this._computeLayoutRadius()*e.outerRadius),e.innerRadius&&(t.innerRadius=()=>this._computeLayoutRadius()*e.innerRadius),e.cornerRadius&&(t.cornerRadius=()=>this._computeLayoutRadius()*e.cornerRadius),t}computeCenter(e){return{x:this._pieMark.getAttribute(`x`,e,`normal`),y:this._pieMark.getAttribute(`y`,e,`normal`)}}getRadius(e=`normal`){return(e===`normal`?this.getSpec()[this._pieMark?.name||`pie`]?.style?.outerRadius:this.getSpec()[this._pieMark?.name||`pie`]?.state?.[e]?.outerRadius)??this._outerRadius}getInnerRadius(e=`normal`){return(e===`normal`?this.getSpec()[this._pieMark?.name||`pie`]?.style?.innerRadius:this.getSpec()[this._pieMark?.name||`pie`]?.state?.[e]?.innerRadius)??this._innerRadius}computeRadius(e,t){return this._computeLayoutRadius()*e*(B(t)?1:t)+this._centerOffset}computeDatumRadius(e,t){return this._computeLayoutRadius()*this.getRadius(t)+this._centerOffset}_getSpecUpdatePolicy(){let e=super._getSpecUpdatePolicy();return Object.assign(Object.assign({},e),{compileOnlyKeys:Object.assign(Object.assign({},e.compileOnlyKeys),Qr),dataRelatedKeys:Object.assign(Object.assign({},e.dataRelatedKeys),Zr)})}_compareSpec(e,t,n){n??={data:!0};let r=[`centerX`,`centerY`,`centerOffset`,`radius`,`innerRadius`,`cornerRadius`,`startAngle`,`endAngle`,`padAngle`];r.forEach((e=>{n[e]=!0}));let i=super._compareSpec(e,t,n);return e??={},r.some((n=>e[n]!==t[n]))&&(i.reRender=!0,i.change=!0),i}computeDatumInnerRadius(e,t){return this._computeLayoutRadius()*this.getInnerRadius(t)+this._centerOffset}dataToPosition(e,t){let n=e[k];if(B(n)||t&&!this.isDatumInViewData(e))return null;let r=this.computeDatumRadius(e),i=this.computeCenter(e);return I(i,r,n)}initAnimation(){let e={growFrom:(e,t,n)=>{if(n===C.appear)return this._startAngle;if(n===C.disappear)return this._endAngle;let r=[C.disappear,C.exit],i=this._pieMark.getGraphics(),a=e?.[D];if(i.find((e=>e.context.data[0]?.[D]<a))===void 0)return this._startAngle;if(i.find((e=>e.context.data[0]?.[D]>a))===void 0)return this._endAngle;let o=[...i].reverse().find((e=>e.context.data[0]?.[D]<a));return r.includes(n)?o?.getFinalAttribute()?.endAngle:o?.attribute?.endAngle}},t=this._spec.animationAppear?.preset;if(this._pieMark){let n=S(A.getAnimationInKey(`pie`)?.(e,t),M(`pie`,this._spec,this._markAttributeContext));n.normal&&n.normal.type&&(n.normal=Vr(this._pieMark,n.normal)),this._pieMark.setAnimationConfig(n)}if(this._emptyArcMark){let n=S(A.getAnimationInKey(`emptyCircle`)?.(e,t??`fadeIn`));this._emptyArcMark.setAnimationConfig(n)}}getDefaultShapeType(){return`circle`}getGroupFields(){return[]}getStackGroupFields(){return[]}getStackValueField(){return``}_noAnimationDataKey(e,t){return t}getActiveMarks(){return[this._pieMark]}},J.transformerConstructor=Gr,J.mark=Ur,J.builtInTheme={pie:Yr},Y=class extends J{constructor(){super(...arguments),this.type=O.pie}},Y.type=O.pie,$r=()=>{l(),Rr(),zr(),A.registerSeries(Y.type,Y)}})))()}var ti;function ni(){return(ni=e((()=>{F(),Qn(),R(),P(),An(),ti=class extends Ke{_isValidSeries(e){return!this.seriesType||e===this.seriesType}getIndicatorSpec(e){let t=L(e.indicator),n=e.innerRadius??e.series?.[0]?.innerRadius;return N(n)&&t.forEach((e=>{B(e.limitRatio)&&(e.limitRatio=n)})),t}_getDefaultSeriesSpec(e,t){return super._getDefaultSeriesSpec(e,[`radius`,`outerRadius`,`innerRadius`,`startAngle`,`endAngle`,`centerX`,`centerY`,`sortDataByAxis`],t)}transformSpec(e){super.transformSpec(e),Jn(e.dataZoom)&&e.dataZoom.length>0&&e.dataZoom.forEach((e=>{e.filterMode===`axis`&&(e.filterMode=`filter`)})),this.transformSeriesSpec(e),N(e.indicator)&&(e.indicator=this.getIndicatorSpec(e))}}})))()}var X;function ri(){return(ri=e((()=>{ni(),X=class extends ti{needAxes(){return!1}_getDefaultSeriesSpec(e){let t=super._getDefaultSeriesSpec(e,[`center`,`centerOffset`,`cornerRadius`,`padAngle`,`minAngle`,`emptyPlaceholder`,`showAllZero`,`supportNegative`,`useSequentialAnimation`,`layoutRadius`]);return this._addSeriesRelatedSpecKeys([`valueField`,`angleField`]),t.categoryField=e.categoryField||e.seriesField,t.valueField=e.valueField||e.angleField,t.emptyCircle=e.emptyPlaceholder?.emptyCircle,t}}})))()}var ii;function ai(){return(ai=e((()=>{it(),ri(),ii=class extends g{constructor(){super(...arguments),this.transformerConstructor=X}},ii.transformerConstructor=X})))()}var Z,oi;function si(){return(si=e((()=>{ei(),T(),ai(),j(),ri(),wn(),Z=class extends ii{constructor(){super(...arguments),this.transformerConstructor=X,this.type=`pie`,this.seriesType=O.pie}},Z.type=`pie`,Z.seriesType=O.pie,Z.transformerConstructor=X,oi=()=>{Ye(),$r(),A.registerChart(Z.type,Z)}})))()}var ci;function li(){return(li=e((()=>{F(),zn(),ci=(e,t)=>{let{datum:n,title:r,content:i}=$n(t)?t():t,a=[],o=n.call(null);return r.visible&&a.push({type:`title`,index:0,datum:o,spec:r}),L(i).forEach(((e,t)=>{e.visible&&a.push({type:`content`,index:t,datum:o,spec:e})})),a}})))()}var ui,di;function fi(){return(fi=e((()=>{ui=(e,t)=>({fontSize:{type:`token`,key:e},fill:{type:`palette`,key:t},fontWeight:`normal`,fillOpacity:1,textBaseline:`top`,textAlign:`center`}),di={title:{visible:!0,autoLimit:!1,autoFit:!1,style:ui(`l1FontSize`,`primaryFontColor`)},content:{visible:!0,style:ui(`l2FontSize`,`tertiaryFontColor`)}}})))()}var pi,Q,mi;function hi(){return(hi=e((()=>{tr(),Oe(),zt(),ut(),ar(),ve(),fn(),Gn(),P(),zn(),F(),Vn(),li(),Qe(),or(),j(),Mt(),tn(),fi(),pi=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n},Q=class extends st{constructor(){super(...arguments),this.type=Pe.indicator,this.name=Pe.indicator,this.specKey=`indicator`,this.layoutType=`none`,this.layoutZIndex=It.Indicator,this.layoutLevel=p.Indicator,this._gap=0,this._activeDatum=null}static getSpecInfo(e){return sn(e,this.specKey,this.type,(e=>e&&!1!==e.visible))}created(){super.created(),this.initData(),this.initEvent()}setAttrFromSpec(){super.setAttrFromSpec(),this._gap=this._spec.gap||0,this._title=this._spec.title,this._content=L(this._spec.content),this._regions=this._option.getRegionsInUserIdOrIndex(L(this._spec.regionId),L(this._spec.regionIndex))}_compareSpec(e,t){let n=super._compareSpec(e,t);return Kn(t,e)||n.reMake||n.reCompile||(n.change=!0,n.reRender=!0,n.effects=Object.assign(Object.assign({},n.effects),{component:!0,layout:!0,render:!0})),n}initEvent(){this._option.disableTriggerEvent||this._spec.trigger!==`none`&&(this._spec.trigger===`hover`?(this.event.on(`element-highlight:start`,(e=>{let t=e.graphics[0];this.isRelativeModel(t)&&this.updateDatum(xe(t))})),this.event.on(`element-highlight:reset`,(e=>{this._activeDatum&&this.updateDatum(null)}))):(this.event.on(`element-select:start`,(e=>{let t=e.graphics[0];this.isRelativeModel(t)&&this.updateDatum(xe(t))})),this.event.on(`element-select:reset`,(e=>{this._activeDatum&&this.updateDatum(null)}))))}updateDatum(e){this._activeDatum=e,this._displayData.updateData();let t=this._getIndicatorAttrs();this._createOrUpdateIndicatorComponent(t)}initData(){rt(this._option.dataSet,`indicatorFilter`,ci);let e=new Yn(this._option.dataSet,{name:`${this.type}_${this.id}_data`});e.transform({type:`indicatorFilter`,options:()=>({title:this._title,content:this._content,datum:()=>this._activeDatum})}),e.target.addListener(`change`,this.updateDatum.bind(this)),this._displayData=new bn(this._option,e)}updateLayoutAttribute(){let e=this._getIndicatorAttrs();this._createOrUpdateIndicatorComponent(e),super.updateLayoutAttribute()}_getIndicatorAttrs(){if(!1===this._spec.visible||!1===this._spec.fixed&&this._activeDatum===null)return{visible:!1};let e=this._regions[0],{width:t,height:n}=e.getLayoutRect(),{x:r,y:i}=e.getLayoutStartPoint(),a=this._spec,{content:o,offsetX:s,offsetY:c,limitRatio:l,title:u}=a,ee=pi(a,[`content`,`offsetX`,`offsetY`,`limitRatio`,`title`]),d=[];return L(o).forEach((e=>{let t=V({},this._theme.content,e);d.push({visible:!1!==t.visible&&(!t.field||this._activeDatum!==null),space:t.space||this._gap,autoLimit:t.autoLimit,autoFit:t.autoFit,fitPercent:t.fitPercent,fitStrategy:t.fitStrategy,style:Object.assign(Object.assign({},ct(Un(t.style,[`text`]),this._activeDatum)),{text:this._createText(t.field,t.style.text)})})})),Object.assign({visible:!0,size:{width:t,height:n},zIndex:this.layoutZIndex,x:r,y:i,dx:s?Ut(s,this._computeLayoutRadius()):0,dy:c?Ut(c,this._computeLayoutRadius()):0,limitRatio:l||1/0,title:{visible:!1!==u.visible&&(!N(u.field)||this._activeDatum!==null),space:u.space||this._gap,autoLimit:u.autoLimit,autoFit:u.autoFit,fitPercent:u.fitPercent,fitStrategy:u.fitStrategy,style:Object.assign(Object.assign({},ct(Un(u.style,[`text`]),this._activeDatum)),{text:this._createText(u.field,u.style.text)})},content:d},ee)}_createOrUpdateIndicatorComponent(e){if(!1===e.visible)return this._indicatorComponent&&this._indicatorComponent.parent&&this._indicatorComponent.parent.removeChild(this._indicatorComponent),void(this._indicatorComponent=null);if(this._indicatorComponent)Kn(e,this._cacheAttrs)||this._indicatorComponent.setAttributes(e);else{let t=this.getContainer(),n=new nr(e);n.name=`indicator`,t.add(n),this._indicatorComponent=n,this._indicatorComponent.on(`*`,((e,t)=>this._delegateEvent(this._indicatorComponent,e,t)))}this._cacheAttrs=e}_createText(e,t){return e?this._activeDatum?this._activeDatum[e]:``:$n(t)?t(this._activeDatum,void 0)??``:t??``}_computeLayoutRadius(){let{width:e,height:t}=this._regions[0].getLayoutRect();return Math.min(e/2,t/2)}isRelativeModel(e){return this._regions.some((t=>!!t.getSeriesInId(e.context.modelId)))}_getNeedClearVRenderComponents(){return[this._indicatorComponent]}clear(){this._cacheAttrs=null,super.clear()}getIndicatorComponent(){return this._indicatorComponent}},Q.type=Pe.indicator,Q.builtInTheme={indicator:di},Q.specKey=`indicator`,mi=()=>{A.registerComponent(Q.type,Q)}})))()}var gi;function _i(){return(_i=e((()=>{xt(),Er(),he(),Le(),ne(),yn(),gi=x(`AreaChart`,{type:`area`,vchartConstructor:ln},[Tr,Ce,oe,...Xe])})))()}var vi;function yi(){return(yi=e((()=>{at(),be(),fe(),We(),Ee(),d(),Ne(),Gt(),ir(),vi=[mn,rr,et,Nt,en,le,Ae,Rt,kn]})))()}var bi;function xi(){return(xi=e((()=>{xt(),si(),hi(),he(),ne(),yi(),bi=x(`PieChart`,{type:`pie`,vchartConstructor:ln},[oi,Ce,mi,...vi])})))()}function Si({height:e=260,text:t=`暂无数据`,tone:n=`muted`}){return/* @__PURE__ */ U(`div`,{style:{height:e,display:`flex`,alignItems:`center`,justifyContent:`center`,color:n===`success`?`var(--arc-antd-color-success)`:`var(--arc-antd-color-text-2)`,fontSize:13},children:t})}function Ci(){return(Ci=e((()=>{})))()}var wi,Ti;function Ei(){return(Ei=e((()=>{Pt(),jn(),wi=[{key:`list`,title:`日志列表`,description:`查询、筛选和查看日志`,icon:Mn},{key:`stats`,title:`统计分析`,description:`趋势与分布统计`,icon:f}],Ti=wi.map(e=>e.key)})))()}function Di(e,t=`日志`){return e===0?`清除全部${t}`:`清除${ki[e]??`${e} 天前`}的${t}`}function Oi({clean:e,onCleared:t}){let[n,r]=cr(!1),[i,a]=cr(0),[o,s]=cr(!1);return{modalVisible:n,days:i,verifying:o,openClearModal:e=>{a(e),r(!0)},closeModal:()=>r(!1),confirmClear:async()=>{if(!o){s(!0);try{await e(i),r(!1),c.success(i===0?`历史日志已清除`:`已清除${ki[i]??`${i} 天前`}的日志,最近 ${i} 天的记录已保留`),t?.()}finally{s(!1)}}}}}var ki,$;function Ai(){return(Ai=e((()=>{r(),ki={30:`一个月前`,90:`三个月前`,180:`六个月前`,365:`一年前`},$=[0,365,180,90,30]})))()}function ji({loading:e,onClear:n,label:r=`日志`}){return sr(ur)===`mobile-actions`?/* @__PURE__ */ U(H,{children:$.map(t=>/* @__PURE__ */ U(o,{type:`danger`,theme:`light`,icon:/* @__PURE__ */ U(Pn,{size:14}),loading:e,onClick:()=>n(t),children:Di(t,r)},t))}):/* @__PURE__ */ W(t,{children:[/* @__PURE__ */ U(o,{type:`danger`,theme:`light`,icon:/* @__PURE__ */ U(Pn,{size:14}),loading:e,onClick:()=>n($[0]),children:Di($[0],r)}),/* @__PURE__ */ U(s,{trigger:`click`,position:`bottomRight`,clickToHide:!0,render:/* @__PURE__ */ U(s.Menu,{children:$.map(t=>/* @__PURE__ */ U(s.Item,{disabled:e,onClick:()=>n(t),children:Di(t,r)},t))}),children:/* @__PURE__ */ U(o,{type:`danger`,theme:`light`,disabled:e,"aria-label":`选择清除${r}范围`,icon:/* @__PURE__ */ U(Fn,{size:14})})})]})}function Mi({logName:e,control:t}){return/* @__PURE__ */ U(Rn,{title:Di(t.days,e),visible:t.modalVisible,onCancel:t.closeModal,okText:`确认清除`,okButtonProps:{type:`danger`,loading:t.verifying},onOk:t.confirmClear,maskClosable:!1,children:/* @__PURE__ */ W(`p`,{style:{marginBottom:12},children:[`此操作将永久删除当前数据权限范围内`,t.days===0?`的全部${e}`:`${ki[t.days]??`${t.days} 天前`}的${e}`,`,不可恢复。`,t.days>0&&/* @__PURE__ */ W(H,{children:[/* @__PURE__ */ U(`br`,{}),`最近 `,t.days,` 天的记录将保留。`]}),e===`操作日志`&&/* @__PURE__ */ W(H,{children:[/* @__PURE__ */ U(`br`,{}),`本次清除操作仍会生成一条操作日志。`]})]})})}function Ni(){return(Ni=e((()=>{r(),In(),Nn(),Ln(),Ai()})))()}function Pi(e){let t=Array(7).fill(0);for(let n of e??[])t[(lr(n.date).day()+6)%7]+=n.count;return Hi.map((e,n)=>({name:e,count:t[n]}))}function Fi(e,t){return t>0?e-t:null}function Ii(e){return e==null||e.total===0?null:(e.successCount/e.total*100).toFixed(1)}function Li(e,t){return e&&t&&e.total>0&&t.total>0?e.successCount/e.total-t.successCount/t.total:null}function Ri(){return/* @__PURE__ */ U(i,{loading:!0,active:!0,placeholder:/* @__PURE__ */ W(H,{children:[/* @__PURE__ */ U(Jt,{style:{marginBottom:16},children:Array.from({length:4},(e,t)=>`sk-stat-${t}`).map(e=>/* @__PURE__ */ W(`div`,{children:[/* @__PURE__ */ U(i.Title,{style:{width:64,height:26,marginBottom:10}}),/* @__PURE__ */ U(i.Paragraph,{rows:1,style:{width:80,marginBottom:0}})]},e))}),/* @__PURE__ */ W(`div`,{className:`zx-panel`,style:{marginBottom:16},children:[/* @__PURE__ */ U(i.Title,{style:{width:180,height:14,marginBottom:16}}),/* @__PURE__ */ U(i.Image,{style:{width:`100%`,height:230}})]}),/* @__PURE__ */ U(`div`,{className:`chart-grid`,children:[`sk-chart-a`,`sk-chart-b`].map(e=>/* @__PURE__ */ W(`div`,{className:`zx-panel`,children:[/* @__PURE__ */ U(i.Title,{style:{width:120,height:14,marginBottom:16}}),/* @__PURE__ */ U(i.Image,{style:{width:`100%`,height:260}})]},e))})]}),children:null})}function zi({days:e,onDaysChange:t,loading:r,fetching:i,children:o}){return/* @__PURE__ */ W(`div`,{children:[/* @__PURE__ */ U(`div`,{style:{display:`flex`,justifyContent:`flex-end`,marginBottom:16},children:/* @__PURE__ */ U(a,{value:e,onChange:e=>t(e),style:{width:140},children:Vi.map(e=>/* @__PURE__ */ U(a.Option,{value:e.value,children:e.label},e.value))})}),r?/* @__PURE__ */ U(Ri,{}):/* @__PURE__ */ U(n,{spinning:i,children:o})]})}function Bi({title:e,children:t,danger:n}){return/* @__PURE__ */ W(`div`,{className:`zx-panel`,children:[/* @__PURE__ */ U(`div`,{style:{...Tn,color:n?`var(--arc-antd-color-danger)`:Tn.color},children:e}),t]})}var Vi,Hi;function Ui(){return(Ui=e((()=>{r(),dt(),rn(),Vi=[{label:`最近 7 天`,value:7},{label:`最近 30 天`,value:30},{label:`最近 90 天`,value:90}],Hi=[`周一`,`周二`,`周三`,`周四`,`周五`,`周六`,`周日`]})))()}export{gi as C,Sr as D,$r as E,xr as O,vi as S,ei as T,Si as _,Li as a,xi as b,Pi as c,Ni as d,Ai as f,Ei as g,Ti as h,Ii as i,ji as l,wi as m,zi as n,Fi as o,Oi as p,Hi as r,Ui as s,Bi as t,Mi as u,Ci as v,_i as w,yi as x,bi as y};
|
|
2
|
+
//# sourceMappingURL=LogStatsScaffold-CMIz4z0a.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LogStatsScaffold-m0vVUXPh.js","mappings":"m4EAIa,GAAb,cAA6CA,EAAwB,CACjE,aAAc,CACV,MAAM,GAAG,SAAS,EAAG,KAAK,iBAAmB,EAAO,EAAU,IAAiB,CAE3E,IAAK,IAAMC,KAAOC,EAAMC,CAAQ,EAAG,CAC/B,IAAIC,EAAuB,KAAK,OAAO,eAAeC,CAAK,IAAkCJ,CAAG,EAChG,GAAI,CAAC,IAAMG,GAAoBH,IAAX,QAA+BA,IAAb,WAAqB,EAAmBA,IAAX,OAA+C,KAAK,OAAO,eAAeI,CAAK,IAAkC,QAAQ,IAAkC,GAAoB,KAAK,OAAO,eAAeA,CAAK,IAAkC,MAAM,GAC1TC,EAAQF,CAAK,EAAG,OAAOA,CAC3B,CACA,OAAOG,CACX,CACJ,CACJ,C,wDCZa,GAAiB,OAAO,OAAO,OAAO,OAAO,OAAO,OAAO,CAAC,EAAGC,CAAc,EAAGC,EAAkB,EAAG,CAC9G,KAAM,CACF,KAAM,OACN,KAAM,MACV,CACJ,CAAC,C,mDCkBY,OAAoC,CAC7CC,GAAsB,EAAGC,GAAsB,EAAGC,GAA4B,CAClF,C,4DCvBa,GAAb,cAA+CC,EAA8B,CACzE,aAAc,CACV,MAAM,GAAG,SAAS,EAAG,KAAK,cAAgB,CAAC,CAC/C,CACA,oBAAoB,EAAM,CAEtB,IAAMC,EAAiB,CAAC,IAAsBC,EAAK,OAAsC,SAAY,CAAC,IAAqCA,EAAK,OAAsC,OAAsC,QAC5N,KAAK,kBAAkBA,GAAO,GAAQ,CAClC,IAAMC,EAAmCD,EAAK,WAAzB,gBACrB,MAAO,CAACD,GAAkBE,EAAe,OAAS,OACtD,EAAE,EAAG,KAAK,kBAAkBD,EAAM,OAAQ,YAAa,yBAA0B,IAAK,GAAG,CAAC,CAAC,CAC/F,CACA,gCAAgC,EAAM,EAAW,EAAe,CAC5D,IAAoBE,EACpB,MAAM,gCAAgCF,EAAMG,EAAWC,CAAa,EACpE,GAAM,CAAO,OAAO,CAAC,EAAS,OAAO,CAAC,EAAe,cAAcJ,EAAMK,EAAgB,CAAC,IAAMC,EAAK,SAAW,CAAC,IAAsBA,EAAK,OAAsC,QAAUC,EAAgB,CAAC,IAAMC,EAAK,SAAW,CAAC,IAAsBA,EAAK,OAAsC,QACrS,EAAK,UAAY,EAAE,CAACF,EAAK,WAAa,CAACE,EAAK,WAAY,EAAK,OAASjB,EAAQe,EAAK,MAAM,GAAKf,EAAQiB,EAAK,MAAM,EAAI,KAAK,IAAmBF,EAAK,QAAgC,EAAkBE,EAAK,QAAgC,CAAC,EAAI,IAAK,GACnPF,EAAK,OAAS,OAAOA,EAAK,MAAM,OAAQA,EAAK,OAAS,OAAO,KAAKA,EAAK,KAAK,CAAC,CAAC,SAAS,GAAS,CAC5F,UAAWA,EAAK,MAAMG,GAAS,OAAOH,EAAK,MAAMG,EAAM,CAAC,MAAM,OAAS,OAAOH,EAAK,MAAMG,EAAM,CAAC,MACpG,EAAE,EACF,IAAIC,EAAWJ,EAAMK,EAAUH,GACnBI,IAAX,QAAyBL,GAAiB,CAACF,KAAmB,EAAWG,EAC1E,EAAUF,GAAO,EAAK,MAAQO,EAAU,CAAC,EAAGF,EAAQ,MAAOD,EAAS,KAAK,EAAG,EAAK,MAAQG,EAAU,CAAC,EAAGF,EAAQ,MAAOD,EAAS,KAAK,EACpI,CAAC,IAAMJ,EAAK,cAAgB,EAAK,MAAM,aAAe,CAAC,GAAI,CAAC,IAAME,EAAK,cAAgB,EAAK,MAAM,eAAiB,CAAC,GACpH,EAAK,YAAc,EAAE,CAACF,EAAK,cAAyB,EAAKE,EAAK,cAApB,MAAqD,CAACN,GAChG,EAAK,KAAOI,EAAM,EAAK,KAAOE,CAClC,CACJ,C,8CCjCa,GAAO,CAChB,MAAO,CACH,QAAS,CAAC,EACV,OAAQ,EACR,SAAU,MACV,MAAO,CACH,OAAQ,CACJ,KAAM,UACN,IAAK,iBACT,EACA,UAAW,CACf,CACJ,EACA,MAAO,CACH,MAAO,CACH,WAAY,QAChB,CACJ,EACA,WAAY,MAChB,C,gKC2Ba,EAAb,MAAaM,UAAmBC,EAAgB,CAC5C,aAAc,CACV,MAAM,GAAG,SAAS,EAAG,KAAK,KAAOC,EAAe,KAAM,KAAK,uBAAyBC,GACpF,KAAK,gBAAkB,CAAC,CAC5B,CACA,sBAAuB,CACnB,IAAMC,EAAS,MAAM,qBAAqB,EAC1C,OAAO,OAAO,OAAO,OAAO,OAAO,CAAC,EAAGA,CAAM,EAAG,CAC5C,gBAAiB,OAAO,OAAO,OAAO,OAAO,CAAC,EAAGA,EAAO,eAAe,EAAGC,EAAkC,CAChH,CAAC,CACL,CACA,UAAW,CAEP,IAAMP,EAA4B,KAAK,MAAM,YAAoC,OAAQQ,EAAoB,KAAK,eAAe,GAAK,KAAK,eAAe,EAC1J,KAAK,UAAY,KAAK,YAAYN,EAAW,KAAK,KAAM,CACpD,SAAU,KAAK,aACf,aAAcM,GAAiCR,IAAZ,OACvC,EAAG,CACC,gBAAiB,KAAK,kBAAkB,CAAC,CAAC,EAC9C,CAAC,EAAG,KAAK,eAA2BA,IAAZ,OAAsB,CAClD,CACA,eAAgB,CACZ,KAAK,kBAAkB,EAAG,KAAK,oBAAoB,CACvD,CACA,mBAAoB,CAEhB,IAAMS,EAA6D,KAAK,QAAQ,CAAC,CAAC,MAAqC,OAAsC,WAAiE,KAAK,QAAQ,CAAC,CAAC,MAAqC,OAAsC,UAAWC,EAAYD,IAAA,WAAgE,KAAK,aAAtB,aAAmC,YAAc,YAAcA,EAAeE,EAAW,KAAK,UAC5d,GAAIA,EAAU,CACV,IAAMlB,EAAgB,KAAK,eAAe,EAAGE,EAAgB,KAAK,eAAe,EACjFF,GAAiBE,EAAgBgB,EAAS,WAAW,CAAC,CAAC,EAAIA,EAAS,WAAW,CAAC,CAAC,EAChE,KAAK,aAAtB,aAAmC,KAAK,aAAa,KAAK,UAAW,CACjE,EAAG,KAAK,gBAAgB,KAAK,IAAI,EACjC,GAAI,GAAS,CACT,IAAIC,EACJ,OAAOC,GAAkB,KAAK,iBAAiBnC,CAAK,IAA4B,EAAK,KAAK,eAA6C,WAAyC,KAAKkC,EAAI,CAAC,CAAC,CAC/L,EACA,EAAG,KAAK,gBAAgB,KAAK,IAAI,EACjC,GAAI,KAAK,gBAAgB,KAAK,IAAI,EAClC,EAAG,KAAK,QAAU,KAAK,gBAAgB,KAAK,IAAI,EAAI,KACpD,OAAQ,KAAK,UACjB,EAAG,SAAUE,EAAe,MAAM,EAAI,KAAK,aAAa,KAAK,UAAW,CACpE,EAAG,KAAK,gBAAgB,KAAK,IAAI,EACjC,GAAI,KAAK,gBAAgB,KAAK,IAAI,EAClC,GAAI,GAAS,CACT,IAAIF,EACJ,OAAOC,GAAkB,KAAK,iBAAiBnC,CAAK,IAA4B,EAAK,KAAK,eAA6C,WAAyC,KAAKkC,EAAI,CAAC,CAAC,CAC/L,EACA,EAAG,KAAK,gBAAgB,KAAK,IAAI,EACjC,EAAG,KAAK,QAAU,KAAK,gBAAgB,KAAK,IAAI,EAAI,IACxD,EAAG,SAAUE,EAAe,MAAM,EAAG,KAAK,aAAaH,EAAU,CAC7D,KAAM,CAAC,CAAClB,GAAiB,KAAK,kBAAkB,EAChD,OAAQ,CAAC,CAACE,GAAiB,KAAK,kBAAkB,CACtD,EAAG,SAAUmB,EAAe,MAAM,EAAc,KAAK,eAAhB,QAAgC,KAAK,aAAaH,EAAU,CAC7F,QAAS,KAAK,mBAAmB,KAAK,IAAI,EAC1C,cAAe,KAAK,uBAAuB,CAC/C,EAAG,SAAUG,EAAe,MAAM,EAAG,KAAK,SAAS,GAAK,KAAK,aAAaH,EAAU,CAChF,OAAQ,GAAS,CAACjC,EAAMqC,GAC5B,EAAG,SAAUD,EAAe,MAAM,EAAG,KAAK,aAAaH,EAAU,CAClD,WACf,EAAG,SAAUG,EAAe,QAAQ,EAAG,OAAO,KAAKH,EAAS,UAAU,CAAC,CAAC,SAAS,GAAS,CACtFA,EAAS,WAAWd,EAAM,CAAC,QAAUc,EAAS,eAAe,UAAW,GAAU,CAAEK,EAAQ,CAAC,EAAG,CAAC,EAAG,CAAC,CAAE,GAAInB,CAAK,CACpH,EAAE,CACN,CACJ,CACA,eAAgB,CAEZ,IAAMoB,EAAsB,CACxB,UAAW,KAAK,SACpB,EAAGC,EAA8B,KAAK,MAAM,iBAAgD,OAC5F,GAAI,KAAK,WAAa,KAAK,UAAU,mBAAmBC,EAA+BC,EAAQ,kBAAkB,MAAM,IAAkCH,EAAqBC,CAAY,EAAGG,EAAoB,OAAQ,KAAK,MAAO,KAAK,qBAAqB,CAAC,CAAC,EACjQ,KAAK,WAAa,KAAK,UAAU,mBAAmBF,EAA+BC,EAAQ,kBAAkB,MAAM,IAAkCH,EAAqBC,CAAY,EAAGG,EAAoB,OAAQ,KAAK,MAAO,KAAK,qBAAqB,CAAC,CAAC,EAC7P,KAAK,YAAa,CACd,IAAMC,EAAkBC,GAAwB,IAAI,EACpD,KAAK,YAAY,mBAAmBJ,EAA+BC,EAAQ,kBAAkB,YAAY,IAAkC,EAAGC,EAAoB,QAAS,KAAK,MAAO,KAAK,qBAAqB,EAAGC,CAAe,CAAC,CACxO,CACJ,CACA,gBAAiB,CAEb,IAAME,EAAW,KAAK,MAAM,MAAQ,CAAC,EACrC,MAAO,CAAC,IAAMA,EAAS,SAAW,CAAC,IAAsBA,EAAS,OAAsC,OAC5G,CACA,gBAAiB,CAEb,IAAMC,EAAW,KAAK,MAAM,MAAQ,CAAC,EACrC,MAAO,CAAC,IAAMA,EAAS,SAAW,CAAC,IAAsBA,EAAS,OAAsC,OAC5G,CACA,aAAc,CACV,KAAK,eAAiB,IAAIC,GAAwB,IAAI,EACtD,GAAM,CAAQ,QAAa,QAAQ,KAAK,eAAe,iBACvD,KAAK,WAAaC,EAAM,IAAI,KAAK,SAAS,EAAG,KAAK,WAAaA,EAAM,IAAI,KAAK,SAAS,EACvF,KAAK,cAAgBC,EAAK,IAAI,KAAK,WAAW,EAAGD,EAAM,IAAI,KAAK,WAAW,EAC/E,CACA,yBAAyB,EAAG,CACxB,MAAM,yBAAyBE,CAAC,EAAG,KAAK,cAAc,KAAK,UAAW,SAAS,CACnF,CACA,SAAU,CACN,MAAM,QAAQ,EAAG,KAAK,mBAAmB,EAAG,KAAK,kBAAkB,CACvE,CACA,qBAAsB,CAClB,MAAO,QACX,CACA,gBAAiB,CACb,MAAO,CAAE,KAAK,UAAW,KAAK,YAAa,KAAK,SAAU,CAC9D,CACA,aAAc,CACV,MAAM,YAAY,EAAG,KAAK,kBAAkB,CAChD,CACA,eAAe,EAAO,CAClB,MAAO,IAAa,CAEhB,IAAMC,EAAgC,KAAK,MAAM,YAAoC,OACjFd,EAAuC,KAAK,aAA4C,aAAae,EAAWrD,CAAK,GAA2B,IAAK,GACzJ,OAAkBqD,IAAX,QAAwBf,GAAqBc,IAAX,SAA8B,EAAY,SACnF,EAAuC,KAAK,aAA4C,aAAaC,EAAWrD,CAAK,GAA2B,IAAK,IACxIqD,IAAb,UAA0BC,GAAQhB,CAAM,EAAIA,EAAO,GAAKA,CAC5D,CACJ,CACJ,EAEA,EAAW,KAAOZ,EAAe,KAAM,EAAW,aAAe,CACvD,OACV,EAAG,EAAW,KAAO6B,GAAgB,EAAW,uBAAyB5B,GACzE6B,GAAMhC,EAAYiC,EAAmB,EAExB,OAA2B,CACpCC,GAA8B,EAAGC,GAA+B,EAAGC,GAAiB,EACpFC,GAAiB,EAAGC,GAAmB,EAAGC,GAA4B,EAAGC,GAA0B,EACnGC,GAA4B,EAAGvB,EAAQ,eAAelB,EAAW,KAAMA,CAAU,CACrF,C,wDC1Ka,GAAb,cAA8C0C,EAA8B,CACxE,sBAAsB,EAAM,CACxB,OAAO,MAAM,sBAAsBxD,EAAM,CAAE,QAAS,OAAQ,OAAQ,aAAc,cAAe,WAAY,iBAAkB,WAAY,cAAe,cAAe,YAAa,wBAAyB,CAAC,CACpN,CACA,cAAc,EAAM,CAChB,MAAM,cAAcA,CAAI,EAAGyD,GAAqCzD,CAAI,CACxE,CACJ,C,6GCiBa0D,EAAb,cAA+BC,CAAU,CACrC,aAAc,CACV,MAAM,GAAG,SAAS,EAAG,KAAK,uBAAyBC,GAA0B,KAAK,KAAO,OACzF,KAAK,WAAa5C,EAAe,IACrC,CACA,iBAAkB,CACd,KAAK,aAAa,iBAAmB6C,EAA2B,KAAK,aAAa,wBAA0BC,GAC5G,KAAK,aAAa,uBAAyBC,EAC/C,CACJ,EAEA,EAAU,KAAO,OAAQ,EAAU,WAAa/C,EAAe,KAAM,EAAU,uBAAyB4C,GACxGd,GAAMY,EAAWM,EAAe,EAEnB,OAA0B,CACnCC,GAAkC,EAAGC,GAA6B,EAAGC,GAA8B,EACnGC,GAAuB,EAAGC,GAAmB,EAAGC,GAAwB,EAAGtC,EAAQ,cAAc0B,EAAU,KAAMA,CAAS,CAC9H,C,kFCjCa,GAAb,cAAiCa,EAAW,CACxC,aAAc,CACV,MAAM,GAAG,SAAS,EAAG,KAAK,WAAa,QAAS,KAAK,aAAeC,GACpE,KAAK,aAAe,EAAG,KAAK,YAAc,CAAC,EAAG,KAAK,aAAe,CAAC,EAAG,KAAK,gBAAkB,CAAC,CAClG,CACA,IAAI,aAAc,CACd,OAAO,KAAK,YAChB,CACA,IAAI,aAAc,CACd,OAAO,KAAK,YAChB,CACA,eAAgB,CACZ,OAAO,KAAK,WAChB,CACA,cAAc,EAAG,CACb,MAAO,MAAK,YAAcjF,EAAQkF,CAAC,EAAItF,EAAMsF,CAAC,EAAI,CAAC,EAAG,KAAK,WAC/D,CACA,gBAAiB,CACb,OAAO,KAAK,YAChB,CACA,eAAe,EAAG,CACd,MAAO,MAAK,aAAelF,EAAQkF,CAAC,EAAItF,EAAMsF,CAAC,EAAI,CAAC,EAAG,KAAK,YAChE,CACA,IAAI,kBAAmB,CACnB,OAAO,KAAK,iBAChB,CACA,oBAAoB,EAAG,CACnB,MAAO,MAAK,kBAAoBtF,EAAMsF,CAAC,EAAG,KAAK,iBACnD,CACA,IAAI,aAAc,CACd,OAAO,KAAK,YAChB,CACA,eAAe,EAAG,CACd,MAAO,MAAK,aAAeC,EAAGA,CAClC,CACA,IAAI,YAAa,CACb,OAAO,KAAK,WAChB,CACA,cAAc,EAAG,CACb,MAAO,MAAK,YAAcA,EAAGA,CACjC,CACA,IAAI,iBAAkB,CAClB,OAAO,KAAK,gBAChB,CACA,IAAI,gBAAgB,EAAG,CACnB,KAAK,iBAAmBC,EAAG,KAAK,wBAAwB,CAC5D,CACA,IAAI,kBAAmB,CACnB,OAAO,KAAK,iBAChB,CACA,IAAI,iBAAiB,EAAG,CACpB,KAAK,kBAAoBA,EAAG,KAAK,yBAAyB,CAC9D,CACA,IAAI,gBAAiB,CACjB,OAAO,KAAK,eAChB,CACA,4BAA6B,CACzB,MAAM,2BAA2B,EAAG,KAAK,sBAAsB,gBAAkB,KAAK,gBAAgB,KAAK,IAAI,EAC/G,KAAK,sBAAsB,cAAkB,KAAK,gBAAgB,OAAO,EAAG,KAAK,sBAAsB,oBAAwB,KAAK,qBAAqB,CAC7J,CACA,gBAAgB,EAAY,EAAa,CACrC,GAAIC,EAAMC,CAAU,GAAKD,EAAME,CAAW,GAAK,CAAC,KAAK,iBAAmB,CAAC,KAAK,iBAAkB,MAAO,CACnG,EAAG,IACH,EAAG,GACP,EACA,IAAMC,EAAS,KAAK,iBAAiB,eAAe5F,EAAM2F,CAAW,CAAC,EACtE,GAAIC,EAAS,EAAG,CACZ,GAAgB,KAAK,eAAjB,SAA4C,KAAK,eAAhB,OAA8B,MAAO,CACtE,EAAG,IACH,EAAG,GACP,EACA,GAAe,KAAK,eAAhB,OAA8B,OAAO,KAAK,gBAAgB,OAAO,CACzE,CACA,IAAMC,EAAQ,KAAK,gBAAgB,eAAe7F,EAAM0F,CAAU,CAAC,EACnE,OAAO,KAAK,gBAAgB,aAAa,CAC9B,QACC,QACZ,CAAC,CACL,CACA,eAAe,EAAO,EAAiB,CACnC,OAAOvF,GAAS,KAAK,iBAAmB,KAAK,iBAAmB2F,GAAmB,CAAC,KAAK,kBAAkB3F,CAAK,EAAI,KAAO,KAAK,gBAAgB,KAAK,uBAAuBA,EAAO,KAAK,WAAW,EAAG,KAAK,uBAAuBA,EAAO,KAAK,YAAY,CAAC,EAAI,IACnQ,CACA,gBAAgB,EAAO,CAEnB,OAAsB,KAAK,eAAeA,CAAK,GAAkC,CACrF,CACA,gBAAgB,EAAO,CAEnB,OAAsB,KAAK,eAAeA,CAAK,GAAkC,CACrF,CACA,gBAAgB,EAAO,CACnB,MAAO,EACX,CACA,eAAe,EAAG,CAAC,CACnB,aAAa,EAAG,CAAC,CACjB,YAAY,EAAG,CAAC,CAChB,oBAAqB,CACjB,IAAIkC,EAAI0D,EACR,IAAMC,EAAS,CAAC,EAChB,OAAkB,EAAK,KAAK,mBAApB,MAAkE3D,EAAG,UAAa,KAAK,aAAa,SAAS,GAAK,CACtH,IAAMI,EAAS,CACX,IAAK6C,EACL,WAAY,CAAC,CACjB,EACA,CAA8F7C,CAAO,WAArGwD,GAAa,KAAK,iBAAiB,SAAS,CAAC,CAAC,CAAC,IAAI,EAAwB,CAAE,MAAO,KAAM,EAAwB,CAAE,QAAS,EAC7HD,EAAO,KAAKvD,CAAM,CACtB,EAAE,GAAc,EAAK,KAAK,kBAApB,MAAiEsD,EAAG,UAAa,KAAK,YAAY,SAAS,GAAK,CAClH,IAAMtD,EAAS,CACX,IAAK6C,EACL,WAAY,CAAC,CACjB,EACA,CAA6F7C,CAAO,WAApGwD,GAAa,KAAK,gBAAgB,SAAS,CAAC,CAAC,CAAC,IAAI,EAAwB,CAAE,MAAO,KAAM,EAAwB,CAAE,QAAS,EAC5HD,EAAO,KAAKvD,CAAM,CACtB,EAAE,EAAGuD,CACT,CACA,iBAAkB,CACd,MAAM,gBAAgB,EAAG5F,EAAQ,KAAK,MAAM,WAAW,IAAM,KAAK,aAAe,KAAK,MAAM,aAC5FA,EAAQ,KAAK,MAAM,MAAM,IAAM,KAAK,aAAe,KAAK,MAAM,QAASA,EAAQ,KAAK,MAAM,WAAW,IAAM,KAAK,aAAe,KAAK,MAAM,aAC1IA,EAAQ,KAAK,MAAM,cAAc,IAAM,KAAK,gBAAkB,CAAC,IAAM,KAAK,MAAM,eACpF,CACA,0BAA2B,CACvB,KAAK,qBAAqB,CAC9B,CACA,yBAA0B,CACtB,KAAK,qBAAqB,CAC9B,CACA,eAAgB,CACZ,MAAM,cAAc,CACxB,CACA,sBAAuB,CACnB,IAAM8F,EAAa,KAAK,kBAAoB,KAAK,kBACjD,GAAIA,EAAY,OAAOA,EAAW,aAAa,EAC/C,GAAM,CAAQ,QAAe,UAAU,KAAK,QAAQ,cAAc,EAClE,OAAO,KAAK,IAAIC,EAAQ,EAAGC,EAAS,CAAC,CACzC,CACA,WAAY,CACR,MAAM,UAAU,EAAG,KAAK,gBAAkB,KAAK,MAAM,GAAGC,GAAW,kBAAmB,CAClF,OAAQ,GAEGC,EAAM,MAAM,KAAuB,KAAK,kBAAiD,UAAU,CAElH,OAAU,CACN,KAAK,sBAAsB,CAC/B,EAAE,CACN,CACA,uBAAwB,CACpB,IAAQP,GACG,EAAoB,KAAK,YAAY,GAAkC,aAAlF,MAA0HA,EAAG,QAAWQ,GAAqB,KAAK,gBAAiB,KAAK,YAAY,GAAI,KAAK,YAAY,CAAC,CAAC,UAAU,CACzO,CACA,uBAAwB,CACpB,IAAMP,EAAS,CAAC,EAChB,OAAO,KAAK,gBAAgB,cAAgB,KAAK,YAAY,SAAS,GAAK,CACvEA,EAAO,KAAKV,CAAC,CACjB,EAAE,EAAG,KAAK,iBAAiB,cAAgB,KAAK,aAAa,SAAS,GAAK,CACvEU,EAAO,KAAKV,CAAC,CACjB,EAAE,EAAGU,CACT,CACJ,C,OCjKA,SAASQ,EAAsB,EAAO,CAClC,OAAOC,GAAmBvG,CAAK,EAAI,OAAO,WAAWA,CAAK,EAAI,CAClE,C,iEAEawG,IAAO,EAAY,IAAO,CACnC,GAAM,CAAe,eAA0B,aAA2B,gBAAyB,WAAmB,UAAqB,aAAiB,MAAkB,cAA8B,kBAAkC,oBAAmBC,EAAIC,EAAaD,EAAG,WAAW,EAAGE,EAAaF,EAAG,WAAW,EAAGG,GAAWH,EAAG,SAAS,EAAGI,EAAWJ,EAAG,SAAS,EAAGK,EAAOC,EAAW,KAAK,GAAS,OAAO,OAAO,CAAC,EAAG9G,CAAK,EAAE,EAC9a,GAAI,CAAC6G,GAAcA,EAAK,SAAX,EAAmB,OAAOA,EACvC,GAAI,CAACE,GAAeC,IAAmBC,GAAYJ,EAAMJ,EAAYS,CAAe,EAAG,MAAO,CAAC,EAC/F,IAAMC,GAAiB,EAAM,EAAY,IAAU,CAC/C,EAAKC,GAAgBV,EAAY,EAAKW,GAAcX,EAAahB,EAAO,EAAK4B,GAAiBZ,EAAahB,EAAQ,EACnH,EAAK6B,GAAY7B,EAAO,EAAK8B,GAAcC,GAAgBf,EAAahB,EAAQ,CAAC,CACrF,EACIgC,EAAQ,EAAGC,EAAM,GAAK,EAAGC,EAAY,CAAC,EAC1C,IAAK,IAAIC,EAAQ,EAAGA,EAAQhB,EAAK,OAAQ,IAAS,CAC9C,IAAMiB,EAAkBZ,EAAkB,KAAK,IAAIb,EAAsBQ,EAAKgB,EAAM,CAACpB,EAAW,CAAC,EAAIJ,EAAsBQ,EAAKgB,EAAM,CAACpB,EAAW,EAClJ,GAASqB,EAAiB,EAAM,KAAK,IAAIA,EAAiBH,CAAG,EAAGC,GAAmBE,IAAN,IAA0B,EAAY,CAAC,GACpH,EAAKD,EAAM,CAACE,IAAuBD,CACvC,CACA,IAAME,GAAYnB,EAAK,KAAK,GAAK,OAAO1D,EAAEsD,EAAW,EAAE,EAAGwB,EAAatB,GAAWD,EAC9EwB,EAAYxB,EAAYyB,EAAYF,EAAYG,GAAyB,EACvEC,GAAWC,GAAgBN,EAAS,EAC1C,GAAInB,EAAK,UAAU,EAAG,IAAM,CACxB,IAAMiB,EAAkB3E,EAAE4E,IAAsBQ,EAAQb,EAAQI,EAAkBJ,EAAQ,EACtFc,EAASD,EAAQN,EACrBO,EAAS5B,GAAY,EAASA,EAAU,GAAaA,GAAY,IAA0BkB,EAC3F,IAAMW,EAAcP,EAAWQ,EAAYR,EAAYM,EACvD,EAAEG,GAAWJ,EAAO,EAAEK,GAAOjB,EAAMG,EAAkBH,EAAM,EAAG,EAAE,UAAYU,GAASQ,GACrF1B,EAAchE,EAAGsF,EAAaD,CAAM,EAAG,EAAYE,CACvD,EAAE,EAAGP,EAAYF,EAAY,IAAIE,GAAa,KAAM,CAChD,IAAMzC,EAAQuC,EAAapB,EAAK,OAChCA,EAAK,UAAU,EAAG,IAAU,CACxBM,EAAchE,EAAGuD,EAAamB,EAAQnC,EAAOA,CAAK,CACtD,EAAE,CACN,KAAO,CACH,IAAMoD,EAAaX,EAAYC,GAC/B,EAAY1B,EAAYG,EAAK,SAAS,GAAK,CACvC,IAAMnB,EAAQvC,EAAEoE,KAAcX,EAAWA,EAAWzD,EAAE4E,IAAuBe,EAC7E3B,EAAchE,EAAG+E,EAAWxC,CAAK,EAAG,GAAaA,CACrD,EAAE,CACN,EACA,GAAUgC,IAAN,IAAgB,EAAKb,EAAK,OAAS,EAAE,CAACQ,GAAcV,IAAWiB,GAAab,EAAa,CACzF,IAAMrB,EAAQuC,EAAapB,EAAK,OAChCA,EAAK,UAAU,EAAG,IAAU,CACxBM,EAAchE,EAAGuD,EAAamB,EAAQnC,EAAOA,CAAK,CACtD,EAAE,CACN,CACA,OAAOmB,CACX,EAEa,IAAe,EAAM,EAAY,IAAoB,CAAC,CAACvB,EAAMuB,CAAI,GAAYA,EAAK,SAAX,GAAsB,CAAC,CAACA,EAAK,OAAO,GAAeR,EAAsBrG,EAAMyG,EAAW,IAA7C,EAA+C,GAAK,CAACS,GAAyBL,EAAK,SAAS,EAAK,IAAUkC,EAAM1C,EAAsBrG,EAAMyG,EAAW,GAAI,CAAC,IAArF,C,OCnDzM,SAAgBuC,GAAc,EAAW,EAAW,EAAO,CACvD,OAAQ,EAAO,EAAS,IAAWC,EAAyBC,EAAU,YAAvB,SAAmC,CAC9E,QAAS,CACb,EAAI,CACA,QAASA,EAAU,SAASlJ,EAAOmJ,EAAShI,CAAK,CACrD,EAAI,CACA,QAAS,CAAC,CACd,CACJ,CA4BA,SAAgBiI,GAAmB,EAAQ,EAAQ,CAC/C,GAAI,CAAC,IAAMC,EAAQ,MAAO,CAAC,EAC3B,OAAQA,EAAR,CACE,IAAK,SACH,OAAOC,GAET,IAAK,aACH,OAAOC,GAAY,OAAO,OAAO,OAAO,OAAO,CAAC,EAAGC,CAAM,EAAG,CACxD,UAAW,QACf,CAAC,CAAC,EAEJ,QACE,OAAOD,GAAY,OAAO,OAAO,OAAO,OAAO,CAAC,EAAGC,CAAM,EAAG,CACxD,UAAW,OACf,CAAC,CAAC,CACN,CACJ,C,oEA1Ca,GAAc,IAAW,CAClC,KAAmBA,EAAO,YAApB,SAAgC,eAAiB,cACvD,QAASR,GAAcQ,EAAQ,CAAC,EAAGC,EAAmB,MAAM,CAChE,GAEa,GAAgB,CACzB,KAAM,QACV,EAEa,GAAW,IAAW,CAC/B,KAAmBD,EAAO,YAApB,SAAgC,eAAiB,cACvD,OAAQ,SACR,QAASR,GAAcQ,EAAQ,CAAC,EAAGC,EAAmB,KAAK,CAC/D,GAEa,GAAU,IAAW,CAC9B,KAAmBD,EAAO,YAApB,SAAgC,gBAAkB,eACxD,OAAQ,SACR,QAASR,GAAcQ,EAAQ,CAAC,EAAGC,EAAmB,IAAI,CAC9D,GAyBa,OAA6B,CACtC/G,EAAQ,kBAAkB,QAAS,EAAQ,KAAY,CACnD,OAAQ0G,GAAmBI,EAAQH,CAAM,EACzC,MAAOK,GAASF,CAAM,EACtB,KAAMG,GAAQH,CAAM,EACpB,UAAW,CACP,SAAUI,GAAyB,UAAU,QACjD,CACJ,GAAG,CACP,EAEa,OAAqC,CAC9ClH,EAAQ,kBAAkB,gBAAiB,EAAQ,KAAY,CAC3D,OAAQ0G,GAAmBI,EAAQH,CAAM,CAC7C,GAAG,CACP,C,OCvEA,SAAgBQ,GAAmB,EAAM,EAAgB,CACrD,IAAgBC,EAChB,IAAMC,EAAuCC,EAAe,SAAwC,UAAkC,GAAIC,EAAWC,GAAcF,EAAe,QAAQ,EAAIA,EAAe,SAAW,EAAI,IAAKG,EAAwBH,EAAe,QAAQ,QAAgC,WAChT,MAAO,CACH,SAAUA,EAAe,SACzB,MAAgB,EAAKA,EAAe,OAA9B,MAAwDF,EAC9D,WAAY,CAAE,CACA,WACV,QAAS,CACG,SACR,QAAS,CACL,EAAG,CACC,KAAM,GAAS5G,EAAK,aAAa,IAAKlD,CAAK,EAC3C,GAAI,GAASkD,EAAK,aAAa,IAAKlD,CAAK,EAAIoK,EAAiB,CAC1D,EAAG,EACH,EAAG,CACP,EAAGL,EAAQ/J,EAAMqK,EAAiB,CAAC,CAAC,CACxC,EACA,EAAG,CACC,KAAM,GAASnH,EAAK,aAAa,IAAKlD,CAAK,EAC3C,GAAI,GAASkD,EAAK,aAAa,IAAKlD,CAAK,EAAIoK,EAAiB,CAC1D,EAAG,EACH,EAAG,CACP,EAAGL,EAAQ/J,EAAMqK,EAAiB,CAAC,CAAC,CACxC,CACJ,CACJ,CACJ,EAAG,CACW,WACV,QAAS,CACG,SACR,QAAS,CACL,EAAG,CACC,GAAI,GAASnH,EAAK,aAAa,IAAKlD,CAAK,EACzC,KAAM,GAASkD,EAAK,aAAa,IAAKlD,CAAK,EAAIoK,EAAiB,CAC5D,EAAG,EACH,EAAG,CACP,EAAGL,EAAQ/J,EAAMqK,EAAiB,CAAC,CAAC,CACxC,EACA,EAAG,CACC,GAAI,GAASnH,EAAK,aAAa,IAAKlD,CAAK,EACzC,KAAM,GAASkD,EAAK,aAAa,IAAKlD,CAAK,EAAIoK,EAAiB,CAC5D,EAAG,EACH,EAAG,CACP,EAAGL,EAAQ/J,EAAMqK,EAAiB,CAAC,CAAC,CACxC,CACJ,CACJ,CACJ,CAAE,CACN,CACJ,C,gGCpDa,GAAgB,OAAO,OAAO,OAAO,OAAO,CAAC,EAAGlK,CAAc,EAAG,CAC1E,IAAK,CACD,KAAM,MACN,KAAM,KACV,EACA,UAAW,CACP,KAAM,YACN,KAAM,MACV,CACJ,CAAC,C,iECLY,GAAb,cAA8CmK,EAA0B,CACpE,oBAAoB,EAAM,CACtB,KAAK,kBAAkB5J,EAAM,KAAK,CACtC,CACA,kBAAkB,EAAM,EAAW,CAC/B,IAAM6J,EAAQ,KAAK,OACfC,EAAU9J,EACd,GAAI,KAAK,wBAAwB,EAAG,CAChC,IAAM+J,EAAgB,KAAK,yBAAyB5J,CAAS,EAC7D,EAAUU,EAAU,CAAC,EAAG,KAAK,OAAQkJ,EAAe/J,CAAI,EACxD,IAAMgK,GAAsB,EAAU,IAAUnJ,EAAU,CAAC,EAAgBoJ,IAAb,UAA6CA,IAApB,gBAA+B,KAAK,OAAO,WAAa,KAAK,OAAO,WAAYC,CAAK,EAC5KtH,GAAQkH,EAAQ,KAAK,EAAI,EAAQ,MAAQA,EAAQ,MAAM,KAAK,GAASE,EAAmBE,EAAM,SAAUA,CAAK,EAAE,EAAI,EAAQ,MAAQF,EAAmBF,EAAQ,MAAM,SAAUA,EAAQ,KAAK,CAC/L,CACA,MAAO,CACH,KAAMA,EACC,OACX,CACJ,CACA,yBAAyB,EAAW,CAEhC,IAAM9J,EAAsB,MAAM,yBAAyBG,CAAS,GAA2B,CAAC,EAAG,CAAU,UAAkB,WAAWA,EAC1I,OAAOZ,EAAQ4K,CAAO,IAAM,EAAK,QAAUA,GAAU5K,EAAQ6K,CAAO,IAAM,EAAK,QAAUA,GACzF,OAAO,KAAKpK,CAAI,CAAC,CAAC,OAAS,EAAIA,EAAO,IAAK,EAC/C,CACJ,C,mDCtBa,GAAwB,GAAGqK,GAAO,e,8CCRlC,GAAM,CACf,YAAa,GACb,IAAK,CACD,MAAO,CACH,YAAa,CACjB,CACJ,EACA,MAAO,CACH,QAAS,CAAC,EACV,YAAa,CAAC,EACd,SAAU,UACV,MAAO,CACH,WAAY,SACZ,OAAQ,CACJ,KAAM,UACN,IAAK,iBACT,EACA,YAAa,CACjB,CACJ,EACA,WAAY,CACR,MAAO,CACH,UAAW,CACf,CACJ,EACA,YAAa,CACT,MAAO,CACH,KAAM,CACF,KAAM,UACN,IAAK,kBACT,EACA,YAAa,CACjB,CACJ,CACJ,C,+LCsBM,GAA+B,CACjC,WAAY,CAAC,EACb,WAAY,CAAC,EACb,WAAY,CAAC,EACb,SAAU,CAAC,EACX,SAAU,CAAC,CACf,EAAG,GAA+B,CAC9B,YAAa,CAAC,CAClB,EAEa,EAAb,MAAaC,UAAsBC,EAAY,CAC3C,aAAc,CACV,MAAM,GAAG,SAAS,EAAG,KAAK,uBAAyBC,GAA0B,KAAK,aAAe,MACjG,KAAK,aAAe,MAAO,KAAK,cAAkB,CAE9C,IAAMC,EAAa,KAAK,QAAQ,cAAc,EAC9C,MAAO,CACH,EAAGC,GAAgC,KAAK,OAAsC,QAASD,EAAW,MAAOA,EAAYA,EAAW,MAAQ,CAAC,EACzI,EAAGC,GAAgC,KAAK,OAAsC,QAASD,EAAW,OAAQA,EAAYA,EAAW,OAAS,CAAC,CAC/I,CACJ,EAAG,KAAK,YAAcE,GAAoB,KAAK,UAAYC,GAAkB,KAAK,SAAW,KAC7F,KAAK,WAAa,KAAM,KAAK,eAAiB,KAAM,KAAK,cAAgB,KAAM,KAAK,sBAAwB,GAAS,CACjH,IAAM5F,EAAQ1F,EAAMqK,GACpB,GAAI/E,EAAMI,CAAK,EAAG,OAAO,KACzB,IAAMD,EAAS,KAAK,mBAAmBzF,CAAK,EAAGuL,EAAc,KAAK,wBAAwBvL,CAAK,EAAGwL,EAAS,KAAK,cAAcxL,CAAK,EACnI,OAAOoK,EAAiBoB,GAAS/F,EAAS8F,GAAe,EAAG7F,CAAK,CACrE,CACJ,CACA,4BAA6B,CACzB,MAAM,2BAA2B,EAAG,KAAK,sBAAsB,eAAmB,CAC9E,MAAS,KAAK,UAAU,CAAC,CAAC,EAC1B,MAAS,KAAK,UAAU,CAAC,CAAC,CAC9B,GAAI,KAAK,sBAAsB,gBAAkB,GAAS,KAAK,gBAAgB1F,CAAK,EACpF,KAAK,sBAAsB,cAAgB,GAAS,KAAK,cAAcA,CAAK,CAChF,CACA,iBAAkB,CACd,IAAgB8J,EAAIlJ,EAAI6K,EACxB,MAAM,gBAAgB,EAAG,KAAK,cAA+B,KAAK,MAAM,cAAsC,EAC9G,KAAK,cAA+B,KAAK,MAAM,cAAsC,EACrF,IAAMC,EAAaC,EAAuB1L,EAAQ,KAAK,MAAM,UAAU,EAAI2L,EAAe,KAAK,MAAM,UAAU,EAAI,KAAK,YAAa3L,EAAQ,KAAK,MAAM,QAAQ,EAAI2L,EAAe,KAAK,MAAM,QAAQ,EAAI,KAAK,SAAS,EACxN,KAAK,YAAcF,EAAW,WAAY,KAAK,UAAYA,EAAW,SACtE,KAAK,UAAYzL,EAAQ,KAAK,MAAM,QAAQ,EAAI2L,EAAe,KAAK,MAAM,QAAQ,EAAI,EACtF,KAAK,cAAc,KAAK,MAAM,YAAc,KAAK,MAAM,UAAU,EAAG,KAAK,MAAM,eAAiB,KAAK,eAAe,KAAK,MAAM,aAAa,EAC5I,KAAK,aAAe,CAAC,EAAG,KAAK,gBAAkB,KAAK,YAAY,MAAM,EAAG,KAAK,iBAAmB,CAAC,EAClG,KAAK,kBAA6B,EAAoB,KAAK,MAAM,kBAAiD,kBAA1F,MAA+H9B,EACvJ,KAAK,cAAyB,EAAK,KAAK,MAAM,cAA1B,MAA2DlJ,EAC/E,KAAK,kBAA6B,EAAK,KAAK,MAAM,kBAA1B,MAA+D6K,CAC3F,CACA,UAAW,CACP,MAAM,SAAS,EACf,IAAMI,EAAW,KAAK,YAAY,EAClC,GAAI,CAACA,EAAU,OACfC,GAAiC,KAAK,SAAU,MAAOvF,EAAG,EAAGsF,EAAS,UAAU,CAC5E,KAAM,MACN,QAAS,CACL,eAAkB,KAAK,YAAY,GACnC,eAAkB,KAAK,YACvB,aAAgB,KAAK,UACrB,aAAgB5L,EAAQ,KAAK,MAAM,QAAQ,EAAI2L,EAAe,KAAK,MAAM,QAAQ,EAAI,EACrF,aAAcG,GACd,WAAYC,GACZ,QAASC,GACT,cAAe5B,EACf,SAAU6B,GACV,WAAYC,GACZ,IAAKC,GACL,YAAa,KAAK,aAClB,gBAAiB,KAAK,iBACtB,gBAAiB,KAAK,gBAC1B,CACJ,EAAG,CAAC,CAAC,EACL,IAAMC,EAAgB,IAAIC,GAAS,KAAK,SAAU,CAC9C,KAAM,GAAGvB,GAAO,UAAU,KAAK,GAAG,eACtC,CAAC,EACDsB,EAAc,MAAM,CAAE,KAAK,YAAY,CAAE,EAAG,CACxC,KAAM,UACV,CAAC,EAAG,KAAK,eAAiB,IAAIE,GAAe,KAAK,QAASF,CAAa,CAC5E,CACA,aAAc,CACV,IAAInK,EACJ,MAAM,YAAY,GAAa,EAAK,KAAK,iBAApB,MAAwDA,EAAG,QAAQ,CAC5F,CACA,UAAW,CACP,KAAK,SAAW,KAAK,YAAY,OAAO,OAAO,OAAO,OAAO,CAAC,EAAG8I,EAAc,KAAK,GAAG,EAAG,CACtF,KAAM,KAAK,aACX,KAAM,KAAK,YACf,CAAC,EAAG,CACA,IAAKwB,GACL,SAAU,KAAK,aACf,aAAc,CAAC,CACnB,EAAG,CACC,MAAOC,GAAkB,KAAK,MAAO,KAAK,YAAY,EACtD,gBAAiB,KAAK,YAC1B,CAAC,EAAG,KAAK,mBAAqB,KAAK,cAAgB,KAAK,YAAY,CAChE,KAAM,cACN,KAAM,KACV,EAAG,CACC,SAAU,CAAC,CACf,CAAC,EAAG,KAAK,MAAM,eAAe,KAAK,aAAa,EACpD,CACA,gBAAgB,EAAO,CACnB,OAAOC,GAAMX,EAAe,CAAC,CAAC/L,CAAK,CACvC,CACA,cAAc,EAAO,CACjB,OAAO0M,GAAMV,EAAa,CAAC,CAAChM,CAAK,CACrC,CACA,sBAAuB,CACnB,OAAO2M,QAA2B,KAAK,MAAM,cAAe,KAAK,cAAe,KAAK,gBAAmB,CACpG,WAAY,KAAK,YACjB,SAAU,KAAK,SACnB,GAAG,CACP,CACA,eAAgB,CACZ,IAAMC,EAAe,CACjB,MAAS,KAAK,UAAU,CAAC,CAAC,EAC1B,MAAS,KAAK,UAAU,CAAC,CAAC,EAC1B,KAAM,KAAK,kBAAkB,EAC7B,YAAaC,GAAqB,KAAK,YAAY,EAAI,KAAK,iBAAqB,KAAK,qBAAqB,EAAI,KAAK,aACpH,YAAaA,GAAqB,KAAK,YAAY,EAAI,KAAK,iBAAqB,KAAK,qBAAqB,EAAI,KAAK,aACpH,iBAAoB,KAAK,qBAAqB,EAAI,KAAK,cACvD,WAAY,GAAS,KAAK,gBAAgB7M,CAAK,EAC/C,SAAU,GAAS,KAAK,cAAcA,CAAK,EAC3C,SAAU,KAAK,UACf,aAAc,KAAK,aACvB,EAAG8M,EAAU,KAAK,SAClBA,GAAW,KAAK,aAAaA,EAASF,EAAc,SAAUxK,EAAe,MAAM,EACnF,IAAM2K,EAAe,KAAK,cAC1BA,GAAgB,KAAK,aAAaA,EAAc,OAAO,OAAO,OAAO,OAAO,CAAC,EAAGH,CAAY,EAAG,CAC3F,YAAe,CACX,IAAM/F,EAAO,KAAK,YAAY,CAAC,CAAC,WAChC,MAAO,CAACA,GAAQ,CAACA,EAAK,MAC1B,CACJ,CAAC,EAAG,SAAUzE,EAAe,MAAM,CACvC,CACA,wBAAyB,CACrB,OAAO,KAAK,wBAAwB,KAAK,SAAW,CAAE,KAAK,QAAS,EAAI,CAAC,CAAC,CAC9E,CACA,aAAc,CACV,MAAM,YAAY,EAAG,KAAK,UAAY,KAAK,eAAe,iBAAiB,KAAK,IAAI,KAAK,QAAQ,CACrG,CACA,sBAAsB,EAAM,EAAM,CAC9B,GAAI,MAAM,sBAAsBc,EAAMxC,CAAI,EAAGwC,EAAK,OAAS,KAAK,aAAc,CAC1E,IAAM8J,EAAU,KAAK,QAAQ,CAAC,CAAC9J,EAAK,MACpC,GAAI8J,EAAS,IAAK,IAAM7L,KAAS6L,EAAQ,OAAS,CAAC,EAAG,KAAK,aAAa9J,EAAM,KAAK,oBAAoB8J,EAAQ,MAAM7L,EAAM,EAAGA,EAAOiB,EAAe,SAAS,CACjK,CACkBc,EAAK,OAAvB,eAA+B,KAAK,aAAaA,EAAM,KAAK,oBAAoBxC,EAAK,KAAK,EAAG,SAAU0B,EAAe,SAAS,CACnI,CACA,mBAAmB,EAAU,CACzB6K,GAAY,KAAK,aAAaA,EAAU,CACpC,QAASP,GAAMQ,EAAqB,CAAC,CAAC,KAAK,IAAI,EAC/C,KAAM,GAASlN,EAAM,KAAK,kBAAkB,CAAC,CAAC,IAC9C,KAAM,KAAK,kBAAkB,EAC7B,EAAG,KAAK,gBAAgB,KAAK,IAAI,CACrC,CAAC,CACL,CACA,eAAgB,CACZ,MAAM,cAAc,CACxB,CACA,WAAY,CACR,IAAIkC,EACJ,MAAM,UAAU,GAAa,EAAK,KAAK,eAAe,YAAY,IAA/C,MAAsEA,EAAG,OAAO,YAAY,SAAU,KAAK,oBAAoB,KAAK,IAAI,CAAC,CAChK,CACA,YAAa,CAAC,CACd,aAAc,CACV,KAAK,eAAe,YAAY,CAAC,CAAC,kBAAkB,EAAG,KAAK,qBAAqB,EACjF,MAAM,YAAY,CACtB,CACA,mBAAoB,CAChB,OAAO,KAAK,aAAe,CAAE,KAAK,YAAa,EAAI,CAAC,CACxD,CACA,iBAAkB,CACd,OAAO,KAAK,eAChB,CACA,qBAAsB,CAClB,KAAK,MAAM,KAAKgE,GAAW,oBAAqB,CAC5C,MAAO,IACX,CAAC,EAAG,KAAK,eAAe,WAAW,CACvC,CACA,oBAAoB,EAAM,CACtB,GAAI,CAACxF,EAAM,OACX,IAAMyM,EAAQ,CAAC,EACf,OAAOzM,EAAK,cAAgB,EAAM,gBAAoB,KAAK,qBAAqB,EAAIA,EAAK,aACzFA,EAAK,cAAgB,EAAM,gBAAoB,KAAK,qBAAqB,EAAIA,EAAK,aAClFA,EAAK,eAAiB,EAAM,iBAAqB,KAAK,qBAAqB,EAAIA,EAAK,cACpFyM,CACJ,CACA,cAAc,EAAO,CACjB,MAAO,CACH,EAAG,KAAK,SAAS,aAAa,IAAKnN,EAAO,QAAQ,EAClD,EAAG,KAAK,SAAS,aAAa,IAAKA,EAAO,QAAQ,CACtD,CACJ,CACA,UAAU,EAAQ,SAAU,CAGxB,OADiCmB,IAAb,SAAmD,KAAK,QAAQ,CAAC,CAAiB,KAAK,UAAyC,MAAS,QAAuC,OAAsC,YAA2D,KAAK,QAAQ,CAAC,CAAiB,KAAK,UAAyC,MAAS,QAAuC,QAAsCA,EAAA,EAAuC,cACpc,KAAK,YACpD,CACA,eAAe,EAAQ,SAAU,CAG7B,OADiCA,IAAb,SAAmD,KAAK,QAAQ,CAAC,CAAiB,KAAK,UAAyC,MAAS,QAAuC,OAAsC,YAA2D,KAAK,QAAQ,CAAC,CAAiB,KAAK,UAAyC,MAAS,QAAuC,QAAsCA,EAAA,EAAuC,cACpc,KAAK,YACpD,CACA,cAAc,EAAG,EAAG,CAChB,OAAO,KAAK,qBAAqB,EAAIiM,GAAK9H,EAAM+H,CAAC,EAAI,EAAIA,GAAK,KAAK,aACvE,CACA,mBAAmB,EAAO,EAAO,CAC7B,OAAO,KAAK,qBAAqB,EAAI,KAAK,UAAUlM,CAAK,EAAI,KAAK,aACtE,CACA,sBAAuB,CACnB,IAAMS,EAAS,MAAM,qBAAqB,EAC1C,OAAO,OAAO,OAAO,OAAO,OAAO,CAAC,EAAGA,CAAM,EAAG,CAC5C,gBAAiB,OAAO,OAAO,OAAO,OAAO,CAAC,EAAGA,EAAO,eAAe,EAAG0L,EAA4B,EACtG,gBAAiB,OAAO,OAAO,OAAO,OAAO,CAAC,EAAG1L,EAAO,eAAe,EAAG2L,EAA4B,CAC1G,CAAC,CACL,CACA,aAAa,EAAM,EAAU,EAAiB,CAC1C,IAA8D,CAC1D,KAAM,CAAC,CACX,EACA,IAAMC,EAAoB,CAAE,UAAW,UAAW,eAAgB,SAAU,cAAe,eAAgB,aAAc,WAAY,UAAW,EAChJA,EAAkB,SAAS,GAAO,CAC9B,EAAgB5N,GAAO,CAAC,CAC5B,EAAE,EACF,IAAM0C,EAAS,MAAM,aAAa5B,EAAM+M,EAAUC,CAAe,EACjE,MAAO,KAA6B,CAAC,EAAGF,EAAkB,MAAM,GAAO9M,EAAKd,KAAS6N,EAAS7N,GAAK,IAAM,EAAO,SAAW,CAAC,EAC5H,EAAO,OAAS,CAAC,GAAI0C,CACzB,CACA,wBAAwB,EAAO,EAAO,CAClC,OAAO,KAAK,qBAAqB,EAAI,KAAK,eAAenB,CAAK,EAAI,KAAK,aAC3E,CACA,eAAe,EAAO,EAAiB,CACnC,IAAMuE,EAAQ1F,EAAMqK,GAEpB,GADI/E,EAAMI,CAAK,GACXC,GAAmB,CAAC,KAAK,kBAAkB3F,CAAK,EAAG,OAAO,KAC9D,IAAMyF,EAAS,KAAK,mBAAmBzF,CAAK,EAAGwL,EAAS,KAAK,cAAcxL,CAAK,EAChF,OAAOoK,EAAiBoB,EAAQ/F,EAAQC,CAAK,CACjD,CACA,eAAgB,CAEZ,IAAM9C,EAAkB,CACpB,UAAW,EAAO,EAAS,IAAU,CAEjC,GAAIzB,IAAUsI,EAAmB,OAAQ,OAAO,KAAK,YACrD,GAAItI,IAAUsI,EAAmB,UAAW,OAAO,KAAK,UACxD,IAAMkE,EAAW,CAAElE,EAAmB,UAAWA,EAAmB,IAAK,EAAGmE,EAAe,KAAK,SAAS,YAAY,EAAiBC,EAAoBhH,IAAqBiH,GAC/K,GAAeF,EAAa,MAAM,GAEP,EAAE,QAAQ,KAAK,KAAmCE,GAAuBD,EAClG,IAHE,IAAK,GAGJ,OAAO,KAAK,YACjB,GAAeD,EAAa,MAAM,GAEP,EAAE,QAAQ,KAAK,KAAmCE,GAAuBD,EAClG,IAHE,IAAK,GAGJ,OAAO,KAAK,UACjB,IAAME,EAAkB,CAAE,GAAGH,CAAa,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,GAEjC,EAAE,QAAQ,KAAK,KAAmCE,GAAuBD,EAClG,EACF,OAAOF,EAAS,SAASxM,CAAK,EAA2B4M,GAA2C,kBAAkB,GAAkC,SAAkCA,GAA2C,WAA0C,QACnR,CACJ,EAAGvL,EAA8B,KAAK,MAAM,iBAAgD,OAC5F,GAAI,KAAK,SAAU,CACf,IAAMwL,EAAqBvL,EAA+BC,EAAQ,kBAAkB,KAAK,IAAkCE,EAAiBJ,CAAY,EAAGG,EAAoB,MAAO,KAAK,MAAO,KAAK,qBAAqB,CAAC,EAC7NqL,EAAmB,QAAUA,EAAmB,OAAO,OAAS,EAAmB,OAASnE,GAAmB,KAAK,SAAUmE,EAAmB,MAAM,GACvJ,KAAK,SAAS,mBAAmBA,CAAkB,CACvD,CACA,GAAI,KAAK,cAAe,CACpB,IAAMA,EAAqBvL,EAA+BC,EAAQ,kBAAkB,aAAa,IAAkCE,EAAyBJ,GAA8B,QAAQ,CAAC,EACnM,KAAK,cAAc,mBAAmBwL,CAAkB,CAC5D,CACJ,CACA,qBAAsB,CAClB,MAAO,QACX,CACA,gBAAiB,CACb,MAAO,CAAC,CACZ,CACA,qBAAsB,CAClB,MAAO,CAAC,CACZ,CACA,oBAAqB,CACjB,MAAO,EACX,CACA,oBAAoB,EAAO,EAAO,CAC9B,OAAOnG,CACX,CACA,gBAAiB,CACb,MAAO,CAAE,KAAK,QAAS,CAC3B,CACJ,EAEA,EAAc,uBAAyBqD,GAA0B,EAAc,KAAO+C,GACtF,EAAc,aAAe,CACpBC,MACT,EAEa,EAAb,cAA+BlD,CAAc,CACzC,aAAc,CACV,MAAM,GAAG,SAAS,EAAG,KAAK,KAAOtJ,EAAe,GACpD,CACJ,EAEA,EAAU,KAAOA,EAAe,IAEnB,OAA0B,CACnCyM,EAAgB,EAAGC,GAAqB,EAAGC,GAA6B,EAAG3L,EAAQ,eAAe4L,EAAU,KAAMA,CAAS,CAC/H,C,oECrWa,GAAb,cAA+CC,EAAyB,CACpE,eAAe,EAAM,CACjB,MAAO,CAAC,KAAK,YAAcC,IAAS,KAAK,UAC7C,CACA,iBAAiB,EAAM,CAEnB,IAAMC,EAAgB5O,EAAMa,EAAK,SAAS,EAAGgO,EAA4BhO,EAAK,aAAmEA,EAAK,SAAuC,IAAmC,YAChO,OAAOT,EAAQyO,CAAU,GAAKD,EAAc,SAAS,GAAa,CAC9DnJ,EAAMqJ,EAAU,UAAU,IAAM,EAAU,WAAaD,EAC3D,EAAE,EAAGD,CACT,CACA,sBAAsB,EAAM,EAAU,CAClC,OAAO,MAAM,sBAAsB/N,EAAM,CAAE,SAAU,cAAe,cAAe,aAAc,WAAY,UAAW,UAAW,gBAAiB,EAAGkO,CAAQ,CACnK,CACA,cAAc,EAAM,CAChB,MAAM,cAAclO,CAAI,EAAG4C,GAAQ5C,EAAK,QAAQ,GAAKA,EAAK,SAAS,OAAS,GAAKA,EAAK,SAAS,SAAS,GAAQ,CACjGmO,EAAK,aAAhB,SAA+B,EAAK,WAAa,SACrD,EAAE,EAAG,KAAK,oBAAoBnO,CAAI,EAAGT,EAAQS,EAAK,SAAS,IAAM,EAAK,UAAY,KAAK,iBAAiBA,CAAI,EAChH,CACJ,C,kDCrBa,EAAb,cAAiDoO,EAA0B,CACvE,UAAW,CACP,MAAO,CAAC,CACZ,CACA,sBAAsB,EAAM,CAExB,IAAMC,EAAa,MAAM,sBAAsBrO,EAAM,CAAE,SAAU,eAAgB,eAAgB,WAAY,WAAY,mBAAoB,cAAe,kBAAmB,yBAA0B,cAAe,CAAC,EACzN,OAAO,KAAK,0BAA0B,CAAE,aAAc,YAAa,CAAC,EAAG,EAAW,cAAgBA,EAAK,eAAiBA,EAAK,YAC7H,EAAW,WAAaA,EAAK,YAAcA,EAAK,WAAY,EAAW,YAA6BA,EAAK,kBAAiD,YAC1JqO,CACJ,CACJ,C,wDCTa,GAAb,cAAkC1K,CAAU,CACxC,aAAc,CACV,MAAM,GAAG,SAAS,EAAG,KAAK,uBAAyB2K,CACvD,CACJ,EAEA,GAAa,uBAAyBA,C,4ECEzBC,EAAb,cAA8BC,EAAa,CACvC,aAAc,CACV,MAAM,GAAG,SAAS,EAAG,KAAK,uBAAyBF,EACnD,KAAK,KAAO,MAAO,KAAK,WAAatN,EAAe,GACxD,CACJ,EAEA,EAAS,KAAO,MAAO,EAAS,WAAaA,EAAe,IAAK,EAAS,uBAAyBsN,EAEtF,OAAyB,CAClCpK,GAA6B,EAAGuK,GAAkB,EAAGzM,EAAQ,cAAcuM,EAAS,KAAMA,CAAQ,CACtG,C,uDCrBa,IAAmB,EAAM,IAAO,CACzC,GAAM,CAAQ,QAAc,QAAgB,WAAWG,GAAW5I,CAAE,EAAIA,EAAG,EAAIA,EAAI6I,EAAa,CAAC,EAAGC,EAActP,EAAM,KAAK,IAAI,EACjI,OAAOuP,EAAM,SAAWF,EAAW,KAAK,CACpC,KAAM,QACN,MAAO,EACP,MAAOC,EACP,KAAMC,CACV,CAAC,EAAG1P,EAAM2P,CAAO,CAAC,CAAC,UAAU,EAAG,IAAM,CAClCC,EAAE,SAAWJ,EAAW,KAAK,CACzB,KAAM,UACN,MAAOxG,EACP,MAAOyG,EACP,KAAMG,CACV,CAAC,CACL,EAAE,EAAGJ,CACT,C,iDCjBM,IAAgB,EAAa,KAAa,CAC5C,SAAU,CACN,KAAM,QACN,IAAKK,CACT,EACA,KAAM,CACF,KAAM,UACN,IAAKC,CACT,EACA,WAAY,SACZ,YAAa,EACb,aAAc,MACd,UAAW,QACf,GAEa,GAAY,CACrB,MAAO,CACH,QAAS,CAAC,EACV,UAAW,CAAC,EACZ,QAAS,CAAC,EACV,MAAOC,GAAa,aAAc,kBAAkB,CACxD,EACA,QAAS,CACL,QAAS,CAAC,EACV,MAAOA,GAAa,aAAc,mBAAmB,CACzD,CACJ,C,+IC1BI,GAAgC,SAAS,EAAG,EAAG,CAC/C,IAAIC,EAAI,CAAC,EACT,IAAK,IAAIC,KAAK1K,EAAG,OAAO,UAAU,eAAe,KAAKA,EAAG0K,CAAC,GAAKC,EAAE,QAAQD,CAAC,EAAI,IAAM,EAAEA,GAAK1K,EAAE0K,IAC7F,GAAY1K,GAAR,MAA2B,OAAO,OAAO,uBAA5B,WAAmD,CAChE,IAAI,EAAI,EACR,IAAK,EAAI,OAAO,sBAAsBA,CAAC,EAAG,EAAI0K,EAAE,OAAQ,IAAKC,EAAE,QAAQD,EAAE,EAAE,EAAI,GAAK,OAAO,UAAU,qBAAqB,KAAK1K,EAAG0K,EAAE,EAAE,IAAM,EAAEA,EAAE,IAAM1K,EAAE0K,EAAE,IAC9J,CACA,OAAOD,CACX,EAkCa,EAAb,cAA+BG,EAAc,CACzC,aAAc,CACV,MAAM,GAAG,SAAS,EAAG,KAAK,KAAOC,GAAkB,UAAW,KAAK,KAAOA,GAAkB,UAC5F,KAAK,QAAU,YAAa,KAAK,WAAa,OAAQ,KAAK,aAAeC,GAAa,UACvF,KAAK,YAAcC,EAAY,UAAW,KAAK,KAAO,EAAG,KAAK,aAAe,IACjF,CACA,OAAO,YAAY,EAAW,CAC1B,OAAOC,GAAYvP,EAAW,KAAK,QAAS,KAAK,MAAO,GAAKuE,GAAK,CAAC,IAAMA,EAAE,QAAQ,CACvF,CACA,SAAU,CACN,MAAM,QAAQ,EAAG,KAAK,SAAS,EAAG,KAAK,UAAU,CACrD,CACA,iBAAkB,CACd,MAAM,gBAAgB,EAAG,KAAK,KAAO,KAAK,MAAM,KAAO,EAAG,KAAK,OAAS,KAAK,MAAM,MACnF,KAAK,SAAWvF,EAAM,KAAK,MAAM,OAAO,EAAG,KAAK,SAAW,KAAK,QAAQ,0BAA0BA,EAAM,KAAK,MAAM,QAAQ,EAAGA,EAAM,KAAK,MAAM,WAAW,CAAC,CAC/J,CACA,aAAa,EAAM,EAAU,CACzB,IAAMyC,EAAS,MAAM,aAAa5B,EAAM+M,CAAQ,EAChD,OAAS4C,GAAQ5C,EAAU/M,CAAI,GAAK4B,EAAO,QAAUA,EAAO,YAAc,EAAO,OAAS,CAAC,EAC3F,EAAO,SAAW,CAAC,EAAG,EAAO,QAAU,OAAO,OAAO,OAAO,OAAO,CAAC,EAAGA,EAAO,OAAO,EAAG,CACpF,UAAW,CAAC,EACZ,OAAQ,CAAC,EACT,OAAQ,CAAC,CACb,CAAC,GAAIA,CACT,CACA,WAAY,CACJ,KAAK,QAAQ,qBACN,KAAK,MAAM,UAAtB,SAA8C,KAAK,MAAM,UAAvB,SAAkC,KAAK,MAAM,GAAG,2BAA4B,GAAU,CACpH,IAAMgO,EAAI9G,EAAO,SAAS,GAC1B,KAAK,gBAAgB8G,CAAC,GAAK,KAAK,YAAYC,GAAkBD,CAAC,CAAC,CACpE,EAAE,EAAG,KAAK,MAAM,GAAG,2BAA4B,GAAU,CACrD,KAAK,cAAgB,KAAK,YAAY,IAAI,CAC9C,EAAE,IAAM,KAAK,MAAM,GAAG,wBAAyB,GAAU,CACrD,IAAMA,EAAI9G,EAAO,SAAS,GAC1B,KAAK,gBAAgB8G,CAAC,GAAK,KAAK,YAAYC,GAAkBD,CAAC,CAAC,CACpE,EAAE,EAAG,KAAK,MAAM,GAAG,wBAAyB,GAAU,CAClD,KAAK,cAAgB,KAAK,YAAY,IAAI,CAC9C,EAAE,GACN,CACA,YAAY,EAAO,CACf,KAAK,aAAetQ,EAAO,KAAK,aAAa,WAAW,EACxD,IAAMwQ,EAAQ,KAAK,mBAAmB,EACtC,KAAK,kCAAkCA,CAAK,CAChD,CACA,UAAW,CACP1E,GAAiC,KAAK,QAAQ,QAAS,kBAAmB2E,EAAe,EACzF,IAAMC,EAAc,IAAIpE,GAAS,KAAK,QAAQ,QAAS,CACnD,KAAM,GAAG,KAAK,KAAK,GAAG,KAAK,GAAG,MAClC,CAAC,EACDoE,EAAY,UAAU,CAClB,KAAM,kBACN,aAAgB,CACZ,MAAO,KAAK,OACZ,QAAS,KAAK,SACd,UAAa,KAAK,YACtB,EACJ,CAAC,EAAGA,EAAY,OAAO,YAAY,SAAU,KAAK,YAAY,KAAK,IAAI,CAAC,EAAG,KAAK,aAAe,IAAInE,GAAe,KAAK,QAASmE,CAAW,CAC/I,CACA,uBAAwB,CACpB,IAAMF,EAAQ,KAAK,mBAAmB,EACtC,KAAK,kCAAkCA,CAAK,EAAG,MAAM,sBAAsB,CAC/E,CACA,oBAAqB,CACjB,GAAI,CAAC,IAAM,KAAK,MAAM,SAAW,CAAC,IAAM,KAAK,MAAM,OAAkB,KAAK,eAAd,KAA4B,MAAO,CAC3F,QAAS,CAAC,CACd,EACA,IAAMG,EAAS,KAAK,SAAS,GAAI,CAAQ,QAAe,UAAUA,EAAO,cAAc,EAAG,CAAI,IAAM,KAAKA,EAAO,oBAAoB,EAAGzO,EAAK,KAAK,MAAO,CAAU,UAAkB,UAAkB,UAAqB,aAAmB,SAASA,EAAI0O,GAAWC,GAAO3O,EAAI,CAAE,UAAW,UAAW,UAAW,aAAc,OAAQ,CAAC,EAAG4O,EAAuB,CAAC,EACtW,OAAOjR,EAAM2P,CAAO,CAAC,CAAC,SAAS,GAAY,CACvC,IAAMuB,EAAcxP,EAAU,CAAC,EAAG,KAAK,OAAO,QAASyP,CAAQ,EAC/DF,EAAqB,KAAK,CACtB,QAAS,CAAC,IAAMC,EAAY,UAAY,CAACA,EAAY,OAAkB,KAAK,eAAd,MAC9D,MAAOA,EAAY,OAAS,KAAK,KACjC,UAAWA,EAAY,UACvB,QAASA,EAAY,QACrB,WAAYA,EAAY,WACxB,YAAaA,EAAY,YACzB,MAAO,OAAO,OAAO,OAAO,OAAO,CAAC,EAAGE,GAAwBC,GAAYH,EAAY,MAAO,CAAE,MAAO,CAAC,EAAG,KAAK,YAAY,CAAC,EAAG,CAC5H,KAAM,KAAK,YAAYA,EAAY,MAAOA,EAAY,MAAM,IAAI,CACpE,CAAC,CACL,CAAC,CACL,EAAE,EAAG,OAAO,OAAO,CACf,QAAS,CAAC,EACV,KAAM,CACK,QACC,QACZ,EACA,OAAQ,KAAK,aACV,IACA,IACH,GAAII,EAAUC,GAAkBD,EAAS,KAAK,qBAAqB,CAAC,EAAI,EACxE,GAAIE,EAAUD,GAAkBC,EAAS,KAAK,qBAAqB,CAAC,EAAI,EACxE,WAAY3C,GAAc,EAAI,EAC9B,MAAO,CACH,QAAS,CAAC,IAAMa,EAAM,UAAY,CAACtP,EAAQsP,EAAM,KAAK,GAAc,KAAK,eAAd,MAC3D,MAAOA,EAAM,OAAS,KAAK,KAC3B,UAAWA,EAAM,UACjB,QAASA,EAAM,QACf,WAAYA,EAAM,WAClB,YAAaA,EAAM,YACnB,MAAO,OAAO,OAAO,OAAO,OAAO,CAAC,EAAG0B,GAAwBC,GAAY3B,EAAM,MAAO,CAAE,MAAO,CAAC,EAAG,KAAK,YAAY,CAAC,EAAG,CACtH,KAAM,KAAK,YAAYA,EAAM,MAAOA,EAAM,MAAM,IAAI,CACxD,CAAC,CACL,EACA,QAASuB,CACb,EAAGF,EAAQ,CACf,CACA,kCAAkC,EAAO,CACrC,GAAI,CAAC,IAAMJ,EAAM,QAAS,OAAO,KAAK,qBAAuB,KAAK,oBAAoB,QAAU,KAAK,oBAAoB,OAAO,YAAY,KAAK,mBAAmB,EACpK,KAAM,KAAK,oBAAsB,MACjC,GAAI,KAAK,oBAAqBH,GAAQG,EAAO,KAAK,WAAW,GAAK,KAAK,oBAAoB,cAAcA,CAAK,MAAQ,CAClH,IAAMc,EAAY,KAAK,aAAa,EAAG3C,EAAY,IAAI4C,GAAoBf,CAAK,EAChF,EAAU,KAAO,YAAac,EAAU,IAAI3C,CAAS,EAAG,KAAK,oBAAsBA,EACnF,KAAK,oBAAoB,GAAG,MAAO,EAAO,IAAS,KAAK,eAAe,KAAK,oBAAqB6C,EAAOhD,CAAI,EAAE,CAClH,CACA,KAAK,YAAcgC,CACvB,CACA,YAAY,EAAO,EAAM,CAErB,OAAO9D,EAAQ,KAAK,aAAe,KAAK,aAAaA,GAAS,GAAK0C,GAAWqC,CAAI,EAAmBA,EAAK,KAAK,aAAc,IAAK,EAAC,GAA2B,GAAaA,GAAc,EAC7L,CACA,sBAAuB,CACnB,GAAiC,CAAQ,QAAe,UAAzC,KAAK,SAAS,EAA2C,CAAC,cAAc,EACvF,OAAO,KAAK,IAAIzL,EAAQ,EAAGC,EAAS,CAAC,CACzC,CACA,gBAAgB,EAAG,CACf,OAAO,KAAK,SAAS,MAAM,GAAU,CAAC,CAAC0K,EAAO,cAAcL,EAAE,QAAQ,OAAO,EAAE,CACnF,CACA,gCAAiC,CAC7B,MAAO,CAAE,KAAK,mBAAoB,CACtC,CACA,OAAQ,CACJ,KAAK,YAAc,KAAM,MAAM,MAAM,CACzC,CACA,uBAAwB,CACpB,OAAO,KAAK,mBAChB,CACJ,EAEA,EAAU,KAAOL,GAAkB,UAAW,EAAU,aAAe,CACxD,YACf,EAAG,EAAU,QAAU,YAEV,OAA0B,CACnCvN,EAAQ,kBAAkBgP,EAAU,KAAMA,CAAS,CACvD,C,4ECpLa,GAAYC,EAAY,YAAa,CAC9C,KAAM,OACN,kBAAmBC,EACvB,EAAG,CAAEC,GAAmBC,GAAeC,GAAoB,GAAGC,EAAU,CAAC,C,0FCP5D,GAAY,CAAEC,GAAiBC,GAA8BC,GAAiBC,GAA2BC,GAAwBC,GAA0BC,GAAoBC,GAAkBC,EAAc,C,4ECI/M,GAAWd,EAAY,WAAY,CAC5C,KAAM,MACN,kBAAmBC,EACvB,EAAG,CAAEc,GAAkBZ,GAAea,GAAmB,GAAGX,EAAU,CAAC,C,OCCvE,SAAgBY,GAAW,CAAE,SAAS,IAAK,OAAO,OAAQ,OAAO,SAA4B,CASzF,MAAO,kBAAC,MAAD,CAAY,OAPf,SACA,QAAS,OACT,WAAY,SACZ,eAAgB,SAChB,MAAOC,IAAS,UAAY,gCAAkC,+BAC9D,SAAU,EAEK,EAAQ,SAAApB,CAAU,EACzC,C,2FClBa,GAAe,CACxB,CAAE,IAAK,OAAQ,MAAO,OAAQ,YAAa,aAAc,KAAMqB,EAAK,EACpE,CAAE,IAAK,QAAS,MAAO,OAAQ,YAAa,UAAW,KAAMC,CAAU,CAC3E,EACa,GAAmBC,GAAa,IAAI,GAAWC,EAAQ,GAAG,C,OCDvE,SAAgBC,GAAe,EAAc,EAAQ,KAAM,CACvD,OAAOC,IAAS,EAAI,OAAOvI,IAAU,KAAKwI,GAAkBD,IAAS,GAAGA,EAAK,KAAK,GAAGvI,GACzF,CAgBA,SAAgByI,GAAa,CAAE,QAAO,aAAoD,CACtF,GAAM,CAACC,EAAcC,GAAmBC,GAAS,EAAK,EAChD,CAACL,EAAMM,GAAWD,GAAS,CAAC,EAC5B,CAACE,EAAWC,GAAgBH,GAAS,EAAK,EAehD,MAAO,CACH,eACA,OACA,YACA,eAlBoB,GAAc,CAClCC,EAAQtQ,CAAC,EACToQ,EAAgB,EAAI,CACxB,EAgBI,eAAkBA,EAAgB,EAAK,EACvC,sBAhB6B,CAC7B,GAAI,GACJ,GAAa,EAAI,EACjB,GAAI,CACA,MAAMK,EAAMT,CAAI,EAChBI,EAAgB,EAAK,EACrBM,EAAM,QAAQV,IAAS,EAAI,UAAY,MAAMC,GAAkBD,IAAS,GAAGA,EAAK,KAAK,SAASA,EAAK,SAAS,EAC5GW,IAAY,CAChB,QAAU,CAAEH,EAAa,EAAK,CAAG,CANhB,CAOrB,CAQA,CACJ,C,6CA/Ca,GAA4C,CAAE,GAAI,OAAQ,GAAI,OAAQ,IAAK,OAAQ,IAAK,KAAM,EAE9F,EAAkB,CAAC,EAAG,IAAK,IAAK,GAAI,EAAE,C,OCanD,SAAgBI,GAAiB,CAAE,UAAS,UAAS,QAAQ,MAAyC,CASlG,OARoBC,GAAWC,EAC3B,IAAgB,iBACR,kBAAAC,EAAA,UACPC,EAAgB,IAAK,GAAU,kBAACC,EAAD,CAAmB,KAAK,SAAS,MAAM,QAAQ,KAAM,kBAACC,GAAD,CAAQ,KAAM,EAAI,GAAY,UAAS,YAAeC,EAAQnB,CAAI,EAClJ,SAAAD,GAAeC,EAAMvI,CAAK,CACrB,EAFmCuI,CAEnC,CAAE,CACZ,GAEI,kBAACoB,EAAD,WACN,kBAACH,EAAD,CAAQ,KAAK,SAAS,MAAM,QAAQ,KAAM,kBAACC,GAAD,CAAQ,KAAM,EAAI,GAAY,UAAS,YAAeC,EAAQH,EAAgB,EAAE,EAAI,SAAAjB,GAAeiB,EAAgB,GAAIvJ,CAAK,CAAU,GAChL,kBAAC4J,EAAD,CAAU,QAAQ,QAAQ,SAAS,cAAc,eAAY,OAAS,kBAACA,EAAS,KAAV,UAC/DL,EAAgB,IAAK,GAAU,kBAACK,EAAS,KAAV,CAA0B,SAAUC,EAAS,YAAeH,EAAQnB,CAAI,EAAI,SAAAD,GAAeC,EAAMvI,CAAK,CAAiB,EAAnGuI,CAAmG,CAAE,CAC5I,GACjB,2BAACiB,EAAD,CAAQ,KAAK,SAAS,MAAM,QAAQ,SAAUK,EAAS,aAAY,OAAO7J,EAAM,IAAK,KAAM,kBAAC8J,GAAD,CAAa,KAAM,EAAI,EAAG,EAC7G,EACM,GACtB,CAOA,SAAgBC,GAAe,CAAE,UAAS,WAA0C,CAChF,MAAQ,kBAACC,GAAD,CAAU,MAAO1B,GAAe2B,EAAQ,KAAMC,CAAO,EAAG,QAASD,EAAQ,aAAc,SAAUA,EAAQ,WAAY,OAAO,OAAO,cAAe,CAAE,KAAM,SAAU,QAASA,EAAQ,SAAU,EAAG,KAAMA,EAAQ,aAAc,aAAc,GAClP,2BAAC,IAAD,CAAG,MAAO,CAAE,aAAc,EAAG,EAA7B,UAAgC,oBACZA,EAAQ,OAAS,EAAI,MAAMC,IAAY,GAAG1B,GAAkByB,EAAQ,OAAS,GAAGA,EAAQ,KAAK,KAAK,GAAGC,IAAU,SAChID,EAAQ,KAAO,GAAK,kBAAAX,EAAA,WAAE,kBAAC,KAAD,CAAK,GAAC,MAAIW,EAAQ,KAAK,WAAW,IACxDC,IAAY,QAAU,kBAAAZ,EAAA,WAAE,kBAAC,KAAD,CAAK,GAAC,mBAAmB,GACjD,C,EACK,EACd,C,8DCpCA,SAAgBa,GAAe,EAM3B,CACA,IAAMC,EAAc,MAAc,CAAC,CAAC,CAAC,KAAK,CAAC,EAC3C,IAAK,IAAM7R,KAAK8R,GAAc,CAAC,EAC3B,GAASC,GAAM/R,EAAE,IAAI,CAAC,CAAC,IAAI,EAAI,GAAK,IAAMA,EAAE,MAEhD,OAAOgS,GAAe,KAAK,EAAM,KAAO,CAAE,OAAM,MAAOH,EAAQnM,EAAG,EAAE,CACxE,CAMA,SAAgBuM,GAAQ,EAAiB,EAA6B,CAClE,OAAOC,EAAO,EAAIC,EAAUD,EAAO,IACvC,CAEA,SAAgBE,GAAgB,EAA+D,CAC3F,OAAOC,GAAW,MAAQA,EAAQ,QAAU,EACtC,MACEA,EAAQ,aAAeA,EAAQ,MAAS,KAAK,QAAQ,CAAC,CAClE,CAEA,SAAgBC,GAAqB,EAAgD,EAAmE,CACpJ,OAAOD,GAAWE,GAAeF,EAAQ,MAAQ,GAAKE,EAAY,MAAQ,EACpEF,EAAQ,aAAeA,EAAQ,MAAQE,EAAY,aAAeA,EAAY,MAC9E,IACV,CAEA,SAAgBC,IAAmB,CAC/B,MAAQ,kBAACC,EAAD,CAAU,WAAQ,UAAO,YAAc,kBAAA1B,EAAA,WACzC,kBAAC2B,GAAD,CAAU,MAAO,CAAE,aAAc,EAAG,EACjC,eAAM,KAAK,CAAE,OAAQ,CAAE,GAAI,EAAG,IAAM,WAAWhN,GAAG,CAAC,CAAC,IAAK,GAAS,kBAAC,MAAD,WAC/D,kBAAC+M,EAAS,MAAV,CAAgB,MAAO,CAAE,MAAO,GAAI,OAAQ,GAAI,aAAc,EAAG,CAAG,GACpE,kBAACA,EAAS,UAAV,CAAoB,KAAM,EAAG,MAAO,CAAE,MAAO,GAAI,aAAc,CAAE,CAAG,EACjE,GAHsEhW,CAGtE,CAAE,CACD,GACV,kBAAC,MAAD,CAAK,UAAU,WAAW,MAAO,CAAE,aAAc,EAAG,EAApD,UACE,kBAACgW,EAAS,MAAV,CAAgB,MAAO,CAAE,MAAO,IAAK,OAAQ,GAAI,aAAc,EAAG,CAAG,GACrE,kBAACA,EAAS,MAAV,CAAgB,MAAO,CAAE,MAAO,OAAQ,OAAQ,GAAI,CAAG,EACpD,C,GACL,kBAAC,MAAD,CAAK,UAAU,aACZ,UAAC,aAAc,YAAY,CAAC,CAAC,IAAK,GAAS,kBAAC,MAAD,CAAe,UAAU,WAAzB,UACxC,kBAACA,EAAS,MAAV,CAAgB,MAAO,CAAE,MAAO,IAAK,OAAQ,GAAI,aAAc,EAAG,CAAG,GACrE,kBAACA,EAAS,MAAV,CAAgB,MAAO,CAAE,MAAO,OAAQ,OAAQ,GAAI,CAAG,EACpD,CAH+C,EAAAhW,CAG/C,CAAE,CACN,EACL,IAAK,aAAe,EAC9B,CAQA,SAAgBkW,GAAiB,CAAE,OAAM,eAAc,UAAS,WAAU,YAAmC,CACzG,MAAQ,kBAAC,MAAD,WACN,kBAAC,MAAD,CAAK,MAAO,CAAE,QAAS,OAAQ,eAAgB,WAAY,aAAc,EAAG,EAC1E,2BAACC,EAAD,CAAQ,MAAO5C,EAAM,SAAW,GAAM6C,EAAaC,CAAW,EAAG,MAAO,CAAE,MAAO,GAAI,EAClF,SAAAC,GAAuB,IAAK,GAAO,kBAACH,EAAO,OAAR,CAA6B,MAAOI,EAAE,MAAQ,SAAAA,EAAE,KAAqB,EAAjDA,EAAE,KAA+C,CAAE,CACrG,EACL,GAEJ1B,EAAU,kBAACkB,GAAD,CAAmB,GAAK,kBAACS,EAAD,CAAM,SAAUC,EAChD,UACG,EACH,GACT,CACA,SAAgBC,GAAW,CAAE,QAAO,WAAU,UAI1C,CACA,MAAQ,kBAAC,MAAD,CAAK,UAAU,WAAf,UACN,kBAAC,MAAD,CAAK,MAAO,CAAE,GAAGC,GAAmB,MAAOC,EAAS,+BAAiCD,GAAkB,KAAM,EAAI,SAAAhH,CAAW,GAC3HkH,CACE,C,EACT,C,wDA1Fa,GAAyB,CAClC,CAAE,MAAO,SAAU,MAAO,CAAE,EAC5B,CAAE,MAAO,UAAW,MAAO,EAAG,EAC9B,CAAE,MAAO,UAAW,MAAO,EAAG,CAClC,EACa,GAAiB,CAAC,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAAI,C","names":["BaseSeriesTooltipHelper","key","array","styleKey","value","datum","isValid","defaultValue","baseSeriesMark","lineLikeSeriesMark","registerAreaAnimation","registerLineAnimation","registerScaleInOutAnimation","LineLikeSeriesSpecTransformer","isPointVisible","spec","isAreaMiddle","_e","chartSpec","chartSpecInfo","isAreaVisible","area","isLineVisible","line","state","mainSpec","subSpec","seriesMark","mergeSpec","AreaSeries","CartesianSeries","SeriesTypeEnum","AreaSeriesSpecTransformer","policy","LINE_LIKE_SERIES_DATA_RELATED_KEYS","isAreaMarkVisible","userCurveType","curveType","areaMark","_a","valueInScaleRange","AttributeLevel","STACK_FIELD_END","result","areaAnimationParams","appearPreset","animationConfig","Factory","userAnimationConfig","animationParams","getGroupAnimationParams","areaSpec","lineSpec","AreaSeriesTooltipHelper","group","mark","d","seriesMarkType","attribute","isArray","areaSeriesMark","mixin","LineLikeSeriesMixin","registerDataSamplingTransform","registerSymbolOverlapTransform","registerLineMark","registerAreaMark","registerSymbolMark","registerAreaSeriesAnimation","registerCartesianBandAxis","registerCartesianLinearAxis","CartesianChartSpecTransformer","setDefaultCrosshairForCartesianChart","AreaChart","BaseChart","AreaChartSpecTransformer","getCartesianDimensionInfo","getDimensionInfoByValue","getCartesianCrosshairRect","StackChartMixin","registerDimensionTooltipProcessor","registerMarkTooltipProcessor","registerGroupTooltipProcessor","registerDimensionHover","registerAreaSeries","registerDimensionEvents","BaseSeries","POLAR_DEFAULT_RADIUS","f","s","h","isNil","angleValue","radiusValue","radius","angle","checkInViewData","_b","fields","isContinuous","axisHelper","width","height","ChartEvent","param","sortDataInAxisHelper","transformInvalidValue","couldBeValidNumber","pie","op","angleField","startAngle","endAngle","minAngle","data","originData","showAllZero","showEmptyCircle","isDataEmpty","supportNegative","appendArcInfo","asStartAngle","asEndAngle","asMiddleAngle","asRadian","asQuadrant","computeQuadrant","total","max","isAllZero","index","angleFieldValue","ARC_TRANSFORM_VALUE","valueList","angleRange","lastAngle","restAngle","largeThanMinAngleTotal","percents","getPercentValue","ratio","radian","dStartAngle","dEndAngle","asRatio","asK","i","unitRadian","sum","pieGrowOption","isOverall","pieParams","graphic","piePresetAnimation","preset","Appear_FadeIn","Appear_Grow","params","AnimationStateEnum","pieEnter","pieExit","DEFAULT_ANIMATION_CONFIG","centerOffsetConfig","_d","offset","originalConfig","duration","isValidNumber","easing","polarToCartesian","ARC_MIDDLE_ANGLE","BaseSeriesSpecTransformer","theme","newSpec","specFromChart","getMergedLabelSpec","position","label","centerX","centerY","PREFIX","BasePieSeries","PolarSeries","PieSeriesSpecTransformer","layoutRect","calcLayoutNumber","POLAR_START_RADIAN","POLAR_END_RADIAN","innerRadius","center","_f","normalized","normalizeStartEndAngle","degreeToRadian","viewData","registerDataSetInstanceTransform","ARC_START_ANGLE","ARC_END_ANGLE","ARC_RATIO","ARC_RADIAN","ARC_QUADRANT","ARC_K","viewDataLabel","DataView","CompilableData","DEFAULT_DATA_KEY","shouldMarkDoMorph","field","computeLayoutRadius","initialStyle","isSpecValueWithScale","pieMark","emptyPieMark","pieSpec","textMark","DEFAULT_LABEL_VISIBLE","style","r","k","PIE_SERIES_COMPILE_ONLY_KEYS","PIE_SERIES_DATA_RELATED_KEYS","defaultIgnoreKeys","prevSpec","ignoreCheckKeys","outState","markElements","dataIndex","DEFAULT_DATA_INDEX","prevMarkElement","pieAnimationConfig","pieSeriesMark","pieTheme","registerArcMark","registerPieAnimation","registerEmptyCircleAnimation","PieSeries","BaseChartSpecTransformer","type","indicatorSpec","limitRatio","indicator","pickKeys","zoom","PolarChartSpecTransformer","seriesSpec","BasePieChartSpecTransformer","PieChart","BasePieChart","registerPieSeries","isFunction","mappedData","datumResult","title","content","c","fontSizeKey","fillKey","getTextStyle","t","p","e","BaseComponent","ComponentTypeEnum","LayoutZIndex","LayoutLevel","getSpecInfo","isEqual","g","getDatumOfGraphic","attrs","indicatorMapper","displayData","region","restSpec","__rest","contentComponentSpec","contentSpec","eachItem","transformIndicatorStyle","pickWithout","offsetX","getActualNumValue","offsetY","container","IndicatorComponents","event","text","Indicator","createChart","VChart","registerAreaChart","registerLabel","registerTotalLabel","registers","registerAnimate","registerReactAttributePlugin","registerTooltip","registerDomTooltipHandler","registerDiscreteLegend","registerContinuousLegend","registerCustomMark","registerAllMarks","registerTitle","registerPieChart","registerIndicator","EmptyChart","tone","List","BarChart3","LOG_SECTIONS","section","clearLogsLabel","days","CLEAR_LOGS_LABELS","useClearLogs","modalVisible","setModalVisible","useState","setDays","verifying","setVerifying","clean","Toast","onCleared","ClearLogsButtons","useContext","ToolbarSlotContext","_Fragment","CLEAR_LOGS_DAYS","Button","Trash2","onClear","SplitButtonGroup","Dropdown","loading","ChevronDown","ClearLogsModal","AppModal","control","logName","weekdayBuckets","buckets","dailyStats","dayjs","WEEKDAY_LABELS","deltaOf","prev","current","calcSuccessRate","summary","calcSuccessRateDelta","prevSummary","LogStatsSkeleton","Skeleton","StatGrid","LogStatsScaffold","Select","onDaysChange","v","LOG_STATS_DAYS_OPTIONS","o","Spin","fetching","ChartPanel","sectionTitleStyle","danger","children"],"ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26],"sources":["../../../../node_modules/@visactor/vchart/esm/series/area/tooltip-helpter.js","../../../../node_modules/@visactor/vchart/esm/series/area/constant.js","../../../../node_modules/@visactor/vchart/esm/series/area/animation.js","../../../../node_modules/@visactor/vchart/esm/series/area/area-transformer.js","../../../../node_modules/@visactor/vchart/esm/theme/builtin/common/series/area.js","../../../../node_modules/@visactor/vchart/esm/series/area/area.js","../../../../node_modules/@visactor/vchart/esm/chart/area/area-transformer.js","../../../../node_modules/@visactor/vchart/esm/chart/area/area.js","../../../../node_modules/@visactor/vchart/esm/series/polar/polar.js","../../../../node_modules/@visactor/vchart/esm/data/transforms/pie.js","../../../../node_modules/@visactor/vchart/esm/series/pie/animation/animation.js","../../../../node_modules/@visactor/vchart/esm/series/pie/animation/centerOffset.js","../../../../node_modules/@visactor/vchart/esm/series/pie/constant.js","../../../../node_modules/@visactor/vchart/esm/series/pie/pie-transformer.js","../../../../node_modules/@visactor/vchart/esm/constant/label.js","../../../../node_modules/@visactor/vchart/esm/theme/builtin/common/series/pie.js","../../../../node_modules/@visactor/vchart/esm/series/pie/pie.js","../../../../node_modules/@visactor/vchart/esm/chart/polar/polar-transformer.js","../../../../node_modules/@visactor/vchart/esm/chart/pie/base/pie-transformer.js","../../../../node_modules/@visactor/vchart/esm/chart/pie/base/base.js","../../../../node_modules/@visactor/vchart/esm/chart/pie/pie.js","../../../../node_modules/@visactor/vchart/esm/component/indicator/util.js","../../../../node_modules/@visactor/vchart/esm/theme/builtin/common/component/indicator.js","../../../../node_modules/@visactor/vchart/esm/component/indicator/indicator.js","../../../../node_modules/@visactor/react-vchart/esm/charts/AreaChart.js","../../../../node_modules/@visactor/react-vchart/esm/charts/registers/simple.js","../../../../node_modules/@visactor/react-vchart/esm/charts/PieChart.js","../../src/components/charts/EmptyChart.tsx","../../src/components/logs/log-sections.ts","../../src/hooks/useClearLogs.ts","../../src/components/logs/ClearLogsControl.tsx","../../src/components/logs/LogStatsScaffold.tsx"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"import type React from 'react';\ninterface EmptyChartProps {\n /** 占位高度,与对应图表高度保持一致 */\n readonly height?: number;\n /** 空状态文案 */\n readonly text?: string;\n /** 文案色调:muted 普通灰、success 绿色(用于「无异常」类正向空态) */\n readonly tone?: 'muted' | 'success';\n}\n/** 图表空状态占位:在数据为空时替代图表渲染,保持卡片高度稳定 */\nexport function EmptyChart({ height = 260, text = '暂无数据', tone = 'muted' }: EmptyChartProps) {\n const style: React.CSSProperties = {\n height,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n color: tone === 'success' ? 'var(--arc-antd-color-success)' : 'var(--arc-antd-color-text-2)',\n fontSize: 13,\n };\n return <div style={style}>{text}</div>;\n}\n","import { BarChart3, List } from 'lucide-react';\n\nexport const LOG_SECTIONS = [\n { key: 'list', title: '日志列表', description: '查询、筛选和查看日志', icon: List },\n { key: 'stats', title: '统计分析', description: '趋势与分布统计', icon: BarChart3 },\n] as const;\nexport const LOG_SECTION_KEYS = LOG_SECTIONS.map(section => section.key);\n","import { useState } from 'react';\nimport { Toast } from \"@/ui\";\nexport const CLEAR_LOGS_LABELS: Record<number, string> = { 30: '一个月前', 90: '三个月前', 180: '六个月前', 365: '一年前' };\n/** 0 为全部清除,其余档位为保留天数,与契约的 `days` 一致 */\nexport const CLEAR_LOGS_DAYS = [0, 365, 180, 90, 30] as const;\nexport function clearLogsLabel(days: number, label = '日志') {\n return days === 0 ? `清除全部${label}` : `清除${CLEAR_LOGS_LABELS[days] ?? `${days} 天前`}的${label}`;\n}\ninterface UseClearLogsOptions {\n /** 执行清除(通常为 mutation 的 mutateAsync) */\n clean: (days: number) => Promise<unknown>;\n /** 清除成功后的回调(如重置分页) */\n onCleared?: () => void;\n}\nexport interface ClearLogsControl {\n modalVisible: boolean;\n days: number;\n verifying: boolean;\n openClearModal: (days: number) => void;\n closeModal: () => void;\n confirmClear: () => Promise<void>;\n}\n/** 日志清除共享逻辑:保留天数选择与危险操作确认 */\nexport function useClearLogs({ clean, onCleared }: UseClearLogsOptions): ClearLogsControl {\n const [modalVisible, setModalVisible] = useState(false);\n const [days, setDays] = useState(0);\n const [verifying, setVerifying] = useState(false);\n const openClearModal = (d: number) => {\n setDays(d);\n setModalVisible(true);\n };\n const confirmClear = async () => {\n if (verifying) return;\n setVerifying(true);\n try {\n await clean(days);\n setModalVisible(false);\n Toast.success(days === 0 ? '历史日志已清除' : `已清除${CLEAR_LOGS_LABELS[days] ?? `${days} 天前`}的日志,最近 ${days} 天的记录已保留`);\n onCleared?.();\n } finally { setVerifying(false); }\n };\n return {\n modalVisible,\n days,\n verifying,\n openClearModal,\n closeModal: () => setModalVisible(false),\n confirmClear,\n };\n}\n","import { useContext } from 'react';\nimport { Button, Dropdown, SplitButtonGroup } from \"@/ui\";\nimport { ChevronDown, Trash2 } from 'lucide-react';\nimport AppModal from \"@/components/AppModal\";\nimport { ToolbarSlotContext } from \"@fudanda/react-core/components/toolbar-slot-context\";\nimport { CLEAR_LOGS_DAYS, CLEAR_LOGS_LABELS, clearLogsLabel, type ClearLogsControl } from \"@/hooks/useClearLogs\";\ninterface ClearLogsButtonsProps {\n loading: boolean;\n /** 触发清除,0 为全部清除,正数为保留天数(与契约 `days` 一致) */\n onClear: (days: number) => void;\n /** 被清除对象的名称,如「日志」「录屏」 */\n label?: string;\n}\n/**\n * 清除日志入口:主按钮明确清除全部记录,下拉提供按保留天数清除。\n * 放进工具栏移动端更多菜单时自动平铺为一组按钮,无需另传 mobileActions。\n */\nexport function ClearLogsButtons({ loading, onClear, label = '日志' }: Readonly<ClearLogsButtonsProps>) {\n const toolbarSlot = useContext(ToolbarSlotContext);\n if (toolbarSlot === 'mobile-actions') {\n return (<>\n {CLEAR_LOGS_DAYS.map((days) => (<Button key={days} type=\"danger\" theme=\"light\" icon={<Trash2 size={14}/>} loading={loading} onClick={() => onClear(days)}>\n {clearLogsLabel(days, label)}\n </Button>))}\n </>);\n }\n return (<SplitButtonGroup>\n <Button type=\"danger\" theme=\"light\" icon={<Trash2 size={14}/>} loading={loading} onClick={() => onClear(CLEAR_LOGS_DAYS[0])}>{clearLogsLabel(CLEAR_LOGS_DAYS[0], label)}</Button>\n <Dropdown trigger=\"click\" position=\"bottomRight\" clickToHide render={(<Dropdown.Menu>\n {CLEAR_LOGS_DAYS.map((days) => (<Dropdown.Item key={days} disabled={loading} onClick={() => onClear(days)}>{clearLogsLabel(days, label)}</Dropdown.Item>))}\n </Dropdown.Menu>)}>\n <Button type=\"danger\" theme=\"light\" disabled={loading} aria-label={`选择清除${label}范围`} icon={<ChevronDown size={14}/>}/>\n </Dropdown>\n </SplitButtonGroup>);\n}\ninterface ClearLogsModalProps {\n /** 日志名称,如「登录日志」「操作日志」 */\n logName: string;\n control: ClearLogsControl;\n}\n/** 清除日志危险操作确认弹窗 */\nexport function ClearLogsModal({ logName, control }: Readonly<ClearLogsModalProps>) {\n return (<AppModal title={clearLogsLabel(control.days, logName)} visible={control.modalVisible} onCancel={control.closeModal} okText=\"确认清除\" okButtonProps={{ type: 'danger', loading: control.verifying }} onOk={control.confirmClear} maskClosable={false}>\n <p style={{ marginBottom: 12 }}>\n 此操作将永久删除当前数据权限范围内{control.days === 0 ? `的全部${logName}` : `${CLEAR_LOGS_LABELS[control.days] ?? `${control.days} 天前`}的${logName}`},不可恢复。\n {control.days > 0 && <><br />最近 {control.days} 天的记录将保留。</>}\n {logName === '操作日志' && <><br />本次清除操作仍会生成一条操作日志。</>}\n </p>\n </AppModal>);\n}\n","/* eslint-disable react-refresh/only-export-components */\nimport type { ReactNode } from 'react';\nimport dayjs from 'dayjs';\nimport { Select, Skeleton, Spin } from \"@/ui\";\nimport { sectionTitleStyle } from \"@/components/charts/helpers\";\nimport { StatGrid } from \"@/components/charts/StatCard\";\nexport const LOG_STATS_DAYS_OPTIONS = [\n { label: '最近 7 天', value: 7 },\n { label: '最近 30 天', value: 30 },\n { label: '最近 90 天', value: 90 },\n];\nexport const WEEKDAY_LABELS = ['周一', '周二', '周三', '周四', '周五', '周六', '周日'];\n/** 日统计按周一 … 周日归桶(本地时区取周几),登录 / 操作日志的周分布柱图共用 */\nexport function weekdayBuckets(dailyStats: readonly {\n date: string;\n count: number;\n}[] | null | undefined): {\n name: string;\n count: number;\n}[] {\n const buckets = new Array<number>(7).fill(0);\n for (const d of dailyStats ?? []) {\n buckets[(dayjs(d.date).day() + 6) % 7] += d.count;\n }\n return WEEKDAY_LABELS.map((name, i) => ({ name, count: buckets[i] }));\n}\nexport interface SuccessRateSummary {\n readonly total: number;\n readonly successCount: number;\n}\n/** 环比增量:上一周期无数据时不展示。 */\nexport function deltaOf(current: number, prev: number): number | null {\n return prev > 0 ? current - prev : null;\n}\n/** 成功率百分比:无汇总或总数为 0 时不展示。 */\nexport function calcSuccessRate(summary: SuccessRateSummary | null | undefined): string | null {\n return summary == null || summary.total === 0\n ? null\n : ((summary.successCount / summary.total) * 100).toFixed(1);\n}\n/** 成功率环比:两个周期都有数据才展示比率差。 */\nexport function calcSuccessRateDelta(summary: SuccessRateSummary | null | undefined, prevSummary: SuccessRateSummary | null | undefined): number | null {\n return summary && prevSummary && summary.total > 0 && prevSummary.total > 0\n ? summary.successCount / summary.total - prevSummary.successCount / prevSummary.total\n : null;\n}\n/** 首屏加载骨架:按统计页布局占位,避免空白闪烁。 */\nexport function LogStatsSkeleton() {\n return (<Skeleton loading active placeholder={(<>\n <StatGrid style={{ marginBottom: 16 }}>\n {Array.from({ length: 4 }, (_, i) => `sk-stat-${i}`).map((key) => (<div key={key}>\n <Skeleton.Title style={{ width: 64, height: 26, marginBottom: 10 }}/>\n <Skeleton.Paragraph rows={1} style={{ width: 80, marginBottom: 0 }}/>\n </div>))}\n </StatGrid>\n <div className=\"zx-panel\" style={{ marginBottom: 16 }}>\n <Skeleton.Title style={{ width: 180, height: 14, marginBottom: 16 }}/>\n <Skeleton.Image style={{ width: '100%', height: 230 }}/>\n </div>\n <div className=\"chart-grid\">\n {['sk-chart-a', 'sk-chart-b'].map((key) => (<div key={key} className=\"zx-panel\">\n <Skeleton.Title style={{ width: 120, height: 14, marginBottom: 16 }}/>\n <Skeleton.Image style={{ width: '100%', height: 260 }}/>\n </div>))}\n </div>\n </>)}>{null}</Skeleton>);\n}\ninterface LogStatsScaffoldProps {\n readonly days: number;\n readonly onDaysChange: (days: number) => void;\n readonly loading: boolean;\n readonly fetching: boolean;\n readonly children: ReactNode;\n}\nexport function LogStatsScaffold({ days, onDaysChange, loading, fetching, children }: LogStatsScaffoldProps) {\n return (<div>\n <div style={{ display: 'flex', justifyContent: 'flex-end', marginBottom: 16 }}>\n <Select value={days} onChange={(v) => onDaysChange(v as number)} style={{ width: 140 }}>\n {LOG_STATS_DAYS_OPTIONS.map((o) => (<Select.Option key={o.value} value={o.value}>{o.label}</Select.Option>))}\n </Select>\n </div>\n\n {loading ? <LogStatsSkeleton /> : (<Spin spinning={fetching}>\n {children}\n </Spin>)}\n </div>);\n}\nexport function ChartPanel({ title, children, danger }: Readonly<{\n title: ReactNode;\n children: ReactNode;\n danger?: boolean;\n}>) {\n return (<div className=\"zx-panel\">\n <div style={{ ...sectionTitleStyle, color: danger ? 'var(--arc-antd-color-danger)' : sectionTitleStyle.color }}>{title}</div>\n {children}\n </div>);\n}\n"]}
|
|
1
|
+
{"version":3,"file":"LogStatsScaffold-CMIz4z0a.js","mappings":"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","names":["BaseSeriesTooltipHelper","key","array","styleKey","value","datum","isValid","defaultValue","baseSeriesMark","lineLikeSeriesMark","registerAreaAnimation","registerLineAnimation","registerScaleInOutAnimation","LineLikeSeriesSpecTransformer","isPointVisible","spec","isAreaMiddle","_e","chartSpec","chartSpecInfo","isAreaVisible","area","isLineVisible","line","state","mainSpec","subSpec","seriesMark","mergeSpec","AreaSeries","CartesianSeries","SeriesTypeEnum","AreaSeriesSpecTransformer","policy","LINE_LIKE_SERIES_DATA_RELATED_KEYS","isAreaMarkVisible","userCurveType","curveType","areaMark","_a","valueInScaleRange","AttributeLevel","STACK_FIELD_END","result","areaAnimationParams","appearPreset","animationConfig","Factory","userAnimationConfig","animationParams","getGroupAnimationParams","areaSpec","lineSpec","AreaSeriesTooltipHelper","group","mark","d","seriesMarkType","attribute","isArray","areaSeriesMark","mixin","LineLikeSeriesMixin","registerDataSamplingTransform","registerSymbolOverlapTransform","registerLineMark","registerAreaMark","registerSymbolMark","registerAreaSeriesAnimation","registerCartesianBandAxis","registerCartesianLinearAxis","CartesianChartSpecTransformer","setDefaultCrosshairForCartesianChart","AreaChart","BaseChart","AreaChartSpecTransformer","getCartesianDimensionInfo","getDimensionInfoByValue","getCartesianCrosshairRect","StackChartMixin","registerDimensionTooltipProcessor","registerMarkTooltipProcessor","registerGroupTooltipProcessor","registerDimensionHover","registerAreaSeries","registerDimensionEvents","BaseSeries","POLAR_DEFAULT_RADIUS","f","s","h","isNil","angleValue","radiusValue","radius","angle","checkInViewData","_b","fields","isContinuous","axisHelper","width","height","ChartEvent","param","sortDataInAxisHelper","transformInvalidValue","couldBeValidNumber","pie","op","angleField","startAngle","endAngle","minAngle","data","originData","showAllZero","showEmptyCircle","isDataEmpty","supportNegative","appendArcInfo","asStartAngle","asEndAngle","asMiddleAngle","asRadian","asQuadrant","computeQuadrant","total","max","isAllZero","index","angleFieldValue","ARC_TRANSFORM_VALUE","valueList","angleRange","lastAngle","restAngle","largeThanMinAngleTotal","percents","getPercentValue","ratio","radian","dStartAngle","dEndAngle","asRatio","asK","i","unitRadian","sum","pieGrowOption","isOverall","pieParams","graphic","piePresetAnimation","preset","Appear_FadeIn","Appear_Grow","params","AnimationStateEnum","pieEnter","pieExit","DEFAULT_ANIMATION_CONFIG","centerOffsetConfig","_d","offset","originalConfig","duration","isValidNumber","easing","polarToCartesian","ARC_MIDDLE_ANGLE","BaseSeriesSpecTransformer","theme","newSpec","specFromChart","getMergedLabelSpec","position","label","centerX","centerY","PREFIX","BasePieSeries","PolarSeries","PieSeriesSpecTransformer","layoutRect","calcLayoutNumber","POLAR_START_RADIAN","POLAR_END_RADIAN","innerRadius","center","_f","normalized","normalizeStartEndAngle","degreeToRadian","viewData","registerDataSetInstanceTransform","ARC_START_ANGLE","ARC_END_ANGLE","ARC_RATIO","ARC_RADIAN","ARC_QUADRANT","ARC_K","viewDataLabel","DataView","CompilableData","DEFAULT_DATA_KEY","shouldMarkDoMorph","field","computeLayoutRadius","initialStyle","isSpecValueWithScale","pieMark","emptyPieMark","pieSpec","textMark","DEFAULT_LABEL_VISIBLE","style","r","k","PIE_SERIES_COMPILE_ONLY_KEYS","PIE_SERIES_DATA_RELATED_KEYS","defaultIgnoreKeys","prevSpec","ignoreCheckKeys","outState","markElements","dataIndex","DEFAULT_DATA_INDEX","prevMarkElement","pieAnimationConfig","pieSeriesMark","pieTheme","registerArcMark","registerPieAnimation","registerEmptyCircleAnimation","PieSeries","BaseChartSpecTransformer","type","indicatorSpec","limitRatio","indicator","pickKeys","zoom","PolarChartSpecTransformer","seriesSpec","BasePieChartSpecTransformer","PieChart","BasePieChart","registerPieSeries","isFunction","mappedData","datumResult","title","content","c","fontSizeKey","fillKey","getTextStyle","t","p","e","BaseComponent","ComponentTypeEnum","LayoutZIndex","LayoutLevel","getSpecInfo","isEqual","g","getDatumOfGraphic","attrs","indicatorMapper","displayData","region","restSpec","__rest","contentComponentSpec","contentSpec","eachItem","transformIndicatorStyle","pickWithout","offsetX","getActualNumValue","offsetY","container","IndicatorComponents","event","text","Indicator","createChart","VChart","registerAreaChart","registerLabel","registerTotalLabel","registers","registerAnimate","registerReactAttributePlugin","registerTooltip","registerDomTooltipHandler","registerDiscreteLegend","registerContinuousLegend","registerCustomMark","registerAllMarks","registerTitle","registerPieChart","registerIndicator","EmptyChart","tone","List","BarChart3","LOG_SECTIONS","section","clearLogsLabel","days","CLEAR_LOGS_LABELS","useClearLogs","modalVisible","setModalVisible","useState","setDays","verifying","setVerifying","clean","Toast","onCleared","ClearLogsButtons","useContext","ToolbarSlotContext","_Fragment","CLEAR_LOGS_DAYS","Button","Trash2","onClear","SplitButtonGroup","Dropdown","loading","ChevronDown","ClearLogsModal","AppModal","control","logName","weekdayBuckets","buckets","dailyStats","dayjs","WEEKDAY_LABELS","deltaOf","prev","current","calcSuccessRate","summary","calcSuccessRateDelta","prevSummary","LogStatsSkeleton","Skeleton","StatGrid","LogStatsScaffold","Select","onDaysChange","v","LOG_STATS_DAYS_OPTIONS","o","Spin","fetching","ChartPanel","sectionTitleStyle","danger","children"],"ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26],"sources":["../../../../node_modules/@visactor/vchart/esm/series/area/tooltip-helpter.js","../../../../node_modules/@visactor/vchart/esm/series/area/constant.js","../../../../node_modules/@visactor/vchart/esm/series/area/animation.js","../../../../node_modules/@visactor/vchart/esm/series/area/area-transformer.js","../../../../node_modules/@visactor/vchart/esm/theme/builtin/common/series/area.js","../../../../node_modules/@visactor/vchart/esm/series/area/area.js","../../../../node_modules/@visactor/vchart/esm/chart/area/area-transformer.js","../../../../node_modules/@visactor/vchart/esm/chart/area/area.js","../../../../node_modules/@visactor/vchart/esm/series/polar/polar.js","../../../../node_modules/@visactor/vchart/esm/data/transforms/pie.js","../../../../node_modules/@visactor/vchart/esm/series/pie/animation/animation.js","../../../../node_modules/@visactor/vchart/esm/series/pie/animation/centerOffset.js","../../../../node_modules/@visactor/vchart/esm/series/pie/constant.js","../../../../node_modules/@visactor/vchart/esm/series/pie/pie-transformer.js","../../../../node_modules/@visactor/vchart/esm/constant/label.js","../../../../node_modules/@visactor/vchart/esm/theme/builtin/common/series/pie.js","../../../../node_modules/@visactor/vchart/esm/series/pie/pie.js","../../../../node_modules/@visactor/vchart/esm/chart/polar/polar-transformer.js","../../../../node_modules/@visactor/vchart/esm/chart/pie/base/pie-transformer.js","../../../../node_modules/@visactor/vchart/esm/chart/pie/base/base.js","../../../../node_modules/@visactor/vchart/esm/chart/pie/pie.js","../../../../node_modules/@visactor/vchart/esm/component/indicator/util.js","../../../../node_modules/@visactor/vchart/esm/theme/builtin/common/component/indicator.js","../../../../node_modules/@visactor/vchart/esm/component/indicator/indicator.js","../../../../node_modules/@visactor/react-vchart/esm/charts/AreaChart.js","../../../../node_modules/@visactor/react-vchart/esm/charts/registers/simple.js","../../../../node_modules/@visactor/react-vchart/esm/charts/PieChart.js","../../src/components/charts/EmptyChart.tsx","../../src/components/logs/log-sections.ts","../../src/hooks/useClearLogs.ts","../../src/components/logs/ClearLogsControl.tsx","../../src/components/logs/LogStatsScaffold.tsx"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"import type React from 'react';\ninterface EmptyChartProps {\n /** 占位高度,与对应图表高度保持一致 */\n readonly height?: number;\n /** 空状态文案 */\n readonly text?: string;\n /** 文案色调:muted 普通灰、success 绿色(用于「无异常」类正向空态) */\n readonly tone?: 'muted' | 'success';\n}\n/** 图表空状态占位:在数据为空时替代图表渲染,保持卡片高度稳定 */\nexport function EmptyChart({ height = 260, text = '暂无数据', tone = 'muted' }: EmptyChartProps) {\n const style: React.CSSProperties = {\n height,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n color: tone === 'success' ? 'var(--arc-antd-color-success)' : 'var(--arc-antd-color-text-2)',\n fontSize: 13,\n };\n return <div style={style}>{text}</div>;\n}\n","import { BarChart3, List } from 'lucide-react';\n\nexport const LOG_SECTIONS = [\n { key: 'list', title: '日志列表', description: '查询、筛选和查看日志', icon: List },\n { key: 'stats', title: '统计分析', description: '趋势与分布统计', icon: BarChart3 },\n] as const;\nexport const LOG_SECTION_KEYS = LOG_SECTIONS.map(section => section.key);\n","import { useState } from 'react';\nimport { Toast } from \"@/ui\";\nexport const CLEAR_LOGS_LABELS: Record<number, string> = { 30: '一个月前', 90: '三个月前', 180: '六个月前', 365: '一年前' };\n/** 0 为全部清除,其余档位为保留天数,与契约的 `days` 一致 */\nexport const CLEAR_LOGS_DAYS = [0, 365, 180, 90, 30] as const;\nexport function clearLogsLabel(days: number, label = '日志') {\n return days === 0 ? `清除全部${label}` : `清除${CLEAR_LOGS_LABELS[days] ?? `${days} 天前`}的${label}`;\n}\ninterface UseClearLogsOptions {\n /** 执行清除(通常为 mutation 的 mutateAsync) */\n clean: (days: number) => Promise<unknown>;\n /** 清除成功后的回调(如重置分页) */\n onCleared?: () => void;\n}\nexport interface ClearLogsControl {\n modalVisible: boolean;\n days: number;\n verifying: boolean;\n openClearModal: (days: number) => void;\n closeModal: () => void;\n confirmClear: () => Promise<void>;\n}\n/** 日志清除共享逻辑:保留天数选择与危险操作确认 */\nexport function useClearLogs({ clean, onCleared }: UseClearLogsOptions): ClearLogsControl {\n const [modalVisible, setModalVisible] = useState(false);\n const [days, setDays] = useState(0);\n const [verifying, setVerifying] = useState(false);\n const openClearModal = (d: number) => {\n setDays(d);\n setModalVisible(true);\n };\n const confirmClear = async () => {\n if (verifying) return;\n setVerifying(true);\n try {\n await clean(days);\n setModalVisible(false);\n Toast.success(days === 0 ? '历史日志已清除' : `已清除${CLEAR_LOGS_LABELS[days] ?? `${days} 天前`}的日志,最近 ${days} 天的记录已保留`);\n onCleared?.();\n } finally { setVerifying(false); }\n };\n return {\n modalVisible,\n days,\n verifying,\n openClearModal,\n closeModal: () => setModalVisible(false),\n confirmClear,\n };\n}\n","import { useContext } from 'react';\nimport { Button, Dropdown, SplitButtonGroup } from \"@/ui\";\nimport { ChevronDown, Trash2 } from 'lucide-react';\nimport AppModal from \"@/components/AppModal\";\nimport { ToolbarSlotContext } from \"@fudanda/react-core/components/toolbar-slot-context\";\nimport { CLEAR_LOGS_DAYS, CLEAR_LOGS_LABELS, clearLogsLabel, type ClearLogsControl } from \"@/hooks/useClearLogs\";\ninterface ClearLogsButtonsProps {\n loading: boolean;\n /** 触发清除,0 为全部清除,正数为保留天数(与契约 `days` 一致) */\n onClear: (days: number) => void;\n /** 被清除对象的名称,如「日志」「录屏」 */\n label?: string;\n}\n/**\n * 清除日志入口:主按钮明确清除全部记录,下拉提供按保留天数清除。\n * 放进工具栏移动端更多菜单时自动平铺为一组按钮,无需另传 mobileActions。\n */\nexport function ClearLogsButtons({ loading, onClear, label = '日志' }: Readonly<ClearLogsButtonsProps>) {\n const toolbarSlot = useContext(ToolbarSlotContext);\n if (toolbarSlot === 'mobile-actions') {\n return (<>\n {CLEAR_LOGS_DAYS.map((days) => (<Button key={days} type=\"danger\" theme=\"light\" icon={<Trash2 size={14}/>} loading={loading} onClick={() => onClear(days)}>\n {clearLogsLabel(days, label)}\n </Button>))}\n </>);\n }\n return (<SplitButtonGroup>\n <Button type=\"danger\" theme=\"light\" icon={<Trash2 size={14}/>} loading={loading} onClick={() => onClear(CLEAR_LOGS_DAYS[0])}>{clearLogsLabel(CLEAR_LOGS_DAYS[0], label)}</Button>\n <Dropdown trigger=\"click\" position=\"bottomRight\" clickToHide render={(<Dropdown.Menu>\n {CLEAR_LOGS_DAYS.map((days) => (<Dropdown.Item key={days} disabled={loading} onClick={() => onClear(days)}>{clearLogsLabel(days, label)}</Dropdown.Item>))}\n </Dropdown.Menu>)}>\n <Button type=\"danger\" theme=\"light\" disabled={loading} aria-label={`选择清除${label}范围`} icon={<ChevronDown size={14}/>}/>\n </Dropdown>\n </SplitButtonGroup>);\n}\ninterface ClearLogsModalProps {\n /** 日志名称,如「登录日志」「操作日志」 */\n logName: string;\n control: ClearLogsControl;\n}\n/** 清除日志危险操作确认弹窗 */\nexport function ClearLogsModal({ logName, control }: Readonly<ClearLogsModalProps>) {\n return (<AppModal title={clearLogsLabel(control.days, logName)} visible={control.modalVisible} onCancel={control.closeModal} okText=\"确认清除\" okButtonProps={{ type: 'danger', loading: control.verifying }} onOk={control.confirmClear} maskClosable={false}>\n <p style={{ marginBottom: 12 }}>\n 此操作将永久删除当前数据权限范围内{control.days === 0 ? `的全部${logName}` : `${CLEAR_LOGS_LABELS[control.days] ?? `${control.days} 天前`}的${logName}`},不可恢复。\n {control.days > 0 && <><br />最近 {control.days} 天的记录将保留。</>}\n {logName === '操作日志' && <><br />本次清除操作仍会生成一条操作日志。</>}\n </p>\n </AppModal>);\n}\n","/* eslint-disable react-refresh/only-export-components */\nimport type { ReactNode } from 'react';\nimport dayjs from 'dayjs';\nimport { Select, Skeleton, Spin } from \"@/ui\";\nimport { sectionTitleStyle } from \"@/components/charts/helpers\";\nimport { StatGrid } from \"@/components/charts/StatCard\";\nexport const LOG_STATS_DAYS_OPTIONS = [\n { label: '最近 7 天', value: 7 },\n { label: '最近 30 天', value: 30 },\n { label: '最近 90 天', value: 90 },\n];\nexport const WEEKDAY_LABELS = ['周一', '周二', '周三', '周四', '周五', '周六', '周日'];\n/** 日统计按周一 … 周日归桶(本地时区取周几),登录 / 操作日志的周分布柱图共用 */\nexport function weekdayBuckets(dailyStats: readonly {\n date: string;\n count: number;\n}[] | null | undefined): {\n name: string;\n count: number;\n}[] {\n const buckets = new Array<number>(7).fill(0);\n for (const d of dailyStats ?? []) {\n buckets[(dayjs(d.date).day() + 6) % 7] += d.count;\n }\n return WEEKDAY_LABELS.map((name, i) => ({ name, count: buckets[i] }));\n}\nexport interface SuccessRateSummary {\n readonly total: number;\n readonly successCount: number;\n}\n/** 环比增量:上一周期无数据时不展示。 */\nexport function deltaOf(current: number, prev: number): number | null {\n return prev > 0 ? current - prev : null;\n}\n/** 成功率百分比:无汇总或总数为 0 时不展示。 */\nexport function calcSuccessRate(summary: SuccessRateSummary | null | undefined): string | null {\n return summary == null || summary.total === 0\n ? null\n : ((summary.successCount / summary.total) * 100).toFixed(1);\n}\n/** 成功率环比:两个周期都有数据才展示比率差。 */\nexport function calcSuccessRateDelta(summary: SuccessRateSummary | null | undefined, prevSummary: SuccessRateSummary | null | undefined): number | null {\n return summary && prevSummary && summary.total > 0 && prevSummary.total > 0\n ? summary.successCount / summary.total - prevSummary.successCount / prevSummary.total\n : null;\n}\n/** 首屏加载骨架:按统计页布局占位,避免空白闪烁。 */\nexport function LogStatsSkeleton() {\n return (<Skeleton loading active placeholder={(<>\n <StatGrid style={{ marginBottom: 16 }}>\n {Array.from({ length: 4 }, (_, i) => `sk-stat-${i}`).map((key) => (<div key={key}>\n <Skeleton.Title style={{ width: 64, height: 26, marginBottom: 10 }}/>\n <Skeleton.Paragraph rows={1} style={{ width: 80, marginBottom: 0 }}/>\n </div>))}\n </StatGrid>\n <div className=\"zx-panel\" style={{ marginBottom: 16 }}>\n <Skeleton.Title style={{ width: 180, height: 14, marginBottom: 16 }}/>\n <Skeleton.Image style={{ width: '100%', height: 230 }}/>\n </div>\n <div className=\"chart-grid\">\n {['sk-chart-a', 'sk-chart-b'].map((key) => (<div key={key} className=\"zx-panel\">\n <Skeleton.Title style={{ width: 120, height: 14, marginBottom: 16 }}/>\n <Skeleton.Image style={{ width: '100%', height: 260 }}/>\n </div>))}\n </div>\n </>)}>{null}</Skeleton>);\n}\ninterface LogStatsScaffoldProps {\n readonly days: number;\n readonly onDaysChange: (days: number) => void;\n readonly loading: boolean;\n readonly fetching: boolean;\n readonly children: ReactNode;\n}\nexport function LogStatsScaffold({ days, onDaysChange, loading, fetching, children }: LogStatsScaffoldProps) {\n return (<div>\n <div style={{ display: 'flex', justifyContent: 'flex-end', marginBottom: 16 }}>\n <Select value={days} onChange={(v) => onDaysChange(v as number)} style={{ width: 140 }}>\n {LOG_STATS_DAYS_OPTIONS.map((o) => (<Select.Option key={o.value} value={o.value}>{o.label}</Select.Option>))}\n </Select>\n </div>\n\n {loading ? <LogStatsSkeleton /> : (<Spin spinning={fetching}>\n {children}\n </Spin>)}\n </div>);\n}\nexport function ChartPanel({ title, children, danger }: Readonly<{\n title: ReactNode;\n children: ReactNode;\n danger?: boolean;\n}>) {\n return (<div className=\"zx-panel\">\n <div style={{ ...sectionTitleStyle, color: danger ? 'var(--arc-antd-color-danger)' : sectionTitleStyle.color }}>{title}</div>\n {children}\n </div>);\n}\n"]}
|