@junobuild/core-standalone 0.1.10 → 0.1.11

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.
@@ -12,7 +12,7 @@ import{A as Zt,B as It,C as Me,D,E as Dt,F as $e,a as Nr,b as Wi,c as Ve,d as Gi
12
12
  Request ID: ${S(r)}
13
13
  `)}throw new Error("unreachable")}var en=({IDL:t})=>{let e=t.Variant({mainnet:t.Null,testnet:t.Null}),r=t.Text,n=t.Record({network:e,address:r,min_confirmations:t.Opt(t.Nat32)}),i=t.Nat64,o=i,s=t.Nat32,a=t.Record({start_height:s,end_height:t.Opt(s),network:e}),l=t.Vec(t.Nat8),u=t.Record({tip_height:s,block_headers:t.Vec(l)}),p=t.Record({network:e}),d=t.Nat64,f=t.Vec(d),y=t.Record({network:e,filter:t.Opt(t.Variant({page:t.Vec(t.Nat8),min_confirmations:t.Nat32})),address:r}),x=t.Vec(t.Nat8),v=t.Record({txid:t.Vec(t.Nat8),vout:t.Nat32}),k=t.Record({height:t.Nat32,value:i,outpoint:v}),g=t.Record({next_page:t.Opt(t.Vec(t.Nat8)),tip_height:s,tip_block_hash:x,utxos:t.Vec(k)}),E=t.Record({transaction:t.Vec(t.Nat8),network:e}),m=t.Principal,P=t.Record({canister_id:m,num_requested_changes:t.Opt(t.Nat64)}),O=t.Variant({from_user:t.Record({user_id:t.Principal}),from_canister:t.Record({canister_version:t.Opt(t.Nat64),canister_id:t.Principal})}),V=t.Vec(t.Nat8),dt=t.Variant({creation:t.Record({controllers:t.Vec(t.Principal)}),code_deployment:t.Record({mode:t.Variant({reinstall:t.Null,upgrade:t.Null,install:t.Null}),module_hash:t.Vec(t.Nat8)}),load_snapshot:t.Record({canister_version:t.Nat64,taken_at_timestamp:t.Nat64,snapshot_id:V}),controllers_change:t.Record({controllers:t.Vec(t.Principal)}),code_uninstall:t.Null}),pt=t.Record({timestamp_nanos:t.Nat64,canister_version:t.Nat64,origin:O,details:dt}),K=t.Record({controllers:t.Vec(t.Principal),module_hash:t.Opt(t.Vec(t.Nat8)),recent_changes:t.Vec(pt),total_num_changes:t.Nat64}),B=t.Record({canister_id:m}),j=t.Variant({controllers:t.Null,public:t.Null,allowed_viewers:t.Vec(t.Principal)}),it=t.Record({freezing_threshold:t.Nat,controllers:t.Vec(t.Principal),reserved_cycles_limit:t.Nat,log_visibility:j,wasm_memory_limit:t.Nat,memory_allocation:t.Nat,compute_allocation:t.Nat}),Z=t.Record({status:t.Variant({stopped:t.Null,stopping:t.Null,running:t.Null}),memory_size:t.Nat,cycles:t.Nat,settings:it,query_stats:t.Record({response_payload_bytes_total:t.Nat,num_instructions_total:t.Nat,num_calls_total:t.Nat,request_payload_bytes_total:t.Nat}),idle_cycles_burned_per_day:t.Nat,module_hash:t.Opt(t.Vec(t.Nat8)),reserved_cycles:t.Nat}),ot=t.Record({canister_id:m}),z=t.Record({freezing_threshold:t.Opt(t.Nat),controllers:t.Opt(t.Vec(t.Principal)),reserved_cycles_limit:t.Opt(t.Nat),log_visibility:t.Opt(j),wasm_memory_limit:t.Opt(t.Nat),memory_allocation:t.Opt(t.Nat),compute_allocation:t.Opt(t.Nat)}),Re=t.Record({settings:t.Opt(z),sender_canister_version:t.Opt(t.Nat64)}),St=t.Record({canister_id:m}),Oe=t.Record({canister_id:m}),Se=t.Record({canister_id:m,snapshot_id:V}),ve=t.Record({canister_id:m}),Wt=t.Variant({secp256k1:t.Null}),Pe=t.Record({key_id:t.Record({name:t.Text,curve:Wt}),canister_id:t.Opt(m),derivation_path:t.Vec(t.Vec(t.Nat8))}),Be=t.Record({public_key:t.Vec(t.Nat8),chain_code:t.Vec(t.Nat8)}),Ue=t.Record({canister_id:m}),ke=t.Record({idx:t.Nat64,timestamp_nanos:t.Nat64,content:t.Vec(t.Nat8)}),Fe=t.Record({canister_log_records:t.Vec(ke)}),Gt=t.Record({value:t.Text,name:t.Text}),vt=t.Record({status:t.Nat,body:t.Vec(t.Nat8),headers:t.Vec(Gt)}),Yt=t.Record({url:t.Text,method:t.Variant({get:t.Null,head:t.Null,post:t.Null}),max_response_bytes:t.Opt(t.Nat64),body:t.Opt(t.Vec(t.Nat8)),transform:t.Opt(t.Record({function:t.Func([t.Record({context:t.Vec(t.Nat8),response:vt})],[vt],["query"]),context:t.Vec(t.Nat8)})),headers:t.Vec(Gt)}),zt=t.Variant({reinstall:t.Null,upgrade:t.Opt(t.Record({wasm_memory_persistence:t.Opt(t.Variant({keep:t.Null,replace:t.Null})),skip_pre_upgrade:t.Opt(t.Bool)})),install:t.Null}),Pt=t.Record({hash:t.Vec(t.Nat8)}),Ce=t.Record({arg:t.Vec(t.Nat8),wasm_module_hash:t.Vec(t.Nat8),mode:zt,chunk_hashes_list:t.Vec(Pt),target_canister:m,store_canister:t.Opt(m),sender_canister_version:t.Opt(t.Nat64)}),fi=t.Vec(t.Nat8),mi=t.Record({arg:t.Vec(t.Nat8),wasm_module:fi,mode:zt,canister_id:m,sender_canister_version:t.Opt(t.Nat64)}),hi=t.Record({canister_id:m}),Er=t.Record({id:V,total_size:t.Nat64,taken_at_timestamp:t.Nat64}),yi=t.Vec(Er),_i=t.Record({canister_id:m,sender_canister_version:t.Opt(t.Nat64),snapshot_id:V}),gi=t.Record({start_at_timestamp_nanos:t.Nat64,subnet_id:t.Principal}),wi=t.Record({num_block_failures_total:t.Nat64,node_id:t.Principal,num_blocks_proposed_total:t.Nat64}),xi=t.Vec(t.Record({timestamp_nanos:t.Nat64,node_metrics:t.Vec(wi)})),bi=t.Record({settings:t.Opt(z),specified_id:t.Opt(m),amount:t.Opt(t.Nat),sender_canister_version:t.Opt(t.Nat64)}),Ai=t.Record({canister_id:m}),Ei=t.Record({canister_id:m,amount:t.Nat}),Ti=t.Vec(t.Nat8),Tr=t.Variant({ed25519:t.Null,bip340secp256k1:t.Null}),Ni=t.Record({key_id:t.Record({algorithm:Tr,name:t.Text}),canister_id:t.Opt(m),derivation_path:t.Vec(t.Vec(t.Nat8))}),Ri=t.Record({public_key:t.Vec(t.Nat8),chain_code:t.Vec(t.Nat8)}),Oi=t.Record({key_id:t.Record({name:t.Text,curve:Wt}),derivation_path:t.Vec(t.Vec(t.Nat8)),message_hash:t.Vec(t.Nat8)}),Si=t.Record({signature:t.Vec(t.Nat8)}),vi=t.Variant({bip341:t.Record({merkle_root_hash:t.Vec(t.Nat8)})}),Pi=t.Record({aux:t.Opt(vi),key_id:t.Record({algorithm:Tr,name:t.Text}),derivation_path:t.Vec(t.Vec(t.Nat8)),message:t.Vec(t.Nat8)}),Bi=t.Record({signature:t.Vec(t.Nat8)}),Ui=t.Record({canister_id:m}),ki=t.Record({canister_id:m}),Fi=t.Record({canister_id:m}),Ci=t.Vec(Pt),Vi=t.Record({subnet_id:t.Principal}),Ki=t.Record({replica_version:t.Text}),ji=t.Record({replace_snapshot:t.Opt(V),canister_id:m}),Mi=Er,$i=t.Record({canister_id:m,sender_canister_version:t.Opt(t.Nat64)}),qi=t.Record({canister_id:t.Principal,settings:z,sender_canister_version:t.Opt(t.Nat64)}),Hi=t.Record({chunk:t.Vec(t.Nat8),canister_id:t.Principal}),Ji=Pt;return t.Service({bitcoin_get_balance:t.Func([n],[o],[]),bitcoin_get_block_headers:t.Func([a],[u],[]),bitcoin_get_current_fee_percentiles:t.Func([p],[f],[]),bitcoin_get_utxos:t.Func([y],[g],[]),bitcoin_send_transaction:t.Func([E],[],[]),canister_info:t.Func([P],[K],[]),canister_status:t.Func([B],[Z],[]),clear_chunk_store:t.Func([ot],[],[]),create_canister:t.Func([Re],[St],[]),delete_canister:t.Func([Oe],[],[]),delete_canister_snapshot:t.Func([Se],[],[]),deposit_cycles:t.Func([ve],[],[]),ecdsa_public_key:t.Func([Pe],[Be],[]),fetch_canister_logs:t.Func([Ue],[Fe],["query"]),http_request:t.Func([Yt],[vt],[]),install_chunked_code:t.Func([Ce],[],[]),install_code:t.Func([mi],[],[]),list_canister_snapshots:t.Func([hi],[yi],[]),load_canister_snapshot:t.Func([_i],[],[]),node_metrics_history:t.Func([gi],[xi],[]),provisional_create_canister_with_cycles:t.Func([bi],[Ai],[]),provisional_top_up_canister:t.Func([Ei],[],[]),raw_rand:t.Func([],[Ti],[]),schnorr_public_key:t.Func([Ni],[Ri],[]),sign_with_ecdsa:t.Func([Oi],[Si],[]),sign_with_schnorr:t.Func([Pi],[Bi],[]),start_canister:t.Func([Ui],[],[]),stop_canister:t.Func([ki],[],[]),stored_chunks:t.Func([Fi],[Ci],[]),subnet_info:t.Func([Vi],[Ki],[]),take_canister_snapshot:t.Func([ji],[Mi],[]),uninstall_code:t.Func([$i],[],[]),update_settings:t.Func([qi],[],[]),upload_chunk:t.Func([Hi],[Ji],[])})};var ie=class extends Xt{constructor(e,r,n,i){super(["Call failed:",` Canister: ${e.toText()}`,` Method: ${r} (${n})`,...Object.getOwnPropertyNames(i).map(o=>` "${o}": ${JSON.stringify(i[o])}`)].join(`
14
14
  `)),this.canisterId=e,this.methodName=r,this.type=n,this.props=i}},Ie=class extends ie{constructor(e,r,n){var i;super(e,r,"query",{Status:n.status,Code:(i=Rr[n.reject_code])!==null&&i!==void 0?i:`Unknown Code "${n.reject_code}"`,Message:n.reject_message}),this.result=n}},oe=class extends ie{constructor(e,r,n,i,o,s,a){super(e,r,"update",Object.assign({"Request ID":S(n)},i.body?Object.assign(Object.assign({},a?{"Error code":a}:{}),{"Reject code":String(o),"Reject message":s}):{"HTTP status code":i.status.toString(),"HTTP status text":i.statusText})),this.requestId=n,this.response=i,this.reject_code=o,this.reject_message=s,this.error_code=a}},C=Symbol.for("ic-agent-metadata"),tt=class t{constructor(e){this[C]=Object.freeze(e)}static agentOf(e){return e[C].config.agent}static interfaceOf(e){return e[C].service}static canisterIdOf(e){return _.from(e[C].config.canisterId)}static async install(e,r){let n=e.mode===void 0?{install:null}:e.mode,i=e.arg?[...new Uint8Array(e.arg)]:[],o=[...new Uint8Array(e.module)],s=typeof r.canisterId=="string"?_.fromText(r.canisterId):r.canisterId;await rn(r).install_code({mode:n,arg:i,wasm_module:o,canister_id:s,sender_canister_version:[]})}static async createCanister(e,r){function n(o){return[{controllers:o.controllers?[o.controllers]:[],compute_allocation:o.compute_allocation?[o.compute_allocation]:[],freezing_threshold:o.freezing_threshold?[o.freezing_threshold]:[],memory_allocation:o.memory_allocation?[o.memory_allocation]:[],reserved_cycles_limit:[],log_visibility:[],wasm_memory_limit:[]}]}let{canister_id:i}=await rn(e||{}).provisional_create_canister_with_cycles({amount:[],settings:n(r||{}),specified_id:[],sender_canister_version:[]});return i}static async createAndInstallCanister(e,r,n){let i=await this.createCanister(n);return await this.install(Object.assign({},r),Object.assign(Object.assign({},n),{canisterId:i})),this.createActor(e,Object.assign(Object.assign({},n),{canisterId:i}))}static createActorClass(e,r){let n=e({IDL:Bt});class i extends t{constructor(s){if(!s.canisterId)throw new Xt(`Canister ID is required, but received ${typeof s.canisterId} instead. If you are using automatically generated declarations, this may be because your application is not setting the canister ID in process.env correctly.`);let a=typeof s.canisterId=="string"?_.fromText(s.canisterId):s.canisterId;super({config:Object.assign(Object.assign(Object.assign({},on),s),{canisterId:a}),service:n});for(let[l,u]of n._fields)r?.httpDetails&&u.annotations.push(De),r?.certificate&&u.annotations.push(sn),this[l]=Bo(this,l,u,s.blsVerify)}}return i}static createActor(e,r){if(!r.canisterId)throw new Xt(`Canister ID is required, but received ${typeof r.canisterId} instead. If you are using automatically generated declarations, this may be because your application is not setting the canister ID in process.env correctly.`);return new(this.createActorClass(e))(r)}static createActorWithHttpDetails(e,r){return new(this.createActorClass(e,{httpDetails:!0}))(r)}static createActorWithExtendedDetails(e,r,n={httpDetails:!0,certificate:!0}){return new(this.createActorClass(e,n))(r)}};function wt(t,e){let r=Bt.decode(t,nn.Buffer.from(e));switch(r.length){case 0:return;case 1:return r[0];default:return r}}var on={pollingStrategyFactory:ne.defaultStrategy},De="http-details",sn="certificate";function Bo(t,e,r,n){let i;r.annotations.includes("query")||r.annotations.includes("composite_query")?i=async(s,...a)=>{var l,u;s=Object.assign(Object.assign({},s),(u=(l=t[C].config).queryTransform)===null||u===void 0?void 0:u.call(l,e,a,Object.assign(Object.assign({},t[C].config),s)));let p=s.agent||t[C].config.agent||$e(),d=_.from(s.canisterId||t[C].config.canisterId),f=Bt.encode(r.argTypes,a),y=await p.query(d,{methodName:e,arg:f,effectiveCanisterId:s.effectiveCanisterId}),x=Object.assign(Object.assign({},y.httpDetails),{requestDetails:y.requestDetails});switch(y.status){case"rejected":throw new Ie(d,e,y);case"replied":return r.annotations.includes(De)?{httpDetails:x,result:wt(r.retTypes,y.reply.arg)}:wt(r.retTypes,y.reply.arg)}}:i=async(s,...a)=>{var l,u;s=Object.assign(Object.assign({},s),(u=(l=t[C].config).callTransform)===null||u===void 0?void 0:u.call(l,e,a,Object.assign(Object.assign({},t[C].config),s)));let p=s.agent||t[C].config.agent||$e(),{canisterId:d,effectiveCanisterId:f,pollingStrategyFactory:y}=Object.assign(Object.assign(Object.assign({},on),t[C].config),s),x=_.from(d),v=f!==void 0?_.from(f):x,k=Bt.encode(r.argTypes,a),{requestId:g,response:E,requestDetails:m}=await p.call(x,{methodName:e,arg:k,effectiveCanisterId:v}),P,O;if(E.body&&E.body.certificate){if(p.rootKey==null)throw new Error("Agent is missing root key");let K=E.body.certificate;O=await Qt.create({certificate:Ke(K),rootKey:p.rootKey,canisterId:_.from(d),blsVerify:n});let B=[new TextEncoder().encode("request_status"),g];switch(new TextDecoder().decode(M(O.lookup([...B,"status"])))){case"replied":P=M(O.lookup([...B,"reply"]));break;case"rejected":{let it=new Uint8Array(M(O.lookup([...B,"reject_code"])))[0],Z=new TextDecoder().decode(M(O.lookup([...B,"reject_message"]))),ot=M(O.lookup([...B,"error_code"])),z=ot?new TextDecoder().decode(ot):void 0;throw new oe(x,e,g,E,it,Z,z)}}}else if(E.body&&"reject_message"in E.body){let{reject_code:K,reject_message:B,error_code:j}=E.body;throw new oe(x,e,g,E,K,B,j)}if(E.status===202){let K=y(),B=await Ze(p,v,g,K,n);O=B.certificate,P=B.reply}let V=r.annotations.includes(De),dt=r.annotations.includes(sn),pt=Object.assign(Object.assign({},E),{requestDetails:m});if(P!==void 0)return V&&dt?{httpDetails:pt,certificate:O,result:wt(r.retTypes,P)}:dt?{certificate:O,result:wt(r.retTypes,P)}:V?{httpDetails:pt,result:wt(r.retTypes,P)}:wt(r.retTypes,P);if(r.retTypes.length===0)return V?{httpDetails:E,result:void 0}:void 0;throw new Error(`Call was returned undefined, but type [${r.retTypes.join(",")}].`)};let o=(...s)=>i({},...s);return o.withOptions=s=>(...a)=>i(s,...a),o}function rn(t){function e(r,n){if(t.effectiveCanisterId)return{effectiveCanisterId:_.from(t.effectiveCanisterId)};let i=n[0],o=_.fromHex("");return i&&typeof i=="object"&&i.target_canister&&r==="install_chunked_code"&&(o=_.from(i.target_canister)),i&&typeof i=="object"&&i.canister_id&&(o=_.from(i.canister_id)),{effectiveCanisterId:o}}return tt.createActor(en,Object.assign(Object.assign(Object.assign({},t),{canisterId:_.fromHex("")}),{callTransform:e,queryTransform:e}))}var ko=(t=>(t[t.FractionalMoreThan8Decimals=0]="FractionalMoreThan8Decimals",t[t.InvalidFormat=1]="InvalidFormat",t[t.FractionalTooManyDecimals=2]="FractionalTooManyDecimals",t))(ko||{}),ca=BigInt(1e8);var h=t=>t==null,w=t=>!h(t);var Fo=class extends Error{},se=(t,e)=>{if(t==null)throw new Fo(e)};var an="abcdefghijklmnopqrstuvwxyz234567",kt=Object.create(null);for(let t=0;t<an.length;t++)kt[an[t]]=t;kt[0]=kt.o;kt[1]=kt.i;var da=new Uint32Array([0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117]);var b=t=>w(t)?[t]:[],R=t=>t?.[0];var Le="__bigint__",tr="__principal__",er="__uint8array__",cn=(t,e)=>typeof e=="bigint"?{[Le]:`${e}`}:w(e)&&e instanceof _?{[tr]:e.toText()}:w(e)&&e instanceof Uint8Array?{[er]:Array.from(e)}:e,ln=(t,e)=>{let r=n=>e[n];return w(e)&&typeof e=="object"&&Le in e?BigInt(r(Le)):w(e)&&typeof e=="object"&&tr in e?_.fromText(r(tr)):w(e)&&typeof e=="object"&&er in e?Uint8Array.from(r(er)):e};var xt=class{callbacks=[];populate(e){this.callbacks.forEach(({callback:r})=>r(e))}subscribe(e){let r=Symbol();return this.callbacks.push({id:r,callback:e}),()=>this.callbacks=this.callbacks.filter(({id:n})=>n!==r)}};var Q=class t extends xt{static instance;authUser=null;constructor(){super()}static getInstance(){return t.instance||(t.instance=new t),t.instance}set(e){this.authUser=e,this.populate(e)}get(){return this.authUser}subscribe(e){let r=super.subscribe(e);return e(this.authUser),r}reset(){this.authUser=null,this.populate(this.authUser)}};var rr=({message:t,detail:e})=>{let r=new CustomEvent(t,{detail:e,bubbles:!0});document.dispatchEvent(r)};var le=function(t,e,r,n,i){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!i:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?i.call(t,r):i?i.value=r:e.set(t,r),r},et=function(t,e,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(t):n?n.value:e.get(t)},ae,ce,bt,At;function un(t){return t!==null&&typeof t=="object"}var lt=class t{constructor(e){if(ae.set(this,void 0),ce.set(this,void 0),e.byteLength!==t.RAW_KEY_LENGTH)throw new Error("An Ed25519 public key must be exactly 32bytes long");le(this,ae,e,"f"),le(this,ce,t.derEncode(e),"f")}static from(e){if(typeof e=="string"){let r=I(e);return this.fromRaw(r)}else if(un(e)){let r=e;if(un(r)&&Object.hasOwnProperty.call(r,"__derEncodedPublicKey__"))return this.fromDer(r);if(ArrayBuffer.isView(r)){let n=r;return this.fromRaw(vr(n.buffer))}else{if(r instanceof ArrayBuffer)return this.fromRaw(r);if("rawKey"in r)return this.fromRaw(r.rawKey);if("derKey"in r)return this.fromDer(r.derKey);if("toDer"in r)return this.fromDer(r.toDer())}}throw new Error("Cannot construct Ed25519PublicKey from the provided key.")}static fromRaw(e){return new t(e)}static fromDer(e){return new t(this.derDecode(e))}static derEncode(e){let r=It(e,Zt).buffer;return r.__derEncodedPublicKey__=void 0,r}static derDecode(e){let r=Me(e,Zt);if(r.length!==this.RAW_KEY_LENGTH)throw new Error("An Ed25519 public key must be exactly 32bytes long");return r}get rawKey(){return et(this,ae,"f")}get derKey(){return et(this,ce,"f")}toDer(){return this.derKey}toRaw(){return this.rawKey}};ae=new WeakMap,ce=new WeakMap;lt.RAW_KEY_LENGTH=32;var ut=class t extends st{constructor(e,r){super(),bt.set(this,void 0),At.set(this,void 0),le(this,bt,lt.from(e),"f"),le(this,At,new Uint8Array(r),"f")}static generate(e){if(e&&e.length!==32)throw new Error("Ed25519 Seed needs to be 32 bytes long.");e||(e=mt.utils.randomPrivateKey()),Or(e,new Uint8Array(new Array(32).fill(0)))&&console.warn("Seed is all zeros. This is not a secure seed. Please provide a seed with sufficient entropy if this is a production environment.");let r=new Uint8Array(32);for(let i=0;i<32;i++)r[i]=new Uint8Array(e)[i];let n=mt.getPublicKey(r);return t.fromKeyPair(n,r)}static fromParsedJson(e){let[r,n]=e;return new t(lt.fromDer(I(r)),I(n))}static fromJSON(e){let r=JSON.parse(e);if(Array.isArray(r)){if(typeof r[0]=="string"&&typeof r[1]=="string")return this.fromParsedJson([r[0],r[1]]);throw new Error("Deserialization error: JSON must have at least 2 items.")}throw new Error(`Deserialization error: Invalid JSON type for string: ${JSON.stringify(e)}`)}static fromKeyPair(e,r){return new t(lt.fromRaw(e),r)}static fromSecretKey(e){let r=mt.getPublicKey(new Uint8Array(e));return t.fromKeyPair(r,e)}toJSON(){return[S(et(this,bt,"f").toDer()),S(et(this,At,"f"))]}getKeyPair(){return{secretKey:et(this,At,"f"),publicKey:et(this,bt,"f")}}getPublicKey(){return et(this,bt,"f")}async sign(e){let r=new Uint8Array(e),n=Sr(mt.sign(r,et(this,At,"f").slice(0,32)));return Object.defineProperty(n,"__signature__",{enumerable:!1,value:void 0}),n}static verify(e,r,n){let[i,o,s]=[e,r,n].map(a=>(typeof a=="string"&&(a=I(a)),a instanceof Uint8Array&&(a=a.buffer),new Uint8Array(a)));return mt.verify(o,i,s)}};bt=new WeakMap,At=new WeakMap;var nr=class t extends Error{constructor(e){super(e),this.message=e,Object.setPrototypeOf(this,t.prototype)}};function dn(t){if(typeof globalThis<"u"&&globalThis.crypto&&globalThis.crypto.subtle)return globalThis.crypto.subtle;if(t)return t;if(typeof crypto<"u"&&crypto.subtle)return crypto.subtle;throw new nr("Global crypto was not available and none was provided. Please inlcude a SubtleCrypto implementation. See https://developer.mozilla.org/en-US/docs/Web/API/SubtleCrypto")}var Ft=class t extends st{constructor(e,r,n){super(),this._keyPair=e,this._derKey=r,this._subtleCrypto=n}static async generate(e){let{extractable:r=!1,keyUsages:n=["sign","verify"],subtleCrypto:i}=e??{},o=dn(i),s=await o.generateKey({name:"ECDSA",namedCurve:"P-256"},r,n),a=await o.exportKey("spki",s.publicKey);return new this(s,a,o)}static async fromKeyPair(e,r){let n=dn(r),i=await n.exportKey("spki",e.publicKey);return new t(e,i,n)}getKeyPair(){return this._keyPair}getPublicKey(){let e=this._derKey,r=Object.create(this._keyPair.publicKey);return r.toDer=function(){return e},r}async sign(e){let r={name:"ECDSA",hash:{name:"SHA-256"}};return await this._subtleCrypto.sign(r,this._keyPair.privateKey,e)}};var Et=Ve(zi());var Co=function(t,e,r,n,i){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!i:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?i.call(t,r):i?i.value=r:e.set(t,r),r},Ct=function(t,e,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(t):n?n.value:e.get(t)},rt,ue=class{constructor(e){rt.set(this,void 0),Co(this,rt,e,"f")}get rawKey(){return Ct(this,rt,"f").rawKey}get derKey(){return Ct(this,rt,"f").derKey}toDer(){return Ct(this,rt,"f").toDer()}getPublicKey(){return Ct(this,rt,"f")}getPrincipal(){return _.from(Ct(this,rt,"f").rawKey)}transformRequest(){return Promise.reject("Not implemented. You are attempting to use a partial identity to sign calls, but this identity only has access to the public key.To sign calls, use a DelegationIdentity instead.")}};rt=new WeakMap;var Vo=function(t,e,r,n,i){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!i:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?i.call(t,r):i?i.value=r:e.set(t,r),r},Ko=function(t,e,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(t):n?n.value:e.get(t)},jo=function(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(t);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(t,n[i])&&(r[n[i]]=t[n[i]]);return r},de,Mo=new TextEncoder().encode("ic-request-auth-delegation"),$o=new TextEncoder().encode(`
15
- ic-request`);function ir(t){if(typeof t!="string"||t.length<64)throw new Error("Invalid public key.");return I(t)}var Tt=class{constructor(e,r,n){this.pubkey=e,this.expiration=r,this.targets=n}toCBOR(){return Et.value.map(Object.assign({pubkey:Et.value.bytes(this.pubkey),expiration:Et.value.u64(this.expiration.toString(16),16)},this.targets&&{targets:Et.value.array(this.targets.map(e=>Et.value.bytes(e.toUint8Array())))}))}toJSON(){return Object.assign({expiration:this.expiration.toString(16),pubkey:S(this.pubkey)},this.targets&&{targets:this.targets.map(e=>e.toHex())})}};async function qo(t,e,r,n){let i=new Tt(e.toDer(),BigInt(+r)*BigInt(1e6),n),o=new Uint8Array([...Mo,...new Uint8Array(je(Object.assign({},i)))]),s=await t.sign(o);return{delegation:i,signature:s}}var Vt=class t{constructor(e,r){this.delegations=e,this.publicKey=r}static async create(e,r,n=new Date(Date.now()+15*60*1e3),i={}){var o,s;let a=await qo(e,r,n,i.targets);return new t([...((o=i.previous)===null||o===void 0?void 0:o.delegations)||[],a],((s=i.previous)===null||s===void 0?void 0:s.publicKey)||e.getPublicKey().toDer())}static fromJSON(e){let{publicKey:r,delegations:n}=typeof e=="string"?JSON.parse(e):e;if(!Array.isArray(n))throw new Error("Invalid delegations.");let i=n.map(o=>{let{delegation:s,signature:a}=o,{pubkey:l,expiration:u,targets:p}=s;if(p!==void 0&&!Array.isArray(p))throw new Error("Invalid targets.");return{delegation:new Tt(ir(l),BigInt("0x"+u),p&&p.map(d=>{if(typeof d!="string")throw new Error("Invalid target.");return _.fromHex(d)})),signature:ir(a)}});return new this(i,ir(r))}static fromDelegations(e,r){return new this(e,r)}toJSON(){return{delegations:this.delegations.map(e=>{let{delegation:r,signature:n}=e,{targets:i}=r;return{delegation:Object.assign({expiration:r.expiration.toString(16),pubkey:S(r.pubkey)},i&&{targets:i.map(o=>o.toHex())}),signature:S(n)}}),publicKey:S(this.publicKey)}}},Kt=class extends st{constructor(e,r){super(),this._inner=e,this._delegation=r}static fromDelegation(e,r){return new this(e,r)}getDelegation(){return this._delegation}getPublicKey(){return{derKey:this._delegation.publicKey,toDer:()=>this._delegation.publicKey}}sign(e){return this._inner.sign(e)}async transformRequest(e){let{body:r}=e,n=jo(e,["body"]),i=await je(r);return Object.assign(Object.assign({},n),{body:{content:r,sender_sig:await this.sign(new Uint8Array([...$o,...new Uint8Array(i)])),sender_delegation:this._delegation.delegations,sender_pubkey:this._delegation.publicKey}})}},jt=class t extends ue{constructor(e,r){super(e),de.set(this,void 0),Vo(this,de,r,"f")}get delegation(){return Ko(this,de,"f")}static fromDelegation(e,r){return new t(e,r)}};de=new WeakMap;function pn(t,e){for(let{delegation:i}of t.delegations)if(+new Date(Number(i.expiration/BigInt(1e6)))<=+Date.now())return!1;let r=[],n=e?.scope;n&&(Array.isArray(n)?r.push(...n.map(i=>typeof i=="string"?_.fromText(i):i)):r.push(typeof n=="string"?_.fromText(n):n));for(let i of r){let o=i.toText();for(let{delegation:s}of t.delegations){if(s.targets===void 0)continue;let a=!0;for(let l of s.targets)if(l.toText()===o){a=!1;break}if(a)return!1}}return!0}var Jo=Ve(Yi());var fn;(function(t){t[t.ECDSA_WITH_SHA256=-7]="ECDSA_WITH_SHA256"})(fn||(fn={}));var mn=["mousedown","mousemove","keydown","touchstart","wheel"],Mt=class{constructor(e={}){var r;this.callbacks=[],this.idleTimeout=10*60*1e3,this.timeoutID=void 0;let{onIdle:n,idleTimeout:i=10*60*1e3}=e||{};this.callbacks=n?[n]:[],this.idleTimeout=i;let o=this._resetTimer.bind(this);window.addEventListener("load",o,!0),mn.forEach(function(a){document.addEventListener(a,o,!0)});let s=(a,l)=>{let u;return(...p)=>{let d=this,f=function(){u=void 0,a.apply(d,p)};clearTimeout(u),u=window.setTimeout(f,l)}};if(e?.captureScroll){let a=s(o,(r=e?.scrollDebounce)!==null&&r!==void 0?r:100);window.addEventListener("scroll",a,!0)}o()}static create(e={}){return new this(e)}registerCallback(e){this.callbacks.push(e)}exit(){clearTimeout(this.timeoutID),window.removeEventListener("load",this._resetTimer,!0);let e=this._resetTimer.bind(this);mn.forEach(function(r){document.removeEventListener(r,e,!0)}),this.callbacks.forEach(r=>r())}_resetTimer(){let e=this.exit.bind(this);window.clearTimeout(this.timeoutID),this.timeoutID=window.setTimeout(e,this.idleTimeout)}};var Wo=(t,e)=>e.some(r=>t instanceof r),hn,yn;function Go(){return hn||(hn=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function Yo(){return yn||(yn=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}var _n=new WeakMap,sr=new WeakMap,gn=new WeakMap,or=new WeakMap,cr=new WeakMap;function zo(t){let e=new Promise((r,n)=>{let i=()=>{t.removeEventListener("success",o),t.removeEventListener("error",s)},o=()=>{r(W(t.result)),i()},s=()=>{n(t.error),i()};t.addEventListener("success",o),t.addEventListener("error",s)});return e.then(r=>{r instanceof IDBCursor&&_n.set(r,t)}).catch(()=>{}),cr.set(e,t),e}function Xo(t){if(sr.has(t))return;let e=new Promise((r,n)=>{let i=()=>{t.removeEventListener("complete",o),t.removeEventListener("error",s),t.removeEventListener("abort",s)},o=()=>{r(),i()},s=()=>{n(t.error||new DOMException("AbortError","AbortError")),i()};t.addEventListener("complete",o),t.addEventListener("error",s),t.addEventListener("abort",s)});sr.set(t,e)}var ar={get(t,e,r){if(t instanceof IDBTransaction){if(e==="done")return sr.get(t);if(e==="objectStoreNames")return t.objectStoreNames||gn.get(t);if(e==="store")return r.objectStoreNames[1]?void 0:r.objectStore(r.objectStoreNames[0])}return W(t[e])},set(t,e,r){return t[e]=r,!0},has(t,e){return t instanceof IDBTransaction&&(e==="done"||e==="store")?!0:e in t}};function wn(t){ar=t(ar)}function Qo(t){return t===IDBDatabase.prototype.transaction&&!("objectStoreNames"in IDBTransaction.prototype)?function(e,...r){let n=t.call(pe(this),e,...r);return gn.set(n,e.sort?e.sort():[e]),W(n)}:Yo().includes(t)?function(...e){return t.apply(pe(this),e),W(_n.get(this))}:function(...e){return W(t.apply(pe(this),e))}}function Zo(t){return typeof t=="function"?Qo(t):(t instanceof IDBTransaction&&Xo(t),Wo(t,Go())?new Proxy(t,ar):t)}function W(t){if(t instanceof IDBRequest)return zo(t);if(or.has(t))return or.get(t);let e=Zo(t);return e!==t&&(or.set(t,e),cr.set(e,t)),e}var pe=t=>cr.get(t);function bn(t,e,{blocked:r,upgrade:n,blocking:i,terminated:o}={}){let s=indexedDB.open(t,e),a=W(s);return n&&s.addEventListener("upgradeneeded",l=>{n(W(s.result),l.oldVersion,l.newVersion,W(s.transaction),l)}),r&&s.addEventListener("blocked",l=>r(l.oldVersion,l.newVersion,l)),a.then(l=>{o&&l.addEventListener("close",()=>o()),i&&l.addEventListener("versionchange",u=>i(u.oldVersion,u.newVersion,u))}).catch(()=>{}),a}var Io=["get","getKey","getAll","getAllKeys","count"],Do=["put","add","delete","clear"],lr=new Map;function xn(t,e){if(!(t instanceof IDBDatabase&&!(e in t)&&typeof e=="string"))return;if(lr.get(e))return lr.get(e);let r=e.replace(/FromIndex$/,""),n=e!==r,i=Do.includes(r);if(!(r in(n?IDBIndex:IDBObjectStore).prototype)||!(i||Io.includes(r)))return;let o=async function(s,...a){let l=this.transaction(s,i?"readwrite":"readonly"),u=l.store;return n&&(u=u.index(a.shift())),(await Promise.all([u[r](...a),i&&l.done]))[0]};return lr.set(e,o),o}wn(t=>({...t,get:(e,r,n)=>xn(e,r)||t.get(e,r,n),has:(e,r)=>!!xn(e,r)||t.has(e,r)}));var An="auth-client-db",En="ic-keyval",Lo=async(t=An,e=En,r)=>(fe&&(localStorage!=null&&localStorage.getItem($))&&(localStorage.removeItem($),localStorage.removeItem(q)),await bn(t,r,{upgrade:n=>{n.objectStoreNames.contains(e)&&n.clear(e),n.createObjectStore(e)}}));async function ts(t,e,r){return await t.get(e,r)}async function es(t,e,r,n){return await t.put(e,n,r)}async function rs(t,e,r){return await t.delete(e,r)}var $t=class t{constructor(e,r){this._db=e,this._storeName=r}static async create(e){let{dbName:r=An,storeName:n=En,version:i=Tn}=e??{},o=await Lo(r,n,i);return new t(o,n)}async set(e,r){return await es(this._db,this._storeName,e,r)}async get(e){var r;return(r=await ts(this._db,this._storeName,e))!==null&&r!==void 0?r:null}async remove(e){return await rs(this._db,this._storeName,e)}};var ns=function(t,e,r,n,i){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!i:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?i.call(t,r):i?i.value=r:e.set(t,r),r},is=function(t,e,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(t):n?n.value:e.get(t)},me,q="identity",$="delegation",Nn="iv",Tn=1,fe=typeof window<"u",qt=class{constructor(e="ic-",r){this.prefix=e,this._localStorage=r}get(e){return Promise.resolve(this._getLocalStorage().getItem(this.prefix+e))}set(e,r){return this._getLocalStorage().setItem(this.prefix+e,r),Promise.resolve()}remove(e){return this._getLocalStorage().removeItem(this.prefix+e),Promise.resolve()}_getLocalStorage(){if(this._localStorage)return this._localStorage;let e=typeof window>"u"?typeof globalThis>"u"?typeof self>"u"?void 0:self.localStorage:globalThis.localStorage:window.localStorage;if(!e)throw new Error("Could not find local storage.");return e}},Ht=class{constructor(e){me.set(this,void 0),ns(this,me,e??{},"f")}get _db(){return new Promise(e=>{if(this.initializedDb){e(this.initializedDb);return}$t.create(is(this,me,"f")).then(r=>{this.initializedDb=r,e(r)})})}async get(e){return await(await this._db).get(e)}async set(e,r){await(await this._db).set(e,r)}async remove(e){await(await this._db).remove(e)}};me=new WeakMap;var os="https://identity.ic0.app",ss="#authorize",ur="ECDSA",dr="Ed25519",as=500,fr="UserInterrupt",he=class{constructor(e,r,n,i,o,s,a,l){this._identity=e,this._key=r,this._chain=n,this._storage=i,this.idleManager=o,this._createOptions=s,this._idpWindow=a,this._eventHandler=l,this._registerDefaultIdleCallback()}static async create(e={}){var r,n,i;let o=(r=e.storage)!==null&&r!==void 0?r:new Ht,s=(n=e.keyType)!==null&&n!==void 0?n:ur,a=null;if(e.identity)a=e.identity;else{let d=await o.get(q);if(!d&&fe)try{let f=new qt,y=await f.get($),x=await f.get(q);y&&x&&s===ur&&(console.log("Discovered an identity stored in localstorage. Migrating to IndexedDB"),await o.set($,y),await o.set(q,x),d=y,await f.remove($),await f.remove(q))}catch(f){console.error("error while attempting to recover localstorage: "+f)}if(d)try{typeof d=="object"?s===dr&&typeof d=="string"?a=await ut.fromJSON(d):a=await Ft.fromKeyPair(d):typeof d=="string"&&(a=ut.fromJSON(d))}catch{}}let l=new ft,u=null;if(a)try{let d=await o.get($);if(typeof d=="object"&&d!==null)throw new Error("Delegation chain is incorrectly stored. A delegation chain should be stored as a string.");e.identity?l=e.identity:d&&(u=Vt.fromJSON(d),pn(u)?"toDer"in a?l=jt.fromDelegation(a,u):l=Kt.fromDelegation(a,u):(await pr(o),a=null))}catch(d){console.error(d),await pr(o),a=null}let p;return!((i=e.idleOptions)===null||i===void 0)&&i.disableIdle?p=void 0:(u||e.identity)&&(p=Mt.create(e.idleOptions)),a||(s===dr?(a=await ut.generate(),await o.set(q,JSON.stringify(a.toJSON()))):(e.storage&&s===ur&&console.warn(`You are using a custom storage provider that may not support CryptoKey storage. If you are using a custom storage provider that does not support CryptoKey storage, you should use '${dr}' as the key type, as it can serialize to a string`),a=await Ft.generate(),await o.set(q,a.getKeyPair()))),new this(l,a,u,o,p,e)}_registerDefaultIdleCallback(){var e,r;let n=(e=this._createOptions)===null||e===void 0?void 0:e.idleOptions;!n?.onIdle&&!n?.disableDefaultIdleCallback&&((r=this.idleManager)===null||r===void 0||r.registerCallback(()=>{this.logout(),location.reload()}))}async _handleSuccess(e,r){var n,i;let o=e.delegations.map(u=>({delegation:new Tt(u.delegation.pubkey,u.delegation.expiration,u.delegation.targets),signature:u.signature.buffer})),s=Vt.fromDelegations(o,e.userPublicKey.buffer),a=this._key;if(!a)return;this._chain=s,"toDer"in a?this._identity=jt.fromDelegation(a,this._chain):this._identity=Kt.fromDelegation(a,this._chain),(n=this._idpWindow)===null||n===void 0||n.close();let l=(i=this._createOptions)===null||i===void 0?void 0:i.idleOptions;!this.idleManager&&!l?.disableIdle&&(this.idleManager=Mt.create(l),this._registerDefaultIdleCallback()),this._removeEventListener(),delete this._idpWindow,this._chain&&await this._storage.set($,JSON.stringify(this._chain.toJSON())),r?.(e)}getIdentity(){return this._identity}async isAuthenticated(){return!this.getIdentity().getPrincipal().isAnonymous()&&this._chain!==null}async login(e){var r,n,i,o;let s=BigInt(8)*BigInt(36e11),a=new URL(((r=e?.identityProvider)===null||r===void 0?void 0:r.toString())||os);a.hash=ss,(n=this._idpWindow)===null||n===void 0||n.close(),this._removeEventListener(),this._eventHandler=this._getEventHandler(a,Object.assign({maxTimeToLive:(i=e?.maxTimeToLive)!==null&&i!==void 0?i:s},e)),window.addEventListener("message",this._eventHandler),this._idpWindow=(o=window.open(a.toString(),"idpWindow",e?.windowOpenerFeatures))!==null&&o!==void 0?o:void 0;let l=()=>{this._idpWindow&&(this._idpWindow.closed?this._handleFailure(fr,e?.onError):setTimeout(l,as))};l()}_getEventHandler(e,r){return async n=>{var i,o,s;if(n.origin!==e.origin)return;let a=n.data;switch(a.kind){case"authorize-ready":{let l=Object.assign({kind:"authorize-client",sessionPublicKey:new Uint8Array((i=this._key)===null||i===void 0?void 0:i.getPublicKey().toDer()),maxTimeToLive:r?.maxTimeToLive,allowPinAuthentication:r?.allowPinAuthentication,derivationOrigin:(o=r?.derivationOrigin)===null||o===void 0?void 0:o.toString()},r?.customValues);(s=this._idpWindow)===null||s===void 0||s.postMessage(l,e.origin);break}case"authorize-client-success":try{await this._handleSuccess(a,r?.onSuccess)}catch(l){this._handleFailure(l.message,r?.onError)}break;case"authorize-client-failure":this._handleFailure(a.text,r?.onError);break;default:break}}}_handleFailure(e,r){var n;(n=this._idpWindow)===null||n===void 0||n.close(),r?.(e),this._removeEventListener(),delete this._idpWindow}_removeEventListener(){this._eventHandler&&window.removeEventListener("message",this._eventHandler),this._eventHandler=void 0}async logout(e={}){if(await pr(this._storage),this._identity=new ft,this._chain=null,e.returnTo)try{window.history.pushState({},"",e.returnTo)}catch{window.location.href=e.returnTo}}};async function pr(t){await t.remove(q),await t.remove($),await t.remove(Nn)}var Rn=BigInt(144e11),On=!1,Sn={width:576,height:576},vn={width:505,height:705},Pn="internetcomputer.org";var Nt="http://127.0.0.1:5987",Bn="rdmx6-jaaaa-aaaaa-aaadq-cai";var G=class t extends xt{static instance;env;constructor(){super()}static getInstance(){return t.instance||(t.instance=new t),t.instance}set(e){this.env=e,this.populate(e)}get(){return this.env}subscribe(e){let r=super.subscribe(e);return e(this.env),r}};var Un=async t=>{let e=new Blob([JSON.stringify(t,cn)],{type:"application/json; charset=utf-8"});return new Uint8Array(await e.arrayBuffer())},ye=async t=>{let e=new Blob([t instanceof Uint8Array?t:new Uint8Array(t)],{type:"application/json; charset=utf-8"});return JSON.parse(await e.text(),ln)},_e=()=>typeof window<"u";var mr=({width:t,height:e})=>{if(!_e()||h(window)||h(window.top))return;let{top:{innerWidth:r,innerHeight:n}}=window,i=n/2+screenY-e/2,o=r/2+screenX-t/2;return`toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=no, copyhistory=no, width=${t}, height=${e}, top=${i}, left=${o}`};var ge=class{#t;constructor({domain:e}){this.#t=e}get id(){return"internet_identity"}signInOptions({windowed:e}){let r=()=>{let n=G.getInstance().get()?.container;if(h(n)||n===!1)return`https://identity.${this.#t??Pn}`;let i=G.getInstance().get(),o=w(i)&&w(i?.internetIdentityId)?i.internetIdentityId:Bn,{host:s,protocol:a}=new URL(n===!0?Nt:n);return/apple/i.test(navigator?.vendor)?`${a}//${s}?canisterId=${o}`:`${a}//${o}.${s.replace("127.0.0.1","localhost")}`};return{...e!==!1&&{windowOpenerFeatures:mr(Sn)},identityProvider:r()}}},kn=class{#t;#e;constructor({appName:e,logoUrl:r}){this.#t=e,this.#e=r}get id(){return"nfid"}signInOptions({windowed:e}){return{...e!==!1&&{windowOpenerFeatures:mr(vn)},identityProvider:`https://nfid.one/authenticate/?applicationName=${encodeURI(this.#t)}&applicationLogo=${encodeURI(this.#e)}`}}};var Rt=class t{static instance;#t=void 0;constructor(){}static getInstance(){return h(t.instance)&&(t.instance=new t),t.instance}async getAgent({identity:e,...r}){let n=e.getPrincipal().toText();if(h(this.#t)||h(this.#t[n])){let i=await this.createAgent({identity:e,...r});return this.#t={...this.#t??{},[n]:i},i}return this.#t[n]}reset(){this.#t=null}async createAgent({identity:e,fetch:r,container:n}){let o=w(n)&&n!==!1?n===!0?Nt:n:"https://icp-api.io",s=w(n);return await Dt.create({identity:e,shouldFetchRootKey:s,host:o,...r&&{fetch:r}})}};var Ot=class t{static instance;#t=void 0;constructor(){}static getInstance(){return h(t.instance)&&(t.instance=new t),t.instance}async getActor({satelliteId:e,identity:r,buildType:n,...i}){let o=`${n}#${r.getPrincipal().toText()}#${e};`;if(h(this.#t)||h(this.#t[o])){let s=await this.createActor({satelliteId:e,identity:r,...i});return this.#t={...this.#t??{},[o]:s},s}return this.#t[o]}reset(){this.#t=null}async createActor({idlFactory:e,satelliteId:r,...n}){let i=await Rt.getInstance().getAgent(n);return tt.createActor(e,{agent:i,canisterId:r})}};var we=class extends Error{},xe=class extends Error{},be=class extends Error{},Ae=class extends Error{},Ee=class extends Error{};var Te=()=>he.create({idleOptions:{disableIdle:!0,disableDefaultIdleCallback:!0}});var hr="juno.datastore.error.user.cannot_update";var yr=({error:t,type:e})=>typeof t=="string"?t.includes(e):t instanceof Error?t.message.includes(e):!1;var Fn=async({data:t})=>{try{return await ye(t)}catch(e){console.error("The data parsing has failed, mapping to undefined as a fallback.",e);return}};var _r=async t=>{let{data:e,version:r,description:n}=t;return{description:b(n),data:await Un(e),version:b(r)}},gr=t=>{let{version:e}=t;return{version:b(e)}},Jt=async({doc:t,key:e})=>{let{owner:r,version:n,description:i,data:o,...s}=t;return{key:e,description:R(i),owner:r.toText(),data:await ye(o),version:R(n),...s}};var Cn=t=>{if(h(t))return b();switch(t.matcher){case"equal":return b({Equal:t.timestamp});case"greaterThan":return b({GreaterThan:t.timestamp});case"lessThan":return b({LessThan:t.timestamp});case"between":return b({Between:[t.timestamps.start,t.timestamps.end]});default:throw new Ee("Invalid list matcher for timestamp",t)}},nt=({matcher:t,paginate:e,order:r,owner:n})=>({matcher:h(t)?[]:[{key:b(t.key),description:b(t.description),created_at:Cn(t.createdAt),updated_at:Cn(t.updatedAt)}],paginate:b(h(e)?void 0:{start_after:b(e.startAfter),limit:b(h(e.limit)?void 0:BigInt(e.limit))}),order:b(h(r)?void 0:{desc:r.desc,field:r.field==="created_at"?{CreatedAt:null}:r.field==="updated_at"?{UpdatedAt:null}:{Keys:null}}),owner:b(h(n)?void 0:typeof n=="string"?_.fromText(n):n)});var Vn=({IDL:t})=>{let e=t.Record({batch_id:t.Nat,headers:t.Vec(t.Tuple(t.Text,t.Text)),chunk_ids:t.Vec(t.Nat)}),r=t.Variant({UpdatedAt:t.Null,Keys:t.Null,CreatedAt:t.Null}),n=t.Record({field:r,desc:t.Bool}),i=t.Variant({Equal:t.Nat64,Between:t.Tuple(t.Nat64,t.Nat64),GreaterThan:t.Nat64,LessThan:t.Nat64}),o=t.Record({key:t.Opt(t.Text),updated_at:t.Opt(i),description:t.Opt(t.Text),created_at:t.Opt(i)}),s=t.Record({start_after:t.Opt(t.Text),limit:t.Opt(t.Nat64)}),a=t.Record({order:t.Opt(n),owner:t.Opt(t.Principal),matcher:t.Opt(o),paginate:t.Opt(s)}),l=t.Record({controllers:t.Vec(t.Principal)}),u=t.Variant({Write:t.Null,Admin:t.Null}),p=t.Record({updated_at:t.Nat64,metadata:t.Vec(t.Tuple(t.Text,t.Text)),created_at:t.Nat64,scope:u,expires_at:t.Opt(t.Nat64)}),d=t.Record({version:t.Opt(t.Nat64)}),f=t.Variant({Db:t.Null,Storage:t.Null}),y=t.Record({version:t.Opt(t.Nat64)}),x=t.Record({cycles:t.Nat,destination_id:t.Principal}),v=t.Record({token:t.Opt(t.Text),collection:t.Text,owner:t.Principal,name:t.Text,description:t.Opt(t.Text),full_path:t.Text}),k=t.Record({modified:t.Nat64,sha256:t.Vec(t.Nat8),total_length:t.Nat}),g=t.Record({key:v,updated_at:t.Nat64,encodings:t.Vec(t.Tuple(t.Text,k)),headers:t.Vec(t.Tuple(t.Text,t.Text)),created_at:t.Nat64,version:t.Opt(t.Nat64)}),E=t.Record({derivation_origin:t.Opt(t.Text),external_alternative_origins:t.Opt(t.Vec(t.Text))}),m=t.Record({internet_identity:t.Opt(E)}),P=t.Record({stable:t.Opt(t.Nat64),heap:t.Opt(t.Nat64)}),O=t.Record({max_memory_size:t.Opt(P)}),V=t.Variant({Deny:t.Null,AllowAny:t.Null,SameOrigin:t.Null}),dt=t.Variant({Deny:t.Null,Allow:t.Null}),pt=t.Record({status_code:t.Nat16,location:t.Text}),K=t.Record({iframe:t.Opt(V),rewrites:t.Vec(t.Tuple(t.Text,t.Text)),headers:t.Vec(t.Tuple(t.Text,t.Vec(t.Tuple(t.Text,t.Text)))),max_memory_size:t.Opt(P),raw_access:t.Opt(dt),redirects:t.Opt(t.Vec(t.Tuple(t.Text,pt)))}),B=t.Record({db:t.Opt(O),authentication:t.Opt(m),storage:K}),j=t.Record({updated_at:t.Nat64,owner:t.Principal,data:t.Vec(t.Nat8),description:t.Opt(t.Text),created_at:t.Nat64,version:t.Opt(t.Nat64)}),it=t.Variant({Heap:t.Null,Stable:t.Null}),Z=t.Variant({Controllers:t.Null,Private:t.Null,Public:t.Null,Managed:t.Null}),ot=t.Record({max_tokens:t.Nat64,time_per_token_ns:t.Nat64}),z=t.Record({max_capacity:t.Opt(t.Nat32),memory:t.Opt(it),updated_at:t.Nat64,max_size:t.Opt(t.Nat),read:Z,created_at:t.Nat64,version:t.Opt(t.Nat64),mutable_permissions:t.Opt(t.Bool),rate_config:t.Opt(ot),write:Z,max_changes_per_user:t.Opt(t.Nat32)}),Re=t.Record({url:t.Text,method:t.Text,body:t.Vec(t.Nat8),headers:t.Vec(t.Tuple(t.Text,t.Text)),certificate_version:t.Opt(t.Nat16)}),St=t.Record({memory:it,token:t.Opt(t.Text),sha256:t.Opt(t.Vec(t.Nat8)),headers:t.Vec(t.Tuple(t.Text,t.Text)),index:t.Nat64,encoding_type:t.Text,full_path:t.Text}),Oe=t.Variant({Callback:t.Record({token:St,callback:t.Func([],[],["query"])})}),Se=t.Record({body:t.Vec(t.Nat8),headers:t.Vec(t.Tuple(t.Text,t.Text)),streaming_strategy:t.Opt(Oe),status_code:t.Nat16}),ve=t.Record({token:t.Opt(St),body:t.Vec(t.Nat8)}),Wt=t.Record({token:t.Opt(t.Text),collection:t.Text,name:t.Text,description:t.Opt(t.Text),encoding_type:t.Opt(t.Text),full_path:t.Text}),Pe=t.Record({batch_id:t.Nat}),Be=t.Record({matches_pages:t.Opt(t.Nat64),matches_length:t.Nat64,items_page:t.Opt(t.Nat64),items:t.Vec(t.Tuple(t.Text,g)),items_length:t.Nat64}),Ue=t.Record({updated_at:t.Nat64,created_at:t.Nat64,version:t.Opt(t.Nat64),bn_id:t.Opt(t.Text)}),ke=t.Record({matches_pages:t.Opt(t.Nat64),matches_length:t.Nat64,items_page:t.Opt(t.Nat64),items:t.Vec(t.Tuple(t.Text,j)),items_length:t.Nat64}),Fe=t.Record({stable:t.Nat64,heap:t.Nat64}),Gt=t.Record({metadata:t.Vec(t.Tuple(t.Text,t.Text)),scope:u,expires_at:t.Opt(t.Nat64)}),vt=t.Record({controller:Gt,controllers:t.Vec(t.Principal)}),Yt=t.Record({data:t.Vec(t.Nat8),description:t.Opt(t.Text),version:t.Opt(t.Nat64)}),zt=t.Record({max_capacity:t.Opt(t.Nat32),memory:t.Opt(it),max_size:t.Opt(t.Nat),read:Z,version:t.Opt(t.Nat64),mutable_permissions:t.Opt(t.Bool),rate_config:t.Opt(ot),write:Z,max_changes_per_user:t.Opt(t.Nat32)}),Pt=t.Record({content:t.Vec(t.Nat8),batch_id:t.Nat,order_id:t.Opt(t.Nat)}),Ce=t.Record({chunk_id:t.Nat});return t.Service({build_version:t.Func([],[t.Text],["query"]),commit_asset_upload:t.Func([e],[],[]),count_assets:t.Func([t.Text,a],[t.Nat64],["query"]),count_collection_assets:t.Func([t.Text],[t.Nat64],["query"]),count_collection_docs:t.Func([t.Text],[t.Nat64],["query"]),count_docs:t.Func([t.Text,a],[t.Nat64],["query"]),del_asset:t.Func([t.Text,t.Text],[],[]),del_assets:t.Func([t.Text],[],[]),del_controllers:t.Func([l],[t.Vec(t.Tuple(t.Principal,p))],[]),del_custom_domain:t.Func([t.Text],[],[]),del_doc:t.Func([t.Text,t.Text,d],[],[]),del_docs:t.Func([t.Text],[],[]),del_filtered_assets:t.Func([t.Text,a],[],[]),del_filtered_docs:t.Func([t.Text,a],[],[]),del_many_assets:t.Func([t.Vec(t.Tuple(t.Text,t.Text))],[],[]),del_many_docs:t.Func([t.Vec(t.Tuple(t.Text,t.Text,d))],[],[]),del_rule:t.Func([f,t.Text,y],[],[]),deposit_cycles:t.Func([x],[],[]),get_asset:t.Func([t.Text,t.Text],[t.Opt(g)],["query"]),get_auth_config:t.Func([],[t.Opt(m)],["query"]),get_config:t.Func([],[B],[]),get_db_config:t.Func([],[t.Opt(O)],["query"]),get_doc:t.Func([t.Text,t.Text],[t.Opt(j)],["query"]),get_many_assets:t.Func([t.Vec(t.Tuple(t.Text,t.Text))],[t.Vec(t.Tuple(t.Text,t.Opt(g)))],["query"]),get_many_docs:t.Func([t.Vec(t.Tuple(t.Text,t.Text))],[t.Vec(t.Tuple(t.Text,t.Opt(j)))],["query"]),get_rule:t.Func([f,t.Text],[t.Opt(z)],["query"]),get_storage_config:t.Func([],[K],["query"]),http_request:t.Func([Re],[Se],["query"]),http_request_streaming_callback:t.Func([St],[ve],["query"]),init_asset_upload:t.Func([Wt],[Pe],[]),list_assets:t.Func([t.Text,a],[Be],["query"]),list_controllers:t.Func([],[t.Vec(t.Tuple(t.Principal,p))],["query"]),list_custom_domains:t.Func([],[t.Vec(t.Tuple(t.Text,Ue))],["query"]),list_docs:t.Func([t.Text,a],[ke],["query"]),list_rules:t.Func([f],[t.Vec(t.Tuple(t.Text,z))],["query"]),memory_size:t.Func([],[Fe],["query"]),set_auth_config:t.Func([m],[],[]),set_controllers:t.Func([vt],[t.Vec(t.Tuple(t.Principal,p))],[]),set_custom_domain:t.Func([t.Text,t.Opt(t.Text)],[],[]),set_db_config:t.Func([O],[],[]),set_doc:t.Func([t.Text,t.Text,Yt],[j],[]),set_many_docs:t.Func([t.Vec(t.Tuple(t.Text,t.Text,Yt))],[t.Vec(t.Tuple(t.Text,j))],[]),set_rule:t.Func([f,t.Text,zt],[z],[]),set_storage_config:t.Func([K],[],[]),upload_asset_chunk:t.Func([Pt],[Ce],[]),version:t.Func([],[t.Text],["query"])})};var Kn=({satelliteId:t,container:e})=>{let{satelliteId:r}=wr({satelliteId:t}),{container:n}=xr({container:e});if(w(n)&&n!==!1){let{host:i,protocol:o}=new URL(n===!0?Nt:n);return`${o}//${r??"unknown"}.${i.replace("127.0.0.1","localhost")}`}return`https://${r??"unknown"}.icp0.io`},wr=({satelliteId:t})=>w(t)?{satelliteId:t}:G.getInstance().get()??{satelliteId:void 0},xr=({container:t})=>w(t)?{container:t}:G.getInstance().get()??{container:void 0};var T=t=>Mn({idlFactory:Vn,buildType:"stock",...t}),jn=({idlFactory:t,...e})=>Mn({idlFactory:t,buildType:"extended",...e}),Mn=async({satelliteId:t,container:e,...r})=>{let{satelliteId:n}=wr({satelliteId:t});se(n,"No satellite ID defined. Did you initialize Juno?");let{container:i}=xr({container:e});return await Ot.getInstance().getActor({satelliteId:n,container:i,...r})};var $n=async({collection:t,key:e,satellite:r})=>{let{get_doc:n}=await T(r),i=R(await n(t,e));if(!h(i))return Jt({doc:i,key:e})},qn=async({docs:t,satellite:e})=>{let{get_many_docs:r}=await T(e),n=t.map(({collection:s,key:a})=>[s,a]),i=await r(n),o=[];for(let[s,a]of i){let l=R(a);o.push(w(l)?await Jt({key:s,doc:l}):void 0)}return o},Hn=async({collection:t,doc:e,satellite:r})=>{let{set_doc:n}=await T(r),{key:i}=e,o=await _r(e),s=await n(t,i,o);return await Jt({key:i,doc:s})},Jn=async({docs:t,satellite:e})=>{let{set_many_docs:r}=await T(e),n=[];for(let{collection:s,doc:a}of t){let{key:l}=a;n.push([s,l,await _r(a)])}let i=await r(n),o=[];for(let[s,a]of i)o.push(await Jt({key:s,doc:a}));return o},Wn=async({collection:t,doc:e,satellite:r})=>{let{del_doc:n}=await T(r),{key:i}=e;return n(t,i,gr(e))},Gn=async({docs:t,satellite:e})=>{let{del_many_docs:r}=await T(e),n=t.map(({collection:i,doc:o})=>[i,o.key,gr(o)]);await r(n)},Yn=async({collection:t,filter:e,satellite:r})=>{let{del_filtered_docs:n}=await T(r);return n(t,nt(e))},zn=async({collection:t,filter:e,satellite:r})=>{let{list_docs:n}=await T(r),{items:i,items_page:o,items_length:s,matches_length:a,matches_pages:l}=await n(t,nt(e)),u=[];for(let[p,d]of i){let{data:f,owner:y,description:x,version:v,...k}=d;u.push({key:p,description:R(x),owner:y.toText(),data:await Fn({data:f}),version:R(v),...k})}return{items:u,items_length:s,items_page:R(o),matches_length:a,matches_pages:R(l)}},Xn=async({collection:t,filter:e,satellite:r})=>{let{count_docs:n}=await T(r);return n(t,nt(e))};var A=t=>t!==void 0?t:Ne()??new ft;var Qn=async({satellite:t,...e})=>{let r=A(t?.identity);return await $n({...e,satellite:{...t,identity:r}})},kl=async({satellite:t,...e})=>{let r=A(t?.identity);return await qn({...e,satellite:{...t,identity:r}})},Zn=async({satellite:t,...e})=>{let r=A(t?.identity);return await Hn({...e,satellite:{...t,identity:r}})},Fl=async({satellite:t,...e})=>{let r=A(t?.identity);return await Jn({...e,satellite:{...t,identity:r}})},Cl=async({satellite:t,...e})=>{let r=A(t?.identity);return await Wn({...e,satellite:{...t,identity:r}})},Vl=async({satellite:t,...e})=>{let r=A(t?.identity);return await Gn({...e,satellite:{...t,identity:r}})},Kl=async({satellite:t,filter:e,...r})=>{let n=A(t?.identity);return await Yn({...r,filter:e??{},satellite:{...t,identity:n}})},jl=async({satellite:t,filter:e,...r})=>{let n=A(t?.identity);return await zn({...r,filter:e??{},satellite:{...t,identity:n}})},Ml=async({satellite:t,filter:e,...r})=>{let n=A(t?.identity);return await Xn({...r,filter:e??{},satellite:{...t,identity:n}})};var In=async t=>{let e=Ne();if(h(e))throw new Ae("No identity to initialize the user. Have you initialized Juno?");let r=e.getPrincipal().toText(),n=()=>Qn({collection:"#user",key:r}),i=await n();if(w(i))return i;try{return await cs({userId:r,provider:t})}catch(o){if(yr({error:o,type:hr})){let s=await n();if(w(s))return s}throw o}},cs=({userId:t,...e})=>Zn({collection:"#user",doc:{key:t,data:e}});var Y,br=async t=>{if(Y=Y??await Te(),!(await Y?.isAuthenticated()??!1))return;let r=await In(t);Q.getInstance().set(r)},ls=t=>new Promise(async(e,r)=>{if(h(Y)){r(new xe("No client is ready to perform a sign-in. Have you initialized the Satellite?"));return}let n=t?.provider??new ge({});await Y.login({onSuccess:async()=>{await br(n.id),e()},onError:i=>{if(i===fr){r(new be(i));return}r(new we(i))},maxTimeToLive:t?.maxTimeToLive??Rn,allowPinAuthentication:t?.allowPin??On,...t?.derivationOrigin!==void 0&&{derivationOrigin:t.derivationOrigin},...n.signInOptions({windowed:t?.windowed})})}),Ar=async()=>{await Y?.logout(),Y=null,Q.getInstance().reset(),Ot.getInstance().reset(),Rt.getInstance().reset(),Y=await Te()},Ne=()=>Y?.getIdentity(),us=async()=>(Y??await Te()).getIdentity();var Dn=t=>{let e=t===!0?"./workers/auth.worker.js":t,r=new Worker(e),n=async()=>{rr({message:"junoSignOutAuthTimer"}),await Ar()};return r.onmessage=async({data:i})=>{let{msg:o,data:s}=i;switch(o){case"junoSignOutAuthTimer":await n();return;case"junoDelegationRemainingTime":rr({message:"junoDelegationRemainingTime",detail:s?.authRemainingTime});return}},Q.getInstance().subscribe(i=>{if(h(i)){r.postMessage({msg:"junoStopAuthTimer"});return}r.postMessage({msg:"junoStartAuthTimer"})})};var Ln=()=>{let t=()=>typeof import.meta<"u"&&typeof import.meta.env<"u"?import.meta.env?.VITE_SATELLITE_ID??import.meta.env?.PUBLIC_SATELLITE_ID:void 0;return typeof process<"u"?process.env?.NEXT_PUBLIC_SATELLITE_ID??t():t()},ti=()=>{let t=()=>typeof import.meta<"u"&&typeof import.meta.env<"u"?import.meta.env?.VITE_CONTAINER??import.meta.env?.PUBLIC_CONTAINER:void 0;return typeof process<"u"?process.env?.NEXT_PUBLIC_CONTAINER??t():t()};var fu=async({idlFactory:t,satellite:e})=>{let r=A(e?.identity);return await jn({idlFactory:t,...e,identity:r})};var ei=async({asset:{data:t,filename:e,collection:r,headers:n,token:i,fullPath:o,encoding:s,description:a},actor:l,init_asset_upload:u})=>{let{batch_id:p}=await u({collection:r,full_path:o,name:e,token:b(i),encoding_type:b(s),description:b(a)}),d=19e5,f=[],y=_e()?new Blob([await t.arrayBuffer()]):t,x=0n;for(let g=0;g<y.size;g+=d){let E=y.slice(g,g+d);f.push({batchId:p,chunk:E,actor:l,orderId:x}),x++}let v=[];for await(let g of ds({uploadChunks:f}))v=[...v,...g];let k=n.find(([g,E])=>g.toLowerCase()==="content-type")===void 0&&t.type!==void 0&&t.type!==""?[["Content-Type",t.type]]:void 0;await l.commit_asset_upload({batch_id:p,chunk_ids:v.map(({chunk_id:g})=>g),headers:[...n,...k??[]]})};async function*ds({uploadChunks:t,limit:e=12}){for(let r=0;r<t.length;r=r+e){let n=t.slice(r,r+e);yield await Promise.all(n.map(i=>ps(i)))}}var ps=async({batchId:t,chunk:e,actor:r,orderId:n})=>r.upload_asset_chunk({batch_id:t,content:new Uint8Array(await e.arrayBuffer()),order_id:b(n)});var ri=async({satellite:t,...e})=>{let r=await T(t);await ei({actor:r,asset:e,init_asset_upload:async i=>await r.init_asset_upload(i)})},ni=async({collection:t,satellite:e,filter:r})=>{let{list_assets:n}=await T(e),{items:i,items_length:o,items_page:s,matches_length:a,matches_pages:l}=await n(t,nt(r));return{items:i.map(([u,p])=>p),items_length:o,items_page:R(s),matches_length:a,matches_pages:R(l)}},ii=async({collection:t,satellite:e,filter:r})=>{let{count_assets:n}=await T(e);return n(t,nt(r))},oi=async({collection:t,fullPath:e,satellite:r})=>(await T(r)).del_asset(t,e),si=async({assets:t,satellite:e})=>{let{del_many_assets:r}=await T(e),n=t.map(({collection:i,fullPath:o})=>[i,o]);await r(n)},ai=async({collection:t,satellite:e,filter:r})=>{let{del_filtered_assets:n}=await T(e);return n(t,nt(r))},ci=async({collection:t,fullPath:e,satellite:r})=>{let{get_asset:n}=await T(r);return R(await n(t,e))},li=async({assets:t,satellite:e})=>{let{get_many_assets:r}=await T(e),n=t.map(({collection:o,fullPath:s})=>[o,s]);return(await r(n)).map(([o,s])=>R(s))};var ui=t=>btoa([...t].map(e=>String.fromCharCode(e)).join(""));var vu=t=>di(t),Pu=t=>di({filename:t.data.name,...t}),di=async({filename:t,data:e,collection:r,headers:n=[],fullPath:i,token:o,satellite:s,encoding:a,description:l})=>{let u=A(s?.identity),p=decodeURI(t),d=i??`/${r}/${p}`,f={...s,identity:u};return await ri({data:e,filename:p,collection:r,token:o,headers:n,fullPath:d,encoding:a,satellite:f,description:l}),{downloadUrl:pi({satellite:f,assetKey:{fullPath:d,token:o}}),fullPath:d,name:p}},Bu=async({collection:t,satellite:e,filter:r})=>{let n={...e,identity:A(e?.identity)},{items:i,...o}=await ni({collection:t,satellite:n,filter:r??{}}),s=i.map(({key:{full_path:a,token:l,name:u,owner:p,description:d},headers:f,encodings:y,created_at:x,updated_at:v})=>{let k=R(l);return{fullPath:a,description:R(d),name:u,downloadUrl:pi({satellite:n,assetKey:{fullPath:a,token:k}}),token:k,headers:f,encodings:y.reduce((g,[E,{modified:m,sha256:P,total_length:O}])=>({...g,[E]:{modified:m,sha256:ui(P),total_length:O}}),{}),owner:p.toText(),created_at:x,updated_at:v}});return{items:s,assets:s,...o}},Uu=async({collection:t,satellite:e,filter:r})=>{let n={...e,identity:A(e?.identity)};return await ii({collection:t,satellite:n,filter:r??{}})},ku=({collection:t,fullPath:e,satellite:r})=>oi({collection:t,fullPath:e,satellite:{...r,identity:A(r?.identity)}}),Fu=({assets:t,satellite:e})=>si({assets:t,satellite:{...e,identity:A(e?.identity)}}),Cu=async({collection:t,satellite:e,filter:r})=>{let n={...e,identity:A(e?.identity)};return await ai({collection:t,satellite:n,filter:r??{}})},Vu=async({satellite:t,...e})=>{let r=A(t?.identity);return await ci({...e,satellite:{...t,identity:r}})},Ku=async({satellite:t,...e})=>{let r=A(t?.identity);return await li({...e,satellite:{...t,identity:r}})},pi=({assetKey:{fullPath:t,token:e},satellite:r})=>{let n={...r,identity:A(r?.identity)};return`${Kn(n)}${t}${w(e)?`?token=${e}`:""}`};var fs=t=>{let e=t?.satelliteId??Ln();se(e,"Satellite ID is not configured. Juno cannot be initialized.");let r=t?.container??ti();return{satelliteId:e,internetIdentityId:t?.internetIdentityId,workers:t?.workers,container:r}},Gu=t=>ms(t),ms=async t=>{let e=fs(t);G.getInstance().set(e),await br();let r=e.workers?.auth!==void 0?Dn(e.workers.auth):void 0;return[...r?[r]:[]]},Yu=t=>Q.getInstance().subscribe(t);export{Ae as InitError,ge as InternetIdentityProvider,Ee as ListError,kn as NFIDProvider,we as SignInError,xe as SignInInitError,be as SignInUserInterruptError,Yu as authSubscribe,Uu as countAssets,Ml as countDocs,ku as deleteAsset,Cl as deleteDoc,Cu as deleteFilteredAssets,Kl as deleteFilteredDocs,Fu as deleteManyAssets,Vl as deleteManyDocs,pi as downloadUrl,Vu as getAsset,Qn as getDoc,Ku as getManyAssets,kl as getManyDocs,fu as getSatelliteExtendedActor,Gu as initJuno,ms as initSatellite,Bu as listAssets,jl as listDocs,Zn as setDoc,Fl as setManyDocs,ls as signIn,Ar as signOut,us as unsafeIdentity,vu as uploadBlob,Pu as uploadFile};
15
+ ic-request`);function ir(t){if(typeof t!="string"||t.length<64)throw new Error("Invalid public key.");return I(t)}var Tt=class{constructor(e,r,n){this.pubkey=e,this.expiration=r,this.targets=n}toCBOR(){return Et.value.map(Object.assign({pubkey:Et.value.bytes(this.pubkey),expiration:Et.value.u64(this.expiration.toString(16),16)},this.targets&&{targets:Et.value.array(this.targets.map(e=>Et.value.bytes(e.toUint8Array())))}))}toJSON(){return Object.assign({expiration:this.expiration.toString(16),pubkey:S(this.pubkey)},this.targets&&{targets:this.targets.map(e=>e.toHex())})}};async function qo(t,e,r,n){let i=new Tt(e.toDer(),BigInt(+r)*BigInt(1e6),n),o=new Uint8Array([...Mo,...new Uint8Array(je(Object.assign({},i)))]),s=await t.sign(o);return{delegation:i,signature:s}}var Vt=class t{constructor(e,r){this.delegations=e,this.publicKey=r}static async create(e,r,n=new Date(Date.now()+15*60*1e3),i={}){var o,s;let a=await qo(e,r,n,i.targets);return new t([...((o=i.previous)===null||o===void 0?void 0:o.delegations)||[],a],((s=i.previous)===null||s===void 0?void 0:s.publicKey)||e.getPublicKey().toDer())}static fromJSON(e){let{publicKey:r,delegations:n}=typeof e=="string"?JSON.parse(e):e;if(!Array.isArray(n))throw new Error("Invalid delegations.");let i=n.map(o=>{let{delegation:s,signature:a}=o,{pubkey:l,expiration:u,targets:p}=s;if(p!==void 0&&!Array.isArray(p))throw new Error("Invalid targets.");return{delegation:new Tt(ir(l),BigInt("0x"+u),p&&p.map(d=>{if(typeof d!="string")throw new Error("Invalid target.");return _.fromHex(d)})),signature:ir(a)}});return new this(i,ir(r))}static fromDelegations(e,r){return new this(e,r)}toJSON(){return{delegations:this.delegations.map(e=>{let{delegation:r,signature:n}=e,{targets:i}=r;return{delegation:Object.assign({expiration:r.expiration.toString(16),pubkey:S(r.pubkey)},i&&{targets:i.map(o=>o.toHex())}),signature:S(n)}}),publicKey:S(this.publicKey)}}},Kt=class extends st{constructor(e,r){super(),this._inner=e,this._delegation=r}static fromDelegation(e,r){return new this(e,r)}getDelegation(){return this._delegation}getPublicKey(){return{derKey:this._delegation.publicKey,toDer:()=>this._delegation.publicKey}}sign(e){return this._inner.sign(e)}async transformRequest(e){let{body:r}=e,n=jo(e,["body"]),i=await je(r);return Object.assign(Object.assign({},n),{body:{content:r,sender_sig:await this.sign(new Uint8Array([...$o,...new Uint8Array(i)])),sender_delegation:this._delegation.delegations,sender_pubkey:this._delegation.publicKey}})}},jt=class t extends ue{constructor(e,r){super(e),de.set(this,void 0),Vo(this,de,r,"f")}get delegation(){return Ko(this,de,"f")}static fromDelegation(e,r){return new t(e,r)}};de=new WeakMap;function pn(t,e){for(let{delegation:i}of t.delegations)if(+new Date(Number(i.expiration/BigInt(1e6)))<=+Date.now())return!1;let r=[],n=e?.scope;n&&(Array.isArray(n)?r.push(...n.map(i=>typeof i=="string"?_.fromText(i):i)):r.push(typeof n=="string"?_.fromText(n):n));for(let i of r){let o=i.toText();for(let{delegation:s}of t.delegations){if(s.targets===void 0)continue;let a=!0;for(let l of s.targets)if(l.toText()===o){a=!1;break}if(a)return!1}}return!0}var Jo=Ve(Yi());var fn;(function(t){t[t.ECDSA_WITH_SHA256=-7]="ECDSA_WITH_SHA256"})(fn||(fn={}));var mn=["mousedown","mousemove","keydown","touchstart","wheel"],Mt=class{constructor(e={}){var r;this.callbacks=[],this.idleTimeout=10*60*1e3,this.timeoutID=void 0;let{onIdle:n,idleTimeout:i=10*60*1e3}=e||{};this.callbacks=n?[n]:[],this.idleTimeout=i;let o=this._resetTimer.bind(this);window.addEventListener("load",o,!0),mn.forEach(function(a){document.addEventListener(a,o,!0)});let s=(a,l)=>{let u;return(...p)=>{let d=this,f=function(){u=void 0,a.apply(d,p)};clearTimeout(u),u=window.setTimeout(f,l)}};if(e?.captureScroll){let a=s(o,(r=e?.scrollDebounce)!==null&&r!==void 0?r:100);window.addEventListener("scroll",a,!0)}o()}static create(e={}){return new this(e)}registerCallback(e){this.callbacks.push(e)}exit(){clearTimeout(this.timeoutID),window.removeEventListener("load",this._resetTimer,!0);let e=this._resetTimer.bind(this);mn.forEach(function(r){document.removeEventListener(r,e,!0)}),this.callbacks.forEach(r=>r())}_resetTimer(){let e=this.exit.bind(this);window.clearTimeout(this.timeoutID),this.timeoutID=window.setTimeout(e,this.idleTimeout)}};var Wo=(t,e)=>e.some(r=>t instanceof r),hn,yn;function Go(){return hn||(hn=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function Yo(){return yn||(yn=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}var _n=new WeakMap,sr=new WeakMap,gn=new WeakMap,or=new WeakMap,cr=new WeakMap;function zo(t){let e=new Promise((r,n)=>{let i=()=>{t.removeEventListener("success",o),t.removeEventListener("error",s)},o=()=>{r(W(t.result)),i()},s=()=>{n(t.error),i()};t.addEventListener("success",o),t.addEventListener("error",s)});return e.then(r=>{r instanceof IDBCursor&&_n.set(r,t)}).catch(()=>{}),cr.set(e,t),e}function Xo(t){if(sr.has(t))return;let e=new Promise((r,n)=>{let i=()=>{t.removeEventListener("complete",o),t.removeEventListener("error",s),t.removeEventListener("abort",s)},o=()=>{r(),i()},s=()=>{n(t.error||new DOMException("AbortError","AbortError")),i()};t.addEventListener("complete",o),t.addEventListener("error",s),t.addEventListener("abort",s)});sr.set(t,e)}var ar={get(t,e,r){if(t instanceof IDBTransaction){if(e==="done")return sr.get(t);if(e==="objectStoreNames")return t.objectStoreNames||gn.get(t);if(e==="store")return r.objectStoreNames[1]?void 0:r.objectStore(r.objectStoreNames[0])}return W(t[e])},set(t,e,r){return t[e]=r,!0},has(t,e){return t instanceof IDBTransaction&&(e==="done"||e==="store")?!0:e in t}};function wn(t){ar=t(ar)}function Qo(t){return t===IDBDatabase.prototype.transaction&&!("objectStoreNames"in IDBTransaction.prototype)?function(e,...r){let n=t.call(pe(this),e,...r);return gn.set(n,e.sort?e.sort():[e]),W(n)}:Yo().includes(t)?function(...e){return t.apply(pe(this),e),W(_n.get(this))}:function(...e){return W(t.apply(pe(this),e))}}function Zo(t){return typeof t=="function"?Qo(t):(t instanceof IDBTransaction&&Xo(t),Wo(t,Go())?new Proxy(t,ar):t)}function W(t){if(t instanceof IDBRequest)return zo(t);if(or.has(t))return or.get(t);let e=Zo(t);return e!==t&&(or.set(t,e),cr.set(e,t)),e}var pe=t=>cr.get(t);function bn(t,e,{blocked:r,upgrade:n,blocking:i,terminated:o}={}){let s=indexedDB.open(t,e),a=W(s);return n&&s.addEventListener("upgradeneeded",l=>{n(W(s.result),l.oldVersion,l.newVersion,W(s.transaction),l)}),r&&s.addEventListener("blocked",l=>r(l.oldVersion,l.newVersion,l)),a.then(l=>{o&&l.addEventListener("close",()=>o()),i&&l.addEventListener("versionchange",u=>i(u.oldVersion,u.newVersion,u))}).catch(()=>{}),a}var Io=["get","getKey","getAll","getAllKeys","count"],Do=["put","add","delete","clear"],lr=new Map;function xn(t,e){if(!(t instanceof IDBDatabase&&!(e in t)&&typeof e=="string"))return;if(lr.get(e))return lr.get(e);let r=e.replace(/FromIndex$/,""),n=e!==r,i=Do.includes(r);if(!(r in(n?IDBIndex:IDBObjectStore).prototype)||!(i||Io.includes(r)))return;let o=async function(s,...a){let l=this.transaction(s,i?"readwrite":"readonly"),u=l.store;return n&&(u=u.index(a.shift())),(await Promise.all([u[r](...a),i&&l.done]))[0]};return lr.set(e,o),o}wn(t=>({...t,get:(e,r,n)=>xn(e,r)||t.get(e,r,n),has:(e,r)=>!!xn(e,r)||t.has(e,r)}));var An="auth-client-db",En="ic-keyval",Lo=async(t=An,e=En,r)=>(fe&&(localStorage!=null&&localStorage.getItem($))&&(localStorage.removeItem($),localStorage.removeItem(q)),await bn(t,r,{upgrade:n=>{n.objectStoreNames.contains(e)&&n.clear(e),n.createObjectStore(e)}}));async function ts(t,e,r){return await t.get(e,r)}async function es(t,e,r,n){return await t.put(e,n,r)}async function rs(t,e,r){return await t.delete(e,r)}var $t=class t{constructor(e,r){this._db=e,this._storeName=r}static async create(e){let{dbName:r=An,storeName:n=En,version:i=Tn}=e??{},o=await Lo(r,n,i);return new t(o,n)}async set(e,r){return await es(this._db,this._storeName,e,r)}async get(e){var r;return(r=await ts(this._db,this._storeName,e))!==null&&r!==void 0?r:null}async remove(e){return await rs(this._db,this._storeName,e)}};var ns=function(t,e,r,n,i){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!i)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!i:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?i.call(t,r):i?i.value=r:e.set(t,r),r},is=function(t,e,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(t):n?n.value:e.get(t)},me,q="identity",$="delegation",Nn="iv",Tn=1,fe=typeof window<"u",qt=class{constructor(e="ic-",r){this.prefix=e,this._localStorage=r}get(e){return Promise.resolve(this._getLocalStorage().getItem(this.prefix+e))}set(e,r){return this._getLocalStorage().setItem(this.prefix+e,r),Promise.resolve()}remove(e){return this._getLocalStorage().removeItem(this.prefix+e),Promise.resolve()}_getLocalStorage(){if(this._localStorage)return this._localStorage;let e=typeof window>"u"?typeof globalThis>"u"?typeof self>"u"?void 0:self.localStorage:globalThis.localStorage:window.localStorage;if(!e)throw new Error("Could not find local storage.");return e}},Ht=class{constructor(e){me.set(this,void 0),ns(this,me,e??{},"f")}get _db(){return new Promise(e=>{if(this.initializedDb){e(this.initializedDb);return}$t.create(is(this,me,"f")).then(r=>{this.initializedDb=r,e(r)})})}async get(e){return await(await this._db).get(e)}async set(e,r){await(await this._db).set(e,r)}async remove(e){await(await this._db).remove(e)}};me=new WeakMap;var os="https://identity.ic0.app",ss="#authorize",ur="ECDSA",dr="Ed25519",as=500,fr="UserInterrupt",he=class{constructor(e,r,n,i,o,s,a,l){this._identity=e,this._key=r,this._chain=n,this._storage=i,this.idleManager=o,this._createOptions=s,this._idpWindow=a,this._eventHandler=l,this._registerDefaultIdleCallback()}static async create(e={}){var r,n,i;let o=(r=e.storage)!==null&&r!==void 0?r:new Ht,s=(n=e.keyType)!==null&&n!==void 0?n:ur,a=null;if(e.identity)a=e.identity;else{let d=await o.get(q);if(!d&&fe)try{let f=new qt,y=await f.get($),x=await f.get(q);y&&x&&s===ur&&(console.log("Discovered an identity stored in localstorage. Migrating to IndexedDB"),await o.set($,y),await o.set(q,x),d=y,await f.remove($),await f.remove(q))}catch(f){console.error("error while attempting to recover localstorage: "+f)}if(d)try{typeof d=="object"?s===dr&&typeof d=="string"?a=await ut.fromJSON(d):a=await Ft.fromKeyPair(d):typeof d=="string"&&(a=ut.fromJSON(d))}catch{}}let l=new ft,u=null;if(a)try{let d=await o.get($);if(typeof d=="object"&&d!==null)throw new Error("Delegation chain is incorrectly stored. A delegation chain should be stored as a string.");e.identity?l=e.identity:d&&(u=Vt.fromJSON(d),pn(u)?"toDer"in a?l=jt.fromDelegation(a,u):l=Kt.fromDelegation(a,u):(await pr(o),a=null))}catch(d){console.error(d),await pr(o),a=null}let p;return!((i=e.idleOptions)===null||i===void 0)&&i.disableIdle?p=void 0:(u||e.identity)&&(p=Mt.create(e.idleOptions)),a||(s===dr?(a=await ut.generate(),await o.set(q,JSON.stringify(a.toJSON()))):(e.storage&&s===ur&&console.warn(`You are using a custom storage provider that may not support CryptoKey storage. If you are using a custom storage provider that does not support CryptoKey storage, you should use '${dr}' as the key type, as it can serialize to a string`),a=await Ft.generate(),await o.set(q,a.getKeyPair()))),new this(l,a,u,o,p,e)}_registerDefaultIdleCallback(){var e,r;let n=(e=this._createOptions)===null||e===void 0?void 0:e.idleOptions;!n?.onIdle&&!n?.disableDefaultIdleCallback&&((r=this.idleManager)===null||r===void 0||r.registerCallback(()=>{this.logout(),location.reload()}))}async _handleSuccess(e,r){var n,i;let o=e.delegations.map(u=>({delegation:new Tt(u.delegation.pubkey,u.delegation.expiration,u.delegation.targets),signature:u.signature.buffer})),s=Vt.fromDelegations(o,e.userPublicKey.buffer),a=this._key;if(!a)return;this._chain=s,"toDer"in a?this._identity=jt.fromDelegation(a,this._chain):this._identity=Kt.fromDelegation(a,this._chain),(n=this._idpWindow)===null||n===void 0||n.close();let l=(i=this._createOptions)===null||i===void 0?void 0:i.idleOptions;!this.idleManager&&!l?.disableIdle&&(this.idleManager=Mt.create(l),this._registerDefaultIdleCallback()),this._removeEventListener(),delete this._idpWindow,this._chain&&await this._storage.set($,JSON.stringify(this._chain.toJSON())),r?.(e)}getIdentity(){return this._identity}async isAuthenticated(){return!this.getIdentity().getPrincipal().isAnonymous()&&this._chain!==null}async login(e){var r,n,i,o;let s=BigInt(8)*BigInt(36e11),a=new URL(((r=e?.identityProvider)===null||r===void 0?void 0:r.toString())||os);a.hash=ss,(n=this._idpWindow)===null||n===void 0||n.close(),this._removeEventListener(),this._eventHandler=this._getEventHandler(a,Object.assign({maxTimeToLive:(i=e?.maxTimeToLive)!==null&&i!==void 0?i:s},e)),window.addEventListener("message",this._eventHandler),this._idpWindow=(o=window.open(a.toString(),"idpWindow",e?.windowOpenerFeatures))!==null&&o!==void 0?o:void 0;let l=()=>{this._idpWindow&&(this._idpWindow.closed?this._handleFailure(fr,e?.onError):setTimeout(l,as))};l()}_getEventHandler(e,r){return async n=>{var i,o,s;if(n.origin!==e.origin)return;let a=n.data;switch(a.kind){case"authorize-ready":{let l=Object.assign({kind:"authorize-client",sessionPublicKey:new Uint8Array((i=this._key)===null||i===void 0?void 0:i.getPublicKey().toDer()),maxTimeToLive:r?.maxTimeToLive,allowPinAuthentication:r?.allowPinAuthentication,derivationOrigin:(o=r?.derivationOrigin)===null||o===void 0?void 0:o.toString()},r?.customValues);(s=this._idpWindow)===null||s===void 0||s.postMessage(l,e.origin);break}case"authorize-client-success":try{await this._handleSuccess(a,r?.onSuccess)}catch(l){this._handleFailure(l.message,r?.onError)}break;case"authorize-client-failure":this._handleFailure(a.text,r?.onError);break;default:break}}}_handleFailure(e,r){var n;(n=this._idpWindow)===null||n===void 0||n.close(),r?.(e),this._removeEventListener(),delete this._idpWindow}_removeEventListener(){this._eventHandler&&window.removeEventListener("message",this._eventHandler),this._eventHandler=void 0}async logout(e={}){if(await pr(this._storage),this._identity=new ft,this._chain=null,e.returnTo)try{window.history.pushState({},"",e.returnTo)}catch{window.location.href=e.returnTo}}};async function pr(t){await t.remove(q),await t.remove($),await t.remove(Nn)}var Rn=BigInt(144e11),On=!1,Sn={width:576,height:576},vn={width:505,height:705},Pn="internetcomputer.org";var Nt="http://127.0.0.1:5987",Bn="rdmx6-jaaaa-aaaaa-aaadq-cai";var G=class t extends xt{static instance;env;constructor(){super()}static getInstance(){return t.instance||(t.instance=new t),t.instance}set(e){this.env=e,this.populate(e)}get(){return this.env}subscribe(e){let r=super.subscribe(e);return e(this.env),r}};var Un=async t=>{let e=new Blob([JSON.stringify(t,cn)],{type:"application/json; charset=utf-8"});return new Uint8Array(await e.arrayBuffer())},ye=async t=>{let e=new Blob([t instanceof Uint8Array?t:new Uint8Array(t)],{type:"application/json; charset=utf-8"});return JSON.parse(await e.text(),ln)},_e=()=>typeof window<"u";var mr=({width:t,height:e})=>{if(!_e()||h(window)||h(window.top))return;let{top:{innerWidth:r,innerHeight:n}}=window,i=n/2+screenY-e/2,o=r/2+screenX-t/2;return`toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=no, copyhistory=no, width=${t}, height=${e}, top=${i}, left=${o}`};var ge=class{#t;constructor({domain:e}){this.#t=e}get id(){return"internet_identity"}signInOptions({windowed:e}){let r=()=>{let n=G.getInstance().get()?.container;if(h(n)||n===!1)return`https://identity.${this.#t??Pn}`;let i=G.getInstance().get(),o=w(i)&&w(i?.internetIdentityId)?i.internetIdentityId:Bn,{host:s,protocol:a}=new URL(n===!0?Nt:n);return/apple/i.test(navigator?.vendor)?`${a}//${s}?canisterId=${o}`:`${a}//${o}.${s.replace("127.0.0.1","localhost")}`};return{...e!==!1&&{windowOpenerFeatures:mr(Sn)},identityProvider:r()}}},kn=class{#t;#e;constructor({appName:e,logoUrl:r}){this.#t=e,this.#e=r}get id(){return"nfid"}signInOptions({windowed:e}){return{...e!==!1&&{windowOpenerFeatures:mr(vn)},identityProvider:`https://nfid.one/authenticate/?applicationName=${encodeURI(this.#t)}&applicationLogo=${encodeURI(this.#e)}`}}};var Rt=class t{static instance;#t=void 0;constructor(){}static getInstance(){return h(t.instance)&&(t.instance=new t),t.instance}async getAgent({identity:e,...r}){let n=e.getPrincipal().toText();if(h(this.#t)||h(this.#t[n])){let i=await this.createAgent({identity:e,...r});return this.#t={...this.#t??{},[n]:i},i}return this.#t[n]}reset(){this.#t=null}async createAgent({identity:e,fetch:r,container:n}){let o=w(n)&&n!==!1?n===!0?Nt:n:"https://icp-api.io",s=w(n);return await Dt.create({identity:e,shouldFetchRootKey:s,host:o,...r&&{fetch:r}})}};var Ot=class t{static instance;#t=void 0;constructor(){}static getInstance(){return h(t.instance)&&(t.instance=new t),t.instance}async getActor({satelliteId:e,identity:r,buildType:n,...i}){let o=`${n}#${r.getPrincipal().toText()}#${e};`;if(h(this.#t)||h(this.#t[o])){let s=await this.createActor({satelliteId:e,identity:r,...i});return this.#t={...this.#t??{},[o]:s},s}return this.#t[o]}reset(){this.#t=null}async createActor({idlFactory:e,satelliteId:r,...n}){let i=await Rt.getInstance().getAgent(n);return tt.createActor(e,{agent:i,canisterId:r})}};var we=class extends Error{},xe=class extends Error{},be=class extends Error{},Ae=class extends Error{},Ee=class extends Error{};var Te=()=>he.create({idleOptions:{disableIdle:!0,disableDefaultIdleCallback:!0}});var hr="juno.datastore.error.user.cannot_update";var yr=({error:t,type:e})=>typeof t=="string"?t.includes(e):t instanceof Error?t.message.includes(e):!1;var Fn=async({data:t})=>{try{return await ye(t)}catch(e){console.error("The data parsing has failed, mapping to undefined as a fallback.",e);return}};var _r=async t=>{let{data:e,version:r,description:n}=t;return{description:b(n),data:await Un(e),version:b(r)}},gr=t=>{let{version:e}=t;return{version:b(e)}},Jt=async({doc:t,key:e})=>{let{owner:r,version:n,description:i,data:o,...s}=t;return{key:e,description:R(i),owner:r.toText(),data:await ye(o),version:R(n),...s}};var Cn=t=>{if(h(t))return b();switch(t.matcher){case"equal":return b({Equal:t.timestamp});case"greaterThan":return b({GreaterThan:t.timestamp});case"lessThan":return b({LessThan:t.timestamp});case"between":return b({Between:[t.timestamps.start,t.timestamps.end]});default:throw new Ee("Invalid list matcher for timestamp",t)}},nt=({matcher:t,paginate:e,order:r,owner:n})=>({matcher:h(t)?[]:[{key:b(t.key),description:b(t.description),created_at:Cn(t.createdAt),updated_at:Cn(t.updatedAt)}],paginate:b(h(e)?void 0:{start_after:b(e.startAfter),limit:b(h(e.limit)?void 0:BigInt(e.limit))}),order:b(h(r)?void 0:{desc:r.desc,field:r.field==="created_at"?{CreatedAt:null}:r.field==="updated_at"?{UpdatedAt:null}:{Keys:null}}),owner:b(h(n)?void 0:typeof n=="string"?_.fromText(n):n)});var Vn=({IDL:t})=>{let e=t.Record({batch_id:t.Nat,headers:t.Vec(t.Tuple(t.Text,t.Text)),chunk_ids:t.Vec(t.Nat)}),r=t.Variant({UpdatedAt:t.Null,Keys:t.Null,CreatedAt:t.Null}),n=t.Record({field:r,desc:t.Bool}),i=t.Variant({Equal:t.Nat64,Between:t.Tuple(t.Nat64,t.Nat64),GreaterThan:t.Nat64,LessThan:t.Nat64}),o=t.Record({key:t.Opt(t.Text),updated_at:t.Opt(i),description:t.Opt(t.Text),created_at:t.Opt(i)}),s=t.Record({start_after:t.Opt(t.Text),limit:t.Opt(t.Nat64)}),a=t.Record({order:t.Opt(n),owner:t.Opt(t.Principal),matcher:t.Opt(o),paginate:t.Opt(s)}),l=t.Record({controllers:t.Vec(t.Principal)}),u=t.Variant({Write:t.Null,Admin:t.Null}),p=t.Record({updated_at:t.Nat64,metadata:t.Vec(t.Tuple(t.Text,t.Text)),created_at:t.Nat64,scope:u,expires_at:t.Opt(t.Nat64)}),d=t.Record({version:t.Opt(t.Nat64)}),f=t.Variant({Db:t.Null,Storage:t.Null}),y=t.Record({version:t.Opt(t.Nat64)}),x=t.Record({cycles:t.Nat,destination_id:t.Principal}),v=t.Record({token:t.Opt(t.Text),collection:t.Text,owner:t.Principal,name:t.Text,description:t.Opt(t.Text),full_path:t.Text}),k=t.Record({modified:t.Nat64,sha256:t.Vec(t.Nat8),total_length:t.Nat}),g=t.Record({key:v,updated_at:t.Nat64,encodings:t.Vec(t.Tuple(t.Text,k)),headers:t.Vec(t.Tuple(t.Text,t.Text)),created_at:t.Nat64,version:t.Opt(t.Nat64)}),E=t.Record({derivation_origin:t.Opt(t.Text),external_alternative_origins:t.Opt(t.Vec(t.Text))}),m=t.Record({internet_identity:t.Opt(E)}),P=t.Record({stable:t.Opt(t.Nat64),heap:t.Opt(t.Nat64)}),O=t.Record({max_memory_size:t.Opt(P)}),V=t.Variant({Deny:t.Null,AllowAny:t.Null,SameOrigin:t.Null}),dt=t.Variant({Deny:t.Null,Allow:t.Null}),pt=t.Record({status_code:t.Nat16,location:t.Text}),K=t.Record({iframe:t.Opt(V),rewrites:t.Vec(t.Tuple(t.Text,t.Text)),headers:t.Vec(t.Tuple(t.Text,t.Vec(t.Tuple(t.Text,t.Text)))),max_memory_size:t.Opt(P),raw_access:t.Opt(dt),redirects:t.Opt(t.Vec(t.Tuple(t.Text,pt)))}),B=t.Record({db:t.Opt(O),authentication:t.Opt(m),storage:K}),j=t.Record({updated_at:t.Nat64,owner:t.Principal,data:t.Vec(t.Nat8),description:t.Opt(t.Text),created_at:t.Nat64,version:t.Opt(t.Nat64)}),it=t.Variant({Heap:t.Null,Stable:t.Null}),Z=t.Variant({Controllers:t.Null,Private:t.Null,Public:t.Null,Managed:t.Null}),ot=t.Record({max_tokens:t.Nat64,time_per_token_ns:t.Nat64}),z=t.Record({max_capacity:t.Opt(t.Nat32),memory:t.Opt(it),updated_at:t.Nat64,max_size:t.Opt(t.Nat),read:Z,created_at:t.Nat64,version:t.Opt(t.Nat64),mutable_permissions:t.Opt(t.Bool),rate_config:t.Opt(ot),write:Z,max_changes_per_user:t.Opt(t.Nat32)}),Re=t.Record({url:t.Text,method:t.Text,body:t.Vec(t.Nat8),headers:t.Vec(t.Tuple(t.Text,t.Text)),certificate_version:t.Opt(t.Nat16)}),St=t.Record({memory:it,token:t.Opt(t.Text),sha256:t.Opt(t.Vec(t.Nat8)),headers:t.Vec(t.Tuple(t.Text,t.Text)),index:t.Nat64,encoding_type:t.Text,full_path:t.Text}),Oe=t.Variant({Callback:t.Record({token:St,callback:t.Func([],[],["query"])})}),Se=t.Record({body:t.Vec(t.Nat8),headers:t.Vec(t.Tuple(t.Text,t.Text)),streaming_strategy:t.Opt(Oe),status_code:t.Nat16}),ve=t.Record({token:t.Opt(St),body:t.Vec(t.Nat8)}),Wt=t.Record({token:t.Opt(t.Text),collection:t.Text,name:t.Text,description:t.Opt(t.Text),encoding_type:t.Opt(t.Text),full_path:t.Text}),Pe=t.Record({batch_id:t.Nat}),Be=t.Record({matches_pages:t.Opt(t.Nat64),matches_length:t.Nat64,items_page:t.Opt(t.Nat64),items:t.Vec(t.Tuple(t.Text,g)),items_length:t.Nat64}),Ue=t.Record({updated_at:t.Nat64,created_at:t.Nat64,version:t.Opt(t.Nat64),bn_id:t.Opt(t.Text)}),ke=t.Record({matches_pages:t.Opt(t.Nat64),matches_length:t.Nat64,items_page:t.Opt(t.Nat64),items:t.Vec(t.Tuple(t.Text,j)),items_length:t.Nat64}),Fe=t.Record({stable:t.Nat64,heap:t.Nat64}),Gt=t.Record({metadata:t.Vec(t.Tuple(t.Text,t.Text)),scope:u,expires_at:t.Opt(t.Nat64)}),vt=t.Record({controller:Gt,controllers:t.Vec(t.Principal)}),Yt=t.Record({data:t.Vec(t.Nat8),description:t.Opt(t.Text),version:t.Opt(t.Nat64)}),zt=t.Record({max_capacity:t.Opt(t.Nat32),memory:t.Opt(it),max_size:t.Opt(t.Nat),read:Z,version:t.Opt(t.Nat64),mutable_permissions:t.Opt(t.Bool),rate_config:t.Opt(ot),write:Z,max_changes_per_user:t.Opt(t.Nat32)}),Pt=t.Record({content:t.Vec(t.Nat8),batch_id:t.Nat,order_id:t.Opt(t.Nat)}),Ce=t.Record({chunk_id:t.Nat});return t.Service({build_version:t.Func([],[t.Text],["query"]),commit_asset_upload:t.Func([e],[],[]),count_assets:t.Func([t.Text,a],[t.Nat64],["query"]),count_collection_assets:t.Func([t.Text],[t.Nat64],["query"]),count_collection_docs:t.Func([t.Text],[t.Nat64],["query"]),count_docs:t.Func([t.Text,a],[t.Nat64],["query"]),del_asset:t.Func([t.Text,t.Text],[],[]),del_assets:t.Func([t.Text],[],[]),del_controllers:t.Func([l],[t.Vec(t.Tuple(t.Principal,p))],[]),del_custom_domain:t.Func([t.Text],[],[]),del_doc:t.Func([t.Text,t.Text,d],[],[]),del_docs:t.Func([t.Text],[],[]),del_filtered_assets:t.Func([t.Text,a],[],[]),del_filtered_docs:t.Func([t.Text,a],[],[]),del_many_assets:t.Func([t.Vec(t.Tuple(t.Text,t.Text))],[],[]),del_many_docs:t.Func([t.Vec(t.Tuple(t.Text,t.Text,d))],[],[]),del_rule:t.Func([f,t.Text,y],[],[]),deposit_cycles:t.Func([x],[],[]),get_asset:t.Func([t.Text,t.Text],[t.Opt(g)],["query"]),get_auth_config:t.Func([],[t.Opt(m)],["query"]),get_config:t.Func([],[B],[]),get_db_config:t.Func([],[t.Opt(O)],["query"]),get_doc:t.Func([t.Text,t.Text],[t.Opt(j)],["query"]),get_many_assets:t.Func([t.Vec(t.Tuple(t.Text,t.Text))],[t.Vec(t.Tuple(t.Text,t.Opt(g)))],["query"]),get_many_docs:t.Func([t.Vec(t.Tuple(t.Text,t.Text))],[t.Vec(t.Tuple(t.Text,t.Opt(j)))],["query"]),get_rule:t.Func([f,t.Text],[t.Opt(z)],["query"]),get_storage_config:t.Func([],[K],["query"]),http_request:t.Func([Re],[Se],["query"]),http_request_streaming_callback:t.Func([St],[ve],["query"]),init_asset_upload:t.Func([Wt],[Pe],[]),list_assets:t.Func([t.Text,a],[Be],["query"]),list_controllers:t.Func([],[t.Vec(t.Tuple(t.Principal,p))],["query"]),list_custom_domains:t.Func([],[t.Vec(t.Tuple(t.Text,Ue))],["query"]),list_docs:t.Func([t.Text,a],[ke],["query"]),list_rules:t.Func([f],[t.Vec(t.Tuple(t.Text,z))],["query"]),memory_size:t.Func([],[Fe],["query"]),set_auth_config:t.Func([m],[],[]),set_controllers:t.Func([vt],[t.Vec(t.Tuple(t.Principal,p))],[]),set_custom_domain:t.Func([t.Text,t.Opt(t.Text)],[],[]),set_db_config:t.Func([O],[],[]),set_doc:t.Func([t.Text,t.Text,Yt],[j],[]),set_many_docs:t.Func([t.Vec(t.Tuple(t.Text,t.Text,Yt))],[t.Vec(t.Tuple(t.Text,j))],[]),set_rule:t.Func([f,t.Text,zt],[z],[]),set_storage_config:t.Func([K],[],[]),upload_asset_chunk:t.Func([Pt],[Ce],[]),version:t.Func([],[t.Text],["query"])})};var Kn=({satelliteId:t,container:e})=>{let{satelliteId:r}=wr({satelliteId:t}),{container:n}=xr({container:e});if(w(n)&&n!==!1){let{host:i,protocol:o}=new URL(n===!0?Nt:n);return`${o}//${r??"unknown"}.${i.replace("127.0.0.1","localhost")}`}return`https://${r??"unknown"}.icp0.io`},wr=({satelliteId:t})=>w(t)?{satelliteId:t}:G.getInstance().get()??{satelliteId:void 0},xr=({container:t})=>w(t)?{container:t}:G.getInstance().get()??{container:void 0};var T=t=>Mn({idlFactory:Vn,buildType:"stock",...t}),jn=({idlFactory:t,...e})=>Mn({idlFactory:t,buildType:"extended",...e}),Mn=async({satelliteId:t,container:e,...r})=>{let{satelliteId:n}=wr({satelliteId:t});se(n,"No satellite ID defined. Did you initialize Juno?");let{container:i}=xr({container:e});return await Ot.getInstance().getActor({satelliteId:n,container:i,...r})};var $n=async({collection:t,key:e,satellite:r})=>{let{get_doc:n}=await T(r),i=R(await n(t,e));if(!h(i))return Jt({doc:i,key:e})},qn=async({docs:t,satellite:e})=>{let{get_many_docs:r}=await T(e),n=t.map(({collection:s,key:a})=>[s,a]),i=await r(n),o=[];for(let[s,a]of i){let l=R(a);o.push(w(l)?await Jt({key:s,doc:l}):void 0)}return o},Hn=async({collection:t,doc:e,satellite:r})=>{let{set_doc:n}=await T(r),{key:i}=e,o=await _r(e),s=await n(t,i,o);return await Jt({key:i,doc:s})},Jn=async({docs:t,satellite:e})=>{let{set_many_docs:r}=await T(e),n=[];for(let{collection:s,doc:a}of t){let{key:l}=a;n.push([s,l,await _r(a)])}let i=await r(n),o=[];for(let[s,a]of i)o.push(await Jt({key:s,doc:a}));return o},Wn=async({collection:t,doc:e,satellite:r})=>{let{del_doc:n}=await T(r),{key:i}=e;return n(t,i,gr(e))},Gn=async({docs:t,satellite:e})=>{let{del_many_docs:r}=await T(e),n=t.map(({collection:i,doc:o})=>[i,o.key,gr(o)]);await r(n)},Yn=async({collection:t,filter:e,satellite:r})=>{let{del_filtered_docs:n}=await T(r);return n(t,nt(e))},zn=async({collection:t,filter:e,satellite:r})=>{let{list_docs:n}=await T(r),{items:i,items_page:o,items_length:s,matches_length:a,matches_pages:l}=await n(t,nt(e)),u=[];for(let[p,d]of i){let{data:f,owner:y,description:x,version:v,...k}=d;u.push({key:p,description:R(x),owner:y.toText(),data:await Fn({data:f}),version:R(v),...k})}return{items:u,items_length:s,items_page:R(o),matches_length:a,matches_pages:R(l)}},Xn=async({collection:t,filter:e,satellite:r})=>{let{count_docs:n}=await T(r);return n(t,nt(e))};var A=t=>t!==void 0?t:Ne()??new ft;var Qn=async({satellite:t,...e})=>{let r=A(t?.identity);return await $n({...e,satellite:{...t,identity:r}})},kl=async({satellite:t,...e})=>{let r=A(t?.identity);return await qn({...e,satellite:{...t,identity:r}})},Zn=async({satellite:t,...e})=>{let r=A(t?.identity);return await Hn({...e,satellite:{...t,identity:r}})},Fl=async({satellite:t,...e})=>{let r=A(t?.identity);return await Jn({...e,satellite:{...t,identity:r}})},Cl=async({satellite:t,...e})=>{let r=A(t?.identity);return await Wn({...e,satellite:{...t,identity:r}})},Vl=async({satellite:t,...e})=>{let r=A(t?.identity);return await Gn({...e,satellite:{...t,identity:r}})},Kl=async({satellite:t,filter:e,...r})=>{let n=A(t?.identity);return await Yn({...r,filter:e??{},satellite:{...t,identity:n}})},jl=async({satellite:t,filter:e,...r})=>{let n=A(t?.identity);return await zn({...r,filter:e??{},satellite:{...t,identity:n}})},Ml=async({satellite:t,filter:e,...r})=>{let n=A(t?.identity);return await Xn({...r,filter:e??{},satellite:{...t,identity:n}})};var In=async t=>{let e=Ne();if(h(e))throw new Ae("No identity to initialize the user. Have you initialized Juno?");let r=e.getPrincipal().toText(),n=()=>Qn({collection:"#user",key:r}),i=await n();if(w(i))return i;try{return await cs({userId:r,provider:t})}catch(o){if(yr({error:o,type:hr})){let s=await n();if(w(s))return s}throw o}},cs=({userId:t,...e})=>Zn({collection:"#user",doc:{key:t,data:e}});var Y,br=async t=>{if(Y=Y??await Te(),!(await Y?.isAuthenticated()??!1))return;let r=await In(t);Q.getInstance().set(r)},ls=t=>new Promise(async(e,r)=>{if(h(Y)){r(new xe("No client is ready to perform a sign-in. Have you initialized the Satellite?"));return}let n=t?.provider??new ge({});await Y.login({onSuccess:async()=>{await br(n.id),e()},onError:i=>{if(i===fr){r(new be(i));return}r(new we(i))},maxTimeToLive:t?.maxTimeToLive??Rn,allowPinAuthentication:t?.allowPin??On,...t?.derivationOrigin!==void 0&&{derivationOrigin:t.derivationOrigin},...n.signInOptions({windowed:t?.windowed})})}),Ar=async()=>{await Y?.logout(),Y=null,Q.getInstance().reset(),Ot.getInstance().reset(),Rt.getInstance().reset(),Y=await Te()},Ne=()=>Y?.getIdentity(),us=async()=>(Y??await Te()).getIdentity();var Dn=t=>{let e=t===!0?"./workers/auth.worker.js":t,r=new Worker(e),n=async()=>{rr({message:"junoSignOutAuthTimer"}),await Ar()};return r.onmessage=async({data:i})=>{let{msg:o,data:s}=i;switch(o){case"junoSignOutAuthTimer":await n();return;case"junoDelegationRemainingTime":rr({message:"junoDelegationRemainingTime",detail:s?.authRemainingTime});return}},Q.getInstance().subscribe(i=>{if(h(i)){r.postMessage({msg:"junoStopAuthTimer"});return}r.postMessage({msg:"junoStartAuthTimer"})})};var Ln=()=>{let t=()=>typeof import.meta<"u"&&typeof import.meta.env<"u"?import.meta.env?.VITE_SATELLITE_ID??import.meta.env?.PUBLIC_SATELLITE_ID:void 0;return typeof process<"u"?process.env?.NEXT_PUBLIC_SATELLITE_ID??t():t()},ti=()=>{let t=()=>typeof import.meta<"u"&&typeof import.meta.env<"u"?import.meta.env?.VITE_CONTAINER??import.meta.env?.PUBLIC_CONTAINER:void 0;return typeof process<"u"?process.env?.NEXT_PUBLIC_CONTAINER??t():t()};var pu=async({idlFactory:t,satellite:e})=>{let r=A(e?.identity);return await jn({idlFactory:t,...e,identity:r})};var ei=async({asset:{data:t,filename:e,collection:r,headers:n,token:i,fullPath:o,encoding:s,description:a},actor:l,init_asset_upload:u})=>{let{batch_id:p}=await u({collection:r,full_path:o,name:e,token:b(i),encoding_type:b(s),description:b(a)}),d=19e5,f=[],y=_e()?new Blob([await t.arrayBuffer()]):t,x=0n;for(let g=0;g<y.size;g+=d){let E=y.slice(g,g+d);f.push({batchId:p,chunk:E,actor:l,orderId:x}),x++}let v=[];for await(let g of ds({uploadChunks:f}))v=[...v,...g];let k=n.find(([g,E])=>g.toLowerCase()==="content-type")===void 0&&t.type!==void 0&&t.type!==""?[["Content-Type",t.type]]:void 0;await l.commit_asset_upload({batch_id:p,chunk_ids:v.map(({chunk_id:g})=>g),headers:[...n,...k??[]]})};async function*ds({uploadChunks:t,limit:e=12}){for(let r=0;r<t.length;r=r+e){let n=t.slice(r,r+e);yield await Promise.all(n.map(i=>ps(i)))}}var ps=async({batchId:t,chunk:e,actor:r,orderId:n})=>r.upload_asset_chunk({batch_id:t,content:new Uint8Array(await e.arrayBuffer()),order_id:b(n)});var ri=async({satellite:t,...e})=>{let r=await T(t);await ei({actor:r,asset:e,init_asset_upload:async i=>await r.init_asset_upload(i)})},ni=async({collection:t,satellite:e,filter:r})=>{let{list_assets:n}=await T(e),{items:i,items_length:o,items_page:s,matches_length:a,matches_pages:l}=await n(t,nt(r));return{items:i.map(([u,p])=>p),items_length:o,items_page:R(s),matches_length:a,matches_pages:R(l)}},ii=async({collection:t,satellite:e,filter:r})=>{let{count_assets:n}=await T(e);return n(t,nt(r))},oi=async({collection:t,fullPath:e,satellite:r})=>(await T(r)).del_asset(t,e),si=async({assets:t,satellite:e})=>{let{del_many_assets:r}=await T(e),n=t.map(({collection:i,fullPath:o})=>[i,o]);await r(n)},ai=async({collection:t,satellite:e,filter:r})=>{let{del_filtered_assets:n}=await T(e);return n(t,nt(r))},ci=async({collection:t,fullPath:e,satellite:r})=>{let{get_asset:n}=await T(r);return R(await n(t,e))},li=async({assets:t,satellite:e})=>{let{get_many_assets:r}=await T(e),n=t.map(({collection:o,fullPath:s})=>[o,s]);return(await r(n)).map(([o,s])=>R(s))};var ui=t=>btoa([...t].map(e=>String.fromCharCode(e)).join(""));var Su=t=>di(t),vu=t=>di({filename:t.data.name,...t}),di=async({filename:t,data:e,collection:r,headers:n=[],fullPath:i,token:o,satellite:s,encoding:a,description:l})=>{let u=A(s?.identity),p=decodeURI(t),d=i??`/${r}/${p}`,f={...s,identity:u};return await ri({data:e,filename:p,collection:r,token:o,headers:n,fullPath:d,encoding:a,satellite:f,description:l}),{downloadUrl:pi({satellite:f,assetKey:{fullPath:d,token:o}}),fullPath:d,name:p}},Pu=async({collection:t,satellite:e,filter:r})=>{let n={...e,identity:A(e?.identity)},{items:i,...o}=await ni({collection:t,satellite:n,filter:r??{}}),s=i.map(({key:{full_path:a,token:l,name:u,owner:p,description:d},headers:f,encodings:y,created_at:x,updated_at:v})=>{let k=R(l);return{fullPath:a,description:R(d),name:u,downloadUrl:pi({satellite:n,assetKey:{fullPath:a,token:k}}),token:k,headers:f,encodings:y.reduce((g,[E,{modified:m,sha256:P,total_length:O}])=>({...g,[E]:{modified:m,sha256:ui(P),total_length:O}}),{}),owner:p.toText(),created_at:x,updated_at:v}});return{items:s,assets:s,...o}},Bu=async({collection:t,satellite:e,filter:r})=>{let n={...e,identity:A(e?.identity)};return await ii({collection:t,satellite:n,filter:r??{}})},Uu=({collection:t,fullPath:e,satellite:r})=>oi({collection:t,fullPath:e,satellite:{...r,identity:A(r?.identity)}}),ku=({assets:t,satellite:e})=>si({assets:t,satellite:{...e,identity:A(e?.identity)}}),Fu=async({collection:t,satellite:e,filter:r})=>{let n={...e,identity:A(e?.identity)};return await ai({collection:t,satellite:n,filter:r??{}})},Cu=async({satellite:t,...e})=>{let r=A(t?.identity);return await ci({...e,satellite:{...t,identity:r}})},Vu=async({satellite:t,...e})=>{let r=A(t?.identity);return await li({...e,satellite:{...t,identity:r}})},pi=({assetKey:{fullPath:t,token:e},satellite:r})=>{let n={...r,identity:A(r?.identity)};return`${Kn(n)}${t}${w(e)?`?token=${e}`:""}`};var fs=t=>{let e=t?.satelliteId??Ln();se(e,"Satellite ID is not configured. Juno cannot be initialized.");let r=t?.container??ti();return{satelliteId:e,internetIdentityId:t?.internetIdentityId,workers:t?.workers,container:r}},Wu=t=>ms(t),ms=async t=>{let e=fs(t);G.getInstance().set(e),await br();let r=e.workers?.auth!==void 0?Dn(e.workers.auth):void 0;return[...r?[r]:[]]},Gu=t=>Q.getInstance().subscribe(t);export{Ae as InitError,ge as InternetIdentityProvider,Ee as ListError,kn as NFIDProvider,we as SignInError,xe as SignInInitError,be as SignInUserInterruptError,Gu as authSubscribe,Bu as countAssets,Ml as countDocs,Uu as deleteAsset,Cl as deleteDoc,Fu as deleteFilteredAssets,Kl as deleteFilteredDocs,ku as deleteManyAssets,Vl as deleteManyDocs,pi as downloadUrl,Cu as getAsset,Qn as getDoc,Vu as getManyAssets,kl as getManyDocs,pu as getSatelliteExtendedActor,Wu as initJuno,ms as initSatellite,Pu as listAssets,jl as listDocs,Zn as setDoc,Fl as setManyDocs,ls as signIn,Ar as signOut,us as unsafeIdentity,Su as uploadBlob,vu as uploadFile};
16
16
  /*! Bundled license information:
17
17
 
18
18
  buffer/index.js: