chainlesschain 0.162.117 → 0.162.119

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.
Files changed (163) hide show
  1. package/package.json +1 -1
  2. package/src/assets/web-panel/assets/{AIOps-D1_eyrEP.js → AIOps-DHRc0Ie_.js} +1 -1
  3. package/src/assets/web-panel/assets/{ActionButton-tnrMeU0Q.js → ActionButton-CgUXfXke.js} +1 -1
  4. package/src/assets/web-panel/assets/{Analytics-SmbOMqoN.js → Analytics-DIKHjclG.js} +3 -3
  5. package/src/assets/web-panel/assets/{AppLayout-B4m4Ic3a.js → AppLayout-vX1r-6CY.js} +5 -5
  6. package/src/assets/web-panel/assets/{Audit-DTC34Qp6.js → Audit-DzJx-WeF.js} +1 -1
  7. package/src/assets/web-panel/assets/{Backup-CU_llIBF.js → Backup-DZ4na4uj.js} +1 -1
  8. package/src/assets/web-panel/assets/{BaseInput-vP66eF17.js → BaseInput-qUEPpz0X.js} +1 -1
  9. package/src/assets/web-panel/assets/{Chat-B8-4iHVJ.js → Chat-DTZl8nH5.js} +6 -6
  10. package/src/assets/web-panel/assets/{ChatBubbleRenderer-CFD0Xh5e.js → ChatBubbleRenderer-DD2tLmRr.js} +1 -1
  11. package/src/assets/web-panel/assets/{Checkbox-zV2Jzmv8.js → Checkbox-BQFF8-dn.js} +1 -1
  12. package/src/assets/web-panel/assets/{Codegen-C7kfk-rY.js → Codegen-DIQaC76u.js} +1 -1
  13. package/src/assets/web-panel/assets/{Col-t_vUszuS.js → Col-uy6MSNXM.js} +1 -1
  14. package/src/assets/web-panel/assets/{Community-pRCzzaCc.js → Community-DJSclfR8.js} +1 -1
  15. package/src/assets/web-panel/assets/{Compact-7IgSGjnW.js → Compact-DS2_Cpq1.js} +1 -1
  16. package/src/assets/web-panel/assets/{Compliance-BqDi7iuY.js → Compliance-T6LqAmah.js} +1 -1
  17. package/src/assets/web-panel/assets/{Cowork-BL84ZaWT.js → Cowork-BrqyP337.js} +2 -2
  18. package/src/assets/web-panel/assets/{Cron-yzv32Scr.js → Cron-DYFCc-f1.js} +2 -2
  19. package/src/assets/web-panel/assets/{Crosschain-6DTzS8P5.js → Crosschain-CnWNsqde.js} +1 -1
  20. package/src/assets/web-panel/assets/{DID-CKP63O4a.js → DID-Cno6plcv.js} +2 -2
  21. package/src/assets/web-panel/assets/{Dashboard-CsV3eP9F.js → Dashboard-CsgzRLsJ.js} +2 -2
  22. package/src/assets/web-panel/assets/{Dropdown-CByjFKzJ.js → Dropdown-BUKI1xuG.js} +1 -1
  23. package/src/assets/web-panel/assets/{EmailListRenderer-C6Hn7n75.js → EmailListRenderer-DuEOjlci.js} +1 -1
  24. package/src/assets/web-panel/assets/{FamilyGuardDashboard-e1c1vXTT.js → FamilyGuardDashboard-BfnUdEaU.js} +1 -1
  25. package/src/assets/web-panel/assets/{Federation-D9oejCYY.js → Federation-CfeUTibi.js} +1 -1
  26. package/src/assets/web-panel/assets/{FormItemContext-DZ4d_-AT.js → FormItemContext-D14wwVsq.js} +1 -1
  27. package/src/assets/web-panel/assets/{GenericCardRenderer-QoGFWBcP.js → GenericCardRenderer-CGx7VfKf.js} +1 -1
  28. package/src/assets/web-panel/assets/{Git-DVZHPXw8.js → Git-chaiL5nL.js} +2 -2
  29. package/src/assets/web-panel/assets/{Governance-NwdvDPTB.js → Governance-Ca5rbA-N.js} +1 -1
  30. package/src/assets/web-panel/assets/{Inference-BYz9MiEu.js → Inference-DA0DK7dc.js} +1 -1
  31. package/src/assets/web-panel/assets/{KnowledgeGraph-BUdGIZKt.js → KnowledgeGraph-BwaAK34_.js} +1 -1
  32. package/src/assets/web-panel/assets/{Logs-CPGewhlD.js → Logs-FA4XPXuO.js} +2 -2
  33. package/src/assets/web-panel/assets/{Marketplace-BgRk4ZMW.js → Marketplace-eOsO5rY3.js} +1 -1
  34. package/src/assets/web-panel/assets/{McpTools-DLY9Fd7m.js → McpTools-D88TlCnE.js} +5 -5
  35. package/src/assets/web-panel/assets/{Memory-B2QishHE.js → Memory-DsIN2Sv6.js} +2 -2
  36. package/src/assets/web-panel/assets/{MobileBridge-DXMQwB_y.js → MobileBridge--q60qDOY.js} +2 -2
  37. package/src/assets/web-panel/assets/MobileProjects-84NgjQck.js +1 -0
  38. package/src/assets/web-panel/assets/{Mtc-BVASCKUv.js → Mtc-BYfKH7WL.js} +2 -2
  39. package/src/assets/web-panel/assets/{MtcAudit-ByLFJ4Zu.js → MtcAudit-D35u_eyo.js} +4 -4
  40. package/src/assets/web-panel/assets/{Multisig-DRAZYcC6.js → Multisig-BksPgmCa.js} +3 -3
  41. package/src/assets/web-panel/assets/{NLProgramming-EiptSKn1.js → NLProgramming-D5cbMuDm.js} +1 -1
  42. package/src/assets/web-panel/assets/{Notes-BHh5Akqh.js → Notes-Cu_pbWTB.js} +3 -3
  43. package/src/assets/web-panel/assets/{NotificationSettings-XWFl4_3j.js → NotificationSettings-C81tVX8S.js} +1 -1
  44. package/src/assets/web-panel/assets/{OrderTableRenderer-Bdc_O7wT.js → OrderTableRenderer-Ccx2Lxcc.js} +1 -1
  45. package/src/assets/web-panel/assets/{Organization--VWlMdKp.js → Organization-BIJzR15j.js} +4 -4
  46. package/src/assets/web-panel/assets/{Overflow-DuYUvyh7.js → Overflow-BKCASkRj.js} +1 -1
  47. package/src/assets/web-panel/assets/{P2P-BnHaPvFP.js → P2P-Q4mb4TFL.js} +2 -2
  48. package/src/assets/web-panel/assets/{PdhVaultBrowser-WfbjffWL.js → PdhVaultBrowser-CPWIjtON.js} +3 -3
  49. package/src/assets/web-panel/assets/{Permissions-BIFhAsZO.js → Permissions-DCo0YoEd.js} +4 -4
  50. package/src/assets/web-panel/assets/{PersonalDataHub-Dt_m7YZ6.js → PersonalDataHub-CT-Efwnw.js} +3 -3
  51. package/src/assets/web-panel/assets/{Pipeline-BsNDbhs7.js → Pipeline-B5iEJ2T_.js} +1 -1
  52. package/src/assets/web-panel/assets/{Privacy-C1SJp30I.js → Privacy-BjOXW26f.js} +1 -1
  53. package/src/assets/web-panel/assets/{ProjectInit-DIOkwlK-.js → ProjectInit-DE6GZFCM.js} +2 -2
  54. package/src/assets/web-panel/assets/{ProjectSettings-BZIL8hvl.js → ProjectSettings-cHsBvsYo.js} +2 -2
  55. package/src/assets/web-panel/assets/{Projects-LHqWtiu2.js → Projects-Bi4Wv8m6.js} +1 -1
  56. package/src/assets/web-panel/assets/{Providers-DlC7SSJT.js → Providers-C0yVlpp5.js} +1 -1
  57. package/src/assets/web-panel/assets/{QuickAsk-DeaVcEma.js → QuickAsk-C6BQQUUw.js} +1 -1
  58. package/src/assets/web-panel/assets/{Recommend-BbQI1g_u.js → Recommend-Dz18iBwP.js} +1 -1
  59. package/src/assets/web-panel/assets/{Reputation-Cro6z2uR.js → Reputation-LagVnM_Q.js} +1 -1
  60. package/src/assets/web-panel/assets/{Row-D7LuPQVP.js → Row--IaheXkB.js} +1 -1
  61. package/src/assets/web-panel/assets/{RssFeed-BowXZJOX.js → RssFeed-CDNYaijn.js} +3 -3
  62. package/src/assets/web-panel/assets/{Search-8oufqOmB.js → Search-D6DPr_Km.js} +1 -1
  63. package/src/assets/web-panel/assets/{Security-CRKFB58y.js → Security-a4-jIBqX.js} +3 -3
  64. package/src/assets/web-panel/assets/{Services-DzRJ4Kus.js → Services-Bmj4jr2Q.js} +2 -2
  65. package/src/assets/web-panel/assets/{Skeleton-DtZmLaQr.js → Skeleton-BhKpCNqE.js} +1 -1
  66. package/src/assets/web-panel/assets/{Skills-CPQFZvJ3.js → Skills-BqmheUDl.js} +1 -1
  67. package/src/assets/web-panel/assets/{Sla-C599OilU.js → Sla-D68DDW4T.js} +1 -1
  68. package/src/assets/web-panel/assets/{SpeechSettings-VdhwHyYN.js → SpeechSettings-CxCF4E_o.js} +1 -1
  69. package/src/assets/web-panel/assets/{SyncSettings-BvX8fTlf.js → SyncSettings-pcetCirO.js} +2 -2
  70. package/src/assets/web-panel/assets/{Tasks-B63Y5zWj.js → Tasks-D3er3tkS.js} +1 -1
  71. package/src/assets/web-panel/assets/{Templates-DZtjohnP.js → Templates-6QfV55r3.js} +1 -1
  72. package/src/assets/web-panel/assets/{Tenant-C8WHv74j.js → Tenant-BOI2_4NB.js} +1 -1
  73. package/src/assets/web-panel/assets/Terminal-DSIv5Z7S.js +3 -0
  74. package/src/assets/web-panel/assets/{TimelineRenderer-C392mTJ7.js → TimelineRenderer-C4tC343-.js} +1 -1
  75. package/src/assets/web-panel/assets/{Tokens-BnmIK-7p.js → Tokens-CnNoHnJv.js} +1 -1
  76. package/src/assets/web-panel/assets/{Trigger-CLYUm45n.js → Trigger-BaRSXO70.js} +1 -1
  77. package/src/assets/web-panel/assets/{Trust-DmKkB9n0.js → Trust-CWnKxwgN.js} +1 -1
  78. package/src/assets/web-panel/assets/{UkeySign-Btsb1cq9.js → UkeySign-De8aN7WZ.js} +1 -1
  79. package/src/assets/web-panel/assets/{VideoEditing-KbSQiQ31.js → VideoEditing-Cu7XhMNZ.js} +1 -1
  80. package/src/assets/web-panel/assets/{Wallet-C7T1JpB8.js → Wallet-xfhJUu0f.js} +4 -4
  81. package/src/assets/web-panel/assets/{WebAuthn-B7fk675F.js → WebAuthn-Bt6sYYDk.js} +4 -4
  82. package/src/assets/web-panel/assets/{WorkflowEditor-BFEqg2-F.js → WorkflowEditor-C4LZ0x-0.js} +1 -1
  83. package/src/assets/web-panel/assets/{chat-CCONImPU.js → chat-33Oq8wz3.js} +1 -1
  84. package/src/assets/web-panel/assets/{colors-BO_usQco.js → colors-COL29MyD.js} +1 -1
  85. package/src/assets/web-panel/assets/{compact-item-DPYH8VmY.js → compact-item-D8hinshK.js} +1 -1
  86. package/src/assets/web-panel/assets/{createContext-DuzinRx4.js → createContext-DVD4d6-0.js} +1 -1
  87. package/src/assets/web-panel/assets/devWarning-CKV56AdO.js +1 -0
  88. package/src/assets/web-panel/assets/{hasIn-CGE1laax.js → hasIn-CvLpycQb.js} +1 -1
  89. package/src/assets/web-panel/assets/{index-CzJpaaYk.js → index-1HmyagUk.js} +1 -1
  90. package/src/assets/web-panel/assets/{index-DhWFRGxq.js → index-3GhR2NdM.js} +1 -1
  91. package/src/assets/web-panel/assets/{index-DPLKoezy.js → index-65FhG6v3.js} +1 -1
  92. package/src/assets/web-panel/assets/{index-B6faWLbM.js → index-B2nqCkxx.js} +1 -1
  93. package/src/assets/web-panel/assets/{index-BQieJh3P.js → index-B3Ja9sDO.js} +1 -1
  94. package/src/assets/web-panel/assets/{index-Cjl3wd7u.js → index-B4L1oFlv.js} +1 -1
  95. package/src/assets/web-panel/assets/{index-BJrz4R1Q.js → index-BCJdqeDG.js} +1 -1
  96. package/src/assets/web-panel/assets/{index-CLevxAAl.js → index-B_KT8dhv.js} +1 -1
  97. package/src/assets/web-panel/assets/{index-C9a-SDrB.js → index-Bc1y36ct.js} +3 -3
  98. package/src/assets/web-panel/assets/{index-DEsKGcgq.js → index-BcqrzCOI.js} +1 -1
  99. package/src/assets/web-panel/assets/{index-CCFBPPL3.js → index-BmieBFpM.js} +1 -1
  100. package/src/assets/web-panel/assets/{index-D7PjxVkg.js → index-BzJsjPb9.js} +1 -1
  101. package/src/assets/web-panel/assets/{index-CiJrDiUF.js → index-CAZl_jZJ.js} +1 -1
  102. package/src/assets/web-panel/assets/{index-_6PfzLBb.js → index-CNTOYZQJ.js} +1 -1
  103. package/src/assets/web-panel/assets/{index-WNRdmI1g.js → index-CSzLUjjZ.js} +1 -1
  104. package/src/assets/web-panel/assets/{index-CyNkEBra.js → index-CXFtAKWy.js} +1 -1
  105. package/src/assets/web-panel/assets/{index-k_kmmJE3.js → index-Ctz762df.js} +1 -1
  106. package/src/assets/web-panel/assets/{index-CFMqyOfS.js → index-D4E97124.js} +1 -1
  107. package/src/assets/web-panel/assets/{index-BMvB7bwt.js → index-D50I92to.js} +1 -1
  108. package/src/assets/web-panel/assets/{index-Njlbk8o6.js → index-D72pZlFa.js} +1 -1
  109. package/src/assets/web-panel/assets/index-DBC8yuEG.js +1 -0
  110. package/src/assets/web-panel/assets/{index-BBdlh4S9.js → index-DD9PcRt3.js} +1 -1
  111. package/src/assets/web-panel/assets/{index-Djr_9TsG.js → index-DDzdST6b.js} +1 -1
  112. package/src/assets/web-panel/assets/{index-BxSrpYMm.js → index-DGDKCtU2.js} +1 -1
  113. package/src/assets/web-panel/assets/{index-Dr_bswHZ.js → index-DUkg9C1d.js} +1 -1
  114. package/src/assets/web-panel/assets/{index-C0J2olcT.js → index-DaXHhqHE.js} +1 -1
  115. package/src/assets/web-panel/assets/{index-CHBCKhGQ.js → index-DcSZkELE.js} +1 -1
  116. package/src/assets/web-panel/assets/{index-BhhReyyv.js → index-DdlzRBsd.js} +1 -1
  117. package/src/assets/web-panel/assets/{index-VjWPHPNA.js → index-DhHsdI-s.js} +1 -1
  118. package/src/assets/web-panel/assets/{index-CsWempjh.js → index-DigxhXCh.js} +1 -1
  119. package/src/assets/web-panel/assets/{index-BoiTovAz.js → index-Dk6Mp5o3.js} +1 -1
  120. package/src/assets/web-panel/assets/{index-DcDzDXuF.js → index-Dm47rSqn.js} +1 -1
  121. package/src/assets/web-panel/assets/{index-DFeaJhkI.js → index-DnxPhaUe.js} +1 -1
  122. package/src/assets/web-panel/assets/{index-BOrH71r5.js → index-DpAeo8Y1.js} +1 -1
  123. package/src/assets/web-panel/assets/{index-C4OJtXb2.js → index-Dz_IGu03.js} +1 -1
  124. package/src/assets/web-panel/assets/{index-B5edbioK.js → index-JR5iJ3Nm.js} +1 -1
  125. package/src/assets/web-panel/assets/{index-C8E575em.js → index-cgs0nxzF.js} +1 -1
  126. package/src/assets/web-panel/assets/{index-C6ORJpUJ.js → index-czxh_xOe.js} +1 -1
  127. package/src/assets/web-panel/assets/index-z9Rtlw7F.js +1 -0
  128. package/src/assets/web-panel/assets/{initDefaultProps-V7_xvS9N.js → initDefaultProps-DqSLMT1R.js} +1 -1
  129. package/src/assets/web-panel/assets/{motion-DRGZ-HPK.js → motion-DkdJz9l-.js} +1 -1
  130. package/src/assets/web-panel/assets/{move-CZrcQSMV.js → move-oonN7lOc.js} +1 -1
  131. package/src/assets/web-panel/assets/{omit-pd-_NH99.js → omit-BeFyiGwR.js} +1 -1
  132. package/src/assets/web-panel/assets/{pickAttrs-CTupbn-v.js → pickAttrs-OePKGTKF.js} +1 -1
  133. package/src/assets/web-panel/assets/{placementArrow-Bn7FYxHg.js → placementArrow-CjQXhAph.js} +1 -1
  134. package/src/assets/web-panel/assets/{responsiveObserve-WfzZR_7N.js → responsiveObserve-Dmn9lUes.js} +1 -1
  135. package/src/assets/web-panel/assets/{slide-CYH80N3q.js → slide-Dfi_sykC.js} +1 -1
  136. package/src/assets/web-panel/assets/{statusUtils-C4hqTJzV.js → statusUtils-Dl9mPVld.js} +1 -1
  137. package/src/assets/web-panel/assets/{styleChecker-BQyUObAw.js → styleChecker-D3ay9a4W.js} +1 -1
  138. package/src/assets/web-panel/assets/{useFlexGapSupport-BGDH_gNt.js → useFlexGapSupport-D07_5fY3.js} +1 -1
  139. package/src/assets/web-panel/assets/{useFs-D_3Y1Yh6.js → useFs-D3axlil7.js} +1 -1
  140. package/src/assets/web-panel/assets/{usePersonalDataHub-vnU0oI0p.js → usePersonalDataHub-CR53u77i.js} +1 -1
  141. package/src/assets/web-panel/assets/{vnode-DnTqtAMj.js → vnode-DNOIJ4an.js} +1 -1
  142. package/src/assets/web-panel/assets/{zoom-ChHcZlUk.js → zoom-MIAkyImQ.js} +1 -1
  143. package/src/assets/web-panel/index.html +1 -1
  144. package/src/commands/browse.js +2 -12
  145. package/src/commands/doctor.js +15 -0
  146. package/src/commands/hub.js +15 -91
  147. package/src/commands/note.js +13 -10
  148. package/src/lib/did-manager.js +9 -2
  149. package/src/lib/goal-store.js +23 -0
  150. package/src/lib/instinct-manager.js +8 -2
  151. package/src/lib/memory-manager.js +7 -3
  152. package/src/lib/sql-like.js +23 -0
  153. package/src/lib/update-notice.js +34 -10
  154. package/src/lib/version-skew.js +111 -0
  155. package/src/repl/agent-repl.js +39 -0
  156. package/src/runtime/agent-core.js +19 -3
  157. package/src/runtime/diagnostics.js +23 -1
  158. package/src/runtime/headless-stream.js +45 -0
  159. package/src/assets/web-panel/assets/MobileProjects-4uY4YbFm.js +0 -1
  160. package/src/assets/web-panel/assets/Terminal-D0IC-PsM.js +0 -3
  161. package/src/assets/web-panel/assets/devWarning-BJYFLmEO.js +0 -1
  162. package/src/assets/web-panel/assets/index-BznL1yIS.js +0 -1
  163. package/src/assets/web-panel/assets/index-SDk3qvNU.js +0 -1
