tinybase 4.2.0-beta.0 → 4.2.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.
Files changed (97) hide show
  1. package/lib/cjs/persisters/persister-indexed-db.cjs +1 -0
  2. package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
  3. package/lib/cjs/persisters/persister-remote.cjs +1 -1
  4. package/lib/cjs/persisters/persister-remote.cjs.gz +0 -0
  5. package/lib/cjs/persisters/persister-yjs.cjs +1 -1
  6. package/lib/cjs/persisters/persister-yjs.cjs.gz +0 -0
  7. package/lib/cjs/tools.cjs +1 -1
  8. package/lib/cjs/tools.cjs.gz +0 -0
  9. package/lib/cjs/ui-react-dom-debug.cjs +1 -1
  10. package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
  11. package/lib/cjs/ui-react-dom.cjs +1 -1
  12. package/lib/cjs/ui-react-dom.cjs.gz +0 -0
  13. package/lib/cjs/ui-react.cjs +1 -1
  14. package/lib/cjs/ui-react.cjs.gz +0 -0
  15. package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -0
  16. package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
  17. package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
  18. package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
  19. package/lib/cjs-es6/persisters/persister-yjs.cjs +1 -1
  20. package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
  21. package/lib/cjs-es6/tools.cjs +1 -1
  22. package/lib/cjs-es6/tools.cjs.gz +0 -0
  23. package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
  24. package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
  25. package/lib/cjs-es6/ui-react-dom.cjs +1 -1
  26. package/lib/cjs-es6/ui-react-dom.cjs.gz +0 -0
  27. package/lib/cjs-es6/ui-react.cjs +1 -1
  28. package/lib/cjs-es6/ui-react.cjs.gz +0 -0
  29. package/lib/debug/persisters/persister-browser.js +13 -8
  30. package/lib/debug/persisters/persister-indexed-db.js +272 -0
  31. package/lib/debug/persisters/persister-remote.js +1 -1
  32. package/lib/debug/persisters/persister-yjs.js +10 -16
  33. package/lib/debug/tools.js +21 -5
  34. package/lib/debug/ui-react-dom.js +187 -126
  35. package/lib/debug/ui-react.js +4 -3
  36. package/lib/es6/persisters/persister-indexed-db.js +1 -0
  37. package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
  38. package/lib/es6/persisters/persister-remote.js +1 -1
  39. package/lib/es6/persisters/persister-remote.js.gz +0 -0
  40. package/lib/es6/persisters/persister-yjs.js +1 -1
  41. package/lib/es6/persisters/persister-yjs.js.gz +0 -0
  42. package/lib/es6/tools.js +1 -1
  43. package/lib/es6/tools.js.gz +0 -0
  44. package/lib/es6/ui-react-dom-debug.js +1 -1
  45. package/lib/es6/ui-react-dom-debug.js.gz +0 -0
  46. package/lib/es6/ui-react-dom.js +1 -1
  47. package/lib/es6/ui-react-dom.js.gz +0 -0
  48. package/lib/es6/ui-react.js +1 -1
  49. package/lib/es6/ui-react.js.gz +0 -0
  50. package/lib/persisters/persister-indexed-db.js +1 -0
  51. package/lib/persisters/persister-indexed-db.js.gz +0 -0
  52. package/lib/persisters/persister-remote.js +1 -1
  53. package/lib/persisters/persister-remote.js.gz +0 -0
  54. package/lib/persisters/persister-yjs.js +1 -1
  55. package/lib/persisters/persister-yjs.js.gz +0 -0
  56. package/lib/tools.js +1 -1
  57. package/lib/tools.js.gz +0 -0
  58. package/lib/types/persisters/persister-indexed-db.d.ts +75 -0
  59. package/lib/types/persisters/persister-remote.d.ts +2 -2
  60. package/lib/types/persisters.d.ts +1 -0
  61. package/lib/types/with-schemas/persisters/persister-indexed-db.d.ts +86 -0
  62. package/lib/types/with-schemas/persisters/persister-remote.d.ts +3 -3
  63. package/lib/types/with-schemas/persisters.d.ts +1 -0
  64. package/lib/ui-react-dom.js +1 -1
  65. package/lib/ui-react-dom.js.gz +0 -0
  66. package/lib/ui-react.js +1 -1
  67. package/lib/ui-react.js.gz +0 -0
  68. package/lib/umd/persisters/persister-indexed-db.js +1 -0
  69. package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
  70. package/lib/umd/persisters/persister-remote.js +1 -1
  71. package/lib/umd/persisters/persister-remote.js.gz +0 -0
  72. package/lib/umd/persisters/persister-yjs.js +1 -1
  73. package/lib/umd/persisters/persister-yjs.js.gz +0 -0
  74. package/lib/umd/tools.js +1 -1
  75. package/lib/umd/tools.js.gz +0 -0
  76. package/lib/umd/ui-react-dom-debug.js +1 -1
  77. package/lib/umd/ui-react-dom-debug.js.gz +0 -0
  78. package/lib/umd/ui-react-dom.js +1 -1
  79. package/lib/umd/ui-react-dom.js.gz +0 -0
  80. package/lib/umd/ui-react.js +1 -1
  81. package/lib/umd/ui-react.js.gz +0 -0
  82. package/lib/umd-es6/persisters/persister-indexed-db.js +1 -0
  83. package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
  84. package/lib/umd-es6/persisters/persister-remote.js +1 -1
  85. package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
  86. package/lib/umd-es6/persisters/persister-yjs.js +1 -1
  87. package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
  88. package/lib/umd-es6/tools.js +1 -1
  89. package/lib/umd-es6/tools.js.gz +0 -0
  90. package/lib/umd-es6/ui-react-dom-debug.js +1 -1
  91. package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
  92. package/lib/umd-es6/ui-react-dom.js +1 -1
  93. package/lib/umd-es6/ui-react-dom.js.gz +0 -0
  94. package/lib/umd-es6/ui-react.js +1 -1
  95. package/lib/umd-es6/ui-react.js.gz +0 -0
  96. package/package.json +29 -27
  97. package/readme.md +2 -2
