tinybase 2.0.0 → 2.1.0-beta.0
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/lib/checkpoints.js +1 -1
- package/lib/checkpoints.js.gz +0 -0
- package/lib/common.js +1 -1
- package/lib/common.js.gz +0 -0
- package/lib/debug/checkpoints.js +7 -1
- package/lib/debug/common.js +1 -4
- package/lib/debug/indexes.d.ts +36 -10
- package/lib/debug/indexes.js +57 -25
- package/lib/debug/metrics.d.ts +1 -1
- package/lib/debug/metrics.js +19 -2
- package/lib/debug/persisters.d.ts +5 -5
- package/lib/debug/queries.js +18 -2
- package/lib/debug/relationships.d.ts +3 -3
- package/lib/debug/relationships.js +19 -2
- package/lib/debug/store.js +8 -2
- package/lib/debug/tinybase.js +53 -27
- package/lib/debug/ui-react.d.ts +17 -17
- package/lib/debug/ui-react.js +2 -1
- package/lib/es6/checkpoints.d.ts +946 -0
- package/lib/es6/checkpoints.js +1 -0
- package/lib/es6/checkpoints.js.gz +0 -0
- package/lib/es6/common.d.ts +115 -0
- package/lib/es6/common.js +1 -0
- package/lib/es6/common.js.gz +0 -0
- package/lib/es6/indexes.d.ts +967 -0
- package/lib/es6/indexes.js +1 -0
- package/lib/es6/indexes.js.gz +0 -0
- package/lib/es6/metrics.d.ts +829 -0
- package/lib/es6/metrics.js +1 -0
- package/lib/es6/metrics.js.gz +0 -0
- package/lib/es6/persisters.d.ts +717 -0
- package/lib/es6/persisters.js +1 -0
- package/lib/es6/persisters.js.gz +0 -0
- package/lib/es6/queries.d.ts +3026 -0
- package/lib/es6/queries.js +1 -0
- package/lib/es6/queries.js.gz +0 -0
- package/lib/es6/relationships.d.ts +1203 -0
- package/lib/es6/relationships.js +1 -0
- package/lib/es6/relationships.js.gz +0 -0
- package/lib/es6/store.d.ts +3572 -0
- package/lib/es6/store.js +1 -0
- package/lib/es6/store.js.gz +0 -0
- package/lib/es6/tinybase.d.ts +14 -0
- package/lib/es6/tinybase.js +1 -0
- package/lib/es6/tinybase.js.gz +0 -0
- package/lib/es6/ui-react.d.ts +9777 -0
- package/lib/es6/ui-react.js +1 -0
- package/lib/es6/ui-react.js.gz +0 -0
- package/lib/indexes.d.ts +36 -10
- package/lib/indexes.js +1 -1
- package/lib/indexes.js.gz +0 -0
- package/lib/metrics.d.ts +1 -1
- package/lib/metrics.js +1 -1
- package/lib/metrics.js.gz +0 -0
- package/lib/persisters.d.ts +5 -5
- package/lib/queries.js +1 -1
- package/lib/queries.js.gz +0 -0
- package/lib/relationships.d.ts +3 -3
- package/lib/relationships.js +1 -1
- package/lib/relationships.js.gz +0 -0
- 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/ui-react.d.ts +17 -17
- package/lib/umd/checkpoints.d.ts +946 -0
- package/lib/umd/checkpoints.js +1 -1
- package/lib/umd/checkpoints.js.gz +0 -0
- package/lib/umd/common.d.ts +115 -0
- package/lib/umd/common.js +1 -1
- package/lib/umd/common.js.gz +0 -0
- package/lib/umd/indexes.d.ts +967 -0
- package/lib/umd/indexes.js +1 -1
- package/lib/umd/indexes.js.gz +0 -0
- package/lib/umd/metrics.d.ts +829 -0
- package/lib/umd/metrics.js +1 -1
- package/lib/umd/metrics.js.gz +0 -0
- package/lib/umd/persisters.d.ts +717 -0
- package/lib/umd/queries.d.ts +3026 -0
- package/lib/umd/queries.js +1 -1
- package/lib/umd/queries.js.gz +0 -0
- package/lib/umd/relationships.d.ts +1203 -0
- package/lib/umd/relationships.js +1 -1
- package/lib/umd/relationships.js.gz +0 -0
- package/lib/umd/store.d.ts +3572 -0
- package/lib/umd/store.js +1 -1
- package/lib/umd/store.js.gz +0 -0
- package/lib/umd/tinybase.d.ts +14 -0
- package/lib/umd/tinybase.js +1 -1
- package/lib/umd/tinybase.js.gz +0 -0
- package/lib/umd/ui-react.d.ts +9777 -0
- package/lib/umd-es6/checkpoints.d.ts +946 -0
- package/lib/umd-es6/checkpoints.js +1 -0
- package/lib/umd-es6/checkpoints.js.gz +0 -0
- package/lib/umd-es6/common.d.ts +115 -0
- package/lib/umd-es6/common.js +1 -0
- package/lib/umd-es6/common.js.gz +0 -0
- package/lib/umd-es6/indexes.d.ts +967 -0
- package/lib/umd-es6/indexes.js +1 -0
- package/lib/umd-es6/indexes.js.gz +0 -0
- package/lib/umd-es6/metrics.d.ts +829 -0
- package/lib/umd-es6/metrics.js +1 -0
- package/lib/umd-es6/metrics.js.gz +0 -0
- package/lib/umd-es6/persisters.d.ts +717 -0
- package/lib/umd-es6/persisters.js +1 -0
- package/lib/umd-es6/persisters.js.gz +0 -0
- package/lib/umd-es6/queries.d.ts +3026 -0
- package/lib/umd-es6/queries.js +1 -0
- package/lib/umd-es6/queries.js.gz +0 -0
- package/lib/umd-es6/relationships.d.ts +1203 -0
- package/lib/umd-es6/relationships.js +1 -0
- package/lib/umd-es6/relationships.js.gz +0 -0
- package/lib/umd-es6/store.d.ts +3572 -0
- package/lib/umd-es6/store.js +1 -0
- package/lib/umd-es6/store.js.gz +0 -0
- package/lib/umd-es6/tinybase.d.ts +14 -0
- package/lib/umd-es6/tinybase.js +1 -0
- package/lib/umd-es6/tinybase.js.gz +0 -0
- package/lib/umd-es6/ui-react.d.ts +9777 -0
- package/lib/umd-es6/ui-react.js +1 -0
- package/lib/umd-es6/ui-react.js.gz +0 -0
- package/package.json +2 -1
- package/readme.md +12 -12
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const e=e=>typeof e,n=e(""),t=e=>""+e,l=(e,n)=>e.every(n),r=(e,n)=>l(e,((t,l)=>0==l||n(e[l-1],t)<=0)),s=(e,n)=>e.sort(n),o=(e,n)=>e.forEach(n),d=e=>e.length,u=(e,...n)=>e.push(...n),i=e=>null==e,a=(e,n,t)=>i(e)?null==t?void 0:t():n(e),c=e=>Array.isArray(e),v=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},h=e=>i(e)||0==(e=>e.size)(e),f=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},I=e=>e.clear(),g=(e,n)=>null==e?void 0:e.forEach(n),S=(e,n)=>null==e?void 0:e.delete(n),w=e=>new Map(e),L=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},p=(e,n)=>null==e?void 0:e.get(n),x=(e,n)=>g(e,((e,t)=>n(t,e))),y=(e,n,t)=>i(t)?(S(e,n),e):null==e?void 0:e.set(n,t),E=(e,n,t)=>(v(e,n)||y(e,n,t()),p(e,n)),R=(e,n,t,l,r=0)=>a((t?E:p)(e,n[r],r>d(n)-2?t:w),(s=>{if(r>d(n)-2)return(null==l?void 0:l(s))&&y(e,n[r]),s;const o=R(s,n,t,l,r+1);return h(s)&&y(e,n[r]),o})),b=e=>new Set(c(e)||i(e)?e:[e]),T=(e,n)=>null==e?void 0:e.add(n),k=(e,n,t)=>{const r=e.hasRow,s=w(),u=w(),R=w(),k=w(),z=w(),A=(n,t,...l)=>{const r=E(z,n,b);return o(l,(n=>T(r,n)&&t&&e.callListener(n))),l},C=(n,...t)=>a(p(z,n),(l=>{o(0==d(t)?f(l):t,(n=>{e.delListener(n),S(l,n)})),h(l)&&y(z,n)})),D=(e,t)=>{y(s,e,t),v(u,e)||(y(u,e,n()),y(R,e,w()),y(k,e,w()))},M=e=>{y(s,e),y(u,e),y(R,e),y(k,e),C(e)};return[()=>e,()=>L(s),e=>x(u,e),e=>v(u,e),e=>p(s,e),e=>p(u,e),(e,n)=>y(u,e,n),D,(n,s,u,a,h)=>{D(n,s);const f=w(),S=w(),L=p(R,n),E=p(k,n),b=n=>{const o=t=>e.getCell(s,n,t),u=p(L,n),v=r(s,n)?t(a(o,n)):void 0;var I,g;if(u===v||c(u)&&c(v)&&(g=v,d(I=u)===d(g)&&l(I,((e,n)=>g[n]===e)))||y(f,n,[u,v]),!i(h)){const e=p(E,n),t=r(s,n)?h(o,n):void 0;e!=t&&y(S,n,t)}},T=e=>{u((()=>{g(f,(([,e],n)=>y(L,n,e))),g(S,((e,n)=>y(E,n,e)))}),f,S,L,E,e),I(f),I(S)};x(L,b),e.hasTable(s)&&o(e.getRowIds(s),(e=>{v(L,e)||b(e)})),T(!0),C(n),A(n,0,e.addRowListener(s,null,((e,n,t)=>b(t))),e.addTableListener(s,(()=>T())))},M,()=>x(z,M),A,C]},z=(t,l)=>e(t)==n?e=>e(t):null!=t?t:()=>null!=l?l:"",A=(e,n)=>e<n?-1:1,C=/^\d+$/,D=e=>{let n;const[t,l]=(()=>{const e=[];let n=0;return[()=>{var t;return null!=(t=e.shift())?t:""+n++},n=>{C.test(n)&&d(e)<1e3&&u(e,n)}]})(),r=w();return[(l,s,o)=>{null!=n||(n=e());const d=t();return y(r,d,[l,s,o]),T(R(s,null!=o?o:[""],b),d),d},(e,t,...l)=>o(((e,n=[""])=>{const t=[],l=(e,r)=>r==d(n)?u(t,e):null===n[r]?g(e,(e=>l(e,r+1))):o([n[r],null],(n=>l(p(e,n),r+1)));return l(e,0),t})(e,t),(e=>g(e,(e=>p(r,e)[0](n,...null!=t?t:[],...l))))),e=>a(p(r,e),(([,n,t])=>(R(n,null!=t?t:[""],void 0,(n=>(S(n,e),h(n)?1:0))),y(r,e),l(e),t))),(e,t,l)=>a(p(r,e),(([e,,r=[]])=>{const s=(...u)=>{const a=d(u);a==d(r)?e(n,...u,...l(u)):i(r[a])?o(t[a](...u),(e=>s(...u,e))):s(...u,r[a])};s()}))]},M=Object.freeze,j=(e=>{const n=new WeakMap;return t=>(n.has(t)||n.set(t,e(t)),n.get(t))})((e=>{const n=w(),l=w(),[o,d,u,I,E,R,C,,j,m,O]=k(e,w,(e=>{return i(e)?"":c(e)?(n=t,e.map(n)):t(e);var n})),[W,$,q]=D((()=>F)),B=(n,t,l)=>{const r=E(n);g(l,((n,l)=>t(l,(t=>g(n,(n=>t(n,(t=>e.forEachCell(r,n,t)))))))))},F={setIndexDefinition:(e,t,o,d,u,c=A)=>{const f=i(u)?void 0:([e],[n])=>u(e,n);return j(e,t,((t,o,u,I,L,E)=>{let k=0;const z=b(),A=b(),D=R(e);if(g(o,(([e,n],t)=>{const l=b(e),r=b(n);g(l,(e=>S(r,e)?S(l,e):0)),g(l,(e=>{T(z,e),a(p(D,e),(n=>{S(n,t),h(n)&&(y(D,e),k=1)}))})),g(r,(e=>{T(z,e),v(D,e)||(y(D,e,b()),k=1),T(p(D,e),t),i(d)||T(A,e)}))})),t(),h(L)||(E?x(D,(e=>T(A,e))):x(u,(e=>a(p(I,e),(e=>T(A,e))))),g(A,(e=>{const n=(n,t)=>c(p(L,n),p(L,t),e),t=[...p(D,e)];r(t,n)||(y(D,e,b(s(t,n))),T(z,e))}))),(k||E)&&!i(f)){const n=[...D];r(n,f)||(C(e,w(s(n,f))),k=1)}k&&$(n,[e]),g(z,(n=>$(l,[e,n])))}),z(o),a(d,z)),F},delIndexDefinition:e=>(m(e),F),getStore:o,getIndexIds:d,forEachIndex:e=>u(((n,t)=>e(n,(e=>B(n,e,t))))),forEachSlice:(e,n)=>B(e,n,R(e)),hasIndex:I,hasSlice:(e,n)=>v(R(e),n),getTableId:E,getSliceIds:e=>L(R(e)),getSliceRowIds:(e,n)=>f(p(R(e),n)),addSliceIdsListener:(e,t)=>W(t,n,[e]),addSliceRowIdsListener:(e,n,t)=>W(t,l,[e,n]),delListener:e=>(q(e),F),destroy:O,getListenerStats:()=>({})};return M(F)}));export{j as createIndexes};
|
|
Binary file
|