@@ -1 +1 @@
1
- import{h as i}from"./index-C9a-SDrB.js";const L=(e,o,t,n,p)=>{const r=e/2,a=0,s=r,m=t*1/Math.sqrt(2),h=r-t*(1-1/Math.sqrt(2)),b=r-o*(1/Math.sqrt(2)),u=t*(Math.sqrt(2)-1)+o*(1/Math.sqrt(2)),g=2*r-b,w=u,d=2*r-m,c=h,A=2*r-a,x=s,v=r*Math.sqrt(2)+t*(Math.sqrt(2)-2),$=t*(Math.sqrt(2)-1);return{pointerEvents:"none",width:e,height:e,overflow:"hidden","&::after":{content:'""',position:"absolute",width:v,height:v,bottom:0,insetInline:0,margin:"auto",borderRadius:{_skip_check_:!0,value:`0 0 ${o}px 0`},transform:"translateY(50%) rotate(-135deg)",boxShadow:p,zIndex:0,background:"transparent"},"&::before":{position:"absolute",bottom:0,insetInlineStart:0,width:e,height:e/2,background:n,clipPath:{_multi_value_:!0,value:[`polygon(${$}px 100%, 50% ${$}px, ${2*r-$}px 100%, ${$}px 100%)`,`path('M ${a} ${s} A ${t} ${t} 0 0 0 ${m} ${h} L ${b} ${u} A ${o} ${o} 0 0 1 ${g} ${w} L ${d} ${c} A ${t} ${t} 0 0 0 ${A} ${x} Z')`]},content:'""'}}},f={adjustX:1,adjustY:1},l=[0,0],j={left:{points:["cr","cl"],overflow:f,offset:[-4,0],targetOffset:l},right:{points:["cl","cr"],overflow:f,offset:[4,0],targetOffset:l},top:{points:["bc","tc"],overflow:f,offset:[0,-4],targetOffset:l},bottom:{points:["tc","bc"],overflow:f,offset:[0,4],targetOffset:l},topLeft:{points:["bl","tl"],overflow:f,offset:[0,-4],targetOffset:l},leftTop:{points:["tr","tl"],overflow:f,offset:[-4,0],targetOffset:l},topRight:{points:["br","tr"],overflow:f,offset:[0,-4],targetOffset:l},rightTop:{points:["tl","tr"],overflow:f,offset:[4,0],targetOffset:l},bottomRight:{points:["tr","br"],overflow:f,offset:[0,4],targetOffset:l},rightBottom:{points:["bl","br"],overflow:f,offset:[4,0],targetOffset:l},bottomLeft:{points:["tl","bl"],overflow:f,offset:[0,4],targetOffset:l},leftBottom:{points:["br","bl"],overflow:f,offset:[-4,0],targetOffset:l}},M={adjustX:1,adjustY:1},O={adjustX:0,adjustY:0},T=[0,0];function k(e){return typeof e=="boolean"?e?M:O:i(i({},O),e)}function Y(e){const{arrowWidth:o=4,horizontalArrowShift:t=16,verticalArrowShift:n=8,autoAdjustOverflow:p,arrowPointAtCenter:r}=e,a={left:{points:["cr","cl"],offset:[-4,0]},right:{points:["cl","cr"],offset:[4,0]},top:{points:["bc","tc"],offset:[0,-4]},bottom:{points:["tc","bc"],offset:[0,4]},topLeft:{points:["bl","tc"],offset:[-(t+o),-4]},leftTop:{points:["tr","cl"],offset:[-4,-(n+o)]},topRight:{points:["br","tc"],offset:[t+o,-4]},rightTop:{points:["tl","cr"],offset:[4,-(n+o)]},bottomRight:{points:["tr","bc"],offset:[t+o,4]},rightBottom:{points:["bl","cr"],offset:[4,n+o]},bottomLeft:{points:["tl","bc"],offset:[-(t+o),4]},leftBottom:{points:["br","cl"],offset:[-4,n+o]}};return Object.keys(a).forEach(s=>{a[s]=r?i(i({},a[s]),{overflow:k(p),targetOffset:T}):i(i({},j[s]),{overflow:k(p)}),a[s].ignoreShake=!0}),a}function _(e){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";return e.map(t=>`${o}${t}`).join(",")}const X=8;function B(e){const o=X,{sizePopupArrow:t,contentRadius:n,borderRadiusOuter:p,limitVerticalRadius:r}=e,a=t/2-Math.ceil(p*(Math.sqrt(2)-1)),s=(n>12?n+2:12)-a,m=r?o-a:s;return{dropdownArrowOffset:s,dropdownArrowOffsetVertical:m}}function q(e,o){const{componentCls:t,sizePopupArrow:n,marginXXS:p,borderRadiusXS:r,borderRadiusOuter:a,boxShadowPopoverArrow:s}=e,{colorBg:m,showArrowCls:h,contentRadius:b=e.borderRadiusLG,limitVerticalRadius:u}=o,{dropdownArrowOffsetVertical:g,dropdownArrowOffset:w}=B({sizePopupArrow:n,contentRadius:b,borderRadiusOuter:a,limitVerticalRadius:u}),d=n/2+p;return{[t]:{[`${t}-arrow`]:[i(i({position:"absolute",zIndex:1,display:"block"},L(n,r,a,m,s)),{"&:before":{background:m}})],[[`&-placement-top ${t}-arrow`,`&-placement-topLeft ${t}-arrow`,`&-placement-topRight ${t}-arrow`].join(",")]:{bottom:0,transform:"translateY(100%) rotate(180deg)"},[`&-placement-top ${t}-arrow`]:{left:{_skip_check_:!0,value:"50%"},transform:"translateX(-50%) translateY(100%) rotate(180deg)"},[`&-placement-topLeft ${t}-arrow`]:{left:{_skip_check_:!0,value:w}},[`&-placement-topRight ${t}-arrow`]:{right:{_skip_check_:!0,value:w}},[[`&-placement-bottom ${t}-arrow`,`&-placement-bottomLeft ${t}-arrow`,`&-placement-bottomRight ${t}-arrow`].join(",")]:{top:0,transform:"translateY(-100%)"},[`&-placement-bottom ${t}-arrow`]:{left:{_skip_check_:!0,value:"50%"},transform:"translateX(-50%) translateY(-100%)"},[`&-placement-bottomLeft ${t}-arrow`]:{left:{_skip_check_:!0,value:w}},[`&-placement-bottomRight ${t}-arrow`]:{right:{_skip_check_:!0,value:w}},[[`&-placement-left ${t}-arrow`,`&-placement-leftTop ${t}-arrow`,`&-placement-leftBottom ${t}-arrow`].join(",")]:{right:{_skip_check_:!0,value:0},transform:"translateX(100%) rotate(90deg)"},[`&-placement-left ${t}-arrow`]:{top:{_skip_check_:!0,value:"50%"},transform:"translateY(-50%) translateX(100%) rotate(90deg)"},[`&-placement-leftTop ${t}-arrow`]:{top:g},[`&-placement-leftBottom ${t}-arrow`]:{bottom:g},[[`&-placement-right ${t}-arrow`,`&-placement-rightTop ${t}-arrow`,`&-placement-rightBottom ${t}-arrow`].join(",")]:{left:{_skip_check_:!0,value:0},transform:"translateX(-100%) rotate(-90deg)"},[`&-placement-right ${t}-arrow`]:{top:{_skip_check_:!0,value:"50%"},transform:"translateY(-50%) translateX(-100%) rotate(-90deg)"},[`&-placement-rightTop ${t}-arrow`]:{top:g},[`&-placement-rightBottom ${t}-arrow`]:{bottom:g},[_(["&-placement-topLeft","&-placement-top","&-placement-topRight"].map(c=>c+=":not(&-arrow-hidden)"),h)]:{paddingBottom:d},[_(["&-placement-bottomLeft","&-placement-bottom","&-placement-bottomRight"].map(c=>c+=":not(&-arrow-hidden)"),h)]:{paddingTop:d},[_(["&-placement-leftTop","&-placement-left","&-placement-leftBottom"].map(c=>c+=":not(&-arrow-hidden)"),h)]:{paddingRight:{_skip_check_:!0,value:d}},[_(["&-placement-rightTop","&-placement-right","&-placement-rightBottom"].map(c=>c+=":not(&-arrow-hidden)"),h)]:{paddingLeft:{_skip_check_:!0,value:d}}}}}export{X as M,Y as a,B as b,q as g,j as p,L as r};
1
+ import{h as i}from"./index-Bc1y36ct.js";const L=(e,o,t,n,p)=>{const r=e/2,a=0,s=r,m=t*1/Math.sqrt(2),h=r-t*(1-1/Math.sqrt(2)),b=r-o*(1/Math.sqrt(2)),u=t*(Math.sqrt(2)-1)+o*(1/Math.sqrt(2)),g=2*r-b,w=u,d=2*r-m,c=h,A=2*r-a,x=s,v=r*Math.sqrt(2)+t*(Math.sqrt(2)-2),$=t*(Math.sqrt(2)-1);return{pointerEvents:"none",width:e,height:e,overflow:"hidden","&::after":{content:'""',position:"absolute",width:v,height:v,bottom:0,insetInline:0,margin:"auto",borderRadius:{_skip_check_:!0,value:`0 0 ${o}px 0`},transform:"translateY(50%) rotate(-135deg)",boxShadow:p,zIndex:0,background:"transparent"},"&::before":{position:"absolute",bottom:0,insetInlineStart:0,width:e,height:e/2,background:n,clipPath:{_multi_value_:!0,value:[`polygon(${$}px 100%, 50% ${$}px, ${2*r-$}px 100%, ${$}px 100%)`,`path('M ${a} ${s} A ${t} ${t} 0 0 0 ${m} ${h} L ${b} ${u} A ${o} ${o} 0 0 1 ${g} ${w} L ${d} ${c} A ${t} ${t} 0 0 0 ${A} ${x} Z')`]},content:'""'}}},f={adjustX:1,adjustY:1},l=[0,0],j={left:{points:["cr","cl"],overflow:f,offset:[-4,0],targetOffset:l},right:{points:["cl","cr"],overflow:f,offset:[4,0],targetOffset:l},top:{points:["bc","tc"],overflow:f,offset:[0,-4],targetOffset:l},bottom:{points:["tc","bc"],overflow:f,offset:[0,4],targetOffset:l},topLeft:{points:["bl","tl"],overflow:f,offset:[0,-4],targetOffset:l},leftTop:{points:["tr","tl"],overflow:f,offset:[-4,0],targetOffset:l},topRight:{points:["br","tr"],overflow:f,offset:[0,-4],targetOffset:l},rightTop:{points:["tl","tr"],overflow:f,offset:[4,0],targetOffset:l},bottomRight:{points:["tr","br"],overflow:f,offset:[0,4],targetOffset:l},rightBottom:{points:["bl","br"],overflow:f,offset:[4,0],targetOffset:l},bottomLeft:{points:["tl","bl"],overflow:f,offset:[0,4],targetOffset:l},leftBottom:{points:["br","bl"],overflow:f,offset:[-4,0],targetOffset:l}},M={adjustX:1,adjustY:1},O={adjustX:0,adjustY:0},T=[0,0];function k(e){return typeof e=="boolean"?e?M:O:i(i({},O),e)}function Y(e){const{arrowWidth:o=4,horizontalArrowShift:t=16,verticalArrowShift:n=8,autoAdjustOverflow:p,arrowPointAtCenter:r}=e,a={left:{points:["cr","cl"],offset:[-4,0]},right:{points:["cl","cr"],offset:[4,0]},top:{points:["bc","tc"],offset:[0,-4]},bottom:{points:["tc","bc"],offset:[0,4]},topLeft:{points:["bl","tc"],offset:[-(t+o),-4]},leftTop:{points:["tr","cl"],offset:[-4,-(n+o)]},topRight:{points:["br","tc"],offset:[t+o,-4]},rightTop:{points:["tl","cr"],offset:[4,-(n+o)]},bottomRight:{points:["tr","bc"],offset:[t+o,4]},rightBottom:{points:["bl","cr"],offset:[4,n+o]},bottomLeft:{points:["tl","bc"],offset:[-(t+o),4]},leftBottom:{points:["br","cl"],offset:[-4,n+o]}};return Object.keys(a).forEach(s=>{a[s]=r?i(i({},a[s]),{overflow:k(p),targetOffset:T}):i(i({},j[s]),{overflow:k(p)}),a[s].ignoreShake=!0}),a}function _(e){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";return e.map(t=>`${o}${t}`).join(",")}const X=8;function B(e){const o=X,{sizePopupArrow:t,contentRadius:n,borderRadiusOuter:p,limitVerticalRadius:r}=e,a=t/2-Math.ceil(p*(Math.sqrt(2)-1)),s=(n>12?n+2:12)-a,m=r?o-a:s;return{dropdownArrowOffset:s,dropdownArrowOffsetVertical:m}}function q(e,o){const{componentCls:t,sizePopupArrow:n,marginXXS:p,borderRadiusXS:r,borderRadiusOuter:a,boxShadowPopoverArrow:s}=e,{colorBg:m,showArrowCls:h,contentRadius:b=e.borderRadiusLG,limitVerticalRadius:u}=o,{dropdownArrowOffsetVertical:g,dropdownArrowOffset:w}=B({sizePopupArrow:n,contentRadius:b,borderRadiusOuter:a,limitVerticalRadius:u}),d=n/2+p;return{[t]:{[`${t}-arrow`]:[i(i({position:"absolute",zIndex:1,display:"block"},L(n,r,a,m,s)),{"&:before":{background:m}})],[[`&-placement-top ${t}-arrow`,`&-placement-topLeft ${t}-arrow`,`&-placement-topRight ${t}-arrow`].join(",")]:{bottom:0,transform:"translateY(100%) rotate(180deg)"},[`&-placement-top ${t}-arrow`]:{left:{_skip_check_:!0,value:"50%"},transform:"translateX(-50%) translateY(100%) rotate(180deg)"},[`&-placement-topLeft ${t}-arrow`]:{left:{_skip_check_:!0,value:w}},[`&-placement-topRight ${t}-arrow`]:{right:{_skip_check_:!0,value:w}},[[`&-placement-bottom ${t}-arrow`,`&-placement-bottomLeft ${t}-arrow`,`&-placement-bottomRight ${t}-arrow`].join(",")]:{top:0,transform:"translateY(-100%)"},[`&-placement-bottom ${t}-arrow`]:{left:{_skip_check_:!0,value:"50%"},transform:"translateX(-50%) translateY(-100%)"},[`&-placement-bottomLeft ${t}-arrow`]:{left:{_skip_check_:!0,value:w}},[`&-placement-bottomRight ${t}-arrow`]:{right:{_skip_check_:!0,value:w}},[[`&-placement-left ${t}-arrow`,`&-placement-leftTop ${t}-arrow`,`&-placement-leftBottom ${t}-arrow`].join(",")]:{right:{_skip_check_:!0,value:0},transform:"translateX(100%) rotate(90deg)"},[`&-placement-left ${t}-arrow`]:{top:{_skip_check_:!0,value:"50%"},transform:"translateY(-50%) translateX(100%) rotate(90deg)"},[`&-placement-leftTop ${t}-arrow`]:{top:g},[`&-placement-leftBottom ${t}-arrow`]:{bottom:g},[[`&-placement-right ${t}-arrow`,`&-placement-rightTop ${t}-arrow`,`&-placement-rightBottom ${t}-arrow`].join(",")]:{left:{_skip_check_:!0,value:0},transform:"translateX(-100%) rotate(-90deg)"},[`&-placement-right ${t}-arrow`]:{top:{_skip_check_:!0,value:"50%"},transform:"translateY(-50%) translateX(-100%) rotate(-90deg)"},[`&-placement-rightTop ${t}-arrow`]:{top:g},[`&-placement-rightBottom ${t}-arrow`]:{bottom:g},[_(["&-placement-topLeft","&-placement-top","&-placement-topRight"].map(c=>c+=":not(&-arrow-hidden)"),h)]:{paddingBottom:d},[_(["&-placement-bottomLeft","&-placement-bottom","&-placement-bottomRight"].map(c=>c+=":not(&-arrow-hidden)"),h)]:{paddingTop:d},[_(["&-placement-leftTop","&-placement-left","&-placement-leftBottom"].map(c=>c+=":not(&-arrow-hidden)"),h)]:{paddingRight:{_skip_check_:!0,value:d}},[_(["&-placement-rightTop","&-placement-right","&-placement-rightBottom"].map(c=>c+=":not(&-arrow-hidden)"),h)]:{paddingLeft:{_skip_check_:!0,value:d}}}}}export{X as M,Y as a,B as b,q as g,j as p,L as r};
@@ -1 +1 @@
1
- import{I as o,h}from"./index-C9a-SDrB.js";import{b as x}from"./vendor-BvqAck49.js";const v=["xxxl","xxl","xl","lg","md","sm","xs"],p=r=>({xs:`(max-width: ${r.screenXSMax}px)`,sm:`(min-width: ${r.screenSM}px)`,md:`(min-width: ${r.screenMD}px)`,lg:`(min-width: ${r.screenLG}px)`,xl:`(min-width: ${r.screenXL}px)`,xxl:`(min-width: ${r.screenXXL}px)`,xxxl:`{min-width: ${r.screenXXXL}px}`});function w(){const[,r]=o();return x(()=>{const n=p(r.value),i=new Map;let a=-1,c={};return{matchHandlers:{},dispatch(e){return c=e,i.forEach(t=>t(c)),i.size>=1},subscribe(e){return i.size||this.register(),a+=1,i.set(a,e),e(c),a},unsubscribe(e){i.delete(e),i.size||this.unregister()},unregister(){Object.keys(n).forEach(e=>{const t=n[e],s=this.matchHandlers[t];s?.mql.removeListener(s?.listener)}),i.clear()},register(){Object.keys(n).forEach(e=>{const t=n[e],s=l=>{let{matches:m}=l;this.dispatch(h(h({},c),{[e]:m}))},d=window.matchMedia(t);d.addListener(s),this.matchHandlers[t]={mql:d,listener:s},s(d)})},responsiveMap:n}})}export{v as r,w as u};
1
+ import{I as o,h}from"./index-Bc1y36ct.js";import{b as x}from"./vendor-BvqAck49.js";const v=["xxxl","xxl","xl","lg","md","sm","xs"],p=r=>({xs:`(max-width: ${r.screenXSMax}px)`,sm:`(min-width: ${r.screenSM}px)`,md:`(min-width: ${r.screenMD}px)`,lg:`(min-width: ${r.screenLG}px)`,xl:`(min-width: ${r.screenXL}px)`,xxl:`(min-width: ${r.screenXXL}px)`,xxxl:`{min-width: ${r.screenXXXL}px}`});function w(){const[,r]=o();return x(()=>{const n=p(r.value),i=new Map;let a=-1,c={};return{matchHandlers:{},dispatch(e){return c=e,i.forEach(t=>t(c)),i.size>=1},subscribe(e){return i.size||this.register(),a+=1,i.set(a,e),e(c),a},unsubscribe(e){i.delete(e),i.size||this.unregister()},unregister(){Object.keys(n).forEach(e=>{const t=n[e],s=this.matchHandlers[t];s?.mql.removeListener(s?.listener)}),i.clear()},register(){Object.keys(n).forEach(e=>{const t=n[e],s=l=>{let{matches:m}=l;this.dispatch(h(h({},c),{[e]:m}))},d=window.matchMedia(t);d.addListener(s),this.matchHandlers[t]={mql:d,listener:s},s(d)})},responsiveMap:n}})}export{v as r,w as u};
@@ -1,4 +1,4 @@
1
- import{K as n}from"./index-C9a-SDrB.js";import{i as e}from"./motion-DRGZ-HPK.js";const m=new n("antSlideUpIn",{"0%":{transform:"scaleY(0.8)",transformOrigin:"0% 0%",opacity:0},"100%":{transform:"scaleY(1)",transformOrigin:"0% 0%",opacity:1}}),f=new n("antSlideUpOut",{"0%":{transform:"scaleY(1)",transformOrigin:"0% 0%",opacity:1},"100%":{transform:"scaleY(0.8)",transformOrigin:"0% 0%",opacity:0}}),c=new n("antSlideDownIn",{"0%":{transform:"scaleY(0.8)",transformOrigin:"100% 100%",opacity:0},"100%":{transform:"scaleY(1)",transformOrigin:"100% 100%",opacity:1}}),l=new n("antSlideDownOut",{"0%":{transform:"scaleY(1)",transformOrigin:"100% 100%",opacity:1},"100%":{transform:"scaleY(0.8)",transformOrigin:"100% 100%",opacity:0}}),y=new n("antSlideLeftIn",{"0%":{transform:"scaleX(0.8)",transformOrigin:"0% 0%",opacity:0},"100%":{transform:"scaleX(1)",transformOrigin:"0% 0%",opacity:1}}),p=new n("antSlideLeftOut",{"0%":{transform:"scaleX(1)",transformOrigin:"0% 0%",opacity:1},"100%":{transform:"scaleX(0.8)",transformOrigin:"0% 0%",opacity:0}}),O=new n("antSlideRightIn",{"0%":{transform:"scaleX(0.8)",transformOrigin:"100% 0%",opacity:0},"100%":{transform:"scaleX(1)",transformOrigin:"100% 0%",opacity:1}}),d=new n("antSlideRightOut",{"0%":{transform:"scaleX(1)",transformOrigin:"100% 0%",opacity:1},"100%":{transform:"scaleX(0.8)",transformOrigin:"100% 0%",opacity:0}}),g={"slide-up":{inKeyframes:m,outKeyframes:f},"slide-down":{inKeyframes:c,outKeyframes:l},"slide-left":{inKeyframes:y,outKeyframes:p},"slide-right":{inKeyframes:O,outKeyframes:d}},K=(t,r)=>{const{antCls:a}=t,i=`${a}-${r}`,{inKeyframes:s,outKeyframes:o}=g[r];return[e(i,s,o,t.motionDurationMid),{[`
1
+ import{K as n}from"./index-Bc1y36ct.js";import{i as e}from"./motion-DkdJz9l-.js";const m=new n("antSlideUpIn",{"0%":{transform:"scaleY(0.8)",transformOrigin:"0% 0%",opacity:0},"100%":{transform:"scaleY(1)",transformOrigin:"0% 0%",opacity:1}}),f=new n("antSlideUpOut",{"0%":{transform:"scaleY(1)",transformOrigin:"0% 0%",opacity:1},"100%":{transform:"scaleY(0.8)",transformOrigin:"0% 0%",opacity:0}}),c=new n("antSlideDownIn",{"0%":{transform:"scaleY(0.8)",transformOrigin:"100% 100%",opacity:0},"100%":{transform:"scaleY(1)",transformOrigin:"100% 100%",opacity:1}}),l=new n("antSlideDownOut",{"0%":{transform:"scaleY(1)",transformOrigin:"100% 100%",opacity:1},"100%":{transform:"scaleY(0.8)",transformOrigin:"100% 100%",opacity:0}}),y=new n("antSlideLeftIn",{"0%":{transform:"scaleX(0.8)",transformOrigin:"0% 0%",opacity:0},"100%":{transform:"scaleX(1)",transformOrigin:"0% 0%",opacity:1}}),p=new n("antSlideLeftOut",{"0%":{transform:"scaleX(1)",transformOrigin:"0% 0%",opacity:1},"100%":{transform:"scaleX(0.8)",transformOrigin:"0% 0%",opacity:0}}),O=new n("antSlideRightIn",{"0%":{transform:"scaleX(0.8)",transformOrigin:"100% 0%",opacity:0},"100%":{transform:"scaleX(1)",transformOrigin:"100% 0%",opacity:1}}),d=new n("antSlideRightOut",{"0%":{transform:"scaleX(1)",transformOrigin:"100% 0%",opacity:1},"100%":{transform:"scaleX(0.8)",transformOrigin:"100% 0%",opacity:0}}),g={"slide-up":{inKeyframes:m,outKeyframes:f},"slide-down":{inKeyframes:c,outKeyframes:l},"slide-left":{inKeyframes:y,outKeyframes:p},"slide-right":{inKeyframes:O,outKeyframes:d}},K=(t,r)=>{const{antCls:a}=t,i=`${a}-${r}`,{inKeyframes:s,outKeyframes:o}=g[r];return[e(i,s,o,t.motionDurationMid),{[`
2
2
  ${i}-enter,
3
3
  ${i}-appear
4
4
  `]:{transform:"scale(0)",transformOrigin:"0% 0%",opacity:0,animationTimingFunction:t.motionEaseOutQuint},[`${i}-leave`]:{animationTimingFunction:t.motionEaseInQuint}}]};export{f as a,c as b,m as c,K as i,l as s};
@@ -1 +1 @@
1
- import{i as e}from"./index-C9a-SDrB.js";function r(a,s,t){return e({[`${a}-status-success`]:s==="success",[`${a}-status-warning`]:s==="warning",[`${a}-status-error`]:s==="error",[`${a}-status-validating`]:s==="validating",[`${a}-has-feedback`]:t})}const c=(a,s)=>s||a;export{c as a,r as g};
1
+ import{i as e}from"./index-Bc1y36ct.js";function r(a,s,t){return e({[`${a}-status-success`]:s==="success",[`${a}-status-warning`]:s==="warning",[`${a}-status-error`]:s==="error",[`${a}-status-validating`]:s==="validating",[`${a}-has-feedback`]:t})}const c=(a,s)=>s||a;export{c as a,r as g};
@@ -1 +1 @@
1
- import{A as d}from"./index-C9a-SDrB.js";const i=()=>d()&&window.document.documentElement,c=e=>{if(d()&&window.document.documentElement){const t=Array.isArray(e)?e:[e],{documentElement:n}=window.document;return t.some(r=>r in n.style)}return!1},u=(e,t)=>{if(!c(e))return!1;const n=document.createElement("div"),r=n.style[e];return n.style[e]=t,n.style[e]!==r};function s(e,t){return!Array.isArray(e)&&t!==void 0?u(e,t):c(e)}let o;const p=()=>{if(!i())return!1;if(o!==void 0)return o;const e=document.createElement("div");return e.style.display="flex",e.style.flexDirection="column",e.style.rowGap="1px",e.appendChild(document.createElement("div")),e.appendChild(document.createElement("div")),document.body.appendChild(e),o=e.scrollHeight===1,document.body.removeChild(e),o};export{i as c,p as d,s as i};
1
+ import{A as d}from"./index-Bc1y36ct.js";const i=()=>d()&&window.document.documentElement,c=e=>{if(d()&&window.document.documentElement){const t=Array.isArray(e)?e:[e],{documentElement:n}=window.document;return t.some(r=>r in n.style)}return!1},u=(e,t)=>{if(!c(e))return!1;const n=document.createElement("div"),r=n.style[e];return n.style[e]=t,n.style[e]!==r};function s(e,t){return!Array.isArray(e)&&t!==void 0?u(e,t):c(e)}let o;const p=()=>{if(!i())return!1;if(o!==void 0)return o;const e=document.createElement("div");return e.style.display="flex",e.style.flexDirection="column",e.style.rowGap="1px",e.appendChild(document.createElement("div")),e.appendChild(document.createElement("div")),document.body.appendChild(e),o=e.scrollHeight===1,document.body.removeChild(e),o};export{i as c,p as d,s as i};
@@ -1 +1 @@
1
- import{o,s as t}from"./vendor-BvqAck49.js";import{d as s}from"./styleChecker-BQyUObAw.js";const r=(()=>{const e=t(!1);return o(()=>{e.value=s()}),e});export{r as u};
1
+ import{o,s as t}from"./vendor-BvqAck49.js";import{d as s}from"./styleChecker-D3ay9a4W.js";const r=(()=>{const e=t(!1);return o(()=>{e.value=s()}),e});export{r as u};
@@ -1 +1 @@
1
- import{u as d}from"./index-C9a-SDrB.js";import{u as c}from"./useShellMode-CgR0wCYM.js";function u({accept:l=""}={}){return new Promise(a=>{if(typeof document>"u"){a({canceled:!0,path:null,content:null});return}const n=document.createElement("input");n.type="file",l&&(n.accept=l),n.style.display="none",document.body.appendChild(n);let o=!1;const i=()=>{n.parentNode&&n.parentNode.removeChild(n)},r=()=>{if(o)return;o=!0;const e=n.files&&n.files[0];if(!e){i(),a({canceled:!0,path:null,content:null});return}const t=new FileReader;t.onload=()=>{i(),a({canceled:!1,path:e.name,size:e.size,content:typeof t.result=="string"?t.result:""})},t.onerror=()=>{i(),a({canceled:!1,path:e.name,size:e.size,content:null,reason:"read_failed"})},t.readAsText(e)};n.addEventListener("change",r),n.click()})}function f(l,{defaultPath:a="download.txt"}={}){if(typeof document>"u")return{canceled:!0,path:null};const n=new Blob([l],{type:"text/plain"}),o=URL.createObjectURL(n),i=document.createElement("a");return i.href=o,i.download=a,document.body.appendChild(i),i.click(),document.body.removeChild(i),URL.revokeObjectURL(o),{canceled:!1,path:a}}function p(l){if(!Array.isArray(l))return"";const a=[];for(const n of l)if(Array.isArray(n.extensions))for(const o of n.extensions)a.push(`.${o.replace(/^\./,"")}`);return a.join(",")}function m(){const l=d();async function a(r={}){if(c().isEmbedded){const e=await l.sendRaw({type:"fs.openDialog",title:r.title,filters:r.filters},6e4);if(e&&e.ok===!1)throw new Error(e.error||"fs.openDialog failed");const t=e?.result??e;return{canceled:!!t.canceled,path:t.path??null,content:t.content??null,size:t.size,reason:t.reason}}return u({accept:p(r.filters)})}async function n(r,e={}){if(typeof r!="string")throw new Error("content must be a string");if(c().isEmbedded){const t=await l.sendRaw({type:"fs.saveDialog",title:e.title,defaultPath:e.defaultPath,filters:e.filters,content:r},6e4);if(t&&t.ok===!1)throw new Error(t.error||"fs.saveDialog failed");const s=t?.result??t;return{canceled:!!s.canceled,path:s.path??null}}return f(r,{defaultPath:e.defaultPath})}async function o(r,e={}){const t=JSON.stringify(r,null,2),s={...e,defaultPath:e.defaultPath||"data.json",filters:e.filters||[{name:"JSON",extensions:["json"]}]};return n(t,s)}async function i(r={}){if(!c().isEmbedded)return{canceled:!0,path:null,initialized:!1,unsupported:!0};const e=await l.sendRaw({type:"fs.openDirectory",title:r.title},6e4);if(e&&e.ok===!1)throw new Error(e.error||"fs.openDirectory failed");const t=e?.result??e;return{canceled:!!t.canceled,path:t.path??null,initialized:!!t.initialized}}return{pickFileText:a,saveText:n,saveJson:o,pickDirectory:i}}export{m as u};
1
+ import{u as d}from"./index-Bc1y36ct.js";import{u as c}from"./useShellMode-CgR0wCYM.js";function u({accept:l=""}={}){return new Promise(a=>{if(typeof document>"u"){a({canceled:!0,path:null,content:null});return}const n=document.createElement("input");n.type="file",l&&(n.accept=l),n.style.display="none",document.body.appendChild(n);let o=!1;const i=()=>{n.parentNode&&n.parentNode.removeChild(n)},r=()=>{if(o)return;o=!0;const e=n.files&&n.files[0];if(!e){i(),a({canceled:!0,path:null,content:null});return}const t=new FileReader;t.onload=()=>{i(),a({canceled:!1,path:e.name,size:e.size,content:typeof t.result=="string"?t.result:""})},t.onerror=()=>{i(),a({canceled:!1,path:e.name,size:e.size,content:null,reason:"read_failed"})},t.readAsText(e)};n.addEventListener("change",r),n.click()})}function f(l,{defaultPath:a="download.txt"}={}){if(typeof document>"u")return{canceled:!0,path:null};const n=new Blob([l],{type:"text/plain"}),o=URL.createObjectURL(n),i=document.createElement("a");return i.href=o,i.download=a,document.body.appendChild(i),i.click(),document.body.removeChild(i),URL.revokeObjectURL(o),{canceled:!1,path:a}}function p(l){if(!Array.isArray(l))return"";const a=[];for(const n of l)if(Array.isArray(n.extensions))for(const o of n.extensions)a.push(`.${o.replace(/^\./,"")}`);return a.join(",")}function m(){const l=d();async function a(r={}){if(c().isEmbedded){const e=await l.sendRaw({type:"fs.openDialog",title:r.title,filters:r.filters},6e4);if(e&&e.ok===!1)throw new Error(e.error||"fs.openDialog failed");const t=e?.result??e;return{canceled:!!t.canceled,path:t.path??null,content:t.content??null,size:t.size,reason:t.reason}}return u({accept:p(r.filters)})}async function n(r,e={}){if(typeof r!="string")throw new Error("content must be a string");if(c().isEmbedded){const t=await l.sendRaw({type:"fs.saveDialog",title:e.title,defaultPath:e.defaultPath,filters:e.filters,content:r},6e4);if(t&&t.ok===!1)throw new Error(t.error||"fs.saveDialog failed");const s=t?.result??t;return{canceled:!!s.canceled,path:s.path??null}}return f(r,{defaultPath:e.defaultPath})}async function o(r,e={}){const t=JSON.stringify(r,null,2),s={...e,defaultPath:e.defaultPath||"data.json",filters:e.filters||[{name:"JSON",extensions:["json"]}]};return n(t,s)}async function i(r={}){if(!c().isEmbedded)return{canceled:!0,path:null,initialized:!1,unsupported:!0};const e=await l.sendRaw({type:"fs.openDirectory",title:r.title},6e4);if(e&&e.ok===!1)throw new Error(e.error||"fs.openDirectory failed");const t=e?.result??e;return{canceled:!!t.canceled,path:t.path??null,initialized:!!t.initialized}}return{pickFileText:a,saveText:n,saveJson:o,pickDirectory:i}}export{m as u};
@@ -1 +1 @@
1
- import{u as f}from"./index-C9a-SDrB.js";function d(n){if(!n)return n;if(n.error)throw new Error(n.error);return n.result!==void 0?n.result:n}function p(n,t,a,e,r){return typeof n.onMessage!="function"||typeof n.sendRaw!="function"?n.sendRaw({type:t,...a},r).then(d):new Promise((u,s)=>{const l=typeof crypto<"u"&&crypto.randomUUID?crypto.randomUUID():`${Date.now()}-${Math.random().toString(36).slice(2)}`,w=`${t}.event`,g=`${t}.end`;let c=!1,y=()=>{};const o=(i,b)=>{if(!c){c=!0,clearTimeout(m);try{y()}catch{}i(b)}},m=setTimeout(()=>{o(s,new Error(`stream timeout (${r}ms): ${t}`))},r),h=n.onMessage(i=>{if(!(c||!i)&&!(i.id!==l&&i.requestId!==l)){if(i.type===w){if(typeof e=="function")try{e(i.event||i)}catch{}return}if(i.type===g){o(u,d(i));return}i.type==="error"&&o(s,new Error(i.message||"stream error"))}});y=typeof h=="function"?h:()=>{},Promise.resolve(n.sendRaw({id:l,type:t,...a},r)).catch(()=>{})})}function D(){const n=f(),t=(a,e={},r=3e4)=>n.sendRaw({type:a,...e},r).then(d);return{async health(){return await t("personal-data-hub.health",{},8e3)},async stats(){return await t("personal-data-hub.stats",{},8e3)},async listAdapters(){return await t("personal-data-hub.list-adapters",{},5e3)},async pickFile(a={}){try{const e=await n.sendRaw({type:"fs.openDialog",title:a.title,filters:a.filters},6e4),r=e&&e.result!==void 0?e.result:e;return r&&r.ok&&typeof r.filePath=="string"?r.filePath:null}catch{return null}},async adapterReadiness(a){return await t("personal-data-hub.adapter-readiness",Number.isInteger(a)?{timeoutMs:a}:{},15e3)},async syncAdapter(a,e={}){return await t("personal-data-hub.sync-adapter",{name:a,options:e},12e4)},async syncAll(a={}){return await t("personal-data-hub.sync-all",{options:a},6e5)},async registerMock({name:a="mock",count:e=20,seed:r=1}={}){return await t("personal-data-hub.register-mock",{name:a,count:e,seed:r})},async unregister(a){return await t("personal-data-hub.unregister",{name:a})},async ask(a,e={}){return await t("personal-data-hub.ask",{question:a,options:e},18e4)},async queryEvents(a={}){return await t("personal-data-hub.query-events",a,1e4)},async recentAudit(a={}){return await t("personal-data-hub.recent-audit",a,1e4)},async searchEvents(a={}){return await t("personal-data-hub.search-events",a,15e3)},async facetCounts(a={}){return await t("personal-data-hub.facet-counts",a,1e4)},async testEmailAuth(a){return await t("personal-data-hub.test-email-auth",{account:a},3e4)},async registerEmail(a,e={}){return await t("personal-data-hub.register-email",{account:a,opts:e},15e3)},async unregisterEmail(a){return await t("personal-data-hub.unregister-email",{email:a},5e3)},async listEmailAccounts(){return await t("personal-data-hub.list-email-accounts",{},5e3)},async eventDetail(a){return await t("personal-data-hub.event-detail",{eventId:a},5e3)},async syncAdapterStream(a,e={},r){return await p(n,"personal-data-hub.sync-adapter-stream",{name:a,options:e},r,6e5)},async syncAllStream(a={},e){return await p(n,"personal-data-hub.sync-all-stream",{options:a},e,9e5)},async registerAlipay(a,e={}){return await t("personal-data-hub.register-alipay",{account:a,opts:e},15e3)},async unregisterAlipay(a){return await t("personal-data-hub.unregister-alipay",{email:a},5e3)},async listAlipayAccounts(){return await t("personal-data-hub.list-alipay-accounts",{},5e3)},async importAlipayBill({zipPath:a,csvPath:e,zipPassword:r}={}){return await t("personal-data-hub.import-alipay-bill",{zipPath:a,csvPath:e,zipPassword:r},3e5)},async reviewQueueList(a=50){return await t("personal-data-hub.review-queue-list",{limit:a},5e3)},async reviewDecision(a,e){return await t("personal-data-hub.review-decision",{reviewId:a,decision:e},5e3)},async manualMerge(a,e){return await t("personal-data-hub.manual-merge",{aId:a,bId:e},5e3)},async manualUnmerge(a){return await t("personal-data-hub.manual-unmerge",{personId:a},5e3)},async resolverDrain(a=50){return await t("personal-data-hub.resolver-drain",{limit:a},18e4)},async resolverStats(){return await t("personal-data-hub.resolver-stats",{},5e3)},async skillsList(){return await t("personal-data-hub.skills-list",{},5e3)},async runSkill(a,e={}){return await t("personal-data-hub.run-skill",{name:a,options:e},12e4)},async openAichatLogin(a,e={}){return await t("personal-data-hub.aichat-open-login",{vendor:a,opts:e},1e4)},async probeAichatCookies(a,e){return await t("personal-data-hub.aichat-probe-cookies",{vendor:a,cookieHeader:e},1e4)},async registerAichatVendor(a,e,r={}){return await t("personal-data-hub.aichat-register-vendor",{vendor:a,cookies:e,opts:r},3e4)},async rotateAichatLogin(a){return await t("personal-data-hub.aichat-rotate-login",{vendor:a},1e4)},async listAichatAccounts(){return await t("personal-data-hub.list-aichat-accounts",{},5e3)},async unregisterAichat(a){return await t("personal-data-hub.unregister-aichat",{vendor:a},5e3)},async aichatHealthCheckOnce(){return await t("personal-data-hub.aichat-health-check-once",{},3e4)},async probeWechatEnv(){return await t("personal-data-hub.wechat-env-probe",{},15e3)},async registerWechat({account:a,dbPath:e,wechatDataPath:r,fridaOpts:u,keyProviderOverride:s}={}){return await t("personal-data-hub.register-wechat",{account:a,dbPath:e,wechatDataPath:r,fridaOpts:u,keyProviderOverride:s},45e3)},async listWechatAccounts(){return await t("personal-data-hub.list-wechat-accounts",{},5e3)},async unregisterWechat(a){return await t("personal-data-hub.unregister-wechat",{uin:a},5e3)},async bilibiliAdbSync(a={}){return await t("personal-data-hub.bilibili-adb-sync",{limits:a.limits,stagingDir:a.stagingDir,displayName:a.displayName},12e4)},async bilibiliAdbDoctor(){return await t("personal-data-hub.bilibili-adb-doctor",{},15e3)},async weiboAdbSync(a={}){return await t("personal-data-hub.weibo-adb-sync",{limits:a.limits,stagingDir:a.stagingDir,displayName:a.displayName},6e4)},async xhsAdbSync(a={}){return await t("personal-data-hub.xhs-adb-sync",{limits:a.limits,stagingDir:a.stagingDir,displayName:a.displayName},6e4)},async toutiaoAdbSync(a={}){return await t("personal-data-hub.toutiao-adb-sync",{limits:a.limits,stagingDir:a.stagingDir,displayName:a.displayName},9e4)},async kuaishouAdbSync(a={}){return await t("personal-data-hub.kuaishou-adb-sync",{limits:a.limits,stagingDir:a.stagingDir,displayName:a.displayName},12e4)},async bridgeDoctor(){return await t("personal-data-hub.bridge-doctor",{},6e4)},async douyinAdbSync(a={}){return await t("personal-data-hub.douyin-adb-sync",{uid:a.uid,limits:a.limits,stagingDir:a.stagingDir,displayName:a.displayName},6e4)}}}export{D as u};
1
+ import{u as f}from"./index-Bc1y36ct.js";function d(n){if(!n)return n;if(n.error)throw new Error(n.error);return n.result!==void 0?n.result:n}function p(n,t,a,e,r){return typeof n.onMessage!="function"||typeof n.sendRaw!="function"?n.sendRaw({type:t,...a},r).then(d):new Promise((u,s)=>{const l=typeof crypto<"u"&&crypto.randomUUID?crypto.randomUUID():`${Date.now()}-${Math.random().toString(36).slice(2)}`,w=`${t}.event`,g=`${t}.end`;let c=!1,y=()=>{};const o=(i,b)=>{if(!c){c=!0,clearTimeout(m);try{y()}catch{}i(b)}},m=setTimeout(()=>{o(s,new Error(`stream timeout (${r}ms): ${t}`))},r),h=n.onMessage(i=>{if(!(c||!i)&&!(i.id!==l&&i.requestId!==l)){if(i.type===w){if(typeof e=="function")try{e(i.event||i)}catch{}return}if(i.type===g){o(u,d(i));return}i.type==="error"&&o(s,new Error(i.message||"stream error"))}});y=typeof h=="function"?h:()=>{},Promise.resolve(n.sendRaw({id:l,type:t,...a},r)).catch(()=>{})})}function D(){const n=f(),t=(a,e={},r=3e4)=>n.sendRaw({type:a,...e},r).then(d);return{async health(){return await t("personal-data-hub.health",{},8e3)},async stats(){return await t("personal-data-hub.stats",{},8e3)},async listAdapters(){return await t("personal-data-hub.list-adapters",{},5e3)},async pickFile(a={}){try{const e=await n.sendRaw({type:"fs.openDialog",title:a.title,filters:a.filters},6e4),r=e&&e.result!==void 0?e.result:e;return r&&r.ok&&typeof r.filePath=="string"?r.filePath:null}catch{return null}},async adapterReadiness(a){return await t("personal-data-hub.adapter-readiness",Number.isInteger(a)?{timeoutMs:a}:{},15e3)},async syncAdapter(a,e={}){return await t("personal-data-hub.sync-adapter",{name:a,options:e},12e4)},async syncAll(a={}){return await t("personal-data-hub.sync-all",{options:a},6e5)},async registerMock({name:a="mock",count:e=20,seed:r=1}={}){return await t("personal-data-hub.register-mock",{name:a,count:e,seed:r})},async unregister(a){return await t("personal-data-hub.unregister",{name:a})},async ask(a,e={}){return await t("personal-data-hub.ask",{question:a,options:e},18e4)},async queryEvents(a={}){return await t("personal-data-hub.query-events",a,1e4)},async recentAudit(a={}){return await t("personal-data-hub.recent-audit",a,1e4)},async searchEvents(a={}){return await t("personal-data-hub.search-events",a,15e3)},async facetCounts(a={}){return await t("personal-data-hub.facet-counts",a,1e4)},async testEmailAuth(a){return await t("personal-data-hub.test-email-auth",{account:a},3e4)},async registerEmail(a,e={}){return await t("personal-data-hub.register-email",{account:a,opts:e},15e3)},async unregisterEmail(a){return await t("personal-data-hub.unregister-email",{email:a},5e3)},async listEmailAccounts(){return await t("personal-data-hub.list-email-accounts",{},5e3)},async eventDetail(a){return await t("personal-data-hub.event-detail",{eventId:a},5e3)},async syncAdapterStream(a,e={},r){return await p(n,"personal-data-hub.sync-adapter-stream",{name:a,options:e},r,6e5)},async syncAllStream(a={},e){return await p(n,"personal-data-hub.sync-all-stream",{options:a},e,9e5)},async registerAlipay(a,e={}){return await t("personal-data-hub.register-alipay",{account:a,opts:e},15e3)},async unregisterAlipay(a){return await t("personal-data-hub.unregister-alipay",{email:a},5e3)},async listAlipayAccounts(){return await t("personal-data-hub.list-alipay-accounts",{},5e3)},async importAlipayBill({zipPath:a,csvPath:e,zipPassword:r}={}){return await t("personal-data-hub.import-alipay-bill",{zipPath:a,csvPath:e,zipPassword:r},3e5)},async reviewQueueList(a=50){return await t("personal-data-hub.review-queue-list",{limit:a},5e3)},async reviewDecision(a,e){return await t("personal-data-hub.review-decision",{reviewId:a,decision:e},5e3)},async manualMerge(a,e){return await t("personal-data-hub.manual-merge",{aId:a,bId:e},5e3)},async manualUnmerge(a){return await t("personal-data-hub.manual-unmerge",{personId:a},5e3)},async resolverDrain(a=50){return await t("personal-data-hub.resolver-drain",{limit:a},18e4)},async resolverStats(){return await t("personal-data-hub.resolver-stats",{},5e3)},async skillsList(){return await t("personal-data-hub.skills-list",{},5e3)},async runSkill(a,e={}){return await t("personal-data-hub.run-skill",{name:a,options:e},12e4)},async openAichatLogin(a,e={}){return await t("personal-data-hub.aichat-open-login",{vendor:a,opts:e},1e4)},async probeAichatCookies(a,e){return await t("personal-data-hub.aichat-probe-cookies",{vendor:a,cookieHeader:e},1e4)},async registerAichatVendor(a,e,r={}){return await t("personal-data-hub.aichat-register-vendor",{vendor:a,cookies:e,opts:r},3e4)},async rotateAichatLogin(a){return await t("personal-data-hub.aichat-rotate-login",{vendor:a},1e4)},async listAichatAccounts(){return await t("personal-data-hub.list-aichat-accounts",{},5e3)},async unregisterAichat(a){return await t("personal-data-hub.unregister-aichat",{vendor:a},5e3)},async aichatHealthCheckOnce(){return await t("personal-data-hub.aichat-health-check-once",{},3e4)},async probeWechatEnv(){return await t("personal-data-hub.wechat-env-probe",{},15e3)},async registerWechat({account:a,dbPath:e,wechatDataPath:r,fridaOpts:u,keyProviderOverride:s}={}){return await t("personal-data-hub.register-wechat",{account:a,dbPath:e,wechatDataPath:r,fridaOpts:u,keyProviderOverride:s},45e3)},async listWechatAccounts(){return await t("personal-data-hub.list-wechat-accounts",{},5e3)},async unregisterWechat(a){return await t("personal-data-hub.unregister-wechat",{uin:a},5e3)},async bilibiliAdbSync(a={}){return await t("personal-data-hub.bilibili-adb-sync",{limits:a.limits,stagingDir:a.stagingDir,displayName:a.displayName},12e4)},async bilibiliAdbDoctor(){return await t("personal-data-hub.bilibili-adb-doctor",{},15e3)},async weiboAdbSync(a={}){return await t("personal-data-hub.weibo-adb-sync",{limits:a.limits,stagingDir:a.stagingDir,displayName:a.displayName},6e4)},async xhsAdbSync(a={}){return await t("personal-data-hub.xhs-adb-sync",{limits:a.limits,stagingDir:a.stagingDir,displayName:a.displayName},6e4)},async toutiaoAdbSync(a={}){return await t("personal-data-hub.toutiao-adb-sync",{limits:a.limits,stagingDir:a.stagingDir,displayName:a.displayName},9e4)},async kuaishouAdbSync(a={}){return await t("personal-data-hub.kuaishou-adb-sync",{limits:a.limits,stagingDir:a.stagingDir,displayName:a.displayName},12e4)},async bridgeDoctor(){return await t("personal-data-hub.bridge-doctor",{},6e4)},async douyinAdbSync(a={}){return await t("personal-data-hub.douyin-adb-sync",{uid:a.uid,limits:a.limits,stagingDir:a.stagingDir,displayName:a.displayName},6e4)}}}export{D as u};
@@ -1 +1 @@
1
- import{M as i,h as a,w as l}from"./index-C9a-SDrB.js";import{a7 as o,k as g,C as d,F as f,A as p}from"./vendor-BvqAck49.js";function c(e){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,u=e;if(Array.isArray(e)&&(u=i(e)[0]),!u)return null;const n=o(u,r,s);return n.props=t?a(a({},n.props),r):n.props,l(typeof n.props.class!="object","class must be string"),n}function v(e){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;return e.map(s=>c(s,r,t))}function N(e,r,t){p(o(e,a({},r)),t)}const m=e=>(e||[]).some(r=>g(r)?!(r.type===d||r.type===f&&!m(r.children)):!0)?e:null;function h(e,r,t,s){var u;const n=(u=e[r])===null||u===void 0?void 0:u.call(e,t);return m(n)?n:s?.()}export{h as a,v as b,c,N as t};
1
+ import{M as i,h as a,w as l}from"./index-Bc1y36ct.js";import{a7 as o,k as g,C as d,F as f,A as p}from"./vendor-BvqAck49.js";function c(e){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,u=e;if(Array.isArray(e)&&(u=i(e)[0]),!u)return null;const n=o(u,r,s);return n.props=t?a(a({},n.props),r):n.props,l(typeof n.props.class!="object","class must be string"),n}function v(e){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;return e.map(s=>c(s,r,t))}function N(e,r,t){p(o(e,a({},r)),t)}const m=e=>(e||[]).some(r=>g(r)?!(r.type===d||r.type===f&&!m(r.children)):!0)?e:null;function h(e,r,t,s){var u;const n=(u=e[r])===null||u===void 0?void 0:u.call(e,t);return m(n)?n:s?.()}export{h as a,v as b,c,N as t};
@@ -1,4 +1,4 @@
1
- import{K as o}from"./index-C9a-SDrB.js";import{i as f}from"./motion-DRGZ-HPK.js";const c=new o("antZoomIn",{"0%":{transform:"scale(0.2)",opacity:0},"100%":{transform:"scale(1)",opacity:1}}),y=new o("antZoomOut",{"0%":{transform:"scale(1)"},"100%":{transform:"scale(0.2)",opacity:0}}),a=new o("antZoomBigIn",{"0%":{transform:"scale(0.8)",opacity:0},"100%":{transform:"scale(1)",opacity:1}}),s=new o("antZoomBigOut",{"0%":{transform:"scale(1)"},"100%":{transform:"scale(0.8)",opacity:0}}),g=new o("antZoomUpIn",{"0%":{transform:"scale(0.8)",transformOrigin:"50% 0%",opacity:0},"100%":{transform:"scale(1)",transformOrigin:"50% 0%"}}),O=new o("antZoomUpOut",{"0%":{transform:"scale(1)",transformOrigin:"50% 0%"},"100%":{transform:"scale(0.8)",transformOrigin:"50% 0%",opacity:0}}),l=new o("antZoomLeftIn",{"0%":{transform:"scale(0.8)",transformOrigin:"0% 50%",opacity:0},"100%":{transform:"scale(1)",transformOrigin:"0% 50%"}}),u=new o("antZoomLeftOut",{"0%":{transform:"scale(1)",transformOrigin:"0% 50%"},"100%":{transform:"scale(0.8)",transformOrigin:"0% 50%",opacity:0}}),p=new o("antZoomRightIn",{"0%":{transform:"scale(0.8)",transformOrigin:"100% 50%",opacity:0},"100%":{transform:"scale(1)",transformOrigin:"100% 50%"}}),z=new o("antZoomRightOut",{"0%":{transform:"scale(1)",transformOrigin:"100% 50%"},"100%":{transform:"scale(0.8)",transformOrigin:"100% 50%",opacity:0}}),K=new o("antZoomDownIn",{"0%":{transform:"scale(0.8)",transformOrigin:"50% 100%",opacity:0},"100%":{transform:"scale(1)",transformOrigin:"50% 100%"}}),w=new o("antZoomDownOut",{"0%":{transform:"scale(1)",transformOrigin:"50% 100%"},"100%":{transform:"scale(0.8)",transformOrigin:"50% 100%",opacity:0}}),I={zoom:{inKeyframes:c,outKeyframes:y},"zoom-big":{inKeyframes:a,outKeyframes:s},"zoom-big-fast":{inKeyframes:a,outKeyframes:s},"zoom-left":{inKeyframes:l,outKeyframes:u},"zoom-right":{inKeyframes:p,outKeyframes:z},"zoom-up":{inKeyframes:g,outKeyframes:O},"zoom-down":{inKeyframes:K,outKeyframes:w}},h=(n,r)=>{const{antCls:m}=n,t=`${m}-${r}`,{inKeyframes:i,outKeyframes:e}=I[r];return[f(t,i,e,r==="zoom-big-fast"?n.motionDurationFast:n.motionDurationMid),{[`
1
+ import{K as o}from"./index-Bc1y36ct.js";import{i as f}from"./motion-DkdJz9l-.js";const c=new o("antZoomIn",{"0%":{transform:"scale(0.2)",opacity:0},"100%":{transform:"scale(1)",opacity:1}}),y=new o("antZoomOut",{"0%":{transform:"scale(1)"},"100%":{transform:"scale(0.2)",opacity:0}}),a=new o("antZoomBigIn",{"0%":{transform:"scale(0.8)",opacity:0},"100%":{transform:"scale(1)",opacity:1}}),s=new o("antZoomBigOut",{"0%":{transform:"scale(1)"},"100%":{transform:"scale(0.8)",opacity:0}}),g=new o("antZoomUpIn",{"0%":{transform:"scale(0.8)",transformOrigin:"50% 0%",opacity:0},"100%":{transform:"scale(1)",transformOrigin:"50% 0%"}}),O=new o("antZoomUpOut",{"0%":{transform:"scale(1)",transformOrigin:"50% 0%"},"100%":{transform:"scale(0.8)",transformOrigin:"50% 0%",opacity:0}}),l=new o("antZoomLeftIn",{"0%":{transform:"scale(0.8)",transformOrigin:"0% 50%",opacity:0},"100%":{transform:"scale(1)",transformOrigin:"0% 50%"}}),u=new o("antZoomLeftOut",{"0%":{transform:"scale(1)",transformOrigin:"0% 50%"},"100%":{transform:"scale(0.8)",transformOrigin:"0% 50%",opacity:0}}),p=new o("antZoomRightIn",{"0%":{transform:"scale(0.8)",transformOrigin:"100% 50%",opacity:0},"100%":{transform:"scale(1)",transformOrigin:"100% 50%"}}),z=new o("antZoomRightOut",{"0%":{transform:"scale(1)",transformOrigin:"100% 50%"},"100%":{transform:"scale(0.8)",transformOrigin:"100% 50%",opacity:0}}),K=new o("antZoomDownIn",{"0%":{transform:"scale(0.8)",transformOrigin:"50% 100%",opacity:0},"100%":{transform:"scale(1)",transformOrigin:"50% 100%"}}),w=new o("antZoomDownOut",{"0%":{transform:"scale(1)",transformOrigin:"50% 100%"},"100%":{transform:"scale(0.8)",transformOrigin:"50% 100%",opacity:0}}),I={zoom:{inKeyframes:c,outKeyframes:y},"zoom-big":{inKeyframes:a,outKeyframes:s},"zoom-big-fast":{inKeyframes:a,outKeyframes:s},"zoom-left":{inKeyframes:l,outKeyframes:u},"zoom-right":{inKeyframes:p,outKeyframes:z},"zoom-up":{inKeyframes:g,outKeyframes:O},"zoom-down":{inKeyframes:K,outKeyframes:w}},h=(n,r)=>{const{antCls:m}=n,t=`${m}-${r}`,{inKeyframes:i,outKeyframes:e}=I[r];return[f(t,i,e,r==="zoom-big-fast"?n.motionDurationFast:n.motionDurationMid),{[`
2
2
  ${t}-enter,
3
3
  ${t}-appear
4
4
  `]:{transform:"scale(0)",opacity:0,animationTimingFunction:n.motionEaseOutCirc,"&-prepare":{transform:"none"}},[`${t}-leave`]:{animationTimingFunction:n.motionEaseInOutCirc}}]};export{h as i,c as z};
@@ -8,7 +8,7 @@
8
8
  // Injected by web-ui-server.js at serve time
9
9
  window.__CC_CONFIG__ = __CC_CONFIG_PLACEHOLDER__;
10
10
  </script>
11
- <script type="module" crossorigin src="./assets/index-C9a-SDrB.js"></script>
11
+ <script type="module" crossorigin src="./assets/index-Bc1y36ct.js"></script>
12
12
  <link rel="modulepreload" crossorigin href="./assets/vendor-BvqAck49.js">
13
13
  <link rel="modulepreload" crossorigin href="./assets/icons-DP3uiYxy.js">
14
14
  <link rel="stylesheet" crossorigin href="./assets/index-Cq93VfoF.css">
@@ -168,18 +168,8 @@ export function registerBrowseCommand(program) {
168
168
  try {
169
169
  const spinner = ora(`Taking screenshot of ${url}...`).start();
170
170
  const result = await takeScreenshot(url, options.output, {
171
- width: numericOption(options.width, {
172
- name: "--width",
173
- integer: true,
174
- min: 1,
175
- fallback: 1280,
176
- }),
177
- height: numericOption(options.height, {
178
- name: "--height",
179
- integer: true,
180
- min: 1,
181
- fallback: 720,
182
- }),
171
+ width: numericOption(options.width, { name: "--width", integer: true, min: 1, fallback: 1280 }),
172
+ height: numericOption(options.height, { name: "--height", integer: true, min: 1, fallback: 720 }),
183
173
  fullPage: !!options.fullPage,
184
174
  });
185
175
  spinner.stop();
@@ -20,6 +20,21 @@ export function registerDoctorCommand(program) {
20
20
 
21
21
  logger.log(chalk.bold("\n ChainlessChain Doctor\n"));
22
22
 
23
+ // Version: running (this process) · installed (on disk) · latest (npm).
24
+ const vc = report.versionCheck;
25
+ if (vc) {
26
+ const icon =
27
+ vc.status === "current" ? chalk.green("✔") : chalk.yellow("⚠");
28
+ logger.log(
29
+ ` ${icon} cc version: running ${vc.running || "?"} · installed ${
30
+ vc.installed || "?"
31
+ } · latest ${vc.latest || "?"}`,
32
+ );
33
+ if (vc.status !== "current") {
34
+ logger.log(chalk.yellow(` ${vc.message}`));
35
+ }
36
+ }
37
+
23
38
  for (const check of report.checks) {
24
39
  const icon = check.ok ? chalk.green("✔") : chalk.red("✖");
25
40
  const detail = check.detail ? chalk.gray(` (${check.detail})`) : "";
@@ -1410,105 +1410,39 @@ async function cmdCollectWechat(options) {
1410
1410
  // p_skey cookie; this derives g_tk and pulls the owner's feeds. The cookie is
1411
1411
  // passed via --cookie or --cookie-file (kept out of argv/history when staged).
1412
1412
  async function cmdCollectQzone(options) {
1413
- const spinner = options.json
1414
- ? null
1415
- : ora("collect-qzone (API + ingest)...").start();
1413
+ const spinner = options.json ? null : ora("collect-qzone (API + ingest)...").start();
1416
1414
  try {
1417
1415
  const { createRequire } = await import("module");
1418
1416
  const require = createRequire(import.meta.url);
1419
1417
  const fs = require("fs");
1420
1418
  const qz = options._qzoneCore
1421
1419
  ? options._qzoneCore
1422
- : await importPdh(
1423
- "@chainlesschain/personal-data-hub/forensics/qzone-collect",
1424
- );
1420
+ : await importPdh("@chainlesschain/personal-data-hub/forensics/qzone-collect");
1425
1421
  let cookie = options.cookie;
1426
1422
  if (!cookie && options.cookieFile && fs.existsSync(options.cookieFile))
1427
1423
  cookie = fs.readFileSync(options.cookieFile, "utf8").trim();
1428
- if (!cookie)
1429
- throw new Error(
1430
- 'need --cookie "<qzone cookie>" or --cookie-file <path> (must contain uin + p_skey)',
1431
- );
1432
- const what = (options.what || "shuoshuo,msgb,album")
1433
- .split(",")
1434
- .map((s) => s.trim())
1435
- .filter(Boolean);
1424
+ if (!cookie) throw new Error("need --cookie \"<qzone cookie>\" or --cookie-file <path> (must contain uin + p_skey)");
1425
+ const what = (options.what || "shuoshuo,msgb,album").split(",").map((s) => s.trim()).filter(Boolean);
1436
1426
  const max = Number.isFinite(+options.max) ? +options.max : 1000;
1437
1427
 
1438
- const result = await qz.collectQzone({
1439
- uin: options.uin,
1440
- cookie,
1441
- what,
1442
- max,
1443
- fetchImpl: options._fetch,
1444
- });
1428
+ const result = await qz.collectQzone({ uin: options.uin, cookie, what, max, fetchImpl: options._fetch });
1445
1429
  if (!result.ok) {
1446
1430
  const report = { ok: false, reason: result.reason };
1447
- if (options.json) {
1448
- jsonAndExit(report);
1449
- return;
1450
- }
1431
+ if (options.json) { jsonAndExit(report); return; }
1451
1432
  if (spinner) spinner.fail(`collect-qzone: ${result.reason}`);
1452
1433
  process.exit(2);
1453
1434
  }
1454
1435
 
1455
1436
  const hub = await (options._getHub || getHub)();
1456
1437
  const vault = hub.vault;
1457
- try {
1458
- vault.putPerson({
1459
- type: "person",
1460
- subtype: "contact",
1461
- id: qz.SELF_ID,
1462
- names: ["我(QQ空间)"],
1463
- source: {
1464
- adapter: "qzone",
1465
- adapterVersion: "0.1.0",
1466
- originalId: qz.SELF_ID,
1467
- capturedAt: Date.now(),
1468
- capturedBy: "api",
1469
- },
1470
- ingestedAt: Date.now(),
1471
- });
1472
- } catch {
1473
- /* dup */
1474
- }
1475
- for (const p of result.persons) {
1476
- try {
1477
- vault.putPerson(p);
1478
- } catch {
1479
- /* dup */
1480
- }
1481
- }
1438
+ try { vault.putPerson({ type: "person", subtype: "contact", id: qz.SELF_ID, names: ["我(QQ空间)"], source: { adapter: "qzone", adapterVersion: "0.1.0", originalId: qz.SELF_ID, capturedAt: Date.now(), capturedBy: "api" }, ingestedAt: Date.now() }); } catch { /* dup */ }
1439
+ for (const p of result.persons) { try { vault.putPerson(p); } catch { /* dup */ } }
1482
1440
  let ingested = 0;
1483
- for (const ev of result.events) {
1484
- try {
1485
- vault.putEvent(ev);
1486
- ingested++;
1487
- } catch {
1488
- /* dup */
1489
- }
1490
- }
1441
+ for (const ev of result.events) { try { vault.putEvent(ev); ingested++; } catch { /* dup */ } }
1491
1442
 
1492
- const report = {
1493
- ok: true,
1494
- uin: result.uin,
1495
- counts: result.counts,
1496
- events: result.events.length,
1497
- persons: result.persons.length,
1498
- ingested,
1499
- };
1500
- if (spinner)
1501
- spinner.succeed(
1502
- `collect-qzone: ${ingested} events → vault (${Object.entries(
1503
- result.counts,
1504
- )
1505
- .map(([k, v]) => k + ":" + v)
1506
- .join(" ")})`,
1507
- );
1508
- if (options.json) {
1509
- jsonAndExit(report);
1510
- return;
1511
- }
1443
+ const report = { ok: true, uin: result.uin, counts: result.counts, events: result.events.length, persons: result.persons.length, ingested };
1444
+ if (spinner) spinner.succeed(`collect-qzone: ${ingested} events → vault (${Object.entries(result.counts).map(([k, v]) => k + ":" + v).join(" ")})`);
1445
+ if (options.json) { jsonAndExit(report); return; }
1512
1446
  logger.log(chalk.green("✓ Qzone collect succeeded"));
1513
1447
  logger.log(` counts: ${JSON.stringify(result.counts)}`);
1514
1448
  logger.log(` ingested: ${ingested}`);
@@ -3331,20 +3265,10 @@ export function registerHubCommand(program) {
3331
3265
  .description(
3332
3266
  "QQ空间 (Qzone): collect 说说/留言板/相册 via the Qzone CGI API. No local DB — needs the qzone-domain p_skey cookie (from the in-app WebView or a browser login to user.qzone.qq.com; base .qq.com skey is rejected). Derives g_tk from p_skey and ingests as post/message/media events.",
3333
3267
  )
3334
- .option(
3335
- "--cookie <cookie>",
3336
- "Qzone cookie string (must contain uin + p_skey)",
3337
- )
3338
- .option(
3339
- "--cookie-file <path>",
3340
- "File holding the cookie (preferred — keeps it out of argv)",
3341
- )
3268
+ .option("--cookie <cookie>", "Qzone cookie string (must contain uin + p_skey)")
3269
+ .option("--cookie-file <path>", "File holding the cookie (preferred — keeps it out of argv)")
3342
3270
  .option("--uin <uin>", "Account uin (else parsed from cookie)")
3343
- .option(
3344
- "--what <list>",
3345
- "Comma list: shuoshuo,msgb,album (default all)",
3346
- "shuoshuo,msgb,album",
3347
- )
3271
+ .option("--what <list>", "Comma list: shuoshuo,msgb,album (default all)", "shuoshuo,msgb,album")
3348
3272
  .option("--max <n>", "Max items per source", "1000")
3349
3273
  .option("--json", "Output JSON")
3350
3274
  .action(cmdCollectQzone);
@@ -7,6 +7,7 @@ import chalk from "chalk";
7
7
  import { numericOption } from "../lib/cli-numeric.js";
8
8
  import { logger } from "../lib/logger.js";
9
9
  import { bootstrap, shutdown } from "../runtime/bootstrap.js";
10
+ import { likePrefix } from "../lib/sql-like.js";
10
11
  import {
11
12
  ensureVersionsTable,
12
13
  saveVersion,
@@ -237,8 +238,10 @@ export function registerNoteCommand(program) {
237
238
  ensureNotesTable(rawDb);
238
239
 
239
240
  const note = rawDb
240
- .prepare("SELECT * FROM notes WHERE id LIKE ? AND deleted_at IS NULL")
241
- .get(`${id}%`);
241
+ .prepare(
242
+ "SELECT * FROM notes WHERE id LIKE ? ESCAPE '\\' AND deleted_at IS NULL",
243
+ )
244
+ .get(likePrefix(id));
242
245
 
243
246
  if (!note) {
244
247
  logger.error(`Note not found: ${id}`);
@@ -335,9 +338,9 @@ export function registerNoteCommand(program) {
335
338
 
336
339
  const note = rawDb
337
340
  .prepare(
338
- "SELECT id, title FROM notes WHERE id LIKE ? AND deleted_at IS NULL",
341
+ "SELECT id, title FROM notes WHERE id LIKE ? ESCAPE '\\' AND deleted_at IS NULL",
339
342
  )
340
- .get(`${id}%`);
343
+ .get(likePrefix(id));
341
344
 
342
345
  if (!note) {
343
346
  logger.error(`Note not found: ${id}`);
@@ -388,9 +391,9 @@ export function registerNoteCommand(program) {
388
391
  // Find the note
389
392
  const noteRow = rawDb
390
393
  .prepare(
391
- "SELECT id FROM notes WHERE id LIKE ? AND deleted_at IS NULL",
394
+ "SELECT id FROM notes WHERE id LIKE ? ESCAPE '\\' AND deleted_at IS NULL",
392
395
  )
393
- .get(`${id}%`);
396
+ .get(likePrefix(id));
394
397
 
395
398
  if (!noteRow) {
396
399
  logger.error(`Note not found: ${id}`);
@@ -443,9 +446,9 @@ export function registerNoteCommand(program) {
443
446
 
444
447
  const noteRow = rawDb
445
448
  .prepare(
446
- "SELECT id FROM notes WHERE id LIKE ? AND deleted_at IS NULL",
449
+ "SELECT id FROM notes WHERE id LIKE ? ESCAPE '\\' AND deleted_at IS NULL",
447
450
  )
448
- .get(`${id}%`);
451
+ .get(likePrefix(id));
449
452
 
450
453
  if (!noteRow) {
451
454
  logger.error(`Note not found: ${id}`);
@@ -507,9 +510,9 @@ export function registerNoteCommand(program) {
507
510
 
508
511
  const noteRow = rawDb
509
512
  .prepare(
510
- "SELECT id, title FROM notes WHERE id LIKE ? AND deleted_at IS NULL",
513
+ "SELECT id, title FROM notes WHERE id LIKE ? ESCAPE '\\' AND deleted_at IS NULL",
511
514
  )
512
- .get(`${id}%`);
515
+ .get(likePrefix(id));
513
516
 
514
517
  if (!noteRow) {
515
518
  logger.error(`Note not found: ${id}`);
@@ -123,9 +123,16 @@ export function createIdentity(db, displayName) {
123
123
  */
124
124
  export function getIdentity(db, didOrPrefix) {
125
125
  ensureDIDTables(db);
126
+ if (didOrPrefix == null || didOrPrefix === "") return undefined;
127
+ // Escape LIKE wildcards (% _ \) in the prefix so a did value containing them
128
+ // can't match-all or match the WRONG identity. getIdentity resolves the key
129
+ // for signMessage / verifyWithDID and the target for deleteIdentity, so fuzzy
130
+ // matching here would be a verification/deletion correctness hole. ESCAPE '\'
131
+ // makes the escaped wildcards literal; legit hex-DID prefixes are unaffected.
132
+ const safe = String(didOrPrefix).replace(/[\\%_]/g, "\\$&");
126
133
  return db
127
- .prepare("SELECT * FROM did_identities WHERE did LIKE ?")
128
- .get(`${didOrPrefix}%`);
134
+ .prepare("SELECT * FROM did_identities WHERE did LIKE ? ESCAPE '\\'")
135
+ .get(`${safe}%`);
129
136
  }
130
137
 
131
138
  /**
@@ -71,6 +71,24 @@ function nowIso() {
71
71
  return new Date().toISOString();
72
72
  }
73
73
 
74
+ /**
75
+ * A goal id must be a single safe path segment. Goal ids are generated as
76
+ * `goal-<ts>-<rand>`, but ids also arrive from CLI args (`cc goal show/rm <id>`,
77
+ * `cc agent --goal <id>`), so an id like `../../etc/x` would otherwise let
78
+ * goalFile() read/delete/write a .json file outside the goals dir. Reject any
79
+ * separator or `..` (matches FileUploadService.isUnsafeSegment).
80
+ */
81
+ function isUnsafeGoalId(id) {
82
+ return (
83
+ id == null ||
84
+ id === "" ||
85
+ typeof id !== "string" ||
86
+ id.includes("/") ||
87
+ id.includes("\\") ||
88
+ id.includes("..")
89
+ );
90
+ }
91
+
74
92
  function goalFile(root, id) {
75
93
  return path.join(root, `${id}.json`);
76
94
  }
@@ -146,6 +164,7 @@ function normalizeKr(kr) {
146
164
 
147
165
  /** Load a goal by id, or null. */
148
166
  export function getGoal(id, opts = {}) {
167
+ if (isUnsafeGoalId(id)) return null; // traversal id → treat as not found
149
168
  const root = opts.root || defaultRoot();
150
169
  const file = goalFile(root, id);
151
170
  if (!fs.existsSync(file)) return null;
@@ -157,6 +176,9 @@ export function getGoal(id, opts = {}) {
157
176
  }
158
177
 
159
178
  function saveGoal(goal, opts = {}) {
179
+ if (isUnsafeGoalId(goal && goal.id)) {
180
+ throw new Error(`非法 goal id: ${String(goal && goal.id).slice(0, 60)}`);
181
+ }
160
182
  const root = opts.root || defaultRoot();
161
183
  ensureDir(root);
162
184
  goal.updatedAt = nowIso();
@@ -331,6 +353,7 @@ export function addDriftFlags(id, flags, opts = {}) {
331
353
 
332
354
  /** Delete a goal. Returns true if it existed. */
333
355
  export function deleteGoal(id, opts = {}) {
356
+ if (isUnsafeGoalId(id)) return false; // traversal id → nothing to delete
334
357
  const root = opts.root || defaultRoot();
335
358
  const file = goalFile(root, id);
336
359
  if (!fs.existsSync(file)) return false;
@@ -3,6 +3,8 @@
3
3
  * Tracks patterns like preferred tools, coding style, response format, etc.
4
4
  */
5
5
 
6
+ import { likePrefix } from "./sql-like.js";
7
+
6
8
  /**
7
9
  * Ensure instincts table exists.
8
10
  */
@@ -193,9 +195,13 @@ export function getStrongInstincts(db, threshold = 0.7) {
193
195
  */
194
196
  export function deleteInstinct(db, id) {
195
197
  ensureInstinctsTable(db);
198
+ // Never delete-all on empty/null, and escape LIKE wildcards so an id of "%"
199
+ // (or one containing % / _) can't wipe the whole table — this is an
200
+ // unbounded DELETE driven by a user-supplied prefix.
201
+ if (id == null || id === "") return false;
196
202
  const result = db
197
- .prepare("DELETE FROM instincts WHERE id LIKE ?")
198
- .run(`${id}%`);
203
+ .prepare("DELETE FROM instincts WHERE id LIKE ? ESCAPE '\\'")
204
+ .run(likePrefix(id));
199
205
  return result.changes > 0;
200
206
  }
201
207
 
@@ -7,6 +7,7 @@
7
7
 
8
8
  import fs from "fs";
9
9
  import path from "path";
10
+ import { likePrefix } from "./sql-like.js";
10
11
 
11
12
  /**
12
13
  * Atomically write a UTF-8 file: a crash mid-write must not truncate MEMORY.md
@@ -194,7 +195,8 @@ export function importMemory(db, entries) {
194
195
  imported += 1;
195
196
  } catch (err) {
196
197
  failed += 1;
197
- if (errors.length < 10) errors.push({ id: e && e.id, error: err.message });
198
+ if (errors.length < 10)
199
+ errors.push({ id: e && e.id, error: err.message });
198
200
  }
199
201
  }
200
202
  return { ok: failed === 0, imported, failed, errors };
@@ -210,9 +212,11 @@ export function deleteMemory(db, id) {
210
212
  let result = db.prepare("DELETE FROM memory_entries WHERE id = ?").run(id);
211
213
 
212
214
  if (result.changes === 0 && id.length >= 4) {
215
+ // Escape LIKE wildcards so an id containing % / _ deletes a literal-prefix
216
+ // match (LIMIT 1) rather than the first row matching the wildcard pattern.
213
217
  result = db
214
- .prepare("DELETE FROM memory_entries WHERE id LIKE ? LIMIT 1")
215
- .run(`${id}%`);
218
+ .prepare("DELETE FROM memory_entries WHERE id LIKE ? ESCAPE '\\' LIMIT 1")
219
+ .run(likePrefix(id));
216
220
  }
217
221
 
218
222
  return result.changes > 0;
@@ -0,0 +1,23 @@
1
+ /**
2
+ * SQLite LIKE-pattern escaping.
3
+ *
4
+ * Escape the LIKE metacharacters (% _ \) so a user-supplied value is matched
5
+ * LITERALLY in a `... LIKE ? ESCAPE '\'` clause. Without escaping, a value
6
+ * containing % or _ acts as a wildcard — and for an id PREFIX match that
7
+ * resolves or DELETEs a record, that resolves/deletes the WRONG record (or, for
8
+ * a no-LIMIT delete, EVERY record: `delete %` → `LIKE '%%'` → all rows).
9
+ *
10
+ * Pair `likePrefix(value)` with `ESCAPE '\'` in the SQL, and keep a non-empty
11
+ * guard at the call site — an empty value yields the bare `%` prefix, which
12
+ * would still match all rows.
13
+ */
14
+
15
+ /** Escape % _ \ in `value` for a literal LIKE match. */
16
+ export function escapeLike(value) {
17
+ return String(value ?? "").replace(/[\\%_]/g, "\\$&");
18
+ }
19
+
20
+ /** `<escaped value>%` — a literal-prefix LIKE pattern (use with ESCAPE '\'). */
21
+ export function likePrefix(value) {
22
+ return escapeLike(value) + "%";
23
+ }