@wowok/wowok 2.6.7 → 2.6.9

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 (106) hide show
  1. package/dist/esm/{arb-Bmvm78tZ.mjs → arb-rqktLphb.mjs} +1 -1
  2. package/dist/esm/{base-Bii-5GQQ.mjs → base-00x0AcXp.mjs} +1 -1
  3. package/dist/esm/bcs/index.d.mts +1 -1
  4. package/dist/esm/{call--32IyOqa.mjs → call-BRj5YNax.mjs} +1 -1
  5. package/dist/esm/client/index.d.mts +2 -2
  6. package/dist/esm/client/index.mjs +1 -1
  7. package/dist/esm/{client-Tlizce5t.mjs → client-Bdse0cJJ.mjs} +1 -1
  8. package/dist/esm/{common-uweycQjC.mjs → common-BDlb-AoC.mjs} +1 -1
  9. package/dist/esm/{config-CPqpYYLT.d.mts → config-DyKCZw0u.d.mts} +12 -1
  10. package/dist/esm/cryptography/index.d.mts +1 -1
  11. package/dist/esm/graphql/index.d.mts +1 -1
  12. package/dist/esm/graphql/index.mjs +1 -1
  13. package/dist/esm/graphql/schema/index.d.mts +1 -73
  14. package/dist/esm/graphql-Bv-Tk9oL.mjs +1 -0
  15. package/dist/esm/grpc/index.d.mts +1 -1
  16. package/dist/esm/grpc/index.mjs +1 -1
  17. package/dist/esm/{grpc-9feML8FO.mjs → grpc-RbdERoNT.mjs} +1 -1
  18. package/dist/esm/{index-Dlm7FZKa.d.mts → index-B7WTNwlN.d.mts} +201 -18
  19. package/dist/esm/{index-B-cxGU73.d.mts → index-o_aMVwsK.d.mts} +6 -6
  20. package/dist/esm/index.d.mts +4 -4
  21. package/dist/esm/index.mjs +1 -1
  22. package/dist/esm/jsonRpc/index.d.mts +1 -1
  23. package/dist/esm/jsonRpc/index.mjs +1 -1
  24. package/dist/esm/keypairs/ed25519/index.d.mts +1 -1
  25. package/dist/esm/keypairs/falcon512/index.d.mts +1 -1
  26. package/dist/esm/keypairs/passkey/index.d.mts +1 -1
  27. package/dist/esm/keypairs/secp256k1/index.d.mts +1 -1
  28. package/dist/esm/keypairs/secp256r1/index.d.mts +1 -1
  29. package/dist/esm/{messenger-CuUGuVVm.mjs → messenger-DNHxCZZr.mjs} +1 -1
  30. package/dist/esm/{messenger-api-DhaC-WrS.mjs → messenger-api-Czo7Mnx2.mjs} +1 -1
  31. package/dist/esm/multisig/index.d.mts +1 -1
  32. package/dist/esm/network-Bgq9iuE4.mjs +1 -0
  33. package/dist/esm/object-BmdhYqx6.mjs +1 -0
  34. package/dist/esm/{passport-BSdEsqg3.mjs → passport-BrEhjz98.mjs} +1 -1
  35. package/dist/esm/{proof-kcsaxM5R.mjs → proof-DI739r7_.mjs} +1 -1
  36. package/dist/esm/query-Bjma0bd-.mjs +1 -0
  37. package/dist/esm/received-4rzVMF_W.mjs +1 -0
  38. package/dist/esm/service-DumRJ5zQ.mjs +1 -0
  39. package/dist/esm/transactions/index.d.mts +1 -1
  40. package/dist/esm/types-D7yrbH5u.d.mts +85 -0
  41. package/dist/esm/{util-Cn17cKwR.mjs → util-CYLtIQ4d.mjs} +1 -1
  42. package/dist/esm/verify/index.d.mts +1 -1
  43. package/dist/esm/w/call/allocation.d.mts +1 -1
  44. package/dist/esm/w/call/allocation.mjs +1 -1
  45. package/dist/esm/w/call/arbitration.d.mts +1 -1
  46. package/dist/esm/w/call/arbitration.mjs +1 -1
  47. package/dist/esm/w/call/base.d.mts +1 -1
  48. package/dist/esm/w/call/base.mjs +1 -1
  49. package/dist/esm/w/call/demand.d.mts +1 -1
  50. package/dist/esm/w/call/demand.mjs +1 -1
  51. package/dist/esm/w/call/guard.d.mts +1 -1
  52. package/dist/esm/w/call/guard.mjs +1 -1
  53. package/dist/esm/w/call/index.d.mts +1 -1
  54. package/dist/esm/w/call/index.mjs +1 -1
  55. package/dist/esm/w/call/machine.d.mts +1 -1
  56. package/dist/esm/w/call/machine.mjs +1 -1
  57. package/dist/esm/w/call/passport.d.mts +1 -1
  58. package/dist/esm/w/call/passport.mjs +1 -1
  59. package/dist/esm/w/call/payment.d.mts +1 -1
  60. package/dist/esm/w/call/payment.mjs +1 -1
  61. package/dist/esm/w/call/permission.d.mts +1 -1
  62. package/dist/esm/w/call/permission.mjs +1 -1
  63. package/dist/esm/w/call/progress.d.mts +1 -1
  64. package/dist/esm/w/call/progress.mjs +1 -1
  65. package/dist/esm/w/call/repository.d.mts +1 -1
  66. package/dist/esm/w/call/repository.mjs +1 -1
  67. package/dist/esm/w/call/reward.d.mts +1 -1
  68. package/dist/esm/w/call/reward.mjs +1 -1
  69. package/dist/esm/w/call/service.d.mts +1 -1
  70. package/dist/esm/w/call/service.mjs +1 -1
  71. package/dist/esm/w/call/treasury.d.mts +1 -1
  72. package/dist/esm/w/call/treasury.mjs +1 -1
  73. package/dist/esm/w/common.d.mts +2 -2
  74. package/dist/esm/w/common.mjs +1 -1
  75. package/dist/esm/w/index.d.mts +3 -3
  76. package/dist/esm/w/index.mjs +1 -1
  77. package/dist/esm/w/local/account.d.mts +1 -1
  78. package/dist/esm/w/local/account.mjs +1 -1
  79. package/dist/esm/w/local/config.d.mts +1 -1
  80. package/dist/esm/w/local/config.mjs +1 -1
  81. package/dist/esm/w/local/index.d.mts +2 -2
  82. package/dist/esm/w/local/index.mjs +1 -1
  83. package/dist/esm/w/local/token.d.mts +1 -1
  84. package/dist/esm/w/local/token.mjs +1 -1
  85. package/dist/esm/w/messenger/index.d.mts +1 -1
  86. package/dist/esm/w/messenger/index.mjs +1 -1
  87. package/dist/esm/w/messenger/messenger-api.d.mts +1 -1
  88. package/dist/esm/w/messenger/messenger-api.mjs +1 -1
  89. package/dist/esm/w/messenger/messenger.d.mts +1 -1
  90. package/dist/esm/w/messenger/messenger.mjs +1 -1
  91. package/dist/esm/w/messenger/storage.d.mts +1 -1
  92. package/dist/esm/w/messenger/types.d.mts +1 -1
  93. package/dist/esm/w/messenger/types.mjs +1 -1
  94. package/dist/esm/w/query/index.d.mts +2 -2
  95. package/dist/esm/w/query/index.mjs +1 -1
  96. package/dist/esm/w/query/object.d.mts +1 -1
  97. package/dist/esm/w/query/object.mjs +1 -1
  98. package/dist/esm/w-Bm2k913h.mjs +1 -0
  99. package/package.json +1 -1
  100. package/dist/esm/graphql-Cy6rkXWu.mjs +0 -1
  101. package/dist/esm/network-CeDd07Hg.mjs +0 -1
  102. package/dist/esm/object-Bu0TLwJp.mjs +0 -1
  103. package/dist/esm/query-Bo3LGTEr.mjs +0 -1
  104. package/dist/esm/received-YBeCoMzm.mjs +0 -1
  105. package/dist/esm/service-CqImD7UZ.mjs +0 -1
  106. package/dist/esm/w-BAYSy7Qa.mjs +0 -1
