Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@oramacloud/client

Package Overview
Dependencies
Maintainers
2
Versions
78
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@oramacloud/client - npm Package Compare versions

Comparing version 1.0.0-beta.17 to 1.0.0-beta.19

example/runkit.js

2

dist/index.global.js

@@ -1,2 +0,2 @@

"use strict";var OramaClient=(()=>{var Lt=Object.create;var _=Object.defineProperty;var Et=Object.getOwnPropertyDescriptor;var At=Object.getOwnPropertyNames;var jt=Object.getPrototypeOf,Ht=Object.prototype.hasOwnProperty;var Mt=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,n)=>(typeof require<"u"?require:e)[n]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+t+'" is not supported')});var m=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Pt=(t,e)=>{for(var n in e)_(t,n,{get:e[n],enumerable:!0})},V=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of At(e))!Ht.call(t,o)&&o!==n&&_(t,o,{get:()=>e[o],enumerable:!(r=Et(e,o))||r.enumerable});return t};var Nt=(t,e,n)=>(n=t!=null?Lt(jt(t)):{},V(e||!t||!t.__esModule?_(n,"default",{value:t,enumerable:!0}):n,t)),Ut=t=>V(_({},"__esModule",{value:!0}),t);var tt=m(l=>{"use strict";Object.defineProperty(l,"__esModule",{value:!0});l.output=l.exists=l.hash=l.bytes=l.bool=l.number=void 0;function v(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}l.number=v;function G(t){if(typeof t!="boolean")throw new Error(`Expected boolean, not ${t}`)}l.bool=G;function P(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}l.bytes=P;function J(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");v(t.outputLen),v(t.blockLen)}l.hash=J;function Z(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}l.exists=Z;function Q(t,e){P(t);let n=e.outputLen;if(t.length<n)throw new Error(`digestInto() expects output buffer of length at least ${n}`)}l.output=Q;var Rt={number:v,bool:G,bytes:P,hash:J,exists:Z,output:Q};l.default=Rt});var rt=m(f=>{"use strict";Object.defineProperty(f,"__esModule",{value:!0});f.add=f.toBig=f.split=f.fromBig=void 0;var T=BigInt(2**32-1),N=BigInt(32);function U(t,e=!1){return e?{h:Number(t&T),l:Number(t>>N&T)}:{h:Number(t>>N&T)|0,l:Number(t&T)|0}}f.fromBig=U;function et(t,e=!1){let n=new Uint32Array(t.length),r=new Uint32Array(t.length);for(let o=0;o<t.length;o++){let{h:s,l:i}=U(t[o],e);[n[o],r[o]]=[s,i]}return[n,r]}f.split=et;var $t=(t,e)=>BigInt(t>>>0)<<N|BigInt(e>>>0);f.toBig=$t;var Dt=(t,e,n)=>t>>>n,Ft=(t,e,n)=>t<<32-n|e>>>n,qt=(t,e,n)=>t>>>n|e<<32-n,Vt=(t,e,n)=>t<<32-n|e>>>n,Wt=(t,e,n)=>t<<64-n|e>>>n-32,Xt=(t,e,n)=>t>>>n-32|e<<64-n,zt=(t,e)=>e,Kt=(t,e)=>t,Yt=(t,e,n)=>t<<n|e>>>32-n,Gt=(t,e,n)=>e<<n|t>>>32-n,Jt=(t,e,n)=>e<<n-32|t>>>64-n,Zt=(t,e,n)=>t<<n-32|e>>>64-n;function nt(t,e,n,r){let o=(e>>>0)+(r>>>0);return{h:t+n+(o/2**32|0)|0,l:o|0}}f.add=nt;var Qt=(t,e,n)=>(t>>>0)+(e>>>0)+(n>>>0),te=(t,e,n,r)=>e+n+r+(t/2**32|0)|0,ee=(t,e,n,r)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0),ne=(t,e,n,r,o)=>e+n+r+o+(t/2**32|0)|0,re=(t,e,n,r,o)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0)+(o>>>0),oe=(t,e,n,r,o,s)=>e+n+r+o+s+(t/2**32|0)|0,ie={fromBig:U,split:et,toBig:f.toBig,shrSH:Dt,shrSL:Ft,rotrSH:qt,rotrSL:Vt,rotrBH:Wt,rotrBL:Xt,rotr32H:zt,rotr32L:Kt,rotlSH:Yt,rotlSL:Gt,rotlBH:Jt,rotlBL:Zt,add:nt,add3L:Qt,add3H:te,add4L:ee,add4H:ne,add5H:oe,add5L:re};f.default=ie});var ot=m(E=>{"use strict";Object.defineProperty(E,"__esModule",{value:!0});E.crypto=void 0;var L=Mt("node:crypto");E.crypto=L&&typeof L=="object"&&"webcrypto"in L?L.webcrypto:void 0});var st=m(c=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});c.randomBytes=c.wrapXOFConstructorWithOpts=c.wrapConstructorWithOpts=c.wrapConstructor=c.checkOpts=c.Hash=c.concatBytes=c.toBytes=c.utf8ToBytes=c.asyncLoop=c.nextTick=c.hexToBytes=c.bytesToHex=c.isLE=c.rotr=c.createView=c.u32=c.u8=void 0;var R=ot(),D=t=>t instanceof Uint8Array,se=t=>new Uint8Array(t.buffer,t.byteOffset,t.byteLength);c.u8=se;var ce=t=>new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4));c.u32=ce;var ae=t=>new DataView(t.buffer,t.byteOffset,t.byteLength);c.createView=ae;var ue=(t,e)=>t<<32-e|t>>>e;c.rotr=ue;c.isLE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!c.isLE)throw new Error("Non little-endian hardware is not supported");var le=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function fe(t){if(!D(t))throw new Error("Uint8Array expected");let e="";for(let n=0;n<t.length;n++)e+=le[t[n]];return e}c.bytesToHex=fe;function pe(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);let e=t.length;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let n=new Uint8Array(e/2);for(let r=0;r<n.length;r++){let o=r*2,s=t.slice(o,o+2),i=Number.parseInt(s,16);if(Number.isNaN(i)||i<0)throw new Error("Invalid byte sequence");n[r]=i}return n}c.hexToBytes=pe;var de=async()=>{};c.nextTick=de;async function he(t,e,n){let r=Date.now();for(let o=0;o<t;o++){n(o);let s=Date.now()-r;s>=0&&s<e||(await(0,c.nextTick)(),r+=s)}}c.asyncLoop=he;function it(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}c.utf8ToBytes=it;function A(t){if(typeof t=="string"&&(t=it(t)),!D(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}c.toBytes=A;function ge(...t){let e=new Uint8Array(t.reduce((r,o)=>r+o.length,0)),n=0;return t.forEach(r=>{if(!D(r))throw new Error("Uint8Array expected");e.set(r,n),n+=r.length}),e}c.concatBytes=ge;var $=class{clone(){return this._cloneInto()}};c.Hash=$;var ye=t=>Object.prototype.toString.call(t)==="[object Object]"&&t.constructor===Object;function me(t,e){if(e!==void 0&&(typeof e!="object"||!ye(e)))throw new Error("Options should be object or undefined");return Object.assign(t,e)}c.checkOpts=me;function be(t){let e=r=>t().update(A(r)).digest(),n=t();return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=()=>t(),e}c.wrapConstructor=be;function we(t){let e=(r,o)=>t(o).update(A(r)).digest(),n=t({});return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=r=>t(r),e}c.wrapConstructorWithOpts=we;function xe(t){let e=(r,o)=>t(o).update(A(r)).digest(),n=t({});return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=r=>t(r),e}c.wrapXOFConstructorWithOpts=xe;function ke(t=32){if(R.crypto&&typeof R.crypto.getRandomValues=="function")return R.crypto.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}c.randomBytes=ke});var ht=m(u=>{"use strict";Object.defineProperty(u,"__esModule",{value:!0});u.shake256=u.shake128=u.keccak_512=u.keccak_384=u.keccak_256=u.keccak_224=u.sha3_512=u.sha3_384=u.sha3_256=u.sha3_224=u.Keccak=u.keccakP=void 0;var b=tt(),k=rt(),x=st(),[ut,lt,ft]=[[],[],[]],Ie=BigInt(0),w=BigInt(1),Be=BigInt(2),Oe=BigInt(7),Ce=BigInt(256),Se=BigInt(113);for(let t=0,e=w,n=1,r=0;t<24;t++){[n,r]=[r,(2*n+3*r)%5],ut.push(2*(5*r+n)),lt.push((t+1)*(t+2)/2%64);let o=Ie;for(let s=0;s<7;s++)e=(e<<w^(e>>Oe)*Se)%Ce,e&Be&&(o^=w<<(w<<BigInt(s))-w);ft.push(o)}var[_e,ve]=k.default.split(ft,!0),ct=(t,e,n)=>n>32?k.default.rotlBH(t,e,n):k.default.rotlSH(t,e,n),at=(t,e,n)=>n>32?k.default.rotlBL(t,e,n):k.default.rotlSL(t,e,n);function pt(t,e=24){let n=new Uint32Array(10);for(let r=24-e;r<24;r++){for(let i=0;i<10;i++)n[i]=t[i]^t[i+10]^t[i+20]^t[i+30]^t[i+40];for(let i=0;i<10;i+=2){let a=(i+8)%10,p=(i+2)%10,d=n[p],y=n[p+1],vt=ct(d,y,1)^n[a],Tt=at(d,y,1)^n[a+1];for(let S=0;S<50;S+=10)t[i+S]^=vt,t[i+S+1]^=Tt}let o=t[2],s=t[3];for(let i=0;i<24;i++){let a=lt[i],p=ct(o,s,a),d=at(o,s,a),y=ut[i];o=t[y],s=t[y+1],t[y]=p,t[y+1]=d}for(let i=0;i<50;i+=10){for(let a=0;a<10;a++)n[a]=t[i+a];for(let a=0;a<10;a++)t[i+a]^=~n[(a+2)%10]&n[(a+4)%10]}t[0]^=_e[r],t[1]^=ve[r]}n.fill(0)}u.keccakP=pt;var I=class t extends x.Hash{constructor(e,n,r,o=!1,s=24){if(super(),this.blockLen=e,this.suffix=n,this.outputLen=r,this.enableXOF=o,this.rounds=s,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,b.default.number(r),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=(0,x.u32)(this.state)}keccak(){pt(this.state32,this.rounds),this.posOut=0,this.pos=0}update(e){b.default.exists(this);let{blockLen:n,state:r}=this;e=(0,x.toBytes)(e);let o=e.length;for(let s=0;s<o;){let i=Math.min(n-this.pos,o-s);for(let a=0;a<i;a++)r[this.pos++]^=e[s++];this.pos===n&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:n,pos:r,blockLen:o}=this;e[r]^=n,n&128&&r===o-1&&this.keccak(),e[o-1]^=128,this.keccak()}writeInto(e){b.default.exists(this,!1),b.default.bytes(e),this.finish();let n=this.state,{blockLen:r}=this;for(let o=0,s=e.length;o<s;){this.posOut>=r&&this.keccak();let i=Math.min(r-this.posOut,s-o);e.set(n.subarray(this.posOut,this.posOut+i),o),this.posOut+=i,o+=i}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return b.default.number(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(b.default.output(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(e){let{blockLen:n,suffix:r,outputLen:o,rounds:s,enableXOF:i}=this;return e||(e=new t(n,r,o,i,s)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=s,e.suffix=r,e.outputLen=o,e.enableXOF=i,e.destroyed=this.destroyed,e}};u.Keccak=I;var h=(t,e,n)=>(0,x.wrapConstructor)(()=>new I(e,t,n));u.sha3_224=h(6,144,224/8);u.sha3_256=h(6,136,256/8);u.sha3_384=h(6,104,384/8);u.sha3_512=h(6,72,512/8);u.keccak_224=h(1,144,224/8);u.keccak_256=h(1,136,256/8);u.keccak_384=h(1,104,384/8);u.keccak_512=h(1,72,512/8);var dt=(t,e,n)=>(0,x.wrapXOFConstructorWithOpts)((r={})=>new I(e,t,r.dkLen===void 0?n:r.dkLen,!0));u.shake128=dt(31,168,128/8);u.shake256=dt(31,136,256/8)});var It=m((Je,g)=>{"use strict";var{sha3_512:Te}=ht(),yt=24,B=32,F=(t=4,e=Math.random)=>{let n="";for(;n.length<t;)n=n+Math.floor(e()*36).toString(36);return n};function mt(t){let e=8n,n=0n;for(let r of t.values()){let o=BigInt(r);n=(n<<e)+o}return n}var bt=(t="")=>mt(Te(t)).toString(36).slice(1),gt=Array.from({length:26},(t,e)=>String.fromCharCode(e+97)),Le=t=>gt[Math.floor(t()*gt.length)],wt=({globalObj:t=typeof global<"u"?global:typeof window<"u"?window:{},random:e=Math.random}={})=>{let n=Object.keys(t).toString(),r=n.length?n+F(B,e):F(B,e);return bt(r).substring(0,B)},xt=t=>()=>t++,Ee=476782367,kt=({random:t=Math.random,counter:e=xt(Math.floor(t()*Ee)),length:n=yt,fingerprint:r=wt({random:t})}={})=>function(){let s=Le(t),i=Date.now().toString(36),a=e().toString(36),p=F(n,t),d=`${i+p+a+r}`;return`${s+bt(d).substring(1,n)}`},Ae=kt(),je=(t,{minLength:e=2,maxLength:n=B}={})=>{let r=t.length,o=/^[0-9a-z]+$/;try{if(typeof t=="string"&&r>=e&&r<=n&&o.test(t))return!0}finally{}return!1};g.exports.getConstants=()=>({defaultLength:yt,bigLength:B});g.exports.init=kt;g.exports.createId=Ae;g.exports.bufToBigInt=mt;g.exports.createCounter=xt;g.exports.createFingerprint=wt;g.exports.isCuid=je});var Bt=m((Ze,O)=>{"use strict";var{createId:He,init:Me,getConstants:Pe,isCuid:Ne}=It();O.exports.createId=He;O.exports.init=Me;O.exports.getConstants=Pe;O.exports.isCuid=Ne});var Re={};Pt(Re,{OramaClient:()=>q});var De=Date.now().toString().slice(5);var W=BigInt(1e3),X=BigInt(1e6),z=BigInt(1e9);async function K(t){return typeof t=="number"&&(t=BigInt(t)),t<W?`${t}ns`:t<X?`${t/W}\u03BCs`:t<z?`${t/X}ms`:`${t/z}s`}async function Y(t){return{raw:Number(t),formatted:await K(t)}}var _t=Nt(Bt(),1);var j=class{cache;config;constructor(e){this.cache=new Map,this.config=e}set(e,n){this.cache.set(e,n)}get(e){return this.cache.get(e)}has(e){return this.cache.has(e)}delete(e){return this.cache.delete(e)}clear(){this.cache.clear()}size(){return this.cache.size}};var Ct="1.0.0-beta.17";var St={name:"@oramacloud/client",version:Ct,description:"Orama SDK for Node.js, Deno, and Browsers",type:"module",sideEffects:!1,main:"./dist/index.cjs",module:"./dist/index.js",types:"./dist/index.d.ts",runkitExampleFilename:"./example/runkit.js",exports:{".":{require:"./dist/index.cjs",import:"./dist/index.js",types:"./dist/index.d.ts",browser:"./dist/index.global.js"},"./react":{require:"./dist/react/index.cjs",import:"./dist/react/index.js",types:"./dist/react/index.d.ts"}},scripts:{lint:"ts-standard --fix",build:"npm run build:lib && npm run build:react","build:lib":"tsup --config tsup.lib.js","build:react":"tsup --config tsup.react.js",test:"tsx tests/index.test.ts","serve:example":"esbuild src/index.ts --bundle --outfile=example/out.js --format=esm --watch --servedir=example",prepare:"husky install"},keywords:["orama","search engine","sdk"],files:["dist"],author:{name:"Michele Riva",email:"michele.riva@oramasearch.com",url:"https://github.com/MicheleRiva"},license:"ISC",dependencies:{"@orama/orama":"^1.0.10","@paralleldrive/cuid2":"^2.2.1",react:"^18.2.0"},devDependencies:{"@fastify/formbody":"^7.4.0","@types/node":"^20.3.1","@types/react":"^18.2.14",esbuild:"0.18.5",fastify:"^4.19.2",husky:"^8.0.3","ts-standard":"^12.0.2",tsup:"^7.1.0",tsx:"^3.12.7",typescript:"^5.1.3"}};function C(t,e){if(typeof navigator<"u"){navigator.sendBeacon(t,e);return}fetch(t,{method:"POST",body:e,headers:{"Content-Type":"application/json"}}).then(()=>{},n=>console.log(n))}var H=class t{data;params;config;constructor(e){this.data=[],this.config=e}setParams(e){this.params=e}static create(e){let n=new t(e);return n.start(),n}add(e){this.data.push({rawSearchString:e.rawSearchString,query:e.query,resultsCount:e.resultsCount,roundTripTime:e.roundTripTime,searchedAt:e.searchedAt,referer:typeof location<"u"?location.toString():void 0}),this.params!=null&&this.data.length>=this.config.flushSize&&this.flush()}flush(){if(this.params==null||this.data.length===0)return;let e=this.data;this.data=[];let n={source:"fe",deploymentID:this.params.deploymentID,index:this.params.index,oramaId:this.config.id,oramaVersion:St.version,userAgent:typeof navigator<"u"?navigator.userAgent:void 0,events:e};C(this.params.endpoint+`?api-key=${this.config.api_key}`,JSON.stringify(n))}start(){let e=setInterval(this.flush.bind(this),this.config.flushInterval);e.unref!=null&&e.unref()}};var M=class{constructor(e){this.params=e}intervalId;start(){this.stop(),this.intervalId=setInterval(this.beat.bind(this),this.params.frequency)}stop(){this.intervalId!==void 0&&clearInterval(this.intervalId)}beat(){C(this.params.endpoint)}};var q=class{id=(0,_t.createId)();api_key;endpoint;collector;cache;heartbeat;initPromise;constructor(e){if(this.api_key=e.api_key,this.endpoint=e.endpoint,e.telemetry!==!1){let n={id:this.id,api_key:this.api_key,flushInterval:e.telemetry?.flushInterval??5e3,flushSize:e.telemetry?.flushSize??25};this.collector=H.create(n)}if(e.cache!==!1){let n={};this.cache=new j(n)}this.init()}async search(e,n){await this.initPromise;let r=JSON.stringify(e),o,s,i=!1;if((n?.fresh!==!0&&this.cache?.has(r))===!0&&this.cache!=null)o=0,s=this.cache.get(r),i=!0;else{let p=Date.now();s=await this.fetch("search","POST",{q:e},n?.abortController);let d=Date.now();s.elapsed=await Y(BigInt(d*1e6-p*1e6)),o=d-p,this.cache?.set(r,s)}return this.collector!=null&&this.collector.add({rawSearchString:e.term,resultsCount:s.hits.length,roundTripTime:o,query:e,cached:i,searchedAt:new Date}),s}startHeartBeat(e){this.heartbeat?.stop(),this.heartbeat=new M({...e,endpoint:this.endpoint+`/health?api-key=${this.api_key}`}),this.heartbeat.start()}stopHeartBeat(){this.heartbeat?.stop()}init(){this.initPromise=this.fetch("init","GET").then(e=>{this.collector?.setParams({endpoint:e.collectUrl,deploymentID:e.deploymentID,index:e.index})}).catch(e=>console.log(e))}async fetch(e,n,r,o){if(o?.signal.aborted===!0)throw new Error("Request aborted");let s={method:n,headers:{"Content-Type":"application/x-www-form-urlencoded"},signal:o?.signal};if(n==="POST"&&r!==void 0){let a=r;a.version=Ct,a.id=this.id,s.body=Object.entries(a).map(([p,d])=>`${p}=${encodeURIComponent(JSON.stringify(d))}`).join("&")}return await(await fetch(`${this.endpoint}/${e}?api-key=${this.api_key}`,s)).json()}};return Ut(Re);})();
"use strict";var OramaClient=(()=>{var Lt=Object.create;var _=Object.defineProperty;var Et=Object.getOwnPropertyDescriptor;var At=Object.getOwnPropertyNames;var jt=Object.getPrototypeOf,Ht=Object.prototype.hasOwnProperty;var Mt=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,n)=>(typeof require<"u"?require:e)[n]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+t+'" is not supported')});var m=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Pt=(t,e)=>{for(var n in e)_(t,n,{get:e[n],enumerable:!0})},V=(t,e,n,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of At(e))!Ht.call(t,o)&&o!==n&&_(t,o,{get:()=>e[o],enumerable:!(r=Et(e,o))||r.enumerable});return t};var Nt=(t,e,n)=>(n=t!=null?Lt(jt(t)):{},V(e||!t||!t.__esModule?_(n,"default",{value:t,enumerable:!0}):n,t)),Ut=t=>V(_({},"__esModule",{value:!0}),t);var tt=m(l=>{"use strict";Object.defineProperty(l,"__esModule",{value:!0});l.output=l.exists=l.hash=l.bytes=l.bool=l.number=void 0;function T(t){if(!Number.isSafeInteger(t)||t<0)throw new Error(`Wrong positive integer: ${t}`)}l.number=T;function G(t){if(typeof t!="boolean")throw new Error(`Expected boolean, not ${t}`)}l.bool=G;function P(t,...e){if(!(t instanceof Uint8Array))throw new Error("Expected Uint8Array");if(e.length>0&&!e.includes(t.length))throw new Error(`Expected Uint8Array of length ${e}, not of length=${t.length}`)}l.bytes=P;function J(t){if(typeof t!="function"||typeof t.create!="function")throw new Error("Hash should be wrapped by utils.wrapConstructor");T(t.outputLen),T(t.blockLen)}l.hash=J;function Z(t,e=!0){if(t.destroyed)throw new Error("Hash instance has been destroyed");if(e&&t.finished)throw new Error("Hash#digest() has already been called")}l.exists=Z;function Q(t,e){P(t);let n=e.outputLen;if(t.length<n)throw new Error(`digestInto() expects output buffer of length at least ${n}`)}l.output=Q;var $t={number:T,bool:G,bytes:P,hash:J,exists:Z,output:Q};l.default=$t});var rt=m(f=>{"use strict";Object.defineProperty(f,"__esModule",{value:!0});f.add=f.toBig=f.split=f.fromBig=void 0;var v=BigInt(2**32-1),N=BigInt(32);function U(t,e=!1){return e?{h:Number(t&v),l:Number(t>>N&v)}:{h:Number(t>>N&v)|0,l:Number(t&v)|0}}f.fromBig=U;function et(t,e=!1){let n=new Uint32Array(t.length),r=new Uint32Array(t.length);for(let o=0;o<t.length;o++){let{h:s,l:i}=U(t[o],e);[n[o],r[o]]=[s,i]}return[n,r]}f.split=et;var Rt=(t,e)=>BigInt(t>>>0)<<N|BigInt(e>>>0);f.toBig=Rt;var Dt=(t,e,n)=>t>>>n,Ft=(t,e,n)=>t<<32-n|e>>>n,qt=(t,e,n)=>t>>>n|e<<32-n,Vt=(t,e,n)=>t<<32-n|e>>>n,Wt=(t,e,n)=>t<<64-n|e>>>n-32,Xt=(t,e,n)=>t>>>n-32|e<<64-n,zt=(t,e)=>e,Kt=(t,e)=>t,Yt=(t,e,n)=>t<<n|e>>>32-n,Gt=(t,e,n)=>e<<n|t>>>32-n,Jt=(t,e,n)=>e<<n-32|t>>>64-n,Zt=(t,e,n)=>t<<n-32|e>>>64-n;function nt(t,e,n,r){let o=(e>>>0)+(r>>>0);return{h:t+n+(o/2**32|0)|0,l:o|0}}f.add=nt;var Qt=(t,e,n)=>(t>>>0)+(e>>>0)+(n>>>0),te=(t,e,n,r)=>e+n+r+(t/2**32|0)|0,ee=(t,e,n,r)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0),ne=(t,e,n,r,o)=>e+n+r+o+(t/2**32|0)|0,re=(t,e,n,r,o)=>(t>>>0)+(e>>>0)+(n>>>0)+(r>>>0)+(o>>>0),oe=(t,e,n,r,o,s)=>e+n+r+o+s+(t/2**32|0)|0,ie={fromBig:U,split:et,toBig:f.toBig,shrSH:Dt,shrSL:Ft,rotrSH:qt,rotrSL:Vt,rotrBH:Wt,rotrBL:Xt,rotr32H:zt,rotr32L:Kt,rotlSH:Yt,rotlSL:Gt,rotlBH:Jt,rotlBL:Zt,add:nt,add3L:Qt,add3H:te,add4L:ee,add4H:ne,add5H:oe,add5L:re};f.default=ie});var ot=m(E=>{"use strict";Object.defineProperty(E,"__esModule",{value:!0});E.crypto=void 0;var L=Mt("node:crypto");E.crypto=L&&typeof L=="object"&&"webcrypto"in L?L.webcrypto:void 0});var st=m(c=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});c.randomBytes=c.wrapXOFConstructorWithOpts=c.wrapConstructorWithOpts=c.wrapConstructor=c.checkOpts=c.Hash=c.concatBytes=c.toBytes=c.utf8ToBytes=c.asyncLoop=c.nextTick=c.hexToBytes=c.bytesToHex=c.isLE=c.rotr=c.createView=c.u32=c.u8=void 0;var $=ot(),D=t=>t instanceof Uint8Array,se=t=>new Uint8Array(t.buffer,t.byteOffset,t.byteLength);c.u8=se;var ce=t=>new Uint32Array(t.buffer,t.byteOffset,Math.floor(t.byteLength/4));c.u32=ce;var ae=t=>new DataView(t.buffer,t.byteOffset,t.byteLength);c.createView=ae;var ue=(t,e)=>t<<32-e|t>>>e;c.rotr=ue;c.isLE=new Uint8Array(new Uint32Array([287454020]).buffer)[0]===68;if(!c.isLE)throw new Error("Non little-endian hardware is not supported");var le=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));function fe(t){if(!D(t))throw new Error("Uint8Array expected");let e="";for(let n=0;n<t.length;n++)e+=le[t[n]];return e}c.bytesToHex=fe;function pe(t){if(typeof t!="string")throw new Error("hex string expected, got "+typeof t);let e=t.length;if(e%2)throw new Error("padded hex string expected, got unpadded hex of length "+e);let n=new Uint8Array(e/2);for(let r=0;r<n.length;r++){let o=r*2,s=t.slice(o,o+2),i=Number.parseInt(s,16);if(Number.isNaN(i)||i<0)throw new Error("Invalid byte sequence");n[r]=i}return n}c.hexToBytes=pe;var de=async()=>{};c.nextTick=de;async function he(t,e,n){let r=Date.now();for(let o=0;o<t;o++){n(o);let s=Date.now()-r;s>=0&&s<e||(await(0,c.nextTick)(),r+=s)}}c.asyncLoop=he;function it(t){if(typeof t!="string")throw new Error(`utf8ToBytes expected string, got ${typeof t}`);return new Uint8Array(new TextEncoder().encode(t))}c.utf8ToBytes=it;function A(t){if(typeof t=="string"&&(t=it(t)),!D(t))throw new Error(`expected Uint8Array, got ${typeof t}`);return t}c.toBytes=A;function ge(...t){let e=new Uint8Array(t.reduce((r,o)=>r+o.length,0)),n=0;return t.forEach(r=>{if(!D(r))throw new Error("Uint8Array expected");e.set(r,n),n+=r.length}),e}c.concatBytes=ge;var R=class{clone(){return this._cloneInto()}};c.Hash=R;var ye=t=>Object.prototype.toString.call(t)==="[object Object]"&&t.constructor===Object;function me(t,e){if(e!==void 0&&(typeof e!="object"||!ye(e)))throw new Error("Options should be object or undefined");return Object.assign(t,e)}c.checkOpts=me;function be(t){let e=r=>t().update(A(r)).digest(),n=t();return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=()=>t(),e}c.wrapConstructor=be;function we(t){let e=(r,o)=>t(o).update(A(r)).digest(),n=t({});return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=r=>t(r),e}c.wrapConstructorWithOpts=we;function xe(t){let e=(r,o)=>t(o).update(A(r)).digest(),n=t({});return e.outputLen=n.outputLen,e.blockLen=n.blockLen,e.create=r=>t(r),e}c.wrapXOFConstructorWithOpts=xe;function ke(t=32){if($.crypto&&typeof $.crypto.getRandomValues=="function")return $.crypto.getRandomValues(new Uint8Array(t));throw new Error("crypto.getRandomValues must be defined")}c.randomBytes=ke});var ht=m(u=>{"use strict";Object.defineProperty(u,"__esModule",{value:!0});u.shake256=u.shake128=u.keccak_512=u.keccak_384=u.keccak_256=u.keccak_224=u.sha3_512=u.sha3_384=u.sha3_256=u.sha3_224=u.Keccak=u.keccakP=void 0;var b=tt(),k=rt(),x=st(),[ut,lt,ft]=[[],[],[]],Ie=BigInt(0),w=BigInt(1),Be=BigInt(2),Oe=BigInt(7),Ce=BigInt(256),Se=BigInt(113);for(let t=0,e=w,n=1,r=0;t<24;t++){[n,r]=[r,(2*n+3*r)%5],ut.push(2*(5*r+n)),lt.push((t+1)*(t+2)/2%64);let o=Ie;for(let s=0;s<7;s++)e=(e<<w^(e>>Oe)*Se)%Ce,e&Be&&(o^=w<<(w<<BigInt(s))-w);ft.push(o)}var[_e,Te]=k.default.split(ft,!0),ct=(t,e,n)=>n>32?k.default.rotlBH(t,e,n):k.default.rotlSH(t,e,n),at=(t,e,n)=>n>32?k.default.rotlBL(t,e,n):k.default.rotlSL(t,e,n);function pt(t,e=24){let n=new Uint32Array(10);for(let r=24-e;r<24;r++){for(let i=0;i<10;i++)n[i]=t[i]^t[i+10]^t[i+20]^t[i+30]^t[i+40];for(let i=0;i<10;i+=2){let a=(i+8)%10,p=(i+2)%10,d=n[p],y=n[p+1],Tt=ct(d,y,1)^n[a],vt=at(d,y,1)^n[a+1];for(let S=0;S<50;S+=10)t[i+S]^=Tt,t[i+S+1]^=vt}let o=t[2],s=t[3];for(let i=0;i<24;i++){let a=lt[i],p=ct(o,s,a),d=at(o,s,a),y=ut[i];o=t[y],s=t[y+1],t[y]=p,t[y+1]=d}for(let i=0;i<50;i+=10){for(let a=0;a<10;a++)n[a]=t[i+a];for(let a=0;a<10;a++)t[i+a]^=~n[(a+2)%10]&n[(a+4)%10]}t[0]^=_e[r],t[1]^=Te[r]}n.fill(0)}u.keccakP=pt;var I=class t extends x.Hash{constructor(e,n,r,o=!1,s=24){if(super(),this.blockLen=e,this.suffix=n,this.outputLen=r,this.enableXOF=o,this.rounds=s,this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,b.default.number(r),0>=this.blockLen||this.blockLen>=200)throw new Error("Sha3 supports only keccak-f1600 function");this.state=new Uint8Array(200),this.state32=(0,x.u32)(this.state)}keccak(){pt(this.state32,this.rounds),this.posOut=0,this.pos=0}update(e){b.default.exists(this);let{blockLen:n,state:r}=this;e=(0,x.toBytes)(e);let o=e.length;for(let s=0;s<o;){let i=Math.min(n-this.pos,o-s);for(let a=0;a<i;a++)r[this.pos++]^=e[s++];this.pos===n&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:n,pos:r,blockLen:o}=this;e[r]^=n,n&128&&r===o-1&&this.keccak(),e[o-1]^=128,this.keccak()}writeInto(e){b.default.exists(this,!1),b.default.bytes(e),this.finish();let n=this.state,{blockLen:r}=this;for(let o=0,s=e.length;o<s;){this.posOut>=r&&this.keccak();let i=Math.min(r-this.posOut,s-o);e.set(n.subarray(this.posOut,this.posOut+i),o),this.posOut+=i,o+=i}return e}xofInto(e){if(!this.enableXOF)throw new Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return b.default.number(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(b.default.output(e,this),this.finished)throw new Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,this.state.fill(0)}_cloneInto(e){let{blockLen:n,suffix:r,outputLen:o,rounds:s,enableXOF:i}=this;return e||(e=new t(n,r,o,i,s)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=s,e.suffix=r,e.outputLen=o,e.enableXOF=i,e.destroyed=this.destroyed,e}};u.Keccak=I;var h=(t,e,n)=>(0,x.wrapConstructor)(()=>new I(e,t,n));u.sha3_224=h(6,144,224/8);u.sha3_256=h(6,136,256/8);u.sha3_384=h(6,104,384/8);u.sha3_512=h(6,72,512/8);u.keccak_224=h(1,144,224/8);u.keccak_256=h(1,136,256/8);u.keccak_384=h(1,104,384/8);u.keccak_512=h(1,72,512/8);var dt=(t,e,n)=>(0,x.wrapXOFConstructorWithOpts)((r={})=>new I(e,t,r.dkLen===void 0?n:r.dkLen,!0));u.shake128=dt(31,168,128/8);u.shake256=dt(31,136,256/8)});var It=m((Je,g)=>{"use strict";var{sha3_512:ve}=ht(),yt=24,B=32,F=(t=4,e=Math.random)=>{let n="";for(;n.length<t;)n=n+Math.floor(e()*36).toString(36);return n};function mt(t){let e=8n,n=0n;for(let r of t.values()){let o=BigInt(r);n=(n<<e)+o}return n}var bt=(t="")=>mt(ve(t)).toString(36).slice(1),gt=Array.from({length:26},(t,e)=>String.fromCharCode(e+97)),Le=t=>gt[Math.floor(t()*gt.length)],wt=({globalObj:t=typeof global<"u"?global:typeof window<"u"?window:{},random:e=Math.random}={})=>{let n=Object.keys(t).toString(),r=n.length?n+F(B,e):F(B,e);return bt(r).substring(0,B)},xt=t=>()=>t++,Ee=476782367,kt=({random:t=Math.random,counter:e=xt(Math.floor(t()*Ee)),length:n=yt,fingerprint:r=wt({random:t})}={})=>function(){let s=Le(t),i=Date.now().toString(36),a=e().toString(36),p=F(n,t),d=`${i+p+a+r}`;return`${s+bt(d).substring(1,n)}`},Ae=kt(),je=(t,{minLength:e=2,maxLength:n=B}={})=>{let r=t.length,o=/^[0-9a-z]+$/;try{if(typeof t=="string"&&r>=e&&r<=n&&o.test(t))return!0}finally{}return!1};g.exports.getConstants=()=>({defaultLength:yt,bigLength:B});g.exports.init=kt;g.exports.createId=Ae;g.exports.bufToBigInt=mt;g.exports.createCounter=xt;g.exports.createFingerprint=wt;g.exports.isCuid=je});var Bt=m((Ze,O)=>{"use strict";var{createId:He,init:Me,getConstants:Pe,isCuid:Ne}=It();O.exports.createId=He;O.exports.init=Me;O.exports.getConstants=Pe;O.exports.isCuid=Ne});var $e={};Pt($e,{OramaClient:()=>q});var De=Date.now().toString().slice(5);var W=BigInt(1e3),X=BigInt(1e6),z=BigInt(1e9);async function K(t){return typeof t=="number"&&(t=BigInt(t)),t<W?`${t}ns`:t<X?`${t/W}\u03BCs`:t<z?`${t/X}ms`:`${t/z}s`}async function Y(t){return{raw:Number(t),formatted:await K(t)}}var _t=Nt(Bt(),1);var j=class{cache;config;constructor(e){this.cache=new Map,this.config=e}set(e,n){this.cache.set(e,n)}get(e){return this.cache.get(e)}has(e){return this.cache.has(e)}delete(e){return this.cache.delete(e)}clear(){this.cache.clear()}size(){return this.cache.size}};var Ct="1.0.0-beta.14";var St={name:"@oramacloud/client",version:Ct,description:"Orama SDK for Node.js, Deno, and Browsers",type:"module",sideEffects:!1,main:"./dist/index.cjs",module:"./dist/index.js",types:"./dist/index.d.ts",exports:{".":{require:"./dist/index.cjs",import:"./dist/index.js",types:"./dist/index.d.ts",browser:"./dist/index.global.js"},"./react":{require:"./dist/react/index.cjs",import:"./dist/react/index.js",types:"./dist/react/index.d.ts"}},scripts:{lint:"ts-standard --fix",build:"npm run build:lib && npm run build:react","build:lib":"tsup --config tsup.lib.js","build:react":"tsup --config tsup.react.js",test:'echo "Error: no test specified" && exit 1',"serve:example":"esbuild src/index.ts --bundle --outfile=example/out.js --format=esm --watch --servedir=example"},keywords:["orama","search engine","sdk"],files:["dist"],author:{name:"Michele Riva",email:"michele.riva@oramasearch.com",url:"https://github.com/MicheleRiva"},license:"ISC",dependencies:{"@orama/orama":"^1.0.8","@paralleldrive/cuid2":"^2.2.1",react:"^18.2.0"},devDependencies:{"@types/node":"^20.3.1","@types/react":"^18.2.14",esbuild:"0.18.5","ts-standard":"^12.0.2",tsup:"^7.1.0",typescript:"^5.1.3"}};function C(t,e){if(typeof navigator<"u"){navigator.sendBeacon(t,e);return}fetch(t,{method:"POST",body:e,headers:{"Content-Type":"application/json"}}).then(()=>{},n=>console.log(n))}var H=class t{data;params;config;constructor(e){this.data=[],this.config=e}setParams(e){this.params=e}static create(e){let n=new t(e);return n.start(),n}add(e){this.data.push({rawSearchString:e.rawSearchString,query:e.query,resultsCount:e.resultsCount,roundTripTime:e.roundTripTime,searchedAt:e.searchedAt,referer:typeof location<"u"?location.toString():void 0}),this.params!=null&&this.data.length>=this.config.flushSize&&this.flush()}flush(){if(this.params==null||this.data.length===0)return;let e=this.data;this.data=[];let n={source:"fe",deploymentID:this.params.deploymentID,index:this.params.index,oramaId:this.config.id,oramaVersion:St.version,userAgent:typeof navigator<"u"?navigator.userAgent:void 0,events:e};C(this.params.endpoint+`?api-key=${this.config.api_key}`,JSON.stringify(n))}start(){setInterval(this.flush.bind(this),this.config.flushInterval)}};var M=class{constructor(e){this.params=e}intervalId;start(){this.stop(),this.intervalId=setInterval(this.beat.bind(this),this.params.frequency)}stop(){this.intervalId!==void 0&&clearInterval(this.intervalId)}beat(){C(this.params.endpoint)}};var q=class{id=(0,_t.createId)();api_key;endpoint;collector;cache;heartbeat;initPromise;constructor(e){if(this.api_key=e.api_key,this.endpoint=e.endpoint,e.telemetry!==!1){let n={id:this.id,api_key:this.api_key,flushInterval:e.telemetry?.flushInterval??5e3,flushSize:e.telemetry?.flushSize??25};this.collector=H.create(n)}if(e.cache!==!1){let n={};this.cache=new j(n)}this.init()}async search(e,n){await this.initPromise;let r=JSON.stringify(e),o,s,i=!1;if((n?.fresh!==!0&&this.cache?.has(r))===!0&&this.cache!=null)o=0,s=this.cache.get(r),i=!0;else{let p=Date.now();s=await this.fetch("search","POST",{q:e},n?.abortController);let d=Date.now();s.elapsed=await Y(BigInt(d*1e6-p*1e6)),o=d-p,this.cache?.set(r,s)}return this.collector!=null&&this.collector.add({rawSearchString:e.term,resultsCount:s.hits.length,roundTripTime:o,query:e,cached:i,searchedAt:new Date}),s}startHeartBeat(e){this.heartbeat?.stop(),this.heartbeat=new M({...e,endpoint:this.endpoint+`/health?api-key=${this.api_key}`}),this.heartbeat.start()}stopHeartBeat(){this.heartbeat?.stop()}init(){this.initPromise=this.fetch("init","GET").then(e=>{this.collector?.setParams({endpoint:e.collectUrl,deploymentID:e.deploymentID,index:e.index})}).catch(e=>console.log(e))}async fetch(e,n,r,o){if(o?.signal.aborted===!0)throw new Error("Request aborted");let s={method:n,headers:{"Content-Type":"application/x-www-form-urlencoded"},signal:o?.signal};if(n==="POST"&&r!==void 0){let a=r;a.version=Ct,a.id=this.id,s.body=Object.entries(a).map(([p,d])=>`${p}=${encodeURIComponent(JSON.stringify(d))}`).join("&")}return await(await fetch(`${this.endpoint}/${e}?api-key=${this.api_key}`,s)).json()}};return Ut($e);})();
/*! Bundled license information:

@@ -3,0 +3,0 @@

@@ -1,2 +0,2 @@

import{formatElapsedTime as C}from"@orama/orama/components";import{createId as b}from"@paralleldrive/cuid2";var d=class{cache;config;constructor(e){this.cache=new Map,this.config=e}set(e,t){this.cache.set(e,t)}get(e){return this.cache.get(e)}has(e){return this.cache.has(e)}delete(e){return this.cache.delete(e)}clear(){this.cache.clear()}size(){return this.cache.size}};var f="1.0.0-beta.17";var y={name:"@oramacloud/client",version:f,description:"Orama SDK for Node.js, Deno, and Browsers",type:"module",sideEffects:!1,main:"./dist/index.cjs",module:"./dist/index.js",types:"./dist/index.d.ts",runkitExampleFilename:"./example/runkit.js",exports:{".":{require:"./dist/index.cjs",import:"./dist/index.js",types:"./dist/index.d.ts",browser:"./dist/index.global.js"},"./react":{require:"./dist/react/index.cjs",import:"./dist/react/index.js",types:"./dist/react/index.d.ts"}},scripts:{lint:"ts-standard --fix",build:"npm run build:lib && npm run build:react","build:lib":"tsup --config tsup.lib.js","build:react":"tsup --config tsup.react.js",test:"tsx tests/index.test.ts","serve:example":"esbuild src/index.ts --bundle --outfile=example/out.js --format=esm --watch --servedir=example",prepare:"husky install"},keywords:["orama","search engine","sdk"],files:["dist"],author:{name:"Michele Riva",email:"michele.riva@oramasearch.com",url:"https://github.com/MicheleRiva"},license:"ISC",dependencies:{"@orama/orama":"^1.0.10","@paralleldrive/cuid2":"^2.2.1",react:"^18.2.0"},devDependencies:{"@fastify/formbody":"^7.4.0","@types/node":"^20.3.1","@types/react":"^18.2.14",esbuild:"0.18.5",fastify:"^4.19.2",husky:"^8.0.3","ts-standard":"^12.0.2",tsup:"^7.1.0",tsx:"^3.12.7",typescript:"^5.1.3"}};function n(r,e){if(typeof navigator<"u"){navigator.sendBeacon(r,e);return}fetch(r,{method:"POST",body:e,headers:{"Content-Type":"application/json"}}).then(()=>{},t=>console.log(t))}var p=class r{data;params;config;constructor(e){this.data=[],this.config=e}setParams(e){this.params=e}static create(e){let t=new r(e);return t.start(),t}add(e){this.data.push({rawSearchString:e.rawSearchString,query:e.query,resultsCount:e.resultsCount,roundTripTime:e.roundTripTime,searchedAt:e.searchedAt,referer:typeof location<"u"?location.toString():void 0}),this.params!=null&&this.data.length>=this.config.flushSize&&this.flush()}flush(){if(this.params==null||this.data.length===0)return;let e=this.data;this.data=[];let t={source:"fe",deploymentID:this.params.deploymentID,index:this.params.index,oramaId:this.config.id,oramaVersion:y.version,userAgent:typeof navigator<"u"?navigator.userAgent:void 0,events:e};n(this.params.endpoint+`?api-key=${this.config.api_key}`,JSON.stringify(t))}start(){let e=setInterval(this.flush.bind(this),this.config.flushInterval);e.unref!=null&&e.unref()}};var h=class{constructor(e){this.params=e}intervalId;start(){this.stop(),this.intervalId=setInterval(this.beat.bind(this),this.params.frequency)}stop(){this.intervalId!==void 0&&clearInterval(this.intervalId)}beat(){n(this.params.endpoint)}};var g=class{id=b();api_key;endpoint;collector;cache;heartbeat;initPromise;constructor(e){if(this.api_key=e.api_key,this.endpoint=e.endpoint,e.telemetry!==!1){let t={id:this.id,api_key:this.api_key,flushInterval:e.telemetry?.flushInterval??5e3,flushSize:e.telemetry?.flushSize??25};this.collector=p.create(t)}if(e.cache!==!1){let t={};this.cache=new d(t)}this.init()}async search(e,t){await this.initPromise;let s=JSON.stringify(e),a,i,u=!1;if((t?.fresh!==!0&&this.cache?.has(s))===!0&&this.cache!=null)a=0,i=this.cache.get(s),u=!0;else{let c=Date.now();i=await this.fetch("search","POST",{q:e},t?.abortController);let l=Date.now();i.elapsed=await C(BigInt(l*1e6-c*1e6)),a=l-c,this.cache?.set(s,i)}return this.collector!=null&&this.collector.add({rawSearchString:e.term,resultsCount:i.hits.length,roundTripTime:a,query:e,cached:u,searchedAt:new Date}),i}startHeartBeat(e){this.heartbeat?.stop(),this.heartbeat=new h({...e,endpoint:this.endpoint+`/health?api-key=${this.api_key}`}),this.heartbeat.start()}stopHeartBeat(){this.heartbeat?.stop()}init(){this.initPromise=this.fetch("init","GET").then(e=>{this.collector?.setParams({endpoint:e.collectUrl,deploymentID:e.deploymentID,index:e.index})}).catch(e=>console.log(e))}async fetch(e,t,s,a){if(a?.signal.aborted===!0)throw new Error("Request aborted");let i={method:t,headers:{"Content-Type":"application/x-www-form-urlencoded"},signal:a?.signal};if(t==="POST"&&s!==void 0){let o=s;o.version=f,o.id=this.id,i.body=Object.entries(o).map(([c,l])=>`${c}=${encodeURIComponent(JSON.stringify(l))}`).join("&")}return await(await fetch(`${this.endpoint}/${e}?api-key=${this.api_key}`,i)).json()}};export{g as OramaClient};
import{formatElapsedTime as C}from"@orama/orama/components";import{createId as b}from"@paralleldrive/cuid2";var d=class{cache;config;constructor(e){this.cache=new Map,this.config=e}set(e,t){this.cache.set(e,t)}get(e){return this.cache.get(e)}has(e){return this.cache.has(e)}delete(e){return this.cache.delete(e)}clear(){this.cache.clear()}size(){return this.cache.size}};var f="1.0.0-beta.14";var g={name:"@oramacloud/client",version:f,description:"Orama SDK for Node.js, Deno, and Browsers",type:"module",sideEffects:!1,main:"./dist/index.cjs",module:"./dist/index.js",types:"./dist/index.d.ts",exports:{".":{require:"./dist/index.cjs",import:"./dist/index.js",types:"./dist/index.d.ts",browser:"./dist/index.global.js"},"./react":{require:"./dist/react/index.cjs",import:"./dist/react/index.js",types:"./dist/react/index.d.ts"}},scripts:{lint:"ts-standard --fix",build:"npm run build:lib && npm run build:react","build:lib":"tsup --config tsup.lib.js","build:react":"tsup --config tsup.react.js",test:'echo "Error: no test specified" && exit 1',"serve:example":"esbuild src/index.ts --bundle --outfile=example/out.js --format=esm --watch --servedir=example"},keywords:["orama","search engine","sdk"],files:["dist"],author:{name:"Michele Riva",email:"michele.riva@oramasearch.com",url:"https://github.com/MicheleRiva"},license:"ISC",dependencies:{"@orama/orama":"^1.0.8","@paralleldrive/cuid2":"^2.2.1",react:"^18.2.0"},devDependencies:{"@types/node":"^20.3.1","@types/react":"^18.2.14",esbuild:"0.18.5","ts-standard":"^12.0.2",tsup:"^7.1.0",typescript:"^5.1.3"}};function o(r,e){if(typeof navigator<"u"){navigator.sendBeacon(r,e);return}fetch(r,{method:"POST",body:e,headers:{"Content-Type":"application/json"}}).then(()=>{},t=>console.log(t))}var p=class r{data;params;config;constructor(e){this.data=[],this.config=e}setParams(e){this.params=e}static create(e){let t=new r(e);return t.start(),t}add(e){this.data.push({rawSearchString:e.rawSearchString,query:e.query,resultsCount:e.resultsCount,roundTripTime:e.roundTripTime,searchedAt:e.searchedAt,referer:typeof location<"u"?location.toString():void 0}),this.params!=null&&this.data.length>=this.config.flushSize&&this.flush()}flush(){if(this.params==null||this.data.length===0)return;let e=this.data;this.data=[];let t={source:"fe",deploymentID:this.params.deploymentID,index:this.params.index,oramaId:this.config.id,oramaVersion:g.version,userAgent:typeof navigator<"u"?navigator.userAgent:void 0,events:e};o(this.params.endpoint+`?api-key=${this.config.api_key}`,JSON.stringify(t))}start(){setInterval(this.flush.bind(this),this.config.flushInterval)}};var h=class{constructor(e){this.params=e}intervalId;start(){this.stop(),this.intervalId=setInterval(this.beat.bind(this),this.params.frequency)}stop(){this.intervalId!==void 0&&clearInterval(this.intervalId)}beat(){o(this.params.endpoint)}};var v=class{id=b();api_key;endpoint;collector;cache;heartbeat;initPromise;constructor(e){if(this.api_key=e.api_key,this.endpoint=e.endpoint,e.telemetry!==!1){let t={id:this.id,api_key:this.api_key,flushInterval:e.telemetry?.flushInterval??5e3,flushSize:e.telemetry?.flushSize??25};this.collector=p.create(t)}if(e.cache!==!1){let t={};this.cache=new d(t)}this.init()}async search(e,t){await this.initPromise;let s=JSON.stringify(e),a,i,u=!1;if((t?.fresh!==!0&&this.cache?.has(s))===!0&&this.cache!=null)a=0,i=this.cache.get(s),u=!0;else{let c=Date.now();i=await this.fetch("search","POST",{q:e},t?.abortController);let l=Date.now();i.elapsed=await C(BigInt(l*1e6-c*1e6)),a=l-c,this.cache?.set(s,i)}return this.collector!=null&&this.collector.add({rawSearchString:e.term,resultsCount:i.hits.length,roundTripTime:a,query:e,cached:u,searchedAt:new Date}),i}startHeartBeat(e){this.heartbeat?.stop(),this.heartbeat=new h({...e,endpoint:this.endpoint+`/health?api-key=${this.api_key}`}),this.heartbeat.start()}stopHeartBeat(){this.heartbeat?.stop()}init(){this.initPromise=this.fetch("init","GET").then(e=>{this.collector?.setParams({endpoint:e.collectUrl,deploymentID:e.deploymentID,index:e.index})}).catch(e=>console.log(e))}async fetch(e,t,s,a){if(a?.signal.aborted===!0)throw new Error("Request aborted");let i={method:t,headers:{"Content-Type":"application/x-www-form-urlencoded"},signal:a?.signal};if(t==="POST"&&s!==void 0){let n=s;n.version=f,n.id=this.id,i.body=Object.entries(n).map(([c,l])=>`${c}=${encodeURIComponent(JSON.stringify(l))}`).join("&")}return await(await fetch(`${this.endpoint}/${e}?api-key=${this.api_key}`,i)).json()}};export{v as OramaClient};
//# sourceMappingURL=index.js.map

@@ -1,2 +0,2 @@

import O,{useState as f,useEffect as v,createContext as E,useContext as w}from"react";import{formatElapsedTime as I}from"@orama/orama/components";import{createId as T}from"@paralleldrive/cuid2";var p=class{cache;config;constructor(e){this.cache=new Map,this.config=e}set(e,t){this.cache.set(e,t)}get(e){return this.cache.get(e)}has(e){return this.cache.has(e)}delete(e){return this.cache.delete(e)}clear(){this.cache.clear()}size(){return this.cache.size}};var C="1.0.0-beta.17";var g={name:"@oramacloud/client",version:C,description:"Orama SDK for Node.js, Deno, and Browsers",type:"module",sideEffects:!1,main:"./dist/index.cjs",module:"./dist/index.js",types:"./dist/index.d.ts",runkitExampleFilename:"./example/runkit.js",exports:{".":{require:"./dist/index.cjs",import:"./dist/index.js",types:"./dist/index.d.ts",browser:"./dist/index.global.js"},"./react":{require:"./dist/react/index.cjs",import:"./dist/react/index.js",types:"./dist/react/index.d.ts"}},scripts:{lint:"ts-standard --fix",build:"npm run build:lib && npm run build:react","build:lib":"tsup --config tsup.lib.js","build:react":"tsup --config tsup.react.js",test:"tsx tests/index.test.ts","serve:example":"esbuild src/index.ts --bundle --outfile=example/out.js --format=esm --watch --servedir=example",prepare:"husky install"},keywords:["orama","search engine","sdk"],files:["dist"],author:{name:"Michele Riva",email:"michele.riva@oramasearch.com",url:"https://github.com/MicheleRiva"},license:"ISC",dependencies:{"@orama/orama":"^1.0.10","@paralleldrive/cuid2":"^2.2.1",react:"^18.2.0"},devDependencies:{"@fastify/formbody":"^7.4.0","@types/node":"^20.3.1","@types/react":"^18.2.14",esbuild:"0.18.5",fastify:"^4.19.2",husky:"^8.0.3","ts-standard":"^12.0.2",tsup:"^7.1.0",tsx:"^3.12.7",typescript:"^5.1.3"}};function d(i,e){if(typeof navigator<"u"){navigator.sendBeacon(i,e);return}fetch(i,{method:"POST",body:e,headers:{"Content-Type":"application/json"}}).then(()=>{},t=>console.log(t))}var h=class i{data;params;config;constructor(e){this.data=[],this.config=e}setParams(e){this.params=e}static create(e){let t=new i(e);return t.start(),t}add(e){this.data.push({rawSearchString:e.rawSearchString,query:e.query,resultsCount:e.resultsCount,roundTripTime:e.roundTripTime,searchedAt:e.searchedAt,referer:typeof location<"u"?location.toString():void 0}),this.params!=null&&this.data.length>=this.config.flushSize&&this.flush()}flush(){if(this.params==null||this.data.length===0)return;let e=this.data;this.data=[];let t={source:"fe",deploymentID:this.params.deploymentID,index:this.params.index,oramaId:this.config.id,oramaVersion:g.version,userAgent:typeof navigator<"u"?navigator.userAgent:void 0,events:e};d(this.params.endpoint+`?api-key=${this.config.api_key}`,JSON.stringify(t))}start(){let e=setInterval(this.flush.bind(this),this.config.flushInterval);e.unref!=null&&e.unref()}};var u=class{constructor(e){this.params=e}intervalId;start(){this.stop(),this.intervalId=setInterval(this.beat.bind(this),this.params.frequency)}stop(){this.intervalId!==void 0&&clearInterval(this.intervalId)}beat(){d(this.params.endpoint)}};var m=class{id=T();api_key;endpoint;collector;cache;heartbeat;initPromise;constructor(e){if(this.api_key=e.api_key,this.endpoint=e.endpoint,e.telemetry!==!1){let t={id:this.id,api_key:this.api_key,flushInterval:e.telemetry?.flushInterval??5e3,flushSize:e.telemetry?.flushSize??25};this.collector=h.create(t)}if(e.cache!==!1){let t={};this.cache=new p(t)}this.init()}async search(e,t){await this.initPromise;let a=JSON.stringify(e),s,r,c=!1;if((t?.fresh!==!0&&this.cache?.has(a))===!0&&this.cache!=null)s=0,r=this.cache.get(a),c=!0;else{let o=Date.now();r=await this.fetch("search","POST",{q:e},t?.abortController);let l=Date.now();r.elapsed=await I(BigInt(l*1e6-o*1e6)),s=l-o,this.cache?.set(a,r)}return this.collector!=null&&this.collector.add({rawSearchString:e.term,resultsCount:r.hits.length,roundTripTime:s,query:e,cached:c,searchedAt:new Date}),r}startHeartBeat(e){this.heartbeat?.stop(),this.heartbeat=new u({...e,endpoint:this.endpoint+`/health?api-key=${this.api_key}`}),this.heartbeat.start()}stopHeartBeat(){this.heartbeat?.stop()}init(){this.initPromise=this.fetch("init","GET").then(e=>{this.collector?.setParams({endpoint:e.collectUrl,deploymentID:e.deploymentID,index:e.index})}).catch(e=>console.log(e))}async fetch(e,t,a,s){if(s?.signal.aborted===!0)throw new Error("Request aborted");let r={method:t,headers:{"Content-Type":"application/x-www-form-urlencoded"},signal:s?.signal};if(t==="POST"&&a!==void 0){let n=a;n.version=C,n.id=this.id,r.body=Object.entries(n).map(([o,l])=>`${o}=${encodeURIComponent(JSON.stringify(l))}`).join("&")}return await(await fetch(`${this.endpoint}/${e}?api-key=${this.api_key}`,r)).json()}};var b=E({endpoint:"",apiKey:""}),J=({children:i,endpoint:e,apiKey:t})=>O.createElement(b.Provider,{value:{endpoint:e,apiKey:t}},i);function Y(i){let{apiKey:e,endpoint:t}=w(b),[a,s]=f(!1),[r,c]=f(null),[n,o]=f(null),[l,x]=f(null);return v(()=>{c(new m({api_key:e,endpoint:t})),s(!0)},[]),v(()=>{r!==null&&r.search(i).then(o).catch(x)},[r,i]),{ready:a,results:n,error:l}}export{J as OramaCloud,Y as useSearch};
import O,{useState as f,useEffect as v,createContext as E,useContext as w}from"react";import{formatElapsedTime as I}from"@orama/orama/components";import{createId as T}from"@paralleldrive/cuid2";var p=class{cache;config;constructor(e){this.cache=new Map,this.config=e}set(e,t){this.cache.set(e,t)}get(e){return this.cache.get(e)}has(e){return this.cache.has(e)}delete(e){return this.cache.delete(e)}clear(){this.cache.clear()}size(){return this.cache.size}};var y="1.0.0-beta.14";var g={name:"@oramacloud/client",version:y,description:"Orama SDK for Node.js, Deno, and Browsers",type:"module",sideEffects:!1,main:"./dist/index.cjs",module:"./dist/index.js",types:"./dist/index.d.ts",exports:{".":{require:"./dist/index.cjs",import:"./dist/index.js",types:"./dist/index.d.ts",browser:"./dist/index.global.js"},"./react":{require:"./dist/react/index.cjs",import:"./dist/react/index.js",types:"./dist/react/index.d.ts"}},scripts:{lint:"ts-standard --fix",build:"npm run build:lib && npm run build:react","build:lib":"tsup --config tsup.lib.js","build:react":"tsup --config tsup.react.js",test:'echo "Error: no test specified" && exit 1',"serve:example":"esbuild src/index.ts --bundle --outfile=example/out.js --format=esm --watch --servedir=example"},keywords:["orama","search engine","sdk"],files:["dist"],author:{name:"Michele Riva",email:"michele.riva@oramasearch.com",url:"https://github.com/MicheleRiva"},license:"ISC",dependencies:{"@orama/orama":"^1.0.8","@paralleldrive/cuid2":"^2.2.1",react:"^18.2.0"},devDependencies:{"@types/node":"^20.3.1","@types/react":"^18.2.14",esbuild:"0.18.5","ts-standard":"^12.0.2",tsup:"^7.1.0",typescript:"^5.1.3"}};function d(i,e){if(typeof navigator<"u"){navigator.sendBeacon(i,e);return}fetch(i,{method:"POST",body:e,headers:{"Content-Type":"application/json"}}).then(()=>{},t=>console.log(t))}var h=class i{data;params;config;constructor(e){this.data=[],this.config=e}setParams(e){this.params=e}static create(e){let t=new i(e);return t.start(),t}add(e){this.data.push({rawSearchString:e.rawSearchString,query:e.query,resultsCount:e.resultsCount,roundTripTime:e.roundTripTime,searchedAt:e.searchedAt,referer:typeof location<"u"?location.toString():void 0}),this.params!=null&&this.data.length>=this.config.flushSize&&this.flush()}flush(){if(this.params==null||this.data.length===0)return;let e=this.data;this.data=[];let t={source:"fe",deploymentID:this.params.deploymentID,index:this.params.index,oramaId:this.config.id,oramaVersion:g.version,userAgent:typeof navigator<"u"?navigator.userAgent:void 0,events:e};d(this.params.endpoint+`?api-key=${this.config.api_key}`,JSON.stringify(t))}start(){setInterval(this.flush.bind(this),this.config.flushInterval)}};var u=class{constructor(e){this.params=e}intervalId;start(){this.stop(),this.intervalId=setInterval(this.beat.bind(this),this.params.frequency)}stop(){this.intervalId!==void 0&&clearInterval(this.intervalId)}beat(){d(this.params.endpoint)}};var m=class{id=T();api_key;endpoint;collector;cache;heartbeat;initPromise;constructor(e){if(this.api_key=e.api_key,this.endpoint=e.endpoint,e.telemetry!==!1){let t={id:this.id,api_key:this.api_key,flushInterval:e.telemetry?.flushInterval??5e3,flushSize:e.telemetry?.flushSize??25};this.collector=h.create(t)}if(e.cache!==!1){let t={};this.cache=new p(t)}this.init()}async search(e,t){await this.initPromise;let a=JSON.stringify(e),s,r,l=!1;if((t?.fresh!==!0&&this.cache?.has(a))===!0&&this.cache!=null)s=0,r=this.cache.get(a),l=!0;else{let n=Date.now();r=await this.fetch("search","POST",{q:e},t?.abortController);let c=Date.now();r.elapsed=await I(BigInt(c*1e6-n*1e6)),s=c-n,this.cache?.set(a,r)}return this.collector!=null&&this.collector.add({rawSearchString:e.term,resultsCount:r.hits.length,roundTripTime:s,query:e,cached:l,searchedAt:new Date}),r}startHeartBeat(e){this.heartbeat?.stop(),this.heartbeat=new u({...e,endpoint:this.endpoint+`/health?api-key=${this.api_key}`}),this.heartbeat.start()}stopHeartBeat(){this.heartbeat?.stop()}init(){this.initPromise=this.fetch("init","GET").then(e=>{this.collector?.setParams({endpoint:e.collectUrl,deploymentID:e.deploymentID,index:e.index})}).catch(e=>console.log(e))}async fetch(e,t,a,s){if(s?.signal.aborted===!0)throw new Error("Request aborted");let r={method:t,headers:{"Content-Type":"application/x-www-form-urlencoded"},signal:s?.signal};if(t==="POST"&&a!==void 0){let o=a;o.version=y,o.id=this.id,r.body=Object.entries(o).map(([n,c])=>`${n}=${encodeURIComponent(JSON.stringify(c))}`).join("&")}return await(await fetch(`${this.endpoint}/${e}?api-key=${this.api_key}`,r)).json()}};var b=E({endpoint:"",apiKey:""}),J=({children:i,endpoint:e,apiKey:t})=>O.createElement(b.Provider,{value:{endpoint:e,apiKey:t}},i);function Y(i){let{apiKey:e,endpoint:t}=w(b),[a,s]=f(!1),[r,l]=f(null),[o,n]=f(null),[c,S]=f(null);return v(()=>{l(new m({api_key:e,endpoint:t})),s(!0)},[]),v(()=>{r!==null&&r.search(i).then(n).catch(S)},[r,i]),{ready:a,results:o,error:c}}export{J as OramaCloud,Y as useSearch};
//# sourceMappingURL=index.js.map
{
"name": "@oramacloud/client",
"version": "1.0.0-beta.17",
"version": "1.0.0-beta.19",
"description": "Orama SDK for Node.js, Deno, and Browsers",

@@ -30,3 +30,4 @@ "type": "module",

"files": [
"dist"
"dist",
"example/runkit.js"
],

@@ -33,0 +34,0 @@ "author": {

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc