@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.
Files changed (111) hide show
  1. package/dist/Client.d.ts +0 -0
  2. package/dist/Client.js +0 -0
  3. package/dist/Client.js.map +0 -0
  4. package/dist/Emitter.d.ts +0 -0
  5. package/dist/Emitter.js +0 -0
  6. package/dist/Emitter.js.map +0 -0
  7. package/dist/auth.d.ts +0 -0
  8. package/dist/auth.js +0 -0
  9. package/dist/auth.js.map +0 -0
  10. package/dist/createError.d.ts +0 -0
  11. package/dist/createError.js +0 -0
  12. package/dist/createError.js.map +0 -0
  13. package/dist/file/fetch.d.ts +0 -0
  14. package/dist/file/fetch.js +0 -0
  15. package/dist/file/fetch.js.map +0 -0
  16. package/dist/file/getUrl.d.ts +0 -0
  17. package/dist/file/getUrl.js +0 -0
  18. package/dist/file/getUrl.js.map +0 -0
  19. package/dist/file/index.d.ts +0 -0
  20. package/dist/file/index.js +0 -0
  21. package/dist/file/index.js.map +0 -0
  22. package/dist/file/stream/browser.d.ts +0 -0
  23. package/dist/file/stream/browser.js +0 -0
  24. package/dist/file/stream/browser.js.map +0 -0
  25. package/dist/file/stream/index.d.ts +0 -0
  26. package/dist/file/stream/index.js +0 -0
  27. package/dist/file/stream/index.js.map +0 -0
  28. package/dist/file/uploadFileBrowser.d.ts +0 -0
  29. package/dist/file/uploadFileBrowser.js +0 -0
  30. package/dist/file/uploadFileBrowser.js.map +0 -0
  31. package/dist/findPrefix.d.ts +0 -0
  32. package/dist/findPrefix.js +0 -0
  33. package/dist/findPrefix.js.map +0 -0
  34. package/dist/idleTimeout.d.ts +0 -0
  35. package/dist/idleTimeout.js +0 -0
  36. package/dist/idleTimeout.js.map +0 -0
  37. package/dist/index.d.ts +0 -0
  38. package/dist/index.js +1 -1
  39. package/dist/index.js.map +1 -1
  40. package/dist/observable/index.d.ts +0 -0
  41. package/dist/observable/index.js +0 -0
  42. package/dist/observable/index.js.map +0 -0
  43. package/dist/printBasedObject.d.ts +0 -0
  44. package/dist/printBasedObject.js +0 -0
  45. package/dist/printBasedObject.js.map +0 -0
  46. package/dist/queue.d.ts +0 -0
  47. package/dist/queue.js +0 -0
  48. package/dist/queue.js.map +0 -0
  49. package/dist/request.d.ts +0 -0
  50. package/dist/request.js +0 -0
  51. package/dist/request.js.map +0 -0
  52. package/dist/selvaTypes/get.d.ts +0 -0
  53. package/dist/selvaTypes/get.js +0 -0
  54. package/dist/selvaTypes/get.js.map +0 -0
  55. package/dist/selvaTypes/schema.d.ts +0 -0
  56. package/dist/selvaTypes/schema.js +0 -0
  57. package/dist/selvaTypes/schema.js.map +0 -0
  58. package/dist/selvaTypes/set.d.ts +0 -0
  59. package/dist/selvaTypes/set.js +0 -0
  60. package/dist/selvaTypes/set.js.map +0 -0
  61. package/dist/subscriptions/addGetSubscriber.d.ts +0 -0
  62. package/dist/subscriptions/addGetSubscriber.js +0 -0
  63. package/dist/subscriptions/addGetSubscriber.js.map +0 -0
  64. package/dist/subscriptions/addSubscriber.d.ts +0 -0
  65. package/dist/subscriptions/addSubscriber.js +0 -0
  66. package/dist/subscriptions/addSubscriber.js.map +0 -0
  67. package/dist/subscriptions/generateId.d.ts +0 -0
  68. package/dist/subscriptions/generateId.js +0 -0
  69. package/dist/subscriptions/generateId.js.map +0 -0
  70. package/dist/subscriptions/incomingSubscription.d.ts +0 -0
  71. package/dist/subscriptions/incomingSubscription.js +0 -0
  72. package/dist/subscriptions/incomingSubscription.js.map +0 -0
  73. package/dist/subscriptions/incomingSubscriptionDiff.d.ts +0 -0
  74. package/dist/subscriptions/incomingSubscriptionDiff.js +0 -0
  75. package/dist/subscriptions/incomingSubscriptionDiff.js.map +0 -0
  76. package/dist/subscriptions/index.d.ts +0 -0
  77. package/dist/subscriptions/index.js +0 -0
  78. package/dist/subscriptions/index.js.map +0 -0
  79. package/dist/subscriptions/logoutSubscriptions.d.ts +0 -0
  80. package/dist/subscriptions/logoutSubscriptions.js +0 -0
  81. package/dist/subscriptions/logoutSubscriptions.js.map +0 -0
  82. package/dist/subscriptions/removeSendSubscriptionDataFromQueue.d.ts +0 -0
  83. package/dist/subscriptions/removeSendSubscriptionDataFromQueue.js +0 -0
  84. package/dist/subscriptions/removeSendSubscriptionDataFromQueue.js.map +0 -0
  85. package/dist/subscriptions/removeSubscriber.d.ts +0 -0
  86. package/dist/subscriptions/removeSubscriber.js +0 -0
  87. package/dist/subscriptions/removeSubscriber.js.map +0 -0
  88. package/dist/subscriptions/removeUnsubscribesFromQueue.d.ts +0 -0
  89. package/dist/subscriptions/removeUnsubscribesFromQueue.js +0 -0
  90. package/dist/subscriptions/removeUnsubscribesFromQueue.js.map +0 -0
  91. package/dist/subscriptions/sendAllSubscriptions.d.ts +0 -0
  92. package/dist/subscriptions/sendAllSubscriptions.js +0 -0
  93. package/dist/subscriptions/sendAllSubscriptions.js.map +0 -0
  94. package/dist/token.d.ts +0 -0
  95. package/dist/token.js +0 -0
  96. package/dist/token.js.map +0 -0
  97. package/dist/track.d.ts +0 -0
  98. package/dist/track.js +0 -0
  99. package/dist/track.js.map +0 -0
  100. package/dist/websocket/index.d.ts +0 -0
  101. package/dist/websocket/index.js +0 -0
  102. package/dist/websocket/index.js.map +0 -0
  103. package/dist/websocket/types.d.ts +0 -0
  104. package/dist/websocket/types.js +0 -0
  105. package/dist/websocket/types.js.map +0 -0
  106. package/dist/websocket/urlLoader.d.ts +0 -0
  107. package/dist/websocket/urlLoader.js +0 -0
  108. package/dist/websocket/urlLoader.js.map +0 -0
  109. package/docs/schema.md +25 -1
  110. package/docs/set.md +147 -3
  111. package/package.json +1 -1
package/dist/Client.d.ts CHANGED
File without changes
package/dist/Client.js CHANGED
File without changes
File without changes
package/dist/Emitter.d.ts CHANGED
File without changes
package/dist/Emitter.js CHANGED
File without changes
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
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/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
File without changes
File without changes
File without changes
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
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
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
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/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
- ```js
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
+ ```
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@based/client",
3
- "version": "2.7.0",
3
+ "version": "2.7.1",
4
4
  "license": "MIT",
5
5
  "main": "dist/index.js",
6
6
  "browser": {