UNPKG

wowok_agent

Version:

Create, collaborate, and transact on your own terms with the AI-driven web3 collaboration protocol.

1 lines 10.7 kB
(this.webpackChunkwowok_agent=this.webpackChunkwowok_agent||[]).push([[446],{1281:()=>{},3475:(t,e,a)=>{"use strict";a.d(e,{HL:()=>s,WB:()=>n,a1:()=>o,c7:()=>c,iN:()=>i,z7:()=>d});var i,r=a(7495);class s{constructor(t){this.expire=t}expire_time(){return this.expire}expire}!function(t){t.object="OBJECT",t.personal="PERSONAL",t.table="TABLE"}(i||(i={}));const n=(t,e)=>t+r.Protocol.Instance().package("wowok_origin")+e+"-V2";class o extends s{constructor(t=1e4){super(t)}data=new Map;load(t){return this.data.get(t)}save(t,e){this.data.set(t,e)}remove(t){this.data.delete(t)}}class d extends s{constructor(t=1e4){super(t)}load(t){return localStorage.getItem(t)}save(t,e){return localStorage.setItem(t,e)}remove(t){return localStorage.removeItem(t)}}class c{static _instance;cache=new Map;constructor(){}static Instance(){return c._instance||(c._instance=new c),c._instance}set(t,e){this.cache.set(t,e)}get(t){return this.cache.get(t)}}},6607:(t,e,a)=>{"use strict";a.d(e,{k:()=>o});var i=a(7495),r=a(3245),s=a(6401),n=a(9766);class o extends s.s{data;constructor(t){super(),this.data=t}async call(t){this.data?.type_parameter&&(0,i.IsValidArgType)(this.data.type_parameter)||(0,i.ERROR)(i.Errors.IsValidArgType,"arbitration.type_parameter");const e=[],a=[];var s;const n=this.data?.permission?.address,o=this.data?.object?.address,d=this.data?.fee_treasury?.address;if(n&&(0,i.IsValidAddress)(n)){if(this.data?.object||a.push(i.PermissionIndex.arbitration),void 0!==this.data?.description&&o&&a.push(i.PermissionIndex.arbitration_description),void 0!==this.data?.bPaused&&a.push(i.PermissionIndex.arbitration_pause),null==this.data?.endpoint&&a.push(i.PermissionIndex.arbitration_endpoint),void 0!==this.data?.fee&&o&&a.push(i.PermissionIndex.arbitration_fee),void 0!==d&&o&&a.push(i.PermissionIndex.arbitration_treasury),void 0!==this.data?.guard&&a.push(i.PermissionIndex.arbitration_guard),void 0!==this.data?.voting_guard&&a.push(i.PermissionIndex.arbitration_voting_guard),void 0!==this.data?.arb_arbitration&&a.push(i.PermissionIndex.arbitration_arbitration),void 0!==this.data?.arb_new?.guard)if((0,i.IsValidAddress)(this.data.arb_new.guard))e.push(this.data.arb_new.guard);else if(o){if(!s){const t=await(0,r.w$)({objects:[o],showContent:!0});t?.objects&&"Arbitration"===t.objects[0].type&&(s=t.objects[0])}s?.usage_guard&&e.push(s.usage_guard)}else this.data?.guard&&(0,i.IsValidAddress)(this.data?.guard)&&e.push(this.data.guard);return void 0!==this.data?.arb_vote&&a.push(i.PermissionIndex.treasury_receive),"string"==typeof this.data?.arb_vote?.voting_guard&&(0,i.IsValidAddress)(this.data?.arb_vote?.voting_guard)&&e.push(this.data?.arb_vote?.voting_guard),await this.check_permission_and_call(n,a,e,!1,void 0,t)}return await this.exec(t)}async operate(t,e,a){let r,s,o;const d=this.data?.permission?.address,c=this.data?.object?.address,h=this.data?.fee_treasury?.address;if(c)(0,i.IsValidAddress)(c)&&this.data.type_parameter&&d?r=i.Arbitration.From(t,this.data.type_parameter,d,c):(0,i.ERROR)(i.Errors.InvalidParam,"object or permission address invalid.");else{if(!d||!(0,i.IsValidAddress)(d)){const e=this.data?.permission?.description??"";s=i.Permission.New(t,e)}if(!h||!(0,i.IsValidAddress)(h)){const a=this.data?.fee_treasury?.description??"";o=i.Treasury.New(t,this.data?.type_parameter,s?s.get_object():d,a,s?void 0:e)}r=i.Arbitration.New(t,this.data.type_parameter,s?s.get_object():d,this.data?.description??"",BigInt(this.data?.fee??0),o?o.get_object():h,s?void 0:e)}if(r){const d=s?void 0:e;var u;if(void 0!==this.data?.description&&c&&r?.set_description(this.data.description,d),void 0!==this.data?.endpoint&&r?.set_endpoint(this.data.endpoint,d),void 0!==this.data?.fee&&c&&r?.set_fee(BigInt(this.data.fee),d),void 0!==h&&c&&r?.set_withdrawTreasury(h,d),void 0!==this.data?.arb_new){const e=BigInt(this.data.arb_new.data.fee),i=this.data?.arb_new.data;u=r?.arb({order:i.order,order_token_type:i.order_token_type,description:i.description,votable_proposition:i.votable_proposition,fee:e>BigInt(0)?await n.g.Instance().get_coin_object(t,e,a,this.data.type_parameter):void 0},d)}if(void 0!==this.data?.arb_arbitration){const t=this.data.arb_arbitration.arb??u;t||(0,i.ERROR)(i.Errors.Fail,"arb invalid: arb_arbitration"),r?.arbitration({arb:t,feedback:this.data.arb_arbitration.feedback,indemnity:this.data.arb_arbitration.indemnity},d)}if(void 0!==this.data?.arb_vote){const t=this.data.arb_vote.arb??u;t||(0,i.ERROR)(i.Errors.Fail,"arb invalid: arb_vote"),r?.vote({arb:t,voting_guard:this.data.arb_vote.voting_guard,agrees:this.data.arb_vote.agrees},d)}if(void 0!==this.data?.arb_withdraw_fee){const t=this.data.arb_withdraw_fee.arb??u;t||(0,i.ERROR)(i.Errors.Fail,"arb invalid: arb_withdraw_fee"),r?.withdraw_fee(t,this.data.arb_withdraw_fee.data,d)}if(u&&await this.new_with_mark(t,r?.arb_launch(u),this.data?.arb_new?.namedNew,a),void 0!==this.data?.voting_guard)switch(this.data.voting_guard.op){case"add":r?.add_voting_guard(this.data.voting_guard.data,d);break;case"remove":r?.remove_voting_guard(this.data.voting_guard.guards,!1,d);break;case"set":r?.remove_voting_guard([],!0,d),r?.add_voting_guard(this.data.voting_guard.data,d);break;case"removeall":r?.remove_voting_guard([],!0,d)}void 0!==this.data.guard&&r?.set_guard(this.data.guard,d),void 0!==this.data?.bPaused&&r?.pause(this.data.bPaused,d),o&&await this.new_with_mark(t,o.launch(),this.data?.fee_treasury?.namedNew,a),s&&await this.new_with_mark(t,s.launch(),this.data?.permission?.namedNew,a),c||await this.new_with_mark(t,r.launch(),this.data?.object?.namedNew,a)}}}},9766:(t,e,a)=>{"use strict";a.d(e,{g:()=>n});var i=a(7495);const r="wowok.acc.dat",s="wowok-acc-v1";class n{constructor(t="File"){this.storage=t}static _instance;static Instance(){return n._instance||(n._instance=new n),n._instance}storage="File";_add(t,e,a){var r,s="0x"+(0,i.toHEX)((0,i.decodeSuiPrivateKey)(i.Ed25519Keypair.generate().getSecretKey()).secretKey);try{if(t&&(r=JSON.parse(t))){const t=r.find((t=>t.name===e));return t?t.default=a:(a&&r.forEach((t=>t.default=!1)),r.push({name:e,key:s,default:a})),r}}catch(t){}return[{name:e,key:s,default:a}]}_default(t){var e;try{if(t&&(e=JSON.parse(t))){const t=e.find((t=>t.default));if(t)return t}}catch(t){}}_get(t,e,a){var i;try{if(t&&(i=JSON.parse(t))){const t=i.find((t=>t.name===e));if(t)return t;if(a)return i.find((t=>t.default))}}catch(t){}}_rename(t,e,a,i=!0){var r;try{if(t&&(r=JSON.parse(t)),r){const t=r.find((t=>t.name===e));if(!t)return;const s=r.find((t=>t.name===a));if(!s)return t.name=a,r;if(i)return t.name=a,s.name=e,r}}catch(t){}}set_storage(t="File"){this.storage=t}async gen(t,e){try{if("File"===this.storage){const[i,s,n]=await Promise.all([a.e(734).then(a.t.bind(a,1734,23)),a.e(734).then(a.t.bind(a,1734,23)),a.e(734).then(a.t.bind(a,1734,23))]),o=n.join(s.homedir(),r);i.readFile(o,"utf-8",((a,r)=>{const s=this._add(r,t,e);i.writeFileSync(o,JSON.stringify(s),"utf-8")}))}else if("Explorer"===this.storage){const a=this._add(localStorage.getItem(s),t,e);localStorage.setItem(s,JSON.stringify(a))}}catch(t){}}async default(){try{if("File"===this.storage){const[t,e,i]=await Promise.all([a.e(734).then(a.t.bind(a,1734,23)),a.e(734).then(a.t.bind(a,1734,23)),a.e(734).then(a.t.bind(a,1734,23))]),s=i.join(e.homedir(),r);return this._default(t.readFileSync(s,"utf-8"))}if("Explorer"===this.storage)return this._default(localStorage.getItem(s))}catch(t){}}async get(t,e=!0){try{if("File"===this.storage){const[i,s,n]=await Promise.all([a.e(734).then(a.t.bind(a,1734,23)),a.e(734).then(a.t.bind(a,1734,23)),a.e(734).then(a.t.bind(a,1734,23))]),o=n.join(s.homedir(),r);return this._get(i.readFileSync(o,"utf-8"),t,e)}if("Explorer"===this.storage)return this._get(localStorage.getItem(s),t,e)}catch(t){}}async rename(t,e,i=!0){var n;try{if("File"===this.storage){const[s,o,d]=await Promise.all([a.e(734).then(a.t.bind(a,1734,23)),a.e(734).then(a.t.bind(a,1734,23)),a.e(734).then(a.t.bind(a,1734,23))]),c=d.join(o.homedir(),r);(n=this._rename(s.readFileSync(c,"utf-8"),t,e,i))&&s.writeFileSync(c,JSON.stringify(n),"utf-8")}else"Explorer"===this.storage&&(n=this._rename(localStorage.getItem(s),t,e,i))&&localStorage.setItem(s,JSON.stringify(n))}catch(t){}return!!n}async get_address(t,e=!0){const a=await this.get(t,e);if(a)return i.Ed25519Keypair.fromSecretKey((0,i.fromHEX)(a.key)).getPublicKey().toSuiAddress()}async get_pubkey(t,e=!0){const a=await this.get(t,e);if(a)return i.Ed25519Keypair.fromSecretKey((0,i.fromHEX)(a.key)).getPublicKey().toSuiPublicKey()}async get_pair(t,e=!0){const a=await this.get(t,e);if(a)return i.Ed25519Keypair.fromSecretKey((0,i.fromHEX)(a.key))}async list(){try{if("File"===this.storage){const[t,e,s]=await Promise.all([a.e(734).then(a.t.bind(a,1734,23)),a.e(734).then(a.t.bind(a,1734,23)),a.e(734).then(a.t.bind(a,1734,23))]),n=s.join(e.homedir(),r);return JSON.parse(t.readFileSync(n,"utf-8")).map((t=>({name:t.name,default:t?.default,address:i.Ed25519Keypair.fromSecretKey((0,i.fromHEX)(t.key)).getPublicKey().toSuiAddress()})))}if("Explorer"===this.storage)return JSON.parse(localStorage.getItem(s)??"").map((t=>({name:t.name,default:t?.default,address:i.Ed25519Keypair.fromSecretKey((0,i.fromHEX)(t.key)).getPublicKey().toSuiAddress()})))}catch(t){}return[]}async faucet(t){const e=await this.get_address(t,!0);e&&await(0,i.requestSuiFromFaucetV0)({host:(0,i.getFaucetHost)("testnet"),recipient:e}).catch((t=>{}))}balance=async(t,e)=>{const a=await this.get_address(t);if(a)return await i.Protocol.Client().getBalance({owner:a,coinType:e})};coin=async(t,e)=>{const a=await this.get_address(t);if(a)return(await i.Protocol.Client().getCoins({owner:a,coinType:e})).data};get_coin_object=async(t,e,a,r)=>{const s=await this.get_address(a),n=BigInt(e);if(s&&n>BigInt(0)){if(r&&"0x2::sui::SUI"!==r&&"0x0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"!==r){const e=await i.Protocol.Client().getCoins({owner:s,coinType:r}),a=[];var o=BigInt(0);for(let t=0;t<e.data.length&&(o+=BigInt(e.data[t].balance),a.push(e.data[t].coinObjectId),!(o>=n));++t);if(1===a.length)return t.splitCoins(a[0],[n]);{const e=a.pop();return t.mergeCoins(e,a),t.splitCoins(e,[n])}}return t.splitCoins(t.gas,[n])}};coin_with_balance=async(t,e,a)=>{const r=await this.get_pair(e,!0);r||(0,i.ERROR)(i.Errors.Fail,"account invalid");const s=new i.TransactionBlock,o=await n.Instance().get_coin_object(s,t,e,a);if(o){s.transferObjects([o],r?.toSuiAddress());const t=await i.Protocol.Client().signAndExecuteTransaction({transaction:s,signer:r,options:{showObjectChanges:!0}}),e=a??"0x2::sui::SUI";return t?.objectChanges.find((t=>"created"===t?.type&&(t?.objectType).includes(e)))?.objectId}}}}}]);