tinybase 8.2.0-beta.0 → 8.2.0-beta.2

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 (60) hide show
  1. package/@types/persisters/index.d.ts +1 -1
  2. package/@types/persisters/persister-durable-object-sql-storage/index.d.ts +6 -6
  3. package/@types/persisters/persister-durable-object-sql-storage/with-schemas/index.d.ts +6 -6
  4. package/@types/persisters/persister-durable-object-storage/index.d.ts +2 -2
  5. package/@types/persisters/persister-durable-object-storage/with-schemas/index.d.ts +2 -2
  6. package/@types/persisters/persister-electric-sql/index.d.ts +3 -3
  7. package/@types/persisters/persister-electric-sql/with-schemas/index.d.ts +3 -3
  8. package/@types/persisters/persister-expo-sqlite/index.d.ts +3 -3
  9. package/@types/persisters/persister-expo-sqlite/with-schemas/index.d.ts +3 -3
  10. package/@types/persisters/persister-file/index.d.ts +1 -1
  11. package/@types/persisters/persister-file/with-schemas/index.d.ts +1 -1
  12. package/@types/persisters/persister-libsql/index.d.ts +3 -3
  13. package/@types/persisters/persister-libsql/with-schemas/index.d.ts +3 -3
  14. package/@types/persisters/persister-partykit-client/index.d.ts +2 -2
  15. package/@types/persisters/persister-partykit-client/with-schemas/index.d.ts +2 -2
  16. package/@types/persisters/persister-powersync/index.d.ts +3 -3
  17. package/@types/persisters/persister-powersync/with-schemas/index.d.ts +3 -3
  18. package/@types/persisters/persister-react-native-mmkv/index.d.ts +2 -2
  19. package/@types/persisters/persister-react-native-mmkv/with-schemas/index.d.ts +2 -2
  20. package/@types/persisters/persister-react-native-sqlite/index.d.ts +3 -3
  21. package/@types/persisters/persister-react-native-sqlite/with-schemas/index.d.ts +3 -3
  22. package/@types/persisters/persister-remote/index.d.ts +1 -1
  23. package/@types/persisters/persister-remote/with-schemas/index.d.ts +1 -1
  24. package/@types/persisters/with-schemas/index.d.ts +1 -1
  25. package/@types/synchronizers/synchronizer-ws-server-durable-object/index.d.ts +7 -7
  26. package/@types/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.d.ts +7 -7
  27. package/@types/ui-react/index.d.ts +3 -3
  28. package/@types/ui-react/with-schemas/index.d.ts +3 -3
  29. package/@types/ui-react-dom/index.d.ts +52 -13
  30. package/@types/ui-react-dom/with-schemas/index.d.ts +52 -13
  31. package/@types/ui-react-inspector/index.d.ts +7 -4
  32. package/@types/ui-react-inspector/with-schemas/index.d.ts +7 -4
  33. package/@types/ui-svelte-dom/index.d.ts +2139 -0
  34. package/@types/ui-svelte-dom/with-schemas/index.d.ts +2186 -0
  35. package/@types/ui-svelte-inspector/index.d.ts +73 -0
  36. package/@types/ui-svelte-inspector/with-schemas/index.d.ts +73 -0
  37. package/agents.md +23 -12
  38. package/min/ui-react-inspector/index.js +1 -1
  39. package/min/ui-react-inspector/index.js.gz +0 -0
  40. package/min/ui-react-inspector/with-schemas/index.js +1 -1
  41. package/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  42. package/min/ui-svelte-dom/index.js +1 -0
  43. package/min/ui-svelte-dom/index.js.gz +0 -0
  44. package/min/ui-svelte-dom/with-schemas/index.js +1 -0
  45. package/min/ui-svelte-dom/with-schemas/index.js.gz +0 -0
  46. package/min/ui-svelte-inspector/index.js +1 -0
  47. package/min/ui-svelte-inspector/index.js.gz +0 -0
  48. package/min/ui-svelte-inspector/with-schemas/index.js +1 -0
  49. package/min/ui-svelte-inspector/with-schemas/index.js.gz +0 -0
  50. package/package.json +85 -13
  51. package/readme.md +14 -14
  52. package/releases.md +101 -67
  53. package/ui-react-inspector/index.js +4676 -4657
  54. package/ui-react-inspector/with-schemas/index.js +4676 -4657
  55. package/ui-svelte/index.js +1 -1
  56. package/ui-svelte/with-schemas/index.js +1 -1
  57. package/ui-svelte-dom/index.js +2441 -0
  58. package/ui-svelte-dom/with-schemas/index.js +2441 -0
  59. package/ui-svelte-inspector/index.js +7680 -0
  60. package/ui-svelte-inspector/with-schemas/index.js +7680 -0
@@ -0,0 +1,73 @@
1
+ /**
2
+ * The ui-svelte-inspector module of the TinyBase project provides a component
3
+ * to help debug the state of your TinyBase stores and other objects.
4
+ *
5
+ * The component in this module uses the Svelte DOM runtime and so is not
6
+ * appropriate for non-DOM environments.
7
+ * @see <Inspector /> (Svelte) demo
8
+ * @packageDocumentation
9
+ * @module ui-svelte-inspector
10
+ * @since v8.2.0
11
+ */
12
+ import type {Component} from 'svelte';
13
+
14
+ /**
15
+ * InspectorProps props are used to configure the Inspector component.
16
+ * @category Props
17
+ * @since v8.2.0
18
+ */
19
+ export type InspectorProps = {
20
+ /**
21
+ * An optional string to indicate where you want the inspector to first
22
+ * appear.
23
+ * @category Prop
24
+ * @since v8.2.0
25
+ */
26
+ readonly position?: 'top' | 'right' | 'bottom' | 'left' | 'full';
27
+ /**
28
+ * An optional boolean to indicate whether the inspector should start in the
29
+ * opened state.
30
+ * @category Prop
31
+ * @since v8.2.0
32
+ */
33
+ readonly open?: boolean;
34
+ /**
35
+ * An optional number to indicate the hue of the inspector's UI, defaulting to
36
+ * 270.
37
+ * @category Prop
38
+ * @since v8.2.0
39
+ */
40
+ readonly hue?: number;
41
+ };
42
+
43
+ /**
44
+ * The Inspector component renders a tool which allows you to view and edit the
45
+ * content of a Store in a debug web environment.
46
+ *
47
+ * See the <Inspector /> (Svelte) demo for this component in action:
48
+ *
49
+ * ![Inspector example](/shots/inspector-svelte-demo.png
50
+ * "Inspector example")
51
+ *
52
+ * The component displays a nub in the corner of the screen which you may then
53
+ * click to interact with all the Store objects in the Provider component
54
+ * context.
55
+ *
56
+ * The component's props identify the nub's initial location and panel state,
57
+ * though subsequent user changes to that will be preserved on each reload.
58
+ * @param props The props for this component.
59
+ * @returns The rendering of the inspector tool.
60
+ * @example
61
+ * This example imports the Inspector component from the module.
62
+ *
63
+ * ```js
64
+ * import {Inspector} from 'tinybase/ui-svelte-inspector';
65
+ *
66
+ * console.log(typeof Inspector);
67
+ * // -> 'function'
68
+ * ```
69
+ * @category Development components
70
+ * @essential Using Svelte
71
+ * @since v8.2.0
72
+ */
73
+ export const Inspector: Component<InspectorProps>;
@@ -0,0 +1,73 @@
1
+ /**
2
+ * The ui-svelte-inspector module of the TinyBase project provides a component
3
+ * to help debug the state of your TinyBase stores and other objects.
4
+ *
5
+ * The component in this module uses the Svelte DOM runtime and so is not
6
+ * appropriate for non-DOM environments.
7
+ * @see <Inspector /> (Svelte) demo
8
+ * @packageDocumentation
9
+ * @module ui-svelte-inspector
10
+ * @since v8.2.0
11
+ */
12
+ import type {Component} from 'svelte';
13
+
14
+ /**
15
+ * InspectorProps props are used to configure the Inspector component.
16
+ * @category Props
17
+ * @since v8.2.0
18
+ */
19
+ export type InspectorProps = {
20
+ /**
21
+ * An optional string to indicate where you want the inspector to first
22
+ * appear.
23
+ * @category Prop
24
+ * @since v8.2.0
25
+ */
26
+ readonly position?: 'top' | 'right' | 'bottom' | 'left' | 'full';
27
+ /**
28
+ * An optional boolean to indicate whether the inspector should start in the
29
+ * opened state.
30
+ * @category Prop
31
+ * @since v8.2.0
32
+ */
33
+ readonly open?: boolean;
34
+ /**
35
+ * An optional number to indicate the hue of the inspector's UI, defaulting to
36
+ * 270.
37
+ * @category Prop
38
+ * @since v8.2.0
39
+ */
40
+ readonly hue?: number;
41
+ };
42
+
43
+ /**
44
+ * The Inspector component renders a tool which allows you to view and edit the
45
+ * content of a Store in a debug web environment.
46
+ *
47
+ * See the <Inspector /> (Svelte) demo for this component in action:
48
+ *
49
+ * ![Inspector example](/shots/inspector-svelte-demo.png
50
+ * "Inspector example")
51
+ *
52
+ * The component displays a nub in the corner of the screen which you may then
53
+ * click to interact with all the Store objects in the Provider component
54
+ * context.
55
+ *
56
+ * The component's props identify the nub's initial location and panel state,
57
+ * though subsequent user changes to that will be preserved on each reload.
58
+ * @param props The props for this component.
59
+ * @returns The rendering of the inspector tool.
60
+ * @example
61
+ * This example imports the Inspector component from the module.
62
+ *
63
+ * ```js
64
+ * import {Inspector} from 'tinybase/ui-svelte-inspector';
65
+ *
66
+ * console.log(typeof Inspector);
67
+ * // -> 'function'
68
+ * ```
69
+ * @category Development components
70
+ * @essential Using Svelte
71
+ * @since v8.2.0
72
+ */
73
+ export const Inspector: Component<InspectorProps>;
package/agents.md CHANGED
@@ -84,15 +84,18 @@ Synchronizers enable real-time data sync:
84
84
  - Local (in-memory for testing)
85
85
  - Custom transports (extensible)
86
86
 
87
- ### React Integration
87
+ ### UI Integration
88
88
 
89
- Optional `ui-react` module provides:
89
+ Optional UI modules provide:
90
90
 
91
- - **Hooks**: `useCell`, `useRow`, `useTable`, `useTables`, `useValue`, etc.
92
- - **Components**: Pre-built reactive views for data rendering
93
- - **Context**: Multi-store support with ID-based contexts
94
- - **DOM Components**: `ui-react-dom` with interactive tables
95
- - **Inspector**: Developer tools overlay for debugging
91
+ - **React Hooks & Components**: `ui-react` with hooks like `useCell`,
92
+ `useRow`, `useTable`, `useTables`, `useValue`, and component/context support
93
+ - **React DOM Components**: `ui-react-dom` with interactive tables
94
+ - **React Inspector**: `ui-react-inspector` for debugging and editing data
95
+ - **Svelte Reactivity & Components**: `ui-svelte` with reactive functions,
96
+ components, and context support
97
+ - **Svelte DOM Components**: `ui-svelte-dom` with interactive tables
98
+ - **Svelte Inspector**: `ui-svelte-inspector` for debugging and editing data
96
99
 
97
100
  ## Architecture
98
101
 
@@ -114,6 +117,9 @@ tinybase/synchronizers/synchronizer-* # Sync transports
114
117
  tinybase/ui-react # React hooks
115
118
  tinybase/ui-react-dom # React DOM components
116
119
  tinybase/ui-react-inspector # DevTools
