@wowok/wowok 3.0.2 → 3.0.3

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 (89) hide show
  1. package/dist/esm/{arb-D0c_1-0E.mjs → arb-oAj8sfuS.mjs} +1 -1
  2. package/dist/esm/{base-C-bmf-9P.mjs → base-DWuhAtcT.mjs} +1 -1
  3. package/dist/esm/{call-B89EWeo5.mjs → call-CVIyKU1r.mjs} +1 -1
  4. package/dist/esm/client/index.d.mts +1 -1
  5. package/dist/esm/client/index.mjs +1 -1
  6. package/dist/esm/{client-CYziyi68.mjs → client-B2tx5llp.mjs} +1 -1
  7. package/dist/esm/cryptography/index.d.mts +1 -1
  8. package/dist/esm/graphql/index.d.mts +1 -1
  9. package/dist/esm/graphql/index.mjs +1 -1
  10. package/dist/esm/{graphql-CUsco9b3.mjs → graphql-JsWZ_J30.mjs} +1 -1
  11. package/dist/esm/grpc/index.d.mts +1 -1
  12. package/dist/esm/grpc/index.mjs +1 -1
  13. package/dist/esm/{grpc-IoJ51B_A.mjs → grpc-BvYW9GnF.mjs} +1 -1
  14. package/dist/esm/{index-DCFY4cxp.d.mts → index-DXEIuFPc.d.mts} +18 -10
  15. package/dist/esm/index.d.mts +2 -2
  16. package/dist/esm/index.mjs +1 -1
  17. package/dist/esm/jsonRpc/index.d.mts +1 -1
  18. package/dist/esm/jsonRpc/index.mjs +1 -1
  19. package/dist/esm/keypairs/ed25519/index.d.mts +1 -1
  20. package/dist/esm/keypairs/falcon512/index.d.mts +1 -1
  21. package/dist/esm/keypairs/passkey/index.d.mts +1 -1
  22. package/dist/esm/keypairs/secp256k1/index.d.mts +1 -1
  23. package/dist/esm/keypairs/secp256r1/index.d.mts +1 -1
  24. package/dist/esm/{messenger-CjfCX1gd.mjs → messenger-CeB-Oyvu.mjs} +1 -1
  25. package/dist/esm/{messenger-api-D6aPgQqj.mjs → messenger-api-W1DETd-_.mjs} +1 -1
  26. package/dist/esm/multisig/index.d.mts +1 -1
  27. package/dist/esm/{object-C5tKBfgP.mjs → object-DtJ7wEuV.mjs} +1 -1
  28. package/dist/esm/{passport-CLMoL1-c.mjs → passport-CmJgXxjm.mjs} +1 -1
  29. package/dist/esm/{proof-BRpLwdbL.mjs → proof-BwJ-DCF2.mjs} +1 -1
  30. package/dist/esm/query-Cxz7md7P.mjs +1 -0
  31. package/dist/esm/{received-Dldrb1fk.mjs → received-B_a2XG4d.mjs} +1 -1
  32. package/dist/esm/{service-78UXm0js.mjs → service-yA7hNy3J.mjs} +1 -1
  33. package/dist/esm/transactions/index.d.mts +1 -1
  34. package/dist/esm/{util-IEjKV3n4.mjs → util-DqqLJ3bi.mjs} +1 -1
  35. package/dist/esm/verify/index.d.mts +1 -1
  36. package/dist/esm/w/call/allocation.d.mts +1 -1
  37. package/dist/esm/w/call/allocation.mjs +1 -1
  38. package/dist/esm/w/call/arbitration.d.mts +1 -1
  39. package/dist/esm/w/call/arbitration.mjs +1 -1
  40. package/dist/esm/w/call/base.d.mts +1 -1
  41. package/dist/esm/w/call/base.mjs +1 -1
  42. package/dist/esm/w/call/demand.d.mts +1 -1
  43. package/dist/esm/w/call/demand.mjs +1 -1
  44. package/dist/esm/w/call/guard.d.mts +1 -1
  45. package/dist/esm/w/call/guard.mjs +1 -1
  46. package/dist/esm/w/call/index.d.mts +1 -1
  47. package/dist/esm/w/call/index.mjs +1 -1
  48. package/dist/esm/w/call/machine.d.mts +1 -1
  49. package/dist/esm/w/call/machine.mjs +1 -1
  50. package/dist/esm/w/call/passport.d.mts +1 -1
  51. package/dist/esm/w/call/passport.mjs +1 -1
  52. package/dist/esm/w/call/payment.d.mts +1 -1
  53. package/dist/esm/w/call/payment.mjs +1 -1
  54. package/dist/esm/w/call/permission.d.mts +1 -1
  55. package/dist/esm/w/call/permission.mjs +1 -1
  56. package/dist/esm/w/call/progress.d.mts +1 -1
  57. package/dist/esm/w/call/progress.mjs +1 -1
  58. package/dist/esm/w/call/repository.d.mts +1 -1
  59. package/dist/esm/w/call/repository.mjs +1 -1
  60. package/dist/esm/w/call/reward.d.mts +1 -1
  61. package/dist/esm/w/call/reward.mjs +1 -1
  62. package/dist/esm/w/call/service.d.mts +1 -1
  63. package/dist/esm/w/call/service.mjs +1 -1
  64. package/dist/esm/w/call/treasury.d.mts +1 -1
  65. package/dist/esm/w/call/treasury.mjs +1 -1
  66. package/dist/esm/w/common.d.mts +1 -1
  67. package/dist/esm/w/index.d.mts +2 -2
  68. package/dist/esm/w/index.mjs +1 -1
  69. package/dist/esm/w/local/account.d.mts +1 -1
  70. package/dist/esm/w/local/account.mjs +1 -1
  71. package/dist/esm/w/local/index.d.mts +1 -1
  72. package/dist/esm/w/local/token.d.mts +1 -1
  73. package/dist/esm/w/local/token.mjs +1 -1
  74. package/dist/esm/w/messenger/index.d.mts +1 -1
  75. package/dist/esm/w/messenger/index.mjs +1 -1
  76. package/dist/esm/w/messenger/messenger-api.d.mts +1 -1
  77. package/dist/esm/w/messenger/messenger-api.mjs +1 -1
  78. package/dist/esm/w/messenger/messenger.d.mts +1 -1
  79. package/dist/esm/w/messenger/messenger.mjs +1 -1
  80. package/dist/esm/w/messenger/reply.d.mts +1 -1
  81. package/dist/esm/w/messenger/storage.d.mts +1 -1
  82. package/dist/esm/w/messenger/types.d.mts +1 -1
  83. package/dist/esm/w/query/index.d.mts +2 -2
  84. package/dist/esm/w/query/index.mjs +1 -1
  85. package/dist/esm/w/query/object.d.mts +1 -1
  86. package/dist/esm/w/query/object.mjs +1 -1
  87. package/dist/esm/{w-BImJL-ey.mjs → w-De1YQOs9.mjs} +1 -1
  88. package/package.json +1 -1
  89. package/dist/esm/query-Co2trHrE.mjs +0 -1
@@ -1 +1 @@
1
- import{a as a21a,c as a21b,d as a21c,i as a21d,l as a21e,n as a21f,o as a21g,r as a21h,s as a21i,t as a21j,u as a21k}from'./wow-types-DctQuD2J.mjs';import{a as a21l,d as a21m,i as a21n,n as a21o,o as a21p,r as a21q,s as a21r,t as a21s,u as a21t}from'./bcs-Cjvfeyqf.mjs';import{c as a21u,d as a21v,f as a21w,g as a21x,h as a21y,l as a21z,m as a21A,n as a21B,o as a21C,p as a21D,r as a21E,s as a21F,t as a21G,u as a21H}from'./client-CYziyi68.mjs';import{A as a21I,C as a21J,D as a21K,E as a21L,M as a21M,N as a21N,O as a21O,P as a21P,S as a21Q,_ as a21R,a as a21S,b as a21T,c as a21U,d as a21V,f as a21W,g as a21X,h as a21Y,i as a21Z,j as a21a0,k as a21a1,l as a21a2,m as a21a3,n as a21a4,o as a21a5,p as a21a6,r as a21a7,s as a21a8,t as a21a9,u as a21aa,v as a21ab,w as a21ac,x as a21ad,y as a21ae}from'./utils-CtyqDDA5.mjs';import{_ as a21af,c as a21ag,d as a21ah,f as a21ai,g as a21aj,h as a21ak,l as a21al,n as a21am,r as a21an,t as a21ao,u as a21ap}from'./Transaction-D1AlW3t_.mjs';import{a as a21aq,c as a21ar,d as a21as,f as a21at,i as a21au,l as a21av,n as a21aw,o as a21ax,p as a21ay,r as a21az,s as a21aA,t as a21aB,u as a21aC}from'./exception-Xd2RFs2i.mjs';import{n as a21aD,r as a21aE,t as a21aF}from'./network-y8yMus5q.mjs';import{a as a21aG,i as a21aH,n as a21aI,o as a21aJ,s as a21aK,t as a21aL}from'./publickey-CcBVAm0Y.mjs';import{a as a21aM,d as a21aN,f as a21aO,i as a21aP,l as a21aQ,n as a21aR,o as a21aS,p as a21aT,r as a21aU,s as a21aV,t as a21aW}from'./keypair-Y6T-6uC9.mjs';import{i as a21aX,n as a21aY,r as a21aZ,t as a21b0}from'./mnemonics-C6qlqegr.mjs';import{n as a21b1,r as a21b2,t as a21b3}from'./faucet-RNvBvVJf.mjs';import{n as a21b4,r as a21b5,t as a21b6}from'./graphql-CUsco9b3.mjs';import{a as a21b7,i as a21b8,n as a21b9,r as a21ba,t as a21bb}from'./grpc-IoJ51B_A.mjs';import{t as a21bc}from'./jsonRpc-1qOo1zjv.mjs';import{n as a21bd,t as a21be}from'./ed25519-CQkeZzxT.mjs';import{t as a21bf}from'./publickey-CZRptlhE.mjs';import{t as a21bg}from'./publickey-CQJKhU0a.mjs';import{n as a21bh,t as a21bi}from'./secp256k1-Pg5TWkCH.mjs';import{t as a21bj}from'./publickey-Co-74gWq.mjs';import{n as a21bk,t as a21bl}from'./secp256r1-VjWddrx1.mjs';import{n as a21bm,t as a21bn}from'./passkey-C1gbCkoK.mjs';import{t as a21bo}from'./publickey-x1pzVVw_.mjs';import{n as a21bp,t as a21bq}from'./falcon512-Dl5rncUq.mjs';import{a as a21br,c as a21bs,i as a21bt,n as a21bu,o as a21bv,r as a21bw,s as a21bx,t as a21by}from'./publickey-Kr58241y.mjs';import'./multisig/index.mjs';import{a as a21bz,i as a21bA,n as a21bB,r as a21bC,t as a21bD}from'./transactions-_w64QTEl.mjs';import{$ as a21bE,A as a21bF,B as a21bG,C as a21bH,Ct as a21bI,D as a21bJ,Dt as a21bK,E as a21bL,Et as a21bM,F as a21bN,G as a21bO,H as a21bP,I as a21bQ,J as a21bR,K as a21bS,L as a21bT,M as a21bU,N as a21bV,O as a21bW,Ot as a21bX,P as a21bY,Q as a21bZ,R as a21c0,S as a21c1,St as a21c2,T as a21c3,Tt as a21c4,U as a21c5,V as a21c6,W as a21c7,X as a21c8,Y as a21c9,Z as a21ca,_ as a21cb,_t as a21cc,a as a21cd,at as a21ce,b as a21cf,bt as a21cg,c as a21ch,ct as a21ci,d as a21cj,dt as a21ck,et as a21cl,f as a21cm,ft as a21cn,g as a21co,gt as a21cp,h as a21cq,ht as a21cr,i as a21cs,it as a21ct,j as a21cu,k as a21cv,l as a21cw,lt as a21cx,m as a21cy,mt as a21cz,n as a21cA,nt as a21cB,o as a21cC,ot as a21cD,p as a21cE,pt as a21cF,q as a21cG,r as a21cH,rt as a21cI,s as a21cJ,st as a21cK,t as a21cL,tt as a21cM,u as a21cN,ut as a21cO,v as a21cP,vt as a21cQ,w as a21cR,wt as a21cS,x as a21cT,xt as a21cU,y as a21cV,yt as a21cW,z as a21cX}from'./common-BXJtePqk.mjs';import{getWowDir,getWowMcpDir,getWowokDataDir,getWowokIndustryDir,getWowokUserDataDir,getWowokWorkspaceDir,safeFilename,workspaceExportPath}from'./w/local/util.mjs';import{i as a21cY,n as a21cZ}from'./storage-D1bEi2b7.mjs';import{Config}from'./w/local/config.mjs';import{BUITIN_IDS,LocalInfo,LocalInfoContentMaxCount,LocalInfoContentMaxLength,LocalInfoNameDefault,LocalInfoNameMaxLength,LocalMark,LocalMarkNameMaxLength,LocalMarkTagMaxCount,LocalMarkTagMaxLength,isValidAddress}from'./w/local/local.mjs';import{a as a21d0,i as a21d1,n as a21d2,o as a21d3,r as a21d4,t as a21d5}from'./logger-Cs5Mf7Mf.mjs';import{CryptoVault,SecureAccountStorage}from'./w/local/secure-storage.mjs';import{Account,DEFAULT_ACCOUNT_NAME,MAX_ACCOUNTS,MAX_MESSENGER_ACCOUNTS}from'./w/local/account.mjs';import{TokenInfo}from'./w/local/token.mjs';import{bytesToBigInt,bytesToHex,hexToBytes,isValidEvmAddress,privateKeyToAddress,signEIP1559,signLegacy,toChecksumAddress}from'./w/local/evm/rlp.mjs';import{ETH_MAINNET,EvmNetworkRegistry,registerBridgeEvmNetworks}from'./w/local/evm/networks.mjs';import{EvmAccount}from'./w/local/evm-account.mjs';import{DEFAULT_LIMITS,WIP,WipError,WipSizeError,WipValidationError,createWip,generate_wip,loadWip,sign_wip,verifyWip,verify_wip,wip2html,wipToHtml}from'./w/local/wip.mjs';import{GetAccountOrMark_Address,GetLocalNamesByAddresses,GetManyAccountOrMark_Address,account_operation,fetch_token_info_operation,local_info_operation,local_mark_operation,query_account,query_account_list,query_local_info,query_local_info_default,query_local_info_list,query_local_mark,query_local_mark_list,query_local_token_list}from'./w/local/index.mjs';import{$ as a21d6,A as a21d7,B as a21d8,C as a21d9,Ct as a21da,D as a21db,Dt as a21dc,E as a21dd,Et as a21de,F as a21df,G as a21dg,H as a21dh,I as a21di,J as a21dj,K as a21dk,L as a21dl,M as a21dm,N as a21dn,O as a21do,Ot as a21dp,P as a21dq,Q as a21dr,R as a21ds,S as a21dt,St as a21du,T as a21dv,Tt as a21dw,U as a21dx,V as a21dy,W as a21dz,X as a21dA,Y as a21dB,Z as a21dC,_ as a21dD,a as a21dE,at as a21dF,b as a21dG,bt as a21dH,c as a21dI,ct as a21dJ,d as a21dK,dt as a21dL,et as a21dM,f as a21dN,ft as a21dO,g as a21dP,h as a21dQ,ht as a21dR,i as a21dS,it as a21dT,j as a21dU,k as a21dV,l as a21dW,lt as a21dX,m as a21dY,mt as a21dZ,n as a21e0,nt as a21e1,o as a21e2,ot as a21e3,p as a21e4,pt as a21e5,q as a21e6,r as a21e7,rt as a21e8,s as a21e9,st as a21ea,t as a21eb,tt as a21ec,u as a21ed,ut as a21ee,v as a21ef,vt as a21eg,w as a21eh,wt as a21ei,x as a21ej,xt as a21ek,y as a21el,yt as a21em,z as a21en}from'./object-C5tKBfgP.mjs';import{t as a21eo}from'./received-Dldrb1fk.mjs';import{$ as a21ep,A as a21eq,B as a21er,C as a21es,Ct as a21et,D as a21eu,Dt as a21ev,E as a21ew,Et as a21ex,F as a21ey,G as a21ez,H as a21eA,I as a21eB,J as a21eC,K as a21eD,L as a21eE,M as a21eF,N as a21eG,O as a21eH,P as a21eI,Q as a21eJ,R as a21eK,S as a21eL,St as a21eM,T as a21eN,Tt as a21eO,U as a21eP,V as a21eQ,W as a21eR,X as a21eS,Y as a21eT,Z as a21eU,_ as a21eV,_t as a21eW,at as a21eX,b as a21eY,bt as a21eZ,ct as a21f0,d as a21f1,dt as a21f2,et as a21f3,f as a21f4,ft as a21f5,g as a21f6,gt as a21f7,h as a21f8,ht as a21f9,it as a21fa,j as a21fb,k as a21fc,lt as a21fd,m as a21fe,mt as a21ff,nt as a21fg,ot as a21fh,p as a21fi,pt as a21fj,q as a21fk,rt as a21fl,st as a21fm,tt as a21fn,ut as a21fo,v as a21fp,vt as a21fq,w as a21fr,wt as a21fs,x as a21ft,xt as a21fu,y as a21fv,yt as a21fw,z as a21fx}from'./passport-CLMoL1-c.mjs';import{i as a21fy,n as a21fz,r as a21fA,t as a21fB}from'./base-C-bmf-9P.mjs';import{CallPayment}from'./w/call/payment.mjs';import{CallAllocation}from'./w/call/allocation.mjs';import{BuiltinPermissionIndex,CallPermission,isBizPermIndex}from'./w/call/permission.mjs';import{CallArbitration}from'./w/call/arbitration.mjs';import{n as a21fC,t as a21fD}from'./util-IEjKV3n4.mjs';import{CallDemand}from'./w/call/demand.mjs';import{CallGuard,formatGuardParseErrors,gen_passport,generateNodeComments,guard2file,parseGuardFile,parseGuardFromMarkdown,validateGuardData,validateGuardNode}from'./w/call/guard.mjs';import{CallProgress}from'./w/call/progress.mjs';import{CallMachine,machineNode2file}from'./w/call/machine.mjs';import{$ as a21fE,t as a21fF}from'./service-78UXm0js.mjs';import{CallReward,transformRewardInput}from'./w/call/reward.mjs';import{CallRepository}from'./w/call/repository.mjs';import{CallTreasury}from'./w/call/treasury.mjs';import{n as a21fG,r as a21fH,t as a21fI}from'./call-B89EWeo5.mjs';import{n as a21fJ,t as a21fK}from'./proof-BRpLwdbL.mjs';import{A as a21fL,C as a21fM,D as a21fN,E as a21fO,F as a21fP,I as a21fQ,M as a21fR,N as a21fS,O as a21fT,P as a21fU,S as a21fV,T as a21fW,_ as a21fX,a as a21fY,b as a21fZ,c as a21g0,d as a21g1,f as a21g2,g as a21g3,h as a21g4,i as a21g5,j as a21g6,k as a21g7,l as a21g8,m as a21g9,n as a21ga,o as a21gb,p as a21gc,r as a21gd,s as a21ge,t as a21gf,u as a21gg,v as a21gh,w as a21gi,x as a21gj,y as a21gk}from'./query-Co2trHrE.mjs';import{DEFAULT_MESSENGER_CONFIG,DEFAULT_QUERY_LIMIT,MAX_QUERY_LIMIT,MessageDirection,MessageStatus,MessageType,MessengerError,MessengerErrorCode,NORMAL_MESSAGE_BYTES_LIMIT,WTS_FILE_BYTES_LIMIT,WTS_MAX_MESSAGE_COUNT}from'./w/messenger/types.mjs';import{t as a21gl}from'./messenger-CjfCX1gd.mjs';import{_ as a21gm,a as a21gn,b as a21go,c as a21gp,d as a21gq,f as a21gr,g as a21gs,h as a21gt,i as a21gu,l as a21gv,m as a21gw,n as a21gx,o as a21gy,p as a21gz,r as a21gA,s as a21gB,t as a21gC,u as a21gD,v as a21gE,y as a21gF}from'./messenger-api-D6aPgQqj.mjs';import{A as a21gG,B as a21gH,C as a21gI,D as a21gJ,E as a21gK,F as a21gL,I as a21gM,L as a21gN,M as a21gO,N as a21gP,O as a21gQ,P as a21gR,R as a21gS,S as a21gT,T as a21gU,V as a21gV,_ as a21gW,a as a21gX,b as a21gY,c as a21gZ,d as a21h0,f as a21h1,g as a21h2,h as a21h3,i as a21h4,j as a21h5,k as a21h6,l as a21h7,m as a21h8,n as a21h9,o as a21ha,p as a21hb,r as a21hc,s as a21hd,t as a21he,u as a21hf,v as a21hg,w as a21hh,x as a21hi,y as a21hj,z as a21hk}from'./w-BImJL-ey.mjs';const SCHEMA_VERSION='1.0.0';function parseSemver(a){const b=a['match'](/^(\d+)\.(\d+)\.(\d+)$/);if(!b)return null;return{'major':parseInt(b[0x1],0xa),'minor':parseInt(b[0x2],0xa),'patch':parseInt(b[0x3],0xa)};}function checkSchemaCompatibility(a,b){const c=parseSemver(a),d=parseSemver(b);if(!c)return{'compatible':![],'reason':'Invalid\x20client\x20version\x20format:\x20'+a};if(!d)return{'compatible':![],'reason':'Invalid\x20server\x20version\x20format:\x20'+b};if(c['major']!==d['major'])return{'compatible':![],'reason':'Major\x20version\x20mismatch:\x20client\x20'+a+'\x20vs\x20server\x20'+b};if(d['minor']<c['minor'])return{'compatible':![],'reason':'Server\x20minor\x20version\x20('+d['minor']+')\x20is\x20lower\x20than\x20client\x20minor\x20version\x20('+c['minor']+')'};return{'compatible':!![]};}export{a21fU as AFFILIATION_TABLES_BY_TYPE,a21fP as AFFILIATION_TABLE_META,Account,a21eb as AllocationMode,a21e0 as AmountType,a21e7 as ArbStatus,a21bD as Arguments,a21bA as AsyncCache,a21f1 as BRIDGE_CURRENT_VERSION,a21f4 as BRIDGE_EVM_ADDRESS_LENGTH,a21fi as BRIDGE_MESSAGE_VERSION,a21hc as BRIDGE_STEP_DESCRIPTIONS,a21fe as BRIDGE_TRANSFER_STATUS_APPROVED,a21f8 as BRIDGE_TRANSFER_STATUS_CLAIMED,a21f6 as BRIDGE_TRANSFER_STATUS_NOT_FOUND,a21eV as BRIDGE_TRANSFER_STATUS_PENDING,BUITIN_IDS,a21y as BaseClient,a21s as BcsEnum,a21o as BcsStruct,a21q as BcsTuple,a21n as BcsType,a21fM as BridgeChainId,a21he as BridgeClient,a21gi as BridgeErrorCode,a21h9 as BridgeNodeClient,a21fW as BridgeTokenId,a21h4 as BridgeTransferDirection,a21gX as BridgeTransferStatus,a21ha as BridgeTransferStep,a21fO as BridgeVersion,a21bn as BrowserPasskeyProvider,BuiltinPermissionIndex,a21g0 as COMMON_MISTAKES,CallAllocation,CallArbitration,a21fB as CallBase,a21fI as CallContact,CallDemand,CallGuard,CallMachine,a21fE as CallOrder,CallPayment,CallPermission,a21fG as CallPersonal,CallProgress,a21fK as CallProof,CallRepository,CallReward,a21fF as CallService,CallTreasury,a21x as ClientCache,a21cL as CoinWrapPrefix,Config,a21cA as ContextType,a21A as CoreClient,CryptoVault,DEFAULT_ACCOUNT_NAME,a21be as DEFAULT_ED25519_DERIVATION_PATH,a21bq as DEFAULT_FALCON512_DERIVATION_PATH,DEFAULT_LIMITS,a21fp as DEFAULT_LOCK_DURATION,DEFAULT_MESSENGER_CONFIG,DEFAULT_QUERY_LIMIT,a21bi as DEFAULT_SECP256K1_DERIVATION_PATH,a21bl as DEFAULT_SECP256R1_DERIVATION_PATH,a21fv as DISCOUNT_TYPE_MINUS,a21eY as DISCOUNT_TYPE_RATES,a21dS as DiscountType,a21cH as ENTITY_CONTACT_ADDRESS,a21cs as ENTITY_LINKER_ADDRESS,a21cd as ENTITY_ORDER_ADDRESS,a21dE as ENTITY_ORDER_ROLE_AGENT,a21e2 as ENTITY_ORDER_ROLE_OWNER,a21cC as ENTITY_PERMISSION_ADDRESS,a21cJ as ENTITY_REGISTRAR_ADDRESS,a21aF as ENTRYPOINT,a21gG as ERC20_TRANSFER_TOPIC,ETH_MAINNET,a21bd as Ed25519Keypair,a21bf as Ed25519PublicKey,a21ch as EntityAddress,EvmAccount,EvmNetworkRegistry,a21aW as FALCON512_PRIVATE_KEY_SIZE,a21g8 as FUNDING_GUIDANCE,a21bp as Falcon512Keypair,a21bo as Falcon512PublicKey,a21b3 as FaucetRateLimitError,a21dO as GUARDINSTRUCT,a21e5 as GUARDQUERY,a21cw as GasCoinType,a21cN as GasTokenType,GetAccountOrMark_Address,GetLocalNamesByAddresses,GetManyAccountOrMark_Address,a21cj as GetObject,a21cm as GetObjectDescription,a21cE as GetObjectExisted,a21b7 as GrpcCoreClient,a21b9 as GrpcTypes,a21bb as GrpcWebFetchTransport,a21gg as INFO_CONSTANT,a21e9 as IdFrom,a21ap as Inputs,a21cy as IsBcsStringLength,a21cq as IsValidArgType,a21co as IsValidBalance,a21cb as IsValidEndpoint,a21F as JsonRpcError,a21C as JsonRpcHTTPTransport,a21aR as Keypair,a21aU as LEGACY_PRIVATE_KEY_SIZE,LocalInfo,LocalInfoContentMaxCount,LocalInfoContentMaxLength,LocalInfoNameDefault,LocalInfoNameMaxLength,LocalMark,LocalMarkNameMaxLength,LocalMarkTagMaxCount,LocalMarkTagMaxLength,a21d5 as LogLevel,a21d2 as Logger,a21g9 as MAINNET_BRIDGE_CONFIG,a21g4 as MAINNET_COMMITTEE_MEMBER_ADDRESSES,a21g3 as MAINNET_COMMITTEE_PUBKEYS,a21fX as MAINNET_COMMITTEE_WEIGHTS,MAX_ACCOUNTS,a21ft as MAX_ADDRESS_COUNT,a21eL as MAX_ADMIN_COUNT,a21es as MAX_AGENT_COUNT,a21fr as MAX_ALLOCATOR_COUNT,a21eN as MAX_ARBITRATION_COUNT,a21ew as MAX_CONSENSUS_REPOSITORIES_COUNT,a21eu as MAX_CONTEXT_REPOSITORY_COUNT,a21eH as MAX_DATA_SIZE,a21cP as MAX_DEPENDED_COUNT,a21cV as MAX_DESCRIPTION_LENGTH,a21fc as MAX_DISCOUNT_COUNT_ONCE,a21eq as MAX_DISCOUNT_RECEIVER_ONCE,a21fb as MAX_DISCOUNT_TOTAL_COUNT,a21eF as MAX_DISPUTE_COUNT,a21eG as MAX_ENTITY_COUNT,a21cf as MAX_ENV_PERMISSION_GUARD_COUNT,a21eI as MAX_EXTERNAL_DEPOSIT_GUARD_COUNT,a21ey as MAX_EXTERNAL_WITHDRAW_GUARD_COUNT,a21eB as MAX_FORWARD_COUNT,a21eE as MAX_FORWARD_ORDER_COUNT,a21eK as MAX_GUARD_COUNT_DEMAND,a21fx as MAX_GUARD_COUNT_PASSPORT,a21er as MAX_GUARD_COUNT_REWARD,a21cT as MAX_GUARD_TABLE_ITEM_LENGTH,a21eQ as MAX_ID_COUNT_ONCE,a21eA as MAX_IM_COUNT,a21c1 as MAX_INPUT_SIZE,a21eP as MAX_ITEM_COUNT,a21bH as MAX_LONG_NAME_LENGTH,MAX_MESSENGER_ACCOUNTS,a21cR as MAX_MULTI_OPERANDS,a21eR as MAX_NAMED_OPERATOR_ADDRESS_COUNT,a21ez as MAX_NAMED_OPERATOR_COUNT,a21c3 as MAX_NAME_LENGTH,a21eD as MAX_NODE_COUNT,a21fk as MAX_NODE_COUNT_ONCHAIN,a21eC as MAX_NODE_PAIR_COUNT,a21dI as MAX_OBJECTS_PER_QUERY,a21eT as MAX_ORDER_ITEM_COUNT,a21bL as MAX_PERMISSION_GUARD_COUNT,a21eS as MAX_PERM_FOR_ENTITY,a21eU as MAX_POLICY_COUNT,a21eJ as MAX_POLICY_DESCRIPTION_LEN,a21ep as MAX_POLICY_GUARD_COUNT,a21f3 as MAX_PROOF_SIZE,a21fn as MAX_PROPOSITION_COUNT,MAX_QUERY_LIMIT,a21fg as MAX_RECIPIENT_COUNT,a21fl as MAX_RECORD_COUNT_REGISTRAR,a21fa as MAX_RECORD_COUNT_REWARD,a21eX as MAX_RECORD_LENGTH,a21fh as MAX_REPOSITORY_COUNT,a21fm as MAX_REQUIRED_INFO_SIZE,a21f0 as MAX_REWARD_COUNT,a21fd as MAX_SALE_COUNT,a21fo as MAX_SERVER_PUBKEY_SIZE,a21f2 as MAX_SERVER_SIGNATURE_SIZE,a21f5 as MAX_SHARING_COUNT,a21fj as MAX_SUBMISSION_SIZE_PASSPORT,a21bJ as MAX_TABLE_SIZE,a21ff as MAX_TAGS_COUNT,a21f9 as MAX_VOTING_GUARD_COUNT,a21f7 as MAX_VOTOR_COUNT,a21eW as MAX_WIP_HASH_LENGTH,a21fq as MAX_WIP_LENGTH,a21a3 as MIST_PER_WOW,a21Y as MOVE_STDLIB_ADDRESS,MessageDirection,MessageStatus,MessageType,a21gl as Messenger,MessengerError,MessengerErrorCode,a21go as MessengerManager,a21bW as Modules,a21aB as MoveErrors,a21by as MultiSigPublicKey,a21bs as MultiSigSigner,NORMAL_MESSAGE_BYTES_LIMIT,a21cv as OBJECT_LINKER_CORE_ADDRESS,a21bF as OBJECT_LINKER_TX_ADDRESS,a21dW as OBJECT_TYPE_DEFINITIONS,a21fw as ONCHAIN_CONSTANTS,a21eZ as ORDER_ROLE_AGENT,a21fu as ORDER_ROLE_OWNER,a21bz as ObjectCache,a21cu as ObjectType,a21bU as OperatorType,a21cZ as OwnedRecordStorage,a21aP as PRIVATE_KEY_SIZE,a21bV as PackageAddress,a21bB as ParallelTransactionExecutor,a21bm as PasskeyKeypair,a21aT as PasskeyPublicKey,a21aL as PublicKey,a21eM as ROLE_ADMIN,a21et as ROLE_ENTITY,a21fs as ROLE_OWNER,a21bY as RecipientType,a21bN as RegistrarAddress,a21fz as ResponseData,SCHEMA_VERSION,a21aH as SIGNATURE_FLAG_TO_SCHEME,a21aG as SIGNATURE_SCHEME_TO_FLAG,a21aJ as SIGNATURE_SCHEME_TO_SIZE,a21cY as SQLiteStorage,a21bh as Secp256k1Keypair,a21bg as Secp256k1PublicKey,a21bk as Secp256r1Keypair,a21bj as Secp256r1PublicKey,SecureAccountStorage,a21bC as SerialTransactionExecutor,a21aM as Signer,a21ak as SimulationError,a21h5 as TOKENS_CLAIMED_TOPIC,a21gO as TOKENS_DEPOSITED_TOPIC,a21gP as TOKENS_DEPOSITED_V2_TOPIC,TokenInfo,a21ao as Transaction,a21ah as TransactionCommands,a21aj as TransactionDataBuilder,a21fN as TransferStatus,a21ed as TreasuryOp,a21t as TypeTagSerializer,a21eO as USER_DEFINED_PERM_INDEX_START,a21ai as UpgradePolicy,a21bQ as ValueType,a21aw as WErrors,a21az as WException,WIP,a21ex as WITHDRAW_DURATION_TIME,a21ev as WOWOK_WTS_PROOF_TYPE,a21j as WOW_ADDRESS_LENGTH,a21X as WOW_CLOCK_OBJECT_ID,a21R as WOW_COIN_REGISTRY_OBJECT_ID,a21ab as WOW_DECIMALS,a21ae as WOW_DENY_LIST_OBJECT_ID,a21T as WOW_ENTITY_CONTACT_OBJECT_ID,a21ad as WOW_ENTITY_OBJECT_ID,a21Q as WOW_ENTITY_ORDER_OBJECT_ID,a21J as WOW_ENTITY_PERMISSION_OBJECT_ID,a21ac as WOW_FRAMEWORK_ADDRESS,a21L as WOW_OBJECT_LINKER_CORE_OBJECT_ID,a21K as WOW_OBJECT_LINKER_TX_OBJECT_ID,a21O as WOW_RANDOM_OBJECT_ID,a21a1 as WOW_REGISTRAR_OBJECT_ID,a21I as WOW_SYSTEM_ADDRESS,a21a0 as WOW_SYSTEM_MODULE_NAME,a21M as WOW_SYSTEM_STATE_OBJECT_ID,a21N as WOW_TYPE_ARG,WTS_FILE_BYTES_LIMIT,WTS_MAX_MESSAGE_COUNT,a21au as WValidate,a21aq as W_ENSURE,a21ax as W_ERROR,a21aA as W_FAILURE,a21aS as W_PRIVATE_KEY_PREFIX,a21ar as W_SAFE,a21av as W_SUCCESS,a21aC as W_VALIDATE_PARAM,WipError,WipSizeError,WipValidationError,a21dK as WitnessSourceType,a21dN as WitnessTargetType,a21bT as WitnessType,a21hj as WowClaimStatus,a21G as WowClient,a21b6 as WowGraphQLClient,a21b4 as WowGraphQLRequestError,a21ba as WowGrpcClient,a21u as WowHTTPStatusError,a21z as WowHTTPTransportError,a21B as WowJsonRpcClient,account_operation,a21c0 as arbitrationFn,a21p as bcs,a21eg as bcsBytesToValue,a21gC as blacklist,a21gI as buildClaimMessage,a21aI as bytesEqual,bytesToBigInt,bytesToHex,checkSchemaCompatibility,a21dJ as checkType,a21hh as claimOnEth,a21gU as claimOnEthBySeq,a21gY as claimOnWow,a21an as coinWithBalance,a21l as compareBcsBytes,a21cX as contactFn,a21d4 as createSensitiveLogger,a21bG as createValueContainer,createWip,a21e4 as data2object,a21aV as decodeWowPrivateKey,a21c6 as demandFn,a21gJ as depositErc20,a21gQ as depositEth,a21h6 as depositFromEth,a21gT as depositFromWow,a21P as deriveDynamicFieldID,a21a8 as deriveObjectID,a21gR as encodeApprove,a21gL as encodeBridgeERC20,a21gM as encodeBridgeERC20V2,a21gN as encodeBridgeETH,a21gS as encodeBridgeETHV2,a21hk as encodeIsTransferProcessed,a21gH as encodeTokenTransferPayloadV2,a21gV as encodeTransferBridgedTokensWithSignatures,a21aQ as encodeWowPrivateKey,a21as as enrichMoveError,a21em as extractCoinType,a21f as extractGenericTypeArg,a21H as extractStatusFromEffectsBcs,a21gx as extractZipFromPlaintext,a21gA as extract_zip_messages,fetch_token_info_operation,a21dZ as filterGuardInstruct,a21gh as findEvmChainConfig,a21gk as findEvmChainConfigByBridgeChainId,a21fZ as findToken,a21gj as findTokenBySymbol,a21U as formatAddress,a21a2 as formatDigest,formatGuardParseErrors,a21aa as formatMist,a21v as formatMoveAbortMessage,a21V as formatUnits,a21gu as friendslist,a21a9 as fromBase58,a21a4 as fromBase64,a21a7 as fromHex,gen_passport,a21fJ as gen_proof,generateNodeComments,generate_wip,a21gn as generate_wts,a21dX as getCallEnvAccount,a21fA as getCoinParam,a21b1 as getFaucetHost,a21aD as getFullnodeUrl,a21aE as getGraphqlUrl,a21dR as getGuardQueryInfo,a21bc as getJsonRpcFullnodeUrl,a21d1 as getLogLevel,a21gy as getMessengerManager,a21at as getMoveErrorDescription,a21dY as getMoveNameFromNumber,a21dQ as getMoveNameFromObjectType,a21dP as getNumberFromMoveName,a21dD as getNumberFromObjectType,a21ef as getNumbersFromObjectTypes,a21el as getObjectTypeDefinition,a21dG as getObjectTypeDefinitionFromNumber,a21ej as getObjectTypeFromMoveName,a21dt as getObjectTypeFromNumber,a21d9 as getObjectTypesFromNumbers,a21ag as getPureBcsSchema,getWowDir,getWowMcpDir,getWowokDataDir,getWowokIndustryDir,getWowokUserDataDir,getWowokWorkspaceDir,guard2file,a21gB as guardlist,hexToBytes,a21eh as idFromToString,a21af as isArgument,isBizPermIndex,a21fy as isCallResultSubmission,a21fT as isEvmChain,a21gK as isEvmNonceAlreadyProcessed,a21bP as isGasTokenType,a21c5 as isThisPackage,a21am as isTransaction,isValidAddress,a21c7 as isValidArray,a21b0 as isValidBIP32Path,a21bO as isValidDescription,isValidEvmAddress,a21aY as isValidHardenedPath,a21bS as isValidHttpUrl,a21dv as isValidIdFromInput,a21cG as isValidLongName,a21bR as isValidName,a21h as isValidNamedPackage,a21d as isValidStructTag,a21a as isValidTransactionDigest,a21c9 as isValidU128,a21c8 as isValidU16,a21ca as isValidU256,a21bZ as isValidU32,a21bE as isValidU64,a21cl as isValidU8,a21dH as isValidValueContainer,a21cM as isValidValueType,a21cB as isValidValueTypeInput,a21cI as isValidWitnessTypeInput,a21g as isValidWowAddress,a21i as isValidWowObjectId,a21ct as isValueTypeNumber,a21ay as isWException,a21ce as isWitnessType,a21g7 as isWowChain,a21b5 as isWowGraphQLClient,a21b8 as isWowGrpcClient,a21E as isWowJsonRpcClient,loadWip,local_info_operation,local_mark_operation,a21d0 as logger,a21cD as machineFn,machineNode2file,a21hd as makeBridgeTransferState,a21gp as mark_conversation_as_viewed,a21gv as mark_messages_as_viewed,a21aK as messageWithIntent,a21aZ as mnemonicToSeed,a21aX as mnemonicToSeedHex,a21b as normalizeStructTag,a21m as normalizeTypeTag,a21e as normalizeWowAddress,a21k as normalizeWowObjectId,a21al as normalizedTypeToMoveTypeSignature,a21dd as numberToObjectType,a21db as objectTypeFromAddress,a21do as objectTypeToNumber,a21cK as object_module_and_name_from_type,a21ci as object_name_from_type,a21ek as owner_receive,a21gZ as parseEthClaimEvent,a21h7 as parseEthDepositEvent,parseGuardFile,parseGuardFromMarkdown,a21dV as parseIdFrom,a21du as parseObjectType,a21bu as parsePartialSignatures,a21da as parseRecipient,a21aN as parseSerializedSignature,a21c as parseStructTag,a21W as parseToMist,a21a6 as parseToUnits,a21w as parseTransactionBcs,a21D as parseTransactionEffectsBcs,a21ei as parseTypeParameter,a21cx as parseValueType,a21cO as parseWitnessType,a21fL as parseWowokEventItem,a21dw as permission_set,privateKeyToAddress,a21gD as proof_message,a21bw as publicKeyFromRawBytes,a21bt as publicKeyFromWowBytes,a21gq as pull_messages,a21r as pureBcsSchemaFromTypeName,a21hf as queryErc20Balance,a21h0 as queryEthBalance,a21h1 as queryEthTxConfirmations,a21hb as queryEthTxReceipt,a21h8 as queryEvmToWowTransferStatus,a21fD as queryObjectWithType,a21fC as queryObjectsWithType,a21d7 as queryOrdersByUser,a21g1 as queryPermissions,a21g2 as queryProtocolInfo,a21dU as queryTableItem_AddressMark,a21dm as queryTableItem_DemandPresenter,a21dn as queryTableItem_EntityContact,a21dq as queryTableItem_EntityLinker,a21df as queryTableItem_EntityOrder,a21di as queryTableItem_EntityPermission,a21dl as queryTableItem_EntityRegistrar,a21ds as queryTableItem_MachineNode,a21en as queryTableItem_ObjectLinkerCore,a21d8 as queryTableItem_ObjectLinkerTx,a21dy as queryTableItem_PermissionPerm,a21dh as queryTableItem_ProgressHistory,a21dx as queryTableItem_RepositoryData,a21dz as queryTableItem_RewardRecord,a21dg as queryTableItem_ServiceOrders,a21dk as queryTableItem_TreasuryHistory,a21hi as queryWowClaimStatus,a21h3 as queryWowToEvmTransferStatus,a21h2 as queryWowTx,query_account,query_account_list,a21gf as query_address_activity,a21ga as query_address_activity_json,a21e6 as query_address_profile,a21dj as query_address_profiles,a21fQ as query_affiliations,a21dB as query_arbs,a21gc as query_common_mistakes,a21dA as query_demands,a21g6 as query_events,a21fR as query_events_json,query_local_info,query_local_info_default,query_local_info_list,query_local_mark,query_local_mark_list,query_local_token_list,a21gd as query_object_history,a21g5 as query_object_history_json,a21fY as query_object_last_updated,a21dC as query_object_token_type,a21dr as query_objects,a21d6 as query_objects_json,a21dM as query_personal,a21eo as query_received,a21fS as query_serviceContext,a21ec as query_services,a21e1 as query_shared_objects,a21e8 as query_shared_objects_json,a21dT as query_table,a21dF as query_tableItem,a21e3 as query_table_json,a21gb as query_transaction,a21ge as query_transaction_json,a21ea as raw2type,registerBridgeEvmNetworks,a21ck as repositoryFn,a21b2 as requestWowFromFaucetV2,a21ee as resolveCallEnv,a21dL as restoreNodeFromOutput,a21cn as rewardFn,safeFilename,a21gr as send_file,a21gz as send_message,a21cF as serviceFn,a21d3 as setLogLevel,a21gw as settings,signEIP1559,signLegacy,sign_wip,a21gt as sign_wts,a21Z as toBase58,a21S as toBase64,toChecksumAddress,a21a5 as toHex,a21aO as toSerializedSignature,a21cz as toTxAddress,a21cr as toTxAddressVec,a21cp as toTxObject,a21cc as toTxReceivingObject,a21cQ as toTxString,a21cW as toTxU128,a21cg as toTxU16,a21cU as toTxU16Vec,a21c2 as toTxU256,a21bI as toTxU32,a21cS as toTxU64,a21c4 as toTxU8,a21fH as transformPersonalInput,transformRewardInput,a21bM as treasuryFn,a21de as uint2address,a21dc as validObjects,validateGuardData,validateGuardNode,a21dp as valueToBcsBytes,a21bK as valueTypeToString,a21fV as verifyCommitteeConsistency,a21br as verifyPersonalMessageSignature,a21bv as verifySignature,a21bx as verifyTransactionSignature,verifyWip,verify_wip,a21gs as verify_wts,a21gW as waitForEthTx,a21hg as waitForWowTx,a21gm as watch_conversations,a21gE as watch_messages,wip2html,wipToHtml,a21bX as witnessTypeToString,workspaceExportPath,a21gF as wts2html};
1
+ import{a as a21a,c as a21b,d as a21c,i as a21d,l as a21e,n as a21f,o as a21g,r as a21h,s as a21i,t as a21j,u as a21k}from'./wow-types-DctQuD2J.mjs';import{a as a21l,d as a21m,i as a21n,n as a21o,o as a21p,r as a21q,s as a21r,t as a21s,u as a21t}from'./bcs-Cjvfeyqf.mjs';import{c as a21u,d as a21v,f as a21w,g as a21x,h as a21y,l as a21z,m as a21A,n as a21B,o as a21C,p as a21D,r as a21E,s as a21F,t as a21G,u as a21H}from'./client-B2tx5llp.mjs';import{A as a21I,C as a21J,D as a21K,E as a21L,M as a21M,N as a21N,O as a21O,P as a21P,S as a21Q,_ as a21R,a as a21S,b as a21T,c as a21U,d as a21V,f as a21W,g as a21X,h as a21Y,i as a21Z,j as a21a0,k as a21a1,l as a21a2,m as a21a3,n as a21a4,o as a21a5,p as a21a6,r as a21a7,s as a21a8,t as a21a9,u as a21aa,v as a21ab,w as a21ac,x as a21ad,y as a21ae}from'./utils-CtyqDDA5.mjs';import{_ as a21af,c as a21ag,d as a21ah,f as a21ai,g as a21aj,h as a21ak,l as a21al,n as a21am,r as a21an,t as a21ao,u as a21ap}from'./Transaction-D1AlW3t_.mjs';import{a as a21aq,c as a21ar,d as a21as,f as a21at,i as a21au,l as a21av,n as a21aw,o as a21ax,p as a21ay,r as a21az,s as a21aA,t as a21aB,u as a21aC}from'./exception-Xd2RFs2i.mjs';import{n as a21aD,r as a21aE,t as a21aF}from'./network-y8yMus5q.mjs';import{a as a21aG,i as a21aH,n as a21aI,o as a21aJ,s as a21aK,t as a21aL}from'./publickey-CcBVAm0Y.mjs';import{a as a21aM,d as a21aN,f as a21aO,i as a21aP,l as a21aQ,n as a21aR,o as a21aS,p as a21aT,r as a21aU,s as a21aV,t as a21aW}from'./keypair-Y6T-6uC9.mjs';import{i as a21aX,n as a21aY,r as a21aZ,t as a21b0}from'./mnemonics-C6qlqegr.mjs';import{n as a21b1,r as a21b2,t as a21b3}from'./faucet-RNvBvVJf.mjs';import{n as a21b4,r as a21b5,t as a21b6}from'./graphql-JsWZ_J30.mjs';import{a as a21b7,i as a21b8,n as a21b9,r as a21ba,t as a21bb}from'./grpc-BvYW9GnF.mjs';import{t as a21bc}from'./jsonRpc-1qOo1zjv.mjs';import{n as a21bd,t as a21be}from'./ed25519-CQkeZzxT.mjs';import{t as a21bf}from'./publickey-CZRptlhE.mjs';import{t as a21bg}from'./publickey-CQJKhU0a.mjs';import{n as a21bh,t as a21bi}from'./secp256k1-Pg5TWkCH.mjs';import{t as a21bj}from'./publickey-Co-74gWq.mjs';import{n as a21bk,t as a21bl}from'./secp256r1-VjWddrx1.mjs';import{n as a21bm,t as a21bn}from'./passkey-C1gbCkoK.mjs';import{t as a21bo}from'./publickey-x1pzVVw_.mjs';import{n as a21bp,t as a21bq}from'./falcon512-Dl5rncUq.mjs';import{a as a21br,c as a21bs,i as a21bt,n as a21bu,o as a21bv,r as a21bw,s as a21bx,t as a21by}from'./publickey-Kr58241y.mjs';import'./multisig/index.mjs';import{a as a21bz,i as a21bA,n as a21bB,r as a21bC,t as a21bD}from'./transactions-_w64QTEl.mjs';import{$ as a21bE,A as a21bF,B as a21bG,C as a21bH,Ct as a21bI,D as a21bJ,Dt as a21bK,E as a21bL,Et as a21bM,F as a21bN,G as a21bO,H as a21bP,I as a21bQ,J as a21bR,K as a21bS,L as a21bT,M as a21bU,N as a21bV,O as a21bW,Ot as a21bX,P as a21bY,Q as a21bZ,R as a21c0,S as a21c1,St as a21c2,T as a21c3,Tt as a21c4,U as a21c5,V as a21c6,W as a21c7,X as a21c8,Y as a21c9,Z as a21ca,_ as a21cb,_t as a21cc,a as a21cd,at as a21ce,b as a21cf,bt as a21cg,c as a21ch,ct as a21ci,d as a21cj,dt as a21ck,et as a21cl,f as a21cm,ft as a21cn,g as a21co,gt as a21cp,h as a21cq,ht as a21cr,i as a21cs,it as a21ct,j as a21cu,k as a21cv,l as a21cw,lt as a21cx,m as a21cy,mt as a21cz,n as a21cA,nt as a21cB,o as a21cC,ot as a21cD,p as a21cE,pt as a21cF,q as a21cG,r as a21cH,rt as a21cI,s as a21cJ,st as a21cK,t as a21cL,tt as a21cM,u as a21cN,ut as a21cO,v as a21cP,vt as a21cQ,w as a21cR,wt as a21cS,x as a21cT,xt as a21cU,y as a21cV,yt as a21cW,z as a21cX}from'./common-BXJtePqk.mjs';import{getWowDir,getWowMcpDir,getWowokDataDir,getWowokIndustryDir,getWowokUserDataDir,getWowokWorkspaceDir,safeFilename,workspaceExportPath}from'./w/local/util.mjs';import{i as a21cY,n as a21cZ}from'./storage-D1bEi2b7.mjs';import{Config}from'./w/local/config.mjs';import{BUITIN_IDS,LocalInfo,LocalInfoContentMaxCount,LocalInfoContentMaxLength,LocalInfoNameDefault,LocalInfoNameMaxLength,LocalMark,LocalMarkNameMaxLength,LocalMarkTagMaxCount,LocalMarkTagMaxLength,isValidAddress}from'./w/local/local.mjs';import{a as a21d0,i as a21d1,n as a21d2,o as a21d3,r as a21d4,t as a21d5}from'./logger-Cs5Mf7Mf.mjs';import{CryptoVault,SecureAccountStorage}from'./w/local/secure-storage.mjs';import{Account,DEFAULT_ACCOUNT_NAME,MAX_ACCOUNTS,MAX_MESSENGER_ACCOUNTS}from'./w/local/account.mjs';import{TokenInfo}from'./w/local/token.mjs';import{bytesToBigInt,bytesToHex,hexToBytes,isValidEvmAddress,privateKeyToAddress,signEIP1559,signLegacy,toChecksumAddress}from'./w/local/evm/rlp.mjs';import{ETH_MAINNET,EvmNetworkRegistry,registerBridgeEvmNetworks}from'./w/local/evm/networks.mjs';import{EvmAccount}from'./w/local/evm-account.mjs';import{DEFAULT_LIMITS,WIP,WipError,WipSizeError,WipValidationError,createWip,generate_wip,loadWip,sign_wip,verifyWip,verify_wip,wip2html,wipToHtml}from'./w/local/wip.mjs';import{GetAccountOrMark_Address,GetLocalNamesByAddresses,GetManyAccountOrMark_Address,account_operation,fetch_token_info_operation,local_info_operation,local_mark_operation,query_account,query_account_list,query_local_info,query_local_info_default,query_local_info_list,query_local_mark,query_local_mark_list,query_local_token_list}from'./w/local/index.mjs';import{$ as a21d6,A as a21d7,B as a21d8,C as a21d9,Ct as a21da,D as a21db,Dt as a21dc,E as a21dd,Et as a21de,F as a21df,G as a21dg,H as a21dh,I as a21di,J as a21dj,K as a21dk,L as a21dl,M as a21dm,N as a21dn,O as a21do,Ot as a21dp,P as a21dq,Q as a21dr,R as a21ds,S as a21dt,St as a21du,T as a21dv,Tt as a21dw,U as a21dx,V as a21dy,W as a21dz,X as a21dA,Y as a21dB,Z as a21dC,_ as a21dD,a as a21dE,at as a21dF,b as a21dG,bt as a21dH,c as a21dI,ct as a21dJ,d as a21dK,dt as a21dL,et as a21dM,f as a21dN,ft as a21dO,g as a21dP,h as a21dQ,ht as a21dR,i as a21dS,it as a21dT,j as a21dU,k as a21dV,l as a21dW,lt as a21dX,m as a21dY,mt as a21dZ,n as a21e0,nt as a21e1,o as a21e2,ot as a21e3,p as a21e4,pt as a21e5,q as a21e6,r as a21e7,rt as a21e8,s as a21e9,st as a21ea,t as a21eb,tt as a21ec,u as a21ed,ut as a21ee,v as a21ef,vt as a21eg,w as a21eh,wt as a21ei,x as a21ej,xt as a21ek,y as a21el,yt as a21em,z as a21en}from'./object-DtJ7wEuV.mjs';import{t as a21eo}from'./received-B_a2XG4d.mjs';import{$ as a21ep,A as a21eq,B as a21er,C as a21es,Ct as a21et,D as a21eu,Dt as a21ev,E as a21ew,Et as a21ex,F as a21ey,G as a21ez,H as a21eA,I as a21eB,J as a21eC,K as a21eD,L as a21eE,M as a21eF,N as a21eG,O as a21eH,P as a21eI,Q as a21eJ,R as a21eK,S as a21eL,St as a21eM,T as a21eN,Tt as a21eO,U as a21eP,V as a21eQ,W as a21eR,X as a21eS,Y as a21eT,Z as a21eU,_ as a21eV,_t as a21eW,at as a21eX,b as a21eY,bt as a21eZ,ct as a21f0,d as a21f1,dt as a21f2,et as a21f3,f as a21f4,ft as a21f5,g as a21f6,gt as a21f7,h as a21f8,ht as a21f9,it as a21fa,j as a21fb,k as a21fc,lt as a21fd,m as a21fe,mt as a21ff,nt as a21fg,ot as a21fh,p as a21fi,pt as a21fj,q as a21fk,rt as a21fl,st as a21fm,tt as a21fn,ut as a21fo,v as a21fp,vt as a21fq,w as a21fr,wt as a21fs,x as a21ft,xt as a21fu,y as a21fv,yt as a21fw,z as a21fx}from'./passport-CmJgXxjm.mjs';import{i as a21fy,n as a21fz,r as a21fA,t as a21fB}from'./base-DWuhAtcT.mjs';import{CallPayment}from'./w/call/payment.mjs';import{CallAllocation}from'./w/call/allocation.mjs';import{BuiltinPermissionIndex,CallPermission,isBizPermIndex}from'./w/call/permission.mjs';import{CallArbitration}from'./w/call/arbitration.mjs';import{n as a21fC,t as a21fD}from'./util-DqqLJ3bi.mjs';import{CallDemand}from'./w/call/demand.mjs';import{CallGuard,formatGuardParseErrors,gen_passport,generateNodeComments,guard2file,parseGuardFile,parseGuardFromMarkdown,validateGuardData,validateGuardNode}from'./w/call/guard.mjs';import{CallProgress}from'./w/call/progress.mjs';import{CallMachine,machineNode2file}from'./w/call/machine.mjs';import{$ as a21fE,t as a21fF}from'./service-yA7hNy3J.mjs';import{CallReward,transformRewardInput}from'./w/call/reward.mjs';import{CallRepository}from'./w/call/repository.mjs';import{CallTreasury}from'./w/call/treasury.mjs';import{n as a21fG,r as a21fH,t as a21fI}from'./call-CVIyKU1r.mjs';import{n as a21fJ,t as a21fK}from'./proof-BwJ-DCF2.mjs';import{A as a21fL,C as a21fM,D as a21fN,E as a21fO,F as a21fP,I as a21fQ,M as a21fR,N as a21fS,O as a21fT,P as a21fU,S as a21fV,T as a21fW,_ as a21fX,a as a21fY,b as a21fZ,c as a21g0,d as a21g1,f as a21g2,g as a21g3,h as a21g4,i as a21g5,j as a21g6,k as a21g7,l as a21g8,m as a21g9,n as a21ga,o as a21gb,p as a21gc,r as a21gd,s as a21ge,t as a21gf,u as a21gg,v as a21gh,w as a21gi,x as a21gj,y as a21gk}from'./query-Cxz7md7P.mjs';import{DEFAULT_MESSENGER_CONFIG,DEFAULT_QUERY_LIMIT,MAX_QUERY_LIMIT,MessageDirection,MessageStatus,MessageType,MessengerError,MessengerErrorCode,NORMAL_MESSAGE_BYTES_LIMIT,WTS_FILE_BYTES_LIMIT,WTS_MAX_MESSAGE_COUNT}from'./w/messenger/types.mjs';import{t as a21gl}from'./messenger-CeB-Oyvu.mjs';import{_ as a21gm,a as a21gn,b as a21go,c as a21gp,d as a21gq,f as a21gr,g as a21gs,h as a21gt,i as a21gu,l as a21gv,m as a21gw,n as a21gx,o as a21gy,p as a21gz,r as a21gA,s as a21gB,t as a21gC,u as a21gD,v as a21gE,y as a21gF}from'./messenger-api-W1DETd-_.mjs';import{A as a21gG,B as a21gH,C as a21gI,D as a21gJ,E as a21gK,F as a21gL,I as a21gM,L as a21gN,M as a21gO,N as a21gP,O as a21gQ,P as a21gR,R as a21gS,S as a21gT,T as a21gU,V as a21gV,_ as a21gW,a as a21gX,b as a21gY,c as a21gZ,d as a21h0,f as a21h1,g as a21h2,h as a21h3,i as a21h4,j as a21h5,k as a21h6,l as a21h7,m as a21h8,n as a21h9,o as a21ha,p as a21hb,r as a21hc,s as a21hd,t as a21he,u as a21hf,v as a21hg,w as a21hh,x as a21hi,y as a21hj,z as a21hk}from'./w-De1YQOs9.mjs';const SCHEMA_VERSION='1.0.0';function parseSemver(a){const b=a['match'](/^(\d+)\.(\d+)\.(\d+)$/);if(!b)return null;return{'major':parseInt(b[0x1],0xa),'minor':parseInt(b[0x2],0xa),'patch':parseInt(b[0x3],0xa)};}function checkSchemaCompatibility(a,b){const c=parseSemver(a),d=parseSemver(b);if(!c)return{'compatible':![],'reason':'Invalid\x20client\x20version\x20format:\x20'+a};if(!d)return{'compatible':![],'reason':'Invalid\x20server\x20version\x20format:\x20'+b};if(c['major']!==d['major'])return{'compatible':![],'reason':'Major\x20version\x20mismatch:\x20client\x20'+a+'\x20vs\x20server\x20'+b};if(d['minor']<c['minor'])return{'compatible':![],'reason':'Server\x20minor\x20version\x20('+d['minor']+')\x20is\x20lower\x20than\x20client\x20minor\x20version\x20('+c['minor']+')'};return{'compatible':!![]};}export{a21fU as AFFILIATION_TABLES_BY_TYPE,a21fP as AFFILIATION_TABLE_META,Account,a21eb as AllocationMode,a21e0 as AmountType,a21e7 as ArbStatus,a21bD as Arguments,a21bA as AsyncCache,a21f1 as BRIDGE_CURRENT_VERSION,a21f4 as BRIDGE_EVM_ADDRESS_LENGTH,a21fi as BRIDGE_MESSAGE_VERSION,a21hc as BRIDGE_STEP_DESCRIPTIONS,a21fe as BRIDGE_TRANSFER_STATUS_APPROVED,a21f8 as BRIDGE_TRANSFER_STATUS_CLAIMED,a21f6 as BRIDGE_TRANSFER_STATUS_NOT_FOUND,a21eV as BRIDGE_TRANSFER_STATUS_PENDING,BUITIN_IDS,a21y as BaseClient,a21s as BcsEnum,a21o as BcsStruct,a21q as BcsTuple,a21n as BcsType,a21fM as BridgeChainId,a21he as BridgeClient,a21gi as BridgeErrorCode,a21h9 as BridgeNodeClient,a21fW as BridgeTokenId,a21h4 as BridgeTransferDirection,a21gX as BridgeTransferStatus,a21ha as BridgeTransferStep,a21fO as BridgeVersion,a21bn as BrowserPasskeyProvider,BuiltinPermissionIndex,a21g0 as COMMON_MISTAKES,CallAllocation,CallArbitration,a21fB as CallBase,a21fI as CallContact,CallDemand,CallGuard,CallMachine,a21fE as CallOrder,CallPayment,CallPermission,a21fG as CallPersonal,CallProgress,a21fK as CallProof,CallRepository,CallReward,a21fF as CallService,CallTreasury,a21x as ClientCache,a21cL as CoinWrapPrefix,Config,a21cA as ContextType,a21A as CoreClient,CryptoVault,DEFAULT_ACCOUNT_NAME,a21be as DEFAULT_ED25519_DERIVATION_PATH,a21bq as DEFAULT_FALCON512_DERIVATION_PATH,DEFAULT_LIMITS,a21fp as DEFAULT_LOCK_DURATION,DEFAULT_MESSENGER_CONFIG,DEFAULT_QUERY_LIMIT,a21bi as DEFAULT_SECP256K1_DERIVATION_PATH,a21bl as DEFAULT_SECP256R1_DERIVATION_PATH,a21fv as DISCOUNT_TYPE_MINUS,a21eY as DISCOUNT_TYPE_RATES,a21dS as DiscountType,a21cH as ENTITY_CONTACT_ADDRESS,a21cs as ENTITY_LINKER_ADDRESS,a21cd as ENTITY_ORDER_ADDRESS,a21dE as ENTITY_ORDER_ROLE_AGENT,a21e2 as ENTITY_ORDER_ROLE_OWNER,a21cC as ENTITY_PERMISSION_ADDRESS,a21cJ as ENTITY_REGISTRAR_ADDRESS,a21aF as ENTRYPOINT,a21gG as ERC20_TRANSFER_TOPIC,ETH_MAINNET,a21bd as Ed25519Keypair,a21bf as Ed25519PublicKey,a21ch as EntityAddress,EvmAccount,EvmNetworkRegistry,a21aW as FALCON512_PRIVATE_KEY_SIZE,a21g8 as FUNDING_GUIDANCE,a21bp as Falcon512Keypair,a21bo as Falcon512PublicKey,a21b3 as FaucetRateLimitError,a21dO as GUARDINSTRUCT,a21e5 as GUARDQUERY,a21cw as GasCoinType,a21cN as GasTokenType,GetAccountOrMark_Address,GetLocalNamesByAddresses,GetManyAccountOrMark_Address,a21cj as GetObject,a21cm as GetObjectDescription,a21cE as GetObjectExisted,a21b7 as GrpcCoreClient,a21b9 as GrpcTypes,a21bb as GrpcWebFetchTransport,a21gg as INFO_CONSTANT,a21e9 as IdFrom,a21ap as Inputs,a21cy as IsBcsStringLength,a21cq as IsValidArgType,a21co as IsValidBalance,a21cb as IsValidEndpoint,a21F as JsonRpcError,a21C as JsonRpcHTTPTransport,a21aR as Keypair,a21aU as LEGACY_PRIVATE_KEY_SIZE,LocalInfo,LocalInfoContentMaxCount,LocalInfoContentMaxLength,LocalInfoNameDefault,LocalInfoNameMaxLength,LocalMark,LocalMarkNameMaxLength,LocalMarkTagMaxCount,LocalMarkTagMaxLength,a21d5 as LogLevel,a21d2 as Logger,a21g9 as MAINNET_BRIDGE_CONFIG,a21g4 as MAINNET_COMMITTEE_MEMBER_ADDRESSES,a21g3 as MAINNET_COMMITTEE_PUBKEYS,a21fX as MAINNET_COMMITTEE_WEIGHTS,MAX_ACCOUNTS,a21ft as MAX_ADDRESS_COUNT,a21eL as MAX_ADMIN_COUNT,a21es as MAX_AGENT_COUNT,a21fr as MAX_ALLOCATOR_COUNT,a21eN as MAX_ARBITRATION_COUNT,a21ew as MAX_CONSENSUS_REPOSITORIES_COUNT,a21eu as MAX_CONTEXT_REPOSITORY_COUNT,a21eH as MAX_DATA_SIZE,a21cP as MAX_DEPENDED_COUNT,a21cV as MAX_DESCRIPTION_LENGTH,a21fc as MAX_DISCOUNT_COUNT_ONCE,a21eq as MAX_DISCOUNT_RECEIVER_ONCE,a21fb as MAX_DISCOUNT_TOTAL_COUNT,a21eF as MAX_DISPUTE_COUNT,a21eG as MAX_ENTITY_COUNT,a21cf as MAX_ENV_PERMISSION_GUARD_COUNT,a21eI as MAX_EXTERNAL_DEPOSIT_GUARD_COUNT,a21ey as MAX_EXTERNAL_WITHDRAW_GUARD_COUNT,a21eB as MAX_FORWARD_COUNT,a21eE as MAX_FORWARD_ORDER_COUNT,a21eK as MAX_GUARD_COUNT_DEMAND,a21fx as MAX_GUARD_COUNT_PASSPORT,a21er as MAX_GUARD_COUNT_REWARD,a21cT as MAX_GUARD_TABLE_ITEM_LENGTH,a21eQ as MAX_ID_COUNT_ONCE,a21eA as MAX_IM_COUNT,a21c1 as MAX_INPUT_SIZE,a21eP as MAX_ITEM_COUNT,a21bH as MAX_LONG_NAME_LENGTH,MAX_MESSENGER_ACCOUNTS,a21cR as MAX_MULTI_OPERANDS,a21eR as MAX_NAMED_OPERATOR_ADDRESS_COUNT,a21ez as MAX_NAMED_OPERATOR_COUNT,a21c3 as MAX_NAME_LENGTH,a21eD as MAX_NODE_COUNT,a21fk as MAX_NODE_COUNT_ONCHAIN,a21eC as MAX_NODE_PAIR_COUNT,a21dI as MAX_OBJECTS_PER_QUERY,a21eT as MAX_ORDER_ITEM_COUNT,a21bL as MAX_PERMISSION_GUARD_COUNT,a21eS as MAX_PERM_FOR_ENTITY,a21eU as MAX_POLICY_COUNT,a21eJ as MAX_POLICY_DESCRIPTION_LEN,a21ep as MAX_POLICY_GUARD_COUNT,a21f3 as MAX_PROOF_SIZE,a21fn as MAX_PROPOSITION_COUNT,MAX_QUERY_LIMIT,a21fg as MAX_RECIPIENT_COUNT,a21fl as MAX_RECORD_COUNT_REGISTRAR,a21fa as MAX_RECORD_COUNT_REWARD,a21eX as MAX_RECORD_LENGTH,a21fh as MAX_REPOSITORY_COUNT,a21fm as MAX_REQUIRED_INFO_SIZE,a21f0 as MAX_REWARD_COUNT,a21fd as MAX_SALE_COUNT,a21fo as MAX_SERVER_PUBKEY_SIZE,a21f2 as MAX_SERVER_SIGNATURE_SIZE,a21f5 as MAX_SHARING_COUNT,a21fj as MAX_SUBMISSION_SIZE_PASSPORT,a21bJ as MAX_TABLE_SIZE,a21ff as MAX_TAGS_COUNT,a21f9 as MAX_VOTING_GUARD_COUNT,a21f7 as MAX_VOTOR_COUNT,a21eW as MAX_WIP_HASH_LENGTH,a21fq as MAX_WIP_LENGTH,a21a3 as MIST_PER_WOW,a21Y as MOVE_STDLIB_ADDRESS,MessageDirection,MessageStatus,MessageType,a21gl as Messenger,MessengerError,MessengerErrorCode,a21go as MessengerManager,a21bW as Modules,a21aB as MoveErrors,a21by as MultiSigPublicKey,a21bs as MultiSigSigner,NORMAL_MESSAGE_BYTES_LIMIT,a21cv as OBJECT_LINKER_CORE_ADDRESS,a21bF as OBJECT_LINKER_TX_ADDRESS,a21dW as OBJECT_TYPE_DEFINITIONS,a21fw as ONCHAIN_CONSTANTS,a21eZ as ORDER_ROLE_AGENT,a21fu as ORDER_ROLE_OWNER,a21bz as ObjectCache,a21cu as ObjectType,a21bU as OperatorType,a21cZ as OwnedRecordStorage,a21aP as PRIVATE_KEY_SIZE,a21bV as PackageAddress,a21bB as ParallelTransactionExecutor,a21bm as PasskeyKeypair,a21aT as PasskeyPublicKey,a21aL as PublicKey,a21eM as ROLE_ADMIN,a21et as ROLE_ENTITY,a21fs as ROLE_OWNER,a21bY as RecipientType,a21bN as RegistrarAddress,a21fz as ResponseData,SCHEMA_VERSION,a21aH as SIGNATURE_FLAG_TO_SCHEME,a21aG as SIGNATURE_SCHEME_TO_FLAG,a21aJ as SIGNATURE_SCHEME_TO_SIZE,a21cY as SQLiteStorage,a21bh as Secp256k1Keypair,a21bg as Secp256k1PublicKey,a21bk as Secp256r1Keypair,a21bj as Secp256r1PublicKey,SecureAccountStorage,a21bC as SerialTransactionExecutor,a21aM as Signer,a21ak as SimulationError,a21h5 as TOKENS_CLAIMED_TOPIC,a21gO as TOKENS_DEPOSITED_TOPIC,a21gP as TOKENS_DEPOSITED_V2_TOPIC,TokenInfo,a21ao as Transaction,a21ah as TransactionCommands,a21aj as TransactionDataBuilder,a21fN as TransferStatus,a21ed as TreasuryOp,a21t as TypeTagSerializer,a21eO as USER_DEFINED_PERM_INDEX_START,a21ai as UpgradePolicy,a21bQ as ValueType,a21aw as WErrors,a21az as WException,WIP,a21ex as WITHDRAW_DURATION_TIME,a21ev as WOWOK_WTS_PROOF_TYPE,a21j as WOW_ADDRESS_LENGTH,a21X as WOW_CLOCK_OBJECT_ID,a21R as WOW_COIN_REGISTRY_OBJECT_ID,a21ab as WOW_DECIMALS,a21ae as WOW_DENY_LIST_OBJECT_ID,a21T as WOW_ENTITY_CONTACT_OBJECT_ID,a21ad as WOW_ENTITY_OBJECT_ID,a21Q as WOW_ENTITY_ORDER_OBJECT_ID,a21J as WOW_ENTITY_PERMISSION_OBJECT_ID,a21ac as WOW_FRAMEWORK_ADDRESS,a21L as WOW_OBJECT_LINKER_CORE_OBJECT_ID,a21K as WOW_OBJECT_LINKER_TX_OBJECT_ID,a21O as WOW_RANDOM_OBJECT_ID,a21a1 as WOW_REGISTRAR_OBJECT_ID,a21I as WOW_SYSTEM_ADDRESS,a21a0 as WOW_SYSTEM_MODULE_NAME,a21M as WOW_SYSTEM_STATE_OBJECT_ID,a21N as WOW_TYPE_ARG,WTS_FILE_BYTES_LIMIT,WTS_MAX_MESSAGE_COUNT,a21au as WValidate,a21aq as W_ENSURE,a21ax as W_ERROR,a21aA as W_FAILURE,a21aS as W_PRIVATE_KEY_PREFIX,a21ar as W_SAFE,a21av as W_SUCCESS,a21aC as W_VALIDATE_PARAM,WipError,WipSizeError,WipValidationError,a21dK as WitnessSourceType,a21dN as WitnessTargetType,a21bT as WitnessType,a21hj as WowClaimStatus,a21G as WowClient,a21b6 as WowGraphQLClient,a21b4 as WowGraphQLRequestError,a21ba as WowGrpcClient,a21u as WowHTTPStatusError,a21z as WowHTTPTransportError,a21B as WowJsonRpcClient,account_operation,a21c0 as arbitrationFn,a21p as bcs,a21eg as bcsBytesToValue,a21gC as blacklist,a21gI as buildClaimMessage,a21aI as bytesEqual,bytesToBigInt,bytesToHex,checkSchemaCompatibility,a21dJ as checkType,a21hh as claimOnEth,a21gU as claimOnEthBySeq,a21gY as claimOnWow,a21an as coinWithBalance,a21l as compareBcsBytes,a21cX as contactFn,a21d4 as createSensitiveLogger,a21bG as createValueContainer,createWip,a21e4 as data2object,a21aV as decodeWowPrivateKey,a21c6 as demandFn,a21gJ as depositErc20,a21gQ as depositEth,a21h6 as depositFromEth,a21gT as depositFromWow,a21P as deriveDynamicFieldID,a21a8 as deriveObjectID,a21gR as encodeApprove,a21gL as encodeBridgeERC20,a21gM as encodeBridgeERC20V2,a21gN as encodeBridgeETH,a21gS as encodeBridgeETHV2,a21hk as encodeIsTransferProcessed,a21gH as encodeTokenTransferPayloadV2,a21gV as encodeTransferBridgedTokensWithSignatures,a21aQ as encodeWowPrivateKey,a21as as enrichMoveError,a21em as extractCoinType,a21f as extractGenericTypeArg,a21H as extractStatusFromEffectsBcs,a21gx as extractZipFromPlaintext,a21gA as extract_zip_messages,fetch_token_info_operation,a21dZ as filterGuardInstruct,a21gh as findEvmChainConfig,a21gk as findEvmChainConfigByBridgeChainId,a21fZ as findToken,a21gj as findTokenBySymbol,a21U as formatAddress,a21a2 as formatDigest,formatGuardParseErrors,a21aa as formatMist,a21v as formatMoveAbortMessage,a21V as formatUnits,a21gu as friendslist,a21a9 as fromBase58,a21a4 as fromBase64,a21a7 as fromHex,gen_passport,a21fJ as gen_proof,generateNodeComments,generate_wip,a21gn as generate_wts,a21dX as getCallEnvAccount,a21fA as getCoinParam,a21b1 as getFaucetHost,a21aD as getFullnodeUrl,a21aE as getGraphqlUrl,a21dR as getGuardQueryInfo,a21bc as getJsonRpcFullnodeUrl,a21d1 as getLogLevel,a21gy as getMessengerManager,a21at as getMoveErrorDescription,a21dY as getMoveNameFromNumber,a21dQ as getMoveNameFromObjectType,a21dP as getNumberFromMoveName,a21dD as getNumberFromObjectType,a21ef as getNumbersFromObjectTypes,a21el as getObjectTypeDefinition,a21dG as getObjectTypeDefinitionFromNumber,a21ej as getObjectTypeFromMoveName,a21dt as getObjectTypeFromNumber,a21d9 as getObjectTypesFromNumbers,a21ag as getPureBcsSchema,getWowDir,getWowMcpDir,getWowokDataDir,getWowokIndustryDir,getWowokUserDataDir,getWowokWorkspaceDir,guard2file,a21gB as guardlist,hexToBytes,a21eh as idFromToString,a21af as isArgument,isBizPermIndex,a21fy as isCallResultSubmission,a21fT as isEvmChain,a21gK as isEvmNonceAlreadyProcessed,a21bP as isGasTokenType,a21c5 as isThisPackage,a21am as isTransaction,isValidAddress,a21c7 as isValidArray,a21b0 as isValidBIP32Path,a21bO as isValidDescription,isValidEvmAddress,a21aY as isValidHardenedPath,a21bS as isValidHttpUrl,a21dv as isValidIdFromInput,a21cG as isValidLongName,a21bR as isValidName,a21h as isValidNamedPackage,a21d as isValidStructTag,a21a as isValidTransactionDigest,a21c9 as isValidU128,a21c8 as isValidU16,a21ca as isValidU256,a21bZ as isValidU32,a21bE as isValidU64,a21cl as isValidU8,a21dH as isValidValueContainer,a21cM as isValidValueType,a21cB as isValidValueTypeInput,a21cI as isValidWitnessTypeInput,a21g as isValidWowAddress,a21i as isValidWowObjectId,a21ct as isValueTypeNumber,a21ay as isWException,a21ce as isWitnessType,a21g7 as isWowChain,a21b5 as isWowGraphQLClient,a21b8 as isWowGrpcClient,a21E as isWowJsonRpcClient,loadWip,local_info_operation,local_mark_operation,a21d0 as logger,a21cD as machineFn,machineNode2file,a21hd as makeBridgeTransferState,a21gp as mark_conversation_as_viewed,a21gv as mark_messages_as_viewed,a21aK as messageWithIntent,a21aZ as mnemonicToSeed,a21aX as mnemonicToSeedHex,a21b as normalizeStructTag,a21m as normalizeTypeTag,a21e as normalizeWowAddress,a21k as normalizeWowObjectId,a21al as normalizedTypeToMoveTypeSignature,a21dd as numberToObjectType,a21db as objectTypeFromAddress,a21do as objectTypeToNumber,a21cK as object_module_and_name_from_type,a21ci as object_name_from_type,a21ek as owner_receive,a21gZ as parseEthClaimEvent,a21h7 as parseEthDepositEvent,parseGuardFile,parseGuardFromMarkdown,a21dV as parseIdFrom,a21du as parseObjectType,a21bu as parsePartialSignatures,a21da as parseRecipient,a21aN as parseSerializedSignature,a21c as parseStructTag,a21W as parseToMist,a21a6 as parseToUnits,a21w as parseTransactionBcs,a21D as parseTransactionEffectsBcs,a21ei as parseTypeParameter,a21cx as parseValueType,a21cO as parseWitnessType,a21fL as parseWowokEventItem,a21dw as permission_set,privateKeyToAddress,a21gD as proof_message,a21bw as publicKeyFromRawBytes,a21bt as publicKeyFromWowBytes,a21gq as pull_messages,a21r as pureBcsSchemaFromTypeName,a21hf as queryErc20Balance,a21h0 as queryEthBalance,a21h1 as queryEthTxConfirmations,a21hb as queryEthTxReceipt,a21h8 as queryEvmToWowTransferStatus,a21fD as queryObjectWithType,a21fC as queryObjectsWithType,a21d7 as queryOrdersByUser,a21g1 as queryPermissions,a21g2 as queryProtocolInfo,a21dU as queryTableItem_AddressMark,a21dm as queryTableItem_DemandPresenter,a21dn as queryTableItem_EntityContact,a21dq as queryTableItem_EntityLinker,a21df as queryTableItem_EntityOrder,a21di as queryTableItem_EntityPermission,a21dl as queryTableItem_EntityRegistrar,a21ds as queryTableItem_MachineNode,a21en as queryTableItem_ObjectLinkerCore,a21d8 as queryTableItem_ObjectLinkerTx,a21dy as queryTableItem_PermissionPerm,a21dh as queryTableItem_ProgressHistory,a21dx as queryTableItem_RepositoryData,a21dz as queryTableItem_RewardRecord,a21dg as queryTableItem_ServiceOrders,a21dk as queryTableItem_TreasuryHistory,a21hi as queryWowClaimStatus,a21h3 as queryWowToEvmTransferStatus,a21h2 as queryWowTx,query_account,query_account_list,a21gf as query_address_activity,a21ga as query_address_activity_json,a21e6 as query_address_profile,a21dj as query_address_profiles,a21fQ as query_affiliations,a21dB as query_arbs,a21gc as query_common_mistakes,a21dA as query_demands,a21g6 as query_events,a21fR as query_events_json,query_local_info,query_local_info_default,query_local_info_list,query_local_mark,query_local_mark_list,query_local_token_list,a21gd as query_object_history,a21g5 as query_object_history_json,a21fY as query_object_last_updated,a21dC as query_object_token_type,a21dr as query_objects,a21d6 as query_objects_json,a21dM as query_personal,a21eo as query_received,a21fS as query_serviceContext,a21ec as query_services,a21e1 as query_shared_objects,a21e8 as query_shared_objects_json,a21dT as query_table,a21dF as query_tableItem,a21e3 as query_table_json,a21gb as query_transaction,a21ge as query_transaction_json,a21ea as raw2type,registerBridgeEvmNetworks,a21ck as repositoryFn,a21b2 as requestWowFromFaucetV2,a21ee as resolveCallEnv,a21dL as restoreNodeFromOutput,a21cn as rewardFn,safeFilename,a21gr as send_file,a21gz as send_message,a21cF as serviceFn,a21d3 as setLogLevel,a21gw as settings,signEIP1559,signLegacy,sign_wip,a21gt as sign_wts,a21Z as toBase58,a21S as toBase64,toChecksumAddress,a21a5 as toHex,a21aO as toSerializedSignature,a21cz as toTxAddress,a21cr as toTxAddressVec,a21cp as toTxObject,a21cc as toTxReceivingObject,a21cQ as toTxString,a21cW as toTxU128,a21cg as toTxU16,a21cU as toTxU16Vec,a21c2 as toTxU256,a21bI as toTxU32,a21cS as toTxU64,a21c4 as toTxU8,a21fH as transformPersonalInput,transformRewardInput,a21bM as treasuryFn,a21de as uint2address,a21dc as validObjects,validateGuardData,validateGuardNode,a21dp as valueToBcsBytes,a21bK as valueTypeToString,a21fV as verifyCommitteeConsistency,a21br as verifyPersonalMessageSignature,a21bv as verifySignature,a21bx as verifyTransactionSignature,verifyWip,verify_wip,a21gs as verify_wts,a21gW as waitForEthTx,a21hg as waitForWowTx,a21gm as watch_conversations,a21gE as watch_messages,wip2html,wipToHtml,a21bX as witnessTypeToString,workspaceExportPath,a21gF as wts2html};
@@ -1,2 +1,2 @@
1
- import { $C as UnsafeSplitCoinParams, $S as GetBalanceParams, $T as WowArgument, $w as DelegatedStake, A as isWowJsonRpcClient, AC as TCoinsParams, AE as WowReservation, AT as PaginatedDynamicFieldInfos, Aw as CoinBalance, BC as TValidatorsApyParams, BE as WowWithdrawFrom, BT as RawData, Bw as AccumulatorEvent, C as JsonRpcError, CC as MultiGetTransactionBlocksParams, CE as WowObjectDataFilter, CT as ObjectOwner, Cw as WowObjectChangeCreated, D as PaginationArguments, DC as TAllCoinsParams, DE as WowObjectResponseQuery, DT as OwnedObjectRef, Dw as WowObjectChangeTransferred, E as OrderArguments, EC as TAllBalancesParams, EE as WowObjectResponse, ET as ObjectValueKind, Ew as WowObjectChangePublished, FC as TOwnedObjectsParams, FE as WowTransactionBlockKind, FT as PasskeyAuthenticator, Fw as EpochPage, GC as UnsafeMoveCallParams, GE as JsonRpcTransport, GS as BscribeTransactionParams, GT as TransactionBlockEffectsModifiedAtVersions, Gw as Checkpoint, HC as TryMultiGetPastObjectsParams, HE as HttpHeaders, HT as StakeObject, Hw as AccumulatorValue, IC as TReferenceGasPriceParams, IE as WowTransactionBlockResponse, IT as ProtocolConfig, Iw as ProgrammableTransaction, JC as UnsafePayWowParams, JS as EryEventsParams, JT as TransferObjectParams, Jw as CoinStruct, KC as UnsafePayAllWowParams, KE as JsonRpcTransportRequestOptions, KS as DevInspectTransactionBlockParams, KT as TransactionEffects, Kw as CheckpointCommitment, LC as TStakesByIdsParams, LE as WowTransactionBlockResponseOptions, LT as ProtocolConfigValue, Lw as WowMoveNormalizedModules, MC as TDynamicFieldObjectParams, ME as WowTransaction, MT as PaginatedObjectsResponse, Mw as DynamicFieldPage, NC as TDynamicFieldsParams, NE as WowTransactionBlock, NT as PaginatedTransactionResponse, Nw as EndOfEpochInfo, O as WowJsonRpcClient, OC as TBalanceParams, OE as WowParsedData, OT as PaginatedCheckpoints, Ow as WowObjectChangeWrapped, PC as TLatestWowSystemStateParams, PE as WowTransactionBlockBuilderMode, PT as Party, Pw as EpochInfo, QC as UnsafeSplitCoinEqualParams, QS as GetAllCoinsParams, QT as ValidatorsApy, Qw as ConsensusDeterminedVersionAssignments, RC as TStakesParams, RE as WowTransactionBlockResponseQuery, RT as PublicKey, Rw as WowMoveObject, S as getJsonRpcFullnodeUrl, SC as MultiGetObjectsParams, SE as WowObjectData, ST as MultiSigPublicKeyLegacy, Sw as WTryMultiGetPastObjectsParams, T as WowHTTPTransportError, TC as QueryTransactionBlocksParams, TE as WowObjectRef, TT as ObjectResponseError, Tw as WowObjectChangeMutated, UC as UnsafeBatchTransactionParams, UE as JsonRpcHTTPTransport, UT as TransactionBlockBytes, Uw as Balance, VC as TryGetPastObjectParams, VE as WowWithdrawalTypeArg, VT as Signature, Vw as AccumulatorOperation, WC as UnsafeMergeCoinsParams, WE as JsonRpcHTTPTransportOptions, WS as BscribeEventParams, WT as TransactionBlockData, Ww as BalanceChange, XC as UnsafeRequestAddStakeParams, XS as ExecuteTransactionBlockParams, XT as UpgradeInfo, Xw as CommitteeInfo, YC as UnsafePublishParams, YS as EryTransactionBlocksParams, YT as TypeOrigin, Yw as CoinSupply, ZC as UnsafeRequestWithdrawStakeParams, ZS as GetAllBalancesParams, ZT as ValidatorApy, Zw as CompressedSignature, _C as GetReferenceGasPriceParams, _E as WowMoveNormalizedStruct, _T as MoveValue, _w as WGetTotalTransactionBlocksParams, aC as GetDynamicFieldObjectParams, aE as WowEventFilter, aT as DynamicFieldName, aw as WGetChainIdentifierParams, bC as GetTotalSupplyParams, bE as WowMoveVisibility, bT as MultiSigLegacy, bw as WMultiGetTransactionBlocksParams, cC as GetLatestWowSystemStateParams, cE as WowMoveAbility, cT as EndOfEpochData, cw as WGetEventsParams, dC as GetNormalizedMoveModuleParams, dE as WowMoveFunctionArgType, dT as ExecutionStatus, dw as WGetNormalizedMoveFunctionParams, eC as GetCheckpointParams, eE as WowCallArg, eT as DevInspectArgs, ew as UnsafeTransferObjectParams, fC as GetNormalizedMoveModulesByPackageParams, fE as WowMoveModuleId, fT as GasCostSummary, fw as WGetNormalizedMoveModuleParams, gC as GetProtocolConfigParams, gE as WowMoveNormalizedModule, gT as MoveStruct, gw as WGetProtocolConfigParams, hC as GetOwnedObjectsParams, hE as WowMoveNormalizedFunction, hT as MoveCallParams, hw as WGetObjectParams, iC as GetCommitteeInfoParams, iE as WowEvent, iT as DynamicFieldInfo, iw as WExecuteTransactionBlockParams, jC as TCommitteeInfoParams, jE as WowSystemStateSummary, jT as PaginatedEvents, jw as CheckpointPage, k as WowJsonRpcClientOptions, kC as TCoinMetadataParams, kE as WowProgrammableMoveCall, kT as PaginatedCoins, kw as Order, lC as GetMoveFunctionArgTypesParams, lE as WowMoveAbilitySet, lT as EventId, lw as WGetLatestCheckpointSequenceNumberParams, mC as GetObjectParams, mE as WowMoveNormalizedField, mT as InputObjectKind, mw as WGetNormalizedMoveStructParams, nC as GetCoinMetadataParams, nE as WowCoinMetadata, nT as DisplayFieldsResponse, nw as WDevInspectTransactionBlockParams, oC as GetDynamicFieldsParams, oE as WowExecutionResult, oT as DynamicFieldType, ow as WGetCheckpointParams, pC as GetNormalizedMoveStructParams, pE as WowMoveNormalizedEnum, pT as GetPastObjectRequest, pw as WGetNormalizedMoveModulesByPackageParams, qC as UnsafePayParams, qS as DryRunTransactionBlockParams, qT as TransactionFilter, qw as CheckpointId, rC as GetCoinsParams, rE as WowEndOfEpochTransactionKind, rT as DryRunTransactionBlockResponse, rw as WDryRunTransactionBlockParams, sC as GetLatestCheckpointSequenceNumberParams, sE as WowGasData, sT as ECMHLiveObjectSetDigest, sw as WGetCheckpointsParams, tC as GetCheckpointsParams, tE as WowChangeEpoch, tT as DevInspectResults, tw as UnsafeTransferWowParams, uC as GetNormalizedMoveFunctionParams, uE as WowMoveAbort, uT as ExecuteTransactionRequestType, uw as WGetMoveFunctionArgTypesParams, vC as GetStakesByIdsParams, vE as WowMoveNormalizedType, vT as MoveVariant, vw as WGetTransactionBlockParams, w as WowHTTPStatusError, wC as QueryEventsParams, wE as WowObjectDataOptions, wT as ObjectRead, ww as WowObjectChangeDeleted, xC as GetTransactionBlockParams, xE as WowObjectChange, xT as MultiSigPublicKey, xw as WTryGetPastObjectParams, yC as GetStakesParams, yE as WowMoveStructTypeParameter, yT as MultiSig, yw as WMultiGetObjectsParams, zC as TTotalSupplyParams, zE as WowValidatorSummary, zT as RPCTransactionRequestParams, zw as WowMovePackage } from "../index-DCFY4cxp.mjs";
1
+ import { $C as UnsafeSplitCoinEqualParams, $S as GetAllCoinsParams, $T as ValidatorsApy, $w as ConsensusDeterminedVersionAssignments, A as isWowJsonRpcClient, AC as TCoinMetadataParams, AE as WowProgrammableMoveCall, AT as PaginatedCoins, Aw as Order, BC as TTotalSupplyParams, BE as WowValidatorSummary, BT as RPCTransactionRequestParams, Bw as WowMovePackage, C as JsonRpcError, CC as MultiGetObjectsParams, CE as WowObjectData, CT as MultiSigPublicKeyLegacy, Cw as WTryMultiGetPastObjectsParams, D as PaginationArguments, DC as TAllBalancesParams, DE as WowObjectResponse, DT as ObjectValueKind, Dw as WowObjectChangePublished, E as OrderArguments, EC as QueryTransactionBlocksParams, EE as WowObjectRef, ET as ObjectResponseError, Ew as WowObjectChangeMutated, FC as TLatestWowSystemStateParams, FE as WowTransactionBlockBuilderMode, FT as Party, Fw as EpochInfo, GC as UnsafeMergeCoinsParams, GE as JsonRpcHTTPTransportOptions, GS as BscribeEventParams, GT as TransactionBlockData, Gw as BalanceChange, HC as TryGetPastObjectParams, HE as WowWithdrawalTypeArg, HT as Signature, Hw as AccumulatorOperation, IC as TOwnedObjectsParams, IE as WowTransactionBlockKind, IT as PasskeyAuthenticator, Iw as EpochPage, JC as UnsafePayParams, JS as DryRunTransactionBlockParams, JT as TransactionFilter, Jw as CheckpointId, KC as UnsafeMoveCallParams, KE as JsonRpcTransport, KS as BscribeTransactionParams, KT as TransactionBlockEffectsModifiedAtVersions, Kw as Checkpoint, LC as TReferenceGasPriceParams, LE as WowTransactionBlockResponse, LT as ProtocolConfig, Lw as ProgrammableTransaction, MC as TCommitteeInfoParams, ME as WowSystemStateSummary, MT as PaginatedEvents, Mw as CheckpointPage, NC as TDynamicFieldObjectParams, NE as WowTransaction, NT as PaginatedObjectsResponse, Nw as DynamicFieldPage, O as WowJsonRpcClient, OC as TAllCoinsParams, OE as WowObjectResponseQuery, OT as OwnedObjectRef, Ow as WowObjectChangeTransferred, PC as TDynamicFieldsParams, PE as WowTransactionBlock, PT as PaginatedTransactionResponse, Pw as EndOfEpochInfo, QC as UnsafeRequestWithdrawStakeParams, QS as GetAllBalancesParams, QT as ValidatorApy, Qw as CompressedSignature, RC as TStakesByIdsParams, RE as WowTransactionBlockResponseOptions, RT as ProtocolConfigValue, Rw as WowMoveNormalizedModules, S as getJsonRpcFullnodeUrl, SC as GetTransactionBlockParams, SE as WowObjectChange, ST as MultiSigPublicKey, Sw as WTryGetPastObjectParams, T as WowHTTPTransportError, TC as QueryEventsParams, TE as WowObjectDataOptions, TT as ObjectRead, Tw as WowObjectChangeDeleted, UC as TryMultiGetPastObjectsParams, UE as HttpHeaders, UT as StakeObject, Uw as AccumulatorValue, VC as TValidatorsApyParams, VE as WowWithdrawFrom, VT as RawData, Vw as AccumulatorEvent, WC as UnsafeBatchTransactionParams, WE as JsonRpcHTTPTransport, WT as TransactionBlockBytes, Ww as Balance, XC as UnsafePublishParams, XS as EryTransactionBlocksParams, XT as TypeOrigin, Xw as CoinSupply, YC as UnsafePayWowParams, YS as EryEventsParams, YT as TransferObjectParams, Yw as CoinStruct, ZC as UnsafeRequestAddStakeParams, ZS as ExecuteTransactionBlockParams, ZT as UpgradeInfo, Zw as CommitteeInfo, _C as GetProtocolConfigParams, _E as WowMoveNormalizedModule, _T as MoveStruct, _w as WGetProtocolConfigParams, aC as GetCommitteeInfoParams, aE as WowEvent, aT as DynamicFieldInfo, aw as WExecuteTransactionBlockParams, bC as GetStakesParams, bE as WowMoveStructTypeParameter, bT as MultiSig, bw as WMultiGetObjectsParams, cC as GetLatestCheckpointSequenceNumberParams, cE as WowGasData, cT as ECMHLiveObjectSetDigest, cw as WGetCheckpointsParams, dC as GetNormalizedMoveFunctionParams, dE as WowMoveAbort, dT as ExecuteTransactionRequestType, dw as WGetMoveFunctionArgTypesParams, eC as GetBalanceParams, eE as WowArgument, eT as DelegatedStake, ew as UnsafeSplitCoinParams, fC as GetNormalizedMoveModuleParams, fE as WowMoveFunctionArgType, fT as ExecutionStatus, fw as WGetNormalizedMoveFunctionParams, gC as GetOwnedObjectsParams, gE as WowMoveNormalizedFunction, gT as MoveCallParams, gw as WGetObjectParams, hC as GetObjectParams, hE as WowMoveNormalizedField, hT as InputObjectKind, hw as WGetNormalizedMoveStructParams, iC as GetCoinsParams, iE as WowEndOfEpochTransactionKind, iT as DryRunTransactionBlockResponse, iw as WDryRunTransactionBlockParams, jC as TCoinsParams, jE as WowReservation, jT as PaginatedDynamicFieldInfos, jw as CoinBalance, k as WowJsonRpcClientOptions, kC as TBalanceParams, kE as WowParsedData, kT as PaginatedCheckpoints, kw as WowObjectChangeWrapped, lC as GetLatestWowSystemStateParams, lE as WowMoveAbility, lT as EndOfEpochData, lw as WGetEventsParams, mC as GetNormalizedMoveStructParams, mE as WowMoveNormalizedEnum, mT as GetPastObjectRequest, mw as WGetNormalizedMoveModulesByPackageParams, nC as GetCheckpointsParams, nE as WowChangeEpoch, nT as DevInspectResults, nw as UnsafeTransferWowParams, oC as GetDynamicFieldObjectParams, oE as WowEventFilter, oT as DynamicFieldName, ow as WGetChainIdentifierParams, pC as GetNormalizedMoveModulesByPackageParams, pE as WowMoveModuleId, pT as GasCostSummary, pw as WGetNormalizedMoveModuleParams, qC as UnsafePayAllWowParams, qE as JsonRpcTransportRequestOptions, qS as DevInspectTransactionBlockParams, qT as TransactionEffects, qw as CheckpointCommitment, rC as GetCoinMetadataParams, rE as WowCoinMetadata, rT as DisplayFieldsResponse, rw as WDevInspectTransactionBlockParams, sC as GetDynamicFieldsParams, sE as WowExecutionResult, sT as DynamicFieldType, sw as WGetCheckpointParams, tC as GetCheckpointParams, tE as WowCallArg, tT as DevInspectArgs, tw as UnsafeTransferObjectParams, uC as GetMoveFunctionArgTypesParams, uE as WowMoveAbilitySet, uT as EventId, uw as WGetLatestCheckpointSequenceNumberParams, vC as GetReferenceGasPriceParams, vE as WowMoveNormalizedStruct, vT as MoveValue, vw as WGetTotalTransactionBlocksParams, w as WowHTTPStatusError, wC as MultiGetTransactionBlocksParams, wE as WowObjectDataFilter, wT as ObjectOwner, ww as WowObjectChangeCreated, xC as GetTotalSupplyParams, xE as WowMoveVisibility, xT as MultiSigLegacy, xw as WMultiGetTransactionBlocksParams, yC as GetStakesByIdsParams, yE as WowMoveNormalizedType, yT as MoveVariant, yw as WGetTransactionBlockParams, zC as TStakesParams, zE as WowTransactionBlockResponseQuery, zT as PublicKey, zw as WowMoveObject } from "../index-DXEIuFPc.mjs";
2
2
  export { type AccumulatorEvent, type AccumulatorOperation, type AccumulatorValue, type Balance, type BalanceChange, type BscribeEventParams, type BscribeTransactionParams, type Checkpoint, type CheckpointCommitment, type CheckpointId, type CheckpointPage, type CoinBalance, type CoinStruct, type CoinSupply, type CommitteeInfo, type CompressedSignature, type ConsensusDeterminedVersionAssignments, type DelegatedStake, type DevInspectArgs, type DevInspectResults, type DevInspectTransactionBlockParams, type DisplayFieldsResponse, type DryRunTransactionBlockParams, type DryRunTransactionBlockResponse, type DynamicFieldInfo, type DynamicFieldName, type DynamicFieldPage, type DynamicFieldType, type ECMHLiveObjectSetDigest, type EndOfEpochData, type EndOfEpochInfo, type EpochInfo, type EpochPage, type EryEventsParams, type EryTransactionBlocksParams, type EventId, type ExecuteTransactionBlockParams, type ExecuteTransactionRequestType, type ExecutionStatus, type GasCostSummary, type GetAllBalancesParams, type GetAllCoinsParams, type GetBalanceParams, type GetCheckpointParams, type GetCheckpointsParams, type GetCoinMetadataParams, type GetCoinsParams, type GetCommitteeInfoParams, type GetDynamicFieldObjectParams, type GetDynamicFieldsParams, type GetLatestCheckpointSequenceNumberParams, type GetLatestWowSystemStateParams, type GetMoveFunctionArgTypesParams, type GetNormalizedMoveFunctionParams, type GetNormalizedMoveModuleParams, type GetNormalizedMoveModulesByPackageParams, type GetNormalizedMoveStructParams, type GetObjectParams, type GetOwnedObjectsParams, type GetPastObjectRequest, type GetProtocolConfigParams, type GetReferenceGasPriceParams, type GetStakesByIdsParams, type GetStakesParams, type GetTotalSupplyParams, type GetTransactionBlockParams, type HttpHeaders, type InputObjectKind, JsonRpcError, JsonRpcHTTPTransport, type JsonRpcHTTPTransportOptions, type JsonRpcTransport, type JsonRpcTransportRequestOptions, type MoveCallParams, type MoveStruct, type MoveValue, type MoveVariant, type MultiGetObjectsParams, type MultiGetTransactionBlocksParams, type MultiSig, type MultiSigLegacy, type MultiSigPublicKey, type MultiSigPublicKeyLegacy, type ObjectOwner, type ObjectRead, type ObjectResponseError, type ObjectValueKind, type Order, type OrderArguments, type OwnedObjectRef, type PaginatedCheckpoints, type PaginatedCoins, type PaginatedDynamicFieldInfos, type PaginatedEvents, type PaginatedObjectsResponse, type PaginatedTransactionResponse, type PaginationArguments, type Party, type PasskeyAuthenticator, type ProgrammableTransaction, type ProtocolConfig, type ProtocolConfigValue, type PublicKey, type QueryEventsParams, type QueryTransactionBlocksParams, type RPCTransactionRequestParams, type RawData, type Signature, type StakeObject, type TAllBalancesParams, type TAllCoinsParams, type TBalanceParams, type TCoinMetadataParams, type TCoinsParams, type TCommitteeInfoParams, type TDynamicFieldObjectParams, type TDynamicFieldsParams, type TLatestWowSystemStateParams, type TOwnedObjectsParams, type TReferenceGasPriceParams, type TStakesByIdsParams, type TStakesParams, type TTotalSupplyParams, type TValidatorsApyParams, type TransactionBlockBytes, type TransactionBlockData, type TransactionBlockEffectsModifiedAtVersions, type TransactionEffects, type TransactionFilter, type TransferObjectParams, type TryGetPastObjectParams, type TryMultiGetPastObjectsParams, type TypeOrigin, type UnsafeBatchTransactionParams, type UnsafeMergeCoinsParams, type UnsafeMoveCallParams, type UnsafePayAllWowParams, type UnsafePayParams, type UnsafePayWowParams, type UnsafePublishParams, type UnsafeRequestAddStakeParams, type UnsafeRequestWithdrawStakeParams, type UnsafeSplitCoinEqualParams, type UnsafeSplitCoinParams, type UnsafeTransferObjectParams, type UnsafeTransferWowParams, type UpgradeInfo, type ValidatorApy, type ValidatorsApy, type WDevInspectTransactionBlockParams, type WDryRunTransactionBlockParams, type WExecuteTransactionBlockParams, type WGetChainIdentifierParams, type WGetCheckpointParams, type WGetCheckpointsParams, type WGetEventsParams, type WGetLatestCheckpointSequenceNumberParams, type WGetMoveFunctionArgTypesParams, type WGetNormalizedMoveFunctionParams, type WGetNormalizedMoveModuleParams, type WGetNormalizedMoveModulesByPackageParams, type WGetNormalizedMoveStructParams, type WGetObjectParams, type WGetProtocolConfigParams, type WGetTotalTransactionBlocksParams, type WGetTransactionBlockParams, type WMultiGetObjectsParams, type WMultiGetTransactionBlocksParams, type WTryGetPastObjectParams, type WTryMultiGetPastObjectsParams, type WowArgument, type WowCallArg, type WowChangeEpoch, type WowCoinMetadata, type WowEndOfEpochTransactionKind, type WowEvent, type WowEventFilter, type WowExecutionResult, type WowGasData, WowHTTPStatusError, WowHTTPTransportError, WowJsonRpcClient, type WowJsonRpcClientOptions, type WowMoveAbility, type WowMoveAbilitySet, type WowMoveAbort, type WowMoveFunctionArgType, type WowMoveModuleId, type WowMoveNormalizedEnum, type WowMoveNormalizedField, type WowMoveNormalizedFunction, type WowMoveNormalizedModule, type WowMoveNormalizedModules, type WowMoveNormalizedStruct, type WowMoveNormalizedType, type WowMoveObject, type WowMovePackage, type WowMoveStructTypeParameter, type WowMoveVisibility, type WowObjectChange, type WowObjectChangeCreated, type WowObjectChangeDeleted, type WowObjectChangeMutated, type WowObjectChangePublished, type WowObjectChangeTransferred, type WowObjectChangeWrapped, type WowObjectData, type WowObjectDataFilter, type WowObjectDataOptions, type WowObjectRef, type WowObjectResponse, type WowObjectResponseQuery, type WowParsedData, type WowProgrammableMoveCall, type WowReservation, type WowSystemStateSummary, type WowTransaction, type WowTransactionBlock, type WowTransactionBlockBuilderMode, type WowTransactionBlockKind, type WowTransactionBlockResponse, type WowTransactionBlockResponseOptions, type WowTransactionBlockResponseQuery, type WowValidatorSummary, type WowWithdrawFrom, type WowWithdrawalTypeArg, getJsonRpcFullnodeUrl, isWowJsonRpcClient };
@@ -1 +1 @@
1
- import{c as a22a,l as a22b,n as a22c,o as a22d,r as a22e,s as a22f}from'../client-CYziyi68.mjs';import{t as a22g}from'../jsonRpc-1qOo1zjv.mjs';export{a22f as JsonRpcError,a22d as JsonRpcHTTPTransport,a22a as WowHTTPStatusError,a22b as WowHTTPTransportError,a22c as WowJsonRpcClient,a22g as getJsonRpcFullnodeUrl,a22e as isWowJsonRpcClient};
1
+ import{c as a22a,l as a22b,n as a22c,o as a22d,r as a22e,s as a22f}from'../client-B2tx5llp.mjs';import{t as a22g}from'../jsonRpc-1qOo1zjv.mjs';export{a22f as JsonRpcError,a22d as JsonRpcHTTPTransport,a22a as WowHTTPStatusError,a22b as WowHTTPTransportError,a22c as WowJsonRpcClient,a22g as getJsonRpcFullnodeUrl,a22e as isWowJsonRpcClient};
@@ -1,2 +1,2 @@
1
- import { iS as Ed25519PublicKey, nS as Ed25519Keypair, rS as Ed25519KeypairData, tS as DEFAULT_ED25519_DERIVATION_PATH } from "../../index-DCFY4cxp.mjs";
1
+ import { aS as Ed25519PublicKey, iS as Ed25519KeypairData, nS as DEFAULT_ED25519_DERIVATION_PATH, rS as Ed25519Keypair } from "../../index-DXEIuFPc.mjs";
2
2
  export { DEFAULT_ED25519_DERIVATION_PATH, Ed25519Keypair, type Ed25519KeypairData, Ed25519PublicKey };
@@ -1,2 +1,2 @@
1
- import { Bx as Falcon512PublicKey, Lx as DEFAULT_FALCON512_DERIVATION_PATH, Rx as Falcon512Keypair, zx as Falcon512KeypairData } from "../../index-DCFY4cxp.mjs";
1
+ import { Bx as Falcon512KeypairData, Rx as DEFAULT_FALCON512_DERIVATION_PATH, Vx as Falcon512PublicKey, zx as Falcon512Keypair } from "../../index-DXEIuFPc.mjs";
2
2
  export { DEFAULT_FALCON512_DERIVATION_PATH, Falcon512Keypair, type Falcon512KeypairData, Falcon512PublicKey };
@@ -1,2 +1,2 @@
1
- import { Gx as PasskeyProvider, Hx as BrowserPasskeyProvider, Kx as findCommonPublicKey, Ux as BrowserPasswordProviderOptions, Vx as PasskeyPublicKey, Wx as PasskeyKeypair } from "../../index-DCFY4cxp.mjs";
1
+ import { Gx as PasskeyKeypair, Hx as PasskeyPublicKey, Kx as PasskeyProvider, Ux as BrowserPasskeyProvider, Wx as BrowserPasswordProviderOptions, qx as findCommonPublicKey } from "../../index-DXEIuFPc.mjs";
2
2
  export { BrowserPasskeyProvider, type BrowserPasswordProviderOptions, PasskeyKeypair, type PasskeyProvider, PasskeyPublicKey, type findCommonPublicKey };
@@ -1,2 +1,2 @@
1
- import { $x as Secp256k1Keypair, Qx as DEFAULT_SECP256K1_DERIVATION_PATH, Zx as Secp256k1PublicKey, eS as Secp256k1KeypairData } from "../../index-DCFY4cxp.mjs";
1
+ import { $x as DEFAULT_SECP256K1_DERIVATION_PATH, Qx as Secp256k1PublicKey, eS as Secp256k1Keypair, tS as Secp256k1KeypairData } from "../../index-DXEIuFPc.mjs";
2
2
  export { DEFAULT_SECP256K1_DERIVATION_PATH, Secp256k1Keypair, type Secp256k1KeypairData, Secp256k1PublicKey };
@@ -1,2 +1,2 @@
1
- import { Jx as DEFAULT_SECP256R1_DERIVATION_PATH, Xx as Secp256r1KeypairData, Yx as Secp256r1Keypair, qx as Secp256r1PublicKey } from "../../index-DCFY4cxp.mjs";
1
+ import { Jx as Secp256r1PublicKey, Xx as Secp256r1Keypair, Yx as DEFAULT_SECP256R1_DERIVATION_PATH, Zx as Secp256r1KeypairData } from "../../index-DXEIuFPc.mjs";
2
2
  export { DEFAULT_SECP256R1_DERIVATION_PATH, Secp256r1Keypair, type Secp256r1KeypairData, Secp256r1PublicKey };
@@ -1 +1 @@
1
- import{o as a31a}from'./wow-types-DctQuD2J.mjs';import{r as a31b}from'./logger-Cs5Mf7Mf.mjs';import{PQSessionCipher}from'./w/messenger/pq/session.mjs';import{PQSessionStoreAdapter}from'./w/messenger/pq/store-adapter.mjs';import{DEFAULT_MESSENGER_CONFIG,MessengerError,NORMAL_MESSAGE_BYTES_LIMIT,WTS_FILE_BYTES_LIMIT}from'./w/messenger/types.mjs';import{MessageStorage,SessionStateStorage,getDatabase}from'./w/messenger/storage.mjs';import{base64ToBytes,bytesToBase64,hashPlaintext,verifyMessage}from'./w/messenger/crypto.mjs';import{REPLY_HEADER,buildReplyPlaintext,parseReplyPlaintext}from'./w/messenger/reply.mjs';import{randomBytes}from'@noble/hashes/utils.js';import*as a31c from'path';import*as a31d from'fs';import{createHash}from'crypto';const logger=a31b('messenger:server');var MessengerServerClient=class{constructor(a){this['config']={...DEFAULT_MESSENGER_CONFIG,...a};}async['fetchWithTimeout'](a,b={},c){const d=c??this['config']['requestTimeoutMs']??0x7530,e=new AbortController(),f=setTimeout(()=>e['abort'](),d);try{return await fetch(a,{...b,'signal':e['signal']});}finally{clearTimeout(f);}}async['registerDevice'](a){try{const b=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/register',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](a)});if(!b['ok']){const d=await b['text']();if(b['status']===0x199){if(d['includes']('different\x20key'))throw new MessengerError('IDENTITY_CONFLICT','Identity\x20already\x20exists\x20with\x20different\x20key:\x20'+d);return{'success':!![],'uploadedCount':0x0,'failedPrekeys':[],'currentTotal':0x0,'maxAllowed':0x64};}throw new MessengerError('SERVER_ERROR','Registration\x20failed:\x20'+b['status']+'\x20'+b['statusText']+'\x20-\x20'+d);}const c=await b['json']();if(c['failedPrekeys']&&c['failedPrekeys']['length']>0x0){}return{'success':c['success'],'uploadedCount':c['uploaded_count'],'failedPrekeys':c['failed_prekeys']||[],'currentTotal':c['current_total'],'maxAllowed':c['max_allowed']};}catch(e){if(e instanceof MessengerError)throw e;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20register\x20device',e);}}async['uploadPreKeys'](a){try{const b=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/prekeys/upload',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](a)});if(!b['ok']){const d=await b['text']();throw new MessengerError('SERVER_ERROR','Failed\x20to\x20upload\x20prekeys:\x20'+b['status']+'\x20'+b['statusText']+'\x20-\x20'+d);}const c=await b['json']();if(c['failedPrekeys']&&c['failedPrekeys']['length']>0x0)throw new MessengerError('SERVER_ERROR','Some\x20prekeys\x20failed\x20to\x20upload:\x20'+JSON['stringify'](c['failedPrekeys']));return{'success':c['success'],'uploadedCount':c['uploaded_count'],'failedPrekeys':c['failed_prekeys']||[],'currentTotal':c['current_total'],'maxAllowed':c['max_allowed']};}catch(e){if(e instanceof MessengerError)throw e;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20upload\x20prekeys',e);}}async['fetchRemoteBundle'](a,b,c,d,e){try{const f=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/bundle/'+a,{'headers':{'X-PublicKey':c,'X-SignatureScheme':d['signatureScheme'],'X-Signature':d['signature'],'X-Timestamp':d['timestamp']['toString'](),'X-Nonce':d['nonce']}});if(!f['ok']){if(f['status']===0x194)throw new MessengerError('IDENTITY_NOT_FOUND','User\x20'+a+'\x20not\x20found\x20on\x20server');throw new MessengerError('SERVER_ERROR','Failed\x20to\x20fetch\x20remote\x20bundle:\x20'+f['statusText']);}return await f['json']();}catch(g){if(g instanceof MessengerError)throw g;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20fetch\x20remote\x20bundle',g);}}async['sendMessage'](a){try{const b=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/message',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](a)}),c=await b['json']();if(!b['ok']){const d=new MessengerError('SERVER_ERROR',c?.['error']?.['message']||c?.['message']||b['statusText']);d['guardList']=c?.['error']?.['guard_list']||c?.['guard_list'];throw d;}return c;}catch(e){if(e instanceof MessengerError)throw e;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20send\x20message',e);}}async['pullMessages'](a,b,c,d){try{const e=new URL(this['config']['serverUrl']+'/v1/messages/'+a);if(d!==void 0x0)e['searchParams']['set']('limit',d['toString']());const f=await this['fetchWithTimeout'](e['toString'](),{'headers':{'X-PublicKey':b,'X-SignatureScheme':c['signatureScheme'],'X-Signature':c['signature'],'X-Timestamp':c['timestamp']['toString'](),'X-Nonce':c['nonce']}});if(!f['ok'])throw new MessengerError('SERVER_ERROR','Failed\x20to\x20pull\x20messages:\x20'+f['statusText']);return await f['json']();}catch(g){if(g instanceof MessengerError)throw g;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20pull\x20messages',g);}}async['popPreKey'](a,b){try{const c=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/prekeys/'+a+'/one',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify']({'publicKey':b['publicKey'],'signatureScheme':b['signatureScheme'],'signature':b['signature'],'timestamp':b['timestamp'],'nonce':b['nonce']})});if(c['status']===0x1ad)throw new MessengerError('SERVER_ERROR','Rate\x20limited:\x20too\x20many\x20pop\x20prekey\x20requests');if(c['status']===0x191)throw new MessengerError('SERVER_ERROR','Unauthorized:\x20signature\x20verification\x20failed\x20or\x20address\x20mismatch');if(!c['ok'])throw new MessengerError('SERVER_ERROR','Failed\x20to\x20pop\x20prekey:\x20'+c['statusText']);return await c['json']();}catch(d){if(d instanceof MessengerError)throw d;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20pop\x20prekey',d);}}async['getPrekeyStatus'](a,b,c){try{const d=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/prekeys/'+a+'/status',{'headers':{'X-PublicKey':b,'X-SignatureScheme':c['signatureScheme'],'X-Signature':c['signature'],'X-Timestamp':c['timestamp']['toString'](),'X-Nonce':c['nonce']}});if(!d['ok'])throw new MessengerError('SERVER_ERROR','Failed\x20to\x20get\x20prekey\x20status:\x20'+d['statusText']);const e=await d['json']();return{'currentCount':e['currentCount'],'maxAllowed':e['maxAllowed'],'threshold':e['threshold'],'shouldRefill':e['shouldRefill']};}catch(f){if(f instanceof MessengerError)throw f;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20get\x20prekey\x20status',f);}}async['acknowledgeMessages'](a,b,c){try{const d=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/messages/ack',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify']({'publicKey':c['publicKey'],'messageIds':a,'senderPublicKey':b,'signatureScheme':c['signatureScheme'],'signature':c['signature'],'timestamp':c['timestamp'],'nonce':c['nonce']})});if(!d['ok'])throw new MessengerError('SERVER_ERROR','Failed\x20to\x20acknowledge\x20messages:\x20'+d['statusText']);}catch(e){if(e instanceof MessengerError)throw e;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20acknowledge\x20messages',e);}}async['addToBlacklist'](a,b){return this['_listOperation'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/blacklist',b,'POST');}async['removeFromBlacklist'](a,b){return this['_listOperation'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/blacklist',b,'DELETE');}async['clearBlacklist'](a,b){return this['_listOperation'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/blacklist/clear',b,'POST');}async['getBlacklist'](a,b){try{const c=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/blacklist/get',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](b)});if(!c['ok']){const d=await c['text']();logger['error']('getBlacklist\x20error\x20response:',d);throw new MessengerError('SERVER_ERROR','Failed\x20to\x20get\x20blacklist:\x20'+c['statusText']+'\x20-\x20'+d);}return await c['json']();}catch(e){if(e instanceof MessengerError)throw e;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20get\x20blacklist',e);}}async['existInBlacklist'](a,b){return this['_listOperation'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/blacklist/exist',b,'POST');}async['addToFriendsList'](a,b){return this['_listOperation'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/friends-list',b,'POST');}async['removeFromFriendsList'](a,b){return this['_listOperation'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/friends-list',b,'DELETE');}async['clearFriendsList'](a,b){return this['_listOperation'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/friends-list/clear',b,'POST');}async['getFriendsList'](a,b){try{const c=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/friends-list/get',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](b)});if(!c['ok'])throw new MessengerError('SERVER_ERROR','Failed\x20to\x20get\x20friends\x20list:\x20'+c['statusText']);return await c['json']();}catch(d){if(d instanceof MessengerError)throw d;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20get\x20friends\x20list',d);}}async['existInFriendsList'](a,b){return this['_listOperation'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/friends-list/exist',b,'POST');}async['addToGuardList'](a,b){return this['_listOperation'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/guard-list',b,'POST');}async['removeFromGuardList'](a,b){return this['_listOperation'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/guard-list',b,'DELETE');}async['getGuardList'](a,b){try{const c=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/guard-list/get',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](b)});if(!c['ok'])throw new MessengerError('SERVER_ERROR','Failed\x20to\x20get\x20guard\x20list:\x20'+c['statusText']);return await c['json']();}catch(d){if(d instanceof MessengerError)throw d;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20get\x20guard\x20list',d);}}async['updateSettings'](a,b){try{const c=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/settings',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](b)});if(!c['ok']){const d=await c['text']();throw new MessengerError('SERVER_ERROR','Failed\x20to\x20update\x20settings:\x20'+c['statusText']+'\x20-\x20'+d);}return(await c['json']())['success'];}catch(e){if(e instanceof MessengerError)throw e;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20update\x20settings',e);}}async['getSettings'](a,b){try{const c=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/settings/get',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](b)});if(!c['ok']){const d=await c['text']();throw new MessengerError('SERVER_ERROR','Failed\x20to\x20get\x20settings:\x20'+c['statusText']+'\x20-\x20'+d);}return await c['json']();}catch(e){if(e instanceof MessengerError)throw e;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20get\x20settings',e);}}async['_listOperation'](a,b,c='POST'){try{const d=await this['fetchWithTimeout'](a,{'method':c,'headers':{'Content-Type':'application/json'},'body':JSON['stringify'](b)});if(!d['ok']){const e=await d['text']();throw new MessengerError('SERVER_ERROR','List\x20operation\x20failed:\x20'+d['statusText']+'\x20-\x20'+e);}return await d['json']();}catch(f){if(f instanceof MessengerError)throw f;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20perform\x20list\x20operation',f);}}};new MessengerServerClient();async function getAccount$1(){const {Account:a}=await import('./w/local/account.mjs');return a['Instance']();}var MessengerSession=class{constructor(a,b){this['identity']=null,this['config']={...DEFAULT_MESSENGER_CONFIG,...b},this['serverClient']=new MessengerServerClient(this['config']),this['userAddress']=a;const c=getDatabase(a);this['pqStore']=new PQSessionStoreAdapter(c,a),this['pqCipher']=new PQSessionCipher(this['pqStore'],async()=>{return(await(await getAccount$1())['deriveX25519Identity'](a))['falcon512KeyPair'];});}get['store'](){return this['pqStore'];}get['cipher'](){return this['pqCipher'];}async['ensureIdentity'](a){if(this['identity'])return this['identity'];const b=await this['pqStore']['getIdentityKeyPair'](),c=await this['pqStore']['getRegistrationId']();if(b&&c)return this['identity']={'x25519KeyPair':b,'registrationId':c},this['identity'];const d=await(await getAccount$1())['deriveX25519Identity'](this['userAddress']);return await this['pqStore']['setIdentityKeyPair'](d['x25519KeyPair']),await this['pqStore']['setRegistrationId'](d['registrationId']),this['identity']={'x25519KeyPair':d['x25519KeyPair'],'registrationId':d['registrationId']},this['identity'];}['deriveRegistrationId'](a){const b=a[0x0]<<0x8|a[0x1];return b===0x0?0x1:b;}async['registerDevice'](a){const b=await this['ensureIdentity'](a),c=0x1,d=0x1;let e,f;const g=await this['pqStore']['getSignedPreKeySignature'](c),h=await this['pqStore']['getSignedPreKey'](c),i=await this['pqStore']['getPQPreKey'](d),j=await this['pqStore']['getPQPreKeySignature'](d);if(h&&g&&i&&j)e=h['publicKey'],f=g;else{const u=await this['pqCipher']['generatePreKeyBundle'](c,d,this['config']['prekey_count']);e=u['signedPreKey']['keyPair']['publicKey'],f=u['signedPreKey']['signature'];}const k=await this['generatePreKeyBatch'](this['config']['prekey_count'],a),l=await(await getAccount$1())['get'](a,![],!![]);if(!l?.['pubkey'])throw new MessengerError('IDENTITY_NOT_FOUND','Account\x20not\x20found\x20for\x20'+a);const m=Date['now'](),n=this['generateNonce'](),o='register:'+l['pubkey']+':'+m+':'+n,p=await(await getAccount$1())['signData'](a,o),q=Buffer['from'](p['signature']['slice'](0x2),'hex'),r=await this['pqStore']['getPQPreKey'](d),s=await this['pqStore']['getPQPreKeySignature'](d),t={'userAddress':a,'deviceId':0x1,'registrationId':b['registrationId'],'identityKey':bytesToBase64(b['x25519KeyPair']['publicKey']),'falcon512PublicKey':bytesToBase64(base64ToBytes(l['pubkey'])['slice'](0x1)),'signedPrekey':{'keyId':c,'publicKey':bytesToBase64(e),'signature':bytesToBase64(f)},'prekeys':k,'publicKey':l['pubkey'],'signatureScheme':'Falcon512','signature':bytesToBase64(q),'timestamp':m,'nonce':n};if(r&&s)t['pqPrekey']={'keyId':d,'publicKey':bytesToBase64(r['publicKey']),'signature':bytesToBase64(s)};if(h){let v=null;try{const w=Date['now'](),x=this['generateNonce'](),y='get_bundle:'+a+':'+w+':'+x,z=await(await getAccount$1())['signData'](a,y),A=Buffer['from'](z['signature']['slice'](0x2),'hex'),B=await this['serverClient']['fetchRemoteBundle'](a,a,l['pubkey'],{'signatureScheme':'Falcon512','signature':bytesToBase64(new Uint8Array(A)),'timestamp':w,'nonce':x});if(B?.['signedPrekey']?.['publicKey'])v=B['signedPrekey']['publicKey'];}catch(C){if(!(C instanceof MessengerError&&C['code']==='IDENTITY_NOT_FOUND'))v=bytesToBase64(h['publicKey']);}if(v){const D=new TextEncoder()['encode'](v),E=await(await getAccount$1())['signData'](a,D),F=Buffer['from'](E['signature']['slice'](0x2),'hex');t['oldSignedPrekeySignature']=bytesToBase64(new Uint8Array(F));}}await this['serverClient']['registerDevice'](t),await this['verifyRegistrationComplete'](a);}async['verifyRegistrationComplete'](a,b=0xa,c=0x1f4){for(let d=0x0;d<b;d++)try{const e=await(await getAccount$1())['get'](a,![],!![]);if(!e?.['pubkey'])throw new MessengerError('IDENTITY_NOT_FOUND','Account\x20not\x20found\x20for\x20'+a);const f=Date['now'](),g=this['generateNonce'](),h='prekey_status:'+a+':'+f+':'+g,j=await(await getAccount$1())['signData'](a,h),k=Buffer['from'](j['signature']['slice'](0x2),'hex');await this['serverClient']['getPrekeyStatus'](a,e['pubkey'],{'signatureScheme':'Falcon512','signature':bytesToBase64(new Uint8Array(k)),'timestamp':f,'nonce':g});return;}catch(l){if(l?.['message']?.['includes']('404')||l?.['status']===0x194){if(d<b-0x1){await new Promise(m=>setTimeout(m,c));continue;}}throw l;}throw new MessengerError('REGISTRATION_FAILED','Registration\x20verification\x20failed\x20after\x20'+b+'\x20attempts');}async['isDeviceRegistered'](a){try{if(!await this['pqStore']['getSignedPreKeySignature'](0x1))return![];const b=await(await getAccount$1())['get'](a,![],!![]);if(!b?.['pubkey'])return![];const c=Date['now'](),d=this['generateNonce'](),e='prekey_status:'+a+':'+c+':'+d,f=await(await getAccount$1())['signData'](a,e),g=Buffer['from'](f['signature']['slice'](0x2),'hex');return await this['serverClient']['getPrekeyStatus'](a,b['pubkey'],{'signatureScheme':'Falcon512','signature':bytesToBase64(new Uint8Array(g)),'timestamp':c,'nonce':d}),!![];}catch(h){if(h?.['message']?.['includes']('404')||h?.['status']===0x194)return![];return![];}}async['generatePreKeyBatch'](a,b){if(a<=0x0)return[];const c=[],{generateX25519KeyPair:d}=await import('./w/messenger/pq/crypto.mjs'),e=randomBytes(0x4),f=(e[0x0]<<0x18|e[0x1]<<0x10|e[0x2]<<0x8|e[0x3])&0x7fffff00;for(let g=0x0;g<a;g++){const h=f+g,j=await this['pqStore']['getOneTimePreKey'](h);if(j){const n=bytesToBase64(j['publicKey']),o=await(await getAccount$1())['signData'](b,j['publicKey']),p=Buffer['from'](o['signature']['slice'](0x2),'hex');c['push']({'keyId':h,'publicKey':n,'signature':bytesToBase64(p)});continue;}const k=d(),l=await(await getAccount$1())['signData'](b,k['publicKey']),m=Buffer['from'](l['signature']['slice'](0x2),'hex');await this['pqStore']['setOneTimePreKey'](h,k),c['push']({'keyId':h,'publicKey':bytesToBase64(k['publicKey']),'signature':bytesToBase64(m)});}return c;}async['ensurePreKeys'](a,b=![]){const c=await(await getAccount$1())['get'](a,![],!![]);if(!c?.['pubkey'])throw new MessengerError('IDENTITY_NOT_FOUND','Account\x20not\x20found\x20for\x20'+a);const d=Date['now'](),e=this['generateNonce'](),f='prekey_status:'+a+':'+d+':'+e,g=await(await getAccount$1())['signData'](a,f),h=Buffer['from'](g['signature']['slice'](0x2),'hex'),i=await this['serverClient']['getPrekeyStatus'](a,c['pubkey'],{'signatureScheme':'Falcon512','signature':bytesToBase64(new Uint8Array(h)),'timestamp':d,'nonce':e});if(!b&&i['currentCount']>=i['maxAllowed'])return;const j=i['maxAllowed']-i['currentCount'];if(j<=0x0)return;await this['ensureIdentity'](a);const k=await this['generatePreKeyBatch'](j,a);if(k['length']===0x0)return;const l=Date['now'](),m=this['generateNonce'](),n='upload_prekeys:'+c['pubkey']+':'+l+':'+m,o=await(await getAccount$1())['signData'](a,n),p=Buffer['from'](o['signature']['slice'](0x2),'hex');await this['serverClient']['uploadPreKeys']({'userAddress':a,'prekeys':k,'publicKey':c['pubkey'],'signatureScheme':'Falcon512','signature':bytesToBase64(p),'timestamp':l,'nonce':m});}['generateNonce'](){const a=new Uint8Array(0x10);return crypto['getRandomValues'](a),Array['from'](a,c=>c['toString'](0x10)['padStart'](0x2,'0'))['join']('');}async['establishSession'](a,b,c=0x1,d){if(await this['pqCipher']['hasSession'](b,c))return;if(!d){const k=await(await getAccount$1())['get'](a,![],!![]);if(!k?.['pubkey'])throw new MessengerError('IDENTITY_NOT_FOUND','Account\x20not\x20found\x20for\x20'+a);const l=Date['now'](),m=this['generateNonce'](),n=k['pubkey'],o='get_bundle:'+a+':'+l+':'+m,p=await(await getAccount$1())['signData'](a,o),q=Buffer['from'](p['signature']['slice'](0x2),'hex');d=await this['serverClient']['fetchRemoteBundle'](b,a,n,{'signatureScheme':'Falcon512','signature':bytesToBase64(new Uint8Array(q)),'timestamp':l,'nonce':m},c);}const e=d['signedPrekey'];if(!e)throw new MessengerError('IDENTITY_NOT_FOUND','No\x20signed\x20prekey\x20available\x20for\x20'+b);const f=base64ToBytes(d['identityKey']),g=d['falcon512PublicKey']?base64ToBytes(d['falcon512PublicKey']):f,h=base64ToBytes(e['publicKey']),i=base64ToBytes(e['signature']),j={'registrationId':d['registrationId'],'deviceId':c,'identityKey':f,'falcon512PublicKey':g,'signedPreKey':{'keyId':e['keyId'],'publicKey':h,'signature':i},'pqPreKey':d['pqPrekey']?{'keyId':d['pqPrekey']['keyId'],'publicKey':base64ToBytes(d['pqPrekey']['publicKey']),'signature':base64ToBytes(d['pqPrekey']['signature'])}:void 0x0};if(d['oneTimePrekey']){const r=base64ToBytes(d['oneTimePrekey']['publicKey']);j['oneTimePreKey']={'keyId':d['oneTimePrekey']['keyId'],'publicKey':r};}if(d['pqPrekey']){const s=base64ToBytes(d['pqPrekey']['publicKey']),t=base64ToBytes(d['pqPrekey']['signature']);j['pqPreKey']={'keyId':d['pqPrekey']['keyId'],'publicKey':s,'signature':t};}await this['pqCipher']['processPreKeyBundle'](b,c,j);}async['encryptMessage'](a,b,c,d=0x1){let e=0x0;const f=0x5;while(e<=f)try{if(!await this['pqCipher']['hasSession'](b,d))await this['establishSession'](a,b,d);const g=new TextEncoder()['encode'](c),h=await this['pqCipher']['encryptMessage'](b,g,d);return{'type':h['type'],'body':h['body']['buffer'],'registrationId':h['registrationId']};}catch(i){if(e>=f)throw i;try{await this['pqStore']['removeSession'](b,d),e++,await new Promise(j=>setTimeout(j,0x64));}catch(j){throw i;}}throw new MessengerError('ENCRYPTION_FAILED','Encryption\x20failed\x20after\x20multiple\x20attempts');}async['decryptMessage'](a,b,c,d,e=0x1){const f=new TextDecoder(),g=new Uint8Array(c);let h=0x0;const i=0x5,j=await this['pqCipher']['hasSession'](b,e);if(d!==0x3&&!j)throw new Error('收到\x20WHISPER_MESSAGE\x20但无现有会话,需要等待\x20PREKEY_MESSAGE');while(h<=i)try{let k;if(d===0x3)try{return k=await this['pqCipher']['decryptMessage'](b,g,e),f['decode'](k);}catch(l){if(j&&h===0x0){if(a['toLowerCase']()<b['toLowerCase']())throw new Error('PREKEY\x20竞争:我的地址较小,保留我的会话');else return await this['pqStore']['removeSession'](b,e),k=await this['pqCipher']['decryptMessage'](b,g,e),f['decode'](k);}else throw l;}else k=await this['pqCipher']['decryptMessage'](b,g,e);return f['decode'](k);}catch(m){if(h>=i)throw m;try{if(j)await this['pqStore']['removeSession'](b,e);if(d===0x3){}h++,await new Promise(n=>setTimeout(n,0x64));}catch(n){throw m;}}throw new MessengerError('DECRYPTION_FAILED','Decryption\x20failed\x20after\x20multiple\x20attempts');}async['getIdentityKey'](){return bytesToBase64((await this['ensureIdentity']())['x25519KeyPair']['publicKey']);}async['getRegistrationId'](){return(await this['ensureIdentity']())['registrationId'];}},SessionStateManager=class{constructor(a){this['store']=a;}async['snapshotSession'](a,b){const c=await this['store']['getSession'](a,b);return{'sessionData':c?JSON['stringify'](c):null,'timestamp':Date['now']()};}async['rollbackSession'](a,b,c){if(c['sessionData']){const d=JSON['parse'](c['sessionData']);await this['store']['setSession'](a,b,d);}else await this['store']['removeSession'](a,b);}async['commitSession'](a,b){}},DecryptionEngine=class{constructor(a,b){this['store']=a,this['cipher']=new PQSessionCipher(a,b),this['sessionManager']=new SessionStateManager(a);}async['decryptMessage'](a,b,c,d,e=0x1){const f=await this['sessionManager']['snapshotSession'](b,e);try{if(d===0x3)return await this['handlePreKeyMessage'](a,b,c,e,f);else return await this['handleWhisperMessage'](a,b,c,e,f);}catch(g){return await this['sessionManager']['rollbackSession'](b,e,f),{'success':![],'sessionUpdated':![],'sessionRolledBack':!![],'messageType':d===0x3?'PREKEY':'WHISPER','error':g instanceof Error?g['message']:String(g)};}}async['handlePreKeyMessage'](a,b,c,d,e){const f=new TextDecoder(),g=new Uint8Array(c),h=await this['cipher']['decryptMessage'](b,g,d),i=f['decode'](h);await this['sessionManager']['commitSession'](b,d);if(a['toLowerCase']()<b['toLowerCase']()){}return{'success':!![],'plaintext':i,'sessionUpdated':!![],'sessionRolledBack':![],'messageType':'PREKEY'};}async['handleWhisperMessage'](a,b,c,d,e){if(!await this['cipher']['hasSession'](b,d))throw new Error('No\x20session\x20for\x20WHISPER_MESSAGE');const f=new TextDecoder(),g=new Uint8Array(c),h=await this['cipher']['decryptMessage'](b,g,d);return{'success':!![],'plaintext':f['decode'](h),'sessionUpdated':!![],'sessionRolledBack':![],'messageType':'WHISPER'};}};function canonicalizeJson(a){if(a===void 0x0)return'null';if(a===null||typeof a!=='object')return JSON['stringify'](a);if(Array['isArray'](a))return'['+a['map'](canonicalizeJson)['join'](',')+']';const b=a;return'{'+Object['keys'](b)['sort']()['filter'](c=>b[c]!==void 0x0)['map'](c=>'\x22'+c+'\x22:'+canonicalizeJson(b[c]))['join'](',')+'}';}async function getAccount(){const {Account:a}=await import('./w/local/account.mjs');return a['Instance']();}var Messenger=class{constructor(a,b){this['userAddress']=null,this['onMessageCallback']=null,this['pollingTimer']=null,this['messageConsecutiveEmptyPulls']=0x0,this['prekeyConsecutiveOkCount']=0x0,this['isPollingRunning']=![],this['waitingMessages']=new Map(),this['failedMessages']=new Map(),this['waitingMessageRetries']=new Map(),this['sendPromise']=Promise['resolve'](),this['userAddress']=a,this['config']={...DEFAULT_MESSENGER_CONFIG,...b},this['session']=new MessengerSession(a,this['config']),this['serverClient']=new MessengerServerClient(this['config']),this['messageStorage']=new MessageStorage(a),this['sessionStateStorage']=new SessionStateStorage(a),this['decryptionEngine']=new DecryptionEngine(this['session']['store'],async()=>{return(await(await getAccount())['deriveX25519Identity'](a))['falcon512KeyPair'];}),this['currentMessageInterval']=this['config']['message_poll_default_interval_ms']??0x168*0x3e8;}['getUserAddress'](){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');return this['userAddress'];}async['getPublicKey'](){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');return(await(await getAccount())['get'](this['userAddress'],![],!![]))?.['pubkey']||'';}['isValidGuardMessage'](a,b){return Boolean(a&&b&&a31a(a)&&a31a(b));}async['generateSignatureParams'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const b=await(await getAccount())['get'](this['userAddress'],![]);if(!b?.['secret'])throw new MessengerError('IDENTITY_NOT_FOUND','Account\x20not\x20found\x20or\x20no\x20secret\x20key\x20for\x20'+this['userAddress']);const {Falcon512Keypair:c}=await import('./keypairs/falcon512/index.mjs'),d=c['fromSecretKey'](b['secret']),e=d['getPublicKey']()['toWowPublicKey'](),f=Date['now'](),g=this['generateNonce'](),h=a+':'+e+':'+f+':'+g,i=await d['sign'](new TextEncoder()['encode'](h));return{'signatureScheme':'Falcon512','signature':Buffer['from'](i)['toString']('base64'),'timestamp':f,'nonce':g};}['generateNonce'](){const a=new Uint8Array(0x10);return crypto['getRandomValues'](a),Array['from'](a,c=>c['toString'](0x10)['padStart'](0x2,'0'))['join']('');}async['initialize'](){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');await this['session']['ensureIdentity'](this['userAddress']),await this['session']['registerDevice'](this['userAddress']),await this['session']['ensurePreKeys'](this['userAddress']),await this['checkAndRefillPrekeys'](),this['startPollingTimer']();}async['checkAndRefillPrekeys'](){if(!this['userAddress'])return;await this['session']['ensurePreKeys'](this['userAddress'],![]);}['startPollingTimer'](){if(this['pollingTimer'])clearTimeout(this['pollingTimer']);this['isPollingRunning']=!![],this['scheduleNextPoll']();}['stopPollingTimer'](){this['isPollingRunning']=![],this['pollingTimer']&&(clearTimeout(this['pollingTimer']),this['pollingTimer']=null);}['scheduleNextPoll'](){if(!this['isPollingRunning'])return;const a=this['getNextPollInterval']();this['pollingTimer']=setTimeout(()=>{this['poll']()['catch'](b=>{})['finally'](()=>{this['scheduleNextPoll']();});},a);}['getNextPollInterval'](){if(this['waitingMessages']['size']>0x0)return this['config']['message_poll_waiting_interval_ms']??0x3*0x3e8;return this['currentMessageInterval'];}async['poll'](){if(!this['userAddress'])return;try{const a=await this['pullMessages']();if(a['messages']['length']>0x0){this['messageConsecutiveEmptyPulls']=0x0,this['currentMessageInterval']=this['config']['message_poll_fast_interval_ms']??0x6*0x3e8;if(this['onMessageCallback'])this['onMessageCallback'](a['messages']);}else this['messageConsecutiveEmptyPulls']++,this['messageConsecutiveEmptyPulls']>=(this['config']['message_poll_consecutive_empty_limit']??0x3)&&(this['currentMessageInterval']=this['config']['message_poll_default_interval_ms']??0x168*0x3e8,this['messageConsecutiveEmptyPulls']=0x0);if(a['prekey_status']){if(a['prekey_status']['shouldRefill'])this['prekeyConsecutiveOkCount']=0x0,await this['checkAndRefillPrekeys']();else{this['prekeyConsecutiveOkCount']++;if(this['prekeyConsecutiveOkCount']>=(this['config']['prekey_poll_consecutive_ok_limit']??0x3))this['prekeyConsecutiveOkCount']=0x0;}}}catch(b){}}['triggerFastPoll'](){this['currentMessageInterval']=this['config']['message_poll_fast_interval_ms']??0x6*0x3e8,this['messageConsecutiveEmptyPulls']=0x0;if(this['isPollingRunning']){if(this['pollingTimer'])clearTimeout(this['pollingTimer']);this['scheduleNextPoll']();}}async['sendMessage'](a,b,c){const d=this['sendPromise'];let e;this['sendPromise']=new Promise(f=>{e=f;}),await d;try{if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');if(c?.['replyTo']){const B=this['messageStorage']['getMessageById'](c['replyTo']['messageId']);if(!B)throw new MessengerError('INVALID_INPUT','sendMessage.replyTo.messageId\x20'+c['replyTo']['messageId']+'\x20not\x20found\x20in\x20local\x20storage');const C=this['userAddress']['toLowerCase'](),D=a['toLowerCase'](),E=B['fromAddress']['toLowerCase'](),F=B['toAddress']['toLowerCase']();if(!(E===C&&F===D||E===D&&F===C))throw new MessengerError('INVALID_INPUT','sendMessage.replyTo.messageId\x20'+c['replyTo']['messageId']+'\x20does\x20not\x20belong\x20to\x20this\x20conversation');}else{if(b['startsWith']('@REPLY@'))throw new MessengerError('INVALID_INPUT','Message\x20content\x20cannot\x20start\x20with\x20the\x20reserved\x20prefix\x20\x22'+REPLY_HEADER+'\x22.\x20Use\x20the\x20reply\x20feature\x20to\x20send\x20a\x20quoted\x20message,\x20or\x20rephrase\x20your\x20content.');}const f=Date['now'](),g=Date['now'](),h=this['generateNonce'](),i=c?.['replyTo']?buildReplyPlaintext(b,c['replyTo']):b,j=new TextEncoder()['encode'](i)['length'];if(j>0x2800)throw new MessengerError('INVALID_INPUT','Message\x20size\x20('+j+'\x20bytes)\x20exceeds\x20maximum\x20allowed\x20size\x20('+NORMAL_MESSAGE_BYTES_LIMIT+'\x20bytes).\x20Consider\x20using\x20sendZipFile\x20for\x20large\x20content.');await this['pullMessages']();const k=this['messageStorage']['getLastReceivedLeafIndex'](this['userAddress'],a),l=await this['session']['encryptMessage'](this['userAddress'],a,i),m=Buffer['from'](new Uint8Array(l['body']))['toString']('base64'),n=hashPlaintext(i,f,c?.['guardAddress'],c?.['passportAddress'],k),o=await(await getAccount())['get'](this['userAddress'],![],!![]);if(!o)throw new MessengerError('IDENTITY_NOT_FOUND','User\x20account\x20not\x20found');const p=o['pubkey'],q=c?.['guardAddress']||'',r=c?.['passportAddress']||'',s=c?.['network']||'',t=k>=0x0?k['toString']():'',u=c?.['force']?'true':'false',v='send_message:'+this['userAddress']+':'+a+':'+q+':'+r+':'+n+':'+t+':'+p+':'+g+':'+h+':'+u+':'+s,w=await(await getAccount())['signData'](this['userAddress'],v),x=Buffer['from'](w['signature']['slice'](0x2),'hex'),y=bytesToBase64(new Uint8Array(x)),z=await this['serverClient']['sendMessage']({'sender':w['publicKey'],'recipient':a,'ciphertext':m,'plaintextHash':n,'clientTimestamp':f,'msgType':l['type'],'signatureScheme':'Falcon512','signature':y,'timestamp':g,'nonce':h,'guardAddress':c?.['guardAddress'],'passportAddress':c?.['passportAddress'],'network':c?.['network'],'force':c?.['force'],'lastReceivedLeafIndex':k>=0x0?k:void 0x0}),A={'messageId':z['messageId'],'fromAddress':this['userAddress'],'toAddress':a,'plaintextHash':n,'plaintext':i,'replyTo':c?.['replyTo'],'guardAddress':c?.['guardAddress'],'passportAddress':c?.['passportAddress'],'lastReceivedLeafIndex':k,'direction':'sent','status':z['status']==='confirmed'?'confirmed':'pending','msgType':l['type'],'createdAt':f};z['merkleData']&&(A['leafIndex']=z['merkleData']['leafIndex'],A['prevRoot']=z['merkleData']['prevRoot'],A['newRoot']=z['merkleData']['newRoot'],A['serverSignature']=z['merkleData']['serverSignature'],A['serverTimestamp']=z['merkleData']['serverTimestamp'],A['serverPublicKey']=z['merkleData']['serverPublicKey'],this['sessionStateStorage']['updateSessionState'](this['userAddress'],a,{'currentRoot':z['merkleData']['newRoot'],'prevRoot':z['merkleData']['prevRoot'],'lastLeafIndex':z['merkleData']['leafIndex'],'lastSyncAt':Date['now']()}));this['messageStorage']['saveMessage'](A);if(z['pendingMerkleData'])for(const [G,H]of Object['entries'](z['pendingMerkleData'])){const I=this['messageStorage']['getMessage'](G);if(I&&I['status']==='pending')this['messageStorage']['updateMessageStatus'](G,'confirmed',{'leafIndex':H['leafIndex'],'newRoot':H['newRoot'],'serverSignature':H['serverSignature'],'serverTimestamp':H['serverTimestamp'],'serverPublicKey':H['serverPublicKey']});}return this['triggerFastPoll'](),{'messageId':z['messageId'],'status':A['status'],'merkleData':z['merkleData'],'guardList':z['guard_list'],'lastReceivedLeafIndex':k>=0x0?k:void 0x0};}finally{e();}}async['pullMessages'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const b=Date['now'](),c=this['generateNonce'](),d='fetch_messages:'+this['userAddress']+':'+(a||0x64)+':'+b+':'+c,e=(await(await getAccount())['get'](this['userAddress'],![],!![]))?.['pubkey']||'',f=await(await getAccount())['signData'](this['userAddress'],d),g={'signatureScheme':'Falcon512','signature':bytesToBase64(Buffer['from'](f['signature']['slice'](0x2),'hex')),'timestamp':b,'nonce':c},h=await this['serverClient']['pullMessages'](this['userAddress'],e,g,a);if(h['messages']['length']===0x0)return{'messages':[],'prekey_status':h['prekey_status']};const i=[],j=[],k=[...h['messages']]['sort'](function(l,m){return(l['clientTimestamp']||0x0)-(m['clientTimestamp']||0x0);});await this['processWaitingMessages'](i,j);for(const l of k){if(this['waitingMessages']['has'](l['id'])){j['push'](l['id']);continue;}if(this['failedMessages']['has'](l['id'])){j['push'](l['id']);continue;}if(this['messageStorage']['getMessage'](l['id'])){j['push'](l['id']);continue;}const m=await this['tryDecryptMessage'](l);if(m['success']&&m['message']&&m['decryptedData'])this['messageStorage']['saveMessage'](m['message']),i['push'](m['decryptedData']),j['push'](l['id']),this['waitingMessages']['delete'](l['id']);else{if(m['shouldRetry'])this['waitingMessages']['set'](l['id'],l);else this['failedMessages']['set'](l['id'],{'message':l,'error':m['error']||'Unknown\x20error'}),await this['saveFailedMessage'](l,m['error']||'Unknown\x20error'),j['push'](l['id']);}}if(this['waitingMessages']['size']>0x0&&this['isPollingRunning'])this['reschedulePolling']();if(j['length']>0x0&&this['userAddress']){const n=Date['now'](),o=this['generateNonce'](),p=await(await getAccount())['get'](this['userAddress'],![],!![]);if(p?.['pubkey']){const q='ack_messages:'+this['userAddress']+':'+j['join'](',')+':'+p['pubkey']+':'+n+':'+o,r=await(await getAccount())['signData'](this['userAddress'],q),s=Buffer['from'](r['signature']['slice'](0x2),'hex'),t=bytesToBase64(new Uint8Array(s));await this['serverClient']['acknowledgeMessages'](j,r['publicKey'],{'publicKey':r['publicKey'],'signatureScheme':'Falcon512','signature':t,'timestamp':n,'nonce':o});}}return{'messages':i,'prekey_status':h['prekey_status']};}['getLastSentLeafIndex'](a){if(!this['userAddress'])return-0x1;const b=this['messageStorage']['getMessagesBySession'](this['userAddress'],a)['filter'](c=>c['direction']==='sent'&&c['leafIndex']!==void 0x0);if(b['length']===0x0)return-0x1;return Math['max'](...b['map'](c=>c['leafIndex']));}['getSessionMessages'](a){if(!this['userAddress'])return[];return this['messageStorage']['getMessagesBySession'](this['userAddress'],a);}['getSessionState'](a){if(!this['userAddress'])return;return this['sessionStateStorage']['getSessionState'](this['userAddress'],a);}async['submitChainProof'](a,b,c){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const d=this['sessionStateStorage']['getSessionState'](this['userAddress'],b);if(!d||!d['currentRoot'])throw new MessengerError('SESSION_NOT_ESTABLISHED','No\x20session\x20state\x20found');const e=this['messageStorage']['getMessagesBySession'](this['userAddress'],b),f=e[e['length']-0x1];if(!f||!f['serverPublicKey']||!f['serverSignature'])throw new MessengerError('INVALID_PROOF','No\x20temporal\x20proof\x20(missing\x20server\x20public\x20key\x20or\x20signature),\x20cannot\x20submit\x20Proof\x20to\x20WoWok\x20blockchain');const g=f['serverPublicKey'],h=f['serverSignature'],i={'sessionId':d['sessionId'],'merkleRoot':d['currentRoot'],'messageCount':d['messageCount'],'timestamp':Date['now']()},{CallProof:j}=await import('./proof-BRpLwdbL.mjs')['then'](l=>l['r']),k=await new j({'proof':JSON['stringify'](i),'server_pubkey':g,'server_signature':h,'proof_type':0x1,'description':c||'Messenger\x20session\x20proof\x20for\x20'+this['userAddress']+'\x20<->\x20'+b,'item_count':d['messageCount'],'about_address':b})['call'](a);return{'proofAddress':(k?.['objectChanges'])?.['find'](l=>l['objectType']?.['includes']('Proof'))?.['objectId']||'','txHash':k?.['digest']||''};}['destroy'](){this['stopPollingTimer']();}['disconnect'](){this['destroy']();}['setOnMessageCallback'](a){this['onMessageCallback']=a;}async['sendZipFile'](a,b,c){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const d=await this['loadFileData'](b),{ZipWriter:e,BlobWriter:f,Uint8ArrayReader:g}=await import('@zip.js/zip.js'),h=c?.['fileName']||a31c['basename'](b)||'file.zip',i=c?.['contentType']||this['detectContentType'](h),j=new f('application/zip'),k=new e(j);await k['add'](h,new g(d)),await k['close']();const l=await j['getData'](),m=new Uint8Array(await l['arrayBuffer']());if(m['length']>0x500000)throw new MessengerError('INVALID_INPUT','ZIP\x20file\x20size\x20('+m['length']+'\x20bytes)\x20exceeds\x20local\x20maximum\x20allowed\x20size\x20('+WTS_FILE_BYTES_LIMIT+'\x20bytes)');const n='0x'+createHash('sha256')['update'](m)['digest']('hex'),o=Buffer['from'](m)['toString']('base64'),p={'fileName':h+'.zip','fileSize':m['length'],'fileHash':n,'contentType':i};await this['pullMessages']();const q=this['messageStorage']['getLastReceivedLeafIndex'](this['userAddress'],a),r=Date['now'](),s=await this['session']['encryptMessage'](this['userAddress'],a,o),t=Buffer['from'](new Uint8Array(s['body']))['toString']('base64'),u=c?.['guardAddress']||'',v=c?.['passportAddress']||'',w=c?.['network']||'',x=hashPlaintext(o,r,u,v,q),y=Date['now'](),z=this['generateNonce'](),A=await(await getAccount())['get'](this['userAddress'],![],!![]);if(!A)throw new MessengerError('IDENTITY_NOT_FOUND','User\x20account\x20not\x20found');const B=A['pubkey'],C=q>=0x0?q['toString']():'',D=c?.['force']?'true':'false',E='send_message:'+this['userAddress']+':'+a+':'+u+':'+v+':'+x+':'+C+':'+B+':'+y+':'+z+':'+D+':'+w,F=await(await getAccount())['signData'](this['userAddress'],E),G=Buffer['from'](F['signature']['slice'](0x2),'hex'),H=bytesToBase64(new Uint8Array(G)),I=await this['serverClient']['sendMessage']({'sender':F['publicKey'],'recipient':a,'ciphertext':t,'plaintextHash':x,'clientTimestamp':r,'msgType':s['type'],'zipMetadata':p,'guardAddress':c?.['guardAddress'],'passportAddress':c?.['passportAddress'],'network':c?.['network'],'force':c?.['force'],'lastReceivedLeafIndex':q>=0x0?q:void 0x0,'signatureScheme':'Falcon512','signature':H,'timestamp':y,'nonce':z}),J={'messageId':I['messageId'],'fromAddress':this['userAddress'],'toAddress':a,'plaintextHash':x,'plaintext':o,'guardAddress':c?.['guardAddress'],'passportAddress':c?.['passportAddress'],'lastReceivedLeafIndex':q,'direction':'sent','status':I['status']==='confirmed'?'confirmed':'pending','msgType':s['type'],'zipMetadata':p,'createdAt':r};I['merkleData']&&(J['leafIndex']=I['merkleData']['leafIndex'],J['prevRoot']=I['merkleData']['prevRoot'],J['newRoot']=I['merkleData']['newRoot'],J['serverSignature']=I['merkleData']['serverSignature'],J['serverTimestamp']=I['merkleData']['serverTimestamp'],J['serverPublicKey']=I['merkleData']['serverPublicKey'],this['sessionStateStorage']['updateSessionState'](this['userAddress'],a,{'currentRoot':I['merkleData']['newRoot'],'prevRoot':I['merkleData']['prevRoot'],'lastLeafIndex':I['merkleData']['leafIndex'],'lastSyncAt':Date['now']()}));this['messageStorage']['saveMessage'](J);if(I['pendingMerkleData'])for(const [K,L]of Object['entries'](I['pendingMerkleData'])){const M=this['messageStorage']['getMessage'](K);if(M&&M['status']==='pending')this['messageStorage']['updateMessageStatus'](K,'confirmed',{'leafIndex':L['leafIndex'],'newRoot':L['newRoot'],'serverSignature':L['serverSignature'],'serverTimestamp':L['serverTimestamp'],'serverPublicKey':L['serverPublicKey']});}return this['triggerFastPoll'](),{'messageId':I['messageId'],'status':J['status'],'merkleData':I['merkleData'],'guardList':I['guard_list'],'lastReceivedLeafIndex':q>=0x0?q:void 0x0};}async['loadFileData'](a){if(a['startsWith']('http://')||a['startsWith']('https://')){const d=await fetch(a);if(!d['ok'])throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20fetch\x20file\x20from\x20'+a+':\x20'+d['statusText']);const e=await d['arrayBuffer']();return new Uint8Array(e);}const b=a31c['resolve'](a);if(!a31d['existsSync'](b))throw new MessengerError('FILE_NOT_FOUND','File\x20not\x20found:\x20'+b);const c=a31d['readFileSync'](b);return new Uint8Array(c);}['detectContentType'](a){switch(a31c['extname'](a)['toLowerCase']()){case'.wts':return'wts';case'.wip':return'wip';default:return'zip';}}async['_createSignedRequest'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const b=Date['now'](),c=this['generateNonce'](),d=b+':'+c+':'+canonicalizeJson(a),e=await(await getAccount())['signData'](this['userAddress'],d),f=Buffer['from'](e['signature']['slice'](0x2),'hex'),g=bytesToBase64(new Uint8Array(f)),h=await(await getAccount())['get'](this['userAddress'],![],!![]);if(!h||!h['pubkey'])throw new MessengerError('IDENTITY_NOT_FOUND','Account\x20public\x20key\x20not\x20found');return{'userAddress':this['userAddress'],'publicKey':h['pubkey'],'signatureScheme':'Falcon512','signature':g,'timestamp':b,'nonce':c,'data':a};}['_validateAddresses'](a){const b=[],c=[];for(const d of a)if(a31a(d))b['push'](d);else c['push'](d);return{'valid':b,'invalid':c};}async['addToBlacklist'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const {valid:b,invalid:c}=this['_validateAddresses'](a);if(c['length']>0x0)return{'success':![],'operation':'add','modifiedCount':0x0,'currentCount':0x0,'maxCount':0x0,'invalidAddresses':c,'message':'Invalid\x20addresses:\x20'+c['join'](',\x20')};const d={'addresses':b},e=await this['_createSignedRequest'](d);return this['serverClient']['addToBlacklist'](this['userAddress'],e);}async['removeFromBlacklist'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const {valid:b,invalid:c}=this['_validateAddresses'](a);if(c['length']>0x0)return{'success':![],'operation':'remove','modifiedCount':0x0,'currentCount':0x0,'maxCount':0x0,'invalidAddresses':c,'message':'Invalid\x20addresses:\x20'+c['join'](',\x20')};const d={'addresses':b},e=await this['_createSignedRequest'](d);return this['serverClient']['removeFromBlacklist'](this['userAddress'],e);}async['clearBlacklist'](){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const a=await this['_createSignedRequest']({});return this['serverClient']['clearBlacklist'](this['userAddress'],a);}async['getBlacklist'](){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const a=await this['_createSignedRequest']({});return this['serverClient']['getBlacklist'](this['userAddress'],a);}async['existInBlacklist'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const {valid:b,invalid:c}=this['_validateAddresses'](a);if(c['length']>0x0)return{'success':![],'operation':'exist','modifiedCount':0x0,'currentCount':0x0,'maxCount':0x0,'invalidAddresses':c,'message':'Invalid\x20addresses:\x20'+c['join'](',\x20')};const d={'addresses':b},e=await this['_createSignedRequest'](d);return this['serverClient']['existInBlacklist'](this['userAddress'],e);}async['addToFriendsList'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const {valid:b,invalid:c}=this['_validateAddresses'](a);if(c['length']>0x0)return{'success':![],'operation':'add','modifiedCount':0x0,'currentCount':0x0,'maxCount':0x0,'invalidAddresses':c,'message':'Invalid\x20addresses:\x20'+c['join'](',\x20')};const d={'addresses':b},e=await this['_createSignedRequest'](d);return this['serverClient']['addToFriendsList'](this['userAddress'],e);}async['removeFromFriendsList'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const {valid:b,invalid:c}=this['_validateAddresses'](a);if(c['length']>0x0)return{'success':![],'operation':'remove','modifiedCount':0x0,'currentCount':0x0,'maxCount':0x0,'invalidAddresses':c,'message':'Invalid\x20addresses:\x20'+c['join'](',\x20')};const d={'addresses':b},e=await this['_createSignedRequest'](d);return this['serverClient']['removeFromFriendsList'](this['userAddress'],e);}async['clearFriendsList'](){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const a=await this['_createSignedRequest']({});return this['serverClient']['clearFriendsList'](this['userAddress'],a);}async['getFriendsList'](){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const a=await this['_createSignedRequest']({});return this['serverClient']['getFriendsList'](this['userAddress'],a);}async['existInFriendsList'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const {valid:b,invalid:c}=this['_validateAddresses'](a);if(c['length']>0x0)return{'success':![],'operation':'exist','modifiedCount':0x0,'currentCount':0x0,'maxCount':0x0,'invalidAddresses':c,'message':'Invalid\x20addresses:\x20'+c['join'](',\x20')};const d={'addresses':b},e=await this['_createSignedRequest'](d);return this['serverClient']['existInFriendsList'](this['userAddress'],e);}async['addToGuardList'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const b={'guards':a},c=await this['_createSignedRequest'](b);return this['serverClient']['addToGuardList'](this['userAddress'],c);}async['removeFromGuardList'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const {valid:b,invalid:c}=this['_validateAddresses'](a);if(c['length']>0x0)return{'success':![],'operation':'remove','modifiedCount':0x0,'currentCount':0x0,'maxCount':0x0,'invalidAddresses':c,'message':'Invalid\x20addresses:\x20'+c['join'](',\x20')};const d={'addresses':b},e=await this['_createSignedRequest'](d);return this['serverClient']['removeFromGuardList'](this['userAddress'],e);}async['getGuardList'](){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const a=await this['_createSignedRequest']({});return this['serverClient']['getGuardList'](this['userAddress'],a);}async['getSettings'](){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const a=await this['_createSignedRequest']({});return this['serverClient']['getSettings'](this['userAddress'],a);}async['setSettings'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const b={'allowStrangerMessages':a['allowStrangerMessages'],'maxInboxSize':a['maxInboxSize']},c=await this['_createSignedRequest'](b);return this['serverClient']['updateSettings'](this['userAddress'],c);}async['tryDecryptMessage'](a){try{const b=Uint8Array['from'](Buffer['from'](a['bodyB64'],'base64')),c=await this['decryptionEngine']['decryptMessage'](this['userAddress'],a['from'],b['buffer'],a['msgType']);if(!c['success'])return{'success':![],'shouldRetry':this['isRetryableError'](c['error']||''),'error':c['error'],'sessionUpdated':c['sessionUpdated']};const d=c['plaintext'],e=parseReplyPlaintext(d);if(!a['clientTimestamp'])throw new Error('Missing\x20clientTimestamp\x20for\x20message\x20'+a['id']);if(!a['plaintextHash'])throw new Error('Missing\x20plaintextHash\x20for\x20message\x20'+a['id']);const f=verifyMessage({'messageId':a['id'],'plaintext':d,'plaintextHash':a['plaintextHash'],'createdAt':a['clientTimestamp'],'guardAddress':a['guardAddress'],'passportAddress':a['passportAddress'],'lastReceivedLeafIndex':a['lastReceivedLeafIndex'],'serverSignature':a['merkleMetadata']?.['serverSignature'],'serverPublicKey':a['merkleMetadata']?.['serverPublicKey'],'merkleMetadata':a['merkleMetadata']?{'prevRoot':a['merkleMetadata']['prevRoot'],'newRoot':a['merkleMetadata']['newRoot'],'serverTimestamp':a['merkleMetadata']['serverTimestamp'],'leafIndex':a['merkleMetadata']['leafIndex'],'proofSiblings':a['merkleMetadata']['proofSiblings'],'proofIndices':a['merkleMetadata']['proofIndices']}:void 0x0});if(!f['valid'])throw new Error(f['error']);const g={'messageId':a['id'],'fromAddress':a['from'],'toAddress':this['userAddress'],'plaintextHash':a['plaintextHash'],'plaintext':d,'replyTo':e['replyTo'],'guardAddress':a['guardAddress'],'passportAddress':a['passportAddress'],'lastReceivedLeafIndex':a['lastReceivedLeafIndex'],'direction':'received','status':'decrypted','msgType':a['msgType'],'leafIndex':a['merkleMetadata']?.['leafIndex'],'prevRoot':a['merkleMetadata']?.['prevRoot'],'newRoot':a['merkleMetadata']?.['newRoot'],'serverSignature':a['merkleMetadata']?.['serverSignature'],'serverTimestamp':a['merkleMetadata']?.['serverTimestamp'],'serverPublicKey':a['merkleMetadata']?.['serverPublicKey'],'createdAt':a['clientTimestamp'],'receivedAt':Date['now'](),'zipMetadata':a['zipMetadata']};if(a['merkleMetadata'])this['sessionStateStorage']['updateSessionState'](this['userAddress'],a['from'],{'currentRoot':a['merkleMetadata']['newRoot'],'prevRoot':a['merkleMetadata']['prevRoot'],'lastLeafIndex':a['merkleMetadata']['leafIndex'],'lastSyncAt':Date['now']()});const h=a['merkleMetadata']?.['serverTimestamp']||a['clientTimestamp']||Date['now']();if(a['lastReceivedLeafIndex']!==void 0x0&&a['lastReceivedLeafIndex']>=0x0){const i=this['messageStorage']['getMessagesBySession'](this['userAddress'],a['from'])['filter'](j=>j['direction']==='sent'&&j['status']==='confirmed'&&j['leafIndex']!==void 0x0&&j['leafIndex']<=a['lastReceivedLeafIndex']);for(const j of i)this['messageStorage']['updateMessageStatus'](j['messageId'],'read');}return{'success':!![],'shouldRetry':![],'message':g,'decryptedData':{'id':a['id'],'from':a['from'],'plaintext':d,'timestamp':h,'merkleVerified':!!a['merkleMetadata'],'merkleData':a['merkleMetadata']?{'leafIndex':a['merkleMetadata']['leafIndex'],'rootHash':a['merkleMetadata']['newRoot']}:void 0x0},'sessionUpdated':c['sessionUpdated']};}catch(k){const l=k instanceof Error?k['message']:String(k);return{'success':![],'shouldRetry':this['isRetryableError'](l),'error':l};}}['isRetryableError'](a){return[/message number/i,/chain key/i,/session not found/i,/prekey not found/i,/PREKEY 竞争:我的地址较小,保留我的会话/i,/The operation failed for an operation-specific reason/i,/DOMException/i,/收到 WHISPER_MESSAGE 但无现有会话,需要等待 PREKEY_MESSAGE/i]['some'](b=>b['test'](a));}async['processWaitingMessages'](a,b){if(this['waitingMessages']['size']===0x0)return;const c=[],d=Array['from'](this['waitingMessages']['values']())['sort'](function(e,f){return(e['clientTimestamp']||0x0)-(f['clientTimestamp']||0x0);});for(const e of d){const f=e['id'],g=await this['tryDecryptMessage'](e);if(g['success']&&g['message']&&g['decryptedData'])this['messageStorage']['saveMessage'](g['message']),a['push'](g['decryptedData']),b['push'](f),c['push'](f),this['waitingMessageRetries']['delete'](f);else{if(!g['shouldRetry'])this['failedMessages']['set'](f,{'message':e,'error':g['error']||'Unknown\x20error'}),await this['saveFailedMessage'](e,g['error']||'Unknown\x20error'),b['push'](f),c['push'](f),this['waitingMessageRetries']['delete'](f);else{const h=(this['waitingMessageRetries']['get'](f)||0x0)+0x1;if(h>=0x3)this['failedMessages']['set'](f,{'message':e,'error':g['error']||'Retry\x20limit\x20exceeded'}),await this['saveFailedMessage'](e,g['error']||'Retry\x20limit\x20exceeded'),b['push'](f),c['push'](f),this['waitingMessageRetries']['delete'](f);else this['waitingMessageRetries']['set'](f,h);}}}for(const i of c)this['waitingMessages']['delete'](i);if(c['length']>0x0){}}async['saveFailedMessage'](a,b){const c={'messageId':a['id'],'fromAddress':a['from'],'toAddress':this['userAddress'],'plaintextHash':a['plaintextHash']||'','guardAddress':a['guardAddress'],'passportAddress':a['passportAddress'],'lastReceivedLeafIndex':a['lastReceivedLeafIndex'],'direction':'received','status':'decrypt_failed','msgType':a['msgType'],'leafIndex':a['merkleMetadata']?.['leafIndex'],'prevRoot':a['merkleMetadata']?.['prevRoot'],'newRoot':a['merkleMetadata']?.['newRoot'],'serverSignature':a['merkleMetadata']?.['serverSignature'],'serverTimestamp':a['merkleMetadata']?.['serverTimestamp'],'serverPublicKey':a['merkleMetadata']?.['serverPublicKey'],'createdAt':a['clientTimestamp']||Date['now'](),'receivedAt':Date['now'](),'zipMetadata':a['zipMetadata'],'decryptError':b,'decryptAttempts':0x1,'lastDecryptAttemptAt':Date['now']()};this['messageStorage']['saveMessage'](c);}['reschedulePolling'](){if(!this['isPollingRunning']||!this['pollingTimer'])return;clearTimeout(this['pollingTimer']),this['pollingTimer']=null,this['scheduleNextPoll']();}['getFailedMessages'](){return Array['from'](this['failedMessages']['entries']())['map'](([a,b])=>({'messageId':a,'from':b['message']['from'],'error':b['error'],'leafIndex':b['message']['merkleMetadata']?.['leafIndex']}));}['clearFailedMessages'](a){if(a)this['failedMessages']['delete'](a);else this['failedMessages']['clear']();}['getWaitingMessageCount'](){return this['waitingMessages']['size'];}};export{canonicalizeJson as n,Messenger as t};
1
+ import{o as a31a}from'./wow-types-DctQuD2J.mjs';import{r as a31b}from'./logger-Cs5Mf7Mf.mjs';import{PQSessionCipher}from'./w/messenger/pq/session.mjs';import{PQSessionStoreAdapter}from'./w/messenger/pq/store-adapter.mjs';import{DEFAULT_MESSENGER_CONFIG,MessengerError,NORMAL_MESSAGE_BYTES_LIMIT,WTS_FILE_BYTES_LIMIT}from'./w/messenger/types.mjs';import{MessageStorage,SessionStateStorage,getDatabase}from'./w/messenger/storage.mjs';import{base64ToBytes,bytesToBase64,hashPlaintext,verifyMessage}from'./w/messenger/crypto.mjs';import{REPLY_HEADER,buildReplyPlaintext,parseReplyPlaintext}from'./w/messenger/reply.mjs';import{randomBytes}from'@noble/hashes/utils.js';import*as a31c from'path';import*as a31d from'fs';import{createHash}from'crypto';const logger=a31b('messenger:server');var MessengerServerClient=class{constructor(a){this['config']={...DEFAULT_MESSENGER_CONFIG,...a};}async['fetchWithTimeout'](a,b={},c){const d=c??this['config']['requestTimeoutMs']??0x7530,e=new AbortController(),f=setTimeout(()=>e['abort'](),d);try{return await fetch(a,{...b,'signal':e['signal']});}finally{clearTimeout(f);}}async['registerDevice'](a){try{const b=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/register',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](a)});if(!b['ok']){const d=await b['text']();if(b['status']===0x199){if(d['includes']('different\x20key'))throw new MessengerError('IDENTITY_CONFLICT','Identity\x20already\x20exists\x20with\x20different\x20key:\x20'+d);return{'success':!![],'uploadedCount':0x0,'failedPrekeys':[],'currentTotal':0x0,'maxAllowed':0x64};}throw new MessengerError('SERVER_ERROR','Registration\x20failed:\x20'+b['status']+'\x20'+b['statusText']+'\x20-\x20'+d);}const c=await b['json']();if(c['failedPrekeys']&&c['failedPrekeys']['length']>0x0){}return{'success':c['success'],'uploadedCount':c['uploaded_count'],'failedPrekeys':c['failed_prekeys']||[],'currentTotal':c['current_total'],'maxAllowed':c['max_allowed']};}catch(e){if(e instanceof MessengerError)throw e;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20register\x20device',e);}}async['uploadPreKeys'](a){try{const b=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/prekeys/upload',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](a)});if(!b['ok']){const d=await b['text']();throw new MessengerError('SERVER_ERROR','Failed\x20to\x20upload\x20prekeys:\x20'+b['status']+'\x20'+b['statusText']+'\x20-\x20'+d);}const c=await b['json']();if(c['failedPrekeys']&&c['failedPrekeys']['length']>0x0)throw new MessengerError('SERVER_ERROR','Some\x20prekeys\x20failed\x20to\x20upload:\x20'+JSON['stringify'](c['failedPrekeys']));return{'success':c['success'],'uploadedCount':c['uploaded_count'],'failedPrekeys':c['failed_prekeys']||[],'currentTotal':c['current_total'],'maxAllowed':c['max_allowed']};}catch(e){if(e instanceof MessengerError)throw e;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20upload\x20prekeys',e);}}async['fetchRemoteBundle'](a,b,c,d,e){try{const f=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/bundle/'+a,{'headers':{'X-PublicKey':c,'X-SignatureScheme':d['signatureScheme'],'X-Signature':d['signature'],'X-Timestamp':d['timestamp']['toString'](),'X-Nonce':d['nonce']}});if(!f['ok']){if(f['status']===0x194)throw new MessengerError('IDENTITY_NOT_FOUND','User\x20'+a+'\x20not\x20found\x20on\x20server');throw new MessengerError('SERVER_ERROR','Failed\x20to\x20fetch\x20remote\x20bundle:\x20'+f['statusText']);}return await f['json']();}catch(g){if(g instanceof MessengerError)throw g;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20fetch\x20remote\x20bundle',g);}}async['sendMessage'](a){try{const b=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/message',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](a)}),c=await b['json']();if(!b['ok']){const d=new MessengerError('SERVER_ERROR',c?.['error']?.['message']||c?.['message']||b['statusText']);d['guardList']=c?.['error']?.['guard_list']||c?.['guard_list'];throw d;}return c;}catch(e){if(e instanceof MessengerError)throw e;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20send\x20message',e);}}async['pullMessages'](a,b,c,d){try{const e=new URL(this['config']['serverUrl']+'/v1/messages/'+a);if(d!==void 0x0)e['searchParams']['set']('limit',d['toString']());const f=await this['fetchWithTimeout'](e['toString'](),{'headers':{'X-PublicKey':b,'X-SignatureScheme':c['signatureScheme'],'X-Signature':c['signature'],'X-Timestamp':c['timestamp']['toString'](),'X-Nonce':c['nonce']}});if(!f['ok'])throw new MessengerError('SERVER_ERROR','Failed\x20to\x20pull\x20messages:\x20'+f['statusText']);return await f['json']();}catch(g){if(g instanceof MessengerError)throw g;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20pull\x20messages',g);}}async['popPreKey'](a,b){try{const c=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/prekeys/'+a+'/one',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify']({'publicKey':b['publicKey'],'signatureScheme':b['signatureScheme'],'signature':b['signature'],'timestamp':b['timestamp'],'nonce':b['nonce']})});if(c['status']===0x1ad)throw new MessengerError('SERVER_ERROR','Rate\x20limited:\x20too\x20many\x20pop\x20prekey\x20requests');if(c['status']===0x191)throw new MessengerError('SERVER_ERROR','Unauthorized:\x20signature\x20verification\x20failed\x20or\x20address\x20mismatch');if(!c['ok'])throw new MessengerError('SERVER_ERROR','Failed\x20to\x20pop\x20prekey:\x20'+c['statusText']);return await c['json']();}catch(d){if(d instanceof MessengerError)throw d;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20pop\x20prekey',d);}}async['getPrekeyStatus'](a,b,c){try{const d=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/prekeys/'+a+'/status',{'headers':{'X-PublicKey':b,'X-SignatureScheme':c['signatureScheme'],'X-Signature':c['signature'],'X-Timestamp':c['timestamp']['toString'](),'X-Nonce':c['nonce']}});if(!d['ok'])throw new MessengerError('SERVER_ERROR','Failed\x20to\x20get\x20prekey\x20status:\x20'+d['statusText']);const e=await d['json']();return{'currentCount':e['currentCount'],'maxAllowed':e['maxAllowed'],'threshold':e['threshold'],'shouldRefill':e['shouldRefill']};}catch(f){if(f instanceof MessengerError)throw f;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20get\x20prekey\x20status',f);}}async['acknowledgeMessages'](a,b,c){try{const d=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/messages/ack',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify']({'publicKey':c['publicKey'],'messageIds':a,'senderPublicKey':b,'signatureScheme':c['signatureScheme'],'signature':c['signature'],'timestamp':c['timestamp'],'nonce':c['nonce']})});if(!d['ok'])throw new MessengerError('SERVER_ERROR','Failed\x20to\x20acknowledge\x20messages:\x20'+d['statusText']);}catch(e){if(e instanceof MessengerError)throw e;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20acknowledge\x20messages',e);}}async['addToBlacklist'](a,b){return this['_listOperation'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/blacklist',b,'POST');}async['removeFromBlacklist'](a,b){return this['_listOperation'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/blacklist',b,'DELETE');}async['clearBlacklist'](a,b){return this['_listOperation'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/blacklist/clear',b,'POST');}async['getBlacklist'](a,b){try{const c=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/blacklist/get',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](b)});if(!c['ok']){const d=await c['text']();logger['error']('getBlacklist\x20error\x20response:',d);throw new MessengerError('SERVER_ERROR','Failed\x20to\x20get\x20blacklist:\x20'+c['statusText']+'\x20-\x20'+d);}return await c['json']();}catch(e){if(e instanceof MessengerError)throw e;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20get\x20blacklist',e);}}async['existInBlacklist'](a,b){return this['_listOperation'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/blacklist/exist',b,'POST');}async['addToFriendsList'](a,b){return this['_listOperation'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/friends-list',b,'POST');}async['removeFromFriendsList'](a,b){return this['_listOperation'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/friends-list',b,'DELETE');}async['clearFriendsList'](a,b){return this['_listOperation'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/friends-list/clear',b,'POST');}async['getFriendsList'](a,b){try{const c=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/friends-list/get',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](b)});if(!c['ok'])throw new MessengerError('SERVER_ERROR','Failed\x20to\x20get\x20friends\x20list:\x20'+c['statusText']);return await c['json']();}catch(d){if(d instanceof MessengerError)throw d;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20get\x20friends\x20list',d);}}async['existInFriendsList'](a,b){return this['_listOperation'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/friends-list/exist',b,'POST');}async['addToGuardList'](a,b){return this['_listOperation'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/guard-list',b,'POST');}async['removeFromGuardList'](a,b){return this['_listOperation'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/guard-list',b,'DELETE');}async['getGuardList'](a,b){try{const c=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/guard-list/get',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](b)});if(!c['ok'])throw new MessengerError('SERVER_ERROR','Failed\x20to\x20get\x20guard\x20list:\x20'+c['statusText']);return await c['json']();}catch(d){if(d instanceof MessengerError)throw d;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20get\x20guard\x20list',d);}}async['updateSettings'](a,b){try{const c=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/settings',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](b)});if(!c['ok']){const d=await c['text']();throw new MessengerError('SERVER_ERROR','Failed\x20to\x20update\x20settings:\x20'+c['statusText']+'\x20-\x20'+d);}return(await c['json']())['success'];}catch(e){if(e instanceof MessengerError)throw e;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20update\x20settings',e);}}async['getSettings'](a,b){try{const c=await this['fetchWithTimeout'](this['config']['serverUrl']+'/v1/spam-protection/'+a+'/settings/get',{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify'](b)});if(!c['ok']){const d=await c['text']();throw new MessengerError('SERVER_ERROR','Failed\x20to\x20get\x20settings:\x20'+c['statusText']+'\x20-\x20'+d);}return await c['json']();}catch(e){if(e instanceof MessengerError)throw e;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20get\x20settings',e);}}async['_listOperation'](a,b,c='POST'){try{const d=await this['fetchWithTimeout'](a,{'method':c,'headers':{'Content-Type':'application/json'},'body':JSON['stringify'](b)});if(!d['ok']){const e=await d['text']();throw new MessengerError('SERVER_ERROR','List\x20operation\x20failed:\x20'+d['statusText']+'\x20-\x20'+e);}return await d['json']();}catch(f){if(f instanceof MessengerError)throw f;throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20perform\x20list\x20operation',f);}}};new MessengerServerClient();async function getAccount$1(){const {Account:a}=await import('./w/local/account.mjs');return a['Instance']();}var MessengerSession=class{constructor(a,b){this['identity']=null,this['config']={...DEFAULT_MESSENGER_CONFIG,...b},this['serverClient']=new MessengerServerClient(this['config']),this['userAddress']=a;const c=getDatabase(a);this['pqStore']=new PQSessionStoreAdapter(c,a),this['pqCipher']=new PQSessionCipher(this['pqStore'],async()=>{return(await(await getAccount$1())['deriveX25519Identity'](a))['falcon512KeyPair'];});}get['store'](){return this['pqStore'];}get['cipher'](){return this['pqCipher'];}async['ensureIdentity'](a){if(this['identity'])return this['identity'];const b=await this['pqStore']['getIdentityKeyPair'](),c=await this['pqStore']['getRegistrationId']();if(b&&c)return this['identity']={'x25519KeyPair':b,'registrationId':c},this['identity'];const d=await(await getAccount$1())['deriveX25519Identity'](this['userAddress']);return await this['pqStore']['setIdentityKeyPair'](d['x25519KeyPair']),await this['pqStore']['setRegistrationId'](d['registrationId']),this['identity']={'x25519KeyPair':d['x25519KeyPair'],'registrationId':d['registrationId']},this['identity'];}['deriveRegistrationId'](a){const b=a[0x0]<<0x8|a[0x1];return b===0x0?0x1:b;}async['registerDevice'](a){const b=await this['ensureIdentity'](a),c=0x1,d=0x1;let e,f;const g=await this['pqStore']['getSignedPreKeySignature'](c),h=await this['pqStore']['getSignedPreKey'](c),i=await this['pqStore']['getPQPreKey'](d),j=await this['pqStore']['getPQPreKeySignature'](d);if(h&&g&&i&&j)e=h['publicKey'],f=g;else{const u=await this['pqCipher']['generatePreKeyBundle'](c,d,this['config']['prekey_count']);e=u['signedPreKey']['keyPair']['publicKey'],f=u['signedPreKey']['signature'];}const k=await this['generatePreKeyBatch'](this['config']['prekey_count'],a),l=await(await getAccount$1())['get'](a,![],!![]);if(!l?.['pubkey'])throw new MessengerError('IDENTITY_NOT_FOUND','Account\x20not\x20found\x20for\x20'+a);const m=Date['now'](),n=this['generateNonce'](),o='register:'+l['pubkey']+':'+m+':'+n,p=await(await getAccount$1())['signData'](a,o),q=Buffer['from'](p['signature']['slice'](0x2),'hex'),r=await this['pqStore']['getPQPreKey'](d),s=await this['pqStore']['getPQPreKeySignature'](d),t={'userAddress':a,'deviceId':0x1,'registrationId':b['registrationId'],'identityKey':bytesToBase64(b['x25519KeyPair']['publicKey']),'falcon512PublicKey':bytesToBase64(base64ToBytes(l['pubkey'])['slice'](0x1)),'signedPrekey':{'keyId':c,'publicKey':bytesToBase64(e),'signature':bytesToBase64(f)},'prekeys':k,'publicKey':l['pubkey'],'signatureScheme':'Falcon512','signature':bytesToBase64(q),'timestamp':m,'nonce':n};if(r&&s)t['pqPrekey']={'keyId':d,'publicKey':bytesToBase64(r['publicKey']),'signature':bytesToBase64(s)};if(h){let v=null;try{const w=Date['now'](),x=this['generateNonce'](),y='get_bundle:'+a+':'+w+':'+x,z=await(await getAccount$1())['signData'](a,y),A=Buffer['from'](z['signature']['slice'](0x2),'hex'),B=await this['serverClient']['fetchRemoteBundle'](a,a,l['pubkey'],{'signatureScheme':'Falcon512','signature':bytesToBase64(new Uint8Array(A)),'timestamp':w,'nonce':x});if(B?.['signedPrekey']?.['publicKey'])v=B['signedPrekey']['publicKey'];}catch(C){if(!(C instanceof MessengerError&&C['code']==='IDENTITY_NOT_FOUND'))v=bytesToBase64(h['publicKey']);}if(v){const D=new TextEncoder()['encode'](v),E=await(await getAccount$1())['signData'](a,D),F=Buffer['from'](E['signature']['slice'](0x2),'hex');t['oldSignedPrekeySignature']=bytesToBase64(new Uint8Array(F));}}await this['serverClient']['registerDevice'](t),await this['verifyRegistrationComplete'](a);}async['verifyRegistrationComplete'](a,b=0xa,c=0x1f4){for(let d=0x0;d<b;d++)try{const e=await(await getAccount$1())['get'](a,![],!![]);if(!e?.['pubkey'])throw new MessengerError('IDENTITY_NOT_FOUND','Account\x20not\x20found\x20for\x20'+a);const f=Date['now'](),g=this['generateNonce'](),h='prekey_status:'+a+':'+f+':'+g,j=await(await getAccount$1())['signData'](a,h),k=Buffer['from'](j['signature']['slice'](0x2),'hex');await this['serverClient']['getPrekeyStatus'](a,e['pubkey'],{'signatureScheme':'Falcon512','signature':bytesToBase64(new Uint8Array(k)),'timestamp':f,'nonce':g});return;}catch(l){if(l?.['message']?.['includes']('404')||l?.['status']===0x194){if(d<b-0x1){await new Promise(m=>setTimeout(m,c));continue;}}throw l;}throw new MessengerError('REGISTRATION_FAILED','Registration\x20verification\x20failed\x20after\x20'+b+'\x20attempts');}async['isDeviceRegistered'](a){try{if(!await this['pqStore']['getSignedPreKeySignature'](0x1))return![];const b=await(await getAccount$1())['get'](a,![],!![]);if(!b?.['pubkey'])return![];const c=Date['now'](),d=this['generateNonce'](),e='prekey_status:'+a+':'+c+':'+d,f=await(await getAccount$1())['signData'](a,e),g=Buffer['from'](f['signature']['slice'](0x2),'hex');return await this['serverClient']['getPrekeyStatus'](a,b['pubkey'],{'signatureScheme':'Falcon512','signature':bytesToBase64(new Uint8Array(g)),'timestamp':c,'nonce':d}),!![];}catch(h){if(h?.['message']?.['includes']('404')||h?.['status']===0x194)return![];return![];}}async['generatePreKeyBatch'](a,b){if(a<=0x0)return[];const c=[],{generateX25519KeyPair:d}=await import('./w/messenger/pq/crypto.mjs'),e=randomBytes(0x4),f=(e[0x0]<<0x18|e[0x1]<<0x10|e[0x2]<<0x8|e[0x3])&0x7fffff00;for(let g=0x0;g<a;g++){const h=f+g,j=await this['pqStore']['getOneTimePreKey'](h);if(j){const n=bytesToBase64(j['publicKey']),o=await(await getAccount$1())['signData'](b,j['publicKey']),p=Buffer['from'](o['signature']['slice'](0x2),'hex');c['push']({'keyId':h,'publicKey':n,'signature':bytesToBase64(p)});continue;}const k=d(),l=await(await getAccount$1())['signData'](b,k['publicKey']),m=Buffer['from'](l['signature']['slice'](0x2),'hex');await this['pqStore']['setOneTimePreKey'](h,k),c['push']({'keyId':h,'publicKey':bytesToBase64(k['publicKey']),'signature':bytesToBase64(m)});}return c;}async['ensurePreKeys'](a,b=![]){const c=await(await getAccount$1())['get'](a,![],!![]);if(!c?.['pubkey'])throw new MessengerError('IDENTITY_NOT_FOUND','Account\x20not\x20found\x20for\x20'+a);const d=Date['now'](),e=this['generateNonce'](),f='prekey_status:'+a+':'+d+':'+e,g=await(await getAccount$1())['signData'](a,f),h=Buffer['from'](g['signature']['slice'](0x2),'hex'),i=await this['serverClient']['getPrekeyStatus'](a,c['pubkey'],{'signatureScheme':'Falcon512','signature':bytesToBase64(new Uint8Array(h)),'timestamp':d,'nonce':e});if(!b&&i['currentCount']>=i['maxAllowed'])return;const j=i['maxAllowed']-i['currentCount'];if(j<=0x0)return;await this['ensureIdentity'](a);const k=await this['generatePreKeyBatch'](j,a);if(k['length']===0x0)return;const l=Date['now'](),m=this['generateNonce'](),n='upload_prekeys:'+c['pubkey']+':'+l+':'+m,o=await(await getAccount$1())['signData'](a,n),p=Buffer['from'](o['signature']['slice'](0x2),'hex');await this['serverClient']['uploadPreKeys']({'userAddress':a,'prekeys':k,'publicKey':c['pubkey'],'signatureScheme':'Falcon512','signature':bytesToBase64(p),'timestamp':l,'nonce':m});}['generateNonce'](){const a=new Uint8Array(0x10);return crypto['getRandomValues'](a),Array['from'](a,c=>c['toString'](0x10)['padStart'](0x2,'0'))['join']('');}async['establishSession'](a,b,c=0x1,d){if(await this['pqCipher']['hasSession'](b,c))return;if(!d){const k=await(await getAccount$1())['get'](a,![],!![]);if(!k?.['pubkey'])throw new MessengerError('IDENTITY_NOT_FOUND','Account\x20not\x20found\x20for\x20'+a);const l=Date['now'](),m=this['generateNonce'](),n=k['pubkey'],o='get_bundle:'+a+':'+l+':'+m,p=await(await getAccount$1())['signData'](a,o),q=Buffer['from'](p['signature']['slice'](0x2),'hex');d=await this['serverClient']['fetchRemoteBundle'](b,a,n,{'signatureScheme':'Falcon512','signature':bytesToBase64(new Uint8Array(q)),'timestamp':l,'nonce':m},c);}const e=d['signedPrekey'];if(!e)throw new MessengerError('IDENTITY_NOT_FOUND','No\x20signed\x20prekey\x20available\x20for\x20'+b);const f=base64ToBytes(d['identityKey']),g=d['falcon512PublicKey']?base64ToBytes(d['falcon512PublicKey']):f,h=base64ToBytes(e['publicKey']),i=base64ToBytes(e['signature']),j={'registrationId':d['registrationId'],'deviceId':c,'identityKey':f,'falcon512PublicKey':g,'signedPreKey':{'keyId':e['keyId'],'publicKey':h,'signature':i},'pqPreKey':d['pqPrekey']?{'keyId':d['pqPrekey']['keyId'],'publicKey':base64ToBytes(d['pqPrekey']['publicKey']),'signature':base64ToBytes(d['pqPrekey']['signature'])}:void 0x0};if(d['oneTimePrekey']){const r=base64ToBytes(d['oneTimePrekey']['publicKey']);j['oneTimePreKey']={'keyId':d['oneTimePrekey']['keyId'],'publicKey':r};}if(d['pqPrekey']){const s=base64ToBytes(d['pqPrekey']['publicKey']),t=base64ToBytes(d['pqPrekey']['signature']);j['pqPreKey']={'keyId':d['pqPrekey']['keyId'],'publicKey':s,'signature':t};}await this['pqCipher']['processPreKeyBundle'](b,c,j);}async['encryptMessage'](a,b,c,d=0x1){let e=0x0;const f=0x5;while(e<=f)try{if(!await this['pqCipher']['hasSession'](b,d))await this['establishSession'](a,b,d);const g=new TextEncoder()['encode'](c),h=await this['pqCipher']['encryptMessage'](b,g,d);return{'type':h['type'],'body':h['body']['buffer'],'registrationId':h['registrationId']};}catch(i){if(e>=f)throw i;try{await this['pqStore']['removeSession'](b,d),e++,await new Promise(j=>setTimeout(j,0x64));}catch(j){throw i;}}throw new MessengerError('ENCRYPTION_FAILED','Encryption\x20failed\x20after\x20multiple\x20attempts');}async['decryptMessage'](a,b,c,d,e=0x1){const f=new TextDecoder(),g=new Uint8Array(c);let h=0x0;const i=0x5,j=await this['pqCipher']['hasSession'](b,e);if(d!==0x3&&!j)throw new Error('收到\x20WHISPER_MESSAGE\x20但无现有会话,需要等待\x20PREKEY_MESSAGE');while(h<=i)try{let k;if(d===0x3)try{return k=await this['pqCipher']['decryptMessage'](b,g,e),f['decode'](k);}catch(l){if(j&&h===0x0){if(a['toLowerCase']()<b['toLowerCase']())throw new Error('PREKEY\x20竞争:我的地址较小,保留我的会话');else return await this['pqStore']['removeSession'](b,e),k=await this['pqCipher']['decryptMessage'](b,g,e),f['decode'](k);}else throw l;}else k=await this['pqCipher']['decryptMessage'](b,g,e);return f['decode'](k);}catch(m){if(h>=i)throw m;try{if(j)await this['pqStore']['removeSession'](b,e);if(d===0x3){}h++,await new Promise(n=>setTimeout(n,0x64));}catch(n){throw m;}}throw new MessengerError('DECRYPTION_FAILED','Decryption\x20failed\x20after\x20multiple\x20attempts');}async['getIdentityKey'](){return bytesToBase64((await this['ensureIdentity']())['x25519KeyPair']['publicKey']);}async['getRegistrationId'](){return(await this['ensureIdentity']())['registrationId'];}},SessionStateManager=class{constructor(a){this['store']=a;}async['snapshotSession'](a,b){const c=await this['store']['getSession'](a,b);return{'sessionData':c?JSON['stringify'](c):null,'timestamp':Date['now']()};}async['rollbackSession'](a,b,c){if(c['sessionData']){const d=JSON['parse'](c['sessionData']);await this['store']['setSession'](a,b,d);}else await this['store']['removeSession'](a,b);}async['commitSession'](a,b){}},DecryptionEngine=class{constructor(a,b){this['store']=a,this['cipher']=new PQSessionCipher(a,b),this['sessionManager']=new SessionStateManager(a);}async['decryptMessage'](a,b,c,d,e=0x1){const f=await this['sessionManager']['snapshotSession'](b,e);try{if(d===0x3)return await this['handlePreKeyMessage'](a,b,c,e,f);else return await this['handleWhisperMessage'](a,b,c,e,f);}catch(g){return await this['sessionManager']['rollbackSession'](b,e,f),{'success':![],'sessionUpdated':![],'sessionRolledBack':!![],'messageType':d===0x3?'PREKEY':'WHISPER','error':g instanceof Error?g['message']:String(g)};}}async['handlePreKeyMessage'](a,b,c,d,e){const f=new TextDecoder(),g=new Uint8Array(c),h=await this['cipher']['decryptMessage'](b,g,d),i=f['decode'](h);await this['sessionManager']['commitSession'](b,d);if(a['toLowerCase']()<b['toLowerCase']()){}return{'success':!![],'plaintext':i,'sessionUpdated':!![],'sessionRolledBack':![],'messageType':'PREKEY'};}async['handleWhisperMessage'](a,b,c,d,e){if(!await this['cipher']['hasSession'](b,d))throw new Error('No\x20session\x20for\x20WHISPER_MESSAGE');const f=new TextDecoder(),g=new Uint8Array(c),h=await this['cipher']['decryptMessage'](b,g,d);return{'success':!![],'plaintext':f['decode'](h),'sessionUpdated':!![],'sessionRolledBack':![],'messageType':'WHISPER'};}};function canonicalizeJson(a){if(a===void 0x0)return'null';if(a===null||typeof a!=='object')return JSON['stringify'](a);if(Array['isArray'](a))return'['+a['map'](canonicalizeJson)['join'](',')+']';const b=a;return'{'+Object['keys'](b)['sort']()['filter'](c=>b[c]!==void 0x0)['map'](c=>'\x22'+c+'\x22:'+canonicalizeJson(b[c]))['join'](',')+'}';}async function getAccount(){const {Account:a}=await import('./w/local/account.mjs');return a['Instance']();}var Messenger=class{constructor(a,b){this['userAddress']=null,this['onMessageCallback']=null,this['pollingTimer']=null,this['messageConsecutiveEmptyPulls']=0x0,this['prekeyConsecutiveOkCount']=0x0,this['isPollingRunning']=![],this['waitingMessages']=new Map(),this['failedMessages']=new Map(),this['waitingMessageRetries']=new Map(),this['sendPromise']=Promise['resolve'](),this['userAddress']=a,this['config']={...DEFAULT_MESSENGER_CONFIG,...b},this['session']=new MessengerSession(a,this['config']),this['serverClient']=new MessengerServerClient(this['config']),this['messageStorage']=new MessageStorage(a),this['sessionStateStorage']=new SessionStateStorage(a),this['decryptionEngine']=new DecryptionEngine(this['session']['store'],async()=>{return(await(await getAccount())['deriveX25519Identity'](a))['falcon512KeyPair'];}),this['currentMessageInterval']=this['config']['message_poll_default_interval_ms']??0x168*0x3e8;}['getUserAddress'](){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');return this['userAddress'];}async['getPublicKey'](){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');return(await(await getAccount())['get'](this['userAddress'],![],!![]))?.['pubkey']||'';}['isValidGuardMessage'](a,b){return Boolean(a&&b&&a31a(a)&&a31a(b));}async['generateSignatureParams'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const b=await(await getAccount())['get'](this['userAddress'],![]);if(!b?.['secret'])throw new MessengerError('IDENTITY_NOT_FOUND','Account\x20not\x20found\x20or\x20no\x20secret\x20key\x20for\x20'+this['userAddress']);const {Falcon512Keypair:c}=await import('./keypairs/falcon512/index.mjs'),d=c['fromSecretKey'](b['secret']),e=d['getPublicKey']()['toWowPublicKey'](),f=Date['now'](),g=this['generateNonce'](),h=a+':'+e+':'+f+':'+g,i=await d['sign'](new TextEncoder()['encode'](h));return{'signatureScheme':'Falcon512','signature':Buffer['from'](i)['toString']('base64'),'timestamp':f,'nonce':g};}['generateNonce'](){const a=new Uint8Array(0x10);return crypto['getRandomValues'](a),Array['from'](a,c=>c['toString'](0x10)['padStart'](0x2,'0'))['join']('');}async['initialize'](){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');await this['session']['ensureIdentity'](this['userAddress']),await this['session']['registerDevice'](this['userAddress']),await this['session']['ensurePreKeys'](this['userAddress']),await this['checkAndRefillPrekeys'](),this['startPollingTimer']();}async['checkAndRefillPrekeys'](){if(!this['userAddress'])return;await this['session']['ensurePreKeys'](this['userAddress'],![]);}['startPollingTimer'](){if(this['pollingTimer'])clearTimeout(this['pollingTimer']);this['isPollingRunning']=!![],this['scheduleNextPoll']();}['stopPollingTimer'](){this['isPollingRunning']=![],this['pollingTimer']&&(clearTimeout(this['pollingTimer']),this['pollingTimer']=null);}['scheduleNextPoll'](){if(!this['isPollingRunning'])return;const a=this['getNextPollInterval']();this['pollingTimer']=setTimeout(()=>{this['poll']()['catch'](b=>{})['finally'](()=>{this['scheduleNextPoll']();});},a);}['getNextPollInterval'](){if(this['waitingMessages']['size']>0x0)return this['config']['message_poll_waiting_interval_ms']??0x3*0x3e8;return this['currentMessageInterval'];}async['poll'](){if(!this['userAddress'])return;try{const a=await this['pullMessages']();if(a['messages']['length']>0x0){this['messageConsecutiveEmptyPulls']=0x0,this['currentMessageInterval']=this['config']['message_poll_fast_interval_ms']??0x6*0x3e8;if(this['onMessageCallback'])this['onMessageCallback'](a['messages']);}else this['messageConsecutiveEmptyPulls']++,this['messageConsecutiveEmptyPulls']>=(this['config']['message_poll_consecutive_empty_limit']??0x3)&&(this['currentMessageInterval']=this['config']['message_poll_default_interval_ms']??0x168*0x3e8,this['messageConsecutiveEmptyPulls']=0x0);if(a['prekey_status']){if(a['prekey_status']['shouldRefill'])this['prekeyConsecutiveOkCount']=0x0,await this['checkAndRefillPrekeys']();else{this['prekeyConsecutiveOkCount']++;if(this['prekeyConsecutiveOkCount']>=(this['config']['prekey_poll_consecutive_ok_limit']??0x3))this['prekeyConsecutiveOkCount']=0x0;}}}catch(b){}}['triggerFastPoll'](){this['currentMessageInterval']=this['config']['message_poll_fast_interval_ms']??0x6*0x3e8,this['messageConsecutiveEmptyPulls']=0x0;if(this['isPollingRunning']){if(this['pollingTimer'])clearTimeout(this['pollingTimer']);this['scheduleNextPoll']();}}async['sendMessage'](a,b,c){const d=this['sendPromise'];let e;this['sendPromise']=new Promise(f=>{e=f;}),await d;try{if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');if(c?.['replyTo']){const B=this['messageStorage']['getMessageById'](c['replyTo']['messageId']);if(!B)throw new MessengerError('INVALID_INPUT','sendMessage.replyTo.messageId\x20'+c['replyTo']['messageId']+'\x20not\x20found\x20in\x20local\x20storage');const C=this['userAddress']['toLowerCase'](),D=a['toLowerCase'](),E=B['fromAddress']['toLowerCase'](),F=B['toAddress']['toLowerCase']();if(!(E===C&&F===D||E===D&&F===C))throw new MessengerError('INVALID_INPUT','sendMessage.replyTo.messageId\x20'+c['replyTo']['messageId']+'\x20does\x20not\x20belong\x20to\x20this\x20conversation');}else{if(b['startsWith']('@REPLY@'))throw new MessengerError('INVALID_INPUT','Message\x20content\x20cannot\x20start\x20with\x20the\x20reserved\x20prefix\x20\x22'+REPLY_HEADER+'\x22.\x20Use\x20the\x20reply\x20feature\x20to\x20send\x20a\x20quoted\x20message,\x20or\x20rephrase\x20your\x20content.');}const f=Date['now'](),g=Date['now'](),h=this['generateNonce'](),i=c?.['replyTo']?buildReplyPlaintext(b,c['replyTo']):b,j=new TextEncoder()['encode'](i)['length'];if(j>0x2800)throw new MessengerError('INVALID_INPUT','Message\x20size\x20('+j+'\x20bytes)\x20exceeds\x20maximum\x20allowed\x20size\x20('+NORMAL_MESSAGE_BYTES_LIMIT+'\x20bytes).\x20Consider\x20using\x20sendZipFile\x20for\x20large\x20content.');await this['pullMessages']();const k=this['messageStorage']['getLastReceivedLeafIndex'](this['userAddress'],a),l=await this['session']['encryptMessage'](this['userAddress'],a,i),m=Buffer['from'](new Uint8Array(l['body']))['toString']('base64'),n=hashPlaintext(i,f,c?.['guardAddress'],c?.['passportAddress'],k),o=await(await getAccount())['get'](this['userAddress'],![],!![]);if(!o)throw new MessengerError('IDENTITY_NOT_FOUND','User\x20account\x20not\x20found');const p=o['pubkey'],q=c?.['guardAddress']||'',r=c?.['passportAddress']||'',s=c?.['network']||'',t=k>=0x0?k['toString']():'',u=c?.['force']?'true':'false',v='send_message:'+this['userAddress']+':'+a+':'+q+':'+r+':'+n+':'+t+':'+p+':'+g+':'+h+':'+u+':'+s,w=await(await getAccount())['signData'](this['userAddress'],v),x=Buffer['from'](w['signature']['slice'](0x2),'hex'),y=bytesToBase64(new Uint8Array(x)),z=await this['serverClient']['sendMessage']({'sender':w['publicKey'],'recipient':a,'ciphertext':m,'plaintextHash':n,'clientTimestamp':f,'msgType':l['type'],'signatureScheme':'Falcon512','signature':y,'timestamp':g,'nonce':h,'guardAddress':c?.['guardAddress'],'passportAddress':c?.['passportAddress'],'network':c?.['network'],'force':c?.['force'],'lastReceivedLeafIndex':k>=0x0?k:void 0x0}),A={'messageId':z['messageId'],'fromAddress':this['userAddress'],'toAddress':a,'plaintextHash':n,'plaintext':i,'replyTo':c?.['replyTo'],'guardAddress':c?.['guardAddress'],'passportAddress':c?.['passportAddress'],'lastReceivedLeafIndex':k,'direction':'sent','status':z['status']==='confirmed'?'confirmed':'pending','msgType':l['type'],'createdAt':f};z['merkleData']&&(A['leafIndex']=z['merkleData']['leafIndex'],A['prevRoot']=z['merkleData']['prevRoot'],A['newRoot']=z['merkleData']['newRoot'],A['serverSignature']=z['merkleData']['serverSignature'],A['serverTimestamp']=z['merkleData']['serverTimestamp'],A['serverPublicKey']=z['merkleData']['serverPublicKey'],this['sessionStateStorage']['updateSessionState'](this['userAddress'],a,{'currentRoot':z['merkleData']['newRoot'],'prevRoot':z['merkleData']['prevRoot'],'lastLeafIndex':z['merkleData']['leafIndex'],'lastSyncAt':Date['now']()}));this['messageStorage']['saveMessage'](A);if(z['pendingMerkleData'])for(const [G,H]of Object['entries'](z['pendingMerkleData'])){const I=this['messageStorage']['getMessage'](G);if(I&&I['status']==='pending')this['messageStorage']['updateMessageStatus'](G,'confirmed',{'leafIndex':H['leafIndex'],'newRoot':H['newRoot'],'serverSignature':H['serverSignature'],'serverTimestamp':H['serverTimestamp'],'serverPublicKey':H['serverPublicKey']});}return this['triggerFastPoll'](),{'messageId':z['messageId'],'status':A['status'],'merkleData':z['merkleData'],'guardList':z['guard_list'],'lastReceivedLeafIndex':k>=0x0?k:void 0x0};}finally{e();}}async['pullMessages'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const b=Date['now'](),c=this['generateNonce'](),d='fetch_messages:'+this['userAddress']+':'+(a||0x64)+':'+b+':'+c,e=(await(await getAccount())['get'](this['userAddress'],![],!![]))?.['pubkey']||'',f=await(await getAccount())['signData'](this['userAddress'],d),g={'signatureScheme':'Falcon512','signature':bytesToBase64(Buffer['from'](f['signature']['slice'](0x2),'hex')),'timestamp':b,'nonce':c},h=await this['serverClient']['pullMessages'](this['userAddress'],e,g,a);if(h['messages']['length']===0x0)return{'messages':[],'prekey_status':h['prekey_status']};const i=[],j=[],k=[...h['messages']]['sort'](function(l,m){return(l['clientTimestamp']||0x0)-(m['clientTimestamp']||0x0);});await this['processWaitingMessages'](i,j);for(const l of k){if(this['waitingMessages']['has'](l['id'])){j['push'](l['id']);continue;}if(this['failedMessages']['has'](l['id'])){j['push'](l['id']);continue;}if(this['messageStorage']['getMessage'](l['id'])){j['push'](l['id']);continue;}const m=await this['tryDecryptMessage'](l);if(m['success']&&m['message']&&m['decryptedData'])this['messageStorage']['saveMessage'](m['message']),i['push'](m['decryptedData']),j['push'](l['id']),this['waitingMessages']['delete'](l['id']);else{if(m['shouldRetry'])this['waitingMessages']['set'](l['id'],l);else this['failedMessages']['set'](l['id'],{'message':l,'error':m['error']||'Unknown\x20error'}),await this['saveFailedMessage'](l,m['error']||'Unknown\x20error'),j['push'](l['id']);}}if(this['waitingMessages']['size']>0x0&&this['isPollingRunning'])this['reschedulePolling']();if(j['length']>0x0&&this['userAddress']){const n=Date['now'](),o=this['generateNonce'](),p=await(await getAccount())['get'](this['userAddress'],![],!![]);if(p?.['pubkey']){const q='ack_messages:'+this['userAddress']+':'+j['join'](',')+':'+p['pubkey']+':'+n+':'+o,r=await(await getAccount())['signData'](this['userAddress'],q),s=Buffer['from'](r['signature']['slice'](0x2),'hex'),t=bytesToBase64(new Uint8Array(s));await this['serverClient']['acknowledgeMessages'](j,r['publicKey'],{'publicKey':r['publicKey'],'signatureScheme':'Falcon512','signature':t,'timestamp':n,'nonce':o});}}return{'messages':i,'prekey_status':h['prekey_status']};}['getLastSentLeafIndex'](a){if(!this['userAddress'])return-0x1;const b=this['messageStorage']['getMessagesBySession'](this['userAddress'],a)['filter'](c=>c['direction']==='sent'&&c['leafIndex']!==void 0x0);if(b['length']===0x0)return-0x1;return Math['max'](...b['map'](c=>c['leafIndex']));}['getSessionMessages'](a){if(!this['userAddress'])return[];return this['messageStorage']['getMessagesBySession'](this['userAddress'],a);}['getSessionState'](a){if(!this['userAddress'])return;return this['sessionStateStorage']['getSessionState'](this['userAddress'],a);}async['submitChainProof'](a,b,c){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const d=this['sessionStateStorage']['getSessionState'](this['userAddress'],b);if(!d||!d['currentRoot'])throw new MessengerError('SESSION_NOT_ESTABLISHED','No\x20session\x20state\x20found');const e=this['messageStorage']['getMessagesBySession'](this['userAddress'],b),f=e[e['length']-0x1];if(!f||!f['serverPublicKey']||!f['serverSignature'])throw new MessengerError('INVALID_PROOF','No\x20temporal\x20proof\x20(missing\x20server\x20public\x20key\x20or\x20signature),\x20cannot\x20submit\x20Proof\x20to\x20WoWok\x20blockchain');const g=f['serverPublicKey'],h=f['serverSignature'],i={'sessionId':d['sessionId'],'merkleRoot':d['currentRoot'],'messageCount':d['messageCount'],'timestamp':Date['now']()},{CallProof:j}=await import('./proof-BwJ-DCF2.mjs')['then'](l=>l['r']),k=await new j({'proof':JSON['stringify'](i),'server_pubkey':g,'server_signature':h,'proof_type':0x1,'description':c||'Messenger\x20session\x20proof\x20for\x20'+this['userAddress']+'\x20<->\x20'+b,'item_count':d['messageCount'],'about_address':b})['call'](a);return{'proofAddress':(k?.['objectChanges'])?.['find'](l=>l['objectType']?.['includes']('Proof'))?.['objectId']||'','txHash':k?.['digest']||''};}['destroy'](){this['stopPollingTimer']();}['disconnect'](){this['destroy']();}['setOnMessageCallback'](a){this['onMessageCallback']=a;}async['sendZipFile'](a,b,c){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const d=await this['loadFileData'](b),{ZipWriter:e,BlobWriter:f,Uint8ArrayReader:g}=await import('@zip.js/zip.js'),h=c?.['fileName']||a31c['basename'](b)||'file.zip',i=c?.['contentType']||this['detectContentType'](h),j=new f('application/zip'),k=new e(j);await k['add'](h,new g(d)),await k['close']();const l=await j['getData'](),m=new Uint8Array(await l['arrayBuffer']());if(m['length']>0x500000)throw new MessengerError('INVALID_INPUT','ZIP\x20file\x20size\x20('+m['length']+'\x20bytes)\x20exceeds\x20local\x20maximum\x20allowed\x20size\x20('+WTS_FILE_BYTES_LIMIT+'\x20bytes)');const n='0x'+createHash('sha256')['update'](m)['digest']('hex'),o=Buffer['from'](m)['toString']('base64'),p={'fileName':h+'.zip','fileSize':m['length'],'fileHash':n,'contentType':i};await this['pullMessages']();const q=this['messageStorage']['getLastReceivedLeafIndex'](this['userAddress'],a),r=Date['now'](),s=await this['session']['encryptMessage'](this['userAddress'],a,o),t=Buffer['from'](new Uint8Array(s['body']))['toString']('base64'),u=c?.['guardAddress']||'',v=c?.['passportAddress']||'',w=c?.['network']||'',x=hashPlaintext(o,r,u,v,q),y=Date['now'](),z=this['generateNonce'](),A=await(await getAccount())['get'](this['userAddress'],![],!![]);if(!A)throw new MessengerError('IDENTITY_NOT_FOUND','User\x20account\x20not\x20found');const B=A['pubkey'],C=q>=0x0?q['toString']():'',D=c?.['force']?'true':'false',E='send_message:'+this['userAddress']+':'+a+':'+u+':'+v+':'+x+':'+C+':'+B+':'+y+':'+z+':'+D+':'+w,F=await(await getAccount())['signData'](this['userAddress'],E),G=Buffer['from'](F['signature']['slice'](0x2),'hex'),H=bytesToBase64(new Uint8Array(G)),I=await this['serverClient']['sendMessage']({'sender':F['publicKey'],'recipient':a,'ciphertext':t,'plaintextHash':x,'clientTimestamp':r,'msgType':s['type'],'zipMetadata':p,'guardAddress':c?.['guardAddress'],'passportAddress':c?.['passportAddress'],'network':c?.['network'],'force':c?.['force'],'lastReceivedLeafIndex':q>=0x0?q:void 0x0,'signatureScheme':'Falcon512','signature':H,'timestamp':y,'nonce':z}),J={'messageId':I['messageId'],'fromAddress':this['userAddress'],'toAddress':a,'plaintextHash':x,'plaintext':o,'guardAddress':c?.['guardAddress'],'passportAddress':c?.['passportAddress'],'lastReceivedLeafIndex':q,'direction':'sent','status':I['status']==='confirmed'?'confirmed':'pending','msgType':s['type'],'zipMetadata':p,'createdAt':r};I['merkleData']&&(J['leafIndex']=I['merkleData']['leafIndex'],J['prevRoot']=I['merkleData']['prevRoot'],J['newRoot']=I['merkleData']['newRoot'],J['serverSignature']=I['merkleData']['serverSignature'],J['serverTimestamp']=I['merkleData']['serverTimestamp'],J['serverPublicKey']=I['merkleData']['serverPublicKey'],this['sessionStateStorage']['updateSessionState'](this['userAddress'],a,{'currentRoot':I['merkleData']['newRoot'],'prevRoot':I['merkleData']['prevRoot'],'lastLeafIndex':I['merkleData']['leafIndex'],'lastSyncAt':Date['now']()}));this['messageStorage']['saveMessage'](J);if(I['pendingMerkleData'])for(const [K,L]of Object['entries'](I['pendingMerkleData'])){const M=this['messageStorage']['getMessage'](K);if(M&&M['status']==='pending')this['messageStorage']['updateMessageStatus'](K,'confirmed',{'leafIndex':L['leafIndex'],'newRoot':L['newRoot'],'serverSignature':L['serverSignature'],'serverTimestamp':L['serverTimestamp'],'serverPublicKey':L['serverPublicKey']});}return this['triggerFastPoll'](),{'messageId':I['messageId'],'status':J['status'],'merkleData':I['merkleData'],'guardList':I['guard_list'],'lastReceivedLeafIndex':q>=0x0?q:void 0x0};}async['loadFileData'](a){if(a['startsWith']('http://')||a['startsWith']('https://')){const d=await fetch(a);if(!d['ok'])throw new MessengerError('NETWORK_ERROR','Failed\x20to\x20fetch\x20file\x20from\x20'+a+':\x20'+d['statusText']);const e=await d['arrayBuffer']();return new Uint8Array(e);}const b=a31c['resolve'](a);if(!a31d['existsSync'](b))throw new MessengerError('FILE_NOT_FOUND','File\x20not\x20found:\x20'+b);const c=a31d['readFileSync'](b);return new Uint8Array(c);}['detectContentType'](a){switch(a31c['extname'](a)['toLowerCase']()){case'.wts':return'wts';case'.wip':return'wip';default:return'zip';}}async['_createSignedRequest'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const b=Date['now'](),c=this['generateNonce'](),d=b+':'+c+':'+canonicalizeJson(a),e=await(await getAccount())['signData'](this['userAddress'],d),f=Buffer['from'](e['signature']['slice'](0x2),'hex'),g=bytesToBase64(new Uint8Array(f)),h=await(await getAccount())['get'](this['userAddress'],![],!![]);if(!h||!h['pubkey'])throw new MessengerError('IDENTITY_NOT_FOUND','Account\x20public\x20key\x20not\x20found');return{'userAddress':this['userAddress'],'publicKey':h['pubkey'],'signatureScheme':'Falcon512','signature':g,'timestamp':b,'nonce':c,'data':a};}['_validateAddresses'](a){const b=[],c=[];for(const d of a)if(a31a(d))b['push'](d);else c['push'](d);return{'valid':b,'invalid':c};}async['addToBlacklist'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const {valid:b,invalid:c}=this['_validateAddresses'](a);if(c['length']>0x0)return{'success':![],'operation':'add','modifiedCount':0x0,'currentCount':0x0,'maxCount':0x0,'invalidAddresses':c,'message':'Invalid\x20addresses:\x20'+c['join'](',\x20')};const d={'addresses':b},e=await this['_createSignedRequest'](d);return this['serverClient']['addToBlacklist'](this['userAddress'],e);}async['removeFromBlacklist'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const {valid:b,invalid:c}=this['_validateAddresses'](a);if(c['length']>0x0)return{'success':![],'operation':'remove','modifiedCount':0x0,'currentCount':0x0,'maxCount':0x0,'invalidAddresses':c,'message':'Invalid\x20addresses:\x20'+c['join'](',\x20')};const d={'addresses':b},e=await this['_createSignedRequest'](d);return this['serverClient']['removeFromBlacklist'](this['userAddress'],e);}async['clearBlacklist'](){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const a=await this['_createSignedRequest']({});return this['serverClient']['clearBlacklist'](this['userAddress'],a);}async['getBlacklist'](){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const a=await this['_createSignedRequest']({});return this['serverClient']['getBlacklist'](this['userAddress'],a);}async['existInBlacklist'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const {valid:b,invalid:c}=this['_validateAddresses'](a);if(c['length']>0x0)return{'success':![],'operation':'exist','modifiedCount':0x0,'currentCount':0x0,'maxCount':0x0,'invalidAddresses':c,'message':'Invalid\x20addresses:\x20'+c['join'](',\x20')};const d={'addresses':b},e=await this['_createSignedRequest'](d);return this['serverClient']['existInBlacklist'](this['userAddress'],e);}async['addToFriendsList'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const {valid:b,invalid:c}=this['_validateAddresses'](a);if(c['length']>0x0)return{'success':![],'operation':'add','modifiedCount':0x0,'currentCount':0x0,'maxCount':0x0,'invalidAddresses':c,'message':'Invalid\x20addresses:\x20'+c['join'](',\x20')};const d={'addresses':b},e=await this['_createSignedRequest'](d);return this['serverClient']['addToFriendsList'](this['userAddress'],e);}async['removeFromFriendsList'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const {valid:b,invalid:c}=this['_validateAddresses'](a);if(c['length']>0x0)return{'success':![],'operation':'remove','modifiedCount':0x0,'currentCount':0x0,'maxCount':0x0,'invalidAddresses':c,'message':'Invalid\x20addresses:\x20'+c['join'](',\x20')};const d={'addresses':b},e=await this['_createSignedRequest'](d);return this['serverClient']['removeFromFriendsList'](this['userAddress'],e);}async['clearFriendsList'](){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const a=await this['_createSignedRequest']({});return this['serverClient']['clearFriendsList'](this['userAddress'],a);}async['getFriendsList'](){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const a=await this['_createSignedRequest']({});return this['serverClient']['getFriendsList'](this['userAddress'],a);}async['existInFriendsList'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const {valid:b,invalid:c}=this['_validateAddresses'](a);if(c['length']>0x0)return{'success':![],'operation':'exist','modifiedCount':0x0,'currentCount':0x0,'maxCount':0x0,'invalidAddresses':c,'message':'Invalid\x20addresses:\x20'+c['join'](',\x20')};const d={'addresses':b},e=await this['_createSignedRequest'](d);return this['serverClient']['existInFriendsList'](this['userAddress'],e);}async['addToGuardList'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const b={'guards':a},c=await this['_createSignedRequest'](b);return this['serverClient']['addToGuardList'](this['userAddress'],c);}async['removeFromGuardList'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const {valid:b,invalid:c}=this['_validateAddresses'](a);if(c['length']>0x0)return{'success':![],'operation':'remove','modifiedCount':0x0,'currentCount':0x0,'maxCount':0x0,'invalidAddresses':c,'message':'Invalid\x20addresses:\x20'+c['join'](',\x20')};const d={'addresses':b},e=await this['_createSignedRequest'](d);return this['serverClient']['removeFromGuardList'](this['userAddress'],e);}async['getGuardList'](){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const a=await this['_createSignedRequest']({});return this['serverClient']['getGuardList'](this['userAddress'],a);}async['getSettings'](){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const a=await this['_createSignedRequest']({});return this['serverClient']['getSettings'](this['userAddress'],a);}async['setSettings'](a){if(!this['userAddress'])throw new MessengerError('IDENTITY_NOT_FOUND','User\x20address\x20not\x20set');const b={'allowStrangerMessages':a['allowStrangerMessages'],'maxInboxSize':a['maxInboxSize']},c=await this['_createSignedRequest'](b);return this['serverClient']['updateSettings'](this['userAddress'],c);}async['tryDecryptMessage'](a){try{const b=Uint8Array['from'](Buffer['from'](a['bodyB64'],'base64')),c=await this['decryptionEngine']['decryptMessage'](this['userAddress'],a['from'],b['buffer'],a['msgType']);if(!c['success'])return{'success':![],'shouldRetry':this['isRetryableError'](c['error']||''),'error':c['error'],'sessionUpdated':c['sessionUpdated']};const d=c['plaintext'],e=parseReplyPlaintext(d);if(!a['clientTimestamp'])throw new Error('Missing\x20clientTimestamp\x20for\x20message\x20'+a['id']);if(!a['plaintextHash'])throw new Error('Missing\x20plaintextHash\x20for\x20message\x20'+a['id']);const f=verifyMessage({'messageId':a['id'],'plaintext':d,'plaintextHash':a['plaintextHash'],'createdAt':a['clientTimestamp'],'guardAddress':a['guardAddress'],'passportAddress':a['passportAddress'],'lastReceivedLeafIndex':a['lastReceivedLeafIndex'],'serverSignature':a['merkleMetadata']?.['serverSignature'],'serverPublicKey':a['merkleMetadata']?.['serverPublicKey'],'merkleMetadata':a['merkleMetadata']?{'prevRoot':a['merkleMetadata']['prevRoot'],'newRoot':a['merkleMetadata']['newRoot'],'serverTimestamp':a['merkleMetadata']['serverTimestamp'],'leafIndex':a['merkleMetadata']['leafIndex'],'proofSiblings':a['merkleMetadata']['proofSiblings'],'proofIndices':a['merkleMetadata']['proofIndices']}:void 0x0});if(!f['valid'])throw new Error(f['error']);const g={'messageId':a['id'],'fromAddress':a['from'],'toAddress':this['userAddress'],'plaintextHash':a['plaintextHash'],'plaintext':d,'replyTo':e['replyTo'],'guardAddress':a['guardAddress'],'passportAddress':a['passportAddress'],'lastReceivedLeafIndex':a['lastReceivedLeafIndex'],'direction':'received','status':'decrypted','msgType':a['msgType'],'leafIndex':a['merkleMetadata']?.['leafIndex'],'prevRoot':a['merkleMetadata']?.['prevRoot'],'newRoot':a['merkleMetadata']?.['newRoot'],'serverSignature':a['merkleMetadata']?.['serverSignature'],'serverTimestamp':a['merkleMetadata']?.['serverTimestamp'],'serverPublicKey':a['merkleMetadata']?.['serverPublicKey'],'createdAt':a['clientTimestamp'],'receivedAt':Date['now'](),'zipMetadata':a['zipMetadata']};if(a['merkleMetadata'])this['sessionStateStorage']['updateSessionState'](this['userAddress'],a['from'],{'currentRoot':a['merkleMetadata']['newRoot'],'prevRoot':a['merkleMetadata']['prevRoot'],'lastLeafIndex':a['merkleMetadata']['leafIndex'],'lastSyncAt':Date['now']()});const h=a['merkleMetadata']?.['serverTimestamp']||a['clientTimestamp']||Date['now']();if(a['lastReceivedLeafIndex']!==void 0x0&&a['lastReceivedLeafIndex']>=0x0){const i=this['messageStorage']['getMessagesBySession'](this['userAddress'],a['from'])['filter'](j=>j['direction']==='sent'&&j['status']==='confirmed'&&j['leafIndex']!==void 0x0&&j['leafIndex']<=a['lastReceivedLeafIndex']);for(const j of i)this['messageStorage']['updateMessageStatus'](j['messageId'],'read');}return{'success':!![],'shouldRetry':![],'message':g,'decryptedData':{'id':a['id'],'from':a['from'],'plaintext':d,'timestamp':h,'merkleVerified':!!a['merkleMetadata'],'merkleData':a['merkleMetadata']?{'leafIndex':a['merkleMetadata']['leafIndex'],'rootHash':a['merkleMetadata']['newRoot']}:void 0x0},'sessionUpdated':c['sessionUpdated']};}catch(k){const l=k instanceof Error?k['message']:String(k);return{'success':![],'shouldRetry':this['isRetryableError'](l),'error':l};}}['isRetryableError'](a){return[/message number/i,/chain key/i,/session not found/i,/prekey not found/i,/PREKEY 竞争:我的地址较小,保留我的会话/i,/The operation failed for an operation-specific reason/i,/DOMException/i,/收到 WHISPER_MESSAGE 但无现有会话,需要等待 PREKEY_MESSAGE/i]['some'](b=>b['test'](a));}async['processWaitingMessages'](a,b){if(this['waitingMessages']['size']===0x0)return;const c=[],d=Array['from'](this['waitingMessages']['values']())['sort'](function(e,f){return(e['clientTimestamp']||0x0)-(f['clientTimestamp']||0x0);});for(const e of d){const f=e['id'],g=await this['tryDecryptMessage'](e);if(g['success']&&g['message']&&g['decryptedData'])this['messageStorage']['saveMessage'](g['message']),a['push'](g['decryptedData']),b['push'](f),c['push'](f),this['waitingMessageRetries']['delete'](f);else{if(!g['shouldRetry'])this['failedMessages']['set'](f,{'message':e,'error':g['error']||'Unknown\x20error'}),await this['saveFailedMessage'](e,g['error']||'Unknown\x20error'),b['push'](f),c['push'](f),this['waitingMessageRetries']['delete'](f);else{const h=(this['waitingMessageRetries']['get'](f)||0x0)+0x1;if(h>=0x3)this['failedMessages']['set'](f,{'message':e,'error':g['error']||'Retry\x20limit\x20exceeded'}),await this['saveFailedMessage'](e,g['error']||'Retry\x20limit\x20exceeded'),b['push'](f),c['push'](f),this['waitingMessageRetries']['delete'](f);else this['waitingMessageRetries']['set'](f,h);}}}for(const i of c)this['waitingMessages']['delete'](i);if(c['length']>0x0){}}async['saveFailedMessage'](a,b){const c={'messageId':a['id'],'fromAddress':a['from'],'toAddress':this['userAddress'],'plaintextHash':a['plaintextHash']||'','guardAddress':a['guardAddress'],'passportAddress':a['passportAddress'],'lastReceivedLeafIndex':a['lastReceivedLeafIndex'],'direction':'received','status':'decrypt_failed','msgType':a['msgType'],'leafIndex':a['merkleMetadata']?.['leafIndex'],'prevRoot':a['merkleMetadata']?.['prevRoot'],'newRoot':a['merkleMetadata']?.['newRoot'],'serverSignature':a['merkleMetadata']?.['serverSignature'],'serverTimestamp':a['merkleMetadata']?.['serverTimestamp'],'serverPublicKey':a['merkleMetadata']?.['serverPublicKey'],'createdAt':a['clientTimestamp']||Date['now'](),'receivedAt':Date['now'](),'zipMetadata':a['zipMetadata'],'decryptError':b,'decryptAttempts':0x1,'lastDecryptAttemptAt':Date['now']()};this['messageStorage']['saveMessage'](c);}['reschedulePolling'](){if(!this['isPollingRunning']||!this['pollingTimer'])return;clearTimeout(this['pollingTimer']),this['pollingTimer']=null,this['scheduleNextPoll']();}['getFailedMessages'](){return Array['from'](this['failedMessages']['entries']())['map'](([a,b])=>({'messageId':a,'from':b['message']['from'],'error':b['error'],'leafIndex':b['message']['merkleMetadata']?.['leafIndex']}));}['clearFailedMessages'](a){if(a)this['failedMessages']['delete'](a);else this['failedMessages']['clear']();}['getWaitingMessageCount'](){return this['waitingMessages']['size'];}};export{canonicalizeJson as n,Messenger as t};