@based/client 2.7.0 → 2.7.1
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/Client.d.ts +0 -0
- package/dist/Client.js +0 -0
- package/dist/Client.js.map +0 -0
- package/dist/Emitter.d.ts +0 -0
- package/dist/Emitter.js +0 -0
- package/dist/Emitter.js.map +0 -0
- package/dist/auth.d.ts +0 -0
- package/dist/auth.js +0 -0
- package/dist/auth.js.map +0 -0
- package/dist/createError.d.ts +0 -0
- package/dist/createError.js +0 -0
- package/dist/createError.js.map +0 -0
- package/dist/file/fetch.d.ts +0 -0
- package/dist/file/fetch.js +0 -0
- package/dist/file/fetch.js.map +0 -0
- package/dist/file/getUrl.d.ts +0 -0
- package/dist/file/getUrl.js +0 -0
- package/dist/file/getUrl.js.map +0 -0
- package/dist/file/index.d.ts +0 -0
- package/dist/file/index.js +0 -0
- package/dist/file/index.js.map +0 -0
- package/dist/file/stream/browser.d.ts +0 -0
- package/dist/file/stream/browser.js +0 -0
- package/dist/file/stream/browser.js.map +0 -0
- package/dist/file/stream/index.d.ts +0 -0
- package/dist/file/stream/index.js +0 -0
- package/dist/file/stream/index.js.map +0 -0
- package/dist/file/uploadFileBrowser.d.ts +0 -0
- package/dist/file/uploadFileBrowser.js +0 -0
- package/dist/file/uploadFileBrowser.js.map +0 -0
- package/dist/findPrefix.d.ts +0 -0
- package/dist/findPrefix.js +0 -0
- package/dist/findPrefix.js.map +0 -0
- package/dist/idleTimeout.d.ts +0 -0
- package/dist/idleTimeout.js +0 -0
- package/dist/idleTimeout.js.map +0 -0
- package/dist/index.d.ts +0 -0
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/observable/index.d.ts +0 -0
- package/dist/observable/index.js +0 -0
- package/dist/observable/index.js.map +0 -0
- package/dist/printBasedObject.d.ts +0 -0
- package/dist/printBasedObject.js +0 -0
- package/dist/printBasedObject.js.map +0 -0
- package/dist/queue.d.ts +0 -0
- package/dist/queue.js +0 -0
- package/dist/queue.js.map +0 -0
- package/dist/request.d.ts +0 -0
- package/dist/request.js +0 -0
- package/dist/request.js.map +0 -0
- package/dist/selvaTypes/get.d.ts +0 -0
- package/dist/selvaTypes/get.js +0 -0
- package/dist/selvaTypes/get.js.map +0 -0
- package/dist/selvaTypes/schema.d.ts +0 -0
- package/dist/selvaTypes/schema.js +0 -0
- package/dist/selvaTypes/schema.js.map +0 -0
- package/dist/selvaTypes/set.d.ts +0 -0
- package/dist/selvaTypes/set.js +0 -0
- package/dist/selvaTypes/set.js.map +0 -0
- package/dist/subscriptions/addGetSubscriber.d.ts +0 -0
- package/dist/subscriptions/addGetSubscriber.js +0 -0
- package/dist/subscriptions/addGetSubscriber.js.map +0 -0
- package/dist/subscriptions/addSubscriber.d.ts +0 -0
- package/dist/subscriptions/addSubscriber.js +0 -0
- package/dist/subscriptions/addSubscriber.js.map +0 -0
- package/dist/subscriptions/generateId.d.ts +0 -0
- package/dist/subscriptions/generateId.js +0 -0
- package/dist/subscriptions/generateId.js.map +0 -0
- package/dist/subscriptions/incomingSubscription.d.ts +0 -0
- package/dist/subscriptions/incomingSubscription.js +0 -0
- package/dist/subscriptions/incomingSubscription.js.map +0 -0
- package/dist/subscriptions/incomingSubscriptionDiff.d.ts +0 -0
- package/dist/subscriptions/incomingSubscriptionDiff.js +0 -0
- package/dist/subscriptions/incomingSubscriptionDiff.js.map +0 -0
- package/dist/subscriptions/index.d.ts +0 -0
- package/dist/subscriptions/index.js +0 -0
- package/dist/subscriptions/index.js.map +0 -0
- package/dist/subscriptions/logoutSubscriptions.d.ts +0 -0
- package/dist/subscriptions/logoutSubscriptions.js +0 -0
- package/dist/subscriptions/logoutSubscriptions.js.map +0 -0
- package/dist/subscriptions/removeSendSubscriptionDataFromQueue.d.ts +0 -0
- package/dist/subscriptions/removeSendSubscriptionDataFromQueue.js +0 -0
- package/dist/subscriptions/removeSendSubscriptionDataFromQueue.js.map +0 -0
- package/dist/subscriptions/removeSubscriber.d.ts +0 -0
- package/dist/subscriptions/removeSubscriber.js +0 -0
- package/dist/subscriptions/removeSubscriber.js.map +0 -0
- package/dist/subscriptions/removeUnsubscribesFromQueue.d.ts +0 -0
- package/dist/subscriptions/removeUnsubscribesFromQueue.js +0 -0
- package/dist/subscriptions/removeUnsubscribesFromQueue.js.map +0 -0
- package/dist/subscriptions/sendAllSubscriptions.d.ts +0 -0
- package/dist/subscriptions/sendAllSubscriptions.js +0 -0
- package/dist/subscriptions/sendAllSubscriptions.js.map +0 -0
- package/dist/token.d.ts +0 -0
- package/dist/token.js +0 -0
- package/dist/token.js.map +0 -0
- package/dist/track.d.ts +0 -0
- package/dist/track.js +0 -0
- package/dist/track.js.map +0 -0
- package/dist/websocket/index.d.ts +0 -0
- package/dist/websocket/index.js +0 -0
- package/dist/websocket/index.js.map +0 -0
- package/dist/websocket/types.d.ts +0 -0
- package/dist/websocket/types.js +0 -0
- package/dist/websocket/types.js.map +0 -0
- package/dist/websocket/urlLoader.d.ts +0 -0
- package/dist/websocket/urlLoader.js +0 -0
- package/dist/websocket/urlLoader.js.map +0 -0
- package/docs/schema.md +25 -1
- package/docs/set.md +147 -3
- package/package.json +1 -1
package/dist/Client.d.ts
CHANGED
|
File without changes
|
package/dist/Client.js
CHANGED
|
File without changes
|
package/dist/Client.js.map
CHANGED
|
File without changes
|
package/dist/Emitter.d.ts
CHANGED
|
File without changes
|
package/dist/Emitter.js
CHANGED
|
File without changes
|
package/dist/Emitter.js.map
CHANGED
|
File without changes
|
package/dist/auth.d.ts
CHANGED
|
File without changes
|
package/dist/auth.js
CHANGED
|
File without changes
|
package/dist/auth.js.map
CHANGED
|
File without changes
|
package/dist/createError.d.ts
CHANGED
|
File without changes
|
package/dist/createError.js
CHANGED
|
File without changes
|
package/dist/createError.js.map
CHANGED
|
File without changes
|
package/dist/file/fetch.d.ts
CHANGED
|
File without changes
|
package/dist/file/fetch.js
CHANGED
|
File without changes
|
package/dist/file/fetch.js.map
CHANGED
|
File without changes
|
package/dist/file/getUrl.d.ts
CHANGED
|
File without changes
|
package/dist/file/getUrl.js
CHANGED
|
File without changes
|
package/dist/file/getUrl.js.map
CHANGED
|
File without changes
|
package/dist/file/index.d.ts
CHANGED
|
File without changes
|
package/dist/file/index.js
CHANGED
|
File without changes
|
package/dist/file/index.js.map
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/findPrefix.d.ts
CHANGED
|
File without changes
|
package/dist/findPrefix.js
CHANGED
|
File without changes
|
package/dist/findPrefix.js.map
CHANGED
|
File without changes
|
package/dist/idleTimeout.d.ts
CHANGED
|
File without changes
|
package/dist/idleTimeout.js
CHANGED
|
File without changes
|
package/dist/idleTimeout.js.map
CHANGED
|
File without changes
|
package/dist/index.d.ts
CHANGED
|
File without changes
|
package/dist/index.js
CHANGED
|
@@ -12,4 +12,4 @@ Found corrupt data while applying diff to subscription need to re-fetch
|
|
|
12
12
|
`),console.warn(W(o.query,2,!1,"Query").join(`
|
|
13
13
|
`)+`
|
|
14
14
|
|
|
15
|
-
`),delete e.cache[t],f(e,[V.RequestTypes.SendSubscriptionData,t]);else{c.checksum=n;for(let u in o.subscribers){let l=o.subscribers[u];l.onInitial&&(l.onInitial(null,Number(t),Number(u),c.value),delete l.onInitial,l.onData||y(e,t,Number(u))),l.onData&&l.onData(c.value,c.checksum)}}}}};var Ge=(e,s)=>{for(let t of s[1]){delete e.cache[t];let i=e.subscriptions[t];if(i){let r={type:"AuthorizationError",name:i.name?`observe "${i.name}"`:"observe",message:"Unauthorized request",payload:i.query,auth:!0},n=C(r);i.authError={token:e.token,error:n};for(let o in i.subscribers){let c=i.subscribers[o];c.onError&&c.onError(n)}}}};var je=require("@based/types");var ot=0,k=(e,s,t,i,r,n,o)=>{let c=++ot;e.requestCallbacks[c]={resolve:i,reject:r,type:s,payload:t,name:n,isRetry:o},s===je.RequestTypes.Call?f(e,[s,n,c,t]):f(e,[s,c,t])};var $e=(e,s)=>{let[,t,i,r]=s,n=e.requestCallbacks[t];n&&(delete e.requestCallbacks[t],r?n.reject(C(r)):n.resolve(i))};var O={};Ce(O,{BasedClient:()=>D});var g=require("@based/types");var le=require("@based/types");var at=e=>typeof e!="undefined"&&e!==null,ct=(e,s,t)=>{if(e.beingAuth=!0,s)e.token=s,e.sendTokenOptions=t;else{for(let i in e.cache)e.subscriptions[i]||delete e.cache[i];delete e.token,delete e.sendTokenOptions}if(e.connected){let i=s?[le.RequestTypes.Token,s,t].filter(at):[le.RequestTypes.Token];e.connection.ws.send(JSON.stringify(i)),_(e),J(e,!0)}},w=ct;var F=require("@based/types");var pe=0,Me=(e,s)=>{let t=++pe;return f(e,[F.RequestTypes.Auth,F.AuthRequestTypes.Login,t,s]),new Promise((i,r)=>{e.authCallbacks[t]={resolve:n=>{w(e,n.token,{refreshToken:n.refreshToken}),i(n)},reject:r}})},Ne=(e,s)=>{let t=++pe;return f(e,[F.RequestTypes.Auth,F.AuthRequestTypes.RenewToken,t,s]),new Promise((i,r)=>{e.authCallbacks[t]={resolve:n=>{w(e,n.token),i(n)},reject:r}})},Le=(e,s)=>{let[,t,i,r]=s,n=e.authCallbacks[t];n&&(delete e.authCallbacks[t],r?n.reject(C(r)):n.resolve(i))},He=e=>{let s=++pe;return f(e,[F.RequestTypes.Auth,F.AuthRequestTypes.Logout,s]),new Promise((t,i)=>{e.authCallbacks[s]={resolve:r=>{w(e),t(r)},reject:i}})};d(O,require("@based/types"));var D=class{constructor(s){this.auth=[];this.subscriptions={};this.cache={};this.requestCallbacks={};this.authCallbacks={};this.connected=!1;this.subscriptionQueue=[];this.queue=[];this.drainInProgress=!1;this.based=s}onClose(){this.connected=!1,Re(this),Fe(this),xe(this),this.based.listeners.disconnect&&this.based.listeners.disconnect.forEach(s=>s())}onReconnect(){if(this.based.listeners.reconnect&&this.based.listeners.reconnect.forEach(s=>s()),this.tracking)for(let s of this.tracking)f(this,[g.RequestTypes.Track,{t:s}])}onOpen(){this.connected=!0,this.based.listeners.connect&&this.based.listeners.connect.forEach(s=>s()),this.token&&w(this,this.token,this.sendTokenOptions),J(this),ae(this)}onData(s){var t;try{let i=JSON.parse(s.data),[r,n,o,c]=i;if(r===g.RequestTypes.Token){this.retryingRenewToken=!1,n.length&&Ge(this,i);for(let a of this.auth)a(!o);this.beingAuth=!1,this.auth=[]}else if(r===g.RequestTypes.Auth)Le(this,i);else if((c==null?void 0:c.code)===g.BasedErrorCodes.TokenExpired&&!this.retryingRenewToken){this.retryingRenewToken=!0;let a=(t=this.sendTokenOptions)==null?void 0:t.refreshToken;Ne(this,{refreshToken:a}).then(u=>{w(this,u.token,this.sendTokenOptions),k(this,r,c==null?void 0:c.payload,this.requestCallbacks[n].resolve,this.requestCallbacks[n].reject)}).catch(u=>{this.requestCallbacks[n].reject(u)})}else r===g.RequestTypes.Set||r===g.RequestTypes.Get||r===g.RequestTypes.Configuration||r===g.RequestTypes.GetConfiguration||r===g.RequestTypes.Call||r===g.RequestTypes.Delete||r===g.RequestTypes.Copy||r===g.RequestTypes.Digest||r===g.RequestTypes.RemoveType||r===g.RequestTypes.RemoveField?$e(this,i):r===g.RequestTypes.Subscription?De(this,i):r===g.RequestTypes.SubscriptionDiff&&Ue(this,i)}catch(i){console.log(i),console.error("Received incorrect data ",s)}}};var de=(e,s)=>{let t;if(e.configuration&&e.configuration.schema)for(let i in e.configuration.schema){let r=e.configuration.schema[i];if(r.prefixToTypeMapping){for(let n in r.prefixToTypeMapping)if(r.prefixToTypeMapping[n]===s){t=n;break}}}return t};var ge=require("@saulx/hash");var ze=require("@based/types"),Je=require("@saulx/hash"),_e=new Set,ut=e=>{if(typeof window!="undefined"){if(_e.has(e))return!1;_e.add(e);try{let s="_ba:"+(0,Je.hashCompact)(e);return localStorage.getItem(s)?!1:(localStorage.setItem(s,"1"),!0)}catch(s){return!1}}return!1},be=(e,s)=>{if(s){let t=`${e}`,i=Object.keys(s).sort();for(let r of i)t+="_"+r+"_"+s[r];return t}else return e},M=(e,s,t,i,r,n,o)=>{let c=be(s,t),a={t:c};o&&(a.r=1),r&&(a.e=1,n&&(a.o=n)),i?(a.s=1,e.tracking.delete(c)):o||(r||(e.tracking||(e.tracking=new Set),e.tracking.add(c)),ut(c)&&(a.u=1)),f(e,[ze.RequestTypes.Track,a])};var fe=class{constructor(s,t,i){this.closed=!1;this.client=s,this.subId=i,this.subscriberId=t}unsubscribe(){this.closed=!0,y(this.client,this.subId,this.subscriberId)}},me=class{constructor(s,t){this.closed=!1;this.client=s,this.subs=t}unsubscribe(){if(!this.closed){this.closed=!0;for(let s of this.subs)s.unsubscribe()}}},X=class{constructor(s,t){this.client=s,this.components=t}subscribe(s,t,i){let r={data:{}},n=[];for(let{key:o,obs:c}of this.components){let a=c.subscribe(u=>{if(o===""){Object.assign(r.data,u),s(r);return}r.data[o]=u,s(r)},t);n.push(a)}return new me(this.client,n)}},P=class{constructor(s,t,i){this.client=s,this.subId=typeof t=="string"?q(i,t):q(t),this.name=typeof t=="string"?t:null,this.payload=typeof t=="string"?i:t}subscribe(s,t,i){let[,r]=E(this.client,this.payload,s,n=>{n&&(console.error(n),t&&t(n))},t,this.subId,this.name);return new fe(this.client,r,this.subId)}};var he={},N={},lt=(e,s)=>{he[e]||(he[e]=!0,setTimeout(()=>{console.info("Drain file q"),he[e]=!1;let t=N[e];N[e]=[];let i=new global.FormData;for(let r of t){let{raw:n,name:o,id:c,file:a,functionName:u}=r,l=`${u||""}|${n?1:0}|${c}|${a.size}${o?`|${o}`:""}`;i.append(l,a)}try{let r=new global.XMLHttpRequest;r.upload.onprogress=n=>{let o=100*(n.loaded||n.position)/(n.totalSize||n.total);console.info(o,"upload...")},r.onerror=n=>{console.error("error!",n,"flap",r.responseText)},r.timeout=1e3*60*60*24,r.onabort=n=>{console.error("abort",n)},r.ontimeout=n=>{console.error("on timeout",n)},r.onload=()=>{let n={};try{n=JSON.parse(r.response),console.info("SUCCESS",n)}catch(o){console.error("something wrong with file upload",o)}},r.open("POST",e+"/file"),r.setRequestHeader("Content-Type","multipart/form-data"),r.setRequestHeader("Authorization",s),r.send(i)}catch(r){console.error("Something wrong with xhr upload",r)}},500))},Ke=async(e,s,t,i,r,n,o)=>{N[t]||(N[t]=[]),N[t].push({file:s,id:i,url:t,raw:r,name:n,functionName:o}),lt(t,e.getToken())};var We=H(require("@based/get-service")),Y={},Z={},pt=async(e,s)=>{if(s.url)return typeof s.url=="string"?s.url:await s.url();if(!e.opts.env&&e.opts.url)return typeof e.opts.url=="string"?e.opts.url:await e.opts.url();let{env:t,project:i,org:r}=e.opts,n=t+"/"+i+"/"+r+"/"+e.opts.cluster;if(Y[n])return Y[n];if(Z[n])return(await Z[n]).url;let o=await(Z[n]=(0,We.default)({env:t,project:i,org:r,name:"@based/hub",key:"file-upload",optionalKey:!0},0,e.opts.cluster));return delete Z[n],setTimeout(()=>{delete Y[n]},2e3),Y[n]=o.url},Ve=pt;var Xe=H(require("cross-fetch")),ee=(e,s,t)=>((0,Xe.default)(s,{method:"POST",cache:"no-cache",headers:{"Content-Type":t.mimeType||"text/plain","File-Id":t.id,"File-Is-Raw":t.raw?"1":"0","File-Name":t.name||"","Function-Name":t.functionName||"",Authorization:e.getToken()},body:t.contents}).then(i=>{}).catch(i=>{console.error("Error while uploading file",i)}),{id:t.id});var I=require("./file/stream"),te=typeof window!="undefined",dt=e=>"src"in e&&typeof e.src=="string",bt=e=>"path"in e&&typeof e.path=="string",ft=e=>"contents"in e&&(0,I.isStream)(e.contents),Ye=async(e,s)=>{if(dt(s)){let r=s.id?{$id:s.id}:{type:"file"};return s.src?(r.src=s.src,r.origin=s.src,s.size&&(r.size=s.size),s.name&&(r.name=s.name),s.parents&&(r.parents=s.parents),await e.set(r)):void 0}let t=s.id;if(!t){let r={type:"file",progress:0};s.name?r.name=s.name:global.File&&"contents"in s&&s.contents instanceof global.File&&(r.name=s.contents.name),s.parents&&(r.parents=s.parents),t=(await e.set(r)).id}s.id=t;let i=(await Ve(e,s)).replace(/^ws/,"http");if(bt(s))return(0,I.uploadFilePath)(e,i,s),{id:t};if(ft(s))return(0,I.uploadFileStream)(e,i,s),{id:t};if(s.contents instanceof ArrayBuffer)return s.contents=te?new global.Blob([s.contents],{type:s.mimeType||"text/plain"}):global.Buffer.from(s.contents),ee(e,i+"/file",s);if(te&&s.contents instanceof global.Blob)return s.mimeType||(s.mimeType=s.contents.type),ee(e,i+"/file",s);if(typeof s.contents=="string"||!te&&s.contents instanceof global.Buffer)return ee(e,i+"/file",s);if(te&&s.contents instanceof File)return Ke(e,s.contents,i,s.id,s.raw||!1,s.name,s.functionName),{id:t};throw s.id||await e.delete({$id:t}),new Error(`Invalid contents for file api ${JSON.stringify(s,null,2)}`)};var re=H(require("@based/get-service")),ye=require("@saulx/utils"),S=require("@based/graphql");d(m,require("@based/types"),module.exports);var se=class extends we{constructor(t){super();this.client=new D(this),Object.defineProperty(this,"client",{enumerable:!1,writable:!0}),t&&t.url&&this.connect(t.url),this.graphql={query:this.gqlQuery.bind(this),live:this.gqlLive.bind(this)}}connect(t){!t&&this._url?this.client.connection||(this.client.connection=oe(this.client,this._url)):(this._url=t,this.client.connection=oe(this.client,t))}disconnect(){this.client.connection&&(this.client.connection.disconnected=!0,this.client.connection.destroy(),this.client.connection.ws&&this.client.connection.ws.close(),this.client.connected&&this.client.onClose(),delete this.client.connection),this.client.connected=!1}observeUntil(t,i,r){return new Promise((n,o)=>{let c,a=!1;this.observe(t,(u,l)=>{r&&r(u,l),i(u,l)&&(a=!0,c&&c(),n(u))}).then(u=>{a?c():c=u}).catch(u=>{o(u)})})}gql(t,...i){typeof t=="string"&&(t=[t]);let r=t[0];return i.forEach((n,o)=>{n&&n.kind==="Document"?r+=n.loc.source.body:r+=n,r+=t[o+1]}),(0,S.createOperations)({schemas:this.client.configuration.schema},(0,S.parseGraphql)(r))}gqlDb(t="default"){return(i,...r)=>{typeof i=="string"&&(i=[i]);let n=i[0];return r.forEach((o,c)=>{o&&o.kind==="Document"?n+=o.loc.source.body:n+=o,n+=i[c+1]}),(0,S.createOperations)({schemas:this.client.configuration.schema,db:t},(0,S.parseGraphql)(n))}}observe(t,i,r,n){return typeof t=="string"?new Promise((o,c)=>{let a=typeof i=="function",u=a?i:r,l=a?r:n;E(this.client,a?void 0:i,u,(p,b,h,T,R)=>{p&&!R?c(p):o(()=>{y(this.client,b,h)})},l,void 0,t)}):new Promise((o,c)=>{E(this.client,t,i,(a,u,l,p,b)=>{a&&!b?c(a):o(()=>{y(this.client,u,l)})},r)})}createObservable(t,i){return typeof t=="string"?new P(this.client,t,i):new P(this.client,t)}observeSchema(t,i,r){return new Promise((n,o)=>{let c=typeof t=="string"?t:"default",a=typeof t=="string"?i:t,u=typeof t=="string"?r:i;E(this.client,{$subscribe_schema:c},(l,p)=>{this.client.configuration||(this.client.configuration={dbs:[],schema:{},functions:{}}),this.client.configuration.schema[c]=l,a(l,p)},(l,p,b,h,T)=>{l&&!T?o(l):n(()=>{y(this.client,p,b)})},u)})}get(t,i){return typeof t=="string"?new Promise((r,n)=>{z(this.client,i,(o,c,a,u)=>{o?n(o):r(u)},0,t)}):new Promise((r,n)=>{k(this.client,v.RequestTypes.Get,t,r,n)})}file(t){return global.File&&t instanceof File&&(t={contents:t}),Ye(this,t)}call(t,i){return new Promise((r,n)=>{k(this.client,v.RequestTypes.Call,i,r,n,t)})}async id(t,i){let r=de(this.client,t);if(r||(await this.schema(),r=de(this.client,t)),!r)throw C({message:`Type does not exist ${t}`,type:"Invalid type",payload:i?{type:t,opts:i}:{type:t}});if(i){let n=(0,ge.hashCompact)(i,8,!0);return r+n}else return r+(0,ge.hashCompact)(Math.floor(Math.random()*99999999999)+""+Date.now())}digest(t){return new Promise((i,r)=>{k(this.client,v.RequestTypes.Digest,t,i,r)})}set(t){return new Promise((i,r)=>{k(this.client,v.RequestTypes.Set,t,i,r)})}copy(t){return new Promise((i,r)=>{k(this.client,v.RequestTypes.Copy,t,i,r)})}async gqlQuery(t,i={}){let r;typeof t=="string"?r=this.gql(t):r=t;try{if(r=(0,S.handleGraphqlVariables)(r,r,i),r.opType==="GET"){let o={$db:r.db},c=[];for(let u in r.ops){if(r.ops[u].fnObserve){let l=await this.get(r.ops[u].fnObserve.name,r.ops[u].fnObserve.payload);c.push({key:u,reply:l});continue}r.ops[u].get&&(o[u]=r.ops[u].get)}let a=await this.get(o);for(let{key:u,reply:l}of c)a[u]=l;return{data:a}}let n={};return await Promise.all(Object.entries(r.ops).map(async([o,c])=>{var p,b,h,T,R;if(c.delete){n[o]=await this.delete(c.delete);return}else if(c.fnCall){n[o]=await this.call(c.fnCall.name,c.fnCall.payload);return}let{id:a}=await this.set(c.set);if(!c.get){let A={};A.id=a;let ve=(R=(T=(h=(b=(p=this.client)==null?void 0:p.configuration)==null?void 0:b.schema)==null?void 0:h[r.db])==null?void 0:T.prefixToTypeMapping)==null?void 0:R[a.slice(0,2)];ve&&(A.type=ve),n[o]=A;return}let u=(0,ye.deepCopy)(c.get);u.$id=a;let l=await this.get(u);n[o]=l})),{data:n}}catch(n){return{errors:[{message:n.message,locations:n.locations}]}}}async gqlLive(t,i={}){let r;if(typeof t=="string"?r=this.gql(t):r=t,r=(0,S.handleGraphqlVariables)(r,r,i),r.opType==="GET"){let o=[],c={};for(let a in r.ops){if(r.ops[a].fnObserve){let{name:u,payload:l}=r.ops[a].fnObserve;o.push({key:a,fn:{name:u,payload:l}});continue}c[a]=r.ops[a].get}if(o!=null&&o.length){let a=o.map(l=>({obs:new P(this.client,l.fn.name,l.fn.payload),key:l.key})),u=new P(this.client,Oe({$db:r.db},c));return a.push({key:"",obs:u}),new X(this.client,a)}return new P(this.client,{$db:r.db,data:c})}let n={};return await Promise.all(Object.entries(r.ops).map(async([o,c])=>{if(c.delete){n[o]=await this.delete(c.delete);return}else if(c.fnCall){n[o]=await this.call(c.fnCall.name,c.fnCall.payload);return}let{id:a}=await this.set(c.set),u=(0,ye.deepCopy)(c.get);u.$id=a,n[o]=u})),new P(this.client,{$db:r.db,data:n})}analytics(t,i){return new Promise((r,n)=>{i?E(this.client,t,i,(o,c,a,u,l)=>{o&&!l?n(o):r(()=>{y(this.client,c,a)})},o=>console.error(o),void 0,"analytics"):z(this.client,t,(o,c,a,u)=>{o?n(o):((0,v.isAnalyticsHistoryOpts)(t)||(0,v.isAnalyticsTypesOpts)(t),r(u))},0,"analytics")})}track(t,i){M(this.client,t,i)}clearAnalytics(t,i){M(this.client,t,i,!1,!1,void 0,!0)}untrack(t,i){M(this.client,t,i,!0)}event(t,i,r){M(this.client,t,i,!1,!0,r)}delete(t){return new Promise((i,r)=>{k(this.client,v.RequestTypes.Delete,t,i,r)})}schema(){return new Promise((t,i)=>{let r=n=>{this.client.configuration=n,t(n)};k(this.client,v.RequestTypes.GetConfiguration,0,r,i)})}removeType(t,i="default"){return new Promise((r,n)=>{k(this.client,v.RequestTypes.RemoveType,{type:t,db:i},r,n)})}removeField(t,i,r="default"){return new Promise((n,o)=>{!i||i.length===0?o(new Error("Path cannot be empty")):(Array.isArray(i)||(i=[i]),k(this.client,v.RequestTypes.RemoveField,{type:t,db:r,path:i},n,o))})}updateSchema(t){return new Promise((i,r)=>{k(this.client,v.RequestTypes.Configuration,t,i,r)})}getToken(){return this.client.token}auth(t,i){return new Promise(r=>{this.client.auth.push(r),(t&&t!==this.client.token||t===!1&&this.client.token)&&(typeof t=="string"?w(this.client,t,i):w(this.client),this.emit("auth",t))})}async login(t){return Me(this.client,t)}logout(){return He(this.client)}},mt=(e,s)=>{if(s){let t;e+=/\?/.test(e)?"&":"?";for(let i in s){let r=s[i];e+=t?`&${i}=${r}`:`${i}=${r}`,t=!0}}return e},ht=(e,s=se)=>{let{env:t,project:i,org:r,url:n,key:o,name:c="@based/hub",cluster:a,params:u}=e;if(n||(a=e.cluster=(0,re.getClusterUrl)(a),n=async()=>{let{url:l}=await(0,re.default)({env:t,project:i,org:r,key:o,name:c},0,a);return mt(l,u)}),n){let l=new s;return l.opts=e,l.connect(n),l}},gt=ht;0&&(module.exports={Based,BasedClient,BasedGraphQL,Observable,addGetSubscriber,addRequest,addSubscriber,createGraphqlOperations,generateSubscriptionId,generateTrackingKey,handleGraphqlVariables,parseGraphql,removeSubscriber});
|
|
15
|
+
`),delete e.cache[t],f(e,[V.RequestTypes.SendSubscriptionData,t]);else{c.checksum=n;for(let u in o.subscribers){let l=o.subscribers[u];l.onInitial&&(l.onInitial(null,Number(t),Number(u),c.value),delete l.onInitial,l.onData||y(e,t,Number(u))),l.onData&&l.onData(c.value,c.checksum)}}}}};var Ge=(e,s)=>{for(let t of s[1]){delete e.cache[t];let i=e.subscriptions[t];if(i){let r={type:"AuthorizationError",name:i.name?`observe "${i.name}"`:"observe",message:"Unauthorized request",payload:i.query,auth:!0},n=C(r);i.authError={token:e.token,error:n};for(let o in i.subscribers){let c=i.subscribers[o];c.onError&&c.onError(n)}}}};var je=require("@based/types");var ot=0,k=(e,s,t,i,r,n,o)=>{let c=++ot;e.requestCallbacks[c]={resolve:i,reject:r,type:s,payload:t,name:n,isRetry:o},s===je.RequestTypes.Call?f(e,[s,n,c,t]):f(e,[s,c,t])};var $e=(e,s)=>{let[,t,i,r]=s,n=e.requestCallbacks[t];n&&(delete e.requestCallbacks[t],r?n.reject(C(r)):n.resolve(i))};var O={};Ce(O,{BasedClient:()=>D});var g=require("@based/types");var le=require("@based/types");var at=e=>typeof e!="undefined"&&e!==null,ct=(e,s,t)=>{if(e.beingAuth=!0,s)e.token=s,e.sendTokenOptions=t;else{for(let i in e.cache)e.subscriptions[i]||delete e.cache[i];delete e.token,delete e.sendTokenOptions}if(e.connected){let i=s?[le.RequestTypes.Token,s,t].filter(at):[le.RequestTypes.Token];e.connection.ws.send(JSON.stringify(i)),_(e),J(e,!0)}},w=ct;var F=require("@based/types");var pe=0,Me=(e,s)=>{let t=++pe;return f(e,[F.RequestTypes.Auth,F.AuthRequestTypes.Login,t,s]),new Promise((i,r)=>{e.authCallbacks[t]={resolve:n=>{w(e,n.token,{refreshToken:n.refreshToken}),i(n)},reject:r}})},Ne=(e,s)=>{let t=++pe;return f(e,[F.RequestTypes.Auth,F.AuthRequestTypes.RenewToken,t,s]),new Promise((i,r)=>{e.authCallbacks[t]={resolve:n=>{w(e,n.token),i(n)},reject:r}})},Le=(e,s)=>{let[,t,i,r]=s,n=e.authCallbacks[t];n&&(delete e.authCallbacks[t],r?n.reject(C(r)):n.resolve(i))},He=e=>{let s=++pe;return f(e,[F.RequestTypes.Auth,F.AuthRequestTypes.Logout,s]),new Promise((t,i)=>{e.authCallbacks[s]={resolve:r=>{w(e),t(r)},reject:i}})};d(O,require("@based/types"));var D=class{constructor(s){this.auth=[];this.subscriptions={};this.cache={};this.requestCallbacks={};this.authCallbacks={};this.connected=!1;this.subscriptionQueue=[];this.queue=[];this.drainInProgress=!1;this.based=s}onClose(){this.connected=!1,Re(this),Fe(this),xe(this),this.based.listeners.disconnect&&this.based.listeners.disconnect.forEach(s=>s())}onReconnect(){if(this.based.listeners.reconnect&&this.based.listeners.reconnect.forEach(s=>s()),this.tracking)for(let s of this.tracking)f(this,[g.RequestTypes.Track,{t:s}])}onOpen(){this.connected=!0,this.based.listeners.connect&&this.based.listeners.connect.forEach(s=>s()),this.token&&w(this,this.token,this.sendTokenOptions),J(this),ae(this)}onData(s){var t;try{let i=JSON.parse(s.data),[r,n,o,c]=i;if(r===g.RequestTypes.Token){this.retryingRenewToken=!1,n.length&&Ge(this,i);for(let a of this.auth)a(!o);this.beingAuth=!1,this.auth=[]}else if(r===g.RequestTypes.Auth)Le(this,i);else if((c==null?void 0:c.code)===g.BasedErrorCodes.TokenExpired&&!this.retryingRenewToken){this.retryingRenewToken=!0;let a=(t=this.sendTokenOptions)==null?void 0:t.refreshToken;Ne(this,{refreshToken:a}).then(u=>{w(this,u.token,this.sendTokenOptions),k(this,r,c==null?void 0:c.payload,this.requestCallbacks[n].resolve,this.requestCallbacks[n].reject)}).catch(u=>{this.requestCallbacks[n].reject(u)})}else r===g.RequestTypes.Set||r===g.RequestTypes.Get||r===g.RequestTypes.Configuration||r===g.RequestTypes.GetConfiguration||r===g.RequestTypes.Call||r===g.RequestTypes.Delete||r===g.RequestTypes.Copy||r===g.RequestTypes.Digest||r===g.RequestTypes.RemoveType||r===g.RequestTypes.RemoveField?$e(this,i):r===g.RequestTypes.Subscription?De(this,i):r===g.RequestTypes.SubscriptionDiff&&Ue(this,i)}catch(i){console.log(i),console.error("Received incorrect data ",s)}}};var de=(e,s)=>{let t;if(e.configuration&&e.configuration.schema)for(let i in e.configuration.schema){let r=e.configuration.schema[i];if(r.prefixToTypeMapping){for(let n in r.prefixToTypeMapping)if(r.prefixToTypeMapping[n]===s){t=n;break}}}return t};var ge=require("@saulx/hash");var ze=require("@based/types"),Je=require("@saulx/hash"),_e=new Set,ut=e=>{if(typeof window!="undefined"){if(_e.has(e))return!1;_e.add(e);try{let s="_ba:"+(0,Je.hashCompact)(e);return localStorage.getItem(s)?!1:(localStorage.setItem(s,"1"),!0)}catch(s){return!1}}return!1},be=(e,s)=>{if(s){let t=`${e}`,i=Object.keys(s).sort();for(let r of i)t+="_"+r+"_"+s[r];return t}else return e},M=(e,s,t,i,r,n,o)=>{let c=be(s,t),a={t:c};o&&(a.r=1),r&&(a.e=1,n&&(a.o=n)),i?(a.s=1,e.tracking.delete(c)):o||(r||(e.tracking||(e.tracking=new Set),e.tracking.add(c)),ut(c)&&(a.u=1)),f(e,[ze.RequestTypes.Track,a])};var fe=class{constructor(s,t,i){this.closed=!1;this.client=s,this.subId=i,this.subscriberId=t}unsubscribe(){this.closed=!0,y(this.client,this.subId,this.subscriberId)}},me=class{constructor(s,t){this.closed=!1;this.client=s,this.subs=t}unsubscribe(){if(!this.closed){this.closed=!0;for(let s of this.subs)s.unsubscribe()}}},X=class{constructor(s,t){this.client=s,this.components=t}subscribe(s,t,i){let r={data:{}},n=[];for(let{key:o,obs:c}of this.components){let a=c.subscribe(u=>{if(o===""){Object.assign(r.data,u),s(r);return}r.data[o]=u,s(r)},t);n.push(a)}return new me(this.client,n)}},P=class{constructor(s,t,i){this.client=s,this.subId=typeof t=="string"?q(i,t):q(t),this.name=typeof t=="string"?t:null,this.payload=typeof t=="string"?i:t}subscribe(s,t,i){let[,r]=E(this.client,this.payload,s,n=>{n&&(console.error(n),t&&t(n))},t,this.subId,this.name);return new fe(this.client,r,this.subId)}};var he={},N={},lt=(e,s)=>{he[e]||(he[e]=!0,setTimeout(()=>{console.info("Drain file q"),he[e]=!1;let t=N[e];N[e]=[];let i=new global.FormData;for(let r of t){let{raw:n,name:o,id:c,file:a,functionName:u}=r,l=`${u||""}|${n?1:0}|${c}|${a.size}${o?`|${o}`:""}`;i.append(l,a)}try{let r=new global.XMLHttpRequest;r.upload.onprogress=n=>{let o=100*(n.loaded||n.position)/(n.totalSize||n.total);console.info(o,"upload...")},r.onerror=n=>{console.error("error!",n,"flap",r.responseText)},r.timeout=1e3*60*60*24,r.onabort=n=>{console.error("abort",n)},r.ontimeout=n=>{console.error("on timeout",n)},r.onload=()=>{let n={};try{n=JSON.parse(r.response),console.info("SUCCESS",n)}catch(o){console.error("something wrong with file upload",o)}},r.open("POST",e+"/file"),r.setRequestHeader("Content-Type","multipart/form-data"),r.setRequestHeader("Authorization",s),r.send(i)}catch(r){console.error("Something wrong with xhr upload",r)}},500))},Ke=async(e,s,t,i,r,n,o)=>{N[t]||(N[t]=[]),N[t].push({file:s,id:i,url:t,raw:r,name:n,functionName:o}),lt(t,e.getToken())};var We=H(require("@based/get-service")),Y={},Z={},pt=async(e,s)=>{if(s.url)return typeof s.url=="string"?s.url:await s.url();if(!e.opts.env&&e.opts.url)return typeof e.opts.url=="string"?e.opts.url:await e.opts.url();let{env:t,project:i,org:r}=e.opts,n=t+"/"+i+"/"+r+"/"+e.opts.cluster;if(Y[n])return Y[n];if(Z[n])return(await Z[n]).url;let o=await(Z[n]=(0,We.default)({env:t,project:i,org:r,name:"@based/hub",key:"file-upload",optionalKey:!0},0,e.opts.cluster));return delete Z[n],setTimeout(()=>{delete Y[n]},2e3),Y[n]=o.url},Ve=pt;var Xe=H(require("cross-fetch")),ee=(e,s,t)=>((0,Xe.default)(s,{method:"POST",cache:"no-cache",headers:{"Content-Type":t.mimeType||"text/plain","File-Id":t.id,"File-Is-Raw":t.raw?"1":"0","File-Name":t.name||"","Function-Name":t.functionName||"",Authorization:e.getToken()},body:t.contents}).then(i=>{}).catch(i=>{console.error("Error while uploading file",i)}),{id:t.id});var I=require("./file/stream"),te=typeof window!="undefined",dt=e=>"src"in e&&typeof e.src=="string",bt=e=>"path"in e&&typeof e.path=="string",ft=e=>"contents"in e&&(0,I.isStream)(e.contents),Ye=async(e,s)=>{if(dt(s)){let r=s.id?{$id:s.id}:{type:"file"};return s.src?(r.src=s.src,r.origin=s.src,s.size&&(r.size=s.size),s.name&&(r.name=s.name),s.parents&&(r.parents=s.parents),await e.set(r)):void 0}let t=s.id;if(!t){let r={type:"file",progress:0};s.name?r.name=s.name:global.File&&"contents"in s&&s.contents instanceof global.File&&(r.name=s.contents.name),s.parents&&(r.parents=s.parents),t=(await e.set(r)).id}s.id=t;let i=(await Ve(e,s)).replace(/^ws/,"http");if(bt(s))return(0,I.uploadFilePath)(e,i,s),{id:t};if(ft(s))return(0,I.uploadFileStream)(e,i,s),{id:t};if(s.contents instanceof ArrayBuffer)return s.contents=te?new global.Blob([s.contents],{type:s.mimeType||"text/plain"}):global.Buffer.from(s.contents),ee(e,i+"/file",s);if(te&&s.contents instanceof global.Blob)return s.mimeType||(s.mimeType=s.contents.type),ee(e,i+"/file",s);if(typeof s.contents=="string"||!te&&s.contents instanceof global.Buffer)return ee(e,i+"/file",s);if(te&&s.contents instanceof File)return Ke(e,s.contents,i,s.id,s.raw||!1,s.name,s.functionName),{id:t};throw s.id||await e.delete({$id:t}),new Error(`Invalid contents for file api ${JSON.stringify(s,null,2)}`)};var re=H(require("@based/get-service")),ye=require("@saulx/utils"),S=require("@based/graphql");d(m,require("@based/types"),module.exports);console.log("xxx");var se=class extends we{constructor(t){super();this.client=new D(this),Object.defineProperty(this,"client",{enumerable:!1,writable:!0}),t&&t.url&&this.connect(t.url),this.graphql={query:this.gqlQuery.bind(this),live:this.gqlLive.bind(this)}}connect(t){!t&&this._url?this.client.connection||(this.client.connection=oe(this.client,this._url)):(this._url=t,this.client.connection=oe(this.client,t))}disconnect(){this.client.connection&&(this.client.connection.disconnected=!0,this.client.connection.destroy(),this.client.connection.ws&&this.client.connection.ws.close(),this.client.connected&&this.client.onClose(),delete this.client.connection),this.client.connected=!1}observeUntil(t,i,r){return new Promise((n,o)=>{let c,a=!1;this.observe(t,(u,l)=>{r&&r(u,l),i(u,l)&&(a=!0,c&&c(),n(u))}).then(u=>{a?c():c=u}).catch(u=>{o(u)})})}gql(t,...i){typeof t=="string"&&(t=[t]);let r=t[0];return i.forEach((n,o)=>{n&&n.kind==="Document"?r+=n.loc.source.body:r+=n,r+=t[o+1]}),(0,S.createOperations)({schemas:this.client.configuration.schema},(0,S.parseGraphql)(r))}gqlDb(t="default"){return(i,...r)=>{typeof i=="string"&&(i=[i]);let n=i[0];return r.forEach((o,c)=>{o&&o.kind==="Document"?n+=o.loc.source.body:n+=o,n+=i[c+1]}),(0,S.createOperations)({schemas:this.client.configuration.schema,db:t},(0,S.parseGraphql)(n))}}observe(t,i,r,n){return typeof t=="string"?new Promise((o,c)=>{let a=typeof i=="function",u=a?i:r,l=a?r:n;E(this.client,a?void 0:i,u,(p,b,h,T,R)=>{p&&!R?c(p):o(()=>{y(this.client,b,h)})},l,void 0,t)}):new Promise((o,c)=>{E(this.client,t,i,(a,u,l,p,b)=>{a&&!b?c(a):o(()=>{y(this.client,u,l)})},r)})}createObservable(t,i){return typeof t=="string"?new P(this.client,t,i):new P(this.client,t)}observeSchema(t,i,r){return new Promise((n,o)=>{let c=typeof t=="string"?t:"default",a=typeof t=="string"?i:t,u=typeof t=="string"?r:i;E(this.client,{$subscribe_schema:c},(l,p)=>{this.client.configuration||(this.client.configuration={dbs:[],schema:{},functions:{}}),this.client.configuration.schema[c]=l,a(l,p)},(l,p,b,h,T)=>{l&&!T?o(l):n(()=>{y(this.client,p,b)})},u)})}get(t,i){return typeof t=="string"?new Promise((r,n)=>{z(this.client,i,(o,c,a,u)=>{o?n(o):r(u)},0,t)}):new Promise((r,n)=>{k(this.client,v.RequestTypes.Get,t,r,n)})}file(t){return global.File&&t instanceof File&&(t={contents:t}),Ye(this,t)}call(t,i){return new Promise((r,n)=>{k(this.client,v.RequestTypes.Call,i,r,n,t)})}async id(t,i){let r=de(this.client,t);if(r||(await this.schema(),r=de(this.client,t)),!r)throw C({message:`Type does not exist ${t}`,type:"Invalid type",payload:i?{type:t,opts:i}:{type:t}});if(i){let n=(0,ge.hashCompact)(i,8,!0);return r+n}else return r+(0,ge.hashCompact)(Math.floor(Math.random()*99999999999)+""+Date.now())}digest(t){return new Promise((i,r)=>{k(this.client,v.RequestTypes.Digest,t,i,r)})}set(t){return new Promise((i,r)=>{k(this.client,v.RequestTypes.Set,t,i,r)})}copy(t){return new Promise((i,r)=>{k(this.client,v.RequestTypes.Copy,t,i,r)})}async gqlQuery(t,i={}){let r;typeof t=="string"?r=this.gql(t):r=t;try{if(r=(0,S.handleGraphqlVariables)(r,r,i),r.opType==="GET"){let o={$db:r.db},c=[];for(let u in r.ops){if(r.ops[u].fnObserve){let l=await this.get(r.ops[u].fnObserve.name,r.ops[u].fnObserve.payload);c.push({key:u,reply:l});continue}r.ops[u].get&&(o[u]=r.ops[u].get)}let a=await this.get(o);for(let{key:u,reply:l}of c)a[u]=l;return{data:a}}let n={};return await Promise.all(Object.entries(r.ops).map(async([o,c])=>{var p,b,h,T,R;if(c.delete){n[o]=await this.delete(c.delete);return}else if(c.fnCall){n[o]=await this.call(c.fnCall.name,c.fnCall.payload);return}let{id:a}=await this.set(c.set);if(!c.get){let A={};A.id=a;let ve=(R=(T=(h=(b=(p=this.client)==null?void 0:p.configuration)==null?void 0:b.schema)==null?void 0:h[r.db])==null?void 0:T.prefixToTypeMapping)==null?void 0:R[a.slice(0,2)];ve&&(A.type=ve),n[o]=A;return}let u=(0,ye.deepCopy)(c.get);u.$id=a;let l=await this.get(u);n[o]=l})),{data:n}}catch(n){return{errors:[{message:n.message,locations:n.locations}]}}}async gqlLive(t,i={}){let r;if(typeof t=="string"?r=this.gql(t):r=t,r=(0,S.handleGraphqlVariables)(r,r,i),r.opType==="GET"){let o=[],c={};for(let a in r.ops){if(r.ops[a].fnObserve){let{name:u,payload:l}=r.ops[a].fnObserve;o.push({key:a,fn:{name:u,payload:l}});continue}c[a]=r.ops[a].get}if(o!=null&&o.length){let a=o.map(l=>({obs:new P(this.client,l.fn.name,l.fn.payload),key:l.key})),u=new P(this.client,Oe({$db:r.db},c));return a.push({key:"",obs:u}),new X(this.client,a)}return new P(this.client,{$db:r.db,data:c})}let n={};return await Promise.all(Object.entries(r.ops).map(async([o,c])=>{if(c.delete){n[o]=await this.delete(c.delete);return}else if(c.fnCall){n[o]=await this.call(c.fnCall.name,c.fnCall.payload);return}let{id:a}=await this.set(c.set),u=(0,ye.deepCopy)(c.get);u.$id=a,n[o]=u})),new P(this.client,{$db:r.db,data:n})}analytics(t,i){return new Promise((r,n)=>{i?E(this.client,t,i,(o,c,a,u,l)=>{o&&!l?n(o):r(()=>{y(this.client,c,a)})},o=>console.error(o),void 0,"analytics"):z(this.client,t,(o,c,a,u)=>{o?n(o):((0,v.isAnalyticsHistoryOpts)(t)||(0,v.isAnalyticsTypesOpts)(t),r(u))},0,"analytics")})}track(t,i){M(this.client,t,i)}clearAnalytics(t,i){M(this.client,t,i,!1,!1,void 0,!0)}untrack(t,i){M(this.client,t,i,!0)}event(t,i,r){M(this.client,t,i,!1,!0,r)}delete(t){return new Promise((i,r)=>{k(this.client,v.RequestTypes.Delete,t,i,r)})}schema(){return new Promise((t,i)=>{let r=n=>{this.client.configuration=n,t(n)};k(this.client,v.RequestTypes.GetConfiguration,0,r,i)})}removeType(t,i="default"){return new Promise((r,n)=>{k(this.client,v.RequestTypes.RemoveType,{type:t,db:i},r,n)})}removeField(t,i,r="default"){return new Promise((n,o)=>{!i||i.length===0?o(new Error("Path cannot be empty")):(Array.isArray(i)||(i=[i]),k(this.client,v.RequestTypes.RemoveField,{type:t,db:r,path:i},n,o))})}updateSchema(t){return new Promise((i,r)=>{k(this.client,v.RequestTypes.Configuration,t,i,r)})}getToken(){return this.client.token}auth(t,i){return new Promise(r=>{this.client.auth.push(r),(t&&t!==this.client.token||t===!1&&this.client.token)&&(typeof t=="string"?w(this.client,t,i):w(this.client),this.emit("auth",t))})}async login(t){return Me(this.client,t)}logout(){return He(this.client)}},mt=(e,s)=>{if(s){let t;e+=/\?/.test(e)?"&":"?";for(let i in s){let r=s[i];e+=t?`&${i}=${r}`:`${i}=${r}`,t=!0}}return e},ht=(e,s=se)=>{let{env:t,project:i,org:r,url:n,key:o,name:c="@based/hub",cluster:a,params:u}=e;if(n||(a=e.cluster=(0,re.getClusterUrl)(a),n=async()=>{let{url:l}=await(0,re.default)({env:t,project:i,org:r,key:o,name:c},0,a);return mt(l,u)}),n){let l=new s;return l.opts=e,l.connect(n),l}},gt=ht;0&&(module.exports={Based,BasedClient,BasedGraphQL,Observable,addGetSubscriber,addRequest,addSubscriber,createGraphqlOperations,generateSubscriptionId,generateTrackingKey,handleGraphqlVariables,parseGraphql,removeSubscriber});
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
File without changes
|
package/dist/observable/index.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/printBasedObject.js
CHANGED
|
File without changes
|
|
File without changes
|
package/dist/queue.d.ts
CHANGED
|
File without changes
|
package/dist/queue.js
CHANGED
|
File without changes
|
package/dist/queue.js.map
CHANGED
|
File without changes
|
package/dist/request.d.ts
CHANGED
|
File without changes
|
package/dist/request.js
CHANGED
|
File without changes
|
package/dist/request.js.map
CHANGED
|
File without changes
|
package/dist/selvaTypes/get.d.ts
CHANGED
|
File without changes
|
package/dist/selvaTypes/get.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/selvaTypes/set.d.ts
CHANGED
|
File without changes
|
package/dist/selvaTypes/set.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/token.d.ts
CHANGED
|
File without changes
|
package/dist/token.js
CHANGED
|
File without changes
|
package/dist/token.js.map
CHANGED
|
File without changes
|
package/dist/track.d.ts
CHANGED
|
File without changes
|
package/dist/track.js
CHANGED
|
File without changes
|
package/dist/track.js.map
CHANGED
|
File without changes
|
|
File without changes
|
package/dist/websocket/index.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/dist/websocket/types.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/docs/schema.md
CHANGED
|
@@ -110,6 +110,7 @@ The possible types and their properties are described here:
|
|
|
110
110
|
| `reference` | Holds a node ID. |
|
|
111
111
|
| `references` | Holds an array of node IDs |
|
|
112
112
|
| `object` | This type allows for nested structures, and its fields are then indexed, meaning they can then be referenced directly in a query, later. |
|
|
113
|
+
| `array` | A list of items of one type, which must be specified in the schema. Special operators such as `$push`, `$assing` `$insert`, `$remove` can be used to manipulate the array. |
|
|
113
114
|
| `record` | A record works similarly to an Hashmap, as in, the schema specify what type of value the record can take, and if the user tries to set a different one, it throws an error. See later for more examples. |
|
|
114
115
|
| `set` | A mathematical set. Holds a list of **unique** values of a single basic type (meaning it can't hold objects or arrays), specified in the `item` field. |
|
|
115
116
|
| `json` | This can hold anything and formats it to JSON, returning it in the most appropriate type when queried. Unlike the `oject` type, you can't query the fields if you decide to store a structure in it. Equivalent to storing something with `JSON.stringify()` and returning it with `JSON.parse()`. |
|
|
@@ -170,9 +171,32 @@ myType: {
|
|
|
170
171
|
}
|
|
171
172
|
```
|
|
172
173
|
|
|
174
|
+
#### `array` type
|
|
175
|
+
|
|
176
|
+
When setting a field type to `array`, the schema must include another special field called `items` where the type of the array is specified. This can be any other schema type, defined appropriately (i.e. `object`s must have `properties` and so on).
|
|
177
|
+
|
|
178
|
+
```js
|
|
179
|
+
thing: {
|
|
180
|
+
prefix: 'th',
|
|
181
|
+
fields: {
|
|
182
|
+
title: { type: 'text' },
|
|
183
|
+
myarray: {
|
|
184
|
+
type: 'array',
|
|
185
|
+
items: {
|
|
186
|
+
type: 'object',
|
|
187
|
+
properties: {
|
|
188
|
+
title: { type: 'text' },
|
|
189
|
+
name: { type: 'string' },
|
|
190
|
+
},
|
|
191
|
+
},
|
|
192
|
+
},
|
|
193
|
+
},
|
|
194
|
+
}
|
|
195
|
+
```
|
|
196
|
+
|
|
173
197
|
#### `set` type
|
|
174
198
|
|
|
175
|
-
When setting a field type to `set`, the schema must include another special field called `items` where the type of the set is specified.
|
|
199
|
+
When setting a field type to `set`, the schema must include another special field called `items` where the type of the set is specified.
|
|
176
200
|
|
|
177
201
|
```js
|
|
178
202
|
myType: {
|
package/docs/set.md
CHANGED
|
@@ -25,6 +25,13 @@ Operators can act at the **node** level or at the **individual field** level.
|
|
|
25
25
|
- `$delete`
|
|
26
26
|
- [`object` and `record` type field operators](#object-and-record-type-field-operators)
|
|
27
27
|
- `$merge`
|
|
28
|
+
- [`array` type field operators](#array-type-field-operators)
|
|
29
|
+
- `$push`
|
|
30
|
+
- `$insert`
|
|
31
|
+
- `$assign`
|
|
32
|
+
- `$remove`
|
|
33
|
+
|
|
34
|
+
---
|
|
28
35
|
|
|
29
36
|
## Node level operators
|
|
30
37
|
|
|
@@ -106,9 +113,9 @@ This allows to later _get_ the node by using the alias instead of the ID.
|
|
|
106
113
|
{
|
|
107
114
|
aliases: []
|
|
108
115
|
}
|
|
109
|
-
|
|
110
|
-
or
|
|
111
|
-
|
|
116
|
+
|
|
117
|
+
// or
|
|
118
|
+
|
|
112
119
|
{
|
|
113
120
|
aliases: { $delete: true }
|
|
114
121
|
}
|
|
@@ -314,6 +321,8 @@ If the node does not exist, value of `const result`: `undefined`. In this case n
|
|
|
314
321
|
*/
|
|
315
322
|
```
|
|
316
323
|
|
|
324
|
+
---
|
|
325
|
+
|
|
317
326
|
## Field type specific operators
|
|
318
327
|
|
|
319
328
|
### Basic operators
|
|
@@ -506,3 +515,138 @@ Resulting node in database:
|
|
|
506
515
|
}
|
|
507
516
|
*/
|
|
508
517
|
```
|
|
518
|
+
|
|
519
|
+
|
|
520
|
+
### `array` type field operators
|
|
521
|
+
|
|
522
|
+
#### `$push`: _array type_
|
|
523
|
+
|
|
524
|
+
Used to append an item at the end of the array. The type of `$push` must conform to the `items` field described in the schema.
|
|
525
|
+
|
|
526
|
+
```js
|
|
527
|
+
// in the case of the `items` type being an object with name, value, and status field
|
|
528
|
+
client.set({
|
|
529
|
+
$id: ar165415,
|
|
530
|
+
myobjectarray: {
|
|
531
|
+
$push: {
|
|
532
|
+
name: 'match ' + i,
|
|
533
|
+
value: i,
|
|
534
|
+
status: i < 5 ? 100 : 300,
|
|
535
|
+
},
|
|
536
|
+
},
|
|
537
|
+
})
|
|
538
|
+
|
|
539
|
+
// in the case of the `items` type being 'number'
|
|
540
|
+
client.set({
|
|
541
|
+
$id: ar165415,
|
|
542
|
+
mynumberarray: {
|
|
543
|
+
$push: 4.2
|
|
544
|
+
},
|
|
545
|
+
})
|
|
546
|
+
|
|
547
|
+
```
|
|
548
|
+
|
|
549
|
+
#### `$insert`: _object_
|
|
550
|
+
|
|
551
|
+
Used to insert an item at a specific index of the array. The item at the index and after get shifted appropriately.
|
|
552
|
+
The object must have fields `$idx` and `$value`.
|
|
553
|
+
|
|
554
|
+
##### `$idx`: _integer_
|
|
555
|
+
|
|
556
|
+
Index at which to insert the item. If the index is bigger than the size of the array, `null` items get added between the last item and the `$idx`.
|
|
557
|
+
|
|
558
|
+
|
|
559
|
+
##### `$value`: _array type_
|
|
560
|
+
|
|
561
|
+
Item to insert. This must conform to the `items` type described in the schema.
|
|
562
|
+
|
|
563
|
+
|
|
564
|
+
```js
|
|
565
|
+
// in the case of the `items` type being an object with name, value, and status field
|
|
566
|
+
client.set({
|
|
567
|
+
$id: ar165415,
|
|
568
|
+
myobjectarray: {
|
|
569
|
+
$insert: {
|
|
570
|
+
$idx: 25,
|
|
571
|
+
$value: {
|
|
572
|
+
name: 'match ' + i,
|
|
573
|
+
value: i,
|
|
574
|
+
status: i < 5 ? 100 : 300,
|
|
575
|
+
}
|
|
576
|
+
},
|
|
577
|
+
},
|
|
578
|
+
})
|
|
579
|
+
|
|
580
|
+
|
|
581
|
+
// in the case of the `items` type being 'number'
|
|
582
|
+
client.set({
|
|
583
|
+
$id: ar542875421,
|
|
584
|
+
mynumberarray: {
|
|
585
|
+
$insert: {
|
|
586
|
+
$idx: 21,
|
|
587
|
+
$value: 58
|
|
588
|
+
},
|
|
589
|
+
},
|
|
590
|
+
})
|
|
591
|
+
```
|
|
592
|
+
|
|
593
|
+
#### `$assign`: _object_
|
|
594
|
+
|
|
595
|
+
Used to change a value at a specific index of the array. Unlike `$insert`, this does not create a new node unless the index is past the size of the array. In that case it creates `null` items between the end of the array and the new item, just like `$insert`.
|
|
596
|
+
The object must have fields `$idx` and `$value`.
|
|
597
|
+
|
|
598
|
+
##### `$idx`: _integer_
|
|
599
|
+
|
|
600
|
+
Index at which to insert the item. If the index is bigger than the size of the array, `null` items get added between the last item and the `$idx`.
|
|
601
|
+
|
|
602
|
+
|
|
603
|
+
##### `$value`: _array type_
|
|
604
|
+
|
|
605
|
+
Item to insert. This must conform to the `items` type described in the schema.
|
|
606
|
+
|
|
607
|
+
|
|
608
|
+
```js
|
|
609
|
+
// in the case of the `items` type being an object with name, value, and status field
|
|
610
|
+
client.set({
|
|
611
|
+
$id: ar165415,
|
|
612
|
+
myobjectarray: {
|
|
613
|
+
$assing: {
|
|
614
|
+
$idx: 25,
|
|
615
|
+
$value: {
|
|
616
|
+
name: 'match ' + i,
|
|
617
|
+
value: i,
|
|
618
|
+
status: i < 5 ? 100 : 300,
|
|
619
|
+
}
|
|
620
|
+
},
|
|
621
|
+
},
|
|
622
|
+
})
|
|
623
|
+
|
|
624
|
+
|
|
625
|
+
// in the case of the `items` type being 'number'
|
|
626
|
+
client.set({
|
|
627
|
+
$id: ar542875421,
|
|
628
|
+
mynumberarray: {
|
|
629
|
+
$assign: {
|
|
630
|
+
$idx: 21,
|
|
631
|
+
$value: 58
|
|
632
|
+
},
|
|
633
|
+
},
|
|
634
|
+
})
|
|
635
|
+
```
|
|
636
|
+
|
|
637
|
+
|
|
638
|
+
#### `$remove`: _object_
|
|
639
|
+
|
|
640
|
+
This removes an item from the array at the specified index.
|
|
641
|
+
This object must have the `$idx` field.
|
|
642
|
+
|
|
643
|
+
```js
|
|
644
|
+
client.set({
|
|
645
|
+
$id: ar654984,
|
|
646
|
+
mynumberarray: {
|
|
647
|
+
$remove: {
|
|
648
|
+
$idx: 1,
|
|
649
|
+
},
|
|
650
|
+
},
|
|
651
|
+
})
|
|
652
|
+
```
|