@junobuild/core-peer 1.2.1 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/index.js +1 -1
- package/dist/browser/index.js.map +4 -4
- package/dist/node/index.mjs +1 -1
- package/dist/node/index.mjs.map +4 -4
- package/dist/types/{constants → auth/constants}/auth.constants.d.ts +1 -0
- package/dist/types/auth/helpers/progress.helpers.d.ts +6 -0
- package/dist/types/auth/helpers/window.helpers.d.ts +3 -0
- package/dist/types/auth/providers/_auth-client.providers.d.ts +74 -0
- package/dist/types/auth/providers/internet-identity.providers.d.ts +28 -0
- package/dist/types/auth/providers/nfid.providers.d.ts +28 -0
- package/dist/types/auth/providers/webauthn.providers.d.ts +40 -0
- package/dist/types/auth/services/_user.services.d.ts +11 -0
- package/dist/types/auth/services/auth-timout.services.d.ts +3 -0
- package/dist/types/{services → auth/services}/auth.services.d.ts +25 -6
- package/dist/types/auth/services/user-webauthn.services.d.ts +8 -0
- package/dist/types/{stores → auth/stores}/auth.store.d.ts +3 -3
- package/dist/types/auth/types/auth-client.d.ts +43 -0
- package/dist/types/auth/types/auth.d.ts +63 -0
- package/dist/types/{types → auth/types}/errors.d.ts +6 -0
- package/dist/types/auth/types/internet-identity.d.ts +23 -0
- package/dist/types/auth/types/nfid.d.ts +22 -0
- package/dist/types/auth/types/progress.d.ts +20 -0
- package/dist/types/auth/types/provider.d.ts +32 -0
- package/dist/types/auth/types/user.d.ts +23 -0
- package/dist/types/auth/types/webauthn.d.ts +74 -0
- package/dist/types/{utils → auth/utils}/auth.utils.d.ts +1 -0
- package/dist/types/{api → datastore/api}/doc.api.d.ts +2 -2
- package/dist/types/{services → datastore/services}/doc.services.d.ts +3 -3
- package/dist/types/{types → datastore/types}/doc.d.ts +1 -1
- package/dist/types/{services → functions/services}/functions.services.d.ts +1 -1
- package/dist/types/index.d.ts +32 -22
- package/dist/types/{api → storage/api}/storage.api.d.ts +2 -2
- package/dist/types/{services → storage/services}/storage.services.d.ts +4 -4
- package/dist/types/{types/storage.types.d.ts → storage/types/storage.d.ts} +1 -1
- package/dist/workers/auth.worker.js +4 -4
- package/dist/workers/auth.worker.js.map +3 -3
- package/package.json +3 -3
- package/dist/types/providers/auth.providers.d.ts +0 -79
- package/dist/types/services/_user.services.d.ts +0 -2
- package/dist/types/services/auth-timout.services.d.ts +0 -3
- package/dist/types/types/auth.d.ts +0 -90
- package/dist/workers/_auth.worker.handler.js +0 -43
- package/dist/workers/_auth.worker.handler.js.map +0 -7
- /package/dist/types/{types → auth/types}/post-message.d.ts +0 -0
- /package/dist/types/{utils → auth/utils}/events.utils.d.ts +0 -0
- /package/dist/types/{utils → auth/utils}/window.utils.d.ts +0 -0
- /package/dist/types/{workers/_auth.worker.handler.d.ts → auth/workers/auth.worker.d.ts} +0 -0
- /package/dist/types/{api → core/api}/actor.api.d.ts +0 -0
- /package/dist/types/{constants → core/constants}/call-options.constants.d.ts +0 -0
- /package/dist/types/{constants → core/constants}/container.constants.d.ts +0 -0
- /package/dist/types/{services/_identity.services.d.ts → core/services/identity.services.d.ts} +0 -0
- /package/dist/types/{stores → core/stores}/_agent.factory.d.ts +0 -0
- /package/dist/types/{stores → core/stores}/_store.d.ts +0 -0
- /package/dist/types/{stores → core/stores}/actor.store.d.ts +0 -0
- /package/dist/types/{stores → core/stores}/agent.store.d.ts +0 -0
- /package/dist/types/{stores → core/stores}/env.store.d.ts +0 -0
- /package/dist/types/{types → core/types}/actor.d.ts +0 -0
- /package/dist/types/{types → core/types}/call-options.d.ts +0 -0
- /package/dist/types/{types → core/types}/env.d.ts +0 -0
- /package/dist/types/{types → core/types}/list.d.ts +0 -0
- /package/dist/types/{types → core/types}/satellite.d.ts +0 -0
- /package/dist/types/{types → core/types}/subscription.d.ts +0 -0
- /package/dist/types/{types → core/types}/utility.d.ts +0 -0
- /package/dist/types/{utils → core/utils}/env.utils.d.ts +0 -0
- /package/dist/types/{utils → core/utils}/list.utils.d.ts +0 -0
- /package/dist/types/{utils → core/utils}/window.env.utils.d.ts +0 -0
- /package/dist/types/{utils → datastore/utils}/data.utils.d.ts +0 -0
- /package/dist/types/{utils → datastore/utils}/doc.utils.d.ts +0 -0
- /package/dist/types/{utils → storage/utils}/crypto.utils.d.ts +0 -0
package/dist/node/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { createRequire as topLevelCreateRequire } from 'module';
|
|
2
2
|
const require = topLevelCreateRequire(import.meta.url);
|
|
3
|
-
import{assertNonNullish as Pr}from"@dfinity/utils";import{isNullish as Rr}from"@dfinity/utils";var B=class{callbacks=[];populate(a){this.callbacks.forEach(({callback:r})=>r(a))}subscribe(a){let r=Symbol();return this.callbacks.push({id:r,callback:a}),()=>this.callbacks=this.callbacks.filter(({id:o})=>o!==r)}};var R=class e extends B{static instance;authUser=null;constructor(){super()}static getInstance(){return e.instance||(e.instance=new e),e.instance}set(a){this.authUser=a,this.populate(a)}get(){return this.authUser}subscribe(a){let r=super.subscribe(a);return a(this.authUser),r}reset(){this.authUser=null,this.populate(this.authUser)}};var Me=({message:e,detail:a})=>{let r=new CustomEvent(e,{detail:a,bubbles:!0});document.dispatchEvent(r)};import{ERROR_USER_INTERRUPT as Tr}from"@dfinity/auth-client";import{isNullish as Ca}from"@dfinity/utils";var aa=BigInt(144e11),ra=!1,oa={width:576,height:576},ca={width:505,height:705},na="internetcomputer.org";import{isNullish as ar,nonNullish as la}from"@dfinity/utils";var M="http://127.0.0.1:5987",ia="rdmx6-jaaaa-aaaaa-aaadq-cai";var y=class e extends B{static instance;env;constructor(){super()}static getInstance(){return e.instance||(e.instance=new e),e.instance}set(a){this.env=a,this.populate(a)}get(){return this.env}reset(){this.env=null}subscribe(a){let r=super.subscribe(a);return a(this.env),r}};import{isNullish as ta}from"@dfinity/utils";import{jsonReplacer as Za,jsonReviver as er}from"@dfinity/utils";var sa=async e=>{let a=new Blob([JSON.stringify(e,Za)],{type:"application/json; charset=utf-8"});return new Uint8Array(await a.arrayBuffer())},ce=async e=>{let a=new Blob([e instanceof Uint8Array?e:new Uint8Array(e)],{type:"application/json; charset=utf-8"});return JSON.parse(await a.text(),er)},ne=()=>typeof window<"u";var Je=({width:e,height:a})=>{if(!ne()||ta(window)||ta(window.top))return;let{top:{innerWidth:r,innerHeight:o}}=window,c=o/2+screenY-a/2,n=r/2+screenX-e/2;return`toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=no, copyhistory=no, width=${e}, height=${a}, top=${c}, left=${n}`};var ie=class{#e;constructor({domain:a}){this.#e=a}get id(){return"internet_identity"}signInOptions({windowed:a}){let r=()=>{let o=y.getInstance().get()?.container;if(ar(o)||o===!1)return`https://identity.${this.#e??na}`;let c=y.getInstance().get(),n=la(c)&&la(c?.internetIdentityId)?c.internetIdentityId:ia,{host:i,protocol:s}=new URL(o===!0?M:o);return/apple/i.test(navigator?.vendor)?`${s}//${i}?canisterId=${n}`:`${s}//${n}.${i.replace("127.0.0.1","localhost")}`};return{...a!==!1&&{windowOpenerFeatures:Je(oa)},identityProvider:r()}}},pa=class{#e;#a;constructor({appName:a,logoUrl:r}){this.#e=a,this.#a=r}get id(){return"nfid"}signInOptions({windowed:a}){return{...a!==!1&&{windowOpenerFeatures:Je(ca)},identityProvider:`https://nfid.one/authenticate/?applicationName=${encodeURI(this.#e)}&applicationLogo=${encodeURI(this.#a)}`}}};import{Actor as or}from"@dfinity/agent";import{isNullish as Ke}from"@dfinity/utils";import{isNullish as ze}from"@dfinity/utils";import{HttpAgent as rr}from"@dfinity/agent";import{nonNullish as da}from"@dfinity/utils";var _a=async({identity:e,container:a})=>{let o=da(a)&&a!==!1?a===!0?M:a:"https://icp-api.io",c=da(a);return await rr.create({identity:e,shouldFetchRootKey:c,host:o})};var J=class e{static instance;#e=void 0;constructor(){}static getInstance(){return ze(e.instance)&&(e.instance=new e),e.instance}async getAgent({identity:a,...r}){let o=a.getPrincipal().toText();if(ze(this.#e)||ze(this.#e[o])){let c=await _a({identity:a,...r});return this.#e={...this.#e??{},[o]:c},c}return this.#e[o]}reset(){this.#e=null}};var z=class e{static instance;#e=void 0;constructor(){}static getInstance(){return Ke(e.instance)&&(e.instance=new e),e.instance}async getActor({satelliteId:a,identity:r,actorKey:o,...c}){let n=`${o}#${r.getPrincipal().toText()}#${a};`;if(Ke(this.#e)||Ke(this.#e[n])){let i=await this.createActor({satelliteId:a,identity:r,...c});return this.#e={...this.#e??{},[n]:i},i}return this.#e[n]}reset(){this.#e=null}async createActor({idlFactory:a,satelliteId:r,...o}){let c=await J.getInstance().getAgent(o);return or.createActor(a,{agent:c,canisterId:r})}};var se=class extends Error{},te=class extends Error{},le=class extends Error{},pe=class extends Error{},de=class extends Error{};import{AuthClient as cr}from"@dfinity/auth-client";var _e=()=>cr.create({idleOptions:{disableIdle:!0,disableDefaultIdleCallback:!0}});import{isNullish as _r,nonNullish as wa}from"@dfinity/utils";var Ge=({error:e,type:a})=>typeof e=="string"?e.includes(a):e instanceof Error?e.message.includes(a):!1;var ua="juno.datastore.error.user.cannot_update";import{fromNullable as G,isNullish as tr,nonNullish as lr}from"@dfinity/utils";var Ta=async({data:e})=>{try{return await ce(e)}catch(a){console.error("The data parsing has failed, mapping to undefined as a fallback.",a);return}};import{fromNullable as Na,toNullable as He}from"@dfinity/utils";var We=async e=>{let{data:a,version:r,description:o}=e;return{description:He(o),data:await sa(a),version:He(r)}},$e=e=>{let{version:a}=e;return{version:He(a)}},re=async({doc:e,key:a})=>{let{owner:r,version:o,description:c,data:n,...i}=e;return{key:a,description:Na(c),owner:r.toText(),data:await ce(n),version:Na(o),...i}};import{Principal as nr}from"@dfinity/principal";import{isNullish as K,toNullable as m}from"@dfinity/utils";var ma=e=>{if(K(e))return m();switch(e.matcher){case"equal":return m({Equal:e.timestamp});case"greaterThan":return m({GreaterThan:e.timestamp});case"lessThan":return m({LessThan:e.timestamp});case"between":return m({Between:[e.timestamps.start,e.timestamps.end]});default:throw new de("Invalid list matcher for timestamp",e)}},P=({matcher:e,paginate:a,order:r,owner:o})=>({matcher:K(e)?[]:[{key:m(e.key),description:m(e.description),created_at:ma(e.createdAt),updated_at:ma(e.updatedAt)}],paginate:m(K(a)?void 0:{start_after:m(a.startAfter),limit:m(K(a.limit)?void 0:BigInt(a.limit))}),order:m(K(r)?void 0:{desc:r.desc,field:r.field==="created_at"?{CreatedAt:null}:r.field==="updated_at"?{UpdatedAt:null}:{Keys:null}}),owner:m(K(o)?void 0:typeof o=="string"?nr.fromText(o):o)});import{assertNonNullish as sr}from"@dfinity/utils";import{Actor as fo}from"@dfinity/agent";import"@dfinity/agent";import"@dfinity/agent";import"@dfinity/principal";import{HttpAgent as wo}from"@dfinity/agent";var ir=(e=>(e[e.FractionalMoreThan8Decimals=0]="FractionalMoreThan8Decimals",e[e.InvalidFormat=1]="InvalidFormat",e[e.FractionalTooManyDecimals=2]="FractionalTooManyDecimals",e))(ir||{}),Do=BigInt(1e8);var Oa="abcdefghijklmnopqrstuvwxyz234567",oe=Object.create(null);for(let e=0;e<Oa.length;e++)oe[Oa[e]]=e;oe[0]=oe.o;oe[1]=oe.i;var So=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 xa=({IDL:e})=>{let a=e.Record({batch_id:e.Nat,headers:e.Vec(e.Tuple(e.Text,e.Text)),chunk_ids:e.Vec(e.Nat)}),r=e.Record({sha256:e.Vec(e.Nat8),proposal_id:e.Nat}),o=e.Variant({UpdatedAt:e.Null,Keys:e.Null,CreatedAt:e.Null}),c=e.Record({field:o,desc:e.Bool}),n=e.Variant({Equal:e.Nat64,Between:e.Tuple(e.Nat64,e.Nat64),GreaterThan:e.Nat64,LessThan:e.Nat64}),i=e.Record({key:e.Opt(e.Text),updated_at:e.Opt(n),description:e.Opt(e.Text),created_at:e.Opt(n)}),s=e.Record({start_after:e.Opt(e.Text),limit:e.Opt(e.Nat64)}),t=e.Record({order:e.Opt(c),owner:e.Opt(e.Principal),matcher:e.Opt(i),paginate:e.Opt(s)}),u=e.Record({controllers:e.Vec(e.Principal)}),d=e.Variant({Write:e.Null,Admin:e.Null,Submit:e.Null}),_=e.Record({updated_at:e.Nat64,metadata:e.Vec(e.Tuple(e.Text,e.Text)),created_at:e.Nat64,scope:d,expires_at:e.Opt(e.Nat64)}),N=e.Record({version:e.Opt(e.Nat64)}),T=e.Variant({Db:e.Null,Storage:e.Null}),E=e.Record({version:e.Opt(e.Nat64)}),v=e.Record({proposal_ids:e.Vec(e.Nat)}),b=e.Record({cycles:e.Nat,destination_id:e.Principal}),j=e.Record({token:e.Opt(e.Text),collection:e.Text,owner:e.Principal,name:e.Text,description:e.Opt(e.Text),full_path:e.Text}),H=e.Record({modified:e.Nat64,sha256:e.Vec(e.Nat8),total_length:e.Nat}),F=e.Record({key:j,updated_at:e.Nat64,encodings:e.Vec(e.Tuple(e.Text,H)),headers:e.Vec(e.Tuple(e.Text,e.Text)),created_at:e.Nat64,version:e.Opt(e.Nat64)}),D=e.Record({derivation_origin:e.Opt(e.Text),external_alternative_origins:e.Opt(e.Vec(e.Text))}),S=e.Record({allowed_callers:e.Vec(e.Principal)}),f=e.Record({updated_at:e.Opt(e.Nat64),created_at:e.Opt(e.Nat64),version:e.Opt(e.Nat64),internet_identity:e.Opt(D),rules:e.Opt(S)}),h=e.Record({stable:e.Opt(e.Nat64),heap:e.Opt(e.Nat64)}),I=e.Record({updated_at:e.Opt(e.Nat64),created_at:e.Opt(e.Nat64),version:e.Opt(e.Nat64),max_memory_size:e.Opt(h)}),W=e.Variant({Deny:e.Null,AllowAny:e.Null,SameOrigin:e.Null}),$=e.Variant({Deny:e.Null,Allow:e.Null}),Y=e.Record({status_code:e.Nat16,location:e.Text}),w=e.Record({iframe:e.Opt(W),updated_at:e.Opt(e.Nat64),rewrites:e.Vec(e.Tuple(e.Text,e.Text)),headers:e.Vec(e.Tuple(e.Text,e.Vec(e.Tuple(e.Text,e.Text)))),created_at:e.Opt(e.Nat64),version:e.Opt(e.Nat64),max_memory_size:e.Opt(h),raw_access:e.Opt($),redirects:e.Opt(e.Vec(e.Tuple(e.Text,Y)))}),me=e.Record({db:e.Opt(I),authentication:e.Opt(f),storage:w}),x=e.Record({updated_at:e.Nat64,owner:e.Principal,data:e.Vec(e.Nat8),description:e.Opt(e.Text),created_at:e.Nat64,version:e.Opt(e.Nat64)}),Oe=e.Variant({Initialized:e.Null,Failed:e.Null,Open:e.Null,Rejected:e.Null,Executed:e.Null,Accepted:e.Null}),xe=e.Record({clear_existing_assets:e.Opt(e.Bool)}),Re=e.Record({orbiter:e.Opt(e.Text),mission_control_version:e.Opt(e.Text),satellite_version:e.Opt(e.Text)}),X=e.Variant({AssetsUpgrade:xe,SegmentsDeployment:Re}),V=e.Record({status:Oe,updated_at:e.Nat64,sha256:e.Opt(e.Vec(e.Nat8)),executed_at:e.Opt(e.Nat64),owner:e.Principal,created_at:e.Nat64,version:e.Opt(e.Nat64),proposal_type:X}),k=e.Variant({Heap:e.Null,Stable:e.Null}),A=e.Variant({Controllers:e.Null,Private:e.Null,Public:e.Null,Managed:e.Null}),Q=e.Record({max_tokens:e.Nat64,time_per_token_ns:e.Nat64}),C=e.Record({max_capacity:e.Opt(e.Nat32),memory:e.Opt(k),updated_at:e.Nat64,max_size:e.Opt(e.Nat),read:A,created_at:e.Nat64,version:e.Opt(e.Nat64),mutable_permissions:e.Opt(e.Bool),rate_config:e.Opt(Q),write:A,max_changes_per_user:e.Opt(e.Nat32)}),ye=e.Record({url:e.Text,method:e.Text,body:e.Vec(e.Nat8),headers:e.Vec(e.Tuple(e.Text,e.Text)),certificate_version:e.Opt(e.Nat16)}),U=e.Record({memory:k,token:e.Opt(e.Text),sha256:e.Opt(e.Vec(e.Nat8)),headers:e.Vec(e.Tuple(e.Text,e.Text)),index:e.Nat64,encoding_type:e.Text,full_path:e.Text}),ge=e.Variant({Callback:e.Record({token:U,callback:e.Func([],[],["query"])})}),Fe=e.Record({body:e.Vec(e.Nat8),headers:e.Vec(e.Tuple(e.Text,e.Text)),streaming_strategy:e.Opt(ge),status_code:e.Nat16}),fe=e.Record({token:e.Opt(U),body:e.Vec(e.Nat8)}),L=e.Record({token:e.Opt(e.Text),collection:e.Text,name:e.Text,description:e.Opt(e.Text),encoding_type:e.Opt(e.Text),full_path:e.Text}),q=e.Record({batch_id:e.Nat}),he=e.Record({matches_pages:e.Opt(e.Nat64),matches_length:e.Nat64,items_page:e.Opt(e.Nat64),items:e.Vec(e.Tuple(e.Text,F)),items_length:e.Nat64}),Ve=e.Record({updated_at:e.Nat64,created_at:e.Nat64,version:e.Opt(e.Nat64),bn_id:e.Opt(e.Text)}),Ae=e.Record({matches_pages:e.Opt(e.Nat64),matches_length:e.Nat64,items_page:e.Opt(e.Nat64),items:e.Vec(e.Tuple(e.Text,x)),items_length:e.Nat64}),Pe=e.Record({desc:e.Bool}),Ee=e.Record({start_after:e.Opt(e.Nat),limit:e.Opt(e.Nat)}),ve=e.Record({order:e.Opt(Pe),paginate:e.Opt(Ee)}),be=e.Record({proposal_id:e.Nat}),De=e.Record({matches_length:e.Nat64,items:e.Vec(e.Tuple(be,V)),items_length:e.Nat64}),Se=e.Record({include_system:e.Bool}),Ie=e.Record({matcher:e.Opt(Se)}),we=e.Record({matches_length:e.Nat64,items:e.Vec(e.Tuple(e.Text,C)),items_length:e.Nat64}),ke=e.Record({stable:e.Nat64,heap:e.Nat64}),Ce=e.Record({version:e.Opt(e.Nat64),internet_identity:e.Opt(D),rules:e.Opt(S)}),Ue=e.Record({metadata:e.Vec(e.Tuple(e.Text,e.Text)),scope:d,expires_at:e.Opt(e.Nat64)}),Le=e.Record({controller:Ue,controllers:e.Vec(e.Principal)}),qe=e.Record({version:e.Opt(e.Nat64),max_memory_size:e.Opt(h)}),Z=e.Record({data:e.Vec(e.Nat8),description:e.Opt(e.Text),version:e.Opt(e.Nat64)}),je=e.Record({max_capacity:e.Opt(e.Nat32),memory:e.Opt(k),max_size:e.Opt(e.Nat),read:A,version:e.Opt(e.Nat64),mutable_permissions:e.Opt(e.Bool),rate_config:e.Opt(Q),write:A,max_changes_per_user:e.Opt(e.Nat32)}),Be=e.Record({iframe:e.Opt(W),rewrites:e.Vec(e.Tuple(e.Text,e.Text)),headers:e.Vec(e.Tuple(e.Text,e.Vec(e.Tuple(e.Text,e.Text)))),version:e.Opt(e.Nat64),max_memory_size:e.Opt(h),raw_access:e.Opt($),redirects:e.Opt(e.Vec(e.Tuple(e.Text,Y)))}),ee=e.Record({content:e.Vec(e.Nat8),batch_id:e.Nat,order_id:e.Opt(e.Nat)}),ae=e.Record({chunk_id:e.Nat});return e.Service({commit_asset_upload:e.Func([a],[],[]),commit_proposal:e.Func([r],[e.Null],[]),commit_proposal_asset_upload:e.Func([a],[],[]),commit_proposal_many_assets_upload:e.Func([e.Vec(a)],[],[]),count_assets:e.Func([e.Text,t],[e.Nat64],["query"]),count_collection_assets:e.Func([e.Text],[e.Nat64],["query"]),count_collection_docs:e.Func([e.Text],[e.Nat64],["query"]),count_docs:e.Func([e.Text,t],[e.Nat64],["query"]),count_proposals:e.Func([],[e.Nat64],["query"]),del_asset:e.Func([e.Text,e.Text],[],[]),del_assets:e.Func([e.Text],[],[]),del_controllers:e.Func([u],[e.Vec(e.Tuple(e.Principal,_))],[]),del_custom_domain:e.Func([e.Text],[],[]),del_doc:e.Func([e.Text,e.Text,N],[],[]),del_docs:e.Func([e.Text],[],[]),del_filtered_assets:e.Func([e.Text,t],[],[]),del_filtered_docs:e.Func([e.Text,t],[],[]),del_many_assets:e.Func([e.Vec(e.Tuple(e.Text,e.Text))],[],[]),del_many_docs:e.Func([e.Vec(e.Tuple(e.Text,e.Text,N))],[],[]),del_rule:e.Func([T,e.Text,E],[],[]),delete_proposal_assets:e.Func([v],[],[]),deposit_cycles:e.Func([b],[],[]),get_asset:e.Func([e.Text,e.Text],[e.Opt(F)],["query"]),get_auth_config:e.Func([],[e.Opt(f)],["query"]),get_config:e.Func([],[me],[]),get_db_config:e.Func([],[e.Opt(I)],["query"]),get_doc:e.Func([e.Text,e.Text],[e.Opt(x)],["query"]),get_many_assets:e.Func([e.Vec(e.Tuple(e.Text,e.Text))],[e.Vec(e.Tuple(e.Text,e.Opt(F)))],["query"]),get_many_docs:e.Func([e.Vec(e.Tuple(e.Text,e.Text))],[e.Vec(e.Tuple(e.Text,e.Opt(x)))],["query"]),get_proposal:e.Func([e.Nat],[e.Opt(V)],["query"]),get_rule:e.Func([T,e.Text],[e.Opt(C)],["query"]),get_storage_config:e.Func([],[w],["query"]),http_request:e.Func([ye],[Fe],["query"]),http_request_streaming_callback:e.Func([U],[fe],["query"]),init_asset_upload:e.Func([L],[q],[]),init_proposal:e.Func([X],[e.Nat,V],[]),init_proposal_asset_upload:e.Func([L,e.Nat],[q],[]),init_proposal_many_assets_upload:e.Func([e.Vec(L),e.Nat],[e.Vec(e.Tuple(e.Text,q))],[]),list_assets:e.Func([e.Text,t],[he],["query"]),list_controllers:e.Func([],[e.Vec(e.Tuple(e.Principal,_))],["query"]),list_custom_domains:e.Func([],[e.Vec(e.Tuple(e.Text,Ve))],["query"]),list_docs:e.Func([e.Text,t],[Ae],["query"]),list_proposals:e.Func([ve],[De],["query"]),list_rules:e.Func([T,Ie],[we],["query"]),memory_size:e.Func([],[ke],["query"]),reject_proposal:e.Func([r],[e.Null],[]),set_auth_config:e.Func([Ce],[f],[]),set_controllers:e.Func([Le],[e.Vec(e.Tuple(e.Principal,_))],[]),set_custom_domain:e.Func([e.Text,e.Opt(e.Text)],[],[]),set_db_config:e.Func([qe],[I],[]),set_doc:e.Func([e.Text,e.Text,Z],[x],[]),set_many_docs:e.Func([e.Vec(e.Tuple(e.Text,e.Text,Z))],[e.Vec(e.Tuple(e.Text,x))],[]),set_rule:e.Func([T,e.Text,je],[C],[]),set_storage_config:e.Func([Be],[w],[]),submit_proposal:e.Func([e.Nat],[e.Nat,V],[]),upload_asset_chunk:e.Func([ee],[ae],[]),upload_proposal_asset_chunk:e.Func([ee],[ae],[])})},Ra=({IDL:e})=>{let a=e.Record({batch_id:e.Nat,headers:e.Vec(e.Tuple(e.Text,e.Text)),chunk_ids:e.Vec(e.Nat)}),r=e.Record({sha256:e.Vec(e.Nat8),proposal_id:e.Nat}),o=e.Variant({UpdatedAt:e.Null,Keys:e.Null,CreatedAt:e.Null}),c=e.Record({field:o,desc:e.Bool}),n=e.Variant({Equal:e.Nat64,Between:e.Tuple(e.Nat64,e.Nat64),GreaterThan:e.Nat64,LessThan:e.Nat64}),i=e.Record({key:e.Opt(e.Text),updated_at:e.Opt(n),description:e.Opt(e.Text),created_at:e.Opt(n)}),s=e.Record({start_after:e.Opt(e.Text),limit:e.Opt(e.Nat64)}),t=e.Record({order:e.Opt(c),owner:e.Opt(e.Principal),matcher:e.Opt(i),paginate:e.Opt(s)}),u=e.Record({controllers:e.Vec(e.Principal)}),d=e.Variant({Write:e.Null,Admin:e.Null,Submit:e.Null}),_=e.Record({updated_at:e.Nat64,metadata:e.Vec(e.Tuple(e.Text,e.Text)),created_at:e.Nat64,scope:d,expires_at:e.Opt(e.Nat64)}),N=e.Record({version:e.Opt(e.Nat64)}),T=e.Variant({Db:e.Null,Storage:e.Null}),E=e.Record({version:e.Opt(e.Nat64)}),v=e.Record({proposal_ids:e.Vec(e.Nat)}),b=e.Record({cycles:e.Nat,destination_id:e.Principal}),j=e.Record({token:e.Opt(e.Text),collection:e.Text,owner:e.Principal,name:e.Text,description:e.Opt(e.Text),full_path:e.Text}),H=e.Record({modified:e.Nat64,sha256:e.Vec(e.Nat8),total_length:e.Nat}),F=e.Record({key:j,updated_at:e.Nat64,encodings:e.Vec(e.Tuple(e.Text,H)),headers:e.Vec(e.Tuple(e.Text,e.Text)),created_at:e.Nat64,version:e.Opt(e.Nat64)}),D=e.Record({derivation_origin:e.Opt(e.Text),external_alternative_origins:e.Opt(e.Vec(e.Text))}),S=e.Record({allowed_callers:e.Vec(e.Principal)}),f=e.Record({updated_at:e.Opt(e.Nat64),created_at:e.Opt(e.Nat64),version:e.Opt(e.Nat64),internet_identity:e.Opt(D),rules:e.Opt(S)}),h=e.Record({stable:e.Opt(e.Nat64),heap:e.Opt(e.Nat64)}),I=e.Record({updated_at:e.Opt(e.Nat64),created_at:e.Opt(e.Nat64),version:e.Opt(e.Nat64),max_memory_size:e.Opt(h)}),W=e.Variant({Deny:e.Null,AllowAny:e.Null,SameOrigin:e.Null}),$=e.Variant({Deny:e.Null,Allow:e.Null}),Y=e.Record({status_code:e.Nat16,location:e.Text}),w=e.Record({iframe:e.Opt(W),updated_at:e.Opt(e.Nat64),rewrites:e.Vec(e.Tuple(e.Text,e.Text)),headers:e.Vec(e.Tuple(e.Text,e.Vec(e.Tuple(e.Text,e.Text)))),created_at:e.Opt(e.Nat64),version:e.Opt(e.Nat64),max_memory_size:e.Opt(h),raw_access:e.Opt($),redirects:e.Opt(e.Vec(e.Tuple(e.Text,Y)))}),me=e.Record({db:e.Opt(I),authentication:e.Opt(f),storage:w}),x=e.Record({updated_at:e.Nat64,owner:e.Principal,data:e.Vec(e.Nat8),description:e.Opt(e.Text),created_at:e.Nat64,version:e.Opt(e.Nat64)}),Oe=e.Variant({Initialized:e.Null,Failed:e.Null,Open:e.Null,Rejected:e.Null,Executed:e.Null,Accepted:e.Null}),xe=e.Record({clear_existing_assets:e.Opt(e.Bool)}),Re=e.Record({orbiter:e.Opt(e.Text),mission_control_version:e.Opt(e.Text),satellite_version:e.Opt(e.Text)}),X=e.Variant({AssetsUpgrade:xe,SegmentsDeployment:Re}),V=e.Record({status:Oe,updated_at:e.Nat64,sha256:e.Opt(e.Vec(e.Nat8)),executed_at:e.Opt(e.Nat64),owner:e.Principal,created_at:e.Nat64,version:e.Opt(e.Nat64),proposal_type:X}),k=e.Variant({Heap:e.Null,Stable:e.Null}),A=e.Variant({Controllers:e.Null,Private:e.Null,Public:e.Null,Managed:e.Null}),Q=e.Record({max_tokens:e.Nat64,time_per_token_ns:e.Nat64}),C=e.Record({max_capacity:e.Opt(e.Nat32),memory:e.Opt(k),updated_at:e.Nat64,max_size:e.Opt(e.Nat),read:A,created_at:e.Nat64,version:e.Opt(e.Nat64),mutable_permissions:e.Opt(e.Bool),rate_config:e.Opt(Q),write:A,max_changes_per_user:e.Opt(e.Nat32)}),ye=e.Record({url:e.Text,method:e.Text,body:e.Vec(e.Nat8),headers:e.Vec(e.Tuple(e.Text,e.Text)),certificate_version:e.Opt(e.Nat16)}),U=e.Record({memory:k,token:e.Opt(e.Text),sha256:e.Opt(e.Vec(e.Nat8)),headers:e.Vec(e.Tuple(e.Text,e.Text)),index:e.Nat64,encoding_type:e.Text,full_path:e.Text}),ge=e.Variant({Callback:e.Record({token:U,callback:e.Func([],[],[])})}),Fe=e.Record({body:e.Vec(e.Nat8),headers:e.Vec(e.Tuple(e.Text,e.Text)),streaming_strategy:e.Opt(ge),status_code:e.Nat16}),fe=e.Record({token:e.Opt(U),body:e.Vec(e.Nat8)}),L=e.Record({token:e.Opt(e.Text),collection:e.Text,name:e.Text,description:e.Opt(e.Text),encoding_type:e.Opt(e.Text),full_path:e.Text}),q=e.Record({batch_id:e.Nat}),he=e.Record({matches_pages:e.Opt(e.Nat64),matches_length:e.Nat64,items_page:e.Opt(e.Nat64),items:e.Vec(e.Tuple(e.Text,F)),items_length:e.Nat64}),Ve=e.Record({updated_at:e.Nat64,created_at:e.Nat64,version:e.Opt(e.Nat64),bn_id:e.Opt(e.Text)}),Ae=e.Record({matches_pages:e.Opt(e.Nat64),matches_length:e.Nat64,items_page:e.Opt(e.Nat64),items:e.Vec(e.Tuple(e.Text,x)),items_length:e.Nat64}),Pe=e.Record({desc:e.Bool}),Ee=e.Record({start_after:e.Opt(e.Nat),limit:e.Opt(e.Nat)}),ve=e.Record({order:e.Opt(Pe),paginate:e.Opt(Ee)}),be=e.Record({proposal_id:e.Nat}),De=e.Record({matches_length:e.Nat64,items:e.Vec(e.Tuple(be,V)),items_length:e.Nat64}),Se=e.Record({include_system:e.Bool}),Ie=e.Record({matcher:e.Opt(Se)}),we=e.Record({matches_length:e.Nat64,items:e.Vec(e.Tuple(e.Text,C)),items_length:e.Nat64}),ke=e.Record({stable:e.Nat64,heap:e.Nat64}),Ce=e.Record({version:e.Opt(e.Nat64),internet_identity:e.Opt(D),rules:e.Opt(S)}),Ue=e.Record({metadata:e.Vec(e.Tuple(e.Text,e.Text)),scope:d,expires_at:e.Opt(e.Nat64)}),Le=e.Record({controller:Ue,controllers:e.Vec(e.Principal)}),qe=e.Record({version:e.Opt(e.Nat64),max_memory_size:e.Opt(h)}),Z=e.Record({data:e.Vec(e.Nat8),description:e.Opt(e.Text),version:e.Opt(e.Nat64)}),je=e.Record({max_capacity:e.Opt(e.Nat32),memory:e.Opt(k),max_size:e.Opt(e.Nat),read:A,version:e.Opt(e.Nat64),mutable_permissions:e.Opt(e.Bool),rate_config:e.Opt(Q),write:A,max_changes_per_user:e.Opt(e.Nat32)}),Be=e.Record({iframe:e.Opt(W),rewrites:e.Vec(e.Tuple(e.Text,e.Text)),headers:e.Vec(e.Tuple(e.Text,e.Vec(e.Tuple(e.Text,e.Text)))),version:e.Opt(e.Nat64),max_memory_size:e.Opt(h),raw_access:e.Opt($),redirects:e.Opt(e.Vec(e.Tuple(e.Text,Y)))}),ee=e.Record({content:e.Vec(e.Nat8),batch_id:e.Nat,order_id:e.Opt(e.Nat)}),ae=e.Record({chunk_id:e.Nat});return e.Service({commit_asset_upload:e.Func([a],[],[]),commit_proposal:e.Func([r],[e.Null],[]),commit_proposal_asset_upload:e.Func([a],[],[]),commit_proposal_many_assets_upload:e.Func([e.Vec(a)],[],[]),count_assets:e.Func([e.Text,t],[e.Nat64],[]),count_collection_assets:e.Func([e.Text],[e.Nat64],[]),count_collection_docs:e.Func([e.Text],[e.Nat64],[]),count_docs:e.Func([e.Text,t],[e.Nat64],[]),count_proposals:e.Func([],[e.Nat64],[]),del_asset:e.Func([e.Text,e.Text],[],[]),del_assets:e.Func([e.Text],[],[]),del_controllers:e.Func([u],[e.Vec(e.Tuple(e.Principal,_))],[]),del_custom_domain:e.Func([e.Text],[],[]),del_doc:e.Func([e.Text,e.Text,N],[],[]),del_docs:e.Func([e.Text],[],[]),del_filtered_assets:e.Func([e.Text,t],[],[]),del_filtered_docs:e.Func([e.Text,t],[],[]),del_many_assets:e.Func([e.Vec(e.Tuple(e.Text,e.Text))],[],[]),del_many_docs:e.Func([e.Vec(e.Tuple(e.Text,e.Text,N))],[],[]),del_rule:e.Func([T,e.Text,E],[],[]),delete_proposal_assets:e.Func([v],[],[]),deposit_cycles:e.Func([b],[],[]),get_asset:e.Func([e.Text,e.Text],[e.Opt(F)],[]),get_auth_config:e.Func([],[e.Opt(f)],[]),get_config:e.Func([],[me],[]),get_db_config:e.Func([],[e.Opt(I)],[]),get_doc:e.Func([e.Text,e.Text],[e.Opt(x)],[]),get_many_assets:e.Func([e.Vec(e.Tuple(e.Text,e.Text))],[e.Vec(e.Tuple(e.Text,e.Opt(F)))],[]),get_many_docs:e.Func([e.Vec(e.Tuple(e.Text,e.Text))],[e.Vec(e.Tuple(e.Text,e.Opt(x)))],[]),get_proposal:e.Func([e.Nat],[e.Opt(V)],[]),get_rule:e.Func([T,e.Text],[e.Opt(C)],[]),get_storage_config:e.Func([],[w],[]),http_request:e.Func([ye],[Fe],[]),http_request_streaming_callback:e.Func([U],[fe],[]),init_asset_upload:e.Func([L],[q],[]),init_proposal:e.Func([X],[e.Nat,V],[]),init_proposal_asset_upload:e.Func([L,e.Nat],[q],[]),init_proposal_many_assets_upload:e.Func([e.Vec(L),e.Nat],[e.Vec(e.Tuple(e.Text,q))],[]),list_assets:e.Func([e.Text,t],[he],[]),list_controllers:e.Func([],[e.Vec(e.Tuple(e.Principal,_))],[]),list_custom_domains:e.Func([],[e.Vec(e.Tuple(e.Text,Ve))],[]),list_docs:e.Func([e.Text,t],[Ae],[]),list_proposals:e.Func([ve],[De],[]),list_rules:e.Func([T,Ie],[we],[]),memory_size:e.Func([],[ke],[]),reject_proposal:e.Func([r],[e.Null],[]),set_auth_config:e.Func([Ce],[f],[]),set_controllers:e.Func([Le],[e.Vec(e.Tuple(e.Principal,_))],[]),set_custom_domain:e.Func([e.Text,e.Opt(e.Text)],[],[]),set_db_config:e.Func([qe],[I],[]),set_doc:e.Func([e.Text,e.Text,Z],[x],[]),set_many_docs:e.Func([e.Vec(e.Tuple(e.Text,e.Text,Z))],[e.Vec(e.Tuple(e.Text,x))],[]),set_rule:e.Func([T,e.Text,je],[C],[]),set_storage_config:e.Func([Be],[w],[]),submit_proposal:e.Func([e.Nat],[e.Nat,V],[]),upload_asset_chunk:e.Func([ee],[ae],[]),upload_proposal_asset_chunk:e.Func([ee],[ae],[])})};import{nonNullish as Ye}from"@dfinity/utils";var ya=({satelliteId:e,container:a})=>{let{satelliteId:r}=Xe({satelliteId:e}),{container:o}=Qe({container:a});if(Ye(o)&&o!==!1){let{host:c,protocol:n}=new URL(o===!0?M:o);return`${n}//${r??"unknown"}.${c.replace("127.0.0.1","localhost")}`}return`https://${r??"unknown"}.icp0.io`},Xe=({satelliteId:e})=>Ye(e)?{satelliteId:e}:y.getInstance().get()??{satelliteId:void 0},Qe=({container:e})=>Ye(e)?{container:e}:y.getInstance().get()??{container:void 0};var p=({satellite:e,options:{certified:a}})=>Fa({idlFactory:a?Ra:xa,actorKey:`stock#${a?"update":"query"}`,...e}),ga=({idlFactory:e,...a})=>Fa({idlFactory:e,actorKey:"extended#query",...a}),Fa=async({satelliteId:e,container:a,...r})=>{let{satelliteId:o}=Xe({satelliteId:e});sr(o,"No satellite ID defined. Did you initialize Juno?");let{container:c}=Qe({container:a});return await z.getInstance().getActor({satelliteId:o,container:c,...r})};var fa=async({collection:e,key:a,...r})=>{let{get_doc:o}=await p(r),c=G(await o(e,a));if(!tr(c))return re({doc:c,key:a})},ha=async({docs:e,...a})=>{let{get_many_docs:r}=await p(a),o=e.map(({collection:i,key:s})=>[i,s]),c=await r(o),n=[];for(let[i,s]of c){let t=G(s);n.push(lr(t)?await re({key:i,doc:t}):void 0)}return n},Va=async({collection:e,doc:a,...r})=>{let{set_doc:o}=await p(r),{key:c}=a,n=await We(a),i=await o(e,c,n);return await re({key:c,doc:i})},Aa=async({docs:e,...a})=>{let{set_many_docs:r}=await p(a),o=[];for(let{collection:i,doc:s}of e){let{key:t}=s;o.push([i,t,await We(s)])}let c=await r(o),n=[];for(let[i,s]of c)n.push(await re({key:i,doc:s}));return n},Pa=async({collection:e,doc:a,...r})=>{let{del_doc:o}=await p(r),{key:c}=a;return o(e,c,$e(a))},Ea=async({docs:e,...a})=>{let{del_many_docs:r}=await p(a),o=e.map(({collection:c,doc:n})=>[c,n.key,$e(n)]);await r(o)},va=async({collection:e,filter:a,...r})=>{let{del_filtered_docs:o}=await p(r);return o(e,P(a))},ba=async({collection:e,filter:a,...r})=>{let{list_docs:o}=await p(r),{items:c,items_page:n,items_length:i,matches_length:s,matches_pages:t}=await o(e,P(a)),u=[];for(let[d,_]of c){let{data:N,owner:T,description:E,version:v,...b}=_;u.push({key:d,description:G(E),owner:T.toText(),data:await Ta({data:N}),version:G(v),...b})}return{items:u,items_length:i,items_page:G(n),matches_length:s,matches_pages:G(t)}},Da=async({collection:e,filter:a,...r})=>{let{count_docs:o}=await p(r);return o(e,P(a))};var g={certified:!1};import{AnonymousIdentity as pr}from"@dfinity/agent";import{nonNullish as dr}from"@dfinity/utils";var l=e=>dr(e)?e:ue()??new pr;var Sa=async({satellite:e,options:a,...r})=>{let o=l(e?.identity);return await fa({...r,satellite:{...e,identity:o},options:a??g})},nc=async({satellite:e,options:a,...r})=>{let o=l(e?.identity);return await ha({...r,satellite:{...e,identity:o},options:a??g})},Ia=async({satellite:e,...a})=>{let r=l(e?.identity);return await Va({...a,satellite:{...e,identity:r},options:{certified:!0}})},ic=async({satellite:e,...a})=>{let r=l(e?.identity);return await Aa({...a,satellite:{...e,identity:r},options:{certified:!0}})},sc=async({satellite:e,...a})=>{let r=l(e?.identity);return await Pa({...a,satellite:{...e,identity:r},options:{certified:!0}})},tc=async({satellite:e,...a})=>{let r=l(e?.identity);return await Ea({...a,satellite:{...e,identity:r},options:{certified:!0}})},lc=async({satellite:e,filter:a,...r})=>{let o=l(e?.identity);return await va({...r,filter:a??{},satellite:{...e,identity:o},options:{certified:!0}})},pc=async({satellite:e,options:a,filter:r,...o})=>{let c=l(e?.identity);return await ba({...o,filter:r??{},satellite:{...e,identity:c},options:a??g})},dc=async({satellite:e,options:a,filter:r,...o})=>{let c=l(e?.identity);return await Da({...o,filter:r??{},satellite:{...e,identity:c},options:a??g})};var ka=async e=>{let a=ue();if(_r(a))throw new pe("No identity to initialize the user. Have you initialized Juno?");let r=a.getPrincipal().toText(),o=()=>Sa({collection:"#user",key:r}),c=await o();if(wa(c))return c;try{return await ur({userId:r,provider:e})}catch(n){if(Ge({error:n,type:ua})){let i=await o();if(wa(i))return i}throw n}},ur=({userId:e,...a})=>Ia({collection:"#user",doc:{key:e,data:a}});var O,Ze=async e=>{if(O=O??await _e(),!(await O?.isAuthenticated()??!1))return;let r=await ka(e);R.getInstance().set(r)},Nr=e=>new Promise(async(a,r)=>{if(Ca(O)){r(new te("No client is ready to perform a sign-in. Have you initialized the Satellite?"));return}let o=e?.provider??new ie({});await O.login({onSuccess:async()=>{await Ze(o.id),a()},onError:c=>{if(c===Tr){r(new le(c));return}r(new se(c))},maxTimeToLive:e?.maxTimeToLive??aa,allowPinAuthentication:e?.allowPin??ra,...e?.derivationOrigin!==void 0&&{derivationOrigin:e.derivationOrigin},...o.signInOptions({windowed:e?.windowed})})}),ea=async()=>{await mr(),O=await _e()},mr=async()=>{await O?.logout(),O=null,R.getInstance().reset(),z.getInstance().reset(),J.getInstance().reset()},ue=()=>O?.getIdentity(),Or=async()=>(O??await _e()).getIdentity(),xr=async()=>{let e=R.getInstance().get();return Ca(e)||!(await O?.isAuthenticated()??!1)?null:O?.getIdentity()??null};var Ua=e=>{let a=e===!0?"./workers/auth.worker.js":e,r=new Worker(a),o=async()=>{Me({message:"junoSignOutAuthTimer"}),await ea()};return r.onmessage=async({data:c})=>{let{msg:n,data:i}=c;switch(n){case"junoSignOutAuthTimer":await o();return;case"junoDelegationRemainingTime":Me({message:"junoDelegationRemainingTime",detail:i?.authRemainingTime});return}},R.getInstance().subscribe(c=>{if(Rr(c)){r.postMessage({msg:"junoStopAuthTimer"});return}r.postMessage({msg:"junoStartAuthTimer"})})};var La=()=>{let e=()=>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??e():e()},qa=()=>{let e=()=>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??e():e()};var Lc=async({idlFactory:e,satellite:a})=>{let r=l(a?.identity);return await ga({idlFactory:e,...a,identity:r})};import{fromNullable as Ya,nonNullish as Ar}from"@dfinity/utils";import{fromNullable as Ne}from"@dfinity/utils";import{assertNonNullish as Bc,toNullable as Te}from"@dfinity/utils";var ja=async({asset:{data:e,headers:a,...r},actor:o,progress:c})=>{let{init_asset_upload:n,upload_asset_chunk:i,commit_asset_upload:s}=o,{batch_id:t}=await n(yr(r));c?.onInitiatedBatch();let{chunkIds:u}=await fr({data:e,uploadFn:i,batchId:t});c?.onUploadedFileChunks(r.fullPath),await Fr({commitFn:s,batchId:t,data:e,headers:a,chunkIds:u}),c?.onCommittedBatch()};var yr=({filename:e,collection:a,token:r,fullPath:o,encoding:c,description:n})=>({collection:a,full_path:o,name:e,token:Te(r),encoding_type:Te(c),description:Te(n)}),gr=({batchId:e,chunkIds:a,headers:r,data:o})=>{let c=r.find(([n,i])=>n.toLowerCase()==="content-type")===void 0&&o.type!==void 0&&o.type!==""?[["Content-Type",o.type]]:void 0;return{batch_id:e,chunk_ids:a.map(({chunk_id:n})=>n),headers:[...r,...c??[]]}},Fr=async({commitFn:e,...a})=>{let r=gr(a);await e(r)},fr=async({data:e,uploadFn:a,batchId:r})=>{let o=[],c=ne()?new Blob([await e.arrayBuffer()]):e,n=0n;for(let s=0;s<c.size;s+=19e5){let t=c.slice(s,s+19e5);o.push({batchId:r,chunk:t,uploadFn:a,orderId:n}),n++}let i=[];for await(let s of hr({uploadChunks:o}))i=[...i,...s];return{chunkIds:i}};async function*hr({uploadChunks:e,limit:a=12}){for(let r=0;r<e.length;r=r+a){let o=e.slice(r,r+a);yield await Promise.all(o.map(c=>Vr(c)))}}var Vr=async({batchId:e,chunk:a,uploadFn:r,orderId:o})=>r({batch_id:e,content:new Uint8Array(await a.arrayBuffer()),order_id:Te(o)});var Ba=async({asset:e,...a})=>{let r=await p(a);await ja({actor:r,asset:e})},Ma=async({collection:e,filter:a,...r})=>{let{list_assets:o}=await p(r),{items:c,items_length:n,items_page:i,matches_length:s,matches_pages:t}=await o(e,P(a));return{items:c.map(([u,d])=>d),items_length:n,items_page:Ne(i),matches_length:s,matches_pages:Ne(t)}},Ja=async({collection:e,filter:a,...r})=>{let{count_assets:o}=await p(r);return o(e,P(a))},za=async({collection:e,fullPath:a,...r})=>(await p(r)).del_asset(e,a),Ka=async({assets:e,satellite:a})=>{let{del_many_assets:r}=await p({satellite:a,options:{certified:!0}}),o=e.map(({collection:c,fullPath:n})=>[c,n]);await r(o)},Ga=async({collection:e,filter:a,...r})=>{let{del_filtered_assets:o}=await p(r);return o(e,P(a))},Ha=async({collection:e,fullPath:a,...r})=>{let{get_asset:o}=await p(r);return Ne(await o(e,a))},Wa=async({assets:e,...a})=>{let{get_many_assets:r}=await p(a),o=e.map(({collection:n,fullPath:i})=>[n,i]);return(await r(o)).map(([n,i])=>Ne(i))};var $a=e=>btoa([...e].map(a=>String.fromCharCode(a)).join(""));var rn=e=>Xa(e),on=e=>Xa({filename:e.data.name,...e}),Xa=async({filename:e,data:a,collection:r,headers:o=[],fullPath:c,token:n,satellite:i,encoding:s,description:t})=>{let u=l(i?.identity),d=decodeURI(e),_=c??`/${r}/${d}`,N={...i,identity:u};return await Ba({asset:{data:a,filename:d,collection:r,token:n,headers:o,fullPath:_,encoding:s,description:t},satellite:N,options:{certified:!0}}),{downloadUrl:Qa({satellite:N,assetKey:{fullPath:_,token:n}}),fullPath:_,name:d}},cn=async({collection:e,filter:a,satellite:r,options:o})=>{let c={...r,identity:l(r?.identity)},{items:n,...i}=await Ma({collection:e,filter:a??{},satellite:c,options:o??g}),s=n.map(({key:{full_path:t,token:u,name:d,owner:_,description:N},headers:T,encodings:E,created_at:v,updated_at:b})=>{let j=Ya(u);return{fullPath:t,description:Ya(N),name:d,downloadUrl:Qa({satellite:c,assetKey:{fullPath:t,token:j}}),token:j,headers:T,encodings:E.reduce((H,[F,{modified:D,sha256:S,total_length:f}])=>({...H,[F]:{modified:D,sha256:$a(S),total_length:f}}),{}),owner:_.toText(),created_at:v,updated_at:b}});return{items:s,assets:s,...i}},nn=async({collection:e,filter:a,satellite:r,options:o})=>{let c={...r,identity:l(r?.identity)};return await Ja({collection:e,satellite:c,filter:a??{},options:o??g})},sn=({collection:e,fullPath:a,satellite:r})=>za({collection:e,fullPath:a,satellite:{...r,identity:l(r?.identity)},options:{certified:!0}}),tn=({assets:e,satellite:a})=>Ka({assets:e,satellite:{...a,identity:l(a?.identity)},options:{certified:!0}}),ln=async({collection:e,satellite:a,filter:r})=>{let o={...a,identity:l(a?.identity)};return await Ga({collection:e,satellite:o,filter:r??{},options:{certified:!0}})},pn=async({satellite:e,options:a,...r})=>{let o=l(e?.identity);return await Ha({...r,satellite:{...e,identity:o},options:a??g})},dn=async({satellite:e,options:a,...r})=>{let o=l(e?.identity);return await Wa({...r,satellite:{...e,identity:o},options:a??g})},Qa=({assetKey:{fullPath:e,token:a},satellite:r})=>{let o={...r,identity:l(r?.identity)};return`${ya(o)}${e}${Ar(a)?`?token=${a}`:""}`};var Er=e=>{let a=e?.satelliteId??La();Pr(a,"Satellite ID is not configured. Juno cannot be initialized.");let r=e?.container??qa();return{satelliteId:a,internetIdentityId:e?.internetIdentityId,workers:e?.workers,container:r}},Rn=e=>vr(e),vr=async e=>{let a=Er(e);y.getInstance().set(a),await Ze();let r=a.workers?.auth!==void 0?Ua(a.workers.auth):void 0;return[...r?[r]:[]]},yn=e=>R.getInstance().subscribe(e);export{pe as InitError,ie as InternetIdentityProvider,de as ListError,pa as NFIDProvider,se as SignInError,te as SignInInitError,le as SignInUserInterruptError,yn as authSubscribe,nn as countAssets,dc as countDocs,sn as deleteAsset,sc as deleteDoc,ln as deleteFilteredAssets,lc as deleteFilteredDocs,tn as deleteManyAssets,tc as deleteManyDocs,Qa as downloadUrl,pn as getAsset,Sa as getDoc,xr as getIdentityOnce,dn as getManyAssets,nc as getManyDocs,Lc as getSatelliteExtendedActor,Rn as initJuno,vr as initSatellite,cn as listAssets,pc as listDocs,Ia as setDoc,ic as setManyDocs,Nr as signIn,ea as signOut,Or as unsafeIdentity,rn as uploadBlob,on as uploadFile};
|
|
3
|
+
import{assertNonNullish as ni}from"@dfinity/utils";import{uint8ArrayToArrayOfNumber as vr}from"@dfinity/utils";import{DER_COSE_OID as Dr,wrapDER as Sr}from"@dfinity/agent";import{uint8ArrayToBase64 as Lr}from"@dfinity/utils";import{Cbor as ya,SignIdentity as Hr}from"@dfinity/agent";import{arrayBufferToUint8Array as K,isNullish as te,uint8ArraysEqual as $r}from"@dfinity/utils";import{isNullish as Qr}from"@dfinity/utils";import{nonNullish as no}from"@dfinity/utils";var Ir=({authData:e})=>{if(e.byteLength<37)return{invalidAuthData:null};if(e.byteLength<53)return{invalidAuthData:null};let a=e.slice(37,53),r=br({bytes:a});return"aaguid"in r?{aaguidBytes:a,aaguidText:r.aaguid}:{unknownProvider:null}},br=({bytes:e})=>{if(e.length!==16)return{invalidBytes:null};let a=(e instanceof Uint8Array?vr(e):e).map(r=>r.toString(16).padStart(2,"0")).join("").replace(/^(.{8})(.{4})(.{4})(.{4})(.{12})$/,"$1-$2-$3-$4-$5");return a==="00000000-0000-0000-0000-000000000000"?{unknownProvider:null}:{aaguid:a}};function Cr(e){let a=new DataView(new ArrayBuffer(2)),r=e.slice(53,55);[...new Uint8Array(r)].forEach((i,n)=>a.setUint8(n,i));let o=a.getUint16(0);return e.slice(55+o)}function kr(e){return Sr(e.buffer,Dr).buffer}var Ur=class{constructor(e){this._cose=e,this._encodedKey=kr(e)}_encodedKey;toDer(){return this._encodedKey}},ha=class{#e;#a;constructor({rawId:e,cose:a}){this.#e=e,this.#a=new Ur(a)}getPublicKey(){return this.#a}getCredentialId(){return this.#e}getCredentialIdText(){return Lr(this.#e)}},qr=class extends ha{#e;#a;constructor({authData:e,...a}){super(a);let r=Ir({authData:e});this.#e="aaguidText"in r?r.aaguidText:void 0,this.#a="aaguidBytes"in r?r.aaguidBytes:void 0}getAAGUID(){return this.#a}getAAGUIDText(){return this.#e}},Br=class extends ha{},jr=class extends Error{},Mr=class extends Error{},Jr=class extends Error{},Kr=class extends Error{},Wr=class extends Error{},zr=class extends Error{},Gr=class extends Error{},xa=class extends Error{};var Yr={ECDSA_WITH_SHA256:-7,RSA_WITH_SHA256:-257},Xr=6e4,Fa=()=>window.crypto.getRandomValues(new Uint8Array(16)),Zr=()=>Fa(),eo=()=>Fa(),ao=()=>{let{location:{href:e}}=window,a=URL.parse(e);if(Qr(a))throw new jr;let{hostname:r}=a;return r},Aa=({appId:e})=>e?.id??ao(),ro=({appId:e,user:a}={})=>{let{document:{title:r}}=window,o=()=>({rp:{name:e?.name??r,id:Aa({appId:e})}}),i=()=>({user:{id:eo(),name:a?.name??a?.displayName??r,displayName:a?.displayName??r}});return{attestation:"direct",challenge:Zr(),...o(),...i(),pubKeyCredParams:Object.values(Yr).map(n=>({type:"public-key",alg:n})),excludeCredentials:[],authenticatorSelection:{authenticatorAttachment:"platform",userVerification:"preferred",residentKey:"required",requireResidentKey:!0}}},oo=(e={})=>({rpId:Aa(e),allowCredentials:[],userVerification:"required"}),ea=async({fn:e,step:a,onProgress:r})=>{r?.({step:a,state:"in_progress"});try{let o=await e();return r?.({step:a,state:"success"}),o}catch(o){throw r?.({step:a,state:"error"}),o}},I=(e=>(e[e.RequestingUserCredential=0]="RequestingUserCredential",e[e.FinalizingCredential=1]="FinalizingCredential",e[e.Signing=2]="Signing",e))(I||{}),Va=({timeout:e})=>AbortSignal.timeout(e??Xr),io=async({challenge:e,credentialIds:a,passkeyOptions:r,timeout:o})=>await navigator.credentials.get({publicKey:{...oo(r),challenge:e.buffer,allowCredentials:(a??[]).map(i=>({id:i.buffer,type:"public-key"}))},signal:Va({timeout:o})}),Ra=e=>{if(e.status!=="initialized")throw new Mr},ga=e=>{if(te(e))throw new Jr},fa=({type:e})=>{if(e!=="public-key")throw new Kr},aa=class ce extends Hr{#e;#a;constructor({onProgress:a,...r}){if(super(),this.#e=a,"retrievePublicKey"in r){let{retrievePublicKey:o}=r;this.#a={status:"pending",retrievePublicKey:o};return}this.#a=ce.#r({credential:new qr(r)})}static#r({credential:a}){return{status:"initialized",credential:a}}static async createWithNewCredential({passkeyOptions:a,timeout:r,...o}={}){let i=await navigator.credentials.create({publicKey:ro(a),signal:Va({timeout:r})});ga(i),fa(i);let{response:{attestationObject:n},rawId:s}=i;if(te(n))throw new Wr;let{authData:t}=ya.decode(n),c=Cr(t);return new ce({...o,rawId:K(s),cose:c,authData:t})}static async createWithExistingCredential(a){return new ce(a)}getPublicKey(){Ra(this.#a);let{credential:a}=this.#a;return a.getPublicKey()}getCredential(){Ra(this.#a);let{credential:a}=this.#a;return a}async sign(a){let r=await ea({fn:async()=>{let o=await io({challenge:K(a),...this.#a.status==="initialized"&&{credentialIds:[this.#a.credential.getCredentialId()]}});return ga(o),fa(o),o},step:0,onProgress:this.#e});return await ea({fn:async()=>{let{rawId:o}=r;if(this.#a.status==="initialized"){if(!$r({a:this.#a.credential.getCredentialId(),b:K(o)}))throw new zr;return}let{retrievePublicKey:i}=this.#a,n=await i({credentialId:K(o)});this.#a=ce.#r({credential:new Br({rawId:K(o),cose:n})})},step:1,onProgress:this.#e}),await ea({fn:async()=>{let{response:o}=r,{clientDataJSON:i}=o,{authenticatorData:n,signature:s}="authenticatorData"in o&&"signature"in o?o:{};if(te(n))throw new xa;if(te(s))throw new xa;let t=ya.encode({authenticator_data:n,client_data_json:new TextDecoder().decode(i),signature:K(s)});if(te(t))throw new Gr;return Object.assign(t,{__signature__:void 0}),t},step:2,onProgress:this.#e})}},so=async()=>no(window.PublicKeyCredential)&&"isUserVerifyingPlatformAuthenticatorAvailable"in PublicKeyCredential?await PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable():!1;import{isNullish as Xo}from"@dfinity/utils";var W=class{callbacks=[];populate(a){this.callbacks.forEach(({callback:r})=>r(a))}subscribe(a){let r=Symbol();return this.callbacks.push({id:r,callback:a}),()=>this.callbacks=this.callbacks.filter(({id:o})=>o!==r)}};var O=class e extends W{static instance;authUser=null;constructor(){super()}static getInstance(){return e.instance||(e.instance=new e),e.instance}set(a){this.authUser=a,this.populate(a)}get(){return this.authUser}subscribe(a){let r=super.subscribe(a);return a(this.authUser),r}reset(){this.authUser=null,this.populate(this.authUser)}};var ra=({message:e,detail:a})=>{let r=new CustomEvent(e,{detail:a,bubbles:!0});document.dispatchEvent(r)};import{isNullish as Mo}from"@dfinity/utils";import{Actor as co}from"@dfinity/agent";import{isNullish as ia}from"@dfinity/utils";import{isNullish as oa}from"@dfinity/utils";import{HttpAgent as to}from"@dfinity/agent";import{nonNullish as Ea}from"@dfinity/utils";var z="http://127.0.0.1:5987",Pa="rdmx6-jaaaa-aaaaa-aaadq-cai";var wa=async({identity:e,container:a})=>{let o=Ea(a)&&a!==!1?a===!0?z:a:"https://icp-api.io",i=Ea(a);return await to.create({identity:e,shouldFetchRootKey:i,host:o})};var G=class e{static instance;#e=void 0;constructor(){}static getInstance(){return oa(e.instance)&&(e.instance=new e),e.instance}async getAgent({identity:a,...r}){let o=a.getPrincipal().toText();if(oa(this.#e)||oa(this.#e[o])){let i=await wa({identity:a,...r});return this.#e={...this.#e??{},[o]:i},i}return this.#e[o]}reset(){this.#e=null}};var H=class e{static instance;#e=void 0;constructor(){}static getInstance(){return ia(e.instance)&&(e.instance=new e),e.instance}async getActor({satelliteId:a,identity:r,actorKey:o,...i}){let n=`${o}#${r.getPrincipal().toText()}#${a};`;if(ia(this.#e)||ia(this.#e[n])){let s=await this.createActor({satelliteId:a,identity:r,...i});return this.#e={...this.#e??{},[n]:s},s}return this.#e[n]}reset(){this.#e=null}async createActor({idlFactory:a,satelliteId:r,...o}){let i=await G.getInstance().getAgent(o);return co.createActor(a,{agent:i,canisterId:r})}};var va=e=>(e.preventDefault(),e.returnValue="Are you sure you want to exit?"),lo=()=>{window.addEventListener("beforeunload",va,{capture:!0})},po=()=>{window.removeEventListener("beforeunload",va,{capture:!0})},na=async({fn:e})=>{try{return lo(),await e()}finally{po()}};import{isNullish as No,nonNullish as qa}from"@dfinity/utils";var N=class e extends W{static instance;env;constructor(){super()}static getInstance(){return e.instance||(e.instance=new e),e.instance}set(a){this.env=a,this.populate(a)}get(){return this.env}reset(){this.env=null}subscribe(a){let r=super.subscribe(a);return a(this.env),r}};var Ia=BigInt(144e11),ba=!1,Da={width:576,height:576},Sa={width:505,height:705},Ca="internetcomputer.org";import{isNullish as Ua}from"@dfinity/utils";import{jsonReplacer as uo,jsonReviver as _o}from"@dfinity/utils";var ka=async e=>{let a=new Blob([JSON.stringify(e,uo)],{type:"application/json; charset=utf-8"});return new Uint8Array(await a.arrayBuffer())},ue=async e=>{let a=new Blob([e instanceof Uint8Array?e:new Uint8Array(e)],{type:"application/json; charset=utf-8"});return JSON.parse(await a.text(),_o)},_e=()=>typeof window<"u";var me=({width:e,height:a})=>{if(!_e()||Ua(window)||Ua(window.top))return;let{top:{innerWidth:r,innerHeight:o}}=window,i=o/2+screenY-a/2,n=r/2+screenX-e/2;return`toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=no, copyhistory=no, width=${e}, height=${a}, top=${i}, left=${n}`};import{ERROR_USER_INTERRUPT as mo}from"@dfinity/auth-client";import{isNullish as To}from"@dfinity/utils";var h=async({fn:e,step:a,onProgress:r})=>{r?.({step:a,state:"in_progress"});try{let o=await e();return r?.({step:a,state:"success"}),o}catch(o){throw r?.({step:a,state:"error"}),o}};var La=(r=>(r[r.AuthorizingWithProvider=0]="AuthorizingWithProvider",r[r.CreatingOrRetrievingUser=1]="CreatingOrRetrievingUser",r))(La||{});var Te=class extends Error{},M=class extends Error{},Ne=class extends Error{},Oe=class extends Error{},xe=class extends Error{},ye=class extends Error{},Re=class extends Error{},ge=class extends Error{};var $=class{async signIn({options:a,authClient:r,initAuth:o}){await h({fn:async()=>await this.#e({options:a,authClient:r}),step:0,onProgress:a?.onProgress}),await h({fn:async()=>await o({provider:this.id}),step:1,onProgress:a?.onProgress})}#e({options:a,authClient:r}){return new Promise(async(o,i)=>{if(To(r)){i(new M("No client is ready to perform a sign-in. Have you initialized the Satellite?"));return}await r.login({onSuccess:o,onError:n=>{if(n===mo){i(new Ne(n));return}i(new Te(n))},maxTimeToLive:a?.maxTimeToLiveInNanoseconds??Ia,allowPinAuthentication:a?.allowPin??ba,...a?.derivationOrigin!==void 0&&{derivationOrigin:a.derivationOrigin},...this.signInOptions({windowed:a?.windowed})})})}};var fe=class extends ${#e;constructor({domain:a}){super(),this.#e=a}get id(){return"internet_identity"}signInOptions({windowed:a}){let r=()=>{let o=N.getInstance().get()?.container;if(No(o)||o===!1)return`https://identity.${this.#e??Ca}`;let i=N.getInstance().get(),n=qa(i)&&qa(i?.internetIdentityId)?i.internetIdentityId:Pa,{host:s,protocol:t}=new URL(o===!0?z:o);return/apple/i.test(navigator?.vendor)?`${t}//${s}?canisterId=${n}`:`${t}//${n}.${s.replace("127.0.0.1","localhost")}`};return{...a!==!1&&{windowOpenerFeatures:me(Da)},identityProvider:r()}}};var he=class extends ${#e;#a;constructor({appName:a,logoUrl:r}){super(),this.#e=a,this.#a=r}get id(){return"nfid"}signInOptions({windowed:a}){return{...a!==!1&&{windowOpenerFeatures:me(Sa)},identityProvider:`https://nfid.one/authenticate/?applicationName=${encodeURI(this.#e)}&applicationLogo=${encodeURI(this.#a)}`}}};import{AnonymousIdentity as Po}from"@dfinity/agent";import{IdbStorage as Eo,KEY_STORAGE_DELEGATION as wo,KEY_STORAGE_KEY as vo}from"@dfinity/auth-client";import{DelegationChain as Io,DelegationIdentity as bo,DER_COSE_OID as Do,ECDSAKeyIdentity as So,unwrapDER as Co}from"@dfinity/identity";import{isNullish as ua,uint8ArrayToBase64 as ko}from"@dfinity/utils";var F={certified:!1};import{AnonymousIdentity as Oo}from"@dfinity/agent";import{nonNullish as xo}from"@dfinity/utils";var l=e=>xo(e)?e:Fe()??new Oo;import{fromNullable as X,isNullish as go,nonNullish as fo}from"@dfinity/utils";import{assertNonNullish as yo}from"@dfinity/utils";import{Actor as En}from"@dfinity/agent";import{isNullish as vn}from"@dfinity/utils";import{nonNullish as bn}from"@dfinity/utils";import{HttpAgent as Sn}from"@dfinity/agent";var Ba=({IDL:e})=>{let a=e.Record({batch_id:e.Nat,headers:e.Vec(e.Tuple(e.Text,e.Text)),chunk_ids:e.Vec(e.Nat)}),r=e.Record({sha256:e.Vec(e.Nat8),proposal_id:e.Nat}),o=e.Variant({UpdatedAt:e.Null,Keys:e.Null,CreatedAt:e.Null}),i=e.Record({field:o,desc:e.Bool}),n=e.Variant({Equal:e.Nat64,Between:e.Tuple(e.Nat64,e.Nat64),GreaterThan:e.Nat64,LessThan:e.Nat64}),s=e.Record({key:e.Opt(e.Text),updated_at:e.Opt(n),description:e.Opt(e.Text),created_at:e.Opt(n)}),t=e.Record({start_after:e.Opt(e.Text),limit:e.Opt(e.Nat64)}),c=e.Record({order:e.Opt(i),owner:e.Opt(e.Principal),matcher:e.Opt(s),paginate:e.Opt(t)}),_=e.Record({controllers:e.Vec(e.Principal)}),m=e.Variant({Write:e.Null,Admin:e.Null,Submit:e.Null}),d=e.Record({updated_at:e.Nat64,metadata:e.Vec(e.Tuple(e.Text,e.Text)),created_at:e.Nat64,scope:m,expires_at:e.Opt(e.Nat64)}),p=e.Record({version:e.Opt(e.Nat64)}),T=e.Variant({Db:e.Null,Storage:e.Null}),f=e.Record({version:e.Opt(e.Nat64)}),A=e.Record({proposal_ids:e.Vec(e.Nat)}),R=e.Record({cycles:e.Nat,destination_id:e.Principal}),J=e.Record({token:e.Opt(e.Text),collection:e.Text,owner:e.Principal,name:e.Text,description:e.Opt(e.Text),full_path:e.Text}),Q=e.Record({modified:e.Nat64,sha256:e.Vec(e.Nat8),total_length:e.Nat}),V=e.Record({key:J,updated_at:e.Nat64,encodings:e.Vec(e.Tuple(e.Text,Q)),headers:e.Vec(e.Tuple(e.Text,e.Text)),created_at:e.Nat64,version:e.Opt(e.Nat64)}),D=e.Record({derivation_origin:e.Opt(e.Text),external_alternative_origins:e.Opt(e.Vec(e.Text))}),S=e.Record({allowed_callers:e.Vec(e.Principal)}),P=e.Record({updated_at:e.Opt(e.Nat64),created_at:e.Opt(e.Nat64),version:e.Opt(e.Nat64),internet_identity:e.Opt(D),rules:e.Opt(S)}),E=e.Record({stable:e.Opt(e.Nat64),heap:e.Opt(e.Nat64)}),C=e.Record({updated_at:e.Opt(e.Nat64),created_at:e.Opt(e.Nat64),version:e.Opt(e.Nat64),max_memory_size:e.Opt(E)}),Z=e.Variant({Deny:e.Null,AllowAny:e.Null,SameOrigin:e.Null}),ee=e.Variant({Deny:e.Null,Allow:e.Null}),ae=e.Record({status_code:e.Nat16,location:e.Text}),k=e.Record({iframe:e.Opt(Z),updated_at:e.Opt(e.Nat64),rewrites:e.Vec(e.Tuple(e.Text,e.Text)),headers:e.Vec(e.Tuple(e.Text,e.Vec(e.Tuple(e.Text,e.Text)))),created_at:e.Opt(e.Nat64),version:e.Opt(e.Nat64),max_memory_size:e.Opt(E),raw_access:e.Opt(ee),redirects:e.Opt(e.Vec(e.Tuple(e.Text,ae)))}),Ee=e.Record({db:e.Opt(C),authentication:e.Opt(P),storage:k}),g=e.Record({updated_at:e.Nat64,owner:e.Principal,data:e.Vec(e.Nat8),description:e.Opt(e.Text),created_at:e.Nat64,version:e.Opt(e.Nat64)}),we=e.Variant({Initialized:e.Null,Failed:e.Null,Open:e.Null,Rejected:e.Null,Executed:e.Null,Accepted:e.Null}),ve=e.Record({clear_existing_assets:e.Opt(e.Bool)}),Ie=e.Record({orbiter:e.Opt(e.Text),mission_control_version:e.Opt(e.Text),satellite_version:e.Opt(e.Text)}),re=e.Variant({AssetsUpgrade:ve,SegmentsDeployment:Ie}),w=e.Record({status:we,updated_at:e.Nat64,sha256:e.Opt(e.Vec(e.Nat8)),executed_at:e.Opt(e.Nat64),owner:e.Principal,created_at:e.Nat64,version:e.Opt(e.Nat64),proposal_type:re}),U=e.Variant({Heap:e.Null,Stable:e.Null}),v=e.Variant({Controllers:e.Null,Private:e.Null,Public:e.Null,Managed:e.Null}),oe=e.Record({max_tokens:e.Nat64,time_per_token_ns:e.Nat64}),L=e.Record({max_capacity:e.Opt(e.Nat32),memory:e.Opt(U),updated_at:e.Nat64,max_size:e.Opt(e.Nat),read:v,created_at:e.Nat64,version:e.Opt(e.Nat64),mutable_permissions:e.Opt(e.Bool),rate_config:e.Opt(oe),write:v,max_changes_per_user:e.Opt(e.Nat32)}),be=e.Record({url:e.Text,method:e.Text,body:e.Vec(e.Nat8),headers:e.Vec(e.Tuple(e.Text,e.Text)),certificate_version:e.Opt(e.Nat16)}),q=e.Record({memory:U,token:e.Opt(e.Text),sha256:e.Opt(e.Vec(e.Nat8)),headers:e.Vec(e.Tuple(e.Text,e.Text)),index:e.Nat64,encoding_type:e.Text,full_path:e.Text}),De=e.Variant({Callback:e.Record({token:q,callback:e.Func([],[],["query"])})}),Se=e.Record({body:e.Vec(e.Nat8),headers:e.Vec(e.Tuple(e.Text,e.Text)),streaming_strategy:e.Opt(De),status_code:e.Nat16}),Ce=e.Record({token:e.Opt(q),body:e.Vec(e.Nat8)}),B=e.Record({token:e.Opt(e.Text),collection:e.Text,name:e.Text,description:e.Opt(e.Text),encoding_type:e.Opt(e.Text),full_path:e.Text}),j=e.Record({batch_id:e.Nat}),ke=e.Record({matches_pages:e.Opt(e.Nat64),matches_length:e.Nat64,items_page:e.Opt(e.Nat64),items:e.Vec(e.Tuple(e.Text,V)),items_length:e.Nat64}),Ue=e.Record({updated_at:e.Nat64,created_at:e.Nat64,version:e.Opt(e.Nat64),bn_id:e.Opt(e.Text)}),Le=e.Record({matches_pages:e.Opt(e.Nat64),matches_length:e.Nat64,items_page:e.Opt(e.Nat64),items:e.Vec(e.Tuple(e.Text,g)),items_length:e.Nat64}),qe=e.Record({desc:e.Bool}),Be=e.Record({start_after:e.Opt(e.Nat),limit:e.Opt(e.Nat)}),je=e.Record({order:e.Opt(qe),paginate:e.Opt(Be)}),Me=e.Record({proposal_id:e.Nat}),Je=e.Record({matches_length:e.Nat64,items:e.Vec(e.Tuple(Me,w)),items_length:e.Nat64}),Ke=e.Record({include_system:e.Bool}),We=e.Record({matcher:e.Opt(Ke)}),ze=e.Record({matches_length:e.Nat64,items:e.Vec(e.Tuple(e.Text,L)),items_length:e.Nat64}),Ge=e.Record({stable:e.Nat64,heap:e.Nat64}),He=e.Record({version:e.Opt(e.Nat64),internet_identity:e.Opt(D),rules:e.Opt(S)}),$e=e.Record({metadata:e.Vec(e.Tuple(e.Text,e.Text)),scope:m,expires_at:e.Opt(e.Nat64)}),Ye=e.Record({controller:$e,controllers:e.Vec(e.Principal)}),Xe=e.Record({version:e.Opt(e.Nat64),max_memory_size:e.Opt(E)}),ie=e.Record({data:e.Vec(e.Nat8),description:e.Opt(e.Text),version:e.Opt(e.Nat64)}),Qe=e.Record({max_capacity:e.Opt(e.Nat32),memory:e.Opt(U),max_size:e.Opt(e.Nat),read:v,version:e.Opt(e.Nat64),mutable_permissions:e.Opt(e.Bool),rate_config:e.Opt(oe),write:v,max_changes_per_user:e.Opt(e.Nat32)}),Ze=e.Record({iframe:e.Opt(Z),rewrites:e.Vec(e.Tuple(e.Text,e.Text)),headers:e.Vec(e.Tuple(e.Text,e.Vec(e.Tuple(e.Text,e.Text)))),version:e.Opt(e.Nat64),max_memory_size:e.Opt(E),raw_access:e.Opt(ee),redirects:e.Opt(e.Vec(e.Tuple(e.Text,ae)))}),ne=e.Record({content:e.Vec(e.Nat8),batch_id:e.Nat,order_id:e.Opt(e.Nat)}),se=e.Record({chunk_id:e.Nat});return e.Service({commit_asset_upload:e.Func([a],[],[]),commit_proposal:e.Func([r],[e.Null],[]),commit_proposal_asset_upload:e.Func([a],[],[]),commit_proposal_many_assets_upload:e.Func([e.Vec(a)],[],[]),count_assets:e.Func([e.Text,c],[e.Nat64],["query"]),count_collection_assets:e.Func([e.Text],[e.Nat64],["query"]),count_collection_docs:e.Func([e.Text],[e.Nat64],["query"]),count_docs:e.Func([e.Text,c],[e.Nat64],["query"]),count_proposals:e.Func([],[e.Nat64],["query"]),del_asset:e.Func([e.Text,e.Text],[],[]),del_assets:e.Func([e.Text],[],[]),del_controllers:e.Func([_],[e.Vec(e.Tuple(e.Principal,d))],[]),del_custom_domain:e.Func([e.Text],[],[]),del_doc:e.Func([e.Text,e.Text,p],[],[]),del_docs:e.Func([e.Text],[],[]),del_filtered_assets:e.Func([e.Text,c],[],[]),del_filtered_docs:e.Func([e.Text,c],[],[]),del_many_assets:e.Func([e.Vec(e.Tuple(e.Text,e.Text))],[],[]),del_many_docs:e.Func([e.Vec(e.Tuple(e.Text,e.Text,p))],[],[]),del_rule:e.Func([T,e.Text,f],[],[]),delete_proposal_assets:e.Func([A],[],[]),deposit_cycles:e.Func([R],[],[]),get_asset:e.Func([e.Text,e.Text],[e.Opt(V)],["query"]),get_auth_config:e.Func([],[e.Opt(P)],["query"]),get_config:e.Func([],[Ee],[]),get_db_config:e.Func([],[e.Opt(C)],["query"]),get_doc:e.Func([e.Text,e.Text],[e.Opt(g)],["query"]),get_many_assets:e.Func([e.Vec(e.Tuple(e.Text,e.Text))],[e.Vec(e.Tuple(e.Text,e.Opt(V)))],["query"]),get_many_docs:e.Func([e.Vec(e.Tuple(e.Text,e.Text))],[e.Vec(e.Tuple(e.Text,e.Opt(g)))],["query"]),get_proposal:e.Func([e.Nat],[e.Opt(w)],["query"]),get_rule:e.Func([T,e.Text],[e.Opt(L)],["query"]),get_storage_config:e.Func([],[k],["query"]),http_request:e.Func([be],[Se],["query"]),http_request_streaming_callback:e.Func([q],[Ce],["query"]),init_asset_upload:e.Func([B],[j],[]),init_proposal:e.Func([re],[e.Nat,w],[]),init_proposal_asset_upload:e.Func([B,e.Nat],[j],[]),init_proposal_many_assets_upload:e.Func([e.Vec(B),e.Nat],[e.Vec(e.Tuple(e.Text,j))],[]),list_assets:e.Func([e.Text,c],[ke],["query"]),list_controllers:e.Func([],[e.Vec(e.Tuple(e.Principal,d))],["query"]),list_custom_domains:e.Func([],[e.Vec(e.Tuple(e.Text,Ue))],["query"]),list_docs:e.Func([e.Text,c],[Le],["query"]),list_proposals:e.Func([je],[Je],["query"]),list_rules:e.Func([T,We],[ze],["query"]),memory_size:e.Func([],[Ge],["query"]),reject_proposal:e.Func([r],[e.Null],[]),set_auth_config:e.Func([He],[P],[]),set_controllers:e.Func([Ye],[e.Vec(e.Tuple(e.Principal,d))],[]),set_custom_domain:e.Func([e.Text,e.Opt(e.Text)],[],[]),set_db_config:e.Func([Xe],[C],[]),set_doc:e.Func([e.Text,e.Text,ie],[g],[]),set_many_docs:e.Func([e.Vec(e.Tuple(e.Text,e.Text,ie))],[e.Vec(e.Tuple(e.Text,g))],[]),set_rule:e.Func([T,e.Text,Qe],[L],[]),set_storage_config:e.Func([Ze],[k],[]),submit_proposal:e.Func([e.Nat],[e.Nat,w],[]),upload_asset_chunk:e.Func([ne],[se],[]),upload_proposal_asset_chunk:e.Func([ne],[se],[])})},ja=({IDL:e})=>{let a=e.Record({batch_id:e.Nat,headers:e.Vec(e.Tuple(e.Text,e.Text)),chunk_ids:e.Vec(e.Nat)}),r=e.Record({sha256:e.Vec(e.Nat8),proposal_id:e.Nat}),o=e.Variant({UpdatedAt:e.Null,Keys:e.Null,CreatedAt:e.Null}),i=e.Record({field:o,desc:e.Bool}),n=e.Variant({Equal:e.Nat64,Between:e.Tuple(e.Nat64,e.Nat64),GreaterThan:e.Nat64,LessThan:e.Nat64}),s=e.Record({key:e.Opt(e.Text),updated_at:e.Opt(n),description:e.Opt(e.Text),created_at:e.Opt(n)}),t=e.Record({start_after:e.Opt(e.Text),limit:e.Opt(e.Nat64)}),c=e.Record({order:e.Opt(i),owner:e.Opt(e.Principal),matcher:e.Opt(s),paginate:e.Opt(t)}),_=e.Record({controllers:e.Vec(e.Principal)}),m=e.Variant({Write:e.Null,Admin:e.Null,Submit:e.Null}),d=e.Record({updated_at:e.Nat64,metadata:e.Vec(e.Tuple(e.Text,e.Text)),created_at:e.Nat64,scope:m,expires_at:e.Opt(e.Nat64)}),p=e.Record({version:e.Opt(e.Nat64)}),T=e.Variant({Db:e.Null,Storage:e.Null}),f=e.Record({version:e.Opt(e.Nat64)}),A=e.Record({proposal_ids:e.Vec(e.Nat)}),R=e.Record({cycles:e.Nat,destination_id:e.Principal}),J=e.Record({token:e.Opt(e.Text),collection:e.Text,owner:e.Principal,name:e.Text,description:e.Opt(e.Text),full_path:e.Text}),Q=e.Record({modified:e.Nat64,sha256:e.Vec(e.Nat8),total_length:e.Nat}),V=e.Record({key:J,updated_at:e.Nat64,encodings:e.Vec(e.Tuple(e.Text,Q)),headers:e.Vec(e.Tuple(e.Text,e.Text)),created_at:e.Nat64,version:e.Opt(e.Nat64)}),D=e.Record({derivation_origin:e.Opt(e.Text),external_alternative_origins:e.Opt(e.Vec(e.Text))}),S=e.Record({allowed_callers:e.Vec(e.Principal)}),P=e.Record({updated_at:e.Opt(e.Nat64),created_at:e.Opt(e.Nat64),version:e.Opt(e.Nat64),internet_identity:e.Opt(D),rules:e.Opt(S)}),E=e.Record({stable:e.Opt(e.Nat64),heap:e.Opt(e.Nat64)}),C=e.Record({updated_at:e.Opt(e.Nat64),created_at:e.Opt(e.Nat64),version:e.Opt(e.Nat64),max_memory_size:e.Opt(E)}),Z=e.Variant({Deny:e.Null,AllowAny:e.Null,SameOrigin:e.Null}),ee=e.Variant({Deny:e.Null,Allow:e.Null}),ae=e.Record({status_code:e.Nat16,location:e.Text}),k=e.Record({iframe:e.Opt(Z),updated_at:e.Opt(e.Nat64),rewrites:e.Vec(e.Tuple(e.Text,e.Text)),headers:e.Vec(e.Tuple(e.Text,e.Vec(e.Tuple(e.Text,e.Text)))),created_at:e.Opt(e.Nat64),version:e.Opt(e.Nat64),max_memory_size:e.Opt(E),raw_access:e.Opt(ee),redirects:e.Opt(e.Vec(e.Tuple(e.Text,ae)))}),Ee=e.Record({db:e.Opt(C),authentication:e.Opt(P),storage:k}),g=e.Record({updated_at:e.Nat64,owner:e.Principal,data:e.Vec(e.Nat8),description:e.Opt(e.Text),created_at:e.Nat64,version:e.Opt(e.Nat64)}),we=e.Variant({Initialized:e.Null,Failed:e.Null,Open:e.Null,Rejected:e.Null,Executed:e.Null,Accepted:e.Null}),ve=e.Record({clear_existing_assets:e.Opt(e.Bool)}),Ie=e.Record({orbiter:e.Opt(e.Text),mission_control_version:e.Opt(e.Text),satellite_version:e.Opt(e.Text)}),re=e.Variant({AssetsUpgrade:ve,SegmentsDeployment:Ie}),w=e.Record({status:we,updated_at:e.Nat64,sha256:e.Opt(e.Vec(e.Nat8)),executed_at:e.Opt(e.Nat64),owner:e.Principal,created_at:e.Nat64,version:e.Opt(e.Nat64),proposal_type:re}),U=e.Variant({Heap:e.Null,Stable:e.Null}),v=e.Variant({Controllers:e.Null,Private:e.Null,Public:e.Null,Managed:e.Null}),oe=e.Record({max_tokens:e.Nat64,time_per_token_ns:e.Nat64}),L=e.Record({max_capacity:e.Opt(e.Nat32),memory:e.Opt(U),updated_at:e.Nat64,max_size:e.Opt(e.Nat),read:v,created_at:e.Nat64,version:e.Opt(e.Nat64),mutable_permissions:e.Opt(e.Bool),rate_config:e.Opt(oe),write:v,max_changes_per_user:e.Opt(e.Nat32)}),be=e.Record({url:e.Text,method:e.Text,body:e.Vec(e.Nat8),headers:e.Vec(e.Tuple(e.Text,e.Text)),certificate_version:e.Opt(e.Nat16)}),q=e.Record({memory:U,token:e.Opt(e.Text),sha256:e.Opt(e.Vec(e.Nat8)),headers:e.Vec(e.Tuple(e.Text,e.Text)),index:e.Nat64,encoding_type:e.Text,full_path:e.Text}),De=e.Variant({Callback:e.Record({token:q,callback:e.Func([],[],[])})}),Se=e.Record({body:e.Vec(e.Nat8),headers:e.Vec(e.Tuple(e.Text,e.Text)),streaming_strategy:e.Opt(De),status_code:e.Nat16}),Ce=e.Record({token:e.Opt(q),body:e.Vec(e.Nat8)}),B=e.Record({token:e.Opt(e.Text),collection:e.Text,name:e.Text,description:e.Opt(e.Text),encoding_type:e.Opt(e.Text),full_path:e.Text}),j=e.Record({batch_id:e.Nat}),ke=e.Record({matches_pages:e.Opt(e.Nat64),matches_length:e.Nat64,items_page:e.Opt(e.Nat64),items:e.Vec(e.Tuple(e.Text,V)),items_length:e.Nat64}),Ue=e.Record({updated_at:e.Nat64,created_at:e.Nat64,version:e.Opt(e.Nat64),bn_id:e.Opt(e.Text)}),Le=e.Record({matches_pages:e.Opt(e.Nat64),matches_length:e.Nat64,items_page:e.Opt(e.Nat64),items:e.Vec(e.Tuple(e.Text,g)),items_length:e.Nat64}),qe=e.Record({desc:e.Bool}),Be=e.Record({start_after:e.Opt(e.Nat),limit:e.Opt(e.Nat)}),je=e.Record({order:e.Opt(qe),paginate:e.Opt(Be)}),Me=e.Record({proposal_id:e.Nat}),Je=e.Record({matches_length:e.Nat64,items:e.Vec(e.Tuple(Me,w)),items_length:e.Nat64}),Ke=e.Record({include_system:e.Bool}),We=e.Record({matcher:e.Opt(Ke)}),ze=e.Record({matches_length:e.Nat64,items:e.Vec(e.Tuple(e.Text,L)),items_length:e.Nat64}),Ge=e.Record({stable:e.Nat64,heap:e.Nat64}),He=e.Record({version:e.Opt(e.Nat64),internet_identity:e.Opt(D),rules:e.Opt(S)}),$e=e.Record({metadata:e.Vec(e.Tuple(e.Text,e.Text)),scope:m,expires_at:e.Opt(e.Nat64)}),Ye=e.Record({controller:$e,controllers:e.Vec(e.Principal)}),Xe=e.Record({version:e.Opt(e.Nat64),max_memory_size:e.Opt(E)}),ie=e.Record({data:e.Vec(e.Nat8),description:e.Opt(e.Text),version:e.Opt(e.Nat64)}),Qe=e.Record({max_capacity:e.Opt(e.Nat32),memory:e.Opt(U),max_size:e.Opt(e.Nat),read:v,version:e.Opt(e.Nat64),mutable_permissions:e.Opt(e.Bool),rate_config:e.Opt(oe),write:v,max_changes_per_user:e.Opt(e.Nat32)}),Ze=e.Record({iframe:e.Opt(Z),rewrites:e.Vec(e.Tuple(e.Text,e.Text)),headers:e.Vec(e.Tuple(e.Text,e.Vec(e.Tuple(e.Text,e.Text)))),version:e.Opt(e.Nat64),max_memory_size:e.Opt(E),raw_access:e.Opt(ee),redirects:e.Opt(e.Vec(e.Tuple(e.Text,ae)))}),ne=e.Record({content:e.Vec(e.Nat8),batch_id:e.Nat,order_id:e.Opt(e.Nat)}),se=e.Record({chunk_id:e.Nat});return e.Service({commit_asset_upload:e.Func([a],[],[]),commit_proposal:e.Func([r],[e.Null],[]),commit_proposal_asset_upload:e.Func([a],[],[]),commit_proposal_many_assets_upload:e.Func([e.Vec(a)],[],[]),count_assets:e.Func([e.Text,c],[e.Nat64],[]),count_collection_assets:e.Func([e.Text],[e.Nat64],[]),count_collection_docs:e.Func([e.Text],[e.Nat64],[]),count_docs:e.Func([e.Text,c],[e.Nat64],[]),count_proposals:e.Func([],[e.Nat64],[]),del_asset:e.Func([e.Text,e.Text],[],[]),del_assets:e.Func([e.Text],[],[]),del_controllers:e.Func([_],[e.Vec(e.Tuple(e.Principal,d))],[]),del_custom_domain:e.Func([e.Text],[],[]),del_doc:e.Func([e.Text,e.Text,p],[],[]),del_docs:e.Func([e.Text],[],[]),del_filtered_assets:e.Func([e.Text,c],[],[]),del_filtered_docs:e.Func([e.Text,c],[],[]),del_many_assets:e.Func([e.Vec(e.Tuple(e.Text,e.Text))],[],[]),del_many_docs:e.Func([e.Vec(e.Tuple(e.Text,e.Text,p))],[],[]),del_rule:e.Func([T,e.Text,f],[],[]),delete_proposal_assets:e.Func([A],[],[]),deposit_cycles:e.Func([R],[],[]),get_asset:e.Func([e.Text,e.Text],[e.Opt(V)],[]),get_auth_config:e.Func([],[e.Opt(P)],[]),get_config:e.Func([],[Ee],[]),get_db_config:e.Func([],[e.Opt(C)],[]),get_doc:e.Func([e.Text,e.Text],[e.Opt(g)],[]),get_many_assets:e.Func([e.Vec(e.Tuple(e.Text,e.Text))],[e.Vec(e.Tuple(e.Text,e.Opt(V)))],[]),get_many_docs:e.Func([e.Vec(e.Tuple(e.Text,e.Text))],[e.Vec(e.Tuple(e.Text,e.Opt(g)))],[]),get_proposal:e.Func([e.Nat],[e.Opt(w)],[]),get_rule:e.Func([T,e.Text],[e.Opt(L)],[]),get_storage_config:e.Func([],[k],[]),http_request:e.Func([be],[Se],[]),http_request_streaming_callback:e.Func([q],[Ce],[]),init_asset_upload:e.Func([B],[j],[]),init_proposal:e.Func([re],[e.Nat,w],[]),init_proposal_asset_upload:e.Func([B,e.Nat],[j],[]),init_proposal_many_assets_upload:e.Func([e.Vec(B),e.Nat],[e.Vec(e.Tuple(e.Text,j))],[]),list_assets:e.Func([e.Text,c],[ke],[]),list_controllers:e.Func([],[e.Vec(e.Tuple(e.Principal,d))],[]),list_custom_domains:e.Func([],[e.Vec(e.Tuple(e.Text,Ue))],[]),list_docs:e.Func([e.Text,c],[Le],[]),list_proposals:e.Func([je],[Je],[]),list_rules:e.Func([T,We],[ze],[]),memory_size:e.Func([],[Ge],[]),reject_proposal:e.Func([r],[e.Null],[]),set_auth_config:e.Func([He],[P],[]),set_controllers:e.Func([Ye],[e.Vec(e.Tuple(e.Principal,d))],[]),set_custom_domain:e.Func([e.Text,e.Opt(e.Text)],[],[]),set_db_config:e.Func([Xe],[C],[]),set_doc:e.Func([e.Text,e.Text,ie],[g],[]),set_many_docs:e.Func([e.Vec(e.Tuple(e.Text,e.Text,ie))],[e.Vec(e.Tuple(e.Text,g))],[]),set_rule:e.Func([T,e.Text,Qe],[L],[]),set_storage_config:e.Func([Ze],[k],[]),submit_proposal:e.Func([e.Nat],[e.Nat,w],[]),upload_asset_chunk:e.Func([ne],[se],[]),upload_proposal_asset_chunk:e.Func([ne],[se],[])})};import{nonNullish as sa}from"@dfinity/utils";var Ma=({satelliteId:e,container:a})=>{let{satelliteId:r}=ta({satelliteId:e}),{container:o}=ca({container:a});if(sa(o)&&o!==!1){let{host:i,protocol:n}=new URL(o===!0?z:o);return`${n}//${r??"unknown"}.${i.replace("127.0.0.1","localhost")}`}return`https://${r??"unknown"}.icp0.io`},ta=({satelliteId:e})=>sa(e)?{satelliteId:e}:N.getInstance().get()??{satelliteId:void 0},ca=({container:e})=>sa(e)?{container:e}:N.getInstance().get()??{container:void 0};var u=({satellite:e,options:{certified:a}})=>Ka({idlFactory:a?ja:Ba,actorKey:`stock#${a?"update":"query"}`,...e}),Ja=({idlFactory:e,...a})=>Ka({idlFactory:e,actorKey:"extended#query",...a}),Ka=async({satelliteId:e,container:a,...r})=>{let{satelliteId:o}=ta({satelliteId:e});yo(o,"No satellite ID defined. Did you initialize Juno?");let{container:i}=ca({container:a});return await H.getInstance().getActor({satelliteId:o,container:i,...r})};import{Principal as Ro}from"@dfinity/principal";import{isNullish as Y,toNullable as x}from"@dfinity/utils";var Wa=e=>{if(Y(e))return x();switch(e.matcher){case"equal":return x({Equal:e.timestamp});case"greaterThan":return x({GreaterThan:e.timestamp});case"lessThan":return x({LessThan:e.timestamp});case"between":return x({Between:[e.timestamps.start,e.timestamps.end]});default:throw new ge("Invalid list matcher for timestamp",e)}},b=({matcher:e,paginate:a,order:r,owner:o})=>({matcher:Y(e)?[]:[{key:x(e.key),description:x(e.description),created_at:Wa(e.createdAt),updated_at:Wa(e.updatedAt)}],paginate:x(Y(a)?void 0:{start_after:x(a.startAfter),limit:x(Y(a.limit)?void 0:BigInt(a.limit))}),order:x(Y(r)?void 0:{desc:r.desc,field:r.field==="created_at"?{CreatedAt:null}:r.field==="updated_at"?{UpdatedAt:null}:{Keys:null}}),owner:x(Y(o)?void 0:typeof o=="string"?Ro.fromText(o):o)});var za=async({data:e})=>{try{return await ue(e)}catch(a){console.error("The data parsing has failed, mapping to undefined as a fallback.",a);return}};import{fromNullable as Ga,toNullable as la}from"@dfinity/utils";var pa=async e=>{let{data:a,version:r,description:o}=e;return{description:la(o),data:await ka(a),version:la(r)}},da=e=>{let{version:a}=e;return{version:la(a)}},le=async({doc:e,key:a})=>{let{owner:r,version:o,description:i,data:n,...s}=e;return{key:a,description:Ga(i),owner:r.toText(),data:await ue(n),version:Ga(o),...s}};var Ha=async({collection:e,key:a,...r})=>{let{get_doc:o}=await u(r),i=X(await o(e,a));if(!go(i))return le({doc:i,key:a})},$a=async({docs:e,...a})=>{let{get_many_docs:r}=await u(a),o=e.map(({collection:s,key:t})=>[s,t]),i=await r(o),n=[];for(let[s,t]of i){let c=X(t);n.push(fo(c)?await le({key:s,doc:c}):void 0)}return n},Ya=async({collection:e,doc:a,...r})=>{let{set_doc:o}=await u(r),{key:i}=a,n=await pa(a),s=await o(e,i,n);return await le({key:i,doc:s})},Xa=async({docs:e,...a})=>{let{set_many_docs:r}=await u(a),o=[];for(let{collection:s,doc:t}of e){let{key:c}=t;o.push([s,c,await pa(t)])}let i=await r(o),n=[];for(let[s,t]of i)n.push(await le({key:s,doc:t}));return n},Qa=async({collection:e,doc:a,...r})=>{let{del_doc:o}=await u(r),{key:i}=a;return o(e,i,da(a))},Za=async({docs:e,...a})=>{let{del_many_docs:r}=await u(a),o=e.map(({collection:i,doc:n})=>[i,n.key,da(n)]);await r(o)},er=async({collection:e,filter:a,...r})=>{let{del_filtered_docs:o}=await u(r);return o(e,b(a))},ar=async({collection:e,filter:a,...r})=>{let{list_docs:o}=await u(r),{items:i,items_page:n,items_length:s,matches_length:t,matches_pages:c}=await o(e,b(a)),_=[];for(let[m,d]of i){let{data:p,owner:T,description:f,version:A,...R}=d;_.push({key:m,description:X(f),owner:T.toText(),data:await za({data:p}),version:X(A),...R})}return{items:_,items_length:s,items_page:X(n),matches_length:t,matches_pages:X(c)}},rr=async({collection:e,filter:a,...r})=>{let{count_docs:o}=await u(r);return o(e,b(a))};var Ae=async({satellite:e,options:a,...r})=>{let o=l(e?.identity);return await Ha({...r,satellite:{...e,identity:o},options:a??F})},ls=async({satellite:e,options:a,...r})=>{let o=l(e?.identity);return await $a({...r,satellite:{...e,identity:o},options:a??F})},or=async({satellite:e,...a})=>{let r=l(e?.identity);return await Ya({...a,satellite:{...e,identity:r},options:{certified:!0}})},ir=async({satellite:e,...a})=>{let r=l(e?.identity);return await Xa({...a,satellite:{...e,identity:r},options:{certified:!0}})},ps=async({satellite:e,...a})=>{let r=l(e?.identity);return await Qa({...a,satellite:{...e,identity:r},options:{certified:!0}})},ds=async({satellite:e,...a})=>{let r=l(e?.identity);return await Za({...a,satellite:{...e,identity:r},options:{certified:!0}})},us=async({satellite:e,filter:a,...r})=>{let o=l(e?.identity);return await er({...r,filter:a??{},satellite:{...e,identity:o},options:{certified:!0}})},_s=async({satellite:e,options:a,filter:r,...o})=>{let i=l(e?.identity);return await ar({...o,filter:r??{},satellite:{...e,identity:i},options:a??F})},ms=async({satellite:e,options:a,filter:r,...o})=>{let i=l(e?.identity);return await rr({...o,filter:r??{},satellite:{...e,identity:i},options:a??F})};import{arrayBufferToUint8Array as ho,nonNullish as Fo,uint8ArrayToArrayOfNumber as Ao}from"@dfinity/utils";var nr=async({delegationIdentity:e,passkeyIdentity:a,satelliteId:r})=>{let o=a.getCredential().getAAGUID(),[i,n]=await ir({docs:[{collection:"#user",doc:{key:e.getPrincipal().toText(),data:{provider:"webauthn",providerData:{webauthn:{...Fo(o)&&{aaguid:Ao(o)}}}}}},{collection:"#user-webauthn",doc:{key:a.getCredential().getCredentialIdText(),data:{publicKey:ho(a.getPublicKey().toDer())}}}],satellite:{identity:e,satelliteId:r}});return i};var sr=(n=>(n[n.RequestingUserCredential=0]="RequestingUserCredential",n[n.FinalizingCredential=1]="FinalizingCredential",n[n.Signing=2]="Signing",n[n.FinalizingSession=3]="FinalizingSession",n[n.RetrievingUser=4]="RetrievingUser",n))(sr||{}),tr=(s=>(s[s.CreatingUserCredential=0]="CreatingUserCredential",s[s.ValidatingUserCredential=1]="ValidatingUserCredential",s[s.FinalizingCredential=2]="FinalizingCredential",s[s.Signing=3]="Signing",s[s.FinalizingSession=4]="FinalizingSession",s[s.RegisteringUser=5]="RegisteringUser",s))(tr||{});var pe=class{get id(){return"webauthn"}async signUp({options:{onProgress:a,maxTimeToLiveInMilliseconds:r,passkey:o}={},loadAuthWithUser:i}){let{satelliteId:n}=N.getInstance().get()??{satelliteId:void 0};if(ua(n))throw new M("Satellite ID not set. Have you initialized the Satellite?");let s=({step:A,state:R})=>{switch(A){case I.RequestingUserCredential:a?.({step:1,state:R});break;case I.FinalizingCredential:a?.({step:2,state:R});break;case I.Signing:a?.({step:3,state:R});break}},c=await h({fn:async()=>await aa.createWithNewCredential({onProgress:s,passkeyOptions:o}),step:0,onProgress:a}),{delegationIdentity:_,sessionKey:m}=await this.#e({identity:c,maxTimeToLiveInMilliseconds:r}),p=await h({fn:async()=>await nr({delegationIdentity:_,passkeyIdentity:c,satelliteId:n}),step:5,onProgress:a});await h({fn:async()=>await this.#a({delegationIdentity:_,sessionKey:m}),step:4,onProgress:a}),await h({fn:async()=>await i({user:p}),step:5,onProgress:a})}async signIn({options:{onProgress:a,maxTimeToLiveInMilliseconds:r}={},loadAuth:o}){let{satelliteId:i}=N.getInstance().get()??{satelliteId:void 0};if(ua(i))throw new M("Satellite ID not set. Have you initialized the Satellite?");let n=async({credentialId:d})=>{let p=await Ae({collection:"#user-webauthn",key:ko(d),options:{certified:!0},satellite:{identity:new Po,satelliteId:i}});if(ua(p))throw new xe("No public key found for the selected passkey.");let{data:T}=p,{publicKey:f}=T;return Co(f.buffer,Do)},s=({step:d,state:p})=>{switch(d){case I.RequestingUserCredential:a?.({step:0,state:p});break;case I.FinalizingCredential:a?.({step:1,state:p});break;case I.Signing:a?.({step:2,state:p});break}},t=await aa.createWithExistingCredential({retrievePublicKey:n,onProgress:s}),{delegationIdentity:c,sessionKey:_}=await this.#e({identity:t,maxTimeToLiveInMilliseconds:r});await h({fn:async()=>await this.#a({delegationIdentity:c,sessionKey:_}),step:3,onProgress:a}),await h({fn:o,step:4,onProgress:a})}async#e({identity:a,maxTimeToLiveInMilliseconds:r}){let o=await So.generate({extractable:!1}),i=r??144e5,n=await Io.create(a,o.getPublicKey(),new Date(Date.now()+i));return{delegationIdentity:bo.fromDelegation(o,n),sessionKey:o}}async#a({sessionKey:a,delegationIdentity:r}){let o=new Eo;await Promise.all([o.set(vo,a.getKeyPair()),o.set(wo,JSON.stringify(r.getDelegation().toJSON()))])}};import{AuthClient as Uo,IdbStorage as Lo,KEY_STORAGE_KEY as qo}from"@dfinity/auth-client";var de=()=>Uo.create({idleOptions:{disableIdle:!0,disableDefaultIdleCallback:!0}}),cr=async()=>(await new Lo().remove(qo),await de());import{isNullish as Bo,nonNullish as pr}from"@dfinity/utils";var _a=({error:e,type:a})=>typeof e=="string"?e.includes(a):e instanceof Error?e.message.includes(a):!1;var lr="juno.datastore.error.user.cannot_update";var dr=async({provider:e})=>{let{user:a,userId:r}=await ma();if(pr(a))return a;try{return await jo({userId:r,provider:e})}catch(o){if(_a({error:o,type:lr})){let i=await ur({userId:r});if(pr(i))return i}throw o}},ma=async()=>{let e=Fe();if(Bo(e))throw new Re("No identity to initialize the user. Have you initialized Juno?");let a=e.getPrincipal().toText(),r=await ur({userId:a});return{userId:a,user:r}},ur=({userId:e})=>Ae({collection:"#user",key:e}),jo=({userId:e,...a})=>or({collection:"#user",doc:{key:e,data:a}});var y,Ta=async()=>{await Na({fn:async()=>{let{user:a}=await ma();O.getInstance().set(a??null)}})},Jo=async({user:e})=>{await Na({fn:async()=>{O.getInstance().set(e)}})},_r=async({provider:e})=>{await Na({fn:async()=>{let r=await dr({provider:e});O.getInstance().set(r)}})},Na=async({fn:e})=>{if(y=await de(),!await y.isAuthenticated()){y=await cr();return}await e()},Ko=async e=>{let a=async()=>await zo(e);if(Object.values(e)[0].context?.windowGuard===!1){await a();return}await na({fn:a})},Wo=async e=>{let a=async()=>await Go(e);if(Object.values(e)?.[0].context?.windowGuard===!1){await a();return}await na({fn:a})},zo=async e=>{if("webauthn"in e){let{webauthn:{options:a}}=e;await new pe().signIn({options:a,loadAuth:Ta});return}if("nfid"in e){let{nfid:{options:a}}=e,{appName:r,logoUrl:o,...i}=a??{};await new he({appName:r,logoUrl:o}).signIn({options:i,authClient:y,initAuth:_r});return}if("internet_identity"in e){let{internet_identity:{options:a}}=e,{domain:r,...o}=a??{};await new fe({domain:r}).signIn({options:o,authClient:y,initAuth:_r});return}throw new Oe("An unknown or unsupported provider was provided for sign-in.")},Go=async e=>{if("webauthn"in e){let{webauthn:{options:a}}=e;await new pe().signUp({options:a,loadAuthWithUser:Jo});return}throw new ye("An unknown or unsupported provider was provided for sign-up.")},Oa=async e=>{await Ho(),y=await de(),e?.windowReload!==!1&&window.location.reload()},Ho=async()=>{await y?.logout(),y=null,O.getInstance().reset(),H.getInstance().reset(),G.getInstance().reset()},Fe=()=>y?.getIdentity(),$o=async()=>(y??await de()).getIdentity(),Yo=async()=>{let e=O.getInstance().get();return Mo(e)||!(await y?.isAuthenticated()??!1)?null:y?.getIdentity()??null};var mr=e=>{let a=e===!0?"./workers/auth.worker.js":e,r=new Worker(a),o=async()=>{ra({message:"junoSignOutAuthTimer"}),await Oa()};return r.onmessage=async({data:i})=>{let{msg:n,data:s}=i;switch(n){case"junoSignOutAuthTimer":await o();return;case"junoDelegationRemainingTime":ra({message:"junoDelegationRemainingTime",detail:s?.authRemainingTime});return}},O.getInstance().subscribe(i=>{if(Xo(i)){r.postMessage({msg:"junoStopAuthTimer"});return}r.postMessage({msg:"junoStartAuthTimer"})})};var Tr=()=>{let e=()=>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??e():e()},Nr=()=>{let e=()=>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??e():e()};var pt=async({idlFactory:e,satellite:a})=>{let r=l(a?.identity);return await Ja({idlFactory:e,...a,identity:r})};import{fromNullable as Pr,nonNullish as ii}from"@dfinity/utils";import{fromNullable as Pe}from"@dfinity/utils";import{assertNonNullish as _t,toNullable as Ve}from"@dfinity/utils";var Or=async({asset:{data:e,headers:a,...r},actor:o,progress:i})=>{let{init_asset_upload:n,upload_asset_chunk:s,commit_asset_upload:t}=o,{batch_id:c}=await n(Qo(r));i?.onInitiatedBatch();let{chunkIds:_}=await ai({data:e,uploadFn:s,batchId:c});i?.onUploadedFileChunks(r.fullPath),await ei({commitFn:t,batchId:c,data:e,headers:a,chunkIds:_}),i?.onCommittedBatch()};var Qo=({filename:e,collection:a,token:r,fullPath:o,encoding:i,description:n})=>({collection:a,full_path:o,name:e,token:Ve(r),encoding_type:Ve(i),description:Ve(n)}),Zo=({batchId:e,chunkIds:a,headers:r,data:o})=>{let i=r.find(([n,s])=>n.toLowerCase()==="content-type")===void 0&&o.type!==void 0&&o.type!==""?[["Content-Type",o.type]]:void 0;return{batch_id:e,chunk_ids:a.map(({chunk_id:n})=>n),headers:[...r,...i??[]]}},ei=async({commitFn:e,...a})=>{let r=Zo(a);await e(r)},ai=async({data:e,uploadFn:a,batchId:r})=>{let o=[],i=_e()?new Blob([await e.arrayBuffer()]):e,n=0n;for(let t=0;t<i.size;t+=19e5){let c=i.slice(t,t+19e5);o.push({batchId:r,chunk:c,uploadFn:a,orderId:n}),n++}let s=[];for await(let t of ri({uploadChunks:o}))s=[...s,...t];return{chunkIds:s}};async function*ri({uploadChunks:e,limit:a=12}){for(let r=0;r<e.length;r=r+a){let o=e.slice(r,r+a);yield await Promise.all(o.map(i=>oi(i)))}}var oi=async({batchId:e,chunk:a,uploadFn:r,orderId:o})=>r({batch_id:e,content:new Uint8Array(await a.arrayBuffer()),order_id:Ve(o)});var xr=async({asset:e,...a})=>{let r=await u(a);await Or({actor:r,asset:e})},yr=async({collection:e,filter:a,...r})=>{let{list_assets:o}=await u(r),{items:i,items_length:n,items_page:s,matches_length:t,matches_pages:c}=await o(e,b(a));return{items:i.map(([_,m])=>m),items_length:n,items_page:Pe(s),matches_length:t,matches_pages:Pe(c)}},Rr=async({collection:e,filter:a,...r})=>{let{count_assets:o}=await u(r);return o(e,b(a))},gr=async({collection:e,fullPath:a,...r})=>(await u(r)).del_asset(e,a),fr=async({assets:e,satellite:a})=>{let{del_many_assets:r}=await u({satellite:a,options:{certified:!0}}),o=e.map(({collection:i,fullPath:n})=>[i,n]);await r(o)},hr=async({collection:e,filter:a,...r})=>{let{del_filtered_assets:o}=await u(r);return o(e,b(a))},Fr=async({collection:e,fullPath:a,...r})=>{let{get_asset:o}=await u(r);return Pe(await o(e,a))},Ar=async({assets:e,...a})=>{let{get_many_assets:r}=await u(a),o=e.map(({collection:n,fullPath:s})=>[n,s]);return(await r(o)).map(([n,s])=>Pe(s))};var Vr=e=>btoa([...e].map(a=>String.fromCharCode(a)).join(""));var Et=e=>Er(e),wt=e=>Er({filename:e.data.name,...e}),Er=async({filename:e,data:a,collection:r,headers:o=[],fullPath:i,token:n,satellite:s,encoding:t,description:c})=>{let _=l(s?.identity),m=decodeURI(e),d=i??`/${r}/${m}`,p={...s,identity:_};return await xr({asset:{data:a,filename:m,collection:r,token:n,headers:o,fullPath:d,encoding:t,description:c},satellite:p,options:{certified:!0}}),{downloadUrl:wr({satellite:p,assetKey:{fullPath:d,token:n}}),fullPath:d,name:m}},vt=async({collection:e,filter:a,satellite:r,options:o})=>{let i={...r,identity:l(r?.identity)},{items:n,...s}=await yr({collection:e,filter:a??{},satellite:i,options:o??F}),t=n.map(({key:{full_path:c,token:_,name:m,owner:d,description:p},headers:T,encodings:f,created_at:A,updated_at:R})=>{let J=Pr(_);return{fullPath:c,description:Pr(p),name:m,downloadUrl:wr({satellite:i,assetKey:{fullPath:c,token:J}}),token:J,headers:T,encodings:f.reduce((Q,[V,{modified:D,sha256:S,total_length:P}])=>({...Q,[V]:{modified:D,sha256:Vr(S),total_length:P}}),{}),owner:d.toText(),created_at:A,updated_at:R}});return{items:t,assets:t,...s}},It=async({collection:e,filter:a,satellite:r,options:o})=>{let i={...r,identity:l(r?.identity)};return await Rr({collection:e,satellite:i,filter:a??{},options:o??F})},bt=({collection:e,fullPath:a,satellite:r})=>gr({collection:e,fullPath:a,satellite:{...r,identity:l(r?.identity)},options:{certified:!0}}),Dt=({assets:e,satellite:a})=>fr({assets:e,satellite:{...a,identity:l(a?.identity)},options:{certified:!0}}),St=async({collection:e,satellite:a,filter:r})=>{let o={...a,identity:l(a?.identity)};return await hr({collection:e,satellite:o,filter:r??{},options:{certified:!0}})},Ct=async({satellite:e,options:a,...r})=>{let o=l(e?.identity);return await Fr({...r,satellite:{...e,identity:o},options:a??F})},kt=async({satellite:e,options:a,...r})=>{let o=l(e?.identity);return await Ar({...r,satellite:{...e,identity:o},options:a??F})},wr=({assetKey:{fullPath:e,token:a},satellite:r})=>{let o={...r,identity:l(r?.identity)};return`${Ma(o)}${e}${ii(a)?`?token=${a}`:""}`};var si=e=>{let a=e?.satelliteId??Tr();ni(a,"Satellite ID is not configured. Juno cannot be initialized.");let r=e?.container??Nr();return{satelliteId:a,internetIdentityId:e?.internetIdentityId,workers:e?.workers,container:r}},Wt=e=>ti(e),ti=async e=>{let a=si(e);N.getInstance().set(a),await Ta();let r=a.workers?.auth!==void 0?mr(a.workers.auth):void 0;return[...r?[r]:[]]},ci=e=>O.getInstance().subscribe(e),zt=ci;export{La as AuthClientSignInProgressStep,Re as InitError,fe as InternetIdentityProvider,ge as ListError,he as NFIDProvider,Te as SignInError,M as SignInInitError,Oe as SignInProviderNotSupportedError,Ne as SignInUserInterruptError,ye as SignUpProviderNotSupportedError,sr as WebAuthnSignInProgressStep,xe as WebAuthnSignInRetrievePublicKeyError,tr as WebAuthnSignUpProgressStep,zt as authSubscribe,It as countAssets,ms as countDocs,bt as deleteAsset,ps as deleteDoc,St as deleteFilteredAssets,us as deleteFilteredDocs,Dt as deleteManyAssets,ds as deleteManyDocs,wr as downloadUrl,Ct as getAsset,Ae as getDoc,Yo as getIdentityOnce,kt as getManyAssets,ls as getManyDocs,pt as getSatelliteExtendedActor,Wt as initJuno,ti as initSatellite,so as isWebAuthnAvailable,vt as listAssets,_s as listDocs,ci as onAuthStateChange,or as setDoc,ir as setManyDocs,Ko as signIn,Oa as signOut,Wo as signUp,$o as unsafeIdentity,Et as uploadBlob,wt as uploadFile};
|
|
4
4
|
//# sourceMappingURL=index.mjs.map
|