@wowok/wowok 2.7.0 → 2.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/dist/esm/{arb-DdsVJAQS.mjs → arb-UmbIfnyY.mjs} +1 -1
  2. package/dist/esm/{base-Bem5gVfE.mjs → base-BzTUCV2r.mjs} +1 -1
  3. package/dist/esm/bcs/index.d.mts +1 -1
  4. package/dist/esm/{call-B2_VblCK.mjs → call-D7-YH2s4.mjs} +1 -1
  5. package/dist/esm/client/index.d.mts +1 -1
  6. package/dist/esm/client/index.mjs +1 -1
  7. package/dist/esm/{client-DbLjWV0v.mjs → client-B2NwgKQ6.mjs} +1 -1
  8. package/dist/esm/cryptography/index.d.mts +1 -1
  9. package/dist/esm/{evm-account-Bk7Axxmu.d.mts → evm-account-C-WmGOoz.d.mts} +2 -2
  10. package/dist/esm/graphql/index.d.mts +1 -1
  11. package/dist/esm/graphql/index.mjs +1 -1
  12. package/dist/esm/{graphql-DBzTX0je.mjs → graphql-Bf8yuSuF.mjs} +1 -1
  13. package/dist/esm/grpc/index.d.mts +1 -1
  14. package/dist/esm/grpc/index.mjs +1 -1
  15. package/dist/esm/{grpc-CJ97juzx.mjs → grpc-B8ovObdJ.mjs} +1 -1
  16. package/dist/esm/{index-BeiKuYsk.d.mts → index-BZkrZ63s.d.mts} +4 -4
  17. package/dist/esm/{index-B-cxGU73.d.mts → index-o_aMVwsK.d.mts} +6 -6
  18. package/dist/esm/index.d.mts +6 -6
  19. package/dist/esm/index.mjs +1 -1
  20. package/dist/esm/jsonRpc/index.d.mts +1 -1
  21. package/dist/esm/jsonRpc/index.mjs +1 -1
  22. package/dist/esm/keypairs/ed25519/index.d.mts +1 -1
  23. package/dist/esm/keypairs/falcon512/index.d.mts +1 -1
  24. package/dist/esm/keypairs/passkey/index.d.mts +1 -1
  25. package/dist/esm/keypairs/secp256k1/index.d.mts +1 -1
  26. package/dist/esm/keypairs/secp256r1/index.d.mts +1 -1
  27. package/dist/esm/{messenger-CnEo2ENd.mjs → messenger-DEHzSxhH.mjs} +1 -1
  28. package/dist/esm/{messenger-api-OFn2tErd.mjs → messenger-api-DSPJm9_J.mjs} +1 -1
  29. package/dist/esm/multisig/index.d.mts +1 -1
  30. package/dist/esm/{object-BaLfg7ui.mjs → object-Dma1VY-1.mjs} +1 -1
  31. package/dist/esm/{passport-DRaRa4Fd.mjs → passport-CQFR2dfo.mjs} +1 -1
  32. package/dist/esm/{proof-DT_n7Pdr.mjs → proof-BcyNI5NQ.mjs} +1 -1
  33. package/dist/esm/{query-CaWOlNHH.mjs → query-cAnGkFPh.mjs} +1 -1
  34. package/dist/esm/{received-Cfbf_dGN.mjs → received-4odTK5AJ.mjs} +1 -1
  35. package/dist/esm/{secure-storage-lI6ZR9sW.d.mts → secure-storage-CJdIxkx3.d.mts} +1 -1
  36. package/dist/esm/{service-70b2Ro-x.mjs → service-B3jMoJ_p.mjs} +1 -1
  37. package/dist/esm/{storage-B8nW4YTJ.d.mts → storage-DGOllc0e.d.mts} +13 -0
  38. package/dist/esm/transactions/index.d.mts +1 -1
  39. package/dist/esm/{util-B-uD1Zk7.mjs → util-BC-TmINX.mjs} +1 -1
  40. package/dist/esm/verify/index.d.mts +1 -1
  41. package/dist/esm/w/call/allocation.d.mts +1 -1
  42. package/dist/esm/w/call/allocation.mjs +1 -1
  43. package/dist/esm/w/call/arbitration.d.mts +1 -1
  44. package/dist/esm/w/call/arbitration.mjs +1 -1
  45. package/dist/esm/w/call/base.d.mts +1 -1
  46. package/dist/esm/w/call/base.mjs +1 -1
  47. package/dist/esm/w/call/demand.d.mts +1 -1
  48. package/dist/esm/w/call/demand.mjs +1 -1
  49. package/dist/esm/w/call/guard.d.mts +1 -1
  50. package/dist/esm/w/call/guard.mjs +1 -1
  51. package/dist/esm/w/call/index.d.mts +1 -1
  52. package/dist/esm/w/call/index.mjs +1 -1
  53. package/dist/esm/w/call/machine.d.mts +1 -1
  54. package/dist/esm/w/call/machine.mjs +1 -1
  55. package/dist/esm/w/call/passport.d.mts +1 -1
  56. package/dist/esm/w/call/passport.mjs +1 -1
  57. package/dist/esm/w/call/payment.d.mts +1 -1
  58. package/dist/esm/w/call/payment.mjs +1 -1
  59. package/dist/esm/w/call/permission.d.mts +1 -1
  60. package/dist/esm/w/call/permission.mjs +1 -1
  61. package/dist/esm/w/call/progress.d.mts +1 -1
  62. package/dist/esm/w/call/progress.mjs +1 -1
  63. package/dist/esm/w/call/repository.d.mts +1 -1
  64. package/dist/esm/w/call/repository.mjs +1 -1
  65. package/dist/esm/w/call/reward.d.mts +1 -1
  66. package/dist/esm/w/call/reward.mjs +1 -1
  67. package/dist/esm/w/call/service.d.mts +1 -1
  68. package/dist/esm/w/call/service.mjs +1 -1
  69. package/dist/esm/w/call/treasury.d.mts +1 -1
  70. package/dist/esm/w/call/treasury.mjs +1 -1
  71. package/dist/esm/w/common.d.mts +1 -1
  72. package/dist/esm/w/index.d.mts +5 -5
  73. package/dist/esm/w/index.mjs +1 -1
  74. package/dist/esm/w/local/account.d.mts +2 -2
  75. package/dist/esm/w/local/account.mjs +1 -1
  76. package/dist/esm/w/local/evm-account.d.mts +1 -1
  77. package/dist/esm/w/local/index.d.mts +5 -5
  78. package/dist/esm/w/local/index.mjs +1 -1
  79. package/dist/esm/w/local/secure-storage.d.mts +1 -1
  80. package/dist/esm/w/local/storage.d.mts +1 -1
  81. package/dist/esm/w/local/storage.mjs +1 -1
  82. package/dist/esm/w/local/token.d.mts +1 -1
  83. package/dist/esm/w/local/token.mjs +1 -1
  84. package/dist/esm/w/messenger/index.d.mts +1 -1
  85. package/dist/esm/w/messenger/index.mjs +1 -1
  86. package/dist/esm/w/messenger/messenger-api.d.mts +1 -1
  87. package/dist/esm/w/messenger/messenger-api.mjs +1 -1
  88. package/dist/esm/w/messenger/messenger.d.mts +1 -1
  89. package/dist/esm/w/messenger/messenger.mjs +1 -1
  90. package/dist/esm/w/messenger/reply.d.mts +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/query/index.d.mts +1 -1
  94. package/dist/esm/w/query/index.mjs +1 -1
  95. package/dist/esm/w/query/object.d.mts +1 -1
  96. package/dist/esm/w/query/object.mjs +1 -1
  97. package/dist/esm/{w-s_ejdDrP.mjs → w-Dp4KXRLj.mjs} +1 -1
  98. package/package.json +1 -1
