@ecency/sdk 2.4.1 → 2.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/node/index.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
'use strict';var reactQuery=require('@tanstack/react-query'),utils_js=require('@noble/hashes/utils.js'),legacy_js=require('@noble/hashes/legacy.js'),Mn=require('bs58'),secp256k1_js=require('@noble/curves/secp256k1.js'),sha2_js=require('@noble/hashes/sha2.js'),aes_js=require('@noble/ciphers/aes.js'),Co=require('hivesigner');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var Mn__default=/*#__PURE__*/_interopDefault(Mn);var Co__default=/*#__PURE__*/_interopDefault(Co);var Fs=Object.defineProperty;var kt=(e,t)=>{for(var r in t)Fs(e,r,{get:t[r],enumerable:true});};var Tt=new ArrayBuffer(0),Ft=null,qt=null;function qs(){return Ft||(typeof TextEncoder<"u"?Ft=new TextEncoder:Ft={encode(e){let t=[];for(let r=0;r<e.length;r++){let n=e.charCodeAt(r);if(n<128)t.push(n);else if(n<2048)t.push(192|n>>6,128|n&63);else if(n>=55296&&n<=56319&&r+1<e.length){let o=e.charCodeAt(++r);n=65536+((n&1023)<<10)+(o&1023),t.push(240|n>>18,128|n>>12&63,128|n>>6&63,128|n&63);}else t.push(224|n>>12,128|n>>6&63,128|n&63);}return new Uint8Array(t)}}),Ft}function Tn(){return qt||(typeof TextDecoder<"u"?qt=new TextDecoder:qt={decode(e){let t=e instanceof ArrayBuffer?new Uint8Array(e):new Uint8Array(e.buffer,e.byteOffset,e.byteLength),r="";for(let n=0;n<t.length;){let o=t[n],i;o<128?(i=o,n+=1):(o&224)===192?(i=(o&31)<<6|t[n+1]&63,n+=2):(o&240)===224?(i=(o&15)<<12|(t[n+1]&63)<<6|t[n+2]&63,n+=3):(i=(o&7)<<18|(t[n+1]&63)<<12|(t[n+2]&63)<<6|t[n+3]&63,n+=4),i<=65535?r+=String.fromCharCode(i):(i-=65536,r+=String.fromCharCode(55296+(i>>10),56320+(i&1023)));}return r}}),qt}var D=class e{static LITTLE_ENDIAN=true;static BIG_ENDIAN=false;static DEFAULT_CAPACITY=16;static DEFAULT_ENDIAN=e.BIG_ENDIAN;buffer;view;offset;markedOffset;limit;littleEndian;constructor(t=e.DEFAULT_CAPACITY,r=e.DEFAULT_ENDIAN){this.buffer=t===0?Tt:new ArrayBuffer(t),this.view=t===0?new DataView(Tt):new DataView(this.buffer),this.offset=0,this.markedOffset=-1,this.limit=t,this.littleEndian=r;}static allocate(t,r){return new e(t,r)}static concat(t,r){let n=0;for(let a=0;a<t.length;++a){let c=t[a];if(c instanceof e)n+=c.limit-c.offset;else if(c instanceof Uint8Array)n+=c.length;else if(c instanceof ArrayBuffer)n+=c.byteLength;else if(Array.isArray(c))n+=c.length;else throw TypeError("Illegal buffer")}if(n===0)return new e(0,r);let o=new e(n,r),i=new Uint8Array(o.buffer),s=0;for(let a=0;a<t.length;++a){let c=t[a];c instanceof e?(i.set(new Uint8Array(c.buffer,c.offset,c.limit-c.offset),s),s+=c.limit-c.offset):c instanceof Uint8Array?(i.set(c,s),s+=c.length):c instanceof ArrayBuffer?(i.set(new Uint8Array(c),s),s+=c.byteLength):(i.set(c,s),s+=c.length);}return o.limit=o.offset=s,o.offset=0,o}static wrap(t,r){if(t instanceof e){let o=t.clone();return o.markedOffset=-1,o}let n;if(t instanceof Uint8Array)n=new e(0,r),t.length>0&&(n.buffer=t.buffer,n.offset=t.byteOffset,n.limit=t.byteOffset+t.byteLength,n.view=new DataView(t.buffer));else if(t instanceof ArrayBuffer)n=new e(0,r),t.byteLength>0&&(n.buffer=t,n.offset=0,n.limit=t.byteLength,n.view=t.byteLength>0?new DataView(t):new DataView(Tt));else if(Array.isArray(t))n=new e(t.length,r),n.limit=t.length,new Uint8Array(n.buffer).set(t);else throw TypeError("Illegal buffer");return n}writeBytes(t,r){return this.append(t,r)}writeInt8(t,r){let n=typeof r>"u";return n?r=this.offset:r=r,r+1>this.buffer.byteLength&&this.resize(r+1),this.view.setInt8(r,t),n&&(this.offset+=1),this}writeByte(t,r){return this.writeInt8(t,r)}writeUint8(t,r){let n=typeof r>"u";return n?r=this.offset:r=r,r+1>this.buffer.byteLength&&this.resize(r+1),this.view.setUint8(r,t),n&&(this.offset+=1),this}writeUInt8(t,r){return this.writeUint8(t,r)}readUint8(t){let r=typeof t>"u";r?t=this.offset:t=t;let n=this.view.getUint8(t);return r&&(this.offset+=1),n}readUInt8(t){return this.readUint8(t)}writeInt16(t,r){let n=typeof r>"u";return n?r=this.offset:r=r,r+2>this.buffer.byteLength&&this.resize(r+2),this.view.setInt16(r,t,this.littleEndian),n&&(this.offset+=2),this}writeShort(t,r){return this.writeInt16(t,r)}writeUint16(t,r){let n=typeof r>"u";return n?r=this.offset:r=r,r+2>this.buffer.byteLength&&this.resize(r+2),this.view.setUint16(r,t,this.littleEndian),n&&(this.offset+=2),this}writeUInt16(t,r){return this.writeUint16(t,r)}writeInt32(t,r){let n=typeof r>"u";return n?r=this.offset:r=r,r+4>this.buffer.byteLength&&this.resize(r+4),this.view.setInt32(r,t,this.littleEndian),n&&(this.offset+=4),this}writeInt(t,r){return this.writeInt32(t,r)}writeUint32(t,r){let n=typeof r>"u";return n?r=this.offset:r=r,r+4>this.buffer.byteLength&&this.resize(r+4),this.view.setUint32(r,t,this.littleEndian),n&&(this.offset+=4),this}writeUInt32(t,r){return this.writeUint32(t,r)}readUint32(t){let r=typeof t>"u";r?t=this.offset:t=t;let n=this.view.getUint32(t,this.littleEndian);return r&&(this.offset+=4),n}readUInt32=this.readUint32;append(t,r){let n=typeof r>"u";n?r=this.offset:r=r;let o;return t instanceof e?(o=new Uint8Array(t.buffer,t.offset,t.limit-t.offset),t.offset+=o.length):t instanceof Uint8Array?o=t:t instanceof ArrayBuffer?o=new Uint8Array(t):o=new Uint8Array(t),o.length<=0?this:(r+o.length>this.buffer.byteLength&&this.resize(r+o.length),new Uint8Array(this.buffer).set(o,r),n&&(this.offset+=o.length),this)}clone(t){let r=new e(0,this.littleEndian);return t?(r.buffer=new ArrayBuffer(this.buffer.byteLength),new Uint8Array(r.buffer).set(new Uint8Array(this.buffer)),r.view=new DataView(r.buffer)):(r.buffer=this.buffer,r.view=this.view),r.offset=this.offset,r.markedOffset=this.markedOffset,r.limit=this.limit,r}copy(t,r){if(t===void 0&&(t=this.offset),r===void 0&&(r=this.limit),t===r)return new e(0,this.littleEndian);let n=r-t,o=new e(n,this.littleEndian);return o.offset=0,o.limit=n,new Uint8Array(o.buffer).set(new Uint8Array(this.buffer).subarray(t,r),0),o}copyTo(t,r,n,o){let i=typeof r>"u",s=typeof n>"u";r=i?t.offset:r,n=s?this.offset:n,o=o===void 0?this.limit:o;let a=o-n;return a===0?t:(t.ensureCapacity(r+a),new Uint8Array(t.buffer).set(new Uint8Array(this.buffer).subarray(n,o),r),s&&(this.offset+=a),i&&(t.offset+=a),this)}ensureCapacity(t){let r=this.buffer.byteLength;return r<t?this.resize((r*=2)>t?r:t):this}flip(){return this.limit=this.offset,this.offset=0,this}resize(t){if(this.buffer.byteLength<t){let r=new ArrayBuffer(t);new Uint8Array(r).set(new Uint8Array(this.buffer)),this.buffer=r,this.view=new DataView(r);}return this}skip(t){return this.offset+=t,this}writeInt64(t,r){let n=typeof r>"u";return n?r=this.offset:r=r,typeof t=="number"&&(t=BigInt(t)),r+8>this.buffer.byteLength&&this.resize(r+8),this.view.setBigInt64(r,t,this.littleEndian),n&&(this.offset+=8),this}writeLong(t,r){return this.writeInt64(t,r)}readInt64(t){let r=typeof t>"u";r?t=this.offset:t=t;let n=this.view.getBigInt64(t,this.littleEndian);return r&&(this.offset+=8),n}readLong(t){return this.readInt64(t)}writeUint64(t,r){let n=typeof r>"u";return n?r=this.offset:r=r,typeof t=="number"&&(t=BigInt(t)),r+8>this.buffer.byteLength&&this.resize(r+8),this.view.setBigUint64(r,t,this.littleEndian),n&&(this.offset+=8),this}writeUInt64(t,r){return this.writeUint64(t,r)}readUint64(t){let r=typeof t>"u";r?t=this.offset:t=t;let n=this.view.getBigUint64(t,this.littleEndian);return r&&(this.offset+=8),n}readUInt64(t){return this.readUint64(t)}toBuffer(t){let r=this.offset,n=this.limit;return !t&&r===0&&n===this.buffer.byteLength?this.buffer:r===n?Tt:this.buffer.slice(r,n)}toArrayBuffer(t){return this.toBuffer(t)}writeVarint32(t,r){let n=typeof r>"u";n?r=this.offset:r=r;let o=this.calculateVarint32(t);for(r+o>this.buffer.byteLength&&this.resize(r+o),t>>>=0;t>=128;)this.view.setUint8(r++,t&127|128),t>>>=7;return this.view.setUint8(r++,t),n?(this.offset=r,this):o}readVarint32(t){let r=typeof t>"u";typeof t>"u"&&(t=this.offset);let n=0,o=0,i;do i=this.view.getUint8(t++),n<5&&(o|=(i&127)<<7*n),++n;while((i&128)!==0);return o|=0,r?(this.offset=t,o):{value:o,length:n}}calculateVarint32(t){return t=t>>>0,t<128?1:t<16384?2:t<1<<21?3:t<1<<28?4:5}writeVString(t,r){let n=typeof r>"u",o=n?this.offset:r,i=qs().encode(t),s=i.length,a=this.calculateVarint32(s);return o+a+s>this.buffer.byteLength&&this.resize(o+a+s),this.writeVarint32(s,o),o+=a,new Uint8Array(this.buffer).set(i,o),o+=s,n?(this.offset=o,this):o-(r||0)}readVString(t){let r=typeof t>"u";r?t=this.offset:t=t;let n=t,o=this.readVarint32(t),i=o.value,s=o.length;t+=s;let a=Tn().decode(new Uint8Array(this.buffer,t,i));return t+=i,r?(this.offset=t,a):{string:a,length:t-n}}readUTF8String(t,r){let n=typeof r>"u";n?r=this.offset:r=r;let o=Tn().decode(new Uint8Array(this.buffer,r,t));return n?(this.offset+=t,o):{string:o,length:t}}};var O={nodes:["https://api.hive.blog","https://api.deathwing.me","https://api.openhive.network","https://api.syncad.com","https://rpc.mahdiyari.info"],restNodes:["https://api.hive.blog","https://rpc.mahdiyari.info","https://api.syncad.com","https://hiveapi.actifit.io","https://api.c0ff33a.uk"],restNodesByApi:{hivesense:["https://api.hive.blog","https://api.syncad.com"]},userAgent:"ecency-sdk",chain_id:"beeab0de00000000000000000000000000000000000000000000000000000000",address_prefix:"STM",timeout:5e3,broadcastTimeout:15e3,retry:5,resilience:{adaptiveTimeout:true,adaptiveTimeoutFloorMs:2e3,adaptiveTimeoutFactor:4,hedge:false,hedgeDelayFloorMs:750,hedgeDelayFactor:2,hedgeBucketCapacity:10,hedgeRefillPerSuccess:.1,totalBudgetFactor:2}},Fn=["bridge.get_ranked_posts","bridge.get_account_posts","bridge.get_post","bridge.get_discussion","bridge.get_profile","bridge.get_profiles","bridge.get_community","bridge.list_communities","condenser_api.get_accounts","condenser_api.get_content","condenser_api.get_dynamic_global_properties","condenser_api.get_trending_tags"],It=null,yr=e=>{if(e===null){It=null;return}if(!e||typeof e!="object")return;let t=typeof e.url=="string"?e.url.trim():"";if(!/^https?:\/\//i.test(t))return;let r={};if(e.headers&&typeof e.headers=="object")for(let[s,a]of Object.entries(e.headers))typeof a=="string"&&a&&!/[\u0000-\u001f\u007f]/.test(a)&&!/[\u0000-\u001f\u007f]/.test(s)&&(r[s]=a);let n=typeof e.timeoutMs=="number"&&Number.isFinite(e.timeoutMs)&&e.timeoutMs>0?e.timeoutMs:2e3,o=e.methods===void 0?[...Fn]:Array.isArray(e.methods)?e.methods.filter(s=>typeof s=="string"&&s.includes(".")):[];if(o.length===0)return;let i=(s,a)=>typeof s=="number"&&Number.isFinite(s)&&s>0?s:a;It={url:t,headers:r,timeoutMs:n,methods:o,failureThreshold:Math.floor(i(e.failureThreshold,3)),cooldownMs:i(e.cooldownMs,1e4),methodSet:new Set(o)};},hr=e=>Array.isArray(e)?[...new Set(e.filter(t=>typeof t=="string").map(t=>t.trim().replace(/\/+$/,"")).filter(t=>t.length>0&&/^https?:\/\/.+/.test(t)))]:[],_r=e=>{let t=hr(e);t.length&&(O.nodes=t);},wr=e=>{let t=hr(e);t.length&&(O.restNodes=t);},br=e=>{if(!e||typeof e!="object")return;let t={...O.restNodesByApi};for(let[r,n]of Object.entries(e)){let o=hr(n);o.length?t[r]=o:delete t[r];}O.restNodesByApi=t;},vr=e=>{if(typeof e!="string")return;let t=e.trim();!t||/[\u0000-\u001f\u007f]/.test(t)||(O.userAgent=t);},Pr=e=>{if(!e||typeof e!="object")return;let t=O.resilience,r=o=>typeof o=="boolean",n=o=>typeof o=="number"&&Number.isFinite(o)&&o>0;r(e.adaptiveTimeout)&&(t.adaptiveTimeout=e.adaptiveTimeout),n(e.adaptiveTimeoutFloorMs)&&(t.adaptiveTimeoutFloorMs=Math.max(e.adaptiveTimeoutFloorMs,2e3)),n(e.adaptiveTimeoutFactor)&&(t.adaptiveTimeoutFactor=e.adaptiveTimeoutFactor),r(e.hedge)&&(t.hedge=e.hedge),n(e.hedgeDelayFloorMs)&&(t.hedgeDelayFloorMs=e.hedgeDelayFloorMs),n(e.hedgeDelayFactor)&&(t.hedgeDelayFactor=e.hedgeDelayFactor),n(e.hedgeBucketCapacity)&&(t.hedgeBucketCapacity=e.hedgeBucketCapacity),n(e.hedgeRefillPerSuccess)&&(t.hedgeRefillPerSuccess=Math.min(e.hedgeRefillPerSuccess,1)),n(e.totalBudgetFactor)&&(t.totalBudgetFactor=Math.max(e.totalBudgetFactor,1));};var Ee=class e{data;recovery;compressed;constructor(t,r,n){this.data=t,this.recovery=r,this.compressed=n??true;}static from(t){if(typeof t=="string"){let r=utils_js.hexToBytes(t),n=parseInt(utils_js.bytesToHex(r.subarray(0,1)),16)-31,o=true;n<0&&(o=false,n=n+4);let i=r.subarray(1);return new e(i,n,o)}else throw new Error("Expected string for data")}toBuffer(){let t=new Uint8Array(65).fill(0);return this.compressed?t[0]=this.recovery+31&255:t[0]=this.recovery+27&255,t.set(this.data,1),t}customToString(){return utils_js.bytesToHex(this.toBuffer())}toString(){return this.customToString()}getPublicKey(t){if(t instanceof Uint8Array&&t.length!==32||typeof t=="string"&&t.length!==64)throw new Error("Expected a valid sha256 hash as message");typeof t=="string"&&(t=utils_js.hexToBytes(t));let r=secp256k1_js.secp256k1.Signature.fromBytes(this.data,"compact"),n=new secp256k1_js.secp256k1.Signature(r.r,r.s,this.recovery);return new Y(n.recoverPublicKey(t).toBytes())}};var Y=class e{key;prefix;constructor(t,r){this.key=t,this.prefix=r??O.address_prefix;}static fromString(t){let r=O.address_prefix;if(typeof t!="string"||t.length<=r.length)throw new Error("Invalid public key");let n=t.slice(0,r.length);if(n!==r)throw new Error(`Public key must start with ${r}`);let o;try{o=Mn__default.default.decode(t.slice(r.length));}catch{throw new Error("Invalid public key encoding")}if(o.length!==37)throw new Error("Invalid public key length");let i=o.subarray(0,33),s=o.subarray(33,37),a=legacy_js.ripemd160(i).subarray(0,4);if(!Ds(s,a))throw new Error("Public key checksum mismatch");try{secp256k1_js.secp256k1.Point.fromBytes(i);}catch{throw new Error("Invalid public key")}return new e(i,n)}static from(t){return t instanceof e?t:e.fromString(t)}verify(t,r){return typeof r=="string"&&(r=Ee.from(r)),secp256k1_js.secp256k1.verify(r.data,t,this.key,{prehash:false,format:"compact"})}toString(){return Is(this.key,this.prefix)}toJSON(){return this.toString()}inspect(){return `PublicKey: ${this.toString()}`}},Is=(e,t)=>{let r=legacy_js.ripemd160(e);return t+Mn__default.default.encode(new Uint8Array([...e,...r.subarray(0,4)]))},Ds=(e,t)=>{if(e.byteLength!==t.byteLength)return false;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return false;return true};var Dt=class e{amount;symbol;constructor(t,r){this.amount=t,this.symbol=r==="HIVE"?"STEEM":r==="HBD"?"SBD":r;}static fromString(t,r=null){let[n,o]=t.split(" ");if(["STEEM","VESTS","SBD","TESTS","TBD","HIVE","HBD"].indexOf(o)===-1)throw new Error(`Invalid asset symbol: ${o}`);if(r&&o!==r)throw new Error(`Invalid asset, expected symbol: ${r} got: ${o}`);let i=Number.parseFloat(n);if(!Number.isFinite(i))throw new Error(`Invalid asset amount: ${n}`);return new e(i,o)}static from(t,r){if(t instanceof e){if(r&&t.symbol!==r)throw new Error(`Invalid asset, expected symbol: ${r} got: ${t.symbol}`);return t}else {if(typeof t=="number"&&Number.isFinite(t))return new e(t,r||"STEEM");if(typeof t=="string")return e.fromString(t,r);throw new Error(`Invalid asset '${String(t)}'`)}}getPrecision(){switch(this.symbol){case "TESTS":case "TBD":case "STEEM":case "SBD":case "HBD":case "HIVE":return 3;case "VESTS":return 6;default:return 3}}toString(){return `${this.amount.toFixed(this.getPrecision())} ${this.symbol}`}toJSON(){return this.toString()}};var Kt=class e{buffer;static from(t){return t instanceof e?t:t instanceof Uint8Array?new e(t):typeof t=="string"?new e(utils_js.hexToBytes(t)):new e(new Uint8Array(t))}constructor(t){this.buffer=t;}toString(){return utils_js.bytesToHex(this.buffer)}toJSON(){return this.toString()}};var R={vote:0,comment:1,transfer:2,transfer_to_vesting:3,withdraw_vesting:4,limit_order_create:5,limit_order_cancel:6,feed_publish:7,convert:8,account_create:9,account_update:10,witness_update:11,account_witness_vote:12,account_witness_proxy:13,custom:15,delete_comment:17,custom_json:18,comment_options:19,set_withdraw_vesting_route:20,limit_order_create2:21,claim_account:22,create_claimed_account:23,request_account_recovery:24,recover_account:25,change_recovery_account:26,escrow_transfer:27,escrow_dispute:28,escrow_release:29,escrow_approve:31,transfer_to_savings:32,transfer_from_savings:33,cancel_transfer_from_savings:34,decline_voting_rights:36,reset_account:37,set_reset_account:38,claim_reward_balance:39,delegate_vesting_shares:40,account_create_with_delegation:41,witness_set_properties:42,account_update2:43,create_proposal:44,update_proposal_votes:45,remove_proposal:46,update_proposal:47,collateralized_convert:48,recurrent_transfer:49},se=()=>{throw new Error("Void can not be serialized")},b=(e,t)=>{e.writeVString(t);},Ms=(e,t)=>{e.writeInt16(t);},Qn=(e,t)=>{e.writeInt64(t);},Bn=(e,t)=>{e.writeUint8(t);},pe=(e,t)=>{e.writeUint16(t);},X=(e,t)=>{e.writeUint32(t);},Un=(e,t)=>{e.writeUint64(t);},we=(e,t)=>{e.writeByte(t?1:0);},Hn=e=>(t,r)=>{let[n,o]=r;t.writeVarint32(n),e[n](t,o);},I=(e,t)=>{let r=Dt.from(t),n=r.getPrecision();e.writeInt64(Math.round(r.amount*Math.pow(10,n))),e.writeUint8(n);for(let o=0;o<7;o++)e.writeUint8(r.symbol.charCodeAt(o)||0);},Re=(e,t)=>{e.writeUint32(Math.floor(new Date(t+"Z").getTime()/1e3));},ge=(e,t)=>{t===null||typeof t=="string"&&t.slice(-39)==="1111111111111111111111111111111114T1Anm"?e.append(new Uint8Array(33).fill(0)):e.append(Y.from(t).key);},Vn=(e=null)=>(t,r)=>{r=Kt.from(r);let n=r.buffer.length;if(e){if(n!==e)throw new Error(`Unable to serialize binary. Expected ${e} bytes, got ${n}`)}else t.writeVarint32(n);t.append(r.buffer);},jn=Vn(),Ar=(e,t)=>(r,n)=>{r.writeVarint32(n.length);for(let[o,i]of n)e(r,o),t(r,i);},V=e=>(t,r)=>{t.writeVarint32(r.length);for(let n of r)e(t,n);},le=e=>(t,r)=>{for(let[n,o]of e)try{o(t,r[n]);}catch(i){throw i.message=`${n}: ${i.message}`,i}},Me=e=>(t,r)=>{r!==void 0?(t.writeByte(1),e(t,r)):t.writeByte(0);},W=le([["weight_threshold",X],["account_auths",Ar(b,pe)],["key_auths",Ar(ge,pe)]]),Bs=le([["account",b],["weight",pe]]),xr=le([["base",I],["quote",I]]),Qs=le([["account_creation_fee",I],["maximum_block_size",X],["hbd_interest_rate",pe]]),k=(e,t)=>{let r=le(t);return (n,o)=>{n.writeVarint32(e),r(n,o);}},E={};E.account_create=k(R.account_create,[["fee",I],["creator",b],["new_account_name",b],["owner",W],["active",W],["posting",W],["memo_key",ge],["json_metadata",b]]);E.account_create_with_delegation=k(R.account_create_with_delegation,[["fee",I],["delegation",I],["creator",b],["new_account_name",b],["owner",W],["active",W],["posting",W],["memo_key",ge],["json_metadata",b],["extensions",V(se)]]);E.account_update=k(R.account_update,[["account",b],["owner",Me(W)],["active",Me(W)],["posting",Me(W)],["memo_key",ge],["json_metadata",b]]);E.account_witness_proxy=k(R.account_witness_proxy,[["account",b],["proxy",b]]);E.account_witness_vote=k(R.account_witness_vote,[["account",b],["witness",b],["approve",we]]);E.cancel_transfer_from_savings=k(R.cancel_transfer_from_savings,[["from",b],["request_id",X]]);E.change_recovery_account=k(R.change_recovery_account,[["account_to_recover",b],["new_recovery_account",b],["extensions",V(se)]]);E.claim_account=k(R.claim_account,[["creator",b],["fee",I],["extensions",V(se)]]);E.claim_reward_balance=k(R.claim_reward_balance,[["account",b],["reward_hive",I],["reward_hbd",I],["reward_vests",I]]);E.comment=k(R.comment,[["parent_author",b],["parent_permlink",b],["author",b],["permlink",b],["title",b],["body",b],["json_metadata",b]]);E.comment_options=k(R.comment_options,[["author",b],["permlink",b],["max_accepted_payout",I],["percent_hbd",pe],["allow_votes",we],["allow_curation_rewards",we],["extensions",V(Hn([le([["beneficiaries",V(Bs)]])]))]]);E.convert=k(R.convert,[["owner",b],["requestid",X],["amount",I]]);E.create_claimed_account=k(R.create_claimed_account,[["creator",b],["new_account_name",b],["owner",W],["active",W],["posting",W],["memo_key",ge],["json_metadata",b],["extensions",V(se)]]);E.custom=k(R.custom,[["required_auths",V(b)],["id",pe],["data",jn]]);E.custom_json=k(R.custom_json,[["required_auths",V(b)],["required_posting_auths",V(b)],["id",b],["json",b]]);E.decline_voting_rights=k(R.decline_voting_rights,[["account",b],["decline",we]]);E.delegate_vesting_shares=k(R.delegate_vesting_shares,[["delegator",b],["delegatee",b],["vesting_shares",I]]);E.delete_comment=k(R.delete_comment,[["author",b],["permlink",b]]);E.escrow_approve=k(R.escrow_approve,[["from",b],["to",b],["agent",b],["who",b],["escrow_id",X],["approve",we]]);E.escrow_dispute=k(R.escrow_dispute,[["from",b],["to",b],["agent",b],["who",b],["escrow_id",X]]);E.escrow_release=k(R.escrow_release,[["from",b],["to",b],["agent",b],["who",b],["receiver",b],["escrow_id",X],["hbd_amount",I],["hive_amount",I]]);E.escrow_transfer=k(R.escrow_transfer,[["from",b],["to",b],["hbd_amount",I],["hive_amount",I],["escrow_id",X],["agent",b],["fee",I],["json_meta",b],["ratification_deadline",Re],["escrow_expiration",Re]]);E.feed_publish=k(R.feed_publish,[["publisher",b],["exchange_rate",xr]]);E.limit_order_cancel=k(R.limit_order_cancel,[["owner",b],["orderid",X]]);E.limit_order_create=k(R.limit_order_create,[["owner",b],["orderid",X],["amount_to_sell",I],["min_to_receive",I],["fill_or_kill",we],["expiration",Re]]);E.limit_order_create2=k(R.limit_order_create2,[["owner",b],["orderid",X],["amount_to_sell",I],["exchange_rate",xr],["fill_or_kill",we],["expiration",Re]]);E.recover_account=k(R.recover_account,[["account_to_recover",b],["new_owner_authority",W],["recent_owner_authority",W],["extensions",V(se)]]);E.request_account_recovery=k(R.request_account_recovery,[["recovery_account",b],["account_to_recover",b],["new_owner_authority",W],["extensions",V(se)]]);E.reset_account=k(R.reset_account,[["reset_account",b],["account_to_reset",b],["new_owner_authority",W]]);E.set_reset_account=k(R.set_reset_account,[["account",b],["current_reset_account",b],["reset_account",b]]);E.set_withdraw_vesting_route=k(R.set_withdraw_vesting_route,[["from_account",b],["to_account",b],["percent",pe],["auto_vest",we]]);E.transfer=k(R.transfer,[["from",b],["to",b],["amount",I],["memo",b]]);E.transfer_from_savings=k(R.transfer_from_savings,[["from",b],["request_id",X],["to",b],["amount",I],["memo",b]]);E.transfer_to_savings=k(R.transfer_to_savings,[["from",b],["to",b],["amount",I],["memo",b]]);E.transfer_to_vesting=k(R.transfer_to_vesting,[["from",b],["to",b],["amount",I]]);E.vote=k(R.vote,[["voter",b],["author",b],["permlink",b],["weight",Ms]]);E.withdraw_vesting=k(R.withdraw_vesting,[["account",b],["vesting_shares",I]]);E.witness_update=k(R.witness_update,[["owner",b],["url",b],["block_signing_key",ge],["props",Qs],["fee",I]]);E.witness_set_properties=k(R.witness_set_properties,[["owner",b],["props",Ar(b,jn)],["extensions",V(se)]]);E.account_update2=k(R.account_update2,[["account",b],["owner",Me(W)],["active",Me(W)],["posting",Me(W)],["memo_key",Me(ge)],["json_metadata",b],["posting_json_metadata",b],["extensions",V(se)]]);E.create_proposal=k(R.create_proposal,[["creator",b],["receiver",b],["start_date",Re],["end_date",Re],["daily_pay",I],["subject",b],["permlink",b],["extensions",V(se)]]);E.update_proposal_votes=k(R.update_proposal_votes,[["voter",b],["proposal_ids",V(Qn)],["approve",we],["extensions",V(se)]]);E.remove_proposal=k(R.remove_proposal,[["proposal_owner",b],["proposal_ids",V(Qn)],["extensions",V(se)]]);var Us=le([["end_date",Re]]);E.update_proposal=k(R.update_proposal,[["proposal_id",Un],["creator",b],["daily_pay",I],["subject",b],["permlink",b],["extensions",V(Hn([se,Us]))]]);E.collateralized_convert=k(R.collateralized_convert,[["owner",b],["requestid",X],["amount",I]]);E.recurrent_transfer=k(R.recurrent_transfer,[["from",b],["to",b],["amount",I],["memo",b],["recurrence",pe],["executions",pe],["extensions",V(le([["type",Bn],["value",le([["pair_id",Bn]])]]))]]);var Hs=(e,t)=>{let r=E[t[0]];if(!r)throw new Error(`No serializer for operation: ${t[0]}`);try{r(e,t[1]);}catch(n){throw n.message=`${t[0]}: ${n.message}`,n}},Vs=le([["ref_block_num",pe],["ref_block_prefix",X],["expiration",Re],["operations",V(Hs)],["extensions",V(b)]]),js=le([["from",ge],["to",ge],["nonce",Un],["check",X],["encrypted",Vn()]]),de={Asset:I,Memo:js,Price:xr,PublicKey:ge,String:b,Transaction:Vs,UInt16:pe,UInt32:X};var lt=e=>new Promise(t=>setTimeout(t,e));var Jn=(()=>{try{return !(typeof navigator<"u"&&navigator.product==="ReactNative")&&typeof process<"u"&&process.versions!=null&&process.versions.node!=null}catch{return false}})();function Rr(){return Jn?{"User-Agent":O.userAgent}:{}}var Te={served:0,fallback:0,skipped:0,fallbackByReason:{status:0,rpcerror:0,timeout:0,transport:0,validate:0,parse:0}},Fe=class extends Error{constructor(r,n){super(n);this.reason=r;}reason},Ln=e=>e instanceof Error?e.message:typeof e=="string"?e:String(e),Nt=0,$n=0;async function Ls(e,t,r,n,o,i){let s=t.indexOf(".");if(s<=0||s===t.length-1)throw new Fe("transport",`method without an api prefix: ${t}`);let{signal:a,cleanup:c}=Tr(Math.min(e.timeoutMs,n)),{signal:p,cleanup:l}=Ut(a,o);try{let m;try{m=await fetch(e.url,{method:"POST",body:JSON.stringify({api:t.slice(0,s),method:t.slice(s+1),params:r}),headers:{"Content-Type":"application/json",...Rr(),...e.headers},signal:p});}catch(g){throw o?.aborted?g:new Fe(a.aborted?"timeout":"transport",Ln(g))}if(m.status!==200){try{await m.body?.cancel();}catch{}let g=m.status===502&&(m.headers.get("x-ssr-cache")??"").toUpperCase()==="RPCERROR";throw new Fe(g?"rpcerror":"status",g?"proxy relayed a node error":`proxy answered ${m.status}`)}let f;try{f=await m.json();}catch(g){throw o?.aborted?g:new Fe(a.aborted?"timeout":"parse",Ln(g))}if(i&&!i(f))throw new Fe("validate","proxy result rejected by validator");return f}finally{c(),l();}}var Z=class extends Error{name="RPCError";data;code;stack=void 0;constructor(t){super(t.message),this.code=t.code,"data"in t&&(this.data=t.data);}},Be=class extends Error{node;rateLimitMs;isRateLimit;constructor(t,r,n={}){super(r),this.node=t,this.rateLimitMs=n.rateLimitMs??0,this.isRateLimit=n.isRateLimit??false;}};function Yn(e){if(!e)return 0;let t=Number(e);if(Number.isFinite(t))return t>0?t*1e3:0;let r=Date.parse(e);if(Number.isFinite(r)){let n=r-Date.now();return n>0?n:0}return 0}var $s=["ECONNREFUSED","ENOTFOUND","EHOSTUNREACH","EAI_AGAIN"],Ws=["Failed to fetch","NetworkError when attempting to fetch","Load failed","fetch failed"];function Gs(e){if(!e)return "";let t=[String(e.name||""),String(e.message||""),String(e.code||"")],r=e.cause;for(let n=0;r&&n<5;n++)t.push(String(r.code||""),String(r.message||"")),r=r.cause;return t.join(" ")}function zs(e){if(!e)return false;if(e instanceof Be)return true;if(e instanceof Z)return false;let t=Gs(e);return !!($s.some(r=>t.includes(r))||Ws.some(r=>t.includes(r))||e instanceof SyntaxError||/Unexpected token|JSON\.parse|Unexpected end of JSON/i.test(t))}function Or(e,t){return !!(e===-32603||e<=-32e3&&e>=-32099||e===-32601||e===-32602&&/unable to parse|endpoint data|internal/i.test(t))}function Xn(e){let t=e.indexOf(".");return t>0?e.slice(0,t):e}var Js=1e4,Ys=6e4,Xs=12e4,Wn=2,Gn=6e4,zn=12e4,Zs=30,dt=.3,Sr=3,mt=5*6e4,Zn=6e4,eo=1e3,to=2e3,Bt=class{health=new Map;getOrCreate(t){let r=this.health.get(t);return r||(r={consecutiveFailures:0,lastFailureTime:0,rateLimitedUntil:0,rateLimitStreak:0,lastRateLimitAt:0,apiFailures:new Map,headBlock:0,headBlockUpdatedAt:0,ewmaLatencyMs:void 0,latencySampleCount:0,latencyUpdatedAt:0,lastProbeAt:Date.now(),apiLatency:new Map},this.health.set(t,r)),r}recordSuccess(t,r,n,o){let i=this.getOrCreate(t);if(i.consecutiveFailures=0,i.rateLimitStreak=0,r){let s=i.apiFailures.get(r);(!s||!(s.defective&&s.cooldownUntil>Date.now()))&&i.apiFailures.delete(r);}typeof n=="number"&&Number.isFinite(n)&&n>=0&&this.recordLatency(i,n,o??r);}recordSlowFailure(t,r,n){!Number.isFinite(r)||r<to||this.recordLatency(this.getOrCreate(t),r,n);}getUsableLatencyMs(t,r){let n=this.health.get(t);if(!n)return;let o=Date.now();if(r!==void 0){let i=n.apiLatency.get(r);return i&&i.sampleCount>=Sr&&o-i.updatedAt<=mt?i.ewmaMs:void 0}return this.isLatencyUsable(n,o)?n.ewmaLatencyMs:void 0}recordCensoredLatency(t,r,n){!Number.isFinite(r)||r<50||this.recordLatency(this.getOrCreate(t),r,n);}recordLatency(t,r,n){let o=Date.now();if(t.latencyUpdatedAt>0&&o-t.latencyUpdatedAt>mt&&(t.ewmaLatencyMs=void 0,t.latencySampleCount=0,t.apiLatency.clear()),t.ewmaLatencyMs=t.ewmaLatencyMs===void 0?r:dt*r+(1-dt)*t.ewmaLatencyMs,t.latencySampleCount++,t.latencyUpdatedAt=o,n!==void 0){let i=t.apiLatency.get(n);!i||o-i.updatedAt>mt?t.apiLatency.set(n,{ewmaMs:r,sampleCount:1,updatedAt:o}):(i.ewmaMs=dt*r+(1-dt)*i.ewmaMs,i.sampleCount++,i.updatedAt=o);}}recordFailure(t,r){let n=this.getOrCreate(t);if(r){let o=Date.now(),i=n.apiFailures.get(r)??{count:0,cooldownUntil:0,lastFailureTime:0};(i.cooldownUntil>0&&i.cooldownUntil<=o||i.lastFailureTime>0&&o-i.lastFailureTime>3e4)&&(i.count=0,i.cooldownUntil=0),i.count++,i.lastFailureTime=o,i.count>=Wn&&(i.cooldownUntil=o+Gn),n.apiFailures.set(r,i);}else n.consecutiveFailures++,n.lastFailureTime=Date.now();}recordDefectiveResponse(t,r){let n=this.getOrCreate(t),o=Date.now(),i=n.apiFailures.get(r)??{count:0,cooldownUntil:0,lastFailureTime:0};i.count=Math.max(i.count+1,Wn),i.lastFailureTime=o,i.cooldownUntil=o+Gn,i.defective=true,n.apiFailures.set(r,i);}recordRateLimit(t,r){let n=this.getOrCreate(t),o=Date.now();n.rateLimitStreak>0&&o-n.lastRateLimitAt>Xs&&(n.rateLimitStreak=0);let i=typeof r=="number"&&Number.isFinite(r)&&r>0,s=i?r:Math.min(Js*2**n.rateLimitStreak,Ys);i||n.rateLimitStreak++,n.lastRateLimitAt=o,n.rateLimitedUntil=i?o+s:Math.max(n.rateLimitedUntil,o+s),n.consecutiveFailures++,n.lastFailureTime=o;}recordHeadBlock(t,r){if(!r||!Number.isFinite(r))return;let n=this.getOrCreate(t);n.headBlock=r,n.headBlockUpdatedAt=Date.now();}consensusHeadBlock(){let t=Date.now(),r=[];for(let n of this.health.values())n.headBlock>0&&t-n.headBlockUpdatedAt<=zn&&r.push(n.headBlock);return r.length<2?0:(r.sort((n,o)=>n-o),r[Math.floor((r.length-1)/2)])}isNodeHealthy(t,r){let n=this.health.get(t);if(!n)return true;let o=Date.now();if(n.rateLimitedUntil>o||n.consecutiveFailures>=3&&o-n.lastFailureTime<3e4)return false;if(r){let s=n.apiFailures.get(r);if(s&&s.cooldownUntil>o)return false}let i=this.consensusHeadBlock();return !(i>0&&n.headBlock>0&&o-n.headBlockUpdatedAt<=zn&&i-n.headBlock>Zs)}getOrderedNodes(t,r){let n=[],o=[];for(let c of t)this.isNodeHealthy(c,r)?n.push(c):o.push(c);if(n.length<=1)return [...n,...o];let i=Date.now(),s=n.map((c,p)=>({node:c,i:p,score:this.scoreNode(c,i)})).sort((c,p)=>c.score-p.score||c.i-p.i).map(c=>c.node),a=this.pickReprobeCandidate(n,i);return a&&s[0]!==a?[a,...s.filter(c=>c!==a),...o]:[...s,...o]}isLatencyUsable(t,r){return !!t&&t.ewmaLatencyMs!==void 0&&t.latencySampleCount>=Sr&&r-t.latencyUpdatedAt<=mt}scoreNode(t,r){let n=this.health.get(t);return this.isLatencyUsable(n,r)?n.ewmaLatencyMs:eo}pickReprobeCandidate(t,r){let n=r-Zn,o,i=1/0;for(let s of t){let a=this.getOrCreate(s),c=Math.max(a.latencyUpdatedAt,a.lastProbeAt);c<=n&&c<i&&(o=s,i=c);}return o&&(this.getOrCreate(o).lastProbeAt=r),o}},j=new Bt,ke=new Bt,Cr=class{tokens=O.resilience.hedgeBucketCapacity;trySpend(){return this.clamp(),this.tokens>=1-1e-9?(this.tokens-=1,true):false}refill(){this.clamp(),this.tokens=Math.min(O.resilience.hedgeBucketCapacity,this.tokens+O.resilience.hedgeRefillPerSuccess);}clamp(){this.tokens>O.resilience.hedgeBucketCapacity&&(this.tokens=O.resilience.hedgeBucketCapacity);}get available(){return this.tokens}reset(t=O.resilience.hedgeBucketCapacity){this.tokens=t;}},Er=new Cr;function Qt(e,t,r,n,o){let i=O.resilience;if(!i.adaptiveTimeout||o)return n;let s=e.getUsableLatencyMs(t,r);return s===void 0?n:Math.ceil(Math.min(n,Math.max(i.adaptiveTimeoutFloorMs,i.adaptiveTimeoutFactor*s)))}function kr(e,t,r,n){r instanceof Be?r.isRateLimit?e.recordRateLimit(t,r.rateLimitMs||void 0):e.recordFailure(t,n):r instanceof Z?e.recordFailure(t,n):e.recordFailure(t);}function ro(e,t,r,n){if(!n||typeof n!="object"||!r.includes("get_dynamic_global_properties"))return;let o=n.head_block_number;typeof o=="number"&&e.recordHeadBlock(t,o);}function ea(){if(typeof DOMException<"u")return new DOMException("The operation was aborted due to timeout","TimeoutError");let e=new Error("The operation was aborted due to timeout");return e.name="TimeoutError",e}function Tr(e){if(e=Math.ceil(e),typeof AbortSignal.timeout=="function")return {signal:AbortSignal.timeout(e),cleanup:()=>{}};let t=new AbortController,r=setTimeout(()=>t.abort(ea()),e);return {signal:t.signal,cleanup:()=>clearTimeout(r)}}function Ut(e,t){if(!t)return {signal:e,cleanup:()=>{}};if(typeof AbortSignal.any=="function")return {signal:AbortSignal.any([e,t]),cleanup:()=>{}};let r=new AbortController;if(e.aborted)return r.abort(e.reason),{signal:r.signal,cleanup:()=>{}};if(t.aborted)return r.abort(t.reason),{signal:r.signal,cleanup:()=>{}};let n=()=>r.abort(e.reason),o=()=>r.abort(t.reason);e.addEventListener("abort",n,{once:true}),t.addEventListener("abort",o,{once:true});let i=()=>{e.removeEventListener("abort",n),t.removeEventListener("abort",o);};return {signal:r.signal,cleanup:i}}var ft=async(e,t,r,n=O.timeout,o=false,i)=>{let s=Math.floor(Math.random()*1e8),a={jsonrpc:"2.0",method:t,params:r,id:s},{signal:c,cleanup:p}=Tr(n),{signal:l,cleanup:m}=Ut(c,i),f=()=>{p(),m();};try{let g=await fetch(e,{method:"POST",body:JSON.stringify(a),headers:{"Content-Type":"application/json",...Rr()},signal:l});if(g.status===429)throw new Be(e,"HTTP 429 Rate Limited",{rateLimitMs:Yn(g.headers.get("Retry-After")),isRateLimit:!0});if(g.status>=500&&g.status<600)throw new Be(e,`HTTP ${g.status} from ${e}`);let _=await g.json();if(!_||typeof _.id>"u"||_.id!==s||_.jsonrpc!=="2.0")throw new Error("JSONRPC id mismatch");if("result"in _)return _.result;if("error"in _){let P=_.error;throw "message"in P&&"code"in P?new Z(P):_.error}throw _}catch(g){if(g instanceof Z||g instanceof Be||i?.aborted)throw g;if(o)return ft(e,t,r,n,false,i);throw g}finally{f();}};function Mt(){return lt(50+Math.random()*50)}function ta(e){let{method:t,params:r,api:n,primary:o,hedgePool:i,callerTimeout:s,explicitTimeout:a,deadlineAt:c,externalSignal:p,onHedgeFired:l,validate:m}=e;return new Promise((f,g)=>{let _=false,P=0,x=false,C=false,T,ce,Ce=0,A=[],H=$=>{if(!_){_=true,ce!==void 0&&(clearTimeout(ce),ce=void 0);for(let q of A)q.signal.aborted||q.abort();$();}},L=($,q)=>{P++;let fe=new AbortController;A.push(fe);let pt=Ut(fe.signal,p),Ts=Qt(j,$,t,s,a),gr=Date.now();q||(Ce=gr),ft($,t,r,Ts,false,pt.signal).then(ie=>{if(pt.cleanup(),P--,q||(C=true),!_){if(m&&!m(ie)){if(j.recordDefectiveResponse($,n),T=new Error(`[hive-tx] response validation failed for ${t} from ${$}`),!q&&!x){H(()=>g(T));return}P===0&&H(()=>g(T));return}j.recordSuccess($,n,Date.now()-gr,t),ro(j,$,t,ie),q?C||j.recordCensoredLatency(o,Date.now()-Ce,t):x||Er.refill(),H(()=>f(ie));}}).catch(ie=>{if(pt.cleanup(),P--,q||(C=true),!_){if(p?.aborted){H(()=>g(ie));return}if(ie instanceof Z&&!Or(ie.code,ie.message)){H(()=>g(ie));return}if(kr(j,$,ie,n),j.recordSlowFailure($,Date.now()-gr,t),T=ie,!q&&!x){H(()=>g(ie));return}P===0&&H(()=>g(T));}});};L(o,false);let Q=j.getUsableLatencyMs(o,t)??0,J=Qt(j,o,t,s,a),z=Math.min(Math.max(O.resilience.hedgeDelayFloorMs,O.resilience.hedgeDelayFactor*Q),.8*J);ce=setTimeout(()=>{if(ce=void 0,_||p?.aborted||Date.now()>=c)return;let $=i.filter(fe=>j.isNodeHealthy(fe,n));if($.length===0)return;let q=$[Math.floor(Math.random()*$.length)];Er.trySpend()&&(x=true,l(q),L(q,true));},z);})}var y=async(e,t=[],r,n=O.retry,o,i)=>{if(!Array.isArray(O.nodes))throw new Error("config.nodes is not an array");if(O.nodes.length===0)throw new Error("config.nodes is empty");let s=r!==void 0,a=r??O.timeout,c=Xn(e),p=It;if(p&&Jn&&p.methodSet.has(e))if(Date.now()<$n)Te.skipped++;else try{let g=await Ls(p,e,t,a,o,i);return Te.served++,Nt=0,g}catch(g){if(o?.aborted)throw g;Te.fallback++;let _=g instanceof Fe?g.reason:"transport";Te.fallbackByReason[_]=(Te.fallbackByReason[_]??0)+1,_==="rpcerror"?Nt=0:++Nt>=p.failureThreshold&&($n=Date.now()+p.cooldownMs,Nt=0);}let l=Date.now()+O.resilience.totalBudgetFactor*a,m=new Set,f;for(let g=0;g<=n&&!(g>0&&Date.now()>=l);g++){let _=j.getOrderedNodes(O.nodes,c),P=_.find(T=>!m.has(T));P||(m.clear(),P=_[0]),m.add(P);let x=[];if(O.resilience.hedge&&j.getUsableLatencyMs(P,e)!==void 0&&(x=_.filter(T=>!m.has(T)&&j.isNodeHealthy(T,c)).slice(0,3)),x.length>0)try{return await ta({method:e,params:t,api:c,primary:P,hedgePool:x,callerTimeout:a,explicitTimeout:s,deadlineAt:l,externalSignal:o,onHedgeFired:T=>m.add(T),validate:i})}catch(T){if(T instanceof Z&&!Or(T.code,T.message)||o?.aborted)throw T;f=T,g<n&&await Mt();continue}let C=Date.now();try{let T=await ft(P,e,t,Qt(j,P,e,a,s),!1,o);if(i&&!i(T)){j.recordDefectiveResponse(P,c),f=new Error(`[hive-tx] response validation failed for ${e} from ${P}`),g<n&&await Mt();continue}return j.recordSuccess(P,c,Date.now()-C,e),Er.refill(),ro(j,P,e,T),T}catch(T){if(T instanceof Z&&!Or(T.code,T.message)||o?.aborted)throw T;kr(j,P,T,c),j.recordSlowFailure(P,Date.now()-C,e),f=T,g<n&&await Mt();}}throw f},Ye=async(e,t=[],r=O.broadcastTimeout,n)=>{if(!Array.isArray(O.nodes))throw new Error("config.nodes is not an array");if(O.nodes.length===0)throw new Error("config.nodes is empty");let o=Xn(e),i=new Set,s;for(let a=0;a<O.nodes.length;a++){let p=j.getOrderedNodes(O.nodes,o).find(l=>!i.has(l));if(!p)break;if(i.add(p),n?.aborted)throw new Error("Aborted");try{let l=await ft(p,e,t,r,!1,n);return j.recordSuccess(p,o),l}catch(l){if(l instanceof Z||n?.aborted||(kr(j,p,l,o),s=l,!zs(l)))throw l}}throw s},ra={balance:"/balance-api",hafah:"/hafah-api",hafbe:"/hafbe-api",hivemind:"/hivemind-api",hivesense:"/hivesense-api",reputation:"/reputation-api","nft-tracker":"/nft-tracker-api",hafsql:"/hafsql",status:"/status-api"};async function te(e,t,r,n,o=O.retry,i){if(!Array.isArray(O.restNodes))throw new Error("config.restNodes is not an array");if(O.restNodes.length===0)throw new Error("config.restNodes is empty");let s=n!==void 0,a=n??O.timeout,c=Date.now()+O.resilience.totalBudgetFactor*a,p=`${e}:${t}`,l=O.restNodesByApi?.[e]?.length?O.restNodesByApi[e]:O.restNodes,m=new Set,f,g=false;for(let _=0;_<=o&&!(_>0&&Date.now()>=c);_++){let P=ke.getOrderedNodes(l,e),x=P.find(q=>!m.has(q));x||(m.clear(),x=P[0]),m.add(x);let C=x+ra[e],T=t,ce=r||{},Ce=new Set;Object.entries(ce).forEach(([q,fe])=>{T.includes(`{${q}}`)&&(T=T.replace(`{${q}}`,encodeURIComponent(String(fe))),Ce.add(q));});let A=new URL(C+T);if(Object.entries(ce).forEach(([q,fe])=>{Ce.has(q)||(Array.isArray(fe)?fe.forEach(pt=>A.searchParams.append(q,String(pt))):A.searchParams.set(q,String(fe)));}),i?.aborted)throw new Error("Aborted");g=false;let{signal:H,cleanup:L}=Tr(Qt(ke,x,p,a,s)),{signal:Q,cleanup:J}=Ut(H,i),z=()=>{L(),J();},$=Date.now();try{let q=await fetch(A.toString(),{signal:Q,headers:Rr()});if(q.status===404)throw new Error("HTTP 404 - Hint: can happen on wrong params");if(q.status===429)throw ke.recordRateLimit(x,Yn(q.headers.get("Retry-After"))||void 0),g=!0,new Error(`HTTP 429 Rate Limited by ${x}`);if(q.status===503)throw ke.recordFailure(x,e),g=!0,new Error(`HTTP 503 Service Unavailable from ${x}`);if(!q.ok)throw ke.recordFailure(x,e),g=!0,new Error(`HTTP ${q.status} from ${x}`);return ke.recordSuccess(x,e,Date.now()-$,p),q.json()}catch(q){if(q?.message?.includes("HTTP 404")||i?.aborted)throw q;g||ke.recordFailure(x,e),ke.recordSlowFailure(x,Date.now()-$,p),f=q,_<o&&await Mt();}finally{z();}}throw f}var Ht=async(e,t=[],r=2,n)=>{if(!Array.isArray(O.nodes))throw new Error("config.nodes is not an Array");if(r>O.nodes.length)throw new Error("quorum > config.nodes.length");let i=(c=>{let p=[...c];for(let l=p.length-1;l>0;l--){let m=Math.floor(Math.random()*(l+1));[p[l],p[m]]=[p[m],p[l]];}return p})(O.nodes),s=Math.min(r,i.length),a=[];for(;s>0&&i.length>0;){let c=i.splice(0,s),p=[],l=[];for(let f=0;f<c.length;f++)p.push(ft(c[f],e,t,void 0,true,n).then(g=>l.push(g)).catch(()=>{}));await Promise.all(p),a.push(...l);let m=na(a,r);if(m)return m;if(s=Math.min(r,i.length),s===0)throw new Error("No more nodes available.")}throw new Error("Couldn't reach quorum.")};function na(e,t){let r=new Map;for(let o of e){let i=JSON.stringify(o);r.has(i)||r.set(i,[]),r.get(i).push(o);}let n=Array.from(r.values()).find(o=>o.length>=t);return n?n[0]:null}var ia=utils_js.hexToBytes(O.chain_id),Qe=class e{transaction;expiration=6e4;txId;constructor(t){t?.transaction&&(t.transaction instanceof e?(this.transaction=t.transaction.transaction,this.expiration=t.transaction.expiration):this.transaction=t.transaction,this.transaction&&!Array.isArray(this.transaction.signatures)&&(this.transaction.signatures=[]),this.txId=this.digest().txId),t?.expiration&&(this.expiration=t.expiration);}async addOperation(t,r){this.transaction||await this.createTransaction(this.expiration),this.transaction.operations.push([t,r]);}sign(t){if(!this.transaction)throw new Error("First create a transaction by .addOperation()");if(this.transaction){let{digest:r,txId:n}=this.digest();Array.isArray(t)||(t=[t]);for(let o of t){let i=o.sign(r);this.transaction.signatures.push(i.customToString());}return this.txId=n,this.transaction}else throw new Error("No transaction to sign")}async broadcast(t=false){if(!this.transaction)throw new Error("Attempted to broadcast an empty transaction. Add operations by .addOperation()");if(this.transaction.signatures.length===0)throw new Error("Attempted to broadcast a transaction with no signatures. Sign using .sign(keys)");try{await Ye("condenser_api.broadcast_transaction",[this.transaction]);}catch(i){if(!(i instanceof Z&&i.message.includes("Duplicate transaction check failed")))throw i}if(this.txId||(this.txId=this.digest().txId),!t)return {tx_id:this.txId,status:"unknown"};let r=60;await lt(1e3);let n=await this.checkStatus(),o=1;for(;n?.status!=="within_irreversible_block"&&n?.status!=="expired_irreversible"&&n?.status!=="too_old"&&o<r;)await lt(1e3+o*300),n=await this.checkStatus(),o++;return {tx_id:this.txId,status:n?.status??"unknown"}}digest(){if(!this.transaction)throw new Error("First create a transaction by .addOperation()");let t=new D(D.DEFAULT_CAPACITY,D.LITTLE_ENDIAN),r={...this.transaction};try{de.Transaction(t,r);}catch(s){throw new Error("Unable to serialize transaction: "+s)}t.flip();let n=new Uint8Array(t.toBuffer()),o=utils_js.bytesToHex(sha2_js.sha256(n)).slice(0,40);return {digest:sha2_js.sha256(new Uint8Array([...ia,...n])),txId:o}}addSignature(t){if(!this.transaction)throw new Error("First create a transaction by .create(operations)");if(typeof t!="string")throw new Error("Signature must be string");if(t.length!==130)throw new Error("Signature must be 130 characters long");return this.transaction.signatures.push(t),this.transaction}async checkStatus(){return this.txId||(this.txId=this.digest().txId),y("transaction_status_api.find_transaction",{transaction_id:this.txId,expiration:this.transaction?.expiration})}createTransaction=async t=>{let r=await y("condenser_api.get_dynamic_global_properties",[]),n=utils_js.hexToBytes(r.head_block_id),o=Number(new Uint32Array(n.buffer,n.byteOffset+4,1)[0]),i=new Date(Date.now()+t).toISOString().slice(0,-5);this.transaction={expiration:i,extensions:[],operations:[],ref_block_num:r.head_block_number&65535,ref_block_prefix:o,signatures:[]};}};var uo=new Uint8Array([128]),U=class e{key;constructor(t){this.key=t;try{secp256k1_js.secp256k1.getPublicKey(t);}catch{throw new Error("invalid private key")}}static from(t){return typeof t=="string"?e.fromString(t):new e(t)}static fromString(t){return new e(ca(t).subarray(1))}static fromSeed(t){if(typeof t=="string")if(/^[0-9a-fA-F]+$/.test(t))t=utils_js.hexToBytes(t);else {let n=[];for(let o=0;o<t.length;o++){let i=t.charCodeAt(o);if(i<128)n.push(i);else if(i<2048)n.push(192|i>>6,128|i&63);else if(i>=55296&&i<=56319&&o+1<t.length){let s=t.charCodeAt(++o);i=65536+((i&1023)<<10)+(s&1023),n.push(240|i>>18,128|i>>12&63,128|i>>6&63,128|i&63);}else n.push(224|i>>12,128|i>>6&63,128|i&63);}t=new Uint8Array(n);}return new e(sha2_js.sha256(t))}static fromLogin(t,r,n="active"){let o=t+n+r;return e.fromSeed(o)}sign(t){let r=secp256k1_js.secp256k1.sign(t,this.key,{extraEntropy:true,format:"recovered",prehash:false}),n=parseInt(utils_js.bytesToHex(r.subarray(0,1)),16);return Ee.from((n+31).toString(16)+utils_js.bytesToHex(r.subarray(1)))}createPublic(t){return new Y(secp256k1_js.secp256k1.getPublicKey(this.key),t)}toString(){return ua(new Uint8Array([...uo,...this.key]))}inspect(){let t=this.toString();return `PrivateKey: ${t.slice(0,6)}...${t.slice(-6)}`}getSharedSecret(t){let r=secp256k1_js.secp256k1.getSharedSecret(this.key,t.key);return sha2_js.sha512(r.subarray(1))}static randomKey(){return new e(secp256k1_js.secp256k1.keygen().secretKey)}},co=e=>sha2_js.sha256(sha2_js.sha256(e)),ua=e=>{let t=co(e);return Mn__default.default.encode(new Uint8Array([...e,...t.slice(0,4)]))},ca=e=>{let t=Mn__default.default.decode(e);if(!so(t.slice(0,1),uo))throw new Error("Private key network id mismatch");let r=t.slice(-4),n=t.slice(0,-4),o=co(n).slice(0,4);if(!so(r,o))throw new Error("Private key checksum mismatch");return n},so=(e,t)=>{if(e===t)return true;if(e.byteLength!==t.byteLength)return false;let r=e.byteLength,n=0;for(;n<r&&e[n]===t[n];)n++;return n===r};var lo=(e,t,r,n=ga())=>fo(e,t,n,r),mo=(e,t,r,n,o)=>fo(e,t,r,n,o).message,fo=(e,t,r,n,o)=>{let i=r,s=e.getSharedSecret(t),a=new D(D.DEFAULT_CAPACITY,D.LITTLE_ENDIAN);a.writeUint64(i),a.append(s),a.flip();let c=sha2_js.sha512(new Uint8Array(a.toBuffer())),p=c.subarray(32,48),l=c.subarray(0,32),m=sha2_js.sha256(c).subarray(0,4),f=new D(D.DEFAULT_CAPACITY,D.LITTLE_ENDIAN);f.append(m),f.flip();let g=f.readUint32();if(o!==void 0){if(g!==o)throw new Error("Invalid key");n=ma(n,l,p);}else n=fa(n,l,p);return {nonce:i,message:n,checksum:g}},ma=(e,t,r)=>{let n=e;return n=aes_js.cbc(t,r).decrypt(n),n},fa=(e,t,r)=>{let n=e;return n=aes_js.cbc(t,r).encrypt(n),n},qr=null,ga=()=>{if(qr===null){let r=secp256k1_js.secp256k1.utils.randomSecretKey();qr=r[0]<<8|r[1];}let e=BigInt(Date.now()),t=++qr%65536;return e=e<<BigInt(16)|BigInt(t),e};var go=e=>{let t=va(e,33);return new Y(t)},ha=e=>e.readUint64(),_a=e=>e.readUint32(),wa=e=>{let t=e.readVarint32(),r=e.copy(e.offset,e.offset+t);return e.skip(t),new Uint8Array(r.toBuffer())},ba=e=>t=>{let r={},n=new D(D.DEFAULT_CAPACITY,D.LITTLE_ENDIAN);n.append(t),n.flip();for(let[o,i]of e)try{r[o]=i(n);}catch(s){throw s.message=`${o}: ${s.message}`,s}return r};function va(e,t){if(e){let r=e.copy(e.offset,e.offset+t);return e.skip(t),new Uint8Array(r.toBuffer())}else throw Error("No buffer found on first parameter")}var Pa=ba([["from",go],["to",go],["nonce",ha],["check",_a],["encrypted",wa]]),yo={Memo:Pa};var _o=(e,t,r,n)=>{if(!r.startsWith("#"))return r;r=r.substring(1),bo(),e=vo(e),t=Aa(t);let o=new D(D.DEFAULT_CAPACITY,D.LITTLE_ENDIAN);o.writeVString(r);let i=new Uint8Array(o.copy(0,o.offset).toBuffer()),{nonce:s,message:a,checksum:c}=lo(e,t,i,n),p=new D(D.DEFAULT_CAPACITY,D.LITTLE_ENDIAN);de.Memo(p,{check:c,encrypted:a,from:e.createPublic(),nonce:s,to:t}),p.flip();let l=new Uint8Array(p.toBuffer());return "#"+Mn__default.default.encode(l)},wo=(e,t)=>{if(!t.startsWith("#"))return t;t=t.substring(1),bo(),e=vo(e);let r=yo.Memo(Mn__default.default.decode(t)),{from:n,to:o,nonce:i,check:s,encrypted:a}=r,p=e.createPublic().toString()===new Y(n.key).toString()?new Y(o.key):new Y(n.key);r=mo(e,p,i,a,s);let l=new D(D.DEFAULT_CAPACITY,D.LITTLE_ENDIAN);return l.append(r),l.flip(),"#"+l.readVString()},Vt,bo=()=>{if(Vt===void 0){let e;Vt=true;try{let t="5JdeC9P7Pbd1uGdFVEsJ41EkEnADbbHGq6p1BwFxm6txNBsQnsw",n=_o(t,"STM8m5UgaFAAYQRuaNejYdS8FVLVp9Ss3K1qAVk5de6F8s3HnVbvA","#memo\u7231");e=wo(t,n);}finally{Vt=e==="#memo\u7231";}}if(Vt===false)throw new Error("This environment does not support encryption.")},vo=e=>typeof e=="string"?U.fromString(e):e,Aa=e=>typeof e=="string"?Y.fromString(e):e,Po={decode:wo,encode:_o};var oe={};kt(oe,{buildWitnessSetProperties:()=>Ra,makeBitMaskFilter:()=>Ca,operations:()=>Sa,validateUsername:()=>Oa});var Oa=e=>{let t="Account name should ";if(!e)return t+"not be empty.";let r=e.length;if(r<3)return t+"be longer.";if(r>16)return t+"be shorter.";/\./.test(e)&&(t="Each account segment should ");let n=e.split("."),o=n.length;for(let i=0;i<o;i++){let s=n[i];if(!/^[a-z]/.test(s))return t+"start with a lowercase letter.";if(!/^[a-z0-9-]*$/.test(s))return t+"have only lowercase letters, digits, or dashes.";if(!/[a-z0-9]$/.test(s))return t+"end with a lowercase letter or digit.";if(s.length<3)return t+"be longer."}return null},Sa={vote:0,comment:1,transfer:2,transfer_to_vesting:3,withdraw_vesting:4,limit_order_create:5,limit_order_cancel:6,feed_publish:7,convert:8,account_create:9,account_update:10,witness_update:11,account_witness_vote:12,account_witness_proxy:13,pow:14,custom:15,report_over_production:16,delete_comment:17,custom_json:18,comment_options:19,set_withdraw_vesting_route:20,limit_order_create2:21,claim_account:22,create_claimed_account:23,request_account_recovery:24,recover_account:25,change_recovery_account:26,escrow_transfer:27,escrow_dispute:28,escrow_release:29,pow2:30,escrow_approve:31,transfer_to_savings:32,transfer_from_savings:33,cancel_transfer_from_savings:34,custom_binary:35,decline_voting_rights:36,reset_account:37,set_reset_account:38,claim_reward_balance:39,delegate_vesting_shares:40,account_create_with_delegation:41,witness_set_properties:42,account_update2:43,create_proposal:44,update_proposal_votes:45,remove_proposal:46,update_proposal:47,collateralized_convert:48,recurrent_transfer:49,fill_convert_request:50,author_reward:51,curation_reward:52,comment_reward:53,liquidity_reward:54,interest:55,fill_vesting_withdraw:56,fill_order:57,shutdown_witness:58,fill_transfer_from_savings:59,hardfork:60,comment_payout_update:61,return_vesting_delegation:62,comment_benefactor_reward:63,producer_reward:64,clear_null_account_balance:65,proposal_pay:66,sps_fund:67,hardfork_hive:68,hardfork_hive_restore:69,delayed_voting:70,consolidate_treasury_balance:71,effective_comment_vote:72,ineffective_delete_comment:73,sps_convert:74,expired_account_notification:75,changed_recovery_account:76,transfer_to_vesting_completed:77,pow_reward:78,vesting_shares_split:79,account_created:80,fill_collateralized_convert_request:81,system_warning:82,fill_recurrent_transfer:83,failed_recurrent_transfer:84,limit_order_cancelled:85,producer_missed:86,proposal_fee:87,collateralized_convert_immediate_conversion:88,escrow_approved:89,escrow_rejected:90,proxy_cleared:91,declined_voting_rights:92},Ca=e=>e.reduce(Ea,[BigInt(0),BigInt(0)]).map(t=>t!==BigInt(0)?t.toString():null),Ea=([e,t],r)=>r<64?[e|BigInt(1)<<BigInt(r),t]:[e,t|BigInt(1)<<BigInt(r-64)],Ra=(e,t)=>{let r={extensions:[],owner:e,props:[]};for(let n of Object.keys(t)){if(t[n]===void 0)continue;let o;switch(n){case "key":case "new_signing_key":o=de.PublicKey;break;case "account_subsidy_budget":case "account_subsidy_decay":case "maximum_block_size":o=de.UInt32;break;case "hbd_interest_rate":o=de.UInt16;break;case "url":o=de.String;break;case "hbd_exchange_rate":o=de.Price;break;case "account_creation_fee":o=de.Asset;break;default:throw new Error(`Unknown witness prop: ${n}`)}r.props.push([n,ka(o,t[n])]);}return r.props.sort((n,o)=>n[0].localeCompare(o[0])),["witness_set_properties",r]},ka=(e,t)=>{let r=new D(D.DEFAULT_CAPACITY,D.LITTLE_ENDIAN);return e(r,t),r.flip(),utils_js.bytesToHex(new Uint8Array(r.toBuffer()))};function Wy(e){let t;if(typeof e=="string"){let r=[];for(let n=0;n<e.length;n++){let o=e.charCodeAt(n);if(o<128)r.push(o);else if(o<2048)r.push(192|o>>6,128|o&63);else if(o>=55296&&o<=56319&&n+1<e.length){let i=e.charCodeAt(++n);o=65536+((o&1023)<<10)+(i&1023),r.push(240|o>>18,128|o>>12&63,128|o>>6&63,128|o&63);}else r.push(224|o>>12,128|o>>6&63,128|o&63);}t=new Uint8Array(r);}else t=e;return sha2_js.sha256(t)}function Ao(e){try{return U.fromString(e),!0}catch{return false}}async function ee(e,t){let r=new Qe;for(let n of e)await r.addOperation(n[0],n[1]);return r.sign(t),Ye("condenser_api.broadcast_transaction_synchronous",[r.transaction])}async function xo(e,t){let r=new Qe;for(let n of e)await r.addOperation(n[0],n[1]);return r.sign(t),r.broadcast(false)}var Fa=432e3;function Oo(e,t){let r=Date.now()/1e3-t.last_update_time,n=Number(t.current_mana)+r*e/Fa,o=Math.round(n/e*1e4);return !isFinite(o)||o<0?o=0:o>1e4&&(o=1e4),{current_mana:n,max_mana:e,percentage:o}}function qa(e){let t=parseFloat(e.vesting_shares),r=parseFloat(e.delegated_vesting_shares),n=parseFloat(e.received_vesting_shares),o=parseFloat(e.vesting_withdraw_rate),i=(Number(e.to_withdraw)-Number(e.withdrawn))/1e6,s=Math.min(o,i);return t-s-r+n}function Ir(e){let t=qa(e)*1e6;return Oo(t,e.voting_manabar)}function jt(e){return Oo(Number(e.max_rc),e.rc_manabar)}var So=(c=>(c.COMMON="common",c.INFO="info",c.INSUFFICIENT_RESOURCE_CREDITS="insufficient_resource_credits",c.MISSING_AUTHORITY="missing_authority",c.TOKEN_EXPIRED="token_expired",c.NETWORK="network",c.TIMEOUT="timeout",c.VALIDATION="validation",c))(So||{});function Xe(e){let t=e?.error_description?String(e.error_description):"",r=e?.message?String(e.message):"",n=e?.error?String(e.error):"",o=t||r||String(e||""),i=a=>!!(n&&a.test(n)||t&&a.test(t)||r&&a.test(r)||o&&a.test(o));if(i(/please wait to transact/i)||i(/insufficient rc/i)||i(/rc mana|rc account|resource credits/i))return {message:"Insufficient Resource Credits. Please wait or power up.",type:"insufficient_resource_credits",originalError:e};if(i(/you may only post once every/i))return {message:"Please wait before posting again (minimum 3 second interval between comments).",type:"common",originalError:e};if(i(/your current vote on this comment is identical/i))return {message:"You have already voted with the same weight.",type:"info",originalError:e};if(i(/must claim something/i))return {message:"You must claim rewards before performing this action.",type:"info",originalError:e};if(i(/cannot claim that much vests/i))return {message:"Cannot claim that amount. Please check your pending rewards.",type:"info",originalError:e};if(i(/cannot delete a comment with net positive/i))return {message:"Cannot delete a comment with positive votes.",type:"info",originalError:e};if(i(/children == 0/i))return {message:"Cannot delete a comment with replies.",type:"common",originalError:e};if(i(/comment_cashout/i))return {message:"Cannot modify a comment that has already been paid out.",type:"common",originalError:e};if(i(/votes evaluating for comment that is paid out is forbidden/i))return {message:"Cannot vote on posts that have already been paid out.",type:"common",originalError:e};if(i(/no (active|owner|posting|memo) key available/i))return {message:"Key not available. Please provide your key to sign this operation.",type:"missing_authority",originalError:e};if(i(/missing (required )?active authority/i))return {message:"Missing active authority. This operation requires your active key.",type:"missing_authority",originalError:e};if(i(/missing (required )?owner authority/i))return {message:"Missing owner authority. This operation requires your owner key.",type:"missing_authority",originalError:e};if(i(/missing (required )?posting authority/i))return {message:"Missing posting authority. Please check your login method.",type:"missing_authority",originalError:e};if(n==="invalid_grant"||n==="unauthorized_access"||i(/token expired/i)||i(/invalid token/i)||i(/\bunauthorized\b/i)||i(/\bforbidden\b/i))return {message:"Authentication token expired. Please log in again.",type:"token_expired",originalError:e};if(i(/has already reblogged/i)||i(/already reblogged this post/i))return {message:"You have already reblogged this post.",type:"info",originalError:e};if(i(/duplicate transaction/i))return {message:"This transaction has already been processed.",type:"info",originalError:e};if(i(/econnrefused/i)||i(/connection refused/i)||i(/failed to fetch/i)||i(/\bnetwork[-\s]?(request|error|timeout|unreachable|down|failed)\b/i))return {message:"Network error. Please check your connection and try again.",type:"network",originalError:e};if(i(/timeout/i)||i(/timed out/i))return {message:"Request timed out. Please try again.",type:"timeout",originalError:e};if(i(/account.*does not exist/i)||i(/account not found/i))return {message:"Account not found. Please check the username.",type:"validation",originalError:e};if(i(/invalid memo key/i))return {message:"Invalid memo key. Cannot encrypt message.",type:"validation",originalError:e};if(i(/(?:insufficient.*(?:funds|balance)|(?:funds|balance).*insufficient)/i))return {message:"Insufficient funds for this transaction.",type:"validation",originalError:e};if(i(/\b(invalid|validation)\b/i))return {message:(e?.message||o).substring(0,150)||"Validation error occurred",type:"validation",originalError:e};if(e?.error_description&&typeof e.error_description=="string")return {message:e.error_description.substring(0,150),type:"common",originalError:e};if(e?.message&&typeof e.message=="string")return {message:e.message.substring(0,150),type:"common",originalError:e};let s;return typeof e=="object"&&e!==null?e.error_description?s=String(e.error_description):e.code?s=`Error code: ${e.code}`:o&&o!=="[object Object]"?s=o.substring(0,150):s="Unknown error occurred":s=o.substring(0,150)||"Unknown error occurred",{message:s,type:"common",originalError:e}}function Ia(e){let t=Xe(e);return [t.message,t.type]}function be(e){let{type:t}=Xe(e);return t==="missing_authority"||t==="token_expired"}function Da(e){let{type:t}=Xe(e);return t==="insufficient_resource_credits"}function Ka(e){let{type:t}=Xe(e);return t==="info"}function Na(e){let{type:t}=Xe(e);return t==="network"||t==="timeout"}async function ve(e,t,r,n,o="posting",i,s,a="async"){let c=n?.adapter;switch(e){case "key":{if(!c)throw new Error("No adapter provided for key-based auth");let p=i;if(p===void 0)switch(o){case "owner":if(c.getOwnerKey)p=await c.getOwnerKey(t);else throw new Error("Owner key not supported by adapter. Owner operations (like account recovery) require master password login or manual key entry.");break;case "active":c.getActiveKey&&(p=await c.getActiveKey(t));break;case "memo":if(c.getMemoKey)p=await c.getMemoKey(t);else throw new Error("Memo key not supported by adapter. Use memo encryption methods instead.");break;default:p=await c.getPostingKey(t);break}if(!p)throw new Error(`No ${o} key available for ${t}`);let l=U.fromString(p);return a==="async"?await xo(r,l):await ee(r,l)}case "hiveauth":{if(!c?.broadcastWithHiveAuth)throw new Error("HiveAuth not supported by adapter");return await c.broadcastWithHiveAuth(t,r,o)}case "hivesigner":{if(!c)throw new Error("No adapter provided for HiveSigner auth");if(o!=="posting"){if(c.broadcastWithHiveSigner)return await c.broadcastWithHiveSigner(t,r,o);throw new Error(`HiveSigner access token cannot sign ${o} operations. No platform broadcast available.`)}let p=s!==void 0?s:await c.getAccessToken(t);if(p)try{return (await new Co__default.default.Client({accessToken:p}).broadcast(r)).result}catch(l){if(c.broadcastWithHiveSigner&&be(l))return await c.broadcastWithHiveSigner(t,r,o);throw l}if(c.broadcastWithHiveSigner)return await c.broadcastWithHiveSigner(t,r,o);throw new Error(`No access token available for ${t}`)}case "keychain":{if(!c?.broadcastWithKeychain)throw new Error("Keychain not supported by adapter");return await c.broadcastWithKeychain(t,r,o)}case "custom":{if(!n?.broadcast)throw new Error("No custom broadcast function provided");return await n.broadcast(r,o)}default:throw new Error(`Unknown auth method: ${e}`)}}async function Ba(e,t,r,n="posting",o="async"){let i=r?.adapter;if(i?.getLoginType){let l=await i.getLoginType(e,n);if(l){let m=i.hasPostingAuthorization?await i.hasPostingAuthorization(e):false;if(n==="posting"&&m&&l==="key")try{return await ve("hivesigner",e,t,r,n,void 0,void 0,o)}catch(f){if(!be(f))throw f;console.warn("[SDK] HiveSigner token auth failed, falling back to key:",f);}if(n==="posting"&&m&&l==="keychain")try{return await ve("hivesigner",e,t,r,n,void 0,void 0,o)}catch(f){if(!be(f))throw f;console.warn("[SDK] HiveSigner token auth failed, falling back to keychain/snap:",f);}if(n==="posting"&&m&&l==="hiveauth")try{return await ve("hivesigner",e,t,r,n,void 0,void 0,o)}catch(f){if(!be(f))throw f;console.warn("[SDK] HiveSigner token auth failed, falling back to HiveAuth:",f);}try{return await ve(l,e,t,r,n,void 0,void 0,o)}catch(f){if(be(f)&&i.showAuthUpgradeUI&&(n==="posting"||n==="active")){let g=t.length>0?t[0][0]:"unknown",_=await i.showAuthUpgradeUI(n,g);if(!_)throw new Error(`Operation requires ${n} authority. User declined alternate auth.`);return await ve(_,e,t,r,n,void 0,void 0,o)}throw f}}if(n==="posting")try{return await ve("hivesigner",e,t,r,n,void 0,void 0,o)}catch(m){if(be(m)&&i.showAuthUpgradeUI){let f=t.length>0?t[0][0]:"unknown",g=await i.showAuthUpgradeUI(n,f);if(!g)throw new Error(`No login type available for ${e}. Please log in again.`);return await ve(g,e,t,r,n,void 0,void 0,o)}throw m}else if(n==="active"&&i.showAuthUpgradeUI){let m=t.length>0?t[0][0]:"unknown",f=await i.showAuthUpgradeUI(n,m);if(!f)throw new Error(`Operation requires ${n} authority. User declined alternate auth.`);return await ve(f,e,t,r,n,void 0,void 0,o)}}let s=r?.fallbackChain??["key","hiveauth","hivesigner","keychain","custom"],a=new Map;for(let l of s)try{let m=!1,f="",g,_;switch(l){case "key":if(!i)m=!0,f="No adapter provided";else {let P;switch(n){case "owner":i.getOwnerKey&&(P=await i.getOwnerKey(e));break;case "active":i.getActiveKey&&(P=await i.getActiveKey(e));break;case "memo":i.getMemoKey&&(P=await i.getMemoKey(e));break;default:P=await i.getPostingKey(e);break}P?g=P:(m=!0,f=`No ${n} key available`);}break;case "hiveauth":i?.broadcastWithHiveAuth||(m=!0,f="HiveAuth not supported by adapter");break;case "hivesigner":if(!i)m=!0,f="No adapter provided";else {let P=await i.getAccessToken(e);P&&(_=P);}break;case "keychain":i?.broadcastWithKeychain||(m=!0,f="Keychain not supported by adapter");break;case "custom":r?.broadcast||(m=!0,f="No custom broadcast function provided");break}if(m){a.set(l,new Error(`Skipped: ${f}`));continue}return await ve(l,e,t,r,n,g,_,o)}catch(m){if(a.set(l,m),!be(m))throw m}if(!Array.from(a.values()).some(l=>!l.message.startsWith("Skipped:"))){let l=Array.from(a.entries()).map(([m,f])=>`${m}: ${f.message}`).join(", ");throw new Error(`[SDK][Broadcast] No auth methods attempted for ${e}. ${l}`)}let p=Array.from(a.entries()).map(([l,m])=>`${l}: ${m.message}`).join(", ");throw new Error(`[SDK][Broadcast] All auth methods failed for ${e}. Errors: ${p}`)}function v(e=[],t,r,n=()=>{},o,i="posting",s){let a=s?.broadcastMode??"async";return reactQuery.useMutation({onSuccess:n,onMutate:s?.onMutate,onError:s?.onError,onSettled:s?.onSettled,mutationKey:[...e,t],mutationFn:async c=>{if(!t)throw new Error("[Core][Broadcast] Attempted to call broadcast API with anon user");let p=r(c);try{if(o?.enableFallback!==!1&&o?.adapter)return await Ba(t,p,o,i,a);if(o?.broadcast)return await o.broadcast(p,i);let l=o?.postingKey;if(l){if(i!=="posting")throw new Error(`[SDK][Broadcast] Legacy auth only supports posting authority, but '${i}' was requested. Use AuthContextV2 with an adapter for ${i} operations.`);let f=U.fromString(l);return await ee(p,f)}let m=o?.accessToken;if(m)return (await new Co__default.default.Client({accessToken:m}).broadcast(p)).result;throw new Error("[SDK][Broadcast] \u2013 cannot broadcast w/o posting key or token")}catch(l){throw l instanceof Z?new Error(l.message):l}}})}async function Eo(e,t,r,n){if(!e)throw new Error("[Core][Broadcast] Attempted to call broadcast API with anon user");let o={id:t,required_auths:[],required_posting_auths:[e],json:JSON.stringify(r)};if(n?.broadcast)return n.broadcast([["custom_json",o]],"posting");let i=n?.postingKey;if(i){let c=U.fromString(i);return ee([["custom_json",o]],c)}let s=n?.accessToken;if(s)return (await new Co__default.default.Client({accessToken:s}).customJson([],[e],t,JSON.stringify(r))).result;let a=n?.adapter;if(a){let c=[["custom_json",o]];if(n?.loginType==="keychain"&&a.broadcastWithKeychain)return a.broadcastWithKeychain(e,c,"posting");if(n?.loginType==="hiveauth"&&a.broadcastWithHiveAuth)return a.broadcastWithHiveAuth(e,c,"posting")}throw new Error("[SDK][Broadcast] \u2013 cannot broadcast w/o posting key or token")}var ch=4e3;function S(e,t,r){if(e?.invalidateQueries){if(t==="sync")return e.invalidateQueries(r);setTimeout(()=>e.invalidateQueries?.(r),4e3);}}function Pe(e,t){let r=AbortSignal.timeout(e);if(!t)return r;if(typeof AbortSignal.any=="function")return AbortSignal.any([t,r]);let n=new AbortController,o=()=>{let i=t.aborted?t.reason:r.reason;n.abort(i),t.removeEventListener("abort",o),r.removeEventListener("abort",o);};return t.aborted?n.abort(t.reason):r.aborted?n.abort(r.reason):(t.addEventListener("abort",o,{once:true}),r.addEventListener("abort",o,{once:true})),n.signal}var Ue=(()=>{try{return process.env?.NODE_ENV==="development"}catch{return false}})(),Ha=()=>{try{return process.env?.VITE_HELIUS_API_KEY}catch{return}},Ae=1e4,Ro=120*1e3,Lt,Va;function ja(){return Lt?Lt():Va??=new reactQuery.QueryClient}var d={privateApiHost:"https://ecency.com",newsletterHost:void 0,defaultObserver:"ecency",clientId:"ecency-sdk",imageHost:"https://i.ecency.com",get hiveNodes(){return O.nodes},heliusApiKey:Ha(),get queryClient(){return ja()},set queryClient(e){Lt=()=>e;},pollsApiHost:"https://poll.ecency.com",plausibleHost:"https://pl.ecency.com",dmcaAccounts:[],dmcaTags:[],dmcaPatterns:[],dmcaTagRegexes:[],dmcaPatternRegexes:[],_dmcaInitialized:false};exports.ConfigManager=void 0;(Ce=>{function e(A){d.queryClient=A;}Ce.setQueryClient=e;function t(A){Lt=A;}Ce.setQueryClientResolver=t;function r(A){d.privateApiHost=A;}Ce.setPrivateApiHost=r;function n(A){d.newsletterHost=A;}Ce.setNewsletterHost=n;function o(A){d.clientId=A;}Ce.setClientId=o;function i(A){if(typeof A!="string"||A.trim()==="")throw new Error("setDefaultObserver requires a non-empty Hive account. There is no empty-string opt-out; observer resolution would fall back to the post author while caching under an empty key.");d.defaultObserver=A;}Ce.setDefaultObserver=i;function s(){return d.privateApiHost?d.privateApiHost:typeof window<"u"&&window.location?.origin?window.location.origin:"https://ecency.com"}Ce.getValidatedBaseUrl=s;function a(A){d.pollsApiHost=A;}Ce.setPollsApiHost=a;function c(A){d.imageHost=A;}Ce.setImageHost=c;function p(A){_r(A);}Ce.setHiveNodes=p;function l(A){wr(A);}Ce.setRestNodes=l;function m(A){br(A);}Ce.setRestNodesByApi=m;function f(A){vr(A);}Ce.setUserAgent=f;function g(A){Pr(A);}Ce.setResilience=g;function _(A){yr(A);}Ce.setServerRpcProxy=_;function P(){return Te}Ce.getServerRpcProxyStats=P;function x(A){if(/(\([^)]*[*+{][^)]*\))[*+{]/.test(A))return {safe:false,reason:"nested quantifiers detected"};if(/\([^|)]*\|[^)]*\)[*+{]/.test(A))return {safe:false,reason:"alternation with quantifier (potential overlap)"};if(/\([^)]*[*+][^)]*\)[*+]/.test(A))return {safe:false,reason:"repeated quantifiers (catastrophic backtracking risk)"};if(/\.\*\.\*/.test(A)||/\.\+\.\+/.test(A))return {safe:false,reason:"multiple greedy quantifiers on wildcards"};let H=/\.?\{(\d+),(\d+)\}/g,L;for(;(L=H.exec(A))!==null;){let[,Q,J]=L;if(parseInt(J,10)-parseInt(Q,10)>1e3)return {safe:false,reason:`excessive range: {${Q},${J}}`}}return {safe:true}}function C(A){let H=["a".repeat(50)+"x","ab".repeat(50)+"x","x".repeat(100),"aaa".repeat(30)+"bbb".repeat(30)+"x"],L=5;for(let Q of H){let J=Date.now();try{A.test(Q);let z=Date.now()-J;if(z>L)return {safe:!1,reason:`runtime test exceeded ${L}ms (took ${z}ms on input length ${Q.length})`}}catch(z){return {safe:false,reason:`runtime test threw error: ${z}`}}}return {safe:true}}function T(A,H=200){try{if(!A)return Ue&&console.warn("[SDK] DMCA pattern rejected: empty pattern"),null;if(A.length>H)return Ue&&console.warn(`[SDK] DMCA pattern rejected: length ${A.length} exceeds max ${H} - pattern: ${A.substring(0,50)}...`),null;let L=x(A);if(!L.safe)return Ue&&console.warn(`[SDK] DMCA pattern rejected: static analysis failed (${L.reason}) - pattern: ${A.substring(0,50)}...`),null;let Q;try{Q=new RegExp(A);}catch(z){return Ue&&console.warn(`[SDK] DMCA pattern rejected: compilation failed - pattern: ${A.substring(0,50)}...`,z),null}let J=C(Q);return J.safe?Q:(Ue&&console.warn(`[SDK] DMCA pattern rejected: runtime test failed (${J.reason}) - pattern: ${A.substring(0,50)}...`),null)}catch(L){return Ue&&console.warn(`[SDK] DMCA pattern rejected: unexpected error - pattern: ${A.substring(0,50)}...`,L),null}}function ce(A={}){let H=z=>Array.isArray(z)?z.filter($=>typeof $=="string"):[],L=A||{},Q={accounts:H(L.accounts),tags:H(L.tags),patterns:H(L.posts)};d.dmcaAccounts=Q.accounts,d.dmcaTags=Q.tags,d.dmcaPatterns=Q.patterns,d.dmcaTagRegexes=Q.tags.map(z=>T(z)).filter(z=>z!==null),d.dmcaPatternRegexes=[];let J=Q.tags.length-d.dmcaTagRegexes.length;!d._dmcaInitialized&&Ue&&(console.log("[SDK] DMCA configuration loaded:"),console.log(` - Accounts: ${Q.accounts.length}`),console.log(` - Tag patterns: ${d.dmcaTagRegexes.length}/${Q.tags.length} compiled (${J} rejected)`),console.log(` - Post patterns: ${Q.patterns.length} (using exact string matching)`),J>0&&console.warn(`[SDK] ${J} DMCA tag patterns were rejected due to security validation. Check warnings above for details.`)),d._dmcaInitialized=true;}Ce.setDmcaLists=ce;})(exports.ConfigManager||={});function vh(){return new reactQuery.QueryClient({defaultOptions:{queries:{refetchOnWindowFocus:false,refetchOnMount:false}}})}var w=()=>d.queryClient;exports.EcencyQueriesManager=void 0;(s=>{function e(a){return w().getQueryData(a)}s.getQueryData=e;function t(a){return w().getQueryData(a)}s.getInfiniteQueryData=t;async function r(a){return await w().prefetchQuery(a),e(a.queryKey)}s.prefetchQuery=r;async function n(a){return await w().prefetchInfiniteQuery(a),t(a.queryKey)}s.prefetchInfiniteQuery=n;function o(a){return {prefetch:()=>r(a),getData:()=>e(a.queryKey),useClientQuery:()=>reactQuery.useQuery(a),fetchAndGet:()=>w().fetchQuery(a)}}s.generateClientServerQuery=o;function i(a){return {prefetch:()=>n(a),getData:()=>t(a.queryKey),useClientQuery:()=>reactQuery.useInfiniteQuery(a),fetchAndGet:()=>w().fetchInfiniteQuery(a)}}s.generateClientServerInfiniteQuery=i;})(exports.EcencyQueriesManager||={});function Ah(e){return btoa(JSON.stringify(e))}function xh(e){let t=atob(e);if(t[0]==="{")return JSON.parse(t)}var ko=(n=>(n.HIVE="HIVE",n.HBD="HBD",n.VESTS="VESTS",n))(ko||{}),$t=(e=>(e["@@000000021"]="HIVE",e["@@000000013"]="HBD",e["@@000000037"]="VESTS",e))($t||{});function F(e){if(typeof e=="string"){let t=e.split(" ");return {amount:parseFloat(t[0]),symbol:ko[t[1]]}}else return {amount:parseFloat(e.amount.toString())/Math.pow(10,e.precision),symbol:$t[e.nai]}}var Dr;function h(){if(!Dr){if(typeof globalThis.fetch!="function")throw new Error("[Ecency][SDK] - global fetch is not available");Dr=globalThis.fetch.bind(globalThis);}return Dr}function To(e){return typeof e=="string"?/^hive-\d+$/.test(e):false}function za(e){return e&&typeof e=="object"&&"data"in e&&"pagination"in e&&Array.isArray(e.data)}function re(e,t){return za(e)?e:{data:Array.isArray(e)?e:[],pagination:{total:Array.isArray(e)?e.length:0,limit:t,offset:0,has_next:false}}}function Ze(e,t){return e/1e6*t}function Fo(e){return e===void 0?true:parseInt(e.split("-")[0],10)<1980}var qo=60*1e3;function xe(){return reactQuery.queryOptions({queryKey:u.core.dynamicProps(),refetchInterval:qo,staleTime:qo,queryFn:async({signal:e})=>{let[t,r,n,o,i]=await Promise.all([y("condenser_api.get_dynamic_global_properties",[],void 0,void 0,e),y("condenser_api.get_feed_history",[],void 0,void 0,e),y("condenser_api.get_chain_properties",[],void 0,void 0,e),y("condenser_api.get_reward_fund",["post"],void 0,void 0,e),y("database_api.get_hardfork_properties",{},void 0,void 0,e).catch(()=>({current_hardfork_version:"1.28.0",last_hardfork:28}))]),s=F(t.total_vesting_shares).amount,a=F(t.total_vesting_fund_hive).amount,c=0;Number.isFinite(s)&&s!==0&&Number.isFinite(a)&&(c=a/s*1e6);let p=F(r.current_median_history.base).amount,l=F(r.current_median_history.quote).amount,m=parseFloat(o.recent_claims),f=F(o.reward_balance).amount,g=Number(t.vote_power_reserve_rate??0),_=o.author_reward_curve??"linear",P=Number(o.content_constant??0),x=String(i.current_hardfork_version??"0.0.0"),C=Number(i.last_hardfork??0),T=t.hbd_print_rate,ce=t.hbd_interest_rate,Ce=t.head_block_number,A=a,H=s,L=F(t.virtual_supply).amount,Q=t.vesting_reward_percent||0,J=n.account_creation_fee;return {hivePerMVests:c,base:p,quote:l,fundRecentClaims:m,fundRewardBalance:f,votePowerReserveRate:g,authorRewardCurve:_,contentConstant:P,currentHardforkVersion:x,lastHardfork:C,hbdPrintRate:T,hbdInterestRate:ce,headBlock:Ce,totalVestingFund:A,totalVestingShares:H,virtualSupply:L,vestingRewardPercent:Q,accountCreationFee:J,raw:{globalDynamic:t,feedHistory:r,chainProps:n,rewardFund:o,hardforkProps:i}}}})}function Qh(e="post"){return reactQuery.queryOptions({queryKey:u.core.rewardFund(e),queryFn:()=>y("condenser_api.get_reward_fund",[e])})}function qe(...e){let t=e.length;for(;t>0&&e[t-1]===void 0;)t--;return e.slice(0,t)}var u={posts:{entry:e=>["posts","entry",e],postHeader:(e,t)=>["posts","post-header",e,t],content:(e,t)=>["posts","content",e,t],contentReplies:(e,t)=>["posts","content-replies",e,t],accountPosts:(e,t,r,n)=>["posts","account-posts",e,t,r,n],accountPostsPage:(e,t,r,n,o,i)=>["posts","account-posts-page",e,t,r,n,o,i],userPostVote:(e,t,r)=>["posts","user-vote",e,t,r],reblogs:(e,t)=>["posts","reblogs",e,t],entryActiveVotes:(e,t)=>["posts","entry-active-votes",e,t],rebloggedBy:(e,t)=>["posts","reblogged-by",e,t],tips:(e,t)=>["posts","tips",e,t],normalize:(e,t)=>["posts","normalize",e,t],drafts:e=>["posts","drafts",e],draftsInfinite:(e,t)=>qe("posts","drafts","infinite",e,t),schedules:e=>["posts","schedules",e],schedulesInfinite:(e,t)=>qe("posts","schedules","infinite",e,t),fragments:e=>["posts","fragments",e],fragmentsInfinite:(e,t)=>qe("posts","fragments","infinite",e,t),images:e=>["posts","images",e],galleryImages:e=>["posts","gallery-images",e],imagesInfinite:(e,t)=>qe("posts","images","infinite",e,t),promoted:e=>["posts","promoted",e],_promotedPrefix:["posts","promoted"],accountPostsBlogPrefix:e=>["posts","account-posts",e,"blog"],postsRanked:(e,t,r,n)=>["posts","posts-ranked",e,t,r,n],postsRankedPage:(e,t,r,n,o,i)=>["posts","posts-ranked-page",e,t,r,n,o,i],discussions:(e,t,r,n)=>["posts","discussions",e,t,r,n],discussion:(e,t,r)=>["posts","discussion",e,t,r],deletedEntry:e=>["posts","deleted-entry",e],commentHistory:(e,t,r)=>["posts","comment-history",e,t,r],trendingTags:()=>["posts","trending-tags"],trendingTagsWithStats:e=>["posts","trending-tags","stats",e],wavesFeed:(e={})=>["posts","waves","feed",e.tag??"",e.following??"",e.author??"",e.observer??"",e.limit??0,[...e.containers??[]].sort().join(",")],shortsFeed:(e={})=>["posts","waves","shorts",e.tag??"",e.author??"",e.observer??"",e.limit??0,[...e.containers??[]].sort().join(",")],wavesByHost:e=>["posts","waves","by-host",e],wavesByTag:(e,t)=>["posts","waves","by-tag",e,t],wavesFollowing:(e,t)=>["posts","waves","following",e,t],wavesTrendingTags:(e,t)=>["posts","waves","trending-tags",e,t],wavesByAccount:(e,t)=>["posts","waves","by-account",e,t],wavesTrendingAuthors:e=>["posts","waves","trending-authors",e],_prefix:["posts"]},accounts:{full:e=>["get-account-full",e],list:(...e)=>["accounts","list",...e],friends:(e,t,r,n)=>["accounts","friends",e,t,r,n],searchFriends:(e,t,r)=>["accounts","friends","search",e,t,r],subscriptions:e=>["accounts","subscriptions",e],followCount:e=>["accounts","follow-count",e],recoveries:e=>["accounts","recoveries",e],pendingRecovery:e=>["accounts","recoveries",e,"pending-request"],checkWalletPending:(e,t)=>["accounts","check-wallet-pending",e,t],mutedUsers:e=>["accounts","muted-users",e],following:(e,t,r,n)=>["accounts","following",e,t,r,n],followers:(e,t,r,n)=>["accounts","followers",e,t,r,n],search:(e,t)=>["accounts","search",e,t],profiles:(e,t)=>["accounts","profiles",e,t],lookup:(e,t)=>["accounts","lookup",e,t],transactions:(e,t,r)=>["accounts","transactions",e,t,r],favorites:e=>["accounts","favorites",e],favoritesInfinite:(e,t)=>qe("accounts","favorites","infinite",e,t),checkFavorite:(e,t)=>["accounts","favorites","check",e,t],favoriteTags:e=>["accounts","favorite-tags",e],favoriteTagsInfinite:(e,t)=>qe("accounts","favorite-tags","infinite",e,t),checkFavoriteTag:(e,t)=>["accounts","favorite-tags","check",e,t],relations:(e,t)=>["accounts","relations",e,t],bots:()=>["accounts","bots"],voteHistory:(e,t)=>["accounts","vote-history",e,t],reputations:(e,t)=>["accounts","reputations",e,t],bookmarks:e=>["accounts","bookmarks",e],bookmarksInfinite:(e,t)=>qe("accounts","bookmarks","infinite",e,t),referrals:e=>["accounts","referrals",e],referralsStats:e=>["accounts","referrals-stats",e],proMembers:()=>["accounts","pro-members"],_prefix:["accounts"]},notifications:{announcements:()=>["notifications","announcements"],spotlights:()=>["notifications","spotlights"],list:(e,t)=>["notifications",e,t],unreadCount:e=>["notifications","unread",e],settings:e=>["notifications","settings",e],_prefix:["notifications"]},core:{rewardFund:e=>["core","reward-fund",e],dynamicProps:()=>["core","dynamic-props"],chainProperties:()=>["core","chain-properties"],_prefix:["core"]},communities:{single:(e,t)=>["community","single",e,t],singlePrefix:e=>["community","single",e],context:(e,t)=>["community","context",e,t],rewarded:()=>["communities","rewarded"],list:(e,t,r)=>["communities","list",e,t,r],subscribers:e=>["communities","subscribers",e],subscribersInfinite:e=>["communities","subscribers","infinite",e],accountNotifications:(e,t)=>["communities","account-notifications",e,t]},proposals:{list:()=>["proposals","list"],proposal:e=>["proposals","proposal",e],votes:(e,t,r)=>["proposals","votes",e,t,r],votesPrefix:e=>["proposals","votes",e],votesByUser:e=>["proposals","votes","by-user",e]},search:{topics:(e,t)=>["search","topics",e,t],path:e=>["search","path",e],account:(e,t)=>["search","account",e,t],results:(e,t,r,n,o,i)=>["search",e,t,typeof r=="string"?r==="1"||r==="true":r,n,o,i],controversialRising:(e,t)=>["search","controversial-rising",e,t],similarEntries:(e,t,r)=>r?["search","similar-entries",e,t,r]:["search","similar-entries",e,t],api:(e,t,r,n,o,i)=>qe("search","api",e,t,r,n,o,i)},witnesses:{list:e=>["witnesses","list",e],votes:e=>["witnesses","votes",e],proxy:()=>["witnesses","proxy"],voters:(e,t,r,n,o)=>["witnesses","voters",e,t,r,n,o],voterCount:e=>["witnesses","voter-count",e]},wallet:{outgoingRcDelegations:(e,t)=>["wallet","outgoing-rc-delegations",e,t],vestingDelegations:(e,t)=>["wallet","vesting-delegations",e,t],withdrawRoutes:e=>["wallet","withdraw-routes",e],incomingRc:e=>["wallet","incoming-rc",e],conversionRequests:e=>["wallet","conversion-requests",e],receivedVestingShares:e=>["wallet","received-vesting-shares",e],savingsWithdraw:e=>["wallet","savings-withdraw",e],openOrders:e=>["wallet","open-orders",e],collateralizedConversionRequests:e=>["wallet","collateralized-conversion-requests",e],recurrentTransfers:e=>["wallet","recurrent-transfers",e],balanceHistory:(e,t,r)=>["wallet","balance-history",e,t,r],aggregatedHistory:(e,t,r)=>r===void 0?["wallet","aggregated-history",e,t]:["wallet","aggregated-history",e,t,r],portfolio:(e,t,r)=>["wallet","portfolio","v2",e,t,r]},assets:{hiveGeneralInfo:e=>["assets","hive","general-info",e],hiveTransactions:(e,t,r)=>["assets","hive","transactions",e,t,r],hiveWithdrawalRoutes:e=>["assets","hive","withdrawal-routes",e],hiveMetrics:e=>["assets","hive","metrics",e],hbdGeneralInfo:e=>["assets","hbd","general-info",e],hbdTransactions:(e,t,r)=>["assets","hbd","transactions",e,t,r],hivePowerGeneralInfo:e=>["assets","hive-power","general-info",e],hivePowerDelegates:e=>["assets","hive-power","delegates",e],hivePowerDelegatings:e=>["assets","hive-power","delegatings",e],hivePowerTransactions:(e,t,r)=>["assets","hive-power","transactions",e,t,r],pointsGeneralInfo:e=>["assets","points","general-info",e],pointsTransactions:(e,t)=>["assets","points","transactions",e,t],ecencyAssetInfo:(e,t,r)=>["ecency-wallets","asset-info",e,t,r]},market:{statistics:()=>["market","statistics"],orderBook:e=>["market","order-book",e],history:(e,t,r)=>["market","history",e,t,r],feedHistory:()=>["market","feed-history"],hiveHbdStats:()=>["market","hive-hbd-stats"],data:(e,t,r,n)=>["market","data",e,t,r,n],tradeHistory:(e,t,r)=>["market","trade-history",e,t,r],currentMedianHistoryPrice:()=>["market","current-median-history-price"]},analytics:{discoverCuration:e=>["analytics","discover-curation",e],pageStats:(e,t,r,n)=>["analytics","page-stats",e,t,r,n],discoverLeaderboard:e=>["analytics","discover-leaderboard",e]},promotions:{promotePrice:()=>["promotions","promote-price"],boostPlusPrices:()=>["promotions","boost-plus-prices"],boostPlusAccounts:e=>["promotions","boost-plus-accounts",e]},resourceCredits:{account:e=>["resource-credits","account",e],stats:()=>["resource-credits","stats"],resourceParams:()=>["resource-credits","resource-params"]},points:{points:(e,t)=>["points",e,t],_prefix:e=>["points",e]},polls:{details:(e,t)=>["polls","details",e,t],vote:(e,t)=>e&&t?["polls","vote",e,t]:["polls","vote"],_prefix:["polls"]},operations:{chainProperties:()=>["operations","chain-properties"]},games:{statusCheck:(e,t)=>["games","status-check",e,t]},quests:{status:e=>["quests","status",e]},newsletter:{subscriptions:e=>["newsletter","subscriptions",e],sender:(e,t,r)=>["newsletter","sender",e,t,r],issues:(e,t,r)=>["newsletter","issues",e,t,r],posts:(e,t,r,n)=>["newsletter","posts",e,t,r,n],_prefix:["newsletter"]},support:{settings:e=>["support","settings",e],_prefix:["support"]},badActors:{list:()=>["bad-actors","list"],_prefix:["bad-actors"]},curation:{feed:(e={})=>["curation","feed",e],rosterFeed:(e,t={})=>["curation","roster-feed",e,t],status:()=>["curation","status"],roster:()=>["curation","roster"],recommendations:(e={})=>["curation","recommendations",e],_recommendationsPrefix:["curation","recommendations"],post:(e,t)=>["curation","post",e,t],recommender:e=>["curation","recommender",e],recommend:()=>["curation","recommend"],_prefix:["curation"]},ai:{prices:()=>["ai","prices"],assistPrices:e=>["ai","assist-prices",e],transcribePrice:e=>["ai","transcribe-price",e],images:e=>["ai","images",e],_prefix:["ai"]}};function yt(e){if(typeof TextEncoder<"u")return new TextEncoder().encode(e).length;let t=0;for(let r=0;r<e.length;r++){let n=e.charCodeAt(r);n<128?t+=1:n<2048?t+=2:n>=55296&&n<=56319&&r+1<e.length?(r++,t+=4):t+=3;}return t}function ye(e){let t=0,r=e;do t++,r>>>=7;while(r>0);return t}function $h(e){return reactQuery.queryOptions({queryKey:u.ai.prices(),queryFn:async()=>{let r=await h()(d.privateApiHost+"/private-api/ai-generate-price",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:e})});if(!r.ok)throw new Error(`Failed to fetch AI generation prices: ${r.status}`);return await r.json()},staleTime:3e5,enabled:!!e})}function Jh(e,t){return reactQuery.queryOptions({queryKey:u.ai.images(e),queryFn:async()=>{let n=await h()(d.privateApiHost+"/private-api/ai-images",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t})});if(!n.ok)throw new Error(`Failed to fetch AI image history: ${n.status}`);return await n.json()},staleTime:3e4,refetchOnMount:"always",enabled:!!e&&!!t})}function e_(e,t){return reactQuery.queryOptions({queryKey:u.ai.assistPrices(e),queryFn:async()=>{let n=await h()(d.privateApiHost+"/private-api/ai-assist-price",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t})});if(!n.ok)throw new Error(`Failed to fetch AI assist prices: ${n.status}`);return await n.json()},staleTime:6e4,enabled:!!t})}function o_(e,t){return reactQuery.queryOptions({queryKey:u.ai.transcribePrice(e),queryFn:async()=>{let n=await h()(d.privateApiHost+"/private-api/ai-transcribe-price",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t})});if(!n.ok)throw new Error(`Failed to fetch AI transcribe price: ${n.status}`);return await n.json()},staleTime:6e4,enabled:!!t})}function nu(){if(typeof crypto<"u"&&typeof crypto.randomUUID=="function")return crypto.randomUUID();let e=new Uint8Array(16);if(typeof crypto<"u"&&typeof crypto.getRandomValues=="function")crypto.getRandomValues(e);else for(let t=0;t<e.length;t++)e[t]=Math.floor(Math.random()*256);return Array.from(e).map(t=>t.toString(16).padStart(2,"0")).join("")}function ou(e){w().invalidateQueries({queryKey:u.points._prefix(e)}),w().invalidateQueries({queryKey:u.ai.images(e)});}function u_(e,t){return reactQuery.useMutation({mutationKey:["ai","generate-image"],mutationFn:async r=>{if(!e)throw new Error("[SDK][AI][GenerateImage] \u2013 username wasn't provided");if(!t)throw new Error("[SDK][AI][GenerateImage] \u2013 access token wasn't found");let o=await h()(d.privateApiHost+"/private-api/ai-generate-image",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t,us:e,prompt:r.prompt,aspect_ratio:r.aspect_ratio??"1:1",power:r.power??1,idempotency_key:r.idempotency_key??nu()})});if(!o.ok){let s=await o.text(),a={};try{a=JSON.parse(s);}catch{}let c=new Error(`[SDK][AI][GenerateImage] \u2013 failed with status ${o.status}${s?`: ${s}`:""}`);throw c.status=o.status,c.data=a,c}if(o.status===202){let s={};try{s=await o.json();}catch{}let a=new Error("[SDK][AI][GenerateImage] \u2013 delivery pending");throw a.status=202,a.data=s,a}return await o.json()},onSuccess:()=>{e&&ou(e);}})}function su(){if(typeof crypto<"u"&&typeof crypto.randomUUID=="function")return crypto.randomUUID();let e=new Uint8Array(16);if(typeof crypto<"u"&&typeof crypto.getRandomValues=="function")crypto.getRandomValues(e);else for(let t=0;t<e.length;t++)e[t]=Math.floor(Math.random()*256);return Array.from(e).map(t=>t.toString(16).padStart(2,"0")).join("")}function d_(e,t){return reactQuery.useMutation({mutationKey:["ai","assist"],mutationFn:async r=>{if(!e)throw new Error("[SDK][AI][Assist] \u2013 username wasn't provided");if(!t)throw new Error("[SDK][AI][Assist] \u2013 access token wasn't found");let o=await h()(d.privateApiHost+"/private-api/ai-assist",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:r.code??t,us:e,action:r.action,text:r.text,idempotency_key:su()})});if(!o.ok){let i=await o.text(),s={};try{s=JSON.parse(i);}catch{}let a=new Error(`[SDK][AI][Assist] \u2013 failed with status ${o.status}${i?`: ${i}`:""}`);throw a.status=o.status,a.data=s,a}return await o.json()},onSuccess:r=>{e&&(r.cost>0&&w().invalidateQueries({queryKey:u.points._prefix(e)}),w().invalidateQueries({queryKey:u.ai.assistPrices(e)}));}})}function uu(){if(typeof crypto<"u"&&typeof crypto.randomUUID=="function")return crypto.randomUUID();let e=new Uint8Array(16);if(typeof crypto<"u"&&typeof crypto.getRandomValues=="function")crypto.getRandomValues(e);else for(let t=0;t<e.length;t++)e[t]=Math.floor(Math.random()*256);return Array.from(e).map(t=>t.toString(16).padStart(2,"0")).join("")}function y_(e,t){return reactQuery.useMutation({mutationKey:["ai","transcribe"],mutationFn:async r=>{if(!e)throw new Error("[SDK][AI][Transcribe] \u2013 username wasn't provided");let n=r.code??t;if(!n)throw new Error("[SDK][AI][Transcribe] \u2013 access token wasn't found");let o=new FormData;o.append("code",n),o.append("duration_ms",String(Math.round(r.durationMs))),o.append("idempotency_key",r.idempotency_key??uu()),o.append("audio",r.audio,r.fileName??"clip.webm");let s=await h()(d.privateApiHost+"/private-api/ai-transcribe",{method:"POST",body:o});if(!s.ok){let a=await s.text(),c={};try{c=JSON.parse(a);}catch{}throw Object.assign(new Error(`[SDK][AI][Transcribe] \u2013 failed with status ${s.status}${a?`: ${a}`:""}`),{status:s.status,data:c})}return await s.json()},onSuccess:r=>{e&&(r.cost>0&&w().invalidateQueries({queryKey:u.points._prefix(e)}),w().invalidateQueries({queryKey:u.ai.transcribePrice(e)}));}})}function Kr(e){return !e.posting_json_metadata&&!e.json_metadata}function pu(e){return e?Object.values(e).some(t=>typeof t=="string"?t.length>0:t!=null):false}function M(e){return reactQuery.queryOptions({queryKey:u.accounts.full(e),queryFn:async({signal:t})=>{if(!e)return null;let[r,n]=await Promise.all([y("condenser_api.get_accounts",[[e]],void 0,void 0,t,p=>Array.isArray(p)),y("bridge.get_profile",{account:e},void 0,void 0,t).catch(p=>{if(t?.aborted)throw p;return null})]);if(!r?.[0])return null;let o=r[0];if(Kr(o)&&pu(n?.metadata?.profile)){let p=await y("condenser_api.get_accounts",[[e]],void 0,void 0,t,l=>Array.isArray(l)&&(!l[0]||!Kr(l[0])));if(p[0]&&!Kr(p[0]))o=p[0];else throw new Error(`[SDK][Accounts] \u2013 inconsistent account row for ${e}: empty json metadata while hivemind profile is populated`)}let i=He(o.posting_json_metadata),s=n?.stats,a=s?{account:o.name,follower_count:s.followers??0,following_count:s.following??0}:void 0,c=n?.reputation??0;return {name:o.name,owner:o.owner,active:o.active,posting:o.posting,memo_key:o.memo_key,post_count:o.post_count,created:o.created,posting_json_metadata:o.posting_json_metadata,last_vote_time:o.last_vote_time,last_post:o.last_post,json_metadata:o.json_metadata,reward_hive_balance:o.reward_hive_balance,reward_hbd_balance:o.reward_hbd_balance,reward_vesting_hive:o.reward_vesting_hive,reward_vesting_balance:o.reward_vesting_balance,balance:o.balance,hbd_balance:o.hbd_balance,savings_balance:o.savings_balance,savings_hbd_balance:o.savings_hbd_balance,savings_hbd_last_interest_payment:o.savings_hbd_last_interest_payment,savings_hbd_seconds_last_update:o.savings_hbd_seconds_last_update,savings_hbd_seconds:o.savings_hbd_seconds,next_vesting_withdrawal:o.next_vesting_withdrawal,pending_claimed_accounts:o.pending_claimed_accounts,vesting_shares:o.vesting_shares,delegated_vesting_shares:o.delegated_vesting_shares,received_vesting_shares:o.received_vesting_shares,vesting_withdraw_rate:o.vesting_withdraw_rate,to_withdraw:o.to_withdraw,withdrawn:o.withdrawn,witness_votes:o.witness_votes,proxy:o.proxy,recovery_account:o.recovery_account,proxied_vsf_votes:o.proxied_vsf_votes,voting_manabar:o.voting_manabar,voting_power:o.voting_power,downvote_manabar:o.downvote_manabar,follow_stats:a,reputation:c,profile:i}},enabled:!!e,staleTime:6e4})}var lu=new Set(["__proto__","constructor","prototype"]);function Wt(e){if(!e||typeof e!="object"||Array.isArray(e))return false;let t=Object.getPrototypeOf(e);return t===null||t===Object.prototype}function Io(e,t){let r={...e};for(let n of Object.keys(t)){if(lu.has(n))continue;let o=t[n],i=r[n];Wt(o)&&Wt(i)?r[n]=Io(i,o):r[n]=o;}return r}function du(e){if(!(!e||!Array.isArray(e)))return e.map(({meta:t,...r})=>{if(!t||typeof t!="object")return {...r,meta:t};let{privateKey:n,username:o,...i}=t;return {...r,meta:i}})}function He(e){if(!e)return {};try{let t=JSON.parse(e);if(t&&typeof t=="object"&&t.profile&&typeof t.profile=="object")return t.profile}catch(t){console.warn("[SDK] Failed to parse posting_json_metadata:",t,{length:e?.length??0});}return {}}function Do(e){return He(e?.posting_json_metadata)}function Ko(e,t){if(!e)return t;if(!t)return e;let r=Object.keys(He(e.posting_json_metadata)).length;return Object.keys(He(t.posting_json_metadata)).length>r?t:e}function mu(e){if(!e)return {};try{let t=JSON.parse(e);if(Wt(t))return t}catch(t){console.warn("[SDK] Failed to parse posting_json_metadata root:",t,{length:e?.length??0});}return {}}function No({existingPostingJsonMetadata:e,profile:t,tokens:r}){let n=mu(e),o=Wt(n.profile)?n.profile:{},i=Nr({existingProfile:o,profile:t,tokens:r});return JSON.stringify({...n,profile:i})}function Nr({existingProfile:e,profile:t,tokens:r}){let{tokens:n,version:o,...i}=t??{},s=Io(e??{},i);return s.tokens&&!Array.isArray(s.tokens)&&(s.tokens=void 0),r!==void 0?s.tokens=r&&r.length>0?r:[]:n!==void 0&&(s.tokens=n),s.tokens=du(s.tokens),s.version=2,s}function Gt(e){return e.map(t=>{let r={name:t.name,owner:t.owner,active:t.active,posting:t.posting,memo_key:t.memo_key,post_count:t.post_count,created:t.created,reputation:t.reputation,posting_json_metadata:t.posting_json_metadata,last_vote_time:t.last_vote_time,last_post:t.last_post,json_metadata:t.json_metadata,reward_hive_balance:t.reward_hive_balance,reward_hbd_balance:t.reward_hbd_balance,reward_vesting_hive:t.reward_vesting_hive,reward_vesting_balance:t.reward_vesting_balance,balance:t.balance,hbd_balance:t.hbd_balance,savings_balance:t.savings_balance,savings_hbd_balance:t.savings_hbd_balance,savings_hbd_last_interest_payment:t.savings_hbd_last_interest_payment,savings_hbd_seconds_last_update:t.savings_hbd_seconds_last_update,savings_hbd_seconds:t.savings_hbd_seconds,next_vesting_withdrawal:t.next_vesting_withdrawal,pending_claimed_accounts:t.pending_claimed_accounts,vesting_shares:t.vesting_shares,delegated_vesting_shares:t.delegated_vesting_shares,received_vesting_shares:t.received_vesting_shares,vesting_withdraw_rate:t.vesting_withdraw_rate,to_withdraw:t.to_withdraw,withdrawn:t.withdrawn,witness_votes:t.witness_votes,proxy:t.proxy,recovery_account:t.recovery_account,proxied_vsf_votes:t.proxied_vsf_votes,voting_manabar:t.voting_manabar,voting_power:t.voting_power,downvote_manabar:t.downvote_manabar},n=He(t.posting_json_metadata);if(!n||Object.keys(n).length===0)try{let o=JSON.parse(t.json_metadata||"{}");o.profile&&(n=o.profile);}catch{}return (!n||Object.keys(n).length===0)&&(n={about:"",cover_image:"",location:"",name:"",profile_image:"",website:""}),{...r,profile:n}})}function fu(e){return new TextEncoder().encode(e).length}function et(e){return e?fu(e)<=16:false}function F_(e){return reactQuery.queryOptions({queryKey:u.accounts.list(...e),enabled:e.length>0,queryFn:async()=>{let t=e.filter(et);if(t.length===0)return [];let r=await y("condenser_api.get_accounts",[t],void 0,void 0,void 0,n=>Array.isArray(n));return Gt(r??[])}})}function N_(e){return reactQuery.queryOptions({queryKey:u.accounts.followCount(e),queryFn:()=>y("condenser_api.get_follow_count",[e])})}function H_(e,t,r="blog",n=100){return reactQuery.queryOptions({queryKey:u.accounts.followers(e,t,r,n),queryFn:()=>y("condenser_api.get_followers",[e,t,r,n]),enabled:!!e})}function W_(e,t,r="blog",n=100){return reactQuery.queryOptions({queryKey:u.accounts.following(e,t,r,n),queryFn:()=>y("condenser_api.get_following",[e,t,r,n]),enabled:!!e})}var Mo=1e3,bu=20;function X_(e){return reactQuery.queryOptions({queryKey:u.accounts.mutedUsers(e),queryFn:async()=>{let t=[],r="";for(let n=0;n<bu;n++){let o=await y("condenser_api.get_following",[e,r,"ignore",Mo]);if(!o?.length)break;let i=o.map(s=>s.following);if(i[0]===r&&(i=i.slice(1)),!i.length||(t.push(...i),o.length<Mo))break;r=i[i.length-1];}return t},enabled:!!e})}function ow(e,t=50){return reactQuery.queryOptions({queryKey:u.accounts.lookup(e,t),queryFn:async()=>et(e)?y("condenser_api.lookup_accounts",[e,t]):[],enabled:!!e,staleTime:1/0})}function cw(e,t=5,r=[]){return reactQuery.queryOptions({queryKey:u.accounts.search(e,r),enabled:!!e,queryFn:async()=>(await y("condenser_api.lookup_accounts",[e,t])).filter(o=>r.length>0?!r.includes(o):true)})}var xu=new Set(["ownerPublicKey","activePublicKey","postingPublicKey","memoPublicKey"]);function mw(e,t){return reactQuery.queryOptions({queryKey:u.accounts.checkWalletPending(e,t??null),queryFn:async()=>{if(!e||!t)return {exist:false};let n=await h()(d.privateApiHost+"/private-api/wallets",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({username:e,code:t})});if(!n.ok)return {exist:false};let o=await n.json(),i=Array.isArray(o)?o.flatMap(s=>{if(!s||typeof s!="object")return [];let a=s,c=typeof a.token=="string"?a.token:void 0;if(!c)return [];let p=a.meta&&typeof a.meta=="object"?{...a.meta}:{},l={},m=typeof a.address=="string"&&a.address?a.address:void 0,g=(typeof a.status=="number"?a.status===3:void 0)??false;m&&(l.address=m),l.show=g;let _={symbol:c,currency:c,address:m,show:g,type:"CHAIN",meta:l},P=[];for(let[x,C]of Object.entries(p))typeof x=="string"&&(xu.has(x)||typeof C!="string"||!C||/^[A-Z0-9]{2,10}$/.test(x)&&P.push({symbol:x,currency:x,address:C,show:g,type:"CHAIN",meta:{address:C,show:g}}));return [_,...P]}):[];return {exist:i.length>0,tokens:i.length?i:void 0,wallets:i.length?i:void 0}},refetchOnMount:true})}function Bo(e,t){return reactQuery.queryOptions({queryKey:u.accounts.relations(e,t),enabled:!!e&&!!t,refetchOnMount:false,refetchInterval:36e5,queryFn:async()=>{let r={follows:false,ignores:false,blacklists:false,follows_muted:false,follows_blacklists:false};return !e||!t?r:await y("bridge.get_relationship_between_accounts",[e,t])??r}})}function Pw(e){return reactQuery.queryOptions({queryKey:u.accounts.subscriptions(e),enabled:!!e,queryFn:async({signal:t})=>await y("bridge.list_all_subscriptions",{account:e},void 0,void 0,t)??[]})}function Sw(e,t){return reactQuery.queryOptions({queryKey:u.accounts.bookmarks(e),enabled:!!e&&!!t,queryFn:async()=>{if(!e||!t)throw new Error("[SDK][Accounts][Bookmarks] \u2013 missing auth");return await(await h()(d.privateApiHost+"/private-api/bookmarks",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t})})).json()}})}function Cw(e,t,r=10){return reactQuery.infiniteQueryOptions({queryKey:u.accounts.bookmarksInfinite(e,r),queryFn:async({pageParam:n=0})=>{if(!e||!t)return {data:[],pagination:{total:0,limit:r,offset:0,has_next:false}};let i=await h()(`${d.privateApiHost}/private-api/bookmarks?format=wrapped&offset=${n}&limit=${r}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t})});if(!i.ok)throw new Error(`Failed to fetch bookmarks: ${i.status}`);let s=await i.json();return re(s,r)},initialPageParam:0,getNextPageParam:n=>{if(n.pagination.has_next)return n.pagination.offset+n.pagination.limit},enabled:!!e&&!!t})}function Tw(e,t){return reactQuery.queryOptions({queryKey:u.accounts.favorites(e),enabled:!!e&&!!t,queryFn:async()=>{if(!e||!t)throw new Error("[SDK][Accounts][Favorites] \u2013 missing auth");return await(await h()(d.privateApiHost+"/private-api/favorites",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t})})).json()}})}function Fw(e,t,r=10){return reactQuery.infiniteQueryOptions({queryKey:u.accounts.favoritesInfinite(e,r),queryFn:async({pageParam:n=0})=>{if(!e||!t)return {data:[],pagination:{total:0,limit:r,offset:0,has_next:false}};let i=await h()(`${d.privateApiHost}/private-api/favorites?format=wrapped&offset=${n}&limit=${r}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t})});if(!i.ok)throw new Error(`Failed to fetch favorites: ${i.status}`);let s=await i.json();return re(s,r)},initialPageParam:0,getNextPageParam:n=>{if(n.pagination.has_next)return n.pagination.offset+n.pagination.limit},enabled:!!e&&!!t})}function Kw(e,t,r){return reactQuery.queryOptions({queryKey:u.accounts.checkFavorite(e,r),enabled:!!e&&!!t&&!!r,queryFn:async()=>{if(!e||!t)throw new Error("[SDK][Accounts][Favorites] \u2013 missing auth");if(!r)throw new Error("[SDK][Accounts][Favorites] \u2013 no target username");let o=await h()(d.privateApiHost+"/private-api/favorites-check",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t,account:r})});if(!o.ok)throw new Error(`[SDK][Accounts][Favorites] \u2013 favorites-check failed with status ${o.status}: ${o.statusText}`);let i=await o.json();if(typeof i!="boolean")throw new Error(`[SDK][Accounts][Favorites] \u2013 favorites-check returned invalid type: expected boolean, got ${typeof i}`);return i}})}function Qw(e,t){return reactQuery.queryOptions({queryKey:u.accounts.favoriteTags(e),enabled:!!e&&!!t,queryFn:async()=>{if(!e||!t)throw new Error("[SDK][Accounts][FavoriteTags] \u2013 missing auth");let n=await h()(d.privateApiHost+"/private-api/favorite-tags",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t})});if(!n.ok)throw new Error(`Failed to fetch favorite tags: ${n.status}`);return await n.json()}})}function Uw(e,t,r=10){return reactQuery.infiniteQueryOptions({queryKey:u.accounts.favoriteTagsInfinite(e,r),queryFn:async({pageParam:n=0})=>{if(!e||!t)return {data:[],pagination:{total:0,limit:r,offset:0,has_next:false}};let i=await h()(`${d.privateApiHost}/private-api/favorite-tags?format=wrapped&offset=${n}&limit=${r}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t})});if(!i.ok)throw new Error(`Failed to fetch favorite tags: ${i.status}`);let s=await i.json();return re(s,r)},initialPageParam:0,getNextPageParam:n=>{if(n.pagination.has_next)return n.pagination.offset+n.pagination.limit},enabled:!!e&&!!t})}var Iu=/^[a-z0-9-]{1,32}$/,Du=/^hive-\d+$/;function Oe(e){if(typeof e!="string")return null;let t=e.trim().toLowerCase();return t.startsWith("#")&&(t=t.slice(1)),!Iu.test(t)||Du.test(t)?null:t}function Ww(e,t,r){let n=Oe(r);return reactQuery.queryOptions({queryKey:u.accounts.checkFavoriteTag(e??"",n??""),enabled:!!e&&!!t&&n!==null,queryFn:async()=>{if(!e||!t)throw new Error("[SDK][Accounts][FavoriteTags] \u2013 missing auth");if(n===null)return false;let i=await h()(d.privateApiHost+"/private-api/favorite-tags-check",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t,tag:n})});if(!i.ok)throw new Error(`[SDK][Accounts][FavoriteTags] \u2013 favorite-tags-check failed with status ${i.status}: ${i.statusText}`);let s=await i.json();if(typeof s!="boolean")throw new Error(`[SDK][Accounts][FavoriteTags] \u2013 favorite-tags-check returned invalid type: expected boolean, got ${typeof s}`);return s}})}function Yw(e,t){return reactQuery.queryOptions({enabled:!!e&&!!t,queryKey:u.accounts.recoveries(e),queryFn:async()=>{if(!e||!t)throw new Error("[SDK][Accounts] Missing username or access token");return (await h()(d.privateApiHost+"/private-api/recoveries",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t})})).json()}})}function rb(e){return reactQuery.queryOptions({enabled:!!e,queryKey:u.accounts.pendingRecovery(e),queryFn:()=>y("database_api.find_change_recovery_account_requests",{accounts:[e]})})}function ub(e,t=50){return reactQuery.queryOptions({queryKey:u.accounts.reputations(e,t),enabled:!!e,queryFn:async()=>!e||!et(e)?[]:y("condenser_api.get_account_reputations",[e,t])})}var K=oe.operations,Qo={transfers:[K.transfer,K.transfer_to_savings,K.transfer_from_savings,K.cancel_transfer_from_savings,K.fill_transfer_from_savings,K.recurrent_transfer,K.fill_recurrent_transfer,K.escrow_transfer],"market-orders":[K.fill_convert_request,K.fill_order,K.fill_collateralized_convert_request,K.limit_order_create2,K.limit_order_create,K.limit_order_cancel],interests:[K.interest],"stake-operations":[K.return_vesting_delegation,K.withdraw_vesting,K.transfer_to_vesting,K.set_withdraw_vesting_route,K.update_proposal_votes,K.fill_vesting_withdraw,K.account_witness_proxy,K.delegate_vesting_shares],rewards:[K.author_reward,K.curation_reward,K.producer_reward,K.claim_reward_balance,K.comment_benefactor_reward,K.liquidity_reward,K.proposal_pay]},Uu=Array.from(new Set(Object.values(Qo).flat()));function Hu(e){return e.block*1e7+e.trx_in_block*100+e.op_pos}function Vu(e){return e.replace(/_operation$/,"")}function ju(e){return typeof e=="object"&&e!==null&&"nai"in e&&"amount"in e&&"precision"in e}function Lu(e){if(!ju(e))return e;let t=F(e),r=$t[e.nai]??"UNKNOWN";return `${t.amount.toFixed(e.precision)} ${r}`}function $u(e){let t={};for(let[r,n]of Object.entries(e))t[r]=Lu(n);return t}function yb(e,t=20,r=""){let n=r?Qo[r]:Uu;return reactQuery.infiniteQueryOptions({queryKey:u.accounts.transactions(e??"",r,t),initialPageParam:null,queryFn:async({pageParam:o,signal:i})=>{if(!e)return {entries:[],currentPage:0};let s=async m=>{let f={"account-name":e,"operation-types":n.join(","),"page-size":t};return m!==null&&(f.page=m),await te("hafah","/accounts/{account-name}/operations",f,void 0,void 0,i)},a=m=>m.operations_result.map(f=>{let g=Vu(f.op.type);return {...$u(f.op.value),num:Hu(f),type:g,timestamp:f.timestamp,trx_id:f.trx_id}}),c=await s(o),p=a(c),l=o??c.total_pages;if(o===null&&p.length<t&&c.total_pages>1)try{let m=await s(c.total_pages-1);p=[...p,...a(m)],l=c.total_pages-1;}catch(m){if(i?.aborted)throw m}return {entries:p,currentPage:l}},getNextPageParam:o=>{let i=o.currentPage-1;return i>=1?i:void 0}})}function bb(){return reactQuery.queryOptions({queryKey:u.accounts.bots(),queryFn:async()=>{let e=await fetch(d.privateApiHost+"/private-api/public/bots",{method:"GET",headers:{"Content-Type":"application/json"}});if(!e.ok)throw new Error(`Failed to fetch bots: ${e.status}`);return e.json()},refetchOnMount:true,staleTime:1/0})}function xb(e){return reactQuery.infiniteQueryOptions({queryKey:u.accounts.referrals(e),initialPageParam:{maxId:void 0},queryFn:async({pageParam:t})=>{let{maxId:r}=t??{},n=exports.ConfigManager.getValidatedBaseUrl(),o=new URL(`/private-api/referrals/${e}`,n);r!==void 0&&o.searchParams.set("max_id",r.toString());let i=await fetch(o.toString(),{method:"GET",headers:{"Content-Type":"application/json"}});if(!i.ok)throw new Error(`Failed to fetch referrals: ${i.status}`);return i.json()},getNextPageParam:t=>{let r=t?.[t.length-1]?.id;return typeof r=="number"?{maxId:r}:void 0}})}function Eb(e){return reactQuery.queryOptions({queryKey:u.accounts.referralsStats(e),queryFn:async()=>{let t=await fetch(d.privateApiHost+`/private-api/referrals/${e}/stats`,{method:"GET",headers:{"Content-Type":"application/json"}});if(!t.ok)throw new Error(`Failed to fetch referral stats: ${t.status}`);let r=await t.json();if(!r)throw new Error("No Referrals for this user!");return {total:r.total??0,rewarded:r.rewarded??0}}})}function Ib(e,t,r){let{followType:n="blog",limit:o=100,enabled:i=true}=r??{};return reactQuery.infiniteQueryOptions({queryKey:u.accounts.friends(e,t,n,o),initialPageParam:{startFollowing:""},enabled:i,refetchOnMount:true,queryFn:async({pageParam:s})=>{let{startFollowing:a}=s,l=(await y(`condenser_api.${t==="following"?"get_following":"get_followers"}`,[e,a===""?null:a,n,o])).map(g=>t==="following"?g.following:g.follower);return (await y("bridge.get_profiles",{accounts:l,observer:void 0})??[]).map(g=>({name:g.name,reputation:g.reputation,active:g.active}))},getNextPageParam:s=>s&&s.length===o?{startFollowing:s[s.length-1].name}:void 0})}var Xu=30;function Bb(e,t,r){return reactQuery.queryOptions({queryKey:u.accounts.searchFriends(e,t,r),refetchOnMount:false,enabled:false,queryFn:async()=>{if(!r)return [];let n=r.slice(0,-1),s=(await y(`condenser_api.${t==="following"?"get_following":"get_followers"}`,[e,n,"blog",1e3])).map(c=>t==="following"?c.following:c.follower).filter(c=>c.toLowerCase().includes(r.toLowerCase())).slice(0,Xu);return (await y("bridge.get_profiles",{accounts:s,observer:void 0}))?.map(c=>({name:c.name,full_name:c.metadata.profile?.name||"",reputation:c.reputation,active:c.active}))??[]}})}function jb(e=20){return reactQuery.infiniteQueryOptions({queryKey:u.posts.trendingTags(),queryFn:async({pageParam:{afterTag:t}})=>y("condenser_api.get_trending_tags",[t,e]).then(r=>r.filter(n=>n.name!=="").filter(n=>!n.name.startsWith("hive-")).map(n=>n.name)),initialPageParam:{afterTag:""},getNextPageParam:t=>t?.length>0?{afterTag:t[t.length-1]}:void 0,staleTime:3600*1e3})}function Jb(e=250){return reactQuery.infiniteQueryOptions({queryKey:u.posts.trendingTagsWithStats(e),queryFn:async({pageParam:{afterTag:t}})=>y("condenser_api.get_trending_tags",[t,e]).then(r=>r.filter(n=>n.name!=="").filter(n=>!To(n.name))),initialPageParam:{afterTag:""},getNextPageParam:t=>t?.length?{afterTag:t[t.length-1].name}:void 0,staleTime:1/0})}function tt(e,t){return reactQuery.queryOptions({queryKey:u.posts.fragments(e),queryFn:async()=>t?(await h()(d.privateApiHost+"/private-api/fragments",{method:"POST",body:JSON.stringify({code:t}),headers:{"Content-Type":"application/json"}})).json():[],enabled:!!e&&!!t})}function ev(e,t,r=10){return reactQuery.infiniteQueryOptions({queryKey:u.posts.fragmentsInfinite(e,r),queryFn:async({pageParam:n=0})=>{if(!e||!t)return {data:[],pagination:{total:0,limit:r,offset:0,has_next:false}};let i=await h()(`${d.privateApiHost}/private-api/fragments?format=wrapped&offset=${n}&limit=${r}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t})});if(!i.ok)throw new Error(`Failed to fetch fragments: ${i.status}`);let s=await i.json();return re(s,r)},initialPageParam:0,getNextPageParam:n=>{if(n.pagination.has_next)return n.pagination.offset+n.pagination.limit},enabled:!!e&&!!t})}function ov(e="feed"){return reactQuery.queryOptions({queryKey:u.posts.promoted(e),queryFn:async()=>{let t=exports.ConfigManager.getValidatedBaseUrl(),r=new URL("/private-api/promoted-entries",t);return e==="waves"&&r.searchParams.append("short_content","1"),await(await h()(r.toString(),{method:"GET",headers:{"Content-Type":"application/json"}})).json()}})}function cv(e){return reactQuery.queryOptions({queryKey:u.posts.entryActiveVotes(e?.author,e?.permlink),queryFn:async()=>y("condenser_api.get_active_votes",[e?.author,e?.permlink]),enabled:!!e})}function fv(e,t,r){return reactQuery.queryOptions({queryKey:u.posts.userPostVote(e,t,r),queryFn:async()=>(await y("database_api.list_votes",{start:[e,t,r],limit:1,order:"by_voter_comment"}))?.votes?.[0]||null,enabled:!!e&&!!t&&!!r})}function wv(e,t){return reactQuery.queryOptions({queryKey:u.posts.content(e,t),enabled:!!e&&!!t,queryFn:async()=>y("condenser_api.get_content",[e,t])})}function xv(e,t){return reactQuery.queryOptions({queryKey:u.posts.contentReplies(e,t),enabled:!!e&&!!t,queryFn:async()=>y("condenser_api.get_content_replies",{author:e,permlink:t})})}function Rv(e,t){return reactQuery.queryOptions({queryKey:u.posts.postHeader(e,t),queryFn:async()=>y("bridge.get_post_header",{author:e,permlink:t}),initialData:null})}function ne(e){return Array.isArray(e)?e.map(t=>Uo(t)):Uo(e)}function Uo(e){if(!e)return e;let t=`@${e.author}/${e.permlink}`;return d.dmcaPatterns.includes(t)||d.dmcaPatternRegexes.some(n=>n.test(t))?{...e,body:"This post is not available due to a copyright/fraudulent claim.",title:""}:e}async function Ho(e,t,r){try{let n=await Ht("bridge.get_post",{author:e,permlink:t,observer:r},1);if(n&&typeof n=="object"&&n.author===e&&n.permlink===t)return n}catch{}return null}function Vo(e,t,r="",n){let o=t?.trim(),i=`/@${e}/${o??""}`;return reactQuery.queryOptions({queryKey:u.posts.entry(i),queryFn:async()=>{if(!o||o==="undefined")return null;let s=await y("bridge.get_post",{author:e,permlink:o,observer:r});if(!s){let c=await Ho(e,o,r);if(!c)return null;let p=n!==void 0?{...c,num:n}:c;return ne(p)}let a=n!==void 0?{...s,num:n}:s;return ne(a)},enabled:!!e&&!!t&&t.trim()!==""&&t.trim()!=="undefined"})}function ae(e,t,r){return y(`bridge.${e}`,t,void 0,void 0,r)}async function jo(e,t,r,n){let{json_metadata:o}=e;if(o?.original_author&&o?.original_permlink&&o.tags?.[0]==="cross-post")try{let i=await pc(o.original_author,o.original_permlink,t,r,n);return i?{...e,original_entry:i,num:r}:e}catch{return e}return {...e,num:r}}async function Lo(e,t,r){let n=e.map(ht),o=await Promise.all(n.map(i=>jo(i,t,void 0,r)));return ne(o)}async function $o(e,t="",r="",n=20,o="",i="",s){let a=await ae("get_ranked_posts",{sort:e,start_author:t,start_permlink:r,limit:n,tag:o,observer:i},s);return Array.isArray(a)?Lo(a,i,s):(a!=null&&console.warn(`[SDK] get_ranked_posts returned ${typeof a} instead of an array for sort=${e}; treating as no results.`),null)}async function Mr(e,t,r="",n="",o=20,i="",s){if(d.dmcaAccounts.includes(t))return [];let a=await ae("get_account_posts",{sort:e,account:t,start_author:r,start_permlink:n,limit:o,observer:i},s);return Array.isArray(a)?Lo(a,i,s):(a!=null&&console.warn(`[SDK] get_account_posts returned ${typeof a} instead of an array for account=${t}, sort=${e}; treating as no results.`),null)}function ht(e){let t={...e,active_votes:Array.isArray(e.active_votes)?[...e.active_votes]:[],beneficiaries:Array.isArray(e.beneficiaries)?[...e.beneficiaries]:[],blacklists:Array.isArray(e.blacklists)?[...e.blacklists]:[],replies:Array.isArray(e.replies)?[...e.replies]:[],stats:e.stats?{...e.stats}:null},r=["author","title","body","created","category","permlink","url","updated"];for(let n of r)t[n]==null&&(t[n]="");return t.author_reputation==null&&(t.author_reputation=0),t.children==null&&(t.children=0),t.depth==null&&(t.depth=0),t.net_rshares==null&&(t.net_rshares=0),t.payout==null&&(t.payout=0),t.percent_hbd==null&&(t.percent_hbd=0),t.stats||(t.stats={flag_weight:0,gray:false,hide:false,total_votes:0}),t.author_payout_value==null&&(t.author_payout_value="0.000 HBD"),t.curator_payout_value==null&&(t.curator_payout_value="0.000 HBD"),t.max_accepted_payout==null&&(t.max_accepted_payout="1000000.000 HBD"),t.payout_at==null&&(t.payout_at=""),t.pending_payout_value==null&&(t.pending_payout_value="0.000 HBD"),t.promoted==null&&(t.promoted="0.000 HBD"),t.is_paidout==null&&(t.is_paidout=false),t}async function pc(e="",t="",r="",n,o){let i=await ae("get_post",{author:e,permlink:t,observer:r},o);if(i){let s=ht(i),a=await jo(s,r,n,o);return ne(a)}}async function jv(e="",t=""){let r=await ae("get_post_header",{author:e,permlink:t});return r&&ht(r)}async function Wo(e,t,r){let n=await ae("get_discussion",{author:e,permlink:t,observer:r||e});if(n){let o={};for(let[i,s]of Object.entries(n))o[i]=ht(s);return o}return n}async function Go(e,t=""){return ae("get_community",{name:e,observer:t})}async function Lv(e="",t=100,r,n="rank",o=""){return ae("list_communities",{last:e,limit:t,query:r,sort:n,observer:o})}async function zo(e){let t=await ae("normalize_post",{post:e});return t&&ht(t)}async function $v(e){return ae("list_all_subscriptions",{account:e})}async function Wv(e){return ae("list_subscribers",{community:e})}async function Gv(e,t){return ae("get_relationship_between_accounts",[e,t])}async function zt(e,t){return ae("get_profiles",{accounts:e,observer:t})}var Yo=(o=>(o.trending="trending",o.author_reputation="author_reputation",o.votes="votes",o.created="created",o))(Yo||{});function Br(e){let t=e.match(/^(\d+\.?\d*)\s*([A-Z]+)$/);return t?{amount:parseFloat(t[1]),symbol:t[2]}:{amount:0,symbol:""}}function lc(e,t,r){let n=l=>Br(l.pending_payout_value).amount+Br(l.author_payout_value).amount+Br(l.curator_payout_value).amount,o=l=>l.net_rshares<0,i=l=>e.json_metadata?.pinned_reply===`${l.author}/${l.permlink}`,s={trending:(l,m)=>{if(o(l))return 1;if(o(m))return -1;let f=n(l),g=n(m);return f!==g?g-f:0},author_reputation:(l,m)=>{let f=l.author_reputation,g=m.author_reputation;return f>g?-1:f<g?1:0},votes:(l,m)=>{let f=l.children,g=m.children;return f>g?-1:f<g?1:0},created:(l,m)=>{if(o(l))return 1;if(o(m))return -1;let f=Date.parse(l.created),g=Date.parse(m.created);return f>g?-1:f<g?1:0}},a=t.sort(s[r]),c=a.findIndex(l=>i(l)),p=a[c];return c>=0&&(a.splice(c,1),a.unshift(p)),a}function Xo(e,t="created",r=true,n){let o=n||d.defaultObserver;return reactQuery.queryOptions({queryKey:u.posts.discussions(e?.author,e?.permlink,t,o),queryFn:async()=>{if(!e)return [];let i=await y("bridge.get_discussion",{author:e.author,permlink:e.permlink,observer:o}),s=i?Array.from(Object.values(i)):[];return ne(s)},enabled:r&&!!e,select:i=>lc(e,i,t),structuralSharing:(i,s)=>{if(!i||!s)return s;let a=i.filter(l=>l.is_optimistic===true),c=new Set(s.map(l=>`${l.author}/${l.permlink}`)),p=a.filter(l=>!c.has(`${l.author}/${l.permlink}`));return p.length>0?[...s,...p]:s}})}function tP(e,t,r,n=true){let o=r||d.defaultObserver;return reactQuery.queryOptions({queryKey:u.posts.discussion(e,t,o),enabled:n&&!!e&&!!t,queryFn:async()=>Wo(e,t,o)})}function uP(e,t="posts",r=20,n="",o=true){return reactQuery.infiniteQueryOptions({queryKey:u.posts.accountPosts(e??"",t,r,n),enabled:!!e&&o,initialPageParam:{author:void 0,permlink:void 0,hasNextPage:true},queryFn:async({pageParam:i,signal:s})=>{if(!i?.hasNextPage||!e)return [];let a=await Mr(t,e,i.author??"",i.permlink??"",r,n,s);return ne(a??[])},getNextPageParam:i=>{let s=i?.[i.length-1],a=(i?.length??0)===r;if(a)return {author:s?.author,permlink:s?.permlink,hasNextPage:a}}})}function cP(e,t="posts",r="",n="",o=20,i="",s=true){return reactQuery.queryOptions({queryKey:u.posts.accountPostsPage(e??"",t,r,n,o,i),enabled:!!e&&s,queryFn:async({signal:a}={})=>{if(!e)return [];let c=await Mr(t,e,r,n,o,i,a);return ne(c??[])}})}var Zo=new Map;function yc(e){let t=Zo.get(e);return t||(t=r=>({...r,pages:r.pages.map(n=>hc(n,e))}),Zo.set(e,t)),t}function hc(e,t){let r=e.filter(i=>i.stats?.is_pinned),n=e.filter(i=>!i.stats?.is_pinned);if(t==="hot")return [...r,...n];let o=[...n].sort((i,s)=>new Date(s.created).getTime()-new Date(i.created).getTime());return [...r,...o]}function hP(e,t,r=20,n="",o=true,i={}){return reactQuery.infiniteQueryOptions({queryKey:u.posts.postsRanked(e,t,r,n),queryFn:async({pageParam:s,signal:a})=>{let c=t;d.dmcaTagRegexes.some(l=>l.test(t))&&(c="");let p=await y("bridge.get_ranked_posts",{sort:e,start_author:s.author,start_permlink:s.permlink,limit:r,tag:c,observer:n},void 0,void 0,a);if(p==null)return [];if(!Array.isArray(p))throw new Error(`[SDK] get_ranked_posts returned ${typeof p} for sort=${e}`);return ne(p)},select:yc(e),enabled:o,initialPageParam:{author:void 0,permlink:void 0},getNextPageParam:s=>{let a=s?.[s.length-1];if(a)return {author:a.author,permlink:a.permlink}}})}function _P(e,t="",r="",n=20,o="",i="",s=true){return reactQuery.queryOptions({queryKey:u.posts.postsRankedPage(e,t,r,n,o,i),enabled:s,queryFn:async({signal:a}={})=>{let c=o;d.dmcaTagRegexes.some(l=>l.test(o))&&(c="");let p=await $o(e,t,r,n,c,i,a);return ne(p??[])}})}function AP(e,t,r=200){return reactQuery.queryOptions({queryKey:u.posts.reblogs(e??"",r),queryFn:async()=>(await y("condenser_api.get_blog_entries",[e??t,0,r])).filter(o=>o.author!==t&&!o.reblogged_on.startsWith("1970-")).map(o=>({author:o.author,permlink:o.permlink})),enabled:!!e})}function EP(e,t){return reactQuery.queryOptions({queryKey:u.posts.rebloggedBy(e??"",t??""),queryFn:async()=>{if(!e||!t)return [];let r=await y("condenser_api.get_reblogged_by",[e,t]);return Array.isArray(r)?r:[]},enabled:!!e&&!!t})}function FP(e,t){return reactQuery.queryOptions({queryKey:u.posts.schedules(e),queryFn:async()=>{if(!e||!t)return [];let n=await h()(d.privateApiHost+"/private-api/schedules",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t})});if(!n.ok)throw new Error(`Failed to fetch schedules: ${n.status}`);return n.json()},enabled:!!e&&!!t})}function qP(e,t,r=10){return reactQuery.infiniteQueryOptions({queryKey:u.posts.schedulesInfinite(e,r),queryFn:async({pageParam:n=0})=>{if(!e||!t)return {data:[],pagination:{total:0,limit:r,offset:0,has_next:false}};let i=await h()(`${d.privateApiHost}/private-api/schedules?format=wrapped&offset=${n}&limit=${r}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t})});if(!i.ok)throw new Error(`Failed to fetch schedules: ${i.status}`);let s=await i.json();return re(s,r)},initialPageParam:0,getNextPageParam:n=>{if(n.pagination.has_next)return n.pagination.offset+n.pagination.limit},enabled:!!e&&!!t})}function NP(e,t){return reactQuery.queryOptions({queryKey:u.posts.drafts(e),queryFn:async()=>{if(!e||!t)return [];let n=await h()(d.privateApiHost+"/private-api/drafts",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t})});if(!n.ok)throw new Error(`Failed to fetch drafts: ${n.status}`);return n.json()},enabled:!!e&&!!t})}function MP(e,t,r=10){return reactQuery.infiniteQueryOptions({queryKey:u.posts.draftsInfinite(e,r),queryFn:async({pageParam:n=0})=>{if(!e||!t)return {data:[],pagination:{total:0,limit:r,offset:0,has_next:false}};let i=await h()(`${d.privateApiHost}/private-api/drafts?format=wrapped&offset=${n}&limit=${r}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t})});if(!i.ok)throw new Error(`Failed to fetch drafts: ${i.status}`);let s=await i.json();return re(s,r)},initialPageParam:0,getNextPageParam:n=>{if(n.pagination.has_next)return n.pagination.offset+n.pagination.limit},enabled:!!e&&!!t})}async function ti(e){let r=await h()(d.privateApiHost+"/private-api/images",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:e})});if(!r.ok)throw new Error(`Failed to fetch images: ${r.status}`);return r.json()}function HP(e,t){return reactQuery.queryOptions({queryKey:u.posts.images(e),queryFn:async()=>!e||!t?[]:ti(t),enabled:!!e&&!!t})}function VP(e,t){return reactQuery.queryOptions({queryKey:u.posts.galleryImages(e),queryFn:async()=>!e||!t?[]:ti(t),enabled:!!e&&!!t})}function jP(e,t,r=10){return reactQuery.infiniteQueryOptions({queryKey:u.posts.imagesInfinite(e,r),queryFn:async({pageParam:n=0})=>{if(!e||!t)return {data:[],pagination:{total:0,limit:r,offset:0,has_next:false}};let i=await h()(`${d.privateApiHost}/private-api/images?format=wrapped&offset=${n}&limit=${r}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t})});if(!i.ok)throw new Error(`Failed to fetch images: ${i.status}`);let s=await i.json();return re(s,r)},initialPageParam:0,getNextPageParam:n=>{if(n.pagination.has_next)return n.pagination.offset+n.pagination.limit},enabled:!!e&&!!t})}function GP(e,t,r=false){return reactQuery.queryOptions({queryKey:u.posts.commentHistory(e,t,r),queryFn:async({signal:n})=>{let o=await fetch(d.privateApiHost+"/private-api/comment-history",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({author:e,permlink:t,onlyMeta:r?"1":""}),signal:n});if(!o.ok)throw new Error(`Failed to fetch comment history: ${o.status}`);return o.json()},enabled:!!e&&!!t})}function Cc(e,t){let r=e?.trim(),n=t?.trim();if(!r||!n)throw new Error("Invalid entry path: author and permlink are required");let o=r.replace(/^@+/,""),i=n.replace(/^\/+/,"");if(!o||!i)throw new Error("Invalid entry path: author and permlink cannot be empty after normalization");return `@${o}/${i}`}function XP(e,t){let r=t?.trim(),n=e?.trim(),o=!!n&&!!r&&r!=="undefined",i=o?Cc(n,r):"";return reactQuery.queryOptions({queryKey:u.posts.deletedEntry(i),queryFn:async({signal:s})=>{let a=await fetch(d.privateApiHost+"/private-api/comment-history",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({author:e,permlink:r||""}),signal:s});if(!a.ok)throw new Error(`Failed to fetch comment history: ${a.status}`);return a.json()},select:s=>{if(!s?.list?.[0])return null;let{body:a,title:c,tags:p}=s.list[0];return {body:a,title:c,tags:p}},enabled:o})}function rA(e,t,r=true){return reactQuery.queryOptions({queryKey:u.posts.tips(e,t),queryFn:async()=>{let n=`/private-api/post-tips/${encodeURIComponent(e)}/${encodeURIComponent(t)}`,o=await fetch(d.privateApiHost+n,{method:"GET",headers:{"Content-Type":"application/json"}});if(!o.ok)throw new Error(`Failed to fetch post tips: ${o.status}`);return o.json()},enabled:!!e&&!!t&&r,staleTime:60*1e3})}function Rc(e,t){return {...e,id:e.id??e.post_id,created:e.created??e.timestamp,host:t}}function kc(e){return {...e,id:e.id??e.post_id}}function he(e,t){if(!e)return null;let r=e.container??e,n=Rc(r,t),o=e.parent?kc(e.parent):void 0;return {...e,id:e.id??e.post_id,created:e.created??e.timestamp,max_accepted_payout:e.max_accepted_payout||"1000000.000 HBD",pending_payout_value:e.pending_payout_value||"0.000 HBD",author_payout_value:e.author_payout_value||"0.000 HBD",curator_payout_value:e.curator_payout_value||"0.000 HBD",host:t,container:n,parent:o}}function Tc(e){return Array.isArray(e)?e:[]}async function ri(e){let t=Xo(e,"created",true),r=await d.queryClient.fetchQuery(t),n=Tc(r);if(n.length<=1)return [];let o=n.filter(({parent_author:s,parent_permlink:a})=>s===e.author&&a===e.permlink);return o.length===0?[]:o.filter(s=>!s.stats?.gray)}function ni(e,t,r){return e.length===0?[]:e.map(n=>{let o=e.find(i=>i.author===n.parent_author&&i.permlink===n.parent_permlink&&i.author!==r);return {...n,id:n.post_id,host:r,container:t,parent:o}}).filter(n=>n.container.post_id!==n.post_id).sort((n,o)=>new Date(o.created).getTime()-new Date(n.created).getTime())}var Ic=20;function oi(e){return {containers:e.containers??[],tag:e.tag?.trim()||void 0,following:e.following?.trim().toLowerCase()||void 0,author:e.author?.trim().toLowerCase()||void 0,observer:e.observer?.trim().toLowerCase()||void 0,limit:e.limit??Ic}}async function ii({containers:e,tag:t,following:r,author:n,observer:o,limit:i},s,a){let c=exports.ConfigManager.getValidatedBaseUrl(),p=new URL("/private-api/waves/feed",c);p.searchParams.set("limit",String(i)),s&&p.searchParams.set("cursor",s),e.forEach(f=>p.searchParams.append("container",f)),t&&p.searchParams.set("tag",t),r&&p.searchParams.set("following",r),n&&p.searchParams.set("author",n),o&&p.searchParams.set("observer",o);let l=await fetch(p.toString(),{method:"GET",signal:a});if(!l.ok)throw new Error(`Failed to fetch waves feed: ${l.status}`);let m=await l.json();return !Array.isArray(m)||m.length===0?[]:m.map(f=>{let g=he(f,f.host??"");return g?{...g,_cursor:f._cursor}:null}).filter(f=>!!f)}function pA(e={}){let t=oi(e),{containers:r,tag:n,following:o,author:i,observer:s,limit:a}=t;return reactQuery.infiniteQueryOptions({queryKey:u.posts.wavesFeed({containers:r,tag:n,following:o,author:i,observer:s,limit:a}),initialPageParam:void 0,queryFn:({pageParam:c,signal:p})=>ii(t,c,p),getNextPageParam:c=>{if(!(c.length<a))return c[c.length-1]?._cursor}})}function lA(e={}){let t=oi(e),{containers:r,tag:n,following:o,author:i,observer:s,limit:a}=t;return reactQuery.queryOptions({queryKey:[...u.posts.wavesFeed({containers:r,tag:n,following:o,author:i,observer:s,limit:a}),"latest"],staleTime:0,queryFn:({signal:c})=>ii(t,void 0,c)})}var Kc=20;function Nc(e){return {containers:e.containers??[],tag:e.tag?.trim()||void 0,author:e.author?.trim().toLowerCase()||void 0,observer:e.observer?.trim().toLowerCase()||void 0,limit:e.limit??Kc}}async function Mc({containers:e,tag:t,author:r,observer:n,limit:o},i,s){let a=exports.ConfigManager.getValidatedBaseUrl(),c=new URL("/private-api/waves/shorts",a);c.searchParams.set("limit",String(o)),i&&c.searchParams.set("cursor",i),e.forEach(m=>c.searchParams.append("container",m)),t&&c.searchParams.set("tag",t),r&&c.searchParams.set("author",r),n&&c.searchParams.set("observer",n);let p=await fetch(c.toString(),{method:"GET",signal:s});if(!p.ok)throw new Error(`Failed to fetch shorts feed: ${p.status}`);let l=await p.json();return !Array.isArray(l)||l.length===0?[]:l.map(m=>{let f=he(m,m.host??"");return f?{...f,active_votes:f.active_votes??[],video:m.video,_cursor:m._cursor}:null}).filter(m=>!!m)}function yA(e={}){let t=Nc(e),{containers:r,tag:n,author:o,observer:i,limit:s}=t;return reactQuery.infiniteQueryOptions({queryKey:u.posts.shortsFeed({containers:r,tag:n,author:o,observer:i,limit:s}),initialPageParam:void 0,queryFn:({pageParam:a,signal:c})=>Mc(t,a,c),getNextPageParam:a=>{if(!(a.length<s))return a[a.length-1]?._cursor}})}var Qc=5,Uc=50;async function Hc(e,t){let r=t?.author,n=t?.permlink,o=0,i=t?.post_id;for(;o<Uc;){let s={sort:"posts",account:e,limit:Qc,...r?{start_author:r}:{},...n?{start_permlink:n}:{}},a;try{a=await y("bridge.get_account_posts",s);}catch(l){return console.error("[SDK] getThreads get_account_posts error:",l),null}if(!a||a.length===0)return null;let c=a.map(l=>(l.id=l.post_id,l.host=e,l));for(let l of c){if(i&&l.post_id===i){i=void 0;continue}if(o+=1,l.stats?.gray){r=l.author,n=l.permlink;continue}let m;try{m=await ri(l);}catch(f){console.error("[SDK] getThreads get_discussion error:",f),r=l.author,n=l.permlink;continue}if(m.length===0){r=l.author,n=l.permlink;continue}return {entries:ni(m,l,e)}}let p=c[c.length-1];if(!p)return null;r=p.author,n=p.permlink;}return null}function AA(e){return reactQuery.infiniteQueryOptions({queryKey:u.posts.wavesByHost(e),initialPageParam:void 0,queryFn:async({pageParam:t})=>{let r=await Hc(e,t);return r?r.entries:[]},getNextPageParam:t=>t?.[0]?.container})}var jc=40;function EA(e,t,r=jc){return reactQuery.infiniteQueryOptions({queryKey:u.posts.wavesByTag(e,t),initialPageParam:void 0,queryFn:async({signal:n})=>{try{let o=exports.ConfigManager.getValidatedBaseUrl(),i=new URL("/private-api/waves/tags",o);i.searchParams.set("container",e),i.searchParams.set("tag",t);let s=await fetch(i.toString(),{method:"GET",headers:{"Content-Type":"application/json"},signal:n});if(!s.ok)throw new Error(`Failed to fetch waves by tag: ${s.status}`);return (await s.json()).slice(0,r).map(p=>he(p,e)).filter(p=>!!p).sort((p,l)=>new Date(l.created).getTime()-new Date(p.created).getTime())}catch(o){return console.error("[SDK] Failed to fetch waves by tag",o),[]}},getNextPageParam:()=>{}})}function qA(e,t){let r=t?.trim().toLowerCase();return reactQuery.infiniteQueryOptions({queryKey:u.posts.wavesFollowing(e,r??""),enabled:!!r,initialPageParam:void 0,queryFn:async({signal:n})=>{if(!r)return [];try{let o=exports.ConfigManager.getValidatedBaseUrl(),i=new URL("/private-api/waves/following",o);i.searchParams.set("container",e),i.searchParams.set("username",r);let s=await fetch(i.toString(),{method:"GET",headers:{"Content-Type":"application/json"},signal:n});if(!s.ok)throw new Error(`Failed to fetch waves following feed: ${s.status}`);let a=await s.json();if(!Array.isArray(a)||a.length===0)return [];let c=a.map(p=>he(p,e)).filter(p=>!!p);return c.length===0?[]:c.sort((p,l)=>new Date(l.created).getTime()-new Date(p.created).getTime())}catch(o){return console.error("[SDK] Failed to fetch waves following feed",o),[]}},getNextPageParam:()=>{}})}function NA(e,t=24){let r=e?.trim()||void 0;return reactQuery.queryOptions({queryKey:u.posts.wavesTrendingTags(r??"",t),queryFn:async({signal:n})=>{try{let o=exports.ConfigManager.getValidatedBaseUrl(),i=new URL("/private-api/waves/trending/tags",o);r&&i.searchParams.set("container",r),i.searchParams.set("hours",t.toString());let s=await fetch(i.toString(),{method:"GET",signal:n});if(!s.ok)throw new Error(`Failed to fetch waves trending tags: ${s.status}`);return (await s.json()).map(({tag:c,posts:p})=>({tag:c,posts:p}))}catch(o){return console.error("[SDK] Failed to fetch waves trending tags",o),[]}}})}function HA(e,t){let r=t?.trim().toLowerCase();return reactQuery.infiniteQueryOptions({queryKey:u.posts.wavesByAccount(e,r??""),enabled:!!r,initialPageParam:void 0,queryFn:async({signal:n})=>{if(!r)return [];try{let o=exports.ConfigManager.getValidatedBaseUrl(),i=new URL("/private-api/waves/account",o);i.searchParams.set("container",e),i.searchParams.set("username",r);let s=await fetch(i.toString(),{method:"GET",signal:n});if(!s.ok)throw new Error(`Failed to fetch waves for account: ${s.status}`);let a=await s.json();if(!Array.isArray(a)||a.length===0)return [];let c=a.map(p=>he(p,e)).filter(p=>!!p);return c.length===0?[]:c.sort((p,l)=>new Date(l.created).getTime()-new Date(p.created).getTime())}catch(o){throw console.error("[SDK] Failed to fetch waves for account",o),o}},getNextPageParam:()=>{}})}function $A(e){return reactQuery.queryOptions({queryKey:u.posts.wavesTrendingAuthors(e),queryFn:async({signal:t})=>{try{let r=exports.ConfigManager.getValidatedBaseUrl(),n=new URL("/private-api/waves/trending/authors",r);n.searchParams.set("container",e);let o=await fetch(n.toString(),{method:"GET",signal:t});if(!o.ok)throw new Error(`Failed to fetch waves trending authors: ${o.status}`);return (await o.json()).map(({author:s,posts:a})=>({author:s,posts:a}))}catch(r){throw console.error("[SDK] Failed to fetch waves trending authors",r),r}}})}function YA(e,t=true){return reactQuery.queryOptions({queryKey:u.posts.normalize(e?.author??"",e?.permlink??""),enabled:t&&!!e,queryFn:async()=>zo(e)})}function Yc(e){return !!e&&typeof e=="object"&&"author"in e&&"permlink"in e&&"active_votes"in e}function si(e){let t=new Date(e);return (new Date().getTime()-t.getTime())/(1e3*60*60*24)}function i0(e,t){let{limit:r=20,filters:n=[],dayLimit:o=7}=t??{};return reactQuery.infiniteQueryOptions({queryKey:u.accounts.voteHistory(e,r),initialPageParam:{start:-1},queryFn:async({pageParam:i})=>{let{start:s}=i,a=await y("condenser_api.get_account_history",[e,s,r,...n]),p=a.map(([f,g])=>({...g.op[1],num:f,timestamp:g.timestamp})).filter(f=>f.voter===e&&f.weight!==0&&si(f.timestamp)<=o),l=[];for(let f of p){let g=await d.queryClient.fetchQuery(Vo(f.author,f.permlink));Yc(g)&&l.push(g);}let[m]=a;return {lastDate:m?si(m[1].timestamp):0,lastItemFetched:m?m[0]:s,entries:l}},getNextPageParam:i=>({start:i.lastItemFetched})})}function p0(e,t,r=true){return reactQuery.queryOptions({queryKey:u.accounts.profiles(e,t??""),enabled:r&&e.length>0,queryFn:async()=>zt(e,t)})}function y0(e,t="HIVE",r=200){return reactQuery.infiniteQueryOptions({queryKey:u.wallet.balanceHistory(e??"",t,r),initialPageParam:null,queryFn:async({pageParam:n,signal:o})=>{if(!e)return {entries:[],currentPage:0};let i={"account-name":e,"coin-type":t,"page-size":r,direction:"desc"};n!==null&&(i.page=n);let s=await te("balance","/accounts/{account-name}/balance-history",i,void 0,void 0,o);return {entries:s.operations_result,currentPage:n??s.total_pages}},getNextPageParam:n=>{let o=n.currentPage-1;return o>=1?o:void 0},enabled:!!e})}function v0(e,t="HIVE",r="yearly"){return reactQuery.queryOptions({queryKey:u.wallet.aggregatedHistory(e??"",t,r),queryFn:async()=>e?await te("balance","/accounts/{account-name}/aggregated-history",{"account-name":e,"coin-type":t,granularity:r}):[],enabled:!!e,staleTime:6e4})}function O0(){return reactQuery.queryOptions({queryKey:u.accounts.proMembers(),queryFn:async()=>{let e=await fetch(d.privateApiHost+"/private-api/pro-members",{method:"GET",headers:{"Content-Type":"application/json"}});if(!e.ok)throw new Error(`Failed to fetch pro members: ${e.status}`);return e.json()},staleTime:300*1e3})}function S0(e){return new Set((e??[]).map(t=>t.toLowerCase()))}function F0(e,t,r){let n=reactQuery.useQueryClient(),{data:o}=reactQuery.useQuery(M(e));return v(["accounts","update"],e,i=>{let s=Ko(n.getQueryData(M(e).queryKey),o);if(!s)throw new Error("[SDK][Accounts] \u2013 cannot update not existing account");return [["account_update2",{account:e,json_metadata:"",extensions:[],posting_json_metadata:No({existingPostingJsonMetadata:s.posting_json_metadata,profile:i.profile,tokens:i.tokens})}]]},async(i,s)=>{n.setQueryData(M(e).queryKey,a=>{if(!a)return a;let c=JSON.parse(JSON.stringify(a));return c.profile=Nr({existingProfile:Do(a),profile:s.profile,tokens:s.tokens}),c}),await S(t?.adapter,r,[u.accounts.full(e)]);},t,void 0,{broadcastMode:r,onMutate:async()=>{if(e)try{await n.fetchQuery({...M(e),staleTime:0});}catch{}}})}function N0(e,t,r,n,o){return reactQuery.useMutation({mutationKey:["accounts","relation","update",e,t],mutationFn:async i=>{let s=Bo(e,t);await w().prefetchQuery(s);let a=w().getQueryData(s.queryKey);return await Eo(e,"follow",["follow",{follower:e,following:t,what:[...i==="toggle-ignore"&&!a?.ignores?["ignore"]:[],...i==="toggle-follow"&&!a?.follows?["blog"]:[]]}],r),{...a,ignores:i==="toggle-ignore"?!a?.ignores:a?.ignores,follows:i==="toggle-follow"?!a?.follows:a?.follows}},onError:o,onSuccess(i){n(i),w().setQueryData(u.accounts.relations(e,t),i),t&&w().invalidateQueries(M(t));}})}function Qr(e,t,r,n){if(!e||!t||!r)throw new Error("[SDK][buildVoteOp] Missing required parameters");if(n<-1e4||n>1e4)throw new Error("[SDK][buildVoteOp] Weight must be between -10000 and 10000");return ["vote",{voter:e,author:t,permlink:r,weight:n}]}function Ve(e,t,r,n,o,i,s){if(!e||!t||n===void 0||!i)throw new Error("[SDK][buildCommentOp] Missing required parameters");return ["comment",{parent_author:r,parent_permlink:n,author:e,permlink:t,title:o,body:i,json_metadata:JSON.stringify(s)}]}function je(e,t,r,n,o,i,s){if(!e||!t)throw new Error("[SDK][buildCommentOptionsOp] Missing required parameters");return ["comment_options",{author:e,permlink:t,max_accepted_payout:r,percent_hbd:n,allow_votes:o,allow_curation_rewards:i,extensions:s}]}function Ur(e,t){if(!e||!t)throw new Error("[SDK][buildDeleteCommentOp] Missing required parameters");return ["delete_comment",{author:e,permlink:t}]}function Hr(e,t,r,n=false){if(!e||!t||!r)throw new Error("[SDK][buildReblogOp] Missing required parameters");let o={account:e,author:t,permlink:r};return n&&(o.delete="delete"),["custom_json",{id:"follow",json:JSON.stringify(["reblog",o]),required_auths:[],required_posting_auths:[e]}]}function Le(e,t,r,n){if(!e||!t||!r)throw new Error("[SDK][buildTransferOp] Missing required parameters");return ["transfer",{from:e,to:t,amount:r,memo:n||""}]}function ip(e,t,r,n){if(!e||!t||!r)throw new Error("[SDK][buildMultiTransferOps] Missing required parameters");return t.trim().split(/[\s,]+/).filter(Boolean).map(i=>Le(e,i.trim(),r,n))}function sp(e,t,r,n,o,i){if(!e||!t||!r)throw new Error("[SDK][buildRecurrentTransferOp] Missing required parameters");if(o<24)throw new Error("[SDK][buildRecurrentTransferOp] Recurrence must be at least 24 hours");return ["recurrent_transfer",{from:e,to:t,amount:r,memo:n||"",recurrence:o,executions:i,extensions:[]}]}function rt(e,t,r,n){if(!e||!t||!r)throw new Error("[SDK][buildTransferToSavingsOp] Missing required parameters");return ["transfer_to_savings",{from:e,to:t,amount:r,memo:n||""}]}function $e(e,t,r,n,o){if(!e||!t||!r||o===void 0)throw new Error("[SDK][buildTransferFromSavingsOp] Missing required parameters");return ["transfer_from_savings",{from:e,to:t,amount:r,memo:n||"",request_id:o}]}function ai(e,t){if(!e||t===void 0)throw new Error("[SDK][buildCancelTransferFromSavingsOp] Missing required parameters");return ["cancel_transfer_from_savings",{from:e,request_id:t}]}function _t(e,t,r,n,o){if(!e||!t||!r||o===void 0)throw new Error("[SDK][buildClaimInterestOps] Missing required parameters");return [$e(e,t,r,n,o),ai(e,o)]}function wt(e,t,r){if(!e||!t||!r)throw new Error("[SDK][buildTransferToVestingOp] Missing required parameters");return ["transfer_to_vesting",{from:e,to:t,amount:r}]}function bt(e,t){if(!e||!t)throw new Error("[SDK][buildWithdrawVestingOp] Missing required parameters");return ["withdraw_vesting",{account:e,vesting_shares:t}]}function vt(e,t,r){if(!e||!t||!r)throw new Error("[SDK][buildDelegateVestingSharesOp] Missing required parameters");return ["delegate_vesting_shares",{delegator:e,delegatee:t,vesting_shares:r}]}function Pt(e,t,r,n){if(!e||!t||r===void 0)throw new Error("[SDK][buildSetWithdrawVestingRouteOp] Missing required parameters");if(r<0||r>1e4)throw new Error("[SDK][buildSetWithdrawVestingRouteOp] Percent must be between 0 and 10000");return ["set_withdraw_vesting_route",{from_account:e,to_account:t,percent:r,auto_vest:n}]}function At(e,t,r){if(!e||!t||r===void 0)throw new Error("[SDK][buildConvertOp] Missing required parameters");return ["convert",{owner:e,amount:t,requestid:r}]}function Vr(e,t,r){if(!e||!t||r===void 0)throw new Error("[SDK][buildCollateralizedConvertOp] Missing required parameters");return ["collateralized_convert",{owner:e,amount:t,requestid:r}]}function We(e,t,r,n="tokens"){return ["custom_json",{id:"ssc-mainnet-hive",required_auths:[e],required_posting_auths:[],json:JSON.stringify({contractName:n,contractAction:t,contractPayload:r})}]}function jr(e,t){return ["custom_json",{id:"scot_claim_token",required_auths:[],required_posting_auths:[e],json:JSON.stringify(t.map(r=>({symbol:r})))}]}function Lr(e,t,r){if(!e||!t||r===void 0)throw new Error("[SDK][buildDelegateRcOp] Missing required parameters");let n=t.includes(",")?t.split(",").map(o=>o.trim()):[t];return ["custom_json",{id:"rc",json:JSON.stringify(["delegate_rc",{from:e,delegatees:n,max_rc:r}]),required_auths:[],required_posting_auths:[e]}]}function $r(e,t){if(!e||!t)throw new Error("[SDK][buildFollowOp] Missing required parameters");return ["custom_json",{id:"follow",json:JSON.stringify(["follow",{follower:e,following:t,what:["blog"]}]),required_auths:[],required_posting_auths:[e]}]}function Jt(e,t){if(!e||!t)throw new Error("[SDK][buildUnfollowOp] Missing required parameters");return ["custom_json",{id:"follow",json:JSON.stringify(["follow",{follower:e,following:t,what:[]}]),required_auths:[],required_posting_auths:[e]}]}function ap(e,t){if(!e||!t)throw new Error("[SDK][buildIgnoreOp] Missing required parameters");return ["custom_json",{id:"follow",json:JSON.stringify(["follow",{follower:e,following:t,what:["ignore"]}]),required_auths:[],required_posting_auths:[e]}]}function up(e,t){if(!e||!t)throw new Error("[SDK][buildUnignoreOp] Missing required parameters");return Jt(e,t)}function Wr(e,t){if(!e)throw new Error("[SDK][buildSetLastReadOps] Missing required parameters");let r=t||new Date().toISOString().split(".")[0],n=["custom_json",{id:"notify",json:JSON.stringify(["setLastRead",{date:r}]),required_auths:[],required_posting_auths:[e]}],o=["custom_json",{id:"ecency_notify",json:JSON.stringify(["setLastRead",{date:r}]),required_auths:[],required_posting_auths:[e]}];return [n,o]}function Gr(e,t,r){if(!e||!t||r===void 0)throw new Error("[SDK][buildWitnessVoteOp] Missing required parameters");return ["account_witness_vote",{account:e,witness:t,approve:r}]}function zr(e,t){if(!e||t===void 0)throw new Error("[SDK][buildWitnessProxyOp] Missing required parameters");return ["account_witness_proxy",{account:e,proxy:t}]}function Jr(e,t){if(!e||!t.receiver||!t.subject||!t.permlink||!t.start||!t.end||!t.dailyPay)throw new Error("[SDK][buildProposalCreateOp] Missing required parameters");let r=new Date(t.start),n=new Date(t.end);if(r.toString()==="Invalid Date"||n.toString()==="Invalid Date")throw new Error("[SDK][buildProposalCreateOp] Invalid date format: start and end must be valid ISO date strings");return ["create_proposal",{creator:e,receiver:t.receiver,start_date:t.start,end_date:t.end,daily_pay:t.dailyPay,subject:t.subject,permlink:t.permlink,extensions:[]}]}function Yr(e,t,r){if(!e||!t||t.length===0||r===void 0)throw new Error("[SDK][buildProposalVoteOp] Missing required parameters");return ["update_proposal_votes",{voter:e,proposal_ids:t,approve:r,extensions:[]}]}function cp(e,t){if(!e||!t||t.length===0)throw new Error("[SDK][buildRemoveProposalOp] Missing required parameters");return ["remove_proposal",{proposal_owner:e,proposal_ids:t,extensions:[]}]}function pp(e,t,r,n,o){if(e==null||typeof e!="number"||!t||!r||!n||!o)throw new Error("[SDK][buildUpdateProposalOp] Missing required parameters");return ["update_proposal",{proposal_id:e,creator:t,daily_pay:r,subject:n,permlink:o,extensions:[]}]}function Xr(e,t){if(!e||!t)throw new Error("[SDK][buildSubscribeOp] Missing required parameters");return ["custom_json",{id:"community",json:JSON.stringify(["subscribe",{community:t}]),required_auths:[],required_posting_auths:[e]}]}function Zr(e,t){if(!e||!t)throw new Error("[SDK][buildUnsubscribeOp] Missing required parameters");return ["custom_json",{id:"community",json:JSON.stringify(["unsubscribe",{community:t}]),required_auths:[],required_posting_auths:[e]}]}function en(e,t,r,n){if(!e||!t||!r||!n)throw new Error(`[SDK][buildSetRoleOp] Missing required parameters: username=${e}, community=${t}, account=${r}, role=${n}`);return ["custom_json",{id:"community",json:JSON.stringify(["setRole",{community:t,account:r,role:n}]),required_auths:[],required_posting_auths:[e]}]}function tn(e,t,r){if(!e||!t||!r)throw new Error("[SDK][buildUpdateCommunityOp] Missing required parameters");return ["custom_json",{id:"community",json:JSON.stringify(["updateProps",{community:t,props:r}]),required_auths:[],required_posting_auths:[e]}]}function rn(e,t,r,n,o){if(!e||!t||!r||!n||o===void 0)throw new Error("[SDK][buildPinPostOp] Missing required parameters");return ["custom_json",{id:"community",json:JSON.stringify([o?"pinPost":"unpinPost",{community:t,account:r,permlink:n}]),required_auths:[],required_posting_auths:[e]}]}function nn(e,t,r,n,o,i){if(!e||!t||!r||!n||i===void 0)throw new Error("[SDK][buildMutePostOp] Missing required parameters");return ["custom_json",{id:"community",json:JSON.stringify([i?"mutePost":"unmutePost",{community:t,account:r,permlink:n,notes:o}]),required_auths:[],required_posting_auths:[e]}]}function lp(e,t,r,n,o){if(!e||!t||!r||o===void 0)throw new Error("[SDK][buildMuteUserOp] Missing required parameters");return ["custom_json",{id:"community",json:JSON.stringify([o?"muteUser":"unmuteUser",{community:t,account:r,notes:n}]),required_auths:[],required_posting_auths:[e]}]}function dp(e,t,r,n,o){if(!e||!t||!r||!n)throw new Error("[SDK][buildFlagPostOp] Missing required parameters");return ["custom_json",{id:"community",json:JSON.stringify(["flagPost",{community:t,account:r,permlink:n,notes:o}]),required_auths:[],required_posting_auths:[e]}]}var ui=(r=>(r.Buy="buy",r.Sell="sell",r))(ui||{}),ci=(r=>(r.EMPTY="",r.SWAP="9",r))(ci||{});function Xt(e,t,r,n,o,i){if(!e||!t||!r||!o||i===void 0)throw new Error("[SDK][buildLimitOrderCreateOp] Missing required parameters");return ["limit_order_create",{owner:e,orderid:i,amount_to_sell:t,min_to_receive:r,fill_or_kill:n,expiration:o}]}function Yt(e,t=3){return e.toFixed(t)}function mp(e,t,r,n,o=""){if(!e||n===void 0||!Number.isFinite(t)||t<=0||!Number.isFinite(r)||r<=0)throw new Error("[SDK][buildLimitOrderCreateOpWithType] Missing or invalid parameters");let i=new Date(Date.now());i.setDate(i.getDate()+27);let s=i.toISOString().split(".")[0],a=+`${o}${Math.floor(Date.now()/1e3).toString().slice(2)}`,c=n==="buy"?`${Yt(t,3)} HBD`:`${Yt(t,3)} HIVE`,p=n==="buy"?`${Yt(r,3)} HIVE`:`${Yt(r,3)} HBD`;return Xt(e,c,p,false,s,a)}function on(e,t){if(!e||t===void 0)throw new Error("[SDK][buildLimitOrderCancelOp] Missing required parameters");return ["limit_order_cancel",{owner:e,orderid:t}]}function sn(e,t,r,n){if(!e||!t||!r||!n)throw new Error("[SDK][buildClaimRewardBalanceOp] Missing required parameters");return ["claim_reward_balance",{account:e,reward_hive:t,reward_hbd:r,reward_vests:n}]}function fp(e,t,r,n,o,i){if(!e||!o)throw new Error("[SDK][buildAccountUpdateOp] Missing required parameters");return ["account_update",{account:e,owner:t,active:r,posting:n,memo_key:o,json_metadata:i}]}function gp(e,t,r,n){if(!e||r===void 0)throw new Error("[SDK][buildAccountUpdate2Op] Missing required parameters");return ["account_update2",{account:e,json_metadata:t||"",posting_json_metadata:r,extensions:n||[]}]}function an(e,t,r,n){if(!e||!t||!r||!n)throw new Error("[SDK][buildAccountCreateOp] Missing required parameters");let o={weight_threshold:1,account_auths:[],key_auths:[[r.ownerPublicKey,1]]},i={weight_threshold:1,account_auths:[],key_auths:[[r.activePublicKey,1]]},s={weight_threshold:1,account_auths:[["ecency.app",1]],key_auths:[[r.postingPublicKey,1]]};return ["account_create",{creator:e,new_account_name:t,owner:o,active:i,posting:s,memo_key:r.memoPublicKey,json_metadata:"",fee:n}]}function un(e,t,r){if(!e||!t||!r)throw new Error("[SDK][buildCreateClaimedAccountOp] Missing required parameters");let n={weight_threshold:1,account_auths:[],key_auths:[[r.ownerPublicKey,1]]},o={weight_threshold:1,account_auths:[],key_auths:[[r.activePublicKey,1]]},i={weight_threshold:1,account_auths:[["ecency.app",1]],key_auths:[[r.postingPublicKey,1]]};return ["create_claimed_account",{creator:e,new_account_name:t,owner:n,active:o,posting:i,memo_key:r.memoPublicKey,json_metadata:"",extensions:[]}]}function cn(e,t){if(!e||!t)throw new Error("[SDK][buildClaimAccountOp] Missing required parameters");return ["claim_account",{creator:e,fee:t,extensions:[]}]}function pn(e,t,r,n,o,i){if(!e||!t||!r||!o)throw new Error("[SDK][buildGrantPostingPermissionOp] Missing required parameters");let s=t.account_auths.findIndex(([p])=>p===r),a=[...t.account_auths];s>=0?a[s]=[r,n]:a.push([r,n]);let c={...t,account_auths:a};return c.account_auths.sort((p,l)=>p[0]>l[0]?1:-1),["account_update",{account:e,posting:c,memo_key:o,json_metadata:i}]}function yp(e,t,r,n,o){if(!e||!t||!r||!n)throw new Error("[SDK][buildRevokePostingPermissionOp] Missing required parameters");let i={...t,account_auths:t.account_auths.filter(([s])=>s!==r)};return ["account_update",{account:e,posting:i,memo_key:n,json_metadata:o}]}function hp(e,t,r=[]){if(!e||!t)throw new Error("[SDK][buildChangeRecoveryAccountOp] Missing required parameters");return ["change_recovery_account",{account_to_recover:e,new_recovery_account:t,extensions:r}]}function _p(e,t,r,n=[]){if(!e||!t||!r)throw new Error("[SDK][buildRequestAccountRecoveryOp] Missing required parameters");return ["request_account_recovery",{recovery_account:e,account_to_recover:t,new_owner_authority:r,extensions:n}]}function wp(e,t,r,n=[]){if(!e||!t||!r)throw new Error("[SDK][buildRecoverAccountOp] Missing required parameters");return ["recover_account",{account_to_recover:e,new_owner_authority:t,recent_owner_authority:r,extensions:n}]}function ln(e,t,r){if(!e||!t||!Number.isFinite(r))throw new Error("[SDK][buildBoostPlusOp] Missing required parameters");return ["custom_json",{id:"ecency_boost_plus",json:JSON.stringify({user:e,account:t,duration:r}),required_auths:[e],required_posting_auths:[]}]}function dn(e,t){if(!e||!Number.isInteger(t)||t<=0)throw new Error("[SDK][buildRcDelegationOp] Missing or invalid parameters");return ["custom_json",{id:"ecency_rc_delegation",json:JSON.stringify({user:e,duration:t}),required_auths:[e],required_posting_auths:[]}]}function mn(e,t,r,n){if(!e||!t||!r||!Number.isFinite(n))throw new Error("[SDK][buildPromoteOp] Missing required parameters");return ["custom_json",{id:"ecency_promote",json:JSON.stringify({user:e,author:t,permlink:r,duration:n}),required_auths:[e],required_posting_auths:[]}]}var bp=["quality","underrated","newcomer","other"];function fn(e,t,r,n="quality"){if(!e||!t||!r)throw new Error("[SDK][buildCurationRecommendOp] Missing required parameters");if(!bp.includes(n))throw new Error("[SDK][buildCurationRecommendOp] Unknown reason");return ["custom_json",{id:"ecency_curation",json:JSON.stringify({v:1,op:"recommend",author:t,permlink:r,reason:n}),required_auths:[],required_posting_auths:[e]}]}function gn(e,t,r){if(!e||!t||!r)throw new Error("[SDK][buildCurationUnrecommendOp] Missing required parameters");return ["custom_json",{id:"ecency_curation",json:JSON.stringify({v:1,op:"unrecommend",author:t,permlink:r}),required_auths:[],required_posting_auths:[e]}]}function nt(e,t,r,n){if(!e||!t||!r)throw new Error("[SDK][buildPointTransferOp] Missing required parameters");let o=r.replace(/POINTS\b/,"POINT");return ["custom_json",{id:"ecency_point_transfer",json:JSON.stringify({sender:e,receiver:t,amount:o,memo:n||""}),required_auths:[e],required_posting_auths:[]}]}function vp(e,t,r,n){if(!e||!t||!r)throw new Error("[SDK][buildMultiPointTransferOps] Missing required parameters");let o=t.trim().split(/[\s,]+/).filter(Boolean);if(o.length===0)throw new Error("[SDK][buildMultiPointTransferOps] Missing valid destinations");return o.map(i=>nt(e,i.trim(),r,n))}function yn(e){if(!e)throw new Error("[SDK][buildCommunityRegistrationOp] Missing required parameters");return ["custom_json",{id:"ecency_registration",json:JSON.stringify({name:e}),required_auths:[e],required_posting_auths:[]}]}function Pp(e,t,r){if(!e||!t||!r)throw new Error("[SDK][buildActiveCustomJsonOp] Missing required parameters");return ["custom_json",{id:t,json:JSON.stringify(r),required_auths:[e],required_posting_auths:[]}]}function Ap(e,t,r){if(!e||!t||!r)throw new Error("[SDK][buildPostingCustomJsonOp] Missing required parameters");return ["custom_json",{id:t,json:JSON.stringify(r),required_auths:[],required_posting_auths:[e]}]}function ox(e,t,r){return v(["accounts","follow"],e,({following:n})=>[$r(e,n)],async(n,o)=>{await S(t?.adapter,r,[u.accounts.relations(e,o.following),u.accounts.full(o.following),u.accounts.followCount(o.following),u.accounts.followCount(e)]);},t,"posting",{broadcastMode:r??"async"})}function ux(e,t,r){return v(["accounts","unfollow"],e,({following:n})=>[Jt(e,n)],async(n,o)=>{await S(t?.adapter,r,[u.accounts.relations(e,o.following),u.accounts.full(o.following),u.accounts.followCount(o.following),u.accounts.followCount(e)]);},t,"posting",{broadcastMode:r??"async"})}function dx(e,t,r,n){return reactQuery.useMutation({mutationKey:["accounts","bookmarks","add",e],mutationFn:async({author:o,permlink:i})=>{if(!e||!t)throw new Error("[SDK][Account][Bookmarks] \u2013 missing auth");return (await h()(d.privateApiHost+"/private-api/bookmarks-add",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({author:o,permlink:i,code:t})})).json()},onSuccess:()=>{r(),w().invalidateQueries({queryKey:["accounts","bookmarks",e]});},onError:n})}function yx(e,t,r,n){return reactQuery.useMutation({mutationKey:["accounts","bookmarks","delete",e],mutationFn:async o=>{if(!e||!t)throw new Error("[SDK][Account][Bookmarks] \u2013 missing auth");return (await h()(d.privateApiHost+"/private-api/bookmarks-delete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:o,code:t})})).json()},onSuccess:()=>{r(),w().invalidateQueries({queryKey:["accounts","bookmarks",e]});},onError:n})}function bx(e,t,r,n){return reactQuery.useMutation({mutationKey:["accounts","favorites","add",e],mutationFn:async o=>{if(!e||!t)throw new Error("[SDK][Account][Favorites] \u2013 missing auth");return (await h()(d.privateApiHost+"/private-api/favorites-add",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({account:o,code:t})})).json()},onSuccess:(o,i)=>{r();let s=w();s.invalidateQueries({queryKey:u.accounts.favorites(e)}),s.invalidateQueries({queryKey:u.accounts.favoritesInfinite(e)}),s.invalidateQueries({queryKey:u.accounts.checkFavorite(e,i)});},onError:n})}function Ox(e,t,r,n){return reactQuery.useMutation({mutationKey:["accounts","favorites","delete",e],mutationFn:async o=>{if(!e||!t)throw new Error("[SDK][Account][Favorites] \u2013 missing auth");let s=await h()(d.privateApiHost+"/private-api/favorites-delete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({account:o,code:t})});if(!s.ok)throw new Error(`Failed to delete favorite: ${s.status}`);return s.json()},onMutate:async o=>{if(!e)return;let i=w(),s=u.accounts.favorites(e),a=u.accounts.favoritesInfinite(e),c=u.accounts.checkFavorite(e,o);await Promise.all([i.cancelQueries({queryKey:s}),i.cancelQueries({queryKey:a}),i.cancelQueries({queryKey:c})]);let p=i.getQueryData(s);p&&i.setQueryData(s,p.filter(g=>g.account!==o));let l=i.getQueryData(c);i.setQueryData(c,false);let m=i.getQueriesData({queryKey:a}),f=new Map(m);for(let[g,_]of m)_&&i.setQueryData(g,{..._,pages:_.pages.map(P=>({...P,data:P.data.filter(x=>x.account!==o)}))});return {previousList:p,previousInfinite:f,previousCheck:l}},onSuccess:(o,i)=>{r();let s=w();s.invalidateQueries({queryKey:u.accounts.favorites(e)}),s.invalidateQueries({queryKey:u.accounts.favoritesInfinite(e)}),s.invalidateQueries({queryKey:u.accounts.checkFavorite(e,i)});},onError:(o,i,s)=>{let a=w();if(s?.previousList&&a.setQueryData(u.accounts.favorites(e),s.previousList),s?.previousInfinite)for(let[c,p]of s.previousInfinite)a.setQueryData(c,p);s?.previousCheck!==void 0&&a.setQueryData(u.accounts.checkFavorite(e,i),s.previousCheck),n(o);}})}async function pi(e,t,r,n){if(!t||!r)throw new Error("[SDK][Accounts][FavoriteTags] \u2013 missing auth");let o=Oe(n);if(o===null)throw new Error("[SDK][Accounts][FavoriteTags] \u2013 invalid tag");let s=await h()(d.privateApiHost+"/private-api/"+e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({tag:o,code:r})});if(!s.ok)throw new Error(`Failed to ${e==="favorite-tags-add"?"add":"delete"} favorite tag: ${s.status}`);return await s.json()}function li(e,t,r){return pi("favorite-tags-add",e,t,r)}function di(e,t,r){return pi("favorite-tags-delete",e,t,r)}function Ix(e,t,r,n){return reactQuery.useMutation({mutationKey:["accounts","favorite-tags","add",e],mutationFn:o=>li(e,t,o),onSuccess:(o,i)=>{r();let s=w();s.invalidateQueries({queryKey:u.accounts.favoriteTags(e)}),s.invalidateQueries({queryKey:u.accounts.favoriteTagsInfinite(e)}),s.invalidateQueries({queryKey:u.accounts.checkFavoriteTag(e,Oe(i)??i)});},onError:n})}function kp(e,t,r,n){let o=i=>{let s=w();s.invalidateQueries({queryKey:u.accounts.favoriteTags(e)}),s.invalidateQueries({queryKey:u.accounts.favoriteTagsInfinite(e)}),i&&s.invalidateQueries({queryKey:u.accounts.checkFavoriteTag(e,i)});};return {mutationKey:["accounts","favorite-tags","delete",e],mutationFn:i=>di(e,t,i),onMutate:async i=>{let s=Oe(i);if(!e||s===null)return;let a=w(),c=u.accounts.favoriteTags(e),p=u.accounts.favoriteTagsInfinite(e),l=u.accounts.checkFavoriteTag(e,s);await Promise.all([a.cancelQueries({queryKey:c}),a.cancelQueries({queryKey:p}),a.cancelQueries({queryKey:l})]);let m=a.getQueryData(c);m&&a.setQueryData(c,m.filter(P=>P.tag!==s));let f=a.getQueryData(l);a.setQueryData(l,false);let g=a.getQueriesData({queryKey:p}),_=new Map(g);for(let[P,x]of g)x&&a.setQueryData(P,{...x,pages:x.pages.map(C=>({...C,data:C.data.filter(T=>T.tag!==s)}))});return {normalized:s,previousList:m,previousInfinite:_,previousCheck:f}},onSuccess:(i,s)=>{r(),o(Oe(s)??void 0);},onError:(i,s,a)=>{let c=w();if(a){a.previousList&&c.setQueryData(u.accounts.favoriteTags(e),a.previousList);for(let[l,m]of a.previousInfinite)c.setQueryData(l,m);let p=u.accounts.checkFavoriteTag(e,a.normalized);a.previousCheck!==void 0?c.setQueryData(p,a.previousCheck):c.removeQueries({queryKey:p,exact:true});}o(a?.normalized),n(i);}}}function Vx(e,t,r,n){return reactQuery.useMutation(kp(e,t,r,n))}function qp(e,t){let r=new Map;return e.forEach(([n,o])=>{r.set(n.toString(),o);}),t.forEach(([n,o])=>{r.set(n.toString(),o);}),Array.from(r.entries()).sort(([n],[o])=>n.localeCompare(o)).map(([n,o])=>[n,o])}function mi(e,t){let{data:r}=reactQuery.useQuery(M(e));return reactQuery.useMutation({mutationKey:["accounts","keys-update",e],mutationFn:async({keys:n,keepCurrent:o=false,currentKey:i,keysToRevoke:s=[],keysToRevokeByAuthority:a={}})=>{if(n.length===0)throw new Error("[SDK][Update password] \u2013 no new keys provided");if(!r)throw new Error("[SDK][Update password] \u2013 cannot update keys for anon user");let c=p=>{let l=JSON.parse(JSON.stringify(r[p])),f=[...a[p]||[],...a[p]===void 0?s:[]],g=o?l.key_auths.filter(([_])=>!f.includes(_.toString())):[];return l.key_auths=qp(g,n.map((_,P)=>[_[p].createPublic().toString(),P+1])),l};return ee([["account_update",{account:e,json_metadata:r.json_metadata,owner:c("owner"),active:c("active"),posting:c("posting"),memo_key:n[0].memo_key.createPublic().toString()}]],i)},...t})}function Zx(e,t){let{data:r}=reactQuery.useQuery(M(e)),{mutateAsync:n}=mi(e);return reactQuery.useMutation({mutationKey:["accounts","password-update",e],mutationFn:async({newPassword:o,currentPassword:i,keepCurrent:s})=>{if(!r)throw new Error("[SDK][Update password] \u2013 cannot update password for anon user");let a=U.fromLogin(e,i,"owner");return n({currentKey:a,keepCurrent:s,keys:[{owner:U.fromLogin(e,o,"owner"),active:U.fromLogin(e,o,"active"),posting:U.fromLogin(e,o,"posting"),memo_key:U.fromLogin(e,o,"memo")}]})},...t})}function iO(e,t,r){let n=reactQuery.useQueryClient(),{data:o}=reactQuery.useQuery(M(e));return reactQuery.useMutation({mutationKey:["accounts","revoke-posting",o?.name],mutationFn:async({accountName:i,type:s,key:a})=>{if(!o)throw new Error("[SDK][Accounts] \u2013\xA0cannot revoke posting for anonymous user");let c=JSON.parse(JSON.stringify(o.posting));c.account_auths=c.account_auths.filter(([l])=>l!==i);let p={account:o.name,posting:c,memo_key:o.memo_key,json_metadata:o.json_metadata};if(s==="key"&&a)return ee([["account_update",p]],a);if(s==="keychain"){if(!r?.adapter?.broadcastWithKeychain)throw new Error("[SDK][Accounts] \u2013 missing keychain broadcaster");return r.adapter.broadcastWithKeychain(o.name,[["account_update",p]],"active")}else return !t.hsCallbackUrl&&process.env.NODE_ENV==="development"&&console.warn("[SDK][Accounts] hsCallbackUrl not provided for HiveSigner revoke-posting; user will not be redirected after signing."),Co__default.default.sendOperation(["account_update",p],t.hsCallbackUrl?{callback:t.hsCallbackUrl}:{},()=>{})},onError:t.onError,onSuccess:(i,s,a)=>{t.onSuccess?.(i,s,a),n.setQueryData(M(e).queryKey,c=>({...c,posting:{...c?.posting,account_auths:c?.posting?.account_auths?.filter(([p])=>p!==s.accountName)??[]}}));}})}function dO(e,t,r,n){let{data:o}=reactQuery.useQuery(M(e));return reactQuery.useMutation({mutationKey:["accounts","recovery",o?.name],mutationFn:async({accountName:i,type:s,key:a,email:c})=>{if(!o)throw new Error("[SDK][Accounts] \u2013\xA0cannot change recovery for anonymous user");let p={account_to_recover:o.name,new_recovery_account:i,extensions:[]};if(s==="ecency"){if(!t)throw new Error("[SDK][Accounts] \u2013 missing access token");let m=await h()(d.privateApiHost+"/private-api/recoveries-add",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t,email:c,publicKeys:[...o.owner.key_auths,...o.active.key_auths,...o.posting.key_auths,o.memo_key]})});if(!m.ok)throw new Error(`[SDK][Accounts] Failed to add recovery: ${m.status}`);return m}else {if(s==="key"&&a)return ee([["change_recovery_account",p]],a);if(s==="keychain"){if(!n?.adapter?.broadcastWithKeychain)throw new Error("[SDK][Accounts] \u2013 missing keychain broadcaster");return n.adapter.broadcastWithKeychain(o.name,[["change_recovery_account",p]],"owner")}else return !r.hsCallbackUrl&&process.env.NODE_ENV==="development"&&console.warn("[SDK][Accounts] hsCallbackUrl not provided for HiveSigner update-recovery; user will not be redirected after signing."),Co__default.default.sendOperation(["change_recovery_account",p],r.hsCallbackUrl?{callback:r.hsCallbackUrl}:{},()=>{})}},onError:r.onError,onSuccess:r.onSuccess})}function fO(e,t){let r=e.key_auths.filter(([o])=>!t.has(String(o))).reduce((o,[,i])=>o+i,0),n=(e.account_auths??[]).reduce((o,[,i])=>o+i,0);return r+n>=e.weight_threshold}function fi(e,t){let r=new Set(t.map(s=>s.toString())),n=s=>s.key_auths.some(([a])=>r.has(String(a))),o=s=>{let a=JSON.parse(JSON.stringify(s));return a.key_auths=a.key_auths.filter(([c])=>!r.has(c.toString())),a},i=n(e.owner);return {account:e.name,json_metadata:e.json_metadata,owner:i?o(e.owner):void 0,active:o(e.active),posting:o(e.posting),memo_key:e.memo_key}}function bO(e,t){let{data:r}=reactQuery.useQuery(M(e));return reactQuery.useMutation({mutationKey:["accounts","revoke-key",r?.name],mutationFn:async({currentKey:n,revokingKey:o})=>{if(!r)throw new Error("[SDK][Revoke key] \u2013 cannot update keys for anon user");let i=Array.isArray(o)?o:[o],s=fi(r,i);return ee([["account_update",s]],n)},...t})}function xO(e,t,r){return v(["accounts","claimAccount"],e,({creator:n,fee:o="0.000 HIVE"})=>[cn(n,o)],async(n,o)=>{await S(t?.adapter,r,[u.accounts.full(o.creator)]);},t,"active",{broadcastMode:r})}function EO(e,t,r){return v(["accounts","grant-posting-permission"],e,n=>[pn(e,n.currentPosting,n.grantedAccount,n.weightThreshold,n.memoKey,n.jsonMetadata)],async()=>{await S(t?.adapter,r,[u.accounts.full(e)]);},t,"active",{broadcastMode:r})}function FO(e,t,r){return v(["accounts","create"],e,n=>[n.useClaimed?un(e,n.newAccountName,n.keys):an(e,n.newAccountName,n.keys,n.fee)],async()=>{await S(t?.adapter,r,[u.accounts.full(e)]);},t,"active",{broadcastMode:r})}var hn=300*60*24,Lp=1e4,$p=5e7;function gi(e){let t=F(e.vesting_shares).amount,r=F(e.received_vesting_shares).amount,n=F(e.delegated_vesting_shares).amount,o=F(e.vesting_withdraw_rate).amount,i=(Number(e.to_withdraw)-Number(e.withdrawn))/1e6,s=Math.min(o,i);return t+r-n-s}function Wp(e,t,r){let n=e*1e6;return (t*r/1e4/50+1)*n/1e4}function Gp(e){if(Number.isFinite(e.lastHardfork))return e.lastHardfork>=28;let[t="0",r="0"]=(e.currentHardforkVersion??"0.0.0").split(".");return Number(t)>1||Number(t)===1&&Number(r)>=28}function zp(e,t,r){let n=t.votePowerReserveRate||Number(t.raw?.globalDynamic?.vote_power_reserve_rate??0);if(!Number.isFinite(n)||n<=0)return 0;let o=gi(e);if(!Number.isFinite(o)||o<=0)return 0;let i=o*1e6,s=Math.ceil(i*r*60*60*24/Lp/(n*hn)),a=Ir(e),c=Math.min(a.current_mana,a.max_mana);return !Number.isFinite(c)||s>c?0:Math.max(s-$p,0)}function Jp(e,t,r,n=1e4){if(!Number.isFinite(r)||!Number.isFinite(n))return 0;if(Gp(t))return zp(e,t,n);let o=0;try{if(o=gi(e),!Number.isFinite(o))return 0}catch{return 0}return Wp(o,r,n)}function KO(e){return Ir(e).percentage/100}function NO(e){if(!Number.isFinite(e))throw new TypeError("Voting power must be a finite number");if(e<0||e>100)throw new RangeError("Voting power must be between 0 and 100");return (100-e)*100*hn/1e4}function MO(e){let t=parseFloat(e.vesting_shares)+parseFloat(e.received_vesting_shares)-parseFloat(e.delegated_vesting_shares),r=Math.floor(Date.now()/1e3)-e.downvote_manabar.last_update_time,n=t*1e6/4;if(n<=0)return 0;let o=parseFloat(e.downvote_manabar.current_mana.toString())+r*n/hn;o>n&&(o=n);let i=o*100/n;return isNaN(i)?0:i>100?100:i}function BO(e){return jt(e).percentage/100}function QO(e,t,r,n=1e4){if(!Number.isFinite(r)||!Number.isFinite(n))return 0;let{fundRecentClaims:o,fundRewardBalance:i,base:s,quote:a}=t;if(!Number.isFinite(o)||!Number.isFinite(i)||!Number.isFinite(s)||!Number.isFinite(a)||o===0||a===0)return 0;let c=Jp(e,t,r,n);return Number.isFinite(c)?c/o*i*(s/a):0}var Yp={vote:"posting",comment:"posting",delete_comment:"posting",comment_options:"posting",claim_reward_balance:"posting",cancel_transfer_from_savings:"active",collateralized_convert:"active",convert:"active",delegate_vesting_shares:"active",recurrent_transfer:"active",set_withdraw_vesting_route:"active",transfer:"active",transfer_from_savings:"active",transfer_to_savings:"active",transfer_to_vesting:"active",withdraw_vesting:"active",limit_order_create:"active",limit_order_cancel:"active",account_update:"active",account_update2:"active",claim_account:"active",create_claimed_account:"active",account_witness_proxy:"active",account_witness_vote:"active",remove_proposal:"active",update_proposal_votes:"active",change_recovery_account:"owner",request_account_recovery:"owner",recover_account:"owner",reset_account:"owner",set_reset_account:"owner"};function Xp(e){let t=e[0],r=e[1];if(t!=="custom_json")throw new Error("Operation is not a custom_json operation");let n=r;return n.required_auths&&n.required_auths.length>0?"active":(n.required_posting_auths&&n.required_posting_auths.length>0,"posting")}function Zp(e){let t=e[0];if(t!=="create_proposal"&&t!=="update_proposal")throw new Error("Operation is not a proposal operation");return "active"}function el(e){let t=e[0];return t==="custom_json"?Xp(e):t==="create_proposal"||t==="update_proposal"?Zp(e):Yp[t]??"posting"}function HO(e){let t="posting";for(let r of e){let n=el(r);if(n==="owner")return "owner";n==="active"&&t==="posting"&&(t="active");}return t}function WO(e){return reactQuery.useMutation({mutationKey:["operations","sign",e],mutationFn:({operation:t,keyOrSeed:r})=>{if(!e)throw new Error("[Operations][Sign] \u2013 cannot sign op with anon user");let n;return r.split(" ").length===12?n=U.fromLogin(e,r,"active"):Ao(r)?n=U.fromString(r):n=U.from(r),ee([t],n)}})}function JO(e,t,r="active"){return reactQuery.useMutation({mutationKey:["operations","sign-keychain",e],mutationFn:({operation:n})=>{if(!e)throw new Error("[SDK][Keychain] \u2013\xA0cannot sign operation with anon user");if(!t?.adapter?.broadcastWithKeychain)throw new Error("[SDK][Keychain] \u2013 missing keychain broadcaster");return t.adapter.broadcastWithKeychain(e,[n],r)}})}function eS(e="/"){return reactQuery.useMutation({mutationKey:["operations","sign-hivesigner",e],mutationFn:async({operation:t})=>Co__default.default.sendOperation(t,{callback:e},()=>{})})}function oS(){return reactQuery.queryOptions({queryKey:["operations","chain-properties"],queryFn:async()=>await y("condenser_api.get_chain_properties",[])})}function yi(e,t,r){return {...e,...t??{},title:r.title,body:r.body}}function hi(e,t){return {...e??{},title:t.title,body:t.body}}function dS(e,t){return reactQuery.useMutation({mutationKey:["posts","add-fragment",e],mutationFn:async({title:r,body:n})=>{if(!t)throw new Error("[SDK][Posts] Missing access token");let i=await h()(d.privateApiHost+"/private-api/fragments-add",{method:"POST",body:JSON.stringify({code:t,title:r,body:n}),headers:{"Content-Type":"application/json"}});if(!i.ok)throw new Error(`[SDK][Posts] Failed to add fragment: ${i.status}`);return i.json()},onSuccess(r,n){let o=w(),i=hi(r,n);o.setQueryData(tt(e,t).queryKey,s=>[i,...s??[]]),o.setQueriesData({queryKey:["posts","fragments","infinite",e]},s=>s&&{...s,pages:s.pages.map((a,c)=>c===0?{...a,data:[i,...a.data]}:a)});}})}function wS(e,t){return reactQuery.useMutation({mutationKey:["posts","edit-fragment",e],mutationFn:async({fragmentId:r,title:n,body:o})=>{if(!t)throw new Error("[SDK][Posts] Missing access token");let s=await h()(d.privateApiHost+"/private-api/fragments-update",{method:"POST",body:JSON.stringify({code:t,id:r,title:n,body:o}),headers:{"Content-Type":"application/json"}});if(!s.ok)throw new Error(`[SDK][Posts] Failed to update fragment: ${s.status}`);return s.json()},onSuccess(r,n){let o=w(),i=s=>yi(s,r,n);o.setQueryData(tt(e,t).queryKey,s=>s?.map(a=>a.id===n.fragmentId?i(a):a)??[]),o.setQueriesData({queryKey:["posts","fragments","infinite",e]},s=>s&&{...s,pages:s.pages.map(a=>({...a,data:a.data.map(c=>c.id===n.fragmentId?i(c):c)}))});}})}function OS(e,t){return reactQuery.useMutation({mutationKey:["posts","remove-fragment",e],mutationFn:async({fragmentId:r})=>{if(!t)throw new Error("[SDK][Posts] Missing access token");let o=await h()(d.privateApiHost+"/private-api/fragments-delete",{method:"POST",body:JSON.stringify({code:t,id:r}),headers:{"Content-Type":"application/json"}});if(!o.ok)throw new Error(`[SDK][Posts] Failed to delete fragment: ${o.status}`);return o},onSuccess(r,n){let o=w();o.setQueryData(tt(e,t).queryKey,i=>[...i??[]].filter(({id:s})=>s!==n.fragmentId)),o.setQueriesData({queryKey:["posts","fragments","infinite",e]},i=>i&&{...i,pages:i.pages.map(s=>({...s,data:s.data.filter(a=>a.id!==n.fragmentId)}))});}})}async function G(e){if(!e.ok){let r;try{r=await e.json();}catch{r=void 0;}let n=new Error(`Request failed with status ${e.status}`);throw n.status=e.status,n.data=r,n}let t=await e.text();if(!t||t.trim()==="")return "";try{return JSON.parse(t)}catch(r){return console.warn("[SDK] Failed to parse JSON response:",r,"Response:",t),""}}async function ES(e,t,r,n){let i=await h()(d.privateApiHost+"/private-api/account-create",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({username:e,email:t,referral:r,captcha_token:n})}),s=await G(i);return {status:i.status,data:s}}async function RS(e){let r=await h()(d.privateApiHost+"/private-api/subscribe",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:e})}),n=await G(r);return {status:r.status,data:n}}async function kS(e,t,r="",n=""){let o={code:e,ty:t};r&&(o.bl=r),n&&(o.tx=n);let s=await h()(d.privateApiHost+"/private-api/usr-activity",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(o)});await G(s);}async function TS(e,t,r=null,n=null){let o={code:e};t&&(o.filter=t),r&&(o.since=r),n&&(o.user=n);let s=await h()(d.privateApiHost+"/private-api/notifications",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(o)});return G(s)}async function FS(e,t,r,n,o,i){let s={code:e,username:t,token:i,system:r,allows_notify:n,notify_types:o},c=await h()(d.privateApiHost+"/private-api/register-device",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(s)});return G(c)}async function qS(e,t,r){let n={code:e,username:t,token:r},i=await h()(d.privateApiHost+"/private-api/detail-device",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});return G(i)}async function _i(e,t){let r={code:e};t&&(r.id=t);let o=await h()(d.privateApiHost+"/private-api/notifications/mark",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(r)});return G(o)}async function wi(e,t){let r={code:e,url:t},o=await h()(d.privateApiHost+"/private-api/images-add",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(r)});return G(o)}var cl="https://i.ecency.com";async function bi(e,t,r){let n=h(),o=new FormData;o.append("file",e);let i=await n(`${cl}/hs/${t}`,{method:"POST",body:o,signal:r});return G(i)}async function IS(e,t,r,n){let o=h(),i=new FormData;i.append("file",e);let s=await o(`${d.imageHost}/${t}/${r}`,{method:"POST",body:i,signal:n});return G(s)}async function vi(e,t){let r={code:e,id:t},o=await h()(d.privateApiHost+"/private-api/images-delete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(r)});return G(o)}async function Pi(e,t,r,n,o){let i={code:e,title:t,body:r,tags:n,meta:o},a=await h()(d.privateApiHost+"/private-api/drafts-add",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(i)});return G(a)}async function Ai(e,t,r,n,o,i){let s={code:e,id:t,title:r,body:n,tags:o,meta:i},c=await h()(d.privateApiHost+"/private-api/drafts-update",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(s)});return G(c)}async function xi(e,t){let r={code:e,id:t},o=await h()(d.privateApiHost+"/private-api/drafts-delete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(r)});return G(o)}async function Oi(e,t,r,n,o,i,s,a){let c={code:e,permlink:t,title:r,body:n,meta:o,schedule:s,reblog:a};i&&(c.options=i);let l=await h()(d.privateApiHost+"/private-api/schedules-add",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(c)});return G(l)}async function Si(e,t){let r={code:e,id:t},o=await h()(d.privateApiHost+"/private-api/schedules-delete",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(r)});return G(o)}async function Ci(e,t){let r={code:e,id:t},o=await h()(d.privateApiHost+"/private-api/schedules-move",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(r)});return G(o)}async function DS(e,t,r){let n={code:e,author:t,permlink:r},i=await h()(d.privateApiHost+"/private-api/promoted-post",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});return G(i)}async function KS(e,t,r){let n={username:e,email:t,friend:r},i=await h()(d.privateApiHost+"/private-api/account-create-friend",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});return G(i)}function US(e,t,r,n){return reactQuery.useMutation({mutationKey:["posts","drafts","add",e],mutationFn:async({title:o,body:i,tags:s,meta:a})=>{if(!e||!t)throw new Error("[SDK][Posts] \u2013 missing auth for addDraft");return Pi(t,o,i,s,a)},onSuccess:o=>{r?.();let i=w();o?.drafts?i.setQueryData(u.posts.drafts(e),o.drafts):i.invalidateQueries({queryKey:u.posts.drafts(e)}),i.invalidateQueries({queryKey:u.posts.draftsInfinite(e)});},onError:n})}function $S(e,t,r,n){return reactQuery.useMutation({mutationKey:["posts","drafts","update",e],mutationFn:async({draftId:o,title:i,body:s,tags:a,meta:c})=>{if(!e||!t)throw new Error("[SDK][Posts] \u2013 missing auth for updateDraft");return Ai(t,o,i,s,a,c)},onSuccess:()=>{r?.();let o=w();o.invalidateQueries({queryKey:u.posts.drafts(e)}),o.invalidateQueries({queryKey:u.posts.draftsInfinite(e)});},onError:n})}function XS(e,t,r,n){return reactQuery.useMutation({mutationKey:["posts","drafts","delete",e],mutationFn:async({draftId:o})=>{if(!e||!t)throw new Error("[SDK][Posts] \u2013 missing auth for deleteDraft");return xi(t,o)},onMutate:async({draftId:o})=>{if(!e)return;let i=w(),s=u.posts.drafts(e),a=u.posts.draftsInfinite(e);await Promise.all([i.cancelQueries({queryKey:s}),i.cancelQueries({queryKey:a})]);let c=i.getQueryData(s);c&&i.setQueryData(s,c.filter(m=>m._id!==o));let p=i.getQueriesData({queryKey:a}),l=new Map(p);for(let[m,f]of p)f&&i.setQueryData(m,{...f,pages:f.pages.map(g=>({...g,data:g.data.filter(_=>_._id!==o)}))});return {previousList:c,previousInfinite:l}},onSuccess:()=>{r?.();let o=w();o.invalidateQueries({queryKey:u.posts.drafts(e)}),o.invalidateQueries({queryKey:u.posts.draftsInfinite(e)});},onError:(o,i,s)=>{let a=w();if(s?.previousList&&a.setQueryData(u.posts.drafts(e),s.previousList),s?.previousInfinite)for(let[c,p]of s.previousInfinite)a.setQueryData(c,p);n?.(o);}})}function nC(e,t,r,n){return reactQuery.useMutation({mutationKey:["posts","schedules","add",e],mutationFn:async({permlink:o,title:i,body:s,meta:a,options:c,schedule:p,reblog:l})=>{if(!e||!t)throw new Error("[SDK][Posts] \u2013 missing auth for addSchedule");return Oi(t,o,i,s,a,c,p,l)},onSuccess:()=>{r?.(),w().invalidateQueries({queryKey:u.posts.schedules(e)});},onError:n})}function uC(e,t,r,n){return reactQuery.useMutation({mutationKey:["posts","schedules","delete",e],mutationFn:async({id:o})=>{if(!e||!t)throw new Error("[SDK][Posts] \u2013 missing auth for deleteSchedule");return Si(t,o)},onSuccess:o=>{r?.();let i=w();o?i.setQueryData(u.posts.schedules(e),o):i.invalidateQueries({queryKey:u.posts.schedules(e)});},onError:n})}function mC(e,t,r,n){return reactQuery.useMutation({mutationKey:["posts","schedules","move",e],mutationFn:async({id:o})=>{if(!e||!t)throw new Error("[SDK][Posts] \u2013 missing auth for moveSchedule");return Ci(t,o)},onSuccess:o=>{r?.();let i=w();o?i.setQueryData(u.posts.schedules(e),o):i.invalidateQueries({queryKey:u.posts.schedules(e)}),i.invalidateQueries({queryKey:u.posts.drafts(e)});},onError:n})}function _C(e,t,r,n){return reactQuery.useMutation({mutationKey:["posts","images","add",e],mutationFn:async({url:o,code:i})=>{let s=i??t;if(!e||!s)throw new Error("[SDK][Posts] \u2013 missing auth for addImage");return wi(s,o)},onSuccess:()=>{r?.(),w().invalidateQueries({queryKey:u.posts.images(e)});},onError:n})}function AC(e,t,r,n){return reactQuery.useMutation({mutationKey:["posts","images","delete",e],mutationFn:async({imageId:o})=>{if(!e||!t)throw new Error("[SDK][Posts] \u2013 missing auth for deleteImage");return vi(t,o)},onSuccess:(o,i)=>{r?.();let s=w(),{imageId:a}=i;s.setQueryData(["posts","images",e],c=>c?.filter(p=>p._id!==a)),s.setQueriesData({queryKey:["posts","images","infinite",e]},c=>c&&{...c,pages:c.pages.map(p=>({...p,data:p.data.filter(l=>l._id!==a)}))});},onError:n})}function CC(e,t){return reactQuery.useMutation({mutationKey:["posts","images","upload"],mutationFn:async({file:r,token:n,signal:o})=>bi(r,n,o),onSuccess:e,onError:t})}function er(e,t){return `/@${e}/${t}`}function wl(e,t,r){return (r??w()).getQueryData(u.posts.entry(er(e,t)))}function bl(e,t){(t??w()).setQueryData(u.posts.entry(er(e.author,e.permlink)),e);}function Zt(e,t,r,n){let o=n??w(),i=er(e,t),s=o.getQueryData(u.posts.entry(i));if(!s)return;let a=r(s);return o.setQueryData(u.posts.entry(i),a),s}exports.EntriesCacheManagement=void 0;(a=>{function e(c,p,l,m,f){Zt(c,p,g=>({...g,active_votes:l,stats:{...g.stats||{gray:false,hide:false,flag_weight:0,total_votes:0},total_votes:l.length,flag_weight:g.stats?.flag_weight||0},total_votes:l.length,payout:m,pending_payout_value:String(m)}),f);}a.updateVotes=e;function t(c,p,l,m){Zt(c,p,f=>({...f,reblogs:l}),m);}a.updateReblogsCount=t;function r(c,p,l,m){Zt(c,p,f=>({...f,children:l}),m);}a.updateRepliesCount=r;function n(c,p,l,m){Zt(p,l,f=>({...f,children:f.children+1,replies:[c,...f.replies]}),m);}a.addReply=n;function o(c,p){c.forEach(l=>bl(l,p));}a.updateEntries=o;function i(c,p,l){(l??w()).invalidateQueries({queryKey:u.posts.entry(er(c,p))});}a.invalidateEntry=i;function s(c,p,l){return wl(c,p,l)}a.getEntry=s;})(exports.EntriesCacheManagement||={});function vl(e,t,r){let n=e.some(o=>o.voter===t);return r!==0?n:!n}function Pl(e,t,r){let n=exports.EntriesCacheManagement.getEntry(t.author,t.permlink,r);if(!n?.active_votes||vl(n.active_votes,e,t.weight))return;let o=[...n.active_votes.filter(s=>s.voter!==e),...t.weight!==0?[{rshares:t.weight,voter:e}]:[]],i=n.payout+(t.estimated??0);exports.EntriesCacheManagement.updateVotes(t.author,t.permlink,o,i,r);}function IC(e,t,r){return v(["posts","vote"],e,({author:n,permlink:o,weight:i})=>[Qr(e,n,o,i)],async(n,o)=>{Pl(e,o);let i=n?.id??n?.tx_id;if(t?.adapter?.recordActivity&&i&&t.adapter.recordActivity(120,i,n?.block_num).catch(()=>{}),t?.adapter?.invalidateQueries){let s=()=>{t.adapter.invalidateQueries([u.posts.entry(`/@${o.author}/${o.permlink}`),u.accounts.full(e)]);};(r??"async")==="async"?setTimeout(s,4e3):s();}},t,"posting",{broadcastMode:r??"async"})}function BC(e,t,r){return v(["posts","reblog"],e,({author:n,permlink:o,deleteReblog:i})=>[Hr(e,n,o,i??false)],async(n,o)=>{let i=exports.EntriesCacheManagement.getEntry(o.author,o.permlink);if(i){let p=Math.max(0,(i.reblogs??0)+(o.deleteReblog?-1:1));exports.EntriesCacheManagement.updateReblogsCount(o.author,o.permlink,p);}let s=n?.id??n?.tx_id;t?.adapter?.recordActivity&&s&&t.adapter.recordActivity(130,s,n?.block_num).catch(()=>{});let a=()=>{w().invalidateQueries({queryKey:u.posts.accountPostsBlogPrefix(e)}),t?.adapter?.invalidateQueries&&t.adapter.invalidateQueries([u.posts.entry(`/@${o.author}/${o.permlink}`),u.posts.rebloggedBy(o.author,o.permlink)]);};(r??"async")==="async"?setTimeout(a,4e3):a();},t,"posting",{broadcastMode:r??"async"})}function Al(e){return e.isUpdate?null:e.parentAuthor?110:100}function VC(e,t,r){return v(["posts","comment"],e,n=>{let o=[];if(o.push(Ve(n.author,n.permlink,n.parentAuthor,n.parentPermlink,n.title,n.body,n.jsonMetadata)),n.options){let{maxAcceptedPayout:i="1000000.000 HBD",percentHbd:s=1e4,allowVotes:a=true,allowCurationRewards:c=true,beneficiaries:p=[]}=n.options,l=[];if(p.length>0){let m=[...p].sort((f,g)=>f.account.localeCompare(g.account));l.push([0,{beneficiaries:m.map(f=>({account:f.account,weight:f.weight}))}]);}o.push(je(n.author,n.permlink,i,s,a,c,l));}return o},async(n,o)=>{let i=!o.parentAuthor,s=Al(o),a=n?.id??n?.tx_id;if(s!==null&&t?.adapter?.recordActivity&&a&&t.adapter.recordActivity(s,a,n?.block_num).catch(()=>{}),t?.adapter?.invalidateQueries){let c=[u.accounts.full(e),u.resourceCredits.account(e)];if(!i){c.push(u.posts.entry(`/@${o.parentAuthor}/${o.parentPermlink}`));let p=o.rootAuthor||o.parentAuthor,l=o.rootPermlink||o.parentPermlink;c.push({predicate:m=>{let f=m.queryKey;return Array.isArray(f)&&f[0]==="posts"&&f[1]==="discussions"&&f[2]===p&&f[3]===l}});}await t.adapter.invalidateQueries(c);}},t,"posting",{broadcastMode:r})}function $C(e,t,r,n){let o=n??w(),i=o.getQueriesData({predicate:s=>{let a=s.queryKey;return Array.isArray(a)&&a[0]==="posts"&&a[1]==="discussions"&&a[2]===t&&a[3]===r}});for(let[s,a]of i)a&&o.setQueryData(s,[e,...a]);}function Ei(e,t,r,n,o){let i=o??w(),s=new Map,a=i.getQueriesData({predicate:c=>{let p=c.queryKey;return Array.isArray(p)&&p[0]==="posts"&&p[1]==="discussions"&&p[2]===r&&p[3]===n}});for(let[c,p]of a)p&&(s.set(c,p),i.setQueryData(c,p.filter(l=>l.author!==e||l.permlink!==t)));return s}function Ri(e,t){let r=t??w();for(let[n,o]of e)r.setQueryData(n,o);}function WC(e,t,r,n){let o=n??w(),i=`/@${e}/${t}`,s=o.getQueryData(u.posts.entry(i));return s&&o.setQueryData(u.posts.entry(i),{...s,...r}),s}function GC(e,t,r,n){let o=n??w(),i=`/@${e}/${t}`;o.setQueryData(u.posts.entry(i),r);}function ZC(e,t,r){return v(["posts","deleteComment"],e,({author:n,permlink:o})=>[Ur(n,o)],async(n,o)=>{if(t?.adapter?.invalidateQueries){let i=[u.accounts.full(e)];if(o.parentAuthor&&o.parentPermlink){i.push(u.posts.entry(`/@${o.parentAuthor}/${o.parentPermlink}`));let s=o.rootAuthor||o.parentAuthor,a=o.rootPermlink||o.parentPermlink;i.push({predicate:c=>{let p=c.queryKey;return Array.isArray(p)&&p[0]==="posts"&&p[1]==="discussions"&&p[2]===s&&p[3]===a}});}await t.adapter.invalidateQueries(i);}},t,"posting",{broadcastMode:r,onMutate:async n=>{let o=n.rootAuthor||n.parentAuthor,i=n.rootPermlink||n.parentPermlink;return o&&i?{snapshots:Ei(n.author,n.permlink,o,i)}:{}},onError:(n,o,i)=>{let{snapshots:s}=i??{};s&&Ri(s);}})}function nE(e,t,r){return v(["posts","cross-post"],e,n=>{let o=[];if(o.push(Ve(n.author,n.permlink,"",n.parentPermlink,n.title,n.body,n.jsonMetadata)),n.options){let{maxAcceptedPayout:i="1000000.000 HBD",percentHbd:s=1e4,allowVotes:a=true,allowCurationRewards:c=true}=n.options;o.push(je(n.author,n.permlink,i,s,a,c,[]));}return o},async(n,o)=>{if(t?.adapter?.invalidateQueries){let i=[u.accounts.full(e),{predicate:s=>{let a=s.queryKey;return Array.isArray(a)&&a[0]==="posts"&&a[1]==="posts-ranked"&&a[3]===o.parentPermlink}}];await t.adapter.invalidateQueries(i);}},t,"posting",{broadcastMode:r??"async"})}function aE(e,t,r){return v(["posts","update-reply"],e,n=>{let o=[];if(o.push(Ve(n.author,n.permlink,n.parentAuthor,n.parentPermlink,n.title,n.body,n.jsonMetadata)),n.options){let{maxAcceptedPayout:i="1000000.000 HBD",percentHbd:s=1e4,allowVotes:a=true,allowCurationRewards:c=true,beneficiaries:p=[]}=n.options,l=[];if(p.length>0){let m=[...p].sort((f,g)=>f.account.localeCompare(g.account));l.push([0,{beneficiaries:m.map(f=>({account:f.account,weight:f.weight}))}]);}o.push(je(n.author,n.permlink,i,s,a,c,l));}return o},async(n,o)=>{if(t?.adapter?.invalidateQueries){let i=[u.resourceCredits.account(e)];i.push(u.posts.entry(`/@${o.parentAuthor}/${o.parentPermlink}`));let s=o.rootAuthor||o.parentAuthor,a=o.rootPermlink||o.parentPermlink;i.push({predicate:c=>{let p=c.queryKey;return Array.isArray(p)&&p[0]==="posts"&&p[1]==="discussions"&&p[2]===s&&p[3]===a}}),await t.adapter.invalidateQueries(i);}},t,"posting",{broadcastMode:r})}function lE(e,t,r){return v(["ecency","promote"],e,({author:n,permlink:o,duration:i})=>[mn(e,n,o,i)],async(n,o)=>{t?.adapter?.invalidateQueries&&await t.adapter.invalidateQueries([[...u.posts._promotedPrefix],[...u.points._prefix(e)],u.posts.entry(`/@${o.author}/${o.permlink}`)]);},t,"active",{broadcastMode:r})}var xl=[3e3,3e3,3e3],Ol=e=>new Promise(t=>setTimeout(t,e));async function Sl(e,t){return y("condenser_api.get_content",[e,t])}async function Cl(e,t,r=0,n){let o=n?.delays??xl,i;try{i=await Sl(e,t);}catch{i=void 0;}if(i||r>=o.length)return;let s=o[r];return s>0&&await Ol(s),Cl(e,t,r+1,n)}var ot={};kt(ot,{useRecordActivity:()=>_n});function Rl(){return typeof window<"u"&&window.location?{url:window.location.href,domain:window.location.host}:{url:"",domain:""}}function _n(e,t,r){return reactQuery.useMutation({mutationKey:["analytics",t],mutationFn:async()=>{if(!t)throw new Error("[SDK][Analytics] \u2013 no activity type provided");let n=h(),o=Rl(),i=r?.url??o.url,s=r?.domain??o.domain;try{await n(d.plausibleHost+"/api/event",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:t,url:i,domain:s,props:{username:e}})});}catch{}}})}function vE(e){return reactQuery.queryOptions({queryKey:["analytics","discover-leaderboard",e],queryFn:async({signal:t})=>{let r=await fetch(d.privateApiHost+`/private-api/leaderboard/${e}`,{signal:t});if(!r.ok)throw new Error(`Failed to fetch leaderboard: ${r.status}`);return r.json()}})}function SE(e){return reactQuery.queryOptions({queryKey:["analytics","discover-curation",e],queryFn:async({signal:t})=>{let r=await fetch(d.privateApiHost+`/private-api/curation/${e}`,{signal:t});if(!r.ok)throw new Error(`Failed to fetch curation data: ${r.status}`);let n=await r.json(),o=n.map(s=>s.account),i=await y("condenser_api.get_accounts",[o]);for(let s=0;s<i.length;s++){let a=i[s],c=n[s],p=typeof a.vesting_shares=="string"?a.vesting_shares:a.vesting_shares.toString(),l=typeof a.received_vesting_shares=="string"?a.received_vesting_shares:a.received_vesting_shares.toString(),m=typeof a.delegated_vesting_shares=="string"?a.delegated_vesting_shares:a.delegated_vesting_shares.toString(),f=typeof a.vesting_withdraw_rate=="string"?a.vesting_withdraw_rate:a.vesting_withdraw_rate.toString(),g=parseFloat(p)+parseFloat(l)-parseFloat(m)-parseFloat(f);c.efficiency=c.hp/g;}return n.sort((s,a)=>a.efficiency-s.efficiency),n}})}function kE(e,t=[],r=["visitors","pageviews","visit_duration"],n){let o=[...t].sort(),i=[...r].sort();return reactQuery.queryOptions({queryKey:["analytics","page-stats",e,o,i,n],queryFn:async({signal:s})=>{let a=await fetch(d.privateApiHost+"/api/stats",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({metrics:r,url:encodeURIComponent(e),dimensions:t,date_range:n}),signal:s});if(!a.ok)throw new Error(`Failed to fetch page stats: ${a.status}`);return a.json()},enabled:!!e,staleTime:0})}var tr="threespeakfund",KE=1100;function ql(e){return /https?:\/\/([a-z0-9-]+\.)*3speak\.tv\/embed[?/]/i.test(e)}function NE(e,t){if(!ql(t))return e;let r=e.find(n=>n.account===tr);return r&&r.weight===1100?e:r?e.map(n=>n.account===tr?{...n,weight:1100}:n):[...e,{account:tr,weight:1100}]}function ME(e){return e===tr}var vn={};kt(vn,{getAccountTokenQueryOptions:()=>bn,getAccountVideosQueryOptions:()=>Bl});var wn={};kt(wn,{getDecodeMemoQueryOptions:()=>Kl});function Kl(e,t,r){return reactQuery.queryOptions({queryKey:["integrations","hivesigner","decode-memo",e],queryFn:async()=>{if(r)return new Co__default.default.Client({accessToken:r}).decode(t)}})}var ki={queries:wn};function bn(e,t){return reactQuery.queryOptions({queryKey:["integrations","3speak","authenticate",e],enabled:!!e&&!!t,queryFn:async()=>{if(!e||!t)throw new Error("[SDK][Integrations][3Speak] \u2013\xA0anon user");let n=await h()(`https://studio.3speak.tv/mobile/login?username=${e}&hivesigner=true`,{headers:{"Content-Type":"application/json"}}),o=ki.queries.getDecodeMemoQueryOptions(e,(await n.json()).memo,t);await w().prefetchQuery(o);let{memoDecoded:i}=w().getQueryData(o.queryKey);return i.replace("#","")}})}function Bl(e,t){return reactQuery.queryOptions({queryKey:["integrations","3speak","videos",e],enabled:!!e&&!!t,queryFn:async()=>{if(!e||!t)throw new Error("[SDK][Integrations][3Speak] \u2013\xA0anon user");let r=bn(e,t);await w().prefetchQuery(r);let n=w().getQueryData(r.queryKey);if(!n)throw new Error("[SDK][Integrations][3Speak] \u2013 missing account token");return await(await h()("https://studio.3speak.tv/mobile/api/my-videos",{headers:{"Content-Type":"application/json",Authorization:`Bearer ${n}`}})).json()}})}var tR={queries:vn};function aR(e){return reactQuery.queryOptions({queryKey:["integrations","hiveposh","links",e],retry:false,queryFn:async()=>{try{let r=await h()(`https://hiveposh.com/api/v0/linked-accounts/${e}`,{headers:{"Content-Type":"application/json"}});if(r.status===400&&(await r.json().catch(()=>({})))?.message==="User Not Connected"||!r.ok)return null;let n=await r.json();return {twitter:{username:n.twitter_username,profile:n.twitter_profile},reddit:{username:n.reddit_username,profile:n.reddit_profile}}}catch{return null}}})}function lR({url:e,dimensions:t=[],metrics:r=["visitors","pageviews","visit_duration"],filterBy:n="event:page",dateRange:o,enabled:i=true}){return reactQuery.queryOptions({queryKey:["integrations","plausible",e,t,r,n,o],queryFn:async()=>{let a=await h()(`${d.privateApiHost}/api/stats`,{method:"POST",body:JSON.stringify({metrics:r,url:encodeURIComponent(e),dimensions:t,filterBy:n,...o?{date_range:o}:{}}),headers:{"Content-Type":"application/json"}});if(!a.ok)throw new Error(`Failed to fetch Plausible stats: ${a.status}`);return await a.json()},enabled:!!e&&i,retry:1})}function gR(){return reactQuery.queryOptions({queryKey:["resource-credits","stats"],queryFn:async()=>(await y("rc_api.get_rc_stats",{})).rc_stats})}function wR(e){return reactQuery.queryOptions({queryKey:["resource-credits","account",e],queryFn:async()=>(await y("rc_api.find_rc_accounts",{accounts:[e]})).rc_accounts,enabled:!!e})}function xR(){return reactQuery.queryOptions({queryKey:u.resourceCredits.resourceParams(),staleTime:1440*60*1e3,gcTime:1/0,queryFn:async()=>await y("rc_api.get_resource_params",{})})}var rr=["resource_history_bytes","resource_new_accounts","resource_market_bytes","resource_state_bytes","resource_execution_time"];var Ll=11,$l=65,Wl=16,it=e=>BigInt(typeof e=="string"?e:Math.trunc(e));function Pn(e,t,r,n){if(r<=0||n<=0)return 0;let o=it(e.coeff_a),i=it(e.coeff_b),s=it(e.shift),a=it(n)*o>>s;a+=1n,a*=it(r);let c=i+(t>0?it(t):0n);return c===0n?0:Number(a/c+1n)}function An({transactionBytes:e,permlinkLength:t,signatures:r=1,beneficiaries:n=0,hasCommentOptions:o=false},i){let s=i.resource_state_bytes,a=i.resource_execution_time;return {resource_history_bytes:e,resource_new_accounts:0,resource_market_bytes:0,resource_state_bytes:s.comment_base_size+s.comment_permlink_char_size*t+s.transaction_base_size+s.comment_beneficiaries_member_size*n,resource_execution_time:a.comment_time+a.transaction_time+a.verify_authority_time*r+(o?a.comment_options_time:0)}}var _e=e=>{let t=yt(e);return ye(t)+t},Gl=e=>1+_e(e.parent_author)+_e(e.parent_permlink)+_e(e.author)+_e(e.permlink)+_e(e.title)+_e(e.body)+_e(e.json_metadata),zl=(e,t)=>{let r=t.beneficiaries??[],n=1+_e(e.author)+_e(e.permlink)+Wl+2+2;return n+=ye(r.length>0?1:0),r.length>0&&(n+=1+ye(r.length),r.forEach(o=>{n+=_e(o.account)+2;})),n};function xn({op:e,options:t,signatures:r=1}){let n=[Gl(e)];return t&&n.push(zl(e,t)),Ll+ye(n.length)+n.reduce((o,i)=>o+i,0)+ye(r)+$l*r}var Jl={ready:false,cost:0,transactionBytes:0,breakdown:[]};function RR({op:e,options:t,rcParams:r,rcStats:n,signatures:o=1}){if(!r?.resource_params||!r.size_info||!n?.pool||!n.share)return Jl;let i=xn({op:e,options:t,signatures:o}),s=An({transactionBytes:i,permlinkLength:yt(e.permlink),signatures:o,beneficiaries:t?.beneficiaries?.length??0,hasCommentOptions:!!t},r.size_info),a=Number(n.regen),c=0,p=[];return rr.forEach((l,m)=>{let f=r.resource_params[l],g=Number(n.pool[m]??0),_=Number(n.share[m]??0);if(!f||_<=0)return;let P=s[l]*Number(f.resource_dynamics_params.resource_unit??1),x=Number(BigInt(a)*BigInt(_)/10000n),C=Pn(f.price_curve_params,g,P,x);c+=C,p.push({resource:l,usage:P,cost:C});}),{ready:true,cost:c,transactionBytes:i,breakdown:p}}function On(e,t,r){let n=Number(r.regen),o=0,i=[];return rr.forEach((s,a)=>{let c=t.resource_params[s],p=Number(r.pool[a]??0),l=Number(r.share[a]??0);if(!c||l<=0)return;let m=e[s]*Number(c.resource_dynamics_params.resource_unit??1),f=Number(BigInt(n)*BigInt(l)/10000n),g=Pn(c.price_curve_params,p,m,f);o+=g,i.push({resource:s,usage:m,cost:g});}),{cost:o,breakdown:i}}var Yl=11,Xl=65,Sn=e=>{let t=yt(e);return ye(t)+t},Zl=()=>({resource_history_bytes:0,resource_new_accounts:0,resource_market_bytes:0,resource_state_bytes:0,resource_execution_time:0});function Ti(e,t=1){let r=1+Sn(e.voter)+Sn(e.author)+Sn(e.permlink)+2;return Yl+ye(1)+r+ye(t)+Xl*t}function Fi({transactionBytes:e,signatures:t=1},r){let n=r.resource_state_bytes,o=r.resource_execution_time;return {...Zl(),resource_history_bytes:e,resource_state_bytes:n.vote_size+n.transaction_base_size,resource_execution_time:o.vote_time+o.transaction_time+o.verify_authority_time*t}}var qi={ready:false,currentMana:0,maxMana:0,avgCost:0,cost:0,transactionBytes:0,estimatedCost:0,willLikelyFail:false,deficit:0,remaining:0};function QR({rcAccount:e,rcStats:t,rcParams:r,operation:n,payload:o,fallback:i="minimal",buffer:s=1.2}){if(!e||!t?.ops)return qi;let{current_mana:a,max_mana:c}=jt(e),p=ed(n,o,i,r,t);if(!p)return {...qi,currentMana:a,maxMana:c};let{cost:l,transactionBytes:m}=p,f=Number.isFinite(s)&&s>0?s:1.2,g=l*f,_=a<g;return {ready:true,currentMana:a,maxMana:c,avgCost:l,cost:l,transactionBytes:m,estimatedCost:g,willLikelyFail:_,deficit:_?Math.ceil(g-a):0,remaining:Math.floor(a/l)}}function ed(e,t,r,n,o){let i=td(o,e);if(!(e==="comment_operation"||e==="vote_operation")||!t&&r==="average")return i;if(!n?.resource_params||!n.size_info||!o.pool||!o.share)return null;let a={pool:o.pool,regen:o.regen,share:o.share};if(e==="vote_operation"){let f=t?.kind==="vote"?t.op:nd,g=Ti(f),_=Fi({transactionBytes:g},n.size_info);return {cost:On(_,n,a).cost,transactionBytes:g}}let c=t?.kind==="comment"?t.op:rd,p=t?.kind==="comment"?t.options:void 0,l=xn({op:c,options:p}),m=An({transactionBytes:l,permlinkLength:c.permlink.length,beneficiaries:p?.beneficiaries?.length??0,hasCommentOptions:!!p},n.size_info);return {cost:On(m,n,a).cost,transactionBytes:l}}function td(e,t){let r=e.ops[t]?.avg_cost;return typeof r=="number"&&r>0?{cost:r,transactionBytes:0}:null}var rd={author:"aaaaaaaaaa",permlink:"aaaaaaaaaaaaaaaaaaaa",parent_author:"",parent_permlink:"hive-100000",title:"",body:"",json_metadata:"{}"},nd={voter:"aaaaaaaaaa",author:"aaaaaaaaaa",permlink:"aaaaaaaaaaaaaaaaaaaa"};function jR(e,t,r){return reactQuery.queryOptions({queryKey:["games","status-check",r,e],enabled:!!e&&!!t,queryFn:async()=>{if(!e||!t)throw new Error("[SDK][Games] \u2013 missing auth");return await(await h()(d.privateApiHost+"/private-api/get-game",{method:"POST",body:JSON.stringify({game_type:r,code:t}),headers:{"Content-Type":"application/json"}})).json()}})}async function sd(e,t,r){let o=await h()(d.privateApiHost+"/private-api/post-game",{method:"POST",body:JSON.stringify({game_type:t,code:e,key:r}),headers:{"Content-Type":"application/json"}}),i=(o.headers.get("content-type")??"").split(";")[0].trim().toLowerCase(),s=await o.text();if(!o.ok){let a=s&&i.includes("json")?`: ${s.slice(0,200)}`:"";throw new Error(`[SDK][Games] \u2013 failed with status ${o.status}${a}`)}if(!i.includes("json"))throw new Error(`[SDK][Games] \u2013 expected JSON but received "${i||"empty"}" response (status ${o.status})`);try{return JSON.parse(s)}catch{throw new Error(`[SDK][Games] \u2013 malformed JSON response (status ${o.status})`)}}function zR(e,t,r,n){let{mutateAsync:o}=_n(e,"spin-rolled");return reactQuery.useMutation({mutationKey:["games","post",r,e],mutationFn:async()=>{if(!e||!t)throw new Error("[SDK][Games] \u2013 missing auth");return sd(t,r,n)},onSuccess(){o();}})}function ZR(e){let t=e?.replace("@","");return reactQuery.queryOptions({queryKey:u.quests.status(t),enabled:!!t,queryFn:async()=>{if(!t)throw new Error("[SDK][Quests] \u2013 username wasn't provided");let n=await h()(d.privateApiHost+"/private-api/quests",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({username:t})});if(!n.ok)throw new Error(`Failed to fetch quests: ${n.status}`);return await n.json()},staleTime:3e4,refetchOnMount:true})}var ud=[{id:"checkin",tier:"daily",goal:1,i18nKey:"checkin",icon:"check-circle"},{id:"post",tier:"daily",goal:1,i18nKey:"post",icon:"pencil"},{id:"comment",tier:"daily",goal:3,i18nKey:"comment",icon:"comment"},{id:"vote",tier:"daily",goal:10,i18nKey:"vote",icon:"chevron-up-circle"},{id:"reblog",tier:"daily",goal:1,i18nKey:"reblog",icon:"repeat"},{id:"spin",tier:"daily",goal:1,i18nKey:"spin",icon:"gift"},{id:"post",tier:"weekly",goal:5,i18nKey:"post",icon:"pencil"},{id:"comment",tier:"weekly",goal:15,i18nKey:"comment",icon:"comment"},{id:"vote",tier:"weekly",goal:50,i18nKey:"vote",icon:"chevron-up-circle"},{id:"reblog",tier:"weekly",goal:5,i18nKey:"reblog",icon:"repeat"},{id:"post",tier:"monthly",goal:20,i18nKey:"post",icon:"pencil"}];function tk(e,t){return ud.find(r=>r.tier===e&&r.id===t)}var cd=25;function pd(e){return Array.from((e??"").replace(/https?:\/\/\S+/g,"")).length}function rk(e){return pd(e)>cd}var nk=300,ok=2;function md(){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?crypto.randomUUID():`${Date.now()}-${Math.random().toString(36).slice(2)}`}async function fd(e){let r=await h()(d.privateApiHost+"/private-api/streak-freeze/buy",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:e,idempotency_key:md()})});if(!r.ok){let n;try{n=await r.json();}catch{}let o=n?.message??`Failed to buy streak freeze: ${r.status}`,i=new Error(o);throw i.status=r.status,i.data=n,i}return await r.json()}function uk(e,t){let r=reactQuery.useQueryClient(),n=e?.replace("@","");return reactQuery.useMutation({mutationKey:["streak-freeze","buy",n],mutationFn:async()=>{if(!n||!t)throw new Error("[SDK][StreakFreeze] \u2013 missing auth");return fd(t)},onSuccess(){n&&r.invalidateQueries({queryKey:u.points._prefix(n)});},onSettled(){n&&r.invalidateQueries({queryKey:u.quests.status(n)});}})}function dk(e,t,r){return v(["communities","subscribe"],e,({community:n})=>[Xr(e,n)],async(n,o)=>{t?.adapter?.invalidateQueries&&await t.adapter.invalidateQueries([u.accounts.subscriptions(e),[...u.communities.singlePrefix(o.community)],u.communities.context(e,o.community)]);},t,"posting",{broadcastMode:r??"async"})}function yk(e,t,r){return v(["communities","unsubscribe"],e,({community:n})=>[Zr(e,n)],async(n,o)=>{t?.adapter?.invalidateQueries&&await t.adapter.invalidateQueries([u.accounts.subscriptions(e),[...u.communities.singlePrefix(o.community)],u.communities.context(e,o.community)]);},t,"posting",{broadcastMode:r??"sync"})}function bk(e,t,r){return v(["communities","mutePost"],e,({community:n,author:o,permlink:i,notes:s,mute:a})=>[nn(e,n,o,i,s,a)],async(n,o)=>{if(t?.adapter?.invalidateQueries){let i=[u.posts.entry(`/@${o.author}/${o.permlink}`),["community","single",o.community],{predicate:s=>{let a=s.queryKey;return Array.isArray(a)&&a[0]==="posts"&&a[1]==="posts-ranked"&&a[3]===o.community}}];await t.adapter.invalidateQueries(i);}},t,"posting",{broadcastMode:r??"sync"})}function xk(e,t,r,n){return v(["communities","set-role",e],t,({account:o,role:i})=>[en(t,e,o,i)],async(o,i)=>{w().setQueriesData({queryKey:u.communities.singlePrefix(e)},a=>{if(!a)return a;let c=[...a.team??[]],p=c.findIndex(([l])=>l===i.account);return p>=0?c[p]=[c[p][0],i.role,c[p][2]??""]:c.push([i.account,i.role,""]),{...a,team:c}}),r?.adapter?.invalidateQueries&&await r.adapter.invalidateQueries([[...u.communities.singlePrefix(e)],u.communities.context(i.account,e)]);},r,"posting",{broadcastMode:n??"async"})}function Ek(e,t,r,n){return v(["communities","update",e],t,o=>[tn(t,e,o)],async(o,i)=>{w().setQueriesData({queryKey:u.communities.singlePrefix(e)},a=>a&&{...a,...i}),r?.adapter?.invalidateQueries&&await r.adapter.invalidateQueries([[...u.communities.singlePrefix(e)]]);},r,"posting",{broadcastMode:n??"async"})}function Fk(e,t,r){return v(["communities","registerRewards"],e,({name:n})=>[yn(n)],async(n,o)=>{t?.adapter?.invalidateQueries&&await t.adapter.invalidateQueries([[...u.communities.singlePrefix(o.name)],[...u.points._prefix(e)]]);},t,"active",{broadcastMode:r})}function Kk(e,t,r){return v(["communities","pin-post"],e,({community:n,account:o,permlink:i,pin:s})=>[rn(e,n,o,i,s)],async(n,o)=>{t?.adapter?.invalidateQueries&&await t.adapter.invalidateQueries([u.posts.entry(`/@${o.account}/${o.permlink}`),[...u.communities.singlePrefix(o.community)]]);},t,"posting",{broadcastMode:r??"async"})}function Uk(e,t,r=100,n=void 0,o=true){return reactQuery.queryOptions({queryKey:u.communities.list(e,t??"",r),enabled:o,queryFn:async()=>{let i=await y("bridge.list_communities",{last:"",limit:r,sort:e==="hot"?"rank":e,query:t||null,observer:n});return i?e==="hot"?i.sort(()=>Math.random()-.5):i:[]}})}function $k(e,t){return reactQuery.queryOptions({queryKey:u.communities.context(e,t),enabled:!!e&&!!t,queryFn:async()=>{let r=await y("bridge.get_community_context",{account:e,name:t});return {role:r?.role??"guest",subscribed:r?.subscribed??false}}})}function Yk(e,t="",r=true){return reactQuery.queryOptions({queryKey:u.communities.single(e,t),enabled:r&&!!e,queryFn:async()=>Go(e??"",t)})}var Ii=100;async function Di(e,t){return await y("bridge.list_subscribers",{community:e,limit:Ii,...t?{last:t}:{}})??[]}function nT(e){return reactQuery.queryOptions({queryKey:u.communities.subscribers(e),queryFn:async()=>Di(e,null),staleTime:6e4})}function oT(e){return reactQuery.infiniteQueryOptions({queryKey:u.communities.subscribersInfinite(e),initialPageParam:null,queryFn:async({pageParam:t})=>Di(e,t),getNextPageParam:t=>t?.length>=Ii?t[t.length-1]?.[0]??null:null,staleTime:6e4})}function pT(e,t){return reactQuery.infiniteQueryOptions({queryKey:u.communities.accountNotifications(e,t),initialPageParam:null,queryFn:async({pageParam:r})=>await y("bridge.account_notifications",{account:e,limit:t,last_id:r??void 0})??[],getNextPageParam:r=>r?.length>=t?r[r.length-1].id:null})}function fT(){return reactQuery.queryOptions({queryKey:u.communities.rewarded(),queryFn:async()=>{let e=await fetch(d.privateApiHost+"/private-api/rewarded-communities",{method:"GET",headers:{"Content-Type":"application/json"}});if(!e.ok)throw new Error(`Failed to fetch rewarded communities: ${e.status}`);return e.json()}})}var Pd=(s=>(s.OWNER="owner",s.ADMIN="admin",s.MOD="mod",s.MEMBER="member",s.GUEST="guest",s.MUTED="muted",s))(Pd||{}),yT={owner:["admin","mod","member","guest","muted"],admin:["mod","member","guest","muted"],mod:["member","guest","muted"]};function _T(e,t){return e.startsWith("hive-3")||t===3?"Council":e.startsWith("hive-2")||t===2?"Journal":"Topic"}function wT({communityType:e,userRole:t,subscribed:r}){let n=t==="muted"?false:e==="Topic"?true:["owner","admin","mod","member"].includes(t),o=(()=>{if(t==="muted")return false;switch(e){case "Topic":return true;case "Journal":return t!=="guest"||r;case "Council":return n}})(),i=["owner","admin","mod"].includes(t);return {canPost:n,canComment:o,isModerator:i}}function AT(e,t){return reactQuery.queryOptions({queryKey:u.notifications.unreadCount(e),queryFn:async()=>t?(await(await fetch(`${d.privateApiHost}/private-api/notifications/unread`,{method:"POST",body:JSON.stringify({code:t}),headers:{"Content-Type":"application/json"}})).json()).count:0,enabled:!!e&&!!t,initialData:0,refetchInterval:6e4})}function CT(e,t,r=void 0){return reactQuery.infiniteQueryOptions({queryKey:u.notifications.list(e,r),queryFn:async({pageParam:n})=>{if(!t)return [];let o={code:t,filter:r,since:n,user:void 0},i=await fetch(d.privateApiHost+"/private-api/notifications",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(o)});if(!i.ok)return [];try{return await i.json()}catch{return []}},enabled:!!e&&!!t,initialPageParam:"",getNextPageParam:n=>n?.[n.length-1]?.id??"",refetchOnMount:true})}var Od=(_=>(_.VOTES="rvotes",_.MENTIONS="mentions",_.FAVORITES="nfavorites",_.BOOKMARKS="nbookmarks",_.FOLLOWS="follows",_.REPLIES="replies",_.REBLOGS="reblogs",_.TRANSFERS="transfers",_.DELEGATIONS="delegations",_.PAYOUTS="payouts",_.SCHEDULED_PUBLISHED="scheduled_published",_.ACCOUNT_UPDATES="account_updates",_.WEEKLY_EARNINGS="weekly_earnings",_.TAGS="tags",_))(Od||{});var Sd=(P=>(P[P.VOTE=1]="VOTE",P[P.MENTION=2]="MENTION",P[P.FOLLOW=3]="FOLLOW",P[P.COMMENT=4]="COMMENT",P[P.RE_BLOG=5]="RE_BLOG",P[P.TRANSFERS=6]="TRANSFERS",P[P.DELEGATIONS=10]="DELEGATIONS",P[P.FAVORITES=13]="FAVORITES",P[P.BOOKMARKS=15]="BOOKMARKS",P[P.PAYOUTS=19]="PAYOUTS",P[P.ACCOUNT_UPDATE=20]="ACCOUNT_UPDATE",P[P.WEEKLY_EARNINGS=21]="WEEKLY_EARNINGS",P[P.SCHEDULED_PUBLISHED=22]="SCHEDULED_PUBLISHED",P[P.TAGS=23]="TAGS",P.ALLOW_NOTIFY="ALLOW_NOTIFY",P))(Sd||{}),Ki=[1,2,3,4,5,6,10,13,15,19,20,21,22,23],Cd=(n=>(n.ALL="All",n.UNREAD="Unread",n.READ="Read",n))(Cd||{});function IT(e,t,r){return reactQuery.queryOptions({queryKey:u.notifications.settings(e),queryFn:async()=>{let n=e+"-web";if(!t)throw new Error("Missing access token");let o=await fetch(d.privateApiHost+"/private-api/detail-device",{body:JSON.stringify({code:t,username:e,token:n}),method:"POST",headers:{"Content-Type":"application/json"}});if(!o.ok)throw new Error(`Failed to fetch notification settings: ${o.status}`);return o.json()},enabled:!!e&&!!t,refetchOnMount:false,initialData:()=>({status:0,system:"web",allows_notify:0,notify_types:r?[]:[...Ki]})})}function MT(){return reactQuery.queryOptions({queryKey:u.notifications.announcements(),queryFn:async()=>{let e=await fetch(d.privateApiHost+"/private-api/announcements",{method:"GET",headers:{"Content-Type":"application/json"}});if(!e.ok)throw new Error(`Failed to fetch announcements: ${e.status}`);return await e.json()||[]},staleTime:36e5})}function HT(e){return reactQuery.queryOptions({queryKey:u.notifications.spotlights(),queryFn:async()=>{let t=await fetch(d.privateApiHost+"/private-api/spotlights",{method:"GET",headers:{"Content-Type":"application/json"}});if(!t.ok)throw new Error(`Failed to fetch spotlights: ${t.status}`);return await t.json()||[]},staleTime:36e5})}function Fd(e,t){return {...e,read:!t||t===e.id?1:e.read}}function Ni(e){return typeof e=="object"&&e!==null&&"pages"in e&&"pageParams"in e&&Array.isArray(e.pages)}function zT(e,t,r,n){let o=w();return reactQuery.useMutation({mutationKey:["notifications","mark-read",e],mutationFn:async({id:i})=>{if(!e||!t){process.env.NODE_ENV!=="production"&&console.warn("[SDK][Notifications] \u2013 missing auth for markNotifications");return}return _i(t,i)},onMutate:async({id:i})=>{if(!e||!t)return {previousData:[]};await o.cancelQueries({queryKey:u.notifications._prefix});let s=[],a=o.getQueriesData({queryKey:u.notifications._prefix,predicate:l=>{let m=l.state.data;return Ni(m)}});a.forEach(([l,m])=>{if(m&&Ni(m)){s.push([l,m]);let f={...m,pages:m.pages.map(g=>g.map(_=>Fd(_,i)))};o.setQueryData(l,f);}});let c=u.notifications.unreadCount(e),p=o.getQueryData(c);return typeof p=="number"&&p>0&&(s.push([c,p]),i?a.some(([,m])=>m?.pages.some(f=>f.some(g=>g.id===i&&g.read===0)))&&o.setQueryData(c,p-1):o.setQueryData(c,0)),{previousData:s}},onSuccess:i=>{let s=typeof i=="object"&&i!==null?i.unread:void 0;typeof s=="number"&&o.setQueryData(u.notifications.unreadCount(e),s),r?.(s);},onError:(i,s,a)=>{a?.previousData&&a.previousData.forEach(([c,p])=>{o.setQueryData(c,p);}),n?.(i);},onSettled:()=>{o.invalidateQueries({queryKey:u.notifications._prefix});}})}function ZT(e,t,r){return v(["notifications","set-last-read"],e,({date:n})=>Wr(e,n),async()=>{t?.adapter?.invalidateQueries&&await t.adapter.invalidateQueries([u.notifications.unreadCount(e)]);},t,"posting",{broadcastMode:r??"async"})}function nF(e){return reactQuery.queryOptions({queryKey:["proposals","proposal",e],queryFn:async()=>{let r=(await y("condenser_api.find_proposals",[[e]]))[0];return new Date(r.start_date)<new Date&&new Date(r.end_date)>=new Date?r.status="active":new Date(r.end_date)<new Date?r.status="expired":r.status="inactive",r}})}function aF(){return reactQuery.queryOptions({queryKey:["proposals","list"],queryFn:async()=>{let t=(await y("database_api.list_proposals",{start:[-1],limit:500,order:"by_total_votes",order_direction:"descending",status:"all"})).proposals,r=t.filter(o=>o.status==="expired");return [...t.filter(o=>o.status!=="expired"),...r]}})}function mF(e,t,r){return reactQuery.infiniteQueryOptions({queryKey:["proposals","votes",e,t,r],initialPageParam:t,refetchOnMount:true,staleTime:0,queryFn:async({pageParam:n})=>{let s=(await y("condenser_api.list_proposal_votes",[[e,n??t],r,"by_proposal_voter"])).filter(l=>l.proposal?.proposal_id===e).map(l=>({id:l.id,voter:l.voter})),a=await y("condenser_api.get_accounts",[s.map(l=>l.voter)]),c=Gt(a);return s.map(l=>({...l,voterAccount:c.find(m=>l.voter===m.name)}))},getNextPageParam:n=>n?.[n.length-1]?.voter??void 0})}function hF(e){return reactQuery.queryOptions({queryKey:["proposals","votes","by-user",e],enabled:!!e&&e!=="",staleTime:60*1e3,queryFn:async()=>!e||e===""?[]:((await y("database_api.list_proposal_votes",{start:[e],limit:1e3,order:"by_voter_proposal",order_direction:"ascending",status:"votable"})).proposal_votes||[]).filter(n=>n.voter===e)})}function vF(e,t,r){return v(["proposals","vote"],e,({proposalIds:n,approve:o})=>[Yr(e,n,o)],async n=>{try{let o=n?.id??n?.tx_id;t?.adapter?.recordActivity&&o&&t.adapter.recordActivity(150,o,n?.block_num).catch(i=>{console.debug("[SDK][Proposals][useProposalVote] recordActivity failed",{activityType:150,blockNum:n?.block_num,transactionId:o,error:i});}),t?.adapter?.invalidateQueries&&await t.adapter.invalidateQueries([u.proposals.list(),u.proposals.votesByUser(e)]);}catch(o){console.warn("[useProposalVote] Post-broadcast side-effect failed:",o);}},t,"active",{broadcastMode:r})}function OF(e,t,r){return v(["proposals","create"],e,n=>[Jr(e,n)],async()=>{t?.adapter?.invalidateQueries&&await t.adapter.invalidateQueries([u.accounts.full(e),u.proposals.list()]);},t,"active",{broadcastMode:r})}function RF(e,t=50){return reactQuery.infiniteQueryOptions({queryKey:["wallet","vesting-delegations",e,t],initialPageParam:"",queryFn:async({pageParam:r})=>{let n=r?t+1:t,o=await y("condenser_api.get_vesting_delegations",[e,r||"",n]);return r&&o.length>0&&o[0]?.delegatee===r?o.slice(1,t+1):o},getNextPageParam:r=>!r||r.length<t?void 0:r[r.length-1]?.delegatee,enabled:!!e})}function nr(e){return reactQuery.queryOptions({queryKey:["assets","account-delegations",e],enabled:!!e,queryFn:({signal:t})=>te("balance","/accounts/{account-name}/delegations",{"account-name":e},void 0,void 0,t)})}function KF(e){return reactQuery.queryOptions({queryKey:["wallet","vesting-delegation-expirations",e],queryFn:async()=>e?(await y("database_api.find_vesting_delegation_expirations",{account:e})).delegations:[],enabled:!!e})}function QF(e){return reactQuery.queryOptions({queryKey:["wallet","conversion-requests",e],queryFn:()=>y("condenser_api.get_conversion_requests",[e]),select:t=>t.sort((r,n)=>r.requestid-n.requestid)})}function jF(e){return reactQuery.queryOptions({queryKey:["wallet","collateralized-conversion-requests",e],queryFn:()=>y("condenser_api.get_collateralized_conversion_requests",[e]),select:t=>t.sort((r,n)=>r.requestid-n.requestid)})}function GF(e){return reactQuery.queryOptions({queryKey:["wallet","savings-withdraw",e],queryFn:()=>y("condenser_api.get_savings_withdraw_from",[e]),select:t=>t.sort((r,n)=>r.request_id-n.request_id)})}function XF(e){return reactQuery.queryOptions({queryKey:["wallet","withdraw-routes",e],queryFn:()=>y("condenser_api.get_withdraw_routes",[e,"outgoing"])})}function rq(e){return reactQuery.queryOptions({queryKey:["wallet","open-orders",e],queryFn:()=>y("condenser_api.get_open_orders",[e]),select:t=>t.sort((r,n)=>r.orderid-n.orderid),enabled:!!e})}function aq(e,t=100){return reactQuery.infiniteQueryOptions({queryKey:["wallet","outgoing-rc-delegations",e,t],initialPageParam:null,queryFn:async({pageParam:r})=>{let o=(await y("rc_api.list_rc_direct_delegations",{start:[e,r??""],limit:t}).then(i=>i)).rc_direct_delegations||[];return r&&(o=o.filter(i=>i.to!==r)),o},getNextPageParam:r=>r.length===t?r[r.length-1].to:null})}function lq(e){return reactQuery.queryOptions({queryKey:["wallet","incoming-rc",e],enabled:!!e,queryFn:async()=>{if(!e)throw new Error("[SDK][Wallet] - Missing username for incoming RC");let r=await h()(`${d.privateApiHost}/private-api/received-rc/${e}`);if(!r.ok)throw new Error(`Failed to fetch incoming RC: ${r.status}`);return r.json()}})}function Wd(e){let r=(String(e).replace(/\D/g,"")||"0").padStart(7,"0");return `${r.slice(0,-6).replace(/^0+(?=\d)/,"")}.${r.slice(-6)} VESTS`}function or(e,t){return (t?.incoming_delegations??[]).map(r=>({delegator:r.delegator,raw:BigInt(String(r.amount).replace(/\D/g,"")||"0")})).sort((r,n)=>r.raw===n.raw?0:r.raw>n.raw?-1:1).map(({delegator:r,raw:n})=>({delegatee:e,delegator:r,vesting_shares:Wd(n)}))}function _q(e){return reactQuery.queryOptions({queryKey:u.wallet.receivedVestingShares(e),enabled:!!e,queryFn:async()=>or(e,await w().fetchQuery({...nr(e),staleTime:6e4}))})}function Pq(e){return reactQuery.queryOptions({queryKey:["wallet","recurrent-transfers",e],queryFn:()=>y("condenser_api.find_recurrent_transfers",[e]),enabled:!!e})}function me(e){if(typeof e=="string"){let t=e.trim();return t.length>0?t:void 0}}function ue(e){if(typeof e=="number"&&Number.isFinite(e))return e;if(typeof e=="string"){let t=e.trim();if(!t)return;let r=Number.parseFloat(t);if(Number.isFinite(r))return r;let o=t.replace(/,/g,"").match(/[-+]?\d+(?:\.\d+)?/);if(o){let i=Number.parseFloat(o[0]);if(Number.isFinite(i))return i}}}function Yd(e){if(!e||typeof e!="object")return;let t=e;return {name:me(t.name)??"",symbol:me(t.symbol)??"",layer:me(t.layer)??"hive",balance:ue(t.balance)??0,fiatRate:ue(t.fiatRate)??0,currency:me(t.currency)??"usd",precision:ue(t.precision)??3,address:me(t.address),error:me(t.error),pendingRewards:ue(t.pendingRewards),pendingRewardsFiat:ue(t.pendingRewardsFiat),liquid:ue(t.liquid),liquidFiat:ue(t.liquidFiat),savings:ue(t.savings),savingsFiat:ue(t.savingsFiat),staked:ue(t.staked),stakedFiat:ue(t.stakedFiat),iconUrl:me(t.iconUrl),actions:t.actions??[],extraData:t.extraData??[],apr:ue(t.apr)}}function Xd(e){if(!e||typeof e!="object")return [];let t=[e],r=e;r.data&&typeof r.data=="object"&&t.push(r.data),r.result&&typeof r.result=="object"&&t.push(r.result),r.portfolio&&typeof r.portfolio=="object"&&t.push(r.portfolio);for(let n of t){if(Array.isArray(n))return n;if(n&&typeof n=="object")for(let o of ["wallets","tokens","assets","items","portfolio","balances"]){let i=n[o];if(Array.isArray(i))return i}}return []}function Zd(e){if(!e||typeof e!="object")return;let t=e;return me(t.username)??me(t.name)??me(t.account)}function Mi(e,t="usd",r=true){return reactQuery.queryOptions({queryKey:["wallet","portfolio","v2",e,r?"only-enabled":"all",t],enabled:!!e,staleTime:6e4,refetchInterval:12e4,queryFn:async()=>{if(!e)throw new Error("[SDK][Wallet] \u2013 username is required");let n=`${exports.ConfigManager.getValidatedBaseUrl()}/wallet-api/portfolio-v2`,o=await fetch(n,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:JSON.stringify({username:e,onlyEnabled:r,currency:t})});if(!o.ok)throw new Error(`[SDK][Wallet] \u2013 Portfolio request failed (${o.status})`);let i=await o.json(),s=Xd(i).map(a=>Yd(a)).filter(a=>!!a).filter(a=>a.layer!=="spk");if(!s.length)throw new Error("[SDK][Wallet] \u2013 Portfolio payload contained no tokens");return {username:Zd(i)??e,currency:me(i?.fiatCurrency??i?.currency)?.toUpperCase(),wallets:s}}})}function ir(e){return reactQuery.queryOptions({queryKey:["assets","hive","general-info",e],staleTime:6e4,refetchInterval:9e4,queryFn:async()=>{await w().prefetchQuery(xe()),await w().prefetchQuery(M(e));let t=w().getQueryData(xe().queryKey),r=w().getQueryData(M(e).queryKey),n=await y("condenser_api.get_ticker",[]).catch(()=>{}),o=Number.parseFloat(n?.latest??"");if(!r)return {name:"HIVE",title:"Hive",price:Number.isFinite(o)?o:t?t.base/t.quote:0,accountBalance:0};let i=F(r.balance).amount,s=F(r.savings_balance).amount;return {name:"HIVE",title:"Hive",price:Number.isFinite(o)?o:t?t.base/t.quote:0,accountBalance:i+s,parts:[{name:"current",balance:i},{name:"savings",balance:s}]}}})}function Bi(e){return reactQuery.queryOptions({queryKey:["assets","hbd","general-info",e],staleTime:6e4,refetchInterval:9e4,queryFn:async()=>{await w().prefetchQuery(xe()),await w().prefetchQuery(M(e));let t=w().getQueryData(M(e).queryKey),r=w().getQueryData(xe().queryKey),n=1;return t?{name:"HBD",title:"Hive Dollar",price:n,accountBalance:F(t.hbd_balance).amount+F(t?.savings_hbd_balance).amount,apr:((r?.hbdInterestRate??0)/100).toFixed(3),parts:[{name:"current",balance:F(t.hbd_balance).amount},{name:"savings",balance:F(t.savings_hbd_balance).amount}]}:{name:"HBD",title:"Hive Dollar",price:n,accountBalance:0}}})}function nm(e){let c=9.5-(e.headBlock-7e6)/25e4*.01;c<.95&&(c=.95);let p=e.vestingRewardPercent/1e4,l=e.virtualSupply,m=e.totalVestingFund;return (l*c*p/m).toFixed(3)}function Qi(e){return reactQuery.queryOptions({queryKey:["assets","hive-power","general-info",e],staleTime:6e4,refetchInterval:9e4,queryFn:async()=>{await w().prefetchQuery(xe()),await w().prefetchQuery(M(e));let t=w().getQueryData(xe().queryKey),r=w().getQueryData(M(e).queryKey);if(!t||!r)return {name:"HP",title:"Hive Power",price:0,accountBalance:0};let n=await y("condenser_api.get_ticker",[]).catch(()=>{}),o=Number.parseFloat(n?.latest??""),i=Number.isFinite(o)?o:t.base/t.quote,s=F(r.vesting_shares).amount,a=F(r.delegated_vesting_shares).amount,c=F(r.received_vesting_shares).amount,p=F(r.vesting_withdraw_rate).amount,l=Math.max((Number(r.to_withdraw)-Number(r.withdrawn))/1e6,0),m=Fo(r.next_vesting_withdrawal)?0:Math.min(p,l),f=+Ze(s,t.hivePerMVests).toFixed(3),g=+Ze(a,t.hivePerMVests).toFixed(3),_=+Ze(c,t.hivePerMVests).toFixed(3),P=+Ze(l,t.hivePerMVests).toFixed(3),x=+Ze(m,t.hivePerMVests).toFixed(3),C=Math.max(f-P,0),T=Math.max(f-g,0);return {name:"HP",title:"Hive Power",price:i,accountBalance:+C.toFixed(3),apr:nm(t),parts:[{name:"hp_balance",balance:f},{name:"available",balance:+T.toFixed(3)},{name:"outgoing_delegations",balance:g},{name:"incoming_delegations",balance:_},...P>0?[{name:"pending_power_down",balance:+P.toFixed(3)}]:[],...x>0&&x!==P?[{name:"next_power_down",balance:+x.toFixed(3)}]:[]]}}})}var N=oe.operations,Cn={transfers:[N.transfer,N.transfer_to_savings,N.transfer_from_savings,N.cancel_transfer_from_savings,N.recurrent_transfer,N.fill_recurrent_transfer,N.escrow_transfer,N.fill_recurrent_transfer],"market-orders":[N.fill_convert_request,N.fill_order,N.fill_collateralized_convert_request,N.limit_order_create2,N.limit_order_create,N.limit_order_cancel],interests:[N.interest],"stake-operations":[N.return_vesting_delegation,N.withdraw_vesting,N.transfer_to_vesting,N.set_withdraw_vesting_route,N.update_proposal_votes,N.fill_vesting_withdraw,N.account_witness_proxy,N.delegate_vesting_shares],rewards:[N.author_reward,N.curation_reward,N.producer_reward,N.claim_reward_balance,N.comment_benefactor_reward,N.liquidity_reward,N.proposal_pay],"":[]};var Wq=Object.keys(oe.operations);var Ui=oe.operations,Jq=Ui,Yq=Object.entries(Ui).reduce((e,[t,r])=>(e[r]=t,e),{});var Hi=oe.operations;function im(e){return Object.prototype.hasOwnProperty.call(Hi,e)}function xt(e){let t=Array.isArray(e)?e:[e],r=t.includes(""),n=Array.from(new Set(t.filter(a=>a!=null&&a!==""))),o=r||n.length===0?"all":n.map(a=>a.toString()).sort().join("|"),i=new Set;r||n.forEach(a=>{if(a in Cn){Cn[a].forEach(c=>i.add(c));return}im(a)&&i.add(Hi[a]);});let s=um(Array.from(i));return {filterKey:o,filterArgs:s}}function En(e){let t=Array.isArray(e)?e:[e];return new Set(t.filter(r=>r!=null&&r!==""))}function sm(e){if(!e?.length)return;let t=Number(e[0]?.num??0);return Number.isFinite(t)&&t>0?t-1:void 0}function am(e,t){return !Number.isFinite(e)||e<0?t:Math.min(t,e+1)}function um(e){let t=0n,r=0n;return e.forEach(n=>{n<64?t|=1n<<BigInt(n):r|=1n<<BigInt(n-64);}),[t!==0n?t.toString():null,r!==0n?r.toString():null]}function sr(e,t=20,r=[]){let{filterArgs:n,filterKey:o}=xt(r),i=En(r);return reactQuery.infiniteQueryOptions({queryKey:["assets","hive","transactions",e,t,o],initialPageParam:-1,getNextPageParam:sm,queryFn:async({pageParam:s})=>(await y("condenser_api.get_account_history",[e,s,am(Number(s),t),...n])).map(c=>({num:c[0],type:c[1].op[0],timestamp:c[1].timestamp,trx_id:c[1].trx_id,...c[1].op[1]})),select:({pages:s,pageParams:a})=>({pageParams:a,pages:s.map(c=>c.filter(p=>{switch(p.type){case "author_reward":case "comment_benefactor_reward":return F(p.hive_payout).amount>0;case "transfer":case "transfer_to_savings":case "transfer_to_vesting":case "recurrent_transfer":return F(p.amount).symbol==="HIVE";case "transfer_from_savings":case "fill_transfer_from_savings":return F(p.amount).symbol==="HIVE";case "fill_recurrent_transfer":let m=F(p.amount);return ["HIVE"].includes(m.symbol);case "claim_reward_balance":return F(p.reward_hive).amount>0;case "curation_reward":case "cancel_transfer_from_savings":case "fill_order":case "limit_order_create":case "limit_order_cancel":case "fill_convert_request":case "fill_collateralized_convert_request":return true;case "limit_order_create2":return true;default:return i.has(p.type)}}))})})}function uI(e,t=20,r=[]){let{filterKey:n}=xt(r),o=En(r);return reactQuery.infiniteQueryOptions({...sr(e,t,r),queryKey:["assets","hbd","transactions",e,t,n],select:({pages:i,pageParams:s})=>({pageParams:s,pages:i.map(a=>a.filter(c=>{switch(c.type){case "author_reward":case "comment_benefactor_reward":return F(c.hbd_payout).amount>0;case "claim_reward_balance":return F(c.reward_hbd).amount>0;case "transfer":case "transfer_to_savings":case "transfer_to_vesting":case "recurrent_transfer":return F(c.amount).symbol==="HBD";case "transfer_from_savings":case "fill_transfer_from_savings":return F(c.amount).symbol==="HBD";case "fill_recurrent_transfer":let m=F(c.amount);return ["HBD"].includes(m.symbol);case "cancel_transfer_from_savings":case "fill_order":case "limit_order_create":case "limit_order_cancel":case "fill_convert_request":case "fill_collateralized_convert_request":case "proposal_pay":case "interest":return true;case "limit_order_create2":return true;default:return o.has(c.type)}}))})})}function mI(e,t=20,r=[]){let{filterKey:n}=xt(r),o=new Set(Array.isArray(r)?r:[r]),i=o.has("")||o.size===0;return reactQuery.infiniteQueryOptions({...sr(e,t,r),queryKey:["assets","hive-power","transactions",e,t,n],select:({pages:s,pageParams:a})=>({pageParams:a,pages:s.map(c=>c.filter(p=>{switch(p.type){case "author_reward":case "comment_benefactor_reward":return F(p.vesting_payout).amount>0;case "claim_reward_balance":return F(p.reward_vests).amount>0;case "transfer_to_vesting":return true;case "transfer":case "transfer_to_savings":case "recurrent_transfer":return ["VESTS","HP"].includes(F(p.amount).symbol);case "fill_recurrent_transfer":let f=F(p.amount);return ["VESTS","HP"].includes(f.symbol);case "curation_reward":case "withdraw_vesting":case "delegate_vesting_shares":case "fill_vesting_withdraw":case "return_vesting_delegation":case "producer_reward":case "set_withdraw_vesting_route":return true;default:return i||o.has(p.type)}}))})})}function Vi(e){let t=r=>r.toString().padStart(2,"0");return `${e.getFullYear()}-${t(e.getMonth()+1)}-${t(e.getDate())}T${t(e.getHours())}:${t(e.getMinutes())}:${t(e.getSeconds())}`}function Rn(e,t){return new Date(e.getTime()-t*1e3)}function hI(e=86400){return reactQuery.infiniteQueryOptions({queryKey:["assets","hive","metrics",e],queryFn:async({pageParam:[t,r]})=>(await y("condenser_api.get_market_history",[e,Vi(t),Vi(r)])).map(({hive:o,non_hive:i,open:s})=>({close:i.close/o.close,open:i.open/o.open,low:i.low/o.low,high:i.high/o.high,volume:o.volume,time:new Date(s)})),initialPageParam:[Rn(new Date,Math.max(100*e,28800)),new Date],getNextPageParam:(t,r,[n])=>[Rn(n,Math.max(100*e,28800)),Rn(n,e)]})}function vI(e){return reactQuery.queryOptions({queryKey:["assets","hive","withdrawal-routes",e],queryFn:()=>y("condenser_api.get_withdraw_routes",[e,"outgoing"]),enabled:!!e})}function OI(e,t=50){return reactQuery.queryOptions({queryKey:["assets","hive-power","delegates",e],enabled:!!e,queryFn:()=>y("condenser_api.get_vesting_delegations",[e,"",t])})}function TI(e){return reactQuery.queryOptions({queryKey:u.assets.hivePowerDelegatings(e),enabled:!!e,queryFn:async()=>or(e,await w().fetchQuery({...nr(e),staleTime:6e4}))})}function DI(e=500){return reactQuery.queryOptions({queryKey:["market","order-book",e],queryFn:()=>y("condenser_api.get_order_book",[e])})}function BI(){return reactQuery.queryOptions({queryKey:["market","statistics"],queryFn:()=>y("condenser_api.get_ticker",[])})}function VI(e,t,r){let n=o=>o.toISOString().replace(/\.\d{3}Z$/,"");return reactQuery.queryOptions({queryKey:["market","history",e,t.getTime(),r.getTime()],queryFn:()=>y("condenser_api.get_market_history",[e,n(t),n(r)])})}function WI(){return reactQuery.queryOptions({queryKey:["market","hive-hbd-stats"],queryFn:async()=>{let e=await y("condenser_api.get_ticker",[]),t=new Date,r=new Date(t.getTime()-864e5),n=s=>s.toISOString().replace(/\.\d{3}Z$/,""),o=await y("condenser_api.get_market_history",[86400,n(r),n(t)]);return {price:+e.latest,close:o[0]?o[0].non_hive.open/o[0].hive.open:0,high:o[0]?o[0].non_hive.high/o[0].hive.high:0,low:o[0]?o[0].non_hive.low/o[0].hive.low:0,percent:o[0]?100-o[0].non_hive.open/o[0].hive.open*100/+e.latest:0,totalFromAsset:e.hive_volume.split(" ")[0],totalToAsset:e.hbd_volume.split(" ")[0]}}})}function YI(e,t,r,n){return reactQuery.queryOptions({queryKey:["market","data",e,t,r,n],queryFn:async({signal:o})=>{let i=h(),s=`https://api.coingecko.com/api/v3/coins/${e}/market_chart/range?vs_currency=${t}&from=${r}&to=${n}`,a=await i(s,{signal:o});if(!a.ok)throw new Error(`Failed to fetch market data: ${a.status}`);return a.json()}})}function ji(e){return e.toISOString().replace(/\.\d{3}Z$/,"")}function tD(e=1e3,t,r){let n=r??new Date,o=t??new Date(n.getTime()-600*60*1e3);return reactQuery.queryOptions({queryKey:["market","trade-history",e,o.getTime(),n.getTime()],queryFn:()=>y("condenser_api.get_trade_history",[ji(o),ji(n),e])})}function iD(){return reactQuery.queryOptions({queryKey:["market","feed-history"],queryFn:async()=>{try{return await y("condenser_api.get_feed_history",[])}catch(e){throw e}}})}function cD(){return reactQuery.queryOptions({queryKey:["market","current-median-history-price"],queryFn:async()=>{try{return await y("condenser_api.get_current_median_history_price",[])}catch(e){throw e}}})}function mD(e,t,r){return v(["market","limit-order-create"],e,n=>[Xt(e,n.amountToSell,n.minToReceive,n.fillOrKill,n.expiration,n.orderId)],async()=>{t?.adapter?.invalidateQueries&&await t.adapter.invalidateQueries([u.accounts.full(e),u.wallet.openOrders(e),["ecency-wallets","asset-info",e],["wallet","portfolio","v2",e]]);},t,"active",{broadcastMode:r})}function hD(e,t,r){return v(["market","limit-order-cancel"],e,({orderId:n})=>[on(e,n)],async()=>{t?.adapter?.invalidateQueries&&await t.adapter.invalidateQueries([u.accounts.full(e),u.wallet.openOrders(e),["ecency-wallets","asset-info",e],["wallet","portfolio","v2",e]]);},t,"active",{broadcastMode:r})}async function Ot(e){let t=await e.json();if(!e.ok){let r=new Error(`Request failed with status ${e.status}`);throw r.status=e.status,r.data=t,r}return t}async function bD(e,t,r,n){let o=h(),i=`https://api.coingecko.com/api/v3/coins/${e}/market_chart/range?vs_currency=${t}&from=${r}&to=${n}`,s=await o(i);return Ot(s)}async function Li(e){if(e==="hbd")return 1;let t=h(),r=`https://api.coingecko.com/api/v3/simple/price?ids=hive_dollar&vs_currencies=${e}`,n=await t(r);return (await Ot(n)).hive_dollar[e]}async function vD(e,t){let n=await h()(d.privateApiHost+`/private-api/market-data/${e==="hbd"?"usd":e}/${t}`);return Ot(n)}async function PD(){let t=await h()(d.privateApiHost+"/private-api/market-data/latest");return Ot(t)}async function AD(){let t=await h()("https://api.coingecko.com/api/v3/simple/price?ids=hive&vs_currencies=usd");return Ot(t)}var Am={"Content-type":"application/json"};async function xm(e){let t=h(),r=exports.ConfigManager.getValidatedBaseUrl(),n=await t(`${r}/private-api/engine-api`,{method:"POST",body:JSON.stringify(e),headers:Am});if(!n.ok)throw new Error(`[SDK][HiveEngine] \u2013 request failed with ${n.status}`);return (await n.json()).result}async function Ie(e,t){try{return await xm(e)}catch{return t}}async function SD(e,t=50){let r={jsonrpc:"2.0",method:"find",params:{contract:"market",query:{symbol:e},limit:t,offset:0},id:1},[n,o]=await Promise.all([Ie({...r,params:{...r.params,table:"buyBook",indexes:[{index:"price",descending:true}]}},[]),Ie({...r,params:{...r.params,table:"sellBook",indexes:[{index:"price",descending:false}]}},[])]),i=a=>a.sort((c,p)=>{let l=Number(c.price??0);return Number(p.price??0)-l}),s=a=>a.sort((c,p)=>{let l=Number(c.price??0),m=Number(p.price??0);return l-m});return {buy:i(n),sell:s(o)}}async function CD(e,t=50){return Ie({jsonrpc:"2.0",method:"find",params:{contract:"market",table:"tradesHistory",query:{symbol:e},limit:t,offset:0,indexes:[{index:"timestamp",descending:true}]},id:1},[])}async function ED(e,t,r=100){let n={jsonrpc:"2.0",method:"find",params:{contract:"market",query:{symbol:t,account:e},limit:r,offset:0},id:1},[o,i]=await Promise.all([Ie({...n,params:{...n.params,table:"buyBook",indexes:[{index:"timestamp",descending:true}]}},[]),Ie({...n,params:{...n.params,table:"sellBook",indexes:[{index:"timestamp",descending:true}]}},[])]),s=(p,l)=>(Number(p||0)*Number(l||0)).toFixed(8),a=o.map(p=>({id:p.txId,type:"buy",account:p.account,symbol:p.symbol,quantity:p.quantity,price:p.price,total:p.tokensLocked??s(p.quantity,p.price),timestamp:Number(p.timestamp??0)})),c=i.map(p=>({id:p.txId,type:"sell",account:p.account,symbol:p.symbol,quantity:p.quantity,price:p.price,total:s(p.quantity,p.price),timestamp:Number(p.timestamp??0)}));return [...a,...c].sort((p,l)=>l.timestamp-p.timestamp)}async function Om(e,t){if(Array.isArray(e)&&e.length===0)return [];let r=Array.isArray(e)?{symbol:{$in:e}}:e?{symbol:e}:{};return Ie({jsonrpc:"2.0",method:"find",params:{contract:"market",table:"metrics",query:{...r,...t?{account:t}:{}}},id:1},[])}async function st(e,t){return Om(t,e)}async function ar(e){return Ie({jsonrpc:"2.0",method:"find",params:{contract:"tokens",table:"balances",query:{account:e}},id:1},[])}async function ur(e){return Ie({jsonrpc:"2.0",method:"find",params:{contract:"tokens",table:"tokens",query:{symbol:{$in:e}}},id:2},[])}async function $i(e,t,r,n){let o=h(),i=exports.ConfigManager.getValidatedBaseUrl(),s=new URL("/private-api/engine-account-history",i);s.searchParams.set("account",e),s.searchParams.set("symbol",t),s.searchParams.set("limit",r.toString()),s.searchParams.set("offset",n.toString());let a=await o(s.toString(),{method:"GET",headers:{"Content-type":"application/json"}});if(!a.ok)throw new Error(`[SDK][HiveEngine] \u2013 account history failed with ${a.status}`);return await a.json()}async function Wi(e,t="daily"){let r=h(),n=exports.ConfigManager.getValidatedBaseUrl(),o=new URL("/private-api/engine-chart-api",n);o.searchParams.set("symbol",e),o.searchParams.set("interval",t);let i=await r(o.toString(),{headers:{"Content-type":"application/json"}});if(!i.ok)throw new Error(`[SDK][HiveEngine] \u2013 chart failed with ${i.status}`);return await i.json()}async function Gi(e){let t=h(),r=exports.ConfigManager.getValidatedBaseUrl(),n=await t(`${r}/private-api/engine-reward-api/${e}?hive=1`);if(!n.ok)throw new Error(`[SDK][HiveEngine] \u2013 rewards failed with ${n.status}`);return await n.json()}function cr(e){return reactQuery.queryOptions({queryKey:["assets","hive-engine","balances",e],staleTime:6e4,refetchInterval:9e4,queryFn:async()=>ar(e)})}function DD(){return reactQuery.queryOptions({queryKey:["assets","hive-engine","markets"],staleTime:6e4,refetchInterval:9e4,queryFn:async()=>st()})}function zi(e){return reactQuery.queryOptions({queryKey:["assets","hive-engine","metadata-list",e],staleTime:6e4,refetchInterval:9e4,queryFn:async()=>ur(e)})}function HD(e,t,r=20){return reactQuery.infiniteQueryOptions({queryKey:["assets","hive-engine",t,"transactions",e],enabled:!!t&&!!e,initialPageParam:0,queryFn:async({pageParam:n})=>{if(!t||!e)throw new Error("[SDK][HiveEngine] \u2013 token or username missed");return $i(e,t,r,n)},getNextPageParam:(n,o,i)=>(n?.length??0)===r?i+r:void 0,getPreviousPageParam:(n,o,i)=>i>0?i-r:void 0})}function $D(e,t="daily"){return reactQuery.queryOptions({queryKey:["assets","hive-engine",e],staleTime:6e4,refetchInterval:9e4,queryFn:async()=>Wi(e,t)})}function JD(e){return reactQuery.queryOptions({queryKey:["assets","hive-engine","unclaimed",e],staleTime:6e4,refetchInterval:9e4,enabled:!!e,queryFn:async()=>{try{let t=await Gi(e);return Object.values(t).filter(({pending_token:r})=>r>0)}catch{return []}}})}function Ji(e,t){return reactQuery.queryOptions({queryKey:["assets","hive-engine","all-tokens",e,t],queryFn:async()=>st(e,t)})}function at(e,t=void 0){let r={fractionDigits:3,prefix:"",suffix:""};t&&(r={...r,...t});let{fractionDigits:n,prefix:o,suffix:i}=r,s="";o&&(s+=o+" ");let a=Math.abs(parseFloat(e.toString()))<1e-4?0:e,c=typeof a=="string"?parseFloat(a):a;return s+=c.toLocaleString("en-US",{minimumFractionDigits:n,maximumFractionDigits:n,useGrouping:true}),i&&(s+=" "+i),s}var pr=class{symbol;name;icon;precision;stakingEnabled;delegationEnabled;balance;stake;stakedBalance;delegationsIn;delegationsOut;usdValue;constructor(t){this.symbol=t.symbol,this.name=t.name||"",this.icon=t.icon||"",this.precision=t.precision||0,this.stakingEnabled=t.stakingEnabled||false,this.delegationEnabled=t.delegationEnabled||false,this.balance=parseFloat(t.balance)||0,this.stake=parseFloat(t.stake)||0,this.delegationsIn=parseFloat(t.delegationsIn)||0,this.delegationsOut=parseFloat(t.delegationsOut)||0,this.stakedBalance=this.stake+this.delegationsIn-this.delegationsOut,this.usdValue=t.usdValue;}hasDelegations=()=>this.delegationEnabled?this.delegationsIn>0&&this.delegationsOut>0:false;delegations=()=>this.hasDelegations()?`(${at(this.stake,{fractionDigits:this.precision})} + ${at(this.delegationsIn,{fractionDigits:this.precision})} - ${at(this.delegationsOut,{fractionDigits:this.precision})})`:"";staked=()=>this.stakingEnabled?this.stakedBalance<1e-4?this.stakedBalance.toString():at(this.stakedBalance,{fractionDigits:this.precision}):"-";balanced=()=>this.balance<1e-4?this.balance.toString():at(this.balance,{fractionDigits:this.precision})};function aK(e,t,r){return reactQuery.queryOptions({queryKey:["assets","hive-engine","balances-with-usd",e,t,r],queryFn:async()=>{if(!e)throw new Error("[HiveEngine] No account in a balances query");let n=await ar(e),o=await ur(n.map(p=>p.symbol)),i=t?t.base/t.quote:0,s=Array.isArray(r)?r:[],a=n.map(p=>p.symbol).filter(p=>p!=="SWAP.HIVE"&&!s.some(l=>l.symbol===p)),c=[...s,...a.length?await st(void 0,a):[]];return n.map(p=>{let l=o.find(x=>x.symbol===p.symbol),m;if(l?.metadata)try{m=JSON.parse(l.metadata);}catch{m=void 0;}let f=c.find(x=>x.symbol===p.symbol),g=Number(f?.lastPrice??"0"),_=Number(p.balance),P=p.symbol==="SWAP.HIVE"?i*_:g===0?0:Number((g*i*_).toFixed(10));return new pr({symbol:p.symbol,name:l?.name??p.symbol,icon:m?.icon??"",precision:l?.precision??0,stakingEnabled:l?.stakingEnabled??false,delegationEnabled:l?.delegationEnabled??false,balance:p.balance,stake:p.stake,delegationsIn:p.delegationsIn,delegationsOut:p.delegationsOut,usdValue:P})})},enabled:!!e})}function Yi(e,t){return reactQuery.queryOptions({queryKey:["assets","hive-engine",t,"general-info",e],enabled:!!t&&!!e,staleTime:6e4,refetchInterval:9e4,queryFn:async()=>{if(!t||!e)throw new Error("[SDK][HiveEngine] \u2013 token or username missed");let r=w(),n=ir(e);await r.prefetchQuery(n);let o=r.getQueryData(n.queryKey),i=await r.ensureQueryData(zi([t])),s=await r.ensureQueryData(cr(e)),a=await r.ensureQueryData(Ji(void 0,t)),c=i?.find(x=>x.symbol===t),p=s?.find(x=>x.symbol===t),m=+(a?.find(x=>x.symbol===t)?.lastPrice??"0"),f=parseFloat(p?.balance??"0"),g=parseFloat(p?.stake??"0"),_=parseFloat(p?.pendingUnstake??"0"),P=[{name:"liquid",balance:f},{name:"staked",balance:g}];return _>0&&P.push({name:"unstaking",balance:_}),{name:t,title:c?.name??"",price:m===0?0:Number(m*(o?.price??0)),accountBalance:f+g,layer:"ENGINE",parts:P}}})}function St(e,t=0){return reactQuery.queryOptions({queryKey:["points",e,t],queryFn:async()=>{if(!e)throw new Error("Get points query \u2013 username wasn't provided");let r=e.replace("@",""),n=await fetch(d.privateApiHost+"/private-api/points",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({username:r})});if(!n.ok)throw new Error(`Failed to fetch points: ${n.status}`);let o=await n.json(),i=await fetch(d.privateApiHost+"/private-api/point-list",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({username:r,type:t})});if(!i.ok)throw new Error(`Failed to fetch point transactions: ${i.status}`);let s=await i.json();return {points:o.points,uPoints:o.unclaimed_points,transactions:s}},staleTime:3e4,refetchOnMount:true,enabled:!!e})}function Xi(e){return reactQuery.queryOptions({queryKey:["assets","points","general-info",e],staleTime:6e4,refetchInterval:9e4,queryFn:async()=>(await w().prefetchQuery(St(e)),{name:"POINTS",title:"Ecency Points",price:.002,accountBalance:+(w().getQueryData(St(e).queryKey)?.points??0)})})}function OK(e,t){return reactQuery.queryOptions({queryKey:["assets","points","transactions",e,t],queryFn:async()=>(await(await fetch(`${d.privateApiHost}/private-api/point-list`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({username:e,type:t??0})})).json()).map(({created:o,type:i,amount:s,id:a,sender:c,receiver:p,memo:l})=>({created:new Date(o),type:i,results:[{amount:parseFloat(s),asset:"POINTS"}],id:a,from:c??void 0,to:p??void 0,memo:l??void 0}))})}function NK(e,t,r={refetch:false}){let n=w(),o=r.currency??"usd",i=async p=>(r.refetch?await n.fetchQuery(p):await n.prefetchQuery(p),n.getQueryData(p.queryKey)),s=async p=>{if(!p||o==="usd")return p;try{let l=await Li(o);return {...p,price:p.price*l}}catch(l){return console.warn(`Failed to convert price from USD to ${o}:`,l),p}},a=Mi(e,o,true),c=async()=>{try{let l=(await n.fetchQuery(a)).wallets.find(f=>f.symbol.toUpperCase()===t.toUpperCase());if(!l)return;let m=[];if(l.liquid!==void 0&&l.liquid!==null&&m.push({name:"liquid",balance:l.liquid}),l.staked!==void 0&&l.staked!==null&&l.staked>0&&m.push({name:"staked",balance:l.staked}),l.savings!==void 0&&l.savings!==null&&l.savings>0&&m.push({name:"savings",balance:l.savings}),l.extraData&&Array.isArray(l.extraData))for(let f of l.extraData){if(!f||typeof f!="object")continue;let g=f.dataKey,_=f.value;if(typeof _=="string"){let x=_.replace(/,/g,"").match(/[+-]?\s*(\d+(?:\.\d+)?)/);if(x){let C=Math.abs(Number.parseFloat(x[1]));g==="delegated_hive_power"?m.push({name:"outgoing_delegations",balance:C}):g==="received_hive_power"?m.push({name:"incoming_delegations",balance:C}):g==="powering_down_hive_power"&&m.push({name:"pending_power_down",balance:C});}}}return {name:l.symbol,title:l.name,price:l.fiatRate,accountBalance:l.balance,apr:l.apr?.toString(),layer:l.layer,pendingRewards:l.pendingRewards,parts:m}}catch{return}};return reactQuery.queryOptions({queryKey:["ecency-wallets","asset-info",e,t,o],queryFn:async()=>{let p=await c();if(p&&p.price>0)return p;let l;if(t==="HIVE")l=await i(ir(e));else if(t==="HP")l=await i(Qi(e));else if(t==="HBD")l=await i(Bi(e));else if(t==="POINTS")l=await i(Xi(e));else if((await n.ensureQueryData(cr(e))).some(f=>f.symbol===t))l=await i(Yi(e,t));else {if(p)return p;throw new Error(`[SDK][Wallet] \u2013 unrecognized asset "${t}"`)}if(p&&l&&l.price>0){let m=await s(l);return {...p,price:m.price}}return await s(l)}})}var Bm=(C=>(C.Transfer="transfer",C.TransferToSavings="transfer-saving",C.WithdrawFromSavings="withdraw-saving",C.Delegate="delegate",C.PowerUp="power-up",C.PowerDown="power-down",C.WithdrawRoutes="withdraw-routes",C.ClaimInterest="claim-interest",C.Swap="swap",C.Convert="convert",C.Gift="gift",C.Promote="promote",C.Claim="claim",C.Buy="buy",C.Stake="stake",C.Unstake="unstake",C.Undelegate="undelegate",C))(Bm||{});function VK(e,t,r){return v(["wallet","transfer"],e,n=>[Le(e,n.to,n.amount,n.memo)],async(n,o)=>{await S(t?.adapter,r,[u.accounts.full(e),u.accounts.full(o.to),["ecency-wallets","asset-info",e],["wallet","portfolio","v2",e]]);},t,"active",{broadcastMode:r})}function GK(e,t,r){return v(["wallet","transfer-point"],e,n=>[nt(e,n.to,n.amount,n.memo)],async(n,o)=>{await S(t?.adapter,r,[u.accounts.full(e),u.accounts.full(o.to),["ecency-wallets","asset-info",e],["wallet","portfolio","v2",e]]);},t,"active",{broadcastMode:r})}function ZK(e,t,r){return v(["wallet","delegate-vesting-shares"],e,n=>[vt(e,n.delegatee,n.vestingShares)],async(n,o)=>{await S(t?.adapter,r,[u.accounts.full(e),u.accounts.full(o.delegatee),["ecency-wallets","asset-info",e],["wallet","portfolio","v2",e]]);},t,"active",{broadcastMode:r})}function oN(e,t,r){return v(["wallet","set-withdraw-vesting-route"],e,n=>[Pt(e,n.toAccount,n.percent,n.autoVest)],async(n,o)=>{await S(t?.adapter,r,[u.wallet.withdrawRoutes(e),u.accounts.full(e),u.accounts.full(o.toAccount)]);},t,"active",{broadcastMode:r})}function uN(e,t,r){return v(["wallet","transfer-engine-token"],e,n=>{let o=JSON.stringify({contractName:"tokens",contractAction:"transfer",contractPayload:{symbol:n.symbol,to:n.to,quantity:n.quantity,memo:n.memo}});return [["custom_json",{required_auths:[e],required_posting_auths:[],id:"ssc-mainnet-hive",json:o}]]},async(n,o)=>{await S(t?.adapter,r,[u.accounts.full(e),u.accounts.full(o.to),["ecency-wallets","asset-info",e],["wallet","portfolio","v2",e]]);},t,"active",{broadcastMode:r})}function mN(e,t,r){return v(["wallet","transfer-to-savings"],e,n=>[rt(e,n.to,n.amount,n.memo)],async(n,o)=>{await S(t?.adapter,r,[u.accounts.full(e),u.accounts.full(o.to),["ecency-wallets","asset-info",e],["wallet","portfolio","v2",e]]);},t,"active",{broadcastMode:r})}function _N(e,t,r){return v(["wallet","transfer-from-savings"],e,n=>[$e(e,n.to,n.amount,n.memo,n.requestId)],async(n,o)=>{await S(t?.adapter,r,[u.accounts.full(e),u.accounts.full(o.to),["ecency-wallets","asset-info",e],["wallet","portfolio","v2",e]]);},t,"active",{broadcastMode:r})}function AN(e,t,r){return v(["wallet","transfer-to-vesting"],e,n=>[wt(e,n.to,n.amount)],async(n,o)=>{await S(t?.adapter,r,[u.accounts.full(e),u.accounts.full(o.to),["ecency-wallets","asset-info",e],["wallet","portfolio","v2",e]]);},t,"active",{broadcastMode:r})}function EN(e,t,r){return v(["wallet","withdraw-vesting"],e,n=>[bt(e,n.vestingShares)],async()=>{await S(t?.adapter,r,[u.accounts.full(e),["ecency-wallets","asset-info",e],["wallet","portfolio","v2",e]]);},t,"active",{broadcastMode:r})}function qN(e,t,r){return v(["wallet","convert"],e,n=>[n.collateralized?Vr(e,n.amount,n.requestId):At(e,n.amount,n.requestId)],async()=>{await S(t?.adapter,r,[u.accounts.full(e),["ecency-wallets","asset-info",e],["wallet","portfolio","v2",e]]);},t,"active",{broadcastMode:r})}function MN(e,t,r){return v(["wallet","claim-interest"],e,n=>_t(e,n.to,n.amount,n.memo,n.requestId),async()=>{await S(t?.adapter,r,[u.accounts.full(e),["ecency-wallets","asset-info",e],["wallet","portfolio","v2",e]]);},t,"active",{broadcastMode:r})}var Qm=5e3,lr=new Map;function VN(e,t,r){return v(["wallet","claim-rewards"],e,n=>[sn(e,n.rewardHive,n.rewardHbd,n.rewardVests)],()=>{let n=e??"__anonymous__",o=[u.accounts.full(e),["ecency-wallets","asset-info",e],["wallet","portfolio","v2",e],u.assets.hiveGeneralInfo(e),u.assets.hbdGeneralInfo(e),u.assets.hivePowerGeneralInfo(e)],i=lr.get(n);i&&(clearTimeout(i),lr.delete(n));let s=setTimeout(async()=>{try{let a=w(),p=(await Promise.allSettled(o.map(l=>a.invalidateQueries({queryKey:l})))).filter(l=>l.status==="rejected");p.length>0&&console.error("[SDK][Wallet][useClaimRewards] delayed invalidation rejected",{username:e,rejectedCount:p.length,rejected:p});}catch(a){console.error("[SDK][Wallet][useClaimRewards] delayed invalidation failed",{username:e,error:a});}finally{lr.delete(n);}},Qm);lr.set(n,s);},t,"posting",{broadcastMode:r})}function WN(e,t,r){return v(["wallet","delegate-engine-token"],e,n=>{let o=JSON.stringify({contractName:"tokens",contractAction:"delegate",contractPayload:{symbol:n.symbol,to:n.to,quantity:n.quantity}});return [["custom_json",{id:"ssc-mainnet-hive",required_auths:[e],required_posting_auths:[],json:o}]]},async(n,o)=>{await S(t?.adapter,r,[u.accounts.full(e),u.accounts.full(o.to),["ecency-wallets","asset-info",e],["wallet","portfolio","v2",e]]);},t,"active",{broadcastMode:r})}function YN(e,t,r){return v(["wallet","undelegate-engine-token"],e,n=>{let o=JSON.stringify({contractName:"tokens",contractAction:"undelegate",contractPayload:{symbol:n.symbol,from:n.from,quantity:n.quantity}});return [["custom_json",{id:"ssc-mainnet-hive",required_auths:[e],required_posting_auths:[],json:o}]]},async()=>{await S(t?.adapter,r,[u.accounts.full(e),["ecency-wallets","asset-info",e],["wallet","portfolio","v2",e]]);},t,"active",{broadcastMode:r})}function tM(e,t,r){return v(["wallet","stake-engine-token"],e,n=>{let o=JSON.stringify({contractName:"tokens",contractAction:"stake",contractPayload:{symbol:n.symbol,to:n.to,quantity:n.quantity}});return [["custom_json",{id:"ssc-mainnet-hive",required_auths:[e],required_posting_auths:[],json:o}]]},async(n,o)=>{await S(t?.adapter,r,[u.accounts.full(e),u.accounts.full(o.to),["ecency-wallets","asset-info",e],["wallet","portfolio","v2",e]]);},t,"active",{broadcastMode:r})}function iM(e,t,r){return v(["wallet","unstake-engine-token"],e,n=>{let o=JSON.stringify({contractName:"tokens",contractAction:"unstake",contractPayload:{symbol:n.symbol,to:n.to,quantity:n.quantity}});return [["custom_json",{id:"ssc-mainnet-hive",required_auths:[e],required_posting_auths:[],json:o}]]},async()=>{await S(t?.adapter,r,[u.accounts.full(e),["ecency-wallets","asset-info",e],["wallet","portfolio","v2",e]]);},t,"active",{broadcastMode:r})}function cM(e,t,r){return v(["wallet","claim-engine-rewards"],e,n=>{let o=JSON.stringify(n.tokens.map(i=>({symbol:i})));return [["custom_json",{id:"scot_claim_token",required_auths:[],required_posting_auths:[e],json:o}]]},async()=>{await S(t?.adapter,r,[u.accounts.full(e),["ecency-wallets","asset-info",e],["wallet","portfolio","v2",e]]);},t,"posting",{broadcastMode:r})}function mM(e,t,r){return v(["wallet","engine-market-order"],e,n=>{let o,i;n.action==="cancel"?(i="cancel",o={type:n.orderType,id:n.orderId}):(i=n.action,o={symbol:n.symbol,quantity:n.quantity,price:n.price});let s=JSON.stringify({contractName:"market",contractAction:i,contractPayload:o});return [["custom_json",{id:"ssc-mainnet-hive",required_auths:[e],required_posting_auths:[],json:s}]]},async()=>{await S(t?.adapter,r,[u.accounts.full(e),["ecency-wallets","asset-info",e],["wallet","portfolio","v2",e]]);},t,"active",{broadcastMode:r})}function Um(e,t,r){let{from:n,to:o="",amount:i="",memo:s=""}=r,a=r.request_id??Date.now()>>>0;switch(e){case "HIVE":switch(t){case "transfer":return [Le(n,o,i,s)];case "transfer-saving":return [rt(n,o,i,s)];case "withdraw-saving":return [$e(n,o,i,s,a)];case "power-up":return [wt(n,o,i)]}break;case "HBD":switch(t){case "transfer":return [Le(n,o,i,s)];case "transfer-saving":return [rt(n,o,i,s)];case "withdraw-saving":return [$e(n,o,i,s,a)];case "claim-interest":return _t(n,o,i,s,a);case "convert":return [At(n,i,Math.floor(Date.now()/1e3))]}break;case "HP":switch(t){case "power-down":return [bt(n,i)];case "delegate":return [vt(n,o,i)];case "withdraw-routes":return [Pt(r.from_account??n,r.to_account??o,r.percent??0,r.auto_vest??false)]}break;case "POINTS":if(t==="transfer"||t==="gift")return [nt(n,o,i,s)];break}return null}function Hm(e,t,r){let{from:n,to:o="",amount:i=""}=r,s=typeof i=="string"&&i.includes(" ")?i.split(" ")[0]:String(i);switch(t){case "transfer":return [We(n,"transfer",{symbol:e,to:o,quantity:s,memo:r.memo??""})];case "stake":return [We(n,"stake",{symbol:e,to:o,quantity:s})];case "unstake":return [We(n,"unstake",{symbol:e,to:o,quantity:s})];case "delegate":return [We(n,"delegate",{symbol:e,to:o,quantity:s})];case "undelegate":return [We(n,"undelegate",{symbol:e,from:o,quantity:s})];case "claim":return [jr(n,[e])]}return null}function Vm(e){return e==="claim"?"posting":"active"}function wM(e,t,r,n,o){let{mutateAsync:i}=ot.useRecordActivity(e,r);return v(["ecency-wallets",t,r],e,s=>{let a=Um(t,r,s);if(a)return a;let c=Hm(t,r,s);if(c)return c;throw new Error(`[SDK][Wallet] \u2013 no operation builder for asset="${t}" operation="${r}"`)},()=>{i();let s=[];s.push(["ecency-wallets","asset-info",e,t]),t==="HIVE"&&s.push(["ecency-wallets","asset-info",e,"HP"]),s.push(["wallet","portfolio","v2",e]),setTimeout(()=>{s.forEach(a=>{w().invalidateQueries({queryKey:a});});},5e3);},n,Vm(r),{broadcastMode:o})}function AM(e,t,r){return v(["wallet","delegate-rc"],e,({to:n,maxRc:o})=>[Lr(e,n,o)],async(n,o)=>{await S(t?.adapter,r,[u.accounts.full(e),u.accounts.full(o.to),u.resourceCredits.account(e),u.resourceCredits.account(o.to)]);},t,"active",{broadcastMode:r})}function CM(e,t,r){return v(["witnesses","vote"],e,({witness:n,approve:o})=>[Gr(e,n,o)],async()=>{try{t?.adapter?.invalidateQueries&&await t.adapter.invalidateQueries([u.accounts.full(e),u.witnesses.votes(e)]);}catch(n){console.warn("[useWitnessVote] Post-broadcast side-effect failed:",n);}},t,"active",{broadcastMode:r})}function TM(e,t,r){return v(["witnesses","proxy"],e,({proxy:n})=>[zr(e,n)],async()=>{t?.adapter?.invalidateQueries&&await t.adapter.invalidateQueries([u.accounts.full(e),u.witnesses.proxy()]);},t,"active",{broadcastMode:r})}function Lm(e){return {owner:e.witness_name,total_missed:e.missed_blocks,url:e.url,props:{account_creation_fee:`${(e.account_creation_fee/1e3).toFixed(3)} HIVE`,account_subsidy_budget:0,maximum_block_size:e.block_size},hbd_exchange_rate:{base:`${e.price_feed.toFixed(3)} HBD`},available_witness_account_subsidies:0,running_version:e.version,signing_key:e.signing_key,last_hbd_exchange_update:e.feed_updated_at,rank:e.rank,vests:e.vests,voters_num:e.voters_num,voters_num_daily_change:e.voters_num_daily_change,price_feed:e.price_feed,hbd_interest_rate:e.hbd_interest_rate,last_confirmed_block_num:e.last_confirmed_block_num}}function NM(e){return reactQuery.infiniteQueryOptions({queryKey:u.witnesses.list(e),initialPageParam:1,queryFn:async({pageParam:t})=>(await te("hafbe","/witnesses",{"page-size":e,page:t})).witnesses.map(Lm),getNextPageParam:(t,r,n)=>t.length===e?n+1:void 0})}function MM(e,t,r,n="vests",o="desc"){return reactQuery.queryOptions({queryKey:u.witnesses.voters(e,t,r,n,o),queryFn:async({signal:i})=>await te("hafbe","/witnesses/{witness-name}/voters",{"witness-name":e,"page-size":r,page:t,sort:n,direction:o},void 0,void 0,i),enabled:!!e,staleTime:6e4})}function BM(e){return reactQuery.queryOptions({queryKey:u.witnesses.voterCount(e),queryFn:async()=>await te("hafbe","/witnesses/{witness-name}/voters/count",{"witness-name":e}),enabled:!!e,staleTime:6e4})}var $m=(_=>(_[_.CHECKIN=10]="CHECKIN",_[_.LOGIN=20]="LOGIN",_[_.CHECKIN_EXTRA=30]="CHECKIN_EXTRA",_[_.POST=100]="POST",_[_.COMMENT=110]="COMMENT",_[_.VOTE=120]="VOTE",_[_.REBLOG=130]="REBLOG",_[_.DELEGATION=150]="DELEGATION",_[_.REFERRAL=160]="REFERRAL",_[_.COMMUNITY=170]="COMMUNITY",_[_.TRANSFER_SENT=998]="TRANSFER_SENT",_[_.TRANSFER_INCOMING=999]="TRANSFER_INCOMING",_[_.MINTED=991]="MINTED",_[_.BURNED=997]="BURNED",_))($m||{});async function Gm(e,t){if(!e)throw new Error("[SDK][Points][Claim] \u2013 username wasn't provided");if(!t)throw new Error("[SDK][Points][Claim] \u2013 access token wasn't found");let n=await h()(d.privateApiHost+"/private-api/points-claim",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t})}),o=(n.headers.get("content-type")??"").split(";")[0].trim().toLowerCase(),i=await n.text();if(!n.ok){if(n.status===406)try{return JSON.parse(i)}catch{return {message:i,code:n.status}}let s=i&&o.includes("json")?`: ${i.slice(0,200)}`:"";throw new Error(`[SDK][Points][Claim] \u2013 failed with status ${n.status}${s}`)}if(!o.includes("json"))throw new Error(`[SDK][Points][Claim] \u2013 expected JSON but received "${o||"empty"}" response (status ${n.status})`);try{return JSON.parse(i)}catch{throw new Error(`[SDK][Points][Claim] \u2013 malformed JSON response (status ${n.status})`)}}function $M(e,t,r,n){let{mutateAsync:o}=ot.useRecordActivity(e,"points-claimed");return reactQuery.useMutation({mutationFn:()=>Gm(e,t),onError:n,onSuccess:()=>{o(),w().setQueryData(St(e).queryKey,i=>i&&{...i,points:(parseFloat(i.points)+parseFloat(i.uPoints)).toFixed(3),uPoints:"0"}),r?.();}})}var es=/(^|\s)author:([^\s]+)/g,ts=/(^|\s)type:([^\s]+)/g,rs=/(^|\s)category:([^\s]+)/g,ns=/(^|\s)tag:([^\s]+)/g;var is=(n=>(n.ALL="",n.POST="post",n.COMMENT="comment",n))(is||{}),GM=5,zM=100;function ss(e){return e.trim().split(/\s+/)[0]??""}function zm(e){return ss(e).replace(/^@+/,"").toLowerCase()}function Jm(e){return ss(e).replace(/^#+/,"").toLowerCase()}function Ym(e){let t=new Set;return e.split(/[\s,]+/).map(r=>r.replace(/^#+/,"").toLowerCase()).filter(r=>r===""||t.has(r)?false:(t.add(r),true))}function JM({search:e="",author:t="",type:r="",category:n="",tags:o=[]}){let i=e.trim().replace(/\s+/g," "),s=zm(t),a=Jm(n),c=Ym(Array.isArray(o)?o.join(","):o),p=[i];return s&&p.push(`author:${s}`),r&&p.push(`type:${r}`),a&&p.push(`category:${a}`),c.length>0&&p.push(`tag:${c.join(",")}`),{q:p.filter(l=>l!=="").join(" "),search:i,author:s,type:r,category:a,tags:c}}var os=class{query="";search="";author="";type="";category="";tags=[];constructor(t){this.query=t,this.search=t,this.grabAuthor(),this.grabType(),this.grabCategory(),this.grabTags(),this.grabSearch();}grab=t=>{let r=[...this.query.matchAll(t)];return r.length>0?r[0][2].trim():""};grabAuthor=()=>{this.author=this.grab(es);};grabType=()=>{let t=this.grab(ts);Object.values(is).includes(t)&&(this.type=t);};grabCategory=()=>{this.category=this.grab(rs);};grabTags=()=>{let t=new Set;this.tags=[...this.query.matchAll(ns)].flatMap(r=>r[2].split(",")).map(r=>r.trim()).filter(r=>r===""||t.has(r)?false:(t.add(r),true));};grabSearch=()=>{for([es,ts,rs,ns].forEach(t=>{this.search=this.search.replace(t,"$1");});this.search.indexOf(" ")!==-1;)this.search=this.search.replace(" "," ");this.search=this.search.trim();}};async function Se(e,t){let n=await(async()=>{let o;try{o=await e.text();}catch{return}if(o!=="")try{return JSON.parse(o)}catch{return e.ok?void 0:o}})();if(!e.ok){let o=new Error(`Request failed with status ${e.status}`);throw o.status=e.status,o.data=n,o}if(n===void 0||t!==void 0&&!t(n))throw new Error("Response body was empty, invalid JSON, or not the expected shape");return n}function De(e){return typeof e=="object"&&e!==null&&Array.isArray(e.results)}var Zm=reactQuery.isServer?0:3;function Ct(e,t){let{status:r}=t,n=r===408||r===429;return r!==void 0&&r>=400&&r<500&&!n?false:e<Zm}function sB(e,t,r,n,o,i){return reactQuery.queryOptions({queryKey:u.search.results(e,t,r,n,o,i),queryFn:async({signal:s})=>{let a={q:e,sort:t,hide_low:r};n&&(a.since=n),o&&(a.scroll_id=o),i&&(a.votes=i);let c=await fetch(d.privateApiHost+"/search-api/search",{method:"POST",headers:{"Content-Type":"application/json","X-Ecency-Client":d.clientId},body:JSON.stringify(a),signal:Pe(Ae,s)});return Se(c,De)},retry:Ct})}function aB(e,t,r=true){return reactQuery.infiniteQueryOptions({queryKey:u.search.controversialRising(e,t),initialPageParam:{sid:void 0,hasNextPage:true},queryFn:async({pageParam:n,signal:o})=>{if(!n.hasNextPage)return {hits:0,took:0,results:[]};let i,s=new Date;switch(t){case "today":i=new Date(s.getTime()-1440*60*1e3);break;case "week":i=new Date(s.getTime()-10080*60*1e3);break;case "month":i=new Date(s.getTime()-720*60*60*1e3);break;case "year":i=new Date(s.getTime()-365*24*60*60*1e3);break;default:i=void 0;}let a="* type:post",c=e==="rising"?"children":e,p=i?i.toISOString().split(".")[0]:void 0,l="0",m=t==="today"?50:200,f={q:a,sort:c,hide_low:l};p&&(f.since=p),n.sid&&(f.scroll_id=n.sid),(f.votes=m);let g=await fetch(d.privateApiHost+"/search-api/search",{method:"POST",headers:{"Content-Type":"application/json","X-Ecency-Client":d.clientId},body:JSON.stringify(f),signal:Pe(Ae,o)});return Se(g,De)},getNextPageParam:n=>({sid:n?.scroll_id,hasNextPage:n.results.length>0}),enabled:r,retry:Ct})}async function lB(e,t,r,n,o,i,s){let a={q:e,sort:t,hide_low:r};n&&(a.since=n),o&&(a.scroll_id=o),i&&(a.votes=i);let p=await h()(d.privateApiHost+"/search-api/search",{method:"POST",headers:{"Content-Type":"application/json","X-Ecency-Client":d.clientId},body:JSON.stringify(a),signal:Pe(Ae,s)});return Se(p,De)}async function as(e,t,r=Ae){let o=await h()(d.privateApiHost+"/search-api/similar",{method:"POST",headers:{"Content-Type":"application/json","X-Ecency-Client":d.clientId},body:JSON.stringify(e),signal:Pe(r,t)});return Se(o,De)}async function dB(e,t){let n=await h()(d.privateApiHost+"/search-api/search-path",{method:"POST",headers:{"Content-Type":"application/json","X-Ecency-Client":d.clientId},body:JSON.stringify({q:e}),signal:Pe(Ae,t)}),o=await Se(n,Array.isArray);return o?.length>0?o:[e]}var nf=4368*60*60*1e3,of=4,sf=3e3,af=2e3,uf=4e3,hB=2;function cf(e,t){return e.replace(/!\[[^\]]*\]\([^)]*\)/g," ").replace(/\[([^\]]*)\]\([^)]*\)/g,"$1").replace(/<[^>]+>/g," ").replace(/https?:\/\/\S+/g," ").replace(/\s+/g," ").trim().slice(0,t)}function pf(e){let t=5381;for(let r=0;r<e.length;r++)t=(t<<5)+t+e.charCodeAt(r)|0;return (t>>>0).toString(36)}function _B(e){let t=e.title??"",r=e.json_metadata?.tags,n=(Array.isArray(r)?r:[]).filter(s=>typeof s=="string"&&s!==""),o=cf(e.body??"",sf),i=pf(`${t}|${n.join(",")}|${o}`);return reactQuery.queryOptions({queryKey:u.search.similarEntries(e.author,e.permlink,i),queryFn:async({signal:s})=>{let a=new Date(Date.now()-nf).toISOString().slice(0,19),c=await as({author:e.author,permlink:e.permlink,title:t,body:o,tags:n,since:a},s,typeof window>"u"?af:uf),p=[],l=new Set;for(let m of c.results){if(p.length>=of)break;m.permlink!==e.permlink&&(m.tags??[]).indexOf("nsfw")===-1&&(l.has(m.author)||(l.add(m.author),p.push(m)));}return p},staleTime:300*1e3,retry:false})}function xB(e,t=5){let r=e.trim();return reactQuery.queryOptions({queryKey:u.search.account(r,t),queryFn:async()=>{let n=await y("condenser_api.lookup_accounts",[r,t]);return n.length===0?[]:zt(n)},enabled:!!r})}function RB(e,t=10){let r=e.trim();return reactQuery.queryOptions({queryKey:u.search.topics(r,t),queryFn:async()=>(await y("condenser_api.get_trending_tags",[r,t+1])).map(o=>o.name).filter(o=>o!==""&&!o.startsWith("hive-")).slice(0,t),enabled:!!r})}function DB(e,t,r,n,o,i){return reactQuery.infiniteQueryOptions({queryKey:u.search.api(e,t,r,n,o,i),queryFn:async({pageParam:s,signal:a})=>{let c={q:e,sort:t,hide_low:r};n&&(c.since=n),s&&(c.scroll_id=s),o!==void 0&&(c.votes=o),i&&(c.include_nsfw=1);let p=await fetch(d.privateApiHost+"/search-api/search",{method:"POST",headers:{"Content-Type":"application/json","X-Ecency-Client":d.clientId},body:JSON.stringify(c),signal:Pe(Ae,a)});return Se(p,De)},initialPageParam:void 0,getNextPageParam:s=>s?.scroll_id,enabled:!!e,retry:Ct})}function BB(e){return reactQuery.queryOptions({queryKey:["search","path",e],queryFn:async()=>{let t=await fetch(d.privateApiHost+"/search-api/search-path",{method:"POST",headers:{"Content-Type":"application/json","X-Ecency-Client":d.clientId},body:JSON.stringify({q:e})});if(!t.ok)throw new Error(`Search path failed: ${t.status}`);let r=await t.json();return r?.length>0?r:[e]}})}async function yf(e){let r=await h()(d.privateApiHost+"/private-api/support-settings",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:e})});if(!r.ok){let n;try{n=await r.json();}catch{}let o=n?.message??`Failed to fetch support settings: ${r.status}`,i=new Error(o);throw i.status=r.status,i.data=n,i}return await r.json()}function VB(e,t){let r=e?.replace("@","");return reactQuery.queryOptions({queryKey:u.support.settings(r),queryFn:()=>{if(!t)throw new Error("[SDK][Support] missing auth");return yf(t)},enabled:!!r&&!!t})}async function wf(e,t){let n=await h()(d.privateApiHost+"/private-api/support-settings-update",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:e,beneficiary_percent:t.beneficiary_percent,curation_percent:t.curation_percent})});if(!n.ok){let o;try{o=await n.json();}catch{}let i=o?.message??`Failed to update support settings: ${n.status}`,s=new Error(i);throw s.status=n.status,s.data=o,s}return await n.json()}function bf(e,t,r){return e.setQueryData(u.support.settings(t),r),e.invalidateQueries({queryKey:u.support.settings(t)})}function GB(e,t){let r=reactQuery.useQueryClient(),n=e?.replace("@","");return reactQuery.useMutation({mutationKey:["support","settings-update",n],mutationFn:async o=>{if(!n||!t)throw new Error("[SDK][Support] missing auth");return wf(t,o)},onSuccess(o){n&&bf(r,n,o);}})}function XB(e){return reactQuery.queryOptions({queryKey:["promotions","boost-plus-prices"],queryFn:async()=>{if(!e)return [];let t=await fetch(d.privateApiHost+"/private-api/boost-plus-price",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:e})});if(!t.ok)throw new Error(`Failed to fetch boost plus prices: ${t.status}`);return await t.json()},staleTime:1/0,enabled:!!e})}function rQ(e){return reactQuery.queryOptions({queryKey:["promotions","rc-delegation-prices"],queryFn:async()=>{if(!e)return [];let t=await fetch(d.privateApiHost+"/private-api/rc-delegation-price",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:e})});if(!t.ok)throw new Error(`Failed to fetch RC delegation prices: ${t.status}`);return await t.json()},staleTime:1/0,enabled:!!e})}function sQ(e,t){return reactQuery.queryOptions({queryKey:["promotions","rc-delegation-active",e],queryFn:async()=>{if(!t||!e)return null;let r=await fetch(d.privateApiHost+"/private-api/rc-delegation-active",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t,username:e})});if(!r.ok)throw new Error(`Failed to fetch RC delegation active: ${r.status}`);let n=await r.json();return n&&n.expires&&n.user?{user:n.user,expires:new Date(n.expires)}:null},enabled:!!e&&!!t})}function pQ(e){return reactQuery.queryOptions({queryKey:["promotions","promote-price"],queryFn:async()=>{let t=await fetch(d.privateApiHost+"/private-api/promote-price",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:e})});if(!t.ok)throw new Error(`Failed to fetch promote prices: ${t.status}`);return await t.json()},enabled:!!e})}function fQ(e,t){return reactQuery.queryOptions({queryKey:["promotions","boost-plus-accounts",e],queryFn:async()=>{if(!t||!e)return null;let r=await fetch(d.privateApiHost+"/private-api/boosted-plus-account",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:t,account:e})});if(!r.ok)throw new Error(`Failed to fetch boost plus account prices: ${r.status}`);let n=await r.json();return n?{account:n.account,expires:new Date(n.expires)}:null},enabled:!!e&&!!t})}function _Q(e,t,r){return v(["promotions","boost-plus"],e,({account:n,duration:o})=>[ln(e,n,o)],async(n,{account:o})=>{t?.adapter?.invalidateQueries&&await t.adapter.invalidateQueries([u.accounts.full(e),u.promotions.boostPlusAccounts(o)]);},t,"active",{broadcastMode:r})}function PQ(e,t,r){return v(["promotions","rc-delegation"],e,({duration:n})=>[dn(e,n)],async()=>{t?.adapter?.invalidateQueries&&await t.adapter.invalidateQueries([u.accounts.full(e),u.resourceCredits.account(e),["promotions","rc-delegation-active",e]]);},t,"active",{broadcastMode:r})}async function OQ(e){let r=await h()(d.privateApiHost+"/auth-api/hs-token-refresh",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({code:e})});if(!r.ok){let o;try{o=await r.json();}catch{o=void 0;}let i=new Error(`Failed to refresh token: ${r.status}`);throw i.status=r.status,i.data=o,i}return await r.json()}var Cf="https://raw.githubusercontent.com/openhive-network/watchmen/main/output/flat/badactors.txt";function RQ(){return reactQuery.queryOptions({queryKey:u.badActors.list(),queryFn:async({signal:e})=>{let t=await fetch(Cf,{signal:e});if(!t.ok)throw new Error(`Failed to fetch bad actors list: ${t.status}`);let r=await t.text();return new Set(r.split(`
|
|
2
|
-
`).filter(Boolean))},staleTime:1440*60*1e3,gcTime:1/0})}var TQ=1.1,Ef=(r=>(r.NUMBER_OF_VOTES="number_of_votes",r.TOKENS="tokens",r))(Ef||{});function FQ(e){return e?e.map((t,r)=>({choice_num:r+1,choice_text:t,votes:{total_votes:0,hive_hp:0,hive_proxied_hp:0,hive_hp_incl_proxied:0}})):[]}function Tf(e){let t=e.poll_choices??[],r=e.poll_voters??[],n=e.poll_stats,o=t.map(a=>{let c=a.votes;return {choice_num:a.choice_num??0,choice_text:a.choice_text??"",votes:c?{total_votes:c.total_votes??0,hive_hp:c.hive_hp,hive_proxied_hp:c.hive_proxied_hp,hive_hp_incl_proxied:c.hive_hp_incl_proxied??null}:void 0}}),i=r.map(a=>({name:a.name??"",choices:a.choices??[],hive_hp:a.hive_hp,hive_proxied_hp:a.hive_proxied_hp,hive_hp_incl_proxied:a.hive_hp_incl_proxied})),s=n?{total_voting_accounts_num:n.total_voting_accounts_num??0,total_hive_hp:n.total_hive_hp,total_hive_proxied_hp:n.total_hive_proxied_hp,total_hive_hp_incl_proxied:n.total_hive_hp_incl_proxied??null}:void 0;return {author:e.author??"",permlink:e.permlink??"",question:e.question??"",poll_choices:o,poll_voters:i,poll_stats:s,poll_trx_id:e.poll_trx_id??"",status:e.status??"",end_time:e.end_time??"",preferred_interpretation:e.preferred_interpretation??"number_of_votes",max_choices_voted:e.max_choices_voted??1,filter_account_age_days:e.filter_account_age_days??0,protocol_version:e.protocol_version??0,created:e.created??"",post_title:e.post_title??"",post_body:e.post_body??"",parent_permlink:e.parent_permlink??"",tags:e.tags??[],image:e.image??[],token:e.token,community_membership:e.community_membership,allow_vote_changes:e.allow_vote_changes,ui_hide_res_until_voted:e.ui_hide_res_until_voted??false,platform:e.platform}}function NQ(e,t){return reactQuery.queryOptions({queryKey:u.polls.details(e??"",t??""),enabled:!!e&&!!t,gcTime:reactQuery.isServer?Ro:1800*1e3,queryFn:async()=>{if(!e||!t)throw new Error("[SDK][Polls] \u2013 missing author or permlink");let r=h(),n=`${d.pollsApiHost}/rpc/poll?author=eq.${encodeURIComponent(e)}&permlink=eq.${encodeURIComponent(t)}`,o=await r(n);if(!o.ok)throw new Error(`[SDK][Polls] \u2013 fetch failed: ${o.status}`);let i=await o.json();if(!Array.isArray(i)||!i[0])throw new Error("[SDK][Polls] \u2013 no poll data found");return Tf(i[0])}})}function QQ(e,t,r){return v(u.polls.vote(),e??"",({pollTrxId:n,choices:o})=>{if(!e)throw new Error("[SDK][Polls] Cannot vote without an authenticated username");return [["custom_json",{id:"polls",required_auths:[],required_posting_auths:[e],json:JSON.stringify({poll:n,action:"vote",choices:o})}]]},void 0,t,"posting",{broadcastMode:r??"async"})}var Ff=-1e10,qf=5,If=30;var us=e=>Math.abs(e)>0&&Math.abs(e)<=100;function cs(e){if(typeof e=="number"&&us(e)||typeof e=="string"&&(e=Number(e),us(e)))return Math.floor(e);if(e===0)return 25;let t=false;e<0&&(t=true);let r=Math.log10(Math.abs(e));return r=Math.max(r-9,0),r<0&&(r=0),t&&(r*=-1),r=r*9+25,Math.floor(r)}var Df=["ecency.com","ecency.app","hive.blog","hive.io","hiveblocks.com","peakd.com","snapie.io","hivesuite.app","leofinance.io","inleo.io","3speak.tv","d.buzz","waivio.com"],Kf=["imgur.com","images.hive.blog","files.peakd.com","i.ecency.com","images.ecency.com","steemitimages.com","cdn.steemitimages.com","media.giphy.com"],Nf=/\.(jpe?g|png|gif|webp|svg|bmp|avif)(\?|#|$)/i,Mf=/(?:https?:)?\/\/[^\s)<>"'\]]+/gi,Bf=/[.,;:!?'"]+$/;function Qf(e){let t=/^(?:https?:)?\/\/([^/?#]+)/i.exec(e);return t?t[1].toLowerCase().replace(/^www\./,""):""}function Uf(e){let t=e.replace(Bf,"");if(Nf.test(t))return false;let r=Qf(t);if(!r.includes("."))return false;let n=o=>r===o||r.endsWith("."+o);return !(Df.some(n)||Kf.some(n))}function ps(e){if(!e)return false;let t=e.match(Mf);return t?t.some(Uf):false}var Hf=(n=>(n.MOD_MUTED="mod_muted",n.DOWNVOTED="downvoted",n.LOW_TRUST="low_trust",n))(Hf||{});function Vf(e){return e?.stats?.total_votes??e?.active_votes?.length??0}function jf(e,t){return (e??0)<-1e10&&t>=5}function Lf(e){let t=e?.author_reputation;return t==null?false:cs(t)<30&&ps(e?.body)}function WQ(e,t){return !!e&&!!t?.includes(e)}function GQ(e){return e?e.stats?.gray||e.stats?.hide?"mod_muted":jf(e.net_rshares,Vf(e))?"downvoted":Lf(e)?"low_trust":null:null}var ut=class extends Error{constructor(r,n,o){super(r);this.status=n;this.data=o;}status;data},Et=class extends ut{constructor(r,n,o,i,s){super(r,n,s);this.code=o;this.taken=i;}code;taken};function Ke(e){return `${d.newsletterHost??d.privateApiHost}/api/newsletter${e}`}async function ze(e){let t=await e.json().catch(()=>{});if(!e.ok)throw new ut(t?.error||`Request failed (${e.status})`,e.status,t);if(!t||typeof t!="object")throw new ut(`Unexpected response (${e.status})`,e.status);return t}async function ls(e,t){let n=await h()(Ke("/subscribe"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...e,...t?{code:t}:{}})});return ze(n)}async function ds(e){let r=await h()(Ke("/subscriptions"),{headers:{"X-HS-Token":e}});return (await ze(r)).subscriptions??[]}async function ms(e,t){let n=await h()(Ke(`/subscriptions/${encodeURIComponent(e)}`),{method:"DELETE",headers:{"X-HS-Token":t}});await ze(n);}async function fs(e,t){let n=await h()(Ke("/unsubscribe-all"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:e,code:t})});await ze(n);}async function gs(e,t,r){let o=await h()(Ke(`/sender?type=${e}&target=${encodeURIComponent(t)}`),{headers:{"X-HS-Token":r}});return ze(o)}async function ys(e,t,r){let o=await h()(Ke(`/issues?type=${e}&target=${encodeURIComponent(t)}`),{headers:{"X-HS-Token":r}});return (await ze(o)).issues??[]}async function hs(e,t,r,n=20){let i=await h()(Ke(`/posts?type=${e}&target=${encodeURIComponent(t)}&limit=${n}`),{headers:{"X-HS-Token":r}});return (await ze(i)).posts??[]}async function _s(e,t,r){let o=await h()(Ke(e),{method:"POST",headers:{"Content-Type":"application/json","X-HS-Token":r},body:JSON.stringify(t)}),i=await o.json().catch(()=>{});if(!o.ok)throw new Et(i?.error||`Request failed (${o.status})`,o.status,i?.code,i?.taken,i);if(!i||typeof i!="object")throw new Et(`Unexpected response (${o.status})`,o.status);return i}function ws(e,t){return _s("/send/preview",e,t)}function bs(e,t){return _s("/send",e,t)}function nU(e,t){let r=e?.replace("@","");return reactQuery.queryOptions({queryKey:u.newsletter.subscriptions(r),enabled:!!r&&!!t,queryFn:async()=>{if(!t)throw new Error("[SDK][Newsletter] \u2013 missing auth");return ds(t)},staleTime:6e4,retry:false})}function uU(e,t,r,n){let o=r?.replace("@","");return reactQuery.queryOptions({queryKey:u.newsletter.sender(e,t,o),enabled:!!o&&!!n&&!!t,queryFn:async()=>{if(!n)throw new Error("[SDK][Newsletter] \u2013 missing auth");return gs(e,t,n)},staleTime:5*6e4})}function mU(e,t,r,n){let o=r?.replace("@","");return reactQuery.queryOptions({queryKey:u.newsletter.issues(e,t,o),enabled:!!o&&!!n&&!!t,queryFn:async()=>{if(!n)throw new Error("[SDK][Newsletter] \u2013 missing auth");return ys(e,t,n)},staleTime:6e4})}function _U(e,t,r,n,o=20){let i=r?.replace("@","");return reactQuery.queryOptions({queryKey:u.newsletter.posts(e,t,i,o),enabled:!!i&&!!n&&!!t,queryFn:async()=>{if(!n)throw new Error("[SDK][Newsletter] \u2013 missing auth");return hs(e,t,n,o)},staleTime:6e4})}function AU(e,t){let r=reactQuery.useQueryClient(),n=e?.replace("@","");return reactQuery.useMutation({mutationKey:["newsletter","subscribe",n],mutationFn:o=>ls(o,t),onSuccess(){n&&r.invalidateQueries({queryKey:u.newsletter.subscriptions(n)});}})}function EU(e,t){let r=reactQuery.useQueryClient(),n=e?.replace("@","");return reactQuery.useMutation({mutationKey:["newsletter","leave",n],mutationFn:async o=>{if(!n||!t)throw new Error("[SDK][Newsletter] \u2013 missing auth");return ms(o,t)},onSuccess(o,i){r.setQueryData(u.newsletter.subscriptions(n),s=>(s??[]).filter(a=>a.id!==i));}})}function qU(e,t){let r=reactQuery.useQueryClient(),n=e?.replace("@","");return reactQuery.useMutation({mutationKey:["newsletter","unsubscribe-all",n],mutationFn:async o=>{if(!n||!t)throw new Error("[SDK][Newsletter] \u2013 missing auth");return fs(o,t)},onSuccess(o,i){r.setQueryData(u.newsletter.subscriptions(n),s=>(s??[]).filter(a=>a.email.toLowerCase()!==i.toLowerCase()));}})}function MU(e,t){let r=e?.replace("@","");return reactQuery.useMutation({mutationKey:["newsletter","send-preview",r],mutationFn:async n=>{if(!r||!t)throw new Error("[SDK][Newsletter] \u2013 missing auth");return ws(n,t)}})}function BU(e,t){let r=reactQuery.useQueryClient(),n=e?.replace("@","");return reactQuery.useMutation({mutationKey:["newsletter","send",n],mutationFn:async o=>{if(!n||!t)throw new Error("[SDK][Newsletter] \u2013 missing auth");return bs(o,t)},onSuccess(o,i){r.invalidateQueries({queryKey:u.newsletter.issues(i.type,i.target,n)}),r.invalidateQueries({queryKey:u.newsletter.sender(i.type,i.target,n)});}})}var UU=["quality","underrated","newcomer","other"],HU=["queue","newest","unique","random"],VU=["queue","latest","new-authors","recommended","curated","all","excluded"],jU=["all","ecency","peakd","other"],LU=["full","half","eighth","locked","all"],$U=["reviewed","snoozed","flagged","noted"],WU=["plagiarism","ai_slop","recycled","image_only","tag_abuse","farming","nsfw_untagged","other"];function zU(e){return !!e?.spaminator||!!e?.abuser}function JU(e){return !!e?.ignorelist||!!e?.abuser||!!e?.blocked_tag||!!e?.patch_body||!!e?.deleted}function ng(e,t){let r=`@${e}/${t}`;return d.dmcaPatterns.includes(r)||d.dmcaPatternRegexes.some(n=>n.test(r))}function og(e){if(!e||!ng(e.author,e.permlink))return e;let t={...e,title:""};return "summary"in t&&(t.summary=null),"first_image"in t&&(t.first_image=null),t}function dr(e){let t=false,r=e.pages.map(n=>{let o=false,i=n.items.map(s=>{let a=og(s);return a!==s&&(o=true),a});return o?(t=true,{...n,items:i}):n});return t?{...e,pages:r}:e}var ig="/private-api/curation-desk",Je=class extends Error{status;data;constructor(t,r,n){super(t),this.name="CurationApiError",this.status=r,this.data=n;}};function Rt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var mr=e=>Rt(e)&&Array.isArray(e.items),sg=e=>Rt(e)&&Array.isArray(e.curators),ag=e=>Rt(e)&&Array.isArray(e.recommenders),ug=e=>Rt(e)&&"vp"in e,cg=["window_days","recommended","curated","dismissed","withdrawn","precision"],pg=e=>Rt(e)&&cg.every(t=>typeof e[t]=="number")&&typeof e.trusted=="boolean";async function Ps(e,t,r){if(!e.ok){let i;try{i=await e.json();}catch{i=void 0;}throw new Je(`Failed to ${t}: ${e.status}`,e.status,i)}let n=e.headers?.get?.("content-type")??"";if(n&&!n.includes("json"))throw new Je(`Unexpected response for ${t}`,e.status);let o;try{o=await e.json();}catch{throw new Je(`Unexpected response for ${t}`,e.status)}if(r&&!r(o))throw new Je(`Unexpected response for ${t}`,e.status);return o}var lg=/^hive-\d{5,6}$/,dg=/^[a-z0-9]{8,16}$/,mg=new Set(["hide_curated","hide_reviewed","hide_snoozed"]),As=["sort","seed","view","app","community","window","rep_min","rep_max","min_words","max_words","has_images","new_authors","recommended","flagged","hide_curated","hide_reviewed","hide_snoozed","limit"];function fr(e={}){let t=e,r={};for(let n of As){let o=t[n];if(o==null||o==="")continue;if(typeof o=="boolean"){mg.has(n)?o||(r[n]="0"):o&&(r[n]="1");continue}if(typeof o=="number"){if(!Number.isFinite(o))continue;r[n]=String(Math.trunc(o));continue}let i=String(o);(n==="app"||n==="window")&&i==="all"||n==="community"&&!lg.test(i)||n==="seed"&&!dg.test(i)||(r[n]=i);}return r.sort!=="random"&&delete r.seed,r}function fg(e,t){let r=new URLSearchParams;for(let o of As)e[o]!==void 0&&r.set(o,e[o]);t&&r.set("cursor",t);let n=r.toString();return n?`?${n}`:""}function xs(e){return `${d.privateApiHost}${ig}${e}`}var gg=new Set(["localhost","127.0.0.1","::1","[::1]"]);function yg(e){let t=d.privateApiHost||"",r=typeof window<"u"?window.location?.href:void 0,n;try{n=r?new URL(t,r):new URL(t);}catch{return}if(n.protocol!=="https:"&&!(n.protocol==="http:"&&gg.has(n.hostname)))throw new Je(`Refusing to ${e} over an insecure connection`,0)}async function ct(e,t,r,n){let i=await h()(xs(e),{method:"GET",signal:r});return Ps(i,t,n)}async function Ne(e,t,r,n,o,i){if(!t)throw new Error("[SDK][Curation] missing auth");yg(n);let a=await h()(xs(e),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...r,code:t}),redirect:"error",signal:o});return Ps(a,n,i)}function Os(e,t,r){return ct(`/feed${fg(fr(e),t)}`,"fetch curation feed",r,mr)}function Ss(e){return ct("/status","fetch curation status",e,ug)}function Cs(e){return ct("/roster","fetch curation roster",e,sg)}function Es(e,t,r){let n=new URLSearchParams;e.sort&&n.set("sort",e.sort),e.limit&&n.set("limit",String(e.limit)),t&&n.set("cursor",t);let o=n.toString();return ct(`/recommendations${o?`?${o}`:""}`,"fetch curation recommendations",r,mr)}function Rs(e,t){return ct(`/recommender/${encodeURIComponent(e)}`,"fetch recommender stats",t,pg)}function ks(e,t,r){return ct(`/post/${encodeURIComponent(e)}/${encodeURIComponent(t)}`,"fetch curation post",r,ag)}function tH(e,t,r,n){let o={...fr(t)};return r&&(o.cursor=r),Ne("/roster-feed",e,o,"fetch roster feed",n,mr)}function rH(e,t,r){return Ne("/tick",e,{since:t.since,need:t.need.slice(0,100),visible:t.visible.slice(0,100)},"tick",r)}function nH(e,t){let{author:r,permlink:n,state:o,reason:i,note:s,snooze_until:a}=t;if(!r||!n||!o)throw new Error("[SDK][Curation] mark needs author, permlink and state");let c={author:r,permlink:n,state:o};return i&&(c.reason=i),s&&(c.note=s),a&&(c.snooze_until=a),Ne("/mark",e,c,"set mark")}function oH(e,t){if(!t.author||!t.permlink)throw new Error("[SDK][Curation] mark-clear needs author and permlink");return Ne("/mark-clear",e,{author:t.author,permlink:t.permlink},"clear mark")}function iH(e,t={},r){let n={};return t.state&&(n.state=t.state),t.cursor&&(n.cursor=t.cursor),t.limit&&(n.limit=t.limit),Ne("/marks",e,n,"fetch my marks",r,mr)}function sH(e,t){if(!Number.isFinite(t.post_id)||!t.action)throw new Error("[SDK][Curation] cursor needs post_id and action");let r={post_id:t.post_id,action:t.action};return t.reason&&(r.reason=t.reason),Ne("/cursor",e,r,"move cursor")}var hg=/^[0-9a-f]{40}$/;function aH(e,t){let{author:r,permlink:n,trx_id:o,ua_class:i}=t;if(!r||!n||!i)throw new Error("[SDK][Curation] recommend-meta needs author, permlink and ua_class");let s={author:r,permlink:n,ua_class:i};return typeof o=="string"&&hg.test(o)&&(s.trx_id=o),Ne("/recommend-meta",e,s,"send recommendation meta")}function uH(e,t){if(!t.author||!t.permlink||!t.action)throw new Error("[SDK][Curation] recommendation-dismiss needs author, permlink and action");return Ne("/recommendation-dismiss",e,{author:t.author,permlink:t.permlink,action:t.action},"dismiss recommendation")}var wg=25,bg=1e4;function kn(e,t){let r=new Set,n=false,o=e.pages.map(i=>{let s=i.items.filter(a=>{let c=t(a);return r.has(c)?(n=true,false):(r.add(c),true)});return s.length===i.items.length?i:{...i,items:s}});return n?{...e,pages:o}:e}function vg(e){return kn(e,t=>t.post_id)}function Pg(e){return dr(vg(e))}function fH(e={}){let t=e.limit??wg,r=fr({...e,limit:t});return reactQuery.infiniteQueryOptions({queryKey:u.curation.feed(r),initialPageParam:void 0,queryFn:({pageParam:n,signal:o})=>Os({...e,limit:t},n,o),getNextPageParam:n=>!n||n.items.length<t?void 0:n.items[n.items.length-1]?._cursor??n.next_cursor??void 0,select:Pg,staleTime:bg})}function wH(){return reactQuery.queryOptions({queryKey:u.curation.status(),queryFn:({signal:e})=>Ss(e),staleTime:15e3})}function xH(){return reactQuery.queryOptions({queryKey:u.curation.roster(),queryFn:({signal:e})=>Cs(e),staleTime:6e5})}var Sg=25;function TH(e={}){let t=e.sort??"unique",r=e.limit??Sg,n={sort:t,limit:String(r)};return reactQuery.infiniteQueryOptions({queryKey:u.curation.recommendations(n),initialPageParam:void 0,queryFn:({pageParam:o,signal:i})=>Es({sort:t,limit:r},o,i),getNextPageParam:o=>!o||o.items.length<r?void 0:o.items[o.items.length-1]?._cursor??o.next_cursor??void 0,select:o=>dr(kn(o,i=>`${i.author}/${i.permlink}`)),staleTime:1e4})}var Eg=/^[a-z0-9.-]{3,16}$/,Rg=/^[a-z0-9-]{1,255}$/;function KH(e,t){let r=Eg.test(e)&&Rg.test(t);return reactQuery.queryOptions({queryKey:u.curation.post(e,t),queryFn:({signal:n})=>{if(!r)throw new Error("[SDK][Curation] invalid author or permlink");return ks(e,t,n)},enabled:r,staleTime:15e3})}var Tg=/^[a-z0-9.-]{3,16}$/;function UH(e){let t=Tg.test(e??"");return reactQuery.queryOptions({queryKey:u.curation.recommender(e),queryFn:({signal:r})=>{if(!t)throw new Error("[SDK][Curation] invalid recommender username");return Rs(e,r)},enabled:t,staleTime:6e4})}function $H(e){if(!e||typeof e!="object")return null;let t=e,r=typeof t.tx_id=="string"?t.tx_id:typeof t.id=="string"?t.id:null;return r&&/^[0-9a-f]{40}$/.test(r)?r:null}function WH(e,t,r){return v(u.curation.recommend(),e,n=>[n.withdraw?gn(e,n.author,n.permlink):fn(e,n.author,n.permlink,n.reason)],async(n,o)=>{await S(t?.adapter,r,[u.curation.post(o.author,o.permlink),[...u.curation._recommendationsPrefix]]);},t,"posting",{broadcastMode:r})}/**
|
|
2
|
+
`).filter(Boolean))},staleTime:1440*60*1e3,gcTime:1/0})}var TQ=1.1,Ef=(r=>(r.NUMBER_OF_VOTES="number_of_votes",r.TOKENS="tokens",r))(Ef||{});function FQ(e){return e?e.map((t,r)=>({choice_num:r+1,choice_text:t,votes:{total_votes:0,hive_hp:0,hive_proxied_hp:0,hive_hp_incl_proxied:0}})):[]}function Tf(e){let t=e.poll_choices??[],r=e.poll_voters??[],n=e.poll_stats,o=t.map(a=>{let c=a.votes;return {choice_num:a.choice_num??0,choice_text:a.choice_text??"",votes:c?{total_votes:c.total_votes??0,hive_hp:c.hive_hp,hive_proxied_hp:c.hive_proxied_hp,hive_hp_incl_proxied:c.hive_hp_incl_proxied??null}:void 0}}),i=r.map(a=>({name:a.name??"",choices:a.choices??[],hive_hp:a.hive_hp,hive_proxied_hp:a.hive_proxied_hp,hive_hp_incl_proxied:a.hive_hp_incl_proxied})),s=n?{total_voting_accounts_num:n.total_voting_accounts_num??0,total_hive_hp:n.total_hive_hp,total_hive_proxied_hp:n.total_hive_proxied_hp,total_hive_hp_incl_proxied:n.total_hive_hp_incl_proxied??null}:void 0;return {author:e.author??"",permlink:e.permlink??"",question:e.question??"",poll_choices:o,poll_voters:i,poll_stats:s,poll_trx_id:e.poll_trx_id??"",status:e.status??"",end_time:e.end_time??"",preferred_interpretation:e.preferred_interpretation??"number_of_votes",max_choices_voted:e.max_choices_voted??1,filter_account_age_days:e.filter_account_age_days??0,protocol_version:e.protocol_version??0,created:e.created??"",post_title:e.post_title??"",post_body:e.post_body??"",parent_permlink:e.parent_permlink??"",tags:e.tags??[],image:e.image??[],token:e.token,community_membership:e.community_membership,allow_vote_changes:e.allow_vote_changes,ui_hide_res_until_voted:e.ui_hide_res_until_voted??false,platform:e.platform}}function NQ(e,t){return reactQuery.queryOptions({queryKey:u.polls.details(e??"",t??""),enabled:!!e&&!!t,gcTime:reactQuery.isServer?Ro:1800*1e3,queryFn:async()=>{if(!e||!t)throw new Error("[SDK][Polls] \u2013 missing author or permlink");let r=h(),n=`${d.pollsApiHost}/rpc/poll?author=eq.${encodeURIComponent(e)}&permlink=eq.${encodeURIComponent(t)}`,o=await r(n);if(!o.ok)throw new Error(`[SDK][Polls] \u2013 fetch failed: ${o.status}`);let i=await o.json();if(!Array.isArray(i)||!i[0])throw new Error("[SDK][Polls] \u2013 no poll data found");return Tf(i[0])}})}function QQ(e,t,r){return v(u.polls.vote(),e??"",({pollTrxId:n,choices:o})=>{if(!e)throw new Error("[SDK][Polls] Cannot vote without an authenticated username");return [["custom_json",{id:"polls",required_auths:[],required_posting_auths:[e],json:JSON.stringify({poll:n,action:"vote",choices:o})}]]},void 0,t,"posting",{broadcastMode:r??"async"})}var Ff=-1e10,qf=5,If=30;var us=e=>Math.abs(e)>0&&Math.abs(e)<=100;function cs(e){if(typeof e=="number"&&us(e)||typeof e=="string"&&(e=Number(e),us(e)))return Math.floor(e);if(e===0)return 25;let t=false;e<0&&(t=true);let r=Math.log10(Math.abs(e));return r=Math.max(r-9,0),r<0&&(r=0),t&&(r*=-1),r=r*9+25,Math.floor(r)}var Df=["ecency.com","ecency.app","hive.blog","hive.io","hiveblocks.com","peakd.com","snapie.io","hivesuite.app","leofinance.io","inleo.io","3speak.tv","d.buzz","waivio.com"],Kf=["imgur.com","images.hive.blog","files.peakd.com","i.ecency.com","images.ecency.com","steemitimages.com","cdn.steemitimages.com","media.giphy.com"],Nf=/\.(jpe?g|png|gif|webp|svg|bmp|avif)(\?|#|$)/i,Mf=/(?:https?:)?\/\/[^\s)<>"'\]]+/gi,Bf=/[.,;:!?'"]+$/;function Qf(e){let t=/^(?:https?:)?\/\/([^/?#]+)/i.exec(e);return t?t[1].toLowerCase().replace(/^www\./,""):""}function Uf(e){let t=e.replace(Bf,"");if(Nf.test(t))return false;let r=Qf(t);if(!r.includes("."))return false;let n=o=>r===o||r.endsWith("."+o);return !(Df.some(n)||Kf.some(n))}function ps(e){if(!e)return false;let t=e.match(Mf);return t?t.some(Uf):false}var Hf=(n=>(n.MOD_MUTED="mod_muted",n.DOWNVOTED="downvoted",n.LOW_TRUST="low_trust",n))(Hf||{});function Vf(e){return e?.stats?.total_votes??e?.active_votes?.length??0}function jf(e,t){return (e??0)<-1e10&&t>=5}function Lf(e){let t=e?.author_reputation;return t==null?false:cs(t)<30&&ps(e?.body)}function WQ(e,t){return !!e&&!!t?.includes(e)}function GQ(e){return e?e.stats?.gray||e.stats?.hide?"mod_muted":jf(e.net_rshares,Vf(e))?"downvoted":Lf(e)?"low_trust":null:null}var ut=class extends Error{constructor(r,n,o){super(r);this.status=n;this.data=o;}status;data},Et=class extends ut{constructor(r,n,o,i,s){super(r,n,s);this.code=o;this.taken=i;}code;taken};function Ke(e){return `${d.newsletterHost??d.privateApiHost}/api/newsletter${e}`}async function ze(e){let t=await e.json().catch(()=>{});if(!e.ok)throw new ut(t?.error||`Request failed (${e.status})`,e.status,t);if(!t||typeof t!="object")throw new ut(`Unexpected response (${e.status})`,e.status);return t}async function ls(e,t){let n=await h()(Ke("/subscribe"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...e,...t?{code:t}:{}})});return ze(n)}async function ds(e){let r=await h()(Ke("/subscriptions"),{headers:{"X-HS-Token":e}});return (await ze(r)).subscriptions??[]}async function ms(e,t){let n=await h()(Ke(`/subscriptions/${encodeURIComponent(e)}`),{method:"DELETE",headers:{"X-HS-Token":t}});await ze(n);}async function fs(e,t){let n=await h()(Ke("/unsubscribe-all"),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:e,code:t})});await ze(n);}async function gs(e,t,r){let o=await h()(Ke(`/sender?type=${e}&target=${encodeURIComponent(t)}`),{headers:{"X-HS-Token":r}});return ze(o)}async function ys(e,t,r){let o=await h()(Ke(`/issues?type=${e}&target=${encodeURIComponent(t)}`),{headers:{"X-HS-Token":r}});return (await ze(o)).issues??[]}async function hs(e,t,r,n=20){let i=await h()(Ke(`/posts?type=${e}&target=${encodeURIComponent(t)}&limit=${n}`),{headers:{"X-HS-Token":r}});return (await ze(i)).posts??[]}async function _s(e,t,r){let o=await h()(Ke(e),{method:"POST",headers:{"Content-Type":"application/json","X-HS-Token":r},body:JSON.stringify(t)}),i=await o.json().catch(()=>{});if(!o.ok)throw new Et(i?.error||`Request failed (${o.status})`,o.status,i?.code,i?.taken,i);if(!i||typeof i!="object")throw new Et(`Unexpected response (${o.status})`,o.status);return i}function ws(e,t){return _s("/send/preview",e,t)}function bs(e,t){return _s("/send",e,t)}function nU(e,t){let r=e?.replace("@","");return reactQuery.queryOptions({queryKey:u.newsletter.subscriptions(r),enabled:!!r&&!!t,queryFn:async()=>{if(!t)throw new Error("[SDK][Newsletter] \u2013 missing auth");return ds(t)},staleTime:6e4,retry:false})}function uU(e,t,r,n){let o=r?.replace("@","");return reactQuery.queryOptions({queryKey:u.newsletter.sender(e,t,o),enabled:!!o&&!!n&&!!t,queryFn:async()=>{if(!n)throw new Error("[SDK][Newsletter] \u2013 missing auth");return gs(e,t,n)},staleTime:5*6e4})}function mU(e,t,r,n){let o=r?.replace("@","");return reactQuery.queryOptions({queryKey:u.newsletter.issues(e,t,o),enabled:!!o&&!!n&&!!t,queryFn:async()=>{if(!n)throw new Error("[SDK][Newsletter] \u2013 missing auth");return ys(e,t,n)},staleTime:6e4})}function _U(e,t,r,n,o=20){let i=r?.replace("@","");return reactQuery.queryOptions({queryKey:u.newsletter.posts(e,t,i,o),enabled:!!i&&!!n&&!!t,queryFn:async()=>{if(!n)throw new Error("[SDK][Newsletter] \u2013 missing auth");return hs(e,t,n,o)},staleTime:6e4})}function AU(e,t){let r=reactQuery.useQueryClient(),n=e?.replace("@","");return reactQuery.useMutation({mutationKey:["newsletter","subscribe",n],mutationFn:o=>ls(o,t),onSuccess(){n&&r.invalidateQueries({queryKey:u.newsletter.subscriptions(n)});}})}function EU(e,t){let r=reactQuery.useQueryClient(),n=e?.replace("@","");return reactQuery.useMutation({mutationKey:["newsletter","leave",n],mutationFn:async o=>{if(!n||!t)throw new Error("[SDK][Newsletter] \u2013 missing auth");return ms(o,t)},onSuccess(o,i){r.setQueryData(u.newsletter.subscriptions(n),s=>(s??[]).filter(a=>a.id!==i));}})}function qU(e,t){let r=reactQuery.useQueryClient(),n=e?.replace("@","");return reactQuery.useMutation({mutationKey:["newsletter","unsubscribe-all",n],mutationFn:async o=>{if(!n||!t)throw new Error("[SDK][Newsletter] \u2013 missing auth");return fs(o,t)},onSuccess(o,i){r.setQueryData(u.newsletter.subscriptions(n),s=>(s??[]).filter(a=>a.email.toLowerCase()!==i.toLowerCase()));}})}function MU(e,t){let r=e?.replace("@","");return reactQuery.useMutation({mutationKey:["newsletter","send-preview",r],mutationFn:async n=>{if(!r||!t)throw new Error("[SDK][Newsletter] \u2013 missing auth");return ws(n,t)}})}function BU(e,t){let r=reactQuery.useQueryClient(),n=e?.replace("@","");return reactQuery.useMutation({mutationKey:["newsletter","send",n],mutationFn:async o=>{if(!n||!t)throw new Error("[SDK][Newsletter] \u2013 missing auth");return bs(o,t)},onSuccess(o,i){r.invalidateQueries({queryKey:u.newsletter.issues(i.type,i.target,n)}),r.invalidateQueries({queryKey:u.newsletter.sender(i.type,i.target,n)});}})}var UU=["quality","underrated","newcomer","other"],HU=["queue","newest","unique","random"],VU=["queue","latest","new-authors","recommended","curated","all","excluded"],jU=["all","ecency","peakd","other"],LU=["12h","full","half","eighth","locked","all"],$U=["reviewed","snoozed","flagged","noted"],WU=["plagiarism","ai_slop","recycled","image_only","tag_abuse","farming","nsfw_untagged","other"];function zU(e){return !!e?.spaminator||!!e?.abuser}function JU(e){return !!e?.ignorelist||!!e?.abuser||!!e?.blocked_tag||!!e?.patch_body||!!e?.deleted}function ng(e,t){let r=`@${e}/${t}`;return d.dmcaPatterns.includes(r)||d.dmcaPatternRegexes.some(n=>n.test(r))}function og(e){if(!e||!ng(e.author,e.permlink))return e;let t={...e,title:""};return "summary"in t&&(t.summary=null),"first_image"in t&&(t.first_image=null),t}function dr(e){let t=false,r=e.pages.map(n=>{let o=false,i=n.items.map(s=>{let a=og(s);return a!==s&&(o=true),a});return o?(t=true,{...n,items:i}):n});return t?{...e,pages:r}:e}var ig="/private-api/curation-desk",Je=class extends Error{status;data;constructor(t,r,n){super(t),this.name="CurationApiError",this.status=r,this.data=n;}};function Rt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}var mr=e=>Rt(e)&&Array.isArray(e.items),sg=e=>Rt(e)&&Array.isArray(e.curators),ag=e=>Rt(e)&&Array.isArray(e.recommenders),ug=e=>Rt(e)&&"vp"in e,cg=["window_days","recommended","curated","dismissed","withdrawn","precision"],pg=e=>Rt(e)&&cg.every(t=>typeof e[t]=="number")&&typeof e.trusted=="boolean";async function Ps(e,t,r){if(!e.ok){let i;try{i=await e.json();}catch{i=void 0;}throw new Je(`Failed to ${t}: ${e.status}`,e.status,i)}let n=e.headers?.get?.("content-type")??"";if(n&&!n.includes("json"))throw new Je(`Unexpected response for ${t}`,e.status);let o;try{o=await e.json();}catch{throw new Je(`Unexpected response for ${t}`,e.status)}if(r&&!r(o))throw new Je(`Unexpected response for ${t}`,e.status);return o}var lg=/^hive-\d{5,6}$/,dg=/^[a-z0-9]{8,16}$/,mg=new Set(["hide_curated","hide_reviewed","hide_snoozed"]),As=["sort","seed","view","app","community","window","rep_min","rep_max","min_words","max_words","has_images","new_authors","recommended","flagged","hide_curated","hide_reviewed","hide_snoozed","limit"];function fr(e={}){let t=e,r={};for(let n of As){let o=t[n];if(o==null||o==="")continue;if(typeof o=="boolean"){mg.has(n)?o||(r[n]="0"):o&&(r[n]="1");continue}if(typeof o=="number"){if(!Number.isFinite(o))continue;r[n]=String(Math.trunc(o));continue}let i=String(o);(n==="app"||n==="window")&&i==="all"||n==="community"&&!lg.test(i)||n==="seed"&&!dg.test(i)||(r[n]=i);}return r.sort!=="random"&&delete r.seed,r}function fg(e,t){let r=new URLSearchParams;for(let o of As)e[o]!==void 0&&r.set(o,e[o]);t&&r.set("cursor",t);let n=r.toString();return n?`?${n}`:""}function xs(e){return `${d.privateApiHost}${ig}${e}`}var gg=new Set(["localhost","127.0.0.1","::1","[::1]"]);function yg(e){let t=d.privateApiHost||"",r=typeof window<"u"?window.location?.href:void 0,n;try{n=r?new URL(t,r):new URL(t);}catch{return}if(n.protocol!=="https:"&&!(n.protocol==="http:"&&gg.has(n.hostname)))throw new Je(`Refusing to ${e} over an insecure connection`,0)}async function ct(e,t,r,n){let i=await h()(xs(e),{method:"GET",signal:r});return Ps(i,t,n)}async function Ne(e,t,r,n,o,i){if(!t)throw new Error("[SDK][Curation] missing auth");yg(n);let a=await h()(xs(e),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({...r,code:t}),redirect:"error",signal:o});return Ps(a,n,i)}function Os(e,t,r){return ct(`/feed${fg(fr(e),t)}`,"fetch curation feed",r,mr)}function Ss(e){return ct("/status","fetch curation status",e,ug)}function Cs(e){return ct("/roster","fetch curation roster",e,sg)}function Es(e,t,r){let n=new URLSearchParams;e.sort&&n.set("sort",e.sort),e.limit&&n.set("limit",String(e.limit)),t&&n.set("cursor",t);let o=n.toString();return ct(`/recommendations${o?`?${o}`:""}`,"fetch curation recommendations",r,mr)}function Rs(e,t){return ct(`/recommender/${encodeURIComponent(e)}`,"fetch recommender stats",t,pg)}function ks(e,t,r){return ct(`/post/${encodeURIComponent(e)}/${encodeURIComponent(t)}`,"fetch curation post",r,ag)}function tH(e,t,r,n){let o={...fr(t)};return r&&(o.cursor=r),Ne("/roster-feed",e,o,"fetch roster feed",n,mr)}function rH(e,t,r){return Ne("/tick",e,{since:t.since,need:t.need.slice(0,100),visible:t.visible.slice(0,100)},"tick",r)}function nH(e,t){let{author:r,permlink:n,state:o,reason:i,note:s,snooze_until:a,lane:c}=t;if(!r||!n||!o)throw new Error("[SDK][Curation] mark needs author, permlink and state");let p={author:r,permlink:n,state:o};return i&&(p.reason=i),s&&(p.note=s),a&&(p.snooze_until=a),c&&(p.lane=c),Ne("/mark",e,p,"set mark")}function oH(e,t){if(!t.author||!t.permlink)throw new Error("[SDK][Curation] mark-clear needs author and permlink");return Ne("/mark-clear",e,{author:t.author,permlink:t.permlink},"clear mark")}function iH(e,t={},r){let n={};return t.state&&(n.state=t.state),t.cursor&&(n.cursor=t.cursor),t.limit&&(n.limit=t.limit),Ne("/marks",e,n,"fetch my marks",r,mr)}function sH(e,t){if(!Number.isFinite(t.post_id)||!t.action)throw new Error("[SDK][Curation] cursor needs post_id and action");let r={post_id:t.post_id,action:t.action};return t.reason&&(r.reason=t.reason),Ne("/cursor",e,r,"move cursor")}var hg=/^[0-9a-f]{40}$/;function aH(e,t){let{author:r,permlink:n,trx_id:o,ua_class:i}=t;if(!r||!n||!i)throw new Error("[SDK][Curation] recommend-meta needs author, permlink and ua_class");let s={author:r,permlink:n,ua_class:i};return typeof o=="string"&&hg.test(o)&&(s.trx_id=o),Ne("/recommend-meta",e,s,"send recommendation meta")}function uH(e,t){if(!t.author||!t.permlink||!t.action)throw new Error("[SDK][Curation] recommendation-dismiss needs author, permlink and action");return Ne("/recommendation-dismiss",e,{author:t.author,permlink:t.permlink,action:t.action},"dismiss recommendation")}var wg=25,bg=1e4;function kn(e,t){let r=new Set,n=false,o=e.pages.map(i=>{let s=i.items.filter(a=>{let c=t(a);return r.has(c)?(n=true,false):(r.add(c),true)});return s.length===i.items.length?i:{...i,items:s}});return n?{...e,pages:o}:e}function vg(e){return kn(e,t=>t.post_id)}function Pg(e){return dr(vg(e))}function fH(e={}){let t=e.limit??wg,r=fr({...e,limit:t});return reactQuery.infiniteQueryOptions({queryKey:u.curation.feed(r),initialPageParam:void 0,queryFn:({pageParam:n,signal:o})=>Os({...e,limit:t},n,o),getNextPageParam:n=>!n||n.items.length<t?void 0:n.items[n.items.length-1]?._cursor??n.next_cursor??void 0,select:Pg,staleTime:bg})}function wH(){return reactQuery.queryOptions({queryKey:u.curation.status(),queryFn:({signal:e})=>Ss(e),staleTime:15e3})}function xH(){return reactQuery.queryOptions({queryKey:u.curation.roster(),queryFn:({signal:e})=>Cs(e),staleTime:6e5})}var Sg=25;function TH(e={}){let t=e.sort??"unique",r=e.limit??Sg,n={sort:t,limit:String(r)};return reactQuery.infiniteQueryOptions({queryKey:u.curation.recommendations(n),initialPageParam:void 0,queryFn:({pageParam:o,signal:i})=>Es({sort:t,limit:r},o,i),getNextPageParam:o=>!o||o.items.length<r?void 0:o.items[o.items.length-1]?._cursor??o.next_cursor??void 0,select:o=>dr(kn(o,i=>`${i.author}/${i.permlink}`)),staleTime:1e4})}var Eg=/^[a-z0-9.-]{3,16}$/,Rg=/^[a-z0-9-]{1,255}$/;function KH(e,t){let r=Eg.test(e)&&Rg.test(t);return reactQuery.queryOptions({queryKey:u.curation.post(e,t),queryFn:({signal:n})=>{if(!r)throw new Error("[SDK][Curation] invalid author or permlink");return ks(e,t,n)},enabled:r,staleTime:15e3})}var Tg=/^[a-z0-9.-]{3,16}$/;function UH(e){let t=Tg.test(e??"");return reactQuery.queryOptions({queryKey:u.curation.recommender(e),queryFn:({signal:r})=>{if(!t)throw new Error("[SDK][Curation] invalid recommender username");return Rs(e,r)},enabled:t,staleTime:6e4})}function $H(e){if(!e||typeof e!="object")return null;let t=e,r=typeof t.tx_id=="string"?t.tx_id:typeof t.id=="string"?t.id:null;return r&&/^[0-9a-f]{40}$/.test(r)?r:null}function WH(e,t,r){return v(u.curation.recommend(),e,n=>[n.withdraw?gn(e,n.author,n.permlink):fn(e,n.author,n.permlink,n.reason)],async(n,o)=>{await S(t?.adapter,r,[u.curation.post(o.author,o.permlink),[...u.curation._recommendationsPrefix]]);},t,"posting",{broadcastMode:r})}/**
|
|
3
3
|
* @license bytebuffer.ts (c) 2015 Daniel Wirtz <dcode@dcode.io>
|
|
4
4
|
* Backing buffer: ArrayBuffer, Accessor: DataView
|
|
5
5
|
* Released under the Apache License, Version 2.0
|