@agentunion/fastaun-browser 0.2.19 → 0.3.0

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 (184) hide show
  1. package/CHANGELOG.md +50 -0
  2. package/_packed_docs/CHANGELOG.md +50 -0
  3. package/_packed_docs/agent.md/SCHEMA.md +173 -0
  4. package/_packed_docs/agent.md/examples/codeagent-claudecode.md +61 -0
  5. package/_packed_docs/agent.md/examples/human-developer.md +60 -0
  6. package/_packed_docs/agent.md/examples/openclaw-lobster.md +52 -0
  7. package/_packed_docs/agent.md/examples/signed-openclaw-lobster.md +43 -0
  8. package/_packed_docs/protocol/00-/346/200/273/350/247/210/344/270/216/345/210/206/345/261/202.md +205 -0
  9. package/_packed_docs/protocol/00A-/350/256/276/350/256/241/345/216/237/345/210/231-/344/270/272Agent/350/200/214/347/224/237.md +197 -0
  10. package/_packed_docs/protocol/01-/350/272/253/344/273/275/344/270/216/345/207/255/350/257/201/345/215/217/350/256/256-auth.md +549 -0
  11. package/_packed_docs/protocol/02-/350/257/201/344/271/246/344/270/216/344/277/241/344/273/273/344/275/223/347/263/273.md +810 -0
  12. package/_packed_docs/protocol/03-Gateway-/350/277/236/346/216/245/346/250/241/345/274/217.md +262 -0
  13. package/_packed_docs/protocol/04-Peer-/345/255/220/345/215/217/350/256/256.md +180 -0
  14. package/_packed_docs/protocol/05-Relay-/345/255/220/345/215/217/350/256/256.md +164 -0
  15. package/_packed_docs/protocol/06-/346/234/215/345/212/241/345/215/217/350/256/256.md +1135 -0
  16. package/_packed_docs/protocol/07-/351/224/231/350/257/257/347/240/201/344/270/216/347/212/266/346/200/201/346/234/272.md +234 -0
  17. package/_packed_docs/protocol/08-AUN-E2EE-Group.md +900 -0
  18. package/_packed_docs/protocol/08-AUN-E2EE.md +413 -0
  19. package/_packed_docs/protocol/09-/345/256/211/345/205/250/350/200/203/350/231/221.md +316 -0
  20. package/_packed_docs/protocol/10-Group-/345/255/220/345/215/217/350/256/256.md +804 -0
  21. package/_packed_docs/protocol/11-Storage-/345/255/220/345/215/217/350/256/256.md +271 -0
  22. package/_packed_docs/protocol/12-Stream-/345/255/220/345/215/217/350/256/256.md +329 -0
  23. package/_packed_docs/protocol/13-Agent/350/241/214/344/270/272/350/247/204/350/214/203.md +141 -0
  24. package/_packed_docs/protocol/14-/344/272/244/344/272/222/346/234/272/345/210/266-/345/223/215/345/272/224/346/250/241/345/274/217/344/270/216/350/207/252/344/270/273/346/250/241/345/274/217.md +170 -0
  25. package/_packed_docs/protocol/15-/347/246/273/347/272/277/346/216/250/351/200/201/351/200/232/347/237/245/345/215/217/350/256/256.md +419 -0
  26. package/_packed_docs/protocol/README.md +71 -0
  27. package/_packed_docs/protocol/agent.md/SCHEMA.md +118 -0
  28. package/_packed_docs/protocol/agent.md/examples/codeagent-claudecode.md +61 -0
  29. package/_packed_docs/protocol/agent.md/examples/human-developer.md +60 -0
  30. package/_packed_docs/protocol/agent.md/examples/openclaw-lobster.md +52 -0
  31. package/_packed_docs/protocol/aun-docs-guide.md +49 -0
  32. package/_packed_docs/protocol/index.md +124 -0
  33. package/_packed_docs/protocol//350/215/211/346/241/210-agent.md/347/255/276/345/220/215/345/215/217/350/256/256.md +205 -0
  34. package/_packed_docs/protocol//350/215/211/346/241/210-/346/213/222/347/273/235/344/277/241/345/217/267/345/215/217/350/256/256.md +249 -0
  35. package/_packed_docs/protocol//351/231/204/345/275/225A-/346/234/257/350/257/255/350/241/250.md +337 -0
  36. package/_packed_docs/protocol//351/231/204/345/275/225B-/346/211/251/345/261/225/346/200/247/346/214/207/345/215/227.md +80 -0
  37. package/_packed_docs/protocol//351/231/204/345/275/225C-/347/247/201/351/222/245/347/256/241/347/220/206/344/270/216/350/272/253/344/273/275/346/201/242/345/244/215.md +704 -0
  38. package/_packed_docs/protocol//351/231/204/345/275/225D-Root_CA_/346/262/273/347/220/206/346/234/272/345/210/266.md +620 -0
  39. package/_packed_docs/protocol//351/231/204/345/275/225E-Root_CA_/345/207/206/345/205/245/346/265/201/347/250/213.md +605 -0
  40. package/_packed_docs/protocol//351/231/204/345/275/225F-Issuer_CA_/347/224/263/350/257/267/346/265/201/347/250/213.md +548 -0
  41. package/_packed_docs/protocol//351/231/204/345/275/225G-AID_/345/255/244/345/204/277/351/242/204/351/230/262/344/270/216/346/225/221/346/217/264/346/234/272/345/210/266.md +513 -0
  42. package/_packed_docs/protocol//351/231/204/345/275/225H-Identity/346/234/215/345/212/241/345/256/236/347/216/260/346/214/207/345/215/227.md +619 -0
  43. package/_packed_docs/protocol//351/231/204/345/275/225I-/350/267/250/345/237/237/346/266/210/346/201/257/350/267/257/347/224/261/345/256/236/347/216/260/346/214/207/345/215/227.md +492 -0
  44. package/_packed_docs/protocol//351/231/204/345/275/225J-/345/256/242/346/210/267/347/253/257/346/216/245/345/205/245/347/244/272/344/276/213.md +402 -0
  45. package/_packed_docs/protocol//351/231/204/345/275/225K-Agent_Web/345/217/221/347/216/260/345/215/217/350/256/256.md +130 -0
  46. package/_packed_docs/protocol//351/231/204/345/275/225L-E2EE/345/256/236/347/216/260/346/214/207/345/215/227.md +267 -0
  47. package/_packed_docs/protocol//351/231/204/345/275/225M-JWT/350/256/244/350/257/201/345/256/236/347/216/260/346/214/207/345/215/227.md +367 -0
  48. package/_packed_docs/python-sdk-v2-only-changelog.md +189 -0
  49. package/_packed_docs/sdk/01-/345/277/253/351/200/237/345/274/200/345/247/213.md +223 -0
  50. package/_packed_docs/sdk/02-WebSocket/345/215/217/350/256/256.md +354 -0
  51. package/_packed_docs/sdk/03-/346/240/270/345/277/203/346/246/202/345/277/265.md +172 -0
  52. package/_packed_docs/sdk/04-/350/277/236/346/216/245/344/270/216/350/256/244/350/257/201.md +396 -0
  53. package/_packed_docs/sdk/05-E2EE/345/212/240/345/257/206/351/200/232/344/277/241.md +611 -0
  54. package/_packed_docs/sdk/06-API/346/211/213/345/206/214.md +1203 -0
  55. package/_packed_docs/sdk/07-/351/224/231/350/257/257/345/244/204/347/220/206.md +150 -0
  56. package/_packed_docs/sdk/08-/346/234/200/344/275/263/345/256/236/350/267/265.md +89 -0
  57. package/_packed_docs/sdk/09-custody-api-manual.md +445 -0
  58. package/_packed_docs/sdk/09-group-rpc-manual.md +1895 -0
  59. package/_packed_docs/sdk/09-message-rpc-manual.md +597 -0
  60. package/_packed_docs/sdk/09-meta-rpc-manual.md +142 -0
  61. package/_packed_docs/sdk/09-payload-reference.md +702 -0
  62. package/_packed_docs/sdk/09-storage-rpc-manual.md +408 -0
  63. package/_packed_docs/sdk/09-stream-rpc-manual.md +275 -0
  64. package/_packed_docs/sdk/AUN_DOCS_GUIDE.md +72 -0
  65. package/_packed_docs/sdk/INDEX.md +131 -0
  66. package/_packed_docs/sdk/README.md +307 -0
  67. package/dist/auth.d.ts +2 -1
  68. package/dist/auth.d.ts.map +1 -1
  69. package/dist/auth.js +33 -14
  70. package/dist/auth.js.map +1 -1
  71. package/dist/bundle.js +14300 -0
  72. package/dist/client.d.ts +200 -178
  73. package/dist/client.d.ts.map +1 -1
  74. package/dist/client.js +3096 -4019
  75. package/dist/client.js.map +1 -1
  76. package/dist/config.d.ts +0 -4
  77. package/dist/config.d.ts.map +1 -1
  78. package/dist/config.js +0 -4
  79. package/dist/config.js.map +1 -1
  80. package/dist/crypto.d.ts +8 -1
  81. package/dist/crypto.d.ts.map +1 -1
  82. package/dist/crypto.js +114 -1
  83. package/dist/crypto.js.map +1 -1
  84. package/dist/e2ee.d.ts +5 -210
  85. package/dist/e2ee.d.ts.map +1 -1
  86. package/dist/e2ee.js +4 -1379
  87. package/dist/e2ee.js.map +1 -1
  88. package/dist/index.d.ts +7 -3
  89. package/dist/index.d.ts.map +1 -1
  90. package/dist/index.js +5 -4
  91. package/dist/index.js.map +1 -1
  92. package/dist/namespaces/auth.d.ts +1 -0
  93. package/dist/namespaces/auth.d.ts.map +1 -1
  94. package/dist/namespaces/auth.js +23 -8
  95. package/dist/namespaces/auth.js.map +1 -1
  96. package/dist/protected-headers.d.ts +14 -0
  97. package/dist/protected-headers.d.ts.map +1 -0
  98. package/dist/protected-headers.js +47 -0
  99. package/dist/protected-headers.js.map +1 -0
  100. package/dist/seq-tracker.d.ts +7 -2
  101. package/dist/seq-tracker.d.ts.map +1 -1
  102. package/dist/seq-tracker.js +31 -10
  103. package/dist/seq-tracker.js.map +1 -1
  104. package/dist/transport.d.ts +9 -1
  105. package/dist/transport.d.ts.map +1 -1
  106. package/dist/transport.js +24 -0
  107. package/dist/transport.js.map +1 -1
  108. package/dist/v2/crypto/aead.d.ts +26 -0
  109. package/dist/v2/crypto/aead.d.ts.map +1 -0
  110. package/dist/v2/crypto/aead.js +63 -0
  111. package/dist/v2/crypto/aead.js.map +1 -0
  112. package/dist/v2/crypto/canonical.d.ts +21 -0
  113. package/dist/v2/crypto/canonical.d.ts.map +1 -0
  114. package/dist/v2/crypto/canonical.js +111 -0
  115. package/dist/v2/crypto/canonical.js.map +1 -0
  116. package/dist/v2/crypto/dh-path.d.ts +21 -0
  117. package/dist/v2/crypto/dh-path.d.ts.map +1 -0
  118. package/dist/v2/crypto/dh-path.js +50 -0
  119. package/dist/v2/crypto/dh-path.js.map +1 -0
  120. package/dist/v2/crypto/ecdh.d.ts +19 -0
  121. package/dist/v2/crypto/ecdh.d.ts.map +1 -0
  122. package/dist/v2/crypto/ecdh.js +101 -0
  123. package/dist/v2/crypto/ecdh.js.map +1 -0
  124. package/dist/v2/crypto/ecdsa.d.ts +16 -0
  125. package/dist/v2/crypto/ecdsa.d.ts.map +1 -0
  126. package/dist/v2/crypto/ecdsa.js +52 -0
  127. package/dist/v2/crypto/ecdsa.js.map +1 -0
  128. package/dist/v2/crypto/hkdf.d.ts +21 -0
  129. package/dist/v2/crypto/hkdf.d.ts.map +1 -0
  130. package/dist/v2/crypto/hkdf.js +32 -0
  131. package/dist/v2/crypto/hkdf.js.map +1 -0
  132. package/dist/v2/crypto/index.d.ts +9 -0
  133. package/dist/v2/crypto/index.d.ts.map +1 -0
  134. package/dist/v2/crypto/index.js +8 -0
  135. package/dist/v2/crypto/index.js.map +1 -0
  136. package/dist/v2/crypto/recipients.d.ts +43 -0
  137. package/dist/v2/crypto/recipients.d.ts.map +1 -0
  138. package/dist/v2/crypto/recipients.js +188 -0
  139. package/dist/v2/crypto/recipients.js.map +1 -0
  140. package/dist/v2/e2ee/decrypt.d.ts +13 -0
  141. package/dist/v2/e2ee/decrypt.d.ts.map +1 -0
  142. package/dist/v2/e2ee/decrypt.js +176 -0
  143. package/dist/v2/e2ee/decrypt.js.map +1 -0
  144. package/dist/v2/e2ee/encrypt-group.d.ts +14 -0
  145. package/dist/v2/e2ee/encrypt-group.d.ts.map +1 -0
  146. package/dist/v2/e2ee/encrypt-group.js +196 -0
  147. package/dist/v2/e2ee/encrypt-group.js.map +1 -0
  148. package/dist/v2/e2ee/encrypt-p2p.d.ts +15 -0
  149. package/dist/v2/e2ee/encrypt-p2p.d.ts.map +1 -0
  150. package/dist/v2/e2ee/encrypt-p2p.js +240 -0
  151. package/dist/v2/e2ee/encrypt-p2p.js.map +1 -0
  152. package/dist/v2/e2ee/index.d.ts +9 -0
  153. package/dist/v2/e2ee/index.d.ts.map +1 -0
  154. package/dist/v2/e2ee/index.js +9 -0
  155. package/dist/v2/e2ee/index.js.map +1 -0
  156. package/dist/v2/e2ee/metadata-auth.d.ts +9 -0
  157. package/dist/v2/e2ee/metadata-auth.d.ts.map +1 -0
  158. package/dist/v2/e2ee/metadata-auth.js +60 -0
  159. package/dist/v2/e2ee/metadata-auth.js.map +1 -0
  160. package/dist/v2/e2ee/types.d.ts +57 -0
  161. package/dist/v2/e2ee/types.d.ts.map +1 -0
  162. package/dist/v2/e2ee/types.js +7 -0
  163. package/dist/v2/e2ee/types.js.map +1 -0
  164. package/dist/v2/session/index.d.ts +4 -0
  165. package/dist/v2/session/index.d.ts.map +1 -0
  166. package/dist/v2/session/index.js +3 -0
  167. package/dist/v2/session/index.js.map +1 -0
  168. package/dist/v2/session/keystore.d.ts +48 -0
  169. package/dist/v2/session/keystore.d.ts.map +1 -0
  170. package/dist/v2/session/keystore.js +184 -0
  171. package/dist/v2/session/keystore.js.map +1 -0
  172. package/dist/v2/session/session.d.ts +98 -0
  173. package/dist/v2/session/session.d.ts.map +1 -0
  174. package/dist/v2/session/session.js +270 -0
  175. package/dist/v2/session/session.js.map +1 -0
  176. package/dist/v2/state/commitment.d.ts +10 -0
  177. package/dist/v2/state/commitment.d.ts.map +1 -0
  178. package/dist/v2/state/commitment.js +86 -0
  179. package/dist/v2/state/commitment.js.map +1 -0
  180. package/dist/v2/state/index.d.ts +2 -0
  181. package/dist/v2/state/index.d.ts.map +1 -0
  182. package/dist/v2/state/index.js +2 -0
  183. package/dist/v2/state/index.js.map +1 -0
  184. package/package.json +43 -37