@@ -1 +1 @@
1
- import{a as a39a}from'./wow-types-DcqbnAaK.mjs';import{t as a39b}from'./client-DbLjWV0v.mjs';import{t as a39c}from'./Transaction-CzqJDezj.mjs';import{n as a39d}from'./network-Bgq9iuE4.mjs';import{dt as a39e,it as a39f}from'./common-BDlb-AoC.mjs';import{o as a39g}from'./exception-C6IYkBi6.mjs';import{Config}from'./w/local/config.mjs';import{LocalMark}from'./w/local/local.mjs';import{Account}from'./w/local/account.mjs';import{G as a39h,L as a39i,lt as a39j}from'./object-BaLfg7ui.mjs';const ONCHAIN_CONSTANTS={'MAX_NODE_COUNT_ONCHAIN':0xc8,'MAX_NODE_COUNT_SDK':0x64,'MAX_FORWARD_COUNT':0x14,'MAX_FORWARD_ORDER_COUNT':0x14,'MAX_NODE_PAIR_COUNT':0x28,'MAX_CONSENSUS_REPOSITORIES_COUNT':0xc8,'USER_DEFINED_PERM_INDEX_START':0x3e8,'MAX_PERM_FOR_ENTITY':0x3e8,'MAX_ENTITY_COUNT':0x3e8,'MAX_ADMIN_COUNT':0x1f4,'MAX_AGENT_COUNT':0xa,'MAX_DISPUTE_COUNT':0xa,'MAX_ALLOCATOR_COUNT':0x64,'MAX_SHARING_COUNT':0x64,'MAX_VOTING_GUARD_COUNT':0x32,'MAX_POLICY_COUNT':0x32,'MAX_POLICY_DESCRIPTION_LEN':0x1f4,'MAX_POLICY_GUARD_COUNT':0xa,'MAX_DATA_SIZE':0xa000,'MAX_ID_COUNT_ONCE':0x64,'MAX_REWARD_COUNT':0x14,'MAX_CONTEXT_REPOSITORY_COUNT':0x1e,'MAX_NAMED_OPERATOR_COUNT':0x3c,'MAX_NAMED_OPERATOR_ADDRESS_COUNT':0x50,'MAX_SALE_COUNT':0x32,'MAX_REPOSITORY_COUNT':0x64,'MAX_ARBITRATION_COUNT':0x14,'MAX_DISCOUNT_COUNT_ONCE':0x3e8,'MAX_DISCOUNT_RECEIVER_ONCE':0x3e8,'MAX_DISCOUNT_TOTAL_COUNT':0x4e20,'DEFAULT_LOCK_DURATION':0x9a7ec800,'MAX_REQUIRED_INFO_SIZE':0x14,'MAX_WIP_LENGTH':0x400,'MAX_WIP_HASH_LENGTH':0x40,'DISCOUNT_TYPE_RATES':0x0,'DISCOUNT_TYPE_MINUS':0x1,'MAX_EXTERNAL_DEPOSIT_GUARD_COUNT':0x64,'MAX_EXTERNAL_WITHDRAW_GUARD_COUNT':0xc8,'MAX_IM_COUNT':0xc8,'MAX_TAGS_COUNT':0x64,'MAX_RECIPIENT_COUNT':0xc8,'MAX_PROPOSITION_COUNT':0x14,'MAX_VOTOR_COUNT':0x208,'WITHDRAW_DURATION_TIME':0x9a7ec800,'MAX_ADDRESS_COUNT':0x1450,'MAX_RECORD_LENGTH':0xfa0,'BRIDGE_MESSAGE_VERSION':0x1,'BRIDGE_EVM_ADDRESS_LENGTH':0x14,'BRIDGE_CURRENT_VERSION':0x1,'BRIDGE_TRANSFER_STATUS_PENDING':0x0,'BRIDGE_TRANSFER_STATUS_APPROVED':0x1,'BRIDGE_TRANSFER_STATUS_CLAIMED':0x2,'BRIDGE_TRANSFER_STATUS_NOT_FOUND':0x3,'MAX_GUARD_COUNT_DEMAND':0x14,'MAX_GUARD_COUNT_PASSPORT':0x14,'MAX_GUARD_COUNT_REWARD':0xc8,'MAX_SUBMISSION_SIZE_PASSPORT':0x100,'MAX_RECORD_COUNT_REWARD':0x1450,'MAX_RECORD_COUNT_REGISTRAR':0x3e8,'WOWOK_WTS_PROOF_TYPE':0x1,'MAX_PROOF_SIZE':0x2800,'MAX_SERVER_PUBKEY_SIZE':0x800,'MAX_SERVER_SIGNATURE_SIZE':0x9e20},MAX_NODE_COUNT=ONCHAIN_CONSTANTS['MAX_NODE_COUNT_SDK'],MAX_NODE_COUNT_ONCHAIN=ONCHAIN_CONSTANTS['MAX_NODE_COUNT_ONCHAIN'],MAX_FORWARD_COUNT=ONCHAIN_CONSTANTS['MAX_FORWARD_COUNT'],MAX_FORWARD_ORDER_COUNT=ONCHAIN_CONSTANTS['MAX_FORWARD_ORDER_COUNT'],MAX_NODE_PAIR_COUNT=ONCHAIN_CONSTANTS['MAX_NODE_PAIR_COUNT'],MAX_CONSENSUS_REPOSITORIES_COUNT=ONCHAIN_CONSTANTS['MAX_CONSENSUS_REPOSITORIES_COUNT'],USER_DEFINED_PERM_INDEX_START=ONCHAIN_CONSTANTS['USER_DEFINED_PERM_INDEX_START'],MAX_PERM_FOR_ENTITY=ONCHAIN_CONSTANTS['MAX_PERM_FOR_ENTITY'],MAX_ENTITY_COUNT=ONCHAIN_CONSTANTS['MAX_ENTITY_COUNT'],MAX_ADMIN_COUNT=ONCHAIN_CONSTANTS['MAX_ADMIN_COUNT'],MAX_AGENT_COUNT=ONCHAIN_CONSTANTS['MAX_AGENT_COUNT'],MAX_DISPUTE_COUNT=ONCHAIN_CONSTANTS['MAX_DISPUTE_COUNT'],MAX_ALLOCATOR_COUNT=ONCHAIN_CONSTANTS['MAX_ALLOCATOR_COUNT'],MAX_SHARING_COUNT=ONCHAIN_CONSTANTS['MAX_SHARING_COUNT'],MAX_VOTING_GUARD_COUNT=ONCHAIN_CONSTANTS['MAX_VOTING_GUARD_COUNT'],MAX_POLICY_COUNT=ONCHAIN_CONSTANTS['MAX_POLICY_COUNT'],MAX_POLICY_DESCRIPTION_LEN=ONCHAIN_CONSTANTS['MAX_POLICY_DESCRIPTION_LEN'],MAX_POLICY_GUARD_COUNT=ONCHAIN_CONSTANTS['MAX_POLICY_GUARD_COUNT'],MAX_DATA_SIZE=ONCHAIN_CONSTANTS['MAX_DATA_SIZE'],MAX_ID_COUNT_ONCE=ONCHAIN_CONSTANTS['MAX_ID_COUNT_ONCE'],MAX_REWARD_COUNT=ONCHAIN_CONSTANTS['MAX_REWARD_COUNT'],MAX_CONTEXT_REPOSITORY_COUNT=ONCHAIN_CONSTANTS['MAX_CONTEXT_REPOSITORY_COUNT'],MAX_NAMED_OPERATOR_COUNT=ONCHAIN_CONSTANTS['MAX_NAMED_OPERATOR_COUNT'],MAX_NAMED_OPERATOR_ADDRESS_COUNT=ONCHAIN_CONSTANTS['MAX_NAMED_OPERATOR_ADDRESS_COUNT'],MAX_SALE_COUNT=ONCHAIN_CONSTANTS['MAX_SALE_COUNT'],MAX_REPOSITORY_COUNT=ONCHAIN_CONSTANTS['MAX_REPOSITORY_COUNT'],MAX_ARBITRATION_COUNT=ONCHAIN_CONSTANTS['MAX_ARBITRATION_COUNT'],MAX_DISCOUNT_COUNT_ONCE=ONCHAIN_CONSTANTS['MAX_DISCOUNT_COUNT_ONCE'],MAX_DISCOUNT_RECEIVER_ONCE=ONCHAIN_CONSTANTS['MAX_DISCOUNT_RECEIVER_ONCE'],MAX_DISCOUNT_TOTAL_COUNT=ONCHAIN_CONSTANTS['MAX_DISCOUNT_TOTAL_COUNT'],DEFAULT_LOCK_DURATION=ONCHAIN_CONSTANTS['DEFAULT_LOCK_DURATION'],MAX_REQUIRED_INFO_SIZE=ONCHAIN_CONSTANTS['MAX_REQUIRED_INFO_SIZE'],MAX_WIP_LENGTH=ONCHAIN_CONSTANTS['MAX_WIP_LENGTH'],MAX_WIP_HASH_LENGTH=ONCHAIN_CONSTANTS['MAX_WIP_HASH_LENGTH'],DISCOUNT_TYPE_RATES=ONCHAIN_CONSTANTS['DISCOUNT_TYPE_RATES'],DISCOUNT_TYPE_MINUS=ONCHAIN_CONSTANTS['DISCOUNT_TYPE_MINUS'],MAX_EXTERNAL_DEPOSIT_GUARD_COUNT=ONCHAIN_CONSTANTS['MAX_EXTERNAL_DEPOSIT_GUARD_COUNT'],MAX_EXTERNAL_WITHDRAW_GUARD_COUNT=ONCHAIN_CONSTANTS['MAX_EXTERNAL_WITHDRAW_GUARD_COUNT'],MAX_IM_COUNT=ONCHAIN_CONSTANTS['MAX_IM_COUNT'],MAX_TAGS_COUNT=ONCHAIN_CONSTANTS['MAX_TAGS_COUNT'],MAX_RECIPIENT_COUNT=ONCHAIN_CONSTANTS['MAX_RECIPIENT_COUNT'],MAX_PROPOSITION_COUNT=ONCHAIN_CONSTANTS['MAX_PROPOSITION_COUNT'],MAX_VOTOR_COUNT=ONCHAIN_CONSTANTS['MAX_VOTOR_COUNT'],WITHDRAW_DURATION_TIME=ONCHAIN_CONSTANTS['WITHDRAW_DURATION_TIME'],MAX_ADDRESS_COUNT=ONCHAIN_CONSTANTS['MAX_ADDRESS_COUNT'],MAX_RECORD_LENGTH=ONCHAIN_CONSTANTS['MAX_RECORD_LENGTH'],BRIDGE_MESSAGE_VERSION=ONCHAIN_CONSTANTS['BRIDGE_MESSAGE_VERSION'],BRIDGE_EVM_ADDRESS_LENGTH=ONCHAIN_CONSTANTS['BRIDGE_EVM_ADDRESS_LENGTH'],BRIDGE_CURRENT_VERSION=ONCHAIN_CONSTANTS['BRIDGE_CURRENT_VERSION'],BRIDGE_TRANSFER_STATUS_PENDING=ONCHAIN_CONSTANTS['BRIDGE_TRANSFER_STATUS_PENDING'],BRIDGE_TRANSFER_STATUS_APPROVED=ONCHAIN_CONSTANTS['BRIDGE_TRANSFER_STATUS_APPROVED'],BRIDGE_TRANSFER_STATUS_CLAIMED=ONCHAIN_CONSTANTS['BRIDGE_TRANSFER_STATUS_CLAIMED'],BRIDGE_TRANSFER_STATUS_NOT_FOUND=ONCHAIN_CONSTANTS['BRIDGE_TRANSFER_STATUS_NOT_FOUND'],MAX_GUARD_COUNT_DEMAND=ONCHAIN_CONSTANTS['MAX_GUARD_COUNT_DEMAND'],MAX_GUARD_COUNT_PASSPORT=ONCHAIN_CONSTANTS['MAX_GUARD_COUNT_PASSPORT'],MAX_GUARD_COUNT_REWARD=ONCHAIN_CONSTANTS['MAX_GUARD_COUNT_REWARD'],MAX_SUBMISSION_SIZE_PASSPORT=ONCHAIN_CONSTANTS['MAX_SUBMISSION_SIZE_PASSPORT'],MAX_RECORD_COUNT_REWARD=ONCHAIN_CONSTANTS['MAX_RECORD_COUNT_REWARD'],MAX_RECORD_COUNT_REGISTRAR=ONCHAIN_CONSTANTS['MAX_RECORD_COUNT_REGISTRAR'],WOWOK_WTS_PROOF_TYPE=ONCHAIN_CONSTANTS['WOWOK_WTS_PROOF_TYPE'],MAX_PROOF_SIZE=ONCHAIN_CONSTANTS['MAX_PROOF_SIZE'],MAX_SERVER_PUBKEY_SIZE=ONCHAIN_CONSTANTS['MAX_SERVER_PUBKEY_SIZE'],MAX_SERVER_SIGNATURE_SIZE=ONCHAIN_CONSTANTS['MAX_SERVER_SIGNATURE_SIZE'],resolve_submission_names=async a=>{for(const b of a['guard']){const c=await LocalMark['Instance']()['get_address'](b['object']);if(!c||!a39a(c))a39g('invalid\x20address','guard\x20object:\x20'+b['object']);b['object']=c;}for(const d of a['submission'])if(d['guard']){const e=await LocalMark['Instance']()['get_address'](d['guard']);if(e)d['guard']=e;}},verify_guard=async(a,b)=>{if(b['guard']['length']>MAX_GUARD_COUNT_PASSPORT)a39g('invalid\x20parameter','guards\x20invalid:\x20guard\x20count\x20exceeds\x20maximum\x20limit\x20'+MAX_GUARD_COUNT_PASSPORT);await resolve_submission_names(b);const c=new a39c(),d=newPassport(c);for(const f of b['guard'])await guardAdd(c,d,f['object'],b['submission']['find'](g=>g['guard']===f['object'])?.['submission']??[],f['impack']);verify(c,d),freeze(c,d);let e=await Account['Instance']()['sign_and_commit'](c,await a39h(a),a['network']);if(!e)a39g('fail','sign\x20and\x20commit\x20failed');if(e?.['digest']&&!e?.['objectChanges']){const g=await Config['Instance']()['network_get'](a['network']);e=await new a39b({'url':a39d(g),'network':g})['getTransactionBlock']({'digest':e?.['digest'],'options':{'showObjectChanges':!![]}});}return e;},get_guardSubmissions=async(a,b)=>{if(b['length']===0x0)a39g('invalid\x20parameter','guards\x20invalid:\x20guards\x20empty');b=[...new Set(b)];if(b['length']>MAX_GUARD_COUNT_PASSPORT)a39g('invalid\x20parameter','guards\x20invalid:\x20guard\x20count\x20exceeds\x20maximum\x20limit\x20\x20'+MAX_GUARD_COUNT_PASSPORT+'\x20once');const c=await a39i({'objects':[...b],'no_cache':a['no_cache'],'network':a['network']});if(!c['objects']||c['objects']['length']===0x0)a39g('invalid\x20parameter','Guard\x20objects\x20not\x20found:\x20'+b['join'](',\x20'));const d=[],e=new Map();c['objects']['forEach'](m=>{if(m['type']!=='Guard')a39g('invalid\x20parameter','guards\x20invalid:\x20guard\x20\x27'+m['object']+'\x27\x20is\x20not\x20a\x20guard\x20object');const n=m;n['relies']?.['forEach'](o=>{if(!d['includes'](o))d['push'](o);}),(n['rep_quote']instanceof Map?n['rep_quote']:new Map(Object['entries'](n['rep_quote']||{})))['forEach']((o,p)=>{if(e['has'](p)){const q=e['get'](p)||[];o['forEach'](s=>{if(!q['includes'](s))q['push'](s);}),e['set'](p,q);}else e['set'](p,o);});});const f=await a39i({'objects':[...e['keys']()],'no_cache':a['no_cache'],'network':a['network']}),g=[];f['objects']['forEach'](m=>{if(m['type']!=='Repository')a39g('invalid\x20parameter','rep\x20invalid:\x20rep\x20\x27'+m['object']+'\x27\x20is\x20not\x20a\x20guard\x20object');const n=m;n['policies']['forEach'](o=>{if((e['get'](n['object'])||[])['includes'](o['name'])&&o['quote_guard']&&!g['includes'](o['quote_guard']))g['push'](o['quote_guard']);});});const h=[...new Set([...g,...c['objects']['map'](m=>m['object'])])],i=new Set(h),j=[...d['filter'](m=>!i['has'](m))['map'](m=>({'object':m,'impack':![]})),...h['map'](m=>({'object':m,'impack':!![]}))];if(j['length']>MAX_GUARD_COUNT_PASSPORT)a39g('invalid\x20parameter','guards\x20invalid:\x20guard\x20count(include\x20relies\x20guards)\x20exceeds\x20maximum\x20limit\x20'+MAX_GUARD_COUNT_PASSPORT);const k=await a39i({'objects':[...d,...g],'no_cache':a['no_cache'],'network':a['network']}),l=[];return k['objects']['forEach'](m=>{const n=m,o=[];n['table']?.['forEach'](p=>{if(p['b_submission'])o['push'](p);});if(o['length']>0x0&&l['find'](p=>p['guard']===n['object'])===void 0x0)l['push']({'guard':n['object'],'submission':o});}),c['objects']['forEach'](m=>{const n=m,o=[];n['table']?.['forEach'](p=>{if(p['b_submission'])o['push'](p);});if(o['length']>0x0&&l['find'](p=>p['guard']===n['object'])===void 0x0)l['push']({'guard':n['object'],'submission':o});}),{'type':'submission','guard':j,'submission':l};};function passportFn(a){return'0x2::passport::'+a;}function newPassport(a){return a['moveCall']({'target':passportFn('new'),'arguments':[a['object']['clock']()]});}function freeze(a,b){a['moveCall']({'target':passportFn('freezen'),'arguments':[a39e(a,b)]});}function destroy(a,b){a['moveCall']({'target':passportFn('destroy'),'arguments':[a39e(a,b)]});}const guardAdd=async(a,b,c,d,e)=>{if(d['length']>0x100)a39g('guard\x20table\x20item\x20length\x20exceeded','Submission\x20size\x20exceeds\x20maximum\x20limit\x20256');const f=a['pure']['vector']('u8',d['map'](j=>j['identifier'])),g=[];for(let j=0x0;j<d['length'];j++){if(!d[j]['value'])a39g('invalid\x20value','Value\x20is\x20undefined\x20for\x20identifier\x20'+d[j]['identifier']);const k=await a39j(a39f(d[j]['value_type']),d[j]['value']);g['push'](Array['from'](k));}const h=a['pure']['vector']('vector<u8>',g);a['moveCall']({'target':passportFn('guard_add'),'arguments':[a39e(a,b),a39e(a,c),f,h,a['pure']['bool'](e)]});};function guardClear(a,b){a['moveCall']({'target':passportFn('guard_clear'),'arguments':[a39e(a,b)]});}function verify(a,b){return a['moveCall']({'target':passportFn('verify'),'arguments':[a39e(a,b)]});}export{MAX_PROPOSITION_COUNT as $,MAX_DISCOUNT_RECEIVER_ONCE as A,MAX_GUARD_COUNT_REWARD as B,MAX_AGENT_COUNT as C,MAX_CONTEXT_REPOSITORY_COUNT as D,MAX_CONSENSUS_REPOSITORIES_COUNT as E,MAX_EXTERNAL_WITHDRAW_GUARD_COUNT as F,MAX_NODE_COUNT as G,MAX_IM_COUNT as H,MAX_FORWARD_COUNT as I,MAX_PERM_FOR_ENTITY as J,MAX_NODE_COUNT_ONCHAIN as K,MAX_FORWARD_ORDER_COUNT as L,MAX_DISPUTE_COUNT as M,MAX_ENTITY_COUNT as N,MAX_DATA_SIZE as O,MAX_EXTERNAL_DEPOSIT_GUARD_COUNT as P,MAX_PROOF_SIZE as Q,MAX_GUARD_COUNT_DEMAND as R,MAX_ADMIN_COUNT as S,MAX_ARBITRATION_COUNT as T,MAX_NAMED_OPERATOR_ADDRESS_COUNT as U,MAX_ID_COUNT_ONCE as V,MAX_NAMED_OPERATOR_COUNT as W,MAX_POLICY_DESCRIPTION_LEN as X,MAX_POLICY_COUNT as Y,MAX_POLICY_GUARD_COUNT as Z,BRIDGE_TRANSFER_STATUS_PENDING as _,ONCHAIN_CONSTANTS as _t,guardClear as a,MAX_REQUIRED_INFO_SIZE as at,DISCOUNT_TYPE_RATES as b,WOWOK_WTS_PROOF_TYPE as bt,resolve_submission_names as c,MAX_SERVER_PUBKEY_SIZE as ct,BRIDGE_CURRENT_VERSION as d,MAX_SUBMISSION_SIZE_PASSPORT as dt,MAX_RECIPIENT_COUNT as et,BRIDGE_EVM_ADDRESS_LENGTH as f,MAX_TAGS_COUNT as ft,BRIDGE_TRANSFER_STATUS_NOT_FOUND as g,MAX_WIP_LENGTH as gt,BRIDGE_TRANSFER_STATUS_CLAIMED as h,MAX_WIP_HASH_LENGTH as ht,guardAdd as i,MAX_REPOSITORY_COUNT as it,MAX_DISCOUNT_TOTAL_COUNT as j,MAX_DISCOUNT_COUNT_ONCE as k,verify as l,MAX_SERVER_SIGNATURE_SIZE as lt,BRIDGE_TRANSFER_STATUS_APPROVED as m,MAX_VOTOR_COUNT as mt,freeze as n,MAX_RECORD_COUNT_REWARD as nt,newPassport as o,MAX_REWARD_COUNT as ot,BRIDGE_MESSAGE_VERSION as p,MAX_VOTING_GUARD_COUNT as pt,MAX_NODE_PAIR_COUNT as q,get_guardSubmissions as r,MAX_RECORD_LENGTH as rt,passportFn as s,MAX_SALE_COUNT as st,destroy as t,MAX_RECORD_COUNT_REGISTRAR as tt,verify_guard as u,MAX_SHARING_COUNT as ut,DEFAULT_LOCK_DURATION as v,USER_DEFINED_PERM_INDEX_START as vt,MAX_ALLOCATOR_COUNT as w,MAX_ADDRESS_COUNT as x,DISCOUNT_TYPE_MINUS as y,WITHDRAW_DURATION_TIME as yt,MAX_GUARD_COUNT_PASSPORT as z};
1
+ import{a as a39a}from'./wow-types-DcqbnAaK.mjs';import{t as a39b}from'./client-B2NwgKQ6.mjs';import{t as a39c}from'./Transaction-CzqJDezj.mjs';import{n as a39d}from'./network-Bgq9iuE4.mjs';import{dt as a39e,it as a39f}from'./common-BDlb-AoC.mjs';import{o as a39g}from'./exception-C6IYkBi6.mjs';import{Config}from'./w/local/config.mjs';import{LocalMark}from'./w/local/local.mjs';import{Account}from'./w/local/account.mjs';import{G as a39h,L as a39i,lt as a39j}from'./object-Dma1VY-1.mjs';const ONCHAIN_CONSTANTS={'MAX_NODE_COUNT_ONCHAIN':0xc8,'MAX_NODE_COUNT_SDK':0x64,'MAX_FORWARD_COUNT':0x14,'MAX_FORWARD_ORDER_COUNT':0x14,'MAX_NODE_PAIR_COUNT':0x28,'MAX_CONSENSUS_REPOSITORIES_COUNT':0xc8,'USER_DEFINED_PERM_INDEX_START':0x3e8,'MAX_PERM_FOR_ENTITY':0x3e8,'MAX_ENTITY_COUNT':0x3e8,'MAX_ADMIN_COUNT':0x1f4,'MAX_AGENT_COUNT':0xa,'MAX_DISPUTE_COUNT':0xa,'MAX_ALLOCATOR_COUNT':0x64,'MAX_SHARING_COUNT':0x64,'MAX_VOTING_GUARD_COUNT':0x32,'MAX_POLICY_COUNT':0x32,'MAX_POLICY_DESCRIPTION_LEN':0x1f4,'MAX_POLICY_GUARD_COUNT':0xa,'MAX_DATA_SIZE':0xa000,'MAX_ID_COUNT_ONCE':0x64,'MAX_REWARD_COUNT':0x14,'MAX_CONTEXT_REPOSITORY_COUNT':0x1e,'MAX_NAMED_OPERATOR_COUNT':0x3c,'MAX_NAMED_OPERATOR_ADDRESS_COUNT':0x50,'MAX_SALE_COUNT':0x32,'MAX_REPOSITORY_COUNT':0x64,'MAX_ARBITRATION_COUNT':0x14,'MAX_DISCOUNT_COUNT_ONCE':0x3e8,'MAX_DISCOUNT_RECEIVER_ONCE':0x3e8,'MAX_DISCOUNT_TOTAL_COUNT':0x4e20,'DEFAULT_LOCK_DURATION':0x9a7ec800,'MAX_REQUIRED_INFO_SIZE':0x14,'MAX_WIP_LENGTH':0x400,'MAX_WIP_HASH_LENGTH':0x40,'DISCOUNT_TYPE_RATES':0x0,'DISCOUNT_TYPE_MINUS':0x1,'MAX_EXTERNAL_DEPOSIT_GUARD_COUNT':0x64,'MAX_EXTERNAL_WITHDRAW_GUARD_COUNT':0xc8,'MAX_IM_COUNT':0xc8,'MAX_TAGS_COUNT':0x64,'MAX_RECIPIENT_COUNT':0xc8,'MAX_PROPOSITION_COUNT':0x14,'MAX_VOTOR_COUNT':0x208,'WITHDRAW_DURATION_TIME':0x9a7ec800,'MAX_ADDRESS_COUNT':0x1450,'MAX_RECORD_LENGTH':0xfa0,'BRIDGE_MESSAGE_VERSION':0x1,'BRIDGE_EVM_ADDRESS_LENGTH':0x14,'BRIDGE_CURRENT_VERSION':0x1,'BRIDGE_TRANSFER_STATUS_PENDING':0x0,'BRIDGE_TRANSFER_STATUS_APPROVED':0x1,'BRIDGE_TRANSFER_STATUS_CLAIMED':0x2,'BRIDGE_TRANSFER_STATUS_NOT_FOUND':0x3,'MAX_GUARD_COUNT_DEMAND':0x14,'MAX_GUARD_COUNT_PASSPORT':0x14,'MAX_GUARD_COUNT_REWARD':0xc8,'MAX_SUBMISSION_SIZE_PASSPORT':0x100,'MAX_RECORD_COUNT_REWARD':0x1450,'MAX_RECORD_COUNT_REGISTRAR':0x3e8,'WOWOK_WTS_PROOF_TYPE':0x1,'MAX_PROOF_SIZE':0x2800,'MAX_SERVER_PUBKEY_SIZE':0x800,'MAX_SERVER_SIGNATURE_SIZE':0x9e20},MAX_NODE_COUNT=ONCHAIN_CONSTANTS['MAX_NODE_COUNT_SDK'],MAX_NODE_COUNT_ONCHAIN=ONCHAIN_CONSTANTS['MAX_NODE_COUNT_ONCHAIN'],MAX_FORWARD_COUNT=ONCHAIN_CONSTANTS['MAX_FORWARD_COUNT'],MAX_FORWARD_ORDER_COUNT=ONCHAIN_CONSTANTS['MAX_FORWARD_ORDER_COUNT'],MAX_NODE_PAIR_COUNT=ONCHAIN_CONSTANTS['MAX_NODE_PAIR_COUNT'],MAX_CONSENSUS_REPOSITORIES_COUNT=ONCHAIN_CONSTANTS['MAX_CONSENSUS_REPOSITORIES_COUNT'],USER_DEFINED_PERM_INDEX_START=ONCHAIN_CONSTANTS['USER_DEFINED_PERM_INDEX_START'],MAX_PERM_FOR_ENTITY=ONCHAIN_CONSTANTS['MAX_PERM_FOR_ENTITY'],MAX_ENTITY_COUNT=ONCHAIN_CONSTANTS['MAX_ENTITY_COUNT'],MAX_ADMIN_COUNT=ONCHAIN_CONSTANTS['MAX_ADMIN_COUNT'],MAX_AGENT_COUNT=ONCHAIN_CONSTANTS['MAX_AGENT_COUNT'],MAX_DISPUTE_COUNT=ONCHAIN_CONSTANTS['MAX_DISPUTE_COUNT'],MAX_ALLOCATOR_COUNT=ONCHAIN_CONSTANTS['MAX_ALLOCATOR_COUNT'],MAX_SHARING_COUNT=ONCHAIN_CONSTANTS['MAX_SHARING_COUNT'],MAX_VOTING_GUARD_COUNT=ONCHAIN_CONSTANTS['MAX_VOTING_GUARD_COUNT'],MAX_POLICY_COUNT=ONCHAIN_CONSTANTS['MAX_POLICY_COUNT'],MAX_POLICY_DESCRIPTION_LEN=ONCHAIN_CONSTANTS['MAX_POLICY_DESCRIPTION_LEN'],MAX_POLICY_GUARD_COUNT=ONCHAIN_CONSTANTS['MAX_POLICY_GUARD_COUNT'],MAX_DATA_SIZE=ONCHAIN_CONSTANTS['MAX_DATA_SIZE'],MAX_ID_COUNT_ONCE=ONCHAIN_CONSTANTS['MAX_ID_COUNT_ONCE'],MAX_REWARD_COUNT=ONCHAIN_CONSTANTS['MAX_REWARD_COUNT'],MAX_CONTEXT_REPOSITORY_COUNT=ONCHAIN_CONSTANTS['MAX_CONTEXT_REPOSITORY_COUNT'],MAX_NAMED_OPERATOR_COUNT=ONCHAIN_CONSTANTS['MAX_NAMED_OPERATOR_COUNT'],MAX_NAMED_OPERATOR_ADDRESS_COUNT=ONCHAIN_CONSTANTS['MAX_NAMED_OPERATOR_ADDRESS_COUNT'],MAX_SALE_COUNT=ONCHAIN_CONSTANTS['MAX_SALE_COUNT'],MAX_REPOSITORY_COUNT=ONCHAIN_CONSTANTS['MAX_REPOSITORY_COUNT'],MAX_ARBITRATION_COUNT=ONCHAIN_CONSTANTS['MAX_ARBITRATION_COUNT'],MAX_DISCOUNT_COUNT_ONCE=ONCHAIN_CONSTANTS['MAX_DISCOUNT_COUNT_ONCE'],MAX_DISCOUNT_RECEIVER_ONCE=ONCHAIN_CONSTANTS['MAX_DISCOUNT_RECEIVER_ONCE'],MAX_DISCOUNT_TOTAL_COUNT=ONCHAIN_CONSTANTS['MAX_DISCOUNT_TOTAL_COUNT'],DEFAULT_LOCK_DURATION=ONCHAIN_CONSTANTS['DEFAULT_LOCK_DURATION'],MAX_REQUIRED_INFO_SIZE=ONCHAIN_CONSTANTS['MAX_REQUIRED_INFO_SIZE'],MAX_WIP_LENGTH=ONCHAIN_CONSTANTS['MAX_WIP_LENGTH'],MAX_WIP_HASH_LENGTH=ONCHAIN_CONSTANTS['MAX_WIP_HASH_LENGTH'],DISCOUNT_TYPE_RATES=ONCHAIN_CONSTANTS['DISCOUNT_TYPE_RATES'],DISCOUNT_TYPE_MINUS=ONCHAIN_CONSTANTS['DISCOUNT_TYPE_MINUS'],MAX_EXTERNAL_DEPOSIT_GUARD_COUNT=ONCHAIN_CONSTANTS['MAX_EXTERNAL_DEPOSIT_GUARD_COUNT'],MAX_EXTERNAL_WITHDRAW_GUARD_COUNT=ONCHAIN_CONSTANTS['MAX_EXTERNAL_WITHDRAW_GUARD_COUNT'],MAX_IM_COUNT=ONCHAIN_CONSTANTS['MAX_IM_COUNT'],MAX_TAGS_COUNT=ONCHAIN_CONSTANTS['MAX_TAGS_COUNT'],MAX_RECIPIENT_COUNT=ONCHAIN_CONSTANTS['MAX_RECIPIENT_COUNT'],MAX_PROPOSITION_COUNT=ONCHAIN_CONSTANTS['MAX_PROPOSITION_COUNT'],MAX_VOTOR_COUNT=ONCHAIN_CONSTANTS['MAX_VOTOR_COUNT'],WITHDRAW_DURATION_TIME=ONCHAIN_CONSTANTS['WITHDRAW_DURATION_TIME'],MAX_ADDRESS_COUNT=ONCHAIN_CONSTANTS['MAX_ADDRESS_COUNT'],MAX_RECORD_LENGTH=ONCHAIN_CONSTANTS['MAX_RECORD_LENGTH'],BRIDGE_MESSAGE_VERSION=ONCHAIN_CONSTANTS['BRIDGE_MESSAGE_VERSION'],BRIDGE_EVM_ADDRESS_LENGTH=ONCHAIN_CONSTANTS['BRIDGE_EVM_ADDRESS_LENGTH'],BRIDGE_CURRENT_VERSION=ONCHAIN_CONSTANTS['BRIDGE_CURRENT_VERSION'],BRIDGE_TRANSFER_STATUS_PENDING=ONCHAIN_CONSTANTS['BRIDGE_TRANSFER_STATUS_PENDING'],BRIDGE_TRANSFER_STATUS_APPROVED=ONCHAIN_CONSTANTS['BRIDGE_TRANSFER_STATUS_APPROVED'],BRIDGE_TRANSFER_STATUS_CLAIMED=ONCHAIN_CONSTANTS['BRIDGE_TRANSFER_STATUS_CLAIMED'],BRIDGE_TRANSFER_STATUS_NOT_FOUND=ONCHAIN_CONSTANTS['BRIDGE_TRANSFER_STATUS_NOT_FOUND'],MAX_GUARD_COUNT_DEMAND=ONCHAIN_CONSTANTS['MAX_GUARD_COUNT_DEMAND'],MAX_GUARD_COUNT_PASSPORT=ONCHAIN_CONSTANTS['MAX_GUARD_COUNT_PASSPORT'],MAX_GUARD_COUNT_REWARD=ONCHAIN_CONSTANTS['MAX_GUARD_COUNT_REWARD'],MAX_SUBMISSION_SIZE_PASSPORT=ONCHAIN_CONSTANTS['MAX_SUBMISSION_SIZE_PASSPORT'],MAX_RECORD_COUNT_REWARD=ONCHAIN_CONSTANTS['MAX_RECORD_COUNT_REWARD'],MAX_RECORD_COUNT_REGISTRAR=ONCHAIN_CONSTANTS['MAX_RECORD_COUNT_REGISTRAR'],WOWOK_WTS_PROOF_TYPE=ONCHAIN_CONSTANTS['WOWOK_WTS_PROOF_TYPE'],MAX_PROOF_SIZE=ONCHAIN_CONSTANTS['MAX_PROOF_SIZE'],MAX_SERVER_PUBKEY_SIZE=ONCHAIN_CONSTANTS['MAX_SERVER_PUBKEY_SIZE'],MAX_SERVER_SIGNATURE_SIZE=ONCHAIN_CONSTANTS['MAX_SERVER_SIGNATURE_SIZE'],resolve_submission_names=async a=>{for(const b of a['guard']){const c=await LocalMark['Instance']()['get_address'](b['object']);if(!c||!a39a(c))a39g('invalid\x20address','guard\x20object:\x20'+b['object']);b['object']=c;}for(const d of a['submission'])if(d['guard']){const e=await LocalMark['Instance']()['get_address'](d['guard']);if(e)d['guard']=e;}},verify_guard=async(a,b)=>{if(b['guard']['length']>MAX_GUARD_COUNT_PASSPORT)a39g('invalid\x20parameter','guards\x20invalid:\x20guard\x20count\x20exceeds\x20maximum\x20limit\x20'+MAX_GUARD_COUNT_PASSPORT);await resolve_submission_names(b);const c=new a39c(),d=newPassport(c);for(const f of b['guard'])await guardAdd(c,d,f['object'],b['submission']['find'](g=>g['guard']===f['object'])?.['submission']??[],f['impack']);verify(c,d),freeze(c,d);let e=await Account['Instance']()['sign_and_commit'](c,await a39h(a),a['network']);if(!e)a39g('fail','sign\x20and\x20commit\x20failed');if(e?.['digest']&&!e?.['objectChanges']){const g=await Config['Instance']()['network_get'](a['network']);e=await new a39b({'url':a39d(g),'network':g})['getTransactionBlock']({'digest':e?.['digest'],'options':{'showObjectChanges':!![]}});}return e;},get_guardSubmissions=async(a,b)=>{if(b['length']===0x0)a39g('invalid\x20parameter','guards\x20invalid:\x20guards\x20empty');b=[...new Set(b)];if(b['length']>MAX_GUARD_COUNT_PASSPORT)a39g('invalid\x20parameter','guards\x20invalid:\x20guard\x20count\x20exceeds\x20maximum\x20limit\x20\x20'+MAX_GUARD_COUNT_PASSPORT+'\x20once');const c=await a39i({'objects':[...b],'no_cache':a['no_cache'],'network':a['network']});if(!c['objects']||c['objects']['length']===0x0)a39g('invalid\x20parameter','Guard\x20objects\x20not\x20found:\x20'+b['join'](',\x20'));const d=[],e=new Map();c['objects']['forEach'](m=>{if(m['type']!=='Guard')a39g('invalid\x20parameter','guards\x20invalid:\x20guard\x20\x27'+m['object']+'\x27\x20is\x20not\x20a\x20guard\x20object');const n=m;n['relies']?.['forEach'](o=>{if(!d['includes'](o))d['push'](o);}),(n['rep_quote']instanceof Map?n['rep_quote']:new Map(Object['entries'](n['rep_quote']||{})))['forEach']((o,p)=>{if(e['has'](p)){const q=e['get'](p)||[];o['forEach'](s=>{if(!q['includes'](s))q['push'](s);}),e['set'](p,q);}else e['set'](p,o);});});const f=await a39i({'objects':[...e['keys']()],'no_cache':a['no_cache'],'network':a['network']}),g=[];f['objects']['forEach'](m=>{if(m['type']!=='Repository')a39g('invalid\x20parameter','rep\x20invalid:\x20rep\x20\x27'+m['object']+'\x27\x20is\x20not\x20a\x20guard\x20object');const n=m;n['policies']['forEach'](o=>{if((e['get'](n['object'])||[])['includes'](o['name'])&&o['quote_guard']&&!g['includes'](o['quote_guard']))g['push'](o['quote_guard']);});});const h=[...new Set([...g,...c['objects']['map'](m=>m['object'])])],i=new Set(h),j=[...d['filter'](m=>!i['has'](m))['map'](m=>({'object':m,'impack':![]})),...h['map'](m=>({'object':m,'impack':!![]}))];if(j['length']>MAX_GUARD_COUNT_PASSPORT)a39g('invalid\x20parameter','guards\x20invalid:\x20guard\x20count(include\x20relies\x20guards)\x20exceeds\x20maximum\x20limit\x20'+MAX_GUARD_COUNT_PASSPORT);const k=await a39i({'objects':[...d,...g],'no_cache':a['no_cache'],'network':a['network']}),l=[];return k['objects']['forEach'](m=>{const n=m,o=[];n['table']?.['forEach'](p=>{if(p['b_submission'])o['push'](p);});if(o['length']>0x0&&l['find'](p=>p['guard']===n['object'])===void 0x0)l['push']({'guard':n['object'],'submission':o});}),c['objects']['forEach'](m=>{const n=m,o=[];n['table']?.['forEach'](p=>{if(p['b_submission'])o['push'](p);});if(o['length']>0x0&&l['find'](p=>p['guard']===n['object'])===void 0x0)l['push']({'guard':n['object'],'submission':o});}),{'type':'submission','guard':j,'submission':l};};function passportFn(a){return'0x2::passport::'+a;}function newPassport(a){return a['moveCall']({'target':passportFn('new'),'arguments':[a['object']['clock']()]});}function freeze(a,b){a['moveCall']({'target':passportFn('freezen'),'arguments':[a39e(a,b)]});}function destroy(a,b){a['moveCall']({'target':passportFn('destroy'),'arguments':[a39e(a,b)]});}const guardAdd=async(a,b,c,d,e)=>{if(d['length']>0x100)a39g('guard\x20table\x20item\x20length\x20exceeded','Submission\x20size\x20exceeds\x20maximum\x20limit\x20256');const f=a['pure']['vector']('u8',d['map'](j=>j['identifier'])),g=[];for(let j=0x0;j<d['length'];j++){if(!d[j]['value'])a39g('invalid\x20value','Value\x20is\x20undefined\x20for\x20identifier\x20'+d[j]['identifier']);const k=await a39j(a39f(d[j]['value_type']),d[j]['value']);g['push'](Array['from'](k));}const h=a['pure']['vector']('vector<u8>',g);a['moveCall']({'target':passportFn('guard_add'),'arguments':[a39e(a,b),a39e(a,c),f,h,a['pure']['bool'](e)]});};function guardClear(a,b){a['moveCall']({'target':passportFn('guard_clear'),'arguments':[a39e(a,b)]});}function verify(a,b){return a['moveCall']({'target':passportFn('verify'),'arguments':[a39e(a,b)]});}export{MAX_PROPOSITION_COUNT as $,MAX_DISCOUNT_RECEIVER_ONCE as A,MAX_GUARD_COUNT_REWARD as B,MAX_AGENT_COUNT as C,MAX_CONTEXT_REPOSITORY_COUNT as D,MAX_CONSENSUS_REPOSITORIES_COUNT as E,MAX_EXTERNAL_WITHDRAW_GUARD_COUNT as F,MAX_NODE_COUNT as G,MAX_IM_COUNT as H,MAX_FORWARD_COUNT as I,MAX_PERM_FOR_ENTITY as J,MAX_NODE_COUNT_ONCHAIN as K,MAX_FORWARD_ORDER_COUNT as L,MAX_DISPUTE_COUNT as M,MAX_ENTITY_COUNT as N,MAX_DATA_SIZE as O,MAX_EXTERNAL_DEPOSIT_GUARD_COUNT as P,MAX_PROOF_SIZE as Q,MAX_GUARD_COUNT_DEMAND as R,MAX_ADMIN_COUNT as S,MAX_ARBITRATION_COUNT as T,MAX_NAMED_OPERATOR_ADDRESS_COUNT as U,MAX_ID_COUNT_ONCE as V,MAX_NAMED_OPERATOR_COUNT as W,MAX_POLICY_DESCRIPTION_LEN as X,MAX_POLICY_COUNT as Y,MAX_POLICY_GUARD_COUNT as Z,BRIDGE_TRANSFER_STATUS_PENDING as _,ONCHAIN_CONSTANTS as _t,guardClear as a,MAX_REQUIRED_INFO_SIZE as at,DISCOUNT_TYPE_RATES as b,WOWOK_WTS_PROOF_TYPE as bt,resolve_submission_names as c,MAX_SERVER_PUBKEY_SIZE as ct,BRIDGE_CURRENT_VERSION as d,MAX_SUBMISSION_SIZE_PASSPORT as dt,MAX_RECIPIENT_COUNT as et,BRIDGE_EVM_ADDRESS_LENGTH as f,MAX_TAGS_COUNT as ft,BRIDGE_TRANSFER_STATUS_NOT_FOUND as g,MAX_WIP_LENGTH as gt,BRIDGE_TRANSFER_STATUS_CLAIMED as h,MAX_WIP_HASH_LENGTH as ht,guardAdd as i,MAX_REPOSITORY_COUNT as it,MAX_DISCOUNT_TOTAL_COUNT as j,MAX_DISCOUNT_COUNT_ONCE as k,verify as l,MAX_SERVER_SIGNATURE_SIZE as lt,BRIDGE_TRANSFER_STATUS_APPROVED as m,MAX_VOTOR_COUNT as mt,freeze as n,MAX_RECORD_COUNT_REWARD as nt,newPassport as o,MAX_REWARD_COUNT as ot,BRIDGE_MESSAGE_VERSION as p,MAX_VOTING_GUARD_COUNT as pt,MAX_NODE_PAIR_COUNT as q,get_guardSubmissions as r,MAX_RECORD_LENGTH as rt,passportFn as s,MAX_SALE_COUNT as st,destroy as t,MAX_RECORD_COUNT_REGISTRAR as tt,verify_guard as u,MAX_SHARING_COUNT as ut,DEFAULT_LOCK_DURATION as v,USER_DEFINED_PERM_INDEX_START as vt,MAX_ALLOCATOR_COUNT as w,MAX_ADDRESS_COUNT as x,DISCOUNT_TYPE_MINUS as y,WITHDRAW_DURATION_TIME as yt,MAX_GUARD_COUNT_PASSPORT as z};
@@ -1 +1 @@
1
- import{t as a40a}from'./rolldown-runtime-D7D4PA-g.mjs';import{B as a40b,g as a40c}from'./common-BDlb-AoC.mjs';import{o as a40d}from'./exception-C6IYkBi6.mjs';import{isValidAddress}from'./w/local/local.mjs';import{Q as a40e,ct as a40f,lt as a40g}from'./passport-DRaRa4Fd.mjs';import{t as a40h}from'./base-Bem5gVfE.mjs';var proof_exports=a40a({'CallProof':()=>CallProof,'create':()=>create,'gen_proof':()=>gen_proof,'proofFn':()=>proofFn}),CallProof=class extends a40h{constructor(a){super(),this['data']=a;}async['call'](a){return await this['prepare'](a),await this['exec'](a);}async['operate'](a,b,c){await this['new_with_mark'](a,b,'Proof',create(b,this['data']?.['description'],this['data']?.['proof'],this['data']?.['server_pubkey'],this['data']?.['server_signature'],this['data']?.['proof_type'],this['data']?.['item_count'],this['data']?.['about_address']),this['data']?.['namedNew']);}};function proofFn(a){return'0x2::proof::'+a;}const gen_proof=async(a,b,c,d,e,f,g,h)=>{return await new CallProof({'proof':b,'server_pubkey':c,'server_signature':d,'proof_type':e,'description':f,'item_count':g,'about_address':h})['call'](a);};function create(a,b,c,d,e,f,g,h){if(!a40b(b))a40d('invalid\x20description','Description\x20length\x20exceeds\x20'+a40c);if(c['length']>a40e)a40d('invalid\x20parameter','Proof\x20length\x20exceeds\x20'+a40e);if(d['length']>a40f)a40d('invalid\x20parameter','Server\x20pubkey\x20length\x20exceeds\x20'+a40f);if(e['length']>a40g)a40d('invalid\x20parameter','Server\x20signature\x20length\x20exceeds\x20'+a40g);if(h&&!isValidAddress(h))a40d('invalid\x20address','About\x20address\x20'+h+'\x20is\x20not\x20valid');return a['moveCall']({'target':proofFn('create_wowok_proof'),'arguments':[a['pure']['string'](c),a['pure']['option']('u64',g),a['pure']['string'](b),a['pure']['string'](d),a['pure']['string'](e),a['pure']['option']('address',h??null),a['pure']['u64'](f),a['object']['clock']()]});}export{gen_proof as n,proof_exports as r,CallProof as t};
1
+ import{t as a40a}from'./rolldown-runtime-D7D4PA-g.mjs';import{B as a40b,g as a40c}from'./common-BDlb-AoC.mjs';import{o as a40d}from'./exception-C6IYkBi6.mjs';import{isValidAddress}from'./w/local/local.mjs';import{Q as a40e,ct as a40f,lt as a40g}from'./passport-CQFR2dfo.mjs';import{t as a40h}from'./base-BzTUCV2r.mjs';var proof_exports=a40a({'CallProof':()=>CallProof,'create':()=>create,'gen_proof':()=>gen_proof,'proofFn':()=>proofFn}),CallProof=class extends a40h{constructor(a){super(),this['data']=a;}async['call'](a){return await this['prepare'](a),await this['exec'](a);}async['operate'](a,b,c){await this['new_with_mark'](a,b,'Proof',create(b,this['data']?.['description'],this['data']?.['proof'],this['data']?.['server_pubkey'],this['data']?.['server_signature'],this['data']?.['proof_type'],this['data']?.['item_count'],this['data']?.['about_address']),this['data']?.['namedNew']);}};function proofFn(a){return'0x2::proof::'+a;}const gen_proof=async(a,b,c,d,e,f,g,h)=>{return await new CallProof({'proof':b,'server_pubkey':c,'server_signature':d,'proof_type':e,'description':f,'item_count':g,'about_address':h})['call'](a);};function create(a,b,c,d,e,f,g,h){if(!a40b(b))a40d('invalid\x20description','Description\x20length\x20exceeds\x20'+a40c);if(c['length']>a40e)a40d('invalid\x20parameter','Proof\x20length\x20exceeds\x20'+a40e);if(d['length']>a40f)a40d('invalid\x20parameter','Server\x20pubkey\x20length\x20exceeds\x20'+a40f);if(e['length']>a40g)a40d('invalid\x20parameter','Server\x20signature\x20length\x20exceeds\x20'+a40g);if(h&&!isValidAddress(h))a40d('invalid\x20address','About\x20address\x20'+h+'\x20is\x20not\x20valid');return a['moveCall']({'target':proofFn('create_wowok_proof'),'arguments':[a['pure']['string'](c),a['pure']['option']('u64',g),a['pure']['string'](b),a['pure']['string'](d),a['pure']['string'](e),a['pure']['option']('address',h??null),a['pure']['u64'](f),a['object']['clock']()]});}export{gen_proof as n,proof_exports as r,CallProof as t};
@@ -1 +1 @@
1
- import{t as a47a}from'./client-DbLjWV0v.mjs';import{n as a47b}from'./network-Bgq9iuE4.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-BDlb-AoC.mjs';import{o as a47l}from'./exception-C6IYkBi6.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{B as a47m,L as a47n,Q as a47o,X as a47p}from'./object-BaLfg7ui.mjs';import{query_permissions}from'./w/call/permission.mjs';const isValidObjectAddr=a=>typeof a==='string'&&a['length']>0x2&&a!=='0x0',MAX_NODE_LIST_PAGES=0x5,query_serviceContext=async a=>{const b=await Config['Instance']()['network_get'](a['network']),c=a47o(b)?'graphql':'json-rpc';let d;if(typeof a['service']==='string'){const j=(await a47n({'objects':[a['service']],'no_cache':a['no_cache'],'network':b}))['objects']?.['find'](k=>k['type']==='Service');if(!j)a47l('fail','query_serviceContext:\x20service\x20'+a['service']+'\x20not\x20found');d=j;}else d=a['service'];const e=new Map(),f=(k,l)=>{if(isValidObjectAddr(l))e['set'](k,l);};f('machine',d['machine']),f('buy_guard',d['buy_guard']),f('permission',d['permission']),f('um',d['um']);for(const k of d['arbitrations']??[])f('arbitrations:'+k,k);for(const l of d['rewards']??[])f('rewards:'+l,l);for(const m of d['repositories']??[])f('repositories:'+m,m);for(const n of d['order_allocators']?.['allocators']??[])f('allocator_guard:'+n['guard'],n['guard']);const g={};if(e['size']>0x0){const o=await a47n({'objects':[...e['values']()],'no_cache':a['no_cache'],'network':b});for(const p of o['objects']??[])if(p?.['object'])g[p['object']]=p;}const h=q=>q?g[q]:void 0x0;let i;if(a['include_machine_nodes']&&isValidObjectAddr(d['machine']))i=await fetchMachineNodes(d['machine'],a);return{'service':d,'machine':h(d['machine']),'buy_guard':h(d['buy_guard']),'permission':h(d['permission']),'allocator_guards':(d['order_allocators']?.['allocators']??[])['map'](q=>h(q['guard']))['filter'](q=>q?.['type']==='Guard'),'referenced':g,'machine_nodes':i,'transport':c};},fetchMachineNodes=async(a,b)=>{const c=await Config['Instance']()['network_get'](b['network']),d=[];let e;for(let f=0x0;f<MAX_NODE_LIST_PAGES;f++){let g;try{g=await a47m({'parent':a,'cursor':e,'limit':null,'no_cache':b['no_cache'],'network':c});}catch{break;}if(!g?.['items']?.['length'])break;for(const h of g['items'])if(h['object'])d['push'](h['object']);e=g['nextCursor'];if(!e||!g['hasNextPage'])break;}if(d['length']===0x0)return[];return((await a47n({'objects':d,'no_cache':b['no_cache'],'network':c}))['objects']??[])['filter'](i=>i?.['type']==='TableItem_MachineNode');},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':'::registrar::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']('::registrar::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['AlreadyProcessed']='ALREADY_PROCESSED',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://bridge.mainnet.wowok.net: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!![];});}const FUNDING_GUIDANCE={'overview':'How\x20to\x20obtain\x20WOW\x20gas\x20and\x20payment\x20tokens.\x20Testnet\x20uses\x20a\x20faucet;\x20mainnet\x20uses\x20the\x20ETH\x20mainnet\x20cross-chain\x20bridge;\x20a\x20WOW\x20airdrop\x20is\x20under\x20construction.','testnet':{'token':'WOW','method':'faucet','faucet_url':'https://faucet.testnet.wowok.net','note':'Claim\x20WOW\x20from\x20the\x20testnet\x20faucet.\x20All\x20merchant\x20and\x20order\x20testing\x20can\x20use\x20WOW\x20as\x20the\x20payment\x20token.'},'mainnet':{'method':'eth_bridge','supported_tokens':['ETH','USDT','USDC','WBTC'],'steps':['Query\x20the\x20active\x20EVM\x20account\x20via\x20bridge_operation\x20(query_active_evm_account).\x20It\x20is\x20auto-generated\x20on\x20first\x20use.','From\x20an\x20external\x20wallet\x20(e.g.\x20MetaMask),\x20transfer\x20ETH\x20/\x20USDT\x20/\x20USDC\x20/\x20WBTC\x20to\x20the\x20active\x20EVM\x20account\x20address\x20on\x20Ethereum\x20mainnet.','Query\x20the\x20active\x20EVM\x20account\x20balance\x20to\x20confirm\x20the\x20funds\x20arrived.','Cross-chain\x20the\x20funds\x20to\x20the\x20WOW\x20mainnet\x20account\x20via\x20bridge_operation\x20(cross_chain_evm_to_wow).']},'airdrop':{'url':'https://airdrop.wowok.net','status':'under\x20construction'},'payment_token':{'testnet_default':'WOW\x20(default\x20gas\x20+\x20payment\x20token)','mainnet_option':'USDT\x20and\x20other\x20stablecoins\x20via\x20the\x20ETH\x20mainnet\x20bridge','migration_note':'When\x20migrating\x20a\x20merchant\x20project\x20from\x20testnet\x20to\x20mainnet,\x20ask\x20whether\x20to\x20switch\x20the\x20payment\x20token\x20from\x20WOW\x20to\x20a\x20stablecoin\x20such\x20as\x20USDT.'}};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':a47p(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']};case'funding\x20guidance':return{'info':'funding\x20guidance','result':FUNDING_GUIDANCE};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,\x20\x22funding\x20guidance\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'](j=>({'id':j?.['objectId']??'','type':j?.['type']??'mutated','object_type':j?.['objectType'],'sender':j?.['sender'],'version':j?.['version'],'previous_version':j?.['previousVersion'],'digest':j?.['digest']})),f=(a?.['balanceChanges']??[])['map'](j=>({'owner':typeof j?.['owner']==='string'?j['owner']:j?.['owner']?.['AddressOwner']??'','coin_type':j?.['coinType']??'','amount':j?.['amount']??'0'})),g=(a?.['events']??[])['map'](j=>({'type':j?.['type']??'','package_id':j?.['packageId'],'module':j?.['transactionModule'],'sender':j?.['sender'],'parsed_json':j?.['parsedJson'],'bcs':j?.['bcs']})),h=b?.['gasUsed'],i=h?''+(BigInt(h['computationCost']??0x0)+BigInt(h['storageCost']??0x0)-BigInt(h['storageRebate']??0x0)):void 0x0;return{'digest':a?.['digest']??'','status':c,'error':d,'timestamp_ms':a?.['timestampMs'],'sender':a?.['transaction']?.['data']?.['sender'],'gas_used':i,'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':g['length'],'events':g,'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{query_events_json as A,BridgeErrorCode as C,isEvmChain as D,TransferStatus as E,isWowChain as O,BridgeChainId as S,BridgeVersion as T,findEvmChainConfig as _,query_transaction as a,findTokenBySymbol as b,FUNDING_GUIDANCE as c,queryProtocolInfo as d,query_common_mistakes as f,MAINNET_COMMITTEE_WEIGHTS as g,MAINNET_COMMITTEE_PUBKEYS as h,query_object_history_json as i,query_serviceContext as j,query_events as k,INFO_CONSTANT as l,MAINNET_COMMITTEE_MEMBER_ADDRESSES as m,query_address_activity_json as n,query_transaction_json as o,MAINNET_BRIDGE_CONFIG as p,query_object_history as r,COMMON_MISTAKES as s,query_address_activity as t,queryPermissions as u,findEvmChainConfigByBridgeChainId as v,BridgeTokenId as w,verifyCommitteeConsistency as x,findToken as y};
1
+ import{t as a47a}from'./client-B2NwgKQ6.mjs';import{n as a47b}from'./network-Bgq9iuE4.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-BDlb-AoC.mjs';import{o as a47l}from'./exception-C6IYkBi6.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{B as a47m,L as a47n,Q as a47o,X as a47p}from'./object-Dma1VY-1.mjs';import{query_permissions}from'./w/call/permission.mjs';const isValidObjectAddr=a=>typeof a==='string'&&a['length']>0x2&&a!=='0x0',MAX_NODE_LIST_PAGES=0x5,query_serviceContext=async a=>{const b=await Config['Instance']()['network_get'](a['network']),c=a47o(b)?'graphql':'json-rpc';let d;if(typeof a['service']==='string'){const j=(await a47n({'objects':[a['service']],'no_cache':a['no_cache'],'network':b}))['objects']?.['find'](k=>k['type']==='Service');if(!j)a47l('fail','query_serviceContext:\x20service\x20'+a['service']+'\x20not\x20found');d=j;}else d=a['service'];const e=new Map(),f=(k,l)=>{if(isValidObjectAddr(l))e['set'](k,l);};f('machine',d['machine']),f('buy_guard',d['buy_guard']),f('permission',d['permission']),f('um',d['um']);for(const k of d['arbitrations']??[])f('arbitrations:'+k,k);for(const l of d['rewards']??[])f('rewards:'+l,l);for(const m of d['repositories']??[])f('repositories:'+m,m);for(const n of d['order_allocators']?.['allocators']??[])f('allocator_guard:'+n['guard'],n['guard']);const g={};if(e['size']>0x0){const o=await a47n({'objects':[...e['values']()],'no_cache':a['no_cache'],'network':b});for(const p of o['objects']??[])if(p?.['object'])g[p['object']]=p;}const h=q=>q?g[q]:void 0x0;let i;if(a['include_machine_nodes']&&isValidObjectAddr(d['machine']))i=await fetchMachineNodes(d['machine'],a);return{'service':d,'machine':h(d['machine']),'buy_guard':h(d['buy_guard']),'permission':h(d['permission']),'allocator_guards':(d['order_allocators']?.['allocators']??[])['map'](q=>h(q['guard']))['filter'](q=>q?.['type']==='Guard'),'referenced':g,'machine_nodes':i,'transport':c};},fetchMachineNodes=async(a,b)=>{const c=await Config['Instance']()['network_get'](b['network']),d=[];let e;for(let f=0x0;f<MAX_NODE_LIST_PAGES;f++){let g;try{g=await a47m({'parent':a,'cursor':e,'limit':null,'no_cache':b['no_cache'],'network':c});}catch{break;}if(!g?.['items']?.['length'])break;for(const h of g['items'])if(h['object'])d['push'](h['object']);e=g['nextCursor'];if(!e||!g['hasNextPage'])break;}if(d['length']===0x0)return[];return((await a47n({'objects':d,'no_cache':b['no_cache'],'network':c}))['objects']??[])['filter'](i=>i?.['type']==='TableItem_MachineNode');},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':'::registrar::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']('::registrar::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['AlreadyProcessed']='ALREADY_PROCESSED',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://bridge.mainnet.wowok.net: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!![];});}const FUNDING_GUIDANCE={'overview':'How\x20to\x20obtain\x20WOW\x20gas\x20and\x20payment\x20tokens.\x20Testnet\x20uses\x20a\x20faucet;\x20mainnet\x20uses\x20the\x20ETH\x20mainnet\x20cross-chain\x20bridge;\x20a\x20WOW\x20airdrop\x20is\x20under\x20construction.','testnet':{'token':'WOW','method':'faucet','faucet_url':'https://faucet.testnet.wowok.net','note':'Claim\x20WOW\x20from\x20the\x20testnet\x20faucet.\x20All\x20merchant\x20and\x20order\x20testing\x20can\x20use\x20WOW\x20as\x20the\x20payment\x20token.'},'mainnet':{'method':'eth_bridge','supported_tokens':['ETH','USDT','USDC','WBTC'],'steps':['Query\x20the\x20active\x20EVM\x20account\x20via\x20bridge_operation\x20(query_active_evm_account).\x20It\x20is\x20auto-generated\x20on\x20first\x20use.','From\x20an\x20external\x20wallet\x20(e.g.\x20MetaMask),\x20transfer\x20ETH\x20/\x20USDT\x20/\x20USDC\x20/\x20WBTC\x20to\x20the\x20active\x20EVM\x20account\x20address\x20on\x20Ethereum\x20mainnet.','Query\x20the\x20active\x20EVM\x20account\x20balance\x20to\x20confirm\x20the\x20funds\x20arrived.','Cross-chain\x20the\x20funds\x20to\x20the\x20WOW\x20mainnet\x20account\x20via\x20bridge_operation\x20(cross_chain_evm_to_wow).']},'airdrop':{'url':'https://airdrop.wowok.net','status':'under\x20construction'},'payment_token':{'testnet_default':'WOW\x20(default\x20gas\x20+\x20payment\x20token)','mainnet_option':'USDT\x20and\x20other\x20stablecoins\x20via\x20the\x20ETH\x20mainnet\x20bridge','migration_note':'When\x20migrating\x20a\x20merchant\x20project\x20from\x20testnet\x20to\x20mainnet,\x20ask\x20whether\x20to\x20switch\x20the\x20payment\x20token\x20from\x20WOW\x20to\x20a\x20stablecoin\x20such\x20as\x20USDT.'}};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':a47p(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']};case'funding\x20guidance':return{'info':'funding\x20guidance','result':FUNDING_GUIDANCE};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,\x20\x22funding\x20guidance\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'](j=>({'id':j?.['objectId']??'','type':j?.['type']??'mutated','object_type':j?.['objectType'],'sender':j?.['sender'],'version':j?.['version'],'previous_version':j?.['previousVersion'],'digest':j?.['digest']})),f=(a?.['balanceChanges']??[])['map'](j=>({'owner':typeof j?.['owner']==='string'?j['owner']:j?.['owner']?.['AddressOwner']??'','coin_type':j?.['coinType']??'','amount':j?.['amount']??'0'})),g=(a?.['events']??[])['map'](j=>({'type':j?.['type']??'','package_id':j?.['packageId'],'module':j?.['transactionModule'],'sender':j?.['sender'],'parsed_json':j?.['parsedJson'],'bcs':j?.['bcs']})),h=b?.['gasUsed'],i=h?''+(BigInt(h['computationCost']??0x0)+BigInt(h['storageCost']??0x0)-BigInt(h['storageRebate']??0x0)):void 0x0;return{'digest':a?.['digest']??'','status':c,'error':d,'timestamp_ms':a?.['timestampMs'],'sender':a?.['transaction']?.['data']?.['sender'],'gas_used':i,'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':g['length'],'events':g,'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{query_events_json as A,BridgeErrorCode as C,isEvmChain as D,TransferStatus as E,isWowChain as O,BridgeChainId as S,BridgeVersion as T,findEvmChainConfig as _,query_transaction as a,findTokenBySymbol as b,FUNDING_GUIDANCE as c,queryProtocolInfo as d,query_common_mistakes as f,MAINNET_COMMITTEE_WEIGHTS as g,MAINNET_COMMITTEE_PUBKEYS as h,query_object_history_json as i,query_serviceContext as j,query_events as k,INFO_CONSTANT as l,MAINNET_COMMITTEE_MEMBER_ADDRESSES as m,query_address_activity_json as n,query_transaction_json as o,MAINNET_BRIDGE_CONFIG as p,query_object_history as r,COMMON_MISTAKES as s,query_address_activity as t,queryPermissions as u,findEvmChainConfigByBridgeChainId as v,BridgeTokenId as w,verifyCommitteeConsistency as x,findToken as y};
@@ -1 +1 @@
1
- import{t as a48a}from'./client-DbLjWV0v.mjs';import{n as a48b}from'./network-Bgq9iuE4.mjs';import'./common-BDlb-AoC.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{L as a48d,et as a48e}from'./object-BaLfg7ui.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'],'version':g?.['data']?.['version'],'digest':g?.['data']?.['digest']};});}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 a48d({'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=a48e(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'],'version':l?.['data']?.['version'],'digest':l?.['data']?.['digest']};});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'],'version':l?.['data']?.['version'],'digest':l?.['data']?.['digest']};});};export{query_received as t};
1
+ import{t as a48a}from'./client-B2NwgKQ6.mjs';import{n as a48b}from'./network-Bgq9iuE4.mjs';import'./common-BDlb-AoC.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{L as a48d,et as a48e}from'./object-Dma1VY-1.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'],'version':g?.['data']?.['version'],'digest':g?.['data']?.['digest']};});}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 a48d({'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=a48e(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'],'version':l?.['data']?.['version'],'digest':l?.['data']?.['digest']};});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'],'version':l?.['data']?.['version'],'digest':l?.['data']?.['digest']};});};export{query_received as t};
@@ -1,4 +1,4 @@
1
- import { t as IAccountStorage } from "./storage-B8nW4YTJ.mjs";
1
+ import { t as IAccountStorage } from "./storage-DGOllc0e.mjs";
2
2
  import Database from "libsql";
3
3
 
4
4
  //#region src/w/local/secure-storage.d.ts