@junobuild/admin 2.3.1-next-2025-10-28 → 2.3.1-next-2025-10-29

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.
@@ -1,2 +1,2 @@
1
- var j=class extends Error{constructor(){super("The Wasm code for the upgrade is identical to the code currently installed. No upgrade is necessary.")}};import{JUNO_PACKAGE_MISSION_CONTROL_ID as Ut,JUNO_PACKAGE_ORBITER_ID as vt,JUNO_PACKAGE_SATELLITE_ID as Ot}from"@junobuild/config";var N=class extends Error{constructor(){super(`Invalid dependency tree: required module ${Ot} is missing.`)}},J=class extends Error{constructor(){super(`Invalid package: the provided module name is not ${Ut}.`)}},B=class extends Error{constructor(){super(`Invalid package: the provided module name is not ${vt}.`)}};var fe=e=>crypto.subtle.digest("SHA-256",e),ge=e=>Array.from(new Uint8Array(e)).map(r=>r.toString(16).padStart(2,"0")).join(""),Ce=async e=>{let t=await fe(await e.arrayBuffer());return ge(t)},H=async e=>{let t=await fe(e);return ge(t)};var U=({dependencyId:e,dependencies:t})=>Object.entries(t??{}).find(([r,o])=>r===e);import{major as Pe,minor as ye,patch as Se}from"semver";var vr=({currentVersion:e,selectedVersion:t})=>{let r=Pe(e),o=Pe(t),i=ye(e),a=ye(t),n=Se(e),l=Se(t);return r<o-1||i<a-1||n<l-1?{canUpgrade:!1}:{canUpgrade:!0}};import{isNullish as xe,nonNullish as oe}from"@dfinity/utils";import{JUNO_PACKAGE_SATELLITE_ID as he,JunoPackageSchema as Et}from"@junobuild/config";var jr=async({junoPackage:e,wasm:t})=>{if(xe(e))return await Lt({wasm:t});let{name:r,dependencies:o}=e;if(r===he)return"stock";let i=U({dependencies:o,dependencyId:he});return oe(i)?"extended":void 0},Lt=async({wasm:e})=>{let t=await _e({wasm:e,sectionName:"icp:public juno:build"});return oe(t)&&["stock","extended"].includes(t)?t:void 0},Jr=async({wasm:e})=>{let t=await _e({wasm:e,sectionName:"icp:public juno:package"});if(xe(t))return;let r=JSON.parse(t),{success:o,data:i}=Et.safeParse(r);return o?i:void 0},_e=async({sectionName:e,wasm:t})=>{let r=await WebAssembly.compile(t),o=WebAssembly.Module.customSections(r,e),[i]=o;return oe(i)?new TextDecoder().decode(i):void 0};import*as Ae from"zod";var Hr=Ae.enum(["stock","extended"]);import*as D from"zod";var w=D.string().refine(e=>/^\d+\.\d+\.\d+$/.test(e),{message:"Version does not match x.y.z format"}),zt=D.strictObject({tag:w,console:w,observatory:w.optional(),mission_control:w,satellite:w,orbiter:w.optional(),sputnik:w.optional()}),jt=D.array(zt).min(1).refine(e=>new Set(e.map(({tag:t})=>t)).size===e.length,{message:"A release tag appears multiple times but must be unique"}),ie=D.array(w).min(1),Gr=D.strictObject({mission_controls:ie,satellites:ie,orbiters:ie,releases:jt});import{getDeprecatedMissionControlVersionActor as Jt,getMissionControlActor as V}from"@junobuild/ic-client/actor";var we=async({missionControl:e})=>{let{version:t}=await Jt(e);return t()},De=async({missionControl:e})=>{let{get_user:t}=await V(e);return t()},ke=async({missionControl:e})=>{let{list_mission_control_controllers:t}=await V(e);return t()},be=async({missionControl:e,satelliteIds:t,controllerIds:r,controller:o})=>{let{set_satellites_controllers:i}=await V(e);return i(t,r,o)},Me=async({missionControl:e,controllerIds:t,controller:r})=>{let{set_mission_control_controllers:o}=await V(e);return o(t,r)};import{Principal as Bt}from"@dfinity/principal";import{nonNullish as Ht,toNullable as Vt}from"@dfinity/utils";var ae=({controllerId:e,profile:t})=>({controllerIds:[Bt.fromText(e)],controller:Gt(t)}),Gt=e=>({metadata:Ht(e)&&e!==""?[["profile",e]]:[],expires_at:Vt(void 0),scope:{Admin:null}});var Yr=({controllerId:e,profile:t,...r})=>be({...r,...ae({controllerId:e,profile:t})}),eo=({controllerId:e,profile:t,...r})=>Me({...r,...ae({controllerId:e,profile:t})}),to=e=>ke(e);import{toPrincipal as nr}from"@junobuild/ic-client/utils";var v={reinstall:null},M={upgrade:[{skip_pre_upgrade:[!1],wasm_memory_persistence:[{replace:null}]}]};import{fromNullable as er,isNullish as tr,uint8ArrayToHexString as rr}from"@dfinity/utils";import{CanisterStatus as Kt}from"@dfinity/agent";import{ICManagementCanister as C}from"@dfinity/ic-management";import{Principal as Ie}from"@dfinity/principal";import{useOrInitAgent as g}from"@junobuild/ic-client/actor";var Re=async({canisterId:e,actor:t})=>{let r=await g(t),{stopCanister:o}=C.create({agent:r});await o(e)},Te=async({canisterId:e,actor:t})=>{let r=await g(t),{startCanister:o}=C.create({agent:r});await o(e)},Ne=async({actor:e,code:t})=>{let r=await g(e),{installCode:o}=C.create({agent:r});return o(t)},Ue=async({actor:e,canisterId:t})=>{let r=await g(e),{storedChunks:o}=C.create({agent:r});return o({canisterId:t})},G=async({actor:e,canisterId:t})=>{let r=await g(e),{clearChunkStore:o}=C.create({agent:r});return o({canisterId:t})},ve=async({actor:e,chunk:t})=>{let r=await g(e),{uploadChunk:o}=C.create({agent:r});return o(t)},Oe=async({actor:e,code:t})=>{let r=await g(e),{installChunkedCode:o}=C.create({agent:r});return o(t)},Ee=async({actor:e,canisterId:t})=>{let r=await g(e),{canisterStatus:o}=C.create({agent:r});return o(t)},K=async({canisterId:e,path:t,...r})=>{let o=await g(r),i=globalThis.console.warn;globalThis.console.warn=()=>null;let a=await Kt.request({canisterId:e instanceof Ie?e:Ie.from(e),agent:o,paths:[{kind:"metadata",key:t,path:t,decodeStrategy:"utf-8"}]});return globalThis.console.warn=i,a.get(t)},Le=async({actor:e,canisterId:t})=>{let r=await g(e),{listCanisterSnapshots:o}=C.create({agent:r});return o({canisterId:t})},ze=async({actor:e,...t})=>{let r=await g(e),{takeCanisterSnapshot:o}=C.create({agent:r});return o(t)};var je=(a=>(a[a.AssertingExistingCode=0]="AssertingExistingCode",a[a.StoppingCanister=1]="StoppingCanister",a[a.TakingSnapshot=2]="TakingSnapshot",a[a.UpgradingCode=3]="UpgradingCode",a[a.RestartingCanister=4]="RestartingCanister",a))(je||{});import{isNullish as qt,nonNullish as Je,uint8ArrayToHexString as Wt}from"@dfinity/utils";var Be=async({actor:e,canisterId:t,missionControlId:r,wasmModule:o,preClearChunks:i,...a})=>{i&&await G({actor:e,canisterId:t});let n=await Xt({wasmModule:o}),{uploadChunks:l,storedChunks:s,preClearChunks:u,postClearChunks:f}=await Zt({actor:e,wasmChunks:n,canisterId:t,missionControlId:r});u&&await G({actor:e,canisterId:t});let d=[];for await(let c of $t({uploadChunks:l,actor:e,canisterId:t,missionControlId:r}))d=[...d,...c];await Oe({actor:e,code:{...a,chunkHashesList:[...d,...s].sort(({orderId:c},{orderId:p})=>c-p).map(({chunkHash:c})=>c),targetCanisterId:t,storeCanisterId:r,wasmModuleHash:await H(o)}}),f&&await G({actor:e,canisterId:t})},Xt=async({wasmModule:e})=>{let t=new Blob([e]),r=[],o=1e6,i=0;for(let a=0;a<t.size;a+=o){let n=t.slice(a,a+o);r.push({chunk:n,orderId:i,sha256:await Ce(n)}),i++}return r},Zt=async({canisterId:e,missionControlId:t,actor:r,wasmChunks:o})=>{let i=await Ue({actor:r,canisterId:t??e}),a=i.map(({hash:s})=>({chunkHash:{hash:s},sha256:Wt(s)})),{storedChunks:n,uploadChunks:l}=o.reduce(({uploadChunks:s,storedChunks:u},{sha256:f,...d})=>{let c=a.find(({sha256:p})=>p===f);return{uploadChunks:[...s,...Je(c)?[]:[{sha256:f,...d}]],storedChunks:[...u,...Je(c)?[{...d,...c}]:[]]}},{uploadChunks:[],storedChunks:[]});return{uploadChunks:l,storedChunks:n,preClearChunks:i.length>0&&n.length===0,postClearChunks:qt(t)}};async function*$t({uploadChunks:e,limit:t=12,...r}){for(let o=0;o<e.length;o=o+t){let i=e.slice(o,o+t);yield await Promise.all(i.map(n=>Qt({uploadChunk:n,...r})))}}var Qt=async({actor:e,canisterId:t,missionControlId:r,uploadChunk:{chunk:o,...i}})=>({chunkHash:await ve({actor:e,chunk:{canisterId:r??t,chunk:new Uint8Array(await o.arrayBuffer())}}),...i});var He=async({actor:e,...t})=>{await Ne({actor:e,code:t})};var S=async({wasmModule:e,canisterId:t,actor:r,onProgress:o,takeSnapshot:i=!0,...a})=>{await O({fn:async()=>await or({wasmModule:e,canisterId:t,actor:r,...a}),onProgress:o,step:0}),await O({fn:async()=>await Re({canisterId:t,actor:r}),onProgress:o,step:1});try{await O({fn:async()=>i?await ar({canisterId:t,actor:r}):Promise.resolve(),onProgress:o,step:2}),await O({fn:async()=>await ir({wasmModule:e,canisterId:t,actor:r,...a}),onProgress:o,step:3})}finally{await O({fn:async()=>await Te({canisterId:t,actor:r}),onProgress:o,step:4})}},O=async({fn:e,step:t,onProgress:r})=>{r?.({step:t,state:"in_progress"});try{await e(),r?.({step:t,state:"success"})}catch(o){throw r?.({step:t,state:"error"}),o}},or=async({actor:e,canisterId:t,wasmModule:r,reset:o})=>{if(o===!0)return;let{module_hash:i}=await Ee({actor:e,canisterId:t}),a=er(i);if(tr(a))return;let n=await H(r),l=rr(a);if(n===l)throw new j},ir=async({wasmModule:e,canisterId:t,actor:r,...o})=>{await((new Blob([e]).size>2e6?"chunked":"single")==="chunked"?Be:He)({wasmModule:e,canisterId:t,actor:r,...o})},ar=async e=>{let t=await Le(e);await ze({...e,snapshotId:t?.[0]?.id})};import{IDL as I}from"@dfinity/candid";var Ve=e=>I.encode([I.Record({user:I.Principal})],[{user:e}]),F=e=>I.encode([I.Record({controllers:I.Vec(I.Principal)})],[{controllers:e.filter(([t,{scope:r}])=>"Admin"in r).map(([t,r])=>t)}]);var vo=async({missionControl:e,...t})=>{let r=await De({missionControl:e}),{missionControlId:o,...i}=e;if(!o)throw new Error("No mission control principal defined.");let a=Ve(r);await S({actor:i,canisterId:nr(o),arg:a,mode:M,...t})};import{assertNonNullish as cr,isNullish as mr}from"@dfinity/utils";import{JUNO_PACKAGE_MISSION_CONTROL_ID as pr}from"@junobuild/config";import{isNullish as sr}from"@dfinity/utils";import{JunoPackageSchema as lr}from"@junobuild/config";import*as q from"zod";var h=async({moduleId:e,...t})=>{let r=await K({...t,canisterId:e,path:"juno:package"});if(sr(r))return;if(typeof r!="string")throw new Error("Unexpected metadata type to parse public custom section juno:package");return(i=>q.string().transform((a,n)=>{try{return JSON.parse(a)}catch{return n.addIssue({code:"custom",message:"Invalid JSON"}),q.never}}).pipe(lr).parse(i))(r)},jo=async e=>(await h(e))?.version,Jo=async e=>(await h(e))?.dependencies;var qo=async({missionControl:{missionControlId:e,...t}})=>{cr(e,"A Mission Control ID must be provided to request its version.");let r=await h({moduleId:e,...t});if(mr(r))return await we({missionControl:{missionControlId:e,...t}});let{name:o,version:i}=r;if(o===pr)return i;throw new J};var Zo=async e=>{await S(e)};import{getDeprecatedOrbiterVersionActor as dr,getOrbiterActor as Ge}from"@junobuild/ic-client/actor";var Ke=async({orbiter:e})=>{let{version:t}=await dr(e);return t()},W=async({orbiter:e,certified:t})=>{let{list_controllers:r}=await Ge({...e,certified:t});return r()},Fe=async({orbiter:e})=>{let{memory_size:t}=await Ge(e);return t()};var ti=e=>W(e);var ii=e=>Fe(e);import{toPrincipal as ur}from"@junobuild/ic-client/utils";var pi=async({orbiter:e,reset:t=!1,...r})=>{let{orbiterId:o,...i}=e;if(!o)throw new Error("No orbiter principal defined.");let a=await W({orbiter:e,certified:t}),n=F(a);await S({actor:i,canisterId:ur(o),arg:n,mode:t?v:M,reset:t,...r})};import{assertNonNullish as fr,isNullish as gr}from"@dfinity/utils";import{JUNO_PACKAGE_ORBITER_ID as Cr}from"@junobuild/config";var yi=async({orbiter:{orbiterId:e,...t}})=>{fr(e,"An Orbiter ID must be provided to request its version.");let r=await h({moduleId:e,...t});if(gr(r))return await Ke({orbiter:{orbiterId:e,...t}});let{name:o,version:i}=r;if(o===Cr)return i;throw new B};import{toNullable as Pr}from"@dfinity/utils";import{getDeprecatedSatelliteActor as yr,getDeprecatedSatelliteNoScopeActor as Sr,getDeprecatedSatelliteVersionActor as hr,getSatelliteActor as m}from"@junobuild/ic-client/actor";var qe=async({config:e,satellite:t})=>{let{set_storage_config:r}=await m(t);return r(e)},We=async({config:e,satellite:t})=>{let{set_db_config:r}=await m(t);return r(e)},Xe=async({config:e,satellite:t})=>{let{set_auth_config:r}=await m(t);return r(e)},Ze=async({satellite:e})=>{let{get_storage_config:t}=await m(e);return t()},$e=async({satellite:e})=>{let{get_db_config:t}=await m(e);return t()},Qe=async({satellite:e})=>{let{get_auth_config:t}=await m(e);return t()},Ye=async({satellite:e})=>{let{get_config:t}=await m(e);return t()},et=async({satellite:e,type:t,filter:r})=>{let{list_rules:o}=await m(e);return o(t,r)},tt=async({type:e,collection:t,rule:r,satellite:o})=>{let{set_rule:i}=await m(o);return i(e,t,r)},rt=async({satellite:e})=>{let{version:t}=await hr(e);return t()},ot=async({satellite:e})=>{let{list_controllers:t}=await yr(e);return t()},X=async({satellite:e})=>{let{list_controllers:t}=await Sr(e);return t()},Z=async({satellite:e,certified:t})=>{let{list_controllers:r}=await m({...e,certified:t});return r()},it=async({satellite:e})=>{let{list_custom_domains:t}=await m(e);return t()},ne=async({satellite:e,domainName:t,boundaryNodesId:r})=>{let{set_custom_domain:o}=await m(e);await o(t,Pr(r))},at=async({satellite:e})=>{let{memory_size:t}=await m(e);return t()},nt=async({collection:e,satellite:t})=>{let{count_collection_docs:r}=await m(t);return r(e)},st=async({collection:e,satellite:t})=>{let{count_collection_assets:r}=await m(t);return r(e)},lt=async({collection:e,satellite:t})=>{let{del_docs:r}=await m(t);return r(e)},ct=async({collection:e,satellite:t})=>{let{del_assets:r}=await m(t);return r(e)},mt=async({args:e,satellite:t})=>{let{set_controllers:r}=await m(t);return r(e)};var wi=e=>st(e),Di=e=>ct(e);import{fromNullable as ee,isNullish as Ct,nonNullish as gt}from"@dfinity/utils";import{Principal as xr}from"@dfinity/principal";import{fromNullable as P,isNullish as pt,nonNullish as x,toNullable as L}from"@dfinity/utils";import{fromNullable as se,nonNullish as k,toNullable as E}from"@dfinity/utils";var le=e=>E(k(e)&&(k(E(e.heap))||k(E(e.stable)))?{heap:E(e.heap),stable:E(e.stable)}:void 0),ce=e=>{let t=se(e),r=se(t?.heap??[]),o=se(t?.stable??[]);return{...k(t)&&(k(r)||k(o))&&{maxMemorySize:{...k(r)&&{heap:r},...k(o)&&{stable:o}}}}};var dt=({headers:e,rewrites:t,redirects:r,iframe:o,rawAccess:i,maxMemorySize:a,version:n})=>{let l=(e??[]).map(({source:c,headers:p})=>[c,p]),s=(t??[]).map(({source:c,destination:p})=>[c,p]),u=(r??[]).map(({source:c,location:p,code:b})=>[c,{status_code:b,location:p}]);return{headers:l,rewrites:s,redirects:[u],iframe:[o==="same-origin"?{SameOrigin:null}:o==="allow-any"?{AllowAny:null}:{Deny:null}],raw_access:[i===!0?{Allow:null}:{Deny:null}],max_memory_size:le(a),version:L(n)}},$=({redirects:e,iframe:t,version:r,raw_access:o,max_memory_size:i,headers:a,rewrites:n})=>{let l=P(e)?.map(([_,{status_code:A,...z}])=>({...z,code:A,source:_})),s=P(o),u=x(s)?"Allow"in s:void 0,f=P(t),d=x(f)?"SameOrigin"in f?"same-origin":"AllowAny"in f?"allow-any":"deny":void 0,c=ce(i),p=a.map(([_,A])=>({source:_,headers:A})),b=n.map(([_,A])=>({source:_,destination:A}));return{...p.length>0&&{headers:p},...b.length>0&&{rewrites:b},...x(l)&&{redirects:l},...x(d)&&{iframe:d},version:P(r),...x(u)&&{rawAccess:u},...c}},ut=({maxMemorySize:e,version:t})=>({max_memory_size:le(e),version:L(t)}),Q=({version:e,max_memory_size:t})=>({...ce(t),version:P(e)}),ft=({internetIdentity:e,rules:t,version:r})=>({internet_identity:pt(e)?[]:[{derivation_origin:L(e?.derivationOrigin),external_alternative_origins:L(e?.externalAlternativeOrigins)}],rules:pt(t)?[]:[{allowed_callers:t.allowedCallers.map(o=>xr.fromText(o))}],version:L(r)}),Y=({version:e,internet_identity:t,rules:r})=>{let o=P(t),i=P(o?.derivation_origin??[]),a=P(o?.external_alternative_origins??[]),n=P(r);return{...x(o)&&{internetIdentity:{...x(i)&&{derivationOrigin:i},...x(a)&&{externalAlternativeOrigins:a}}},...x(n)&&{rules:{allowedCallers:n.allowed_callers.map(l=>l.toText())}},version:P(e)}};var Ei=async({config:e,satellite:t})=>{let r=await qe({satellite:t,config:dt(e)});return $(r)},Li=async({config:e,...t})=>{let r=await We({config:ut(e),...t});return Q(r)},zi=async({config:e,...t})=>{let r=await Xe({config:ft(e),...t});return Y(r)},ji=async({satellite:e})=>{let t=await Qe({satellite:e}),r=ee(t);if(!Ct(r))return Y(r)},Ji=async({satellite:e})=>{let t=await Ze({satellite:e});return $(t)},Bi=async({satellite:e})=>{let t=await $e({satellite:e}),r=ee(t);if(!Ct(r))return Q(r)},Hi=async({satellite:e})=>{let{storage:t,db:r,authentication:o}=await Ye({satellite:e}),i=ee(r),a=ee(o);return{storage:$(t),...gt(i)&&{datastore:Q(i)},...gt(a)&&{auth:Y(a)}}};var Ki=({deprecatedNoScope:e,...t})=>(e===!0?X:Z)(t),Fi=e=>mt(e);var Xi=e=>nt(e),Zi=e=>lt(e);import{fromNullable as Pt,nonNullish as _r}from"@dfinity/utils";var ea=async({satellite:e})=>(await it({satellite:e})).map(([r,o])=>{let i=Pt(o.version);return{domain:r,bn_id:Pt(o.bn_id),created_at:o.created_at,updated_at:o.updated_at,..._r(i)&&{version:i}}}),ta=({satellite:e,domains:t})=>Promise.all(t.map(({domain:r,bn_id:o})=>ne({satellite:e,domainName:r,boundaryNodesId:o}))),ra=({satellite:e,domain:t})=>ne({satellite:e,domainName:t.domain,boundaryNodesId:t.bn_id});var aa=e=>at(e);import{fromNullable as R,isNullish as Ar,nonNullish as y,toNullable as T}from"@dfinity/utils";var yt={Db:null},St={Storage:null},ht={Public:null},xt={Private:null},_t={Managed:null},At={Controllers:null},me={Heap:null},wt={Stable:null},Dt=600000000n;var pe=e=>e==="storage"?St:yt,Mt=e=>({matcher:Ar(e)?T():T({include_system:e.include_system})}),It=({read:e,write:t,memory:r,maxSize:o,maxChangesPerUser:i,maxCapacity:a,version:n,mutablePermissions:l,maxTokens:s})=>({read:bt(e),write:bt(t),memory:y(r)?[wr(r)]:[],version:T(n),max_size:T(y(o)&&o>0n?o:void 0),max_capacity:T(y(a)&&a>0?a:void 0),max_changes_per_user:T(y(i)&&i>0?i:void 0),mutable_permissions:T(l??!0),rate_config:y(s)&&s>0n?[{max_tokens:s,time_per_token_ns:Dt}]:[]}),de=([e,t])=>{let{read:r,write:o,updated_at:i,created_at:a,max_size:n,max_changes_per_user:l,max_capacity:s,memory:u,mutable_permissions:f,version:d,rate_config:c}=t,p=n?.[0]??0n>0n?R(n):void 0,b=l?.[0]??!1?R(l):void 0,_=s?.[0]??!1?R(s):void 0,A=R(d),z=c?.[0]?.max_tokens??0n>0n?R(c)?.max_tokens:void 0;return{collection:e,read:kt(r),write:kt(o),memory:Dr(R(u)??me),updatedAt:i,createdAt:a,...y(A)&&{version:A},...y(b)&&{maxChangesPerUser:b},...y(p)&&{maxSize:p},...y(_)&&{maxCapacity:_},mutablePermissions:R(f)??!0,...y(z)&&{maxTokens:z}}},kt=e=>"Public"in e?"public":"Private"in e?"private":"Managed"in e?"managed":"controllers",bt=e=>{switch(e){case"public":return ht;case"private":return xt;case"managed":return _t;default:return At}},wr=e=>{switch(e.toLowerCase()){case"heap":return me;default:return wt}},Dr=e=>"Heap"in e?"heap":"stable";var ua=async({type:e,satellite:t,filter:r})=>{let{items:o,...i}=await et({satellite:t,type:pe(e),filter:Mt(r)});return{...i,items:o.map(a=>de(a))}},fa=async({rule:{collection:e,...t},type:r,satellite:o})=>{let i=await tt({type:pe(r),rule:It(t),satellite:o,collection:e});return de([e,i])};import{IDL as te}from"@dfinity/candid";import{isNullish as kr}from"@dfinity/utils";import{toPrincipal as Rt}from"@junobuild/ic-client/utils";var Aa=async({satellite:e,deprecated:t,deprecatedNoScope:r,reset:o=!1,...i})=>{let{satelliteId:a,...n}=e;if(kr(a))throw new Error("No satellite principal defined.");if(t){let f=await ot({satellite:e}),d=te.encode([te.Record({controllers:te.Vec(te.Principal)})],[{controllers:f}]);await S({actor:n,canisterId:Rt(a),arg:new Uint8Array(d),mode:o?v:M,reset:o,...i});return}let s=await(r?X:Z)({satellite:e,certified:o}),u=F(s);await S({actor:n,canisterId:Rt(a),arg:u,mode:o?v:M,reset:o,...i})};import{assertNonNullish as Tt,isNullish as Nt,nonNullish as ue}from"@dfinity/utils";import{JUNO_PACKAGE_SATELLITE_ID as re}from"@junobuild/config";var Na=async({satellite:{satelliteId:e,...t}})=>{Tt(e,"A Satellite ID must be provided to request its version.");let r=await h({moduleId:e,...t});if(Nt(r))return await rt({satellite:{satelliteId:e,...t}});let{name:o,version:i,dependencies:a}=r;if(o===re)return i;let n=U({dependencies:a,dependencyId:re});if(ue(n)){let[l,s]=n;return s}throw new N},Ua=async({satellite:{satelliteId:e,...t}})=>{Tt(e,"A Satellite ID must be provided to request its version.");let r=await h({moduleId:e,...t});if(Nt(r))return await br({satellite:{satelliteId:e,...t}});let{name:o,dependencies:i}=r;if(o===re)return"stock";let a=U({dependencies:i,dependencyId:re});if(ue(a))return"extended";throw new N},br=async({satellite:{satelliteId:e,...t}})=>{let r=await K({...t,canisterId:e,path:"juno:build"});return ue(r)&&["stock","extended"].includes(r)?r:void 0};export{Hr as BuildTypeSchema,w as MetadataVersionSchema,ie as MetadataVersionsSchema,J as MissionControlVersionError,B as OrbiterVersionError,zt as ReleaseMetadataSchema,Gr as ReleasesMetadataSchema,jt as ReleasesSchema,N as SatelliteMissingDependencyError,je as UpgradeCodeProgressStep,j as UpgradeCodeUnchangedError,Ce as blobSha256,vr as checkUpgradeVersion,wi as countAssets,Xi as countDocs,Di as deleteAssets,Zi as deleteDocs,jr as extractBuildType,U as findJunoPackageDependency,ji as getAuthConfig,Hi as getConfig,Bi as getDatastoreConfig,h as getJunoPackage,Jo as getJunoPackageDependencies,jo as getJunoPackageVersion,Ji as getStorageConfig,ea as listCustomDomains,to as listMissionControlControllers,ti as listOrbiterControllers,ua as listRules,Ki as listSatelliteControllers,qo as missionControlVersion,ii as orbiterMemorySize,yi as orbiterVersion,Jr as readCustomSectionJunoPackage,Ua as satelliteBuildType,aa as satelliteMemorySize,Na as satelliteVersion,zi as setAuthConfig,ra as setCustomDomain,ta as setCustomDomains,Li as setDatastoreConfig,eo as setMissionControlController,fa as setRule,Fi as setSatelliteControllers,Yr as setSatellitesController,Ei as setStorageConfig,H as uint8ArraySha256,vo as upgradeMissionControl,Zo as upgradeModule,pi as upgradeOrbiter,Aa as upgradeSatellite};
1
+ var j=class extends Error{constructor(){super("The Wasm code for the upgrade is identical to the code currently installed. No upgrade is necessary.")}};import{JUNO_PACKAGE_MISSION_CONTROL_ID as Ut,JUNO_PACKAGE_ORBITER_ID as Ot,JUNO_PACKAGE_SATELLITE_ID as Et}from"@junobuild/config";var v=class extends Error{constructor(){super(`Invalid dependency tree: required module ${Et} is missing.`)}},J=class extends Error{constructor(){super(`Invalid package: the provided module name is not ${Ut}.`)}},B=class extends Error{constructor(){super(`Invalid package: the provided module name is not ${Ot}.`)}};var ge=e=>crypto.subtle.digest("SHA-256",e),Ce=e=>Array.from(new Uint8Array(e)).map(r=>r.toString(16).padStart(2,"0")).join(""),Pe=async e=>{let t=await ge(await e.arrayBuffer());return Ce(t)},H=async e=>{let t=await ge(e);return Ce(t)};var U=({dependencyId:e,dependencies:t})=>Object.entries(t??{}).find(([r,o])=>r===e);import{major as ye,minor as Se,patch as he}from"semver";var Ur=({currentVersion:e,selectedVersion:t})=>{let r=ye(e),o=ye(t),i=Se(e),a=Se(t),n=he(e),l=he(t);return r<o-1||i<a-1||n<l-1?{canUpgrade:!1}:{canUpgrade:!0}};import{isNullish as _e,nonNullish as ie}from"@dfinity/utils";import{JUNO_PACKAGE_SATELLITE_ID as xe,JunoPackageSchema as Lt}from"@junobuild/config";var jr=async({junoPackage:e,wasm:t})=>{if(_e(e))return await zt({wasm:t});let{name:r,dependencies:o}=e;if(r===xe)return"stock";let i=U({dependencies:o,dependencyId:xe});return ie(i)?"extended":void 0},zt=async({wasm:e})=>{let t=await we({wasm:e,sectionName:"icp:public juno:build"});return ie(t)&&["stock","extended"].includes(t)?t:void 0},Jr=async({wasm:e})=>{let t=await we({wasm:e,sectionName:"icp:public juno:package"});if(_e(t))return;let r=JSON.parse(t),{success:o,data:i}=Lt.safeParse(r);return o?i:void 0},we=async({sectionName:e,wasm:t})=>{let r=await WebAssembly.compile(t),o=WebAssembly.Module.customSections(r,e),[i]=o;return ie(i)?new TextDecoder().decode(i):void 0};import*as Ae from"zod";var Hr=Ae.enum(["stock","extended"]);import*as k from"zod";var D=k.string().refine(e=>/^\d+\.\d+\.\d+$/.test(e),{message:"Version does not match x.y.z format"}),jt=k.strictObject({tag:D,console:D,observatory:D.optional(),mission_control:D,satellite:D,orbiter:D.optional(),sputnik:D.optional()}),Jt=k.array(jt).min(1).refine(e=>new Set(e.map(({tag:t})=>t)).size===e.length,{message:"A release tag appears multiple times but must be unique"}),ae=k.array(D).min(1),Gr=k.strictObject({mission_controls:ae,satellites:ae,orbiters:ae,releases:Jt});import{getDeprecatedMissionControlVersionActor as Bt,getMissionControlActor as V}from"@junobuild/ic-client/actor";var De=async({missionControl:e})=>{let{version:t}=await Bt(e);return t()},ke=async({missionControl:e})=>{let{get_user:t}=await V(e);return t()},be=async({missionControl:e})=>{let{list_mission_control_controllers:t}=await V(e);return t()},Me=async({missionControl:e,satelliteIds:t,controllerIds:r,controller:o})=>{let{set_satellites_controllers:i}=await V(e);return i(t,r,o)},Ie=async({missionControl:e,controllerIds:t,controller:r})=>{let{set_mission_control_controllers:o}=await V(e);return o(t,r)};import{Principal as Ht}from"@dfinity/principal";import{nonNullish as Vt,toNullable as Gt}from"@dfinity/utils";var ne=({controllerId:e,profile:t})=>({controllerIds:[Ht.fromText(e)],controller:Kt(t)}),Kt=e=>({metadata:Vt(e)&&e!==""?[["profile",e]]:[],expires_at:Gt(void 0),scope:{Admin:null}});var Yr=({controllerId:e,profile:t,...r})=>Me({...r,...ne({controllerId:e,profile:t})}),eo=({controllerId:e,profile:t,...r})=>Ie({...r,...ne({controllerId:e,profile:t})}),to=e=>be(e);import{toPrincipal as sr}from"@junobuild/ic-client/utils";var O={reinstall:null},M={upgrade:[{skip_pre_upgrade:[!1],wasm_memory_persistence:[{replace:null}]}]};import{fromNullable as tr,isNullish as rr,uint8ArrayToHexString as or}from"@dfinity/utils";import{CanisterStatus as Ft}from"@dfinity/agent";import{ICManagementCanister as S}from"@dfinity/ic-management";import{Principal as Te}from"@dfinity/principal";import{useOrInitAgent as y}from"@junobuild/ic-client/actor";var Re=async({canisterId:e,actor:t})=>{let r=await y(t),{stopCanister:o}=S.create({agent:r});await o(e)},Ne=async({canisterId:e,actor:t})=>{let r=await y(t),{startCanister:o}=S.create({agent:r});await o(e)},ve=async({actor:e,code:t})=>{let r=await y(e),{installCode:o}=S.create({agent:r});return o(t)},Ue=async({actor:e,canisterId:t})=>{let r=await y(e),{storedChunks:o}=S.create({agent:r});return o({canisterId:t})},G=async({actor:e,canisterId:t})=>{let r=await y(e),{clearChunkStore:o}=S.create({agent:r});return o({canisterId:t})},Oe=async({actor:e,chunk:t})=>{let r=await y(e),{uploadChunk:o}=S.create({agent:r});return o(t)},Ee=async({actor:e,code:t})=>{let r=await y(e),{installChunkedCode:o}=S.create({agent:r});return o(t)},Le=async({actor:e,canisterId:t})=>{let r=await y(e),{canisterStatus:o}=S.create({agent:r});return o(t)},K=async({canisterId:e,path:t,...r})=>{let o=await y(r),i=globalThis.console.warn;globalThis.console.warn=()=>null;let a=await Ft.request({canisterId:e instanceof Te?e:Te.from(e),agent:o,paths:[{kind:"metadata",key:t,path:t,decodeStrategy:"utf-8"}]});return globalThis.console.warn=i,a.get(t)},ze=async({actor:e,canisterId:t})=>{let r=await y(e),{listCanisterSnapshots:o}=S.create({agent:r});return o({canisterId:t})},je=async({actor:e,...t})=>{let r=await y(e),{takeCanisterSnapshot:o}=S.create({agent:r});return o(t)};var Je=(a=>(a[a.AssertingExistingCode=0]="AssertingExistingCode",a[a.StoppingCanister=1]="StoppingCanister",a[a.TakingSnapshot=2]="TakingSnapshot",a[a.UpgradingCode=3]="UpgradingCode",a[a.RestartingCanister=4]="RestartingCanister",a))(Je||{});import{isNullish as Wt,nonNullish as Be,uint8ArrayToHexString as Xt}from"@dfinity/utils";var He=async({actor:e,canisterId:t,missionControlId:r,wasmModule:o,preClearChunks:i,...a})=>{i&&await G({actor:e,canisterId:t});let n=await Zt({wasmModule:o}),{uploadChunks:l,storedChunks:s,preClearChunks:m,postClearChunks:f}=await $t({actor:e,wasmChunks:n,canisterId:t,missionControlId:r});m&&await G({actor:e,canisterId:t});let p=[];for await(let c of Qt({uploadChunks:l,actor:e,canisterId:t,missionControlId:r}))p=[...p,...c];await Ee({actor:e,code:{...a,chunkHashesList:[...p,...s].sort(({orderId:c},{orderId:d})=>c-d).map(({chunkHash:c})=>c),targetCanisterId:t,storeCanisterId:r,wasmModuleHash:await H(o)}}),f&&await G({actor:e,canisterId:t})},Zt=async({wasmModule:e})=>{let t=new Blob([e]),r=[],o=1e6,i=0;for(let a=0;a<t.size;a+=o){let n=t.slice(a,a+o);r.push({chunk:n,orderId:i,sha256:await Pe(n)}),i++}return r},$t=async({canisterId:e,missionControlId:t,actor:r,wasmChunks:o})=>{let i=await Ue({actor:r,canisterId:t??e}),a=i.map(({hash:s})=>({chunkHash:{hash:s},sha256:Xt(s)})),{storedChunks:n,uploadChunks:l}=o.reduce(({uploadChunks:s,storedChunks:m},{sha256:f,...p})=>{let c=a.find(({sha256:d})=>d===f);return{uploadChunks:[...s,...Be(c)?[]:[{sha256:f,...p}]],storedChunks:[...m,...Be(c)?[{...p,...c}]:[]]}},{uploadChunks:[],storedChunks:[]});return{uploadChunks:l,storedChunks:n,preClearChunks:i.length>0&&n.length===0,postClearChunks:Wt(t)}};async function*Qt({uploadChunks:e,limit:t=12,...r}){for(let o=0;o<e.length;o=o+t){let i=e.slice(o,o+t);yield await Promise.all(i.map(n=>Yt({uploadChunk:n,...r})))}}var Yt=async({actor:e,canisterId:t,missionControlId:r,uploadChunk:{chunk:o,...i}})=>({chunkHash:await Oe({actor:e,chunk:{canisterId:r??t,chunk:new Uint8Array(await o.arrayBuffer())}}),...i});var Ve=async({actor:e,...t})=>{await ve({actor:e,code:t})};var x=async({wasmModule:e,canisterId:t,actor:r,onProgress:o,takeSnapshot:i=!0,...a})=>{await E({fn:async()=>await ir({wasmModule:e,canisterId:t,actor:r,...a}),onProgress:o,step:0}),await E({fn:async()=>await Re({canisterId:t,actor:r}),onProgress:o,step:1});try{await E({fn:async()=>i?await nr({canisterId:t,actor:r}):Promise.resolve(),onProgress:o,step:2}),await E({fn:async()=>await ar({wasmModule:e,canisterId:t,actor:r,...a}),onProgress:o,step:3})}finally{await E({fn:async()=>await Ne({canisterId:t,actor:r}),onProgress:o,step:4})}},E=async({fn:e,step:t,onProgress:r})=>{r?.({step:t,state:"in_progress"});try{await e(),r?.({step:t,state:"success"})}catch(o){throw r?.({step:t,state:"error"}),o}},ir=async({actor:e,canisterId:t,wasmModule:r,reset:o})=>{if(o===!0)return;let{module_hash:i}=await Le({actor:e,canisterId:t}),a=tr(i);if(rr(a))return;let n=await H(r),l=or(a);if(n===l)throw new j},ar=async({wasmModule:e,canisterId:t,actor:r,...o})=>{await((new Blob([e]).size>2e6?"chunked":"single")==="chunked"?He:Ve)({wasmModule:e,canisterId:t,actor:r,...o})},nr=async e=>{let t=await ze(e);await je({...e,snapshotId:t?.[0]?.id})};import{IDL as I}from"@dfinity/candid";var Ge=e=>I.encode([I.Record({user:I.Principal})],[{user:e}]),F=e=>I.encode([I.Record({controllers:I.Vec(I.Principal)})],[{controllers:e.filter(([t,{scope:r}])=>"Admin"in r).map(([t,r])=>t)}]);var Uo=async({missionControl:e,...t})=>{let r=await ke({missionControl:e}),{missionControlId:o,...i}=e;if(!o)throw new Error("No mission control principal defined.");let a=Ge(r);await x({actor:i,canisterId:sr(o),arg:a,mode:M,...t})};import{assertNonNullish as mr,isNullish as pr}from"@dfinity/utils";import{JUNO_PACKAGE_MISSION_CONTROL_ID as dr}from"@junobuild/config";import{isNullish as lr}from"@dfinity/utils";import{JunoPackageSchema as cr}from"@junobuild/config";import*as q from"zod";var _=async({moduleId:e,...t})=>{let r=await K({...t,canisterId:e,path:"juno:package"});if(lr(r))return;if(typeof r!="string")throw new Error("Unexpected metadata type to parse public custom section juno:package");return(i=>q.string().transform((a,n)=>{try{return JSON.parse(a)}catch{return n.addIssue({code:"custom",message:"Invalid JSON"}),q.never}}).pipe(cr).parse(i))(r)},jo=async e=>(await _(e))?.version,Jo=async e=>(await _(e))?.dependencies;var qo=async({missionControl:{missionControlId:e,...t}})=>{mr(e,"A Mission Control ID must be provided to request its version.");let r=await _({moduleId:e,...t});if(pr(r))return await De({missionControl:{missionControlId:e,...t}});let{name:o,version:i}=r;if(o===dr)return i;throw new J};var Zo=async e=>{await x(e)};import{getDeprecatedOrbiterVersionActor as ur,getOrbiterActor as Ke}from"@junobuild/ic-client/actor";var Fe=async({orbiter:e})=>{let{version:t}=await ur(e);return t()},W=async({orbiter:e,certified:t})=>{let{list_controllers:r}=await Ke({...e,certified:t});return r()},qe=async({orbiter:e})=>{let{memory_size:t}=await Ke(e);return t()};var ti=e=>W(e);var ii=e=>qe(e);import{toPrincipal as fr}from"@junobuild/ic-client/utils";var pi=async({orbiter:e,reset:t=!1,...r})=>{let{orbiterId:o,...i}=e;if(!o)throw new Error("No orbiter principal defined.");let a=await W({orbiter:e,certified:t}),n=F(a);await x({actor:i,canisterId:fr(o),arg:n,mode:t?O:M,reset:t,...r})};import{assertNonNullish as gr,isNullish as Cr}from"@dfinity/utils";import{JUNO_PACKAGE_ORBITER_ID as Pr}from"@junobuild/config";var yi=async({orbiter:{orbiterId:e,...t}})=>{gr(e,"An Orbiter ID must be provided to request its version.");let r=await _({moduleId:e,...t});if(Cr(r))return await Fe({orbiter:{orbiterId:e,...t}});let{name:o,version:i}=r;if(o===Pr)return i;throw new B};import{toNullable as yr}from"@dfinity/utils";import{getDeprecatedSatelliteActor as Sr,getDeprecatedSatelliteNoScopeActor as hr,getDeprecatedSatelliteVersionActor as xr,getSatelliteActor as u}from"@junobuild/ic-client/actor";var We=async({config:e,satellite:t})=>{let{set_storage_config:r}=await u(t);return r(e)},Xe=async({config:e,satellite:t})=>{let{set_db_config:r}=await u(t);return r(e)},Ze=async({config:e,satellite:t})=>{let{set_auth_config:r}=await u(t);return r(e)},$e=async({satellite:e})=>{let{get_storage_config:t}=await u(e);return t()},Qe=async({satellite:e})=>{let{get_db_config:t}=await u(e);return t()},Ye=async({satellite:e})=>{let{get_auth_config:t}=await u(e);return t()},et=async({satellite:e})=>{let{get_config:t}=await u(e);return t()},tt=async({satellite:e,type:t,filter:r})=>{let{list_rules:o}=await u(e);return o(t,r)},rt=async({type:e,collection:t,rule:r,satellite:o})=>{let{set_rule:i}=await u(o);return i(e,t,r)},ot=async({satellite:e})=>{let{version:t}=await xr(e);return t()},it=async({satellite:e})=>{let{list_controllers:t}=await Sr(e);return t()},X=async({satellite:e})=>{let{list_controllers:t}=await hr(e);return t()},Z=async({satellite:e,certified:t})=>{let{list_controllers:r}=await u({...e,certified:t});return r()},at=async({satellite:e})=>{let{list_custom_domains:t}=await u(e);return t()},se=async({satellite:e,domainName:t,boundaryNodesId:r})=>{let{set_custom_domain:o}=await u(e);await o(t,yr(r))},nt=async({satellite:e})=>{let{memory_size:t}=await u(e);return t()},st=async({collection:e,satellite:t})=>{let{count_collection_docs:r}=await u(t);return r(e)},lt=async({collection:e,satellite:t})=>{let{count_collection_assets:r}=await u(t);return r(e)},ct=async({collection:e,satellite:t})=>{let{del_docs:r}=await u(t);return r(e)},mt=async({collection:e,satellite:t})=>{let{del_assets:r}=await u(t);return r(e)},pt=async({args:e,satellite:t})=>{let{set_controllers:r}=await u(t);return r(e)};var Ai=e=>lt(e),Di=e=>mt(e);import{fromNullable as te,isNullish as Pt,nonNullish as Ct}from"@dfinity/utils";import{Principal as dt}from"@dfinity/principal";import{fromNullable as g,isNullish as $,nonNullish as C,toNullable as N}from"@dfinity/utils";import{fromNullable as le,nonNullish as b,toNullable as L}from"@dfinity/utils";var ce=e=>L(b(e)&&(b(L(e.heap))||b(L(e.stable)))?{heap:L(e.heap),stable:L(e.stable)}:void 0),me=e=>{let t=le(e),r=le(t?.heap??[]),o=le(t?.stable??[]);return{...b(t)&&(b(r)||b(o))&&{maxMemorySize:{...b(r)&&{heap:r},...b(o)&&{stable:o}}}}};var ut=({headers:e,rewrites:t,redirects:r,iframe:o,rawAccess:i,maxMemorySize:a,version:n})=>{let l=(e??[]).map(({source:c,headers:d})=>[c,d]),s=(t??[]).map(({source:c,destination:d})=>[c,d]),m=(r??[]).map(({source:c,location:d,code:P})=>[c,{status_code:P,location:d}]);return{headers:l,rewrites:s,redirects:[m],iframe:[o==="same-origin"?{SameOrigin:null}:o==="allow-any"?{AllowAny:null}:{Deny:null}],raw_access:[i===!0?{Allow:null}:{Deny:null}],max_memory_size:ce(a),version:N(n)}},Q=({redirects:e,iframe:t,version:r,raw_access:o,max_memory_size:i,headers:a,rewrites:n})=>{let l=g(e)?.map(([w,{status_code:A,...z}])=>({...z,code:A,source:w})),s=g(o),m=C(s)?"Allow"in s:void 0,f=g(t),p=C(f)?"SameOrigin"in f?"same-origin":"AllowAny"in f?"allow-any":"deny":void 0,c=me(i),d=a.map(([w,A])=>({source:w,headers:A})),P=n.map(([w,A])=>({source:w,destination:A}));return{...d.length>0&&{headers:d},...P.length>0&&{rewrites:P},...C(l)&&{redirects:l},...C(p)&&{iframe:p},version:g(r),...C(m)&&{rawAccess:m},...c}},ft=({maxMemorySize:e,version:t})=>({max_memory_size:ce(e),version:N(t)}),Y=({version:e,max_memory_size:t})=>({...me(t),version:g(e)}),gt=({internetIdentity:e,google:t,rules:r,version:o})=>({internet_identity:$(e)?[]:[{derivation_origin:N(e?.derivationOrigin),external_alternative_origins:N(e?.externalAlternativeOrigins)}],openid:$(t)?[]:[{providers:[[{Google:null},{client_id:t.clientId}]],observatory_id:[],delegation:$(t.delegation)?[]:[{targets:t.delegation.targets===null?[]:[(t.delegation.targets??[])?.map(i=>dt.fromText(i))],max_time_to_live:N(t.delegation.maxTimeToLive)}]}],rules:$(r)?[]:[{allowed_callers:r.allowedCallers.map(i=>dt.fromText(i))}],version:N(o)}),ee=({version:e,internet_identity:t,openid:r,rules:o})=>{let i=g(t),a=g(i?.derivation_origin??[]),n=g(i?.external_alternative_origins??[]),l=g(r),s=l?.providers.find(([P])=>"Google"in P)?.[1],m=g(l?.delegation??[]),f=C(m)&&C(m.targets)&&m.targets.length===0?null:(g(m?.targets??[])??[]).length===0?void 0:(g(m?.targets??[])??[]).map(P=>P.toText()),p=g(m?.max_time_to_live??[]),c=f!==void 0||C(p),d=g(o);return{...C(i)&&{internetIdentity:{...C(a)&&{derivationOrigin:a},...C(n)&&{externalAlternativeOrigins:n}}},...C(s)&&{google:{clientId:s.client_id,...c&&{delegation:{...f!==void 0&&{targets:f},...C(p)&&{maxTimeToLive:p}}}}},...C(d)&&{rules:{allowedCallers:d.allowed_callers.map(P=>P.toText())}},version:g(e)}};var Ei=async({config:e,satellite:t})=>{let r=await We({satellite:t,config:ut(e)});return Q(r)},Li=async({config:e,...t})=>{let r=await Xe({config:ft(e),...t});return Y(r)},zi=async({config:e,...t})=>{let r=await Ze({config:gt(e),...t});return ee(r)},ji=async({satellite:e})=>{let t=await Ye({satellite:e}),r=te(t);if(!Pt(r))return ee(r)},Ji=async({satellite:e})=>{let t=await $e({satellite:e});return Q(t)},Bi=async({satellite:e})=>{let t=await Qe({satellite:e}),r=te(t);if(!Pt(r))return Y(r)},Hi=async({satellite:e})=>{let{storage:t,db:r,authentication:o}=await et({satellite:e}),i=te(r),a=te(o);return{storage:Q(t),...Ct(i)&&{datastore:Y(i)},...Ct(a)&&{auth:ee(a)}}};var Ki=({deprecatedNoScope:e,...t})=>(e===!0?X:Z)(t),Fi=e=>pt(e);var Xi=e=>st(e),Zi=e=>ct(e);import{fromNullable as yt,nonNullish as _r}from"@dfinity/utils";var ea=async({satellite:e})=>(await at({satellite:e})).map(([r,o])=>{let i=yt(o.version);return{domain:r,bn_id:yt(o.bn_id),created_at:o.created_at,updated_at:o.updated_at,..._r(i)&&{version:i}}}),ta=({satellite:e,domains:t})=>Promise.all(t.map(({domain:r,bn_id:o})=>se({satellite:e,domainName:r,boundaryNodesId:o}))),ra=({satellite:e,domain:t})=>se({satellite:e,domainName:t.domain,boundaryNodesId:t.bn_id});var aa=e=>nt(e);import{fromNullable as T,isNullish as wr,nonNullish as h,toNullable as R}from"@dfinity/utils";var St={Db:null},ht={Storage:null},xt={Public:null},_t={Private:null},wt={Managed:null},At={Controllers:null},pe={Heap:null},Dt={Stable:null},kt=600000000n;var de=e=>e==="storage"?ht:St,It=e=>({matcher:wr(e)?R():R({include_system:e.include_system})}),Tt=({read:e,write:t,memory:r,maxSize:o,maxChangesPerUser:i,maxCapacity:a,version:n,mutablePermissions:l,maxTokens:s})=>({read:Mt(e),write:Mt(t),memory:h(r)?[Ar(r)]:[],version:R(n),max_size:R(h(o)&&o>0n?o:void 0),max_capacity:R(h(a)&&a>0?a:void 0),max_changes_per_user:R(h(i)&&i>0?i:void 0),mutable_permissions:R(l??!0),rate_config:h(s)&&s>0n?[{max_tokens:s,time_per_token_ns:kt}]:[]}),ue=([e,t])=>{let{read:r,write:o,updated_at:i,created_at:a,max_size:n,max_changes_per_user:l,max_capacity:s,memory:m,mutable_permissions:f,version:p,rate_config:c}=t,d=n?.[0]??0n>0n?T(n):void 0,P=l?.[0]??!1?T(l):void 0,w=s?.[0]??!1?T(s):void 0,A=T(p),z=c?.[0]?.max_tokens??0n>0n?T(c)?.max_tokens:void 0;return{collection:e,read:bt(r),write:bt(o),memory:Dr(T(m)??pe),updatedAt:i,createdAt:a,...h(A)&&{version:A},...h(P)&&{maxChangesPerUser:P},...h(d)&&{maxSize:d},...h(w)&&{maxCapacity:w},mutablePermissions:T(f)??!0,...h(z)&&{maxTokens:z}}},bt=e=>"Public"in e?"public":"Private"in e?"private":"Managed"in e?"managed":"controllers",Mt=e=>{switch(e){case"public":return xt;case"private":return _t;case"managed":return wt;default:return At}},Ar=e=>{switch(e.toLowerCase()){case"heap":return pe;default:return Dt}},Dr=e=>"Heap"in e?"heap":"stable";var ua=async({type:e,satellite:t,filter:r})=>{let{items:o,...i}=await tt({satellite:t,type:de(e),filter:It(r)});return{...i,items:o.map(a=>ue(a))}},fa=async({rule:{collection:e,...t},type:r,satellite:o})=>{let i=await rt({type:de(r),rule:Tt(t),satellite:o,collection:e});return ue([e,i])};import{IDL as re}from"@dfinity/candid";import{isNullish as kr}from"@dfinity/utils";import{toPrincipal as Rt}from"@junobuild/ic-client/utils";var wa=async({satellite:e,deprecated:t,deprecatedNoScope:r,reset:o=!1,...i})=>{let{satelliteId:a,...n}=e;if(kr(a))throw new Error("No satellite principal defined.");if(t){let f=await it({satellite:e}),p=re.encode([re.Record({controllers:re.Vec(re.Principal)})],[{controllers:f}]);await x({actor:n,canisterId:Rt(a),arg:new Uint8Array(p),mode:o?O:M,reset:o,...i});return}let s=await(r?X:Z)({satellite:e,certified:o}),m=F(s);await x({actor:n,canisterId:Rt(a),arg:m,mode:o?O:M,reset:o,...i})};import{assertNonNullish as Nt,isNullish as vt,nonNullish as fe}from"@dfinity/utils";import{JUNO_PACKAGE_SATELLITE_ID as oe}from"@junobuild/config";var Na=async({satellite:{satelliteId:e,...t}})=>{Nt(e,"A Satellite ID must be provided to request its version.");let r=await _({moduleId:e,...t});if(vt(r))return await ot({satellite:{satelliteId:e,...t}});let{name:o,version:i,dependencies:a}=r;if(o===oe)return i;let n=U({dependencies:a,dependencyId:oe});if(fe(n)){let[l,s]=n;return s}throw new v},va=async({satellite:{satelliteId:e,...t}})=>{Nt(e,"A Satellite ID must be provided to request its version.");let r=await _({moduleId:e,...t});if(vt(r))return await br({satellite:{satelliteId:e,...t}});let{name:o,dependencies:i}=r;if(o===oe)return"stock";let a=U({dependencies:i,dependencyId:oe});if(fe(a))return"extended";throw new v},br=async({satellite:{satelliteId:e,...t}})=>{let r=await K({...t,canisterId:e,path:"juno:build"});return fe(r)&&["stock","extended"].includes(r)?r:void 0};export{Hr as BuildTypeSchema,D as MetadataVersionSchema,ae as MetadataVersionsSchema,J as MissionControlVersionError,B as OrbiterVersionError,jt as ReleaseMetadataSchema,Gr as ReleasesMetadataSchema,Jt as ReleasesSchema,v as SatelliteMissingDependencyError,Je as UpgradeCodeProgressStep,j as UpgradeCodeUnchangedError,Pe as blobSha256,Ur as checkUpgradeVersion,Ai as countAssets,Xi as countDocs,Di as deleteAssets,Zi as deleteDocs,jr as extractBuildType,U as findJunoPackageDependency,ji as getAuthConfig,Hi as getConfig,Bi as getDatastoreConfig,_ as getJunoPackage,Jo as getJunoPackageDependencies,jo as getJunoPackageVersion,Ji as getStorageConfig,ea as listCustomDomains,to as listMissionControlControllers,ti as listOrbiterControllers,ua as listRules,Ki as listSatelliteControllers,qo as missionControlVersion,ii as orbiterMemorySize,yi as orbiterVersion,Jr as readCustomSectionJunoPackage,va as satelliteBuildType,aa as satelliteMemorySize,Na as satelliteVersion,zi as setAuthConfig,ra as setCustomDomain,ta as setCustomDomains,Li as setDatastoreConfig,eo as setMissionControlController,fa as setRule,Fi as setSatelliteControllers,Yr as setSatellitesController,Ei as setStorageConfig,H as uint8ArraySha256,Uo as upgradeMissionControl,Zo as upgradeModule,pi as upgradeOrbiter,wa as upgradeSatellite};
2
2
  //# sourceMappingURL=index.js.map