@@ -1 +0,0 @@
1
- import{t as a47a}from'./client-Tlizce5t.mjs';import{n as a47b}from'./network-CeDd07Hg.mjs';import{A as a47c,D as a47d,E as a47e,M as a47f,a as a47g,j as a47h,n as a47i,o as a47j,s as a47k}from'./common-uweycQjC.mjs';import{Cache}from'./w/local/cache.mjs';import{Config}from'./w/local/config.mjs';import{LocalMark}from'./w/local/local.mjs';import{compressedPubKeyToAddress}from'./w/local/evm/rlp.mjs';import{GetAccountOrMark_Address}from'./w/local/index.mjs';import{X as a47l}from'./object-Bu0TLwJp.mjs';import{query_permissions}from'./w/call/permission.mjs';const query_events_json=async a=>{try{const b=JSON['parse'](a);return JSON['stringify']({'data':await query_events(b)});}catch(c){return JSON['stringify']({'error':c?.['toString']()});}},query_events=async a=>{const b=await Config['Instance']()['network_get'](a['network']),c=a['cursor']?a['cursor']['eventSeq']+':'+a['cursor']['txDigest']:'',e=a['limit']?.['toString']()??'',f=a['order']??'',g=await Cache['read'](['event',a['type'],c,e,f,b],async()=>{const h=await events(a['type'],a);return{'expire':Cache['DefaultExpireTime'](),'data':h};},a['no_cache']);if(g){const h=g['data'];return h['cache_expire']=g['expire'],h;}},events=async(a,b)=>{const c=await Config['Instance']()['network_get'](b['network']),d=new a47a({'url':a47b(c),'network':c}),e=a==='ArbEvent'||a==='NewOrderEvent'||a==='ProgressEvent'||a==='DemandPresentEvent'||a==='DemandFeedbackEvent'||a==='NewEntityEvent';let f;if(e)f='0x2'+{'ArbEvent':'::arb::ArbEvent','NewOrderEvent':'::order::NewOrderEvent','ProgressEvent':'::progress::ProgressEvent','DemandPresentEvent':'::demand::PresentEvent','DemandFeedbackEvent':'::demand::DemandEvent','NewEntityEvent':'::entity::NewEntityEvent'}[a];else f=a;const g=await d['queryEvents']({'query':{'MoveEventType':f},'cursor':b['cursor'],'limit':b['limit'],'order':b['order']==='descending'?'descending':'ascending'});return{'data':g?.['data']?.['map'](h=>{if(h?.['packageId']==='0x2'){if(h?.['type']?.['includes']('::order::NewOrderEvent'))return{'id':h?.['id'],'time':h?.['timestampMs'],'type_raw':h?.['type'],'sender':h?.['sender'],'type':'NewOrderEvent','order':h?.['parsedJson']?.['object'],'service':h?.['parsedJson']?.['service'],'progress':h?.['parsedJson']?.['progress']?.['some']??null,'amount':h?.['parsedJson']?.['amount'],'discount':h?.['parsedJson']?.['discount']?.['some']??null,'allocation':h?.['parsedJson']?.['allocation']?.['some']??null};else{if(h?.['type']?.['includes']('::demand::PresentEvent'))return{'id':h?.['id'],'time':h?.['timestampMs'],'type_raw':h?.['type'],'sender':h?.['sender'],'type':'DemandPresentEvent','demand':h?.['parsedJson']?.['object'],'service':h?.['parsedJson']?.['service']?.['some']??null,'recommend':h?.['parsedJson']?.['tips']};else{if(h?.['type']?.['includes']('::demand::DemandEvent'))return{'id':h?.['id'],'time':h?.['timestampMs'],'type_raw':h?.['type'],'sender':h?.['sender'],'type':'DemandFeedbackEvent','demand':h?.['parsedJson']?.['object'],'service':h?.['parsedJson']?.['service']?.['some']??null,'feedback':h?.['parsedJson']?.['feedback'],'acceptance_score':h?.['parsedJson']?.['acceptance_score']?.['some']??null};else{if(h?.['type']?.['includes']('::progress::ProgressEvent'))return{'id':h?.['id'],'time':h?.['timestampMs'],'type_raw':h?.['type'],'sender':h?.['sender'],'type':'ProgressEvent','progress':h?.['parsedJson']?.['object'],'machine':h?.['parsedJson']?.['machine'],'task':h?.['parsedJson']?.['task'],'node':h?.['parsedJson']?.['node'],'forward':h?.['parsedJson']?.['forward'],'hold':h?.['parsedJson']?.['hold']};else{if(h?.['type']?.['includes']('::arb::ArbEvent'))return{'id':h?.['id'],'time':h?.['timestampMs'],'type_raw':h?.['type'],'sender':h?.['sender'],'type':'ArbEvent','arb':h?.['parsedJson']?.['object'],'arbitration':h?.['parsedJson']?.['arbitration'],'order':h?.['parsedJson']?.['order'],'status':h?.['parsedJson']?.['status']};else{if(h?.['type']?.['includes']('::entity::NewEntityEvent'))return{'id':h?.['id'],'time':h?.['timestampMs'],'type_raw':h?.['type'],'sender':h?.['sender'],'type':'NewEntityEvent','resource':h?.['parsedJson']?.['resource'],'address':h?.['sender'],'referrer':h?.['parsedJson']?.['referrer']?.['some']??null};}}}}}}return{'id':h?.['id'],'time':h?.['timestampMs'],'type_raw':h?.['type'],'sender':h?.['sender'],'type':h?.['type'],'parsedJson_raw':h?.['parsedJson']};}),'hasNextPage':g?.['hasNextPage'],'nextCursor':g?.['nextCursor']};};let BridgeChainId=function(a){return a[a['WowMainnet']=0x0]='WowMainnet',a[a['EthMainnet']=0xa]='EthMainnet',a;}({});function isEvmChain(a){return a===0xa;}function isWowChain(a){return a===0x0;}let BridgeVersion=function(a){return a[a['V1']=0x1]='V1',a[a['V2']=0x2]='V2',a;}({}),BridgeTokenId=function(a){return a['Eth']='ETH',a['Weth']='WETH',a['Wbtc']='WBTC',a['Usdc']='USDC',a['Usdt']='USDT',a;}({}),TransferStatus=function(a){return a['Pending']='pending',a['Approved']='approved',a['Claimed']='claimed',a['Failed']='failed',a['NotFound']='not_found',a;}({}),BridgeErrorCode=function(a){return a['EstimateFailed']='ESTIMATE_FAILED',a['Reverted']='REVERTED',a['Timeout']='TIMEOUT',a['NoSignatures']='NO_SIGNATURES',a['NodeUnavailable']='NODE_UNAVAILABLE',a['InvalidParam']='INVALID_PARAM',a['AccountNotFound']='ACCOUNT_NOT_FOUND',a['Unknown']='UNKNOWN',a;}({});const MAINNET_COMMITTEE_PUBKEYS=['0x032f020d08ca4a8632e2442ae789b961265d80b6058135bba1d2daa30ddea0acf0','0x02bb110601a69423651f1faadb1d510d895cd91baa37a470f09479aa84ef9128bb','0x03add24c04f5149421849510709d309f826f42751922f1131c784283fc2bad0b0b'],MAINNET_COMMITTEE_WEIGHTS=[0xd06,0xd06,0xd05],MAINNET_COMMITTEE_MEMBER_ADDRESSES=['0x373ee3febe317168fe58c66faaa446e26e57c2f1','0x2829ea9323836b5c8e0f8c47cd3abdc70962e891','0x97b3c777af04e4df7cb3fd1c92893a0358db9beb'],MAINNET_BRIDGE_CONFIG={'wow':{'rpcUrl':'https://fullnode.mainnet.wowok.net:443','bridgeObjectId':'0x9','clockObjectId':'0x6','network':'mainnet'},'ethereum':{'chainId':0x1,'bridgeChainId':0xa,'rpcUrl':'https://eth.drpc.org','bridgeProxyAddress':'0xA8d914Cc121CB2d2179Ca540bC0B8213F224aa00','bridgeVaultAddress':'0xC9A6EF1A3dC6f0681d39C318c4882FB7704a7848','bridgeCommitteeAddress':'0x822779c4183ed69bdd38e0454ec1826d2ae186a5','bridgeConfigAddress':'0xaf9414c8ab0a0905a6b9ad24c927416ac765a4ce'},'bridgeNodeUrls':['http://43.156.120.237:9211','http://150.158.76.254:9211','http://110.40.159.14:9211'],'defaultVersion':0x2,'tokens':[{'tokenId':0x1,'symbol':'WBTC','wowTypeTag':'0x184a37e507991cfc8ee32c536cb7f6839fc836c8d36f928274f4fada795c101a::btc::BTC','evmAddress':'0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599','evmDecimals':0x8,'wowDecimals':0x8,'evmChains':[0xa],'description':'Wrapped\x20BTC\x20(ERC20).\x20Bitcoin\x20price\x20exposure\x20on\x20Ethereum;\x201\x20WBTC\x20=\x201\x20BTC.'},{'tokenId':0x2,'symbol':'ETH','wowTypeTag':'0x107c69d91b57f5f8b1b877bf9228101784bc7dfda6b63956a40f8d2bddb01bcb::eth::ETH','evmAddress':'0x0000000000000000000000000000000000000000','evmDecimals':0x12,'wowDecimals':0x8,'evmChains':[0xa],'description':'Native\x20ETH.\x20Calls\x20bridgeETHV2{value};\x20vault\x20auto-wraps\x20to\x20WETH\x20internally.\x2018\x20decimals\x20on\x20EVM,\x208\x20decimals\x20on\x20WOW.'},{'tokenId':0x2,'symbol':'WETH','wowTypeTag':'0x107c69d91b57f5f8b1b877bf9228101784bc7dfda6b63956a40f8d2bddb01bcb::eth::ETH','evmAddress':'0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2','evmDecimals':0x12,'wowDecimals':0x8,'evmChains':[0xa],'description':'Wrapped\x20ETH\x20(ERC20).\x20Calls\x20bridgeERC20V2;\x20shares\x20Token\x20ID\x202\x20and\x20WOW\x20type\x20tag\x20with\x20native\x20ETH.'},{'tokenId':0x3,'symbol':'USDC','wowTypeTag':'0x694b2b1ee343434e921f87259ee959274ff250dc67990e93114022d55801d472::usdc::USDC','evmAddress':'0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48','evmDecimals':0x6,'wowDecimals':0x6,'evmChains':[0xa],'description':'USD\x20Coin\x20(USDC).\x20Fully\x20collateralized\x20USD\x20stablecoin;\x206\x20decimals\x20on\x20both\x20sides.'},{'tokenId':0x4,'symbol':'USDT','wowTypeTag':'0x999f4614ee484a263e8e02b55d0ba1fd63c82fb796370e614ccb9e7343573c76::usdt::USDT','evmAddress':'0xdAC17F958D2ee523a2206206994597C13D831ec7','evmDecimals':0x6,'wowDecimals':0x6,'evmChains':[0xa],'description':'Tether\x20USD\x20(USDT).\x20Fiat-collateralized\x20stablecoin;\x206\x20decimals\x20on\x20both\x20sides.'}],'timeouts':{'nodeRpcMs':0x7530,'signaturePollIntervalMs':0x1388,'signatureCollectMs':0xf*0xea60,'autoClaimMs':0xa*0xea60}};function findEvmChainConfig(a,b){if(a['ethereum']['chainId']===b)return a['ethereum'];if(a['l2']){for(const c of Object['values'](a['l2']))if(c&&c['chainId']===b)return c;}}function findEvmChainConfigByBridgeChainId(a,b){if(a['ethereum']['bridgeChainId']===b)return a['ethereum'];if(a['l2']){for(const c of Object['values'](a['l2']))if(c&&c['bridgeChainId']===b)return c;}}function findToken(a,b){return a['tokens']['find'](c=>c['tokenId']===b);}function findTokenBySymbol(a,b){return a['tokens']['find'](c=>c['symbol']===b);}function verifyCommitteeConsistency(){const a=[];for(let b=0x0;b<MAINNET_COMMITTEE_PUBKEYS['length'];b++){const c=MAINNET_COMMITTEE_PUBKEYS[b],d=MAINNET_COMMITTEE_MEMBER_ADDRESSES[b],e=compressedPubKeyToAddress(c);if(e['toLowerCase']()!==d['toLowerCase']())a['push']({'index':b,'pubkey':c,'expected':d,'actual':e});}return a;}const INFO_CONSTANT={'type':'constants','constants':[{'name':'Protocol\x20Package\x20ID','value':'0x2','description':'Protocol\x20package\x20ID'},{'name':'Gas\x20Token\x20Type','value':a47k,'description':'Gas\x20token\x20type'},{'name':'Gas\x20Coin\x20Type','value':a47j,'description':'Gas\x20coin\x20type'},{'name':'Entity\x20Linker\x20ID','value':a47c,'description':'Entity\x20Linker\x20ID'},{'name':'Entity\x20Registrar\x20ID','value':a47g,'description':'Entity\x20registrar\x20ID'}],'value_types':Object['entries'](a47h)['filter'](([a,b])=>isNaN(Number(a))&&a!=='Value')['map'](([a,b])=>({'name':a,'value':a,'description':'Value\x20type\x20'+a+'\x20=\x20'+b})),'object_types':Object['values'](a47e)['map'](a=>({'name':a,'value':a,'description':'Object\x20type\x20'+a})),'guard_instructions':Object['values'](a47d)['map'](a=>({'name':a,'value':a,'description':'Guard\x20instruction\x20'+a})),'guard_contexts':Object['values'](a47i)['map'](a=>({'name':a,'value':a,'description':'Guard\x20context\x20'+a})),'guard_witnesses':Object['values'](a47f)['map'](a=>({'name':a,'value':a,'description':'Guard\x20witness\x20'+a}))},COMMON_MISTAKES=[{'object_type':'Service','operation':'compensation_fund_add','category':'field_name','mistake':'Using\x20{amount:\x20...}\x20or\x20{amount:\x20...,\x20type:\x20\x27WOW\x27}\x20instead\x20of\x20{balance:\x20...}.\x20The\x20correct\x20field\x20name\x20is\x20\x27balance\x27,\x20and\x20the\x20token\x20type\x20is\x20inferred\x20from\x20the\x20Service\x27s\x20type_parameter\x20(generic\x20type).','correct_usage':'{balance:\x20<amount_in_smallest_unit>}.\x20The\x20smallest\x20unit\x20depends\x20on\x20the\x20Service\x27s\x20type_parameter:\x20WOW/SUI\x20use\x209\x20decimals\x20(10^9\x20=\x201\x20token),\x20USDC\x20uses\x206\x20decimals\x20(10^6\x20=\x201\x20token).','wrong_example':'{\x22compensation_fund_add\x22:\x20{\x22amount\x22:\x201000000000,\x20\x22type\x22:\x20\x22WOW\x22}}','correct_example':'{\x22compensation_fund_add\x22:\x20{\x22balance\x22:\x201000000000}}\x20(1\x20WOW\x20or\x201\x20SUI,\x20assuming\x209-decimal\x20token\x20type)'},{'object_type':'Service','operation':'compensation_fund_add','category':'workflow','mistake':'Calling\x20compensation_fund_add\x20without\x20first\x20granting\x20permission\x20315\x20(SERVICE_COMPENSATION_FUND_DEPOSIT)\x20to\x20the\x20calling\x20account.\x20The\x20Move\x20layer\x20will\x20reject\x20with\x20\x27Missing\x20permissions\x20315\x27.','correct_usage':'Grant\x20permission\x20315\x20to\x20the\x20funder\x20account\x20via\x20permission.table\x20{op:\x20\x27add\x20perm\x20by\x20index\x27,\x20index:\x20315,\x20entity:\x20[funder_account]}\x20BEFORE\x20calling\x20compensation_fund_add.','wrong_example':'{\x22compensation_fund_add\x22:\x20{\x22balance\x22:\x201000000000}}\x20(without\x20permission\x20315\x20granted)','correct_example':'Step\x201:\x20permission.table\x20{op:\x20\x22add\x20perm\x20by\x20index\x22,\x20index:\x20315,\x20entity:\x20[\x22funder\x22]}\x20→\x20Step\x202:\x20{\x22compensation_fund_add\x22:\x20{\x22balance\x22:\x201000000000}}'},{'object_type':'Service','operation':'setting_lock_duration_add','category':'unit','mistake':'Passing\x20seconds\x20instead\x20of\x20milliseconds.\x20The\x20field\x20is\x20in\x20MILLISECONDS,\x20not\x20seconds.\x20Multiply\x20seconds\x20by\x201000.','correct_usage':'Value\x20in\x20milliseconds.\x2086400000\x20=\x201\x20day,\x202592000000\x20=\x2030\x20days\x20(default),\x207776000000\x20=\x2090\x20days.','wrong_example':'{\x22setting_lock_duration_add\x22:\x202592000}\x20(30\x20days\x20in\x20SECONDS\x20—\x20actually\x20only\x2025.92\x20seconds!)','correct_example':'{\x22setting_lock_duration_add\x22:\x202592000000}\x20(30\x20days\x20in\x20milliseconds)'},{'object_type':'Service','operation':'setting_lock_duration_add','category':'value_range','mistake':'Expecting\x20the\x20default\x20to\x20be\x2090\x20days.\x20The\x20actual\x20default\x20(DEFAULT_LOCK_DURATION)\x20is\x2030\x20days\x20(2592000000\x20ms).\x20This\x20is\x20the\x20value\x20set\x20when\x20a\x20Service\x20is\x20created\x20without\x20explicitly\x20setting\x20setting_lock_duration_add.','correct_usage':'If\x20you\x20need\x2090\x20days,\x20explicitly\x20set\x20setting_lock_duration_add\x20to\x207776000000\x20(90\x20days\x20in\x20ms).\x20Note:\x20setting_lock_duration_add\x20is\x20ADDITIVE\x20—\x20it\x20only\x20increases\x20the\x20duration.','wrong_example':'Creating\x20a\x20Service\x20and\x20expecting\x20setting_lock_duration\x20=\x207776000000\x20(90\x20days)\x20without\x20setting\x20setting_lock_duration_add.','correct_example':'{\x22setting_lock_duration_add\x22:\x207776000000}\x20(90\x20days\x20in\x20ms)\x20—\x20set\x20during\x20Service\x20creation.'},{'object_type':'Service','operation':'order_allocators','category':'workflow','mistake':'Setting\x20order_allocators\x20AFTER\x20publish.\x20order_allocators\x20is\x20L1\x20immutable\x20after\x20publish\x20(Move:\x20assert!(!bPublished)).\x20It\x20MUST\x20be\x20set\x20BEFORE\x20publish=true.','correct_usage':'Set\x20order_allocators\x20in\x20Phase\x201\x20(Service\x20creation,\x20before\x20publish).\x20Phase\x202\x20(publish=true)\x20only\x20flips\x20the\x20publish\x20flag.','wrong_example':'Step\x201:\x20create\x20+\x20publish\x20Service\x20→\x20Step\x202:\x20set\x20order_allocators\x20(FAILS:\x20assert!(!bPublished))','correct_example':'Step\x201:\x20create\x20Service\x20(no\x20publish)\x20+\x20set\x20order_allocators\x20→\x20Step\x202:\x20publish=true'},{'object_type':'Service','operation':'machine','category':'workflow','mistake':'Setting\x20machine\x20AFTER\x20publish.\x20machine\x20is\x20L1\x20immutable\x20after\x20publish\x20(Move:\x20assert!(!bPublished)).\x20It\x20MUST\x20be\x20set\x20BEFORE\x20publish=true.','correct_usage':'Set\x20machine\x20in\x20Phase\x201\x20(Service\x20creation,\x20before\x20publish).','wrong_example':'Step\x201:\x20create\x20+\x20publish\x20Service\x20→\x20Step\x202:\x20set\x20machine\x20(FAILS)','correct_example':'Step\x201:\x20create\x20Service\x20(no\x20publish)\x20+\x20set\x20machine\x20→\x20Step\x202:\x20publish=true'},{'object_type':'Arbitration','operation':'voting_deadline','category':'unit','mistake':'Passing\x20seconds\x20instead\x20of\x20milliseconds.\x20voting_deadline\x20is\x20a\x20Unix\x20timestamp\x20in\x20MILLISECONDS,\x20not\x20seconds.\x20Multiply\x20seconds\x20by\x201000.','correct_usage':'Unix\x20timestamp\x20in\x20milliseconds.\x20Use\x20Date.now()\x20+\x20<duration_ms>\x20for\x20a\x20future\x20deadline.\x20Example:\x20Date.now()\x20+\x20259200000\x20for\x203\x20days.','wrong_example':'{\x22voting_deadline\x22:\x201785190000}\x20(seconds\x20—\x20this\x20is\x20in\x202026-05\x20but\x20in\x20seconds,\x20which\x20is\x20actually\x201970-01-21)','correct_example':'{\x22voting_deadline\x22:\x201785190000000}\x20(milliseconds\x20—\x20correct\x20Unix\x20timestamp\x20in\x20ms)'},{'object_type':'Arbitration','operation':'voting_deadline','category':'timing','mistake':'Setting\x20voting_deadline\x20to\x20a\x20past\x20time.\x20The\x20deadline\x20MUST\x20be\x20in\x20the\x20future\x20(recommended:\x20now\x20+\x20at\x20least\x2086400000\x20ms\x20=\x2024\x20hours).\x20Past\x20deadlines\x20prevent\x20voting.','correct_usage':'Use\x20Date.now()\x20+\x20<duration_ms>.\x20Minimum\x20recommended:\x2086400000\x20ms\x20(24\x20hours).\x203\x20days\x20=\x20259200000\x20ms.','wrong_example':'{\x22voting_deadline\x22:\x201785190000000}\x20(if\x20this\x20is\x20in\x20the\x20past,\x20voting\x20will\x20fail)','correct_example':'{\x22voting_deadline\x22:\x20Date.now()\x20+\x20259200000}\x20(3\x20days\x20from\x20now)'},{'object_type':'Arbitration','operation':'dispute','category':'field_name','mistake':'Using\x20{amount:\x20...}\x20for\x20the\x20dispute\x20fee\x20instead\x20of\x20{balance:\x20...}.\x20The\x20fee\x20field\x20uses\x20CoinParamSchema\x20which\x20requires\x20\x27balance\x27,\x20not\x20\x27amount\x27.','correct_usage':'{balance:\x20<amount_in_smallest_unit>}.\x20The\x20smallest\x20unit\x20depends\x20on\x20the\x20Arbitration\x27s\x20type_parameter:\x20WOW/SUI\x20use\x209\x20decimals,\x20USDC\x20uses\x206\x20decimals.','wrong_example':'{\x22fee\x22:\x20{\x22amount\x22:\x2050000000}}','correct_example':'{\x22fee\x22:\x20{\x22balance\x22:\x2050000000}}\x20(0.05\x20WOW\x20or\x200.05\x20SUI,\x20assuming\x209-decimal\x20token\x20type)'},{'object_type':'Order','operation':'order_new','category':'workflow','mistake':'Not\x20setting\x20namedNewOrder/namedNewAllocation/namedNewProgress\x20when\x20creating\x20an\x20Order.\x20Without\x20names,\x20subsequent\x20operations\x20must\x20use\x20on-chain\x20addresses,\x20which\x20are\x20hard\x20to\x20reference.','correct_usage':'Set\x20namedNewOrder,\x20namedNewAllocation,\x20and\x20namedNewProgress\x20to\x20local\x20names\x20for\x20easy\x20reference\x20in\x20subsequent\x20operations.','wrong_example':'{\x22order_new\x22:\x20{\x22buy\x22:\x20{...}}}\x20(no\x20namedNewOrder\x20—\x20must\x20use\x20address\x20for\x20all\x20subsequent\x20operations)','correct_example':'{\x22order_new\x22:\x20{\x22buy\x22:\x20{...},\x20\x22namedNewOrder\x22:\x20{\x22name\x22:\x20\x22my_order\x22},\x20\x22namedNewAllocation\x22:\x20{\x22name\x22:\x20\x22my_alloc\x22},\x20\x22namedNewProgress\x22:\x20{\x22name\x22:\x20\x22my_progress\x22}}}'},{'object_type':'ALL','operation':'create_with_reference','category':'workflow','mistake':'Creating\x20an\x20object\x20that\x20references\x20another\x20object\x20by\x20name\x20(LocalMark)\x20when\x20the\x20referenced\x20object\x20does\x20not\x20exist\x20yet.\x20This\x20causes\x20BCS\x20serialization\x20error:\x20\x27failed\x20to\x20resolve\x20string:\x20<name>\x27.\x20The\x20general\x20pattern\x20is:\x20create\x20object\x20A\x20(no\x20publish,\x20establishes\x20LocalMark)\x20→\x20create\x20object\x20B\x20that\x20references\x20A\x20→\x20update\x20A\x20with\x20references\x20to\x20B\x20→\x20publish\x20A.','correct_usage':'GENERAL\x20DEPLOYMENT\x20ORDER\x20RULE:\x20(1)\x20Create\x20all\x20objects\x20with\x20basic\x20config,\x20no\x20publish\x20—\x20addresses\x20are\x20determined\x20and\x20LocalMark\x20names\x20are\x20registered.\x20(2)\x20Create\x20Guards\x20and\x20other\x20objects\x20that\x20reference\x20the\x20first\x20batch\x20—\x20LocalMark\x20names\x20now\x20resolve.\x20(3)\x20Update\x20objects\x20with\x20cross-references\x20(order_allocators,\x20buy_guard,\x20etc.).\x20(4)\x20Publish\x20objects.\x20This\x20avoids\x20all\x20circular\x20dependencies.','wrong_example':'Step\x201:\x20create\x20Guard\x20referencing\x20\x22my_service\x22\x20(my_service\x20does\x20not\x20exist)\x20→\x20BCS\x20error','correct_example':'Step\x201:\x20create\x20Service\x20(no\x20publish,\x20establishes\x20\x22my_service\x22\x20LocalMark)\x20→\x20Step\x202:\x20create\x20Guard\x20referencing\x20\x22my_service\x22\x20→\x20Step\x203:\x20update\x20Service\x20with\x20order_allocators\x20referencing\x20Guard\x20→\x20Step\x204:\x20publish\x20Service'},{'object_type':'Machine','operation':'add|set','category':'architecture','mistake':'Including\x20arbitration/dispute\x20nodes\x20in\x20a\x20Machine\x20workflow.\x20CORE\x20PRINCIPLE:\x20A\x20merchant\x27s\x20business\x20flow\x20cannot\x20handle\x20disputes\x20fairly\x20because\x20the\x20merchant\x20would\x20be\x20\x27both\x20player\x20and\x20referee\x27\x20(既当球员又当裁判).\x20The\x20WoWok\x20smart\x20contract\x20design\x20enforces\x20this\x20by\x20making\x20Arbitration\x20a\x20completely\x20separate\x20object\x20—\x20it\x20has\x20its\x20own\x20Permission,\x20voting_guard,\x20usage_guard,\x20and\x20balance,\x20with\x20NO\x20reference\x20from\x20Machine/Progress\x20to\x20Arbitration.\x20The\x20Order\x20object\x20is\x20the\x20bridge:\x20it\x20has\x20both\x20`progress`\x20(Machine)\x20and\x20`dispute`\x20(list\x20of\x20Arb\x20addresses)\x20fields,\x20but\x20the\x20Arb\x20lifecycle\x20(7\x20states:\x20Principal_confirming\x20→\x20Arbitrator_confirming\x20→\x20Voting\x20→\x20Arbitrated\x20→\x20Objectionable\x20→\x20Finished\x20→\x20Withdrawn)\x20is\x20managed\x20entirely\x20by\x20the\x20Arbitration\x20object,\x20not\x20by\x20the\x20Machine.','correct_usage':'ARBITRATION\x20SEPARATION\x20RULE:\x20(1)\x20Machine\x20workflows\x20model\x20BUSINESS\x20states\x20only\x20(e.g.,\x20ordered\x20→\x20shipped\x20→\x20delivered\x20→\x20refunded\x20→\x20completed).\x20(2)\x20Arbitration\x20is\x20a\x20separate\x20object\x20with\x20its\x20own\x20Permission\x20—\x20create\x20it\x20independently.\x20(3)\x20When\x20a\x20dispute\x20arises,\x20an\x20Arb\x20instance\x20is\x20created\x20referencing\x20the\x20Order;\x20the\x20Arb\x20goes\x20through\x20its\x207-state\x20lifecycle\x20in\x20the\x20Arbitration\x20object.\x20(4)\x20If\x20the\x20Arb\x20rules\x20in\x20favor\x20of\x20the\x20customer,\x20`indemnity`\x20is\x20set\x20and\x20`order::compensate()`\x20is\x20called\x20—\x20this\x20is\x20the\x20ONLY\x20connection\x20between\x20Arb\x20and\x20Order.\x20(5)\x20The\x20Machine\x20can\x20have\x20\x27refunded\x27/\x27cancelled\x27\x20nodes\x20for\x20the\x20BUSINESS\x20OUTCOME\x20of\x20a\x20dispute,\x20but\x20the\x20dispute\x20PROCESS\x20is\x20entirely\x20in\x20Arb.\x20(6)\x20Arbitration\x27s\x20Permission\x20MUST\x20be\x20separate\x20from\x20Service\x27s\x20Permission\x20—\x20never\x20share.','wrong_example':'Machine\x20nodes:\x20[ordered,\x20shipped,\x20delivered,\x20disputed,\x20resolved,\x20completed]\x20—\x20\x22disputed\x22\x20and\x20\x22resolved\x22\x20are\x20Arb\x20lifecycle\x20states,\x20not\x20business\x20states.\x20The\x20merchant\x20would\x20control\x20the\x20dispute\x20process,\x20making\x20it\x20unfair.','correct_example':'Machine\x20nodes:\x20[ordered,\x20shipped,\x20delivered,\x20refunded,\x20completed]\x20(business\x20states\x20only)\x20+\x20separate\x20Arbitration\x20object\x20(with\x20own\x20Permission,\x20voting_guard)\x20+\x20Arb\x20instances\x20(7-state\x20lifecycle)\x20that\x20call\x20order::compensate()\x20when\x20ruled'},{'object_type':'ALL','operation':'multi_tier_allocation','category':'architecture','mistake':'Thinking\x20Allocation\x20cannot\x20support\x20multi-level\x20fund\x20distribution.\x20WoWok\x20supports\x20multi-tier\x20allocation\x20through\x20SUB-ORDERS:\x20each\x20tier\x20is\x20an\x20independent\x20Service\x20with\x20its\x20own\x20order_allocators.\x20The\x20main\x20Order\x20pays\x20the\x20Tier-1\x20Service;\x20the\x20Tier-1\x20Service\x27s\x20Allocation\x20distributes\x20funds\x20to\x20Tier-2\x20sub-orders\x20(each\x20a\x20separate\x20Service\x20with\x20its\x20own\x20Allocation).\x20Additionally,\x20Allocation\x20can\x20run\x20as\x20a\x20standalone\x20independent\x20object,\x20not\x20just\x20as\x20a\x20Service\x20field.','correct_usage':'MULTI-TIER\x20ALLOCATION\x20PATTERN:\x20(1)\x20Main\x20Service\x20has\x20order_allocators\x20that\x20distribute\x20to\x20Tier-1\x20recipients\x20(e.g.,\x20platform\x20+\x20agency).\x20(2)\x20Each\x20Tier-1\x20recipient\x20can\x20be\x20a\x20separate\x20Service\x20with\x20its\x20own\x20order_allocators\x20for\x20Tier-2\x20distribution\x20(e.g.,\x20agency\x20→\x20operators).\x20(3)\x20Each\x20tier\x27s\x20Order\x20is\x20independent\x20—\x20Tier-1\x20payment\x20triggers\x20Tier-2\x20order\x20creation.\x20(4)\x20For\x20standalone\x20allocation:\x20create\x20an\x20Allocation\x20object\x20independently\x20and\x20transfer\x20funds\x20to\x20it,\x20then\x20use\x20Guard-driven\x20allocation\x20to\x20distribute.\x20(5)\x20Do\x20NOT\x20try\x20to\x20put\x20all\x20tiers\x20in\x20a\x20single\x20Order\x27s\x20order_allocators\x20—\x20use\x20separate\x20Services/Orders\x20per\x20tier.','wrong_example':'Single\x20Service\x20with\x208\x20order_allocators\x20trying\x20to\x20handle\x203\x20tiers\x20of\x20distribution\x20in\x20one\x20Order','correct_example':'Tier-1\x20Service\x20(allocators:\x20platform\x2025%,\x20agency\x2075%)\x20→\x20agency\x20creates\x20Tier-2\x20Service\x20(allocators:\x20operator1\x2050%,\x20operator2\x2050%)\x20→\x20each\x20tier\x20is\x20independent'},{'object_type':'ALL','operation':'transfer','category':'fund_flow','mistake':'Not\x20understanding\x20that\x20the\x20signing\x20account\x20determines\x20whose\x20assets\x20are\x20used.\x20The\x20env.account\x20field\x20in\x20every\x20operation\x20specifies\x20the\x20signer\x20—\x20whoever\x20signs\x20the\x20transaction,\x20their\x20assets\x20are\x20used.\x20The\x20name_or_address_from\x20field\x20in\x20account_operation.transfer\x20is\x20OPTIONAL\x20—\x20if\x20omitted,\x20the\x20default\x20account\x20(env.account)\x20signs\x20and\x20its\x20assets\x20are\x20transferred.','correct_usage':'SIGNING\x20ACCOUNT\x20RULE:\x20(1)\x20Every\x20operation\x20has\x20env.account\x20—\x20this\x20is\x20the\x20signer.\x20(2)\x20For\x20transfers:\x20if\x20name_or_address_from\x20is\x20omitted,\x20the\x20env.account\x27s\x20assets\x20are\x20used.\x20(3)\x20To\x20transfer\x20from\x20a\x20DIFFERENT\x20account,\x20set\x20name_or_address_from\x20to\x20that\x20account\x27s\x20name/address.\x20(4)\x20The\x20signer\x20(env.account)\x20must\x20have\x20permission\x20to\x20spend\x20the\x20from\x20account\x27s\x20assets\x20(or\x20be\x20the\x20same\x20account).\x20(5)\x20This\x20is\x20NOT\x20a\x20limitation\x20—\x20it\x27s\x20how\x20blockchain\x20transactions\x20work:\x20the\x20signer\x20pays\x20gas\x20and\x20authorizes\x20asset\x20movement.','wrong_example':'Thinking\x20transfer\x20requires\x20a\x20special\x20source\x20account\x20field\x20separate\x20from\x20the\x20signing\x20account','correct_example':'env:\x20{account:\x20\x22my_account\x22}\x20→\x20transfer\x20{name_or_address_to:\x20\x22recipient\x22,\x20amount:\x20\x221000000000\x22}\x20→\x20my_account\x20signs\x20and\x20its\x20WOW\x20is\x20transferred'}];function query_common_mistakes(a){if(!a)return COMMON_MISTAKES;return COMMON_MISTAKES['filter'](b=>{if(a['object_type']&&b['object_type']!==a['object_type'])return![];if(a['operation']&&b['operation']!==a['operation'])return![];if(a['category']&&b['category']!==a['category'])return![];return!![];});}async function queryProtocolInfo(a){switch(a['info']){case'constants':return{'info':'constants','result':INFO_CONSTANT['constants']};case'built-in\x20permissions':return{'info':'built-in\x20permissions','result':queryPermissions(a['filter']||{})};case'common\x20mistakes':return{'info':'common\x20mistakes','result':query_common_mistakes(a['filter'])};case'guard\x20instructions':return{'info':'guard\x20instructions','result':a47l(a['filter']||{})};case'current\x20network':return{'info':'current\x20network','result':await Config['Instance']()['network_get']()};case'value\x20types':return{'info':'value\x20types','result':INFO_CONSTANT['value_types']};case'mainnet\x20bridge\x20tokens':return{'info':'mainnet\x20bridge\x20tokens','result':MAINNET_BRIDGE_CONFIG['tokens']};default:throw new Error('Unsupported\x20info\x20type:\x20\x22'+a['info']+'\x22.\x20Valid\x20are:\x20\x22constants\x22,\x20\x22built-in\x20permissions\x22,\x20\x22common\x20mistakes\x22,\x20\x22guard\x20instructions\x22,\x20\x22current\x20network\x22,\x20\x22value\x20types\x22,\x20\x22mainnet\x20bridge\x20tokens\x22');}}function queryPermissions(a){return query_permissions(a);}const query_transaction_json=async a=>{try{const b=JSON['parse'](a);return JSON['stringify']({'data':await query_transaction(b)});}catch(c){return JSON['stringify']({'error':c?.['toString']()});}},query_transaction=async a=>{const b=await Config['Instance']()['network_get'](a['network']),c=a['digest'],d=await Cache['read'](['tx','detail',c,b],async()=>{const e=await new a47a({'url':a47b(b),'network':b})['getTransactionBlock']({'digest':c,'options':{'showEffects':!![],'showEvents':!![],'showBalanceChanges':!![],'showInput':!![],'showObjectChanges':!![]}}),f=parseTransactionBlock(e);return{'expire':Cache['DefaultExpireTime'](),'data':f};},a['no_cache']);if(d)return d['data']['cache_expire']=d['expire'],d['data'];},query_object_history_json=async a=>{try{const b=JSON['parse'](a);return JSON['stringify']({'data':await query_object_history(b)});}catch(c){return JSON['stringify']({'error':c?.['toString']()});}},query_object_history=async a=>{const b=await Config['Instance']()['network_get'](a['network']),c=(await LocalMark['Instance']()['get_many_address']([a['object']]))[0x0];if(!c)return{'transactions':[],'next_cursor':null,'has_next_page':![]};const d=a['cursor']??'',e=(a['limit']??0x14)['toString'](),f=a['order']??'descending',g=await Cache['read'](['tx','obj_history',c,d,e,f,b],async()=>{const h=await fetchTransactionHistory(b,{'InputObject':c},a['cursor'],a['limit']??0x14,a['order']??'descending');return{'expire':Cache['DefaultExpireTime'](),'data':h};},a['no_cache']);if(g)return g['data']['cache_expire']=g['expire'],g['data'];},query_address_activity_json=async a=>{try{const b=JSON['parse'](a);return JSON['stringify']({'data':await query_address_activity(b)});}catch(c){return JSON['stringify']({'error':c?.['toString']()});}},query_address_activity=async a=>{const b=await Config['Instance']()['network_get'](a['network']),c=await GetAccountOrMark_Address(a['name_or_address']);if(!c)return{'transactions':[],'next_cursor':null,'has_next_page':![]};const d=a['cursor']??'',e=(a['limit']??0x14)['toString'](),f=a['order']??'descending',g=await Cache['read'](['tx','addr_activity',c,d,e,f,b],async()=>{const h=await fetchTransactionHistory(b,{'FromAddress':c},a['cursor'],a['limit']??0x14,a['order']??'descending');return{'expire':Cache['DefaultExpireTime'](),'data':h};},a['no_cache']);if(g)return g['data']['cache_expire']=g['expire'],g['data'];},fetchTransactionHistory=async(a,b,c,d,e)=>{const f=await new a47a({'url':a47b(a),'network':a})['queryTransactionBlocks']({'filter':b,'options':{'showEffects':!![],'showInput':!![]},'cursor':c??void 0x0,'limit':Math['min'](d,0x32),'order':e});return{'transactions':(f?.['data']??[])['map'](g=>{const h=extractObjectsFromEffects(g?.['effects']);return{'digest':g?.['digest']??'','status':g?.['effects']?.['status']?.['status']==='success'?'success':'failed','timestamp_ms':g?.['timestampMs'],'sender':g?.['transaction']?.['data']?.['sender'],'kind':g?.['transaction']?.['data']?.['transaction']?.['kind']?Object['keys'](g['transaction']['data']['transaction'])[0x0]:void 0x0,'gas_used':g?.['effects']?.['gasUsed']?.['computationCost']?''+g['effects']['gasUsed']['computationCost']:void 0x0,'objects_touched':h,'has_object_changes':h['length']>0x0};}),'next_cursor':f?.['nextCursor']??null,'has_next_page':f?.['hasNextPage']??![]};},parseTransactionBlock=a=>{const b=a?.['effects'],c=b?.['status']?.['status']==='success'?'success':'failed',d=c==='failed'?b?.['status']?.['error']:void 0x0,e=(a?.['objectChanges']??[])['map'](i=>({'id':i?.['objectId']??'','type':i?.['type']??'mutated','object_type':i?.['objectType'],'sender':i?.['sender'],'version':i?.['version'],'previous_version':i?.['previousVersion'],'digest':i?.['digest']})),f=(a?.['balanceChanges']??[])['map'](i=>({'owner':typeof i?.['owner']==='string'?i['owner']:i?.['owner']?.['AddressOwner']??'','coin_type':i?.['coinType']??'','amount':i?.['amount']??'0'})),g=b?.['gasUsed'],h=g?''+(BigInt(g['computationCost']??0x0)+BigInt(g['storageCost']??0x0)-BigInt(g['storageRebate']??0x0)):void 0x0;return{'digest':a?.['digest']??'','status':c,'error':d,'timestamp_ms':a?.['timestampMs'],'sender':a?.['transaction']?.['data']?.['sender'],'gas_used':h,'gas_budget':a?.['transaction']?.['data']?.['gasData']?.['budget']?.['toString'](),'kind':a?.['transaction']?.['data']?.['transaction']?Object['keys'](a['transaction']['data']['transaction'])[0x0]:void 0x0,'object_changes':e,'balance_changes':f,'event_count':a?.['events']?.['length']??0x0,'epoch':b?.['epoch'],'is_system_tx':a?.['transaction']?.['data']?.['transaction']?.['kind']==='ConsensusCommitPrologue'};},extractObjectsFromEffects=a=>{if(!a)return[];const b=[],c=d=>{if(Array['isArray'](d)){for(const e of d)if(e?.['reference']?.['objectId'])b['push'](e['reference']['objectId']);else{if(e?.['objectId'])b['push'](e['objectId']);}}};return c(a['created']),c(a['mutated']),c(a['deleted']),c(a['wrapped']),c(a['unwrapped']),[...new Set(b)];};export{BridgeTokenId as C,isWowChain as D,isEvmChain as E,query_events as O,BridgeErrorCode as S,TransferStatus as T,findEvmChainConfigByBridgeChainId as _,query_transaction as a,verifyCommitteeConsistency as b,INFO_CONSTANT as c,query_common_mistakes as d,MAINNET_BRIDGE_CONFIG as f,findEvmChainConfig as g,MAINNET_COMMITTEE_WEIGHTS as h,query_object_history_json as i,query_events_json as k,queryPermissions as l,MAINNET_COMMITTEE_PUBKEYS as m,query_address_activity_json as n,query_transaction_json as o,MAINNET_COMMITTEE_MEMBER_ADDRESSES as p,query_object_history as r,COMMON_MISTAKES as s,query_address_activity as t,queryProtocolInfo as u,findToken as v,BridgeVersion as w,BridgeChainId as x,findTokenBySymbol as y};
@@ -1 +0,0 @@
1
- import{t as a48a}from'./client-Tlizce5t.mjs';import{n as a48b}from'./network-CeDd07Hg.mjs';import'./common-uweycQjC.mjs';import{o as a48c}from'./exception-C6IYkBi6.mjs';import{Config}from'./w/local/config.mjs';import{GetAccountOrMark_Address}from'./w/local/index.mjs';import{$ as a48d,L as a48e}from'./object-Bu0TLwJp.mjs';const query_received=async a=>{const b=await Config['Instance']()['network_get'](a['network']),c=new a48a({'url':a48b(b),'network':b});let d;if(a['type']===void 0x0||a['type']===null){const f=await GetAccountOrMark_Address(a['name_or_address']);if(!f)a48c('invalid\x20parameter','query_received:\x20Object\x20'+a['name_or_address']+'\x20not\x20found.');return(await c['getOwnedObjects']({'owner':f,'options':{'showContent':!![],'showType':!![]}}))['data']['map'](g=>{return{'id':g?.['data']?.['objectId'],'type':g?.['data']?.['type'],'content_raw':g?.['data']?.['content']?.['fields']};});}if(a['type']==='CoinWrapper'){const g=typeof a['name_or_address']==='string'?a['name_or_address']:a['name_or_address']['name_or_address'];if(!g)a48c('invalid\x20parameter','query_received:\x20name_or_address\x20is\x20required.');const h=await a48e({'objects':[g],'no_cache':![],'network':a['network']});if(!h?.['objects']||h['objects']['length']!==0x1)a48c('invalid\x20parameter','query_received:\x20Object\x20'+g+'\x20not\x20found.');d=a48d(h['objects'][0x0]['type_raw']);if(!d)a48c('invalid\x20parameter','object\x20'+g+'\x20not\x20support\x20token\x20type;\x20query\x20with\x20type=undefined\x20instead.');const i=await c['getOwnedObjects']({'owner':h['objects'][0x0]['object'],'filter':{'StructType':'0x2::payment::CoinWrapper<'+d+'>'},'options':{'showContent':!![],'showType':!![]}});let j=BigInt(0x0);const k=i['data']['map'](l=>{const m=l?.['data']?.['content']?.['fields'];return j+=BigInt(m?.['coin']?.['fields']?.['balance']),{'payment':m?.['payment'],'balance':m?.['coin']?.['fields']?.['balance'],'id':l?.['data']?.['objectId'],'type':m?.['coin']?.['type']};});return{'balance':j,'received':k,'token_type':d};}const e=await GetAccountOrMark_Address(a['name_or_address']);if(!e)a48c('invalid\x20parameter','query_received:\x20Object\x20'+a['name_or_address']+'\x20not\x20found.');return(await c['getOwnedObjects']({'owner':e,'filter':{'StructType':a['type']},'options':{'showContent':!![],'showType':!![]}}))['data']['map'](l=>{return{'id':l?.['data']?.['objectId'],'type':l?.['data']?.['type'],'content_raw':l?.['data']?.['content']?.['fields']};});};export{query_received as t};
@@ -1 +0,0 @@
1
- import{a as a52a}from'./wow-types-DcqbnAaK.mjs';import{B as a52b,G as a52c,H as a52d,J as a52e,U as a52f,V as a52g,c as a52h,ct as a52i,dt as a52j,f as a52k,ft as a52l,g as a52m,l as a52n,u as a52o,z as a52p}from'./common-uweycQjC.mjs';import{o as a52q}from'./exception-C6IYkBi6.mjs';import{LocalMark}from'./w/local/local.mjs';import{WIP,verify_wip}from'./w/local/wip.mjs';import{GetAccountOrMark_Address,GetManyAccountOrMark_Address}from'./w/local/index.mjs';import{L as a52r,nt as a52s,st as a52t,tt as a52u}from'./object-Bu0TLwJp.mjs';import{t as a52v}from'./received-YBeCoMzm.mjs';import{$ as a52w,A as a52x,C as a52y,T as a52z,at as a52A,b as a52B,it as a52C,j as a52D,k as a52E,ot as a52F,st as a52G,v as a52H,y as a52I}from'./passport-BSdEsqg3.mjs';import{r as a52J,t as a52K}from'./base-Bii-5GQQ.mjs';import{paymentInfo}from'./w/call/payment.mjs';import{allocators}from'./w/call/allocation.mjs';import{create as a52L,newPermission}from'./w/call/permission.mjs';import{a as a52M,i as a52N,n as a52O,r as a52P}from'./arb-Bmvm78tZ.mjs';import{n as a52Q}from'./util-Cn17cKwR.mjs';import{accomplish,adminUnhold,create as a52R,getMachineNodeForward,hold}from'./w/call/progress.mjs';var CallOrder=class extends a52K{constructor(a){super(),this['object_address']=void 0x0,this['service']=void 0x0,this['data']=a;}async['prepare'](a){await super['prepare'](a);if(!this['object_address'])this['object_address']=await a52o(this['data']?.['object']);if(this['object_address']){this['content']=void 0x0,await this['update_content'](a,'Order',this['object_address']);if(!this['content'])a52q('invalid\x20parameter','CallOrder_Data.data.object:'+this['object_address']);}else a52q('invalid\x20parameter','CallOrder_Data.data.object:'+this['data']?.['object']);}async['call'](a){await this['prepare'](a);const b=[],c=e=>{if(!b['includes'](e))b['push'](e);},d=this['content'];if(this['data']['progress']!=null){if(!d['machine']||!d['progress'])a52q('invalid\x20parameter','CallOrder_Data.data.progress\x20error\x20on\x20progress\x20not\x20set');const e=await a52r({'objects':[d['progress']],'no_cache':a['no_cache'],'network':a['network']});if(!e['objects']||e['objects']['length']!==0x1||e['objects'][0x0]['type']!=='Progress')a52q('invalid\x20parameter','CallOrder_Data.data.progress\x20fetch\x20error');const f=e['objects'][0x0],g=await getMachineNodeForward(a,f['machine'],f['current'],this['data']['progress']['operation']['next_node_name'],this['data']['progress']['operation']['forward']);if(g['error'])a52q('invalid\x20parameter','CallOrder_Data.data.progress.operation.forward:'+this['data']?.['progress']['operation']['forward']+'\x20validation\x20failed.\x20'+g['error']);if(g['forward']?.['guard'])c(g['forward']['guard']['guard']);}if(b['length']>0x0)return await this['check_guard_and_call'](a,b);return await this['exec'](a);}async['get_service'](a){if(!this['service']&&this['content']){const b=await a52r({'objects':[this['content']['service']],'no_cache':a['no_cache'],'network':a['network']});if(b['objects']&&b['objects']['length']===0x1){const c=b['objects'][0x0];if(!c['type']||c['type']!=='Service')a52q('invalid\x20argument\x20type','object\x20'+this['content']['service']+'\x20type\x20'+c['type']+'\x20is\x20not\x20Service');const d=a52s(c['type_raw'],'service::Service');if(!d)a52q('invalid\x20argument\x20type','Service\x20'+this['content']['service']+'\x20type\x20'+c['type_raw']+'\x20is\x20not\x20valid');this['service']={'object':c,'type':d};}}if(!this['service'])a52q('invalid\x20parameter','CallOrder_Data.data.order_required_info\x20error\x20on\x20service\x20'+this['content']['service']);return this['service'];}async['operate'](a,b,c,d){const e=this['content'];if(this['data']['agent']!=null){const f=await GetManyAccountOrMark_Address(this['data']['agent']);if(f['length']>a52y)a52q('invalid\x20parameter','CallOrder_Data.data.agent\x20count\x20'+f['length']+'\x20exceeds\x20maximum\x20'+a52y);agent_set(b,{'order':a52j(b,this['object_address']),'agents':f});}if(this['data']['required_info']!==void 0x0)await order_required_info_update(b,a52j(b,this['object_address']),this['data']['required_info']);if(this['data']['progress']!=null){if(!e['machine']||!e['progress'])a52q('invalid\x20parameter','CallOrder_Data.data.progress\x20fail\x20with\x20machine\x20or\x20progress\x20invalid\x20for\x20this\x20order');const g=await a52r({'objects':[e['machine']],'no_cache':a['no_cache'],'network':a['network']});if(g['objects']&&g['objects']['length']===0x1&&g['objects'][0x0]['type']==='Machine'){const h=g['objects'][0x0],i=this['data']['progress']['op'];if(i==='adminUnhold')adminUnhold(b,e['progress'],h['object'],h['permission'],this['data']['progress']['operation']['next_node_name'],this['data']['progress']['operation']['forward'],this['data']['progress']['message']??'',c);else{if(i==='hold'||i==='unhold')hold(b,e['progress'],h['object'],h['permission'],this['data']['progress']['operation']['next_node_name'],this['data']['progress']['operation']['forward'],this['data']['progress']['message']??'',i==='hold',this['object_address'],c);else accomplish(b,e['progress'],h['object'],h['permission'],this['data']['progress']['operation']['next_node_name'],this['data']['progress']['operation']['forward'],this['data']['progress']['message']??'',this['object_address'],c);}}else a52q('invalid\x20parameter','CallOrder_Data.data.progress\x20fail\x20with\x20machine\x20invalid\x20for\x20this\x20order');}if(this['data']['arb_confirm']!=null){const j=await this['get_arb'](a,this['data']['arb_confirm']['arb']);this['check_arb'](e,j,0x0);if(this['data']['arb_confirm']['proposition']!==void 0x0){if(this['data']['arb_confirm']['proposition']['length']>a52w)a52q('invalid\x20parameter','CallOrder_Data.data.arb_confirm.proposition\x20length\x20must\x20be\x20less\x20than\x20or\x20equal\x20to\x20'+a52w);a52M(b,j['object']['object'],j['type'],a52j(b,this['object_address']),this['data']['arb_confirm']['proposition'],this['data']['arb_confirm']['description'],this['data']['arb_confirm']['confirm']);}else{if(this['data']['arb_confirm']['description']!==void 0x0)a52O(b,j['object']['object'],j['type'],a52j(b,this['object_address']),this['data']['arb_confirm']['description'],this['data']['arb_confirm']['confirm']);else a52N(b,j['object']['object'],j['type'],a52j(b,this['object_address']),this['data']['arb_confirm']['confirm']);}}if(this['data']['arb_objection']!=null){const k=await this['get_arb'](a,this['data']['arb_objection']['arb']);this['check_arb'](e,k,0x3),a52P(b,k['object']['object'],k['type'],a52j(b,this['object_address']),this['data']['arb_objection']['objection']);}if(this['data']['arb_claim_compensation']){const l=await this['get_arb'](a,this['data']['arb_claim_compensation']['arb']);this['check_arb'](e,l,0x3);const m=await this['get_service'](a);compensation_claim(b,{'service':m['object']['object'],'service_type':m['type'],'arbitration_object':l['object']['arbitration'],'arbitration_type':l['type'],'order':a52j(b,this['object_address']),'arb':l['object']['object']});}if(this['data']['receive']!=null&&this['object_address']){if(this['data']['receive']==='recently')this['data']['receive']=await a52v({'name_or_address':{'name_or_address':this['object_address'],'local_mark_first':!![]},'no_cache':a['no_cache'],'network':a['network']});await owner_receive(b,a52j(b,this['object_address']),this['data']['receive']);}if(this['data']['transfer_to']!=null)await owner_change(b,{'order':a52j(b,this['object_address']),'new_owner':this['data']['transfer_to']});}async['get_arb'](a,b){const c=await a52r({'objects':[b],'no_cache':a['no_cache'],'network':a['network']});if(!c['objects']||c['objects']['length']!==0x1)a52q('invalid\x20parameter','Arb\x20'+b+'\x20not\x20found');const d=c['objects'][0x0];if(!d['type']||d['type']!=='Arb')a52q('invalid\x20argument\x20type','object\x20'+b+'\x20type\x20'+d['type']+'\x20is\x20not\x20Arb');const e=a52s(d['type_raw'],'arb::Arb');if(!e)a52q('invalid\x20argument\x20type','Arb\x20'+b+'\x20type\x20'+d['type_raw']+'\x20is\x20not\x20valid');return{'object':d,'type':e};}['check_arb'](a,b,c){if(b['object']['status']!==c)a52q('invalid\x20parameter','arb\x20'+b['object']['object']+'\x20status\x20'+b['object']['status']+'\x20not\x20'+c);if(b['object']['order']!==this['object_address'])a52q('invalid\x20parameter','arb\x20'+b['object']['object']+'\x20order\x20'+b['object']['order']+'\x20not\x20'+this['object_address']);if(a['claimed_by'])a52q('invalid\x20parameter','arb\x20'+b['object']['object']+'\x20error\x20on\x20order\x20'+this['object_address']+'\x20already\x20disputed\x20by\x20'+a['claimed_by']);}};function orderFn(a){return'0x2::order::'+a;}function create$1(a,b){return a52t([b]),a['moveCall']({'target':orderFn('create'),'arguments':[a52j(a,b)]});}async function owner_change(a,b){const c=await GetAccountOrMark_Address(b['new_owner']);if(!c)a52q('invalid\x20parameter','CallOrder_Data.data.new_owner:'+b['new_owner']);a52t([b['order']]),a['moveCall']({'target':orderFn('owner_change'),'arguments':[a52j(a,b['order']),a['pure']['address'](c)]});}function agent_set(a,b){a52t([b['order'],...b['agents']]),a['moveCall']({'target':orderFn('agent_set'),'arguments':[a52j(a,b['order']),a['pure']['vector']('address',b['agents'])]});}async function owner_receive(a,b,c){a52t([b]);if(Array['isArray'](c))for(const d of c){if(!d['type']||!a52k(d['type']))a52q('invalid\x20argument\x20type','type\x20'+d['type']+'\x20is\x20invalid');a52t([d['id']]),a['moveCall']({'target':orderFn('owner_receive_object'),'arguments':[a52j(a,b),a52j(a,d['id'])],'typeArguments':[d['type']]});}else{const e=c['token_type']['match'](/CoinWrapper<([^>]+)>/);if(!e)a52q('invalid\x20argument\x20type','Invalid\x20CoinWrapper\x20type:\x20'+c['token_type']);const f=e[0x1];if(!a52k(f))a52q('invalid\x20argument\x20type','Invalid\x20CoinWrapper\x20type:\x20'+f);for(const g of c['received']){const [h,i]=await Promise['all']([LocalMark['Instance']()['get_address'](g['id']),LocalMark['Instance']()['get_address'](g['payment'])]);if(!h||!i)a52q('invalid\x20argument\x20type','Received\x20'+g['id']+'\x20or\x20Payment\x20'+g['payment']+'\x20is\x20invalid');a['moveCall']({'target':orderFn('owner_receive'),'arguments':[a52j(a,b),a52j(a,h),a52j(a,i)],'typeArguments':[f]});}}}async function order_required_info_update(a,b,c){a52t([b]);if(c!==void 0x0){c=await LocalMark['Instance']()['get_address'](c)??null;if(!c)a52q('invalid\x20parameter','CallOrder_Data.data.required_info\x20'+c+'\x20not\x20found');}a['moveCall']({'target':orderFn('required_info_update'),'arguments':[a52j(a,b),a['pure']['option']('address',c)]});}function compensation_claim(a,b){if(!a52k(b['service_type']))a52q('invalid\x20parameter','Compensation\x20claim\x20service\x20type\x20'+b['service_type']+'\x20is\x20not\x20valid');if(!a52k(b['arbitration_type']))a52q('invalid\x20parameter','Compensation\x20claim\x20arbitration\x20type\x20'+b['arbitration_type']+'\x20is\x20not\x20valid');a52t([b['service'],b['arbitration_object'],b['order'],b['arb']]),a['moveCall']({'target':a52i('compensation_claim'),'arguments':[a52j(a,b['service']),a52j(a,b['arbitration_object']),a52j(a,b['order']),a52j(a,b['arb']),a['object']['clock']()],'typeArguments':[b['service_type'],b['arbitration_type']]});}const NAMED_OPERATOR_ORDER_PAYER='';var CallService=class extends a52K{constructor(a){super(),this['object_address']=void 0x0,this['permission_address']=void 0x0,this['new_permission_description']=void 0x0,this['parameter_type']=void 0x0,this['checkPublished']=b=>{if(this['content']&&!this['content']['bPublished'])a52q('fail','Service\x20object\x20has\x20not\x20been\x20published\x20yet,\x20so\x20the\x20operation\x20('+b+')\x20cannot\x20proceed.');},this['checkNotPublishedAbsolute']=b=>{if(this['content']&&this['content']['bPublished'])a52q('fail','Service\x20is\x20published.\x20Operation\x20('+b+')\x20is\x20PERMANENTLY\x20BLOCKED\x20(Move\x20layer:\x20assert!(!bPublished)\x20at\x20service.move\x20L633/L653/L503).\x20Must\x20create\x20a\x20new\x20Service.');},this['checkNotPublishedConditional']=b=>{if(this['content']&&this['content']['bPublished']){const c=this['content'];if(c['paused_time']!=null&&c['setting_lock_duration']!=null){const d=Number(c['paused_time']),e=Number(c['setting_lock_duration']),f=Date['now'](),g=d+e;if(f>=g)return;a52q('fail','Service\x20is\x20published\x20and\x20locked.\x20Operation\x20('+b+')\x20requires\x20pause\x20+\x20setting_lock_duration\x20wait\x20(Move\x20layer:\x20assert_not_published\x20at\x20service.move\x20L303-308).\x20Paused\x20at:\x20'+d+',\x20lock_duration:\x20'+e+'ms,\x20unlock\x20at:\x20'+g+',\x20current:\x20'+f+',\x20remaining:\x20'+(g-f)+'ms.');}a52q('fail','Service\x20is\x20published.\x20Operation\x20('+b+')\x20requires\x20pause\x20+\x20setting_lock_duration\x20wait\x20(Move\x20layer:\x20assert_not_published\x20at\x20service.move\x20L303-308).\x20Please\x20pause\x20the\x20Service\x20first\x20(pause:\x20true)\x20and\x20wait\x20for\x20setting_lock_duration\x20to\x20pass.');}},this['checkNotPaused']=b=>{if(this['content']&&this['content']['bPaused'])a52q('fail','Service\x20object\x20has\x20been\x20paused\x20and\x20operation\x20('+b+')\x20cannot\x20proceed.');},this['data']=a;}async['prepare'](a){await super['prepare'](a);if(!this['object_address'])this['object_address']=await a52o(this['data']?.['object']);if(this['object_address']){this['content']=void 0x0,await this['update_content'](a,'Service',this['object_address']);if(!this['content'])a52q('invalid\x20parameter','CallService_Data.data.object:'+this['object_address']);this['permission_address']=this['content']['permission'],this['parameter_type']=a52s(this['content']['type_raw'],'service::Service');if(!this['permission_address'])a52q('invalid\x20parameter','CallService_Data.data.object.permission\x20is\x20empty');if(!a52k(this['parameter_type']))a52q('invalid\x20argument\x20type','CallService_Data.data.object.type_parameter\x20is\x20empty');}else{const b=a52h(this['data']['object']);this['permission_address']=await a52o(b?.['permission']),this['new_permission_description']=a52n(b?.['permission']),this['parameter_type']=b?.['type_parameter'];if(!a52k(this['parameter_type']))a52q('invalid\x20argument\x20type','CallService_Data.data.object.type_parameter\x20invalid');}if(this['data']['buy_guard']!=null&&!a52a(this['data']['buy_guard'])){const c=await LocalMark['Instance']()['get_address'](this['data']['buy_guard']);if(!c||!a52a(c))a52q('invalid\x20address','buy_guard:\x20'+this['data']['buy_guard']);this['data']['buy_guard']=c;}}async['call'](a){await this['prepare'](a);const b=[],c=[],d=f=>{if(!b['includes'](f))b['push'](f);},e=f=>{if(this['permission_address']&&!c['includes'](f))c['push'](f);};if(this['permission_address']&&!this['object_address'])e(0x12c);if(this['data']?.['order_new']){if(!this['content'])a52q('invalid\x20parameter','CallService_Data.data.order_new\x20fail\x20because\x20the\x20Service\x20'+JSON['stringify'](this['data']['object'])+'\x20content\x20not\x20ready');this['order_allowed']();if(this['content']['buy_guard']!=null)d(this['content']['buy_guard']);}if(this['permission_address']&&this['data']?.['description']!=null&&this['object_address'])e(0x12d);if(this['permission_address']&&this['data']?.['location']!=null)e(0x12f);if(this['permission_address']&&this['data']?.['repositories']!=null)e(0x130);if(this['permission_address']&&this['data']?.['sales']!=null)e(0x131);this['permission_address']&&this['data']?.['machine']!==void 0x0&&(this['checkNotPublishedAbsolute']('machine'),e(0x132));if(this['permission_address']&&this['data']?.['discount']!=null)e(0x138);if(this['permission_address']&&this['data']?.['arbitrations']!=null){if(this['data']['arbitrations']['op']==='remove'||this['data']['arbitrations']['op']==='clear')this['checkNotPublishedConditional']('arbitrations');e(0x134);}if(this['permission_address']&&this['data']?.['customer_required']!=null)e(0x135);if(this['permission_address']&&this['data']?.['pause']!==void 0x0)e(0x136);if(this['permission_address']&&this['data']?.['publish'])e(0x137);this['permission_address']&&this['data']?.['order_allocators']!==void 0x0&&(this['checkNotPublishedAbsolute']('order_allocators'),e(0x139));if(this['permission_address']&&this['data']?.['buy_guard']!=null)e(0x133);if(this['permission_address']&&this['data']?.['compensation_fund_add']!=null)e(0x13b);this['permission_address']&&this['data']?.['compensation_fund_withdraw']!=null&&(this['checkNotPublishedConditional']('compensation_fund_withdraw'),e(0x13a));if(this['permission_address']&&this['data']?.['setting_lock_duration_add']!==void 0x0)e(0x13d);if(this['permission_address']&&this['data']?.['rewards']!=null){if(this['data']['rewards']['op']==='remove'||this['data']['rewards']['op']==='clear')this['checkNotPublishedConditional']('rewards');e(0x13e);}if(this['permission_address']&&this['data']?.['compensation_fund_receive']!=null)e(0x13c);if(this['permission_address']&&this['data']?.['owner_receive']!=null)e(0x13f);if(this['permission_address']&&this['data']?.['um']!==void 0x0)e(0x140);if(this['permission_address']||b['length']>0x0)return await this['check_permission_and_call'](a,this['permission_address'],c,b);return await this['exec'](a);}async['operate'](a,b,c,d){let e=this['permission_address'],f=this['object_address'];if(!this['object_address']){if(!e)e=newPermission(b,this['new_permission_description']??'');if(e&&this['parameter_type'])f=newService(b,this['parameter_type'],e,this['data']?.['description']??'',c);}if(!f||!e)a52q('invalid\x20parameter','CallService_Data.data.object:'+this['object_address']);let g;if(this['data']?.['order_new']!=null&&this['content']){this['order_allowed']();const h=this['data']?.['order_new'],i=this['content']['sales'],j=new Set();for(const k of h['buy']['items']){const l=i['find'](q=>q['name']===k['name']);if(!l)a52q('invalid\x20parameter','Product\x20\x22'+k['name']+'\x22\x20not\x20found\x20in\x20Service\x20sales');if(k['wip_hash']===''&&l['wip_hash']!=='')k['wip_hash']=l['wip_hash'];if(j['has'](l['wip']))continue;if(l['wip']==='')continue;const o=await verify_wip(l['wip'],k['wip_hash']!==''?k['wip_hash']:void 0x0);if(!o['valid'])a52q('invalid\x20parameter','WIP\x20file\x20verification\x20failed\x20for\x20product\x20\x22'+k['name']+'\x22\x20at\x20'+l['wip']+':\x20'+o['error']);j['add'](l['wip']);}h['buy']['discount']=await LocalMark['Instance']()['get_address'](this['data']['order_new']['buy']['discount']),g=await buy(a,b,f,this['parameter_type'],this['content']['machine'],h['buy'],c);if(!g)a52q('fail','Buy\x20failed,\x20no\x20order\x20created');if(h?.['agents']!=null)agent_set(b,{'order':g['order'],'agents':await GetManyAccountOrMark_Address(h['agents'])});if(h?.['order_required_info']!==void 0x0&&h['order_required_info']['length']>0x0)await order_required_info_update(b,g['order'],h['order_required_info']);if(h?.['transfer']!=null)await owner_change(b,{'order':g['order'],'new_owner':h['transfer']});if(h?.['namedNewAllocation']!=null&&g?.['allocation'])await this['new_with_mark'](a,b,'Allocation',g?.['allocation'],a52h(h['namedNewAllocation']));if(g?.['progress']){if(h?.['namedNewProgress']!=null)await this['new_with_mark'](a,b,'Progress',a52R(b,g?.['progress']),a52h(h['namedNewProgress']));else a52R(b,g?.['progress']);}if(g?.['order']){const q=create$1(b,g?.['order']);if(h?.['namedNewOrder']!=null)await this['new_with_mark'](a,b,'Order',q,a52h(h['namedNewOrder']));}}if(this['object_address']&&this['data']['description']!=null)description_set(b,f,this['parameter_type'],e,this['data']['description'],c);if(this['data']['location']!=null)location_set(b,f,this['parameter_type'],e,this['data']['location'],c);if(this['data']['sales']!=null)switch(this['data']['sales']['op']){case'add':case'set':for(const r of this['data']['sales']['sales'])if(r['wip']!==''){const s=await verify_wip(r['wip'],r['wip_hash']!==''?r['wip_hash']:void 0x0);if(!s['valid'])a52q('invalid\x20parameter','WIP\x20file\x20verification\x20failed\x20for\x20product\x20\x22'+r['name']+'\x22\x20at\x20'+r['wip']+':\x20'+s['error']);const t=new WIP(),u=await t['load'](r['wip']);r['wip_hash']=t['getHash'](u);}if(this['data']['sales']['op']==='add')sales_add(b,f,this['parameter_type'],e,this['data']['sales']['sales'],c);else sales_set(b,f,this['parameter_type'],e,this['data']['sales']['sales'],c);break;case'remove':sales_remove(b,f,this['parameter_type'],e,this['data']['sales']['sales_name'],c);break;case'clear':sales_clear(b,f,this['parameter_type'],e,c);break;}if(this['data']['repositories']!=null)switch(this['data']['repositories']['op']){case'add':case'set':if(this['data']['repositories']['objects']['length']>MAX_REPOSITORY_COUNT)a52q('invalid\x20parameter','CallService_Data.data.repositories.objects:'+this['data']['repositories']['objects']);if(this['data']['repositories']['op']==='set')repository_clear(b,f,this['parameter_type'],e,c);(await LocalMark['Instance']()['get_many_address_availables'](this['data']['repositories']['objects']))['forEach'](v=>{repository_add(b,f,this['parameter_type'],e,v,c);});break;case'remove':{if(this['data']['repositories']['objects']['length']>MAX_REPOSITORY_COUNT)a52q('invalid\x20parameter','CallService_Data.data.repositories.objects:'+this['data']['repositories']['objects']);const v=await LocalMark['Instance']()['get_many_address_availables'](this['data']['repositories']['objects']);repository_remove(b,f,this['parameter_type'],e,v,c);break;}case'clear':repository_clear(b,f,this['parameter_type'],e,c);break;}if(this['data']['rewards']!=null)switch(this['data']['rewards']['op']){case'add':case'set':if(this['data']['rewards']['objects']['length']>MAX_REWARD_COUNT)a52q('invalid\x20parameter','rewards\x20count\x20exceeds\x20maximum\x20limit\x20'+MAX_REWARD_COUNT);if(this['data']['rewards']['op']==='set')reward_clear(b,f,this['parameter_type'],e,c);(await a52Q(a,this['data']['rewards']['objects'],'Reward','reward::Reward',!![]))['forEach'](w=>{reward_add(b,f,this['parameter_type'],e,w['object'],w['type'],c);});break;case'remove':{if(this['data']['rewards']['objects']['length']>MAX_REWARD_COUNT)a52q('invalid\x20parameter','rewards\x20count\x20exceeds\x20maximum\x20limit\x20'+MAX_REWARD_COUNT);const w=await LocalMark['Instance']()['get_many_address_availables'](this['data']['rewards']['objects']);reward_remove(b,f,this['parameter_type'],e,w,c);break;}case'clear':reward_clear(b,f,this['parameter_type'],e,c);break;}if(this['data']['arbitrations']!=null)switch(this['data']['arbitrations']['op']){case'add':case'set':if(this['data']['arbitrations']['objects']['length']>MAX_ARBITRATION_COUNT)a52q('invalid\x20parameter','arbitrations\x20count\x20exceeds\x20maximum\x20limit\x20'+MAX_ARBITRATION_COUNT);if(this['data']['arbitrations']['op']==='set')arbitration_clear(b,f,this['parameter_type'],e,c);(await a52Q(a,this['data']['arbitrations']['objects'],'Arbitration','arbitration::Arbitration',!![]))['forEach'](x=>{arbitrations_add(b,f,this['parameter_type'],e,x['object'],x['type'],c);});break;case'remove':{if(this['data']['arbitrations']['objects']['length']>MAX_ARBITRATION_COUNT)a52q('invalid\x20parameter','arbitrations\x20count\x20exceeds\x20maximum\x20limit\x20'+MAX_ARBITRATION_COUNT);const x=await LocalMark['Instance']()['get_many_address_availables'](this['data']['arbitrations']['objects']);arbitrations_remove(b,f,this['parameter_type'],e,x,c);break;}case'clear':arbitration_clear(b,f,this['parameter_type'],e,c);break;}if(this['data']['discount']!=null)await discount(b,f,this['parameter_type'],e,this['data']['discount'],c);if(this['data']['discount_destroy']!=null)discount_destroy(b,await LocalMark['Instance']()['get_many_address_availables'](this['data']['discount_destroy']));if(this['data']['machine']!==void 0x0){if(this['data']['machine']){const y=await LocalMark['Instance']()['get_address'](this['data']['machine']);if(y)this['data']['machine']=y;else a52q('invalid\x20argument\x20type','Machine\x20not\x20found\x20'+this['data']['machine']);}machine_set(b,f,this['parameter_type'],e,this['data']['machine'],c);}if(this['data']['customer_required']!=null)customer_required_set(b,f,this['parameter_type'],e,this['data']['customer_required'],c);if(this['data']['order_allocators']!==void 0x0)order_allocators_set(b,f,this['parameter_type'],e,this['data']['order_allocators']?await allocators(b,this['data']['order_allocators']):null,c);if(this['data']['buy_guard']!==void 0x0)buy_guard_set(b,f,this['parameter_type'],e,this['data']['buy_guard'],c);if(this['data']['compensation_fund_add']!=null)await compensation_fund_add(a,b,f,this['parameter_type'],e,this['data']['compensation_fund_add'],c);if(this['data']['compensation_fund_withdraw']!=null){const z=await GetAccountOrMark_Address(this['data']['compensation_fund_withdraw']['receipt']);if(!z||!a52a(z))a52q('invalid\x20address','compensation_fund_withdraw\x20receipt:\x20'+this['data']['compensation_fund_withdraw']['receipt']);const A=await paymentInfo(a,b,this['data']['compensation_fund_withdraw']['payment_info']);compensation_fund_withdraw(b,f,this['parameter_type'],A,z,e,c);}if(this['data']['setting_lock_duration_add']!==void 0x0)setting_lock_duration_add(b,f,this['parameter_type'],e,this['data']['setting_lock_duration_add'],c);if(this['data']['compensation_fund_receive']!=null&&this['object_address']){if(this['data']['compensation_fund_receive']==='recently'){const B=await a52v({'name_or_address':{'name_or_address':this['object_address'],'local_mark_first':!![]},'type':'CoinWrapper','network':a['network'],'no_cache':a['no_cache']});if(Array['isArray'](B))a52q('invalid\x20parameter','CallAllocation_Data.data.received_coins:\x20received\x20is\x20ReceivedNormal[]');else this['data']['compensation_fund_receive']=B;}if(typeof this['data']['compensation_fund_receive']==='object'&&'received'in this['data']['compensation_fund_receive']&&this['data']['compensation_fund_receive']['received']?.['length']>0x0){if(this['data']['compensation_fund_receive']['token_type']!==this['parameter_type'])a52q('invalid\x20parameter','token_type\x20'+this['data']['compensation_fund_receive']['token_type']+'\x20is\x20not\x20equal\x20to\x20parameter_type\x20'+this['parameter_type']);for(const C of this['data']['compensation_fund_receive']['received']){const [D,E]=await Promise['all']([LocalMark['Instance']()['get_address'](C['id']),LocalMark['Instance']()['get_address'](C['payment'])]);if(!D||!E)a52q('invalid\x20argument\x20type','Compensation\x20fund\x20receive\x20object\x20'+C['id']+'\x20or\x20payment\x20object\x20'+C['payment']+'\x20not\x20found');compensation_fund_receive(b,f,this['parameter_type'],e,C['id'],C['payment'],c);}}}if(this['data']['owner_receive']!=null&&this['object_address']){if(this['data']['owner_receive']==='recently')this['data']['owner_receive']=await a52v({'name_or_address':{'name_or_address':this['object_address'],'local_mark_first':!![]},'network':a['network'],'no_cache':a['no_cache']});await a52u(b,f,e,this['data']['owner_receive'],this['parameter_type'],F=>'0x2::service::'+F,c);}if(this['data']['um']!==void 0x0){let F=null;if(this['data']['um']){F=await LocalMark['Instance']()['get_address'](this['data']['um'])||null;if(!F)a52q('invalid\x20parameter','CallService_Data.data.um:'+this['data']['um']);}um_set(b,f,this['parameter_type'],e,F,c);}if(this['data']['pause']!=null)pause(b,f,this['parameter_type'],e,this['data']['pause'],c);if(this['data']['publish'])publish(b,f,this['parameter_type'],e,c);if(!this['permission_address']){const G=a52h(this['data']?.['object']);await this['new_with_mark'](a,b,'Permission',a52L(b,e),a52h(G['permission']));}if(!this['object_address'])await this['new_with_mark'](a,b,'Service',create(b,f,this['parameter_type']),a52h(this['data']?.['object']));}['order_allowed'](){if(this['content']?.['bPaused'])return a52q('invalid\x20parameter','Service\x20is\x20paused'),![];if(this['content']?.['bPublished']!==!![])return a52q('invalid\x20parameter','Service\x20is\x20not\x20published'),![];return!![];}};const MAX_SALE_COUNT=a52G,MAX_REPOSITORY_COUNT=a52C,MAX_ARBITRATION_COUNT=a52z,MAX_REWARD_COUNT=a52F,MAX_CUSTOMER_REQUIRED_INFO_COUNT=a52A,MAX_DISCOUNT_COUNT_ONCE=a52E,MAX_DISCOUNT_RECEIVER_ONCE=a52x,MAX_DISCOUNT_TOTAL_COUNT=a52D,MAX_REQUIRED_INFO_SIZE=a52A,DEFAULT_SETTING_LOCK_DURATION=a52H,DEFAULT_LOCK_DURATION=a52H,DISCOUNT_TYPE_RATES=a52B,DISCOUNT_TYPE_MINUS=a52I,MAX_WIP_LENGTH=0x400,MAX_WIP_HASH_LENGTH=0x40;function sale(a,b){if(typeof b['name']==='string'&&!a52d(b['name']))a52q('invalid\x20parameter','Name\x20'+b['name']+'\x20exceeds\x20maximum\x20length\x20256');if(b['wip']['length']>MAX_WIP_LENGTH)a52q('invalid\x20parameter','WIP\x20'+b['wip']+'\x20exceeds\x20maximum\x20length\x20'+MAX_WIP_LENGTH);const c=b['wip'];if(b['wip']['length']>0x0&&!a52g(b['wip']))a52q('invalid\x20url','WIP\x20'+b['wip']+'\x20is\x20not\x20a\x20valid\x20HTTP/HTTPS\x20URL');const d=b['wip_hash']['includes'](':')?b['wip_hash']['split'](':')[0x1]:b['wip_hash'];if(d['length']>MAX_WIP_HASH_LENGTH)a52q('invalid\x20parameter','WIP\x20hash\x20'+d+'\x20exceeds\x20maximum\x20length\x20'+MAX_WIP_HASH_LENGTH);return a['moveCall']({'target':a52i('sale'),'arguments':[a52l(a,b['name']),a['pure']['u64'](b['price']),a['pure']['u64'](b['stock']),a['pure']['bool'](b['suspension']),a52l(a,c),a52l(a,d)]});}function quote_item(a,b){if(!a52d(b['name']))a52q('invalid\x20parameter','Quote\x20item\x20name\x20'+b['name']+'\x20is\x20not\x20valid');if(!a52e(b['stock']))a52q('invalid\x20u64','Quote\x20item\x20stock\x20'+b['stock']+'\x20is\x20not\x20valid');const c=b['wip_hash']['includes'](':')?b['wip_hash']['split'](':')[0x1]:b['wip_hash'];if(c['length']>MAX_WIP_HASH_LENGTH)a52q('invalid\x20parameter','Quote\x20item\x20wip_hash\x20'+c+'\x20exceeds\x20maximum\x20length\x20'+MAX_WIP_HASH_LENGTH);return a['moveCall']({'target':a52i('quote_item'),'arguments':[a52l(a,b['name']),a['pure']['u64'](b['stock']),a52l(a,c)]});}function discount_send(a,b,c){if(b['length']===0x0)return;a52t([...b,c]);if(b['length']>MAX_DISCOUNT_COUNT_ONCE)a52q('invalid\x20parameter','Discount\x20count\x20'+b['length']+'\x20exceeds\x20maximum\x20limit\x20'+MAX_DISCOUNT_COUNT_ONCE);if(b['length']===0x1){a['moveCall']({'target':a52i('discount_send_singleton'),'arguments':[a52j(a,b[0x0]),a['pure']['address'](c)]});return;}else a['moveCall']({'target':a52i('discount_send'),'arguments':[a['makeMoveVec']({'elements':b,'type':'0x2::service::Discount'}),a['pure']['address'](c)]});}function discount_destroy(a,b){a52t([...b]),b['forEach'](c=>{a['moveCall']({'target':a52i('discount_destroy'),'arguments':[a52j(a,c)]});});}const buy=async(a,b,c,d,e,f,g)=>{if(f['items']['length']===0x0)return;a52t([c,f['discount'],e,g]);if(!a52k(d))a52q('invalid\x20parameter','Buy\x20service\x20type\x20'+d+'\x20is\x20not\x20valid');if(!a52p(f['items'],l=>{if(!a52d(l['name']))a52q('invalid\x20parameter','Buy\x20item\x20name\x20'+l['name']+'\x20is\x20not\x20valid');if(!a52e(l['stock']))a52q('invalid\x20u64','Buy\x20item\x20stock\x20'+l['stock']+'\x20is\x20not\x20valid');return!![];}))a52q('invalid\x20parameter','Buy\x20items\x20is\x20not\x20valid');if(typeof f['payment_remark']==='string'&&!a52f(f['payment_remark']))a52q('invalid\x20parameter','Buy\x20payment\x20remark\x20'+f['payment_remark']+'\x20is\x20not\x20valid');f['payment_remark']=f['payment_remark']||'';if(f['payment_index']!=null&&!a52e(f['payment_index']))a52q('invalid\x20u64','Buy\x20payment\x20index\x20'+f['payment_index']+'\x20is\x20not\x20valid');const h=await a52J(a,b,f['total_pay'],d);f['discount']=await LocalMark['Instance']()['get_address'](f['discount']);let i=void 0x0;if(f['discount'])i=b['moveCall']({'target':a52i('quote_with_discount'),'arguments':[a52j(b,c),b['makeMoveVec']({'elements':f['items']['map'](l=>quote_item(b,l)),'type':'0x2::service::QuoteItem'}),a52j(b,f['discount'])],'typeArguments':[d]});else i=b['moveCall']({'target':a52i('quote'),'arguments':[a52j(b,c),b['makeMoveVec']({'elements':f['items']['map'](l=>quote_item(b,l)),'type':'0x2::service::QuoteItem'})],'typeArguments':[d]});let j;if(g)j=b['moveCall']({'target':a52i('buy_with_passport'),'arguments':[a52j(b,c),a52j(b,g),i,b['object']['mutRegistrar'](),b['object']['clock']()],'typeArguments':[d]});else j=b['moveCall']({'target':a52i('buy'),'arguments':[a52j(b,c),i,b['object']['mutRegistrar'](),b['object']['clock']()],'typeArguments':[d]});const k={'order':j};k['allocation']=b['moveCall']({'target':a52i('order_allocation'),'arguments':[a52j(b,c),a52j(b,j),h,b['pure']['string'](f['payment_remark']??''),b['pure']['u64'](f['payment_index']||0x0),b['object']['mutRegistrar'](),b['object']['clock']()],'typeArguments':[d]});if(e)k['progress']=b['moveCall']({'target':a52i('order_progress'),'arguments':[a52j(b,c),a52j(b,j),a52j(b,e),b['object']['mutRegistrar'](),b['object']['clock']()],'typeArguments':[d]});return k;};function newService(a,b,c,d,e){a52t([c,e]);if(typeof d==='string'&&!a52b(d))a52q('invalid\x20description','Description\x20exceeds\x20maximum\x20length\x20'+a52m);if(!a52k(b))a52q('invalid\x20parameter','New\x20service\x20type\x20'+b+'\x20is\x20not\x20valid');if(e)return a['moveCall']({'target':a52i('new_with_passport'),'arguments':[a52j(a,c),a52j(a,e),a52l(a,d),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[b]});else return a['moveCall']({'target':a52i('new'),'arguments':[a52j(a,c),a52l(a,d),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[b]});}function description_set(a,b,c,d,e,f){a52t([b,d,f]);if(typeof e==='string'&&!a52b(e))a52q('invalid\x20description','Description\x20exceeds\x20maximum\x20length\x20'+a52m);if(!a52k(c))a52q('invalid\x20parameter','Description\x20set\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(f)a['moveCall']({'target':a52i('description_set_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,f),a52l(a,e)],'typeArguments':[c]});else a['moveCall']({'target':a52i('description_set'),'arguments':[a52j(a,b),a52j(a,d),a52l(a,e)],'typeArguments':[c]});}function um_set(a,b,c,d,e,f){a52t([b,d]);if(!a52k(c))a52q('invalid\x20parameter','Service\x20type\x20'+c+'\x20is\x20not\x20valid');if(e){if(f)a['moveCall']({'target':a52i('um_set_with_passport'),'arguments':[a52j(a,b),a52j(a,d),f,a52j(a,e),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c]});else a['moveCall']({'target':a52i('um_set'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,e),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c]});}else{if(f)a['moveCall']({'target':a52i('um_none_with_passport'),'arguments':[a52j(a,b),a52j(a,d),f,a['object']['mutRegistrar']()],'typeArguments':[c]});else a['moveCall']({'target':a52i('um_none'),'arguments':[a52j(a,b),a52j(a,d),a['object']['mutRegistrar']()],'typeArguments':[c]});}}function location_set(a,b,c,d,e,f){a52t([b,d,f]);if(typeof e==='string'&&!a52d(e))a52q('invalid\x20parameter','Location\x20'+e+'\x20exceeds\x20maximum\x20length\x20256');if(!a52k(c))a52q('invalid\x20parameter','Location\x20set\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(f)a['moveCall']({'target':a52i('location_set_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,f),a52l(a,e)],'typeArguments':[c]});else a['moveCall']({'target':a52i('location_set'),'arguments':[a52j(a,b),a52j(a,d),a52l(a,e)],'typeArguments':[c]});}function create(a,b,c){a52t([b]);if(!a52k(c))a52q('invalid\x20parameter','Create\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');return a['moveCall']({'target':a52i('create'),'arguments':[a52j(a,b)],'typeArguments':[c]});}function sales_add(a,b,c,d,e,f){if(e['length']===0x0)return;a52t([b,d,f]);if(!a52k(c))a52q('invalid\x20parameter','Sales\x20add\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(f)a['moveCall']({'target':a52i('sales_add_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,f),a['makeMoveVec']({'elements':e['map'](g=>sale(a,g)),'type':'0x2::service::Sale'})],'typeArguments':[c]});else a['moveCall']({'target':a52i('sales_add'),'arguments':[a52j(a,b),a52j(a,d),a['makeMoveVec']({'elements':e['map'](g=>sale(a,g)),'type':'0x2::service::Sale'})],'typeArguments':[c]});}function sales_remove(a,b,c,d,e,f){if(e['length']===0x0)return;a52t([b,d,f]);if(!a52k(c))a52q('invalid\x20parameter','Sales\x20remove\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(f)a['moveCall']({'target':a52i('sales_remove_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,f),a['pure']['vector']('string',e)],'typeArguments':[c]});else a['moveCall']({'target':a52i('sales_remove'),'arguments':[a52j(a,b),a52j(a,d),a['pure']['vector']('string',e)],'typeArguments':[c]});}function sales_clear(a,b,c,d,e){a52t([b,d,e]);if(!a52k(c))a52q('invalid\x20parameter','Sales\x20clear\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(e)a['moveCall']({'target':a52i('sales_clear_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,e)],'typeArguments':[c]});else a['moveCall']({'target':a52i('sales_clear'),'arguments':[a52j(a,b),a52j(a,d)],'typeArguments':[c]});}function sales_set(a,b,c,d,e,f){if(e['length']===0x0)return;a52t([b,d,f]);if(!a52k(c))a52q('invalid\x20parameter','Sales\x20set\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(f)a['moveCall']({'target':a52i('sales_set_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,f),a['makeMoveVec']({'elements':e['map'](g=>sale(a,g)),'type':'0x2::service::Sale'})],'typeArguments':[c]});else a['moveCall']({'target':a52i('sales_set'),'arguments':[a52j(a,b),a52j(a,d),a['makeMoveVec']({'elements':e['map'](g=>sale(a,g)),'type':'0x2::service::Sale'})],'typeArguments':[c]});}function price_add(a,b,c,d,e,f,g){a52t([b,d,g]);if(!a52k(c))a52q('invalid\x20parameter','Price\x20add\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(typeof e==='string'&&!a52d(e))a52q('invalid\x20parameter','Sale\x20name\x20'+e+'\x20exceeds\x20maximum\x20length\x20256');if(!a52e(f))a52q('invalid\x20u64','Price\x20add\x20'+f+'\x20is\x20not\x20valid');if(g)a['moveCall']({'target':a52i('price_add_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,g),a52l(a,e),a['pure']['u64'](f)],'typeArguments':[c]});else a['moveCall']({'target':a52i('price_add'),'arguments':[a52j(a,b),a52j(a,d),a52l(a,e),a['pure']['u64'](f)],'typeArguments':[c]});}function price_reduce(a,b,c,d,e,f,g){a52t([b,d,g]);if(!a52k(c))a52q('invalid\x20parameter','Price\x20reduce\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(typeof e==='string'&&!a52d(e))a52q('invalid\x20parameter','Sale\x20name\x20'+e+'\x20exceeds\x20maximum\x20length\x20256');if(!a52e(f))a52q('invalid\x20u64','Price\x20reduce\x20'+f+'\x20is\x20not\x20valid');if(g)a['moveCall']({'target':a52i('price_reduce_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,g),a52l(a,e),a['pure']['u64'](f)],'typeArguments':[c]});else a['moveCall']({'target':a52i('price_reduce'),'arguments':[a52j(a,b),a52j(a,d),a52l(a,e),a['pure']['u64'](f)],'typeArguments':[c]});}function stock_add(a,b,c,d,e,f,g){a52t([b,d,g]);if(!a52k(c))a52q('invalid\x20parameter','Stock\x20add\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(typeof e==='string'&&!a52d(e))a52q('invalid\x20parameter','Sale\x20name\x20'+e+'\x20exceeds\x20maximum\x20length\x20256');if(!a52e(f))a52q('invalid\x20u64','Stock\x20add\x20'+f+'\x20is\x20not\x20valid');if(g)a['moveCall']({'target':a52i('stock_add_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,g),a52l(a,e),a['pure']['u64'](f)],'typeArguments':[c]});else a['moveCall']({'target':a52i('stock_add'),'arguments':[a52j(a,b),a52j(a,d),a52l(a,e),a['pure']['u64'](f)],'typeArguments':[c]});}function stock_reduce(a,b,c,d,e,f,g){a52t([b,d,g]);if(!a52k(c))a52q('invalid\x20parameter','Stock\x20reduce\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(typeof e==='string'&&!a52d(e))a52q('invalid\x20parameter','Sale\x20name\x20'+e+'\x20exceeds\x20maximum\x20length\x20256');if(!a52e(f))a52q('invalid\x20u64','Stock\x20reduce\x20'+f+'\x20is\x20not\x20valid');if(g)a['moveCall']({'target':a52i('stock_reduce_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,g),a52l(a,e),a['pure']['u64'](f)],'typeArguments':[c]});else a['moveCall']({'target':a52i('stock_reduce'),'arguments':[a52j(a,b),a52j(a,d),a52l(a,e),a['pure']['u64'](f)],'typeArguments':[c]});}function sale_suspension(a,b,c,d,e,f,g){a52t([b,d,g]);if(!a52k(c))a52q('invalid\x20parameter','Sale\x20suspension\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(typeof e==='string'&&!a52d(e))a52q('invalid\x20parameter','Sale\x20name\x20'+e+'\x20exceeds\x20maximum\x20length\x20256');if(g)a['moveCall']({'target':a52i('sale_suspension_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,g),a52l(a,e),a['pure']['bool'](f)],'typeArguments':[c]});else a['moveCall']({'target':a52i('sale_suspension'),'arguments':[a52j(a,b),a52j(a,d),a52l(a,e),a['pure']['bool'](f)],'typeArguments':[c]});}function repository_add(a,b,c,d,e,f){a52t([b,d,e,f]);if(!a52k(c))a52q('invalid\x20parameter','Repository\x20add\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(f)a['moveCall']({'target':a52i('repository_add_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,f),a52j(a,e),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c]});else a['moveCall']({'target':a52i('repository_add'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,e),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c]});}function repository_remove(a,b,c,d,e,f){if(e['length']===0x0)return;a52t([b,d,f,...e]);if(!a52k(c))a52q('invalid\x20parameter','Repository\x20remove\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(f)a['moveCall']({'target':a52i('repository_remove_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,f),a['pure']['vector']('address',e),a['object']['mutRegistrar']()],'typeArguments':[c]});else a['moveCall']({'target':a52i('repository_remove'),'arguments':[a52j(a,b),a52j(a,d),a['pure']['vector']('address',e),a['object']['mutRegistrar']()],'typeArguments':[c]});}function repository_clear(a,b,c,d,e){a52t([b,d,e]);if(!a52k(c))a52q('invalid\x20parameter','Repository\x20clear\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(e)a['moveCall']({'target':a52i('repository_clear_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,e),a['object']['mutRegistrar']()],'typeArguments':[c]});else a['moveCall']({'target':a52i('repository_clear'),'arguments':[a52j(a,b),a52j(a,d),a['object']['mutRegistrar']()],'typeArguments':[c]});}function buy_guard_set(a,b,c,d,e,f){a52t([b,d,e,f]);if(!a52k(c))a52q('invalid\x20parameter','Buy\x20guard\x20set\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(f){if(e)a['moveCall']({'target':a52i('buy_guard_set_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,f),a52j(a,e),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c]});else a['moveCall']({'target':a52i('buy_guard_none_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,f),a['object']['mutRegistrar']()],'typeArguments':[c]});}else{if(e)a['moveCall']({'target':a52i('buy_guard_set'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,e),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c]});else a['moveCall']({'target':a52i('buy_guard_none'),'arguments':[a52j(a,b),a52j(a,d),a['object']['mutRegistrar']()],'typeArguments':[c]});}}function machine_set(a,b,c,d,e,f){a52t([b,d,e,f]);if(!a52k(c))a52q('invalid\x20parameter','Machine\x20set\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(f){if(e)a['moveCall']({'target':a52i('machine_set_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,f),a52j(a,e),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c]});else a['moveCall']({'target':a52i('machine_none_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,f),a['object']['mutRegistrar']()],'typeArguments':[c]});}else{if(e)a['moveCall']({'target':a52i('machine_set'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,e),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c]});else a['moveCall']({'target':a52i('machine_set_none'),'arguments':[a52j(a,b),a52j(a,d),a['object']['mutRegistrar']()],'typeArguments':[c]});}}function publish(a,b,c,d,e){a52t([b,d,e]);if(!a52k(c))a52q('invalid\x20parameter','Publish\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(e)a['moveCall']({'target':a52i('publish_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,e)],'typeArguments':[c]});else a['moveCall']({'target':a52i('publish'),'arguments':[a52j(a,b),a52j(a,d)],'typeArguments':[c]});}function pause(a,b,c,d,e,f){a52t([b,d,f]);if(!a52k(c))a52q('invalid\x20parameter','Pause\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(f)a['moveCall']({'target':a52i('pause_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,f),a['pure']['bool'](e),a['object']['clock']()],'typeArguments':[c]});else a['moveCall']({'target':a52i('pause'),'arguments':[a52j(a,b),a52j(a,d),a['pure']['bool'](e),a['object']['clock']()],'typeArguments':[c]});}function customer_required_set(a,b,c,d,e,f){if(e['length']>MAX_REQUIRED_INFO_SIZE)a52q('invalid\x20parameter','Customer\x20required\x20set\x20size\x20'+e['length']+'\x20is\x20exceed\x20maximum\x20size\x20'+MAX_REQUIRED_INFO_SIZE);a52t([b,d,f]);if(!a52k(c))a52q('invalid\x20parameter','Customer\x20required\x20set\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');e['forEach'](g=>{if(!a52f(g))a52q('invalid\x20parameter','Customer\x20required\x20info\x20'+g+'\x20is\x20exceed\x20maximum\x20length\x2064\x20or\x20start\x20with\x20\x220x\x22');});if(f)a['moveCall']({'target':a52i('custom_required_info_set_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,f),a['pure']['vector']('string',e)],'typeArguments':[c]});else a['moveCall']({'target':a52i('custom_required_info_set'),'arguments':[a52j(a,b),a52j(a,d),a['pure']['vector']('string',e)],'typeArguments':[c]});}function arbitrations_add(a,b,c,d,e,f,g){a52t([b,d,e,g]);if(!a52k(c))a52q('invalid\x20parameter','Arbitrations\x20add\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(!a52k(f))a52q('invalid\x20parameter','Arbitrations\x20add\x20arbitration\x20type\x20'+f+'\x20is\x20not\x20valid');if(g)a['moveCall']({'target':a52i('arbitration_add_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,g),a52j(a,e),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c]});else a['moveCall']({'target':a52i('arbitration_add'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,e),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c,f]});}function arbitrations_remove(a,b,c,d,e,f){if(e['length']===0x0)return;a52t([b,d,f]);if(!a52k(c))a52q('invalid\x20parameter','Arbitrations\x20remove\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(f)a['moveCall']({'target':a52i('arbitration_remove_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,f),a['pure']['vector']('address',e),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c]});else a['moveCall']({'target':a52i('arbitration_remove'),'arguments':[a52j(a,b),a52j(a,d),a['pure']['vector']('address',e),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c]});}function arbitration_clear(a,b,c,d,e){a52t([b,d,e]);if(!a52k(c))a52q('invalid\x20parameter','Arbitrations\x20clear\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(e)a['moveCall']({'target':a52i('arbitration_clear_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,e),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c]});else a['moveCall']({'target':a52i('arbitration_clear'),'arguments':[a52j(a,b),a52j(a,d),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c]});}async function compensation_fund_add(a,b,c,d,e,f,g){a52t([c,e,g]);if(!a52k(d))a52q('invalid\x20parameter','Compensation\x20fund\x20add\x20service\x20type\x20'+d+'\x20is\x20not\x20valid');const h=await a52J(a,b,f,d);if(g)b['moveCall']({'target':a52i('compensation_fund_add_with_passport'),'arguments':[a52j(b,c),a52j(b,e),a52j(b,g),h],'typeArguments':[d]});else b['moveCall']({'target':a52i('compensation_fund_add'),'arguments':[a52j(b,c),a52j(b,e),h],'typeArguments':[d]});}function setting_lock_duration_add(a,b,c,d,e,f){if(!a52e(e)||e===0x0)return;a52t([b,d,f]);if(!a52k(c))a52q('invalid\x20parameter','setting_lock_duration_add\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(f)a['moveCall']({'target':a52i('setting_lock_duration_add_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,f),a['pure']['u64'](e)],'typeArguments':[c]});else a['moveCall']({'target':a52i('setting_lock_duration_add'),'arguments':[a52j(a,b),a52j(a,d),a['pure']['u64'](e)],'typeArguments':[c]});}function order_allocators_set(a,b,c,d,e,f){a52t([b,d,e,f]);if(!a52k(c))a52q('invalid\x20parameter','Order\x20allocators\x20set\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(f)a['moveCall']({'target':a52i('order_allocators_set_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,f),a['object']['option']({'type':'0x2::allocation::Allocators','value':e??null})],'typeArguments':[c]});else a['moveCall']({'target':a52i('order_allocators_set'),'arguments':[a52j(a,b),a52j(a,d),a['object']['option']({'type':'0x2::allocation::Allocators','value':e??null})],'typeArguments':[c]});}function reward_add(a,b,c,d,e,f,g){a52t([b,d,e,g]);if(!a52k(c))a52q('invalid\x20parameter','Rewards\x20add\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(!a52k(f))a52q('invalid\x20parameter','Rewards\x20add\x20reward\x20type\x20'+f+'\x20is\x20not\x20valid');if(g)a['moveCall']({'target':a52i('reward_add_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,g),a52j(a,e),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c,f]});else a['moveCall']({'target':a52i('reward_add'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,e),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c,f]});}function reward_remove(a,b,c,d,e,f){if(e['length']===0x0)return;a52t([b,d,f]);if(!a52k(c))a52q('invalid\x20parameter','Rewards\x20remove\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(f)a['moveCall']({'target':a52i('reward_remove_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,f),a['pure']['vector']('address',e),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c]});else a['moveCall']({'target':a52i('reward_remove'),'arguments':[a52j(a,b),a52j(a,d),a['pure']['vector']('address',e),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c]});}function reward_clear(a,b,c,d,e){a52t([b,d,e]);if(!a52k(c))a52q('invalid\x20parameter','Rewards\x20clear\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(e)a['moveCall']({'target':a52i('reward_clear_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,e),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c]});else a['moveCall']({'target':a52i('reward_clear'),'arguments':[a52j(a,b),a52j(a,d),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c]});}function compensation_fund_receive(a,b,c,d,e,f,g){if(!f)a52q('invalid\x20parameter','Compensation\x20fund\x20receive\x20payment\x20is\x20required');a52t([b,d,e,f,g]);if(!a52k(c))a52q('invalid\x20parameter','Compensation\x20fund\x20receive\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(g)a['moveCall']({'target':a52i('compensation_fund_receive_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,g),a52j(a,e),a52j(a,f)],'typeArguments':[c]});else a['moveCall']({'target':a52i('compensation_fund_receive'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,e),a52j(a,f)],'typeArguments':[c]});}function compensation_fund_withdraw(a,b,c,d,e,f,g){a52t([b,f,e,d,g]);if(!a52k(c))a52q('invalid\x20parameter','Compensation\x20fund\x20withdraw\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(g)a['moveCall']({'target':a52i('compensation_fund_withdraw_with_passport'),'arguments':[a52j(a,b),a52j(a,f),a52j(a,g),a['pure']['address'](e),a52j(a,d),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c]});else a['moveCall']({'target':a52i('compensation_fund_withdraw'),'arguments':[a52j(a,b),a52j(a,f),a['pure']['address'](e),a52j(a,d),a['object']['mutRegistrar'](),a['object']['clock']()],'typeArguments':[c]});}async function discount(a,b,c,d,e,f){let g=[];if(Array['isArray'](e['recipient']))g=e['recipient'];else g=await GetManyAccountOrMark_Address(e['recipient']);if(g['length']===0x0||e['count']===0x0)return;if(g['length']>MAX_DISCOUNT_RECEIVER_ONCE)a52q('invalid\x20parameter','Discount\x20recipient\x20length\x20'+g['length']+'\x20is\x20exceed\x20max\x20'+MAX_DISCOUNT_RECEIVER_ONCE);if(!a52f(e['name']))a52q('invalid\x20parameter','Discount\x20name\x20'+e['name']+'\x20is\x20not\x20valid');if(!a52c(e['count'])||e['count']>MAX_DISCOUNT_COUNT_ONCE)a52q('invalid\x20parameter','Discount\x20count\x20'+e['count']+'\x20is\x20exceed\x20max\x20'+MAX_DISCOUNT_COUNT_ONCE);if(g['length']*e['count']>MAX_DISCOUNT_TOTAL_COUNT)a52q('invalid\x20parameter','Discount\x20total\x20count\x20'+g['length']*e['count']+'\x20is\x20exceed\x20max\x20'+MAX_DISCOUNT_TOTAL_COUNT);if(e['benchmark']!=null&&!a52e(e['benchmark']))a52q('invalid\x20parameter','Discount\x20benchmark\x20'+e['benchmark']+'\x20is\x20not\x20valid');const h=e['time_ms_start']??Date['now']();if(e['time_ms_end']<h)a52q('invalid\x20parameter','Discount\x20time_ms_end\x20'+e['time_ms_end']+'\x20is\x20not\x20valid');if(e['discount_value']!=null&&!a52e(e['discount_value']))a52q('invalid\x20parameter','Discount\x20discount_value\x20'+e['discount_value']+'\x20is\x20not\x20valid');a52t([b,d,f,...g]);if(!a52k(c))a52q('invalid\x20parameter','Discount\x20service\x20type\x20'+c+'\x20is\x20not\x20valid');if(f)a['moveCall']({'target':a52i('discount_with_passport'),'arguments':[a52j(a,b),a52j(a,d),a52j(a,f),a['pure']['string'](e['name']),a['pure']['u8'](e['discount_type']),a['pure']['u64'](e['discount_value']),a['pure']['option']('u64',e['benchmark']??null),a['pure']['bool'](e['transferable']),a['pure']['option']('u64',e['time_ms_start']??null),a['pure']['u64'](e['time_ms_end']),a['pure']['u16'](e['count']),a['pure']['vector']('address',g),a['object']['clock']()],'typeArguments':[c]});else a['moveCall']({'target':a52i('discount'),'arguments':[a52j(a,b),a52j(a,d),a['pure']['string'](e['name']),a['pure']['u8'](e['discount_type']),a['pure']['u64'](e['discount_value']),a['pure']['option']('u64',e['benchmark']??null),a['pure']['bool'](e['transferable']),a['pure']['option']('u64',e['time_ms_start']??null),a['pure']['u64'](e['time_ms_end']),a['pure']['u16'](e['count']),a['pure']['vector']('address',g),a['object']['clock']()],'typeArguments':[c]});}export{CallOrder as $,location_set as A,repository_remove as B,compensation_fund_withdraw as C,discount as D,description_set as E,price_add as F,sales_add as G,reward_clear as H,price_reduce as I,sales_set as J,sales_clear as K,publish as L,newService as M,order_allocators_set as N,discount_destroy as O,pause as P,um_set as Q,repository_add as R,compensation_fund_receive as S,customer_required_set as T,reward_remove as U,reward_add as V,sale_suspension as W,stock_add as X,setting_lock_duration_add as Y,stock_reduce as Z,arbitrations_add as _,DISCOUNT_TYPE_RATES as a,buy_guard_set as b,MAX_DISCOUNT_COUNT_ONCE as c,MAX_REPOSITORY_COUNT as d,MAX_REQUIRED_INFO_SIZE as f,arbitration_clear as g,NAMED_OPERATOR_ORDER_PAYER as h,DISCOUNT_TYPE_MINUS as i,machine_set as j,discount_send as k,MAX_DISCOUNT_RECEIVER_ONCE as l,MAX_SALE_COUNT as m,DEFAULT_LOCK_DURATION as n,MAX_ARBITRATION_COUNT as o,MAX_REWARD_COUNT as p,sales_remove as q,DEFAULT_SETTING_LOCK_DURATION as r,MAX_CUSTOMER_REQUIRED_INFO_COUNT as s,CallService as t,MAX_DISCOUNT_TOTAL_COUNT as u,arbitrations_remove as v,create as w,compensation_fund_add as x,buy as y,repository_clear as z};
@@ -1 +0,0 @@
1
- import{t as a108a}from'./client-Tlizce5t.mjs';import{t as a108b}from'./Transaction-CzqJDezj.mjs';import{n as a108c}from'./network-CeDd07Hg.mjs';import{o as a108d}from'./exception-C6IYkBi6.mjs';import{t as a108e}from'./lock-QdrQzo0u.mjs';import{SQLiteStorage}from'./w/local/storage.mjs';import{Config}from'./w/local/config.mjs';import{r as a108f}from'./logger-Cs5Mf7Mf.mjs';import{Account}from'./w/local/account.mjs';import{bigIntToBytes,bytesToHex,hexToBytes as a108g}from'./w/local/evm/rlp.mjs';import{registerBridgeEvmNetworks}from'./w/local/evm/networks.mjs';import{EvmAccount}from'./w/local/evm-account.mjs';import{f as a108h,h as a108i,m as a108j,y as a108k}from'./query-Bo3LGTEr.mjs';import{keccak_256}from'@noble/hashes/sha3.js';const BRIDGE_ETH_V2_SIG='bridgeETHV2(bytes,uint8)',BRIDGE_ETH_V2_SELECTOR='b4b7068c',BRIDGE_ETH_V1_SELECTOR='9449ebd2',BRIDGE_ERC20_V1_SELECTOR='212afaff',BRIDGE_ERC20_V2_SIG='bridgeERC20V2(uint8,uint256,bytes,uint8)',BRIDGE_ERC20_V2_SELECTOR='0bdba58b',TRANSFER_BRIDGED_V2_SIG='transferBridgedTokensWithSignaturesV2(bytes[],(uint8,uint8,uint64,uint8,bytes))',TRANSFER_BRIDGED_V2_SELECTOR='9c3ecefb',TRANSFER_BRIDGED_V1_SIG='transferBridgedTokensWithSignatures(bytes[],(uint8,uint8,uint64,uint8,bytes))',APPROVE_SIG='approve(address,uint256)',APPROVE_SELECTOR='095ea7b3',WORD_SIZE=0x20;function uintWord(a){const b=bigIntToBytes(BigInt(a)),c=new Uint8Array(WORD_SIZE);return c['set'](b,WORD_SIZE-b['length']),c;}function addressWord(a){const b=a108g(a['startsWith']('0x')?a['slice'](0x2):a);if(b['length']!==0x14)throw new Error('Invalid\x20EVM\x20address\x20length:\x20'+a);const c=new Uint8Array(WORD_SIZE);return c['set'](b,WORD_SIZE-0x14),c;}function padToWord(a){const b=a['length']%WORD_SIZE;if(b===0x0)return a;const c=new Uint8Array(a['length']+WORD_SIZE-b);return c['set'](a,0x0),c;}function concat(...b){const c=b['reduce']((f,g)=>f+g['length'],0x0),d=new Uint8Array(c);let e=0x0;for(const f of b){d['set'](f,e),e+=f['length'];}return d;}function encodeBytes(a){return concat(uintWord(BigInt(a['length'])),padToWord(a));}function computeSelector(a){return bytesToHex(keccak_256(new TextEncoder()['encode'](a))['slice'](0x0,0x4));}function computeEventTopic(a){return'0x'+bytesToHex(keccak_256(new TextEncoder()['encode'](a)));}function encodeBridgeETHV2(a,b){const c=a108g(a['startsWith']('0x')?a['slice'](0x2):a);if(c['length']!==0x20)throw new Error('Recipient\x20address\x20must\x20be\x2032\x20bytes,\x20got\x20'+c['length']);const d=uintWord(0x40n),e=uintWord(b),f=encodeBytes(c);return'0x'+bytesToHex(concat(a108g(BRIDGE_ETH_V2_SELECTOR),d,e,f));}function encodeBridgeETH(a,b){const c=a108g(a['startsWith']('0x')?a['slice'](0x2):a);if(c['length']!==0x20)throw new Error('Recipient\x20address\x20must\x20be\x2032\x20bytes,\x20got\x20'+c['length']);const d=uintWord(0x40n),e=uintWord(b),f=encodeBytes(c);return'0x'+bytesToHex(concat(a108g(BRIDGE_ETH_V1_SELECTOR),d,e,f));}function encodeBridgeERC20V2(a,b,c,d){const e=a108g(c['startsWith']('0x')?c['slice'](0x2):c);if(e['length']!==0x20)throw new Error('Recipient\x20address\x20must\x20be\x2032\x20bytes');const f=uintWord(0x80n),g=encodeBytes(e);return'0x'+bytesToHex(concat(a108g(BRIDGE_ERC20_V2_SELECTOR),uintWord(a),uintWord(b),f,uintWord(d),g));}function encodeBridgeERC20(a,b,c,d){const e=a108g(c['startsWith']('0x')?c['slice'](0x2):c);if(e['length']!==0x20)throw new Error('Recipient\x20address\x20must\x20be\x2032\x20bytes');const f=uintWord(0x80n),g=encodeBytes(e);return'0x'+bytesToHex(concat(a108g(BRIDGE_ERC20_V1_SELECTOR),uintWord(a),uintWord(b),f,uintWord(d),g));}function encodeMessage(a){return concat(uintWord(a['messageType']),uintWord(a['version']),uintWord(a['nonce']),uintWord(a['chainID']),uintWord(0xa0n),encodeBytes(a['payload']));}function encodeBytesArray(a){const b=a['length'],c=b*0x20,d=[];let e=0x0n;for(const g of a){d['push'](BigInt(c)+e),e+=BigInt(0x20+Math['ceil'](g['length']/0x20)*0x20);}const f=[uintWord(BigInt(b))];for(const h of d)f['push'](uintWord(h));for(const i of a)f['push'](encodeBytes(i));return concat(...f);}function encodeTransferBridgedTokensWithSignatures(a,b,c=!![]){const d=c?TRANSFER_BRIDGED_V2_SELECTOR:computeSelector(TRANSFER_BRIDGED_V1_SIG),e=encodeBytesArray(a),f=encodeMessage(b),g=uintWord(0x40n),h=uintWord(BigInt(0x40+e['length']));return'0x'+bytesToHex(concat(a108g(d),g,h,e,f));}function encodeApprove(a,b){return'0x'+bytesToHex(concat(a108g(APPROVE_SELECTOR),addressWord(a),uintWord(b)));}function encodeTokenTransferPayloadV2(a){const {senderAddress:b,targetChain:c,recipientAddress:d,tokenID:e,amount:f,timestampMs:g}=a;if(b['length']!==0x20)throw new Error('senderAddress\x20must\x20be\x2032\x20bytes');if(d['length']!==0x14)throw new Error('recipientAddress\x20must\x20be\x2020\x20bytes');const h=new Uint8Array(0x48);let i=0x0;h[i++]=0x20,h['set'](b,i),i+=0x20,h[i++]=c,h[i++]=0x14,h['set'](d,i),i+=0x14,h[i++]=e;const j=bigIntToBytes(f);h['set'](j,i+0x8-j['length']),i+=0x8;const k=bigIntToBytes(g);return h['set'](k,i+0x8-k['length']),h;}function verifySelectors(){const a=[[BRIDGE_ETH_V2_SIG,BRIDGE_ETH_V2_SELECTOR],[BRIDGE_ERC20_V2_SIG,BRIDGE_ERC20_V2_SELECTOR],[TRANSFER_BRIDGED_V2_SIG,TRANSFER_BRIDGED_V2_SELECTOR],[APPROVE_SIG,APPROVE_SELECTOR]];for(const [b,c]of a){const d=computeSelector(b);if(d!==c)throw new Error('ABI\x20selector\x20mismatch\x20for\x20'+b+':\x20expected\x20'+c+',\x20got\x20'+d);}}verifySelectors();const TOKENS_DEPOSITED_V2_TOPIC=computeEventTopic('TokensDepositedV2(uint8,uint64,uint8,uint8,uint64,address,bytes,uint256)'),TOKENS_DEPOSITED_TOPIC=computeEventTopic('TokensDeposited(uint8,uint64,uint8,uint8,uint64,address,bytes)'),TOKENS_CLAIMED_TOPIC=computeEventTopic('TokensClaimed(uint8,uint64,uint8,uint8,uint64,address,bytes)'),ERC20_TRANSFER_TOPIC=computeEventTopic('Transfer(address,address,uint256)');async function depositEth(a,b){try{const c=b['destinationChainId']??0x0,d=b['version']!=='v1'?encodeBridgeETHV2(b['recipientWowAddress'],c):encodeBridgeETH(b['recipientWowAddress'],c),f={'to':b['bridgeProxyAddress'],'value':a,'data':d,'network':b['network'],'rpcUrl':b['rpcUrl'],'gasLimit':0x3d090n},g=EvmAccount['Instance']();await g['active']();const h=await g['sign_and_send'](f,b['rpcUrl']);if(h['status']!=='0x1')return{'success':![],'error':{'code':'REVERTED','message':'ETH\x20deposit\x20transaction\x20reverted','revertReason':'txHash:\x20'+h['transactionHash']}};return{'success':!![],'txHash':h['transactionHash']};}catch(i){return{'success':![],'error':{'code':'UNKNOWN','message':'ETH\x20deposit\x20failed:\x20'+(i?.['message']??String(i)),'raw':i}};}}async function depositErc20(a,b){try{const c=EvmAccount['Instance']();await c['active']();const d=b['destinationChainId']??0x0,f={'to':b['tokenAddress'],'data':encodeApprove(b['bridgeProxyAddress'],a),'network':b['network'],'rpcUrl':b['rpcUrl']},g=await c['sign_and_send'](f,b['rpcUrl']);if(g['status']!=='0x1')return{'success':![],'error':{'code':'REVERTED','message':'ERC20\x20approve\x20reverted','revertReason':'txHash:\x20'+g['transactionHash']}};const h=b['version']!=='v1'?encodeBridgeERC20V2(b['tokenId'],a,b['recipientWowAddress'],d):encodeBridgeERC20(b['tokenId'],a,b['recipientWowAddress'],d),i={'to':b['bridgeProxyAddress'],'value':0x0n,'data':h,'network':b['network'],'rpcUrl':b['rpcUrl']},j=await c['sign_and_send'](i,b['rpcUrl']);if(j['status']!=='0x1')return{'success':![],'error':{'code':'REVERTED','message':'ERC20\x20deposit\x20transaction\x20reverted','revertReason':'txHash:\x20'+j['transactionHash']}};return{'success':!![],'txHash':j['transactionHash']};}catch(k){return{'success':![],'error':{'code':'UNKNOWN','message':'ERC20\x20deposit\x20failed:\x20'+(k?.['message']??String(k)),'raw':k}};}}async function depositFromEth(a,b){if(a['tokenAddress']){if(a['tokenId']===void 0x0)return{'success':![],'error':{'code':'INVALID_PARAM','message':'tokenId\x20is\x20required\x20for\x20ERC20\x20deposit'}};return depositErc20(a['amount'],{...b,'tokenAddress':a['tokenAddress'],'tokenId':a['tokenId']});}return depositEth(a['amount'],b);}const BRIDGE_PACKAGE_ID='0xb',BRIDGE_OBJECT_ID='0x9',MESSAGE_KEY_TYPE=BRIDGE_PACKAGE_ID+'::message::BridgeMessageKey';let cachedRecordsId;function recordToAbiMessage(a){return{'messageType':a['message']['messageType'],'version':a['message']['messageVersion'],'nonce':a['message']['seqNum'],'chainID':a['message']['sourceChain'],'payload':a['message']['payload']};}async function getBridgeRecordsId(a){if(cachedRecordsId)return cachedRecordsId;try{const b=((await a['getObject']({'objectId':BRIDGE_OBJECT_ID,'options':{'showContent':!![]}}))?.['data']?.['content'])?.['fields']?.['inner']?.['fields']?.['id']?.['id'];if(!b)return void 0x0;const c=((await a['getDynamicFieldObject']({'parentId':b,'name':{'type':'u64','value':'1'}}))?.['data']?.['content'])?.['fields']?.['value']?.['fields']?.['token_transfer_records']?.['fields']?.['id']?.['id'];return cachedRecordsId=c,c;}catch{return;}}async function readBridgeRecord(a,b,c,d=0x0){const e=await getBridgeRecordsId(a);if(!e)return void 0x0;let f;try{f=await a['getDynamicFieldObject']({'parentId':e,'name':{'type':MESSAGE_KEY_TYPE,'value':{'source_chain':String(b),'message_type':String(d),'bridge_seq_num':String(c)}}});}catch{return;}const g=f?.['data']?.['content']?.['fields']?.['value']?.['fields']?.['value']?.['fields'];if(!g)return;return parseBridgeRecord(g);}function parseBridgeRecord(a){const b=a?.['message']?.['fields']??a?.['message']??{},c=a?.['verified_signatures'],d=Array['isArray'](c)?c:c&&typeof c==='object'&&'Some'in c?c['Some']:[];return{'message':{'messageType':toNumber(b['message_type']),'messageVersion':toNumber(b['message_version']),'seqNum':toBigInt(b['seq_num']),'sourceChain':toNumber(b['source_chain']),'payload':toBytes(b['payload'])},'verifiedSignatures':Array['isArray'](d)?d['map'](e=>toBytes(e)):[],'claimed':!!a?.['claimed']};}function toNumber(a){if(typeof a==='number')return a;if(typeof a==='string')return Number(a);return 0x0;}function toBigInt(a){if(typeof a==='bigint')return a;if(typeof a==='number')return BigInt(a);if(typeof a==='string')return BigInt(a);return 0x0n;}function toBytes(a){if(a instanceof Uint8Array)return a;if(Array['isArray'](a))return Uint8Array['from'](a['map'](b=>Number(b)));if(typeof a==='string'){if(/^0x/i['test'](a)){const b=a['slice'](0x2),c=new Uint8Array(Math['ceil'](b['length']/0x2));for(let d=0x0;d<c['length'];d++){const e=b['slice'](d*0x2,d*0x2+0x2);c[d]=parseInt(e,0x10)||0x0;}return c;}try{return new Uint8Array(Buffer['from'](a,'base64'));}catch{return new Uint8Array(0x0);}}return new Uint8Array(0x0);}function buildClaimMessage(a){const b=encodeTokenTransferPayloadV2({'senderAddress':a['senderAddress'],'targetChain':a['targetChain'],'recipientAddress':a['recipientAddress'],'tokenID':a['tokenId'],'amount':a['amount'],'timestampMs':a['timestampMs']});return{'messageType':a['messageType'],'version':a['version'],'nonce':a['nonce'],'chainID':a['sourceChain'],'payload':b};}function signaturesToBytes(a){return a['map'](b=>{const c=a108g(b['signature']['startsWith']('0x')?b['signature']['slice'](0x2):b['signature']);if(c['length']!==0x41)throw new Error('Invalid\x20signature\x20length:\x20'+c['length']+'\x20(expected\x2065)');return c;});}async function claimOnEth(a,b){try{const c=b['useV2']??!![];let d=a['message'],f,g;const h=b['wowClient']?await readBridgeRecord(b['wowClient'],a['message']['chainID'],a['message']['nonce'],a['message']['messageType']):void 0x0;if(h&&h['verifiedSignatures']['length']>0x0)d=recordToAbiMessage(h),f=h['verifiedSignatures'];else{g=await b['nodeClient']['signWowToEth'](a['wowTxDigest'],a['eventIndex']);g['length']===0x0&&(console['warn']('tx_digest\x20路径未收集到签名,回退到\x20seq\x20路径:',a['message']['chainID'],a['message']['messageType'],a['message']['nonce']),g=await b['nodeClient']['signWowTokenTransfer'](a['message']['chainID'],a['message']['messageType'],a['message']['nonce']));if(g['length']===0x0)return{'success':![],'error':{'code':'NO_SIGNATURES','message':buildNoSignaturesMessage(a['message']['chainID'],a['message']['messageType'],a['message']['nonce'])}};d=g[0x0]['action']?messageFromActionData(g[0x0]['action'],a['message']):a['message'],f=signaturesToBytes(g);}const i=encodeTransferBridgedTokensWithSignatures(f,d,c),j={'to':b['bridgeProxyAddress'],'value':0x0n,'data':i,'network':b['network'],'rpcUrl':b['rpcUrl']},k=EvmAccount['Instance']();await k['active']();const l=await k['sign_and_send'](j,b['rpcUrl']);if(l['status']!=='0x1')return{'success':![],'error':{'code':'REVERTED','message':'ETH\x20claim\x20transaction\x20reverted','revertReason':'txHash:\x20'+l['transactionHash']}};return{'success':!![],'txHash':l['transactionHash']};}catch(m){return wrapBridgeError(m,'UNKNOWN','ETH\x20claim\x20failed');}}function bridgeChainNameToId(a){switch(a){case'WowMainnet':return 0x0;case'EthMainnet':return 0xa;default:throw new Error('Unknown\x20bridge\x20chain\x20name:\x20'+a);}}function messageFromActionData(a,b){if(!a||typeof a!=='object')return b;const c=a;if(c['WowToEthTokenTransferV2']){const d=c['WowToEthTokenTransferV2'],e=d['wow_address']['startsWith']('0x')?d['wow_address']['slice'](0x2):d['wow_address'],f=d['eth_address']['startsWith']('0x')?d['eth_address']['slice'](0x2):d['eth_address'],g=a108g(e),h=a108g(f),i=encodeTokenTransferPayloadV2({'senderAddress':g,'targetChain':bridgeChainNameToId(d['eth_chain_id']),'recipientAddress':h,'tokenID':d['token_id'],'amount':BigInt(d['amount_adjusted']),'timestampMs':BigInt(d['timestamp_ms'])});return{'messageType':0x0,'version':0x2,'nonce':BigInt(d['nonce']),'chainID':bridgeChainNameToId(d['wow_chain_id']),'payload':i};}return console['warn']('[claimOnEthBySeq]\x20Unknown\x20action\x20data\x20type,\x20falling\x20back\x20to\x20local\x20message:',Object['keys'](c)),b;}async function claimOnEthBySeq(a,b){try{const c=b['useV2']??!![];let d=a['message'],f;const g=b['wowClient']?await readBridgeRecord(b['wowClient'],a['sourceChain'],a['seqNum'],a['messageType']):void 0x0;if(g&&g['verifiedSignatures']['length']>0x0)d=recordToAbiMessage(g),f=g['verifiedSignatures'];else{const m=await b['nodeClient']['signWowTokenTransfer'](a['sourceChain'],a['messageType'],a['seqNum']);if(m['length']===0x0)return{'success':![],'error':{'code':'NO_SIGNATURES','message':buildNoSignaturesMessage(a['sourceChain'],a['messageType'],a['seqNum'])}};d=m[0x0]['action']?messageFromActionData(m[0x0]['action'],a['message']):a['message'],f=signaturesToBytes(m);}const h=encodeTransferBridgedTokensWithSignatures(f,d,c),i={'to':b['bridgeProxyAddress'],'value':0x0n,'data':h,'network':b['network'],'rpcUrl':b['rpcUrl']},j=EvmAccount['Instance']();await j['active']();let k;try{await j['ethCall'](i);}catch(n){const o=n?.['message']??String(n);if(o['includes']('execution\x20reverted')||o['includes']('reverted\x20with\x20reason'))k=o;else console['warn']('\x20\x20[claimOnEthBySeq]\x20eth_call\x20warning\x20(skipped):',o['slice'](0x0,0x78));}if(k)return{'success':![],'error':{'code':'REVERTED','message':'ETH\x20claim\x20reverted','revertReason':k}};const l=await j['sign_and_send'](i,b['rpcUrl']);if(l['status']!=='0x1')return{'success':![],'error':{'code':'REVERTED','message':'ETH\x20claim\x20transaction\x20reverted','revertReason':'txHash:\x20'+l['transactionHash']}};return{'success':!![],'txHash':l['transactionHash']};}catch(p){return wrapBridgeError(p,'UNKNOWN','ETH\x20claim\x20(by\x20seq)\x20failed');}}function buildNoSignaturesMessage(a,b,c){return['No\x20signatures\x20collected\x20for\x20seq='+c+'\x20(sourceChain='+a+',\x20messageType='+b+').','Possible\x20reasons:','\x20\x201)\x20Bridge\x20nodes\x20are\x20not\x20reachable\x20or\x20not\x20synced','\x20\x202)\x20The\x20seq\x20'+c+'\x20does\x20not\x20exist\x20on\x20source\x20chain','\x20\x203)\x20The\x20message\x20has\x20already\x20expired','\x20\x204)\x20Insufficient\x20quorum\x20(need\x202/3\x20of\x20total\x20committee\x20weight)','Check\x20node\x20health\x20with\x20nodeClient.pingAll().']['join']('\x0a');}function wrapBridgeError(a,b,c){return{'success':![],'error':{'code':b,'message':c+':\x20'+(a?.['message']??String(a)),'raw':a}};}const BRIDGE_PACKAGE$1='0xb',DEFAULT_BRIDGE_OBJECT_ID$1='0x9',CLOCK_OBJECT_ID$1='0x6',EVM_ADDRESS_LENGTH=0x14,TOKEN_DEPOSITED_EVENT_V2_TYPE=BRIDGE_PACKAGE$1+'::bridge::TokenDepositedEventV2';async function depositFromWow(a,b){if(!a['tokenType']||a['tokenType']['split']('::')['length']<0x3)a108d('invalid\x20parameter','Invalid\x20tokenType:\x20'+a['tokenType']);if(a['amount']<=0x0n)a108d('invalid\x20parameter','amount\x20must\x20be\x20positive');const c=parseEvmAddress(a['recipientEthAddress']),d=a['destinationChainId']??0xa,f=a['bridgeObjectId']??DEFAULT_BRIDGE_OBJECT_ID$1,g=new a108b(),h=await Account['Instance']()['get_coin_object'](g,a['amount'],a['tokenType'],await getEnvAccount$1(b),b['network']);if(!h)a108d('fail','Failed\x20to\x20get\x20coin\x20object');g['moveCall']({'target':BRIDGE_PACKAGE$1+'::bridge::send_token_v2','arguments':[g['object'](f),g['pure']['u8'](d),g['pure']['vector']('u8',c),h,g['object'](CLOCK_OBJECT_ID$1)],'typeArguments':[a['tokenType']]});const i=await Account['Instance']()['sign_and_commit'](g,await getEnvAccount$1(b),b['network']);if(!i||!i['digest'])a108d('fail','WOW\x20deposit\x20transaction\x20failed');let j=i;if(!i['events']||i['events']['length']===0x0){const {WowClient:l}=await import('./client/index.mjs'),{Config:m}=await import('./w/local/config.mjs'),n=await m['Instance']()['network_get'](b['network']),o=new l({'url':a108c(n),'network':n});let p;for(let q=0x0;q<0xa;q++){try{j=await o['getTransactionBlock']({'digest':i['digest'],'options':{'showEvents':!![],'showEffects':!![]}});if(j['events']&&j['events']['length']>0x0)break;}catch(r){p=r;}await new Promise(s=>setTimeout(s,0x3e8*(q+0x1)));}if(!j['events']||j['events']['length']===0x0)throw p??new Error('Failed\x20to\x20fetch\x20events\x20for\x20tx\x20'+i['digest']);}const k=parseSeqNumFromReceipt(j);if(k===void 0x0)a108d('fail','Failed\x20to\x20parse\x20seqNum\x20from\x20WOW\x20tx\x20'+i['digest']);return{'digest':i['digest'],'seqNum':k,'receipt':i};}function parseEvmAddress(a){let b=a;if(b['startsWith']('0x')||b['startsWith']('0X'))b=b['slice'](0x2);if(b['length']!==EVM_ADDRESS_LENGTH*0x2)a108d('invalid\x20parameter','Invalid\x20EVM\x20address:\x20'+a+'\x20(expected\x2020\x20bytes)');const c=new Uint8Array(EVM_ADDRESS_LENGTH);for(let d=0x0;d<EVM_ADDRESS_LENGTH;d++)c[d]=parseInt(b['slice'](d*0x2,d*0x2+0x2),0x10);return c;}function normalizeEventType$1(a){const b=a['split']('::');if(b['length']>0x0&&b[0x0]['startsWith']('0x')){const c=b[0x0]['toLowerCase']()['replace'](/^0x0+/,'0x');b[0x0]=c==='0x'?'0x0':c;}return b['join']('::');}function parseSeqNumFromReceipt(a){const b=a['events'];if(!b||b['length']===0x0)return void 0x0;const c=normalizeEventType$1(TOKEN_DEPOSITED_EVENT_V2_TYPE);for(const d of b){if(normalizeEventType$1(d['type'])!==c)continue;const e=d['parsedJson'];if(!e)continue;const f=e['seq_num'];if(typeof f==='string'||typeof f==='number')return BigInt(f);}}async function getEnvAccount$1(a){return a['account']??void 0x0;}const BRIDGE_PACKAGE='0xb',CLOCK_OBJECT_ID='0x6',TOKEN_TRANSFER_APPROVED_TYPE=BRIDGE_PACKAGE+'::bridge::TokenTransferApproved',TOKEN_TRANSFER_CLAIMED_TYPE=BRIDGE_PACKAGE+'::bridge::TokenTransferClaimed',DEFAULT_BRIDGE_OBJECT_ID='0x9';async function claimOnWow(a,b){if(!a['tokenType']||a['tokenType']['split']('::')['length']<0x3)a108d('invalid\x20parameter','Invalid\x20tokenType:\x20'+a['tokenType']);if(a['bridgeSeqNum']<0x0n)a108d('invalid\x20parameter','bridgeSeqNum\x20must\x20be\x20non-negative');const c=a['sourceChainId']??0xa,d=a['bridgeObjectId']??DEFAULT_BRIDGE_OBJECT_ID,e=new a108b();e['moveCall']({'target':BRIDGE_PACKAGE+'::bridge::claim_and_transfer_token','arguments':[e['object'](d),e['object'](CLOCK_OBJECT_ID),e['pure']['u8'](c),e['pure']['u64'](a['bridgeSeqNum'])],'typeArguments':[a['tokenType']]});const f=await Account['Instance']()['sign_and_commit'](e,await getEnvAccount(b),b['network']);if(!f||!f['digest'])a108d('fail','WOW\x20claim\x20transaction\x20failed');return{'digest':f['digest'],'receipt':f};}let WowClaimStatus=function(a){return a['NotApproved']='not_approved',a['Approved']='approved',a['Claimed']='claimed',a['NotFound']='not_found',a;}({});async function queryWowClaimStatus(a,b){const c=a['sourceChainId']??0xa,d=await Config['Instance']()['network_get'](b),e=new a108a({'url':a108c(d),'network':d}),f=await e['queryEvents']({'query':{'MoveEventType':TOKEN_TRANSFER_CLAIMED_TYPE},'limit':0x64,'order':'descending'});for(const h of f['data']){const i=h['parsedJson'];if(!i)continue;const j=i['message_key'];if(!j)continue;const k=Number(j['source_chain']),l=BigInt(j['bridge_seq_num']??0x0);if(k===c&&l===a['bridgeSeqNum'])return{'status':'claimed','claimedTxHash':h['id']?.['txDigest']};}const g=await e['queryEvents']({'query':{'MoveEventType':TOKEN_TRANSFER_APPROVED_TYPE},'limit':0x64,'order':'descending'});for(const m of g['data']){const n=m['parsedJson'];if(!n)continue;const o=n['message_key'];if(!o)continue;const p=Number(o['source_chain']),q=BigInt(o['bridge_seq_num']??0x0);if(p===c&&q===a['bridgeSeqNum'])return{'status':'approved','approvedEventId':m['id']?.['eventSeq']};}return{'status':'not_approved'};}async function getEnvAccount(a){return a['account']??void 0x0;}const logger$1=a108f('bridge:query');async function queryEthTxReceipt(a,b,c=0x2710){const d=new AbortController(),f=setTimeout(()=>d['abort'](),c);try{const g=await(await fetch(b,{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify']({'jsonrpc':'2.0','id':0x1,'method':'eth_getTransactionReceipt','params':[a]}),'signal':d['signal']}))['json']();if(g['error'])throw new Error('JSON-RPC\x20error:\x20'+g['error']['message']);return g['result'];}catch(h){if(h?.['name']==='AbortError')throw new Error('queryEthTxReceipt\x20timeout\x20after\x20'+c+'ms');throw h;}finally{clearTimeout(f);}}async function queryEthBalance(a,b){const c=await(await fetch(b,{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify']({'jsonrpc':'2.0','id':0x1,'method':'eth_getBalance','params':[a,'latest']})}))['json']();if(c['error'])throw new Error('JSON-RPC\x20error:\x20'+c['error']['message']);return BigInt(c['result']);}async function queryErc20Balance(a,b,c){const d='0x70a08231000000000000000000000000'+b['slice'](0x2)['toLowerCase'](),e=await(await fetch(c,{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify']({'jsonrpc':'2.0','id':0x1,'method':'eth_call','params':[{'to':a,'data':d},'latest']})}))['json']();if(e['error'])throw new Error('JSON-RPC\x20error:\x20'+e['error']['message']);return BigInt(e['result']);}async function queryEthTxConfirmations(a,b,c=0x2710){const d=await queryEthTxReceipt(a,b,c);if(!d?.['blockNumber'])return 0x0;const e=new AbortController(),f=setTimeout(()=>e['abort'](),c);try{const g=await(await fetch(b,{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify']({'jsonrpc':'2.0','id':0x2,'method':'eth_blockNumber','params':[]}),'signal':e['signal']}))['json'](),h=BigInt(g['result']),i=BigInt(d['blockNumber']);return Number(h-i);}finally{clearTimeout(f);}}async function queryWowTx(a,b){try{return await a['getTransactionBlock']({'digest':b,'options':{'showEffects':!![],'showEvents':!![]}});}catch{return null;}}let BridgeTransferDirection=function(a){return a['EvmToWow']='evm_to_wow',a['WowToEvm']='wow_to_evm',a;}({}),BridgeTransferStep=function(a){return a['NotStarted']='not_started',a['SourceTxPending']='source_tx_pending',a['SourceTxConfirmed']='source_tx_confirmed',a['NodeSigning']='node_signing',a['SignaturesReady']='signatures_ready',a['ClaimTxPending']='claim_tx_pending',a['Completed']='completed',a['Failed']='failed',a;}({});const BRIDGE_STEP_DESCRIPTIONS={['not_started']:'尚未发起跨链',['source_tx_pending']:'源链交易已提交,等待区块确认',['source_tx_confirmed']:'源链交易已确认,等待\x20bridge\x20节点签名\x20approve',['node_signing']:'bridge\x20节点签名收集中',['signatures_ready']:'签名已收集完毕,可发起目标链\x20claim',['claim_tx_pending']:'目标链\x20claim\x20交易已提交,待确认',['completed']:'跨链完成',['failed']:'跨链失败'};let BridgeTransferStatus=function(a){return a['NotStarted']='not_started',a['Pending']='pending',a['Confirmed']='confirmed',a['SignaturesReady']='signatures_ready',a['Claiming']='claiming',a['Completed']='completed',a['Failed']='failed',a;}({});function makeBridgeTransferState(a){return{'status':stepToStatus(a['step']),'stepDescription':BRIDGE_STEP_DESCRIPTIONS[a['step']],'updatedAt':Date['now'](),...a};}function stepToStatus(a){switch(a){case'not_started':return'not_started';case'source_tx_pending':return'pending';case'source_tx_confirmed':return'confirmed';case'node_signing':return'confirmed';case'signatures_ready':return'signatures_ready';case'claim_tx_pending':return'claiming';case'completed':return'completed';case'failed':return'failed';}}function parseEthDepositEvent(a,b){const c=b['toLowerCase']();for(const d of a['logs']){if(d['address']['toLowerCase']()!==c)continue;const e=d['topics'][0x0]===TOKENS_DEPOSITED_V2_TOPIC,f=d['topics'][0x0]===TOKENS_DEPOSITED_TOPIC;if(!e&&!f)continue;const g=a108g(d['data']);if(g['length']<0x80)continue;const h=u=>g[u*0x20+0x1f],i=u=>{const v=g['slice'](u*0x20,u*0x20+0x20);return BigInt('0x'+bytesToHex(v['slice'](0x18,0x20)));},j=u=>'0x'+bytesToHex(g['slice'](u*0x20+0xc,u*0x20+0x20)),k=h(0x0),l=i(0x1),m=j(0x2),n=Number(i(0x3)),o=Number(BigInt('0x'+bytesToHex(g['slice'](n,n+0x20))['slice'](0x30))),p='0x'+bytesToHex(g['slice'](n+0x20,n+0x20+o)),q=d['topics'][0x1]?.['slice'](0x40)??'00',r=parseInt(q,0x10),s=d['topics'][0x3]?.['slice'](0x40)??'00',t=parseInt(s,0x10);return{'bridgeSeq':BigInt('0x'+(d['topics'][0x2]?.['slice'](0x38)??'0')),'sourceChain':r,'sender':m,'targetChain':t,'recipient':p,'tokenID':k,'amount':l};}return null;}function parseEthClaimEvent(a,b){const c=b['toLowerCase']();for(const d of a['logs']){if(d['address']['toLowerCase']()!==c)continue;if(d['topics'][0x0]!==TOKENS_CLAIMED_TOPIC)continue;const e=a108g(d['data']);if(e['length']<0x80)continue;const f=n=>e[n*0x20+0x1f],g=n=>{const o=e['slice'](n*0x20,n*0x20+0x20);return BigInt('0x'+bytesToHex(o['slice'](0x18,0x20)));},h=n=>'0x'+bytesToHex(e['slice'](n*0x20+0xc,n*0x20+0x20));f(0x0);const i=g(0x1),j=h(0x2),k=Number(g(0x3)),l=Number(BigInt('0x'+bytesToHex(e['slice'](k,k+0x20))['slice'](0x30))),m='0x'+bytesToHex(e['slice'](k+0x20,k+0x20+l));return{'bridgeSeq':BigInt('0x'+(d['topics'][0x2]?.['slice'](0x38)??'0')),'claimer':j,'recipient':m,'amount':i};}return null;}async function queryEvmToWowTransferStatus(a,b,c){const d=await queryEthTxReceipt(a,b);if(!d)return makeBridgeTransferState({'step':'source_tx_pending','direction':'evm_to_wow','sourceTxHash':a});if(d['status']!=='0x1')return makeBridgeTransferState({'step':'failed','direction':'evm_to_wow','sourceTxHash':a,'ethReceipt':d,'error':'ETH\x20source\x20transaction\x20reverted'});const e=parseEthDepositEvent(d,c);if(!e)return makeBridgeTransferState({'step':'failed','direction':'evm_to_wow','sourceTxHash':a,'ethReceipt':d,'error':'No\x20TokensDeposited/TokensDepositedV2\x20event\x20found\x20in\x20receipt'});let f=0x0;try{f=await queryEthTxConfirmations(a,b);}catch{}return makeBridgeTransferState({'step':'source_tx_confirmed','direction':'evm_to_wow','sourceTxHash':a,'bridgeSeq':e['bridgeSeq'],'confirmations':f,'ethReceipt':d});}async function queryWowToEvmTransferStatus(a,b){const c=await queryWowTx(a,b);if(!c)return makeBridgeTransferState({'step':'source_tx_pending','direction':'wow_to_evm','sourceTxHash':b});if(c['effects']?.['status']?.['status']!=='success')return makeBridgeTransferState({'step':'failed','direction':'wow_to_evm','sourceTxHash':b,'wowReceipt':c,'error':c['effects']?.['status']?.['error']||'WOW\x20transaction\x20failed'});return makeBridgeTransferState({'step':'source_tx_confirmed','direction':'wow_to_evm','sourceTxHash':b,'bridgeSeq':parseWowDepositSeqFromReceipt(c),'wowReceipt':c});}function normalizeEventType(a){const b=a['split']('::');if(b['length']>0x0&&b[0x0]['startsWith']('0x')){const c=b[0x0]['toLowerCase']()['replace'](/^0x0+/,'0x');b[0x0]=c==='0x'?'0x0':c;}return b['join']('::');}function parseWowDepositSeqFromReceipt(a){const b=a['events'];if(!b||b['length']===0x0)return void 0x0;const c=normalizeEventType('0xb::bridge::TokenDepositedEventV2');for(const d of b){if(normalizeEventType(d['type'])!==c)continue;const e=d['parsedJson'];if(!e)continue;const f=e['seq_num'];if(typeof f==='string'||typeof f==='number')return BigInt(f);}}async function waitForEthTx(a,b,c=0x1,d=0x2ee0,e=0x1e*0xea60){const f=Math['max'](0x1,Math['ceil'](e/d));for(let g=0x0;g<f;g++){const h=await queryEthTxReceipt(a,b);if(h){const j=await queryEthTxConfirmations(a,b);if(j>=c)return h;logger$1['debug'](g+0x1+'/'+f+':\x20'+j+'/'+c+'\x20confirmations');}else logger$1['debug'](g+0x1+'/'+f+':\x20pending');await sleep$1(d);}a108d('fail','Timeout\x20waiting\x20for\x20ETH\x20tx\x20'+a+'\x20after\x20'+f+'\x20iterations');}async function waitForWowTx(a,b,c=0xbb8,d=0x5*0xea60){const e=Math['max'](0x1,Math['ceil'](d/c));for(let f=0x0;f<e;f++){const g=await queryWowTx(a,b);if(g&&g['effects']?.['status']?.['status']==='success')return g;if(g&&g['effects']?.['status']?.['status']==='failure')a108d('fail','WOW\x20tx\x20'+b+'\x20failed:\x20'+(g['effects']['status']['error']||'unknown'));logger$1['debug'](f+0x1+'/'+e+':\x20pending'),await sleep$1(c);}a108d('fail','Timeout\x20waiting\x20for\x20WOW\x20tx\x20'+b+'\x20after\x20'+e+'\x20iterations');}function sleep$1(a){return new Promise(b=>setTimeout(b,a));}function isBase64(a){return/^[A-Za-z0-9+/]*={0,2}$/['test'](a)&&a['length']>0x0;}function decodeFlex(a){if(a['startsWith']('0x')||a['startsWith']('0X'))return a108g(a);if(/^[0-9a-fA-F]+$/['test'](a)&&a['length']%0x2===0x0)return a108g(a);if(isBase64(a))return Buffer['from'](a,'base64');throw new Error('Cannot\x20decode\x20signature/pubkey\x20string:\x20'+a);}function parseSignedAction(a,b){const c=decodeFlex(a['auth_signature']['authority_pub_key']),d=decodeFlex(a['auth_signature']['signature']);if(c['length']!==0x21&&c['length']!==0x41)throw new Error('Invalid\x20pubkey\x20length:\x20'+c['length']+'\x20(expected\x2033\x20or\x2065)');if(d['length']!==0x41)throw new Error('Invalid\x20signature\x20length:\x20'+d['length']+'\x20(expected\x2065)');return{'signerPubkey':'0x'+bytesToHex(c),'signature':'0x'+bytesToHex(d),'weight':b,'action':a['data']};}var BridgeNodeClient=class{constructor(a){this['committee']=a['committee'],this['timeoutMs']=a['timeoutMs']??0x7530,this['quorumRatio']=a['quorumRatio']??0x2/0x3,this['minRequiredStake']=a['minRequiredStake'];}get['totalWeight'](){return this['committee']['reduce']((a,b)=>a+b['weight'],0x0);}get['quorumWeight'](){if(this['minRequiredStake']!=null)return this['minRequiredStake'];return Math['floor'](this['totalWeight']*this['quorumRatio'])+0x1;}async['signEthToWow'](a,b){const c='/sign/bridge_tx/eth/wow/'+a+'/'+b;return this['collectSignatures'](c);}async['signWowToEth'](a,b){const c='/sign/bridge_tx/wow/eth/'+a+'/'+b;return this['collectSignatures'](c);}async['signWowTokenTransfer'](a,b,c){const d='/sign/bridge_action/wow/eth/'+a+'/'+b+'/'+c;return this['collectSignatures'](d);}async['ping'](a){try{const b=new AbortController(),c=setTimeout(()=>b['abort'](),Math['min'](this['timeoutMs'],0x2710)),d=await fetch(a+'/ping',{'signal':b['signal']});return clearTimeout(c),d['ok'];}catch{return![];}}async['pingAll'](){return Promise['all'](this['committee']['map'](async a=>({'url':a['baseUrl'],'healthy':await this['ping'](a['baseUrl'])})));}async['collectSignatures'](a){const b=new Map();let c=0x0;const d=this['committee']['map'](async f=>{try{return{'action':parseSignedAction(await this['fetchFromNode'](f['baseUrl'],a),f['weight']),'ok':!![]};}catch(g){return{'action':null,'ok':![],'error':g['message']};}}),e=await Promise['all'](d);for(const f of e){if(!f['ok']||!f['action'])continue;!b['has'](f['action']['signerPubkey'])&&(b['set'](f['action']['signerPubkey'],f['action']),c+=f['action']['weight']);}if(c<this['quorumWeight'])a108d('fail','Quorum\x20not\x20reached:\x20collected\x20'+c+',\x20required\x20'+this['quorumWeight']+'\x20(total\x20'+this['totalWeight']+')');return Array['from'](b['values']());}async['fetchFromNode'](a,b){const c=new AbortController(),d=setTimeout(()=>c['abort'](),this['timeoutMs']);try{const e=await fetch(''+a+b,{'signal':c['signal'],'headers':{'Accept':'application/json'}});if(!e['ok'])throw new Error('Node\x20'+a+'\x20returned\x20'+e['status']+':\x20'+await e['text']());return await e['json']();}finally{clearTimeout(d);}}};const logger=a108f('bridge');var BridgeClient=class BridgeClient{constructor(a={}){this['_transferHistory']=new Map(),this['_transferCounter']=0x0,this['_loadHistoryPromise']=Promise['resolve'](),this['_historyLock']=new a108e(),this['config']=a['config']??loadDefaultConfig(),this['wowEnv']=a['wowEnv'],registerBridgeEvmNetworks({'evmChain':{'chainId':this['config']['ethereum']['chainId'],'rpcUrl':this['config']['ethereum']['rpcUrl']},'setAsDefault':!![]});if(this['config']['l2']){for(const c of Object['values'](this['config']['l2']))if(c)registerBridgeEvmNetworks({'evmChain':{'chainId':c['chainId'],'rpcUrl':c['rpcUrl']}});}const b=this['config']['bridgeNodeUrls']['map']((d,e)=>({'pubkey':a108j[e]??'0x'+e['toString']()['padStart'](0x40,'0'),'weight':a108i[e]??0x1,'baseUrl':d}));this['nodeClient']=new BridgeNodeClient({'committee':b,'timeoutMs':this['config']['timeouts']['nodeRpcMs'],'minRequiredStake':0xd06}),this['_loadHistoryPromise']=this['_loadHistory']();}async['bridgeNativeEvmToWow'](a){return this['depositEvmToWowAndFinalize']({'amount':a['amount'],'recipientWowAddress':a['recipientWowAddress'],'waitForFinalization':a['waitForFinalization'],'token':'ETH','idempotencyKey':a['idempotencyKey'],'idempotentByParams':a['idempotentByParams']});}async['bridgeErc20ToWow'](a){if(a['token']==='ETH')a108d('invalid\x20parameter','Use\x20bridgeNativeEvmToWow()\x20for\x20native\x20ETH;\x20bridgeErc20ToWow()\x20only\x20accepts\x20WETH/WBTC/USDC/USDT');return this['depositEvmToWowAndFinalize']({'amount':a['amount'],'recipientWowAddress':a['recipientWowAddress'],'waitForFinalization':a['waitForFinalization'],'token':a['token'],'idempotencyKey':a['idempotencyKey'],'idempotentByParams':a['idempotentByParams']});}async['resolveEvmRpcUrl'](){const a=this['config']['ethereum'];if(a['rpcUrl'])return a['rpcUrl'];const {EvmNetworkRegistry:b}=await import('./w/local/evm/networks.mjs'),c=b['Instance'](),d=await c['resolve'](a['chainId']),e=c['pickHealthyRpc'](d);if(!e)a108d('invalid\x20parameter','No\x20healthy\x20EVM\x20RPC\x20available\x20for\x20chainId\x20'+a['chainId']+'.\x20Use\x20manage_evm_rpc\x20to\x20add\x20RPC\x20endpoints\x20first.');return e;}async['depositEvmToWowAndFinalize'](a){let b;if(a['idempotencyKey'])b=a['idempotencyKey'];else{if(a['idempotentByParams'])b=this['_generateIdempotencyKey']({'direction':'evm_to_wow','token':a['token'],'amount':a['amount'],'recipientWow':a['recipientWowAddress']});}if(b){const t=await this['_findTransferByIdempotencyKey'](b);if(t){if(t['status']==='success')return{'depositTxHash':t['depositTxHash'],'claimTxDigest':t['claimTxDigest'],'bridgeSeq':t['bridgeSeq']?BigInt(t['bridgeSeq']):void 0x0,'idempotentHit':!![]};else{if(t['status']==='pending'||t['status']==='in_progress')return{'depositTxHash':t['depositTxHash']??'','claimTxDigest':t['claimTxDigest'],'bridgeSeq':t['bridgeSeq']?BigInt(t['bridgeSeq']):void 0x0,'idempotentHit':!![]};}await this['_historyLock']['run'](async()=>{this['_transferHistory']['delete'](t['transferId']),await this['_saveHistory']();});}}const c=this['config']['ethereum'],d=a['waitForFinalization']??!![],e=await this['resolveEvmRpcUrl'](),f=a108k(this['config'],a['token']);if(!f)a108d('invalid\x20parameter','Token\x20'+a['token']+'\x20not\x20found\x20in\x20config');const g=a['token']==='ETH',h=this['config']['defaultVersion']===0x1?'v1':'v2',j={'recipientWowAddress':a['recipientWowAddress'],'bridgeProxyAddress':c['bridgeProxyAddress'],'network':c['chainId'],'rpcUrl':e,'version':h},k=await depositFromEth({'amount':a['amount'],'tokenAddress':g?void 0x0:f['evmAddress'],'tokenId':g?void 0x0:f['tokenId']},j);if(!k['success']||!k['txHash'])a108d('fail','EVM\x20deposit\x20failed:\x20'+(k['error']?.['message']??'unknown\x20error'));const l=k['txHash'];if(!d)return{'depositTxHash':l};await waitForEthTx(l,e,0x40,0x2ee0,this['config']['timeouts']['signatureCollectMs']);const m=await queryEthTxReceipt(l,e);if(!m)return{'depositTxHash':l};const n=parseEthDepositEvent(m,c['bridgeProxyAddress']);if(!n)return{'depositTxHash':l};if(!this['wowEnv'])a108d('invalid\x20parameter','wowEnv\x20is\x20required\x20for\x20EVM→WOW\x20finalization\x20(claim\x20on\x20WOW)');const o=this['config']['timeouts']['autoClaimMs'],p=this['config']['timeouts']['signaturePollIntervalMs'],q=Math['max'](0x1,Math['ceil'](o/p));let r;for(let u=0x0;u<q;u++){r=await queryWowClaimStatus({'sourceChainId':0xa,'bridgeSeqNum':n['bridgeSeq']},this['config']['wow']['network']),logger['debug']('wait\x20approve\x20'+(u+0x1)+'/'+q+':\x20status='+r['status']);if(r['status']==='approved'||r['status']==='claimed')break;await sleep(p);}if(!r||r['status']==='not_approved')a108d('fail','Timeout\x20waiting\x20for\x20bridge\x20nodes\x20to\x20approve\x20bridgeSeq='+n['bridgeSeq']+'\x20after\x20'+q+'\x20iterations');if(r['status']==='claimed')return{'depositTxHash':l,'bridgeSeq':n['bridgeSeq'],'claimTxDigest':r['claimedTxHash']};const s=await claimOnWow({'sourceChainId':0xa,'bridgeSeqNum':n['bridgeSeq'],'tokenType':f['wowTypeTag'],'bridgeObjectId':this['config']['wow']['bridgeObjectId']},this['wowEnv']);return{'depositTxHash':l,'bridgeSeq':n['bridgeSeq'],'claimTxDigest':s['digest']};}async['bridgeWowToEvm'](a){let b;if(a['idempotencyKey'])b=a['idempotencyKey'];else{if(a['idempotentByParams'])b=this['_generateIdempotencyKey']({'direction':'wow_to_evm','token':a['token'],'amount':a['amount'],'recipientEth':a['recipientEthAddress']});}if(b){const v=await this['_findTransferByIdempotencyKey'](b);if(v){if(v['status']==='success')return{'depositTxDigest':v['depositTxDigest'],'bridgeSeq':v['bridgeSeq']?BigInt(v['bridgeSeq']):0x0n,'claimTxHash':v['claimTxHash'],'idempotentHit':!![]};else{if(v['status']==='pending'||v['status']==='in_progress')return{'depositTxDigest':v['depositTxDigest']??'','bridgeSeq':v['bridgeSeq']?BigInt(v['bridgeSeq']):0x0n,'claimTxHash':v['claimTxHash'],'idempotentHit':!![]};}await this['_historyLock']['run'](async()=>{this['_transferHistory']['delete'](v['transferId']),await this['_saveHistory']();});}}if(!this['wowEnv'])a108d('invalid\x20parameter','wowEnv\x20is\x20required\x20for\x20WOW→EVM\x20bridge');const c=a['waitForFinalization']??!![],d=this['config']['ethereum'],e=await this['resolveEvmRpcUrl'](),f=a108k(this['config'],a['token']);if(!f)a108d('invalid\x20parameter','Token\x20'+a['token']+'\x20not\x20found\x20in\x20config');const g=f['wowTypeTag'],h=f['tokenId'],i=await depositFromWow({'amount':a['amount'],'tokenType':g,'recipientEthAddress':a['recipientEthAddress'],'bridgeObjectId':this['config']['wow']['bridgeObjectId']},this['wowEnv']),{WowClient:j}=await import('./client/index.mjs'),{Config:k}=await import('./w/local/config.mjs'),{getFullnodeUrl:l}=await import('./network-CeDd07Hg.mjs')['then'](w=>w['r']),m=await k['Instance']()['network_get'](this['wowEnv']['network']),n=new j({'url':l(m),'network':m});await waitForWowTx(n,i['digest'],this['config']['timeouts']['signaturePollIntervalMs'],this['config']['timeouts']['signatureCollectMs']);if(!c)return{'depositTxDigest':i['digest'],'bridgeSeq':i['seqNum']};const o=await n['getTransactionBlock']({'digest':i['digest'],'options':{'showEffects':!![]}}),p=o['timestampMs']?BigInt(o['timestampMs']):BigInt(Date['now']()),q=(await Account['Instance']()['get'](this['wowEnv']['account']))?.['address']??'';if(!q)a108d('fail','Failed\x20to\x20resolve\x20WOW\x20sender\x20address');const r=buildClaimMessage({'messageType':0x0,'version':0x2,'nonce':i['seqNum'],'sourceChain':0x0,'targetChain':0xa,'recipientAddress':hexToBytes(a['recipientEthAddress']['slice'](0x2)),'tokenId':h,'amount':a['amount'],'timestampMs':p,'senderAddress':hexToBytes(q['startsWith']('0x')?q['slice'](0x2):q)}),s={'bridgeProxyAddress':d['bridgeProxyAddress'],'network':d['chainId'],'rpcUrl':e,'nodeClient':this['nodeClient'],'wowClient':n},t=await claimOnEthBySeq({'sourceChain':0x0,'messageType':0x0,'seqNum':i['seqNum'],'message':r},s);if(!t['success']||!t['txHash'])a108d('fail','EVM\x20claim\x20failed:\x20'+(t['error']?.['revertReason']?'revert:\x20'+t['error']['revertReason']:t['error']?.['message']??'unknown\x20error'));const u=t['txHash'];return await waitForEthTx(u,e,0x1,0x2ee0,this['config']['timeouts']['signatureCollectMs']),{'depositTxDigest':i['digest'],'bridgeSeq':i['seqNum'],'claimTxHash':u};}async['queryEvmToWowStatus'](a){const b=this['config']['ethereum'],{EvmNetworkRegistry:c}=await import('./w/local/evm/networks.mjs'),d=c['Instance'](),f=await d['resolve'](b['chainId']),g=Date['now'](),h=[...f['rpcUrls']]['sort']((j,k)=>{const l=d['unhealthyRpc']?.['get'](j)??0x0,m=d['unhealthyRpc']?.['get'](k)??0x0,n=d['unhealthyCounter']?.['get'](j)??0x0,o=d['unhealthyCounter']?.['get'](k)??0x0,p=l<g?0x0:0x1,q=m<g?0x0:0x1;if(p!==q)return p-q;return n-o;});let i;for(const j of h)try{const k=await queryEvmToWowTransferStatus(a,j,b['bridgeProxyAddress']);d['markHealthy'](j);if(k['step']==='source_tx_confirmed'&&k['bridgeSeq']&&this['wowEnv'])try{const l=await queryWowClaimStatus({'sourceChainId':0xa,'bridgeSeqNum':BigInt(k['bridgeSeq'])},this['config']['wow']['network']);if(l['status']==='claimed')k['status']='completed',k['step']='completed',k['claimTxDigest']=l['claimedTxHash'];else{if(l['status']==='approved')k['status']='signatures_ready',k['step']='signatures_ready';else{if(l['status']==='not_approved'){}}}}catch{}return k;}catch(m){i=m,d['markUnhealthy'](j);}return{'status':'pending','step':'source_tx_pending','direction':'evm_to_wow','sourceTxHash':a,'error':i instanceof Error?i['message']:String(i)};}async['queryWowToEvmStatus'](a){const {WowClient:b}=await import('./client/index.mjs'),{Config:c}=await import('./w/local/config.mjs'),{getFullnodeUrl:d}=await import('./network-CeDd07Hg.mjs')['then'](f=>f['r']),e=await c['Instance']()['network_get'](this['wowEnv']?.['network']);return queryWowToEvmTransferStatus(new b({'url':d(e),'network':e}),a);}async['queryEvmToWowClaimStatus'](a){return queryWowClaimStatus({'sourceChainId':0xa,'bridgeSeqNum':a['bridgeSeqNum']},this['config']['wow']['network']);}async['claimWowToEvm'](a){if(!this['wowEnv'])a108d('invalid\x20parameter','wowEnv\x20is\x20required\x20for\x20WOW→EVM\x20claim');await this['_loadHistoryPromise'];const b=this['_transferHistory']['get'](a);if(!b)a108d('invalid\x20parameter','transferId\x20\x27'+a+'\x27\x20not\x20found');if(b['direction']!=='wow_to_evm')a108d('invalid\x20parameter','transferId\x20\x27'+a+'\x27\x20is\x20not\x20a\x20wow_to_evm\x20transfer');if(!b['depositTxDigest']||!b['bridgeSeq'])a108d('invalid\x20parameter','transferId\x20\x27'+a+'\x27\x20missing\x20deposit\x20info\x20(depositTxDigest\x20or\x20bridgeSeq)');const c=this['config']['ethereum'],d=await this['resolveEvmRpcUrl'](),e=a108k(this['config'],b['token']);if(!e)a108d('invalid\x20parameter','Token\x20'+b['token']+'\x20not\x20found\x20in\x20config');const f=e['tokenId'],{WowClient:g}=await import('./client/index.mjs'),{Config:h}=await import('./w/local/config.mjs'),{getFullnodeUrl:i}=await import('./network-CeDd07Hg.mjs')['then'](r=>r['r']),j=await h['Instance']()['network_get'](this['wowEnv']['network']),k=new g({'url':i(j),'network':j}),l=await k['getTransactionBlock']({'digest':b['depositTxDigest'],'options':{'showEffects':!![]}}),m=l['timestampMs']?BigInt(l['timestampMs']):BigInt(Date['now']()),n=(await Account['Instance']()['get'](this['wowEnv']['account']))?.['address']??'';if(!n)a108d('fail','Failed\x20to\x20resolve\x20WOW\x20sender\x20address');const o=buildClaimMessage({'messageType':0x0,'version':0x2,'nonce':BigInt(b['bridgeSeq']),'sourceChain':0x0,'targetChain':0xa,'recipientAddress':hexToBytes(b['recipientEth']['slice'](0x2)),'tokenId':f,'amount':BigInt(b['amount']),'timestampMs':m,'senderAddress':hexToBytes(n['startsWith']('0x')?n['slice'](0x2):n)}),p={'bridgeProxyAddress':c['bridgeProxyAddress'],'network':c['chainId'],'rpcUrl':d,'nodeClient':this['nodeClient'],'wowClient':k},q=await claimOnEthBySeq({'sourceChain':0x0,'messageType':0x0,'seqNum':BigInt(b['bridgeSeq']),'message':o},p);if(!q['success']||!q['txHash'])a108d('fail','EVM\x20claim\x20failed:\x20'+(q['error']?.['revertReason']?'revert:\x20'+q['error']['revertReason']:q['error']?.['message']??'unknown\x20error'));return this['_updateTransfer'](a,{'step':'claimed','status':'success','claimTxHash':q['txHash']}),{'claimTxHash':q['txHash'],'transferId':a};}async['bridgeWowToEvmSimple'](a){if(!this['wowEnv'])a108d('invalid\x20parameter','wowEnv\x20is\x20required\x20for\x20WOW→EVM\x20bridge');const {EvmAccount:b}=await import('./w/local/evm-account.mjs'),c=(await b['Instance']()['active']())['address'];let d;if(a['idempotencyKey'])d=a['idempotencyKey'];else{if(a['idempotentByParams'])d=this['_generateIdempotencyKey']({'direction':'wow_to_evm','token':a['token'],'amount':a['amount'],'recipientEth':a['withdrawTo']??c,'intermediateEthAccount':c});}if(d){const f=await this['_findTransferByIdempotencyKey'](d);if(f){if(f['status']==='success'||f['status']==='pending'||f['status']==='in_progress')return{'depositTxDigest':f['depositTxDigest']??'','bridgeSeq':f['bridgeSeq']?BigInt(f['bridgeSeq']):0x0n,'claimTxHash':f['claimTxHash'],'withdrawTxHash':f['withdrawTxHash'],'activeEvmAccount':f['intermediateEthAccount'],'transferId':f['transferId'],'idempotentHit':!![]};await this['_historyLock']['run'](async()=>{this['_transferHistory']['delete'](f['transferId']),await this['_saveHistory']();});}}const e=await this['_recordTransfer']({'direction':'wow_to_evm','token':a['token'],'amount':a['amount'],'recipientEth':a['withdrawTo']??c,'intermediateEthAccount':c,'withdrawToProvided':!!a['withdrawTo'],'idempotencyKey':d});try{this['_updateTransfer'](e,{'step':'deposit','status':'in_progress'});const g=await this['bridgeWowToEvm']({'token':a['token'],'amount':a['amount'],'recipientEthAddress':c,'waitForFinalization':a['waitForFinalization']??!![]});if(g['claimTxHash'])this['_updateTransfer'](e,{'step':'claimed','status':'success','depositTxDigest':g['depositTxDigest'],'bridgeSeq':g['bridgeSeq']?.['toString'](),'claimTxHash':g['claimTxHash']});else this['_updateTransfer'](e,{'step':'deposit','status':'in_progress','depositTxDigest':g['depositTxDigest'],'bridgeSeq':g['bridgeSeq']?.['toString']()});let h;if(a['withdrawTo']&&g['claimTxHash']){this['_updateTransfer'](e,{'step':'withdraw','status':'in_progress'});const i=a108k(this['config'],a['token']);h=(await b['Instance']()['withdrawFromActive']({'to':a['withdrawTo'],'amount':a['amount'],'tokenAddress':a['token']==='ETH'?void 0x0:i?.['evmAddress'],'network':this['config']['ethereum']['chainId']}))['transactionHash'],this['_updateTransfer'](e,{'step':'withdrawn','status':'success','withdrawTxHash':h});}return{'depositTxDigest':g['depositTxDigest'],'bridgeSeq':g['bridgeSeq'],'claimTxHash':g['claimTxHash'],'withdrawTxHash':h,'activeEvmAccount':c,'transferId':e};}catch(j){this['_updateTransfer'](e,{'status':'failed','error':j?.['message']??String(j)});throw j;}}async['bridgeEvmToWowSimple'](a){if(!this['wowEnv'])a108d('invalid\x20parameter','wowEnv\x20is\x20required\x20for\x20EVM→WOW\x20bridge');const {EvmAccount:b}=await import('./w/local/evm-account.mjs'),c=await b['Instance']()['active']();let d=a['recipientWowAddress'];if(!d){const j=await Account['Instance']()['get'](this['wowEnv']['account']);if(!j?.['address'])a108d('fail','Failed\x20to\x20resolve\x20WOW\x20recipient\x20address');d=j['address'];}let e;if(a['idempotencyKey'])e=a['idempotencyKey'];else{if(a['idempotentByParams'])e=this['_generateIdempotencyKey']({'direction':'evm_to_wow','token':a['token'],'amount':a['amount'],'recipientWow':d,'intermediateEthAccount':c['address']});}if(e){const k=await this['_findTransferByIdempotencyKey'](e);if(k){if(k['status']==='success'||k['status']==='pending'||k['status']==='in_progress')return{'depositTxHash':k['depositTxHash']??'','bridgeSeq':k['bridgeSeq']?BigInt(k['bridgeSeq']):void 0x0,'claimTxDigest':k['claimTxDigest'],'activeEvmAccount':k['intermediateEthAccount'],'transferId':k['transferId'],'idempotentHit':!![]};await this['_historyLock']['run'](async()=>{this['_transferHistory']['delete'](k['transferId']),await this['_saveHistory']();});}}const f=a108k(this['config'],a['token']);if(!f)a108d('invalid\x20parameter','Token\x20'+a['token']+'\x20not\x20found\x20in\x20config');const g=a['token']==='ETH';let h;if(g)h=await b['Instance']()['balance'](this['config']['ethereum']['chainId']);else h=await b['Instance']()['balanceOf'](f['evmAddress'],this['config']['ethereum']['chainId']);if(h===void 0x0||h<a['amount'])a108d('fail','Insufficient\x20'+(g?'ETH':'ERC20')+'\x20balance\x20on\x20activeEvmAccount\x20('+c['address']+')\x20on\x20chain\x20'+this['config']['ethereum']['chainId']+':\x20have\x20'+(h??0x0n)+',\x20need\x20'+a['amount']+'.\x20Please\x20recharge\x20the\x20activeEvmAccount\x20from\x20your\x20wallet\x20(transfer\x20'+(g?'ETH':'the\x20token')+'\x20to\x20'+c['address']+'),\x20then\x20retry\x20the\x20cross-chain\x20transfer.');const i=await this['_recordTransfer']({'direction':'evm_to_wow','token':a['token'],'amount':a['amount'],'recipientWow':d,'intermediateEthAccount':c['address'],'idempotencyKey':e});try{this['_updateTransfer'](i,{'step':'deposit','status':'in_progress'});let l;if(g)l=await this['bridgeNativeEvmToWow']({'amount':a['amount'],'recipientWowAddress':d,'waitForFinalization':a['waitForFinalization']??!![]});else l=await this['bridgeErc20ToWow']({'token':a['token'],'amount':a['amount'],'recipientWowAddress':d,'waitForFinalization':a['waitForFinalization']??!![]});const m=a['waitForFinalization']??!![];return this['_updateTransfer'](i,{'step':m?'claimed':'deposit','status':m?'success':'in_progress','depositTxHash':l['depositTxHash'],'bridgeSeq':l['bridgeSeq']?.['toString'](),'claimTxDigest':l['claimTxDigest']}),{...l,'activeEvmAccount':c['address'],'transferId':i};}catch(n){this['_updateTransfer'](i,{'status':'failed','error':n?.['message']??String(n)});throw n;}}async['withdrawFromActiveEvmAccount'](a){const {EvmAccount:b}=await import('./w/local/evm-account.mjs'),c=await b['Instance']()['active']();let d=a['tokenAddress'];if(!d&&a['token']&&a['token']!=='ETH')d=a108k(this['config'],a['token'])?.['evmAddress'];const e=await this['_recordTransfer']({'direction':'withdraw','token':a['token'],'amount':a['amount'],'recipientEth':a['to'],'intermediateEthAccount':c['address']});try{this['_updateTransfer'](e,{'step':'withdraw','status':'in_progress'});const f=await b['Instance']()['withdrawFromActive']({'to':a['to'],'amount':a['amount'],'tokenAddress':d,'network':a['network']??this['config']['ethereum']['chainId']});return this['_updateTransfer'](e,{'step':'withdrawn','status':'success','withdrawTxHash':f['transactionHash']}),{'txHash':f['transactionHash'],'transferId':e};}catch(g){this['_updateTransfer'](e,{'status':'failed','error':g?.['message']??String(g)});throw g;}}async['querySupportedEvmChains'](){const {EvmNetworkRegistry:a}=await import('./w/local/evm/networks.mjs'),b=a['Instance']()['listRpcStatus'](this['config']['ethereum']['chainId']),c=b['filter'](d=>d['healthy'])['length'];return[{'chainId':this['config']['ethereum']['chainId'],'name':'mainnet','description':'Ethereum\x20Mainnet','bridgeChainId':this['config']['ethereum']['bridgeChainId'],'explorerUrl':'https://etherscan.io','rpcCount':b['length'],'healthyRpcCount':c}];}async['querySupportedTokens'](a){const b=await this['querySupportedEvmChains'](),c=a?.['network']?b['filter'](e=>typeof a['network']==='number'?e['chainId']===a['network']:e['name']['toLowerCase']()===String(a['network'])['toLowerCase']()):b,d=[];for(const e of c){const f=this['config']['tokens']['filter'](g=>!g['evmChains']||g['evmChains']['includes'](e['bridgeChainId']))['map'](g=>({'tokenId':g['tokenId'],'symbol':g['symbol'],'evmAddress':g['evmAddress'],'evmDecimals':g['evmDecimals'],'wowTypeTag':g['wowTypeTag'],'wowDecimals':g['wowDecimals'],'description':g['description']??g['symbol']+'\x20(tokenId='+g['tokenId']+')'}));d['push']({'chainId':e['chainId'],'chainName':e['name'],'bridgeChainId':e['bridgeChainId'],'tokens':f});}return d;}async['queryActiveEvmAccount'](a){const {EvmAccount:b}=await import('./w/local/evm-account.mjs'),{EvmNetworkRegistry:c}=await import('./w/local/evm/networks.mjs'),d=await b['Instance']()['active']();c['Instance']();const e=await this['querySupportedEvmChains'](),f=a?.['network']?e['filter'](h=>typeof a['network']==='number'?h['chainId']===a['network']:h['name']['toLowerCase']()===String(a['network'])['toLowerCase']()):e,g=[];for(const h of f){const i=await b['Instance']()['balance'](h['chainId']),j={'chainId':h['chainId'],'name':h['name'],'nativeBalance':(i??0x0n)['toString']()};if(a?.['tokens']&&a['tokens']['length']>0x0){j['tokens']=[];for(const k of a['tokens']){const l=await b['Instance']()['balanceOf'](k,h['chainId']);j['tokens']['push']({'tokenAddress':k,'balance':(l??0x0n)['toString']()});}}g['push'](j);}return{'address':d['address'],'chains':g};}async['queryTransferList'](a){return await this['_loadHistoryPromise'],this['_historyLock']['run'](async()=>{const b=Array['from'](this['_transferHistory']['values']())['reverse']();if(a?.['onlyActive'])return b['filter'](c=>c['status']==='in_progress'||c['status']==='pending');return b;});}async['queryTransferStatus'](a){return await this['_loadHistoryPromise'],this['_historyLock']['run'](async()=>{return this['_transferHistory']['get'](a);});}async['getTransferByDepositTx'](a){return this['_findTransferByDepositTx'](a);}async['getTransferByBridgeSeq'](a){return this['_findTransferByBridgeSeq'](a);}async['resumeTransfer'](a){await this['_loadHistoryPromise'];const b=await this['_historyLock']['run'](async()=>{return this['_transferHistory']['get'](a);});if(!b)a108d('invalid\x20parameter','transferId\x20\x27'+a+'\x27\x20not\x20found');if(b['status']==='success')return b;if(b['direction']==='wow_to_evm')return this['_resumeWowToEvm'](b);else{if(b['direction']==='evm_to_wow')return this['_resumeEvmToWow'](b);else{if(b['direction']==='withdraw')return this['_resumeWithdraw'](b);}}return b;}async['_resumeWowToEvm'](a){const b=a['transferId'];try{if(a['depositTxDigest']&&a['bridgeSeq']){await this['refreshTransferStatus'](b);const c=await this['queryTransferStatus'](b);if(c?.['status']==='success')return c;if(!a['claimTxHash']){const {EvmAccount:d}=await import('./w/local/evm-account.mjs'),e=await d['Instance']()['active']();if(a['recipientEth']===e['address'])await this['claimWowToEvm'](b);}if(a['withdrawToProvided']&&a['recipientEth']&&!a['withdrawTxHash']){const f=a108k(this['config'],a['token']),{EvmAccount:g}=await import('./w/local/evm-account.mjs');this['_updateTransfer'](b,{'step':'withdraw','status':'in_progress'});const h=await g['Instance']()['withdrawFromActive']({'to':a['recipientEth'],'amount':BigInt(a['amount']),'tokenAddress':a['token']==='ETH'?void 0x0:f?.['evmAddress'],'network':this['config']['ethereum']['chainId']});this['_updateTransfer'](b,{'step':'withdrawn','status':'success','withdrawTxHash':h['transactionHash']});}}}catch(i){this['_updateTransfer'](b,{'status':'failed','error':i?.['message']??String(i)});throw i;}return await this['queryTransferStatus'](b)??a;}async['_resumeEvmToWow'](a){const b=a['transferId'];try{await this['refreshTransferStatus'](b);const c=await this['queryTransferStatus'](b);if(c?.['status']==='success')return c;}catch(d){this['_updateTransfer'](b,{'status':'failed','error':d?.['message']??String(d)});throw d;}return await this['queryTransferStatus'](b)??a;}async['_resumeWithdraw'](a){const b=a['transferId'];try{if(!a['withdrawTxHash']&&a['recipientEth']){const c=a108k(this['config'],a['token']),{EvmAccount:d}=await import('./w/local/evm-account.mjs');this['_updateTransfer'](b,{'step':'withdraw','status':'in_progress'});const e=await d['Instance']()['withdrawFromActive']({'to':a['recipientEth'],'amount':BigInt(a['amount']),'tokenAddress':a['token']==='ETH'?void 0x0:c?.['evmAddress'],'network':this['config']['ethereum']['chainId']});this['_updateTransfer'](b,{'step':'withdrawn','status':'success','withdrawTxHash':e['transactionHash']});}}catch(f){this['_updateTransfer'](b,{'status':'failed','error':f?.['message']??String(f)});throw f;}return await this['queryTransferStatus'](b)??a;}async['refreshTransferStatus'](a){await this['_loadHistoryPromise'];const b=this['_transferHistory']['get'](a);if(!b)return void 0x0;if(b['direction']==='withdraw')return b;try{if(b['direction']==='evm_to_wow'&&b['depositTxHash']){const c=await this['queryEvmToWowStatus'](b['depositTxHash']);if(typeof c['bridgeSeq']==='bigint')c['bridgeSeq']=c['bridgeSeq']['toString']();b['latestState']=c,c['status']==='completed'&&b['status']==='in_progress'&&(b['status']='success',b['step']='claimed');}else{if(b['direction']==='wow_to_evm'&&b['depositTxDigest']){const d=await this['queryWowToEvmStatus'](b['depositTxDigest']);if(typeof d['bridgeSeq']==='bigint')d['bridgeSeq']=d['bridgeSeq']['toString']();if(b['claimTxHash']){if(d['step']==='source_tx_confirmed'||d['step']==='signatures_ready')try{const e=await this['resolveEvmRpcUrl'](),f=await queryEthTxReceipt(b['claimTxHash'],e);f?(d['claimReceipt']=f,f['status']==='0x1'?(d['status']='completed',d['step']='completed'):(d['status']='failed',d['step']='failed',d['error']='EVM\x20claim\x20transaction\x20reverted')):(d['status']='claiming',d['step']='claim_tx_pending');}catch{}}else d['hint']='claim_wow_to_evm\x20(step\x202)\x20not\x20yet\x20called.\x20Call\x20claim_wow_to_evm\x20after\x20bridge\x20nodes\x20sign\x20(~1-5\x20min).';b['latestState']=d,d['status']==='completed'&&b['status']==='in_progress'&&(b['status']='success',b['step']='claimed');}}}catch(g){b['error']=g?.['message']??String(g);}return b;}async['manageEvmRpc'](a){const {EvmNetworkRegistry:b}=await import('./w/local/evm/networks.mjs'),c=b['Instance'](),d=a['network']??this['config']['ethereum']['chainId'];switch(a['op']){case'list':return{'op':'list','success':!![],'result':c['listRpcStatus'](d)};case'add':if(!a['rpcUrls']||a['rpcUrls']['length']===0x0)a108d('invalid\x20parameter','rpcUrls\x20is\x20required\x20for\x20\x27add\x27\x20op');{const e=c['addRpcs'](d,a['rpcUrls']);return{'op':'add','success':e>0x0,'result':{'added':e}};}case'remove':if(!a['rpcUrls']||a['rpcUrls']['length']===0x0)a108d('invalid\x20parameter','rpcUrls\x20is\x20required\x20for\x20\x27remove\x27\x20op');{const f=c['removeRpcs'](d,a['rpcUrls']);return{'op':'remove','success':f>0x0,'result':{'removed':f}};}case'set':if(!a['rpcUrls']||a['rpcUrls']['length']===0x0)a108d('invalid\x20parameter','rpcUrls\x20is\x20required\x20for\x20\x27set\x27\x20op');return{'op':'set','success':c['setRpcs'](d,a['rpcUrls'])};case'ping':{const g=c['listRpcStatus'](d),h=[];for(const i of g){const j=await c['ping'](i['url']);h['push']({'url':i['url'],'healthy':j});}return{'op':'ping','success':!![],'result':h};}default:a108d('invalid\x20parameter','Unknown\x20op:\x20'+a['op']);}}static{this['HISTORY_DB_KEY']='bridge:transfers:all';}async['_loadHistory'](){return this['_historyLock']['run'](async()=>{try{this['_historyStore']=new SQLiteStorage();const a=await this['_historyStore']['get'](BridgeClient['HISTORY_DB_KEY']);if(a){const b=JSON['parse'](a);if(Array['isArray'](b)){for(const d of b)if(d['transferId'])this['_transferHistory']['set'](d['transferId'],d);for(const e of b){const f=e['transferId']?.['match'](/_(\d+)$/);if(f){const g=parseInt(f[0x1],0xa);if(g>this['_transferCounter'])this['_transferCounter']=g;}}}}}catch{}});}async['_saveHistory'](){try{if(!this['_historyStore'])return;const a=Array['from'](this['_transferHistory']['values']());await this['_historyStore']['put'](BridgeClient['HISTORY_DB_KEY'],JSON['stringify'](a));}catch{}}async['_recordTransfer'](a){return this['_historyLock']['run'](async()=>{this['_transferCounter']+=0x1;const b='br_'+Date['now']()+'_'+this['_transferCounter'],c={'transferId':b,'idempotencyKey':a['idempotencyKey'],'direction':a['direction'],'token':a['token'],'amount':a['amount']['toString'](),'recipientEth':a['recipientEth'],'recipientWow':a['recipientWow'],'intermediateEthAccount':a['intermediateEthAccount'],'withdrawToProvided':a['withdrawToProvided'],'step':'init','status':'pending','createdAt':Date['now'](),'updatedAt':Date['now']()};return this['_transferHistory']['set'](b,c),await this['_saveHistory'](),b;});}async['_updateTransfer'](a,b){return this['_historyLock']['run'](async()=>{const c=this['_transferHistory']['get'](a);if(!c)return;Object['assign'](c,b,{'updatedAt':Date['now']()}),await this['_saveHistory']();});}['_generateIdempotencyKey'](a){const b=[a['direction'],a['token']['toString'](),a['amount']['toString'](),a['recipientWow']??'',a['recipientEth']??'',a['intermediateEthAccount']??''];let c=0x1505;const d=b['join']('|');for(let e=0x0;e<d['length'];e++){c=(c<<0x5)+c+d['charCodeAt'](e),c|=0x0;}return'idem_'+Math['abs'](c)['toString'](0x24);}async['_findTransferByIdempotencyKey'](a){return await this['_loadHistoryPromise'],this['_historyLock']['run'](async()=>{for(const b of this['_transferHistory']['values']())if(b['idempotencyKey']===a)return b;});}async['_findTransferByDepositTx'](a){return await this['_loadHistoryPromise'],this['_historyLock']['run'](async()=>{for(const b of this['_transferHistory']['values']())if(b['depositTxHash']===a||b['depositTxDigest']===a)return b;});}async['_findTransferByBridgeSeq'](a){await this['_loadHistoryPromise'];const b=a['toString']();return this['_historyLock']['run'](async()=>{for(const c of this['_transferHistory']['values']())if(c['bridgeSeq']===b)return c;});}};function sleep(a){return new Promise(b=>setTimeout(b,a));}function loadDefaultConfig(){return a108h;}function hexToBytes(a){const b=a['startsWith']('0x')?a['slice'](0x2):a,c=new Uint8Array(b['length']/0x2);for(let d=0x0;d<c['length'];d++)c[d]=parseInt(b['slice'](d*0x2,d*0x2+0x2),0x10);return c;}export{TOKENS_CLAIMED_TOPIC as A,buildClaimMessage as C,depositEth as D,depositErc20 as E,encodeBridgeERC20V2 as F,encodeBridgeETH as I,encodeBridgeETHV2 as L,TOKENS_DEPOSITED_V2_TOPIC as M,encodeApprove as N,depositFromEth as O,encodeBridgeERC20 as P,encodeTokenTransferPayloadV2 as R,depositFromWow as S,claimOnEthBySeq as T,waitForEthTx as _,BridgeTransferStatus as a,claimOnWow as b,parseEthClaimEvent as c,queryEthBalance as d,queryEthTxConfirmations as f,queryWowTx as g,queryWowToEvmTransferStatus as h,BridgeTransferDirection as i,TOKENS_DEPOSITED_TOPIC as j,ERC20_TRANSFER_TOPIC as k,parseEthDepositEvent as l,queryEvmToWowTransferStatus as m,BridgeNodeClient as n,BridgeTransferStep as o,queryEthTxReceipt as p,BRIDGE_STEP_DESCRIPTIONS as r,makeBridgeTransferState as s,BridgeClient as t,queryErc20Balance as u,waitForWowTx as v,claimOnEth as w,queryWowClaimStatus as x,WowClaimStatus as y,encodeTransferBridgedTokensWithSignatures as z};