tinybase 2.2.6 → 3.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/cli.js +1 -1
- package/lib/checkpoints.d.ts +18 -3
- package/lib/checkpoints.js +1 -1
- package/lib/checkpoints.js.gz +0 -0
- package/lib/debug/checkpoints.d.ts +18 -3
- package/lib/debug/checkpoints.js +97 -49
- package/lib/debug/indexes.js +31 -16
- package/lib/debug/metrics.js +31 -16
- package/lib/debug/persisters.d.ts +33 -23
- package/lib/debug/persisters.js +10 -5
- package/lib/debug/queries.js +2 -2
- package/lib/debug/relationships.js +31 -16
- package/lib/debug/store.d.ts +2022 -383
- package/lib/debug/store.js +440 -108
- package/lib/debug/tinybase.js +508 -140
- package/lib/debug/tools.d.ts +89 -38
- package/lib/debug/tools.js +757 -453
- package/lib/debug/ui-react.d.ts +1525 -381
- package/lib/debug/ui-react.js +163 -12
- package/lib/es6/checkpoints.d.ts +18 -3
- package/lib/es6/checkpoints.js +1 -1
- package/lib/es6/checkpoints.js.gz +0 -0
- package/lib/es6/indexes.js +1 -1
- package/lib/es6/indexes.js.gz +0 -0
- package/lib/es6/metrics.js +1 -1
- package/lib/es6/metrics.js.gz +0 -0
- package/lib/es6/persisters.d.ts +33 -23
- package/lib/es6/persisters.js +1 -1
- package/lib/es6/persisters.js.gz +0 -0
- package/lib/es6/relationships.js +1 -1
- package/lib/es6/relationships.js.gz +0 -0
- package/lib/es6/store.d.ts +2022 -383
- package/lib/es6/store.js +1 -1
- package/lib/es6/store.js.gz +0 -0
- package/lib/es6/tinybase.js +1 -1
- package/lib/es6/tinybase.js.gz +0 -0
- package/lib/es6/tools.d.ts +89 -38
- package/lib/es6/tools.js +1 -1
- package/lib/es6/tools.js.gz +0 -0
- package/lib/es6/ui-react.d.ts +1525 -381
- package/lib/es6/ui-react.js +1 -1
- package/lib/es6/ui-react.js.gz +0 -0
- package/lib/indexes.js +1 -1
- package/lib/indexes.js.gz +0 -0
- package/lib/metrics.js +1 -1
- package/lib/metrics.js.gz +0 -0
- package/lib/persisters.d.ts +33 -23
- package/lib/persisters.js +1 -1
- package/lib/persisters.js.gz +0 -0
- package/lib/relationships.js +1 -1
- package/lib/relationships.js.gz +0 -0
- package/lib/store.d.ts +2022 -383
- package/lib/store.js +1 -1
- package/lib/store.js.gz +0 -0
- package/lib/tinybase.js +1 -1
- package/lib/tinybase.js.gz +0 -0
- package/lib/tools.d.ts +89 -38
- package/lib/tools.js +1 -1
- package/lib/tools.js.gz +0 -0
- package/lib/ui-react.d.ts +1525 -381
- package/lib/ui-react.js +1 -1
- package/lib/ui-react.js.gz +0 -0
- package/lib/umd/checkpoints.d.ts +18 -3
- package/lib/umd/checkpoints.js +1 -1
- package/lib/umd/checkpoints.js.gz +0 -0
- package/lib/umd/indexes.js +1 -1
- package/lib/umd/indexes.js.gz +0 -0
- package/lib/umd/metrics.js +1 -1
- package/lib/umd/metrics.js.gz +0 -0
- package/lib/umd/persisters.d.ts +33 -23
- package/lib/umd/persisters.js +1 -1
- package/lib/umd/persisters.js.gz +0 -0
- package/lib/umd/relationships.js +1 -1
- package/lib/umd/relationships.js.gz +0 -0
- package/lib/umd/store.d.ts +2022 -383
- package/lib/umd/store.js +1 -1
- package/lib/umd/store.js.gz +0 -0
- package/lib/umd/tinybase.js +1 -1
- package/lib/umd/tinybase.js.gz +0 -0
- package/lib/umd/tools.d.ts +89 -38
- package/lib/umd/tools.js +1 -1
- package/lib/umd/tools.js.gz +0 -0
- package/lib/umd/ui-react.d.ts +1525 -381
- package/lib/umd/ui-react.js +1 -1
- package/lib/umd/ui-react.js.gz +0 -0
- package/lib/umd-es6/checkpoints.d.ts +18 -3
- package/lib/umd-es6/checkpoints.js +1 -1
- package/lib/umd-es6/checkpoints.js.gz +0 -0
- package/lib/umd-es6/indexes.js +1 -1
- package/lib/umd-es6/indexes.js.gz +0 -0
- package/lib/umd-es6/metrics.js +1 -1
- package/lib/umd-es6/metrics.js.gz +0 -0
- package/lib/umd-es6/persisters.d.ts +33 -23
- package/lib/umd-es6/persisters.js +1 -1
- package/lib/umd-es6/persisters.js.gz +0 -0
- package/lib/umd-es6/relationships.js +1 -1
- package/lib/umd-es6/relationships.js.gz +0 -0
- package/lib/umd-es6/store.d.ts +2022 -383
- package/lib/umd-es6/store.js +1 -1
- package/lib/umd-es6/store.js.gz +0 -0
- package/lib/umd-es6/tinybase.js +1 -1
- package/lib/umd-es6/tinybase.js.gz +0 -0
- package/lib/umd-es6/tools.d.ts +89 -38
- package/lib/umd-es6/tools.js +1 -1
- package/lib/umd-es6/tools.js.gz +0 -0
- package/lib/umd-es6/ui-react.d.ts +1525 -381
- package/lib/umd-es6/ui-react.js +1 -1
- package/lib/umd-es6/ui-react.js.gz +0 -0
- package/package.json +26 -26
- package/readme.md +20 -19
package/lib/es6/persisters.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{watch as e,promises as t}from"fs";const o=e=>null==e,n=(e,t,n)=>o(e)?null==n?void 0:n():t(e),r=Object.freeze;var l=(e,t,o)=>new Promise(((n,r)=>{var l=e=>{try{s(o.next(e))}catch(e){r(e)}},a=e=>{try{s(o.throw(e))}catch(e){r(e)}},s=e=>e.done?n(e.value):Promise.resolve(e.value).then(l,a);s((o=o.apply(e,t)).next())}));const a=(e,t,a,s,i)=>{let u,c=0;const
|
|
1
|
+
import{watch as e,promises as t}from"fs";const o=e=>null==e,n=(e,t,n)=>o(e)?null==n?void 0:n():t(e),r=Object.freeze;var l=(e,t,o)=>new Promise(((n,r)=>{var l=e=>{try{s(o.next(e))}catch(e){r(e)}},a=e=>{try{s(o.throw(e))}catch(e){r(e)}},s=e=>e.done?n(e.value):Promise.resolve(e.value).then(l,a);s((o=o.apply(e,t)).next())}));const a=(e,t,a,s,i)=>{let u,d,c=0;const v={load:(n,r)=>l(void 0,null,(function*(){if(2!=c){c=1;const l=yield t();o(l)||""==l?e.transaction((()=>e.setTables(n).setValues(r))):e.setJson(l),c=0}return v})),startAutoLoad:(e,t)=>l(void 0,null,(function*(){return v.stopAutoLoad(),yield v.load(e,t),s(v.load),v})),stopAutoLoad:()=>(i(),v),save:()=>l(void 0,null,(function*(){return 1!=c&&(c=2,yield a(e.getJson()),c=0),v})),startAutoSave:()=>l(void 0,null,(function*(){return yield v.stopAutoSave().save(),u=e.addTablesListener(v.save),d=e.addValuesListener(v.save),v})),stopAutoSave:()=>(n(u,e.delListener),n(d,e.delListener),v),getStore:()=>e,destroy:()=>v.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r(v)};var s=(e,t,o)=>new Promise(((n,r)=>{var l=e=>{try{s(o.next(e))}catch(e){r(e)}},a=e=>{try{s(o.throw(e))}catch(e){r(e)}},s=e=>e.done?n(e.value):Promise.resolve(e.value).then(l,a);s((o=o.apply(e,t)).next())}));const i=globalThis.window,u=(e,t,o)=>{let n;return a(e,(()=>s(void 0,null,(function*(){return o.getItem(t)}))),(e=>s(void 0,null,(function*(){return o.setItem(t,e)}))),(e=>{n=n=>{n.storageArea===o&&n.key===t&&e()},i.addEventListener("storage",n)}),(()=>{i.removeEventListener("storage",n),n=void 0}))},d=(e,t)=>u(e,t,localStorage),c=(e,t)=>u(e,t,sessionStorage);var v=(e,t,o)=>new Promise(((n,r)=>{var l=e=>{try{s(o.next(e))}catch(e){r(e)}},a=e=>{try{s(o.throw(e))}catch(e){r(e)}},s=e=>e.done?n(e.value):Promise.resolve(e.value).then(l,a);s((o=o.apply(e,t)).next())}));const y=(o,n)=>{let r;return a(o,(()=>v(void 0,null,(function*(){try{return yield t.readFile(n,"utf8")}catch(e){}}))),(e=>v(void 0,null,(function*(){try{yield t.writeFile(n,e,"utf8")}catch(e){}}))),(t=>{r=e(n,t)}),(()=>{null==r||r.close(),r=void 0}))};var h=(e,t,o)=>new Promise(((n,r)=>{var l=e=>{try{s(o.next(e))}catch(e){r(e)}},a=e=>{try{s(o.throw(e))}catch(e){r(e)}},s=e=>e.done?n(e.value):Promise.resolve(e.value).then(l,a);s((o=o.apply(e,t)).next())}));const f=e=>e.headers.get("ETag"),p=(e,t,r,l)=>{let s,i;return a(e,(()=>h(void 0,null,(function*(){const e=yield fetch(t);return i=f(e),e.text()}))),(e=>h(void 0,null,(function*(){return yield fetch(r,{method:"POST",headers:{"Content-Type":"application/json"},body:e})}))),(e=>{s=setInterval((()=>h(void 0,null,(function*(){const n=yield fetch(t,{method:"HEAD"}),r=f(n);o(i)||o(r)||r==i||(i=r,e())}))),1e3*l)}),(()=>{n(s,clearInterval),s=void 0}))};export{a as createCustomPersister,y as createFilePersister,d as createLocalPersister,p as createRemotePersister,c as createSessionPersister};
|
package/lib/es6/persisters.js.gz
CHANGED
|
Binary file
|
package/lib/es6/relationships.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=e=>typeof e,
|
|
1
|
+
const e=e=>typeof e,n=e(""),t=(e,n)=>e.forEach(n),l=e=>e.length,r=(e,...n)=>e.push(...n),o=e=>null==e,s=(e,n,t)=>o(e)?null==t?void 0:t():n(e),i=e=>Array.isArray(e),u=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},d=e=>o(e)||0==(e=>e.size)(e),a=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},c=e=>e.clear(),v=(e,n)=>null==e?void 0:e.forEach(n),R=(e,n)=>null==e?void 0:e.delete(n),h=e=>new Map(e),f=(e,n)=>null==e?void 0:e.get(n),L=(e,n)=>v(e,((e,t)=>n(t,e))),g=(e,n,t)=>o(t)?(R(e,n),e):null==e?void 0:e.set(n,t),w=(e,n,t)=>(u(e,n)||g(e,n,t()),f(e,n)),p=(e,n,t,r,o=0)=>s((t?w:f)(e,n[o],o>l(n)-2?t:h),(s=>{if(o>l(n)-2)return(null==r?void 0:r(s))&&g(e,n[o]),s;const i=p(s,n,t,r,o+1);return d(s)&&g(e,n[o]),i})),I=e=>new Set(i(e)||o(e)?e:[e]),y=(e,n)=>null==e?void 0:e.add(n),b=/^\d+$/,k=Object.freeze,E=(E=>{const T=new WeakMap;return E=>(T.has(E)||T.set(E,(E=>{const T=h(),m=h(),S=h(),z=h(),[A,D,M,j,x,C,,,O,W,$]=((e,n,r)=>{const p=e.hasRow,b=h(),k=h(),E=h(),T=h(),m=h(),S=(n,l,...r)=>{const o=w(m,n,I);return t(r,(n=>y(o,n)&&l&&e.callListener(n))),r},z=(n,...r)=>s(f(m,n),(o=>{t(0==l(r)?a(o):r,(n=>{e.delListener(n),R(o,n)})),d(o)&&g(m,n)})),A=(e,n)=>{g(b,e,n),u(k,e)||(g(k,e,[h(),h(),h(),h()]),g(E,e,h()),g(T,e,h()))},D=e=>{g(b,e),g(k,e),g(E,e),g(T,e),z(e)};return[()=>e,()=>{return[...null!=(n=null==(e=b)?void 0:e.keys())?n:[]];var e,n},e=>L(k,e),e=>u(k,e),e=>f(b,e),e=>f(k,e),(e,n)=>g(k,e,n),A,(n,r,s,d,a)=>{A(n,r);const R=h(),w=h(),I=f(E,n),y=f(T,n),b=n=>{const t=t=>e.getCell(r,n,t),s=f(I,n),u=p(r,n)?(c=d(t,n),o(c)?void 0:c+""):void 0;var c,v,h,L;if(s===u||i(s)&&i(u)&&(h=u,l(v=s)===l(h)&&(L=(e,n)=>h[n]===e,v.every(L)))||g(R,n,[s,u]),!o(a)){const e=f(y,n),l=p(r,n)?a(t,n):void 0;e!=l&&g(w,n,l)}},k=e=>{s((()=>{v(R,(([,e],n)=>g(I,n,e))),v(w,((e,n)=>g(y,n,e)))}),R,w,I,y,e),c(R),c(w)};L(I,b),e.hasTable(r)&&t(e.getRowIds(r),(e=>{u(I,e)||b(e)})),k(!0),z(n),S(n,0,e.addRowListener(r,null,((e,n,t)=>b(t))),e.addTableListener(r,(()=>k())))},D,()=>L(m,D),S,z]})(E),[q,B,F]=(e=>{let n;const[i,u]=(()=>{const e=[];let n=0;return[()=>{var t;return null!=(t=e.shift())?t:""+n++},n=>{b.test(n)&&l(e)<1e3&&r(e,n)}]})(),a=h();return[(e,t,l,r=[],o=(()=>[]))=>{null!=n||(n=K);const s=i();return g(a,s,[e,t,l,r,o]),y(p(t,null!=l?l:[""],I),s),s},(e,o,...s)=>t(((e,n=[""])=>{const o=[],s=(e,i)=>i==l(n)?r(o,e):null===n[i]?v(e,(e=>s(e,i+1))):t([n[i],null],(n=>s(f(e,n),i+1)));return s(e,0),o})(e,o),(e=>v(e,(e=>f(a,e)[0](n,...null!=o?o:[],...s))))),e=>s(f(a,e),(([,n,t])=>(p(n,null!=t?t:[""],void 0,(n=>(R(n,e),d(n)?1:0))),g(a,e),u(e),t))),e=>s(f(a,e),(([e,,r=[],s,i])=>{const u=(...d)=>{var a,c;const v=l(d);v==l(r)?e(n,...d,...i(d)):o(r[v])?t(null!=(c=null==(a=s[v])?void 0:a.call(s,...d))?c:[],(e=>u(...d,e))):u(...d,r[v])};u()}))]})(),G=(e,n,t)=>s(C(e),(([l,,r])=>{if(!u(r,n)){const s=I();if(x(e)!=J(e))y(s,n);else{let e=n;for(;!o(e)&&!u(s,e);)y(s,e),e=f(l,e)}if(t)return s;g(r,n,s)}return f(r,n)})),H=(e,n)=>s(C(e),(([,,e])=>g(e,n))),J=e=>f(T,e),K={setRelationshipDefinition:(t,l,r,i)=>{return g(T,t,r),O(t,l,((e,n)=>{const l=I(),r=I(),i=I(),[a,c]=C(t);v(n,(([e,n],v)=>{o(e)||(y(r,e),s(f(c,e),(n=>{R(n,v),d(n)&&g(c,e)}))),o(n)||(y(r,n),u(c,n)||g(c,n,I()),y(f(c,n),v)),y(l,v),g(a,v,n),L(f(z,t),(e=>{u(G(t,e),v)&&y(i,e)}))})),e(),v(l,(e=>B(m,[t,e]))),v(r,(e=>B(S,[t,e]))),v(i,(e=>{H(t,e),B(z,[t,e])}))}),e(a=i)==n?e=>e(a):null!=a?a:()=>""),K;var a},delRelationshipDefinition:e=>(g(T,e),W(e),K),getStore:A,getRelationshipIds:D,forEachRelationship:e=>M((n=>e(n,(e=>E.forEachRow(x(n),e))))),hasRelationship:j,getLocalTableId:x,getRemoteTableId:J,getRemoteRowId:(e,n)=>{var t;return f(null==(t=C(e))?void 0:t[0],n)},getLocalRowIds:(e,n)=>{var t;return a(f(null==(t=C(e))?void 0:t[1],n))},getLinkedRowIds:(e,n)=>o(C(e))?[n]:a(G(e,n,!0)),addRemoteRowIdListener:(e,n,t)=>q(t,m,[e,n]),addLocalRowIdsListener:(e,n,t)=>q(t,S,[e,n]),addLinkedRowIdsListener:(e,n,t)=>(G(e,n),q(t,z,[e,n])),delListener:e=>(H(...F(e)),K),destroy:$,getListenerStats:()=>({})};return k(K)})(E)),T.get(E))})();export{E as createRelationships};
|
|
Binary file
|