@@ -0,0 +1 @@
1
+ "use strict";const t=(t,a)=>t.map(a),a=(t,...a)=>t.push(...a),e=Promise,s=setInterval,n=clearInterval,o=t=>null==t,c=(t,a,e)=>o(t)?e?.():a(t),r=t=>new e(t),i=async t=>e.all(t),y=Object,l=y.keys,d=y.freeze,u=t=>(t=>t instanceof y&&t.constructor==y)(t)&&0==(t=>l(t).length)(t),w=t=>new Map(t),h=(t,a)=>t?.get(a),v=(t,a,e)=>{return o(e)?(s=t,n=a,s?.delete(n),t):t?.set(a,e);var s,n},p=(t,a,e)=>{var s,n;return s=t,n=a,s?.has(n)||v(t,a,e()),h(t,a)},g=w(),A=w(),S=globalThis.window,b=["t","v"],f={keyPath:"k"},L=async(e,s)=>{const n=((a,s)=>t(y.entries(a),(([t,a])=>j(e,"put",{k:t,v:a}))))(s);t(await j(e,"getAllKeys"),(t=>((t,a)=>!o(((t,a)=>c(t,(t=>t[a])))(t,a)))(s,t)?0:a(n,j(e,"delete",t)))),await i(n)},j=async(t,a,e)=>r(((s,n)=>{const o=t[a](e);o.onsuccess=()=>s(o.result),o.onerror=()=>n(`objectStore.${a} error`)}));exports.createIndexedDbPersister=(e,l,w=1,k)=>{const x=async(a,e=[],s=0)=>r(((n,o)=>{const c=S.indexedDB.open(l,1);c.onupgradeneeded=()=>s&&t(b,(t=>c.result.createObjectStore(t,f))),c.onsuccess=async()=>{try{const s=c.result.transaction(b,"readwrite"),o=await i(t(b,(async(t,n)=>await a(s.objectStore(t),e[n]))));c.result.close(),n(o)}catch(t){o(t)}},c.onerror=()=>o("indexedDB.open error")}));return((t,e,s,n,r,i,y=[])=>{let l,w,S,b=0,f=0;p(g,y,(()=>0)),p(A,y,(()=>[]));const L=async t=>(2!=b&&(b=1,await j.schedule((async()=>{await t(),b=0}))),j),j={load:async(a,s)=>await L((async()=>{try{t.setContent(await e())}catch{t.setContent([a,s])}})),startAutoLoad:async(a={},s={})=>(j.stopAutoLoad(),await j.load(a,s),f=1,S=n((async(a,s)=>{if(s){const a=s();await L((async()=>t.setTransactionChanges(a)))}else await L((async()=>{try{t.setContent(a?.()??await e())}catch(t){i?.(t)}}))})),j),stopAutoLoad:()=>(f&&(r(S),S=void 0,f=0),j),save:async a=>(1!=b&&(b=2,await j.schedule((async()=>{try{await s(t.getContent,a)}catch(t){i?.(t)}b=0}))),j),startAutoSave:async()=>(await j.stopAutoSave().save(),l=t.addDidFinishTransactionListener(((t,a)=>{const[e,s]=a();u(e)&&u(s)||j.save((()=>[e,s]))})),j),stopAutoSave:()=>(c(l,t.delListener),j),schedule:async(...t)=>(a(h(A,y),...t),await(async()=>{if(!h(g,y)){for(v(g,y,1);!o((t=h(A,y),w=t.shift()));)try{await w()}catch(t){i?.(t)}v(g,y,0)}var t})(),j),getStore:()=>t,destroy:()=>j.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return d(j)})(e,(async()=>await x((async a=>((t=[])=>y.fromEntries(t))(t(await j(a,"getAll"),(({k:t,v:a})=>[t,a])))))),(async t=>await x((async(t,a)=>await L(t,a)),t(),1)),(t=>s(t,1e3*w)),(t=>n(t)),k)},exports.objectStoreMatch=L;
@@ -1 +1 @@
1
- "use strict";const t=setInterval,a=clearInterval,e=(t,a)=>t instanceof a,s=t=>null==t,n=Object,r=n.keys,o=n.freeze,c=t=>(t=>e(t,n)&&t.constructor==n)(t)&&0==(t=>r(t).length)(t),i=JSON.parse,y=t=>new Map(t),u=(t,a)=>t?.get(a),d=(t,a,e)=>{return s(e)?(n=t,r=a,n?.delete(r),t):t?.set(a,e);var n,r},h=(t,a,e)=>{var s,n;return s=t,n=a,s?.has(n)||d(t,a,e()),u(t,a)},w=y(),l=y(),v=t=>t.headers.get("ETag");exports.createRemotePersister=(r,y,p,f,g)=>{let A;return((t,a,e,n,r,i,y=[])=>{let v,p,f,g=0,A=0;h(w,y,(()=>0)),h(l,y,(()=>[]));const S=async t=>(2!=g&&(g=1,await C.schedule((async()=>{await t(),g=0}))),C),C={load:async(e,s)=>await S((async()=>{try{t.setContent(await a())}catch{t.setContent([e,s])}})),startAutoLoad:async(e={},s={})=>(C.stopAutoLoad(),await C.load(e,s),A=1,f=n((async(e,s)=>{if(s){const a=s();await S((async()=>t.setTransactionChanges(a)))}else await S((async()=>{try{t.setContent(e?.()??await a())}catch(t){i?.(t)}}))})),C),stopAutoLoad:()=>(A&&(r(f),f=void 0,A=0),C),save:async a=>(1!=g&&(g=2,await C.schedule((async()=>{try{await e(t.getContent,a)}catch(t){i?.(t)}g=0}))),C),startAutoSave:async()=>(await C.stopAutoSave().save(),v=t.addDidFinishTransactionListener(((t,a)=>{const[e,s]=a();c(e)&&c(s)||C.save((()=>[e,s]))})),C),stopAutoSave:()=>{var a,e;return a=v,e=t.delListener,s(a)||e(a),C},schedule:async(...t)=>(((t,...a)=>{t.push(...a)})(u(l,y),...t),await(async()=>{if(!u(w,y)){for(d(w,y,1);!s((t=u(l,y),p=t.shift()));)try{await p()}catch(t){i?.(t)}d(w,y,0)}var t})(),C),getStore:()=>t,destroy:()=>C.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return o(C)})(r,(async()=>{const t=await fetch(y);return A=v(t),i(await t.text())}),(async t=>{return await fetch(p,{method:"POST",headers:{"Content-Type":"application/json"},body:(a=t(),JSON.stringify(a,((t,a)=>e(a,Map)?n.fromEntries([...a]):a)))});var a}),(a=>t((async()=>{const t=await fetch(y,{method:"HEAD"}),e=v(t);s(A)||s(e)||e==A||(A=e,a())}),1e3*f)),(t=>a(t)),g)};
1
+ "use strict";const t=setInterval,a=clearInterval,e=(t,a)=>t instanceof a,s=t=>null==t,n=Object,r=n.keys,o=n.freeze,c=t=>(t=>e(t,n)&&t.constructor==n)(t)&&0==(t=>r(t).length)(t),i=JSON.parse,y=t=>new Map(t),u=(t,a)=>t?.get(a),d=(t,a,e)=>{return s(e)?(n=t,r=a,n?.delete(r),t):t?.set(a,e);var n,r},h=(t,a,e)=>{var s,n;return s=t,n=a,s?.has(n)||d(t,a,e()),u(t,a)},w=y(),l=y(),v=t=>t.headers.get("ETag");exports.createRemotePersister=(r,y,p,f=5,g)=>{let A;return((t,a,e,n,r,i,y=[])=>{let v,p,f,g=0,A=0;h(w,y,(()=>0)),h(l,y,(()=>[]));const S=async t=>(2!=g&&(g=1,await C.schedule((async()=>{await t(),g=0}))),C),C={load:async(e,s)=>await S((async()=>{try{t.setContent(await a())}catch{t.setContent([e,s])}})),startAutoLoad:async(e={},s={})=>(C.stopAutoLoad(),await C.load(e,s),A=1,f=n((async(e,s)=>{if(s){const a=s();await S((async()=>t.setTransactionChanges(a)))}else await S((async()=>{try{t.setContent(e?.()??await a())}catch(t){i?.(t)}}))})),C),stopAutoLoad:()=>(A&&(r(f),f=void 0,A=0),C),save:async a=>(1!=g&&(g=2,await C.schedule((async()=>{try{await e(t.getContent,a)}catch(t){i?.(t)}g=0}))),C),startAutoSave:async()=>(await C.stopAutoSave().save(),v=t.addDidFinishTransactionListener(((t,a)=>{const[e,s]=a();c(e)&&c(s)||C.save((()=>[e,s]))})),C),stopAutoSave:()=>{var a,e;return a=v,e=t.delListener,s(a)||e(a),C},schedule:async(...t)=>(((t,...a)=>{t.push(...a)})(u(l,y),...t),await(async()=>{if(!u(w,y)){for(d(w,y,1);!s((t=u(l,y),p=t.shift()));)try{await p()}catch(t){i?.(t)}d(w,y,0)}var t})(),C),getStore:()=>t,destroy:()=>C.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return o(C)})(r,(async()=>{const t=await fetch(y);return A=v(t),i(await t.text())}),(async t=>{return await fetch(p,{method:"POST",headers:{"Content-Type":"application/json"},body:(a=t(),JSON.stringify(a,((t,a)=>e(a,Map)?n.fromEntries([...a]):a)))});var a}),(a=>t((async()=>{const t=await fetch(y,{method:"HEAD"}),e=v(t);s(A)||s(e)||e==A||(A=e,a())}),1e3*f)),(t=>a(t)),g)};
@@ -1 +1 @@
1
- "use strict";var t=require("yjs");const e=t=>t.length,a=t=>t.shift(),s=t=>null==t,n=(t,e,a)=>s(t)?a?.():e(t),o=Object,c=o.keys,r=o.freeze,i=(t=[])=>o.fromEntries(t),u=(t,e)=>!s(((t,e)=>n(t,(t=>t[e])))(t,e)),l=(t,e)=>((t,e)=>t.map(e))(o.entries(t),(([t,a])=>e(a,t))),d=t=>(t=>t instanceof o&&t.constructor==o)(t)&&0==(t=>e(c(t)))(t),g=(t,e,a)=>(u(t,e)||(t[e]=a()),t[e]),y=t=>new Map(t),v=(t,e)=>t?.get(e),h=(t,e)=>((t,e)=>t?.forEach(e))(t,((t,a)=>e(a,t))),p=(t,e,a)=>{return s(a)?(n=t,o=e,n?.delete(o),t):t?.set(e,a);var n,o},w=(t,e,a)=>{var s,n;return s=t,n=e,s?.has(n)||p(t,e,a()),v(t,e)},f=y(),S=y(),A="t",O="delete",J=t=>[t.get(A),t.get("v")],L=(e,a,n,o)=>{const c=s(a)?e:e.get(a)??e.set(a,new t.Map);let r;return l(n,((t,e)=>{o(c,e,t)&&(r=1)})),c.forEach(((t,e)=>{u(n,e)||(c.delete(e),r=1)})),s(a)||c.size||e.delete(a),r};exports.createYjsPersister=(o,c,u="tinybase",y)=>{const N=c.getMap(u);return((t,e,o,c,i,u,l=[])=>{let g,y,h,A=0,O=0;w(f,l,(()=>0)),w(S,l,(()=>[]));const J=async t=>(2!=A&&(A=1,await L.schedule((async()=>{await t(),A=0}))),L),L={load:async(a,s)=>await J((async()=>{try{t.setContent(await e())}catch{t.setContent([a,s])}})),startAutoLoad:async(a={},s={})=>(L.stopAutoLoad(),await L.load(a,s),O=1,h=c((async(a,s)=>{if(s){const e=s();await J((async()=>t.setTransactionChanges(e)))}else await J((async()=>{try{t.setContent(a?.()??await e())}catch(t){u?.(t)}}))})),L),stopAutoLoad:()=>(O&&(i(h),h=void 0,O=0),L),save:async e=>(1!=A&&(A=2,await L.schedule((async()=>{try{await o(t.getContent,e)}catch(t){u?.(t)}A=0}))),L),startAutoSave:async()=>(await L.stopAutoSave().save(),g=t.addDidFinishTransactionListener(((t,e)=>{const[a,s]=e();d(a)&&d(s)||L.save((()=>[a,s]))})),L),stopAutoSave:()=>(n(g,t.delListener),L),schedule:async(...t)=>(((t,...e)=>{t.push(...e)})(v(S,l),...t),await(async()=>{if(!v(f,l)){for(p(f,l,1);!s(y=a(v(S,l)));)try{await y()}catch(t){u?.(t)}p(f,l,0)}})(),L),getStore:()=>t,destroy:()=>L.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return r(L)})(o,(async()=>N.size?[N.get(A).toJSON(),N.get("v").toJSON()]:void 0),(async(e,a)=>c.transact((()=>((e,a,o)=>{(e=>{e.size||(e.set(A,new t.Map),e.set("v",new t.Map))})(e);const[c,r]=J(e),i=()=>{u=1};let u=1;if(n(o?.(),(([t,e])=>{u=0,l(t,((t,e)=>u?0:s(t)?c.delete(e):n(c.get(e),(e=>l(t,((t,a)=>u?0:s(t)?e.delete(a):n(e.get(a),(e=>l(t,((t,a)=>s(t)?e.delete(a):e.set(a,t)))),i)))),i))),l(e,((t,e)=>u?0:s(t)?r.delete(e):r.set(e,t)))})),u){const[t,e]=a();L(c,void 0,t,((t,e,a)=>L(c,e,a,((t,e,a)=>L(t,e,a,((t,e,a)=>{if(t.get(e)!==a)return t.set(e,a),1})))))),L(r,void 0,e,((t,e,a)=>{r.get(e)!==a&&r.set(e,a)}))}})(N,e,a)))),(t=>{const s=s=>t(void 0,(()=>((t,s)=>{if(1==e(s)&&(o=s[0].path,0==e(o)))return[t.get("t").toJSON(),t.get("v").toJSON()];var o;const[c,r]=J(t),u={},l={};return((t,e)=>{t.forEach((({path:t,changes:{keys:e}})=>a(t)==A?n(a(t),(s=>{const o=g(u,s,i),r=c.get(s);n(a(t),(t=>{const a=g(o,t,i),s=r.get(t);h(e,((t,{action:e})=>a[t]=e==O?null:s.get(t)))}),(()=>h(e,((t,{action:e})=>o[t]=e==O?null:r.get(t)?.toJSON()))))}),(()=>h(e,((t,{action:e})=>u[t]=e==O?null:c.get(t)?.toJSON())))):h(e,((t,{action:e})=>l[t]=e==O?null:r.get(t)))))})(s),[u,l]})(N,s)));return N.observeDeep(s),s}),(t=>{N.unobserveDeep(t)}),y)};
1
+ "use strict";var t=require("yjs");const e="t",a="v",s=t=>t.length,n=t=>t.shift(),o=t=>null==t,c=(t,e,a)=>o(t)?a?.():e(t),r=Object,i=r.keys,u=r.freeze,l=(t=[])=>r.fromEntries(t),d=(t,e)=>!o(((t,e)=>c(t,(t=>t[e])))(t,e)),g=(t,e)=>((t,e)=>t.map(e))(r.entries(t),(([t,a])=>e(a,t))),y=t=>(t=>t instanceof r&&t.constructor==r)(t)&&0==(t=>s(i(t)))(t),h=(t,e,a)=>(d(t,e)||(t[e]=a()),t[e]),v=t=>new Map(t),p=(t,e)=>t?.get(e),w=(t,e)=>((t,e)=>t?.forEach(e))(t,((t,a)=>e(a,t))),f=(t,e,a)=>{return o(a)?(s=t,n=e,s?.delete(n),t):t?.set(e,a);var s,n},S=(t,e,a)=>{var s,n;return s=t,n=e,s?.has(n)||f(t,e,a()),p(t,e)},A=v(),O=v(),J="delete",L=t=>[t.get(e),t.get(a)],N=(e,a,s,n)=>{const c=o(a)?e:e.get(a)??e.set(a,new t.Map);let r;return g(s,((t,e)=>{n(c,e,t)&&(r=1)})),c.forEach(((t,e)=>{d(s,e)||(c.delete(e),r=1)})),o(a)||c.size||e.delete(a),r};exports.createYjsPersister=(r,i,d="tinybase",v)=>{const C=i.getMap(d);return((t,e,a,s,r,i,l=[])=>{let d,g,h,v=0,w=0;S(A,l,(()=>0)),S(O,l,(()=>[]));const J=async t=>(2!=v&&(v=1,await L.schedule((async()=>{await t(),v=0}))),L),L={load:async(a,s)=>await J((async()=>{try{t.setContent(await e())}catch{t.setContent([a,s])}})),startAutoLoad:async(a={},n={})=>(L.stopAutoLoad(),await L.load(a,n),w=1,h=s((async(a,s)=>{if(s){const e=s();await J((async()=>t.setTransactionChanges(e)))}else await J((async()=>{try{t.setContent(a?.()??await e())}catch(t){i?.(t)}}))})),L),stopAutoLoad:()=>(w&&(r(h),h=void 0,w=0),L),save:async e=>(1!=v&&(v=2,await L.schedule((async()=>{try{await a(t.getContent,e)}catch(t){i?.(t)}v=0}))),L),startAutoSave:async()=>(await L.stopAutoSave().save(),d=t.addDidFinishTransactionListener(((t,e)=>{const[a,s]=e();y(a)&&y(s)||L.save((()=>[a,s]))})),L),stopAutoSave:()=>(c(d,t.delListener),L),schedule:async(...t)=>(((t,...e)=>{t.push(...e)})(p(O,l),...t),await(async()=>{if(!p(A,l)){for(f(A,l,1);!o(g=n(p(O,l)));)try{await g()}catch(t){i?.(t)}f(A,l,0)}})(),L),getStore:()=>t,destroy:()=>L.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return u(L)})(r,(async()=>C.size?[C.get(e).toJSON(),C.get(a).toJSON()]:void 0),(async(s,n)=>i.transact((()=>((s,n,r)=>{s.size||(s.set(e,new t.Map),s.set(a,new t.Map));const[i,u]=L(s),l=()=>{d=1};let d=1;if(c(r?.(),(([t,e])=>{d=0,g(t,((t,e)=>d?0:o(t)?i.delete(e):c(i.get(e),(e=>g(t,((t,a)=>d?0:o(t)?e.delete(a):c(e.get(a),(e=>g(t,((t,a)=>o(t)?e.delete(a):e.set(a,t)))),l)))),l))),g(e,((t,e)=>d?0:o(t)?u.delete(e):u.set(e,t)))})),d){const[t,e]=n();N(i,void 0,t,((t,e,a)=>N(i,e,a,((t,e,a)=>N(t,e,a,((t,e,a)=>{if(t.get(e)!==a)return t.set(e,a),1})))))),N(u,void 0,e,((t,e,a)=>{u.get(e)!==a&&u.set(e,a)}))}})(C,s,n)))),(t=>{const o=o=>t(void 0,(()=>((t,o)=>{if(1==s(o)&&(r=o[0].path,0==s(r)))return[t.get(e).toJSON(),t.get(a).toJSON()];var r;const[i,u]=L(t),d={},g={};return((t,a)=>{t.forEach((({path:t,changes:{keys:a}})=>n(t)==e?c(n(t),(e=>{const s=h(d,e,l),o=i.get(e);c(n(t),(t=>{const e=h(s,t,l),n=o.get(t);w(a,((t,{action:a})=>e[t]=a==J?null:n.get(t)))}),(()=>w(a,((t,{action:e})=>s[t]=e==J?null:o.get(t)?.toJSON()))))}),(()=>w(a,((t,{action:e})=>d[t]=e==J?null:i.get(t)?.toJSON())))):w(a,((t,{action:e})=>g[t]=e==J?null:u.get(t)))))})(o),[d,g]})(C,o)));return C.observeDeep(o),o}),(t=>{C.unobserveDeep(t)}),v)};
package/lib/cjs/tools.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";const e=e=>typeof e,t="tinybase",l="",a=",",n=e(l),o=e(!0),d=e(0),s="type",r="default",I="Listener",$="get",c="add",u="Ids",i="Table",p=i+"s",b=i+u,C="Row",h=C+u,m="Sorted"+C+u,g="Cell",f=g+u,w="Value",y=w+"s",T=w+u,v=isFinite,V=(e,t)=>e instanceof t,x=e=>null==e,R=e=>e==n||e==o,k=t=>e(t)==n,S=e=>Array.isArray(e),A=t=>{const l=e(t);return R(l)||l==d&&v(t)?l:void 0},P=(e,t)=>e.every(t),E=(e,t)=>e.sort(t),D=(e,t)=>e.forEach(t),O=(e,t=l)=>e.join(t),N=(e,t)=>e.map(t),G=e=>e.length,L=(e,t)=>e.filter(t),j=(e,...t)=>e.push(...t),M=e=>e.pop(),J=(e,...t)=>e.unshift(...t),z=e=>e.shift(),W=Object,B=W.keys,F=W.freeze,U=e=>V(e,W)&&e.constructor==W,_=(e,t)=>N(W.entries(e),(([e,l])=>t(l,e))),Z=e=>G(B(e)),H=e=>U(e)&&0==Z(e),Q=(e,t)=>e?.has(t)??!1,q=e=>[...e?.values()??[]],K=(e,t)=>e?.forEach(t),X=(e,t)=>e?.delete(t),Y=e=>new Map(e),ee=(e,t)=>e?.get(t),te=(e,t)=>K(e,((e,l)=>t(l,e))),le=(e,t)=>N([...e?.entries()??[]],(([e,l])=>t(l,e))),ae=(e,t,l)=>x(l)?(X(e,t),e):e?.set(t,l),ne=(e,t,l)=>(Q(e,t)||ae(e,t,l()),ee(e,t)),oe=e=>e.toUpperCase(),de=e=>e.toLowerCase(),se="a ",re="A function for",Ie=", and registers a listener so that any changes to that result will cause a re-render",$e="Callback",ce="Del",ue="Deps",ie=ue+"?: React.DependencyList",pe="doRollback?: DoRollback",be="actions: () => Return, "+pe,Ce="export",he="Id",me="Invalid",ge="Json",fe=de(I),we="?: ",ye=" | undefined",Te="NonNullable",ve="Partial",Ve="Props",xe="Provider",Re=`Registers a ${fe} that will be called`,ke="Represents",Se="rowId: "+he,Ae="Schema",Pe="Set",Ee=", descending?: boolean, offset?: number, limit?: number",De="[]",Oe="the Store",Ne="Transaction",Ge=Ne+"Changes",Le=de(Ne),je="Execute a "+Le+" to make multiple mutations",Me="Explicitly starts a "+Le,Je="Explicitly finishes a "+Le,ze="the end of the "+Le,We="void",Be=" => "+We,Fe="WhenSet",Ue=" when setting it",_e=se+"string serialization of",Ze=" ",He="Gets a callback that can ",Qe="the ",qe=" the schema for",Ke=(e=0,t=0)=>`the ${bt[e]}content of`+(t?Ze+Oe:l),Xe=(e=0,t,a=0)=>ut[t]+Ze+Ke(e,1)+(a?" when setting it":l),Ye=(e,t=0)=>ke+` a Row when ${t?"s":"g"}etting ${Ke()} the '${e}' `+i,et=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,tt=(e,t)=>`Calls a function for each ${e} in `+t,lt=e=>"The props passed to a component that renders "+e,at=e=>"A function that takes "+e,nt=(e,t=0)=>re+" listening to changes to "+pt[e]+" in "+pt[t],ot=(e,t,a=0)=>Re+" whenever "+pt[e]+" in "+pt[t]+" change"+(a?l:"s"),dt=e=>`the '${e}' `+i,st=e=>"the specified Row in "+dt(e),rt=(e,t=0)=>ut[t]+` ${Ke()} `+dt(e),It=(e,t=0)=>ut[t]+` ${Ke()} `+st(e),$t=(e,t,l=0)=>ut[l]+` the '${t}' Cell for `+st(e),ct=(e,t=0)=>ut[t]+` the '${e}' Value`,ut=["Gets","Checks existence of","Sets","Deletes","Sets part of",ke,"Gets "+_e,"Sets "+_e,Re+" whenever",He+"set",He+"add",He+"set part of",He+"delete","Renders","Gets "+_e+qe,"Sets"+qe,"Deletes"+qe],it=[$,"has","set","del","set","forEach",c,l],pt=[Oe,p,Qe+i+Ze+u,se+i,Qe+C+Ze+u,se+C,Qe+g+Ze+u,se+g,"invalid Cell changes",y,Qe+w+Ze+u,se+w,"invalid Value changes",Qe+"sorted "+C+Ze+u,Qe+g+Ze+u+" anywhere",Qe+"number of Rows"],bt=[l,"tabular ","keyed value "],Ct=e=>new Set(S(e)||x(e)?e:[e]),ht=(e,t)=>e?.add(t),mt=/[^A-Za-z]+/,gt=/[^A-Za-z0-9]+/,ft=/^( *)\/\*\* *(.*?) *\*\/$/gm,wt=(e,t,l)=>e.substring(t,l),yt=e=>e.includes(a),Tt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return Q(e,n)?Tt(e,t,l,a+1):(ae(e,n,l),n)},vt=e=>e.replace(ft,((e,t,l)=>{const a=77-Vt(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),Vt=e=>e.length,xt=e=>e.flat(1e3),Rt=(e,t=0)=>O(N(e.split(gt),((e,l)=>(l>0||t?oe:de)(wt(e,0,1))+wt(e,1)))),kt=e=>oe(O((e&&!mt.test(e[0])?e:" "+e).split(gt),"_")),St=e=>`/** ${e}. */`,At=(...e)=>O(L(e,(e=>e)),", "),Pt=(...e)=>"{"+O(e,"; ")+"}",Et=(...e)=>Pt(...N(e,(e=>"readonly "+e))),Dt=()=>{const e=[Y(),Y(),Y(),Y()],t=Y(),a=Y(),n=e=>{const t=e.indexOf(" as ");return-1!=t?e.substring(t+4):e};return[(...e)=>O(xt(e),"\n"),(t,l,...a)=>D(a,(a=>D([0,1],(n=>(t??n)==n?ht(ne(e[n],l,Ct),a):0)))),(e,a,n,o=l,d=1)=>Tt(t,e,[a,n,o,d]),(e,t,l)=>Tt(a,e,S(l)?[`(${t}) => {`,l,"}"]:[`(${t}) => ${l}`]),(e,t)=>ee(a,e)===t?e:Tt(a,e,t),(t=0)=>N([...E(le(e[t],((e,t)=>`import {${O(E(q(e),((e,t)=>n(e)>n(t)?1:-1)),", ")}} from '${t}';`)),((e,t)=>yt(e)!=yt(t)?yt(e)?-1:1:e>t?1:-1)),l],(e=>e.replace("{React}","React"))),()=>le(t,(([e,t,a,n],o)=>[St(t),`${n?Ce+" ":l}type ${o}${a} = ${e};`,l])),()=>le(a,((e,t)=>(e=S(e)?e:[e],j(e,M(e)+";"),[`const ${t} = ${z(e)}`,e,l])))]},Ot=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},Nt=(e,t,l)=>[t=>_(e,((e,a)=>t(a,Rt(a,1),l(kt(a),`'${a}'`)))),(t,a)=>_(e[t],((e,t)=>a(t,e[s],e[r],l(kt(t),`'${t}'`),Rt(t,1)))),e=>_(t,((t,a)=>e(a,t[s],t[r],l(kt(a),`'${a}'`),Rt(a,1))))],Gt=(e,t,a,n)=>[(n,o)=>{const d=n+": "+o,s=e(p,Pt(...t((e=>`'${e}'?: {[rowId: Id]: `+Pt(...a(e,((e,t,a)=>`'${e}'${x(a)?"?":l}: ${t}`)))+"}"))),Xe(1,5)),r=e(p+Fe,Pt(...t((e=>`'${e}'?: {[rowId: Id]: `+Pt(...a(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),Xe(1,5,1)),$=e(i+he,"keyof "+s,"A "+i+" Id in "+Oe),c=`<TId extends ${$}>`,u=e(i,Te+`<${s}[TId]>`,"A "+i+" in "+Oe,c),w=e(i+Fe,Te+`<${r}[TId]>`,"A "+i+" in "+Oe+Ue,c),y=e(C,u+"<TId>[Id]","A "+C+" in a "+i,c),T=e(C+Fe,w+"<TId>[Id]","A "+C+" in a "+i+Ue,c),v=e(g+he,`Extract<keyof ${y}<TId>, Id>`,"A "+g+" Id in a "+C,c),V=e(g,Te+`<${s}[TId]>[Id][CId]`,"A "+g+" in a "+C,`<TId extends ${$}, CId extends ${v}<TId>>`),R=e("CellIdCellArray",`CId extends ${v}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,g+" Ids and types in a "+C,`<TId extends ${$}, CId = ${v}<TId>>`,0),k=e(g+$e,`(...[cellId, cell]: ${R}<TId>)`+Be,at(se+g+" Id, and "+g),c),S=e(C+$e,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Be+") "+Be,at(se+C+" Id, and a "+g+" iterator"),c),A=e(i+g+$e,`(cellId: ${v}<TId>, count: number) `+Be,at(se+g+" Id, and count of how many times it appears"),c),P=e("TableIdForEachRowArray",`TId extends ${$} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${Be}] : never`,i+" Ids and callback types",`<TId = ${$}>`,0),E=e(i+$e,`(...[tableId, forEachRow]: ${P})`+Be,at(se+i+" Id, and a "+C+" iterator"),l),D=e("TableIdRowIdCellIdArray",`TId extends ${$} ? [tableId: TId, rowId: Id, cellId: ${v}<TId>] : never`,"Ids for GetCellChange",`<TId = ${$}>`,0),O=e("GetCellChange",`(...[tableId, rowId, cellId]: ${D}) => CellChange`,re+" returning information about any Cell's changes during a "+Le),N=e(p+I,`(${d}, getCellChange: ${O}${ye})`+Be,nt(1)),G=e(b+I,`(${d})`+Be,nt(2)),L=e(i+I,`(${d}, tableId: ${$}, getCellChange: ${O}${ye})`+Be,nt(3)),j=e(i+f+I,`(${d}, tableId: ${$})`+Be,nt(14,3)),M=e(C+"Count"+I,`(${d}, tableId: ${$})`+Be,nt(15,3)),J=e(h+I,`(${d}, tableId: ${$})`+Be,nt(4,3)),z=e(m+I,"("+At(d,"tableId: "+$,"cellId: Id"+ye,"descending: boolean","offset: number","limit: number"+ye,"sortedRowIds: Ids")+")"+Be,nt(13,3)),W=e(C+I,"("+At(""+d,"tableId: "+$,Se,`getCellChange: ${O}${ye}`)+")"+Be,nt(5,3)),B=e(f+I,"("+At(""+d,"tableId: "+$,Se)+")"+Be,nt(6,5)),F=e("CellListenerArgsArrayInner",`CId extends ${v}<TId> ? [${d}, tableId: TId, ${Se}, cellId: CId, newCell: ${V}<TId, CId> ${ye}, oldCell: ${V}<TId, CId> ${ye}, getCellChange: ${O} ${ye}] : never`,"Cell args for CellListener",`<TId extends ${$}, CId = ${v}<TId>>`,0),U=e("CellListenerArgsArrayOuter",`TId extends ${$} ? `+F+"<TId> : never","Table args for CellListener",`<TId = ${$}>`,0);return[s,r,$,u,w,y,T,v,V,k,S,A,E,N,G,L,j,M,J,z,W,B,e(g+I,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${U})`+Be,nt(7,5)),e(me+g+I,`(${d}, tableId: Id, ${Se}, cellId: Id, invalidCells: any[])`+Be,nt(8))]},(t,a)=>{const o=t+": "+a,d=e(y,Pt(...n(((e,t,a)=>`'${e}'${x(a)?"?":l}: ${t}`))),Xe(2,5)),s=e(y+Fe,Pt(...n(((e,t)=>`'${e}'?: ${t}`))),Xe(2,5,1)),r=e(w+he,"keyof "+d,"A "+w+" Id in "+Oe),$=e(w,Te+`<${d}[VId]>`,"A "+w+" Id in "+Oe,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${$}<VId>] : never`,w+" Ids and types in "+Oe,`<VId = ${r}>`,0),u=e(w+$e,`(...[valueId, value]: ${c})`+Be,at(se+w+" Id, and "+w)),i=e("GetValueChange",`(valueId: ${r}) => ValueChange`,re+" returning information about any Value's changes during a "+Le),p=e(y+I,`(${o}, getValueChange: ${i}${ye})`+Be,nt(9)),b=e(T+I,`(${o})`+Be,nt(10)),C=e("ValueListenerArgsArray",`VId extends ${r} ? [${o}, valueId: VId, newValue: ${$}<VId> ${ye}, oldValue: ${$}<VId> ${ye}, getValueChange: ${i} ${ye}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[d,s,r,$,u,p,b,e(w+I,`(...[${t}, valueId, newValue, oldValue, getValueChange]: `+C+")"+Be,nt(11)),e(me+w+I,`(${o}, valueId: Id, invalidValues: any[])`+Be,nt(12))]},(t,l)=>e(Ne+I,`(${t}: ${l}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+Be,re+" listening to the completion of a "+Le)],Lt=(e,t=l,a=l)=>`store.${e}(${t})`+(a?" as "+a:l),jt=(e,t=l)=>`fluent(() => ${Lt(e,t)})`,Mt=(e,t=l,a=l)=>`store.${e}(${t?t+", ":l}proxy(listener)${a?", "+a:l})`,Jt=(e,a,n)=>{const[d,$,v,V,R,S,A,P]=Dt(),[E,N,G]=Nt(e,a,R),[L,M,z]=Gt(v,E,N,G),W=Y(),B=(e=0)=>le(W,(([t,a,n,o,d],s)=>{const r=e?[s+`: ${d}(${t}): ${a} => ${n},`]:[s+d+`(${t}): ${a};`];return e||J(r,St(o)),j(r,l),r})),F=(e,t,a,n,o,d=l)=>Tt(W,e,[t,a,n,o,d]),U=(e,t,a,n,o,d=l,s=l,r=l)=>F(it[e]+t+(4==e?ve:l)+a,d,n,(n==Q?jt:Lt)(it[e]+(4==e?ve:l)+a,s,e?void 0:n),o,r),_=(e,t,a,n=l,o=l,d=1,s=l)=>F(c+e+I,(n?n+", ":l)+fe+": "+t+(d?", mutator?: boolean":l),he,Mt(c+e+I,o,d?"mutator":l),a,s),Z=`./${Rt(n)}.d`,Q=Rt(n,1),K=Rt(Q),X=[],ne=Y();let oe=[],de=[];if($(1,Z,Q,`create${Q} as create${Q}Decl`),H(e))$(null,t,p);else{$(0,t,"CellChange"),$(null,t,u);const[e,a,n,d,I,c,w,y,T,V,S,A,P,G,M,J,z,W,B,F,H,te,le,de]=L(K,Q),se=Y();E(((e,t)=>{const l=`<'${e}'>`,a=[v(t+i,d+l,ke+` the '${e}' `+i),v(t+i+Fe,I+l,ke+` the '${e}' `+i+Ue),v(t+C,c+l,Ye(e)),v(t+C+Fe,w+l,Ye(e,1)),v(t+g+he,y+l,`A Cell Id for the '${e}' `+i),v(t+g+$e,V+l,at(`a Cell Id and value from a Row in the '${e}' `+i)),v(t+C+$e,S+l,at(`a Row Id from the '${e}' Table, and a Cell iterator`)),v(t+i+g+$e,A+l,at(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];ae(se,e,a),$(1,Z,...a)})),$(1,Z,e,a,n,y,P,G,M,J,z,W,B,F,H,te,le,de),oe=[e,a,n,y,G,M,J,z,W,B,F,H,te,le,se],D([[e],[o],[Q,"tables: "+a,"tables"],[Q]],(([e,t,a],n)=>U(n,l,p,e,Xe(1,n),t,a))),U(0,l,b,n+De,et(i,Oe)),U(5,l,i,We,tt(i,Oe),"tableCallback: "+P,"tableCallback as any"),E(((e,t,a)=>{const[n,d,s,r,I,$,c,p]=ee(se,e);D([[n],[o],[Q,"table: "+d,", table"],[Q]],(([n,o,d=l],s)=>U(s,t,i,n,rt(e,s),o,a+d))),U(0,t,i+f,u,et(g,"the whole of "+dt(e)),l,a),U(5,t,i+g,We,tt(i+g,"the whole of "+dt(e)),"tableCellCallback: "+p,a+", tableCellCallback as any"),U(0,t,C+"Count","number","Gets the number of Rows in the "+dt(e),l,a),U(0,t,h,u,et(C,dt(e)),l,a),U(0,t,m,u,et(C,dt(e),1),"cellId?: "+I+Ee,a+", cellId, descending, offset, limit"),U(5,t,C,We,tt(C,dt(e)),"rowCallback: "+c,a+", rowCallback as any"),D([[s],[o],[Q,", row: "+r,", row"],[Q],[Q,", partialRow: "+r,", partialRow"]],(([n,o=l,d=l],s)=>U(s,t,C,n,It(e,s),Se+o,a+", rowId"+d))),U(6,t,C,he+ye,"Add a new Row to "+dt(e),"row: "+r+", reuseIds?: boolean",a+", row, reuseIds"),U(0,t,f,I+De,et(g,st(e)),Se,a+", rowId"),U(5,t,g,We,tt(g,st(e)),Se+", cellCallback: "+$,a+", rowId, cellCallback as any"),N(e,((n,d,s,r,I)=>{const $="Map"+Rt(d,1);ae(ne,d,$);const c=d+(x(s)?ye:l);D([[c],[o],[Q,`, cell: ${d} | `+$,", cell as any"],[Q]],(([o,d=l,s=l],$)=>U($,t+I,g,o,$t(e,n,$),Se+d,a+", rowId, "+r+s))),U(1,t+I,i+g,o,ut[1]+` the '${n}' Cell anywhere in `+dt(e),l,a+", "+r)}))})),U(0,l,p+ge,ge,Xe(1,6)),U(2,l,p+ge,Q,Xe(1,7),"tablesJson: "+ge,"tables"+ge),_(p,G,Xe(1,8)+" changes"),_(b,M,ot(2,0,1)),_(i,J,ot(3,0),`tableId: ${n} | null`,"tableId"),_(i+f,z,ot(14,3,1),`tableId: ${n} | null`,"tableId"),_(C+"Count",W,ot(15,3),`tableId: ${n} | null`,"tableId"),_(h,B,ot(4,3,1),`tableId: ${n} | null`,"tableId"),_(m,F,ot(13,3,1),At("tableId: TId",`cellId: ${y}<TId>`+ye,"descending: boolean","offset: number","limit: number"+ye),At("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(C,H,ot(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,te,ot(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(g,le,ot(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${O(E((e=>ee(se,e)?.[4]??l))," | ")} | null`,"tableId, rowId, cellId"),_(me+g,de,Re+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),$(1,Z,...q(ne)),j(X,".set"+p+Ae+"({",xt(E(((e,t,a)=>[`[${a}]: {`,...N(e,((e,t,a,n)=>`[${n}]: {[${R(kt(s),`'${s}'`)}]: ${R(kt(t),`'${t}'`)}${x(a)?l:`, [${R(kt(r),`'${r}'`)}]: `+(k(a)?R(kt(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(H(a))$(null,t,y);else{const[e,a,n,d,I,c,u,i,p]=M(K,Q);$(1,Z,e,a,n,I,c,u,i,p),de=[e,a,n,c,u,i],D([[e],[o],[Q,"values: "+a,"values"],[Q],[Q,"partialValues: "+a,"partialValues"]],(([e,t,a],n)=>U(n,l,y,e,Xe(2,n),t,a))),U(0,l,T,n+De,et(w,Oe)),U(5,l,w,"void",tt(w,Oe),"valueCallback: "+I,"valueCallback as any"),G(((e,t,a,n,d)=>{const s="Map"+Rt(t,1);ae(ne,t,s),D([[t],[o],[Q,`value: ${t} | `+s,", value as any"],[Q]],(([t,a,o=l],s)=>U(s,d,w,t,ct(e,s),a,n+o)))})),U(0,l,y+ge,ge,Xe(2,6)),U(2,l,y+ge,Q,Xe(2,7),"valuesJson: "+ge,"values"+ge),_(y,c,Xe(2,8)+" changes"),_(T,u,ot(10,0,1)),_(w,i,ot(11,0),`valueId: ${n} | null`,"valueId"),_(me+w,p,Re+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),$(1,Z,...q(ne)),$(0,t,"ValueChange"),j(X,".set"+y+Ae+"({",G(((e,t,a,n)=>[`[${n}]: {[${R(kt(s),`'${s}'`)}]: ${R(kt(t),`'${t}'`)}${x(a)?l:`, [${R(kt(r),`'${r}'`)}]: `+(k(a)?R(kt(a),`'${a}'`):a)}},`])),"})")}U(0,l,"Content",`[${p}, ${y}]`,Xe(0,0)),U(2,l,"Content",Q,Xe(0,2),`[tables, values]: [${p}, ${y}]`,"[tables, values]"),U(2,l,Ge,Q,`Applies a set of ${Ge} to the Store`,"transactionChanges: "+Ge,"transactionChanges"),te(ne,((e,t)=>v(t,`(cell: ${e}${ye}) => `+e,`Takes a ${e} Cell value and returns another`))),$(null,t,"DoRollback",he,"IdOrNull",ge,"Store",Ge),$(0,t,"Get"+Ge,"GetTransactionLog"),U(0,l,ge,ge,Xe(0,6)),U(2,l,ge,Q,Xe(0,7),"tablesAndValuesJson: "+ge,"tablesAndValuesJson"),U(7,l,Le,"Return",je,be,"actions, doRollback","<Return>"),U(7,l,"start"+Ne,Q,Me),U(7,l,"finish"+Ne,Q,Je,pe,"doRollback");const se=z(K,Q);return _("Start"+Ne,se,Re+" just before the start of the "+Le,l,l,0),_("WillFinish"+Ne,se,Re+" just before "+ze,l,l,0),_("DidFinish"+Ne,se,Re+" just after "+ze,l,l,0),U(7,l,"call"+I,Q,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,l,I,Q,"Remove a listener that was previously added to "+Oe,"listenerId: Id","listenerId"),F("getStore",l,"Store","store",ut[0]+" the underlying Store object"),$(1,t,"createStore"),$(1,Z,Q,`create${Q} as create${Q}Decl`,se),R("store",["createStore()",...X]),V("fluent","actions: () => Store",["actions();",`return ${K};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${K}, ...params)`),R(K,["{",...B(1),"}"]),[d(...S(0),...A(),Ce+" interface "+Q+" {",...B(0),"}",l,St(`Creates a ${Q} object`),Ce+" function create"+Q+"(): "+Q+";"),d(...S(1),Ce+" const create"+Q+": typeof create"+Q+"Decl = () => {",...P(),`return Object.freeze(${K});`,"};"),oe,de]},zt=e=>$+e,Wt=e=>At(zt(e),zt(e)+ue),Bt="debugIds?: boolean",Ft="debugIds={debugIds}",Ut="then"+ie,_t="Parameter",Zt=": (parameter: "+_t+", store: Store) => ",Ht="const contextValue = useContext(Context);",Qt=", based on a parameter",qt=": ",Kt="<"+_t+",>",Xt=_t+"ized"+$e+"<"+_t+">",Yt="rowId",el="rowId={rowId}",tl=", separator, debugIds",ll="separator?: ReactElement | string",al="then?: (store: Store",nl=At(al+")"+Be,Ut),ol="then, then"+ue,dl=Yt+qt+he,sl="View",rl=(e,...t)=>At(...t,fe+": "+e,fe+ie,"mutator?: boolean"),Il=(...e)=>At(...e,fe,fe+ue,"mutator"),$l=(e,a,n,o,d)=>{const[s,r,$,c,v,V,R,k]=Dt(),[S,A,P]=Nt(e,a,v),E=`./${Rt(n)}.d`,D=`./${Rt(n)}-ui-react.d`,N="tinybase/ui-react",G=Rt(n,1),L=Rt(G),M=G+"Or"+G+he,z=L+"Or"+G+he,W=L+`={${L}}`,B=Y(),F=(e,t,a,n,o,d=l)=>(r(1,D,e+" as "+e+"Decl"),Tt(B,e,[t,a,n,o,d])),U=(e,t,a,n,o,d=l)=>F("use"+e,t,a,n,o,d),_=(e,t,a,n,o=l,d=l,s=l,I=l,$=l)=>(r(1,N,`use${t} as use${t}Core`),U(e,At(o,X,I),a,ae+`(${z}, use${t}Core, [`+(d||l)+($?"], ["+$:l)+"]);",n,s)),Z=(e,t,l,a)=>F(e,t,1,l,a),Q=(e=0)=>le(B,(([t,a,n,o,d],s)=>{const r=e?[Ce+` const ${s}: typeof ${s}Decl = ${d}(${t}): ${1==a?"any":a} =>`,n]:[Ce+` function ${s}${d}(${t}): ${1==a?"ComponentReturnType":a};`];return e||J(r,St(o)),j(r,l),r}));r(null,t,he,"Store",$e,_t+"ized"+$e),r(0,N,"ComponentReturnType"),r(1,N,"useCellIds"),r(null,N,"ExtraProps"),r(0,E,G);const q=$(M,G+" | "+he,`Used when you need to refer to a ${G} in a React hook or component`),K=$(xe+Ve,Et(L+we+G,L+`ById?: {[${L}Id: Id]: ${G}}`),`Used with the ${xe} component, so that a `+G+" can be passed into the context of an application");r(0,"react","ReactElement","ComponentType"),r(1,"react","React"),r(1,D,q,K);const X=z+we+q;v("{createContext, useContext, useMemo}","React"),v("Context",`createContext<[${G}?, {[${L}Id: Id]: ${G}}?]>([])`),U("Create"+G,`create: () => ${G}, create`+ie,G,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${G} within a React application with convenient memoization`);const te=U(G,"id?: Id",G+ye,["{",Ht,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${G} from within a ${xe} component context`),ae=c("useHook",z+`: ${q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${L} = ${te}(${z} as Id);`,`return hook(...preParams, ((${z} == null || typeof ${z} == 'string')`,`? ${L} : ${z})?.getStore(), ...postParams)`]),ne=c("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),oe=c("wrap",At("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),de=c("useCustomOrDefaultCellIds",At("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${z}?: ${q} | undefined`),[`const defaultCellIds = ${ae}(${z}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),re=v("NullComponent","() => null");if(!H(e)){const[e,a,n,d,s,w,y,T,v,V,R,k,P,N,j]=o;r(null,E,e,a,n,s,w,y,T,v,V,R,k,P,N),r(0,E,d),r(1,E,G),r(null,t,u,"IdOrNull");const M=c("tableView",`{${L}, rowComponent, getRowComponentProps, customCellIds`+tl+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${oe}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",el,"customCellIds={customCellIds}",W,Ft,"/>","))",tl,", tableId,",");"]),J=c("getDefaultTableComponent","tableId: Id",O(S(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+re),z=c("getDefaultCellComponent","tableId: Id, cellId: Id",O(S(((e,t,l)=>`tableId == ${l} ? ${O(A(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+re} : `)))+re);_(p,p,e,Xe(1,0)+Ie);const B=_(b,b,n+De,et(i,Oe)+Ie);_(Pe+p+$e,Pe+p+$e,Xt,Xe(1,9)+Qt,At(zt(p)+Zt+a,zt(p)+ie),Wt(p),Kt,At(al,`tables: ${a})`+Be,Ut),ol),_(ce+p+$e,ce+p+$e,$e,Xe(1,12),l,l,l,nl,ol);const F=$(g+Ve,Et("tableId?: TId","rowId: Id","cellId?: CId",L+we+G,Bt),lt(se+g),`<TId extends ${n}, CId extends ${d}<TId>>`),U=$(C+Ve,Et("tableId?: TId","rowId: Id",L+we+G,"cellComponents?: {readonly [CId in "+d+`<TId>]?: ComponentType<${F}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${d}<TId>) => ExtraProps`,`customCellIds?: ${d}<TId>[]`,ll,Bt),lt(se+C),`<TId extends ${n}>`),H=$(i+Ve,Et("tableId?: TId",L+we+G,`rowComponent?: ComponentType<${U}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",ll,Bt),lt(se+i),`<TId extends ${n}>`),Q=$("Sorted"+i+Ve,Et("tableId?: TId","cellId?: "+d+"<TId>","descending?: boolean","offset?: number","limit?: number",L+we+G,`rowComponent?: ComponentType<${U}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",ll,Bt),lt(se+"sorted "+i),`<TId extends ${n}>`),q=$(p+Ve,Et(L+we+G,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${H}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,ll,Bt),lt(Ke(1,1)));r(1,D,q,H,Q,U,F),Z(p+sl,"{"+L+", tableComponents, getTableComponentProps"+tl+"}: "+q,[oe+`(${B}(${L}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+J+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",W,Ft,"/>;","}), separator)"],Xe(1,13)+Ie),S(((e,t,a)=>{const[n,o,d,s,I]=ee(j,e);r(null,E,n,o,d,s,I),_(t+i,i,n,rt(e)+Ie,l,a),_(t+i+f,i+f,u,et(g,"the whole of "+dt(e))+Ie,l,a);const $=_(t+h,h,u,et(C,dt(e))+Ie,l,a),c=_(t+m,m,u,et(C,dt(e),1)+Ie,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");_(t+C,C,d,It(e)+Ie,dl,At(a,Yt)),_(t+f,f,I+De,et(g,st(e))+Ie,dl,At(a,Yt)),_(Pe+t+i+$e,Pe+i+$e,Xt,rt(e,9)+Qt,At(zt(i)+Zt+o,zt(i)+ie),At(a,Wt(i)),Kt,At(al,`table: ${o})`+Be,Ut),ol),_(ce+t+i+$e,ce+i+$e,$e,rt(e,12),l,a,l,nl,ol),_(Pe+t+C+$e,Pe+C+$e,Xt,It(e,9)+Qt,At(dl,zt(C)+Zt+s,zt(C)+ie),At(a,Yt,Wt(C)),Kt,At(al,`row: ${s})`+Be,Ut),ol),_("Add"+t+C+$e,"Add"+C+$e,Xt,It(e,10)+Qt,At(zt(C)+Zt+s,zt(C)+ie),At(a,Wt(C)),Kt,"then?: ("+At(dl+ye,"store: Store","row: "+s+")"+Be,"then"+ie)+", reuseRowIds?: boolean",ol+", reuseRowIds"),_(Pe+t+ve+C+$e,Pe+ve+C+$e,Xt,It(e,11)+Qt,At(dl,zt(ve+C)+Zt+s,zt(ve+C)+ie),At(a,Yt,Wt(ve+C)),Kt,At(al,`partialRow: ${s})`+Be,Ut),ol),_(ce+t+C+$e,ce+C+$e,$e,It(e,12),dl,At(a,Yt),l,nl,ol);const p=Z(t+C+sl,"{rowId, "+L+", cellComponents, getCellComponentProps, customCellIds"+tl+`}: ${U}<'${e}'>`,[oe+`(${de}(customCellIds, `+a+`, rowId, ${L}).map((cellId: ${I}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+z+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,el,"cellId={cellId}",W,Ft,"/>;","})"+tl+", rowId)"],It(e,13)+Ie);Z(t+"Sorted"+i+sl,"{cellId, descending, offset, limit, ...props}: "+Q+`<'${e}'>`,M+"(props, "+c+`(cellId, descending, offset, limit, props.${L}), ${a}, ${p});`,rt(e,13)+", sorted"+Ie),Z(t+i+sl,`props: ${H}<'${e}'>`,M+"(props, "+$+`(props.${L}), ${a}, ${p});`,rt(e,13)+Ie),A(e,((n,o,d,s,I)=>{const $="Map"+Rt(o,1);r(0,E,$),r(1,E,$);const c=_(t+I+g,g,o+(x(d)?ye:l),$t(e,n)+Ie,dl,At(a,Yt,s));_(Pe+t+I+g+$e,Pe+g+$e,Xt,$t(e,n,9)+Qt,At(dl,zt(g)+Zt+o+" | "+$,zt(g)+ie),At(a,Yt,s,Wt(g)),Kt,At(al,`cell: ${o} | ${$})`+Be,Ut),ol),_(ce+t+I+g+$e,ce+g+$e,$e,$t(e,n,12),At(dl,"forceDel?: boolean"),At(a,Yt,s,"forceDel"),l,nl,ol),Z(t+I+g+sl,`{rowId, ${L}, debugIds}: `+F+`<'${e}', '${n}'>`,[oe+`('' + ${c}(rowId, `+L+`) ?? '', undefined, debugIds, ${s})`],$t(e,n,13)+Ie)}))}));const K=O(S((e=>ee(j,e)?.[4]??l))," | ");_(p+I,p+I,We,Xe(1,8)+" changes",rl(s),Il()),_(b+I,b+I,We,ot(2,0,1),rl(w),Il()),_(i+I,i+I,We,ot(3,0),rl(y,`tableId: ${n} | null`),Il("tableId")),_(i+f+I,i+f+I,We,ot(14,3,1),rl(T,`tableId: ${n} | null`),Il("tableId")),_(h+I,h+I,We,ot(4,3,1),rl(V,`tableId: ${n} | null`),Il("tableId")),_(m+I,m+I,We,ot(13,3,1),rl(R,`tableId: ${n} | null`,"cellId: "+K+ye,"descending: boolean","offset: number","limit: number"+ye),Il("tableId","cellId","descending","offset","limit")),_(C+I,C+I,We,ot(5,3),rl(k,`tableId: ${n} | null`,Yt+": IdOrNull"),Il("tableId",Yt)),_(f+I,f+I,We,ot(6,5,1),rl(P,`tableId: ${n} | null`,Yt+": IdOrNull"),Il("tableId",Yt)),_(g+I,g+I,We,ot(7,5),rl(N,`tableId: ${n} | null`,Yt+": IdOrNull",`cellId: ${K} | null`),Il("tableId",Yt,"cellId"))}if(!H(a)){const[e,t,a,n,o,s]=d;r(null,E,...d),r(1,E,G);const u=c("getDefaultValueComponent","valueId: Id",O(P(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+re);_(y,y,e,Xe(2,0)+Ie);const i=_(T,T,a+De,et(w,Oe)+Ie);_(Pe+y+$e,Pe+y+$e,Xt,Xe(2,9)+Qt,At(zt(y)+Zt+t,zt(y)+ie),Wt(y),Kt,At(al,`values: ${t})`+Be,Ut),ol),_(Pe+ve+y+$e,Pe+ve+y+$e,Xt,Xe(2,11)+Qt,At(zt(ve+y)+Zt+t,zt(ve+y)+ie),Wt(ve+y),Kt,At(al,`partialValues: ${t})`+Be,Ut),ol),_(ce+y+$e,ce+y+$e,$e,Xe(2,12),l,l,l,nl,ol);const p=$(w+Ve,Et("valueId?: VId",L+we+G,Bt),lt("a Value"),`<VId extends ${a}>`),b=$(y+Ve,Et(L+we+G,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${p}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,ll,Bt),lt(Ke(2,1)));r(1,D,b,p),Z(y+sl,"{"+L+", valueComponents, getValueComponentProps"+tl+"}: "+b,[oe+`(${i}(${L}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+u+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",W,Ft,"/>;","}), separator)"],Xe(2,13)+Ie),P(((e,t,a,n,o)=>{const d="Map"+Rt(t,1);r(0,E,d),r(1,E,d);const s=_(o+w,w,t,ct(e)+Ie,l,n);_(Pe+o+w+$e,Pe+w+$e,Xt,ct(e,9)+Qt,At(zt(w)+Zt+t+" | "+d,zt(w)+ie),At(n,Wt(w)),Kt,At(al,`value: ${t} | ${d})`+Be,Ut),ol),_(ce+o+w+$e,ce+w+$e,$e,ct(e,12),l,n,l,nl,ol),Z(o+w+sl,`{${L}, debugIds}: ${p}<'${e}'>`,[oe+`('' + ${s}(`+L+`) ?? '', undefined, debugIds, ${n})`],ct(e,13)+Ie)})),_(y+I,y+I,We,Xe(2,8)+" changes",rl(n),Il()),_(T+I,T+I,We,ot(10,0,1),rl(o),Il()),_(w+I,w+I,We,ot(11,0),rl(s,`valueId: ${a} | null`),Il("valueId"))}return Z(xe,`{${L}, ${L}ById, children}: `+K+" & {children: React.ReactNode}",["{",Ht,"return (","<Context."+xe,"value={useMemo(",`() => [${L} ?? contextValue[0], {...contextValue[1], ...${L}ById}],`,`[${L}, ${L}ById, contextValue],`,")}>","{children}",`</Context.${xe}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[s(...V(0),...R(),...Q(0)),s(...V(1),...k(),...Q(1))]},cl=(e,t,a)=>{if(H(e)&&H(t))return[l,l,l,l];const[n,o,d,s]=Jt(e,t,a);return[n,o,...$l(e,t,a,d,s)]},ul=JSON.parse,il={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},pl=Ot((e=>{const t=()=>{const t=ul(e.getTablesSchemaJson());return!H(t)||P(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=Y();if(P(a,(t=>P(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=ne(n,a,(()=>[A(o),Y(),[0],0])),[s,r,[I]]=d,$=ne(r,o,(()=>0))+1;return $>I&&(d[2]=[$,o]),ae(r,o,$),d[3]++,s==A(o)})))))return t[l]={},K(n,(([e,,[,n],o],d)=>{t[l][d]={[s]:e,...o==G(a)?{[r]:n}:{}}})),1}))?t:{}},l=()=>{const t=ul(e.getValuesSchemaJson());return H(t)&&e.forEachValue(((e,l)=>{t[e]={[s]:A(l)}})),t},a=e=>cl(t(),l(),e),n=async e=>{const t=["d.ts","ts","d.ts","tsx"];let l;try{l=(await import("prettier")).format}catch(e){l=e=>e}return N(a(e),((e,a)=>vt(l(e,{...il,filepath:"_."+t[a]}))))};return F({getStoreStats:t=>{let l=0,a=0,n=0;const o={};return e.forEachTable(((e,d)=>{l++;let s=0,r=0;const I={};d(((e,l)=>{s++;let a=0;l((()=>a++)),r+=a,t&&(I[e]={rowCells:a})})),a+=s,n+=r,t&&(o[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:l,totalRows:a,totalCells:n,totalValues:G(e.getValueIds()),jsonLength:Vt(e.getJson()),...t?{detail:{tables:o}}:{}}},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));exports.createTools=pl;
1
+ "use strict";const e=e=>typeof e,t="tinybase",l="",a=",",n=e(l),o=e(!0),d=e(0),s="type",r="default",I="Listener",c="get",$="add",u="Ids",i="Table",p=i+"s",b=i+u,C="Row",h=C+u,m="Sorted"+C+u,g="Cell",f=g+u,w="Value",y=w+"s",T=w+u,v=Promise,V=isFinite,x=(e,t)=>e instanceof t,R=e=>null==e,k=e=>e==n||e==o,S=t=>e(t)==n,P=e=>Array.isArray(e),A=async e=>v.all(e),E=t=>{const l=e(t);return k(l)||l==d&&V(t)?l:void 0},D=(e,t)=>e.every(t),O=(e,t)=>e.sort(t),N=(e,t)=>e.forEach(t),G=(e,t=l)=>e.join(t),L=(e,t)=>e.map(t),j=e=>e.length,M=(e,t)=>e.filter(t),J=(e,...t)=>e.push(...t),z=e=>e.pop(),W=(e,...t)=>e.unshift(...t),B=e=>e.shift(),F=Object,U=F.keys,_=F.freeze,Z=e=>x(e,F)&&e.constructor==F,H=(e,t)=>L(F.entries(e),(([e,l])=>t(l,e))),Q=e=>j(U(e)),q=e=>Z(e)&&0==Q(e),K=(e,t)=>e?.has(t)??!1,X=e=>[...e?.values()??[]],Y=(e,t)=>e?.forEach(t),ee=(e,t)=>e?.delete(t),te=e=>new Map(e),le=(e,t)=>e?.get(t),ae=(e,t)=>Y(e,((e,l)=>t(l,e))),ne=(e,t)=>L([...e?.entries()??[]],(([e,l])=>t(l,e))),oe=(e,t,l)=>R(l)?(ee(e,t),e):e?.set(t,l),de=(e,t,l)=>(K(e,t)||oe(e,t,l()),le(e,t)),se=e=>e.toUpperCase(),re=e=>e.toLowerCase(),Ie="a ",ce="A function for",$e=", and registers a listener so that any changes to that result will cause a re-render",ue="Callback",ie="Del",pe="Deps",be=pe+"?: React.DependencyList",Ce="doRollback?: DoRollback",he="actions: () => Return, "+Ce,me="export",ge="Id",fe="Invalid",we="Json",ye=re(I),Te="?: ",ve=" | undefined",Ve="NonNullable",xe="Partial",Re="Props",ke="Provider",Se=`Registers a ${ye} that will be called`,Pe="Represents",Ae="rowId: "+ge,Ee="Schema",De="Set",Oe=", descending?: boolean, offset?: number, limit?: number",Ne="[]",Ge="the Store",Le="Transaction",je=Le+"Changes",Me=re(Le),Je="Execute a "+Me+" to make multiple mutations",ze="Explicitly starts a "+Me,We="Explicitly finishes a "+Me,Be="the end of the "+Me,Fe="void",Ue=" => "+Fe,_e="WhenSet",Ze=" when setting it",He=Ie+"string serialization of",Qe=" ",qe="Gets a callback that can ",Ke="the ",Xe=" the schema for",Ye=(e=0,t=0)=>`the ${ht[e]}content of`+(t?Qe+Ge:l),et=(e=0,t,a=0)=>pt[t]+Qe+Ye(e,1)+(a?" when setting it":l),tt=(e,t=0)=>Pe+` a Row when ${t?"s":"g"}etting ${Ye()} the '${e}' `+i,lt=(e,t,l=0)=>`Gets ${l?"sorted, paginated":"the"} Ids of the ${e}s in `+t,at=(e,t)=>`Calls a function for each ${e} in `+t,nt=e=>"The props passed to a component that renders "+e,ot=e=>"A function that takes "+e,dt=(e,t=0)=>ce+" listening to changes to "+Ct[e]+" in "+Ct[t],st=(e,t,a=0)=>Se+" whenever "+Ct[e]+" in "+Ct[t]+" change"+(a?l:"s"),rt=e=>`the '${e}' `+i,It=e=>"the specified Row in "+rt(e),ct=(e,t=0)=>pt[t]+` ${Ye()} `+rt(e),$t=(e,t=0)=>pt[t]+` ${Ye()} `+It(e),ut=(e,t,l=0)=>pt[l]+` the '${t}' Cell for `+It(e),it=(e,t=0)=>pt[t]+` the '${e}' Value`,pt=["Gets","Checks existence of","Sets","Deletes","Sets part of",Pe,"Gets "+He,"Sets "+He,Se+" whenever",qe+"set",qe+"add",qe+"set part of",qe+"delete","Renders","Gets "+He+Xe,"Sets"+Xe,"Deletes"+Xe],bt=[c,"has","set","del","set","forEach",$,l],Ct=[Ge,p,Ke+i+Qe+u,Ie+i,Ke+C+Qe+u,Ie+C,Ke+g+Qe+u,Ie+g,"invalid Cell changes",y,Ke+w+Qe+u,Ie+w,"invalid Value changes",Ke+"sorted "+C+Qe+u,Ke+g+Qe+u+" anywhere",Ke+"number of Rows"],ht=[l,"tabular ","keyed value "],mt=e=>new Set(P(e)||R(e)?e:[e]),gt=(e,t)=>e?.add(t),ft=/[^A-Za-z]+/,wt=/[^A-Za-z0-9]+/,yt=/^( *)\/\*\* *(.*?) *\*\/$/gm,Tt=(e,t,l)=>e.substring(t,l),vt=e=>e.includes(a),Vt=(e,t,l,a=1)=>{const n=`${t}${1==a?"":a}`;return K(e,n)?Vt(e,t,l,a+1):(oe(e,n,l),n)},xt=e=>e.replace(yt,((e,t,l)=>{const a=77-Rt(t);return`${t}/**\n${l.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),t+" * $1\n")}${t} */`})),Rt=e=>e.length,kt=e=>e.flat(1e3),St=(e,t=0)=>G(L(e.split(wt),((e,l)=>(l>0||t?se:re)(Tt(e,0,1))+Tt(e,1)))),Pt=e=>se(G((e&&!ft.test(e[0])?e:" "+e).split(wt),"_")),At=e=>`/** ${e}. */`,Et=(...e)=>G(M(e,(e=>e)),", "),Dt=(...e)=>"{"+G(e,"; ")+"}",Ot=(...e)=>Dt(...L(e,(e=>"readonly "+e))),Nt=()=>{const e=[te(),te(),te(),te()],t=te(),a=te(),n=e=>{const t=e.indexOf(" as ");return-1!=t?e.substring(t+4):e};return[(...e)=>G(kt(e),"\n"),(t,l,...a)=>N(a,(a=>N([0,1],(n=>(t??n)==n?gt(de(e[n],l,mt),a):0)))),(e,a,n,o=l,d=1)=>Vt(t,e,[a,n,o,d]),(e,t,l)=>Vt(a,e,P(l)?[`(${t}) => {`,l,"}"]:[`(${t}) => ${l}`]),(e,t)=>le(a,e)===t?e:Vt(a,e,t),(t=0)=>L([...O(ne(e[t],((e,t)=>`import {${G(O(X(e),((e,t)=>n(e)>n(t)?1:-1)),", ")}} from '${t}';`)),((e,t)=>vt(e)!=vt(t)?vt(e)?-1:1:e>t?1:-1)),l],(e=>e.replace("{React}","React"))),()=>ne(t,(([e,t,a,n],o)=>[At(t),`${n?me+" ":l}type ${o}${a} = ${e};`,l])),()=>ne(a,((e,t)=>(e=P(e)?e:[e],J(e,z(e)+";"),[`const ${t} = ${B(e)}`,e,l])))]},Gt=e=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},Lt=(e,t,l)=>[t=>H(e,((e,a)=>t(a,St(a,1),l(Pt(a),`'${a}'`)))),(t,a)=>H(e[t],((e,t)=>a(t,e[s],e[r],l(Pt(t),`'${t}'`),St(t,1)))),e=>H(t,((t,a)=>e(a,t[s],t[r],l(Pt(a),`'${a}'`),St(a,1))))],jt=(e,t,a,n)=>[(n,o)=>{const d=n+": "+o,s=e(p,Dt(...t((e=>`'${e}'?: {[rowId: Id]: `+Dt(...a(e,((e,t,a)=>`'${e}'${R(a)?"?":l}: ${t}`)))+"}"))),et(1,5)),r=e(p+_e,Dt(...t((e=>`'${e}'?: {[rowId: Id]: `+Dt(...a(e,((e,t)=>`'${e}'?: ${t}`)))+"}"))),et(1,5,1)),c=e(i+ge,"keyof "+s,"A "+i+" Id in "+Ge),$=`<TId extends ${c}>`,u=e(i,Ve+`<${s}[TId]>`,"A "+i+" in "+Ge,$),w=e(i+_e,Ve+`<${r}[TId]>`,"A "+i+" in "+Ge+Ze,$),y=e(C,u+"<TId>[Id]","A "+C+" in a "+i,$),T=e(C+_e,w+"<TId>[Id]","A "+C+" in a "+i+Ze,$),v=e(g+ge,`Extract<keyof ${y}<TId>, Id>`,"A "+g+" Id in a "+C,$),V=e(g,Ve+`<${s}[TId]>[Id][CId]`,"A "+g+" in a "+C,`<TId extends ${c}, CId extends ${v}<TId>>`),x=e("CellIdCellArray",`CId extends ${v}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,g+" Ids and types in a "+C,`<TId extends ${c}, CId = ${v}<TId>>`,0),k=e(g+ue,`(...[cellId, cell]: ${x}<TId>)`+Ue,ot(Ie+g+" Id, and "+g),$),S=e(C+ue,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Ue+") "+Ue,ot(Ie+C+" Id, and a "+g+" iterator"),$),P=e(i+g+ue,`(cellId: ${v}<TId>, count: number) `+Ue,ot(Ie+g+" Id, and count of how many times it appears"),$),A=e("TableIdForEachRowArray",`TId extends ${c} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${Ue}] : never`,i+" Ids and callback types",`<TId = ${c}>`,0),E=e(i+ue,`(...[tableId, forEachRow]: ${A})`+Ue,ot(Ie+i+" Id, and a "+C+" iterator"),l),D=e("TableIdRowIdCellIdArray",`TId extends ${c} ? [tableId: TId, rowId: Id, cellId: ${v}<TId>] : never`,"Ids for GetCellChange",`<TId = ${c}>`,0),O=e("GetCellChange",`(...[tableId, rowId, cellId]: ${D}) => CellChange`,ce+" returning information about any Cell's changes during a "+Me),N=e(p+I,`(${d}, getCellChange: ${O}${ve})`+Ue,dt(1)),G=e(b+I,`(${d})`+Ue,dt(2)),L=e(i+I,`(${d}, tableId: ${c}, getCellChange: ${O}${ve})`+Ue,dt(3)),j=e(i+f+I,`(${d}, tableId: ${c})`+Ue,dt(14,3)),M=e(C+"Count"+I,`(${d}, tableId: ${c})`+Ue,dt(15,3)),J=e(h+I,`(${d}, tableId: ${c})`+Ue,dt(4,3)),z=e(m+I,"("+Et(d,"tableId: "+c,"cellId: Id"+ve,"descending: boolean","offset: number","limit: number"+ve,"sortedRowIds: Ids")+")"+Ue,dt(13,3)),W=e(C+I,"("+Et(""+d,"tableId: "+c,Ae,`getCellChange: ${O}${ve}`)+")"+Ue,dt(5,3)),B=e(f+I,"("+Et(""+d,"tableId: "+c,Ae)+")"+Ue,dt(6,5)),F=e("CellListenerArgsArrayInner",`CId extends ${v}<TId> ? [${d}, tableId: TId, ${Ae}, cellId: CId, newCell: ${V}<TId, CId> ${ve}, oldCell: ${V}<TId, CId> ${ve}, getCellChange: ${O} ${ve}] : never`,"Cell args for CellListener",`<TId extends ${c}, CId = ${v}<TId>>`,0),U=e("CellListenerArgsArrayOuter",`TId extends ${c} ? `+F+"<TId> : never","Table args for CellListener",`<TId = ${c}>`,0);return[s,r,c,u,w,y,T,v,V,k,S,P,E,N,G,L,j,M,J,z,W,B,e(g+I,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${U})`+Ue,dt(7,5)),e(fe+g+I,`(${d}, tableId: Id, ${Ae}, cellId: Id, invalidCells: any[])`+Ue,dt(8))]},(t,a)=>{const o=t+": "+a,d=e(y,Dt(...n(((e,t,a)=>`'${e}'${R(a)?"?":l}: ${t}`))),et(2,5)),s=e(y+_e,Dt(...n(((e,t)=>`'${e}'?: ${t}`))),et(2,5,1)),r=e(w+ge,"keyof "+d,"A "+w+" Id in "+Ge),c=e(w,Ve+`<${d}[VId]>`,"A "+w+" Id in "+Ge,`<VId extends ${r}>`),$=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${c}<VId>] : never`,w+" Ids and types in "+Ge,`<VId = ${r}>`,0),u=e(w+ue,`(...[valueId, value]: ${$})`+Ue,ot(Ie+w+" Id, and "+w)),i=e("GetValueChange",`(valueId: ${r}) => ValueChange`,ce+" returning information about any Value's changes during a "+Me),p=e(y+I,`(${o}, getValueChange: ${i}${ve})`+Ue,dt(9)),b=e(T+I,`(${o})`+Ue,dt(10)),C=e("ValueListenerArgsArray",`VId extends ${r} ? [${o}, valueId: VId, newValue: ${c}<VId> ${ve}, oldValue: ${c}<VId> ${ve}, getValueChange: ${i} ${ve}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[d,s,r,c,u,p,b,e(w+I,`(...[${t}, valueId, newValue, oldValue, getValueChange]: `+C+")"+Ue,dt(11)),e(fe+w+I,`(${o}, valueId: Id, invalidValues: any[])`+Ue,dt(12))]},(t,l)=>e(Le+I,`(${t}: ${l}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+Ue,ce+" listening to the completion of a "+Me)],Mt=(e,t=l,a=l)=>`store.${e}(${t})`+(a?" as "+a:l),Jt=(e,t=l)=>`fluent(() => ${Mt(e,t)})`,zt=(e,t=l,a=l)=>`store.${e}(${t?t+", ":l}proxy(listener)${a?", "+a:l})`,Wt=(e,a,n)=>{const[d,c,v,V,x,k,P,A]=Nt(),[E,D,O]=Lt(e,a,x),[L,j,M]=jt(v,E,D,O),z=te(),B=(e=0)=>ne(z,(([t,a,n,o,d],s)=>{const r=e?[s+`: ${d}(${t}): ${a} => ${n},`]:[s+d+`(${t}): ${a};`];return e||W(r,At(o)),J(r,l),r})),F=(e,t,a,n,o,d=l)=>Vt(z,e,[t,a,n,o,d]),U=(e,t,a,n,o,d=l,s=l,r=l)=>F(bt[e]+t+(4==e?xe:l)+a,d,n,(n==H?Jt:Mt)(bt[e]+(4==e?xe:l)+a,s,e?void 0:n),o,r),_=(e,t,a,n=l,o=l,d=1,s=l)=>F($+e+I,(n?n+", ":l)+ye+": "+t+(d?", mutator?: boolean":l),ge,zt($+e+I,o,d?"mutator":l),a,s),Z=`./${St(n)}.d`,H=St(n,1),Q=St(H),K=[],Y=te();let ee=[],de=[];if(c(1,Z,H,`create${H} as create${H}Decl`),q(e))c(null,t,p);else{c(0,t,"CellChange"),c(null,t,u);const[e,a,n,d,I,$,w,y,T,V,k,P,A,O,j,M,z,W,B,F,q,ae,ne,de]=L(Q,H),se=te();E(((e,t)=>{const l=`<'${e}'>`,a=[v(t+i,d+l,Pe+` the '${e}' `+i),v(t+i+_e,I+l,Pe+` the '${e}' `+i+Ze),v(t+C,$+l,tt(e)),v(t+C+_e,w+l,tt(e,1)),v(t+g+ge,y+l,`A Cell Id for the '${e}' `+i),v(t+g+ue,V+l,ot(`a Cell Id and value from a Row in the '${e}' `+i)),v(t+C+ue,k+l,ot(`a Row Id from the '${e}' Table, and a Cell iterator`)),v(t+i+g+ue,P+l,ot(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];oe(se,e,a),c(1,Z,...a)})),c(1,Z,e,a,n,y,A,O,j,M,z,W,B,F,q,ae,ne,de),ee=[e,a,n,y,O,j,M,z,W,B,F,q,ae,ne,se],N([[e],[o],[H,"tables: "+a,"tables"],[H]],(([e,t,a],n)=>U(n,l,p,e,et(1,n),t,a))),U(0,l,b,n+Ne,lt(i,Ge)),U(5,l,i,Fe,at(i,Ge),"tableCallback: "+A,"tableCallback as any"),E(((e,t,a)=>{const[n,d,s,r,I,c,$,p]=le(se,e);N([[n],[o],[H,"table: "+d,", table"],[H]],(([n,o,d=l],s)=>U(s,t,i,n,ct(e,s),o,a+d))),U(0,t,i+f,u,lt(g,"the whole of "+rt(e)),l,a),U(5,t,i+g,Fe,at(i+g,"the whole of "+rt(e)),"tableCellCallback: "+p,a+", tableCellCallback as any"),U(0,t,C+"Count","number","Gets the number of Rows in the "+rt(e),l,a),U(0,t,h,u,lt(C,rt(e)),l,a),U(0,t,m,u,lt(C,rt(e),1),"cellId?: "+I+Oe,a+", cellId, descending, offset, limit"),U(5,t,C,Fe,at(C,rt(e)),"rowCallback: "+$,a+", rowCallback as any"),N([[s],[o],[H,", row: "+r,", row"],[H],[H,", partialRow: "+r,", partialRow"]],(([n,o=l,d=l],s)=>U(s,t,C,n,$t(e,s),Ae+o,a+", rowId"+d))),U(6,t,C,ge+ve,"Add a new Row to "+rt(e),"row: "+r+", reuseIds?: boolean",a+", row, reuseIds"),U(0,t,f,I+Ne,lt(g,It(e)),Ae,a+", rowId"),U(5,t,g,Fe,at(g,It(e)),Ae+", cellCallback: "+c,a+", rowId, cellCallback as any"),D(e,((n,d,s,r,I)=>{const c="Map"+St(d,1);oe(Y,d,c);const $=d+(R(s)?ve:l);N([[$],[o],[H,`, cell: ${d} | `+c,", cell as any"],[H]],(([o,d=l,s=l],c)=>U(c,t+I,g,o,ut(e,n,c),Ae+d,a+", rowId, "+r+s))),U(1,t+I,i+g,o,pt[1]+` the '${n}' Cell anywhere in `+rt(e),l,a+", "+r)}))})),U(0,l,p+we,we,et(1,6)),U(2,l,p+we,H,et(1,7),"tablesJson: "+we,"tables"+we),_(p,O,et(1,8)+" changes"),_(b,j,st(2,0,1)),_(i,M,st(3,0),`tableId: ${n} | null`,"tableId"),_(i+f,z,st(14,3,1),`tableId: ${n} | null`,"tableId"),_(C+"Count",W,st(15,3),`tableId: ${n} | null`,"tableId"),_(h,B,st(4,3,1),`tableId: ${n} | null`,"tableId"),_(m,F,st(13,3,1),Et("tableId: TId",`cellId: ${y}<TId>`+ve,"descending: boolean","offset: number","limit: number"+ve),Et("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(C,q,st(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(f,ae,st(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(g,ne,st(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${G(E((e=>le(se,e)?.[4]??l))," | ")} | null`,"tableId, rowId, cellId"),_(fe+g,de,Se+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),c(1,Z,...X(Y)),J(K,".set"+p+Ee+"({",kt(E(((e,t,a)=>[`[${a}]: {`,...D(e,((e,t,a,n)=>`[${n}]: {[${x(Pt(s),`'${s}'`)}]: ${x(Pt(t),`'${t}'`)}${R(a)?l:`, [${x(Pt(r),`'${r}'`)}]: `+(S(a)?x(Pt(a),`'${a}'`):a)}},`)),"},"]))),"})")}if(q(a))c(null,t,y);else{const[e,a,n,d,I,$,u,i,p]=j(Q,H);c(1,Z,e,a,n,I,$,u,i,p),de=[e,a,n,$,u,i],N([[e],[o],[H,"values: "+a,"values"],[H],[H,"partialValues: "+a,"partialValues"]],(([e,t,a],n)=>U(n,l,y,e,et(2,n),t,a))),U(0,l,T,n+Ne,lt(w,Ge)),U(5,l,w,"void",at(w,Ge),"valueCallback: "+I,"valueCallback as any"),O(((e,t,a,n,d)=>{const s="Map"+St(t,1);oe(Y,t,s),N([[t],[o],[H,`value: ${t} | `+s,", value as any"],[H]],(([t,a,o=l],s)=>U(s,d,w,t,it(e,s),a,n+o)))})),U(0,l,y+we,we,et(2,6)),U(2,l,y+we,H,et(2,7),"valuesJson: "+we,"values"+we),_(y,$,et(2,8)+" changes"),_(T,u,st(10,0,1)),_(w,i,st(11,0),`valueId: ${n} | null`,"valueId"),_(fe+w,p,Se+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),c(1,Z,...X(Y)),c(0,t,"ValueChange"),J(K,".set"+y+Ee+"({",O(((e,t,a,n)=>[`[${n}]: {[${x(Pt(s),`'${s}'`)}]: ${x(Pt(t),`'${t}'`)}${R(a)?l:`, [${x(Pt(r),`'${r}'`)}]: `+(S(a)?x(Pt(a),`'${a}'`):a)}},`])),"})")}U(0,l,"Content",`[${p}, ${y}]`,et(0,0)),U(2,l,"Content",H,et(0,2),`[tables, values]: [${p}, ${y}]`,"[tables, values]"),U(2,l,je,H,`Applies a set of ${je} to the Store`,"transactionChanges: "+je,"transactionChanges"),ae(Y,((e,t)=>v(t,`(cell: ${e}${ve}) => `+e,`Takes a ${e} Cell value and returns another`))),c(null,t,"DoRollback",ge,"IdOrNull",we,"Store",je),c(0,t,"Get"+je,"GetTransactionLog"),U(0,l,we,we,et(0,6)),U(2,l,we,H,et(0,7),"tablesAndValuesJson: "+we,"tablesAndValuesJson"),U(7,l,Me,"Return",Je,he,"actions, doRollback","<Return>"),U(7,l,"start"+Le,H,ze),U(7,l,"finish"+Le,H,We,Ce,"doRollback");const se=M(Q,H);return _("Start"+Le,se,Se+" just before the start of the "+Me,l,l,0),_("WillFinish"+Le,se,Se+" just before "+Be,l,l,0),_("DidFinish"+Le,se,Se+" just after "+Be,l,l,0),U(7,l,"call"+I,H,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,l,I,H,"Remove a listener that was previously added to "+Ge,"listenerId: Id","listenerId"),F("getStore",l,"Store","store",pt[0]+" the underlying Store object"),c(1,t,"createStore"),c(1,Z,H,`create${H} as create${H}Decl`,se),x("store",["createStore()",...K]),V("fluent","actions: () => Store",["actions();",`return ${Q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${Q}, ...params)`),x(Q,["{",...B(1),"}"]),[d(...k(0),...P(),me+" interface "+H+" {",...B(0),"}",l,At(`Creates a ${H} object`),me+" function create"+H+"(): "+H+";"),d(...k(1),me+" const create"+H+": typeof create"+H+"Decl = () => {",...A(),`return Object.freeze(${Q});`,"};"),ee,de]},Bt=e=>c+e,Ft=e=>Et(Bt(e),Bt(e)+pe),Ut="debugIds?: boolean",_t="debugIds={debugIds}",Zt="then"+be,Ht="Parameter",Qt=": (parameter: "+Ht+", store: Store) => ",qt="const contextValue = useContext(Context);",Kt=", based on a parameter",Xt=": ",Yt="<"+Ht+",>",el=Ht+"ized"+ue+"<"+Ht+">",tl="rowId",ll="rowId={rowId}",al=", separator, debugIds",nl="separator?: ReactElement | string",ol="then?: (store: Store",dl=Et(ol+")"+Ue,Zt),sl="then, then"+pe,rl=tl+Xt+ge,Il="View",cl=(e,...t)=>Et(...t,ye+": "+e,ye+be,"mutator?: boolean"),$l=(...e)=>Et(...e,ye,ye+pe,"mutator"),ul=(e,a,n,o,d)=>{const[s,r,c,$,v,V,x,k]=Nt(),[S,P,A]=Lt(e,a,v),E=`./${St(n)}.d`,D=`./${St(n)}-ui-react.d`,O="tinybase/ui-react",N=St(n,1),L=St(N),j=N+"Or"+N+ge,M=L+"Or"+N+ge,z=L+`={${L}}`,B=te(),F=(e,t,a,n,o,d=l)=>(r(1,D,e+" as "+e+"Decl"),Vt(B,e,[t,a,n,o,d])),U=(e,t,a,n,o,d=l)=>F("use"+e,t,a,n,o,d),_=(e,t,a,n,o=l,d=l,s=l,I=l,c=l)=>(r(1,O,`use${t} as use${t}Core`),U(e,Et(o,X,I),a,ee+`(${M}, use${t}Core, [`+(d||l)+(c?"], ["+c:l)+"]);",n,s)),Z=(e,t,l,a)=>F(e,t,1,l,a),H=(e=0)=>ne(B,(([t,a,n,o,d],s)=>{const r=e?[me+` const ${s}: typeof ${s}Decl = ${d}(${t}): ${1==a?"any":a} =>`,n]:[me+` function ${s}${d}(${t}): ${1==a?"ComponentReturnType":a};`];return e||W(r,At(o)),J(r,l),r}));r(null,t,ge,"Store",ue,Ht+"ized"+ue),r(0,O,"ComponentReturnType"),r(1,O,"useCellIds"),r(null,O,"ExtraProps"),r(0,E,N);const Q=c(j,N+" | "+ge,`Used when you need to refer to a ${N} in a React hook or component`),K=c(ke+Re,Ot(L+Te+N,L+`ById?: {[${L}Id: Id]: ${N}}`),`Used with the ${ke} component, so that a `+N+" can be passed into the context of an application");r(0,"react","ReactElement","ComponentType"),r(1,"react","React"),r(1,D,Q,K);const X=M+Te+Q;v("{createContext, useContext, useMemo}","React"),v("Context",`createContext<[${N}?, {[${L}Id: Id]: ${N}}?]>([])`),U("Create"+N,`create: () => ${N}, create`+be,N,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${N} within a React application with convenient memoization`);const Y=U(N,"id?: Id",N+ve,["{",qt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${N} from within a ${ke} component context`),ee=$("useHook",M+`: ${Q} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${L} = ${Y}(${M} as Id);`,`return hook(...preParams, ((${M} == null || typeof ${M} == 'string')`,`? ${L} : ${M})?.getStore(), ...postParams)`]),ae=$("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),oe=$("wrap",Et("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),de=$("useCustomOrDefaultCellIds",Et("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${M}?: ${Q} | undefined`),[`const defaultCellIds = ${ee}(${M}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),se=v("NullComponent","() => null");if(!q(e)){const[e,a,n,d,s,w,y,T,v,V,x,k,A,O,j]=o;r(null,E,e,a,n,s,w,y,T,v,V,x,k,A,O),r(0,E,d),r(1,E,N),r(null,t,u,"IdOrNull");const M=$("tableView",`{${L}, rowComponent, getRowComponentProps, customCellIds`+al+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${oe}(rowIds.map((rowId) => (`,"<Row","{..."+ae+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",ll,"customCellIds={customCellIds}",z,_t,"/>","))",al,", tableId,",");"]),J=$("getDefaultTableComponent","tableId: Id",G(S(((e,t,l)=>`tableId == ${l} ? ${t}TableView : `)))+se),W=$("getDefaultCellComponent","tableId: Id, cellId: Id",G(S(((e,t,l)=>`tableId == ${l} ? ${G(P(e,((e,l,a,n,o)=>`cellId == ${n} ? `+t+o+"CellView : ")))+se} : `)))+se);_(p,p,e,et(1,0)+$e);const B=_(b,b,n+Ne,lt(i,Ge)+$e);_(De+p+ue,De+p+ue,el,et(1,9)+Kt,Et(Bt(p)+Qt+a,Bt(p)+be),Ft(p),Yt,Et(ol,`tables: ${a})`+Ue,Zt),sl),_(ie+p+ue,ie+p+ue,ue,et(1,12),l,l,l,dl,sl);const F=c(g+Re,Ot("tableId?: TId","rowId: Id","cellId?: CId",L+Te+N,Ut),nt(Ie+g),`<TId extends ${n}, CId extends ${d}<TId>>`),U=c(C+Re,Ot("tableId?: TId","rowId: Id",L+Te+N,"cellComponents?: {readonly [CId in "+d+`<TId>]?: ComponentType<${F}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${d}<TId>) => ExtraProps`,`customCellIds?: ${d}<TId>[]`,nl,Ut),nt(Ie+C),`<TId extends ${n}>`),H=c(i+Re,Ot("tableId?: TId",L+Te+N,`rowComponent?: ComponentType<${U}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",nl,Ut),nt(Ie+i),`<TId extends ${n}>`),Q=c("Sorted"+i+Re,Ot("tableId?: TId","cellId?: "+d+"<TId>","descending?: boolean","offset?: number","limit?: number",L+Te+N,`rowComponent?: ComponentType<${U}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",nl,Ut),nt(Ie+"sorted "+i),`<TId extends ${n}>`),q=c(p+Re,Ot(L+Te+N,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${H}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,nl,Ut),nt(Ye(1,1)));r(1,D,q,H,Q,U,F),Z(p+Il,"{"+L+", tableComponents, getTableComponentProps"+al+"}: "+q,[oe+`(${B}(${L}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+J+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ae}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",z,_t,"/>;","}), separator)"],et(1,13)+$e),S(((e,t,a)=>{const[n,o,d,s,I]=le(j,e);r(null,E,n,o,d,s,I),_(t+i,i,n,ct(e)+$e,l,a),_(t+i+f,i+f,u,lt(g,"the whole of "+rt(e))+$e,l,a);const c=_(t+h,h,u,lt(C,rt(e))+$e,l,a),$=_(t+m,m,u,lt(C,rt(e),1)+$e,"cellId?: "+I+", descending?: boolean, offset?: number, limit?: number",a+", cellId, descending, offset, limit");_(t+C,C,d,$t(e)+$e,rl,Et(a,tl)),_(t+f,f,I+Ne,lt(g,It(e))+$e,rl,Et(a,tl)),_(De+t+i+ue,De+i+ue,el,ct(e,9)+Kt,Et(Bt(i)+Qt+o,Bt(i)+be),Et(a,Ft(i)),Yt,Et(ol,`table: ${o})`+Ue,Zt),sl),_(ie+t+i+ue,ie+i+ue,ue,ct(e,12),l,a,l,dl,sl),_(De+t+C+ue,De+C+ue,el,$t(e,9)+Kt,Et(rl,Bt(C)+Qt+s,Bt(C)+be),Et(a,tl,Ft(C)),Yt,Et(ol,`row: ${s})`+Ue,Zt),sl),_("Add"+t+C+ue,"Add"+C+ue,el,$t(e,10)+Kt,Et(Bt(C)+Qt+s,Bt(C)+be),Et(a,Ft(C)),Yt,"then?: ("+Et(rl+ve,"store: Store","row: "+s+")"+Ue,"then"+be)+", reuseRowIds?: boolean",sl+", reuseRowIds"),_(De+t+xe+C+ue,De+xe+C+ue,el,$t(e,11)+Kt,Et(rl,Bt(xe+C)+Qt+s,Bt(xe+C)+be),Et(a,tl,Ft(xe+C)),Yt,Et(ol,`partialRow: ${s})`+Ue,Zt),sl),_(ie+t+C+ue,ie+C+ue,ue,$t(e,12),rl,Et(a,tl),l,dl,sl);const p=Z(t+C+Il,"{rowId, "+L+", cellComponents, getCellComponentProps, customCellIds"+al+`}: ${U}<'${e}'>`,[oe+`(${de}(customCellIds, `+a+`, rowId, ${L}).map((cellId: ${I}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+W+`(${a}, cellId)) as React.ComponentType<CellProps<typeof `+a+", typeof cellId>>;","return <Cell",`{...${ae}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${a}}`,ll,"cellId={cellId}",z,_t,"/>;","})"+al+", rowId)"],$t(e,13)+$e);Z(t+"Sorted"+i+Il,"{cellId, descending, offset, limit, ...props}: "+Q+`<'${e}'>`,M+"(props, "+$+`(cellId, descending, offset, limit, props.${L}), ${a}, ${p});`,ct(e,13)+", sorted"+$e),Z(t+i+Il,`props: ${H}<'${e}'>`,M+"(props, "+c+`(props.${L}), ${a}, ${p});`,ct(e,13)+$e),P(e,((n,o,d,s,I)=>{const c="Map"+St(o,1);r(0,E,c),r(1,E,c);const $=_(t+I+g,g,o+(R(d)?ve:l),ut(e,n)+$e,rl,Et(a,tl,s));_(De+t+I+g+ue,De+g+ue,el,ut(e,n,9)+Kt,Et(rl,Bt(g)+Qt+o+" | "+c,Bt(g)+be),Et(a,tl,s,Ft(g)),Yt,Et(ol,`cell: ${o} | ${c})`+Ue,Zt),sl),_(ie+t+I+g+ue,ie+g+ue,ue,ut(e,n,12),Et(rl,"forceDel?: boolean"),Et(a,tl,s,"forceDel"),l,dl,sl),Z(t+I+g+Il,`{rowId, ${L}, debugIds}: `+F+`<'${e}', '${n}'>`,[oe+`('' + ${$}(rowId, `+L+`) ?? '', undefined, debugIds, ${s})`],ut(e,n,13)+$e)}))}));const K=G(S((e=>le(j,e)?.[4]??l))," | ");_(p+I,p+I,Fe,et(1,8)+" changes",cl(s),$l()),_(b+I,b+I,Fe,st(2,0,1),cl(w),$l()),_(i+I,i+I,Fe,st(3,0),cl(y,`tableId: ${n} | null`),$l("tableId")),_(i+f+I,i+f+I,Fe,st(14,3,1),cl(T,`tableId: ${n} | null`),$l("tableId")),_(h+I,h+I,Fe,st(4,3,1),cl(V,`tableId: ${n} | null`),$l("tableId")),_(m+I,m+I,Fe,st(13,3,1),cl(x,`tableId: ${n} | null`,"cellId: "+K+ve,"descending: boolean","offset: number","limit: number"+ve),$l("tableId","cellId","descending","offset","limit")),_(C+I,C+I,Fe,st(5,3),cl(k,`tableId: ${n} | null`,tl+": IdOrNull"),$l("tableId",tl)),_(f+I,f+I,Fe,st(6,5,1),cl(A,`tableId: ${n} | null`,tl+": IdOrNull"),$l("tableId",tl)),_(g+I,g+I,Fe,st(7,5),cl(O,`tableId: ${n} | null`,tl+": IdOrNull",`cellId: ${K} | null`),$l("tableId",tl,"cellId"))}if(!q(a)){const[e,t,a,n,o,s]=d;r(null,E,...d),r(1,E,N);const u=$("getDefaultValueComponent","valueId: Id",G(A(((e,t,l,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+se);_(y,y,e,et(2,0)+$e);const i=_(T,T,a+Ne,lt(w,Ge)+$e);_(De+y+ue,De+y+ue,el,et(2,9)+Kt,Et(Bt(y)+Qt+t,Bt(y)+be),Ft(y),Yt,Et(ol,`values: ${t})`+Ue,Zt),sl),_(De+xe+y+ue,De+xe+y+ue,el,et(2,11)+Kt,Et(Bt(xe+y)+Qt+t,Bt(xe+y)+be),Ft(xe+y),Yt,Et(ol,`partialValues: ${t})`+Ue,Zt),sl),_(ie+y+ue,ie+y+ue,ue,et(2,12),l,l,l,dl,sl);const p=c(w+Re,Ot("valueId?: VId",L+Te+N,Ut),nt("a Value"),`<VId extends ${a}>`),b=c(y+Re,Ot(L+Te+N,"valueComponents?: {readonly [VId in "+a+`]?: ComponentType<${p}<VId>>;}`,`getValueComponentProps?: (valueId: ${a}) => ExtraProps`,nl,Ut),nt(Ye(2,1)));r(1,D,b,p),Z(y+Il,"{"+L+", valueComponents, getValueComponentProps"+al+"}: "+b,[oe+`(${i}(${L}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+u+"(valueId);","return <Value",`{...${ae}(getValueComponentProps, valueId)}`,"key={valueId}",z,_t,"/>;","}), separator)"],et(2,13)+$e),A(((e,t,a,n,o)=>{const d="Map"+St(t,1);r(0,E,d),r(1,E,d);const s=_(o+w,w,t,it(e)+$e,l,n);_(De+o+w+ue,De+w+ue,el,it(e,9)+Kt,Et(Bt(w)+Qt+t+" | "+d,Bt(w)+be),Et(n,Ft(w)),Yt,Et(ol,`value: ${t} | ${d})`+Ue,Zt),sl),_(ie+o+w+ue,ie+w+ue,ue,it(e,12),l,n,l,dl,sl),Z(o+w+Il,`{${L}, debugIds}: ${p}<'${e}'>`,[oe+`('' + ${s}(`+L+`) ?? '', undefined, debugIds, ${n})`],it(e,13)+$e)})),_(y+I,y+I,Fe,et(2,8)+" changes",cl(n),$l()),_(T+I,T+I,Fe,st(10,0,1),cl(o),$l()),_(w+I,w+I,Fe,st(11,0),cl(s,`valueId: ${a} | null`),$l("valueId"))}return Z(ke,`{${L}, ${L}ById, children}: `+K+" & {children: React.ReactNode}",["{",qt,"return (","<Context."+ke,"value={useMemo(",`() => [${L} ?? contextValue[0], {...contextValue[1], ...${L}ById}],`,`[${L}, ${L}ById, contextValue],`,")}>","{children}",`</Context.${ke}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[s(...V(0),...x(),...H(0)),s(...V(1),...k(),...H(1))]},il=(e,t,a)=>{if(q(e)&&q(t))return[l,l,l,l];const[n,o,d,s]=Wt(e,t,a);return[n,o,...ul(e,t,a,d,s)]},pl=JSON.parse,bl="prettier/",Cl=bl+"plugins/",hl={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},ml=Gt((e=>{const t=()=>{const t=pl(e.getTablesSchemaJson());return!q(t)||D(e.getTableIds(),(l=>{const a=e.getRowIds(l),n=te();if(D(a,(t=>D(e.getCellIds(l,t),(a=>{const o=e.getCell(l,t,a),d=de(n,a,(()=>[E(o),te(),[0],0])),[s,r,[I]]=d,c=de(r,o,(()=>0))+1;return c>I&&(d[2]=[c,o]),oe(r,o,c),d[3]++,s==E(o)})))))return t[l]={},Y(n,(([e,,[,n],o],d)=>{t[l][d]={[s]:e,...o==j(a)?{[r]:n}:{}}})),1}))?t:{}},l=()=>{const t=pl(e.getValuesSchemaJson());return q(t)&&e.forEachValue(((e,l)=>{t[e]={[s]:E(l)}})),t},a=e=>il(t(),l(),e),n=async e=>{const t=["d.ts","ts","d.ts","tsx"],l=[];let n;try{n=(await import(bl+"standalone")).format,J(l,await import(Cl+"estree"),await import(Cl+"typescript"))}catch(e){n=async e=>e}return await A(L(a(e),(async(e,a)=>xt(await n(e,{...hl,plugins:l,filepath:"_."+t[a]})))))};return _({getStoreStats:t=>{let l=0,a=0,n=0;const o={};return e.forEachTable(((e,d)=>{l++;let s=0,r=0;const I={};d(((e,l)=>{s++;let a=0;l((()=>a++)),r+=a,t&&(I[e]={rowCells:a})})),a+=s,n+=r,t&&(o[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:l,totalRows:a,totalCells:n,totalValues:j(e.getValueIds()),jsonLength:Rt(e.getJson()),...t?{detail:{tables:o}}:{}}},getStoreTablesSchema:t,getStoreValuesSchema:l,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));exports.createTools=ml;
Binary file
@@ -1 +1 @@
1
- "use strict";var e=require("react"),t=require("./ui-react");const l=e=>typeof e,s="",a=l(s),n=l(!0),r=l(0),o=l(l),i="type",d="default",u="Ids",c="Table",h=c+"s",m=c+u,b="Row",g=b+"Count",I=b+u,p="Cell",f=p+u,w="Value",C=w+"s",y=w+u,v="currentTarget",k="value",x=e=>s+e,T=Math.floor,S=isFinite,V=(e,t)=>e instanceof t,R=e=>null==e,q=(e,t,l)=>R(e)?l?.():t(e),N=e=>e==a||e==n,L=e=>l(e)==o,M=e=>Array.isArray(e),{createElement:E,Fragment:z,useCallback:$,useLayoutEffect:O,useRef:A,useState:J}=e,F=(e,...t)=>R(e)?{}:e(...t),H=(e,t)=>e.forEach(t),P=(e,t)=>e.map(t),B=e=>e.length,Q=e=>0==B(e),D=(e,t,l)=>e.slice(t,l),W=(e,...t)=>e.push(...t),j=e=>e.shift(),G=Object,K=G.keys,U=G.isFrozen,X=G.freeze,Y=e=>V(e,G)&&e.constructor==G,Z=(e=[])=>G.fromEntries(e),_=(e,t)=>!R(((e,t)=>q(e,(e=>e[t])))(e,t)),ee=(e,t)=>(delete e[t],e),te=(e,t)=>P(G.entries(e),(([e,l])=>t(l,e))),le=e=>Y(e)&&0==(e=>B(K(e)))(e),se=e=>JSON.stringify(e,((e,t)=>V(t,Map)?G.fromEntries([...t]):t)),ae=JSON.parse,ne="tinybaseStoreInspector",re="TinyBase Store Inspector",oe=["left","top","bottom","right","full"],ie="state",de="sort",ue="open",ce="position",he=ue,me="editable",be=(...e)=>se(e),ge=(e,t)=>P(e.sort(),t),Ie=(e,l)=>[!!t.useCell(ie,e,me,l),$((t=>{l.setCell(ie,e,me,(e=>!e)),t.preventDefault()}),[l,e])],pe="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",fe='content:url("',we=fe+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",Ce='</svg>")',ye=fe+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")",ve=P([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,l,s])=>we+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${l}' height='${s}' fill='white'/>`+Ce)),ke=we+"<path d='M20 20l60 60M20 80l60-60' />"+Ce,xe=we+`<path d='${pe}' />`+Ce,Te=we+`<path d='${pe}M20 20l60 60' />`+Ce,Se="*::-webkit-scrollbar",Ve=((e,t="")=>e.join(t))(te({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[Se]:"width:0.5rem;height:0.5rem;",[Se+"-track"]:"background:#111",[Se+"-thumb"]:"background:#999;border:1px solid #111",[Se+"-thumb:hover"]:"background:#fff",[Se+"-corner"]:"background:#111",img:"width:1rem;height:1rem;background:#111;border:0;vertical-align:text-bottom",">img":"padding:0.25rem;bottom:0;right:0;position:fixed;"+ye,...Z(P(["bottom:0;left:0","top:0;right:0"],((e,t)=>[`>img[data-position='${t}']`,e]))),main:"display:flex;flex-direction:column;background:#111d;color:#fff;position:fixed;",...Z(P(["bottom:0;left:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:30vh","bottom:0;left:0;width:100vw;height:30vh","top:0;right:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:100vh"],((e,t)=>[`main[data-position='${t}']`,e]))),header:"display:flex;padding:0.25rem;background:#000;align-items:center","header>img:nth-of-type(1)":ye,"header>img:nth-of-type(6)":ke,...Z(P(ve,((e,t)=>[`header>img[data-id='${t}']`,e]))),"header>span":"flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-left:0.25rem",article:"padding:0.25rem 0.25rem 0.25rem 0.5rem;overflow:auto;flex:1",details:"margin-left:0.75rem;width:fit-content;","details img":"display:none","details[open]>summary img":"display:unset;background:none;margin-left:0.25rem","details[open]>summary img.edit":xe,"details[open]>summary img.done":Te,summary:"margin-left:-0.75rem;line-height:1.25rem;user-select:none;width:fit-content",table:"border-collapse:collapse;table-layout:fixed;margin-bottom:0.5rem","table input":"background:#111;color:unset;padding:0 0.25rem;border:0;font-size:unset;vertical-align:top;margin:0",'table input[type="number"]':"width:4rem","table tbody button":"font-size:0;background:#fff;border-radius:50%;margin:0 0.125rem 0 0;width:0.85rem;color:#111","table button:first-letter":"font-size:0.75rem",thead:"background:#222","th:nth-of-type(1)":"min-width:2rem;","th.sorted":"background:#000","table caption":"text-align:left;white-space:nowrap;line-height:1.25rem",button:"width:1.5rem;border:none;background:none;color:#fff;padding:0","button[disabled]":"color:#777","button.next":"margin-right:0.5rem",[`th,#${ne} td`]:"overflow:hidden;text-overflow:ellipsis;padding:0.25rem 0.5rem;max-width:12rem;white-space:nowrap;border-width:1px 0;border-style:solid;border-color:#777;text-align:left"},((e,t)=>e?`#${ne} ${t}{${e}}`:""))),Re=({s:e})=>{const l=t.useValue(ce,e)??1,s=t.useSetValueCallback(he,(()=>!0),[],e);return t.useValue(he,e)?null:E("img",{onClick:s,title:re,"data-position":l})},qe=({uniqueId:e,summary:l,editable:s,handleEditable:a,children:n,s:r})=>{const o=!!t.useCell(ie,e,ue,r),i=t.useSetCellCallback(ie,e,ue,(e=>e[v].open),[],r);return E("details",{open:o,onToggle:i},E("summary",null,l,a?E("img",{onClick:a,className:s?"done":"edit"}):null),n)},Ne=e=>{const t=l(e);return N(t)||t==r&&S(e)?t:void 0},Le=(e,t,l,s,a)=>R(a)?e.delCell(t,l,s,!0):e.setCell(t,l,s,a),Me=(e,t,l)=>R(l)?e.delValue(t):e.setValue(t,l),Ee=(e,t,l,s)=>e==a?t:e==r?l:s,{useCallback:ze,useMemo:$e,useState:Oe}=e,Ae="editable",Je=(e,l)=>P(t.useTableCellIds(e,l),(t=>e+"."+t)),Fe=(e,t,l)=>{const s=ze(e,t);return l?s:void 0},He=(...e)=>$e((()=>e),e),Pe=(e,t)=>$e((()=>({store:e,tableId:t})),[e,t]),Be=(e,t)=>$e((()=>({queries:e,queryId:t})),[e,t]),Qe=(e,t=!1,l,s=0,a,n,r,o)=>{const[[i,d,u],c]=Oe([e,t,s]),h=ze((e=>{c(e),o?.(e)}),[o]),m=Fe((e=>h([e,e==i&&!d,u])),[h,i,d,u],l),b=ze((e=>h([i,d,e])),[h,i,d]),g=!0===r?lt:r;return[[i,d,u],m,$e((()=>!1===r?null:E(g,{offset:u,limit:a,total:n,onChange:b})),[r,g,u,a,n,b])]},De=(e,t,s)=>$e((()=>{const n=t??e;return Z(te(M(n)?Z(P(n,(e=>[e,e]))):n,((e,t)=>{return[t,{label:t,component:s,...(n=e,l(n)==a?{label:e}:e)}];var n})))}),[t,s,e]),We=({className:e,headerRow:t,idColumn:l,params:[s,a,n,r,o,i]})=>E("table",{className:e},i?E("caption",null,i):null,!1===t?null:E("thead",null,E("tr",null,!1===l?null:E(je,{sort:r??[],label:"Id",onClick:o}),te(s,(({label:e},t)=>E(je,{key:t,cellId:t,label:e,sort:r??[],onClick:o}))))),E("tbody",null,P(n,(e=>E("tr",{key:e},!1===l?null:E("th",null,e),te(s,(({component:t,getComponentProps:l},s)=>E("td",{key:s},E(t,{...F(l,e,s),...a,rowId:e,cellId:s}))))))))),je=({cellId:e,sort:[t,l],label:a=e??s,onClick:n})=>E("th",{onClick:Fe((()=>n?.(e)),[n,e],n),className:R(l)||t!=e?void 0:`sorted ${l?"de":"a"}scending`},R(l)||t!=e?null:(l?"↓":"↑")+" ",a),Ge=({localRowId:l,params:[s,a,n,r,o,i,d]})=>{const u=t.useRemoteRowId(o,l,i);return E("tr",null,!1===s?null:E(e.Fragment,null,E("th",null,l),E("th",null,u)),te(a,(({component:e,getComponentProps:t},s)=>{const[a,o]=s.split(".",2),i=a===n?l:a===r?u:null;return R(i)?null:E("td",{key:s},E(e,{...F(t,i,o),store:d,tableId:a,rowId:i,cellId:o}))})))},Ke=({thing:e,onThingChange:t,className:l,hasSchema:s})=>{const[o,i]=Oe(),[d,u]=Oe(),[c,h]=Oe(),[m,b]=Oe(),[g,I]=Oe();d!==e&&(i(Ne(e)),u(e),h(e+""),b(Number(e)||0),I(!!e));const p=ze(((e,l)=>{l(e),u(e),t(e)}),[t]);return E("div",{className:l},E("button",{className:o,onClick:ze((()=>{if(!s?.()){const e=Ee(o,r,n,a),l=Ee(e,c,m,g);i(e),u(l),t(l)}}),[s,t,c,m,g,o])},o),Ee(o,E("input",{key:o,value:c,onChange:ze((e=>p(e[v][k]+"",h)),[p])}),E("input",{key:o,type:"number",value:m,onChange:ze((e=>p(Number(e[v][k]||0),b)),[p])}),E("input",{key:o,type:"checkbox",checked:g,onChange:ze((e=>p(!!e[v].checked,I)),[p])})))},Ue=({tableId:e,cellId:l,descending:s,offset:a,limit:n,store:r,editable:o,sortOnClick:i,paginator:d=!1,onChange:u,customCells:c,...h})=>{const[m,b,g]=Qe(l,s,i,a,n,t.useRowCount(e,r),d,u);return E(We,{...h,params:He(De(t.useTableCellIds(e,r),c,o?et:t.CellView),Pe(r,e),t.useSortedRowIds(e,...m,n,r),m,b,g)})},Xe=({store:e,editable:l=!1,valueComponent:s=(l?tt:t.ValueView),getValueComponentProps:a,className:n,headerRow:r,idColumn:o})=>E("table",{className:n},!1===r?null:E("thead",null,E("tr",null,!1===o?null:E("th",null,"Id"),E("th",null,w))),E("tbody",null,P(t.useValueIds(e),(t=>E("tr",{key:t},!1===o?null:E("th",null,t),E("td",null,E(s,{...F(a,t),valueId:t,store:e}))))))),Ye=({indexId:e,sliceId:l,indexes:s,editable:a,customCells:n,...r})=>{const[o,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(t.useIndexesOrIndexesById(s),e);return E(We,{...r,params:He(De(t.useTableCellIds(d,i),n,a?et:t.CellView),Pe(i,d),t.useSliceRowIds(e,l,o))})},Ze=({relationshipId:l,relationships:s,editable:a,customCells:n,className:r,headerRow:o,idColumn:i=!0})=>{const[d,u,c,h]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(t.useRelationshipsOrRelationshipsById(s),l),m=De([...Je(c,u),...Je(h,u)],n,a?et:t.CellView),b=He(i,m,c,h,l,d,u);return E("table",{className:r},!1===o?null:E("thead",null,E("tr",null,!1===i?null:E(e.Fragment,null,E("th",null,c,".Id"),E("th",null,h,".Id")),te(m,(({label:e},t)=>E("th",{key:t},e))))),E("tbody",null,P(t.useRowIds(c,u),(e=>E(Ge,{key:e,localRowId:e,params:b})))))},_e=({queryId:e,cellId:l,descending:s,offset:a,limit:n,queries:r,sortOnClick:o,paginator:i=!1,customCells:d,onChange:u,...c})=>{const[h,m,b]=Qe(l,s,o,a,n,t.useResultRowCount(e,r),i,u);return E(We,{...c,params:He(De(t.useResultTableCellIds(e,r),d,t.ResultCellView),Be(r,e),t.useResultSortedRowIds(e,...h,n,r),h,m,b)})},et=({tableId:e,rowId:l,cellId:s,store:a,className:n})=>E(Ke,{thing:t.useCell(e,l,s,a),onThingChange:t.useSetCellCallback(e,l,s,(e=>e),[],a),className:n??Ae+p,hasSchema:t.useStoreOrStoreById(a)?.hasTablesSchema}),tt=({valueId:e,store:l,className:s})=>E(Ke,{thing:t.useValue(e,l),onThingChange:t.useSetValueCallback(e,(e=>e),[],l),className:s??Ae+w,hasSchema:t.useStoreOrStoreById(l)?.hasValuesSchema}),lt=({onChange:t,total:l,offset:s=0,limit:a=l,singular:n="row",plural:r=n+"s"})=>{(s>l||s<0)&&(s=0,t(0));const o=Fe((()=>t(s-a)),[t,s,a],s>0),i=Fe((()=>t(s+a)),[t,s,a],s+a<l);return E(e.Fragment,null,l>a&&E(e.Fragment,null,E("button",{className:"previous",disabled:0==s,onClick:o},"←"),E("button",{className:"next",disabled:s+a>=l,onClick:i},"→"),s+1," to ",Math.min(l,s+a)," of "),l," ",1!=l?r:n)},st=({indexes:e,indexesId:l,indexId:s,s:a})=>E(qe,{uniqueId:be("i",l,s),summary:"Index: "+s,s:a},P(t.useSliceIds(s,e),(t=>E(at,{indexes:e,indexesId:l,indexId:s,sliceId:t,s:a})))),at=({indexes:e,indexesId:t,indexId:l,sliceId:s,s:a})=>{const n=be("i",t,l,s),[r,o]=Ie(n,a);return E(qe,{uniqueId:n,summary:"Slice: "+s,editable:r,handleEditable:o,s:a},E(Ye,{sliceId:s,indexId:l,indexes:e,editable:r}))},nt=({indexesId:e,s:l})=>{const s=t.useIndexes(e),a=t.useIndexIds(s);return R(s)?null:E(qe,{uniqueId:be("i",e),summary:"Indexes: "+(e??d),s:l},Q(a)?"No indexes defined":ge(a,(t=>E(st,{indexes:s,indexesId:e,indexId:t,s:l}))))},rt=({metrics:e,metricId:l})=>E("tr",null,E("th",null,l),E("td",null,e?.getTableId(l)),E("td",null,t.useMetric(l,e))),ot=({metricsId:e,s:l})=>{const s=t.useMetrics(e),a=t.useMetricIds(s);return R(s)?null:E(qe,{uniqueId:be("m",e),summary:"Metrics: "+(e??d),s:l},Q(a)?"No metrics defined":E("table",null,E("thead",null,E("th",null,"Metric Id"),E("th",null,"Table Id"),E("th",null,"Metric")),E("tbody",null,P(a,(e=>E(rt,{metrics:s,metricId:e}))))))},it=({queries:e,queriesId:l,queryId:s,s:a})=>{const n=be("q",l,s),[r,o,i]=ae(t.useCell(ie,n,de,a)??"[]"),d=t.useSetCellCallback(ie,n,de,se,[],a);return E(qe,{uniqueId:n,summary:"Query: "+s,s:a},E(_e,{queryId:s,queries:e,cellId:r,descending:o,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d}))},dt=({queriesId:e,s:l})=>{const s=t.useQueries(e),a=t.useQueryIds(s);return R(s)?null:E(qe,{uniqueId:be("q",e),summary:"Queries: "+(e??d),s:l},Q(a)?"No queries defined":ge(a,(t=>E(it,{queries:s,queriesId:e,queryId:t,s:l}))))},ut=({relationships:e,relationshipsId:t,relationshipId:l,s:s})=>{const a=be("r",t,l),[n,r]=Ie(a,s);return E(qe,{uniqueId:a,summary:"Relationship: "+l,editable:n,handleEditable:r,s:s},E(Ze,{relationshipId:l,relationships:e,editable:n}))},ct=({relationshipsId:e,s:l})=>{const s=t.useRelationships(e),a=t.useRelationshipIds(s);return R(s)?null:E(qe,{uniqueId:be("r",e),summary:"Relationships: "+(e??d),s:l},Q(a)?"No relationships defined":ge(a,(t=>E(ut,{relationships:s,relationshipsId:e,relationshipId:t,s:l}))))},ht=({tableId:e,store:l,storeId:s,s:a})=>{const n=be("t",s,e),[r,o,i]=ae(t.useCell(ie,n,de,a)??"[]"),d=t.useSetCellCallback(ie,n,de,se,[],a),[u,h]=Ie(n,a);return E(qe,{uniqueId:n,summary:c+": "+e,editable:u,handleEditable:h,s:a},E(Ue,{tableId:e,store:l,cellId:r,descending:o,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d,editable:u}))},mt=({store:e,storeId:l,s:s})=>{const a=be("v",l),[n,r]=Ie(a,s);return Q(t.useValueIds(e))?null:E(qe,{uniqueId:a,summary:C,editable:n,handleEditable:r,s:s},E(Xe,{store:e,editable:n}))},bt=({storeId:e,s:l})=>{const s=t.useStore(e),a=t.useTableIds(s);return R(s)?null:E(qe,{uniqueId:be("s",e),summary:"Store: "+(e??d),s:l},E(mt,{storeId:e,store:s,s:l}),ge(a,(t=>E(ht,{store:s,storeId:e,tableId:t,s:l}))))},gt=({s:e})=>{const l=A(null),s=A(0),[a,n]=J(!1),{scrollLeft:r,scrollTop:o}=t.useValues(e);O((()=>{const e=l.current;if(e&&!a){const t=new MutationObserver((()=>{e.scrollWidth>=T(r)+e.clientWidth&&e.scrollHeight>=T(o)+e.clientHeight&&e.scrollTo(r,o)}));return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}}),[a,r,o]);const i=$((t=>{const{scrollLeft:l,scrollTop:a}=t[v];cancelIdleCallback(s.current),s.current=requestIdleCallback((()=>{n(!0),e.setPartialValues({scrollLeft:l,scrollTop:a})}))}),[e]);return E("article",{ref:l,onScroll:i},E(bt,{s:e}),P(t.useStoreIds(),(t=>E(bt,{storeId:t,key:t,s:e}))),E(ot,{s:e}),P(t.useMetricsIds(),(t=>E(ot,{metricsId:t,key:t,s:e}))),E(nt,{s:e}),P(t.useIndexesIds(),(t=>E(nt,{indexesId:t,key:t,s:e}))),E(ct,{s:e}),P(t.useRelationshipsIds(),(t=>E(ct,{relationshipsId:t,key:t,s:e}))),E(dt,{s:e}),P(t.useQueriesIds(),(t=>E(dt,{queriesId:t,key:t,s:e}))))},It=({s:e})=>{const l=t.useValue(ce,e)??1,s=t.useSetValueCallback(he,(()=>!1),[],e),a=t.useSetValueCallback(ce,(e=>Number(e[v].dataset.id)),[],e);return E("header",null,E("img",{title:re}),E("span",null,re),P(oe,((e,t)=>t==l?null:E("img",{onClick:a,"data-id":t,title:"Dock to "+e,key:t}))),E("img",{onClick:s,title:"Close"}))},pt=({s:e})=>{const l=t.useValue(ce,e)??1;return t.useValue(he,e)?E("main",{"data-position":l},E(It,{s:e}),E(gt,{s:e})):null},ft=e=>t=>{return l=(t,l)=>t+e(l),Tt(t).reduce(l,0);var l},wt=e=>e?.size??0,Ct=ft(wt),yt=ft(Ct),vt=ft(yt),kt=(e,t)=>e?.has(t)??!1,xt=e=>R(e)||0==wt(e),Tt=e=>[...e?.values()??[]],St=e=>e.clear(),Vt=(e,t)=>e?.forEach(t),Rt=(e,t)=>e?.delete(t),qt=e=>new Map(e),Nt=e=>[...e?.keys()??[]],Lt=(e,t)=>e?.get(t),Mt=(e,t)=>Vt(e,((e,l)=>t(l,e))),Et=(e,t,l)=>R(l)?(Rt(e,t),e):e?.set(t,l),zt=(e,t,l)=>(kt(e,t)||Et(e,t,l()),Lt(e,t)),$t=(e,t,l,s=Et)=>(te(t,((t,s)=>l(e,s,t))),Mt(e,(l=>_(t,l)?0:s(e,l))),e),Ot=(e,t,l)=>{const s={};return Vt(e,((e,a)=>{const n=t?t(e,a):e;!l?.(n,e)&&(s[a]=n)})),s},At=(e,t,l)=>Ot(e,(e=>Ot(e,t,l)),le),Jt=(e,t,l)=>Ot(e,(e=>At(e,t,l)),le),Ft=(e,t)=>{const l=qt();return Vt(e,((e,s)=>l.set(s,t?.(e)??e))),l},Ht=e=>Ft(e,Ft),Pt=e=>Ft(e,Ht),Bt=(e,t,l,s,a=0)=>q((l?zt:Lt)(e,t[a],a>B(t)-2?l:qt),(n=>{if(a>B(t)-2)return s?.(n)&&Et(e,t[a]),n;const r=Bt(n,t,l,s,a+1);return xt(n)&&Et(e,t[a]),r})),Qt=qt(),Dt=qt(),Wt="storage",jt=globalThis.window,Gt=e=>new Set(M(e)||R(e)?e:[e]),Kt=(e,t)=>e?.add(t),Ut=/^\d+$/,Xt=()=>{const e=[];let t=0;return[l=>(l?j(e):null)??s+t++,t=>{Ut.test(t)&&B(e)<1e3&&W(e,t)}]},Yt=e=>[e,e],Zt=(e,t=Ct)=>t(e[0])+t(e[1]),_t=()=>[qt(),qt()],el=e=>[...e],tl=([e,t])=>e===t,ll=(e,t,l)=>R(e)||!Y(e)||le(e)||U(e)?(l?.(),!1):(te(e,((l,s)=>{t(l,s)||ee(e,s)})),!le(e)),sl=(e,t,l)=>Et(e,t,Lt(e,t)==-l?void 0:l),al=()=>{let e,t,l=!1,a=!1,n=0;const o=qt(),u=qt(),v=qt(),k=qt(),T=qt(),S=qt(),V=qt(),M=qt(),E=qt(),z=qt(),$=qt(),O=qt(),A=qt(),J=qt(),F=Gt(),Q=qt(),j=qt(),G=qt(),K=qt(),U=_t(),Y=_t(),Z=_t(),ne=_t(),re=_t(),oe=_t(),ie=_t(),de=_t(),ue=_t(),ce=_t(),he=_t(),me=_t(),be=_t(),ge=_t(),Ie=_t(),pe=qt(),fe=_t(),[we,Ce,ye,ve]=(e=>{let t;const[l,a]=Xt(),n=qt();return[(e,a,r,o=[],i=(()=>[]))=>{t??=wl;const d=l(1);return Et(n,d,[e,a,r,o,i]),Kt(Bt(a,r??[s],Gt),d),d},(e,l,...a)=>H(((e,t=[s])=>{const l=[],a=(e,s)=>s==B(t)?W(l,e):null===t[s]?Vt(e,(e=>a(e,s+1))):H([t[s],null],(t=>a(Lt(e,t),s+1)));return a(e,0),l})(e,l),(e=>Vt(e,(e=>Lt(n,e)[0](t,...l??[],...a))))),e=>q(Lt(n,e),(([,t,l])=>(Bt(t,l??[s],void 0,(t=>(Rt(t,e),xt(t)?1:0))),Et(n,e),a(e),l))),e=>q(Lt(n,e),(([e,,l=[],s,a])=>{const n=(...r)=>{const o=B(r);o==B(l)?e(t,...r,...a(r)):R(l[o])?H(s[o]?.(...r)??[],(e=>n(...r,e))):n(...r,l[o])};n()}))]})(),ke=e=>{if(!ll(e,((e,t)=>[i,d].includes(t))))return!1;const t=e[i];return!(!N(t)&&t!=r||(Ne(e[d])!=t&&ee(e,d),0))},xe=(t,l)=>(!e||kt($,l)||st(l))&&ll(t,((e,t)=>Te(l,t,e)),(()=>st(l))),Te=(e,t,l,s)=>ll(s?l:qe(l,e,t),((s,a)=>q(Se(e,t,a,s),(e=>(l[a]=e,!0)),(()=>!1))),(()=>st(e,t))),Se=(t,l,s,a)=>e?q(Lt(Lt($,t),s),(e=>Ne(a)!=e[i]?st(t,l,s,a,e[d]):a),(()=>st(t,l,s,a))):R(Ne(a))?st(t,l,s,a):a,Ve=(e,t)=>ll(t?e:Ee(e),((t,l)=>q(Re(l,t),(t=>(e[l]=t,!0)),(()=>!1))),(()=>at())),Re=(e,l)=>t?q(Lt(A,e),(t=>Ne(l)!=t[i]?at(e,l,t[d]):l),(()=>at(e,l))):R(Ne(l))?at(e,l):l,qe=(e,t,l)=>(q(Lt(O,t),(([s,a])=>{Vt(s,((t,l)=>{_(e,l)||(e[l]=t)})),Vt(a,(s=>{_(e,s)||st(t,l,s)}))})),e),Ee=e=>(t&&(Vt(J,((t,l)=>{_(e,l)||(e[l]=t)})),Vt(F,(t=>{_(e,t)||at(t)}))),e),ze=e=>$t($,e,((e,t,l)=>{const s=qt(),a=Gt();$t(zt($,t,qt),l,((e,t,l)=>{Et(e,t,l),q(l[d],(e=>Et(s,t,e)),(()=>Kt(a,t)))})),Et(O,t,[s,a])}),((e,t)=>{Et($,t),Et(O,t)})),$e=e=>$t(A,e,((e,t,l)=>{Et(A,t,l),q(l[d],(e=>Et(J,t,e)),(()=>Kt(F,t)))}),((e,t)=>{Et(A,t),Et(J,t),Rt(F,t)})),Oe=e=>le(e)?ul():nl(e),Ae=e=>$t(G,e,((e,t,l)=>Je(t,l)),((e,t)=>Ge(t))),Je=(e,t)=>$t(zt(G,e,(()=>(Ye(e,1),Et(Q,e,Xt()),Et(j,e,qt()),qt()))),t,((t,l,s)=>Fe(e,t,l,s)),((t,l)=>Ke(e,t,l))),Fe=(e,t,l,s,a)=>$t(zt(t,l,(()=>(Ze(e,l,1),qt()))),s,((t,s,a)=>He(e,l,t,s,a)),((s,n)=>Ue(e,t,l,s,n,a))),He=(e,t,l,s,a)=>{kt(l,s)||_e(e,t,s,1);const n=Lt(l,s);a!==n&&(et(e,t,s,n,a),Et(l,s,a))},Pe=(e,t,l,s,a)=>q(Lt(t,l),(t=>He(e,l,t,s,a)),(()=>Fe(e,t,l,qe({[s]:a},e,l)))),Be=e=>le(e)?ml():rl(e),Qe=e=>$t(K,e,((e,t,l)=>De(t,l)),((e,t)=>Xe(t))),De=(e,t)=>{kt(K,e)||tt(e,1);const l=Lt(K,e);t!==l&&(lt(e,l,t),Et(K,e,t))},We=(e,t)=>{const[l]=Lt(Q,e),s=l(t);return kt(Lt(G,e),s)?We(e,t):s},je=e=>Lt(G,e)??Je(e,{}),Ge=e=>Je(e,{}),Ke=(e,t,l)=>{const[,s]=Lt(Q,e);s(l),Fe(e,t,l,{},!0)},Ue=(e,t,l,s,a,n)=>{const r=Lt(Lt(O,e)?.[0],a);if(!R(r)&&!n)return He(e,l,s,a,r);const o=t=>{et(e,l,t,Lt(s,t)),_e(e,l,t,-1),Et(s,t)};R(r)?o(a):Mt(s,o),xt(s)&&(Ze(e,l,-1),xt(Et(t,l))&&(Ye(e,-1),Et(G,e),Et(Q,e),Et(j,e)))},Xe=e=>{const t=Lt(J,e);if(!R(t))return De(e,t);lt(e,Lt(K,e)),tt(e,-1),Et(K,e)},Ye=(e,t)=>sl(o,e,t),Ze=(e,t,l)=>sl(zt(k,e,qt),t,l)&&Et(v,e,zt(v,e,(()=>0))+l),_e=(e,t,l,s)=>{const a=Lt(j,e),n=Lt(a,l)??0;(0==n&&1==s||1==n&&-1==s)&&sl(zt(u,e,qt),l,s),Et(a,l,n!=-s?n+s:null),sl(zt(zt(T,e,qt),t,qt),l,s)},et=(e,t,l,s,a)=>zt(zt(zt(S,e,qt),t,qt),l,(()=>[s,0]))[1]=a,tt=(e,t)=>sl(V,e,t),lt=(e,t,l)=>zt(M,e,(()=>[t,0]))[1]=l,st=(e,t,l,s,a)=>(W(zt(zt(zt(E,e,qt),t,qt),l,(()=>[])),s),a),at=(e,t,l)=>(W(zt(z,e,(()=>[])),t),l),nt=(e,t,l)=>q(Lt(Lt(Lt(S,e),t),l),(([e,t])=>[!0,e,t]),(()=>[!1,...Yt(Dt(e,t,l))])),rt=e=>q(Lt(M,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Yt(Ut(e))])),ot=e=>xt(E)||xt(he[e])?0:Vt(e?Pt(E):E,((t,l)=>Vt(t,((t,s)=>Vt(t,((t,a)=>Ce(he[e],[l,s,a],t))))))),it=e=>xt(z)||xt(me[e])?0:Vt(e?Ft(z):z,((t,l)=>Ce(me[e],[l],t))),dt=(e,t,l)=>{if(!xt(t))return Ce(e,l,(()=>Ot(t))),1},ut=e=>{const t=xt(ie[e]),l=xt(ue[e])&&xt(ne[e])&&xt(re[e])&&xt(oe[e])&&t&&xt(Y[e]),s=xt(ce[e])&&xt(de[e])&&xt(Z[e])&&xt(U[e]);if(!l||!s){const a=e?[Ft(o),Ht(u),Ft(v),Ht(k),Pt(T),Pt(S)]:[o,u,v,k,T,S];if(!l){dt(Y[e],a[0]),Vt(a[1],((t,l)=>dt(ne[e],t,[l]))),Vt(a[2],((t,l)=>{0!=t&&Ce(re[e],[l],pt(l))}));const l=Gt();Vt(a[3],((s,a)=>{dt(oe[e],s,[a])&&!t&&(Ce(ie[e],[a,null]),Kt(l,a))})),t||Vt(a[5],((t,s)=>{if(!kt(l,s)){const l=Gt();Vt(t,(e=>Vt(e,(([t,s],a)=>s!==t?Kt(l,a):Rt(e,a))))),Vt(l,(t=>Ce(ie[e],[s,t])))}})),Vt(a[4],((t,l)=>Vt(t,((t,s)=>dt(ue[e],t,[l,s])))))}if(!s){let t;Vt(a[5],((l,s)=>{let a;Vt(l,((l,n)=>{let r;Vt(l,(([l,o],i)=>{o!==l&&(Ce(ce[e],[s,n,i],o,l,nt),t=a=r=1)})),r&&Ce(de[e],[s,n],nt)})),a&&Ce(Z[e],[s],nt)})),t&&Ce(U[e],void 0,nt)}}},ct=e=>{const t=xt(ge[e]),l=xt(Ie[e])&&xt(be[e]);if(!t||!l){const s=e?[Ft(V),Ft(M)]:[V,M];if(t||dt(ge[e],s[0]),!l){let t;Vt(s[1],(([l,s],a)=>{s!==l&&(Ce(Ie[e],[a],s,l,rt),t=1)})),t&&Ce(be[e],void 0,rt)}}},ht=(e,...t)=>(Il((()=>e(...P(t,x)))),wl),mt=()=>[Ot(S,((e,t)=>-1===Lt(o,t)?null:Ot(e,((e,l)=>-1===Lt(Lt(k,t),l)?null:Ot(e,(([,e])=>e??null),((e,t)=>tl(t)))),le)),le),Ot(M,(([,e])=>e??null),((e,t)=>tl(t)))],bt=()=>({cellsTouched:l,valuesTouched:a,changedCells:Jt(S,el,tl),invalidCells:Jt(E),changedValues:Ot(M,el,tl),invalidValues:Ot(z),changedTableIds:Ot(o),changedRowIds:At(k),changedCellIds:Jt(T),changedValueIds:Ot(V)}),gt=()=>Jt(G),It=()=>Nt(G),pt=e=>wt(Lt(G,x(e))),ft=e=>Nt(Lt(G,x(e))),Tt=(e,t,l,s=0,a)=>{return P(D((r=Lt(G,x(e)),o=(e,l)=>[R(t)?l:Lt(e,x(t)),l],n=([e],[t])=>((e??0)<(t??0)?-1:1)*(l?-1:1),P([...r?.entries()??[]],(([e,t])=>o(t,e))).sort(n)),s,R(a)?a:s+a),(([,e])=>e));var n,r,o},Qt=(e,t)=>Nt(Lt(Lt(G,x(e)),x(t))),Dt=(e,t,l)=>Lt(Lt(Lt(G,x(e)),x(t)),x(l)),Wt=()=>Ot(K),jt=()=>Nt(K),Ut=e=>Lt(K,x(e)),nl=e=>ht((()=>(e=>ll(e,xe,st))(e)?Ae(e):0)),rl=e=>ht((()=>Ve(e)?Qe(e):0)),ol=e=>{try{Oe(ae(e))}catch{}return wl},il=t=>ht((()=>{if((e=ll(t,(e=>ll(e,ke))))&&(ze(t),!xt(G))){const e=gt();ul(),nl(e)}})),dl=e=>ht((()=>{if(t=(e=>ll(e,ke))(e)){const l=Wt();gl(),ml(),t=!0,$e(e),rl(l)}})),ul=()=>ht((()=>Ae({}))),cl=e=>ht((e=>kt(G,e)?Ge(e):0),e),hl=(e,t)=>ht(((e,t)=>q(Lt(G,e),(l=>kt(l,t)?Ke(e,l,t):0))),e,t),ml=()=>ht((()=>Qe({}))),bl=()=>ht((()=>{ze({}),e=!1})),gl=()=>ht((()=>{$e({}),t=!1})),Il=(e,t)=>{if(-1!=n){pl();const l=e();return fl(t),l}},pl=()=>(-1!=n&&n++,1==n&&Ce(pe,void 0,mt,bt),wl),fl=e=>(n>0&&(n--,0==n&&(l=!xt(S),a=!xt(M),n=1,ot(1),l&&ut(1),it(1),a&&ct(1),e?.(mt,bt)&&(Vt(S,((e,t)=>Vt(e,((e,l)=>Vt(e,(([e],s)=>Le(wl,t,l,s,e))))))),Vt(M,(([e],t)=>Me(wl,t,e))),l=a=!1),Ce(fe[0],void 0,mt,bt),n=-1,ot(0),l&&ut(0),it(0),a&&ct(0),Ce(fe[1],void 0,mt,bt),n=0,l=a=!1,H([o,u,v,k,T,S,E,V,M,z],St))),wl),wl={getContent:()=>[gt(),Wt()],getTables:gt,getTableIds:It,getTable:e=>At(Lt(G,x(e))),getTableCellIds:e=>Nt(Lt(j,x(e))),getRowCount:pt,getRowIds:ft,getSortedRowIds:Tt,getRow:(e,t)=>Ot(Lt(Lt(G,x(e)),x(t))),getCellIds:Qt,getCell:Dt,getValues:Wt,getValueIds:jt,getValue:Ut,hasTables:()=>!xt(G),hasTable:e=>kt(G,x(e)),hasTableCell:(e,t)=>kt(Lt(j,x(e)),x(t)),hasRow:(e,t)=>kt(Lt(G,x(e)),x(t)),hasCell:(e,t,l)=>kt(Lt(Lt(G,x(e)),x(t)),x(l)),hasValues:()=>!xt(K),hasValue:e=>kt(K,x(e)),getTablesJson:()=>se(G),getValuesJson:()=>se(K),getJson:()=>se([G,K]),getTablesSchemaJson:()=>se($),getValuesSchemaJson:()=>se(A),getSchemaJson:()=>se([$,A]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ht((()=>{(le(e)?ul:nl)(e),(le(t)?ml:rl)(t)})),setTables:nl,setTable:(e,t)=>ht((e=>xe(t,e)?Je(e,t):0),e),setRow:(e,t,l)=>ht(((e,t)=>Te(e,t,l)?Fe(e,je(e),t,l):0),e,t),addRow:(e,t,l=!0)=>Il((()=>{let s;return Te(e,s,t)&&(e=x(e),Fe(e,je(e),s=We(e,l?1:0),t)),s})),setPartialRow:(e,t,l)=>ht(((e,t)=>{if(Te(e,t,l,1)){const s=je(e);te(l,((l,a)=>Pe(e,s,t,a,l)))}}),e,t),setCell:(e,t,l,s)=>ht(((e,t,l)=>q(Se(e,t,l,L(s)?s(Dt(e,t,l)):s),(s=>Pe(e,je(e),t,l,s)))),e,t,l),setValues:rl,setPartialValues:e=>ht((()=>Ve(e,1)?te(e,((e,t)=>De(t,e))):0)),setValue:(e,t)=>ht((e=>q(Re(e,L(t)?t(Ut(e)):t),(t=>De(e,t)))),e),setTransactionChanges:e=>ht((()=>{te(e[0],((e,t)=>R(e)?cl(t):te(e,((e,l)=>R(e)?hl(t,l):te(e,((e,s)=>Le(wl,t,l,s,e))))))),te(e[1],((e,t)=>Me(wl,t,e)))})),setTablesJson:ol,setValuesJson:e=>{try{Be(ae(e))}catch{}return wl},setJson:e=>{try{const[t,l]=ae(e);Oe(t),Be(l)}catch{ol(e)}return wl},setTablesSchema:il,setValuesSchema:dl,setSchema:(e,t)=>ht((()=>{il(e),dl(t)})),delTables:ul,delTable:cl,delRow:hl,delCell:(e,t,l,s)=>ht(((e,t,l)=>q(Lt(G,e),(a=>q(Lt(a,t),(n=>kt(n,l)?Ue(e,a,t,n,l,s):0))))),e,t,l),delValues:ml,delValue:e=>ht((e=>kt(K,e)?Xe(e):0),e),delTablesSchema:bl,delValuesSchema:gl,delSchema:()=>ht((()=>{bl(),gl()})),transaction:Il,startTransaction:pl,finishTransaction:fl,forEachTable:e=>Vt(G,((t,l)=>e(l,(e=>Vt(t,((t,l)=>e(l,(e=>Mt(t,e))))))))),forEachTableCell:(e,t)=>Mt(Lt(j,x(e)),t),forEachRow:(e,t)=>Vt(Lt(G,x(e)),((e,l)=>t(l,(t=>Mt(e,t))))),forEachCell:(e,t,l)=>Mt(Lt(Lt(G,x(e)),x(t)),l),forEachValue:e=>Mt(K,e),addSortedRowIdsListener:(e,t,l,s,a,n,r)=>{let o=Tt(e,t,l,s,a);return we((()=>{const r=Tt(e,t,l,s,a);var i,d,u;d=o,B(i=r)===B(d)&&(u=(e,t)=>d[t]===e,i.every(u))||(o=r,n(wl,e,t,l,s,a,o))}),ie[r?1:0],[e,t],[It])},addStartTransactionListener:e=>we(e,pe),addWillFinishTransactionListener:e=>we(e,fe[0]),addDidFinishTransactionListener:e=>we(e,fe[1]),callListener:e=>(ve(e),wl),delListener:e=>(ye(e),wl),getListenerStats:()=>({tables:Zt(U),tableIds:Zt(Y),tableCellIds:Zt(ne),table:Zt(Z),rowCount:Zt(re),rowIds:Zt(oe),sortedRowIds:Zt(ie),row:Zt(de,yt),cellIds:Zt(ue,yt),cell:Zt(ce,vt),invalidCell:Zt(he,vt),values:Zt(be),valueIds:Zt(ge),value:Zt(Ie),invalidValue:Zt(me),transaction:Ct(pe)+Zt(fe)}),createStore:al,addListener:we,callListeners:Ce};return te({[h]:[0,U],[m]:[0,Y],[c]:[1,Z,[It]],[c+f]:[1,ne,[It]],[g]:[1,re,[It]],[I]:[1,oe,[It]],[b]:[2,de,[It,ft]],[f]:[2,ue,[It,ft]],[p]:[3,ce,[It,ft,Qt],e=>Yt(Dt(...e))],InvalidCell:[3,he],[C]:[0,be],[y]:[0,ge],[w]:[1,Ie,[jt],e=>Yt(Ut(e[0]))],InvalidValue:[1,me]},(([e,t,l,s],a)=>{wl["add"+a+"Listener"]=(...a)=>we(a[e],t[a[e+1]?1:0],e>0?D(a,0,e):void 0,l,s)})),X(wl)},nl=({position:e="right",open:l=!1})=>{const s=t.useCreateStore(al),a=oe.indexOf(e);return t.useCreatePersister(s,(e=>{return((e,t,l,s)=>((e,t,l,s,a,n,r=[])=>{let o,i,d,u=0,c=0,h=0,m=0;zt(Qt,r,(()=>0)),zt(Dt,r,(()=>[]));const b=async e=>(2!=u&&(u=1,c++,await g.schedule((async()=>{await e(),u=0}))),g),g={load:async(l,s)=>await b((async()=>{try{e.setContent(await t())}catch{e.setContent([l,s])}})),startAutoLoad:async(l={},a={})=>(g.stopAutoLoad(),await g.load(l,a),m=1,d=s((async(l,s)=>{if(s){const t=s();await b((async()=>e.setTransactionChanges(t)))}else await b((async()=>{try{e.setContent(l?.()??await t())}catch(e){n?.(e)}}))})),g),stopAutoLoad:()=>(m&&(a(d),d=void 0,m=0),g),save:async t=>(1!=u&&(u=2,h++,await g.schedule((async()=>{try{await l(e.getContent,t)}catch(e){n?.(e)}u=0}))),g),startAutoSave:async()=>(await g.stopAutoSave().save(),o=e.addDidFinishTransactionListener(((e,t)=>{const[l,s]=t();le(l)&&le(s)||g.save((()=>[l,s]))})),g),stopAutoSave:()=>(q(o,e.delListener),g),schedule:async(...e)=>(W(Lt(Dt,r),...e),await(async()=>{if(!Lt(Qt,r)){for(Et(Qt,r,1);!R(i=j(Lt(Dt,r)));)try{await i()}catch(e){n?.(e)}Et(Qt,r,0)}})(),g),getStore:()=>e,destroy:()=>g.stopAutoLoad().stopAutoSave(),getStats:()=>({loads:c,saves:h})};return X(g)})(e,(async()=>ae(l.getItem(t))),(async e=>l.setItem(t,se(e()))),(e=>{const s=s=>{s.storageArea===l&&s.key===t&&e((()=>ae(s.newValue)))};return jt.addEventListener(Wt,s),s}),(e=>jt.removeEventListener(Wt,e)),s))(e,ne,sessionStorage,t);var t}),void 0,(async e=>{await e.load(void 0,{position:-1==a?1:a,open:!!l}),await e.startAutoSave()})),E(z,null,E("aside",{id:ne},E(Re,{s:s}),E(pt,{s:s})),E("style",null,Ve))};exports.EditableCellView=et,exports.EditableValueView=tt,exports.RelationshipInHtmlTable=Ze,exports.ResultSortedTableInHtmlTable=_e,exports.ResultTableInHtmlTable=({queryId:e,queries:l,customCells:s,...a})=>E(We,{...a,params:He(De(t.useResultTableCellIds(e,l),s,t.ResultCellView),Be(l,e),t.useResultRowIds(e,l))}),exports.SliceInHtmlTable=Ye,exports.SortedTableInHtmlTable=Ue,exports.SortedTablePaginator=lt,exports.StoreInspector=e=>E(nl,{...e}),exports.TableInHtmlTable=({tableId:e,store:l,editable:s,customCells:a,...n})=>E(We,{...n,params:He(De(t.useTableCellIds(e,l),a,s?et:t.CellView),Pe(l,e),t.useRowIds(e,l))}),exports.ValuesInHtmlTable=Xe;
1
+ "use strict";var e=require("react"),t=require("./ui-react");const s=e=>typeof e,l="",a=s(l),n=s(!0),r=s(0),o=s(s),i="type",d="default",u="Ids",c="Table",h=c+"s",m=c+u,b="Row",g=b+"Count",p=b+u,I="Cell",f=I+u,w="Value",C=w+"s",y=w+u,v="currentTarget",k="value",x=e=>l+e,S=Math.floor,T=isFinite,V=(e,t)=>e instanceof t,R=e=>null==e,q=(e,t,s)=>R(e)?s?.():t(e),N=e=>e==a||e==n,L=e=>s(e)==o,M=e=>Array.isArray(e),{PureComponent:E,Fragment:z,createElement:$,useCallback:O,useLayoutEffect:A,useRef:F,useState:J}=e,P=(e,...t)=>R(e)?{}:e(...t),H=(e,t)=>e.forEach(t),B=(e,t)=>e.map(t),D=e=>e.length,Q=e=>0==D(e),j=(e,t,s)=>e.slice(t,s),W=(e,...t)=>e.push(...t),G=e=>e.shift(),K=Object,U=K.keys,X=K.isFrozen,Y=K.freeze,Z=e=>V(e,K)&&e.constructor==K,_=(e=[])=>K.fromEntries(e),ee=(e,t)=>!R(((e,t)=>q(e,(e=>e[t])))(e,t)),te=(e,t)=>(delete e[t],e),se=(e,t)=>B(K.entries(e),(([e,s])=>t(s,e))),le=e=>Z(e)&&0==(e=>D(U(e)))(e),ae=e=>JSON.stringify(e,((e,t)=>V(t,Map)?K.fromEntries([...t]):t)),ne=JSON.parse,re="tinybaseStoreInspector",oe="TinyBase Store Inspector",ie=["left","top","bottom","right","full"],de="state",ue="sort",ce="open",he="position",me=ce,be="editable",ge=(...e)=>ae(e),pe=(e,t)=>B(e.sort(),t),Ie=(e,s)=>[!!t.useCell(de,e,be,s),O((t=>{s.setCell(de,e,be,(e=>!e)),t.preventDefault()}),[s,e])],fe="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",we='content:url("',Ce=we+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",ye='</svg>")',ve=we+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")",ke=B([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,s,l])=>Ce+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${s}' height='${l}' fill='white'/>`+ye)),xe=Ce+"<path d='M20 20l60 60M20 80l60-60' />"+ye,Se=Ce+`<path d='${fe}' />`+ye,Te=Ce+`<path d='${fe}M20 20l60 60' />`+ye,Ve="*::-webkit-scrollbar",Re=`#${re}{\n all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999;\n ${((e,t="")=>e.join(t))(se({"*":"all:revert","*::before":"all:revert","*::after":"all:revert",[Ve]:"width:0.5rem;height:0.5rem;",[Ve+"-track"]:"background:#111",[Ve+"-thumb"]:"background:#999;border:1px solid #111",[Ve+"-thumb:hover"]:"background:#fff",[Ve+"-corner"]:"background:#111",img:"width:1rem;height:1rem;background:#111;border:0;vertical-align:text-bottom",">img":"padding:0.25rem;bottom:0;right:0;position:fixed;"+ve,..._(B(["bottom:0;left:0","top:0;right:0"],((e,t)=>[`>img[data-position='${t}']`,e]))),main:"display:flex;flex-direction:column;background:#111d;color:#fff;position:fixed;",..._(B(["bottom:0;left:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:30vh","bottom:0;left:0;width:100vw;height:30vh","top:0;right:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:100vh"],((e,t)=>[`main[data-position='${t}']`,e]))),header:"display:flex;padding:0.25rem;background:#000;align-items:center","header>img:nth-of-type(1)":ve,"header>img:nth-of-type(6)":xe,..._(B(ke,((e,t)=>[`header>img[data-id='${t}']`,e]))),"header>span":"flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-left:0.25rem",article:"padding:0.25rem 0.25rem 0.25rem 0.5rem;overflow:auto;flex:1",details:"margin-left:0.75rem;width:fit-content;","details img":"display:none","details[open]>summary img":"display:unset;background:none;margin-left:0.25rem","details[open]>summary img.edit":Se,"details[open]>summary img.done":Te,summary:"margin-left:-0.75rem;line-height:1.25rem;user-select:none;width:fit-content",table:"border-collapse:collapse;table-layout:fixed;margin-bottom:0.5rem","table input":"background:#111;color:unset;padding:0 0.25rem;border:0;font-size:unset;vertical-align:top;margin:0",'table input[type="number"]':"width:4rem","table tbody button":"font-size:0;background:#fff;border-radius:50%;margin:0 0.125rem 0 0;width:0.85rem;color:#111","table button:first-letter":"font-size:0.75rem",thead:"background:#222","th:nth-of-type(1)":"min-width:2rem;","th.sorted":"background:#000","table caption":"text-align:left;white-space:nowrap;line-height:1.25rem",button:"width:1.5rem;border:none;background:none;color:#fff;padding:0","button[disabled]":"color:#777","button.next":"margin-right:0.5rem","th,td":"overflow:hidden;text-overflow:ellipsis;padding:0.25rem 0.5rem;max-width:12rem;white-space:nowrap;border-width:1px 0;border-style:solid;border-color:#777;text-align:left","span.warn":"margin:0.25rem;color:#d81b60"},((e,t)=>e?`& ${t}{${e}}`:"")))}`,qe=({s:e})=>{const s=t.useValue(he,e)??1,l=t.useSetValueCallback(me,(()=>!0),[],e);return t.useValue(me,e)?null:$("img",{onClick:l,title:oe,"data-position":s})},Ne=({uniqueId:e,summary:s,editable:l,handleEditable:a,children:n,s:r})=>{const o=!!t.useCell(de,e,ce,r),i=t.useSetCellCallback(de,e,ce,(e=>e[v].open),[],r);return $("details",{open:o,onToggle:i},$("summary",null,s,a?$("img",{onClick:a,className:l?"done":"edit"}):null),n)},Le=e=>{const t=s(e);return N(t)||t==r&&T(e)?t:void 0},Me=(e,t,s,l,a)=>R(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),Ee=(e,t,s)=>R(s)?e.delValue(t):e.setValue(t,s),ze=(e,t,s,l)=>e==a?t:e==r?s:l,{useCallback:$e,useMemo:Oe,useState:Ae}=e,Fe="editable",Je=(e,s)=>B(t.useTableCellIds(e,s),(t=>e+"."+t)),Pe=(e,t,s)=>{const l=$e(e,t);return s?l:void 0},He=(...e)=>Oe((()=>e),e),Be=(e,t)=>Oe((()=>({store:e,tableId:t})),[e,t]),De=(e,t)=>Oe((()=>({queries:e,queryId:t})),[e,t]),Qe=(e,t=!1,s,l=0,a,n,r,o)=>{const[[i,d,u],c]=Ae([e,t,l]),h=$e((e=>{c(e),o?.(e)}),[o]),m=Pe((e=>h([e,e==i&&!d,u])),[h,i,d,u],s),b=$e((e=>h([i,d,e])),[h,i,d]),g=!0===r?lt:r;return[[i,d,u],m,Oe((()=>!1===r?null:$(g,{offset:u,limit:a,total:n,onChange:b})),[r,g,u,a,n,b])]},je=(e,t,l)=>Oe((()=>{const n=t??e;return _(se(M(n)?_(B(n,(e=>[e,e]))):n,((e,t)=>{return[t,{label:t,component:l,...(n=e,s(n)==a?{label:e}:e)}];var n})))}),[t,l,e]),We=({className:e,headerRow:t,idColumn:s,params:[l,a,n,r,o,i]})=>$("table",{className:e},i?$("caption",null,i):null,!1===t?null:$("thead",null,$("tr",null,!1===s?null:$(Ge,{sort:r??[],label:"Id",onClick:o}),se(l,(({label:e},t)=>$(Ge,{key:t,cellId:t,label:e,sort:r??[],onClick:o}))))),$("tbody",null,B(n,(e=>$("tr",{key:e},!1===s?null:$("th",null,e),se(l,(({component:t,getComponentProps:s},l)=>$("td",{key:l},$(t,{...P(s,e,l),...a,rowId:e,cellId:l}))))))))),Ge=({cellId:e,sort:[t,s],label:a=e??l,onClick:n})=>$("th",{onClick:Pe((()=>n?.(e)),[n,e],n),className:R(s)||t!=e?void 0:`sorted ${s?"de":"a"}scending`},R(s)||t!=e?null:(s?"↓":"↑")+" ",a),Ke=({localRowId:s,params:[l,a,n,r,o,i,d]})=>{const u=t.useRemoteRowId(o,s,i);return $("tr",null,!1===l?null:$(e.Fragment,null,$("th",null,s),$("th",null,u)),se(a,(({component:e,getComponentProps:t},l)=>{const[a,o]=l.split(".",2),i=a===n?s:a===r?u:null;return R(i)?null:$("td",{key:l},$(e,{...P(t,i,o),store:d,tableId:a,rowId:i,cellId:o}))})))},Ue=({thing:e,onThingChange:t,className:s,hasSchema:l})=>{const[o,i]=Ae(),[d,u]=Ae(),[c,h]=Ae(),[m,b]=Ae(),[g,p]=Ae();d!==e&&(i(Le(e)),u(e),h(e+""),b(Number(e)||0),p(!!e));const I=$e(((e,s)=>{s(e),u(e),t(e)}),[t]);return $("div",{className:s},$("button",{className:o,onClick:$e((()=>{if(!l?.()){const e=ze(o,r,n,a),s=ze(e,c,m,g);i(e),u(s),t(s)}}),[l,t,c,m,g,o])},o),ze(o,$("input",{key:o,value:c,onChange:$e((e=>I(e[v][k]+"",h)),[I])}),$("input",{key:o,type:"number",value:m,onChange:$e((e=>I(Number(e[v][k]||0),b)),[I])}),$("input",{key:o,type:"checkbox",checked:g,onChange:$e((e=>I(!!e[v].checked,p)),[I])})))},Xe=({tableId:e,cellId:s,descending:l,offset:a,limit:n,store:r,editable:o,sortOnClick:i,paginator:d=!1,onChange:u,customCells:c,...h})=>{const[m,b,g]=Qe(s,l,i,a,n,t.useRowCount(e,r),d,u);return $(We,{...h,params:He(je(t.useTableCellIds(e,r),c,o?tt:t.CellView),Be(r,e),t.useSortedRowIds(e,...m,n,r),m,b,g)})},Ye=({store:e,editable:s=!1,valueComponent:l=(s?st:t.ValueView),getValueComponentProps:a,className:n,headerRow:r,idColumn:o})=>$("table",{className:n},!1===r?null:$("thead",null,$("tr",null,!1===o?null:$("th",null,"Id"),$("th",null,w))),$("tbody",null,B(t.useValueIds(e),(t=>$("tr",{key:t},!1===o?null:$("th",null,t),$("td",null,$(l,{...P(a,t),valueId:t,store:e}))))))),Ze=({indexId:e,sliceId:s,indexes:l,editable:a,customCells:n,...r})=>{const[o,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(t.useIndexesOrIndexesById(l),e);return $(We,{...r,params:He(je(t.useTableCellIds(d,i),n,a?tt:t.CellView),Be(i,d),t.useSliceRowIds(e,s,o))})},_e=({relationshipId:s,relationships:l,editable:a,customCells:n,className:r,headerRow:o,idColumn:i=!0})=>{const[d,u,c,h]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(t.useRelationshipsOrRelationshipsById(l),s),m=je([...Je(c,u),...Je(h,u)],n,a?tt:t.CellView),b=He(i,m,c,h,s,d,u);return $("table",{className:r},!1===o?null:$("thead",null,$("tr",null,!1===i?null:$(e.Fragment,null,$("th",null,c,".Id"),$("th",null,h,".Id")),se(m,(({label:e},t)=>$("th",{key:t},e))))),$("tbody",null,B(t.useRowIds(c,u),(e=>$(Ke,{key:e,localRowId:e,params:b})))))},et=({queryId:e,cellId:s,descending:l,offset:a,limit:n,queries:r,sortOnClick:o,paginator:i=!1,customCells:d,onChange:u,...c})=>{const[h,m,b]=Qe(s,l,o,a,n,t.useResultRowCount(e,r),i,u);return $(We,{...c,params:He(je(t.useResultTableCellIds(e,r),d,t.ResultCellView),De(r,e),t.useResultSortedRowIds(e,...h,n,r),h,m,b)})},tt=({tableId:e,rowId:s,cellId:l,store:a,className:n})=>$(Ue,{thing:t.useCell(e,s,l,a),onThingChange:t.useSetCellCallback(e,s,l,(e=>e),[],a),className:n??Fe+I,hasSchema:t.useStoreOrStoreById(a)?.hasTablesSchema}),st=({valueId:e,store:s,className:l})=>$(Ue,{thing:t.useValue(e,s),onThingChange:t.useSetValueCallback(e,(e=>e),[],s),className:l??Fe+w,hasSchema:t.useStoreOrStoreById(s)?.hasValuesSchema}),lt=({onChange:t,total:s,offset:l=0,limit:a=s,singular:n="row",plural:r=n+"s"})=>{(l>s||l<0)&&(l=0,t(0));const o=Pe((()=>t(l-a)),[t,l,a],l>0),i=Pe((()=>t(l+a)),[t,l,a],l+a<s);return $(e.Fragment,null,s>a&&$(e.Fragment,null,$("button",{className:"previous",disabled:0==l,onClick:o},"←"),$("button",{className:"next",disabled:l+a>=s,onClick:i},"→"),l+1," to ",Math.min(s,l+a)," of "),s," ",1!=s?r:n)},at=({indexes:e,indexesId:s,indexId:l,s:a})=>$(Ne,{uniqueId:ge("i",s,l),summary:"Index: "+l,s:a},B(t.useSliceIds(l,e),(t=>$(nt,{indexes:e,indexesId:s,indexId:l,sliceId:t,s:a})))),nt=({indexes:e,indexesId:t,indexId:s,sliceId:l,s:a})=>{const n=ge("i",t,s,l),[r,o]=Ie(n,a);return $(Ne,{uniqueId:n,summary:"Slice: "+l,editable:r,handleEditable:o,s:a},$(Ze,{sliceId:l,indexId:s,indexes:e,editable:r}))},rt=({indexesId:e,s:s})=>{const l=t.useIndexes(e),a=t.useIndexIds(l);return R(l)?null:$(Ne,{uniqueId:ge("i",e),summary:"Indexes: "+(e??d),s:s},Q(a)?"No indexes defined":pe(a,(t=>$(at,{indexes:l,indexesId:e,indexId:t,s:s}))))},ot=({metrics:e,metricId:s})=>$("tr",null,$("th",null,s),$("td",null,e?.getTableId(s)),$("td",null,t.useMetric(s,e))),it=({metricsId:e,s:s})=>{const l=t.useMetrics(e),a=t.useMetricIds(l);return R(l)?null:$(Ne,{uniqueId:ge("m",e),summary:"Metrics: "+(e??d),s:s},Q(a)?"No metrics defined":$("table",null,$("thead",null,$("th",null,"Metric Id"),$("th",null,"Table Id"),$("th",null,"Metric")),$("tbody",null,B(a,(e=>$(ot,{metrics:l,metricId:e}))))))},dt=({queries:e,queriesId:s,queryId:l,s:a})=>{const n=ge("q",s,l),[r,o,i]=ne(t.useCell(de,n,ue,a)??"[]"),d=t.useSetCellCallback(de,n,ue,ae,[],a);return $(Ne,{uniqueId:n,summary:"Query: "+l,s:a},$(et,{queryId:l,queries:e,cellId:r,descending:o,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d}))},ut=({queriesId:e,s:s})=>{const l=t.useQueries(e),a=t.useQueryIds(l);return R(l)?null:$(Ne,{uniqueId:ge("q",e),summary:"Queries: "+(e??d),s:s},Q(a)?"No queries defined":pe(a,(t=>$(dt,{queries:l,queriesId:e,queryId:t,s:s}))))},ct=({relationships:e,relationshipsId:t,relationshipId:s,s:l})=>{const a=ge("r",t,s),[n,r]=Ie(a,l);return $(Ne,{uniqueId:a,summary:"Relationship: "+s,editable:n,handleEditable:r,s:l},$(_e,{relationshipId:s,relationships:e,editable:n}))},ht=({relationshipsId:e,s:s})=>{const l=t.useRelationships(e),a=t.useRelationshipIds(l);return R(l)?null:$(Ne,{uniqueId:ge("r",e),summary:"Relationships: "+(e??d),s:s},Q(a)?"No relationships defined":pe(a,(t=>$(ct,{relationships:l,relationshipsId:e,relationshipId:t,s:s}))))},mt=({tableId:e,store:s,storeId:l,s:a})=>{const n=ge("t",l,e),[r,o,i]=ne(t.useCell(de,n,ue,a)??"[]"),d=t.useSetCellCallback(de,n,ue,ae,[],a),[u,h]=Ie(n,a);return $(Ne,{uniqueId:n,summary:c+": "+e,editable:u,handleEditable:h,s:a},$(Xe,{tableId:e,store:s,cellId:r,descending:o,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d,editable:u}))},bt=({store:e,storeId:s,s:l})=>{const a=ge("v",s),[n,r]=Ie(a,l);return Q(t.useValueIds(e))?null:$(Ne,{uniqueId:a,summary:C,editable:n,handleEditable:r,s:l},$(Ye,{store:e,editable:n}))},gt=({storeId:e,s:s})=>{const l=t.useStore(e),a=t.useTableIds(l);return R(l)?null:$(Ne,{uniqueId:ge("s",e),summary:"Store: "+(e??d),s:s},$(bt,{storeId:e,store:l,s:s}),pe(a,(t=>$(mt,{store:l,storeId:e,tableId:t,s:s}))))},pt=({s:e})=>{const s=F(null),l=F(0),[a,n]=J(!1),{scrollLeft:r,scrollTop:o}=t.useValues(e);A((()=>{const e=s.current;if(e&&!a){const t=new MutationObserver((()=>{e.scrollWidth>=S(r)+e.clientWidth&&e.scrollHeight>=S(o)+e.clientHeight&&e.scrollTo(r,o)}));return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}}),[a,r,o]);const i=O((t=>{const{scrollLeft:s,scrollTop:a}=t[v];cancelIdleCallback(l.current),l.current=requestIdleCallback((()=>{n(!0),e.setPartialValues({scrollLeft:s,scrollTop:a})}))}),[e]),d=t.useStore(),u=t.useStoreIds(),c=t.useMetrics(),h=t.useMetricsIds(),m=t.useIndexes(),b=t.useIndexesIds(),g=t.useRelationships(),p=t.useRelationshipsIds(),I=t.useQueries(),f=t.useQueriesIds();return R(d)&&Q(u)&&R(c)&&Q(h)&&R(m)&&Q(b)&&R(g)&&Q(p)&&R(I)&&Q(f)?$("span",{className:"warn"},"There are no Stores or other objects to inspect. Make sure you placed the StoreInspector inside a Provider component."):$("article",{ref:s,onScroll:i},$(gt,{s:e}),B(u,(t=>$(gt,{storeId:t,key:t,s:e}))),$(it,{s:e}),B(h,(t=>$(it,{metricsId:t,key:t,s:e}))),$(rt,{s:e}),B(b,(t=>$(rt,{indexesId:t,key:t,s:e}))),$(ht,{s:e}),B(p,(t=>$(ht,{relationshipsId:t,key:t,s:e}))),$(ut,{s:e}),B(f,(t=>$(ut,{queriesId:t,key:t,s:e}))))};class It extends E{constructor(e){super(e),this.state={e:0}}static getDerivedStateFromError=()=>({e:1});componentDidCatch=(e,t)=>console.error(e,t.componentStack);render(){return this.state.e?$("span",{className:"warn"},"Inspector error: please see console for details."):this.props.children}}const ft=({s:e})=>{const s=t.useValue(he,e)??1,l=t.useSetValueCallback(me,(()=>!1),[],e),a=t.useSetValueCallback(he,(e=>Number(e[v].dataset.id)),[],e);return $("header",null,$("img",{title:oe}),$("span",null,oe),B(ie,((e,t)=>t==s?null:$("img",{onClick:a,"data-id":t,title:"Dock to "+e,key:t}))),$("img",{onClick:l,title:"Close"}))},wt=({s:e})=>{const s=t.useValue(he,e)??1;return t.useValue(me,e)?$("main",{"data-position":s},$(ft,{s:e}),$(It,null,$(pt,{s:e}))):null},Ct=e=>t=>{return s=(t,s)=>t+e(s),Vt(t).reduce(s,0);var s},yt=e=>e?.size??0,vt=Ct(yt),kt=Ct(vt),xt=Ct(kt),St=(e,t)=>e?.has(t)??!1,Tt=e=>R(e)||0==yt(e),Vt=e=>[...e?.values()??[]],Rt=e=>e.clear(),qt=(e,t)=>e?.forEach(t),Nt=(e,t)=>e?.delete(t),Lt=e=>new Map(e),Mt=e=>[...e?.keys()??[]],Et=(e,t)=>e?.get(t),zt=(e,t)=>qt(e,((e,s)=>t(s,e))),$t=(e,t,s)=>R(s)?(Nt(e,t),e):e?.set(t,s),Ot=(e,t,s)=>(St(e,t)||$t(e,t,s()),Et(e,t)),At=(e,t,s,l=$t)=>(se(t,((t,l)=>s(e,l,t))),zt(e,(s=>ee(t,s)?0:l(e,s))),e),Ft=(e,t,s)=>{const l={};return qt(e,((e,a)=>{const n=t?t(e,a):e;!s?.(n,e)&&(l[a]=n)})),l},Jt=(e,t,s)=>Ft(e,(e=>Ft(e,t,s)),le),Pt=(e,t,s)=>Ft(e,(e=>Jt(e,t,s)),le),Ht=(e,t)=>{const s=Lt();return qt(e,((e,l)=>s.set(l,t?.(e)??e))),s},Bt=e=>Ht(e,Ht),Dt=e=>Ht(e,Bt),Qt=(e,t,s,l,a=0)=>q((s?Ot:Et)(e,t[a],a>D(t)-2?s:Lt),(n=>{if(a>D(t)-2)return l?.(n)&&$t(e,t[a]),n;const r=Qt(n,t,s,l,a+1);return Tt(n)&&$t(e,t[a]),r})),jt=Lt(),Wt=Lt(),Gt="storage",Kt=globalThis.window,Ut=e=>new Set(M(e)||R(e)?e:[e]),Xt=(e,t)=>e?.add(t),Yt=/^\d+$/,Zt=()=>{const e=[];let t=0;return[s=>(s?G(e):null)??l+t++,t=>{Yt.test(t)&&D(e)<1e3&&W(e,t)}]},_t=e=>[e,e],es=(e,t=vt)=>t(e[0])+t(e[1]),ts=()=>[Lt(),Lt()],ss=e=>[...e],ls=([e,t])=>e===t,as=(e,t,s)=>R(e)||!Z(e)||le(e)||X(e)?(s?.(),!1):(se(e,((s,l)=>{t(s,l)||te(e,l)})),!le(e)),ns=(e,t,s)=>$t(e,t,Et(e,t)==-s?void 0:s),rs=()=>{let e,t,s=!1,a=!1,n=0;const o=Lt(),u=Lt(),v=Lt(),k=Lt(),S=Lt(),T=Lt(),V=Lt(),M=Lt(),E=Lt(),z=Lt(),$=Lt(),O=Lt(),A=Lt(),F=Lt(),J=Ut(),P=Lt(),Q=Lt(),G=Lt(),K=Lt(),U=ts(),X=ts(),Z=ts(),_=ts(),re=ts(),oe=ts(),ie=ts(),de=ts(),ue=ts(),ce=ts(),he=ts(),me=ts(),be=ts(),ge=ts(),pe=ts(),Ie=Lt(),fe=ts(),[we,Ce,ye,ve]=(e=>{let t;const[s,a]=Zt(),n=Lt();return[(e,a,r,o=[],i=(()=>[]))=>{t??=ws;const d=s(1);return $t(n,d,[e,a,r,o,i]),Xt(Qt(a,r??[l],Ut),d),d},(e,s,...a)=>H(((e,t=[l])=>{const s=[],a=(e,l)=>l==D(t)?W(s,e):null===t[l]?qt(e,(e=>a(e,l+1))):H([t[l],null],(t=>a(Et(e,t),l+1)));return a(e,0),s})(e,s),(e=>qt(e,(e=>Et(n,e)[0](t,...s??[],...a))))),e=>q(Et(n,e),(([,t,s])=>(Qt(t,s??[l],void 0,(t=>(Nt(t,e),Tt(t)?1:0))),$t(n,e),a(e),s))),e=>q(Et(n,e),(([e,,s=[],l,a])=>{const n=(...r)=>{const o=D(r);o==D(s)?e(t,...r,...a(r)):R(s[o])?H(l[o]?.(...r)??[],(e=>n(...r,e))):n(...r,s[o])};n()}))]})(),ke=e=>{if(!as(e,((e,t)=>[i,d].includes(t))))return!1;const t=e[i];return!(!N(t)&&t!=r||(Le(e[d])!=t&&te(e,d),0))},xe=(t,s)=>(!e||St($,s)||lt(s))&&as(t,((e,t)=>Se(s,t,e)),(()=>lt(s))),Se=(e,t,s,l)=>as(l?s:qe(s,e,t),((l,a)=>q(Te(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>lt(e,t))),Te=(t,s,l,a)=>e?q(Et(Et($,t),l),(e=>Le(a)!=e[i]?lt(t,s,l,a,e[d]):a),(()=>lt(t,s,l,a))):R(Le(a))?lt(t,s,l,a):a,Ve=(e,t)=>as(t?e:Ne(e),((t,s)=>q(Re(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>at())),Re=(e,s)=>t?q(Et(A,e),(t=>Le(s)!=t[i]?at(e,s,t[d]):s),(()=>at(e,s))):R(Le(s))?at(e,s):s,qe=(e,t,s)=>(q(Et(O,t),(([l,a])=>{qt(l,((t,s)=>{ee(e,s)||(e[s]=t)})),qt(a,(l=>{ee(e,l)||lt(t,s,l)}))})),e),Ne=e=>(t&&(qt(F,((t,s)=>{ee(e,s)||(e[s]=t)})),qt(J,(t=>{ee(e,t)||at(t)}))),e),ze=e=>At($,e,((e,t,s)=>{const l=Lt(),a=Ut();At(Ot($,t,Lt),s,((e,t,s)=>{$t(e,t,s),q(s[d],(e=>$t(l,t,e)),(()=>Xt(a,t)))})),$t(O,t,[l,a])}),((e,t)=>{$t($,t),$t(O,t)})),$e=e=>At(A,e,((e,t,s)=>{$t(A,t,s),q(s[d],(e=>$t(F,t,e)),(()=>Xt(J,t)))}),((e,t)=>{$t(A,t),$t(F,t),Nt(J,t)})),Oe=e=>le(e)?us():Kt(e),Ae=e=>At(G,e,((e,t,s)=>Fe(t,s)),((e,t)=>Ge(t))),Fe=(e,t)=>At(Ot(G,e,(()=>(Ye(e,1),$t(P,e,Zt()),$t(Q,e,Lt()),Lt()))),t,((t,s,l)=>Je(e,t,s,l)),((t,s)=>Ke(e,t,s))),Je=(e,t,s,l,a)=>At(Ot(t,s,(()=>(Ze(e,s,1),Lt()))),l,((t,l,a)=>Pe(e,s,t,l,a)),((l,n)=>Ue(e,t,s,l,n,a))),Pe=(e,t,s,l,a)=>{St(s,l)||_e(e,t,l,1);const n=Et(s,l);a!==n&&(et(e,t,l,n,a),$t(s,l,a))},He=(e,t,s,l,a)=>q(Et(t,s),(t=>Pe(e,s,t,l,a)),(()=>Je(e,t,s,qe({[l]:a},e,s)))),Be=e=>le(e)?ms():Yt(e),De=e=>At(K,e,((e,t,s)=>Qe(t,s)),((e,t)=>Xe(t))),Qe=(e,t)=>{St(K,e)||tt(e,1);const s=Et(K,e);t!==s&&(st(e,s,t),$t(K,e,t))},je=(e,t)=>{const[s]=Et(P,e),l=s(t);return St(Et(G,e),l)?je(e,t):l},We=e=>Et(G,e)??Fe(e,{}),Ge=e=>Fe(e,{}),Ke=(e,t,s)=>{const[,l]=Et(P,e);l(s),Je(e,t,s,{},!0)},Ue=(e,t,s,l,a,n)=>{const r=Et(Et(O,e)?.[0],a);if(!R(r)&&!n)return Pe(e,s,l,a,r);const o=t=>{et(e,s,t,Et(l,t)),_e(e,s,t,-1),$t(l,t)};R(r)?o(a):zt(l,o),Tt(l)&&(Ze(e,s,-1),Tt($t(t,s))&&(Ye(e,-1),$t(G,e),$t(P,e),$t(Q,e)))},Xe=e=>{const t=Et(F,e);if(!R(t))return Qe(e,t);st(e,Et(K,e)),tt(e,-1),$t(K,e)},Ye=(e,t)=>ns(o,e,t),Ze=(e,t,s)=>ns(Ot(k,e,Lt),t,s)&&$t(v,e,Ot(v,e,(()=>0))+s),_e=(e,t,s,l)=>{const a=Et(Q,e),n=Et(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&ns(Ot(u,e,Lt),s,l),$t(a,s,n!=-l?n+l:null),ns(Ot(Ot(S,e,Lt),t,Lt),s,l)},et=(e,t,s,l,a)=>Ot(Ot(Ot(T,e,Lt),t,Lt),s,(()=>[l,0]))[1]=a,tt=(e,t)=>ns(V,e,t),st=(e,t,s)=>Ot(M,e,(()=>[t,0]))[1]=s,lt=(e,t,s,l,a)=>(W(Ot(Ot(Ot(E,e,Lt),t,Lt),s,(()=>[])),l),a),at=(e,t,s)=>(W(Ot(z,e,(()=>[])),t),s),nt=(e,t,s)=>q(Et(Et(Et(T,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,..._t(Vt(e,t,s))])),rt=e=>q(Et(M,e),(([e,t])=>[!0,e,t]),(()=>[!1,..._t(Gt(e))])),ot=e=>Tt(E)||Tt(he[e])?0:qt(e?Dt(E):E,((t,s)=>qt(t,((t,l)=>qt(t,((t,a)=>Ce(he[e],[s,l,a],t))))))),it=e=>Tt(z)||Tt(me[e])?0:qt(e?Ht(z):z,((t,s)=>Ce(me[e],[s],t))),dt=(e,t,s)=>{if(!Tt(t))return Ce(e,s,(()=>Ft(t))),1},ut=e=>{const t=Tt(ie[e]),s=Tt(ue[e])&&Tt(_[e])&&Tt(re[e])&&Tt(oe[e])&&t&&Tt(X[e]),l=Tt(ce[e])&&Tt(de[e])&&Tt(Z[e])&&Tt(U[e]);if(!s||!l){const a=e?[Ht(o),Bt(u),Ht(v),Bt(k),Dt(S),Dt(T)]:[o,u,v,k,S,T];if(!s){dt(X[e],a[0]),qt(a[1],((t,s)=>dt(_[e],t,[s]))),qt(a[2],((t,s)=>{0!=t&&Ce(re[e],[s],It(s))}));const s=Ut();qt(a[3],((l,a)=>{dt(oe[e],l,[a])&&!t&&(Ce(ie[e],[a,null]),Xt(s,a))})),t||qt(a[5],((t,l)=>{if(!St(s,l)){const s=Ut();qt(t,(e=>qt(e,(([t,l],a)=>l!==t?Xt(s,a):Nt(e,a))))),qt(s,(t=>Ce(ie[e],[l,t])))}})),qt(a[4],((t,s)=>qt(t,((t,l)=>dt(ue[e],t,[s,l])))))}if(!l){let t;qt(a[5],((s,l)=>{let a;qt(s,((s,n)=>{let r;qt(s,(([s,o],i)=>{o!==s&&(Ce(ce[e],[l,n,i],o,s,nt),t=a=r=1)})),r&&Ce(de[e],[l,n],nt)})),a&&Ce(Z[e],[l],nt)})),t&&Ce(U[e],void 0,nt)}}},ct=e=>{const t=Tt(ge[e]),s=Tt(pe[e])&&Tt(be[e]);if(!t||!s){const l=e?[Ht(V),Ht(M)]:[V,M];if(t||dt(ge[e],l[0]),!s){let t;qt(l[1],(([s,l],a)=>{l!==s&&(Ce(pe[e],[a],l,s,rt),t=1)})),t&&Ce(be[e],void 0,rt)}}},ht=(e,...t)=>(ps((()=>e(...B(t,x)))),ws),mt=()=>[Ft(T,((e,t)=>-1===Et(o,t)?null:Ft(e,((e,s)=>-1===Et(Et(k,t),s)?null:Ft(e,(([,e])=>e??null),((e,t)=>ls(t)))),le)),le),Ft(M,(([,e])=>e??null),((e,t)=>ls(t)))],bt=()=>({cellsTouched:s,valuesTouched:a,changedCells:Pt(T,ss,ls),invalidCells:Pt(E),changedValues:Ft(M,ss,ls),invalidValues:Ft(z),changedTableIds:Ft(o),changedRowIds:Jt(k),changedCellIds:Pt(S),changedValueIds:Ft(V)}),gt=()=>Pt(G),pt=()=>Mt(G),It=e=>yt(Et(G,x(e))),ft=e=>Mt(Et(G,x(e))),wt=(e,t,s,l=0,a)=>{return B(j((r=Et(G,x(e)),o=(e,s)=>[R(t)?s:Et(e,x(t)),s],n=([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1),B([...r?.entries()??[]],(([e,t])=>o(t,e))).sort(n)),l,R(a)?a:l+a),(([,e])=>e));var n,r,o},Ct=(e,t)=>Mt(Et(Et(G,x(e)),x(t))),Vt=(e,t,s)=>Et(Et(Et(G,x(e)),x(t)),x(s)),jt=()=>Ft(K),Wt=()=>Mt(K),Gt=e=>Et(K,x(e)),Kt=e=>ht((()=>(e=>as(e,xe,lt))(e)?Ae(e):0)),Yt=e=>ht((()=>Ve(e)?De(e):0)),os=e=>{try{Oe(ne(e))}catch{}return ws},is=t=>ht((()=>{if((e=as(t,(e=>as(e,ke))))&&(ze(t),!Tt(G))){const e=gt();us(),Kt(e)}})),ds=e=>ht((()=>{if(t=(e=>as(e,ke))(e)){const s=jt();gs(),ms(),t=!0,$e(e),Yt(s)}})),us=()=>ht((()=>Ae({}))),cs=e=>ht((e=>St(G,e)?Ge(e):0),e),hs=(e,t)=>ht(((e,t)=>q(Et(G,e),(s=>St(s,t)?Ke(e,s,t):0))),e,t),ms=()=>ht((()=>De({}))),bs=()=>ht((()=>{ze({}),e=!1})),gs=()=>ht((()=>{$e({}),t=!1})),ps=(e,t)=>{if(-1!=n){Is();const s=e();return fs(t),s}},Is=()=>(-1!=n&&n++,1==n&&Ce(Ie,void 0,mt,bt),ws),fs=e=>(n>0&&(n--,0==n&&(s=!Tt(T),a=!Tt(M),n=1,ot(1),s&&ut(1),it(1),a&&ct(1),e?.(mt,bt)&&(qt(T,((e,t)=>qt(e,((e,s)=>qt(e,(([e],l)=>Me(ws,t,s,l,e))))))),qt(M,(([e],t)=>Ee(ws,t,e))),s=a=!1),Ce(fe[0],void 0,mt,bt),n=-1,ot(0),s&&ut(0),it(0),a&&ct(0),Ce(fe[1],void 0,mt,bt),n=0,s=a=!1,H([o,u,v,k,S,T,E,V,M,z],Rt))),ws),ws={getContent:()=>[gt(),jt()],getTables:gt,getTableIds:pt,getTable:e=>Jt(Et(G,x(e))),getTableCellIds:e=>Mt(Et(Q,x(e))),getRowCount:It,getRowIds:ft,getSortedRowIds:wt,getRow:(e,t)=>Ft(Et(Et(G,x(e)),x(t))),getCellIds:Ct,getCell:Vt,getValues:jt,getValueIds:Wt,getValue:Gt,hasTables:()=>!Tt(G),hasTable:e=>St(G,x(e)),hasTableCell:(e,t)=>St(Et(Q,x(e)),x(t)),hasRow:(e,t)=>St(Et(G,x(e)),x(t)),hasCell:(e,t,s)=>St(Et(Et(G,x(e)),x(t)),x(s)),hasValues:()=>!Tt(K),hasValue:e=>St(K,x(e)),getTablesJson:()=>ae(G),getValuesJson:()=>ae(K),getJson:()=>ae([G,K]),getTablesSchemaJson:()=>ae($),getValuesSchemaJson:()=>ae(A),getSchemaJson:()=>ae([$,A]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>ht((()=>{(le(e)?us:Kt)(e),(le(t)?ms:Yt)(t)})),setTables:Kt,setTable:(e,t)=>ht((e=>xe(t,e)?Fe(e,t):0),e),setRow:(e,t,s)=>ht(((e,t)=>Se(e,t,s)?Je(e,We(e),t,s):0),e,t),addRow:(e,t,s=!0)=>ps((()=>{let l;return Se(e,l,t)&&(e=x(e),Je(e,We(e),l=je(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>ht(((e,t)=>{if(Se(e,t,s,1)){const l=We(e);se(s,((s,a)=>He(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>ht(((e,t,s)=>q(Te(e,t,s,L(l)?l(Vt(e,t,s)):l),(l=>He(e,We(e),t,s,l)))),e,t,s),setValues:Yt,setPartialValues:e=>ht((()=>Ve(e,1)?se(e,((e,t)=>Qe(t,e))):0)),setValue:(e,t)=>ht((e=>q(Re(e,L(t)?t(Gt(e)):t),(t=>Qe(e,t)))),e),setTransactionChanges:e=>ht((()=>{se(e[0],((e,t)=>R(e)?cs(t):se(e,((e,s)=>R(e)?hs(t,s):se(e,((e,l)=>Me(ws,t,s,l,e))))))),se(e[1],((e,t)=>Ee(ws,t,e)))})),setTablesJson:os,setValuesJson:e=>{try{Be(ne(e))}catch{}return ws},setJson:e=>{try{const[t,s]=ne(e);Oe(t),Be(s)}catch{os(e)}return ws},setTablesSchema:is,setValuesSchema:ds,setSchema:(e,t)=>ht((()=>{is(e),ds(t)})),delTables:us,delTable:cs,delRow:hs,delCell:(e,t,s,l)=>ht(((e,t,s)=>q(Et(G,e),(a=>q(Et(a,t),(n=>St(n,s)?Ue(e,a,t,n,s,l):0))))),e,t,s),delValues:ms,delValue:e=>ht((e=>St(K,e)?Xe(e):0),e),delTablesSchema:bs,delValuesSchema:gs,delSchema:()=>ht((()=>{bs(),gs()})),transaction:ps,startTransaction:Is,finishTransaction:fs,forEachTable:e=>qt(G,((t,s)=>e(s,(e=>qt(t,((t,s)=>e(s,(e=>zt(t,e))))))))),forEachTableCell:(e,t)=>zt(Et(Q,x(e)),t),forEachRow:(e,t)=>qt(Et(G,x(e)),((e,s)=>t(s,(t=>zt(e,t))))),forEachCell:(e,t,s)=>zt(Et(Et(G,x(e)),x(t)),s),forEachValue:e=>zt(K,e),addSortedRowIdsListener:(e,t,s,l,a,n,r)=>{let o=wt(e,t,s,l,a);return we((()=>{const r=wt(e,t,s,l,a);var i,d,u;d=o,D(i=r)===D(d)&&(u=(e,t)=>d[t]===e,i.every(u))||(o=r,n(ws,e,t,s,l,a,o))}),ie[r?1:0],[e,t],[pt])},addStartTransactionListener:e=>we(e,Ie),addWillFinishTransactionListener:e=>we(e,fe[0]),addDidFinishTransactionListener:e=>we(e,fe[1]),callListener:e=>(ve(e),ws),delListener:e=>(ye(e),ws),getListenerStats:()=>({tables:es(U),tableIds:es(X),tableCellIds:es(_),table:es(Z),rowCount:es(re),rowIds:es(oe),sortedRowIds:es(ie),row:es(de,kt),cellIds:es(ue,kt),cell:es(ce,xt),invalidCell:es(he,xt),values:es(be),valueIds:es(ge),value:es(pe),invalidValue:es(me),transaction:vt(Ie)+es(fe)}),createStore:rs,addListener:we,callListeners:Ce};return se({[h]:[0,U],[m]:[0,X],[c]:[1,Z,[pt]],[c+f]:[1,_,[pt]],[g]:[1,re,[pt]],[p]:[1,oe,[pt]],[b]:[2,de,[pt,ft]],[f]:[2,ue,[pt,ft]],[I]:[3,ce,[pt,ft,Ct],e=>_t(Vt(...e))],InvalidCell:[3,he],[C]:[0,be],[y]:[0,ge],[w]:[1,pe,[Wt],e=>_t(Gt(e[0]))],InvalidValue:[1,me]},(([e,t,s,l],a)=>{ws["add"+a+"Listener"]=(...a)=>we(a[e],t[a[e+1]?1:0],e>0?j(a,0,e):void 0,s,l)})),Y(ws)},os=({position:e="right",open:s=!1})=>{const l=t.useCreateStore(rs),a=ie.indexOf(e);return t.useCreatePersister(l,(e=>{return((e,t,s,l)=>((e,t,s,l,a,n,r=[])=>{let o,i,d,u=0,c=0,h=0,m=0;Ot(jt,r,(()=>0)),Ot(Wt,r,(()=>[]));const b=async e=>(2!=u&&(u=1,c++,await g.schedule((async()=>{await e(),u=0}))),g),g={load:async(s,l)=>await b((async()=>{try{e.setContent(await t())}catch{e.setContent([s,l])}})),startAutoLoad:async(s={},a={})=>(g.stopAutoLoad(),await g.load(s,a),m=1,d=l((async(s,l)=>{if(l){const t=l();await b((async()=>e.setTransactionChanges(t)))}else await b((async()=>{try{e.setContent(s?.()??await t())}catch(e){n?.(e)}}))})),g),stopAutoLoad:()=>(m&&(a(d),d=void 0,m=0),g),save:async t=>(1!=u&&(u=2,h++,await g.schedule((async()=>{try{await s(e.getContent,t)}catch(e){n?.(e)}u=0}))),g),startAutoSave:async()=>(await g.stopAutoSave().save(),o=e.addDidFinishTransactionListener(((e,t)=>{const[s,l]=t();le(s)&&le(l)||g.save((()=>[s,l]))})),g),stopAutoSave:()=>(q(o,e.delListener),g),schedule:async(...e)=>(W(Et(Wt,r),...e),await(async()=>{if(!Et(jt,r)){for($t(jt,r,1);!R(i=G(Et(Wt,r)));)try{await i()}catch(e){n?.(e)}$t(jt,r,0)}})(),g),getStore:()=>e,destroy:()=>g.stopAutoLoad().stopAutoSave(),getStats:()=>({loads:c,saves:h})};return Y(g)})(e,(async()=>ne(s.getItem(t))),(async e=>s.setItem(t,ae(e()))),(e=>{const l=l=>{l.storageArea===s&&l.key===t&&e((()=>ne(l.newValue)))};return Kt.addEventListener(Gt,l),l}),(e=>Kt.removeEventListener(Gt,e)),l))(e,re,sessionStorage,t);var t}),void 0,(async e=>{await e.load(void 0,{position:-1==a?1:a,open:!!s}),await e.startAutoSave()})),$(z,null,$("aside",{id:re},$(qe,{s:l}),$(wt,{s:l})),$("style",null,Re))};exports.EditableCellView=tt,exports.EditableValueView=st,exports.RelationshipInHtmlTable=_e,exports.ResultSortedTableInHtmlTable=et,exports.ResultTableInHtmlTable=({queryId:e,queries:s,customCells:l,...a})=>$(We,{...a,params:He(je(t.useResultTableCellIds(e,s),l,t.ResultCellView),De(s,e),t.useResultRowIds(e,s))}),exports.SliceInHtmlTable=Ze,exports.SortedTableInHtmlTable=Xe,exports.SortedTablePaginator=lt,exports.StoreInspector=e=>$(os,{...e}),exports.TableInHtmlTable=({tableId:e,store:s,editable:l,customCells:a,...n})=>$(We,{...n,params:He(je(t.useTableCellIds(e,s),a,l?tt:t.CellView),Be(s,e),t.useRowIds(e,s))}),exports.ValuesInHtmlTable=Ye;
Binary file
@@ -1 +1 @@
1
- "use strict";var e=require("react"),t=require("./ui-react");const l=e=>typeof e,a=l(""),o=l(!0),n=l(0),r="Value",s="currentTarget",i="value",d=isFinite,u=e=>null==e,{createElement:m,Fragment:h,useCallback:c,useLayoutEffect:b,useRef:g,useState:p}=e,w=(e,...t)=>u(e)?{}:e(...t),f=(e,t)=>e.map(t),I=Object,C=(e=[])=>I.fromEntries(e),y=(e,t)=>f(I.entries(e),(([e,l])=>t(l,e))),x="tinybaseStoreInspector",k="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",v='content:url("',R=v+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",T='</svg>")',S=v+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")",N=f([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,l,a])=>R+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${l}' height='${a}' fill='white'/>`+T)),V=R+"<path d='M20 20l60 60M20 80l60-60' />"+T,z=R+`<path d='${k}' />`+T,$=R+`<path d='${k}M20 20l60 60' />`+T,M="*::-webkit-scrollbar";((e,t="")=>{e.join(t)})(y({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[M]:"width:0.5rem;height:0.5rem;",[M+"-track"]:"background:#111",[M+"-thumb"]:"background:#999;border:1px solid #111",[M+"-thumb:hover"]:"background:#fff",[M+"-corner"]:"background:#111",img:"width:1rem;height:1rem;background:#111;border:0;vertical-align:text-bottom",">img":"padding:0.25rem;bottom:0;right:0;position:fixed;"+S,...C(f(["bottom:0;left:0","top:0;right:0"],((e,t)=>[`>img[data-position='${t}']`,e]))),main:"display:flex;flex-direction:column;background:#111d;color:#fff;position:fixed;",...C(f(["bottom:0;left:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:30vh","bottom:0;left:0;width:100vw;height:30vh","top:0;right:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:100vh"],((e,t)=>[`main[data-position='${t}']`,e]))),header:"display:flex;padding:0.25rem;background:#000;align-items:center","header>img:nth-of-type(1)":S,"header>img:nth-of-type(6)":V,...C(f(N,((e,t)=>[`header>img[data-id='${t}']`,e]))),"header>span":"flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-left:0.25rem",article:"padding:0.25rem 0.25rem 0.25rem 0.5rem;overflow:auto;flex:1",details:"margin-left:0.75rem;width:fit-content;","details img":"display:none","details[open]>summary img":"display:unset;background:none;margin-left:0.25rem","details[open]>summary img.edit":z,"details[open]>summary img.done":$,summary:"margin-left:-0.75rem;line-height:1.25rem;user-select:none;width:fit-content",table:"border-collapse:collapse;table-layout:fixed;margin-bottom:0.5rem","table input":"background:#111;color:unset;padding:0 0.25rem;border:0;font-size:unset;vertical-align:top;margin:0",'table input[type="number"]':"width:4rem","table tbody button":"font-size:0;background:#fff;border-radius:50%;margin:0 0.125rem 0 0;width:0.85rem;color:#111","table button:first-letter":"font-size:0.75rem",thead:"background:#222","th:nth-of-type(1)":"min-width:2rem;","th.sorted":"background:#000","table caption":"text-align:left;white-space:nowrap;line-height:1.25rem",button:"width:1.5rem;border:none;background:none;color:#fff;padding:0","button[disabled]":"color:#777","button.next":"margin-right:0.5rem",[`th,#${x} td`]:"overflow:hidden;text-overflow:ellipsis;padding:0.25rem 0.5rem;max-width:12rem;white-space:nowrap;border-width:1px 0;border-style:solid;border-color:#777;text-align:left"},((e,t)=>e?`#${x} ${t}{${e}}`:"")));const q=(e,t,l,o)=>e==a?t:e==n?l:o,{useCallback:H,useMemo:O,useState:B}=e,F="editable",E=(e,l)=>f(t.useTableCellIds(e,l),(t=>e+"."+t)),P=(e,t,l)=>{const a=H(e,t);return l?a:void 0},j=(...e)=>O((()=>e),e),A=(e,t)=>O((()=>({store:e,tableId:t})),[e,t]),L=(e,t)=>O((()=>({queries:e,queryId:t})),[e,t]),D=(e,t=!1,l,a=0,o,n,r,s)=>{const[[i,d,u],h]=B([e,t,a]),c=H((e=>{h(e),s?.(e)}),[s]),b=P((e=>c([e,e==i&&!d,u])),[c,i,d,u],l),g=H((e=>c([i,d,e])),[c,i,d]),p=!0===r?Y:r;return[[i,d,u],b,O((()=>!1===r?null:m(p,{offset:u,limit:o,total:n,onChange:g})),[r,p,u,o,n,g])]},G=(e,t,o)=>O((()=>{const n=t??e;return C(y(Array.isArray(n)?C(f(n,(e=>[e,e]))):n,((e,t)=>{return[t,{label:t,component:o,...(n=e,l(n)==a?{label:e}:e)}];var n})))}),[t,o,e]),J=({className:e,headerRow:t,idColumn:l,params:[a,o,n,r,s,i]})=>m("table",{className:e},i?m("caption",null,i):null,!1===t?null:m("thead",null,m("tr",null,!1===l?null:m(K,{sort:r??[],label:"Id",onClick:s}),y(a,(({label:e},t)=>m(K,{key:t,cellId:t,label:e,sort:r??[],onClick:s}))))),m("tbody",null,f(n,(e=>m("tr",{key:e},!1===l?null:m("th",null,e),y(a,(({component:t,getComponentProps:l},a)=>m("td",{key:a},m(t,{...w(l,e,a),...o,rowId:e,cellId:a}))))))))),K=({cellId:e,sort:[t,l],label:a=e??"",onClick:o})=>m("th",{onClick:P((()=>o?.(e)),[o,e],o),className:u(l)||t!=e?void 0:`sorted ${l?"de":"a"}scending`},u(l)||t!=e?null:(l?"↓":"↑")+" ",a),Q=({localRowId:l,params:[a,o,n,r,s,i,d]})=>{const h=t.useRemoteRowId(s,l,i);return m("tr",null,!1===a?null:m(e.Fragment,null,m("th",null,l),m("th",null,h)),y(o,(({component:e,getComponentProps:t},a)=>{const[o,s]=a.split(".",2),i=o===n?l:o===r?h:null;return u(i)?null:m("td",{key:a},m(e,{...w(t,i,s),store:d,tableId:o,rowId:i,cellId:s}))})))},U=({thing:e,onThingChange:t,className:r,hasSchema:u})=>{const[h,c]=B(),[b,g]=B(),[p,w]=B(),[f,I]=B(),[C,y]=B();b!==e&&(c((e=>{const t=l(e);return(e=>e==a||e==o)(t)||t==n&&d(e)?t:void 0})(e)),g(e),w(e+""),I(Number(e)||0),y(!!e));const x=H(((e,l)=>{l(e),g(e),t(e)}),[t]);return m("div",{className:r},m("button",{className:h,onClick:H((()=>{if(!u?.()){const e=q(h,n,o,a),l=q(e,p,f,C);c(e),g(l),t(l)}}),[u,t,p,f,C,h])},h),q(h,m("input",{key:h,value:p,onChange:H((e=>x(e[s][i]+"",w)),[x])}),m("input",{key:h,type:"number",value:f,onChange:H((e=>x(Number(e[s][i]||0),I)),[x])}),m("input",{key:h,type:"checkbox",checked:C,onChange:H((e=>x(!!e[s].checked,y)),[x])})))},W=({tableId:e,rowId:l,cellId:a,store:o,className:n})=>m(U,{thing:t.useCell(e,l,a,o),onThingChange:t.useSetCellCallback(e,l,a,(e=>e),[],o),className:n??F+"Cell",hasSchema:t.useStoreOrStoreById(o)?.hasTablesSchema}),X=({valueId:e,store:l,className:a})=>m(U,{thing:t.useValue(e,l),onThingChange:t.useSetValueCallback(e,(e=>e),[],l),className:a??F+r,hasSchema:t.useStoreOrStoreById(l)?.hasValuesSchema}),Y=({onChange:t,total:l,offset:a=0,limit:o=l,singular:n="row",plural:r=n+"s"})=>{(a>l||a<0)&&(a=0,t(0));const s=P((()=>t(a-o)),[t,a,o],a>0),i=P((()=>t(a+o)),[t,a,o],a+o<l);return m(e.Fragment,null,l>o&&m(e.Fragment,null,m("button",{className:"previous",disabled:0==a,onClick:s},"←"),m("button",{className:"next",disabled:a+o>=l,onClick:i},"→"),a+1," to ",Math.min(l,a+o)," of "),l," ",1!=l?r:n)},Z=e=>new Map(e);Z(),Z(),exports.EditableCellView=W,exports.EditableValueView=X,exports.RelationshipInHtmlTable=({relationshipId:l,relationships:a,editable:o,customCells:n,className:r,headerRow:s,idColumn:i=!0})=>{const[d,u,h,c]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(t.useRelationshipsOrRelationshipsById(a),l),b=G([...E(h,u),...E(c,u)],n,o?W:t.CellView),g=j(i,b,h,c,l,d,u);return m("table",{className:r},!1===s?null:m("thead",null,m("tr",null,!1===i?null:m(e.Fragment,null,m("th",null,h,".Id"),m("th",null,c,".Id")),y(b,(({label:e},t)=>m("th",{key:t},e))))),m("tbody",null,f(t.useRowIds(h,u),(e=>m(Q,{key:e,localRowId:e,params:g})))))},exports.ResultSortedTableInHtmlTable=({queryId:e,cellId:l,descending:a,offset:o,limit:n,queries:r,sortOnClick:s,paginator:i=!1,customCells:d,onChange:u,...h})=>{const[c,b,g]=D(l,a,s,o,n,t.useResultRowCount(e,r),i,u);return m(J,{...h,params:j(G(t.useResultTableCellIds(e,r),d,t.ResultCellView),L(r,e),t.useResultSortedRowIds(e,...c,n,r),c,b,g)})},exports.ResultTableInHtmlTable=({queryId:e,queries:l,customCells:a,...o})=>m(J,{...o,params:j(G(t.useResultTableCellIds(e,l),a,t.ResultCellView),L(l,e),t.useResultRowIds(e,l))}),exports.SliceInHtmlTable=({indexId:e,sliceId:l,indexes:a,editable:o,customCells:n,...r})=>{const[s,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(t.useIndexesOrIndexesById(a),e);return m(J,{...r,params:j(G(t.useTableCellIds(d,i),n,o?W:t.CellView),A(i,d),t.useSliceRowIds(e,l,s))})},exports.SortedTableInHtmlTable=({tableId:e,cellId:l,descending:a,offset:o,limit:n,store:r,editable:s,sortOnClick:i,paginator:d=!1,onChange:u,customCells:h,...c})=>{const[b,g,p]=D(l,a,i,o,n,t.useRowCount(e,r),d,u);return m(J,{...c,params:j(G(t.useTableCellIds(e,r),h,s?W:t.CellView),A(r,e),t.useSortedRowIds(e,...b,n,r),b,g,p)})},exports.SortedTablePaginator=Y,exports.StoreInspector=e=>null,exports.TableInHtmlTable=({tableId:e,store:l,editable:a,customCells:o,...n})=>m(J,{...n,params:j(G(t.useTableCellIds(e,l),o,a?W:t.CellView),A(l,e),t.useRowIds(e,l))}),exports.ValuesInHtmlTable=({store:e,editable:l=!1,valueComponent:a=(l?X:t.ValueView),getValueComponentProps:o,className:n,headerRow:s,idColumn:i})=>m("table",{className:n},!1===s?null:m("thead",null,m("tr",null,!1===i?null:m("th",null,"Id"),m("th",null,r))),m("tbody",null,f(t.useValueIds(e),(t=>m("tr",{key:t},!1===i?null:m("th",null,t),m("td",null,m(a,{...w(o,t),valueId:t,store:e})))))));
1
+ "use strict";var e=require("react"),t=require("./ui-react");const l=e=>typeof e,a=l(""),o=l(!0),n=l(0),r="Value",s="currentTarget",i="value",d=isFinite,u=e=>null==e,{PureComponent:m,Fragment:h,createElement:c,useCallback:b,useLayoutEffect:g,useRef:p,useState:w}=e,f=(e,...t)=>u(e)?{}:e(...t),I=(e,t)=>e.map(t),C=Object,k=(e=[])=>C.fromEntries(e),y=(e,t)=>I(C.entries(e),(([e,l])=>t(l,e))),v="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",x='content:url("',R=x+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",T='</svg>")',S=x+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")",N=I([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,l,a])=>R+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${l}' height='${a}' fill='white'/>`+T)),V=R+"<path d='M20 20l60 60M20 80l60-60' />"+T,z=R+`<path d='${v}' />`+T,M=R+`<path d='${v}M20 20l60 60' />`+T,$="*::-webkit-scrollbar";((e,t="")=>{e.join(t)})(y({"*":"all:revert","*::before":"all:revert","*::after":"all:revert",[$]:"width:0.5rem;height:0.5rem;",[$+"-track"]:"background:#111",[$+"-thumb"]:"background:#999;border:1px solid #111",[$+"-thumb:hover"]:"background:#fff",[$+"-corner"]:"background:#111",img:"width:1rem;height:1rem;background:#111;border:0;vertical-align:text-bottom",">img":"padding:0.25rem;bottom:0;right:0;position:fixed;"+S,...k(I(["bottom:0;left:0","top:0;right:0"],((e,t)=>[`>img[data-position='${t}']`,e]))),main:"display:flex;flex-direction:column;background:#111d;color:#fff;position:fixed;",...k(I(["bottom:0;left:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:30vh","bottom:0;left:0;width:100vw;height:30vh","top:0;right:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:100vh"],((e,t)=>[`main[data-position='${t}']`,e]))),header:"display:flex;padding:0.25rem;background:#000;align-items:center","header>img:nth-of-type(1)":S,"header>img:nth-of-type(6)":V,...k(I(N,((e,t)=>[`header>img[data-id='${t}']`,e]))),"header>span":"flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-left:0.25rem",article:"padding:0.25rem 0.25rem 0.25rem 0.5rem;overflow:auto;flex:1",details:"margin-left:0.75rem;width:fit-content;","details img":"display:none","details[open]>summary img":"display:unset;background:none;margin-left:0.25rem","details[open]>summary img.edit":z,"details[open]>summary img.done":M,summary:"margin-left:-0.75rem;line-height:1.25rem;user-select:none;width:fit-content",table:"border-collapse:collapse;table-layout:fixed;margin-bottom:0.5rem","table input":"background:#111;color:unset;padding:0 0.25rem;border:0;font-size:unset;vertical-align:top;margin:0",'table input[type="number"]':"width:4rem","table tbody button":"font-size:0;background:#fff;border-radius:50%;margin:0 0.125rem 0 0;width:0.85rem;color:#111","table button:first-letter":"font-size:0.75rem",thead:"background:#222","th:nth-of-type(1)":"min-width:2rem;","th.sorted":"background:#000","table caption":"text-align:left;white-space:nowrap;line-height:1.25rem",button:"width:1.5rem;border:none;background:none;color:#fff;padding:0","button[disabled]":"color:#777","button.next":"margin-right:0.5rem","th,td":"overflow:hidden;text-overflow:ellipsis;padding:0.25rem 0.5rem;max-width:12rem;white-space:nowrap;border-width:1px 0;border-style:solid;border-color:#777;text-align:left","span.warn":"margin:0.25rem;color:#d81b60"},((e,t)=>e?`& ${t}{${e}}`:"")));const q=(e,t,l,o)=>e==a?t:e==n?l:o,{useCallback:H,useMemo:O,useState:B}=e,F="editable",E=(e,l)=>I(t.useTableCellIds(e,l),(t=>e+"."+t)),P=(e,t,l)=>{const a=H(e,t);return l?a:void 0},j=(...e)=>O((()=>e),e),A=(e,t)=>O((()=>({store:e,tableId:t})),[e,t]),L=(e,t)=>O((()=>({queries:e,queryId:t})),[e,t]),D=(e,t=!1,l,a=0,o,n,r,s)=>{const[[i,d,u],m]=B([e,t,a]),h=H((e=>{m(e),s?.(e)}),[s]),b=P((e=>h([e,e==i&&!d,u])),[h,i,d,u],l),g=H((e=>h([i,d,e])),[h,i,d]),p=!0===r?Y:r;return[[i,d,u],b,O((()=>!1===r?null:c(p,{offset:u,limit:o,total:n,onChange:g})),[r,p,u,o,n,g])]},G=(e,t,o)=>O((()=>{const n=t??e;return k(y(Array.isArray(n)?k(I(n,(e=>[e,e]))):n,((e,t)=>{return[t,{label:t,component:o,...(n=e,l(n)==a?{label:e}:e)}];var n})))}),[t,o,e]),J=({className:e,headerRow:t,idColumn:l,params:[a,o,n,r,s,i]})=>c("table",{className:e},i?c("caption",null,i):null,!1===t?null:c("thead",null,c("tr",null,!1===l?null:c(K,{sort:r??[],label:"Id",onClick:s}),y(a,(({label:e},t)=>c(K,{key:t,cellId:t,label:e,sort:r??[],onClick:s}))))),c("tbody",null,I(n,(e=>c("tr",{key:e},!1===l?null:c("th",null,e),y(a,(({component:t,getComponentProps:l},a)=>c("td",{key:a},c(t,{...f(l,e,a),...o,rowId:e,cellId:a}))))))))),K=({cellId:e,sort:[t,l],label:a=e??"",onClick:o})=>c("th",{onClick:P((()=>o?.(e)),[o,e],o),className:u(l)||t!=e?void 0:`sorted ${l?"de":"a"}scending`},u(l)||t!=e?null:(l?"↓":"↑")+" ",a),Q=({localRowId:l,params:[a,o,n,r,s,i,d]})=>{const m=t.useRemoteRowId(s,l,i);return c("tr",null,!1===a?null:c(e.Fragment,null,c("th",null,l),c("th",null,m)),y(o,(({component:e,getComponentProps:t},a)=>{const[o,s]=a.split(".",2),i=o===n?l:o===r?m:null;return u(i)?null:c("td",{key:a},c(e,{...f(t,i,s),store:d,tableId:o,rowId:i,cellId:s}))})))},U=({thing:e,onThingChange:t,className:r,hasSchema:u})=>{const[m,h]=B(),[b,g]=B(),[p,w]=B(),[f,I]=B(),[C,k]=B();b!==e&&(h((e=>{const t=l(e);return(e=>e==a||e==o)(t)||t==n&&d(e)?t:void 0})(e)),g(e),w(e+""),I(Number(e)||0),k(!!e));const y=H(((e,l)=>{l(e),g(e),t(e)}),[t]);return c("div",{className:r},c("button",{className:m,onClick:H((()=>{if(!u?.()){const e=q(m,n,o,a),l=q(e,p,f,C);h(e),g(l),t(l)}}),[u,t,p,f,C,m])},m),q(m,c("input",{key:m,value:p,onChange:H((e=>y(e[s][i]+"",w)),[y])}),c("input",{key:m,type:"number",value:f,onChange:H((e=>y(Number(e[s][i]||0),I)),[y])}),c("input",{key:m,type:"checkbox",checked:C,onChange:H((e=>y(!!e[s].checked,k)),[y])})))},W=({tableId:e,rowId:l,cellId:a,store:o,className:n})=>c(U,{thing:t.useCell(e,l,a,o),onThingChange:t.useSetCellCallback(e,l,a,(e=>e),[],o),className:n??F+"Cell",hasSchema:t.useStoreOrStoreById(o)?.hasTablesSchema}),X=({valueId:e,store:l,className:a})=>c(U,{thing:t.useValue(e,l),onThingChange:t.useSetValueCallback(e,(e=>e),[],l),className:a??F+r,hasSchema:t.useStoreOrStoreById(l)?.hasValuesSchema}),Y=({onChange:t,total:l,offset:a=0,limit:o=l,singular:n="row",plural:r=n+"s"})=>{(a>l||a<0)&&(a=0,t(0));const s=P((()=>t(a-o)),[t,a,o],a>0),i=P((()=>t(a+o)),[t,a,o],a+o<l);return c(e.Fragment,null,l>o&&c(e.Fragment,null,c("button",{className:"previous",disabled:0==a,onClick:s},"←"),c("button",{className:"next",disabled:a+o>=l,onClick:i},"→"),a+1," to ",Math.min(l,a+o)," of "),l," ",1!=l?r:n)},Z=e=>new Map(e);Z(),Z(),exports.EditableCellView=W,exports.EditableValueView=X,exports.RelationshipInHtmlTable=({relationshipId:l,relationships:a,editable:o,customCells:n,className:r,headerRow:s,idColumn:i=!0})=>{const[d,u,m,h]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(t.useRelationshipsOrRelationshipsById(a),l),b=G([...E(m,u),...E(h,u)],n,o?W:t.CellView),g=j(i,b,m,h,l,d,u);return c("table",{className:r},!1===s?null:c("thead",null,c("tr",null,!1===i?null:c(e.Fragment,null,c("th",null,m,".Id"),c("th",null,h,".Id")),y(b,(({label:e},t)=>c("th",{key:t},e))))),c("tbody",null,I(t.useRowIds(m,u),(e=>c(Q,{key:e,localRowId:e,params:g})))))},exports.ResultSortedTableInHtmlTable=({queryId:e,cellId:l,descending:a,offset:o,limit:n,queries:r,sortOnClick:s,paginator:i=!1,customCells:d,onChange:u,...m})=>{const[h,b,g]=D(l,a,s,o,n,t.useResultRowCount(e,r),i,u);return c(J,{...m,params:j(G(t.useResultTableCellIds(e,r),d,t.ResultCellView),L(r,e),t.useResultSortedRowIds(e,...h,n,r),h,b,g)})},exports.ResultTableInHtmlTable=({queryId:e,queries:l,customCells:a,...o})=>c(J,{...o,params:j(G(t.useResultTableCellIds(e,l),a,t.ResultCellView),L(l,e),t.useResultRowIds(e,l))}),exports.SliceInHtmlTable=({indexId:e,sliceId:l,indexes:a,editable:o,customCells:n,...r})=>{const[s,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(t.useIndexesOrIndexesById(a),e);return c(J,{...r,params:j(G(t.useTableCellIds(d,i),n,o?W:t.CellView),A(i,d),t.useSliceRowIds(e,l,s))})},exports.SortedTableInHtmlTable=({tableId:e,cellId:l,descending:a,offset:o,limit:n,store:r,editable:s,sortOnClick:i,paginator:d=!1,onChange:u,customCells:m,...h})=>{const[b,g,p]=D(l,a,i,o,n,t.useRowCount(e,r),d,u);return c(J,{...h,params:j(G(t.useTableCellIds(e,r),m,s?W:t.CellView),A(r,e),t.useSortedRowIds(e,...b,n,r),b,g,p)})},exports.SortedTablePaginator=Y,exports.StoreInspector=e=>null,exports.TableInHtmlTable=({tableId:e,store:l,editable:a,customCells:o,...n})=>c(J,{...n,params:j(G(t.useTableCellIds(e,l),o,a?W:t.CellView),A(l,e),t.useRowIds(e,l))}),exports.ValuesInHtmlTable=({store:e,editable:l=!1,valueComponent:a=(l?X:t.ValueView),getValueComponentProps:o,className:n,headerRow:s,idColumn:i})=>c("table",{className:n},!1===s?null:c("thead",null,c("tr",null,!1===i?null:c("th",null,"Id"),c("th",null,r))),c("tbody",null,I(t.useValueIds(e),(t=>c("tr",{key:t},!1===i?null:c("th",null,t),c("td",null,c(a,{...f(o,t),valueId:t,store:e})))))));
Binary file
@@ -1 +1 @@
1
- "use strict";var e=require("react");const s=e=>typeof e,t="",o=s(t),r="Result",u="Ids",d="Table",l=d+"s",p=d+u,n="Row",i=n+"Count",a=n+u,I="Sorted"+n+u,x="Cell",c=x+u,C="Value",w=C+"s",b=C+u,R=e=>null==e,k=(e,s,t)=>R(e)?t?.():s(e),g=e=>s(e)==o,h=()=>{},m=(e,s)=>e.map(s),L=Object.keys,{createContext:y,useContext:V}=e,S=y([]),T=(e,s)=>{const t=V(S);return R(e)?t[s]:g(e)?((e,s)=>k(e,(e=>e[s])))(t[s+1],e):e},v=(e,s)=>{const t=T(e,s);return R(e)||g(e)?t:e},P=e=>L(V(S)[e]),q=e=>v(e,0),B=e=>v(e,2),f=e=>v(e,4),M=e=>v(e,6),O=e=>v(e,8),Q=e=>v(e,10),{useCallback:D,useEffect:F,useMemo:A,useRef:E,useState:G}=e,j=(e,s,t=[])=>{const o=A((()=>s(e)),[e,...t]);return F((()=>()=>o.destroy()),[o]),o},U=(e,s,t,o=[],r)=>{const[,u]=G(),d=D((()=>s?.["get"+e]?.(...o)??t),[s,...o]),[l]=G(d),p=E(l);return A((()=>p.current=d()),[d]),z(e,s,((...e)=>{p.current=R(r)?d():e[r],u([])}),[],o),p.current},z=(e,s,t,o=[],r=[],...u)=>F((()=>{const o=s?.["add"+e+"Listener"]?.(...r,t,...u);return()=>s?.delListener(o)}),[s,...r,...o,...u]),H=(e,s,t,o=[],r=h,u=[],...d)=>{const l=q(e);return D((e=>k(l,(o=>k(t(e,o),(e=>r(o["set"+s](...d,e),e)))))),[l,s,...o,...u,...d])},J=(e,s,t=h,o=[],...r)=>{const u=q(e);return D((()=>t(u?.["del"+s](...r))),[u,s,...o,...r])},K=(e,s,t)=>{const o=Q(e);return D((()=>o?.[s](t)),[o,s,t])},N=e=>U(p,q(e),[],[]),W=(e,s)=>U(a,q(s),[],[e]),X=(e,s,t,o=0,r,u)=>U(I,q(u),[],[e,s,t,o,r],6),Y=(e,s,t)=>U(c,q(t),[],[e,s]),Z=(e,s,t,o)=>U(x,q(o),void 0,[e,s,t],4),$=e=>U(b,q(e),[],[]),_=(e,s)=>U(C,q(s),void 0,[e]),ee=(e,s)=>U("Metric",B(s),void 0,[e]),se=(e,s)=>U("SliceIds",f(s),[],[e]),te=(e,s,t)=>U("Slice"+a,f(t),[],[e,s]),oe=(e,s,t)=>U("RemoteRowId",M(t),void 0,[e,s]),re=(e,s,t)=>U("Local"+a,M(t),[],[e,s]),ue=(e,s,t)=>U("Linked"+a,M(t),[],[e,s]),de=(e,s)=>U(r+a,O(s),[],[e]),le=(e,s,t,o=0,u,d)=>U(r+I,O(d),[],[e,s,t,o,u],6),pe=(e,s,t)=>U(r+c,O(t),[],[e,s]),ne=(e,s,t,o)=>U(r+x,O(o),void 0,[e,s,t]),ie=e=>U("CheckpointIds",Q(e),[[],void 0,[]]),ae=(e,s)=>U("Checkpoint",Q(s),void 0,[e]),Ie=e=>K(e,"goBackward"),xe=e=>K(e,"goForward"),{createElement:ce,Fragment:Ce,useCallback:we,useLayoutEffect:be,useRef:Re,useState:ke}=e,ge=(e,...s)=>R(e)?{}:e(...s),he=(e,s)=>[e,e?.getStore(),e?.getLocalTableId(s),e?.getRemoteTableId(s)],{useMemo:me}=e,Le=({tableId:e,store:s,rowComponent:t=Pe,getRowComponentProps:o,customCellIds:r,separator:u,debugIds:d},l)=>Te(m(l,(u=>ce(t,{...ge(o,u),key:u,tableId:e,rowId:u,customCellIds:r,store:s,debugIds:d}))),u,d,e),ye=({queryId:e,queries:s,resultRowComponent:t=Oe,getResultRowComponentProps:o,separator:r,debugIds:u},d)=>Te(m(d,(r=>ce(t,{...ge(o,r),key:r,queryId:e,rowId:r,queries:s,debugIds:u}))),r,u,e),Ve=({relationshipId:e,relationships:s,rowComponent:t=Pe,getRowComponentProps:o,separator:r,debugIds:u},d,l)=>{const[p,n,i]=he(M(s),e),a=d(e,l,p);return Te(m(a,(e=>ce(t,{...ge(o,e),key:e,tableId:i,rowId:e,store:n,debugIds:u}))),r,u,l)},Se=e=>({checkpoints:s,checkpointComponent:t=Qe,getCheckpointComponentProps:o,separator:r,debugIds:u})=>{const d=Q(s);return Te(m(e(ie(d)),(e=>ce(t,{...ge(o,e),key:e,checkpoints:d,checkpointId:e,debugIds:u}))),r)},Te=(e,s,t,o)=>{const r=R(s)||!Array.isArray(e)?e:m(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",r,"}"]:r},ve=({tableId:e,rowId:s,cellId:o,store:r,debugIds:u})=>Te(t+(Z(e,s,o,r)??t),void 0,u,o),Pe=({tableId:e,rowId:s,store:t,cellComponent:o=ve,getCellComponentProps:r,customCellIds:u,separator:d,debugIds:l})=>Te(m(((e,s,t,o)=>{const r=Y(s,t,o);return e??r})(u,e,s,t),(u=>ce(o,{...ge(r,u),key:u,tableId:e,rowId:s,cellId:u,store:t,debugIds:l}))),d,l,s),qe=e=>Le(e,W(e.tableId,e.store)),Be=({valueId:e,store:s,debugIds:o})=>Te(t+(_(e,s)??t),void 0,o,e),fe=({indexId:e,sliceId:s,indexes:t,rowComponent:o=Pe,getRowComponentProps:r,separator:u,debugIds:d})=>{const[l,p,n]=((e,s)=>[e,e?.getStore(),e?.getTableId(s)])(f(t),e),i=te(e,s,l);return Te(m(i,(e=>ce(o,{...ge(r,e),key:e,tableId:n,rowId:e,store:p,debugIds:d}))),u,d,s)},Me=({queryId:e,rowId:s,cellId:o,queries:r,debugIds:u})=>Te(t+(ne(e,s,o,r)??t),void 0,u,o),Oe=({queryId:e,rowId:s,queries:t,resultCellComponent:o=Me,getResultCellComponentProps:r,separator:u,debugIds:d})=>Te(m(pe(e,s,t),(u=>ce(o,{...ge(r,u),key:u,queryId:e,rowId:s,cellId:u,queries:t,debugIds:d}))),u,d,s),Qe=({checkpoints:e,checkpointId:s,debugIds:o})=>Te(ae(s,e)??t,void 0,o,s),De=Se((e=>e[0])),Fe=Se((e=>R(e[1])?[]:[e[1]])),Ae=Se((e=>e[2]));exports.BackwardCheckpointsView=De,exports.CellView=ve,exports.CheckpointView=Qe,exports.CurrentCheckpointView=Fe,exports.ForwardCheckpointsView=Ae,exports.IndexView=({indexId:e,indexes:s,sliceComponent:t=fe,getSliceComponentProps:o,separator:r,debugIds:u})=>Te(m(se(e,s),(r=>ce(t,{...ge(o,r),key:r,indexId:e,sliceId:r,indexes:s,debugIds:u}))),r,u,e),exports.LinkedRowsView=e=>Ve(e,ue,e.firstRowId),exports.LocalRowsView=e=>Ve(e,re,e.remoteRowId),exports.MetricView=({metricId:e,metrics:s,debugIds:o})=>Te(ee(e,s)??t,void 0,o,e),exports.Provider=({store:s,storesById:t,metrics:o,metricsById:r,indexes:u,indexesById:d,relationships:l,relationshipsById:p,queries:n,queriesById:i,checkpoints:a,checkpointsById:I,children:x})=>{const c=e.useContext(S);return ce(S.Provider,{value:me((()=>[s??c[0],{...c[1],...t},o??c[2],{...c[3],...r},u??c[4],{...c[5],...d},l??c[6],{...c[7],...p},n??c[8],{...c[9],...i},a??c[10],{...c[11],...I}]),[s,t,o,r,u,d,l,p,n,i,a,I,c])},x)},exports.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=Pe,getRowComponentProps:r,debugIds:u})=>{const[d,l,,p]=he(M(t),e),n=oe(e,s,d);return Te(R(p)||R(n)?null:ce(o,{...ge(r,n),key:n,tableId:p,rowId:n,store:l,debugIds:u}),void 0,u,s)},exports.ResultCellView=Me,exports.ResultRowView=Oe,exports.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>ye(r,le(r.queryId,e,s,t,o,r.queries)),exports.ResultTableView=e=>ye(e,de(e.queryId,e.queries)),exports.RowView=Pe,exports.SliceView=fe,exports.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>Le(r,X(r.tableId,e,s,t,o,r.store)),exports.TableView=qe,exports.TablesView=({store:e,tableComponent:s=qe,getTableComponentProps:t,separator:o,debugIds:r})=>Te(m(N(e),(o=>ce(s,{...ge(t,o),key:o,tableId:o,store:e,debugIds:r}))),o),exports.ValueView=Be,exports.ValuesView=({store:e,valueComponent:s=Be,getValueComponentProps:t,separator:o,debugIds:r})=>Te(m($(e),(o=>ce(s,{...ge(t,o),key:o,valueId:o,store:e,debugIds:r}))),o),exports.useAddRowCallback=(e,s,t=[],o,r=h,u=[],d=!0)=>{const l=q(o);return D((t=>k(l,(o=>k(s(t,o),(s=>r(o.addRow(e,s,d),o,s)))))),[l,e,...t,...u,d])},exports.useCell=Z,exports.useCellIds=Y,exports.useCellIdsListener=(e,s,t,o,r,u)=>z(c,q(u),t,o,[e,s],r),exports.useCellListener=(e,s,t,o,r,u,d)=>z(x,q(d),o,r,[e,s,t],u),exports.useCheckpoint=ae,exports.useCheckpointIds=ie,exports.useCheckpointIdsListener=(e,s,t)=>z("CheckpointIds",Q(t),e,s),exports.useCheckpointListener=(e,s,t,o)=>z("Checkpoint",Q(o),s,t,[e]),exports.useCheckpoints=e=>T(e,10),exports.useCheckpointsIds=()=>P(11),exports.useCheckpointsOrCheckpointsById=Q,exports.useCreateCheckpoints=(e,s,t)=>j(e,s,t),exports.useCreateIndexes=(e,s,t)=>j(e,s,t),exports.useCreateMetrics=(e,s,t)=>j(e,s,t),exports.useCreatePersister=(e,s,t=[],o,r=[])=>{const[,u]=G(),d=A((()=>s(e)),[e,...t]);return F((()=>((async()=>{await(o?.(d)),u(1)})(),()=>{d.destroy()})),[d,...r]),d},exports.useCreateQueries=(e,s,t)=>j(e,s,t),exports.useCreateRelationships=(e,s,t)=>j(e,s,t),exports.useCreateStore=(e,s=[])=>A(e,s),exports.useDelCellCallback=(e,s,t,o,r,u,d)=>J(r,x,u,d,e,s,t,o),exports.useDelRowCallback=(e,s,t,o,r)=>J(t,n,o,r,e,s),exports.useDelTableCallback=(e,s,t,o)=>J(s,d,t,o,e),exports.useDelTablesCallback=(e,s,t)=>J(e,l,s,t),exports.useDelValueCallback=(e,s,t,o)=>J(s,C,t,o,e),exports.useDelValuesCallback=(e,s,t)=>J(e,w,s,t),exports.useGoBackwardCallback=Ie,exports.useGoForwardCallback=xe,exports.useGoToCallback=(e,s=[],t,o=h,r=[])=>{const u=Q(t);return D((s=>k(u,(t=>k(e(s),(e=>o(t.goTo(e),e)))))),[u,...s,...r])},exports.useIndexIds=e=>U("IndexIds",f(e),[]),exports.useIndexes=e=>T(e,4),exports.useIndexesIds=()=>P(5),exports.useIndexesOrIndexesById=f,exports.useLinkedRowIds=ue,exports.useLinkedRowIdsListener=(e,s,t,o,r)=>z("Linked"+a,M(r),t,o,[e,s]),exports.useLocalRowIds=re,exports.useLocalRowIdsListener=(e,s,t,o,r)=>z("Local"+a,M(r),t,o,[e,s]),exports.useMetric=ee,exports.useMetricIds=e=>U("MetricIds",B(e),[]),exports.useMetricListener=(e,s,t,o)=>z("Metric",B(o),s,t,[e]),exports.useMetrics=e=>T(e,2),exports.useMetricsIds=()=>P(3),exports.useMetricsOrMetricsById=B,exports.useQueries=e=>T(e,8),exports.useQueriesIds=()=>P(9),exports.useQueriesOrQueriesById=O,exports.useQueryIds=e=>U("QueryIds",O(e),[]),exports.useRedoInformation=e=>{const s=Q(e),[,,[o]]=ie(s);return[!R(o),xe(s),o,k(o,(e=>s?.getCheckpoint(e)))??t]},exports.useRelationshipIds=e=>U("RelationshipIds",M(e),[]),exports.useRelationships=e=>T(e,6),exports.useRelationshipsIds=()=>P(7),exports.useRelationshipsOrRelationshipsById=M,exports.useRemoteRowId=oe,exports.useRemoteRowIdListener=(e,s,t,o,r)=>z("RemoteRowId",M(r),t,o,[e,s]),exports.useResultCell=ne,exports.useResultCellIds=pe,exports.useResultCellIdsListener=(e,s,t,o,u)=>z(r+c,O(u),t,o,[e,s]),exports.useResultCellListener=(e,s,t,o,u,d)=>z(r+x,O(d),o,u,[e,s,t]),exports.useResultRow=(e,s,t)=>U(r+n,O(t),{},[e,s]),exports.useResultRowCount=(e,s)=>U(r+i,O(s),[],[e]),exports.useResultRowCountListener=(e,s,t,o)=>z(r+i,O(o),s,t,[e]),exports.useResultRowIds=de,exports.useResultRowIdsListener=(e,s,t,o)=>z(r+a,O(o),s,t,[e]),exports.useResultRowListener=(e,s,t,o,u)=>z(r+n,O(u),t,o,[e,s]),exports.useResultSortedRowIds=le,exports.useResultSortedRowIdsListener=(e,s,t,o,u,d,l,p)=>z(r+I,O(p),d,l,[e,s,t,o,u]),exports.useResultTable=(e,s)=>U(r+d,O(s),{},[e]),exports.useResultTableCellIds=(e,s)=>U(r+d+c,O(s),[],[e]),exports.useResultTableCellIdsListener=(e,s,t,o)=>z(r+d+c,O(o),s,t,[e]),exports.useResultTableListener=(e,s,t,o)=>z(r+d,O(o),s,t,[e]),exports.useRow=(e,s,t)=>U(n,q(t),{},[e,s]),exports.useRowCount=(e,s)=>U(i,q(s),[],[e]),exports.useRowCountListener=(e,s,t,o,r)=>z(i,q(r),s,t,[e],o),exports.useRowIds=W,exports.useRowIdsListener=(e,s,t,o,r)=>z(a,q(r),s,t,[e],o),exports.useRowListener=(e,s,t,o,r,u)=>z(n,q(u),t,o,[e,s],r),exports.useSetCellCallback=(e,s,t,o,r,u,d,l)=>H(u,x,o,r,d,l,e,s,t),exports.useSetCheckpointCallback=(e=h,s=[],t,o=h,r=[])=>{const u=Q(t);return D((s=>k(u,(t=>{const r=e(s);o(t.addCheckpoint(r),t,r)}))),[u,...s,...r])},exports.useSetPartialRowCallback=(e,s,t,o,r,u,d)=>H(r,"PartialRow",t,o,u,d,e,s),exports.useSetPartialValuesCallback=(e,s,t,o,r)=>H(t,"PartialValues",e,s,o,r),exports.useSetRowCallback=(e,s,t,o,r,u,d)=>H(r,n,t,o,u,d,e,s),exports.useSetTableCallback=(e,s,t,o,r,u)=>H(o,d,s,t,r,u,e),exports.useSetTablesCallback=(e,s,t,o,r)=>H(t,l,e,s,o,r),exports.useSetValueCallback=(e,s,t,o,r,u)=>H(o,C,s,t,r,u,e),exports.useSetValuesCallback=(e,s,t,o,r)=>H(t,w,e,s,o,r),exports.useSliceIds=se,exports.useSliceIdsListener=(e,s,t,o)=>z("SliceIds",f(o),s,t,[e]),exports.useSliceRowIds=te,exports.useSliceRowIdsListener=(e,s,t,o,r)=>z("Slice"+a,f(r),t,o,[e,s]),exports.useSortedRowIds=X,exports.useSortedRowIdsListener=(e,s,t,o,r,u,d,l,p)=>z(I,q(p),u,d,[e,s,t,o,r],l),exports.useStore=e=>T(e,0),exports.useStoreIds=()=>P(1),exports.useStoreOrStoreById=q,exports.useTable=(e,s)=>U(d,q(s),{},[e]),exports.useTableCellIds=(e,s)=>U(d+c,q(s),[],[e]),exports.useTableCellIdsListener=(e,s,t,o,r)=>z(d+c,q(r),s,t,[e],o),exports.useTableIds=N,exports.useTableIdsListener=(e,s,t,o)=>z(p,q(o),e,s,[],t),exports.useTableListener=(e,s,t,o,r)=>z(d,q(r),s,t,[e],o),exports.useTables=e=>U(l,q(e),{}),exports.useTablesListener=(e,s,t,o)=>z(l,q(o),e,s,[],t),exports.useUndoInformation=e=>{const s=Q(e),[o,r]=ie(s);return[(u=o,!(0==(e=>e.length)(u))),Ie(s),r,k(r,(e=>s?.getCheckpoint(e)))??t];var u},exports.useValue=_,exports.useValueIds=$,exports.useValueIdsListener=(e,s,t,o)=>z(b,q(o),e,s,[],t),exports.useValueListener=(e,s,t,o,r)=>z(C,q(r),s,t,[e],o),exports.useValues=e=>U(w,q(e),{}),exports.useValuesListener=(e,s,t,o)=>z(w,q(o),e,s,[],t);
1
+ "use strict";var e=require("react");const s=e=>typeof e,t="",o=s(t),r="Result",u="Ids",d="Table",l=d+"s",p=d+u,n="Row",i=n+"Count",a=n+u,I="Sorted"+n+u,x="Cell",c=x+u,C="Value",w=C+"s",b=C+u,R=e=>null==e,k=(e,s,t)=>R(e)?t?.():s(e),g=e=>s(e)==o,m=()=>{},h=(e,s)=>e.map(s),L=Object.keys,{createContext:y,useContext:V}=e,S=y([]),T=(e,s)=>{const t=V(S);return R(e)?t[s]:g(e)?((e,s)=>k(e,(e=>e[s])))(t[s+1]??{},e):e},v=(e,s)=>{const t=T(e,s);return R(e)||g(e)?t:e},P=e=>L(V(S)[e]??{}),q=e=>v(e,0),B=e=>v(e,2),f=e=>v(e,4),M=e=>v(e,6),O=e=>v(e,8),Q=e=>v(e,10),{useCallback:D,useEffect:F,useMemo:A,useRef:E,useState:G}=e,j=(e,s,t=[])=>{const o=A((()=>s(e)),[e,...t]);return F((()=>()=>o.destroy()),[o]),o},U=(e,s,t,o=[],r)=>{const[,u]=G(),d=D((()=>s?.["get"+e]?.(...o)??t),[s,...o]),[l]=G(d),p=E(l);return A((()=>p.current=d()),[d]),z(e,s,((...e)=>{p.current=R(r)?d():e[r],u([])}),[],o),p.current},z=(e,s,t,o=[],r=[],...u)=>F((()=>{const o=s?.["add"+e+"Listener"]?.(...r,t,...u);return()=>s?.delListener(o)}),[s,...r,...o,...u]),H=(e,s,t,o=[],r=m,u=[],...d)=>{const l=q(e);return D((e=>k(l,(o=>k(t(e,o),(e=>r(o["set"+s](...d,e),e)))))),[l,s,...o,...u,...d])},J=(e,s,t=m,o=[],...r)=>{const u=q(e);return D((()=>t(u?.["del"+s](...r))),[u,s,...o,...r])},K=(e,s,t)=>{const o=Q(e);return D((()=>o?.[s](t)),[o,s,t])},N=e=>U(p,q(e),[],[]),W=(e,s)=>U(a,q(s),[],[e]),X=(e,s,t,o=0,r,u)=>U(I,q(u),[],[e,s,t,o,r],6),Y=(e,s,t)=>U(c,q(t),[],[e,s]),Z=(e,s,t,o)=>U(x,q(o),void 0,[e,s,t],4),$=e=>U(b,q(e),[],[]),_=(e,s)=>U(C,q(s),void 0,[e]),ee=(e,s)=>U("Metric",B(s),void 0,[e]),se=(e,s)=>U("SliceIds",f(s),[],[e]),te=(e,s,t)=>U("Slice"+a,f(t),[],[e,s]),oe=(e,s,t)=>U("RemoteRowId",M(t),void 0,[e,s]),re=(e,s,t)=>U("Local"+a,M(t),[],[e,s]),ue=(e,s,t)=>U("Linked"+a,M(t),[],[e,s]),de=(e,s)=>U(r+a,O(s),[],[e]),le=(e,s,t,o=0,u,d)=>U(r+I,O(d),[],[e,s,t,o,u],6),pe=(e,s,t)=>U(r+c,O(t),[],[e,s]),ne=(e,s,t,o)=>U(r+x,O(o),void 0,[e,s,t]),ie=e=>U("CheckpointIds",Q(e),[[],void 0,[]]),ae=(e,s)=>U("Checkpoint",Q(s),void 0,[e]),Ie=e=>K(e,"goBackward"),xe=e=>K(e,"goForward"),{PureComponent:ce,Fragment:Ce,createElement:we,useCallback:be,useLayoutEffect:Re,useRef:ke,useState:ge}=e,me=(e,...s)=>R(e)?{}:e(...s),he=(e,s)=>[e,e?.getStore(),e?.getLocalTableId(s),e?.getRemoteTableId(s)],{useMemo:Le}=e,ye=({tableId:e,store:s,rowComponent:t=qe,getRowComponentProps:o,customCellIds:r,separator:u,debugIds:d},l)=>ve(h(l,(u=>we(t,{...me(o,u),key:u,tableId:e,rowId:u,customCellIds:r,store:s,debugIds:d}))),u,d,e),Ve=({queryId:e,queries:s,resultRowComponent:t=Qe,getResultRowComponentProps:o,separator:r,debugIds:u},d)=>ve(h(d,(r=>we(t,{...me(o,r),key:r,queryId:e,rowId:r,queries:s,debugIds:u}))),r,u,e),Se=({relationshipId:e,relationships:s,rowComponent:t=qe,getRowComponentProps:o,separator:r,debugIds:u},d,l)=>{const[p,n,i]=he(M(s),e),a=d(e,l,p);return ve(h(a,(e=>we(t,{...me(o,e),key:e,tableId:i,rowId:e,store:n,debugIds:u}))),r,u,l)},Te=e=>({checkpoints:s,checkpointComponent:t=De,getCheckpointComponentProps:o,separator:r,debugIds:u})=>{const d=Q(s);return ve(h(e(ie(d)),(e=>we(t,{...me(o,e),key:e,checkpoints:d,checkpointId:e,debugIds:u}))),r)},ve=(e,s,t,o)=>{const r=R(s)||!Array.isArray(e)?e:h(e,((e,t)=>t>0?[s,e]:e));return t?[o,":{",r,"}"]:r},Pe=({tableId:e,rowId:s,cellId:o,store:r,debugIds:u})=>ve(t+(Z(e,s,o,r)??t),void 0,u,o),qe=({tableId:e,rowId:s,store:t,cellComponent:o=Pe,getCellComponentProps:r,customCellIds:u,separator:d,debugIds:l})=>ve(h(((e,s,t,o)=>{const r=Y(s,t,o);return e??r})(u,e,s,t),(u=>we(o,{...me(r,u),key:u,tableId:e,rowId:s,cellId:u,store:t,debugIds:l}))),d,l,s),Be=e=>ye(e,W(e.tableId,e.store)),fe=({valueId:e,store:s,debugIds:o})=>ve(t+(_(e,s)??t),void 0,o,e),Me=({indexId:e,sliceId:s,indexes:t,rowComponent:o=qe,getRowComponentProps:r,separator:u,debugIds:d})=>{const[l,p,n]=((e,s)=>[e,e?.getStore(),e?.getTableId(s)])(f(t),e),i=te(e,s,l);return ve(h(i,(e=>we(o,{...me(r,e),key:e,tableId:n,rowId:e,store:p,debugIds:d}))),u,d,s)},Oe=({queryId:e,rowId:s,cellId:o,queries:r,debugIds:u})=>ve(t+(ne(e,s,o,r)??t),void 0,u,o),Qe=({queryId:e,rowId:s,queries:t,resultCellComponent:o=Oe,getResultCellComponentProps:r,separator:u,debugIds:d})=>ve(h(pe(e,s,t),(u=>we(o,{...me(r,u),key:u,queryId:e,rowId:s,cellId:u,queries:t,debugIds:d}))),u,d,s),De=({checkpoints:e,checkpointId:s,debugIds:o})=>ve(ae(s,e)??t,void 0,o,s),Fe=Te((e=>e[0])),Ae=Te((e=>R(e[1])?[]:[e[1]])),Ee=Te((e=>e[2]));exports.BackwardCheckpointsView=Fe,exports.CellView=Pe,exports.CheckpointView=De,exports.CurrentCheckpointView=Ae,exports.ForwardCheckpointsView=Ee,exports.IndexView=({indexId:e,indexes:s,sliceComponent:t=Me,getSliceComponentProps:o,separator:r,debugIds:u})=>ve(h(se(e,s),(r=>we(t,{...me(o,r),key:r,indexId:e,sliceId:r,indexes:s,debugIds:u}))),r,u,e),exports.LinkedRowsView=e=>Se(e,ue,e.firstRowId),exports.LocalRowsView=e=>Se(e,re,e.remoteRowId),exports.MetricView=({metricId:e,metrics:s,debugIds:o})=>ve(ee(e,s)??t,void 0,o,e),exports.Provider=({store:s,storesById:t,metrics:o,metricsById:r,indexes:u,indexesById:d,relationships:l,relationshipsById:p,queries:n,queriesById:i,checkpoints:a,checkpointsById:I,children:x})=>{const c=e.useContext(S);return we(S.Provider,{value:Le((()=>[s??c[0],{...c[1],...t},o??c[2],{...c[3],...r},u??c[4],{...c[5],...d},l??c[6],{...c[7],...p},n??c[8],{...c[9],...i},a??c[10],{...c[11],...I}]),[s,t,o,r,u,d,l,p,n,i,a,I,c])},x)},exports.RemoteRowView=({relationshipId:e,localRowId:s,relationships:t,rowComponent:o=qe,getRowComponentProps:r,debugIds:u})=>{const[d,l,,p]=he(M(t),e),n=oe(e,s,d);return ve(R(p)||R(n)?null:we(o,{...me(r,n),key:n,tableId:p,rowId:n,store:l,debugIds:u}),void 0,u,s)},exports.ResultCellView=Oe,exports.ResultRowView=Qe,exports.ResultSortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>Ve(r,le(r.queryId,e,s,t,o,r.queries)),exports.ResultTableView=e=>Ve(e,de(e.queryId,e.queries)),exports.RowView=qe,exports.SliceView=Me,exports.SortedTableView=({cellId:e,descending:s,offset:t,limit:o,...r})=>ye(r,X(r.tableId,e,s,t,o,r.store)),exports.TableView=Be,exports.TablesView=({store:e,tableComponent:s=Be,getTableComponentProps:t,separator:o,debugIds:r})=>ve(h(N(e),(o=>we(s,{...me(t,o),key:o,tableId:o,store:e,debugIds:r}))),o),exports.ValueView=fe,exports.ValuesView=({store:e,valueComponent:s=fe,getValueComponentProps:t,separator:o,debugIds:r})=>ve(h($(e),(o=>we(s,{...me(t,o),key:o,valueId:o,store:e,debugIds:r}))),o),exports.useAddRowCallback=(e,s,t=[],o,r=m,u=[],d=!0)=>{const l=q(o);return D((t=>k(l,(o=>k(s(t,o),(s=>r(o.addRow(e,s,d),o,s)))))),[l,e,...t,...u,d])},exports.useCell=Z,exports.useCellIds=Y,exports.useCellIdsListener=(e,s,t,o,r,u)=>z(c,q(u),t,o,[e,s],r),exports.useCellListener=(e,s,t,o,r,u,d)=>z(x,q(d),o,r,[e,s,t],u),exports.useCheckpoint=ae,exports.useCheckpointIds=ie,exports.useCheckpointIdsListener=(e,s,t)=>z("CheckpointIds",Q(t),e,s),exports.useCheckpointListener=(e,s,t,o)=>z("Checkpoint",Q(o),s,t,[e]),exports.useCheckpoints=e=>T(e,10),exports.useCheckpointsIds=()=>P(11),exports.useCheckpointsOrCheckpointsById=Q,exports.useCreateCheckpoints=(e,s,t)=>j(e,s,t),exports.useCreateIndexes=(e,s,t)=>j(e,s,t),exports.useCreateMetrics=(e,s,t)=>j(e,s,t),exports.useCreatePersister=(e,s,t=[],o,r=[])=>{const[,u]=G(),d=A((()=>s(e)),[e,...t]);return F((()=>((async()=>{await(o?.(d)),u(1)})(),()=>{d.destroy()})),[d,...r]),d},exports.useCreateQueries=(e,s,t)=>j(e,s,t),exports.useCreateRelationships=(e,s,t)=>j(e,s,t),exports.useCreateStore=(e,s=[])=>A(e,s),exports.useDelCellCallback=(e,s,t,o,r,u,d)=>J(r,x,u,d,e,s,t,o),exports.useDelRowCallback=(e,s,t,o,r)=>J(t,n,o,r,e,s),exports.useDelTableCallback=(e,s,t,o)=>J(s,d,t,o,e),exports.useDelTablesCallback=(e,s,t)=>J(e,l,s,t),exports.useDelValueCallback=(e,s,t,o)=>J(s,C,t,o,e),exports.useDelValuesCallback=(e,s,t)=>J(e,w,s,t),exports.useGoBackwardCallback=Ie,exports.useGoForwardCallback=xe,exports.useGoToCallback=(e,s=[],t,o=m,r=[])=>{const u=Q(t);return D((s=>k(u,(t=>k(e(s),(e=>o(t.goTo(e),e)))))),[u,...s,...r])},exports.useIndexIds=e=>U("IndexIds",f(e),[]),exports.useIndexes=e=>T(e,4),exports.useIndexesIds=()=>P(5),exports.useIndexesOrIndexesById=f,exports.useLinkedRowIds=ue,exports.useLinkedRowIdsListener=(e,s,t,o,r)=>z("Linked"+a,M(r),t,o,[e,s]),exports.useLocalRowIds=re,exports.useLocalRowIdsListener=(e,s,t,o,r)=>z("Local"+a,M(r),t,o,[e,s]),exports.useMetric=ee,exports.useMetricIds=e=>U("MetricIds",B(e),[]),exports.useMetricListener=(e,s,t,o)=>z("Metric",B(o),s,t,[e]),exports.useMetrics=e=>T(e,2),exports.useMetricsIds=()=>P(3),exports.useMetricsOrMetricsById=B,exports.useQueries=e=>T(e,8),exports.useQueriesIds=()=>P(9),exports.useQueriesOrQueriesById=O,exports.useQueryIds=e=>U("QueryIds",O(e),[]),exports.useRedoInformation=e=>{const s=Q(e),[,,[o]]=ie(s);return[!R(o),xe(s),o,k(o,(e=>s?.getCheckpoint(e)))??t]},exports.useRelationshipIds=e=>U("RelationshipIds",M(e),[]),exports.useRelationships=e=>T(e,6),exports.useRelationshipsIds=()=>P(7),exports.useRelationshipsOrRelationshipsById=M,exports.useRemoteRowId=oe,exports.useRemoteRowIdListener=(e,s,t,o,r)=>z("RemoteRowId",M(r),t,o,[e,s]),exports.useResultCell=ne,exports.useResultCellIds=pe,exports.useResultCellIdsListener=(e,s,t,o,u)=>z(r+c,O(u),t,o,[e,s]),exports.useResultCellListener=(e,s,t,o,u,d)=>z(r+x,O(d),o,u,[e,s,t]),exports.useResultRow=(e,s,t)=>U(r+n,O(t),{},[e,s]),exports.useResultRowCount=(e,s)=>U(r+i,O(s),[],[e]),exports.useResultRowCountListener=(e,s,t,o)=>z(r+i,O(o),s,t,[e]),exports.useResultRowIds=de,exports.useResultRowIdsListener=(e,s,t,o)=>z(r+a,O(o),s,t,[e]),exports.useResultRowListener=(e,s,t,o,u)=>z(r+n,O(u),t,o,[e,s]),exports.useResultSortedRowIds=le,exports.useResultSortedRowIdsListener=(e,s,t,o,u,d,l,p)=>z(r+I,O(p),d,l,[e,s,t,o,u]),exports.useResultTable=(e,s)=>U(r+d,O(s),{},[e]),exports.useResultTableCellIds=(e,s)=>U(r+d+c,O(s),[],[e]),exports.useResultTableCellIdsListener=(e,s,t,o)=>z(r+d+c,O(o),s,t,[e]),exports.useResultTableListener=(e,s,t,o)=>z(r+d,O(o),s,t,[e]),exports.useRow=(e,s,t)=>U(n,q(t),{},[e,s]),exports.useRowCount=(e,s)=>U(i,q(s),[],[e]),exports.useRowCountListener=(e,s,t,o,r)=>z(i,q(r),s,t,[e],o),exports.useRowIds=W,exports.useRowIdsListener=(e,s,t,o,r)=>z(a,q(r),s,t,[e],o),exports.useRowListener=(e,s,t,o,r,u)=>z(n,q(u),t,o,[e,s],r),exports.useSetCellCallback=(e,s,t,o,r,u,d,l)=>H(u,x,o,r,d,l,e,s,t),exports.useSetCheckpointCallback=(e=m,s=[],t,o=m,r=[])=>{const u=Q(t);return D((s=>k(u,(t=>{const r=e(s);o(t.addCheckpoint(r),t,r)}))),[u,...s,...r])},exports.useSetPartialRowCallback=(e,s,t,o,r,u,d)=>H(r,"PartialRow",t,o,u,d,e,s),exports.useSetPartialValuesCallback=(e,s,t,o,r)=>H(t,"PartialValues",e,s,o,r),exports.useSetRowCallback=(e,s,t,o,r,u,d)=>H(r,n,t,o,u,d,e,s),exports.useSetTableCallback=(e,s,t,o,r,u)=>H(o,d,s,t,r,u,e),exports.useSetTablesCallback=(e,s,t,o,r)=>H(t,l,e,s,o,r),exports.useSetValueCallback=(e,s,t,o,r,u)=>H(o,C,s,t,r,u,e),exports.useSetValuesCallback=(e,s,t,o,r)=>H(t,w,e,s,o,r),exports.useSliceIds=se,exports.useSliceIdsListener=(e,s,t,o)=>z("SliceIds",f(o),s,t,[e]),exports.useSliceRowIds=te,exports.useSliceRowIdsListener=(e,s,t,o,r)=>z("Slice"+a,f(r),t,o,[e,s]),exports.useSortedRowIds=X,exports.useSortedRowIdsListener=(e,s,t,o,r,u,d,l,p)=>z(I,q(p),u,d,[e,s,t,o,r],l),exports.useStore=e=>T(e,0),exports.useStoreIds=()=>P(1),exports.useStoreOrStoreById=q,exports.useTable=(e,s)=>U(d,q(s),{},[e]),exports.useTableCellIds=(e,s)=>U(d+c,q(s),[],[e]),exports.useTableCellIdsListener=(e,s,t,o,r)=>z(d+c,q(r),s,t,[e],o),exports.useTableIds=N,exports.useTableIdsListener=(e,s,t,o)=>z(p,q(o),e,s,[],t),exports.useTableListener=(e,s,t,o,r)=>z(d,q(r),s,t,[e],o),exports.useTables=e=>U(l,q(e),{}),exports.useTablesListener=(e,s,t,o)=>z(l,q(o),e,s,[],t),exports.useUndoInformation=e=>{const s=Q(e),[o,r]=ie(s);return[(u=o,!(0==(e=>e.length)(u))),Ie(s),r,k(r,(e=>s?.getCheckpoint(e)))??t];var u},exports.useValue=_,exports.useValueIds=$,exports.useValueIdsListener=(e,s,t,o)=>z(b,q(o),e,s,[],t),exports.useValueListener=(e,s,t,o,r)=>z(C,q(r),s,t,[e],o),exports.useValues=e=>U(w,q(e),{}),exports.useValuesListener=(e,s,t,o)=>z(w,q(o),e,s,[],t);
Binary file
@@ -0,0 +1 @@
1
+ "use strict";const e=(e,t)=>e.map(t),t=(e,...t)=>e.push(...t),n=Promise,o=setInterval,l=clearInterval,r=e=>null==e,u=(e,t,n)=>r(e)?null==n?void 0:n():t(e),i=e=>new n(e),c=e=>{return t=function*(){return n.all(e)},new Promise(((e,n)=>{var o=e=>{try{r(t.next(e))}catch(e){n(e)}},l=e=>{try{r(t.throw(e))}catch(e){n(e)}},r=t=>t.done?e(t.value):Promise.resolve(t.value).then(o,l);r((t=t.apply(void 0,null)).next())}));var t},d=Object,s=d.keys,a=d.freeze,v=e=>(e=>e instanceof d&&e.constructor==d)(e)&&0==(e=>s(e).length)(e),y=e=>new Map(e),f=(e,t)=>null==e?void 0:e.get(t),h=(e,t,n)=>{return r(n)?(l=t,null==(o=e)||o.delete(l),e):null==e?void 0:e.set(t,n);var o,l},p=(e,t,n)=>{var o,l,r;return l=t,null!=(r=null==(o=e)?void 0:o.has(l))&&r||h(e,t,n()),f(e,t)};var w=(e,t,n)=>new Promise(((o,l)=>{var r=e=>{try{i(n.next(e))}catch(e){l(e)}},u=e=>{try{i(n.throw(e))}catch(e){l(e)}},i=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,u);i((n=n.apply(e,t)).next())}));const x=y(),g=y();var A=(e,t,n)=>new Promise(((o,l)=>{var r=e=>{try{i(n.next(e))}catch(e){l(e)}},u=e=>{try{i(n.throw(e))}catch(e){l(e)}},i=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,u);i((n=n.apply(e,t)).next())}));const S=globalThis.window,m=["t","v"],P={keyPath:"k"},b=(n,o)=>A(void 0,null,(function*(){const l=((t,o)=>e(d.entries(t),(([e,t])=>L(n,"put",{k:e,v:t}))))(o);e(yield L(n,"getAllKeys"),(e=>((e,t)=>!r(((e,t)=>u(e,(e=>e[t])))(e,t)))(o,e)?0:t(l,L(n,"delete",e)))),yield c(l)})),L=(e,t,n)=>A(void 0,null,(function*(){return i(((o,l)=>{const r=e[t](n);r.onsuccess=()=>o(r.result),r.onerror=()=>l(`objectStore.${t} error`)}))}));exports.createIndexedDbPersister=(n,s,y=1,j)=>{const k=(t,...n)=>A(void 0,[t,...n],(function*(t,n=[],o=0){return i(((l,r)=>{const u=S.indexedDB.open(s,1);u.onupgradeneeded=()=>o&&e(m,(e=>u.result.createObjectStore(e,P))),u.onsuccess=()=>A(void 0,null,(function*(){try{const o=u.result.transaction(m,"readwrite"),r=yield c(e(m,((e,l)=>A(void 0,null,(function*(){return yield t(o.objectStore(e),n[l])})))));u.result.close(),l(r)}catch(e){r(e)}})),u.onerror=()=>r("indexedDB.open error")}))}));return((e,n,o,l,i,c,d=[])=>{let s,y,A,S=0,m=0;p(x,d,(()=>0)),p(g,d,(()=>[]));const P=e=>w(void 0,null,(function*(){return 2!=S&&(S=1,yield b.schedule((()=>w(void 0,null,(function*(){yield e(),S=0}))))),b})),b={load:(t,o)=>w(void 0,null,(function*(){return yield P((()=>w(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([t,o])}}))))})),startAutoLoad:(...t)=>w(void 0,[...t],(function*(t={},o={}){return b.stopAutoLoad(),yield b.load(t,o),m=1,A=l(((t,o)=>w(void 0,null,(function*(){if(o){const t=o();yield P((()=>w(void 0,null,(function*(){return e.setTransactionChanges(t)}))))}else yield P((()=>w(void 0,null,(function*(){var o;try{e.setContent(null!=(o=null==t?void 0:t())?o:yield n())}catch(e){null==c||c(e)}}))))})))),b})),stopAutoLoad:()=>(m&&(i(A),A=void 0,m=0),b),save:t=>w(void 0,null,(function*(){return 1!=S&&(S=2,yield b.schedule((()=>w(void 0,null,(function*(){try{yield o(e.getContent,t)}catch(e){null==c||c(e)}S=0}))))),b})),startAutoSave:()=>w(void 0,null,(function*(){return yield b.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();v(n)&&v(o)||b.save((()=>[n,o]))})),b})),stopAutoSave:()=>(u(s,e.delListener),b),schedule:(...e)=>w(void 0,null,(function*(){return t(f(g,d),...e),yield w(void 0,null,(function*(){if(!f(x,d)){for(h(x,d,1);!r((e=f(g,d),y=e.shift()));)try{yield y()}catch(e){null==c||c(e)}h(x,d,0)}var e})),b})),getStore:()=>e,destroy:()=>b.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return a(b)})(n,(()=>A(void 0,null,(function*(){return yield k((t=>A(void 0,null,(function*(){return((e=[])=>d.fromEntries(e))(e(yield L(t,"getAll"),(({k:e,v:t})=>[e,t])))}))))}))),(e=>A(void 0,null,(function*(){return yield k(((e,t)=>A(void 0,null,(function*(){return yield b(e,t)}))),e(),1)}))),(e=>o(e,1e3*y)),(e=>l(e)),j)},exports.objectStoreMatch=b;
@@ -1 +1 @@
1
- "use strict";const t=setInterval,e=clearInterval,n=(t,e)=>t instanceof e,o=t=>null==t,l=Object,r=l.keys,i=l.freeze,u=t=>(t=>n(t,l)&&t.constructor==l)(t)&&0==(t=>r(t).length)(t),a=JSON.parse,d=t=>new Map(t),s=(t,e)=>null==t?void 0:t.get(e),c=(t,e,n)=>{return o(n)?(r=e,null==(l=t)||l.delete(r),t):null==t?void 0:t.set(e,n);var l,r},v=(t,e,n)=>{var o,l,r;return l=e,null!=(r=null==(o=t)?void 0:o.has(l))&&r||c(t,e,n()),s(t,e)};var y=(t,e,n)=>new Promise(((o,l)=>{var r=t=>{try{u(n.next(t))}catch(t){l(t)}},i=t=>{try{u(n.throw(t))}catch(t){l(t)}},u=t=>t.done?o(t.value):Promise.resolve(t.value).then(r,i);u((n=n.apply(t,e)).next())}));const h=d(),f=d();var p=(t,e,n)=>new Promise(((o,l)=>{var r=t=>{try{u(n.next(t))}catch(t){l(t)}},i=t=>{try{u(n.throw(t))}catch(t){l(t)}},u=t=>t.done?o(t.value):Promise.resolve(t.value).then(r,i);u((n=n.apply(t,e)).next())}));const g=t=>t.headers.get("ETag");exports.createRemotePersister=(r,d,A,S,m)=>{let x;return((t,e,n,l,r,a,d=[])=>{let p,g,A,S=0,m=0;v(h,d,(()=>0)),v(f,d,(()=>[]));const x=t=>y(void 0,null,(function*(){return 2!=S&&(S=1,yield C.schedule((()=>y(void 0,null,(function*(){yield t(),S=0}))))),C})),C={load:(n,o)=>y(void 0,null,(function*(){return yield x((()=>y(void 0,null,(function*(){try{t.setContent(yield e())}catch(e){t.setContent([n,o])}}))))})),startAutoLoad:(...n)=>y(void 0,[...n],(function*(n={},o={}){return C.stopAutoLoad(),yield C.load(n,o),m=1,A=l(((n,o)=>y(void 0,null,(function*(){if(o){const e=o();yield x((()=>y(void 0,null,(function*(){return t.setTransactionChanges(e)}))))}else yield x((()=>y(void 0,null,(function*(){var o;try{t.setContent(null!=(o=null==n?void 0:n())?o:yield e())}catch(t){null==a||a(t)}}))))})))),C})),stopAutoLoad:()=>(m&&(r(A),A=void 0,m=0),C),save:e=>y(void 0,null,(function*(){return 1!=S&&(S=2,yield C.schedule((()=>y(void 0,null,(function*(){try{yield n(t.getContent,e)}catch(t){null==a||a(t)}S=0}))))),C})),startAutoSave:()=>y(void 0,null,(function*(){return yield C.stopAutoSave().save(),p=t.addDidFinishTransactionListener(((t,e)=>{const[n,o]=e();u(n)&&u(o)||C.save((()=>[n,o]))})),C})),stopAutoSave:()=>{var e,n;return e=p,n=t.delListener,!!o(e)||n(e),C},schedule:(...t)=>y(void 0,null,(function*(){return((t,...e)=>{t.push(...e)})(s(f,d),...t),yield y(void 0,null,(function*(){if(!s(h,d)){for(c(h,d,1);!o((t=s(f,d),g=t.shift()));)try{yield g()}catch(t){null==a||a(t)}c(h,d,0)}var t})),C})),getStore:()=>t,destroy:()=>C.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i(C)})(r,(()=>p(void 0,null,(function*(){const t=yield fetch(d);return x=g(t),a(yield t.text())}))),(t=>p(void 0,null,(function*(){return yield fetch(A,{method:"POST",headers:{"Content-Type":"application/json"},body:(e=t(),JSON.stringify(e,((t,e)=>n(e,Map)?l.fromEntries([...e]):e)))});var e}))),(e=>t((()=>p(void 0,null,(function*(){const t=yield fetch(d,{method:"HEAD"}),n=g(t);o(x)||o(n)||n==x||(x=n,e())}))),1e3*S)),(t=>e(t)),m)};
1
+ "use strict";const t=setInterval,e=clearInterval,n=(t,e)=>t instanceof e,o=t=>null==t,l=Object,r=l.keys,i=l.freeze,u=t=>(t=>n(t,l)&&t.constructor==l)(t)&&0==(t=>r(t).length)(t),a=JSON.parse,d=t=>new Map(t),s=(t,e)=>null==t?void 0:t.get(e),c=(t,e,n)=>{return o(n)?(r=e,null==(l=t)||l.delete(r),t):null==t?void 0:t.set(e,n);var l,r},v=(t,e,n)=>{var o,l,r;return l=e,null!=(r=null==(o=t)?void 0:o.has(l))&&r||c(t,e,n()),s(t,e)};var y=(t,e,n)=>new Promise(((o,l)=>{var r=t=>{try{u(n.next(t))}catch(t){l(t)}},i=t=>{try{u(n.throw(t))}catch(t){l(t)}},u=t=>t.done?o(t.value):Promise.resolve(t.value).then(r,i);u((n=n.apply(t,e)).next())}));const h=d(),f=d();var p=(t,e,n)=>new Promise(((o,l)=>{var r=t=>{try{u(n.next(t))}catch(t){l(t)}},i=t=>{try{u(n.throw(t))}catch(t){l(t)}},u=t=>t.done?o(t.value):Promise.resolve(t.value).then(r,i);u((n=n.apply(t,e)).next())}));const g=t=>t.headers.get("ETag");exports.createRemotePersister=(r,d,A,S=5,m)=>{let x;return((t,e,n,l,r,a,d=[])=>{let p,g,A,S=0,m=0;v(h,d,(()=>0)),v(f,d,(()=>[]));const x=t=>y(void 0,null,(function*(){return 2!=S&&(S=1,yield C.schedule((()=>y(void 0,null,(function*(){yield t(),S=0}))))),C})),C={load:(n,o)=>y(void 0,null,(function*(){return yield x((()=>y(void 0,null,(function*(){try{t.setContent(yield e())}catch(e){t.setContent([n,o])}}))))})),startAutoLoad:(...n)=>y(void 0,[...n],(function*(n={},o={}){return C.stopAutoLoad(),yield C.load(n,o),m=1,A=l(((n,o)=>y(void 0,null,(function*(){if(o){const e=o();yield x((()=>y(void 0,null,(function*(){return t.setTransactionChanges(e)}))))}else yield x((()=>y(void 0,null,(function*(){var o;try{t.setContent(null!=(o=null==n?void 0:n())?o:yield e())}catch(t){null==a||a(t)}}))))})))),C})),stopAutoLoad:()=>(m&&(r(A),A=void 0,m=0),C),save:e=>y(void 0,null,(function*(){return 1!=S&&(S=2,yield C.schedule((()=>y(void 0,null,(function*(){try{yield n(t.getContent,e)}catch(t){null==a||a(t)}S=0}))))),C})),startAutoSave:()=>y(void 0,null,(function*(){return yield C.stopAutoSave().save(),p=t.addDidFinishTransactionListener(((t,e)=>{const[n,o]=e();u(n)&&u(o)||C.save((()=>[n,o]))})),C})),stopAutoSave:()=>{var e,n;return e=p,n=t.delListener,!!o(e)||n(e),C},schedule:(...t)=>y(void 0,null,(function*(){return((t,...e)=>{t.push(...e)})(s(f,d),...t),yield y(void 0,null,(function*(){if(!s(h,d)){for(c(h,d,1);!o((t=s(f,d),g=t.shift()));)try{yield g()}catch(t){null==a||a(t)}c(h,d,0)}var t})),C})),getStore:()=>t,destroy:()=>C.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i(C)})(r,(()=>p(void 0,null,(function*(){const t=yield fetch(d);return x=g(t),a(yield t.text())}))),(t=>p(void 0,null,(function*(){return yield fetch(A,{method:"POST",headers:{"Content-Type":"application/json"},body:(e=t(),JSON.stringify(e,((t,e)=>n(e,Map)?l.fromEntries([...e]):e)))});var e}))),(e=>t((()=>p(void 0,null,(function*(){const t=yield fetch(d,{method:"HEAD"}),n=g(t);o(x)||o(n)||n==x||(x=n,e())}))),1e3*S)),(t=>e(t)),m)};