package/dist/client.d.ts CHANGED
@@ -4,8 +4,6 @@ import { GatewayDiscovery } from './discovery.js';
4
4
  import { AuthNamespace } from './namespaces/auth.js';
5
5
  import { CustodyNamespace } from './namespaces/custody.js';
6
6
  import { MetaNamespace } from './namespaces/meta.js';
7
- import { E2EEManager } from './e2ee.js';
8
- import { GroupE2EEManager } from './e2ee-group.js';
9
7
  import { type ConnectionState, type MetadataRecord, type RpcParams, type RpcResult } from './types.js';
10
8
  /**
11
9
  * AUN Core SDK 客户端 — 浏览器版本。
@@ -16,7 +14,7 @@ import { type ConnectionState, type MetadataRecord, type RpcParams, type RpcResu
16
14
  * - RPC 调用(JSON-RPC 2.0)
17
15
  * - E2EE 自动编排(加密/解密/密钥管理/group 生命周期)
18
16
  * - 事件分发与管道
19
- * - 后台任务(心跳、token 刷新、prekey 轮换、epoch 清理/轮换)
17
+ * - 后台任务(心跳、token 刷新、V2 缓存清理)
20
18
  *
21
19
  */
22
20
  export declare class AUNClient {
@@ -30,6 +28,7 @@ export declare class AUNClient {
30
28
  private _gatewayUrl;
31
29
  private _deviceId;
32
30
  private _slotId;
31
+ private _connectedAt;
33
32
  private _connectDeliveryMode;
34
33
  private _defaultConnectDeliveryMode;
35
34
  private _closing;
@@ -40,8 +39,6 @@ export declare class AUNClient {
40
39
  private _keystore;
41
40
  private _auth;
42
41
  private _transport;
43
- private _e2ee;
44
- private _groupE2ee;
45
42
  /** 认证命名空间 */
46
43
  readonly auth: AuthNamespace;
47
44
  /** AID 托管命名空间 */
@@ -49,17 +46,40 @@ export declare class AUNClient {
49
46
  /** 元数据命名空间(心跳、状态、信任根管理) */
50
47
  readonly meta: MetaNamespace;
51
48
  private _certCache;
52
- private _prekeyReplenishInflight;
53
- private _prekeyReplenished;
54
- private _activePrekeyId;
55
- private _peerPrekeysCache;
56
49
  private _heartbeatTimer;
50
+ private _heartbeatCount;
57
51
  private _tokenRefreshTimer;
58
52
  private _tokenRefreshFailures;
59
- private _prekeyRefreshTimer;
60
- private _groupEpochCleanupTimer;
61
- private _groupEpochRotateTimer;
62
53
  private _cacheCleanupTimer;
54
+ private _v2Session?;
55
+ private _v2KeyStore?;
56
+ private _v2BootstrapCache;
57
+ private static readonly V2_BOOTSTRAP_TTL_MS;
58
+ private static readonly V2_RETRYABLE_CODES;
59
+ /** V2 state 签名验证缓存:cacheKey(hex) → expiry_unix_ms */
60
+ private _v2SigCache;
61
+ private static readonly _V2_SIG_CACHE_TTL;
62
+ private static readonly _V2_SIG_CACHE_MAX;
63
+ /** V2 state chain 本地记录:group_id → [state_version, chain_hash] */
64
+ private _v2StateChains;
65
+ /** 群安全等级追踪(变化时发布 group.v2.security_level 事件) */
66
+ private _v2GroupSecurityLevels;
67
+ /** 同一 group 的 V2 自动提案串行化,避免并发重复提交同一 state_version。 */
68
+ private _v2AutoProposeInflight;
69
+ /** 同一 group 在运行中的自动提案期间收到的新触发,结束后至多再补跑一次。 */
70
+ private _v2AutoProposePending;
71
+ /** 最近一次已成功确认的 membership_snapshot;相同快照直接跳过。 */
72
+ private _v2AutoProposeLastSnapshot;
73
+ private _v2LazyProposeTriggered;
74
+ /**
75
+ * 本地 agent.md 内容对应的 etag(quoted sha256 hex,与服务端 _agent_md_etag 一致)。
76
+ *
77
+ * 由 publishAgentMd() / fetchAgentMd(自身 aid) 写入;用于跟服务端 RPC 注入的 _meta.agent_md_etag
78
+ * 比对,触发"本地未发布到服务端"或"服务端版本更新"的 UI 提示。
79
+ */
80
+ private _localAgentMdEtag;
81
+ /** gateway 在 RPC envelope._meta.agent_md_etag 注入的服务端 etag;纯观察,无下游依赖。 */
82
+ private _remoteAgentMdEtag;
63
83
  /** 消息序列号跟踪器(群消息 + P2P 空洞检测) */
64
84
  private _seqTracker;
65
85
  private _seqTrackerContext;
@@ -69,17 +89,8 @@ export declare class AUNClient {
69
89
  private _pushedSeqs;
70
90
  /** 已解密但因 seq 空洞暂缓发布的应用层消息(按 namespace -> seq) */
71
91
  private _pendingOrderedMsgs;
72
- private _pendingDecryptMsgs;
73
- private _groupEpochRotationInflight;
74
- private _groupEpochRecoveryInflight;
75
- private _groupMembershipRotationDone;
76
- /** 群密钥 backfill 去重:已完成/进行中的 key 集合,防止重复分发 */
77
- private _groupMemberKeyBackfillDone;
78
- private _groupEpochRotationRetryTimers;
79
92
  /** Lazy group sync:首次发送群消息前自动拉取历史 */
80
93
  private _groupSynced;
81
- /** Lazy P2P sync:首次发送 P2P 消息前自动拉取历史 */
82
- private _p2pSynced;
83
94
  /** gap fill 来源标记:true 表示当前正在补洞(pull 触发),false 表示非补洞 */
84
95
  private _gapFillActive;
85
96
  private _reconnectActive;
@@ -92,8 +103,6 @@ export declare class AUNClient {
92
103
  private _lastDisconnectInfo;
93
104
  private _logger;
94
105
  private _clientLog;
95
- private _logE2;
96
- private _logEG;
97
106
  private _logAuth;
98
107
  private _logTransport;
99
108
  private _logKeystore;
@@ -101,6 +110,25 @@ export declare class AUNClient {
101
110
  private _logEvents;
102
111
  constructor(config?: Partial<AUNConfig> & RpcParams, _debug?: boolean);
103
112
  get aid(): string | null;
113
+ /**
114
+ * 浏览器版本 publishAgentMd。接收 agent.md 文本(应用层用 `<input type=file>` 等读出文本传入),
115
+ * 内部签名 → 上传 → 更新 _localAgentMdEtag(quoted sha256,与服务端一致)。
116
+ *
117
+ * @throws ValidationError content 为空
118
+ */
119
+ publishAgentMd(content: string): Promise<Record<string, unknown>>;
120
+ /**
121
+ * 浏览器版本 fetchAgentMd。aid 缺省时取自身;不接受 savePath(浏览器无文件系统);
122
+ * 若 aid 是自己则同步刷新 _localAgentMdEtag 与 in_sync。
123
+ */
124
+ fetchAgentMd(aid?: string | null): Promise<{
125
+ aid: string;
126
+ content: string;
127
+ signature: Record<string, unknown>;
128
+ in_sync: boolean | null;
129
+ }>;
130
+ /** transport 的 meta observer:吸收 gateway 注入的 _meta 字段。失败不影响业务。 */
131
+ private _observeRpcMeta;
104
132
  get state(): ConnectionState;
105
133
  get gatewayUrl(): string | null;
106
134
  set gatewayUrl(url: string | null);
@@ -109,8 +137,6 @@ export declare class AUNClient {
109
137
  get gatewayHealth(): boolean | null;
110
138
  /** 主动检查 gateway 可用性(GET /health) */
111
139
  checkGatewayHealth(gatewayUrl: string, timeout?: number): Promise<boolean>;
112
- get e2ee(): E2EEManager;
113
- get groupE2ee(): GroupE2EEManager;
114
140
  /**
115
141
  * 连接到 Gateway。
116
142
  *
@@ -147,17 +173,19 @@ export declare class AUNClient {
147
173
  on(event: string, handler: EventHandler): Subscription;
148
174
  /** 取消订阅事件 */
149
175
  off(event: string, handler: EventHandler): void;
150
- /** 处理 transport 层推送的原始消息:解密后 re-publish 给用户 */
176
+ /** 处理 transport 层推送的原始消息:re-publish 给用户(V2 加密消息走 _raw.peer.v2.message_received) */
151
177
  private _onRawMessageReceived;
152
- /** 实际处理推送消息的异步任务 */
178
+ /** 实际处理推送消息的异步任务(V2-only:明文消息直接透传,V2 加密消息走 _onV2PushNotification) */
153
179
  private _processAndPublishMessage;
154
- /** 处理群组消息推送:自动解密后 re-publish */
180
+ /** 处理群组消息推送:re-publish(V2 加密消息走 V2 push 路径) */
155
181
  private _onRawGroupMessageCreated;
182
+ /** 处理 V2 群消息通知:主动 pull V2 envelope,由 pullGroupV2 解密并发布。 */
183
+ private _onRawGroupV2MessageCreated;
156
184
  /**
157
- * 处理群组推送消息的异步任务。
185
+ * 处理群组推送消息的异步任务(V2-only:明文消息直接透传)。
158
186
  *
159
- * 带 payload 的事件(消息推送):解密后 re-publish。
160
- * 不带 payload 的事件(通知):自动 pull 最新消息,逐条解密后 re-publish。
187
+ * 带 payload 的事件(消息推送):直接 re-publish。
188
+ * 不带 payload 的事件(通知):自动 pull 最新消息。
161
189
  */
162
190
  private _processAndPublishGroupMessage;
163
191
  /** 收到不带 payload 的 group.message_created 通知后,自动 pull 最新消息 */
@@ -168,7 +196,7 @@ export declare class AUNClient {
168
196
  private _fillGroupEventGap;
169
197
  /** 后台补齐 P2P 消息空洞 */
170
198
  private _fillP2pGap;
171
- /** 清理 pushedSeqs <= contiguousSeq 的条目,防止无限增长 */
199
+ /** 只按硬上限裁剪 published guard,不能按 contiguousSeq 清理。 */
172
200
  private _prunePushedSeqs;
173
201
  private _markPublishedSeq;
174
202
  private _enqueueOrderedMessage;
@@ -176,18 +204,14 @@ export declare class AUNClient {
176
204
  private _attachCurrentInstanceContext;
177
205
  private _normalizePublishedMessagePayload;
178
206
  private _publishAppEvent;
207
+ private _echoTimestamp;
208
+ private _isEchoPayload;
209
+ private _maybeAppendEchoTraceSend;
210
+ private _maybeAppendEchoTraceReceive;
179
211
  private _messageTargetsCurrentInstance;
180
212
  private _drainOrderedMessages;
181
213
  private _publishOrderedMessage;
182
- /** 主动向指定成员请求群组密钥(用于重连时无 epoch key 的群)(与 Python 对齐) */
183
- private _requestGroupKeyFrom;
184
- /**
185
- * 处理群组变更事件:透传给用户,并在成员离开/被踢时自动触发 epoch 轮换。
186
- * 按协议,轮换由剩余在线 admin/owner 负责。
187
- */
188
- private _membershipRotationExpectedEpoch;
189
- private _membershipRotationTriggerId;
190
- private _membershipRotationChanged;
214
+ private _publishPulledMessage;
191
215
  private _extractGroupIdFromResult;
192
216
  private _onRawGroupChanged;
193
217
  /**
@@ -206,19 +230,6 @@ export declare class AUNClient {
206
230
  private _cleanupDissolvedGroup;
207
231
  private _verifyEventSignature;
208
232
  private _protectedHeadersFromParams;
209
- /** 自动加密并发送 P2P 消息 */
210
- private _sendEncrypted;
211
- /**
212
- * 首次发送 P2P 消息前懒拉取历史消息,同步 seqTracker 避免空洞。
213
- * 只在本连接周期内执行一次。
214
- */
215
- private _lazySyncP2p;
216
- private _sendEncryptedSingle;
217
- private _buildRecipientDeviceCopies;
218
- private _resolveSelfCopyPeerCert;
219
- private _buildSelfSyncCopies;
220
- private _encryptCopyPayload;
221
- private _ensureEncryptResult;
222
233
  private _certFingerprint;
223
234
  /**
224
235
  * 从 X.509 DER 证书中提取 SubjectPublicKeyInfo 并计算其 SHA-256 指纹。
@@ -226,89 +237,13 @@ export declare class AUNClient {
226
237
  * 用于 H7 指纹校验(DER 证书指纹 OR SPKI 指纹任一匹配)。
227
238
  */
228
239
  private _spkiFingerprint;
229
- /** 自动加密并发送群组消息 */
230
- private _sendGroupEncrypted;
231
- private _putGroupThoughtEncrypted;
232
- private _putMessageThoughtEncrypted;
233
- private _callGroupEncryptedRpc;
234
- private _prepareGroupEncryptedRpcParams;
235
- /**
236
- * 首次发送群消息前懒拉取历史消息,同步 seqTracker 避免空洞。
237
- * 只在本连接周期内执行一次(per groupId)。
238
- */
239
- private _lazySyncGroup;
240
- private _isGroupEpochTooOldError;
241
- private _isGroupEpochRotationPendingError;
242
- private _isGroupEpochChangedDuringSendError;
243
- private _isRecoverableGroupEpochError;
244
- private _groupKeyRecoveryCandidates;
245
- private _requestGroupKeyFromCandidates;
246
- private _recoverInitialGroupEpochIfNeeded;
247
- private _ensureGroupEpochReady;
248
- private _waitForGroupMembershipEpochFloor;
249
- private _committedGroupEpochState;
250
- private _groupSecretMatchesCommittedRotation;
251
- private _ensureCommittedGroupSecretForSend;
252
- private _committedRotationMembershipGap;
253
- /** 解密单条 P2P 消息 */
254
- private _decryptSingleMessage;
255
- /** 批量解密 P2P 消息(用于 message.pull) */
256
- private _decryptMessages;
257
- /** 解密单条群组消息。opts.skipReplay 用于 pull 场景跳过防重放。 */
258
- private _enqueuePendingDecrypt;
259
- private _retryPendingDecryptMsgs;
260
- private _recoveryTimeoutScheduled;
261
- private _scheduleRecoveryTimeout;
262
- private _scheduleRetryPendingDecryptMsgs;
263
- private _recoverGroupEpochKey;
264
- private static _extractGroupJoinMode;
265
- private static _joinModeAllowsMemberEpochRotation;
266
- private _groupAllowsMemberEpochRotation;
267
- /** 尝试从服务端拉取 ECIES 加密的 epoch key 并解密存入 keystore */
268
- private _tryRecoverEpochKeyFromServer;
269
- /** 为每个成员用其 AID 证书公钥 ECIES 加密 group_secret */
270
- private _buildEpochEncryptedKeys;
271
- /** 从 PEM 证书中提取 EC 公钥的未压缩字节(65B) */
272
- private _extractEcPubkeyFromCert;
273
- private _doRecoverGroupEpochKey;
274
- /** 只向在线成员发送密钥恢复请求 */
275
- private _requestGroupKeyFromOnline;
276
- private _groupEpochSecretReadyForRecovery;
277
- private _pendingGroupSecretStillCurrent;
278
- private _decryptGroupMessage;
279
- private _attachGroupDispatchModeToPayload;
280
- /** 批量解密群组消息(用于 group.pull)。跳过防重放检查。 */
281
- private _decryptGroupMessages;
282
240
  private _decryptGroupThoughts;
283
241
  private _decryptMessageThoughts;
284
- /**
285
- * 尝试处理 P2P 传输的群组密钥消息。
286
- *
287
- * 返回值:
288
- * - true = 已处理 / 已被抑制(外层不应再 publish 到业务事件)
289
- * - false = 非密钥消息,外层应继续走普通 P2P 消息链路
290
- *
291
- * 外层 payload.type === 'e2ee.encrypted' 需要先解密才能判定是否为控制面。
292
- * 解密失败交给普通链路处理;普通链路只发布安全的 undecryptable 事件。
293
- */
294
- private _tryHandleGroupKeyMessage;
295
242
  /**
296
243
  * 获取对方证书(带缓存 + 完整 PKI 验证:链 + CRL + OCSP + AID 绑定)。
297
244
  * 跨域时自动将请求路由到 peer 所在域的 Gateway。
298
245
  */
299
246
  private _fetchPeerCert;
300
- /** 获取对方所有设备的 prekey(带缓存)。 */
301
- private _fetchPeerPrekeys;
302
- /** 清除对端 prekey 的双层缓存(_peerPrekeysCache + e2ee 内部缓存) */
303
- private _invalidatePeerPrekeyCache;
304
- /** 清除对端证书缓存(精确匹配 aid 或 aid# 前缀的所有条目) */
305
- private _clearPeerCertCache;
306
- /** 清除对端所有缓存后重新拉取 prekey(用于指纹不匹配时的强制刷新) */
307
- private _refreshPeerPrekeys;
308
- /** 获取对方 prekey(兼容接口,优先返回第一条 device prekey)。 */
309
- private _fetchPeerPrekey;
310
- /** 生成 prekey 并上传到服务端 */
311
- private _uploadPrekey;
312
247
  /** 确保发送方证书在本地可用且未过期 */
313
248
  private _ensureSenderCertCached;
314
249
  /**
@@ -321,46 +256,6 @@ export declare class AUNClient {
321
256
  * 使用 SubtleCrypto 异步签名。
322
257
  */
323
258
  private _signClientOperation;
324
- private _attachRotationId;
325
- private _getGroupMemberAids;
326
- private _distributeGroupEpochKey;
327
- private _heartbeatGroupRotation;
328
- private _ackGroupRotationKey;
329
- private _verifyActiveGroupRotationDistribution;
330
- private _discardGroupDistributionIfStale;
331
- private _verifyGroupKeyResponseEpoch;
332
- private _abortGroupRotation;
333
- private _rotationExpectedMembersStale;
334
- private _rotationRetryDelayMs;
335
- private _scheduleGroupRotationRetry;
336
- /** 建群后将本地 epoch 1 同步到服务端,最多重试 3 次 */
337
- private _syncEpochToServer;
338
- /**
339
- * H21: 基于"排序最小 admin = leader"选举,其他 admin 走 jitter 兜底重试。
340
- * 避免所有剩余 admin 同时触发 `_rotateGroupEpoch` 造成 CAS 风暴。
341
- */
342
- private _maybeLeadRotateGroupEpoch;
343
- /**
344
- * 为指定群组轮换 epoch 并分发新密钥。
345
- * 使用服务端 CAS 保证只有一方成功。
346
- */
347
- private _rotateGroupEpoch;
348
- /** 从成员加入事件 payload 中提取新加入的成员 AID 列表。 */
349
- private _joinedMemberAidsFromPayload;
350
- /** 延迟轮换等待时间(毫秒) */
351
- private static readonly _JOIN_ROTATION_DELAY_MS;
352
- private static readonly _SELF_JOIN_ROTATION_DELAY_MS;
353
- /** open/invite_code 入群后延迟轮换。 */
354
- private _delayedRotateAfterJoin;
355
- /** 当新成员加入但缺少 old_epoch 时,将当前 epoch 密钥分发给新成员。 */
356
- private _maybeBackfillKeyToJoinedMember;
357
- /**
358
- * 将当前 group_secret 通过 P2P E2EE 分发给新成员。
359
- * 先拉服务端最新成员列表,更新本地,构建签名 manifest,再分发。
360
- */
361
- private _distributeKeyToNewMember;
362
- /** 构建 epoch 轮换签名参数(异步,使用 SubtleCrypto)。失败时抛错,调用方在 try/catch 中跳过轮换。 */
363
- private _buildRotationSignature;
364
259
  private _connectOnce;
365
260
  private _resolveGateway;
366
261
  private _syncIdentityAfterConnect;
@@ -370,18 +265,14 @@ export declare class AUNClient {
370
265
  private _stopBackgroundTasks;
371
266
  /** 心跳定时器 */
372
267
  private _startHeartbeat;
268
+ /** 服务端通过 hello/pong 下发 heartbeat_interval;clamp 后写入 session_options 并按需重启心跳。 */
269
+ private _applyServerHeartbeatInterval;
373
270
  /** Token 刷新定时器 */
374
271
  private _startTokenRefresh;
375
- /** Prekey 轮换定时器:定期检查本地 prekey 数量,不足时自动补充上传 */
376
- private _startPrekeyRefresh;
377
- private _extractConsumedPrekeyId;
378
272
  private _validateMessageRecipient;
379
273
  private _validateOutboundCall;
380
274
  private _currentMessageDeliveryMode;
381
275
  private _injectMessageCursorContext;
382
- private _schedulePrekeyReplenishIfConsumed;
383
- /** 群组 epoch 后台任务 */
384
- private _startGroupEpochTasks;
385
276
  /** 不重连 close code 集合:认证失败/权限错误/被踢等,重连无意义 */
386
277
  private static readonly _NO_RECONNECT_CODES;
387
278
  /** 处理服务端主动断开通知 event/gateway.disconnect
@@ -416,8 +307,139 @@ export declare class AUNClient {
416
307
  private _refreshSeqTrackerContext;
417
308
  /** 将 SeqTracker 状态保存到 keystore */
418
309
  private _saveSeqTrackerState;
419
- /** 发布 E2EE 编排错误事件 */
420
- private _logE2eeError;
310
+ /**
311
+ * 初始化 V2 session:从 AID PEM 私钥提取 raw scalar + DER 公钥,
312
+ * 打开 V2 KeyStore(IndexedDB),构造 V2Session 并注册当前设备 SPK。
313
+ *
314
+ * connect 成功后自动调用,可幂等手动调用。
315
+ */
316
+ initV2Session(): Promise<void>;
317
+ private _getV2SenderPubDer;
318
+ /**
319
+ * V2 P2P 加密发送(推测性:用缓存 bootstrap 直接发,失败刷新重试一次)。
320
+ *
321
+ * @param to 目标 AID
322
+ * @param payload 业务 payload(将被加密)
323
+ * @param opts 可选 messageId / timestamp(与 Python 行为一致)
324
+ * @returns 服务端响应
325
+ */
326
+ sendV2(to: string, payload: Record<string, unknown>, opts?: {
327
+ messageId?: string;
328
+ timestamp?: number;
329
+ protectedHeaders?: Record<string, unknown>;
330
+ context?: Record<string, unknown>;
331
+ }): Promise<unknown>;
332
+ /**
333
+ * 拉取并解密 V2 P2P 消息。
334
+ *
335
+ * @param afterSeq 从此 seq 之后开始拉取(0/省略 = 从当前 contiguous 开始)
336
+ * @param limit 最多拉取条数
337
+ */
338
+ pullV2(afterSeq?: number, limit?: number): Promise<unknown[]>;
339
+ /**
340
+ * 确认 V2 消息已消费 + 自检销毁旧 SPK(PFS)。
341
+ *
342
+ * @param upToSeq 确认到此 seq;省略则用当前 contiguous
343
+ */
344
+ ackV2(upToSeq?: number): Promise<unknown>;
345
+ /** 解密单条 V2 消息(与 Python `_decrypt_v2_message` 对齐) */
346
+ private _decryptV2Message;
347
+ /**
348
+ * V2 Group 加密发送(推测性:用缓存 bootstrap 直接发,失败刷新重试一次)。
349
+ *
350
+ * @param groupId 群 ID
351
+ * @param payload 业务 payload(将被加密)
352
+ * @param opts 可选 messageId / timestamp
353
+ * @returns 服务端响应
354
+ */
355
+ sendGroupV2(groupId: string, payload: Record<string, unknown>, opts?: {
356
+ messageId?: string;
357
+ timestamp?: number;
358
+ protectedHeaders?: Record<string, unknown>;
359
+ context?: Record<string, unknown>;
360
+ }): Promise<unknown>;
361
+ private _pullGroupV2Internal;
362
+ /**
363
+ * 拉取并解密 V2 Group 消息。
364
+ *
365
+ * @param groupId 群 ID
366
+ * @param afterSeq 从此 seq 之后开始拉取(0/省略 = 从当前 contiguous 开始)
367
+ * @param limit 最多拉取条数
368
+ */
369
+ pullGroupV2(groupId: string, afterSeq?: number, limit?: number): Promise<unknown[]>;
370
+ /**
371
+ * 确认 V2 群消息已消费。
372
+ *
373
+ * @param groupId 群 ID
374
+ * @param upToSeq 确认到此 seq;省略则用当前 contiguous
375
+ */
376
+ ackGroupV2(groupId: string, upToSeq?: number): Promise<unknown>;
377
+ /**
378
+ * V2 P2P 多设备 wrap envelope 构造(不发送)。
379
+ * thought.put 复用此函数构造与 message.send 相同的 V2 envelope。
380
+ * 与 Python `_build_v2_p2p_envelope` 对齐。
381
+ */
382
+ private _buildV2P2PEnvelope;
383
+ /**
384
+ * V2 P2P thought.put:使用 V2 多设备 wrap envelope。
385
+ * 服务端仍走 message.thought.put(内存 KV),envelope 透传,由接收端单设备解密。
386
+ * 与 Python `_put_message_thought_encrypted_v2` 对齐。
387
+ */
388
+ private _putMessageThoughtEncryptedV2;
389
+ /**
390
+ * V2 Group 多设备 wrap envelope 构造(不发送)。
391
+ * 与 Python `_build_v2_group_envelope` 对齐。
392
+ */
393
+ private _buildV2GroupEnvelope;
394
+ private _publishV2GroupSecurityLevel;
395
+ /**
396
+ * V2 Group thought.put:多设备 wrap envelope。
397
+ * 与 Python `_put_group_thought_encrypted_v2` 对齐。
398
+ */
399
+ private _putGroupThoughtEncryptedV2;
400
+ /**
401
+ * 解密一个 V2 thought envelope(P2P 或 Group),返回 payload dict。
402
+ * 与 _decryptV2Message 不同:不依赖 envelope_json 包装;失败返回 null,不发布 undecryptable 事件。
403
+ * 与 Python `_decrypt_v2_envelope_for_thought` 对齐。
404
+ */
405
+ private _decryptV2EnvelopeForThought;
406
+ /**
407
+ * 验证 owner/admin 对 state 的 ECDSA 签名(防服务端篡改 bootstrap 字段)。
408
+ * 与 Python SDK 对齐:证书获取或验签失败时拒绝信任 bootstrap。
409
+ */
410
+ private _v2VerifyStateSignature;
411
+ /**
412
+ * 分叉检测:比对服务端 state_chain 与本地存储。
413
+ */
414
+ private _v2CheckFork;
415
+ private _v2MaybeTriggerAutoPropose;
416
+ /**
417
+ * 成员变更后自动 propose state(仅 owner/admin 执行)。
418
+ */
419
+ private _v2AutoProposeState;
420
+ private _v2LeaderDelayMs;
421
+ private _v2AutoProposeLeaderDelay;
422
+ private _v2VerifyCommittedStateBase;
423
+ private _doV2AutoProposeState;
424
+ private _v2VerifyPendingProposalAgainstBase;
425
+ private _v2ConfirmPendingProposal;
426
+ /**
427
+ * Owner 上线时自动检查并签名确认 pending state proposals。
428
+ */
429
+ private _v2AutoConfirmPendingProposals;
430
+ private _onV2StateProposed;
431
+ private _onV2StateRetryNeeded;
432
+ private _onV2StateConfirmed;
433
+ /**
434
+ * 处理 V2 push 通知:自动 pull + decrypt + emit。
435
+ */
436
+ private _v2PullInflight;
437
+ private _v2PullPending;
438
+ private _onV2PushNotification;
439
+ /**
440
+ * 处理 V2 epoch 轮换事件:清除 bootstrap 缓存 + 触发 SPK rotation。
441
+ */
442
+ private _onV2EpochRotated;
421
443
  /** 安全执行异步操作(不阻塞调用方,错误打 warning 便于排障) */
422
444
  private _safeAsync;
423
445
  /** 可取消的 sleep */
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAOA,OAAO,EAAkD,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7F,OAAO,EAAsC,KAAK,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAEvG,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAIlD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAiCrD,OAAO,EAML,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,YAAY,CAAC;AA0ZpB;;;;;;;;;;;GAWG;AACH,qBAAa,SAAS;IACpB,eAAe;IACf,QAAQ,CAAC,WAAW,EAAE,SAAS,CAAC;IAChC,aAAa;IACb,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAE3B,OAAO,CAAC,IAAI,CAAuB;IACnC,OAAO,CAAC,SAAS,CAA+B;IAChD,OAAO,CAAC,MAAM,CAAmI;IACjJ,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAAa;IACjC,OAAO,CAAC,oBAAoB,CAAa;IACzC,OAAO,CAAC,2BAA2B,CAAa;IAChD,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,cAAc,CAA8B;IACpD,OAAO,CAAC,eAAe,CAAkD;IAEzE,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,SAAS,CAAW;IAC5B,OAAO,CAAC,KAAK,CAAW;IACxB,OAAO,CAAC,UAAU,CAAe;IAEjC,aAAa;IACb,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,iBAAiB;IACjB,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC;IACnC,2BAA2B;IAC3B,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAG7B,OAAO,CAAC,UAAU,CAA0C;IAG5D,OAAO,CAAC,eAAe,CAA+C;IACtE,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,kBAAkB,CAA8C;IACxE,OAAO,CAAC,qBAAqB,CAAK;IAClC,OAAO,CAAC,kBAAkB,CAA+C;IAGzE,OAAO,CAAC,UAAU,CAAC,CAAY;IAC/B,OAAO,CAAC,WAAW,CAAC,CAAa;IACjC,OAAO,CAAC,iBAAiB,CAA4C;IACrE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAkB;IAC7D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAqD;IAC/F,qDAAqD;IACrD,OAAO,CAAC,WAAW,CAAkC;IACrD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAW;IACpD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAClD,iEAAiE;IACjE,OAAO,CAAC,cAAc,CAA4C;IAClE,gDAAgD;IAChD,OAAO,CAAC,sBAAsB,CAAkC;IAChE,sDAAsD;IACtD,OAAO,CAAC,sBAAsB,CAAyC;IACvE,6CAA6C;IAC7C,OAAO,CAAC,qBAAqB,CAA0B;IACvD,+CAA+C;IAC/C,OAAO,CAAC,0BAA0B,CAAkC;IACpE,OAAO,CAAC,uBAAuB,CAAkC;IACjE;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB,CAAc;IACvC,wEAAwE;IACxE,OAAO,CAAC,kBAAkB,CAAc;IACxC,+BAA+B;IAC/B,OAAO,CAAC,WAAW,CAAgC;IACnD,OAAO,CAAC,kBAAkB,CAAuB;IACjD,0CAA0C;IAC1C,OAAO,CAAC,YAAY,CAA0B;IAC9C,qDAAqD;IACrD,OAAO,CAAC,WAAW,CAAuC;IAC1D,iDAAiD;IACjD,OAAO,CAAC,mBAAmB,CAAiF;IAC5G,qCAAqC;IACrC,OAAO,CAAC,YAAY,CAA0B;IAC9C,uDAAuD;IACvD,OAAO,CAAC,cAAc,CAAS;IAE/B,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,aAAa,CAAS;IAC9B;;;OAGG;IACH,OAAO,CAAC,mBAAmB,CAA8E;IAEzG,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,UAAU,CAAgB;IAClC,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,UAAU,CAAgB;gBAEtB,MAAM,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS,EAAE,MAAM,UAAQ;IAqHnE,IAAI,GAAG,IAAI,MAAM,GAAG,IAAI,CAEvB;IAED;;;;;OAKG;IACG,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAgBvE;;;OAGG;IACG,YAAY,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC;QAC/C,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACnC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;KACzB,CAAC;IA6BF,iEAAiE;IACjE,OAAO,CAAC,eAAe;IAQvB,IAAI,KAAK,IAAI,eAAe,CAE3B;IAED,IAAI,UAAU,IAAI,MAAM,GAAG,IAAI,CAE9B;IAED,IAAI,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,EAEhC;IAED,IAAI,SAAS,IAAI,gBAAgB,CAEhC;IAED,uCAAuC;IACvC,IAAI,aAAa,IAAI,OAAO,GAAG,IAAI,CAElC;IAED,oCAAoC;IAC9B,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,SAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAe9E;;;;;OAKG;IACG,OAAO,CACX,IAAI,EAAE,SAAS,EACf,OAAO,CAAC,EAAE,SAAS,GAClB,OAAO,CAAC,IAAI,CAAC;IA6BhB,8BAA8B;IACxB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAuBjC,oCAAoC;IAC9B,cAAc,IAAI,OAAO,CAAC,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,cAAc,CAAA;KAAE,CAAC,CAAC;IAyClF,WAAW;IACL,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAsC5B;;;;;OAKG;IACG,IAAI,CACR,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,SAAS,GACjB,OAAO,CAAC,SAAS,CAAC;YAaP,SAAS;IAkOjB,IAAI,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IAI5C,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IAI9C,UAAU,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;IAMxD;;;;;OAKG;IACH,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,YAAY;IAItD,aAAa;IACb,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI;IAM/C,mFAAmF;IACnF,OAAO,CAAC,qBAAqB;IAM7B,qEAAqE;YACvD,yBAAyB;IAwDvC,+CAA+C;IAC/C,OAAO,CAAC,yBAAyB;IAMjC,2DAA2D;YAC7C,2BAA2B;IA8CzC;;;;;OAKG;YACW,8BAA8B;IAkE5C,4DAA4D;YAC9C,sBAAsB;IAiDpC,gBAAgB;YACF,aAAa;IAwD3B,gBAAgB;YACF,kBAAkB;IAmEhC,oBAAoB;YACN,WAAW;IAsDzB,oDAAoD;IACpD,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,iBAAiB;IAazB,OAAO,CAAC,sBAAsB;IAa9B,OAAO,CAAC,6BAA6B;IAOrC,OAAO,CAAC,6BAA6B;IAYrC,OAAO,CAAC,iCAAiC;YAK3B,gBAAgB;IAsB9B,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,cAAc;IAOtB,OAAO,CAAC,yBAAyB;IAQjC,OAAO,CAAC,4BAA4B;IASpC,OAAO,CAAC,8BAA8B;YAaxB,qBAAqB;YAiBrB,sBAAsB;YA8BtB,qBAAqB;IAmBnC,OAAO,CAAC,yBAAyB;YAUnB,kBAAkB;IAyDhC;;;OAGG;YACW,sBAAsB;YAuBtB,0BAA0B;IA4GxC;;;;;;OAMG;IACH,OAAO,CAAC,sBAAsB;YAwBhB,qBAAqB;IAiDnC,OAAO,CAAC,2BAA2B;YAUrB,gBAAgB;IAM9B;;;;OAIG;YACW,gBAAgB;YA6DhB,qBAAqB;YAmErB,uBAAuB;IA6ErC;;;OAGG;YACW,cAAc;IAiG5B,uBAAuB;YACT,uBAAuB;IA0CrC;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAe5B;;;OAGG;YACW,oBAAoB;YAkEpB,YAAY;IA0G1B,OAAO,CAAC,eAAe;YAgBT,yBAAyB;IA0BvC,OAAO,CAAC,uBAAuB;IA0D/B,OAAO,CAAC,oBAAoB;IA+B5B,OAAO,CAAC,qBAAqB;IAgC7B,OAAO,CAAC,oBAAoB;IAe5B,YAAY;IACZ,OAAO,CAAC,eAAe;IAoCvB,gFAAgF;IAChF,OAAO,CAAC,6BAA6B;IAgBrC,kBAAkB;IAClB,OAAO,CAAC,kBAAkB;IA2E1B,OAAO,CAAC,yBAAyB;IAMjC,OAAO,CAAC,qBAAqB;IA4C7B,OAAO,CAAC,2BAA2B;IAInC,OAAO,CAAC,2BAA2B;IAiBnC,4CAA4C;IAC5C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAyE;IAEpH;;;;OAIG;YACW,oBAAoB;YAmBpB,0BAA0B;IA0CxC,uEAAuE;YACzD,cAAc;IAoF5B;;;OAGG;IACG,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAuC/G;;OAEG;IACG,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAsCxF,gBAAgB;IAChB,OAAO,CAAC,qBAAqB;IAoB7B,uEAAuE;YACzD,uBAAuB;IA0CrC;;;OAGG;YACW,wBAAwB;IAoDtC,OAAO,CAAC,yBAAyB;IAKjC,OAAO,CAAC,sBAAsB;IAS9B,OAAO,CAAC,yBAAyB;IAWjC,kCAAkC;IAClC,OAAO,CAAC,oBAAoB;IAiD5B;;;;;OAKG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;YAoEtB,kBAAkB;IAqChC;;;;;;;OAOG;IACG,MAAM,CACV,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAC/H,OAAO,CAAC,OAAO,CAAC;IAqInB;;;;;OAKG;IACG,MAAM,CAAC,QAAQ,GAAE,MAAU,EAAE,KAAK,GAAE,MAAW,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IA6F1E;;;;OAIG;IACG,KAAK,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAwB/C,oDAAoD;YACtC,iBAAiB;IAwF/B;;;;;;;OAOG;IACG,WAAW,CACf,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,GAC/H,OAAO,CAAC,OAAO,CAAC;YA2DL,oBAAoB;IAIlC;;;;;;OAMG;IACG,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAU,EAAE,KAAK,GAAE,MAAW,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAkGhG;;;;;OAKG;IACG,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAWrE;;;;OAIG;YACW,mBAAmB;IAqHjC;;;;OAIG;YACW,6BAA6B;IAiD3C;;;OAGG;YACW,qBAAqB;YA+GrB,4BAA4B;IAa1C;;;OAGG;YACW,2BAA2B;IAgDzC;;;;OAIG;YACW,4BAA4B;IAgD1C;;;OAGG;YACW,uBAAuB;IAgHrC;;OAEG;YACW,YAAY;IAyC1B,OAAO,CAAC,0BAA0B;IAQlC;;OAEG;YACW,mBAAmB;YA+CnB,gBAAgB;YAShB,yBAAyB;YAkDzB,2BAA2B;YA2B3B,qBAAqB;YAiJrB,mCAAmC;YA2BnC,yBAAyB;IAqBvC;;OAEG;YACW,8BAA8B;YAyB9B,kBAAkB;YAYlB,qBAAqB;YAYrB,mBAAmB;IAUjC;;OAEG;IACH,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,cAAc,CAAS;YAEjB,qBAAqB;IA4BnC;;OAEG;YACW,iBAAiB;IAsB/B,wCAAwC;IACxC,OAAO,CAAC,UAAU;IAMlB,iBAAiB;IACjB,OAAO,CAAC,MAAM;CAKf"}