120
+ tinybase/ui-svelte # Svelte reactivity & components
121
+ tinybase/ui-svelte-dom # Svelte DOM components
122
+ tinybase/ui-svelte-inspector # DevTools
117
123
  ```
118
124
 
119
125
  ### Type System
@@ -194,6 +200,9 @@ tinybase/
194
200
  │ ├── ui-react/ # React hooks
195
201
  │ ├── ui-react-dom/ # React DOM components
196
202
  │ ├── ui-react-inspector/ # DevTools
203
+ │ ├── ui-svelte/ # Svelte reactivity & components
204
+ │ ├── ui-svelte-dom/ # Svelte DOM components
205
+ │ ├── ui-svelte-inspector/ # DevTools
197
206
  │ └── common/ # Shared utilities
198
207
  ├── test/ # Tests
199
208
  │ ├── unit/ # Unit tests
@@ -300,9 +309,13 @@ from source code and markdown files.
300
309
  source files for guides on the website.
301
310
 
302
311
  4. **Generated Files**: `/releases.md` and `/readme.md` in the root are
303
- **GENERATED** from `/site/guides/17_releases.md` and `/site/home/index.md`.
312
+ **GENERATED** from `/site/guides/18_releases.md` and `/site/home/index.md`.
304
313
  **Never edit the generated files directly**.
305
314
 
315
+ 5. **Guide Redirects**: To preserve old guide URLs, leave a markdown stub at the
316
+ old path whose summary is just `-> /new-url`. The site generator hides these
317
+ from navigation and renders them as meta-refresh redirect pages.
318
+
306
319
  ### Documentation Testing
307
320
 
308
321
  TinyBase has automated tests that validate all inline code examples in
@@ -352,7 +365,7 @@ npx vitest run ./test/unit/documentation.test.ts --retry=0
352
365
 
353
366
  1. **API Documentation**: Edit `docs.js` file next to the type definition
354
367
  2. **Guide Content**: Edit markdown files in `/site/guides/`
355
- 3. **Release Notes**: Edit `/site/guides/17_releases.md` (not `/releases.md`)
368
+ 3. **Release Notes**: Edit `/site/guides/18_releases.md` (not `/releases.md`)
356
369
  4. **Always run documentation tests** after changes to verify examples work
357
370
 
358
371
  ## Creating New Schematizers
@@ -485,7 +498,7 @@ All code examples in a guide file are concatenated and executed as a test:
485
498
 
486
499
  When adding a new feature:
487
500
 
488
- 1. **Update `/site/guides/17_releases.md`** (NOT `/releases.md`):
501
+ 1. **Update `/site/guides/18_releases.md`** (NOT `/releases.md`):
489
502
  - Add new version section at the top
490
503
  - Include working code example that will be tested
491
504
  - Link to relevant guide if applicable
@@ -539,5 +552,3 @@ At the end of each major project or task, add any new **general** learnings to
539
552
  this file. This ensures future agents benefit from discoveries about the
540
553
  codebase, build system, testing patterns, or documentation conventions. Only add
541
554
  broadly applicable insights — not project-specific implementation details.
542
-
543
-
@@ -1 +1 @@
1
- import{jsx as e,jsxs as t,Fragment as n}from"react/jsx-runtime";import{useCell as l,useValue as s,useSetValueCallback as r,CellView as o,ResultCellView as a,ValueView as i,useSetCellCallback as d,useIndexes as c,useIndexIds as u,useSliceIds as h,useMetrics as m,useMetricIds as b,useMetric as p,useQueries as g,useQueryIds as v,useRelationships as I,useRelationshipIds as f,useTableIds as C,useTableCellIds as w,useHasCell as y,useValueIds as T,useStore as q,useValues as x,useStoreIds as k,useMetricsIds as D,useIndexesIds as S,useRelationshipsIds as Z,useQueriesIds as M,useCreateStore as N,useCreatePersister as L}from"../ui-react/index.js";import V from"react";const E=e=>typeof e,R="",A=E(R),$=E(!0),H=E(0),z=E(E),P="object",J="array",O="type",_="default",j="allowNull",B="Listener",F="Result",W="Has",Q="Ids",K="Table",G=K+"s",U=K+Q,X="Row",Y=X+"Count",ee=X+Q,te="Sorted"+X+Q,ne="Cell",le=ne+Q,se="Value",re=se+"s",oe=se+Q,ae="currentTarget",ie="value",de="extra",ce=e=>R+e,ue=e=>(t,n,l)=>e(t)?l?.():n(t),he=globalThis,me=he.window,be=Math,pe=be.min,ge=be.floor,ve=isFinite,Ie=e=>null==e,fe=e=>void 0===e,Ce=e=>null===e,we=e=>!1===e,ye=ue(Ie),Te=ue(fe),qe=e=>e==A||e==$,xe=e=>E(e)==A,ke=e=>E(e)==z,De=e=>Array.isArray(e),Se=(e,t,n)=>e.slice(t,n),Ze=e=>e.length,Me=()=>{},Ne=e=>e,Le=he.structuredClone,Ve=e=>{throw Error(e)},Ee=(e,t)=>{try{return e()}catch{return t}},Re=async(e,t,n)=>{try{return await e()}catch(e){t?.(e)}},Ae=(e,t)=>e.every(t),$e=(e,t)=>Ze(e)===Ze(t)&&Ae(e,(e,n)=>t[n]===e),He=(e,t)=>De(e)&&De(t)?$e(e,t):e===t,ze=(e,t)=>e.sort(t),Pe=(e,t)=>e.forEach(t),Je=(e,t="")=>e.join(t),Oe=(e,t)=>e.map(t),_e=e=>0==Ze(e),je=(e,...t)=>e.push(...t),Be=e=>e.shift(),Fe=Object,We=e=>Fe.getPrototypeOf(e),Qe=Fe.isFrozen,Ke=Fe.entries,Ge=e=>!Ie(e)&&ye(We(e),e=>e==Fe.prototype||Ie(We(e)),()=>!0),Ue=Fe.keys,Xe=Fe.freeze,Ye=(e=[])=>Fe.fromEntries(e),et=(e,t)=>t in e,tt=(e,t)=>(delete e[t],e),nt=(e,t)=>Oe(Ke(e),([e,n])=>t(n,e)),lt=(e,t)=>Ye(nt(e,(e,n)=>[n,t(e,n)])),st=e=>Ze(Ue(e)),rt=e=>Ge(e)&&0==st(e),ot=(e,t,n=(e,t)=>e===t)=>{const l=Ke(e);return Ze(l)===st(t)&&Ae(l,([e,l])=>Ge(l)?!!Ge(t[e])&&ot(t[e],l,n):n(l,t[e]))},at=(e,t,n,l=0)=>Ie(e)||!Ge(e)||!l&&rt(e)||Qe(e)?(n?.(),!1):(((e,t)=>{Pe(Ke(e),([e,n])=>t(n,e))})(e,(n,l)=>{t(n,l)||tt(e,l)}),!!l||!rt(e)),it=JSON.stringify,dt=JSON.parse,ct=e=>it(e,(e,t)=>t instanceof Map?Fe.fromEntries([...t]):t),ut=e=>ht(dt(e)),ht=e=>""===e?void 0:De(e)?Oe(e,ht):Ge(e)?lt(e,ht):e,mt=e=>t=>{return n=(t,n)=>t+e(n),Ct(t).reduce(n,0);var n},bt=e=>e?.size??0,pt=mt(bt),gt=mt(pt),vt=mt(gt),It=(e,t)=>e?.has(t)??!1,ft=e=>fe(e)||0==bt(e),Ct=e=>[...e?.values()??[]],wt=e=>e.clear(),yt=(e,t)=>e?.forEach(t),Tt=(e,t)=>e?.delete(t),qt=Map,xt=e=>new qt(e),kt=e=>[...e?.keys()??[]],Dt=(e,t)=>e?.get(t),St=(e,t)=>yt(e,(e,n)=>t(n,e)),Zt=(e,t,n)=>fe(n)?(Tt(e,t),e):e?.set(t,n),Mt=(e,t,n,l)=>(It(e,t)?l?.(Dt(e,t)):Zt(e,t,n()),Dt(e,t)),Nt=(e,t,n,l=Zt)=>(lt(t,(t,l)=>n(e,l,t)),St(e,n=>et(t,n)?0:l(e,n)),e),Lt=(e,t,n,l)=>{const s={};return yt(e,(e,r)=>{if(!n?.(e,r)){const n=t?t(e,r):e;l?.(n)||(s[r]=n)}}),s},Vt=(e,t,n)=>Lt(e,e=>Lt(e,t,n),ft,rt),Et=(e,t,n)=>Lt(e,e=>Vt(e,t,n),ft,rt),Rt=(e,t)=>{const n=xt();return yt(e,(e,l)=>n.set(l,t?.(e)??e)),n},At=e=>Rt(e,Rt),$t=e=>Rt(e,At),Ht=(e,t,n,l,s=0)=>Te((n?Mt:Dt)(e,t[s],s>Ze(t)-2?n:xt),r=>{if(s>Ze(t)-2)return l?.(r)&&Zt(e,t[s]),r;const o=Ht(r,t,n,l,s+1);return ft(r)&&Zt(e,t[s]),o}),zt=/^\d+$/,Pt=()=>{const e=[];let t=0;return[n=>(n?Be(e):null)??R+t++,t=>{zt.test(t)&&Ze(e)<1e3&&je(e,t)}]},Jt=e=>new Set(De(e)||fe(e)?e:[e]),Ot=(e,t)=>e?.add(t),_t=e=>{let t;const[n,l]=Pt(),s=xt();return[(l,r,o,a=[],i=()=>[])=>{t??=e();const d=n(1);return Zt(s,d,[l,r,o,a,i]),Ot(Ht(r,o??[R],Jt),d),d},(e,n,...l)=>Pe(((e,t=[R])=>{const n=[],l=(e,s)=>s==Ze(t)?je(n,e):Ce(t[s])?yt(e,e=>l(e,s+1)):Pe([t[s],null],t=>l(Dt(e,t),s+1));return l(e,0),n})(e,n),e=>yt(e,e=>Dt(s,e)[0](t,...n??[],...l))),e=>Te(Dt(s,e),([,t,n])=>(Ht(t,n??[R],void 0,t=>(Tt(t,e),ft(t)?1:0)),Zt(s,e),l(e),n)),e=>Te(Dt(s,e),([e,,n=[],l,s])=>{const r=(...o)=>{const a=Ze(o);a==Ze(n)?e(t,...o,...s(o)):Ce(n[a])?Pe(l[a]?.(...o)??[],e=>r(...o,e)):r(...o,n[a])};r()})]},jt=xt(),Bt=xt(),Ft="storage",Wt=e=>{if(Ce(e))return"null";if(De(e))return J;if(Ge(e))return P;const t=E(e);return qe(t)||t==H&&ve(e)?t:void 0},Qt=e=>e==P||e==J,Kt=e=>Ge(e)||De(e)?"�"+it(e):e,Gt=e=>xe(e)&&"�"==e[0],Ut=(e,t,n)=>!n&&Gt(e)?dt(Se(e,1)):e,Xt=(e,t,n,l,s,r)=>e==A?t:e==H?n:e==$?l:e==P?s:e==J?r:null,Yt=e=>[e,e],en=(e,t=pt)=>t(e[0])+t(e[1]),tn=()=>[xt(),xt()],nn=e=>[...e],ln=([e,t])=>e===t,sn=(e,t,n)=>Zt(e,t,Dt(e,t)==-n?void 0:n),rn=([e,t],[n,l])=>ot(e,n)&&ot(t,l),on=()=>{let e,t,n=!1,l=!1,s=0,r=[],o=[],a=0;const i=xt(),d=xt(),c=xt(),u=xt(),h=xt(),m=xt(),b=xt(),p=xt(),g=xt(),v=xt(),I=xt(),f=xt(),C=xt(),w=xt(),y=Jt(),T=xt(),q=xt(),x=xt(),k=xt(),D=tn(),S=tn(),Z=tn(),M=tn(),N=tn(),L=tn(),V=tn(),E=tn(),R=tn(),A=tn(),$=tn(),z=tn(),P=tn(),J=tn(),F=tn(),Q=tn(),te=tn(),ae=tn(),ie=tn(),de=tn(),ue=tn(),he=tn(),me=xt(),be=tn(),[pe,ge,ve,Ie]=_t(()=>sl),we=e=>{const t=a;a=1;const n=e();return a=t,n},ye=(e,t,n,l=Object.is)=>Te(t(),t=>e===t||l(e,t)?n(t):we(()=>n(t))),xe=e=>{if(!at(e,(e,t)=>[O,_,j].includes(t)))return!1;const t=e[O];if(!qe(t)&&t!=H&&!Qt(t))return!1;const n=e[_];return!(Ce(n)&&!e[j]||(Ce(n)||(Wt(n)!=t?tt(e,_):e[_]=Kt(n)),0))},Ze=De,Me=(t,n)=>(!e||It(I,n)||cn(n))&&at(t,(e,t)=>Ne(n,t,e),()=>cn(n)),Ne=(e,t,n,l)=>at(l?n:He(n,e,t),(l,s)=>Te(Ve(e,t,s,l),e=>(n[s]=e,!0),()=>!1),()=>cn(e,t)),Ve=(t,n,l,s)=>e?Te(Dt(Dt(I,t),l),e=>Ce(s)?e[j]?s:cn(t,n,l,s,e[_]):Wt(s)===e[O]?Kt(s):Qt(e[O])&&Gt(s)?s:cn(t,n,l,s,e[_]),()=>cn(t,n,l,s)):fe(Wt(s))?cn(t,n,l,s):Kt(s),Ee=(e,t)=>at(t?e:Je(e),(t,n)=>Te(Ae(n,t),t=>(e[n]=t,!0),()=>!1),()=>un()),Ae=(e,n)=>t?Te(Dt(C,e),t=>Ce(n)?t[j]?n:un(e,n,t[_]):Wt(n)===t[O]?Kt(n):Qt(t[O])&&Gt(n)?n:un(e,n,t[_]),()=>un(e,n)):fe(Wt(n))?un(e,n):Kt(n),He=(e,t,n)=>(Te(Dt(f,t),([l,s])=>{yt(l,(t,n)=>{et(e,n)||(e[n]=t)}),yt(s,l=>{et(e,l)||cn(t,n,l)})}),e),Je=e=>(t&&(yt(w,(t,n)=>{et(e,n)||(e[n]=t)}),yt(y,t=>{et(e,t)||un(t)})),e),_e=e=>Nt(I,e,(e,t,n)=>{const l=xt(),s=Jt();Nt(Mt(I,t,xt),n,(e,t,n)=>{Zt(e,t,n),Te(n[_],e=>Zt(l,t,e),()=>Ot(s,t))}),Zt(f,t,[l,s])},(e,t)=>{Zt(I,t),Zt(f,t)}),Be=e=>Nt(C,e,(e,t,n)=>{Zt(C,t,n),Te(n[_],e=>Zt(w,t,e),()=>Ot(y,t))},(e,t)=>{Zt(C,t),Zt(w,t),Tt(y,t)}),Fe=e=>rt(e)?Wn():Pn(e),We=(e,t,n,l,s,r)=>fe(l)?Gn(e,t,n,!0,s):Jn(e,t,n,l,s,r),Qe=e=>rt(e)?Un():On(e),Ke=(e,t,n)=>fe(t)?Xn(e,n):_n(e,t,n),Ue=(e,t)=>ye(e,()=>t?e:Te(r[1],t=>we(()=>t(Le(e))),()=>e),e=>Nt(x,e,(e,t,n)=>Ye(t,n),(e,t)=>Ct(t)),ot),Ye=(e,t,n)=>ye(t,()=>n?t:Te(r[2],n=>we(()=>n(e,Le(t))),()=>t),t=>Nt(Mt(x,e,()=>(jt(e,1),Zt(T,e,Pt()),Zt(q,e,xt()),xt())),t,(t,n,l)=>nt(e,t,n,l),(t,n)=>qt(e,t,n)),ot),nt=(e,t,n,l,s)=>ye(l,()=>s?l:Te(r[3],t=>we(()=>t(e,n,Le(l))),()=>l),l=>Nt(Mt(t,n,()=>(Bt(e,n,1),xt())),l,(t,l,s)=>st(e,n,t,l,s),(l,r)=>Ht(e,t,n,l,r,s)),ot),st=(e,t,n,l,s,o)=>ye(s,()=>Te(o?void 0:r[4],n=>we(()=>n(e,t,l,s)),()=>s),s=>{It(n,l)||Ft(e,t,l,1);const r=Dt(n,l);s!==r&&(Xt(e,t,l,r,s),Zt(n,l,s))}),it=(e,t,n,l,s,r)=>Te(Dt(t,n),t=>st(e,n,t,l,s,r),()=>{const o=xt();Zt(t,n,o),Bt(e,n,1),lt(He({[l]:s},e,n),(t,l)=>st(e,n,o,l,t,r))}),ut=(e,t)=>ye(e,()=>t?e:Te(r[5],t=>we(()=>t(Le(e))),()=>e),e=>Nt(k,e,(e,t,n)=>ht(t,n),(e,t)=>zt(t)),ot),ht=(e,t,n)=>ye(t,()=>Te(n?void 0:r[6],n=>we(()=>n(e,t)),()=>t),t=>{It(k,e)||an(e,1);const n=Dt(k,e);t!==n&&(dn(e,n,t),Zt(k,e,t))}),mt=e=>Mt(x,e,()=>(jt(e,1),Zt(T,e,Pt()),Zt(q,e,xt()),xt())),Ct=e=>we(()=>r[8]?.(e))??1?Ye(e,{},!0):Dt(x,e),qt=(e,t,n)=>{if(we(()=>r[9]?.(e,n))??1){const[,l]=Dt(T,e);l(n),nt(e,t,n,{},!0)}},Ht=(e,t,n,l,s,o,a)=>{const i=Dt(Dt(f,e)?.[0],s);if(!fe(i)&&!o)return st(e,n,l,s,i);if(a||(we(()=>r[10]?.(e,n,s))??1)){const r=t=>{Xt(e,n,t,Dt(l,t)),Ft(e,n,t,-1),Zt(l,t)};fe(i)?r(s):St(l,r),ft(l)&&(Bt(e,n,-1),ft(Zt(t,n))&&(jt(e,-1),Zt(x,e),Zt(T,e),Zt(q,e)))}},zt=(e,t)=>{const n=Dt(w,e);if(!fe(n))return ht(e,n);(t||(we(()=>r[12]?.(e))??1))&&(dn(e,Dt(k,e)),an(e,-1),Zt(k,e))},jt=(e,t)=>sn(i,e,t),Bt=(e,t,n)=>sn(Mt(u,e,xt),t,n)&&Zt(c,e,Mt(c,e,()=>0)+n),Ft=(e,t,n,l)=>{const s=Dt(q,e),r=Dt(s,n)??0;(0==r&&1==l||1==r&&-1==l)&&sn(Mt(d,e,xt),n,l),Zt(s,n,r!=-l?r+l:void 0),sn(Mt(Mt(h,e,xt),t,xt),n,l)},Xt=(e,t,n,l,s)=>{Mt(Mt(Mt(m,e,xt),t,xt),n,()=>[l,0])[1]=s,o[3]?.(e,t,n,s,a)},an=(e,t)=>sn(b,e,t),dn=(e,t,n)=>{Mt(p,e,()=>[t,0])[1]=n,o[4]?.(e,n,a)},cn=(e,t,n,l,s)=>(je(Mt(Mt(Mt(g,e,xt),t,xt),n,()=>[]),l),s),un=(e,t,n)=>(je(Mt(v,e,()=>[]),t),n),hn=(e,t,n)=>Te(Dt(Dt(Dt(m,e),t),n),([e,t])=>[!0,Ut(e),Ut(t)],()=>[!1,...Yt(Zn(e,t,n))]),mn=e=>Te(Dt(p,e),([e,t])=>[!0,Ut(e),Ut(t)],()=>[!1,...Yt(Ln(e))]),bn=e=>ft(g)||ft(Q[e])?0:yt(e?$t(g):g,(t,n)=>yt(t,(t,l)=>yt(t,(t,s)=>ge(Q[e],[n,l,s],t)))),pn=e=>ft(v)||ft(te[e])?0:yt(e?Rt(v):v,(t,n)=>ge(te[e],[n],t)),gn=(e,t,n,l)=>{if(!ft(e))return ge(t,l,()=>Lt(e)),St(e,(e,t)=>ge(n,[...l??[],e],1==t)),1},vn=e=>{const t=!ft(D[e]),l=!ft(A[e]),s=!(ft(P[e])&&ft(J[e])&&ft(R[e])&&ft($[e])&&ft(L[e])&&ft(V[e])&&ft(E[e])&&!l&&ft(Z[e])&&ft(M[e])),r=!(ft(F[e])&&ft(z[e])&&ft(N[e])&&ft(S[e]));if(t||s||r){const a=e?[Rt(i),At(d),Rt(c),At(u),$t(h),(o=m,Rt(o,e=>Rt(e,e=>Rt(e,nn))))]:[i,d,c,u,h,m];if(t){const t=Vn();t!=n&&ge(D[e],void 0,t)}if(s){gn(a[0],Z[e],M[e]),yt(a[1],(t,n)=>gn(t,L[e],V[e],[n])),yt(a[2],(t,n)=>{0!=t&&ge(E[e],[n],xn(n))});const t=Jt();yt(a[3],(n,s)=>{gn(n,R[e],$[e],[s])&&l&&(ge(A[e],[s,null]),Ot(t,s))}),l&&yt(a[5],(n,l)=>{if(!It(t,l)){const t=Jt();yt(n,e=>yt(e,([n,l],s)=>l!==n?Ot(t,s):Tt(e,s))),yt(t,t=>ge(A[e],[l,t]))}}),yt(a[4],(t,n)=>yt(t,(t,l)=>gn(t,P[e],J[e],[n,l])))}if(r){let t;yt(a[5],(n,l)=>{let s;yt(n,(n,r)=>{let o;yt(n,([n,a],i)=>{a!==n&&(ge(F[e],[l,r,i],Ut(a),Ut(n),hn),t=s=o=1)}),o&&ge(z[e],[l,r],hn)}),s&&ge(N[e],[l],hn)}),t&&ge(S[e],void 0,hn)}}var o},In=e=>{const t=!ft(ae[e]),n=!ft(de[e])||!ft(ue[e]),s=!ft(he[e])||!ft(ie[e]);if(t||n||s){const r=e?[Rt(b),Rt(p,nn)]:[b,p];if(t){const t=Hn();t!=l&&ge(ae[e],void 0,t)}if(n&&gn(r[0],de[e],ue[e]),s){let t;yt(r[1],([n,l],s)=>{l!==n&&(ge(he[e],[s],Ut(l),Ut(n),mn),t=1)}),t&&ge(ie[e],void 0,mn)}}},fn=(e,...t)=>(tl(()=>e(...Oe(t,ce))),sl),Cn=(e,t,n,l,s)=>{let r=Dn(e,t,...n);return pe(()=>{const s=Dn(e,t,...n);$e(s,r)||(r=s,l(sl,e,t,...n,r))},A[s?1:0],[e,t],[Tn])},wn=(e=!1)=>[Lt(m,(t,n)=>-1===Dt(i,n)?void 0:Lt(t,(t,l)=>-1===Dt(Dt(u,n),l)?void 0:Lt(t,([,t])=>Ut(t,0,e),e=>ln(e)),ft,rt),ft,rt),Lt(p,([,t])=>Ut(t,0,e),e=>ln(e)),1],yn=()=>Et(x,Ut),Tn=()=>kt(x),qn=e=>kt(Dt(q,ce(e))),xn=e=>bt(Dt(x,ce(e))),kn=e=>kt(Dt(x,ce(e))),Dn=(e,t,n,l=0,s)=>{return Ge(e)?Dn(e.tableId,e.cellId,e.descending,e.offset,e.limit):Oe(Se(ze((r=Dt(x,ce(e)),o=(e,n)=>[fe(t)?n:Dt(e,ce(t)),n],Oe([...r?.entries()??[]],([e,t])=>o(t,e))),([e],[t])=>((e??0)<(t??0)?-1:1)*(n?-1:1)),l,fe(s)?s:l+s),([,e])=>e);var r,o},Sn=(e,t)=>kt(Dt(Dt(x,ce(e)),ce(t))),Zn=(e,t,n)=>Ut(Dt(Dt(Dt(x,ce(e)),ce(t)),ce(n))),Mn=()=>Lt(k,Ut),Nn=()=>kt(k),Ln=e=>Ut(Dt(k,ce(e))),Vn=()=>!ft(x),En=e=>It(x,ce(e)),Rn=(e,t)=>It(Dt(q,ce(e)),ce(t)),An=(e,t)=>It(Dt(x,ce(e)),ce(t)),$n=(e,t,n)=>It(Dt(Dt(x,ce(e)),ce(t)),ce(n)),Hn=()=>!ft(k),zn=e=>It(k,ce(e)),Pn=e=>fn(()=>(e=>at(e,Me,cn))(e)?Ue(e):0),Jn=(e,t,n,l,s,o)=>fn((e,t,n)=>Te(Ve(e,t,n,ke(l)?l(Zn(e,t,n)):l),l=>{const a=mt(e);Te(s||o||!r[14]?.()?void 0:r[3],r=>{const o=Dt(a,t),i={...o?Lt(o):{},[n]:l};Te(we(()=>r(e,t,Le(i))),n=>((e,t,n,l,s)=>{Nt(Mt(t,n,()=>(Bt(e,n,1),xt())),l,(t,l,r)=>Te(Ve(e,n,l,r),r=>st(e,n,t,l,r,s)),(l,s)=>Ht(e,t,n,l,s,!0))})(e,a,t,n,s))},()=>it(e,a,t,n,l,s))}),e,t,n),On=e=>fn(()=>Ee(e)?ut(e):0),_n=(e,t,n)=>fn(e=>Te(Ae(e,ke(t)?t(Ln(e)):t),t=>ht(e,t,n)),e),jn=e=>(Re(()=>Fe(dt(e))),sl),Bn=t=>fn(()=>{if((e=at(t,e=>at(e,xe)))&&(_e(t),!ft(x))){const e=yn();Wn(),Pn(e)}}),Fn=e=>fn(()=>{if(t=(e=>at(e,xe))(e)){const n=Mn();el(),Un(),t=!0,Be(e),On(n)}}),Wn=()=>fn(()=>we(()=>r[7]?.())??1?Ue({},!0):0),Qn=e=>fn(e=>It(x,e)?Ct(e):0,e),Kn=(e,t)=>fn((e,t)=>Te(Dt(x,e),n=>It(n,t)?qt(e,n,t):0),e,t),Gn=(e,t,n,l,s)=>fn((e,t,n)=>Te(Dt(x,e),r=>Te(Dt(r,t),o=>It(o,n)?Ht(e,r,t,o,n,l,s):0)),e,t,n),Un=()=>fn(()=>we(()=>r[11]?.())??1?ut({},!0):0),Xn=(e,t)=>fn(e=>It(k,e)?zt(e,t):0,e),Yn=()=>fn(()=>{_e({}),e=!1}),el=()=>fn(()=>{Be({}),t=!1}),tl=(e,t)=>{if(-1!=s){nl();const n=e();return ll(t),n}},nl=()=>(-1!=s&&s++,1==s&&(o[0]?.(),ge(me)),sl),ll=e=>(s>0&&(s--,0==s&&(s=1,we(()=>{bn(1),ft(m)||vn(1),pn(1),ft(p)||In(1)}),e?.(sl)&&(yt(m,(e,t)=>yt(e,(e,n)=>yt(e,([e],l)=>We(t,n,l,e,!0)))),wt(m),yt(p,([e],t)=>Ke(t,e,!0)),wt(p)),ge(be[0],void 0),s=-1,bn(0),ft(m)||vn(0),pn(0),ft(p)||In(0),o[1]?.(),ge(be[1],void 0),o[2]?.(),s=0,n=Vn(),l=Hn(),Pe([i,d,c,u,h,m,g,b,p,v],wt))),sl),sl={getContent:()=>[yn(),Mn()],getTables:yn,getTableIds:Tn,getTable:e=>Vt(Dt(x,ce(e)),Ut),getTableCellIds:qn,getRowCount:xn,getRowIds:kn,getSortedRowIds:Dn,getRow:(e,t)=>Lt(Dt(Dt(x,ce(e)),ce(t)),Ut),getCellIds:Sn,getCell:Zn,getValues:Mn,getValueIds:Nn,getValue:Ln,hasTables:Vn,hasTable:En,hasTableCell:Rn,hasRow:An,hasCell:$n,hasValues:Hn,hasValue:zn,getTablesJson:()=>ct(x),getValuesJson:()=>ct(k),getJson:()=>ct([x,k]),getTablesSchemaJson:()=>ct(I),getValuesSchemaJson:()=>ct(C),getSchemaJson:()=>ct([I,C]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:e=>fn(()=>{const t=ke(e)?e():e;Ze(t)&&(e=>{ye(e,()=>Te(r[0],t=>we(()=>t(Le(e))),()=>e),([e,t])=>{(rt(e)?Wn:Pn)(e),(rt(t)?Un:On)(t)},rn)})(t)}),setTables:Pn,setTable:(e,t)=>fn(e=>Me(t,e)?Ye(e,t):0,e),setRow:(e,t,n)=>fn((e,t)=>Ne(e,t,n)?nt(e,mt(e),t,n):0,e,t),addRow:(e,t,n=!0)=>tl(()=>{let l;return Ne(e,l,t)&&(e=ce(e),nt(e,mt(e),l=((e,t)=>{const[n]=Dt(T,e);let l;do{l=n(t)}while(It(Dt(x,e),l));return l})(e,n?1:0),t)),l}),setPartialRow:(e,t,n)=>fn((e,t)=>{if(Ne(e,t,n,1)){const l=mt(e);lt(n,(n,s)=>it(e,l,t,s,n))}},e,t),setCell:Jn,setValues:On,setPartialValues:e=>fn(()=>Ee(e,1)?lt(e,(e,t)=>ht(t,e)):0),setValue:_n,applyChanges:e=>fn(()=>ye(e,()=>Te(r[13],t=>we(()=>t(Le(e))),()=>e),e=>{lt(e[0],(e,t)=>fe(e)?Qn(t):lt(e,(e,n)=>fe(e)?Kn(t,n):lt(e,(e,l)=>We(t,n,l,e,void 0,!0)))),lt(e[1],(e,t)=>Ke(t,e))},rn)),setTablesJson:jn,setValuesJson:e=>(Re(()=>Qe(dt(e))),sl),setJson:e=>fn(()=>Re(()=>{const[t,n]=dt(e);Fe(t),Qe(n)},()=>jn(e))),setTablesSchema:Bn,setValuesSchema:Fn,setSchema:(e,t)=>fn(()=>{Bn(e),Fn(t)}),delTables:Wn,delTable:Qn,delRow:Kn,delCell:Gn,delValues:Un,delValue:Xn,delTablesSchema:Yn,delValuesSchema:el,delSchema:()=>fn(()=>{Yn(),el()}),transaction:tl,startTransaction:nl,getTransactionChanges:()=>wn(),getTransactionLog:()=>[!ft(m),!ft(p),Et(m,nn,ln),Et(g),Lt(p,nn,ln),Lt(v),Lt(i),Vt(u),Et(h),Lt(b)],finishTransaction:ll,forEachTable:e=>yt(x,(t,n)=>e(n,e=>yt(t,(t,n)=>e(n,e=>St(t,(t,n)=>e(t,Ut(n))))))),forEachTableCell:(e,t)=>St(Dt(q,ce(e)),t),forEachRow:(e,t)=>yt(Dt(x,ce(e)),(e,n)=>t(n,t=>St(e,(e,n)=>t(e,Ut(n))))),forEachCell:(e,t,n)=>St(Dt(Dt(x,ce(e)),ce(t)),(e,t)=>n(e,Ut(t))),forEachValue:e=>St(k,(t,n)=>e(t,Ut(n))),addSortedRowIdsListener:(e,t,n,l,s,r,o)=>Ge(e)?Cn(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit],t,n):Cn(e,t,[n,l,s],r,o),addStartTransactionListener:e=>pe(e,me),addWillFinishTransactionListener:e=>pe(e,be[0]),addDidFinishTransactionListener:e=>pe(e,be[1]),callListener:e=>(Ie(e),sl),delListener:e=>(ve(e),sl),getListenerStats:()=>({hasTables:en(D),tables:en(S),tableIds:en(Z),hasTable:en(M),table:en(N),tableCellIds:en(L),hasTableCell:en(V,gt),rowCount:en(E),rowIds:en(R),sortedRowIds:en(A),hasRow:en($,gt),row:en(z,gt),cellIds:en(P,gt),hasCell:en(J,vt),cell:en(F,vt),invalidCell:en(Q,vt),hasValues:en(ae),values:en(ie),valueIds:en(de),hasValue:en(ue),value:en(he),invalidValue:en(te),transaction:pt(me)+en(be)}),isMergeable:()=>!1,_:[on,pe,ge,(e,t,n,l,s)=>o=[e,t,n,l,s],(e,t,n,l,s,o,a,i,d,c,u,h,m,b,p)=>r=[e,t,n,l,s,o,a,i,d,c,u,h,m,b,p],We,Ke,()=>[Et(x),Lt(k)],()=>wn(!0)]};return lt({[W+G]:[0,D,[],()=>[Vn()]],[G]:[0,S],[U]:[0,Z],[W+K]:[1,M,[Tn],e=>[En(...e)]],[K]:[1,N,[Tn]],[K+le]:[1,L,[Tn]],[W+K+ne]:[2,V,[Tn,qn],e=>[Rn(...e)]],[Y]:[1,E,[Tn]],[ee]:[1,R,[Tn]],[W+X]:[2,$,[Tn,kn],e=>[An(...e)]],[X]:[2,z,[Tn,kn]],[le]:[2,P,[Tn,kn]],[W+ne]:[3,J,[Tn,kn,Sn],e=>[$n(...e)]],[ne]:[3,F,[Tn,kn,Sn],e=>Yt(Zn(...e))],InvalidCell:[3,Q],[W+re]:[0,ae,[],()=>[Hn()]],[re]:[0,ie],[oe]:[0,de],[W+se]:[1,ue,[Nn],e=>[zn(...e)]],[se]:[1,he,[Nn],e=>Yt(Ln(e[0]))],InvalidValue:[1,te]},([e,t,n,l],s)=>{sl["add"+s+B]=(...s)=>pe(s[e],t[s[e+1]?1:0],e>0?Se(s,0,e):void 0,n,l)}),Xe(sl)},{PureComponent:an,createContext:dn,useCallback:cn,useContext:un,useEffect:hn,useLayoutEffect:mn,useMemo:bn,useRef:pn,useState:gn,useSyncExternalStore:vn}=V,In=(e,...t)=>fe(e)?{}:e(...t),fn="tinybaseInspector",Cn="TinyBase Inspector",wn=["left","top","bottom","right","full"],yn="state",Tn="sort",qn="open",xn="position",kn=qn,Dn="editable",Sn=(...e)=>ct(e),Zn=(e,t)=>Oe(ze([...e]),t),Mn=(e,t)=>[!!l(yn,e,Dn,t),cn(n=>{t.setCell(yn,e,Dn,e=>!e),n.preventDefault()},[t,e])],Nn=({s:t})=>{const n=s(xn,t)??1,l=r(kn,()=>!0,[],t);return s(kn,t)?null:e("img",{onClick:l,title:Cn,"data-position":n})},Ln="tinybase_uirc",Vn=he[Ln]?he[Ln]:he[Ln]=dn([]),En=(e,t)=>{const n=((e,t)=>{const n=un(Vn);return fe(e)?n[2*t]:xe(e)?((e,t)=>Te(e,e=>e[t]))(n[2*t+1],e):e})(e,t);return fe(e)||xe(e)?n:e},Rn=[],An=[{},[],[Rn,void 0,Rn],{},void 0,void 0,!1,0],$n=(e,t)=>e===t||(Ge(e)||De(e))&&it(e)===it(t),Hn=[(e,t)=>ot(e,t,$n),$e,([e,t,n],[l,s,r])=>t===s&&$e(e,l)&&$e(n,r),(e,t)=>ot(e,t,He),He,$n],zn=(e,t)=>e===t,Pn=(e,t,n,l=Rn)=>{const s=pn(An[n]),r=cn(()=>{const r=t?.[(6==n?"has":"get")+e]?.(...l)??An[n];return(Hn[n]??zn)(r,s.current)?s.current:s.current=r},[t,n,e,...l]),o=cn(s=>((e,t,...n)=>{const l=e?.["add"+t+B]?.(...n);return()=>e?.delListener?.(l)})(t,(6==n?W:R)+e,...l,s),[t,n,e,...l]);return vn(o,r,r)},Jn=(e,t,n,l,s,r,...o)=>((e,t,n,l=Rn,s=Me,r=Rn,o,...a)=>cn(l=>Te(e,e=>Te(n(l,e),n=>s(e[o+t](...On(a,e,l),n),n))),[e,t,...l,...r,o,..._n(a)]))(Bn(e),t,n,l,s,r,"set",...o),On=(e,t,n)=>Oe(e,e=>ke(e)?e(n,t):e),_n=e=>{return t=e=>!ke(e),e.filter(t);var t},jn=(e,t,n=Me,l=Rn,...s)=>{const r=Bn(e);return cn(e=>n(r?.["del"+t](...On(s,r,e))),[r,t,...l,..._n(s)])},Bn=e=>En(e,0),Fn=(e,t)=>Pn(K+le,Bn(t),1,[e]),Wn=(e,t,n,l,s,r)=>((e,t,n,l,s,r)=>Pn(te,Bn(r),1,[e,t,n,l,s]))(...Ge(e)?[e.tableId,e.cellId,e.descending??!1,e.offset??0,e.limit,t]:[e,t,n,l,s,r]),Qn=(e,t,n,l)=>Pn(ne,Bn(l),5,[e,t,n]),Kn=(e,t)=>Pn(se,Bn(t),5,[e]),Gn=(e,t,n,l,s,r)=>Jn(l,K,t,n,s,r,e),Un=(e,t,n,l,s,r,o)=>Jn(s,X,n,l,r,o,e,t),Xn=(e,t,n,l,s,r,o,a)=>Jn(r,ne,l,s,o,a,e,t,n),Yn=(e,t,n,l,s,r)=>Jn(l,se,t,n,s,r,e),el=(e,t,n,l)=>jn(t,K,n,l,e),tl=(e,t,n,l,s)=>jn(n,X,l,s,e,t),nl=(e,t,n,l,s,r,o)=>jn(s,ne,r,o,e,t,n,l),ll=(e,t,n,l)=>jn(t,se,n,l,e),sl=e=>En(e,2),rl=(e,t,n)=>Pn("Slice"+ee,sl(n),1,[e,t]),ol=e=>En(e,3),al=e=>En(e,4),il=(e,t)=>Pn(F+K+le,al(t),1,[e]),dl=(e,t,n,l=0,s,r)=>Pn(F+te,al(r),1,[e,t,n,l,s]),cl=(e,t)=>bn(()=>({store:e,tableId:t}),[e,t]),ul=(e,t)=>bn(()=>({queries:e,queryId:t}),[e,t]),hl=(e,t,n)=>{const l=cn(e,t);return n?l:void 0},ml=(...e)=>bn(()=>e,e),bl=(e,t,n)=>bn(()=>{const l=t??e;return lt(De(l)?Ye(Oe(l,e=>[e,e])):l,(e,t)=>({label:t,component:n,...xe(e)?{label:e}:e}))},[t,n,e]),pl="editable",gl=(t=[],n,l=0)=>Oe(t,({component:t},s)=>e("td",{className:de,children:e(t,{...n})},vl(s,l))),vl=(e,t)=>(t?">":"<")+e,Il=(t=[],n=0)=>Oe(t,({label:t},l)=>e("th",{className:de,children:t},vl(l,n))),fl=({cellId:e,sort:[n,l],label:s=e??R,onClick:r})=>t("th",{onClick:hl(()=>r?.(e),[r,e],r),className:fe(l)||n!=e?void 0:`sorted ${l?"de":"a"}scending`,children:[fe(l)||n!=e?null:(l?"↓":"↑")+" ",s]}),Cl=({className:n,headerRow:l,idColumn:s,params:[r,o,a,i,d,c,u,h]})=>t("table",{className:n,children:[h?e("caption",{children:h}):null,!1===l?null:e("thead",{children:t("tr",{children:[Il(i),!1===s?null:e(fl,{sort:c??[],label:"Id",onClick:u}),nt(r,({label:t},n)=>e(fl,{cellId:n,label:t,sort:c??[],onClick:u},n)),Il(d,1)]})}),e("tbody",{children:Oe(a,n=>{const l={...o,rowId:n};return t("tr",{children:[gl(i,l),we(s)?null:e("th",{title:n,children:n}),nt(r,({component:t,getComponentProps:s},r)=>e("td",{children:e(t,{...In(s,n,r),...l,cellId:r})},r)),gl(d,l,1)]},n)})})]}),wl=({thing:n,onThingChange:l,className:s,hasSchema:r,showType:o=!0})=>{const[a,i]=gn(),[d,c]=gn(),[u,h]=gn(),[m,b]=gn(),[p,g]=gn(),[v,I]=gn("{}"),[f,C]=gn("[]"),[w,y]=gn(""),[T,q]=gn("");d!==n&&(i(Wt(n)),c(n),Ge(n)?I(it(n)):De(n)?C(it(n)):(h(n+""),b(Number(n)||0),g(!!n)));const x=cn((e,t)=>{t(e),c(e),l(e)},[l]),k=cn((e,t,n,s)=>{t(e);try{const t=dt(e);n(t)&&(c(t),l(t),s(""))}catch{s("invalid")}},[l]),D=cn(()=>{if(!r?.()){const e=Xt(a,H,$,P,J,A),t=Xt(e,u,m,p,Ee(()=>dt(v),{}),Ee(()=>dt(f),[]));i(e),c(t),l(t)}},[r,l,u,m,p,v,f,a]),S=Xt(a,e("input",{value:u,onChange:cn(e=>x(e[ae][ie]+"",h),[x])},a),e("input",{type:"number",value:m,onChange:cn(e=>x(Number(e[ae][ie]||0),b),[x])},a),e("input",{type:"checkbox",checked:p,onChange:cn(e=>x(!!e[ae].checked,g),[x])},a),e("input",{value:v,className:w,onChange:cn(e=>k(e[ae][ie],I,Ge,y),[k])},a),e("input",{value:f,className:T,onChange:cn(e=>k(e[ae][ie],C,De,q),[k])},a));return t("div",{className:s,children:[o&&S?e("button",{title:a,className:a,onClick:D,children:a}):null,S]})},yl=({tableId:t,rowId:n,cellId:l,store:s,className:r,showType:o})=>{const[a,i]=((e,t,n,l)=>[Qn(e,t,n,l),Xn(e,t,n,Ne,[],l)])(t,n,l,s);return e(wl,{thing:a,onThingChange:i,className:r??pl+ne,showType:o,hasSchema:Bn(s)?.hasTablesSchema})},Tl=({valueId:t,store:n,className:l,showType:s})=>{const[r,o]=((e,t)=>[Kn(e,t),Yn(e,Ne,[],t)])(t,n);return e(wl,{thing:r,onThingChange:o,className:l??pl+se,showType:s,hasSchema:Bn(n)?.hasValuesSchema})},ql=(e,t)=>Oe(Fn(e,t),t=>e+"."+t),xl=({localRowId:l,params:[s,r,o,a,i,d,c,u,h]})=>{const m=((e,t,n)=>Pn("RemoteRowId",ol(n),5,[e,t]))(i,l,d),b={tableId:o??"",rowId:l,store:c};return t("tr",{children:[gl(u,b),we(s)?null:t(n,{children:[e("th",{title:l,children:l}),e("th",{title:m,children:m})]}),nt(r,({component:t,getComponentProps:n},s)=>{const[r,i]=((e,t="",n)=>e.split(t,n))(s,".",2),d=r===o?l:r===a?m:void 0;return fe(d)?null:e("td",{children:e(t,{...In(n,d,i),store:c,tableId:r,rowId:d,cellId:i})},s)}),gl(h,b,1)]})},kl=({relationshipId:l,relationships:s,editable:r,customCells:a,extraCellsBefore:i,extraCellsAfter:d,className:c,headerRow:u,idColumn:h=!0})=>{const[m,b,p,g]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(ol(s),l),v=bl([...ql(p,b),...ql(g,b)],a,r?yl:o),I=ml(h,v,p,g,l,m,b,i,d);return t("table",{className:c,children:[we(u)?null:e("thead",{children:t("tr",{children:[Il(i),we(h)?null:t(n,{children:[t("th",{children:[p,".Id"]}),t("th",{children:[g,".Id"]})]}),nt(v,({label:t},n)=>e("th",{children:t},n)),Il(d,1)]})}),e("tbody",{children:Oe((f=p,C=b,Pn(ee,Bn(C),1,[f])),t=>e(xl,{localRowId:t,params:I},t))})]});var f,C},Dl=(t,n=!1,l,s=0,r,o,a,i)=>{const[[d,c,u],h]=gn([t,n,s]),m=cn(e=>{h(e),i?.(e)},[i]),b=hl(e=>m([e,e==d&&!c,u]),[m,d,c,u],l),p=cn(e=>m([d,c,e]),[m,d,c]),g=!0===a?Sl:a;return[[d,c,u],b,bn(()=>we(a)?null:e(g,{offset:u,limit:r,total:o,onChange:p}),[a,g,u,r,o,p])]},Sl=({onChange:l,total:s,offset:r=0,limit:o=s,singular:a="row",plural:i=a+"s"})=>{(r>s||r<0)&&(r=0,l(0));const d=hl(()=>l(r-o),[l,r,o],r>0),c=hl(()=>l(r+o),[l,r,o],r+o<s);return t(n,{children:[s>o&&t(n,{children:[e("button",{className:"previous",disabled:0==r,onClick:d,children:"←"}),e("button",{className:"next",disabled:r+o>=s,onClick:c,children:"→"}),r+1," to ",pe(s,r+o)," of "]}),s," ",1!=s?i:a]})},Zl=({queryId:t,cellId:n,descending:l,offset:s,limit:r,queries:o,sortOnClick:i,paginator:d=!1,customCells:c,extraCellsBefore:u,extraCellsAfter:h,onChange:m,...b})=>{const[p,g,v]=Dl(n,l,i,s,r,((e,t)=>Pn(F+Y,al(t),7,[e]))(t,o),d,m);return e(Cl,{...b,params:ml(bl(il(t,o),c,a),ul(o,t),dl(t,...p,r,o),u,h,p,g,v)})},Ml=({indexId:t,sliceId:n,indexes:l,editable:s,customCells:r,extraCellsBefore:a,extraCellsAfter:i,...d})=>{const[c,u,h]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(sl(l),t);return e(Cl,{...d,params:ml(bl(Fn(h,u),r,s?yl:o),cl(u,h),rl(t,n,c),a,i)})},Nl=({tableId:t,cellId:n,descending:l,offset:s,limit:r,store:a,editable:i,sortOnClick:d,paginator:c=!1,onChange:u,customCells:h,extraCellsBefore:m,extraCellsAfter:b,...p})=>{const[g,v,I]=Dl(n,l,d,s,r,((e,t)=>Pn(Y,Bn(t),7,[e]))(t,a),c,u);return e(Cl,{...p,params:ml(bl(Fn(t,a),h,i?yl:o),cl(a,t),Wn(t,...g,r,a),m,b,g,v,I)})},Ll=(t=[],n,l=0)=>Oe(t,({component:t},s)=>e("td",{className:de,children:e(t,{...n})},vl(s,l))),Vl=({store:n,editable:l=!1,valueComponent:s=(l?Tl:i),getValueComponentProps:r,extraCellsBefore:o,extraCellsAfter:a,className:d,headerRow:c,idColumn:u})=>{return t("table",{className:d,children:[!1===c?null:e("thead",{children:t("tr",{children:[Il(o),!1===u?null:e("th",{children:"Id"}),e("th",{children:se}),Il(a,1)]})}),e("tbody",{children:Oe((h=n,Pn(oe,Bn(h),1)),l=>{const i={valueId:l,store:n};return t("tr",{children:[Ll(o,i),we(u)?null:e("th",{title:l,children:l}),e("td",{children:e(s,{...In(r,l),...i})}),Ll(a,i,1)]},l)})})]});var h},El=({uniqueId:n,title:s,editable:r,handleEditable:o,children:a,s:i})=>{const c=!!l(yn,n,qn,i),u=d(yn,n,qn,e=>e[ae].open,[],i);return t("details",{open:c,onToggle:u,children:[t("summary",{children:[e("span",{children:s}),o?e("img",{onClick:o,className:r?"done":"edit",title:r?"Done editing":"Edit"}):null]}),e("div",{children:a})]})},Rl=({indexes:t,indexesId:n,indexId:l,s:s})=>e(El,{uniqueId:Sn("i",n,l),title:"Index: "+l,s:s,children:Oe(h(l,t),r=>e(Al,{indexes:t,indexesId:n,indexId:l,sliceId:r,s:s},r))}),Al=({indexes:t,indexesId:n,indexId:l,sliceId:s,s:r})=>{const o=Sn("i",n,l,s),[a,i]=Mn(o,r);return e(El,{uniqueId:o,title:"Slice: "+s,editable:a,handleEditable:i,s:r,children:e(Ml,{sliceId:s,indexId:l,indexes:t,editable:a})})},$l=({indexesId:t,s:n})=>{const l=c(t),s=u(l);return fe(l)?null:e(El,{uniqueId:Sn("i",t),title:"Indexes: "+(t??_),s:n,children:_e(s)?"No indexes defined":Zn(s,s=>e(Rl,{indexes:l,indexesId:t,indexId:s,s:n},s))})},Hl=({metrics:n,metricId:l})=>t("tr",{children:[e("th",{title:l,children:l}),e("td",{children:n?.getTableId(l)}),e("td",{children:p(l,n)})]}),zl=({metricsId:n,s:l})=>{const s=m(n),r=b(s);return fe(s)?null:e(El,{uniqueId:Sn("m",n),title:"Metrics: "+(n??_),s:l,children:_e(r)?"No metrics defined":t("table",{children:[t("thead",{children:[e("th",{children:"Metric Id"}),e("th",{children:"Table Id"}),e("th",{children:"Metric"})]}),e("tbody",{children:Oe(r,t=>e(Hl,{metrics:s,metricId:t},t))})]})})},Pl=({queries:t,queriesId:n,queryId:s,s:r})=>{const o=Sn("q",n,s),[a,i,c]=dt(l(yn,o,Tn,r)??"[]"),u=d(yn,o,Tn,ct,[],r);return e(El,{uniqueId:o,title:"Query: "+s,s:r,children:e(Zl,{queryId:s,queries:t,cellId:a,descending:i,offset:c,limit:10,paginator:!0,sortOnClick:!0,onChange:u})})},Jl=({queriesId:t,s:n})=>{const l=g(t),s=v(l);return fe(l)?null:e(El,{uniqueId:Sn("q",t),title:"Queries: "+(t??_),s:n,children:_e(s)?"No queries defined":Zn(s,s=>e(Pl,{queries:l,queriesId:t,queryId:s,s:n},s))})},Ol=({relationships:t,relationshipsId:n,relationshipId:l,s:s})=>{const r=Sn("r",n,l),[o,a]=Mn(r,s);return e(El,{uniqueId:r,title:"Relationship: "+l,editable:o,handleEditable:a,s:s,children:e(kl,{relationshipId:l,relationships:t,editable:o})})},_l=({relationshipsId:t,s:n})=>{const l=I(t),s=f(l);return fe(l)?null:e(El,{uniqueId:Sn("r",t),title:"Relationships: "+(t??_),s:n,children:_e(s)?"No relationships defined":Zn(s,s=>e(Ol,{relationships:l,relationshipsId:t,relationshipId:s,s:n},s))})},jl=(e,t)=>{let n,l=0;for(;t(n=e+(l>0?" (copy"+(l>1?" "+l:"")+")":""));)l++;return n},Bl=({actions:l,...s})=>{const[r,o]=gn(),a=cn(()=>o(void 0),[]);if(hn(()=>{if(!fe(r)){const e=e=>{fe(r)||"Escape"!==e.key||(e.preventDefault(),a())};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)}},[r,a]),fe(r))return l.map(([t,n],l)=>e("img",{title:n,className:t,onClick:()=>o(l)},l));{const[,,o]=l[r];return t(n,{children:[e(o,{onDone:a,...s}),e("img",{onClick:a,title:"Cancel",className:"cancel"})]})}},Fl=({onDone:l,suggestedId:s,has:r,set:o,prompt:a="New Id"})=>{const[i,d]=gn(s),[c,u]=gn(!0),[h,m]=gn(s),b=cn(()=>{r(i)?u(!1):(o(i),l())},[l,u,r,o,i]),p=cn(e=>{"Enter"===e.key&&(e.preventDefault(),b())},[b]);return s!=h&&(d(s),m(s)),t(n,{children:[a+": ",e("input",{type:"text",value:i,onChange:e=>{d(e.target.value),u(!r(e.target.value))},onKeyDown:p,autoFocus:!0})," ",e("img",{onClick:b,title:c?"Confirm":"Id already exists",className:c?"ok":"okDis"})]})},Wl=({onClick:l,prompt:s="Delete"})=>{const r=cn(e=>{"Enter"===e.key&&(e.preventDefault(),l())},[l]);return hn(()=>(document.addEventListener("keydown",r),()=>document.removeEventListener("keydown",r)),[r]),t(n,{children:[s,"? ",e("img",{onClick:l,title:"Confirm",className:"ok"})]})},Ql=({left:n,right:l})=>t("div",{className:"actions",children:[e("div",{children:n}),e("div",{children:l})]}),Kl=e=>{const t=Bn(e);return cn(e=>t?.hasTable(e)??!1,[t])},Gl=({onDone:t,store:n})=>{const l=Kl(n);return e(Fl,{onDone:t,suggestedId:jl("table",l),has:l,set:Gn(e=>e,()=>({row:{cell:""}}),[],n),prompt:"Add table"})},Ul=({onDone:t,store:n})=>{return e(Wl,{onClick:(l=n,s=t,jn(l,G,s,void 0)),prompt:"Delete all tables"});var l,s},Xl=({store:t})=>{return e(Ql,{left:e(Bl,{actions:[["add","Add table",Gl]],store:t}),right:(n=t,Pn(G,Bn(n),6,[])?e(Bl,{actions:[["delete","Delete all tables",Ul]],store:t}):null)});var n},Yl=({onDone:t,tableId:n,store:l})=>{const s=ss(l,n);return e(Fl,{onDone:t,suggestedId:jl("row",s),has:s,set:Un(n,e=>e,(e,t)=>Ye(Oe(t.getTableCellIds(n),e=>[e,""]))),prompt:"Add row"})},es=({onDone:t,tableId:n,store:l})=>{const s=Bn(l),r=Kl(s);return e(Fl,{onDone:t,suggestedId:jl(n,r),has:r,set:Gn(e=>e,(e,t)=>t.getTable(n)),prompt:"Clone table to"})},ts=({onDone:t,tableId:n,store:l})=>e(Wl,{onClick:el(n,l,t),prompt:"Delete table"}),ns=({tableId:t,store:n})=>e(Bl,{actions:[["add","Add row",Yl]],store:n,tableId:t}),ls=({tableId:t,store:n})=>e(Bl,{actions:[["clone","Clone table",es],["delete","Delete table",ts]],store:n,tableId:t}),ss=(e,t)=>{const n=Bn(e);return cn(e=>n?.hasRow(t,e)??!1,[n,t])},rs=({onDone:t,tableId:n,rowId:l,store:s})=>{const r=Bn(s),o=cn(e=>r.hasCell(n,l,e),[r,n,l]);return e(Fl,{onDone:t,suggestedId:jl("cell",o),has:o,set:Xn(n,l,e=>e,()=>"",[],r),prompt:"Add cell"})},os=({onDone:t,tableId:n,rowId:l,store:s})=>{const r=Bn(s),o=ss(r,n);return e(Fl,{onDone:t,suggestedId:jl(l,o),has:o,set:Un(n,e=>e,(e,t)=>t.getRow(n,l),[l]),prompt:"Clone row to"})},as=({onDone:t,tableId:n,rowId:l,store:s})=>e(Wl,{onClick:tl(n,l,s,t),prompt:"Delete row"}),is=({onDone:t,tableId:n,rowId:l,cellId:s,store:r})=>e(Wl,{onClick:nl(n,l,s,!0,r,t),prompt:"Delete cell"}),ds=({tableId:t,rowId:n,cellId:l,store:s})=>e(Bl,{actions:[["delete","Delete cell",is]],store:s,tableId:t,rowId:n,cellId:l}),cs=[{label:"",component:({tableId:t,rowId:n,store:l})=>e(Bl,{actions:[["add","Add cell",rs],["clone","Clone row",os],["delete","Delete row",as]],store:l,tableId:t,rowId:n})}],us=l=>t(n,{children:[e(yl,{...l}),y(l.tableId,l.rowId,l.cellId,l.store)&&e(ds,{...l})]}),hs=({tableId:n,store:s,storeId:r,s:a})=>{const i=Sn("t",r,n),[c,u,h]=dt(l(yn,i,Tn,a)??"[]"),m=d(yn,i,Tn,ct,[],a),[b,p]=Mn(i,a),g=b?us:o;return t(El,{uniqueId:i,title:K+": "+n,editable:b,handleEditable:p,s:a,children:[e(Nl,{tableId:n,store:s,cellId:c,descending:u,offset:h,limit:10,paginator:!0,sortOnClick:!0,onChange:m,editable:b,extraCellsAfter:b?cs:[],customCells:Ye(Oe(w(n,s),e=>[e,{label:e,component:g}]))}),b?t("div",{className:"actions",children:[e("div",{children:e(ns,{tableId:n,store:s})}),e("div",{children:e(ls,{tableId:n,store:s})})]}):null]})},ms=({store:n,storeId:l,s:s})=>{const r=Sn("ts",l),[o,a]=Mn(r,s),i=C(n);return t(El,{uniqueId:r,title:G,editable:o,handleEditable:a,s:s,children:[_e(i)?e("p",{children:"No tables."}):Zn(i,t=>e(hs,{store:n,storeId:l,tableId:t,s:s},t)),o?e(Xl,{store:n}):null]})},bs=e=>{const t=Bn(e);return cn(e=>t?.hasValue(e)??!1,[t])},ps=({onDone:t,store:n})=>{const l=bs(n);return e(Fl,{onDone:t,suggestedId:jl("value",l),has:l,set:Yn(e=>e,()=>"",[],n),prompt:"Add value"})},gs=({onDone:t,store:n})=>{return e(Wl,{onClick:(l=n,s=t,jn(l,re,s,void 0)),prompt:"Delete all values"});var l,s},vs=({store:t})=>{return e(Ql,{left:e(Bl,{actions:[["add","Add value",ps]],store:t}),right:(n=t,Pn(re,Bn(n),6,[])?e(Bl,{actions:[["delete","Delete all values",gs]],store:t}):null)});var n},Is=({onDone:t,valueId:n,store:l})=>{const s=bs(l);return e(Fl,{onDone:t,suggestedId:jl(n,s),has:s,set:Yn(e=>e,(e,t)=>t.getValue(n)??"",[n],l),prompt:"Clone value to"})},fs=({onDone:t,valueId:n,store:l})=>e(Wl,{onClick:ll(n,l,t),prompt:"Delete value"}),Cs=[{label:"",component:({valueId:t,store:n})=>e(Bl,{actions:[["clone","Clone value",Is],["delete","Delete value",fs]],store:n,valueId:t})}],ws=({store:n,storeId:l,s:s})=>{const r=Sn("v",l),[o,a]=Mn(r,s);return t(El,{uniqueId:r,title:re,editable:o,handleEditable:a,s:s,children:[_e(T(n))?e("p",{children:"No values."}):e(Vl,{store:n,editable:o,extraCellsAfter:o?Cs:[]}),o?e(vs,{store:n}):null]})},ys=({storeId:n,s:l})=>{const s=q(n);return fe(s)?null:t(El,{uniqueId:Sn("s",n),title:(s.isMergeable()?"Mergeable":"")+"Store: "+(n??_),s:l,children:[e(ws,{storeId:n,store:s,s:l}),e(ms,{storeId:n,store:s,s:l})]})},Ts=({s:n})=>{const l=pn(null),s=pn(0),[r,o]=gn(!1),{scrollLeft:a,scrollTop:i}=x(n);mn(()=>{const e=l.current;if(e&&!r){const t=new MutationObserver(()=>{e.scrollWidth>=ge(a)+e.clientWidth&&e.scrollHeight>=ge(i)+e.clientHeight&&e.scrollTo(a,i)});return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}},[r,a,i]);const d=cn(e=>{const{scrollLeft:t,scrollTop:l}=e[ae];cancelIdleCallback(s.current),s.current=requestIdleCallback(()=>{o(!0),n.setPartialValues({scrollLeft:t,scrollTop:l})})},[n]),u=q(),h=k(),b=m(),p=D(),v=c(),f=S(),C=I(),w=Z(),y=g(),T=M();return fe(u)&&_e(h)&&fe(b)&&_e(p)&&fe(v)&&_e(f)&&fe(C)&&_e(w)&&fe(y)&&_e(T)?e("span",{className:"warn",children:"There are no Stores or other objects to inspect. Make sure you placed the Inspector inside a Provider component."}):t("article",{ref:l,onScroll:d,children:[e(ys,{s:n}),Oe(h,t=>e(ys,{storeId:t,s:n},t)),e(zl,{s:n}),Oe(p,t=>e(zl,{metricsId:t,s:n},t)),e($l,{s:n}),Oe(f,t=>e($l,{indexesId:t,s:n},t)),e(_l,{s:n}),Oe(w,t=>e(_l,{relationshipsId:t,s:n},t)),e(Jl,{s:n}),Oe(T,t=>e(Jl,{queriesId:t,s:n},t))]})};class qs extends an{constructor(e){super(e),this.state={e:0}}static getDerivedStateFromError(){return{e:1}}componentDidCatch=(e,t)=>console.error(e,t.componentStack);render(){return this.state.e?e("span",{className:"warn",children:"Inspector error: please see console for details."}):this.props.children}}const xs=({s:n})=>{const l=s(xn,n)??1,o=r(kn,()=>!1,[],n),a=r(xn,e=>Number(e[ae].dataset.id),[],n);return t("header",{children:[e("img",{className:"flat",title:Cn,onClick:()=>open("https://tinybase.org","_blank")}),e("span",{children:Cn}),Oe(wn,(t,n)=>n==l?null:e("img",{onClick:a,"data-id":n,title:"Dock to "+t},n)),e("img",{className:"flat",onClick:o,title:"Close"})]})},ks=({s:n})=>{const l=s(xn,n)??1;return s(kn,n)?t("main",{"data-position":l,children:[e(xs,{s:n}),e(qs,{children:e(Ts,{s:n})})]}):null},Ds='url("',Ss=(e,t="white")=>({content:Ds+`data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' fill='${t}'><path d='${e}' /></svg>")`}),Zs="v560h120v-560h-120Z",Ms="v560h360v-560h-360Z",Ns="v120h560v-120h-560Z",Ls="v360h560v-360h-560Z",Vs={content:Ds+"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\")"},Es=Oe([`M200-760${Zs} M400-760${Ms}`,`M200-760${Ns} M200-560${Ls}`,`M200-760${Ls} M200-320${Ns}`,`M200-760${Ms} M640-760${Zs}`],e=>Ss("M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Z"+e));je(Es,Ss("M120-120v-200h80v120h120v80H120Zm520 0v-80h120v-120h80v200H640ZM120-640v-200h200v80H200v120h-80Zm640 0v-120H640v-80h200v200h-80Z"));const Rs=Ss("m336-280-56-56 144-144-144-143 56-56 144 144 143-144 56 56-144 143 144 144-56 56-143-144-144 144Z"),As=Ss("M200-200h57l391-391-57-57-391 391v57Zm-80 80v-170l528-527q12-11 26.5-17t30.5-6q16 0 31 6t26 18l55 56q12 11 17.5 26t5.5 30q0 16-5.5 30.5T817-647L290-120H120Zm640-584-56-56 56 56Zm-141 85-28-29 57 57-29-28Z"),$s=Ss("m622-453-56-56 82-82-57-57-82 82-56-56 195-195q12-12 26.5-17.5T705-840q16 0 31 6t26 18l55 56q12 11 17.5 26t5.5 30q0 16-5.5 30.5T817-647L622-453ZM200-200h57l195-195-28-29-29-28-195 195v57ZM792-56 509-338 290-120H120v-169l219-219L56-792l57-57 736 736-57 57Zm-32-648-56-56 56 56Zm-169 56 57 57-57-57ZM424-424l-29-28 57 57-28-29Z"),Hs=Ss("M440-280h80v-160h160v-80H520v-160h-80v160H280v80h160v160ZM200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-560H200v560Zm0-560v560-560Z"),zs=Ss("M520-400h80v-120h120v-80H600v-120h-80v120H400v80h120v120ZM320-240q-33 0-56.5-23.5T240-320v-480q0-33 23.5-56.5T320-880h480q33 0 56.5 23.5T880-800v480q0 33-23.5 56.5T800-240H320Zm0-80h480v-480H320v480ZM160-80q-33 0-56.5-23.5T80-160v-560h80v560h560v80H160Zm160-720v480-480Z"),Ps=Ss("M280-120q-33 0-56.5-23.5T200-200v-520h-40v-80h200v-40h240v40h200v80h-40v520q0 33-23.5 56.5T680-120H280Zm400-600H280v520h400v-520ZM360-280h80v-360h-80v360Zm160 0h80v-360h-80v360ZM280-720v520-520Z"),Js=Ss("m424-296 282-282-56-56-226 226-114-114-56 56 170 170Zm56 216q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z","rgb(127,255,127)"),Os=Ss("m40-120 440-760 440 760H40Zm138-80h604L480-720 178-200Zm302-40q17 0 28.5-11.5T520-280q0-17-11.5-28.5T480-320q-17 0-28.5 11.5T440-280q0 17 11.5 28.5T480-240Zm-40-120h80v-200h-80v200Zm40-100Z","rgb(255,255,127)"),_s=Ss("m336-280 144-144 144 144 56-56-144-144 144-144-56-56-144 144-144-144-56 56 144 144-144 144 56 56ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z","rgb(255,127,127)"),js=Ss("M480-344 240-584l56-56 184 184 184-184 56 56-240 240Z"),Bs=Ss("M504-480 320-664l56-56 240 240-240 240-56-56 184-184Z"),Fs="*::-webkit-scrollbar",Ws="background",Qs="width",Ks="max-"+Qs,Gs="min-"+Qs,Us="height",Xs="border",Ys="radius",er=Xs+"-"+Ys,tr="padding",nr="margin",lr="top",sr="bottom",rr="left",or="right",ar="color",ir="position",dr="box-shadow",cr="font-size",ur="display",hr="overflow",mr="cursor",br="vertical-align",pr="text-align",gr="justify-content",vr="white-space",Ir="text-overflow",fr="align-items",Cr="backdrop-filter",wr=nr+"-"+or,yr="fixed",Tr="revert",qr="unset",xr="none",kr="flex",Dr="pointer",Sr="auto",Zr="hidden",Mr="nowrap",Nr=(e,t="% 0.01 "+Lr("hue"))=>`oklch(${e}${t})`,Lr=e=>`var(--${e})`,Vr=(...e)=>e.join("rem ")+"rem",Er=(...e)=>e.join("px ")+"px",Rr=(e=100)=>e+"vw",Ar=(e=100)=>e+"vh",$r=Je(nt({"":{all:"initial",[cr]:Vr(.75),[ir]:yr,"font-family":"inter,sans-serif","z-index":999999,"--bg":Nr(20),"--bg2":Nr(15),"--bg3":Nr(25),"--bg4":Nr(30),"--fg":Nr(85),"--fg2":Nr(60),["--"+Xs]:Er(1)+" solid "+Lr("bg4"),["--"+dr]:Er(0,1,2,0)+" #0007"},"*":{all:Tr},"*::before":{all:Tr},"*::after":{all:Tr},[Fs]:{[Qs]:Vr(.5),[Us]:Vr(.5)},[Fs+"-thumb"]:{[Ws]:Lr("bg4")},[Fs+"-thumb:hover"]:{[Ws]:Lr("bg4")},[Fs+"-corner"]:{[Ws]:xr},[Fs+"-track"]:{[Ws]:xr},img:{[Qs]:Vr(.8),[Us]:Vr(.8),[br]:"text-"+sr,[mr]:Dr,[nr]:Er(-2.5,2,-2.5,0),[tr]:Er(2),[Xs]:Lr(Xs),[Ws]:Lr("bg3"),[dr]:Lr(dr),[er]:Vr(.25)},"img.flat":{[Xs]:xr,[Ws]:xr,[dr]:xr},">img":{[tr]:Vr(.25),[sr]:0,[or]:0,[ir]:yr,[Us]:qr,[nr]:0,...Vs},...Ye(Oe([{[sr]:0,[rr]:0},{[lr]:0,[or]:0}],(e,t)=>[`>img[data-position='${t}']`,e])),main:{[ur]:kr,[ar]:Lr("fg"),[Ws]:Lr("bg"),[hr]:Zr,[ir]:yr,[dr]:Lr(dr),"flex-direction":"column"},...Ye(Oe([{[sr]:0,[rr]:0,[Qs]:Rr(35),[Us]:Ar(),[Xs+"-"+or]:Lr(Xs)},{[lr]:0,[or]:0,[Qs]:Rr(),[Us]:Ar(30),[Xs+"-"+sr]:Lr(Xs)},{[sr]:0,[rr]:0,[Qs]:Rr(),[Us]:Ar(30),[Xs+"-"+lr]:Lr(Xs)},{[lr]:0,[or]:0,[Qs]:Rr(35),[Us]:Ar(),[Xs+"-"+rr]:Lr(Xs)},{[lr]:0,[or]:0,[Qs]:Rr(),[Us]:Ar()}],(e,t)=>[`main[data-position='${t}']`,e])),header:{[ur]:kr,[tr]:Vr(.5),[dr]:Lr(dr),[Ws]:Nr(30,"% 0.008 var(--hue) / .5"),[Qs]:"calc(100% - .5rem)",[ir]:"absolute",[Xs+"-"+sr]:Lr(Xs),[fr]:"center",[Cr]:"blur(4px)"},"header>img:nth-of-type(1)":{[Us]:Vr(1),[Qs]:Vr(1),...Vs},"header>img:nth-of-type(6)":Rs,...Ye(Oe(Es,(e,t)=>[`header>img[data-id='${t}']`,e])),"header>span":{[hr]:Zr,[kr]:1,"font-weight":800,[vr]:Mr,[Ir]:"ellipsis"},article:{[hr]:Sr,[kr]:1,[tr+"-"+lr]:Vr(2)},details:{[nr]:Vr(.5),[Xs]:Lr(Xs),[er]:Vr(.25)},summary:{[Ws]:Lr("bg3"),[nr]:Er(-1),[Xs]:Lr(Xs),[tr]:Vr(.25,.125),[ur]:kr,[er]:Vr(.25),"user-select":xr,[gr]:"space-between",[fr]:"center",[Cr]:"blur(4px)"},"summary>span::before":{[ur]:"inline-block",[br]:"sub",[nr]:Er(2),[Qs]:Vr(1),[Us]:Vr(1),...Bs},"details[open]>summary":{[Xs+"-"+sr+"-"+rr+"-"+Ys]:0,[Xs+"-"+sr+"-"+or+"-"+Ys]:0,[nr+"-"+sr]:0},"details[open]>summary>span::before":js,"details>summary img":{[ur]:xr},"details[open]>summary img":{[ur]:qr,[nr+"-"+rr]:Vr(.25)},"details>div":{[hr]:Sr},[`caption,#${fn} p`]:{[ar]:Lr("fg2"),[tr]:Vr(.25,.5),[pr]:rr,[nr]:0,[vr]:Mr},"caption button":{[Qs]:Vr(1.5),[Xs]:xr,[Ws]:xr,[ar]:Lr("fg"),[tr]:0,[mr]:Dr},"caption button[disabled]":{[ar]:Lr("fg2")},".actions":{[tr]:Vr(.75,.5),[nr]:0,[ur]:kr,[Xs+"-"+lr]:Lr(Xs),[gr]:"space-between"},table:{[Gs]:"100%","border-collapse":"collapse","table-layout":yr},thead:{[Ws]:Lr("bg")},[`th,#${fn} td`]:{[hr]:Zr,[tr]:Vr(.25,.5),[Ks]:Vr(20),[Xs]:Lr(Xs),[Ir]:"ellipsis",[vr]:Mr,"border-width":Er(1,0,0),[pr]:rr},"th:first-child":{[Qs]:Vr(3),[Gs]:Vr(3),[Ks]:Vr(3)},"th.sorted":{[Ws]:Lr("bg3")},"td.extra":{[pr]:or},"tbody button":{[Ws]:xr,[Xs]:xr,[cr]:0,[Qs]:Vr(.8),[Us]:Vr(.8),[ar]:Lr("fg2"),[nr]:Vr(0,.25,0,-.25),"line-height":Vr(.8)},"tbody button:first-letter":{[cr]:Vr(.8)},input:{[Ws]:Lr("bg2"),[ar]:qr,[tr]:Er(4),[Xs]:0,[nr]:Er(-4,0),[cr]:qr,[Ks]:Vr(6)},"input:focus":{"outline-width":0},'input[type="number"]':{[Qs]:Vr(3)},'input[type="checkbox"]':{[br]:Er(-2)},".editableCell":{[ur]:"inline-block",[wr]:Er(2)},"button.next":{[wr]:Vr(.5)},"img.edit":As,"img.done":$s,"img.add":Hs,"img.clone":zs,"img.delete":Ps,"img.ok":Js,"img.okDis":Os,"img.cancel":_s,"span.warn":{[nr]:Vr(2,.25),[ar]:"#d81b60"}},(e,t)=>`#${fn} ${t}{${Je(nt(e,(e,t)=>`${t}:${e};`))}}`)),Hr=({position:l="right",open:s=!1,hue:r=270})=>{const o=N(on),a=wn.indexOf(l);return L(o,e=>{return t=fn,n=sessionStorage,((e,t,n,l,s,r,o,a={},i=0,d=[])=>{let c,u,h,m=0,b=0,p=0;Mt(jt,d,()=>0),Mt(Bt,d,()=>[]);const g=xt(),[v,I,f,C,w]=((e=1,t,n)=>1!=e&&t.isMergeable()?[1,t.__[1],()=>t.__[2](!n),([[e],[t]])=>!rt(e)||!rt(t),t.setDefaultContent]:2!=e?[0,t._[7],t._[8],([e,t])=>!rt(e)||!rt(t),t.setContent]:Ve("Store type not supported by this Persister"))(o,e,i),[y,T,q]=_t(()=>$),x=e=>{e!=m&&(m=e,T(g,void 0,m))},k=t=>{(v&&De(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},D=async()=>{E()&&e.__?.[0]?.()&&await N()},S=async e=>(2!=m&&(x(1),b++,await A(async()=>{await Re(async()=>{const n=await t();De(n)?k(n):e?w(e):Ve("Content is not an array: "+n)},()=>{e&&w(e)}),x(0),await D()})),$),Z=async e=>(M(),await S(e),await Re(async()=>u=await l(async(e,t)=>{t||e?2!=m&&(x(1),b++,k(t??e),x(0),await D()):await S()}),r),$),M=async()=>(u&&(await Re(()=>s(u),r),u=void 0),$),N=async e=>(1!=m&&(x(2),p++,await A(async()=>{await Re(()=>n(I,e),r),x(0)})),$),L=async()=>(V(),await N(),h=e.addDidFinishTransactionListener(()=>{const e=f();C(e)&&N(e)}),$),V=async()=>(h&&(e.delListener(h),h=void 0),$),E=()=>!fe(h),R=async(e=!1)=>{const[t,n]=e?[V,M]:[M,V];return await t(),await n(),$},A=async(...e)=>(je(Dt(Bt,d),...e),await(async()=>{if(!Dt(jt,d)){for(Zt(jt,d,1);!fe(c=Be(Dt(Bt,d)));)await Re(c,r);Zt(jt,d,0)}})(),$),$={load:S,startAutoLoad:Z,stopAutoLoad:M,isAutoLoading:()=>!fe(u),save:N,startAutoSave:L,stopAutoSave:V,isAutoSaving:E,startAutoPersisting:async(e,t=!1)=>{const[n,l]=t?[L,Z]:[Z,L];return await n(e),await l(e),$},stopAutoPersisting:R,getStatus:()=>m,addStatusListener:e=>y(e,g),delListener:t=>(q(t),e),schedule:A,getStore:()=>e,destroy:()=>(Dt(Bt,d).splice(0,void 0),R()),getStats:()=>({loads:b,saves:p}),...a};return Xe($)})(e,async()=>ut(n.getItem(t)),async e=>{return n.setItem(t,(l=e(),it(l,(e,t)=>fe(t)?"":t)));var l},e=>{const l=l=>{l.storageArea===n&&l.key===t&&Re(()=>e(ut(l.newValue)),e)};return me.addEventListener(Ft,l),l},e=>me.removeEventListener(Ft,e),void 0,3,{getStorageName:()=>t});var t,n},void 0,async e=>{await e.load([{},{position:-1==a?1:a,open:!!s}]),await e.startAutoSave()}),t(n,{children:[t("aside",{id:fn,children:[e(Nn,{s:o}),e(ks,{s:o})]}),t("style",{children:[`#${fn}{--hue:${r}}`,$r]})]})};export{Hr as Inspector};
1
+ import{jsx as e,jsxs as t,Fragment as n}from"react/jsx-runtime";import{useValue as l,useSetValueCallback as s,CellView as r,ResultCellView as o,ValueView as a,useCell as i,useSetCellCallback as d,useIndexes as c,useIndexIds as u,useSliceIds as h,useMetrics as m,useMetricIds as b,useMetric as g,useQueries as p,useQueryIds as v,useRelationships as I,useRelationshipIds as f,useTableIds as C,useTableCellIds as w,useHasCell as T,useValueIds as y,useStore as q,useValues as x,useStoreIds as k,useMetricsIds as D,useIndexesIds as S,useRelationshipsIds as Z,useQueriesIds as M,useCreateStore as N,useCreatePersister as L}from"../ui-react/index.js";import V from"react";const E=e=>typeof e,R="",A=E(R),$=E(!0),H=E(0),z=E(E),P="object",J="array",O="type",_="default",j="allowNull",B="Listener",F="Result",W="Has",Q="Ids",K="Table",G=K+"s",U=K+Q,X="Row",Y=X+"Count",ee=X+Q,te="Sorted"+X+Q,ne="Cell",le=ne+Q,se="Value",re=se+"s",oe=se+Q,ae="currentTarget",ie="value",de="extra",ce=e=>R+e,ue=e=>(t,n,l)=>e(t)?l?.():n(t),he=globalThis,me=he.window,be=Math,ge=be.min,pe=be.floor,ve=isFinite,Ie=e=>null==e,fe=e=>void 0===e,Ce=e=>null===e,we=e=>!1===e,Te=ue(Ie),ye=ue(fe),qe=e=>e==A||e==$,xe=e=>E(e)==A,ke=e=>E(e)==z,De=e=>Array.isArray(e),Se=(e,t,n)=>e.slice(t,n),Ze=e=>e.length,Me=()=>{},Ne=e=>e,Le=he.structuredClone,Ve=e=>{throw Error(e)},Ee=(e,t)=>{try{return e()}catch{return t}},Re=async(e,t,n)=>{try{return await e()}catch(e){t?.(e)}},Ae=(e,t)=>e.every(t),$e=(e,t)=>Ze(e)===Ze(t)&&Ae(e,(e,n)=>t[n]===e),He=(e,t)=>De(e)&&De(t)?$e(e,t):e===t,ze=(e,t)=>e.sort(t),Pe=(e,t)=>e.forEach(t),Je=(e,t="")=>e.join(t),Oe=(e,t)=>e.map(t),_e=e=>0==Ze(e),je=(e,...t)=>e.push(...t),Be=e=>e.shift(),Fe=Object,We=e=>Fe.getPrototypeOf(e),Qe=Fe.isFrozen,Ke=Fe.entries,Ge=e=>!Ie(e)&&Te(We(e),e=>e==Fe.prototype||Ie(We(e)),()=>!0),Ue=Fe.keys,Xe=Fe.freeze,Ye=(e=[])=>Fe.fromEntries(e),et=(e,t)=>t in e,tt=(e,t)=>(delete e[t],e),nt=(e,t)=>Oe(Ke(e),([e,n])=>t(n,e)),lt=(e,t)=>Ye(nt(e,(e,n)=>[n,t(e,n)])),st=e=>Ze(Ue(e)),rt=e=>Ge(e)&&0==st(e),ot=(e,t,n=(e,t)=>e===t)=>{const l=Ke(e);return Ze(l)===st(t)&&Ae(l,([e,l])=>Ge(l)?!!Ge(t[e])&&ot(t[e],l,n):n(l,t[e]))},at=(e,t,n,l=0)=>Ie(e)||!Ge(e)||!l&&rt(e)||Qe(e)?(n?.(),!1):(((e,t)=>{Pe(Ke(e),([e,n])=>t(n,e))})(e,(n,l)=>{t(n,l)||tt(e,l)}),!!l||!rt(e)),it=JSON.stringify,dt=JSON.parse,ct=e=>it(e,(e,t)=>t instanceof Map?Fe.fromEntries([...t]):t),ut=e=>ht(dt(e)),ht=e=>""===e?void 0:De(e)?Oe(e,ht):Ge(e)?lt(e,ht):e,mt="tinybaseInspector",bt="TinyBase Inspector",gt=["left","top","bottom","right","full"],pt="state",vt="sort",It="open",ft="editable",Ct="position",wt=It,Tt=e=>{const t=gt.indexOf(e);return-1==t?1:t},yt=(...e)=>ct(e),qt=(e,t)=>Oe(ze([...e]),t),xt='url("',kt=(e,t="white")=>({content:xt+`data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960' fill='${t}'><path d='${e}' /></svg>")`}),Dt="v560h120v-560h-120Z",St="v560h360v-560h-360Z",Zt="v120h560v-120h-560Z",Mt="v360h560v-360h-560Z",Nt={content:xt+"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\")"},Lt=Oe([`M200-760${Dt} M400-760${St}`,`M200-760${Zt} M200-560${Mt}`,`M200-760${Mt} M200-320${Zt}`,`M200-760${St} M640-760${Dt}`],e=>kt("M200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Z"+e));je(Lt,kt("M120-120v-200h80v120h120v80H120Zm520 0v-80h120v-120h80v200H640ZM120-640v-200h200v80H200v120h-80Zm640 0v-120H640v-80h200v200h-80Z"));const Vt=kt("m336-280-56-56 144-144-144-143 56-56 144 144 143-144 56 56-144 143 144 144-56 56-143-144-144 144Z"),Et=kt("M200-200h57l391-391-57-57-391 391v57Zm-80 80v-170l528-527q12-11 26.5-17t30.5-6q16 0 31 6t26 18l55 56q12 11 17.5 26t5.5 30q0 16-5.5 30.5T817-647L290-120H120Zm640-584-56-56 56 56Zm-141 85-28-29 57 57-29-28Z"),Rt=kt("m622-453-56-56 82-82-57-57-82 82-56-56 195-195q12-12 26.5-17.5T705-840q16 0 31 6t26 18l55 56q12 11 17.5 26t5.5 30q0 16-5.5 30.5T817-647L622-453ZM200-200h57l195-195-28-29-29-28-195 195v57ZM792-56 509-338 290-120H120v-169l219-219L56-792l57-57 736 736-57 57Zm-32-648-56-56 56 56Zm-169 56 57 57-57-57ZM424-424l-29-28 57 57-28-29Z"),At=kt("M440-280h80v-160h160v-80H520v-160h-80v160H280v80h160v160ZM200-120q-33 0-56.5-23.5T120-200v-560q0-33 23.5-56.5T200-840h560q33 0 56.5 23.5T840-760v560q0 33-23.5 56.5T760-120H200Zm0-80h560v-560H200v560Zm0-560v560-560Z"),$t=kt("M520-400h80v-120h120v-80H600v-120h-80v120H400v80h120v120ZM320-240q-33 0-56.5-23.5T240-320v-480q0-33 23.5-56.5T320-880h480q33 0 56.5 23.5T880-800v480q0 33-23.5 56.5T800-240H320Zm0-80h480v-480H320v480ZM160-80q-33 0-56.5-23.5T80-160v-560h80v560h560v80H160Zm160-720v480-480Z"),Ht=kt("M280-120q-33 0-56.5-23.5T200-200v-520h-40v-80h200v-40h240v40h200v80h-40v520q0 33-23.5 56.5T680-120H280Zm400-600H280v520h400v-520ZM360-280h80v-360h-80v360Zm160 0h80v-360h-80v360ZM280-720v520-520Z"),zt=kt("m424-296 282-282-56-56-226 226-114-114-56 56 170 170Zm56 216q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z","rgb(127,255,127)"),Pt=kt("m40-120 440-760 440 760H40Zm138-80h604L480-720 178-200Zm302-40q17 0 28.5-11.5T520-280q0-17-11.5-28.5T480-320q-17 0-28.5 11.5T440-280q0 17 11.5 28.5T480-240Zm-40-120h80v-200h-80v200Zm40-100Z","rgb(255,255,127)"),Jt=kt("m336-280 144-144 144 144 56-56-144-144 144-144-56-56-144 144-144-144-56 56 144 144-144 144 56 56ZM480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q83 0 156 31.5T763-763q54 54 85.5 127T880-480q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm0-80q134 0 227-93t93-227q0-134-93-227t-227-93q-134 0-227 93t-93 227q0 134 93 227t227 93Zm0-320Z","rgb(255,127,127)"),Ot=kt("M480-344 240-584l56-56 184 184 184-184 56 56-240 240Z"),_t=kt("M504-480 320-664l56-56 240 240-240 240-56-56 184-184Z"),jt="*::-webkit-scrollbar",Bt="background",Ft="width",Wt="max-"+Ft,Qt="min-"+Ft,Kt="height",Gt="border",Ut="radius",Xt=Gt+"-"+Ut,Yt="padding",en="margin",tn="top",nn="bottom",ln="left",sn="right",rn="color",on="position",an="box-shadow",dn="font-size",cn="display",un="overflow",hn="cursor",mn="vertical-align",bn="text-align",gn="justify-content",pn="white-space",vn="text-overflow",In="align-items",fn="backdrop-filter",Cn=en+"-"+sn,wn="fixed",Tn="revert",yn="unset",qn="none",xn="flex",kn="pointer",Dn="auto",Sn="hidden",Zn="nowrap",Mn=(e,t="% 0.01 "+Nn("hue"))=>`oklch(${e}${t})`,Nn=e=>`var(--${e})`,Ln=(...e)=>e.join("rem ")+"rem",Vn=(...e)=>e.join("px ")+"px",En=(e=100)=>e+"vw",Rn=(e=100)=>e+"vh",An=Je(nt({"":{all:"initial",[dn]:Ln(.75),[on]:wn,"font-family":"inter,sans-serif","z-index":999999,"--bg":Mn(20),"--bg2":Mn(15),"--bg3":Mn(25),"--bg4":Mn(30),"--fg":Mn(85),"--fg2":Mn(60),["--"+Gt]:Vn(1)+" solid "+Nn("bg4"),["--"+an]:Vn(0,1,2,0)+" #0007"},"*":{all:Tn},"*::before":{all:Tn},"*::after":{all:Tn},[jt]:{[Ft]:Ln(.5),[Kt]:Ln(.5)},[jt+"-thumb"]:{[Bt]:Nn("bg4")},[jt+"-thumb:hover"]:{[Bt]:Nn("bg4")},[jt+"-corner"]:{[Bt]:qn},[jt+"-track"]:{[Bt]:qn},img:{[Ft]:Ln(.8),[Kt]:Ln(.8),[mn]:"text-"+nn,[hn]:kn,[en]:Vn(-2.5,2,-2.5,0),[Yt]:Vn(2),[Gt]:Nn(Gt),[Bt]:Nn("bg3"),[an]:Nn(an),[Xt]:Ln(.25)},"img.flat":{[Gt]:qn,[Bt]:qn,[an]:qn},">img":{[Yt]:Ln(.25),[nn]:0,[sn]:0,[on]:wn,[Kt]:yn,[en]:0,...Nt},...Ye(Oe([{[nn]:0,[ln]:0},{[tn]:0,[sn]:0}],(e,t)=>[`>img[data-position='${t}']`,e])),main:{[cn]:xn,[rn]:Nn("fg"),[Bt]:Nn("bg"),[un]:Sn,[on]:wn,[an]:Nn(an),"flex-direction":"column"},...Ye(Oe([{[nn]:0,[ln]:0,[Ft]:En(35),[Kt]:Rn(),[Gt+"-"+sn]:Nn(Gt)},{[tn]:0,[sn]:0,[Ft]:En(),[Kt]:Rn(30),[Gt+"-"+nn]:Nn(Gt)},{[nn]:0,[ln]:0,[Ft]:En(),[Kt]:Rn(30),[Gt+"-"+tn]:Nn(Gt)},{[tn]:0,[sn]:0,[Ft]:En(35),[Kt]:Rn(),[Gt+"-"+ln]:Nn(Gt)},{[tn]:0,[sn]:0,[Ft]:En(),[Kt]:Rn()}],(e,t)=>[`main[data-position='${t}']`,e])),header:{[cn]:xn,[Yt]:Ln(.5),[an]:Nn(an),[Bt]:Mn(30,"% 0.008 var(--hue) / .5"),[Ft]:"calc(100% - .5rem)",[on]:"absolute",[Gt+"-"+nn]:Nn(Gt),[In]:"center",[fn]:"blur(4px)"},"header>img:nth-of-type(1)":{[Kt]:Ln(1),[Ft]:Ln(1),...Nt},"header>img:nth-of-type(6)":Vt,...Ye(Oe(Lt,(e,t)=>[`header>img[data-id='${t}']`,e])),"header>span":{[un]:Sn,[xn]:1,"font-weight":800,[pn]:Zn,[vn]:"ellipsis"},article:{[un]:Dn,[xn]:1,[Yt+"-"+tn]:Ln(2)},details:{[en]:Ln(.5),[Gt]:Nn(Gt),[Xt]:Ln(.25)},summary:{[Bt]:Nn("bg3"),[en]:Vn(-1),[Gt]:Nn(Gt),[Yt]:Ln(.25,.125),[cn]:xn,[Xt]:Ln(.25),"user-select":qn,[gn]:"space-between",[In]:"center",[fn]:"blur(4px)"},"summary>span::before":{[cn]:"inline-block",[mn]:"sub",[en]:Vn(2),[Ft]:Ln(1),[Kt]:Ln(1),..._t},"details[open]>summary":{[Gt+"-"+nn+"-"+ln+"-"+Ut]:0,[Gt+"-"+nn+"-"+sn+"-"+Ut]:0,[en+"-"+nn]:0},"details[open]>summary>span::before":Ot,"details>summary img":{[cn]:qn},"details[open]>summary img":{[cn]:yn,[en+"-"+ln]:Ln(.25)},"details>div":{[un]:Dn},[`caption,#${mt} p`]:{[rn]:Nn("fg2"),[Yt]:Ln(.25,.5),[bn]:ln,[en]:0,[pn]:Zn},"caption button":{[Ft]:Ln(1.5),[Gt]:qn,[Bt]:qn,[rn]:Nn("fg"),[Yt]:0,[hn]:kn},"caption button[disabled]":{[rn]:Nn("fg2")},".actions":{[Yt]:Ln(.75,.5),[en]:0,[cn]:xn,[Gt+"-"+tn]:Nn(Gt),[gn]:"space-between"},table:{[Qt]:"100%","border-collapse":"collapse","table-layout":wn},thead:{[Bt]:Nn("bg")},[`th,#${mt} td`]:{[un]:Sn,[Yt]:Ln(.25,.5),[Wt]:Ln(20),[Gt]:Nn(Gt),[vn]:"ellipsis",[pn]:Zn,"border-width":Vn(1,0,0),[bn]:ln},"th:first-child":{[Ft]:Ln(3),[Qt]:Ln(3),[Wt]:Ln(3)},"th.sorted":{[Bt]:Nn("bg3")},"td.extra":{[bn]:sn},"tbody button":{[Bt]:qn,[Gt]:qn,[dn]:0,[Ft]:Ln(.8),[Kt]:Ln(.8),[rn]:Nn("fg2"),[en]:Ln(0,.25,0,-.25),"line-height":Ln(.8)},"tbody button:first-letter":{[dn]:Ln(.8)},input:{[Bt]:Nn("bg2"),[rn]:yn,[Yt]:Vn(4),[Gt]:0,[en]:Vn(-4,0),[dn]:yn,[Wt]:Ln(6)},"input:focus":{"outline-width":0},'input[type="number"]':{[Ft]:Ln(3)},'input[type="checkbox"]':{[mn]:Vn(-2)},".editableCell":{[cn]:"inline-block",[Cn]:Vn(2)},"button.next":{[Cn]:Ln(.5)},"img.add":At,"img.clone":$t,"img.delete":Ht,"img.done":Rt,"img.edit":Et,"img.ok":zt,"img.okDis":Pt,"img.cancel":Jt,"span.warn":{[en]:Ln(2,.25),[rn]:"#d81b60"}},(e,t)=>`#${mt} ${t}{${Je(nt(e,(e,t)=>`${t}:${e};`))}}`)),$n=e=>t=>{return n=(t,n)=>t+e(n),jn(t).reduce(n,0);var n},Hn=e=>e?.size??0,zn=$n(Hn),Pn=$n(zn),Jn=$n(Pn),On=(e,t)=>e?.has(t)??!1,_n=e=>fe(e)||0==Hn(e),jn=e=>[...e?.values()??[]],Bn=e=>e.clear(),Fn=(e,t)=>e?.forEach(t),Wn=(e,t)=>e?.delete(t),Qn=Map,Kn=e=>new Qn(e),Gn=e=>[...e?.keys()??[]],Un=(e,t)=>e?.get(t),Xn=(e,t)=>Fn(e,(e,n)=>t(n,e)),Yn=(e,t,n)=>fe(n)?(Wn(e,t),e):e?.set(t,n),el=(e,t,n,l)=>(On(e,t)?l?.(Un(e,t)):Yn(e,t,n()),Un(e,t)),tl=(e,t,n,l=Yn)=>(lt(t,(t,l)=>n(e,l,t)),Xn(e,n=>et(t,n)?0:l(e,n)),e),nl=(e,t,n,l)=>{const s={};return Fn(e,(e,r)=>{if(!n?.(e,r)){const n=t?t(e,r):e;l?.(n)||(s[r]=n)}}),s},ll=(e,t,n)=>nl(e,e=>nl(e,t,n),_n,rt),sl=(e,t,n)=>nl(e,e=>ll(e,t,n),_n,rt),rl=(e,t)=>{const n=Kn();return Fn(e,(e,l)=>n.set(l,t?.(e)??e)),n},ol=e=>rl(e,rl),al=e=>rl(e,ol),il=(e,t,n,l,s=0)=>ye((n?el:Un)(e,t[s],s>Ze(t)-2?n:Kn),r=>{if(s>Ze(t)-2)return l?.(r)&&Yn(e,t[s]),r;const o=il(r,t,n,l,s+1);return _n(r)&&Yn(e,t[s]),o}),dl=/^\d+$/,cl=()=>{const e=[];let t=0;return[n=>(n?Be(e):null)??R+t++,t=>{dl.test(t)&&Ze(e)<1e3&&je(e,t)}]},ul=e=>new Set(De(e)||fe(e)?e:[e]),hl=(e,t)=>e?.add(t),ml=e=>{let t;const[n,l]=cl(),s=Kn();return[(l,r,o,a=[],i=()=>[])=>{t??=e();const d=n(1);return Yn(s,d,[l,r,o,a,i]),hl(il(r,o??[R],ul),d),d},(e,n,...l)=>Pe(((e,t=[R])=>{const n=[],l=(e,s)=>s==Ze(t)?je(n,e):Ce(t[s])?Fn(e,e=>l(e,s+1)):Pe([t[s],null],t=>l(Un(e,t),s+1));return l(e,0),n})(e,n),e=>Fn(e,e=>Un(s,e)[0](t,...n??[],...l))),e=>ye(Un(s,e),([,t,n])=>(il(t,n??[R],void 0,t=>(Wn(t,e),_n(t)?1:0)),Yn(s,e),l(e),n)),e=>ye(Un(s,e),([e,,n=[],l,s])=>{const r=(...o)=>{const a=Ze(o);a==Ze(n)?e(t,...o,...s(o)):Ce(n[a])?Pe(l[a]?.(...o)??[],e=>r(...o,e)):r(...o,n[a])};r()})]},bl=Kn(),gl=Kn(),pl="storage",vl=e=>{if(Ce(e))return"null";if(De(e))return J;if(Ge(e))return P;const t=E(e);return qe(t)||t==H&&ve(e)?t:void 0},Il=e=>e==P||e==J,fl=e=>Ge(e)||De(e)?"�"+it(e):e,Cl=e=>xe(e)&&"�"==e[0],wl=(e,t,n)=>!n&&Cl(e)?dt(Se(e,1)):e,Tl=(e,t,n,l,s,r)=>e==A?t:e==H?n:e==$?l:e==P?s:e==J?r:null,yl=e=>[e,e],ql=(e,t=zn)=>t(e[0])+t(e[1]),xl=()=>[Kn(),Kn()],kl=e=>[...e],Dl=([e,t])=>e===t,Sl=(e,t,n)=>Yn(e,t,Un(e,t)==-n?void 0:n),Zl=([e,t],[n,l])=>ot(e,n)&&ot(t,l),Ml=()=>{let e,t,n=!1,l=!1,s=0,r=[],o=[],a=0;const i=Kn(),d=Kn(),c=Kn(),u=Kn(),h=Kn(),m=Kn(),b=Kn(),g=Kn(),p=Kn(),v=Kn(),I=Kn(),f=Kn(),C=Kn(),w=Kn(),T=ul(),y=Kn(),q=Kn(),x=Kn(),k=Kn(),D=xl(),S=xl(),Z=xl(),M=xl(),N=xl(),L=xl(),V=xl(),E=xl(),R=xl(),A=xl(),$=xl(),z=xl(),P=xl(),J=xl(),F=xl(),Q=xl(),te=xl(),ae=xl(),ie=xl(),de=xl(),ue=xl(),he=xl(),me=Kn(),be=xl(),[ge,pe,ve,Ie]=ml(()=>fn),we=e=>{const t=a;a=1;const n=e();return a=t,n},Te=(e,t,n,l=Object.is)=>ye(t(),t=>e===t||l(e,t)?n(t):we(()=>n(t))),xe=e=>{if(!at(e,(e,t)=>[O,_,j].includes(t)))return!1;const t=e[O];if(!qe(t)&&t!=H&&!Il(t))return!1;const n=e[_];return!(Ce(n)&&!e[j]||(Ce(n)||(vl(n)!=t?tt(e,_):e[_]=fl(n)),0))},Ze=De,Me=(t,n)=>(!e||On(I,n)||qt(n))&&at(t,(e,t)=>Ne(n,t,e),()=>qt(n)),Ne=(e,t,n,l)=>at(l?n:He(n,e,t),(l,s)=>ye(Ve(e,t,s,l),e=>(n[s]=e,!0),()=>!1),()=>qt(e,t)),Ve=(t,n,l,s)=>e?ye(Un(Un(I,t),l),e=>Ce(s)?e[j]?s:qt(t,n,l,s,e[_]):vl(s)===e[O]?fl(s):Il(e[O])&&Cl(s)?s:qt(t,n,l,s,e[_]),()=>qt(t,n,l,s)):fe(vl(s))?qt(t,n,l,s):fl(s),Ee=(e,t)=>at(t?e:Je(e),(t,n)=>ye(Ae(n,t),t=>(e[n]=t,!0),()=>!1),()=>xt()),Ae=(e,n)=>t?ye(Un(C,e),t=>Ce(n)?t[j]?n:xt(e,n,t[_]):vl(n)===t[O]?fl(n):Il(t[O])&&Cl(n)?n:xt(e,n,t[_]),()=>xt(e,n)):fe(vl(n))?xt(e,n):fl(n),He=(e,t,n)=>(ye(Un(f,t),([l,s])=>{Fn(l,(t,n)=>{et(e,n)||(e[n]=t)}),Fn(s,l=>{et(e,l)||qt(t,n,l)})}),e),Je=e=>(t&&(Fn(w,(t,n)=>{et(e,n)||(e[n]=t)}),Fn(T,t=>{et(e,t)||xt(t)})),e),_e=e=>tl(I,e,(e,t,n)=>{const l=Kn(),s=ul();tl(el(I,t,Kn),n,(e,t,n)=>{Yn(e,t,n),ye(n[_],e=>Yn(l,t,e),()=>hl(s,t))}),Yn(f,t,[l,s])},(e,t)=>{Yn(I,t),Yn(f,t)}),Be=e=>tl(C,e,(e,t,n)=>{Yn(C,t,n),ye(n[_],e=>Yn(w,t,e),()=>hl(T,t))},(e,t)=>{Yn(C,t),Yn(w,t),Wn(T,t)}),Fe=e=>rt(e)?an():en(e),We=(e,t,n,l,s,r)=>fe(l)?un(e,t,n,!0,s):tn(e,t,n,l,s,r),Qe=e=>rt(e)?hn():nn(e),Ke=(e,t,n)=>fe(t)?mn(e,n):ln(e,t,n),Ue=(e,t)=>Te(e,()=>t?e:ye(r[1],t=>we(()=>t(Le(e))),()=>e),e=>tl(x,e,(e,t,n)=>Ye(t,n),(e,t)=>bt(t)),ot),Ye=(e,t,n)=>Te(t,()=>n?t:ye(r[2],n=>we(()=>n(e,Le(t))),()=>t),t=>tl(el(x,e,()=>(It(e,1),Yn(y,e,cl()),Yn(q,e,Kn()),Kn())),t,(t,n,l)=>nt(e,t,n,l),(t,n)=>gt(e,t,n)),ot),nt=(e,t,n,l,s)=>Te(l,()=>s?l:ye(r[3],t=>we(()=>t(e,n,Le(l))),()=>l),l=>tl(el(t,n,()=>(ft(e,n,1),Kn())),l,(t,l,s)=>st(e,n,t,l,s),(l,r)=>pt(e,t,n,l,r,s)),ot),st=(e,t,n,l,s,o)=>Te(s,()=>ye(o?void 0:r[4],n=>we(()=>n(e,t,l,s)),()=>s),s=>{On(n,l)||Ct(e,t,l,1);const r=Un(n,l);s!==r&&(wt(e,t,l,r,s),Yn(n,l,s))}),it=(e,t,n,l,s,r)=>ye(Un(t,n),t=>st(e,n,t,l,s,r),()=>{const o=Kn();Yn(t,n,o),ft(e,n,1),lt(He({[l]:s},e,n),(t,l)=>st(e,n,o,l,t,r))}),ut=(e,t)=>Te(e,()=>t?e:ye(r[5],t=>we(()=>t(Le(e))),()=>e),e=>tl(k,e,(e,t,n)=>ht(t,n),(e,t)=>vt(t)),ot),ht=(e,t,n)=>Te(t,()=>ye(n?void 0:r[6],n=>we(()=>n(e,t)),()=>t),t=>{On(k,e)||Tt(e,1);const n=Un(k,e);t!==n&&(yt(e,n,t),Yn(k,e,t))}),mt=e=>el(x,e,()=>(It(e,1),Yn(y,e,cl()),Yn(q,e,Kn()),Kn())),bt=e=>we(()=>r[8]?.(e))??1?Ye(e,{},!0):Un(x,e),gt=(e,t,n)=>{if(we(()=>r[9]?.(e,n))??1){const[,l]=Un(y,e);l(n),nt(e,t,n,{},!0)}},pt=(e,t,n,l,s,o,a)=>{const i=Un(Un(f,e)?.[0],s);if(!fe(i)&&!o)return st(e,n,l,s,i);if(a||(we(()=>r[10]?.(e,n,s))??1)){const r=t=>{wt(e,n,t,Un(l,t)),Ct(e,n,t,-1),Yn(l,t)};fe(i)?r(s):Xn(l,r),_n(l)&&(ft(e,n,-1),_n(Yn(t,n))&&(It(e,-1),Yn(x,e),Yn(y,e),Yn(q,e)))}},vt=(e,t)=>{const n=Un(w,e);if(!fe(n))return ht(e,n);(t||(we(()=>r[12]?.(e))??1))&&(yt(e,Un(k,e)),Tt(e,-1),Yn(k,e))},It=(e,t)=>Sl(i,e,t),ft=(e,t,n)=>Sl(el(u,e,Kn),t,n)&&Yn(c,e,el(c,e,()=>0)+n),Ct=(e,t,n,l)=>{const s=Un(q,e),r=Un(s,n)??0;(0==r&&1==l||1==r&&-1==l)&&Sl(el(d,e,Kn),n,l),Yn(s,n,r!=-l?r+l:void 0),Sl(el(el(h,e,Kn),t,Kn),n,l)},wt=(e,t,n,l,s)=>{el(el(el(m,e,Kn),t,Kn),n,()=>[l,0])[1]=s,o[3]?.(e,t,n,s,a)},Tt=(e,t)=>Sl(b,e,t),yt=(e,t,n)=>{el(g,e,()=>[t,0])[1]=n,o[4]?.(e,n,a)},qt=(e,t,n,l,s)=>(je(el(el(el(p,e,Kn),t,Kn),n,()=>[]),l),s),xt=(e,t,n)=>(je(el(v,e,()=>[]),t),n),kt=(e,t,n)=>ye(Un(Un(Un(m,e),t),n),([e,t])=>[!0,wl(e),wl(t)],()=>[!1,...yl(_t(e,t,n))]),Dt=e=>ye(Un(g,e),([e,t])=>[!0,wl(e),wl(t)],()=>[!1,...yl(Ft(e))]),St=e=>_n(p)||_n(Q[e])?0:Fn(e?al(p):p,(t,n)=>Fn(t,(t,l)=>Fn(t,(t,s)=>pe(Q[e],[n,l,s],t)))),Zt=e=>_n(v)||_n(te[e])?0:Fn(e?rl(v):v,(t,n)=>pe(te[e],[n],t)),Mt=(e,t,n,l)=>{if(!_n(e))return pe(t,l,()=>nl(e)),Xn(e,(e,t)=>pe(n,[...l??[],e],1==t)),1},Nt=e=>{const t=!_n(D[e]),l=!_n(A[e]),s=!(_n(P[e])&&_n(J[e])&&_n(R[e])&&_n($[e])&&_n(L[e])&&_n(V[e])&&_n(E[e])&&!l&&_n(Z[e])&&_n(M[e])),r=!(_n(F[e])&&_n(z[e])&&_n(N[e])&&_n(S[e]));if(t||s||r){const a=e?[rl(i),ol(d),rl(c),ol(u),al(h),(o=m,rl(o,e=>rl(e,e=>rl(e,kl))))]:[i,d,c,u,h,m];if(t){const t=Wt();t!=n&&pe(D[e],void 0,t)}if(s){Mt(a[0],Z[e],M[e]),Fn(a[1],(t,n)=>Mt(t,L[e],V[e],[n])),Fn(a[2],(t,n)=>{0!=t&&pe(E[e],[n],zt(n))});const t=ul();Fn(a[3],(n,s)=>{Mt(n,R[e],$[e],[s])&&l&&(pe(A[e],[s,null]),hl(t,s))}),l&&Fn(a[5],(n,l)=>{if(!On(t,l)){const t=ul();Fn(n,e=>Fn(e,([n,l],s)=>l!==n?hl(t,s):Wn(e,s))),Fn(t,t=>pe(A[e],[l,t]))}}),Fn(a[4],(t,n)=>Fn(t,(t,l)=>Mt(t,P[e],J[e],[n,l])))}if(r){let t;Fn(a[5],(n,l)=>{let s;Fn(n,(n,r)=>{let o;Fn(n,([n,a],i)=>{a!==n&&(pe(F[e],[l,r,i],wl(a),wl(n),kt),t=s=o=1)}),o&&pe(z[e],[l,r],kt)}),s&&pe(N[e],[l],kt)}),t&&pe(S[e],void 0,kt)}}var o},Lt=e=>{const t=!_n(ae[e]),n=!_n(de[e])||!_n(ue[e]),s=!_n(he[e])||!_n(ie[e]);if(t||n||s){const r=e?[rl(b),rl(g,kl)]:[b,g];if(t){const t=Xt();t!=l&&pe(ae[e],void 0,t)}if(n&&Mt(r[0],de[e],ue[e]),s){let t;Fn(r[1],([n,l],s)=>{l!==n&&(pe(he[e],[s],wl(l),wl(n),Dt),t=1)}),t&&pe(ie[e],void 0,Dt)}}},Vt=(e,...t)=>(pn(()=>e(...Oe(t,ce))),fn),Et=(e,t,n,l,s)=>{let r=Jt(e,t,...n);return ge(()=>{const s=Jt(e,t,...n);$e(s,r)||(r=s,l(fn,e,t,...n,r))},A[s?1:0],[e,t],[$t])},Rt=(e=!1)=>[nl(m,(t,n)=>-1===Un(i,n)?void 0:nl(t,(t,l)=>-1===Un(Un(u,n),l)?void 0:nl(t,([,t])=>wl(t,0,e),e=>Dl(e)),_n,rt),_n,rt),nl(g,([,t])=>wl(t,0,e),e=>Dl(e)),1],At=()=>sl(x,wl),$t=()=>Gn(x),Ht=e=>Gn(Un(q,ce(e))),zt=e=>Hn(Un(x,ce(e))),Pt=e=>Gn(Un(x,ce(e))),Jt=(e,t,n,l=0,s)=>{return Ge(e)?Jt(e.tableId,e.cellId,e.descending,e.offset,e.limit):Oe(Se(ze((r=Un(x,ce(e)),o=(e,n)=>[fe(t)?n:Un(e,ce(t)),n],Oe([...r?.entries()??[]],([e,t])=>o(t,e))),([e],[t])=>((e??0)<(t??0)?-1:1)*(n?-1:1)),l,fe(s)?s:l+s),([,e])=>e);var r,o},Ot=(e,t)=>Gn(Un(Un(x,ce(e)),ce(t))),_t=(e,t,n)=>wl(Un(Un(Un(x,ce(e)),ce(t)),ce(n))),jt=()=>nl(k,wl),Bt=()=>Gn(k),Ft=e=>wl(Un(k,ce(e))),Wt=()=>!_n(x),Qt=e=>On(x,ce(e)),Kt=(e,t)=>On(Un(q,ce(e)),ce(t)),Gt=(e,t)=>On(Un(x,ce(e)),ce(t)),Ut=(e,t,n)=>On(Un(Un(x,ce(e)),ce(t)),ce(n)),Xt=()=>!_n(k),Yt=e=>On(k,ce(e)),en=e=>Vt(()=>(e=>at(e,Me,qt))(e)?Ue(e):0),tn=(e,t,n,l,s,o)=>Vt((e,t,n)=>ye(Ve(e,t,n,ke(l)?l(_t(e,t,n)):l),l=>{const a=mt(e);ye(s||o||!r[14]?.()?void 0:r[3],r=>{const o=Un(a,t),i={...o?nl(o):{},[n]:l};ye(we(()=>r(e,t,Le(i))),n=>((e,t,n,l,s)=>{tl(el(t,n,()=>(ft(e,n,1),Kn())),l,(t,l,r)=>ye(Ve(e,n,l,r),r=>st(e,n,t,l,r,s)),(l,s)=>pt(e,t,n,l,s,!0))})(e,a,t,n,s))},()=>it(e,a,t,n,l,s))}),e,t,n),nn=e=>Vt(()=>Ee(e)?ut(e):0),ln=(e,t,n)=>Vt(e=>ye(Ae(e,ke(t)?t(Ft(e)):t),t=>ht(e,t,n)),e),sn=e=>(Re(()=>Fe(dt(e))),fn),rn=t=>Vt(()=>{if((e=at(t,e=>at(e,xe)))&&(_e(t),!_n(x))){const e=At();an(),en(e)}}),on=e=>Vt(()=>{if(t=(e=>at(e,xe))(e)){const n=jt();gn(),hn(),t=!0,Be(e),nn(n)}}),an=()=>Vt(()=>we(()=>r[7]?.())??1?Ue({},!0):0),dn=e=>Vt(e=>On(x,e)?bt(e):0,e),cn=(e,t)=>Vt((e,t)=>ye(Un(x,e),n=>On(n,t)?gt(e,n,t):0),e,t),un=(e,t,n,l,s)=>Vt((e,t,n)=>ye(Un(x,e),r=>ye(Un(r,t),o=>On(o,n)?pt(e,r,t,o,n,l,s):0)),e,t,n),hn=()=>Vt(()=>we(()=>r[11]?.())??1?ut({},!0):0),mn=(e,t)=>Vt(e=>On(k,e)?vt(e,t):0,e),bn=()=>Vt(()=>{_e({}),e=!1}),gn=()=>Vt(()=>{Be({}),t=!1}),pn=(e,t)=>{if(-1!=s){vn();const n=e();return In(t),n}},vn=()=>(-1!=s&&s++,1==s&&(o[0]?.(),pe(me)),fn),In=e=>(s>0&&(s--,0==s&&(s=1,we(()=>{St(1),_n(m)||Nt(1),Zt(1),_n(g)||Lt(1)}),e?.(fn)&&(Fn(m,(e,t)=>Fn(e,(e,n)=>Fn(e,([e],l)=>We(t,n,l,e,!0)))),Bn(m),Fn(g,([e],t)=>Ke(t,e,!0)),Bn(g)),pe(be[0],void 0),s=-1,St(0),_n(m)||Nt(0),Zt(0),_n(g)||Lt(0),o[1]?.(),pe(be[1],void 0),o[2]?.(),s=0,n=Wt(),l=Xt(),Pe([i,d,c,u,h,m,p,b,g,v],Bn))),fn),fn={getContent:()=>[At(),jt()],getTables:At,getTableIds:$t,getTable:e=>ll(Un(x,ce(e)),wl),getTableCellIds:Ht,getRowCount:zt,getRowIds:Pt,getSortedRowIds:Jt,getRow:(e,t)=>nl(Un(Un(x,ce(e)),ce(t)),wl),getCellIds:Ot,getCell:_t,getValues:jt,getValueIds:Bt,getValue:Ft,hasTables:Wt,hasTable:Qt,hasTableCell:Kt,hasRow:Gt,hasCell:Ut,hasValues:Xt,hasValue:Yt,getTablesJson:()=>ct(x),getValuesJson:()=>ct(k),getJson:()=>ct([x,k]),getTablesSchemaJson:()=>ct(I),getValuesSchemaJson:()=>ct(C),getSchemaJson:()=>ct([I,C]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:e=>Vt(()=>{const t=ke(e)?e():e;Ze(t)&&(e=>{Te(e,()=>ye(r[0],t=>we(()=>t(Le(e))),()=>e),([e,t])=>{(rt(e)?an:en)(e),(rt(t)?hn:nn)(t)},Zl)})(t)}),setTables:en,setTable:(e,t)=>Vt(e=>Me(t,e)?Ye(e,t):0,e),setRow:(e,t,n)=>Vt((e,t)=>Ne(e,t,n)?nt(e,mt(e),t,n):0,e,t),addRow:(e,t,n=!0)=>pn(()=>{let l;return Ne(e,l,t)&&(e=ce(e),nt(e,mt(e),l=((e,t)=>{const[n]=Un(y,e);let l;do{l=n(t)}while(On(Un(x,e),l));return l})(e,n?1:0),t)),l}),setPartialRow:(e,t,n)=>Vt((e,t)=>{if(Ne(e,t,n,1)){const l=mt(e);lt(n,(n,s)=>it(e,l,t,s,n))}},e,t),setCell:tn,setValues:nn,setPartialValues:e=>Vt(()=>Ee(e,1)?lt(e,(e,t)=>ht(t,e)):0),setValue:ln,applyChanges:e=>Vt(()=>Te(e,()=>ye(r[13],t=>we(()=>t(Le(e))),()=>e),e=>{lt(e[0],(e,t)=>fe(e)?dn(t):lt(e,(e,n)=>fe(e)?cn(t,n):lt(e,(e,l)=>We(t,n,l,e,void 0,!0)))),lt(e[1],(e,t)=>Ke(t,e))},Zl)),setTablesJson:sn,setValuesJson:e=>(Re(()=>Qe(dt(e))),fn),setJson:e=>Vt(()=>Re(()=>{const[t,n]=dt(e);Fe(t),Qe(n)},()=>sn(e))),setTablesSchema:rn,setValuesSchema:on,setSchema:(e,t)=>Vt(()=>{rn(e),on(t)}),delTables:an,delTable:dn,delRow:cn,delCell:un,delValues:hn,delValue:mn,delTablesSchema:bn,delValuesSchema:gn,delSchema:()=>Vt(()=>{bn(),gn()}),transaction:pn,startTransaction:vn,getTransactionChanges:()=>Rt(),getTransactionLog:()=>[!_n(m),!_n(g),sl(m,kl,Dl),sl(p),nl(g,kl,Dl),nl(v),nl(i),ll(u),sl(h),nl(b)],finishTransaction:In,forEachTable:e=>Fn(x,(t,n)=>e(n,e=>Fn(t,(t,n)=>e(n,e=>Xn(t,(t,n)=>e(t,wl(n))))))),forEachTableCell:(e,t)=>Xn(Un(q,ce(e)),t),forEachRow:(e,t)=>Fn(Un(x,ce(e)),(e,n)=>t(n,t=>Xn(e,(e,n)=>t(e,wl(n))))),forEachCell:(e,t,n)=>Xn(Un(Un(x,ce(e)),ce(t)),(e,t)=>n(e,wl(t))),forEachValue:e=>Xn(k,(t,n)=>e(t,wl(n))),addSortedRowIdsListener:(e,t,n,l,s,r,o)=>Ge(e)?Et(e.tableId,e.cellId,[e.descending??!1,e.offset??0,e.limit],t,n):Et(e,t,[n,l,s],r,o),addStartTransactionListener:e=>ge(e,me),addWillFinishTransactionListener:e=>ge(e,be[0]),addDidFinishTransactionListener:e=>ge(e,be[1]),callListener:e=>(Ie(e),fn),delListener:e=>(ve(e),fn),getListenerStats:()=>({hasTables:ql(D),tables:ql(S),tableIds:ql(Z),hasTable:ql(M),table:ql(N),tableCellIds:ql(L),hasTableCell:ql(V,Pn),rowCount:ql(E),rowIds:ql(R),sortedRowIds:ql(A),hasRow:ql($,Pn),row:ql(z,Pn),cellIds:ql(P,Pn),hasCell:ql(J,Jn),cell:ql(F,Jn),invalidCell:ql(Q,Jn),hasValues:ql(ae),values:ql(ie),valueIds:ql(de),hasValue:ql(ue),value:ql(he),invalidValue:ql(te),transaction:zn(me)+ql(be)}),isMergeable:()=>!1,_:[Ml,ge,pe,(e,t,n,l,s)=>o=[e,t,n,l,s],(e,t,n,l,s,o,a,i,d,c,u,h,m,b,g)=>r=[e,t,n,l,s,o,a,i,d,c,u,h,m,b,g],We,Ke,()=>[sl(x),nl(k)],()=>Rt(!0)]};return lt({[W+G]:[0,D,[],()=>[Wt()]],[G]:[0,S],[U]:[0,Z],[W+K]:[1,M,[$t],e=>[Qt(...e)]],[K]:[1,N,[$t]],[K+le]:[1,L,[$t]],[W+K+ne]:[2,V,[$t,Ht],e=>[Kt(...e)]],[Y]:[1,E,[$t]],[ee]:[1,R,[$t]],[W+X]:[2,$,[$t,Pt],e=>[Gt(...e)]],[X]:[2,z,[$t,Pt]],[le]:[2,P,[$t,Pt]],[W+ne]:[3,J,[$t,Pt,Ot],e=>[Ut(...e)]],[ne]:[3,F,[$t,Pt,Ot],e=>yl(_t(...e))],InvalidCell:[3,Q],[W+re]:[0,ae,[],()=>[Xt()]],[re]:[0,ie],[oe]:[0,de],[W+se]:[1,ue,[Bt],e=>[Yt(...e)]],[se]:[1,he,[Bt],e=>yl(Ft(e[0]))],InvalidValue:[1,te]},([e,t,n,l],s)=>{fn["add"+s+B]=(...s)=>ge(s[e],t[s[e+1]?1:0],e>0?Se(s,0,e):void 0,n,l)}),Xe(fn)},Nl=({s:t})=>{const n=l(Ct,t)??1,r=s(wt,()=>!0,[],t);return l(wt,t)?null:e("img",{onClick:r,title:bt,"data-position":n})},{PureComponent:Ll,createContext:Vl,useCallback:El,useContext:Rl,useEffect:Al,useLayoutEffect:$l,useMemo:Hl,useRef:zl,useState:Pl,useSyncExternalStore:Jl}=V,Ol=(e,...t)=>fe(e)?{}:e(...t),_l="tinybase_uirc",jl=he[_l]?he[_l]:he[_l]=Vl([]),Bl=(e,t)=>{const n=((e,t)=>{const n=Rl(jl);return fe(e)?n[2*t]:xe(e)?((e,t)=>ye(e,e=>e[t]))(n[2*t+1],e):e})(e,t);return fe(e)||xe(e)?n:e},Fl=[],Wl=[{},[],[Fl,void 0,Fl],{},void 0,void 0,!1,0],Ql=(e,t)=>e===t||(Ge(e)||De(e))&&it(e)===it(t),Kl=[(e,t)=>ot(e,t,Ql),$e,([e,t,n],[l,s,r])=>t===s&&$e(e,l)&&$e(n,r),(e,t)=>ot(e,t,He),He,Ql],Gl=(e,t)=>e===t,Ul=(e,t,n,l=Fl)=>{const s=zl(Wl[n]),r=El(()=>{const r=t?.[(6==n?"has":"get")+e]?.(...l)??Wl[n];return(Kl[n]??Gl)(r,s.current)?s.current:s.current=r},[t,n,e,...l]),o=El(s=>((e,t,...n)=>{const l=e?.["add"+t+B]?.(...n);return()=>e?.delListener?.(l)})(t,(6==n?W:R)+e,...l,s),[t,n,e,...l]);return Jl(o,r,r)},Xl=(e,t,n,l,s,r,...o)=>((e,t,n,l=Fl,s=Me,r=Fl,o,...a)=>El(l=>ye(e,e=>ye(n(l,e),n=>s(e[o+t](...Yl(a,e,l),n),n))),[e,t,...l,...r,o,...es(a)]))(ns(e),t,n,l,s,r,"set",...o),Yl=(e,t,n)=>Oe(e,e=>ke(e)?e(n,t):e),es=e=>{return t=e=>!ke(e),e.filter(t);var t},ts=(e,t,n=Me,l=Fl,...s)=>{const r=ns(e);return El(e=>n(r?.["del"+t](...Yl(s,r,e))),[r,t,...l,...es(s)])},ns=e=>Bl(e,0),ls=(e,t)=>Ul(K+le,ns(t),1,[e]),ss=(e,t,n,l,s,r)=>((e,t,n,l,s,r)=>Ul(te,ns(r),1,[e,t,n,l,s]))(...Ge(e)?[e.tableId,e.cellId,e.descending??!1,e.offset??0,e.limit,t]:[e,t,n,l,s,r]),rs=(e,t,n,l)=>Ul(ne,ns(l),5,[e,t,n]),os=(e,t)=>Ul(se,ns(t),5,[e]),as=(e,t,n,l,s,r)=>Xl(l,K,t,n,s,r,e),is=(e,t,n,l,s,r,o)=>Xl(s,X,n,l,r,o,e,t),ds=(e,t,n,l,s,r,o,a)=>Xl(r,ne,l,s,o,a,e,t,n),cs=(e,t,n,l,s,r)=>Xl(l,se,t,n,s,r,e),us=(e,t,n,l)=>ts(t,K,n,l,e),hs=(e,t,n,l,s)=>ts(n,X,l,s,e,t),ms=(e,t,n,l,s,r,o)=>ts(s,ne,r,o,e,t,n,l),bs=(e,t,n,l)=>ts(t,se,n,l,e),gs=e=>Bl(e,2),ps=(e,t,n)=>Ul("Slice"+ee,gs(n),1,[e,t]),vs=e=>Bl(e,3),Is=e=>Bl(e,4),fs=(e,t)=>Ul(F+K+le,Is(t),1,[e]),Cs=(e,t,n,l=0,s,r)=>Ul(F+te,Is(r),1,[e,t,n,l,s]),ws=(e,t)=>Hl(()=>({store:e,tableId:t}),[e,t]),Ts=(e,t)=>Hl(()=>({queries:e,queryId:t}),[e,t]),ys=(e,t,n)=>{const l=El(e,t);return n?l:void 0},qs=(...e)=>Hl(()=>e,e),xs=(e,t,n)=>Hl(()=>{const l=t??e;return lt(De(l)?Ye(Oe(l,e=>[e,e])):l,(e,t)=>({label:t,component:n,...xe(e)?{label:e}:e}))},[t,n,e]),ks="editable",Ds=(t=[],n,l=0)=>Oe(t,({component:t},s)=>e("td",{className:de,children:e(t,{...n})},Ss(s,l))),Ss=(e,t)=>(t?">":"<")+e,Zs=(t=[],n=0)=>Oe(t,({label:t},l)=>e("th",{className:de,children:t},Ss(l,n))),Ms=({cellId:e,sort:[n,l],label:s=e??R,onClick:r})=>t("th",{onClick:ys(()=>r?.(e),[r,e],r),className:fe(l)||n!=e?void 0:`sorted ${l?"de":"a"}scending`,children:[fe(l)||n!=e?null:(l?"↓":"↑")+" ",s]}),Ns=({className:n,headerRow:l,idColumn:s,params:[r,o,a,i,d,c,u,h]})=>t("table",{className:n,children:[h?e("caption",{children:h}):null,!1===l?null:e("thead",{children:t("tr",{children:[Zs(i),!1===s?null:e(Ms,{sort:c??[],label:"Id",onClick:u}),nt(r,({label:t},n)=>e(Ms,{cellId:n,label:t,sort:c??[],onClick:u},n)),Zs(d,1)]})}),e("tbody",{children:Oe(a,n=>{const l={...o,rowId:n};return t("tr",{children:[Ds(i,l),we(s)?null:e("th",{title:n,children:n}),nt(r,({component:t,getComponentProps:s},r)=>e("td",{children:e(t,{...Ol(s,n,r),...l,cellId:r})},r)),Ds(d,l,1)]},n)})})]}),Ls=({thing:n,onThingChange:l,className:s,hasSchema:r,showType:o=!0})=>{const[a,i]=Pl(),[d,c]=Pl(),[u,h]=Pl(),[m,b]=Pl(),[g,p]=Pl(),[v,I]=Pl("{}"),[f,C]=Pl("[]"),[w,T]=Pl(""),[y,q]=Pl("");d!==n&&(i(vl(n)),c(n),Ge(n)?I(it(n)):De(n)?C(it(n)):(h(n+""),b(Number(n)||0),p(!!n)));const x=El((e,t)=>{t(e),c(e),l(e)},[l]),k=El((e,t,n,s)=>{t(e);try{const t=dt(e);n(t)&&(c(t),l(t),s(""))}catch{s("invalid")}},[l]),D=El(()=>{if(!r?.()){const e=Tl(a,H,$,P,J,A),t=Tl(e,u,m,g,Ee(()=>dt(v),{}),Ee(()=>dt(f),[]));i(e),c(t),l(t)}},[r,l,u,m,g,v,f,a]),S=Tl(a,e("input",{value:u,onChange:El(e=>x(e[ae][ie]+"",h),[x])},a),e("input",{type:"number",value:m,onChange:El(e=>x(Number(e[ae][ie]||0),b),[x])},a),e("input",{type:"checkbox",checked:g,onChange:El(e=>x(!!e[ae].checked,p),[x])},a),e("input",{value:v,className:w,onChange:El(e=>k(e[ae][ie],I,Ge,T),[k])},a),e("input",{value:f,className:y,onChange:El(e=>k(e[ae][ie],C,De,q),[k])},a));return t("div",{className:s,children:[o&&S?e("button",{title:a,className:a,onClick:D,children:a}):null,S]})},Vs=({tableId:t,rowId:n,cellId:l,store:s,className:r,showType:o})=>{const[a,i]=((e,t,n,l)=>[rs(e,t,n,l),ds(e,t,n,Ne,[],l)])(t,n,l,s);return e(Ls,{thing:a,onThingChange:i,className:r??ks+ne,showType:o,hasSchema:ns(s)?.hasTablesSchema})},Es=({valueId:t,store:n,className:l,showType:s})=>{const[r,o]=((e,t)=>[os(e,t),cs(e,Ne,[],t)])(t,n);return e(Ls,{thing:r,onThingChange:o,className:l??ks+se,showType:s,hasSchema:ns(n)?.hasValuesSchema})},Rs=(e,t)=>Oe(ls(e,t),t=>e+"."+t),As=({localRowId:l,params:[s,r,o,a,i,d,c,u,h]})=>{const m=((e,t,n)=>Ul("RemoteRowId",vs(n),5,[e,t]))(i,l,d),b={tableId:o??"",rowId:l,store:c};return t("tr",{children:[Ds(u,b),we(s)?null:t(n,{children:[e("th",{title:l,children:l}),e("th",{title:m,children:m})]}),nt(r,({component:t,getComponentProps:n},s)=>{const[r,i]=((e,t="",n)=>e.split(t,n))(s,".",2),d=r===o?l:r===a?m:void 0;return fe(d)?null:e("td",{children:e(t,{...Ol(n,d,i),store:c,tableId:r,rowId:d,cellId:i})},s)}),Ds(h,b,1)]})},$s=({relationshipId:l,relationships:s,editable:o,customCells:a,extraCellsBefore:i,extraCellsAfter:d,className:c,headerRow:u,idColumn:h=!0})=>{const[m,b,g,p]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(vs(s),l),v=xs([...Rs(g,b),...Rs(p,b)],a,o?Vs:r),I=qs(h,v,g,p,l,m,b,i,d);return t("table",{className:c,children:[we(u)?null:e("thead",{children:t("tr",{children:[Zs(i),we(h)?null:t(n,{children:[t("th",{children:[g,".Id"]}),t("th",{children:[p,".Id"]})]}),nt(v,({label:t},n)=>e("th",{children:t},n)),Zs(d,1)]})}),e("tbody",{children:Oe((f=g,C=b,Ul(ee,ns(C),1,[f])),t=>e(As,{localRowId:t,params:I},t))})]});var f,C},Hs=(t,n=!1,l,s=0,r,o,a,i)=>{const[[d,c,u],h]=Pl([t,n,s]),m=El(e=>{h(e),i?.(e)},[i]),b=ys(e=>m([e,e==d&&!c,u]),[m,d,c,u],l),g=El(e=>m([d,c,e]),[m,d,c]),p=!0===a?zs:a;return[[d,c,u],b,Hl(()=>we(a)?null:e(p,{offset:u,limit:r,total:o,onChange:g}),[a,p,u,r,o,g])]},zs=({onChange:l,total:s,offset:r=0,limit:o=s,singular:a="row",plural:i=a+"s"})=>{(r>s||r<0)&&(r=0,l(0));const d=ys(()=>l(r-o),[l,r,o],r>0),c=ys(()=>l(r+o),[l,r,o],r+o<s);return t(n,{children:[s>o&&t(n,{children:[e("button",{className:"previous",disabled:0==r,onClick:d,children:"←"}),e("button",{className:"next",disabled:r+o>=s,onClick:c,children:"→"}),r+1," to ",ge(s,r+o)," of "]}),s," ",1!=s?i:a]})},Ps=({queryId:t,cellId:n,descending:l,offset:s,limit:r,queries:a,sortOnClick:i,paginator:d=!1,customCells:c,extraCellsBefore:u,extraCellsAfter:h,onChange:m,...b})=>{const[g,p,v]=Hs(n,l,i,s,r,((e,t)=>Ul(F+Y,Is(t),7,[e]))(t,a),d,m);return e(Ns,{...b,params:qs(xs(fs(t,a),c,o),Ts(a,t),Cs(t,...g,r,a),u,h,g,p,v)})},Js=({indexId:t,sliceId:n,indexes:l,editable:s,customCells:o,extraCellsBefore:a,extraCellsAfter:i,...d})=>{const[c,u,h]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(gs(l),t);return e(Ns,{...d,params:qs(xs(ls(h,u),o,s?Vs:r),ws(u,h),ps(t,n,c),a,i)})},Os=({tableId:t,cellId:n,descending:l,offset:s,limit:o,store:a,editable:i,sortOnClick:d,paginator:c=!1,onChange:u,customCells:h,extraCellsBefore:m,extraCellsAfter:b,...g})=>{const[p,v,I]=Hs(n,l,d,s,o,((e,t)=>Ul(Y,ns(t),7,[e]))(t,a),c,u);return e(Ns,{...g,params:qs(xs(ls(t,a),h,i?Vs:r),ws(a,t),ss(t,...p,o,a),m,b,p,v,I)})},_s=(t=[],n,l=0)=>Oe(t,({component:t},s)=>e("td",{className:de,children:e(t,{...n})},Ss(s,l))),js=({store:n,editable:l=!1,valueComponent:s=(l?Es:a),getValueComponentProps:r,extraCellsBefore:o,extraCellsAfter:i,className:d,headerRow:c,idColumn:u})=>{return t("table",{className:d,children:[!1===c?null:e("thead",{children:t("tr",{children:[Zs(o),!1===u?null:e("th",{children:"Id"}),e("th",{children:se}),Zs(i,1)]})}),e("tbody",{children:Oe((h=n,Ul(oe,ns(h),1)),l=>{const a={valueId:l,store:n};return t("tr",{children:[_s(o,a),we(u)?null:e("th",{title:l,children:l}),e("td",{children:e(s,{...Ol(r,l),...a})}),_s(i,a,1)]},l)})})]});var h},Bs=({uniqueId:n,title:l,editable:s,handleEditable:r,children:o,s:a})=>{const c=!!i(pt,n,It,a),u=d(pt,n,It,e=>e[ae].open,[],a);return t("details",{open:c,onToggle:u,children:[t("summary",{children:[e("span",{children:l}),r?e("img",{onClick:r,className:s?"done":"edit",title:s?"Done editing":"Edit"}):null]}),e("div",{children:o})]})},Fs=(e,t)=>[!!i(pt,e,ft,t),El(n=>{t.setCell(pt,e,ft,e=>!e),n.preventDefault()},[t,e])],Ws=({indexes:t,indexesId:n,indexId:l,s:s})=>e(Bs,{uniqueId:yt("i",n,l),title:"Index: "+l,s:s,children:Oe(h(l,t),r=>e(Qs,{indexes:t,indexesId:n,indexId:l,sliceId:r,s:s},r))}),Qs=({indexes:t,indexesId:n,indexId:l,sliceId:s,s:r})=>{const o=yt("i",n,l,s),[a,i]=Fs(o,r);return e(Bs,{uniqueId:o,title:"Slice: "+s,editable:a,handleEditable:i,s:r,children:e(Js,{sliceId:s,indexId:l,indexes:t,editable:a})})},Ks=({indexesId:t,s:n})=>{const l=c(t),s=u(l);return fe(l)?null:e(Bs,{uniqueId:yt("i",t),title:"Indexes: "+(t??_),s:n,children:_e(s)?"No indexes defined":qt(s,s=>e(Ws,{indexes:l,indexesId:t,indexId:s,s:n},s))})},Gs=({metrics:n,metricId:l})=>t("tr",{children:[e("th",{title:l,children:l}),e("td",{children:n?.getTableId(l)}),e("td",{children:g(l,n)})]}),Us=({metricsId:n,s:l})=>{const s=m(n),r=b(s);return fe(s)?null:e(Bs,{uniqueId:yt("m",n),title:"Metrics: "+(n??_),s:l,children:_e(r)?"No metrics defined":t("table",{children:[t("thead",{children:[e("th",{children:"Metric Id"}),e("th",{children:"Table Id"}),e("th",{children:"Metric"})]}),e("tbody",{children:Oe(r,t=>e(Gs,{metrics:s,metricId:t},t))})]})})},Xs=({queries:t,queriesId:n,queryId:l,s:s})=>{const r=yt("q",n,l),[o,a,c]=dt(i(pt,r,vt,s)??"[]"),u=d(pt,r,vt,ct,[],s);return e(Bs,{uniqueId:r,title:"Query: "+l,s:s,children:e(Ps,{queryId:l,queries:t,cellId:o,descending:a,offset:c,limit:10,paginator:!0,sortOnClick:!0,onChange:u})})},Ys=({queriesId:t,s:n})=>{const l=p(t),s=v(l);return fe(l)?null:e(Bs,{uniqueId:yt("q",t),title:"Queries: "+(t??_),s:n,children:_e(s)?"No queries defined":qt(s,s=>e(Xs,{queries:l,queriesId:t,queryId:s,s:n},s))})},er=({relationships:t,relationshipsId:n,relationshipId:l,s:s})=>{const r=yt("r",n,l),[o,a]=Fs(r,s);return e(Bs,{uniqueId:r,title:"Relationship: "+l,editable:o,handleEditable:a,s:s,children:e($s,{relationshipId:l,relationships:t,editable:o})})},tr=({relationshipsId:t,s:n})=>{const l=I(t),s=f(l);return fe(l)?null:e(Bs,{uniqueId:yt("r",t),title:"Relationships: "+(t??_),s:n,children:_e(s)?"No relationships defined":qt(s,s=>e(er,{relationships:l,relationshipsId:t,relationshipId:s,s:n},s))})},nr=(e,t)=>{let n,l=0;for(;t(n=e+(l>0?" (copy"+(l>1?" "+l:"")+")":""));)l++;return n},lr=({actions:l,...s})=>{const[r,o]=Pl(),a=El(()=>o(void 0),[]);if(Al(()=>{if(!fe(r)){const e=e=>{fe(r)||"Escape"!==e.key||(e.preventDefault(),a())};return document.addEventListener("keydown",e),()=>document.removeEventListener("keydown",e)}},[r,a]),fe(r))return l.map(([t,n],l)=>e("img",{title:n,className:t,onClick:()=>o(l)},l));{const[,,o]=l[r];return t(n,{children:[e(o,{onDone:a,...s}),e("img",{onClick:a,title:"Cancel",className:"cancel"})]})}},sr=({onDone:l,suggestedId:s,has:r,set:o,prompt:a="New Id"})=>{const[i,d]=Pl(s),[c,u]=Pl(!0),[h,m]=Pl(s),b=El(()=>{r(i)?u(!1):(o(i),l())},[l,u,r,o,i]),g=El(e=>{"Enter"===e.key&&(e.preventDefault(),b())},[b]);return s!=h&&(d(s),m(s)),t(n,{children:[a+": ",e("input",{type:"text",value:i,onChange:e=>{d(e.target.value),u(!r(e.target.value))},onKeyDown:g,autoFocus:!0})," ",e("img",{onClick:b,title:c?"Confirm":"Id already exists",className:c?"ok":"okDis"})]})},rr=({onClick:l,prompt:s="Delete"})=>{const r=El(e=>{"Enter"===e.key&&(e.preventDefault(),l())},[l]);return Al(()=>(document.addEventListener("keydown",r),()=>document.removeEventListener("keydown",r)),[r]),t(n,{children:[s,"? ",e("img",{onClick:l,title:"Confirm",className:"ok"})]})},or=({left:n,right:l})=>t("div",{className:"actions",children:[e("div",{children:n}),e("div",{children:l})]}),ar=e=>{const t=ns(e);return El(e=>t?.hasTable(e)??!1,[t])},ir=({onDone:t,store:n})=>{const l=ar(n);return e(sr,{onDone:t,suggestedId:nr("table",l),has:l,set:as(e=>e,()=>({row:{cell:""}}),[],n),prompt:"Add table"})},dr=({onDone:t,store:n})=>{return e(rr,{onClick:(l=n,s=t,ts(l,G,s,void 0)),prompt:"Delete all tables"});var l,s},cr=({store:t})=>{return e(or,{left:e(lr,{actions:[["add","Add table",ir]],store:t}),right:(n=t,Ul(G,ns(n),6,[])?e(lr,{actions:[["delete","Delete all tables",dr]],store:t}):null)});var n},ur=({onDone:t,tableId:n,store:l})=>{const s=pr(l,n);return e(sr,{onDone:t,suggestedId:nr("row",s),has:s,set:is(n,e=>e,(e,t)=>Ye(Oe(t.getTableCellIds(n),e=>[e,""]))),prompt:"Add row"})},hr=({onDone:t,tableId:n,store:l})=>{const s=ns(l),r=ar(s);return e(sr,{onDone:t,suggestedId:nr(n,r),has:r,set:as(e=>e,(e,t)=>t.getTable(n)),prompt:"Clone table to"})},mr=({onDone:t,tableId:n,store:l})=>e(rr,{onClick:us(n,l,t),prompt:"Delete table"}),br=({tableId:t,store:n})=>e(lr,{actions:[["add","Add row",ur]],store:n,tableId:t}),gr=({tableId:t,store:n})=>e(lr,{actions:[["clone","Clone table",hr],["delete","Delete table",mr]],store:n,tableId:t}),pr=(e,t)=>{const n=ns(e);return El(e=>n?.hasRow(t,e)??!1,[n,t])},vr=({onDone:t,tableId:n,rowId:l,store:s})=>{const r=ns(s),o=El(e=>r.hasCell(n,l,e),[r,n,l]);return e(sr,{onDone:t,suggestedId:nr("cell",o),has:o,set:ds(n,l,e=>e,()=>"",[],r),prompt:"Add cell"})},Ir=({onDone:t,tableId:n,rowId:l,store:s})=>{const r=ns(s),o=pr(r,n);return e(sr,{onDone:t,suggestedId:nr(l,o),has:o,set:is(n,e=>e,(e,t)=>t.getRow(n,l),[l]),prompt:"Clone row to"})},fr=({onDone:t,tableId:n,rowId:l,store:s})=>e(rr,{onClick:hs(n,l,s,t),prompt:"Delete row"}),Cr=({onDone:t,tableId:n,rowId:l,cellId:s,store:r})=>e(rr,{onClick:ms(n,l,s,!0,r,t),prompt:"Delete cell"}),wr=({tableId:t,rowId:n,cellId:l,store:s})=>e(lr,{actions:[["delete","Delete cell",Cr]],store:s,tableId:t,rowId:n,cellId:l}),Tr=[{label:"",component:({tableId:t,rowId:n,store:l})=>e(lr,{actions:[["add","Add cell",vr],["clone","Clone row",Ir],["delete","Delete row",fr]],store:l,tableId:t,rowId:n})}],yr=l=>t(n,{children:[e(Vs,{...l}),T(l.tableId,l.rowId,l.cellId,l.store)&&e(wr,{...l})]}),qr=({tableId:n,store:l,storeId:s,s:o})=>{const a=yt("t",s,n),[c,u,h]=dt(i(pt,a,vt,o)??"[]"),m=d(pt,a,vt,ct,[],o),[b,g]=Fs(a,o),p=b?yr:r;return t(Bs,{uniqueId:a,title:K+": "+n,editable:b,handleEditable:g,s:o,children:[e(Os,{tableId:n,store:l,cellId:c,descending:u,offset:h,limit:10,paginator:!0,sortOnClick:!0,onChange:m,editable:b,extraCellsAfter:b?Tr:[],customCells:Ye(Oe(w(n,l),e=>[e,{label:e,component:p}]))}),b?t("div",{className:"actions",children:[e("div",{children:e(br,{tableId:n,store:l})}),e("div",{children:e(gr,{tableId:n,store:l})})]}):null]})},xr=({store:n,storeId:l,s:s})=>{const r=yt("ts",l),[o,a]=Fs(r,s),i=C(n);return t(Bs,{uniqueId:r,title:G,editable:o,handleEditable:a,s:s,children:[_e(i)?e("p",{children:"No tables."}):qt(i,t=>e(qr,{store:n,storeId:l,tableId:t,s:s},t)),o?e(cr,{store:n}):null]})},kr=e=>{const t=ns(e);return El(e=>t?.hasValue(e)??!1,[t])},Dr=({onDone:t,store:n})=>{const l=kr(n);return e(sr,{onDone:t,suggestedId:nr("value",l),has:l,set:cs(e=>e,()=>"",[],n),prompt:"Add value"})},Sr=({onDone:t,store:n})=>{return e(rr,{onClick:(l=n,s=t,ts(l,re,s,void 0)),prompt:"Delete all values"});var l,s},Zr=({store:t})=>{return e(or,{left:e(lr,{actions:[["add","Add value",Dr]],store:t}),right:(n=t,Ul(re,ns(n),6,[])?e(lr,{actions:[["delete","Delete all values",Sr]],store:t}):null)});var n},Mr=({onDone:t,valueId:n,store:l})=>{const s=kr(l);return e(sr,{onDone:t,suggestedId:nr(n,s),has:s,set:cs(e=>e,(e,t)=>t.getValue(n)??"",[n],l),prompt:"Clone value to"})},Nr=({onDone:t,valueId:n,store:l})=>e(rr,{onClick:bs(n,l,t),prompt:"Delete value"}),Lr=[{label:"",component:({valueId:t,store:n})=>e(lr,{actions:[["clone","Clone value",Mr],["delete","Delete value",Nr]],store:n,valueId:t})}],Vr=({store:n,storeId:l,s:s})=>{const r=yt("v",l),[o,a]=Fs(r,s);return t(Bs,{uniqueId:r,title:re,editable:o,handleEditable:a,s:s,children:[_e(y(n))?e("p",{children:"No values."}):e(js,{store:n,editable:o,extraCellsAfter:o?Lr:[]}),o?e(Zr,{store:n}):null]})},Er=({storeId:n,s:l})=>{const s=q(n);return fe(s)?null:t(Bs,{uniqueId:yt("s",n),title:(s.isMergeable()?"Mergeable":"")+"Store: "+(n??_),s:l,children:[e(Vr,{storeId:n,store:s,s:l}),e(xr,{storeId:n,store:s,s:l})]})},Rr=({s:n})=>{const l=zl(null),s=zl(0),[r,o]=Pl(!1),{scrollLeft:a,scrollTop:i}=x(n);$l(()=>{const e=l.current;if(e&&!r){const t=new MutationObserver(()=>{e.scrollWidth>=pe(a)+e.clientWidth&&e.scrollHeight>=pe(i)+e.clientHeight&&e.scrollTo(a,i)});return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}},[r,a,i]);const d=El(e=>{const{scrollLeft:t,scrollTop:l}=e[ae];var r;(e=>{globalThis.cancelIdleCallback?.(e)??clearTimeout(e)})(s.current),s.current=(r=()=>{o(!0),n.setPartialValues({scrollLeft:t,scrollTop:l})},globalThis.requestIdleCallback?.(r)??setTimeout(()=>r(),0))},[n]),u=q(),h=k(),b=m(),g=D(),v=c(),f=S(),C=I(),w=Z(),T=p(),y=M();return fe(u)&&_e(h)&&fe(b)&&_e(g)&&fe(v)&&_e(f)&&fe(C)&&_e(w)&&fe(T)&&_e(y)?e("span",{className:"warn",children:"There are no Stores or other objects to inspect. Make sure you placed the Inspector inside a Provider component."}):t("article",{ref:l,onScroll:d,children:[e(Er,{s:n}),Oe(h,t=>e(Er,{storeId:t,s:n},t)),e(Us,{s:n}),Oe(g,t=>e(Us,{metricsId:t,s:n},t)),e(Ks,{s:n}),Oe(f,t=>e(Ks,{indexesId:t,s:n},t)),e(tr,{s:n}),Oe(w,t=>e(tr,{relationshipsId:t,s:n},t)),e(Ys,{s:n}),Oe(y,t=>e(Ys,{queriesId:t,s:n},t))]})};class Ar extends Ll{constructor(e){super(e),this.state={e:0}}static getDerivedStateFromError(){return{e:1}}componentDidCatch=(e,t)=>console.error(e,t.componentStack);render(){return this.state.e?e("span",{className:"warn",children:"Inspector error: please see console for details."}):this.props.children}}const $r=({s:n})=>{const r=l(Ct,n)??1,o=s(wt,()=>!1,[],n),a=s(Ct,e=>Number(e[ae].dataset.id),[],n);return t("header",{children:[e("img",{className:"flat",title:bt,onClick:()=>open("https://tinybase.org","_blank")}),e("span",{children:bt}),Oe(gt,(t,n)=>n==r?null:e("img",{onClick:a,"data-id":n,title:"Dock to "+t},n)),e("img",{className:"flat",onClick:o,title:"Close"})]})},Hr=({s:n})=>{const s=l(Ct,n)??1;return l(wt,n)?t("main",{"data-position":s,children:[e($r,{s:n}),e(Ar,{children:e(Rr,{s:n})})]}):null},zr=({position:l="right",open:s=!1,hue:r=270})=>{const o=N(Ml);return L(o,e=>{return t=mt,n=sessionStorage,((e,t,n,l,s,r,o,a={},i=0,d=[])=>{let c,u,h,m=0,b=0,g=0;el(bl,d,()=>0),el(gl,d,()=>[]);const p=Kn(),[v,I,f,C,w]=((e=1,t,n)=>1!=e&&t.isMergeable()?[1,t.__[1],()=>t.__[2](!n),([[e],[t]])=>!rt(e)||!rt(t),t.setDefaultContent]:2!=e?[0,t._[7],t._[8],([e,t])=>!rt(e)||!rt(t),t.setContent]:Ve("Store type not supported by this Persister"))(o,e,i),[T,y,q]=ml(()=>$),x=e=>{e!=m&&(m=e,y(p,void 0,m))},k=t=>{(v&&De(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},D=async()=>{E()&&e.__?.[0]?.()&&await N()},S=async e=>(2!=m&&(x(1),b++,await A(async()=>{await Re(async()=>{const n=await t();De(n)?k(n):e?w(e):Ve("Content is not an array: "+n)},()=>{e&&w(e)}),x(0),await D()})),$),Z=async e=>(M(),await S(e),await Re(async()=>u=await l(async(e,t)=>{t||e?2!=m&&(x(1),b++,k(t??e),x(0),await D()):await S()}),r),$),M=async()=>(u&&(await Re(()=>s(u),r),u=void 0),$),N=async e=>(1!=m&&(x(2),g++,await A(async()=>{await Re(()=>n(I,e),r),x(0)})),$),L=async()=>(V(),await N(),h=e.addDidFinishTransactionListener(()=>{const e=f();C(e)&&N(e)}),$),V=async()=>(h&&(e.delListener(h),h=void 0),$),E=()=>!fe(h),R=async(e=!1)=>{const[t,n]=e?[V,M]:[M,V];return await t(),await n(),$},A=async(...e)=>(je(Un(gl,d),...e),await(async()=>{if(!Un(bl,d)){for(Yn(bl,d,1);!fe(c=Be(Un(gl,d)));)await Re(c,r);Yn(bl,d,0)}})(),$),$={load:S,startAutoLoad:Z,stopAutoLoad:M,isAutoLoading:()=>!fe(u),save:N,startAutoSave:L,stopAutoSave:V,isAutoSaving:E,startAutoPersisting:async(e,t=!1)=>{const[n,l]=t?[L,Z]:[Z,L];return await n(e),await l(e),$},stopAutoPersisting:R,getStatus:()=>m,addStatusListener:e=>T(e,p),delListener:t=>(q(t),e),schedule:A,getStore:()=>e,destroy:()=>(Un(gl,d).splice(0,void 0),R()),getStats:()=>({loads:b,saves:g}),...a};return Xe($)})(e,async()=>ut(n.getItem(t)),async e=>{return n.setItem(t,(l=e(),it(l,(e,t)=>fe(t)?"":t)));var l},e=>{const l=l=>{l.storageArea===n&&l.key===t&&Re(()=>e(ut(l.newValue)),e)};return me.addEventListener(pl,l),l},e=>me.removeEventListener(pl,e),void 0,3,{getStorageName:()=>t});var t,n},void 0,async e=>{await e.load([{},{position:Tt(l),open:!!s}]),await e.startAutoSave()}),t(n,{children:[t("aside",{id:mt,style:{"--hue":r},children:[e(Nl,{s:o}),e(Hr,{s:o})]}),e("style",{children:An})]})};export{zr as Inspector};
Binary file