@junobuild/core-peer 0.1.13 → 0.1.14
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/declarations/satellite/satellite.did.d.ts +5 -0
- package/dist/declarations/satellite/satellite.factory.certified.did.js +2 -0
- package/dist/declarations/satellite/satellite.factory.did.js +2 -0
- package/dist/declarations/satellite/satellite.factory.did.mjs +2 -0
- package/dist/declarations/sputnik/sputnik.did.d.ts +5 -0
- package/dist/declarations/sputnik/sputnik.factory.certified.did.js +2 -0
- package/dist/declarations/sputnik/sputnik.factory.did.js +2 -0
- package/dist/node/index.mjs +1 -1
- package/dist/node/index.mjs.map +4 -4
- package/package.json +1 -1
|
@@ -143,6 +143,10 @@ export interface ListResults_1 {
|
|
|
143
143
|
items_length: bigint;
|
|
144
144
|
}
|
|
145
145
|
export type Memory = {Heap: null} | {Stable: null};
|
|
146
|
+
export interface MemorySize {
|
|
147
|
+
stable: bigint;
|
|
148
|
+
heap: bigint;
|
|
149
|
+
}
|
|
146
150
|
export type Permission = {Controllers: null} | {Private: null} | {Public: null} | {Managed: null};
|
|
147
151
|
export interface RateConfig {
|
|
148
152
|
max_tokens: bigint;
|
|
@@ -270,6 +274,7 @@ export interface _SERVICE {
|
|
|
270
274
|
list_custom_domains: ActorMethod<[], Array<[string, CustomDomain]>>;
|
|
271
275
|
list_docs: ActorMethod<[string, ListParams], ListResults_1>;
|
|
272
276
|
list_rules: ActorMethod<[CollectionType], Array<[string, Rule]>>;
|
|
277
|
+
memory_size: ActorMethod<[], MemorySize>;
|
|
273
278
|
set_auth_config: ActorMethod<[AuthenticationConfig], undefined>;
|
|
274
279
|
set_controllers: ActorMethod<[SetControllersArgs], Array<[Principal, Controller]>>;
|
|
275
280
|
set_custom_domain: ActorMethod<[string, [] | [string]], undefined>;
|
|
@@ -208,6 +208,7 @@ export const idlFactory = ({IDL}) => {
|
|
|
208
208
|
items: IDL.Vec(IDL.Tuple(IDL.Text, Doc)),
|
|
209
209
|
items_length: IDL.Nat64
|
|
210
210
|
});
|
|
211
|
+
const MemorySize = IDL.Record({stable: IDL.Nat64, heap: IDL.Nat64});
|
|
211
212
|
const SetController = IDL.Record({
|
|
212
213
|
metadata: IDL.Vec(IDL.Tuple(IDL.Text, IDL.Text)),
|
|
213
214
|
scope: ControllerScope,
|
|
@@ -290,6 +291,7 @@ export const idlFactory = ({IDL}) => {
|
|
|
290
291
|
list_custom_domains: IDL.Func([], [IDL.Vec(IDL.Tuple(IDL.Text, CustomDomain))], []),
|
|
291
292
|
list_docs: IDL.Func([IDL.Text, ListParams], [ListResults_1], []),
|
|
292
293
|
list_rules: IDL.Func([CollectionType], [IDL.Vec(IDL.Tuple(IDL.Text, Rule))], []),
|
|
294
|
+
memory_size: IDL.Func([], [MemorySize], []),
|
|
293
295
|
set_auth_config: IDL.Func([AuthenticationConfig], [], []),
|
|
294
296
|
set_controllers: IDL.Func(
|
|
295
297
|
[SetControllersArgs],
|
|
@@ -208,6 +208,7 @@ export const idlFactory = ({IDL}) => {
|
|
|
208
208
|
items: IDL.Vec(IDL.Tuple(IDL.Text, Doc)),
|
|
209
209
|
items_length: IDL.Nat64
|
|
210
210
|
});
|
|
211
|
+
const MemorySize = IDL.Record({stable: IDL.Nat64, heap: IDL.Nat64});
|
|
211
212
|
const SetController = IDL.Record({
|
|
212
213
|
metadata: IDL.Vec(IDL.Tuple(IDL.Text, IDL.Text)),
|
|
213
214
|
scope: ControllerScope,
|
|
@@ -290,6 +291,7 @@ export const idlFactory = ({IDL}) => {
|
|
|
290
291
|
list_custom_domains: IDL.Func([], [IDL.Vec(IDL.Tuple(IDL.Text, CustomDomain))], ['query']),
|
|
291
292
|
list_docs: IDL.Func([IDL.Text, ListParams], [ListResults_1], ['query']),
|
|
292
293
|
list_rules: IDL.Func([CollectionType], [IDL.Vec(IDL.Tuple(IDL.Text, Rule))], ['query']),
|
|
294
|
+
memory_size: IDL.Func([], [MemorySize], ['query']),
|
|
293
295
|
set_auth_config: IDL.Func([AuthenticationConfig], [], []),
|
|
294
296
|
set_controllers: IDL.Func(
|
|
295
297
|
[SetControllersArgs],
|
|
@@ -208,6 +208,7 @@ export const idlFactory = ({IDL}) => {
|
|
|
208
208
|
items: IDL.Vec(IDL.Tuple(IDL.Text, Doc)),
|
|
209
209
|
items_length: IDL.Nat64
|
|
210
210
|
});
|
|
211
|
+
const MemorySize = IDL.Record({stable: IDL.Nat64, heap: IDL.Nat64});
|
|
211
212
|
const SetController = IDL.Record({
|
|
212
213
|
metadata: IDL.Vec(IDL.Tuple(IDL.Text, IDL.Text)),
|
|
213
214
|
scope: ControllerScope,
|
|
@@ -290,6 +291,7 @@ export const idlFactory = ({IDL}) => {
|
|
|
290
291
|
list_custom_domains: IDL.Func([], [IDL.Vec(IDL.Tuple(IDL.Text, CustomDomain))], ['query']),
|
|
291
292
|
list_docs: IDL.Func([IDL.Text, ListParams], [ListResults_1], ['query']),
|
|
292
293
|
list_rules: IDL.Func([CollectionType], [IDL.Vec(IDL.Tuple(IDL.Text, Rule))], ['query']),
|
|
294
|
+
memory_size: IDL.Func([], [MemorySize], ['query']),
|
|
293
295
|
set_auth_config: IDL.Func([AuthenticationConfig], [], []),
|
|
294
296
|
set_controllers: IDL.Func(
|
|
295
297
|
[SetControllersArgs],
|
|
@@ -143,6 +143,10 @@ export interface ListResults_1 {
|
|
|
143
143
|
items_length: bigint;
|
|
144
144
|
}
|
|
145
145
|
export type Memory = {Heap: null} | {Stable: null};
|
|
146
|
+
export interface MemorySize {
|
|
147
|
+
stable: bigint;
|
|
148
|
+
heap: bigint;
|
|
149
|
+
}
|
|
146
150
|
export type Permission = {Controllers: null} | {Private: null} | {Public: null} | {Managed: null};
|
|
147
151
|
export interface RateConfig {
|
|
148
152
|
max_tokens: bigint;
|
|
@@ -270,6 +274,7 @@ export interface _SERVICE {
|
|
|
270
274
|
list_custom_domains: ActorMethod<[], Array<[string, CustomDomain]>>;
|
|
271
275
|
list_docs: ActorMethod<[string, ListParams], ListResults_1>;
|
|
272
276
|
list_rules: ActorMethod<[CollectionType], Array<[string, Rule]>>;
|
|
277
|
+
memory_size: ActorMethod<[], MemorySize>;
|
|
273
278
|
set_auth_config: ActorMethod<[AuthenticationConfig], undefined>;
|
|
274
279
|
set_controllers: ActorMethod<[SetControllersArgs], Array<[Principal, Controller]>>;
|
|
275
280
|
set_custom_domain: ActorMethod<[string, [] | [string]], undefined>;
|
|
@@ -208,6 +208,7 @@ export const idlFactory = ({IDL}) => {
|
|
|
208
208
|
items: IDL.Vec(IDL.Tuple(IDL.Text, Doc)),
|
|
209
209
|
items_length: IDL.Nat64
|
|
210
210
|
});
|
|
211
|
+
const MemorySize = IDL.Record({stable: IDL.Nat64, heap: IDL.Nat64});
|
|
211
212
|
const SetController = IDL.Record({
|
|
212
213
|
metadata: IDL.Vec(IDL.Tuple(IDL.Text, IDL.Text)),
|
|
213
214
|
scope: ControllerScope,
|
|
@@ -290,6 +291,7 @@ export const idlFactory = ({IDL}) => {
|
|
|
290
291
|
list_custom_domains: IDL.Func([], [IDL.Vec(IDL.Tuple(IDL.Text, CustomDomain))], []),
|
|
291
292
|
list_docs: IDL.Func([IDL.Text, ListParams], [ListResults_1], []),
|
|
292
293
|
list_rules: IDL.Func([CollectionType], [IDL.Vec(IDL.Tuple(IDL.Text, Rule))], []),
|
|
294
|
+
memory_size: IDL.Func([], [MemorySize], []),
|
|
293
295
|
set_auth_config: IDL.Func([AuthenticationConfig], [], []),
|
|
294
296
|
set_controllers: IDL.Func(
|
|
295
297
|
[SetControllersArgs],
|
|
@@ -208,6 +208,7 @@ export const idlFactory = ({IDL}) => {
|
|
|
208
208
|
items: IDL.Vec(IDL.Tuple(IDL.Text, Doc)),
|
|
209
209
|
items_length: IDL.Nat64
|
|
210
210
|
});
|
|
211
|
+
const MemorySize = IDL.Record({stable: IDL.Nat64, heap: IDL.Nat64});
|
|
211
212
|
const SetController = IDL.Record({
|
|
212
213
|
metadata: IDL.Vec(IDL.Tuple(IDL.Text, IDL.Text)),
|
|
213
214
|
scope: ControllerScope,
|
|
@@ -290,6 +291,7 @@ export const idlFactory = ({IDL}) => {
|
|
|
290
291
|
list_custom_domains: IDL.Func([], [IDL.Vec(IDL.Tuple(IDL.Text, CustomDomain))], ['query']),
|
|
291
292
|
list_docs: IDL.Func([IDL.Text, ListParams], [ListResults_1], ['query']),
|
|
292
293
|
list_rules: IDL.Func([CollectionType], [IDL.Vec(IDL.Tuple(IDL.Text, Rule))], ['query']),
|
|
294
|
+
memory_size: IDL.Func([], [MemorySize], ['query']),
|
|
293
295
|
set_auth_config: IDL.Func([AuthenticationConfig], [], []),
|
|
294
296
|
set_controllers: IDL.Func(
|
|
295
297
|
[SetControllersArgs],
|
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 Xe}from"@dfinity/utils";import{isNullish as Ge}from"@dfinity/utils";var S=class{callbacks=[];populate(e){this.callbacks.forEach(({callback:s})=>s(e))}subscribe(e){let s=Symbol();return this.callbacks.push({id:s,callback:e}),()=>this.callbacks=this.callbacks.filter(({id:o})=>o!==s)}};var h=class t extends S{static instance;authUser=null;constructor(){super()}static getInstance(){return t.instance||(t.instance=new t),t.instance}set(e){this.authUser=e,this.populate(e)}get(){return this.authUser}subscribe(e){let s=super.subscribe(e);return e(this.authUser),s}reset(){this.authUser=null,this.populate(this.authUser)}};var tt=({message:t,detail:e})=>{let s=new CustomEvent(t,{detail:e,bubbles:!0});document.dispatchEvent(s)};import{ERROR_USER_INTERRUPT as Be}from"@dfinity/auth-client";import{isNullish as Je}from"@dfinity/utils";var _t=BigInt(144e11),gt=!1,At={width:576,height:576},Tt={width:505,height:705},ht="internetcomputer.org";import{isNullish as ve,nonNullish as Nt}from"@dfinity/utils";var E="http://127.0.0.1:5987",Ot="rdmx6-jaaaa-aaaaa-aaadq-cai";var g=class t extends S{static instance;env;constructor(){super()}static getInstance(){return t.instance||(t.instance=new t),t.instance}set(e){this.env=e,this.populate(e)}get(){return this.env}subscribe(e){let s=super.subscribe(e);return e(this.env),s}};import{isNullish as Rt}from"@dfinity/utils";import{jsonReplacer as Ee,jsonReviver as we}from"@dfinity/utils";var xt=async t=>{let e=new Blob([JSON.stringify(t,Ee)],{type:"application/json; charset=utf-8"});return new Uint8Array(await e.arrayBuffer())},K=async t=>{let e=new Blob([t instanceof Uint8Array?t:new Uint8Array(t)],{type:"application/json; charset=utf-8"});return JSON.parse(await e.text(),we)},q=()=>typeof window<"u";var et=({width:t,height:e})=>{if(!q()||Rt(window)||Rt(window.top))return;let{top:{innerWidth:s,innerHeight:o}}=window,i=o/2+screenY-e/2,n=s/2+screenX-t/2;return`toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=no, copyhistory=no, width=${t}, height=${e}, top=${i}, left=${n}`};var B=class{#t;constructor({domain:e}){this.#t=e}get id(){return"internet_identity"}signInOptions({windowed:e}){let s=()=>{let o=g.getInstance().get()?.container;if(ve(o)||o===!1)return`https://identity.${this.#t??ht}`;let i=g.getInstance().get(),n=Nt(i)&&Nt(i?.internetIdentityId)?i.internetIdentityId:Ot,{host:r,protocol:a}=new URL(o===!0?E:o);return/apple/i.test(navigator?.vendor)?`${a}//${r}?canisterId=${n}`:`${a}//${n}.${r.replace("127.0.0.1","localhost")}`};return{...e!==!1&&{windowOpenerFeatures:et(At)},identityProvider:s()}}},Pt=class{#t;#e;constructor({appName:e,logoUrl:s}){this.#t=e,this.#e=s}get id(){return"nfid"}signInOptions({windowed:e}){return{...e!==!1&&{windowOpenerFeatures:et(Tt)},identityProvider:`https://nfid.one/authenticate/?applicationName=${encodeURI(this.#t)}&applicationLogo=${encodeURI(this.#e)}`}}};import{Actor as Ue}from"@dfinity/agent";import{isNullish as ot}from"@dfinity/utils";import{HttpAgent as be}from"@dfinity/agent";import{isNullish as st,nonNullish as St}from"@dfinity/utils";var w=class t{static instance;#t=void 0;constructor(){}static getInstance(){return st(t.instance)&&(t.instance=new t),t.instance}async getAgent({identity:e,...s}){let o=e.getPrincipal().toText();if(st(this.#t)||st(this.#t[o])){let i=await this.createAgent({identity:e,...s});return this.#t={...this.#t??{},[o]:i},i}return this.#t[o]}reset(){this.#t=null}async createAgent({identity:e,fetch:s,container:o}){let n=St(o)&&o!==!1?o===!0?E:o:"https://icp-api.io",r=St(o);return await be.create({identity:e,shouldFetchRootKey:r,host:n,...s&&{fetch:s}})}};var v=class t{static instance;#t=void 0;constructor(){}static getInstance(){return ot(t.instance)&&(t.instance=new t),t.instance}async getActor({satelliteId:e,identity:s,buildType:o,...i}){let n=`${o}#${s.getPrincipal().toText()}#${e};`;if(ot(this.#t)||ot(this.#t[n])){let r=await this.createActor({satelliteId:e,identity:s,...i});return this.#t={...this.#t??{},[n]:r},r}return this.#t[n]}reset(){this.#t=null}async createActor({idlFactory:e,satelliteId:s,...o}){let i=await w.getInstance().getAgent(o);return Ue.createActor(e,{agent:i,canisterId:s})}};var J=class extends Error{},$=class extends Error{},H=class extends Error{},G=class extends Error{},W=class extends Error{};import{AuthClient as ke}from"@dfinity/auth-client";var z=()=>ke.create({idleOptions:{disableIdle:!0,disableDefaultIdleCallback:!0}});import{isNullish as Ke,nonNullish as Wt}from"@dfinity/utils";var it="juno.datastore.error.user.cannot_update";var nt=({error:t,type:e})=>typeof t=="string"?t.includes(e):t instanceof Error?t.message.includes(e):!1;import{fromNullable as U,isNullish as Me,nonNullish as Ve}from"@dfinity/utils";var Et=async({data:t})=>{try{return await K(t)}catch(e){console.error("The data parsing has failed, mapping to undefined as a fallback.",e);return}};import{fromNullable as wt,toNullable as rt}from"@dfinity/utils";var at=async t=>{let{data:e,version:s,description:o}=t;return{description:rt(o),data:await xt(e),version:rt(s)}},ct=t=>{let{version:e}=t;return{version:rt(e)}},M=async({doc:t,key:e})=>{let{owner:s,version:o,description:i,data:n,...r}=t;return{key:e,description:wt(i),owner:s.toText(),data:await K(n),version:wt(o),...r}};import{Principal as Ce}from"@dfinity/principal";import{isNullish as b,toNullable as _}from"@dfinity/utils";var vt=t=>{if(b(t))return _();switch(t.matcher){case"equal":return _({Equal:t.timestamp});case"greaterThan":return _({GreaterThan:t.timestamp});case"lessThan":return _({LessThan:t.timestamp});case"between":return _({Between:[t.timestamps.start,t.timestamps.end]});default:throw new W("Invalid list matcher for timestamp",t)}},N=({matcher:t,paginate:e,order:s,owner:o})=>({matcher:b(t)?[]:[{key:_(t.key),description:_(t.description),created_at:vt(t.createdAt),updated_at:vt(t.updatedAt)}],paginate:_(b(e)?void 0:{start_after:_(e.startAfter),limit:_(b(e.limit)?void 0:BigInt(e.limit))}),order:_(b(s)?void 0:{desc:s.desc,field:s.field==="created_at"?{CreatedAt:null}:s.field==="updated_at"?{UpdatedAt:null}:{Keys:null}}),owner:_(b(o)?void 0:typeof o=="string"?Ce.fromText(o):o)});import{assertNonNullish as Fe}from"@dfinity/utils";var bt=({IDL:t})=>{let e=t.Record({batch_id:t.Nat,headers:t.Vec(t.Tuple(t.Text,t.Text)),chunk_ids:t.Vec(t.Nat)}),s=t.Variant({UpdatedAt:t.Null,Keys:t.Null,CreatedAt:t.Null}),o=t.Record({field:s,desc:t.Bool}),i=t.Variant({Equal:t.Nat64,Between:t.Tuple(t.Nat64,t.Nat64),GreaterThan:t.Nat64,LessThan:t.Nat64}),n=t.Record({key:t.Opt(t.Text),updated_at:t.Opt(i),description:t.Opt(t.Text),created_at:t.Opt(i)}),r=t.Record({start_after:t.Opt(t.Text),limit:t.Opt(t.Nat64)}),a=t.Record({order:t.Opt(o),owner:t.Opt(t.Principal),matcher:t.Opt(n),paginate:t.Opt(r)}),p=t.Record({controllers:t.Vec(t.Principal)}),f=t.Variant({Write:t.Null,Admin:t.Null}),d=t.Record({updated_at:t.Nat64,metadata:t.Vec(t.Tuple(t.Text,t.Text)),created_at:t.Nat64,scope:f,expires_at:t.Opt(t.Nat64)}),y=t.Record({version:t.Opt(t.Nat64)}),m=t.Variant({Db:t.Null,Storage:t.Null}),O=t.Record({version:t.Opt(t.Nat64)}),x=t.Record({cycles:t.Nat,destination_id:t.Principal}),T=t.Record({token:t.Opt(t.Text),collection:t.Text,owner:t.Principal,name:t.Text,description:t.Opt(t.Text),full_path:t.Text}),R=t.Record({modified:t.Nat64,sha256:t.Vec(t.Nat8),total_length:t.Nat}),u=t.Record({key:T,updated_at:t.Nat64,encodings:t.Vec(t.Tuple(t.Text,R)),headers:t.Vec(t.Tuple(t.Text,t.Text)),created_at:t.Nat64,version:t.Opt(t.Nat64)}),P=t.Record({derivation_origin:t.Opt(t.Text),external_alternative_origins:t.Opt(t.Vec(t.Text))}),k=t.Record({internet_identity:t.Opt(P)}),V=t.Record({stable:t.Opt(t.Nat64),heap:t.Opt(t.Nat64)}),C=t.Record({max_memory_size:t.Opt(V)}),le=t.Variant({Deny:t.Null,AllowAny:t.Null,SameOrigin:t.Null}),pe=t.Variant({Deny:t.Null,Allow:t.Null}),de=t.Record({status_code:t.Nat16,location:t.Text}),Z=t.Record({iframe:t.Opt(le),rewrites:t.Vec(t.Tuple(t.Text,t.Text)),headers:t.Vec(t.Tuple(t.Text,t.Vec(t.Tuple(t.Text,t.Text)))),max_memory_size:t.Opt(V),raw_access:t.Opt(pe),redirects:t.Opt(t.Vec(t.Tuple(t.Text,de)))}),ue=t.Record({db:t.Opt(C),authentication:t.Opt(k),storage:Z}),F=t.Record({updated_at:t.Nat64,owner:t.Principal,data:t.Vec(t.Nat8),description:t.Opt(t.Text),created_at:t.Nat64,version:t.Opt(t.Nat64)}),D=t.Variant({Heap:t.Null,Stable:t.Null}),j=t.Variant({Controllers:t.Null,Private:t.Null,Public:t.Null,Managed:t.Null}),yt=t.Record({max_tokens:t.Nat64,time_per_token_ns:t.Nat64}),I=t.Record({max_capacity:t.Opt(t.Nat32),memory:t.Opt(D),updated_at:t.Nat64,max_size:t.Opt(t.Nat),read:j,created_at:t.Nat64,version:t.Opt(t.Nat64),mutable_permissions:t.Opt(t.Bool),rate_config:t.Opt(yt),write:j,max_changes_per_user:t.Opt(t.Nat32)}),me=t.Record({url:t.Text,method:t.Text,body:t.Vec(t.Nat8),headers:t.Vec(t.Tuple(t.Text,t.Text)),certificate_version:t.Opt(t.Nat16)}),L=t.Record({memory:D,token:t.Opt(t.Text),sha256:t.Opt(t.Vec(t.Nat8)),headers:t.Vec(t.Tuple(t.Text,t.Text)),index:t.Nat64,encoding_type:t.Text,full_path:t.Text}),ye=t.Variant({Callback:t.Record({token:L,callback:t.Func([],[],["query"])})}),fe=t.Record({body:t.Vec(t.Nat8),headers:t.Vec(t.Tuple(t.Text,t.Text)),streaming_strategy:t.Opt(ye),status_code:t.Nat16}),_e=t.Record({token:t.Opt(L),body:t.Vec(t.Nat8)}),ge=t.Record({token:t.Opt(t.Text),collection:t.Text,name:t.Text,description:t.Opt(t.Text),encoding_type:t.Opt(t.Text),full_path:t.Text}),Ae=t.Record({batch_id:t.Nat}),Te=t.Record({matches_pages:t.Opt(t.Nat64),matches_length:t.Nat64,items_page:t.Opt(t.Nat64),items:t.Vec(t.Tuple(t.Text,u)),items_length:t.Nat64}),he=t.Record({updated_at:t.Nat64,created_at:t.Nat64,version:t.Opt(t.Nat64),bn_id:t.Opt(t.Text)}),Oe=t.Record({matches_pages:t.Opt(t.Nat64),matches_length:t.Nat64,items_page:t.Opt(t.Nat64),items:t.Vec(t.Tuple(t.Text,F)),items_length:t.Nat64}),xe=t.Record({metadata:t.Vec(t.Tuple(t.Text,t.Text)),scope:f,expires_at:t.Opt(t.Nat64)}),Re=t.Record({controller:xe,controllers:t.Vec(t.Principal)}),ft=t.Record({data:t.Vec(t.Nat8),description:t.Opt(t.Text),version:t.Opt(t.Nat64)}),Ne=t.Record({max_capacity:t.Opt(t.Nat32),memory:t.Opt(D),max_size:t.Opt(t.Nat),read:j,version:t.Opt(t.Nat64),mutable_permissions:t.Opt(t.Bool),rate_config:t.Opt(yt),write:j,max_changes_per_user:t.Opt(t.Nat32)}),Pe=t.Record({content:t.Vec(t.Nat8),batch_id:t.Nat,order_id:t.Opt(t.Nat)}),Se=t.Record({chunk_id:t.Nat});return t.Service({commit_asset_upload:t.Func([e],[],[]),count_assets:t.Func([t.Text,a],[t.Nat64],["query"]),count_collection_assets:t.Func([t.Text],[t.Nat64],["query"]),count_collection_docs:t.Func([t.Text],[t.Nat64],["query"]),count_docs:t.Func([t.Text,a],[t.Nat64],["query"]),del_asset:t.Func([t.Text,t.Text],[],[]),del_assets:t.Func([t.Text],[],[]),del_controllers:t.Func([p],[t.Vec(t.Tuple(t.Principal,d))],[]),del_custom_domain:t.Func([t.Text],[],[]),del_doc:t.Func([t.Text,t.Text,y],[],[]),del_docs:t.Func([t.Text],[],[]),del_filtered_assets:t.Func([t.Text,a],[],[]),del_filtered_docs:t.Func([t.Text,a],[],[]),del_many_assets:t.Func([t.Vec(t.Tuple(t.Text,t.Text))],[],[]),del_many_docs:t.Func([t.Vec(t.Tuple(t.Text,t.Text,y))],[],[]),del_rule:t.Func([m,t.Text,O],[],[]),deposit_cycles:t.Func([x],[],[]),get_asset:t.Func([t.Text,t.Text],[t.Opt(u)],["query"]),get_auth_config:t.Func([],[t.Opt(k)],["query"]),get_config:t.Func([],[ue],[]),get_db_config:t.Func([],[t.Opt(C)],["query"]),get_doc:t.Func([t.Text,t.Text],[t.Opt(F)],["query"]),get_many_assets:t.Func([t.Vec(t.Tuple(t.Text,t.Text))],[t.Vec(t.Tuple(t.Text,t.Opt(u)))],["query"]),get_many_docs:t.Func([t.Vec(t.Tuple(t.Text,t.Text))],[t.Vec(t.Tuple(t.Text,t.Opt(F)))],["query"]),get_rule:t.Func([m,t.Text],[t.Opt(I)],["query"]),get_storage_config:t.Func([],[Z],["query"]),http_request:t.Func([me],[fe],["query"]),http_request_streaming_callback:t.Func([L],[_e],["query"]),init_asset_upload:t.Func([ge],[Ae],[]),list_assets:t.Func([t.Text,a],[Te],["query"]),list_controllers:t.Func([],[t.Vec(t.Tuple(t.Principal,d))],["query"]),list_custom_domains:t.Func([],[t.Vec(t.Tuple(t.Text,he))],["query"]),list_docs:t.Func([t.Text,a],[Oe],["query"]),list_rules:t.Func([m],[t.Vec(t.Tuple(t.Text,I))],["query"]),set_auth_config:t.Func([k],[],[]),set_controllers:t.Func([Re],[t.Vec(t.Tuple(t.Principal,d))],[]),set_custom_domain:t.Func([t.Text,t.Opt(t.Text)],[],[]),set_db_config:t.Func([C],[],[]),set_doc:t.Func([t.Text,t.Text,ft],[F],[]),set_many_docs:t.Func([t.Vec(t.Tuple(t.Text,t.Text,ft))],[t.Vec(t.Tuple(t.Text,F))],[]),set_rule:t.Func([m,t.Text,Ne],[I],[]),set_storage_config:t.Func([Z],[],[]),upload_asset_chunk:t.Func([Pe],[Se],[])})};import{nonNullish as lt}from"@dfinity/utils";var Ut=({satelliteId:t,container:e})=>{let{satelliteId:s}=pt({satelliteId:t}),{container:o}=dt({container:e});if(lt(o)&&o!==!1){let{host:i,protocol:n}=new URL(o===!0?E:o);return`${n}//${s??"unknown"}.${i.replace("127.0.0.1","localhost")}`}return`https://${s??"unknown"}.icp0.io`},pt=({satelliteId:t})=>lt(t)?{satelliteId:t}:g.getInstance().get()??{satelliteId:void 0},dt=({container:t})=>lt(t)?{container:t}:g.getInstance().get()??{container:void 0};var l=t=>Ct({idlFactory:bt,buildType:"stock",...t}),kt=({idlFactory:t,...e})=>Ct({idlFactory:t,buildType:"extended",...e}),Ct=async({satelliteId:t,container:e,...s})=>{let{satelliteId:o}=pt({satelliteId:t});Fe(o,"No satellite ID defined. Did you initialize Juno?");let{container:i}=dt({container:e});return await v.getInstance().getActor({satelliteId:o,container:i,...s})};var Ft=async({collection:t,key:e,satellite:s})=>{let{get_doc:o}=await l(s),i=U(await o(t,e));if(!Me(i))return M({doc:i,key:e})},Mt=async({docs:t,satellite:e})=>{let{get_many_docs:s}=await l(e),o=t.map(({collection:r,key:a})=>[r,a]),i=await s(o),n=[];for(let[r,a]of i){let p=U(a);n.push(Ve(p)?await M({key:r,doc:p}):void 0)}return n},Vt=async({collection:t,doc:e,satellite:s})=>{let{set_doc:o}=await l(s),{key:i}=e,n=await at(e),r=await o(t,i,n);return await M({key:i,doc:r})},jt=async({docs:t,satellite:e})=>{let{set_many_docs:s}=await l(e),o=[];for(let{collection:r,doc:a}of t){let{key:p}=a;o.push([r,p,await at(a)])}let i=await s(o),n=[];for(let[r,a]of i)n.push(await M({key:r,doc:a}));return n},Kt=async({collection:t,doc:e,satellite:s})=>{let{del_doc:o}=await l(s),{key:i}=e;return o(t,i,ct(e))},qt=async({docs:t,satellite:e})=>{let{del_many_docs:s}=await l(e),o=t.map(({collection:i,doc:n})=>[i,n.key,ct(n)]);await s(o)},Bt=async({collection:t,filter:e,satellite:s})=>{let{del_filtered_docs:o}=await l(s);return o(t,N(e))},Jt=async({collection:t,filter:e,satellite:s})=>{let{list_docs:o}=await l(s),{items:i,items_page:n,items_length:r,matches_length:a,matches_pages:p}=await o(t,N(e)),f=[];for(let[d,y]of i){let{data:m,owner:O,description:x,version:T,...R}=y;f.push({key:d,description:U(x),owner:O.toText(),data:await Et({data:m}),version:U(T),...R})}return{items:f,items_length:r,items_page:U(n),matches_length:a,matches_pages:U(p)}},$t=async({collection:t,filter:e,satellite:s})=>{let{count_docs:o}=await l(s);return o(t,N(e))};import{AnonymousIdentity as je}from"@dfinity/agent";var c=t=>t!==void 0?t:Y()??new je;var Ht=async({satellite:t,...e})=>{let s=c(t?.identity);return await Ft({...e,satellite:{...t,identity:s}})},vo=async({satellite:t,...e})=>{let s=c(t?.identity);return await Mt({...e,satellite:{...t,identity:s}})},Gt=async({satellite:t,...e})=>{let s=c(t?.identity);return await Vt({...e,satellite:{...t,identity:s}})},bo=async({satellite:t,...e})=>{let s=c(t?.identity);return await jt({...e,satellite:{...t,identity:s}})},Uo=async({satellite:t,...e})=>{let s=c(t?.identity);return await Kt({...e,satellite:{...t,identity:s}})},ko=async({satellite:t,...e})=>{let s=c(t?.identity);return await qt({...e,satellite:{...t,identity:s}})},Co=async({satellite:t,filter:e,...s})=>{let o=c(t?.identity);return await Bt({...s,filter:e??{},satellite:{...t,identity:o}})},Fo=async({satellite:t,filter:e,...s})=>{let o=c(t?.identity);return await Jt({...s,filter:e??{},satellite:{...t,identity:o}})},Mo=async({satellite:t,filter:e,...s})=>{let o=c(t?.identity);return await $t({...s,filter:e??{},satellite:{...t,identity:o}})};var zt=async t=>{let e=Y();if(Ke(e))throw new G("No identity to initialize the user. Have you initialized Juno?");let s=e.getPrincipal().toText(),o=()=>Ht({collection:"#user",key:s}),i=await o();if(Wt(i))return i;try{return await qe({userId:s,provider:t})}catch(n){if(nt({error:n,type:it})){let r=await o();if(Wt(r))return r}throw n}},qe=({userId:t,...e})=>Gt({collection:"#user",doc:{key:t,data:e}});var A,ut=async t=>{if(A=A??await z(),!(await A?.isAuthenticated()??!1))return;let s=await zt(t);h.getInstance().set(s)},$e=t=>new Promise(async(e,s)=>{if(Je(A)){s(new $("No client is ready to perform a sign-in. Have you initialized the Satellite?"));return}let o=t?.provider??new B({});await A.login({onSuccess:async()=>{await ut(o.id),e()},onError:i=>{if(i===Be){s(new H(i));return}s(new J(i))},maxTimeToLive:t?.maxTimeToLive??_t,allowPinAuthentication:t?.allowPin??gt,...t?.derivationOrigin!==void 0&&{derivationOrigin:t.derivationOrigin},...o.signInOptions({windowed:t?.windowed})})}),mt=async()=>{await A?.logout(),A=null,h.getInstance().reset(),v.getInstance().reset(),w.getInstance().reset(),A=await z()},Y=()=>A?.getIdentity(),He=async()=>(A??await z()).getIdentity();var Yt=t=>{let e=t===!0?"./workers/auth.worker.js":t,s=new Worker(e),o=async()=>{tt({message:"junoSignOutAuthTimer"}),await mt()};return s.onmessage=async({data:i})=>{let{msg:n,data:r}=i;switch(n){case"junoSignOutAuthTimer":await o();return;case"junoDelegationRemainingTime":tt({message:"junoDelegationRemainingTime",detail:r?.authRemainingTime});return}},h.getInstance().subscribe(i=>{if(Ge(i)){s.postMessage({msg:"junoStopAuthTimer"});return}s.postMessage({msg:"junoStartAuthTimer"})})};var Xt=()=>{let t=()=>typeof import.meta<"u"&&typeof import.meta.env<"u"?import.meta.env?.VITE_SATELLITE_ID??import.meta.env?.PUBLIC_SATELLITE_ID:void 0;return typeof process<"u"?process.env?.NEXT_PUBLIC_SATELLITE_ID??t():t()},Qt=()=>{let t=()=>typeof import.meta<"u"&&typeof import.meta.env<"u"?import.meta.env?.VITE_CONTAINER??import.meta.env?.PUBLIC_CONTAINER:void 0;return typeof process<"u"?process.env?.NEXT_PUBLIC_CONTAINER??t():t()};var ci=async({idlFactory:t,satellite:e})=>{let s=c(e?.identity);return await kt({idlFactory:t,...e,identity:s})};import{fromNullable as re,nonNullish as Ye}from"@dfinity/utils";import{fromNullable as Q}from"@dfinity/utils";import{toNullable as X}from"@dfinity/utils";var Zt=async({asset:{data:t,filename:e,collection:s,headers:o,token:i,fullPath:n,encoding:r,description:a},actor:p,init_asset_upload:f})=>{let{batch_id:d}=await f({collection:s,full_path:n,name:e,token:X(i),encoding_type:X(r),description:X(a)}),y=19e5,m=[],O=q()?new Blob([await t.arrayBuffer()]):t,x=0n;for(let u=0;u<O.size;u+=y){let P=O.slice(u,u+y);m.push({batchId:d,chunk:P,actor:p,orderId:x}),x++}let T=[];for await(let u of We({uploadChunks:m}))T=[...T,...u];let R=o.find(([u,P])=>u.toLowerCase()==="content-type")===void 0&&t.type!==void 0&&t.type!==""?[["Content-Type",t.type]]:void 0;await p.commit_asset_upload({batch_id:d,chunk_ids:T.map(({chunk_id:u})=>u),headers:[...o,...R??[]]})};async function*We({uploadChunks:t,limit:e=12}){for(let s=0;s<t.length;s=s+e){let o=t.slice(s,s+e);yield await Promise.all(o.map(i=>ze(i)))}}var ze=async({batchId:t,chunk:e,actor:s,orderId:o})=>s.upload_asset_chunk({batch_id:t,content:new Uint8Array(await e.arrayBuffer()),order_id:X(o)});var Dt=async({satellite:t,...e})=>{let s=await l(t);await Zt({actor:s,asset:e,init_asset_upload:async i=>await s.init_asset_upload(i)})},It=async({collection:t,satellite:e,filter:s})=>{let{list_assets:o}=await l(e),{items:i,items_length:n,items_page:r,matches_length:a,matches_pages:p}=await o(t,N(s));return{items:i.map(([f,d])=>d),items_length:n,items_page:Q(r),matches_length:a,matches_pages:Q(p)}},Lt=async({collection:t,satellite:e,filter:s})=>{let{count_assets:o}=await l(e);return o(t,N(s))},te=async({collection:t,fullPath:e,satellite:s})=>(await l(s)).del_asset(t,e),ee=async({assets:t,satellite:e})=>{let{del_many_assets:s}=await l(e),o=t.map(({collection:i,fullPath:n})=>[i,n]);await s(o)},se=async({collection:t,satellite:e,filter:s})=>{let{del_filtered_assets:o}=await l(e);return o(t,N(s))},oe=async({collection:t,fullPath:e,satellite:s})=>{let{get_asset:o}=await l(s);return Q(await o(t,e))},ie=async({assets:t,satellite:e})=>{let{get_many_assets:s}=await l(e),o=t.map(({collection:n,fullPath:r})=>[n,r]);return(await s(o)).map(([n,r])=>Q(r))};var ne=t=>btoa([...t].map(e=>String.fromCharCode(e)).join(""));var Ni=t=>ae(t),Pi=t=>ae({filename:t.data.name,...t}),ae=async({filename:t,data:e,collection:s,headers:o=[],fullPath:i,token:n,satellite:r,encoding:a,description:p})=>{let f=c(r?.identity),d=decodeURI(t),y=i??`/${s}/${d}`,m={...r,identity:f};return await Dt({data:e,filename:d,collection:s,token:n,headers:o,fullPath:y,encoding:a,satellite:m,description:p}),{downloadUrl:ce({satellite:m,assetKey:{fullPath:y,token:n}}),fullPath:y,name:d}},Si=async({collection:t,satellite:e,filter:s})=>{let o={...e,identity:c(e?.identity)},{items:i,...n}=await It({collection:t,satellite:o,filter:s??{}}),r=i.map(({key:{full_path:a,token:p,name:f,owner:d,description:y},headers:m,encodings:O,created_at:x,updated_at:T})=>{let R=re(p);return{fullPath:a,description:re(y),name:f,downloadUrl:ce({satellite:o,assetKey:{fullPath:a,token:R}}),token:R,headers:m,encodings:O.reduce((u,[P,{modified:k,sha256:V,total_length:C}])=>({...u,[P]:{modified:k,sha256:ne(V),total_length:C}}),{}),owner:d.toText(),created_at:x,updated_at:T}});return{items:r,assets:r,...n}},Ei=async({collection:t,satellite:e,filter:s})=>{let o={...e,identity:c(e?.identity)};return await Lt({collection:t,satellite:o,filter:s??{}})},wi=({collection:t,fullPath:e,satellite:s})=>te({collection:t,fullPath:e,satellite:{...s,identity:c(s?.identity)}}),vi=({assets:t,satellite:e})=>ee({assets:t,satellite:{...e,identity:c(e?.identity)}}),bi=async({collection:t,satellite:e,filter:s})=>{let o={...e,identity:c(e?.identity)};return await se({collection:t,satellite:o,filter:s??{}})},Ui=async({satellite:t,...e})=>{let s=c(t?.identity);return await oe({...e,satellite:{...t,identity:s}})},ki=async({satellite:t,...e})=>{let s=c(t?.identity);return await ie({...e,satellite:{...t,identity:s}})},ce=({assetKey:{fullPath:t,token:e},satellite:s})=>{let o={...s,identity:c(s?.identity)};return`${Ut(o)}${t}${Ye(e)?`?token=${e}`:""}`};var Qe=t=>{let e=t?.satelliteId??Xt();Xe(e,"Satellite ID is not configured. Juno cannot be initialized.");let s=t?.container??Qt();return{satelliteId:e,internetIdentityId:t?.internetIdentityId,workers:t?.workers,container:s}},Bi=t=>Ze(t),Ze=async t=>{let e=Qe(t);g.getInstance().set(e),await ut();let s=e.workers?.auth!==void 0?Yt(e.workers.auth):void 0;return[...s?[s]:[]]},Ji=t=>h.getInstance().subscribe(t);export{G as InitError,B as InternetIdentityProvider,W as ListError,Pt as NFIDProvider,J as SignInError,$ as SignInInitError,H as SignInUserInterruptError,Ji as authSubscribe,Ei as countAssets,Mo as countDocs,wi as deleteAsset,Uo as deleteDoc,bi as deleteFilteredAssets,Co as deleteFilteredDocs,vi as deleteManyAssets,ko as deleteManyDocs,ce as downloadUrl,Ui as getAsset,Ht as getDoc,ki as getManyAssets,vo as getManyDocs,ci as getSatelliteExtendedActor,Bi as initJuno,Ze as initSatellite,Si as listAssets,Fo as listDocs,Gt as setDoc,bo as setManyDocs,$e as signIn,mt as signOut,He as unsafeIdentity,Ni as uploadBlob,Pi as uploadFile};
|
|
3
|
+
import{assertNonNullish as Qe}from"@dfinity/utils";import{isNullish as Ye}from"@dfinity/utils";var x=class{callbacks=[];populate(e){this.callbacks.forEach(({callback:o})=>o(e))}subscribe(e){let o=Symbol();return this.callbacks.push({id:o,callback:e}),()=>this.callbacks=this.callbacks.filter(({id:s})=>s!==o)}};var T=class t extends x{static instance;authUser=null;constructor(){super()}static getInstance(){return t.instance||(t.instance=new t),t.instance}set(e){this.authUser=e,this.populate(e)}get(){return this.authUser}subscribe(e){let o=super.subscribe(e);return e(this.authUser),o}reset(){this.authUser=null,this.populate(this.authUser)}};var tt=({message:t,detail:e})=>{let o=new CustomEvent(t,{detail:e,bubbles:!0});document.dispatchEvent(o)};import{ERROR_USER_INTERRUPT as qe}from"@dfinity/auth-client";import{isNullish as $e}from"@dfinity/utils";var yt=BigInt(144e11),Ot=!1,ft={width:576,height:576},Rt={width:505,height:705},At="internetcomputer.org";import{isNullish as ve,nonNullish as Et}from"@dfinity/utils";var P="http://127.0.0.1:5987",Tt="rdmx6-jaaaa-aaaaa-aaadq-cai";var f=class t extends x{static instance;env;constructor(){super()}static getInstance(){return t.instance||(t.instance=new t),t.instance}set(e){this.env=e,this.populate(e)}get(){return this.env}subscribe(e){let o=super.subscribe(e);return e(this.env),o}};import{isNullish as Nt}from"@dfinity/utils";import{jsonReplacer as we,jsonReviver as Ue}from"@dfinity/utils";var gt=async t=>{let e=new Blob([JSON.stringify(t,we)],{type:"application/json; charset=utf-8"});return new Uint8Array(await e.arrayBuffer())},J=async t=>{let e=new Blob([t instanceof Uint8Array?t:new Uint8Array(t)],{type:"application/json; charset=utf-8"});return JSON.parse(await e.text(),Ue)},K=()=>typeof window<"u";var et=({width:t,height:e})=>{if(!K()||Nt(window)||Nt(window.top))return;let{top:{innerWidth:o,innerHeight:s}}=window,r=s/2+screenY-e/2,n=o/2+screenX-t/2;return`toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=no, copyhistory=no, width=${t}, height=${e}, top=${r}, left=${n}`};var B=class{#t;constructor({domain:e}){this.#t=e}get id(){return"internet_identity"}signInOptions({windowed:e}){let o=()=>{let s=f.getInstance().get()?.container;if(ve(s)||s===!1)return`https://identity.${this.#t??At}`;let r=f.getInstance().get(),n=Et(r)&&Et(r?.internetIdentityId)?r.internetIdentityId:Tt,{host:i,protocol:a}=new URL(s===!0?P:s);return/apple/i.test(navigator?.vendor)?`${a}//${i}?canisterId=${n}`:`${a}//${n}.${i.replace("127.0.0.1","localhost")}`};return{...e!==!1&&{windowOpenerFeatures:et(ft)},identityProvider:o()}}},St=class{#t;#e;constructor({appName:e,logoUrl:o}){this.#t=e,this.#e=o}get id(){return"nfid"}signInOptions({windowed:e}){return{...e!==!1&&{windowOpenerFeatures:et(Rt)},identityProvider:`https://nfid.one/authenticate/?applicationName=${encodeURI(this.#t)}&applicationLogo=${encodeURI(this.#e)}`}}};import{Actor as be}from"@dfinity/agent";import{isNullish as st}from"@dfinity/utils";import{HttpAgent as Ce}from"@dfinity/agent";import{isNullish as ot,nonNullish as ht}from"@dfinity/utils";var w=class t{static instance;#t=void 0;constructor(){}static getInstance(){return ot(t.instance)&&(t.instance=new t),t.instance}async getAgent({identity:e,...o}){let s=e.getPrincipal().toText();if(ot(this.#t)||ot(this.#t[s])){let r=await this.createAgent({identity:e,...o});return this.#t={...this.#t??{},[s]:r},r}return this.#t[s]}reset(){this.#t=null}async createAgent({identity:e,fetch:o,container:s}){let n=ht(s)&&s!==!1?s===!0?P:s:"https://icp-api.io",i=ht(s);return await Ce.create({identity:e,shouldFetchRootKey:i,host:n,...o&&{fetch:o}})}};var U=class t{static instance;#t=void 0;constructor(){}static getInstance(){return st(t.instance)&&(t.instance=new t),t.instance}async getActor({satelliteId:e,identity:o,buildType:s,...r}){let n=`${s}#${o.getPrincipal().toText()}#${e};`;if(st(this.#t)||st(this.#t[n])){let i=await this.createActor({satelliteId:e,identity:o,...r});return this.#t={...this.#t??{},[n]:i},i}return this.#t[n]}reset(){this.#t=null}async createActor({idlFactory:e,satelliteId:o,...s}){let r=await w.getInstance().getAgent(s);return be.createActor(e,{agent:r,canisterId:o})}};var q=class extends Error{},$=class extends Error{},H=class extends Error{},G=class extends Error{},Y=class extends Error{};import{AuthClient as ke}from"@dfinity/auth-client";var W=()=>ke.create({idleOptions:{disableIdle:!0,disableDefaultIdleCallback:!0}});import{isNullish as Ke,nonNullish as Yt}from"@dfinity/utils";var rt=({error:t,type:e})=>typeof t=="string"?t.includes(e):t instanceof Error?t.message.includes(e):!1;var xt="juno.datastore.error.user.cannot_update";import{fromNullable as C,isNullish as je,nonNullish as Ve}from"@dfinity/utils";var Pt=async({data:t})=>{try{return await J(t)}catch(e){console.error("The data parsing has failed, mapping to undefined as a fallback.",e);return}};import{fromNullable as wt,toNullable as nt}from"@dfinity/utils";var it=async t=>{let{data:e,version:o,description:s}=t;return{description:nt(s),data:await gt(e),version:nt(o)}},at=t=>{let{version:e}=t;return{version:nt(e)}},M=async({doc:t,key:e})=>{let{owner:o,version:s,description:r,data:n,...i}=t;return{key:e,description:wt(r),owner:o.toText(),data:await J(n),version:wt(s),...i}};import{Principal as Fe}from"@dfinity/principal";import{isNullish as v,toNullable as O}from"@dfinity/utils";var Ut=t=>{if(v(t))return O();switch(t.matcher){case"equal":return O({Equal:t.timestamp});case"greaterThan":return O({GreaterThan:t.timestamp});case"lessThan":return O({LessThan:t.timestamp});case"between":return O({Between:[t.timestamps.start,t.timestamps.end]});default:throw new Y("Invalid list matcher for timestamp",t)}},S=({matcher:t,paginate:e,order:o,owner:s})=>({matcher:v(t)?[]:[{key:O(t.key),description:O(t.description),created_at:Ut(t.createdAt),updated_at:Ut(t.updatedAt)}],paginate:O(v(e)?void 0:{start_after:O(e.startAfter),limit:O(v(e.limit)?void 0:BigInt(e.limit))}),order:O(v(o)?void 0:{desc:o.desc,field:o.field==="created_at"?{CreatedAt:null}:o.field==="updated_at"?{UpdatedAt:null}:{Keys:null}}),owner:O(v(s)?void 0:typeof s=="string"?Fe.fromText(s):s)});import{assertNonNullish as Me}from"@dfinity/utils";var vt=({IDL:t})=>{let e=t.Record({batch_id:t.Nat,headers:t.Vec(t.Tuple(t.Text,t.Text)),chunk_ids:t.Vec(t.Nat)}),o=t.Variant({UpdatedAt:t.Null,Keys:t.Null,CreatedAt:t.Null}),s=t.Record({field:o,desc:t.Bool}),r=t.Variant({Equal:t.Nat64,Between:t.Tuple(t.Nat64,t.Nat64),GreaterThan:t.Nat64,LessThan:t.Nat64}),n=t.Record({key:t.Opt(t.Text),updated_at:t.Opt(r),description:t.Opt(t.Text),created_at:t.Opt(r)}),i=t.Record({start_after:t.Opt(t.Text),limit:t.Opt(t.Nat64)}),a=t.Record({order:t.Opt(s),owner:t.Opt(t.Principal),matcher:t.Opt(n),paginate:t.Opt(i)}),p=t.Record({controllers:t.Vec(t.Principal)}),y=t.Variant({Write:t.Null,Admin:t.Null}),d=t.Record({updated_at:t.Nat64,metadata:t.Vec(t.Tuple(t.Text,t.Text)),created_at:t.Nat64,scope:y,expires_at:t.Opt(t.Nat64)}),_=t.Record({version:t.Opt(t.Nat64)}),m=t.Variant({Db:t.Null,Storage:t.Null}),g=t.Record({version:t.Opt(t.Nat64)}),N=t.Record({cycles:t.Nat,destination_id:t.Principal}),A=t.Record({token:t.Opt(t.Text),collection:t.Text,owner:t.Principal,name:t.Text,description:t.Opt(t.Text),full_path:t.Text}),E=t.Record({modified:t.Nat64,sha256:t.Vec(t.Nat8),total_length:t.Nat}),u=t.Record({key:A,updated_at:t.Nat64,encodings:t.Vec(t.Tuple(t.Text,E)),headers:t.Vec(t.Tuple(t.Text,t.Text)),created_at:t.Nat64,version:t.Opt(t.Nat64)}),h=t.Record({derivation_origin:t.Opt(t.Text),external_alternative_origins:t.Opt(t.Vec(t.Text))}),b=t.Record({internet_identity:t.Opt(h)}),j=t.Record({stable:t.Opt(t.Nat64),heap:t.Opt(t.Nat64)}),k=t.Record({max_memory_size:t.Opt(j)}),le=t.Variant({Deny:t.Null,AllowAny:t.Null,SameOrigin:t.Null}),pe=t.Variant({Deny:t.Null,Allow:t.Null}),de=t.Record({status_code:t.Nat16,location:t.Text}),Z=t.Record({iframe:t.Opt(le),rewrites:t.Vec(t.Tuple(t.Text,t.Text)),headers:t.Vec(t.Tuple(t.Text,t.Vec(t.Tuple(t.Text,t.Text)))),max_memory_size:t.Opt(j),raw_access:t.Opt(pe),redirects:t.Opt(t.Vec(t.Tuple(t.Text,de)))}),ue=t.Record({db:t.Opt(k),authentication:t.Opt(b),storage:Z}),F=t.Record({updated_at:t.Nat64,owner:t.Principal,data:t.Vec(t.Nat8),description:t.Opt(t.Text),created_at:t.Nat64,version:t.Opt(t.Nat64)}),D=t.Variant({Heap:t.Null,Stable:t.Null}),V=t.Variant({Controllers:t.Null,Private:t.Null,Public:t.Null,Managed:t.Null}),mt=t.Record({max_tokens:t.Nat64,time_per_token_ns:t.Nat64}),I=t.Record({max_capacity:t.Opt(t.Nat32),memory:t.Opt(D),updated_at:t.Nat64,max_size:t.Opt(t.Nat),read:V,created_at:t.Nat64,version:t.Opt(t.Nat64),mutable_permissions:t.Opt(t.Bool),rate_config:t.Opt(mt),write:V,max_changes_per_user:t.Opt(t.Nat32)}),me=t.Record({url:t.Text,method:t.Text,body:t.Vec(t.Nat8),headers:t.Vec(t.Tuple(t.Text,t.Text)),certificate_version:t.Opt(t.Nat16)}),L=t.Record({memory:D,token:t.Opt(t.Text),sha256:t.Opt(t.Vec(t.Nat8)),headers:t.Vec(t.Tuple(t.Text,t.Text)),index:t.Nat64,encoding_type:t.Text,full_path:t.Text}),_e=t.Variant({Callback:t.Record({token:L,callback:t.Func([],[],["query"])})}),ye=t.Record({body:t.Vec(t.Nat8),headers:t.Vec(t.Tuple(t.Text,t.Text)),streaming_strategy:t.Opt(_e),status_code:t.Nat16}),Oe=t.Record({token:t.Opt(L),body:t.Vec(t.Nat8)}),fe=t.Record({token:t.Opt(t.Text),collection:t.Text,name:t.Text,description:t.Opt(t.Text),encoding_type:t.Opt(t.Text),full_path:t.Text}),Re=t.Record({batch_id:t.Nat}),Ae=t.Record({matches_pages:t.Opt(t.Nat64),matches_length:t.Nat64,items_page:t.Opt(t.Nat64),items:t.Vec(t.Tuple(t.Text,u)),items_length:t.Nat64}),Te=t.Record({updated_at:t.Nat64,created_at:t.Nat64,version:t.Opt(t.Nat64),bn_id:t.Opt(t.Text)}),ge=t.Record({matches_pages:t.Opt(t.Nat64),matches_length:t.Nat64,items_page:t.Opt(t.Nat64),items:t.Vec(t.Tuple(t.Text,F)),items_length:t.Nat64}),Ne=t.Record({stable:t.Nat64,heap:t.Nat64}),Ee=t.Record({metadata:t.Vec(t.Tuple(t.Text,t.Text)),scope:y,expires_at:t.Opt(t.Nat64)}),Se=t.Record({controller:Ee,controllers:t.Vec(t.Principal)}),_t=t.Record({data:t.Vec(t.Nat8),description:t.Opt(t.Text),version:t.Opt(t.Nat64)}),he=t.Record({max_capacity:t.Opt(t.Nat32),memory:t.Opt(D),max_size:t.Opt(t.Nat),read:V,version:t.Opt(t.Nat64),mutable_permissions:t.Opt(t.Bool),rate_config:t.Opt(mt),write:V,max_changes_per_user:t.Opt(t.Nat32)}),xe=t.Record({content:t.Vec(t.Nat8),batch_id:t.Nat,order_id:t.Opt(t.Nat)}),Pe=t.Record({chunk_id:t.Nat});return t.Service({commit_asset_upload:t.Func([e],[],[]),count_assets:t.Func([t.Text,a],[t.Nat64],["query"]),count_collection_assets:t.Func([t.Text],[t.Nat64],["query"]),count_collection_docs:t.Func([t.Text],[t.Nat64],["query"]),count_docs:t.Func([t.Text,a],[t.Nat64],["query"]),del_asset:t.Func([t.Text,t.Text],[],[]),del_assets:t.Func([t.Text],[],[]),del_controllers:t.Func([p],[t.Vec(t.Tuple(t.Principal,d))],[]),del_custom_domain:t.Func([t.Text],[],[]),del_doc:t.Func([t.Text,t.Text,_],[],[]),del_docs:t.Func([t.Text],[],[]),del_filtered_assets:t.Func([t.Text,a],[],[]),del_filtered_docs:t.Func([t.Text,a],[],[]),del_many_assets:t.Func([t.Vec(t.Tuple(t.Text,t.Text))],[],[]),del_many_docs:t.Func([t.Vec(t.Tuple(t.Text,t.Text,_))],[],[]),del_rule:t.Func([m,t.Text,g],[],[]),deposit_cycles:t.Func([N],[],[]),get_asset:t.Func([t.Text,t.Text],[t.Opt(u)],["query"]),get_auth_config:t.Func([],[t.Opt(b)],["query"]),get_config:t.Func([],[ue],[]),get_db_config:t.Func([],[t.Opt(k)],["query"]),get_doc:t.Func([t.Text,t.Text],[t.Opt(F)],["query"]),get_many_assets:t.Func([t.Vec(t.Tuple(t.Text,t.Text))],[t.Vec(t.Tuple(t.Text,t.Opt(u)))],["query"]),get_many_docs:t.Func([t.Vec(t.Tuple(t.Text,t.Text))],[t.Vec(t.Tuple(t.Text,t.Opt(F)))],["query"]),get_rule:t.Func([m,t.Text],[t.Opt(I)],["query"]),get_storage_config:t.Func([],[Z],["query"]),http_request:t.Func([me],[ye],["query"]),http_request_streaming_callback:t.Func([L],[Oe],["query"]),init_asset_upload:t.Func([fe],[Re],[]),list_assets:t.Func([t.Text,a],[Ae],["query"]),list_controllers:t.Func([],[t.Vec(t.Tuple(t.Principal,d))],["query"]),list_custom_domains:t.Func([],[t.Vec(t.Tuple(t.Text,Te))],["query"]),list_docs:t.Func([t.Text,a],[ge],["query"]),list_rules:t.Func([m],[t.Vec(t.Tuple(t.Text,I))],["query"]),memory_size:t.Func([],[Ne],["query"]),set_auth_config:t.Func([b],[],[]),set_controllers:t.Func([Se],[t.Vec(t.Tuple(t.Principal,d))],[]),set_custom_domain:t.Func([t.Text,t.Opt(t.Text)],[],[]),set_db_config:t.Func([k],[],[]),set_doc:t.Func([t.Text,t.Text,_t],[F],[]),set_many_docs:t.Func([t.Vec(t.Tuple(t.Text,t.Text,_t))],[t.Vec(t.Tuple(t.Text,F))],[]),set_rule:t.Func([m,t.Text,he],[I],[]),set_storage_config:t.Func([Z],[],[]),upload_asset_chunk:t.Func([xe],[Pe],[])})};import{nonNullish as ct}from"@dfinity/utils";var Ct=({satelliteId:t,container:e})=>{let{satelliteId:o}=lt({satelliteId:t}),{container:s}=pt({container:e});if(ct(s)&&s!==!1){let{host:r,protocol:n}=new URL(s===!0?P:s);return`${n}//${o??"unknown"}.${r.replace("127.0.0.1","localhost")}`}return`https://${o??"unknown"}.icp0.io`},lt=({satelliteId:t})=>ct(t)?{satelliteId:t}:f.getInstance().get()??{satelliteId:void 0},pt=({container:t})=>ct(t)?{container:t}:f.getInstance().get()??{container:void 0};var l=t=>kt({idlFactory:vt,buildType:"stock",...t}),bt=({idlFactory:t,...e})=>kt({idlFactory:t,buildType:"extended",...e}),kt=async({satelliteId:t,container:e,...o})=>{let{satelliteId:s}=lt({satelliteId:t});Me(s,"No satellite ID defined. Did you initialize Juno?");let{container:r}=pt({container:e});return await U.getInstance().getActor({satelliteId:s,container:r,...o})};var Ft=async({collection:t,key:e,satellite:o})=>{let{get_doc:s}=await l(o),r=C(await s(t,e));if(!je(r))return M({doc:r,key:e})},Mt=async({docs:t,satellite:e})=>{let{get_many_docs:o}=await l(e),s=t.map(({collection:i,key:a})=>[i,a]),r=await o(s),n=[];for(let[i,a]of r){let p=C(a);n.push(Ve(p)?await M({key:i,doc:p}):void 0)}return n},jt=async({collection:t,doc:e,satellite:o})=>{let{set_doc:s}=await l(o),{key:r}=e,n=await it(e),i=await s(t,r,n);return await M({key:r,doc:i})},Vt=async({docs:t,satellite:e})=>{let{set_many_docs:o}=await l(e),s=[];for(let{collection:i,doc:a}of t){let{key:p}=a;s.push([i,p,await it(a)])}let r=await o(s),n=[];for(let[i,a]of r)n.push(await M({key:i,doc:a}));return n},Jt=async({collection:t,doc:e,satellite:o})=>{let{del_doc:s}=await l(o),{key:r}=e;return s(t,r,at(e))},Kt=async({docs:t,satellite:e})=>{let{del_many_docs:o}=await l(e),s=t.map(({collection:r,doc:n})=>[r,n.key,at(n)]);await o(s)},Bt=async({collection:t,filter:e,satellite:o})=>{let{del_filtered_docs:s}=await l(o);return s(t,S(e))},qt=async({collection:t,filter:e,satellite:o})=>{let{list_docs:s}=await l(o),{items:r,items_page:n,items_length:i,matches_length:a,matches_pages:p}=await s(t,S(e)),y=[];for(let[d,_]of r){let{data:m,owner:g,description:N,version:A,...E}=_;y.push({key:d,description:C(N),owner:g.toText(),data:await Pt({data:m}),version:C(A),...E})}return{items:y,items_length:i,items_page:C(n),matches_length:a,matches_pages:C(p)}},$t=async({collection:t,filter:e,satellite:o})=>{let{count_docs:s}=await l(o);return s(t,S(e))};import{AnonymousIdentity as Je}from"@dfinity/agent";var c=t=>t!==void 0?t:z()??new Je;var Ht=async({satellite:t,...e})=>{let o=c(t?.identity);return await Ft({...e,satellite:{...t,identity:o}})},cs=async({satellite:t,...e})=>{let o=c(t?.identity);return await Mt({...e,satellite:{...t,identity:o}})},Gt=async({satellite:t,...e})=>{let o=c(t?.identity);return await jt({...e,satellite:{...t,identity:o}})},ls=async({satellite:t,...e})=>{let o=c(t?.identity);return await Vt({...e,satellite:{...t,identity:o}})},ps=async({satellite:t,...e})=>{let o=c(t?.identity);return await Jt({...e,satellite:{...t,identity:o}})},ds=async({satellite:t,...e})=>{let o=c(t?.identity);return await Kt({...e,satellite:{...t,identity:o}})},us=async({satellite:t,filter:e,...o})=>{let s=c(t?.identity);return await Bt({...o,filter:e??{},satellite:{...t,identity:s}})},ms=async({satellite:t,filter:e,...o})=>{let s=c(t?.identity);return await qt({...o,filter:e??{},satellite:{...t,identity:s}})},_s=async({satellite:t,filter:e,...o})=>{let s=c(t?.identity);return await $t({...o,filter:e??{},satellite:{...t,identity:s}})};var Wt=async t=>{let e=z();if(Ke(e))throw new G("No identity to initialize the user. Have you initialized Juno?");let o=e.getPrincipal().toText(),s=()=>Ht({collection:"#user",key:o}),r=await s();if(Yt(r))return r;try{return await Be({userId:o,provider:t})}catch(n){if(rt({error:n,type:xt})){let i=await s();if(Yt(i))return i}throw n}},Be=({userId:t,...e})=>Gt({collection:"#user",doc:{key:t,data:e}});var R,dt=async t=>{if(R=R??await W(),!(await R?.isAuthenticated()??!1))return;let o=await Wt(t);T.getInstance().set(o)},He=t=>new Promise(async(e,o)=>{if($e(R)){o(new $("No client is ready to perform a sign-in. Have you initialized the Satellite?"));return}let s=t?.provider??new B({});await R.login({onSuccess:async()=>{await dt(s.id),e()},onError:r=>{if(r===qe){o(new H(r));return}o(new q(r))},maxTimeToLive:t?.maxTimeToLive??yt,allowPinAuthentication:t?.allowPin??Ot,...t?.derivationOrigin!==void 0&&{derivationOrigin:t.derivationOrigin},...s.signInOptions({windowed:t?.windowed})})}),ut=async()=>{await R?.logout(),R=null,T.getInstance().reset(),U.getInstance().reset(),w.getInstance().reset(),R=await W()},z=()=>R?.getIdentity(),Ge=async()=>(R??await W()).getIdentity();var zt=t=>{let e=t===!0?"./workers/auth.worker.js":t,o=new Worker(e),s=async()=>{tt({message:"junoSignOutAuthTimer"}),await ut()};return o.onmessage=async({data:r})=>{let{msg:n,data:i}=r;switch(n){case"junoSignOutAuthTimer":await s();return;case"junoDelegationRemainingTime":tt({message:"junoDelegationRemainingTime",detail:i?.authRemainingTime});return}},T.getInstance().subscribe(r=>{if(Ye(r)){o.postMessage({msg:"junoStopAuthTimer"});return}o.postMessage({msg:"junoStartAuthTimer"})})};var Xt=()=>{let t=()=>typeof import.meta<"u"&&typeof import.meta.env<"u"?import.meta.env?.VITE_SATELLITE_ID??import.meta.env?.PUBLIC_SATELLITE_ID:void 0;return typeof process<"u"?process.env?.NEXT_PUBLIC_SATELLITE_ID??t():t()},Qt=()=>{let t=()=>typeof import.meta<"u"&&typeof import.meta.env<"u"?import.meta.env?.VITE_CONTAINER??import.meta.env?.PUBLIC_CONTAINER:void 0;return typeof process<"u"?process.env?.NEXT_PUBLIC_CONTAINER??t():t()};var qs=async({idlFactory:t,satellite:e})=>{let o=c(e?.identity);return await bt({idlFactory:t,...e,identity:o})};import{fromNullable as ie,nonNullish as Xe}from"@dfinity/utils";import{fromNullable as Q}from"@dfinity/utils";import{toNullable as X}from"@dfinity/utils";var Zt=async({asset:{data:t,filename:e,collection:o,headers:s,token:r,fullPath:n,encoding:i,description:a},actor:p,init_asset_upload:y})=>{let{batch_id:d}=await y({collection:o,full_path:n,name:e,token:X(r),encoding_type:X(i),description:X(a)}),_=19e5,m=[],g=K()?new Blob([await t.arrayBuffer()]):t,N=0n;for(let u=0;u<g.size;u+=_){let h=g.slice(u,u+_);m.push({batchId:d,chunk:h,actor:p,orderId:N}),N++}let A=[];for await(let u of We({uploadChunks:m}))A=[...A,...u];let E=s.find(([u,h])=>u.toLowerCase()==="content-type")===void 0&&t.type!==void 0&&t.type!==""?[["Content-Type",t.type]]:void 0;await p.commit_asset_upload({batch_id:d,chunk_ids:A.map(({chunk_id:u})=>u),headers:[...s,...E??[]]})};async function*We({uploadChunks:t,limit:e=12}){for(let o=0;o<t.length;o=o+e){let s=t.slice(o,o+e);yield await Promise.all(s.map(r=>ze(r)))}}var ze=async({batchId:t,chunk:e,actor:o,orderId:s})=>o.upload_asset_chunk({batch_id:t,content:new Uint8Array(await e.arrayBuffer()),order_id:X(s)});var Dt=async({satellite:t,...e})=>{let o=await l(t);await Zt({actor:o,asset:e,init_asset_upload:async r=>await o.init_asset_upload(r)})},It=async({collection:t,satellite:e,filter:o})=>{let{list_assets:s}=await l(e),{items:r,items_length:n,items_page:i,matches_length:a,matches_pages:p}=await s(t,S(o));return{items:r.map(([y,d])=>d),items_length:n,items_page:Q(i),matches_length:a,matches_pages:Q(p)}},Lt=async({collection:t,satellite:e,filter:o})=>{let{count_assets:s}=await l(e);return s(t,S(o))},te=async({collection:t,fullPath:e,satellite:o})=>(await l(o)).del_asset(t,e),ee=async({assets:t,satellite:e})=>{let{del_many_assets:o}=await l(e),s=t.map(({collection:r,fullPath:n})=>[r,n]);await o(s)},oe=async({collection:t,satellite:e,filter:o})=>{let{del_filtered_assets:s}=await l(e);return s(t,S(o))},se=async({collection:t,fullPath:e,satellite:o})=>{let{get_asset:s}=await l(o);return Q(await s(t,e))},re=async({assets:t,satellite:e})=>{let{get_many_assets:o}=await l(e),s=t.map(({collection:n,fullPath:i})=>[n,i]);return(await o(s)).map(([n,i])=>Q(i))};var ne=t=>btoa([...t].map(e=>String.fromCharCode(e)).join(""));var sr=t=>ae(t),rr=t=>ae({filename:t.data.name,...t}),ae=async({filename:t,data:e,collection:o,headers:s=[],fullPath:r,token:n,satellite:i,encoding:a,description:p})=>{let y=c(i?.identity),d=decodeURI(t),_=r??`/${o}/${d}`,m={...i,identity:y};return await Dt({data:e,filename:d,collection:o,token:n,headers:s,fullPath:_,encoding:a,satellite:m,description:p}),{downloadUrl:ce({satellite:m,assetKey:{fullPath:_,token:n}}),fullPath:_,name:d}},nr=async({collection:t,satellite:e,filter:o})=>{let s={...e,identity:c(e?.identity)},{items:r,...n}=await It({collection:t,satellite:s,filter:o??{}}),i=r.map(({key:{full_path:a,token:p,name:y,owner:d,description:_},headers:m,encodings:g,created_at:N,updated_at:A})=>{let E=ie(p);return{fullPath:a,description:ie(_),name:y,downloadUrl:ce({satellite:s,assetKey:{fullPath:a,token:E}}),token:E,headers:m,encodings:g.reduce((u,[h,{modified:b,sha256:j,total_length:k}])=>({...u,[h]:{modified:b,sha256:ne(j),total_length:k}}),{}),owner:d.toText(),created_at:N,updated_at:A}});return{items:i,assets:i,...n}},ir=async({collection:t,satellite:e,filter:o})=>{let s={...e,identity:c(e?.identity)};return await Lt({collection:t,satellite:s,filter:o??{}})},ar=({collection:t,fullPath:e,satellite:o})=>te({collection:t,fullPath:e,satellite:{...o,identity:c(o?.identity)}}),cr=({assets:t,satellite:e})=>ee({assets:t,satellite:{...e,identity:c(e?.identity)}}),lr=async({collection:t,satellite:e,filter:o})=>{let s={...e,identity:c(e?.identity)};return await oe({collection:t,satellite:s,filter:o??{}})},pr=async({satellite:t,...e})=>{let o=c(t?.identity);return await se({...e,satellite:{...t,identity:o}})},dr=async({satellite:t,...e})=>{let o=c(t?.identity);return await re({...e,satellite:{...t,identity:o}})},ce=({assetKey:{fullPath:t,token:e},satellite:o})=>{let s={...o,identity:c(o?.identity)};return`${Ct(s)}${t}${Xe(e)?`?token=${e}`:""}`};var Ze=t=>{let e=t?.satelliteId??Xt();Qe(e,"Satellite ID is not configured. Juno cannot be initialized.");let o=t?.container??Qt();return{satelliteId:e,internetIdentityId:t?.internetIdentityId,workers:t?.workers,container:o}},Ar=t=>De(t),De=async t=>{let e=Ze(t);f.getInstance().set(e),await dt();let o=e.workers?.auth!==void 0?zt(e.workers.auth):void 0;return[...o?[o]:[]]},Tr=t=>T.getInstance().subscribe(t);export{G as InitError,B as InternetIdentityProvider,Y as ListError,St as NFIDProvider,q as SignInError,$ as SignInInitError,H as SignInUserInterruptError,Tr as authSubscribe,ir as countAssets,_s as countDocs,ar as deleteAsset,ps as deleteDoc,lr as deleteFilteredAssets,us as deleteFilteredDocs,cr as deleteManyAssets,ds as deleteManyDocs,ce as downloadUrl,pr as getAsset,Ht as getDoc,dr as getManyAssets,cs as getManyDocs,qs as getSatelliteExtendedActor,Ar as initJuno,De as initSatellite,nr as listAssets,ms as listDocs,Gt as setDoc,ls as setManyDocs,He as signIn,ut as signOut,Ge as unsafeIdentity,sr as uploadBlob,rr as uploadFile};
|
|
4
4
|
//# sourceMappingURL=index.mjs.map
|