tinybase 5.2.0-beta.2 → 5.2.0-beta.3

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 (724) hide show
  1. package/@types/common/index.d.cts +34 -2
  2. package/@types/common/index.d.ts +34 -2
  3. package/@types/common/with-schemas/index.d.cts +34 -2
  4. package/@types/common/with-schemas/index.d.ts +34 -2
  5. package/@types/synchronizers/synchronizer-local/index.d.cts +1 -0
  6. package/@types/synchronizers/synchronizer-local/index.d.ts +1 -0
  7. package/@types/synchronizers/synchronizer-local/with-schemas/index.d.cts +1 -0
  8. package/@types/synchronizers/synchronizer-local/with-schemas/index.d.ts +1 -0
  9. package/checkpoints/index.js +9 -7
  10. package/checkpoints/with-schemas/index.js +9 -7
  11. package/cjs/checkpoints/index.cjs +9 -7
  12. package/cjs/checkpoints/with-schemas/index.cjs +9 -7
  13. package/cjs/es6/checkpoints/index.cjs +15 -13
  14. package/cjs/es6/checkpoints/with-schemas/index.cjs +15 -13
  15. package/cjs/es6/index.cjs +28 -20
  16. package/cjs/es6/indexes/index.cjs +15 -13
  17. package/cjs/es6/indexes/with-schemas/index.cjs +15 -13
  18. package/cjs/es6/mergeable-store/index.cjs +23 -17
  19. package/cjs/es6/mergeable-store/with-schemas/index.cjs +23 -17
  20. package/cjs/es6/metrics/index.cjs +15 -13
  21. package/cjs/es6/metrics/with-schemas/index.cjs +15 -13
  22. package/cjs/es6/min/index.cjs +1 -1
  23. package/cjs/es6/min/index.cjs.gz +0 -0
  24. package/cjs/es6/min/mergeable-store/index.cjs +1 -1
  25. package/cjs/es6/min/mergeable-store/index.cjs.gz +0 -0
  26. package/cjs/es6/min/mergeable-store/with-schemas/index.cjs +1 -1
  27. package/cjs/es6/min/mergeable-store/with-schemas/index.cjs.gz +0 -0
  28. package/cjs/es6/min/persisters/persister-automerge/index.cjs +1 -1
  29. package/cjs/es6/min/persisters/persister-automerge/index.cjs.gz +0 -0
  30. package/cjs/es6/min/persisters/persister-automerge/with-schemas/index.cjs +1 -1
  31. package/cjs/es6/min/persisters/persister-automerge/with-schemas/index.cjs.gz +0 -0
  32. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/index.cjs +1 -1
  33. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  34. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -1
  35. package/cjs/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  36. package/cjs/es6/min/persisters/persister-electric-sql/index.cjs +1 -1
  37. package/cjs/es6/min/persisters/persister-electric-sql/index.cjs.gz +0 -0
  38. package/cjs/es6/min/persisters/persister-electric-sql/with-schemas/index.cjs +1 -1
  39. package/cjs/es6/min/persisters/persister-electric-sql/with-schemas/index.cjs.gz +0 -0
  40. package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs +1 -1
  41. package/cjs/es6/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  42. package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
  43. package/cjs/es6/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
  44. package/cjs/es6/min/persisters/persister-libsql/index.cjs +1 -1
  45. package/cjs/es6/min/persisters/persister-libsql/index.cjs.gz +0 -0
  46. package/cjs/es6/min/persisters/persister-libsql/with-schemas/index.cjs +1 -1
  47. package/cjs/es6/min/persisters/persister-libsql/with-schemas/index.cjs.gz +0 -0
  48. package/cjs/es6/min/persisters/persister-postgres/index.cjs +1 -1
  49. package/cjs/es6/min/persisters/persister-postgres/index.cjs.gz +0 -0
  50. package/cjs/es6/min/persisters/persister-postgres/with-schemas/index.cjs +1 -1
  51. package/cjs/es6/min/persisters/persister-postgres/with-schemas/index.cjs.gz +0 -0
  52. package/cjs/es6/min/persisters/persister-powersync/index.cjs +1 -1
  53. package/cjs/es6/min/persisters/persister-powersync/index.cjs.gz +0 -0
  54. package/cjs/es6/min/persisters/persister-powersync/with-schemas/index.cjs +1 -1
  55. package/cjs/es6/min/persisters/persister-powersync/with-schemas/index.cjs.gz +0 -0
  56. package/cjs/es6/min/persisters/persister-sqlite-wasm/index.cjs +1 -1
  57. package/cjs/es6/min/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  58. package/cjs/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -1
  59. package/cjs/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  60. package/cjs/es6/min/persisters/persister-sqlite3/index.cjs +1 -1
  61. package/cjs/es6/min/persisters/persister-sqlite3/index.cjs.gz +0 -0
  62. package/cjs/es6/min/persisters/persister-sqlite3/with-schemas/index.cjs +1 -1
  63. package/cjs/es6/min/persisters/persister-sqlite3/with-schemas/index.cjs.gz +0 -0
  64. package/cjs/es6/min/store/index.cjs +1 -1
  65. package/cjs/es6/min/store/index.cjs.gz +0 -0
  66. package/cjs/es6/min/store/with-schemas/index.cjs +1 -1
  67. package/cjs/es6/min/store/with-schemas/index.cjs.gz +0 -0
  68. package/cjs/es6/min/synchronizers/synchronizer-ws-server/index.cjs +1 -1
  69. package/cjs/es6/min/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  70. package/cjs/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -1
  71. package/cjs/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs.gz +0 -0
  72. package/cjs/es6/min/ui-react-inspector/index.cjs +1 -1
  73. package/cjs/es6/min/ui-react-inspector/index.cjs.gz +0 -0
  74. package/cjs/es6/min/ui-react-inspector/with-schemas/index.cjs +1 -1
  75. package/cjs/es6/min/ui-react-inspector/with-schemas/index.cjs.gz +0 -0
  76. package/cjs/es6/min/with-schemas/index.cjs +1 -1
  77. package/cjs/es6/min/with-schemas/index.cjs.gz +0 -0
  78. package/cjs/es6/persisters/index.cjs +5 -3
  79. package/cjs/es6/persisters/persister-automerge/index.cjs +7 -4
  80. package/cjs/es6/persisters/persister-automerge/with-schemas/index.cjs +7 -4
  81. package/cjs/es6/persisters/persister-browser/index.cjs +5 -3
  82. package/cjs/es6/persisters/persister-browser/with-schemas/index.cjs +5 -3
  83. package/cjs/es6/persisters/persister-cr-sqlite-wasm/index.cjs +82 -45
  84. package/cjs/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +82 -45
  85. package/cjs/es6/persisters/persister-electric-sql/index.cjs +82 -45
  86. package/cjs/es6/persisters/persister-electric-sql/with-schemas/index.cjs +82 -45
  87. package/cjs/es6/persisters/persister-expo-sqlite/index.cjs +82 -45
  88. package/cjs/es6/persisters/persister-expo-sqlite/with-schemas/index.cjs +82 -45
  89. package/cjs/es6/persisters/persister-file/index.cjs +5 -3
  90. package/cjs/es6/persisters/persister-file/with-schemas/index.cjs +5 -3
  91. package/cjs/es6/persisters/persister-indexed-db/index.cjs +5 -3
  92. package/cjs/es6/persisters/persister-indexed-db/with-schemas/index.cjs +5 -3
  93. package/cjs/es6/persisters/persister-libsql/index.cjs +82 -45
  94. package/cjs/es6/persisters/persister-libsql/with-schemas/index.cjs +82 -45
  95. package/cjs/es6/persisters/persister-partykit-client/index.cjs +5 -3
  96. package/cjs/es6/persisters/persister-partykit-client/with-schemas/index.cjs +5 -3
  97. package/cjs/es6/persisters/persister-partykit-server/index.cjs +36 -22
  98. package/cjs/es6/persisters/persister-partykit-server/with-schemas/index.cjs +36 -22
  99. package/cjs/es6/persisters/persister-postgres/index.cjs +108 -37
  100. package/cjs/es6/persisters/persister-postgres/with-schemas/index.cjs +108 -37
  101. package/cjs/es6/persisters/persister-powersync/index.cjs +82 -45
  102. package/cjs/es6/persisters/persister-powersync/with-schemas/index.cjs +82 -45
  103. package/cjs/es6/persisters/persister-remote/index.cjs +5 -3
  104. package/cjs/es6/persisters/persister-remote/with-schemas/index.cjs +5 -3
  105. package/cjs/es6/persisters/persister-sqlite-wasm/index.cjs +82 -45
  106. package/cjs/es6/persisters/persister-sqlite-wasm/with-schemas/index.cjs +82 -45
  107. package/cjs/es6/persisters/persister-sqlite3/index.cjs +82 -45
  108. package/cjs/es6/persisters/persister-sqlite3/with-schemas/index.cjs +82 -45
  109. package/cjs/es6/persisters/persister-yjs/index.cjs +5 -3
  110. package/cjs/es6/persisters/persister-yjs/with-schemas/index.cjs +5 -3
  111. package/cjs/es6/persisters/with-schemas/index.cjs +5 -3
  112. package/cjs/es6/relationships/index.cjs +15 -13
  113. package/cjs/es6/relationships/with-schemas/index.cjs +15 -13
  114. package/cjs/es6/store/index.cjs +23 -17
  115. package/cjs/es6/store/with-schemas/index.cjs +23 -17
  116. package/cjs/es6/synchronizers/index.cjs +5 -3
  117. package/cjs/es6/synchronizers/synchronizer-broadcast-channel/index.cjs +5 -3
  118. package/cjs/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +5 -3
  119. package/cjs/es6/synchronizers/synchronizer-local/index.cjs +5 -3
  120. package/cjs/es6/synchronizers/synchronizer-local/with-schemas/index.cjs +5 -3
  121. package/cjs/es6/synchronizers/synchronizer-ws-client/index.cjs +8 -6
  122. package/cjs/es6/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +8 -6
  123. package/cjs/es6/synchronizers/synchronizer-ws-server/index.cjs +79 -75
  124. package/cjs/es6/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +79 -75
  125. package/cjs/es6/synchronizers/with-schemas/index.cjs +5 -3
  126. package/cjs/es6/ui-react-inspector/index.cjs +30 -21
  127. package/cjs/es6/ui-react-inspector/with-schemas/index.cjs +30 -21
  128. package/cjs/es6/with-schemas/index.cjs +28 -20
  129. package/cjs/index.cjs +22 -12
  130. package/cjs/indexes/index.cjs +9 -7
  131. package/cjs/indexes/with-schemas/index.cjs +9 -7
  132. package/cjs/mergeable-store/index.cjs +17 -9
  133. package/cjs/mergeable-store/with-schemas/index.cjs +17 -9
  134. package/cjs/metrics/index.cjs +9 -7
  135. package/cjs/metrics/with-schemas/index.cjs +9 -7
  136. package/cjs/min/index.cjs +1 -1
  137. package/cjs/min/index.cjs.gz +0 -0
  138. package/cjs/min/mergeable-store/index.cjs +1 -1
  139. package/cjs/min/mergeable-store/index.cjs.gz +0 -0
  140. package/cjs/min/mergeable-store/with-schemas/index.cjs +1 -1
  141. package/cjs/min/mergeable-store/with-schemas/index.cjs.gz +0 -0
  142. package/cjs/min/persisters/persister-automerge/index.cjs +1 -1
  143. package/cjs/min/persisters/persister-automerge/index.cjs.gz +0 -0
  144. package/cjs/min/persisters/persister-automerge/with-schemas/index.cjs +1 -1
  145. package/cjs/min/persisters/persister-automerge/with-schemas/index.cjs.gz +0 -0
  146. package/cjs/min/persisters/persister-cr-sqlite-wasm/index.cjs +1 -1
  147. package/cjs/min/persisters/persister-cr-sqlite-wasm/index.cjs.gz +0 -0
  148. package/cjs/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +1 -1
  149. package/cjs/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  150. package/cjs/min/persisters/persister-electric-sql/index.cjs +1 -1
  151. package/cjs/min/persisters/persister-electric-sql/index.cjs.gz +0 -0
  152. package/cjs/min/persisters/persister-electric-sql/with-schemas/index.cjs +1 -1
  153. package/cjs/min/persisters/persister-electric-sql/with-schemas/index.cjs.gz +0 -0
  154. package/cjs/min/persisters/persister-expo-sqlite/index.cjs +1 -1
  155. package/cjs/min/persisters/persister-expo-sqlite/index.cjs.gz +0 -0
  156. package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs +1 -1
  157. package/cjs/min/persisters/persister-expo-sqlite/with-schemas/index.cjs.gz +0 -0
  158. package/cjs/min/persisters/persister-libsql/index.cjs +1 -1
  159. package/cjs/min/persisters/persister-libsql/index.cjs.gz +0 -0
  160. package/cjs/min/persisters/persister-libsql/with-schemas/index.cjs +1 -1
  161. package/cjs/min/persisters/persister-libsql/with-schemas/index.cjs.gz +0 -0
  162. package/cjs/min/persisters/persister-postgres/index.cjs +1 -1
  163. package/cjs/min/persisters/persister-postgres/index.cjs.gz +0 -0
  164. package/cjs/min/persisters/persister-postgres/with-schemas/index.cjs +1 -1
  165. package/cjs/min/persisters/persister-postgres/with-schemas/index.cjs.gz +0 -0
  166. package/cjs/min/persisters/persister-powersync/index.cjs +1 -1
  167. package/cjs/min/persisters/persister-powersync/index.cjs.gz +0 -0
  168. package/cjs/min/persisters/persister-powersync/with-schemas/index.cjs +1 -1
  169. package/cjs/min/persisters/persister-powersync/with-schemas/index.cjs.gz +0 -0
  170. package/cjs/min/persisters/persister-sqlite-wasm/index.cjs +1 -1
  171. package/cjs/min/persisters/persister-sqlite-wasm/index.cjs.gz +0 -0
  172. package/cjs/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs +1 -1
  173. package/cjs/min/persisters/persister-sqlite-wasm/with-schemas/index.cjs.gz +0 -0
  174. package/cjs/min/persisters/persister-sqlite3/index.cjs +1 -1
  175. package/cjs/min/persisters/persister-sqlite3/index.cjs.gz +0 -0
  176. package/cjs/min/persisters/persister-sqlite3/with-schemas/index.cjs +1 -1
  177. package/cjs/min/persisters/persister-sqlite3/with-schemas/index.cjs.gz +0 -0
  178. package/cjs/min/store/index.cjs +1 -1
  179. package/cjs/min/store/index.cjs.gz +0 -0
  180. package/cjs/min/store/with-schemas/index.cjs +1 -1
  181. package/cjs/min/store/with-schemas/index.cjs.gz +0 -0
  182. package/cjs/min/synchronizers/synchronizer-ws-server/index.cjs +1 -1
  183. package/cjs/min/synchronizers/synchronizer-ws-server/index.cjs.gz +0 -0
  184. package/cjs/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +1 -1
  185. package/cjs/min/synchronizers/synchronizer-ws-server/with-schemas/index.cjs.gz +0 -0
  186. package/cjs/min/tools/index.cjs +1 -1
  187. package/cjs/min/tools/index.cjs.gz +0 -0
  188. package/cjs/min/tools/with-schemas/index.cjs +1 -1
  189. package/cjs/min/tools/with-schemas/index.cjs.gz +0 -0
  190. package/cjs/min/ui-react-inspector/index.cjs +1 -1
  191. package/cjs/min/ui-react-inspector/index.cjs.gz +0 -0
  192. package/cjs/min/ui-react-inspector/with-schemas/index.cjs +1 -1
  193. package/cjs/min/ui-react-inspector/with-schemas/index.cjs.gz +0 -0
  194. package/cjs/min/with-schemas/index.cjs +1 -1
  195. package/cjs/min/with-schemas/index.cjs.gz +0 -0
  196. package/cjs/persisters/index.cjs +5 -3
  197. package/cjs/persisters/persister-automerge/index.cjs +7 -4
  198. package/cjs/persisters/persister-automerge/with-schemas/index.cjs +7 -4
  199. package/cjs/persisters/persister-browser/index.cjs +5 -3
  200. package/cjs/persisters/persister-browser/with-schemas/index.cjs +5 -3
  201. package/cjs/persisters/persister-cr-sqlite-wasm/index.cjs +52 -37
  202. package/cjs/persisters/persister-cr-sqlite-wasm/with-schemas/index.cjs +52 -37
  203. package/cjs/persisters/persister-electric-sql/index.cjs +52 -37
  204. package/cjs/persisters/persister-electric-sql/with-schemas/index.cjs +52 -37
  205. package/cjs/persisters/persister-expo-sqlite/index.cjs +52 -37
  206. package/cjs/persisters/persister-expo-sqlite/with-schemas/index.cjs +52 -37
  207. package/cjs/persisters/persister-file/index.cjs +5 -3
  208. package/cjs/persisters/persister-file/with-schemas/index.cjs +5 -3
  209. package/cjs/persisters/persister-indexed-db/index.cjs +5 -3
  210. package/cjs/persisters/persister-indexed-db/with-schemas/index.cjs +5 -3
  211. package/cjs/persisters/persister-libsql/index.cjs +52 -37
  212. package/cjs/persisters/persister-libsql/with-schemas/index.cjs +52 -37
  213. package/cjs/persisters/persister-partykit-client/index.cjs +5 -3
  214. package/cjs/persisters/persister-partykit-client/with-schemas/index.cjs +5 -3
  215. package/cjs/persisters/persister-partykit-server/index.cjs +36 -25
  216. package/cjs/persisters/persister-partykit-server/with-schemas/index.cjs +36 -25
  217. package/cjs/persisters/persister-postgres/index.cjs +77 -31
  218. package/cjs/persisters/persister-postgres/with-schemas/index.cjs +77 -31
  219. package/cjs/persisters/persister-powersync/index.cjs +52 -37
  220. package/cjs/persisters/persister-powersync/with-schemas/index.cjs +52 -37
  221. package/cjs/persisters/persister-remote/index.cjs +5 -3
  222. package/cjs/persisters/persister-remote/with-schemas/index.cjs +5 -3
  223. package/cjs/persisters/persister-sqlite-wasm/index.cjs +52 -37
  224. package/cjs/persisters/persister-sqlite-wasm/with-schemas/index.cjs +52 -37
  225. package/cjs/persisters/persister-sqlite3/index.cjs +52 -37
  226. package/cjs/persisters/persister-sqlite3/with-schemas/index.cjs +52 -37
  227. package/cjs/persisters/persister-yjs/index.cjs +5 -3
  228. package/cjs/persisters/persister-yjs/with-schemas/index.cjs +5 -3
  229. package/cjs/persisters/with-schemas/index.cjs +5 -3
  230. package/cjs/relationships/index.cjs +9 -7
  231. package/cjs/relationships/with-schemas/index.cjs +9 -7
  232. package/cjs/store/index.cjs +17 -9
  233. package/cjs/store/with-schemas/index.cjs +17 -9
  234. package/cjs/synchronizers/index.cjs +5 -3
  235. package/cjs/synchronizers/synchronizer-broadcast-channel/index.cjs +5 -3
  236. package/cjs/synchronizers/synchronizer-broadcast-channel/with-schemas/index.cjs +5 -3
  237. package/cjs/synchronizers/synchronizer-local/index.cjs +5 -3
  238. package/cjs/synchronizers/synchronizer-local/with-schemas/index.cjs +5 -3
  239. package/cjs/synchronizers/synchronizer-ws-client/index.cjs +8 -6
  240. package/cjs/synchronizers/synchronizer-ws-client/with-schemas/index.cjs +8 -6
  241. package/cjs/synchronizers/synchronizer-ws-server/index.cjs +30 -23
  242. package/cjs/synchronizers/synchronizer-ws-server/with-schemas/index.cjs +30 -23
  243. package/cjs/synchronizers/with-schemas/index.cjs +5 -3
  244. package/cjs/tools/index.cjs +1 -1
  245. package/cjs/tools/with-schemas/index.cjs +1 -1
  246. package/cjs/ui-react-inspector/index.cjs +24 -13
  247. package/cjs/ui-react-inspector/with-schemas/index.cjs +24 -13
  248. package/cjs/with-schemas/index.cjs +22 -12
  249. package/es6/checkpoints/index.js +15 -13
  250. package/es6/checkpoints/with-schemas/index.js +15 -13
  251. package/es6/index.js +28 -20
  252. package/es6/indexes/index.js +15 -13
  253. package/es6/indexes/with-schemas/index.js +15 -13
  254. package/es6/mergeable-store/index.js +23 -17
  255. package/es6/mergeable-store/with-schemas/index.js +23 -17
  256. package/es6/metrics/index.js +15 -13
  257. package/es6/metrics/with-schemas/index.js +15 -13
  258. package/es6/min/index.js +1 -1
  259. package/es6/min/index.js.gz +0 -0
  260. package/es6/min/mergeable-store/index.js +1 -1
  261. package/es6/min/mergeable-store/index.js.gz +0 -0
  262. package/es6/min/mergeable-store/with-schemas/index.js +1 -1
  263. package/es6/min/mergeable-store/with-schemas/index.js.gz +0 -0
  264. package/es6/min/persisters/persister-automerge/index.js +1 -1
  265. package/es6/min/persisters/persister-automerge/index.js.gz +0 -0
  266. package/es6/min/persisters/persister-automerge/with-schemas/index.js +1 -1
  267. package/es6/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  268. package/es6/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  269. package/es6/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  270. package/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  271. package/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  272. package/es6/min/persisters/persister-electric-sql/index.js +1 -1
  273. package/es6/min/persisters/persister-electric-sql/index.js.gz +0 -0
  274. package/es6/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  275. package/es6/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  276. package/es6/min/persisters/persister-expo-sqlite/index.js +1 -1
  277. package/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  278. package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  279. package/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  280. package/es6/min/persisters/persister-libsql/index.js +1 -1
  281. package/es6/min/persisters/persister-libsql/index.js.gz +0 -0
  282. package/es6/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  283. package/es6/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  284. package/es6/min/persisters/persister-postgres/index.js +1 -1
  285. package/es6/min/persisters/persister-postgres/index.js.gz +0 -0
  286. package/es6/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  287. package/es6/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  288. package/es6/min/persisters/persister-powersync/index.js +1 -1
  289. package/es6/min/persisters/persister-powersync/index.js.gz +0 -0
  290. package/es6/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  291. package/es6/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  292. package/es6/min/persisters/persister-sqlite-wasm/index.js +1 -1
  293. package/es6/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  294. package/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  295. package/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  296. package/es6/min/persisters/persister-sqlite3/index.js +1 -1
  297. package/es6/min/persisters/persister-sqlite3/index.js.gz +0 -0
  298. package/es6/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  299. package/es6/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  300. package/es6/min/store/index.js +1 -1
  301. package/es6/min/store/index.js.gz +0 -0
  302. package/es6/min/store/with-schemas/index.js +1 -1
  303. package/es6/min/store/with-schemas/index.js.gz +0 -0
  304. package/es6/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  305. package/es6/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  306. package/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  307. package/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  308. package/es6/min/ui-react-inspector/index.js +1 -1
  309. package/es6/min/ui-react-inspector/index.js.gz +0 -0
  310. package/es6/min/ui-react-inspector/with-schemas/index.js +1 -1
  311. package/es6/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  312. package/es6/min/with-schemas/index.js +1 -1
  313. package/es6/min/with-schemas/index.js.gz +0 -0
  314. package/es6/persisters/index.js +5 -3
  315. package/es6/persisters/persister-automerge/index.js +7 -4
  316. package/es6/persisters/persister-automerge/with-schemas/index.js +7 -4
  317. package/es6/persisters/persister-browser/index.js +5 -3
  318. package/es6/persisters/persister-browser/with-schemas/index.js +5 -3
  319. package/es6/persisters/persister-cr-sqlite-wasm/index.js +82 -45
  320. package/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +82 -45
  321. package/es6/persisters/persister-electric-sql/index.js +82 -45
  322. package/es6/persisters/persister-electric-sql/with-schemas/index.js +82 -45
  323. package/es6/persisters/persister-expo-sqlite/index.js +82 -45
  324. package/es6/persisters/persister-expo-sqlite/with-schemas/index.js +82 -45
  325. package/es6/persisters/persister-file/index.js +5 -3
  326. package/es6/persisters/persister-file/with-schemas/index.js +5 -3
  327. package/es6/persisters/persister-indexed-db/index.js +5 -3
  328. package/es6/persisters/persister-indexed-db/with-schemas/index.js +5 -3
  329. package/es6/persisters/persister-libsql/index.js +82 -45
  330. package/es6/persisters/persister-libsql/with-schemas/index.js +82 -45
  331. package/es6/persisters/persister-partykit-client/index.js +5 -3
  332. package/es6/persisters/persister-partykit-client/with-schemas/index.js +5 -3
  333. package/es6/persisters/persister-partykit-server/index.js +36 -22
  334. package/es6/persisters/persister-partykit-server/with-schemas/index.js +36 -22
  335. package/es6/persisters/persister-postgres/index.js +108 -37
  336. package/es6/persisters/persister-postgres/with-schemas/index.js +108 -37
  337. package/es6/persisters/persister-powersync/index.js +82 -45
  338. package/es6/persisters/persister-powersync/with-schemas/index.js +82 -45
  339. package/es6/persisters/persister-remote/index.js +5 -3
  340. package/es6/persisters/persister-remote/with-schemas/index.js +5 -3
  341. package/es6/persisters/persister-sqlite-wasm/index.js +82 -45
  342. package/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +82 -45
  343. package/es6/persisters/persister-sqlite3/index.js +82 -45
  344. package/es6/persisters/persister-sqlite3/with-schemas/index.js +82 -45
  345. package/es6/persisters/persister-yjs/index.js +5 -3
  346. package/es6/persisters/persister-yjs/with-schemas/index.js +5 -3
  347. package/es6/persisters/with-schemas/index.js +5 -3
  348. package/es6/relationships/index.js +15 -13
  349. package/es6/relationships/with-schemas/index.js +15 -13
  350. package/es6/store/index.js +23 -17
  351. package/es6/store/with-schemas/index.js +23 -17
  352. package/es6/synchronizers/index.js +5 -3
  353. package/es6/synchronizers/synchronizer-broadcast-channel/index.js +5 -3
  354. package/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +5 -3
  355. package/es6/synchronizers/synchronizer-local/index.js +5 -3
  356. package/es6/synchronizers/synchronizer-local/with-schemas/index.js +5 -3
  357. package/es6/synchronizers/synchronizer-ws-client/index.js +8 -6
  358. package/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +8 -6
  359. package/es6/synchronizers/synchronizer-ws-server/index.js +79 -75
  360. package/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +79 -75
  361. package/es6/synchronizers/with-schemas/index.js +5 -3
  362. package/es6/ui-react-inspector/index.js +30 -21
  363. package/es6/ui-react-inspector/with-schemas/index.js +30 -21
  364. package/es6/with-schemas/index.js +28 -20
  365. package/index.js +22 -12
  366. package/indexes/index.js +9 -7
  367. package/indexes/with-schemas/index.js +9 -7
  368. package/mergeable-store/index.js +17 -9
  369. package/mergeable-store/with-schemas/index.js +17 -9
  370. package/metrics/index.js +9 -7
  371. package/metrics/with-schemas/index.js +9 -7
  372. package/min/index.js +1 -1
  373. package/min/index.js.gz +0 -0
  374. package/min/mergeable-store/index.js +1 -1
  375. package/min/mergeable-store/index.js.gz +0 -0
  376. package/min/mergeable-store/with-schemas/index.js +1 -1
  377. package/min/mergeable-store/with-schemas/index.js.gz +0 -0
  378. package/min/persisters/persister-automerge/index.js +1 -1
  379. package/min/persisters/persister-automerge/index.js.gz +0 -0
  380. package/min/persisters/persister-automerge/with-schemas/index.js +1 -1
  381. package/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  382. package/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  383. package/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  384. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  385. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  386. package/min/persisters/persister-electric-sql/index.js +1 -1
  387. package/min/persisters/persister-electric-sql/index.js.gz +0 -0
  388. package/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  389. package/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  390. package/min/persisters/persister-expo-sqlite/index.js +1 -1
  391. package/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  392. package/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  393. package/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  394. package/min/persisters/persister-libsql/index.js +1 -1
  395. package/min/persisters/persister-libsql/index.js.gz +0 -0
  396. package/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  397. package/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  398. package/min/persisters/persister-postgres/index.js +1 -1
  399. package/min/persisters/persister-postgres/index.js.gz +0 -0
  400. package/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  401. package/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  402. package/min/persisters/persister-powersync/index.js +1 -1
  403. package/min/persisters/persister-powersync/index.js.gz +0 -0
  404. package/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  405. package/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  406. package/min/persisters/persister-sqlite-wasm/index.js +1 -1
  407. package/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  408. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  409. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  410. package/min/persisters/persister-sqlite3/index.js +1 -1
  411. package/min/persisters/persister-sqlite3/index.js.gz +0 -0
  412. package/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  413. package/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  414. package/min/store/index.js +1 -1
  415. package/min/store/index.js.gz +0 -0
  416. package/min/store/with-schemas/index.js +1 -1
  417. package/min/store/with-schemas/index.js.gz +0 -0
  418. package/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  419. package/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  420. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  421. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  422. package/min/tools/index.js +1 -1
  423. package/min/tools/index.js.gz +0 -0
  424. package/min/tools/with-schemas/index.js +1 -1
  425. package/min/tools/with-schemas/index.js.gz +0 -0
  426. package/min/ui-react-inspector/index.js +1 -1
  427. package/min/ui-react-inspector/index.js.gz +0 -0
  428. package/min/ui-react-inspector/with-schemas/index.js +1 -1
  429. package/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  430. package/min/with-schemas/index.js +1 -1
  431. package/min/with-schemas/index.js.gz +0 -0
  432. package/package.json +3 -3
  433. package/persisters/index.js +5 -3
  434. package/persisters/persister-automerge/index.js +7 -4
  435. package/persisters/persister-automerge/with-schemas/index.js +7 -4
  436. package/persisters/persister-browser/index.js +5 -3
  437. package/persisters/persister-browser/with-schemas/index.js +5 -3
  438. package/persisters/persister-cr-sqlite-wasm/index.js +52 -37
  439. package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +52 -37
  440. package/persisters/persister-electric-sql/index.js +52 -37
  441. package/persisters/persister-electric-sql/with-schemas/index.js +52 -37
  442. package/persisters/persister-expo-sqlite/index.js +52 -37
  443. package/persisters/persister-expo-sqlite/with-schemas/index.js +52 -37
  444. package/persisters/persister-file/index.js +5 -3
  445. package/persisters/persister-file/with-schemas/index.js +5 -3
  446. package/persisters/persister-indexed-db/index.js +5 -3
  447. package/persisters/persister-indexed-db/with-schemas/index.js +5 -3
  448. package/persisters/persister-libsql/index.js +52 -37
  449. package/persisters/persister-libsql/with-schemas/index.js +52 -37
  450. package/persisters/persister-partykit-client/index.js +5 -3
  451. package/persisters/persister-partykit-client/with-schemas/index.js +5 -3
  452. package/persisters/persister-partykit-server/index.js +36 -25
  453. package/persisters/persister-partykit-server/with-schemas/index.js +36 -25
  454. package/persisters/persister-postgres/index.js +77 -31
  455. package/persisters/persister-postgres/with-schemas/index.js +77 -31
  456. package/persisters/persister-powersync/index.js +52 -37
  457. package/persisters/persister-powersync/with-schemas/index.js +52 -37
  458. package/persisters/persister-remote/index.js +5 -3
  459. package/persisters/persister-remote/with-schemas/index.js +5 -3
  460. package/persisters/persister-sqlite-wasm/index.js +52 -37
  461. package/persisters/persister-sqlite-wasm/with-schemas/index.js +52 -37
  462. package/persisters/persister-sqlite3/index.js +52 -37
  463. package/persisters/persister-sqlite3/with-schemas/index.js +52 -37
  464. package/persisters/persister-yjs/index.js +5 -3
  465. package/persisters/persister-yjs/with-schemas/index.js +5 -3
  466. package/persisters/with-schemas/index.js +5 -3
  467. package/readme.md +2 -2
  468. package/relationships/index.js +9 -7
  469. package/relationships/with-schemas/index.js +9 -7
  470. package/store/index.js +17 -9
  471. package/store/with-schemas/index.js +17 -9
  472. package/synchronizers/index.js +5 -3
  473. package/synchronizers/synchronizer-broadcast-channel/index.js +5 -3
  474. package/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +5 -3
  475. package/synchronizers/synchronizer-local/index.js +5 -3
  476. package/synchronizers/synchronizer-local/with-schemas/index.js +5 -3
  477. package/synchronizers/synchronizer-ws-client/index.js +8 -6
  478. package/synchronizers/synchronizer-ws-client/with-schemas/index.js +8 -6
  479. package/synchronizers/synchronizer-ws-server/index.js +30 -23
  480. package/synchronizers/synchronizer-ws-server/with-schemas/index.js +30 -23
  481. package/synchronizers/with-schemas/index.js +5 -3
  482. package/tools/index.js +1 -1
  483. package/tools/with-schemas/index.js +1 -1
  484. package/ui-react-inspector/index.js +24 -13
  485. package/ui-react-inspector/with-schemas/index.js +24 -13
  486. package/umd/checkpoints/index.js +9 -7
  487. package/umd/checkpoints/with-schemas/index.js +9 -7
  488. package/umd/es6/checkpoints/index.js +15 -13
  489. package/umd/es6/checkpoints/with-schemas/index.js +15 -13
  490. package/umd/es6/index.js +28 -20
  491. package/umd/es6/indexes/index.js +15 -13
  492. package/umd/es6/indexes/with-schemas/index.js +15 -13
  493. package/umd/es6/mergeable-store/index.js +23 -17
  494. package/umd/es6/mergeable-store/with-schemas/index.js +23 -17
  495. package/umd/es6/metrics/index.js +15 -13
  496. package/umd/es6/metrics/with-schemas/index.js +15 -13
  497. package/umd/es6/min/index.js +1 -1
  498. package/umd/es6/min/index.js.gz +0 -0
  499. package/umd/es6/min/mergeable-store/index.js +1 -1
  500. package/umd/es6/min/mergeable-store/index.js.gz +0 -0
  501. package/umd/es6/min/mergeable-store/with-schemas/index.js +1 -1
  502. package/umd/es6/min/mergeable-store/with-schemas/index.js.gz +0 -0
  503. package/umd/es6/min/persisters/persister-automerge/index.js +1 -1
  504. package/umd/es6/min/persisters/persister-automerge/index.js.gz +0 -0
  505. package/umd/es6/min/persisters/persister-automerge/with-schemas/index.js +1 -1
  506. package/umd/es6/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  507. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  508. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  509. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  510. package/umd/es6/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  511. package/umd/es6/min/persisters/persister-electric-sql/index.js +1 -1
  512. package/umd/es6/min/persisters/persister-electric-sql/index.js.gz +0 -0
  513. package/umd/es6/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  514. package/umd/es6/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  515. package/umd/es6/min/persisters/persister-expo-sqlite/index.js +1 -1
  516. package/umd/es6/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  517. package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  518. package/umd/es6/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  519. package/umd/es6/min/persisters/persister-libsql/index.js +1 -1
  520. package/umd/es6/min/persisters/persister-libsql/index.js.gz +0 -0
  521. package/umd/es6/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  522. package/umd/es6/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  523. package/umd/es6/min/persisters/persister-postgres/index.js +1 -1
  524. package/umd/es6/min/persisters/persister-postgres/index.js.gz +0 -0
  525. package/umd/es6/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  526. package/umd/es6/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  527. package/umd/es6/min/persisters/persister-powersync/index.js +1 -1
  528. package/umd/es6/min/persisters/persister-powersync/index.js.gz +0 -0
  529. package/umd/es6/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  530. package/umd/es6/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  531. package/umd/es6/min/persisters/persister-sqlite-wasm/index.js +1 -1
  532. package/umd/es6/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  533. package/umd/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  534. package/umd/es6/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  535. package/umd/es6/min/persisters/persister-sqlite3/index.js +1 -1
  536. package/umd/es6/min/persisters/persister-sqlite3/index.js.gz +0 -0
  537. package/umd/es6/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  538. package/umd/es6/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  539. package/umd/es6/min/store/index.js +1 -1
  540. package/umd/es6/min/store/index.js.gz +0 -0
  541. package/umd/es6/min/store/with-schemas/index.js +1 -1
  542. package/umd/es6/min/store/with-schemas/index.js.gz +0 -0
  543. package/umd/es6/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  544. package/umd/es6/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  545. package/umd/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  546. package/umd/es6/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  547. package/umd/es6/min/ui-react-inspector/index.js +1 -1
  548. package/umd/es6/min/ui-react-inspector/index.js.gz +0 -0
  549. package/umd/es6/min/ui-react-inspector/with-schemas/index.js +1 -1
  550. package/umd/es6/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  551. package/umd/es6/min/with-schemas/index.js +1 -1
  552. package/umd/es6/min/with-schemas/index.js.gz +0 -0
  553. package/umd/es6/persisters/index.js +5 -3
  554. package/umd/es6/persisters/persister-automerge/index.js +7 -4
  555. package/umd/es6/persisters/persister-automerge/with-schemas/index.js +7 -4
  556. package/umd/es6/persisters/persister-browser/index.js +5 -3
  557. package/umd/es6/persisters/persister-browser/with-schemas/index.js +5 -3
  558. package/umd/es6/persisters/persister-cr-sqlite-wasm/index.js +86 -47
  559. package/umd/es6/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +86 -47
  560. package/umd/es6/persisters/persister-electric-sql/index.js +86 -47
  561. package/umd/es6/persisters/persister-electric-sql/with-schemas/index.js +86 -47
  562. package/umd/es6/persisters/persister-expo-sqlite/index.js +86 -47
  563. package/umd/es6/persisters/persister-expo-sqlite/with-schemas/index.js +86 -47
  564. package/umd/es6/persisters/persister-file/index.js +5 -3
  565. package/umd/es6/persisters/persister-file/with-schemas/index.js +5 -3
  566. package/umd/es6/persisters/persister-indexed-db/index.js +5 -3
  567. package/umd/es6/persisters/persister-indexed-db/with-schemas/index.js +5 -3
  568. package/umd/es6/persisters/persister-libsql/index.js +86 -47
  569. package/umd/es6/persisters/persister-libsql/with-schemas/index.js +86 -47
  570. package/umd/es6/persisters/persister-partykit-client/index.js +5 -3
  571. package/umd/es6/persisters/persister-partykit-client/with-schemas/index.js +5 -3
  572. package/umd/es6/persisters/persister-partykit-server/index.js +36 -22
  573. package/umd/es6/persisters/persister-partykit-server/with-schemas/index.js +36 -22
  574. package/umd/es6/persisters/persister-postgres/index.js +108 -37
  575. package/umd/es6/persisters/persister-postgres/with-schemas/index.js +108 -37
  576. package/umd/es6/persisters/persister-powersync/index.js +86 -47
  577. package/umd/es6/persisters/persister-powersync/with-schemas/index.js +86 -47
  578. package/umd/es6/persisters/persister-remote/index.js +5 -3
  579. package/umd/es6/persisters/persister-remote/with-schemas/index.js +5 -3
  580. package/umd/es6/persisters/persister-sqlite-wasm/index.js +86 -47
  581. package/umd/es6/persisters/persister-sqlite-wasm/with-schemas/index.js +86 -47
  582. package/umd/es6/persisters/persister-sqlite3/index.js +86 -47
  583. package/umd/es6/persisters/persister-sqlite3/with-schemas/index.js +86 -47
  584. package/umd/es6/persisters/persister-yjs/index.js +5 -3
  585. package/umd/es6/persisters/persister-yjs/with-schemas/index.js +5 -3
  586. package/umd/es6/persisters/with-schemas/index.js +5 -3
  587. package/umd/es6/relationships/index.js +15 -13
  588. package/umd/es6/relationships/with-schemas/index.js +15 -13
  589. package/umd/es6/store/index.js +23 -17
  590. package/umd/es6/store/with-schemas/index.js +23 -17
  591. package/umd/es6/synchronizers/index.js +5 -3
  592. package/umd/es6/synchronizers/synchronizer-broadcast-channel/index.js +5 -3
  593. package/umd/es6/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +5 -3
  594. package/umd/es6/synchronizers/synchronizer-local/index.js +5 -3
  595. package/umd/es6/synchronizers/synchronizer-local/with-schemas/index.js +5 -3
  596. package/umd/es6/synchronizers/synchronizer-ws-client/index.js +8 -6
  597. package/umd/es6/synchronizers/synchronizer-ws-client/with-schemas/index.js +8 -6
  598. package/umd/es6/synchronizers/synchronizer-ws-server/index.js +79 -77
  599. package/umd/es6/synchronizers/synchronizer-ws-server/with-schemas/index.js +79 -77
  600. package/umd/es6/synchronizers/with-schemas/index.js +5 -3
  601. package/umd/es6/ui-react-inspector/index.js +30 -21
  602. package/umd/es6/ui-react-inspector/with-schemas/index.js +30 -21
  603. package/umd/es6/with-schemas/index.js +28 -20
  604. package/umd/index.js +22 -12
  605. package/umd/indexes/index.js +9 -7
  606. package/umd/indexes/with-schemas/index.js +9 -7
  607. package/umd/mergeable-store/index.js +17 -9
  608. package/umd/mergeable-store/with-schemas/index.js +17 -9
  609. package/umd/metrics/index.js +9 -7
  610. package/umd/metrics/with-schemas/index.js +9 -7
  611. package/umd/min/index.js +1 -1
  612. package/umd/min/index.js.gz +0 -0
  613. package/umd/min/mergeable-store/index.js +1 -1
  614. package/umd/min/mergeable-store/index.js.gz +0 -0
  615. package/umd/min/mergeable-store/with-schemas/index.js +1 -1
  616. package/umd/min/mergeable-store/with-schemas/index.js.gz +0 -0
  617. package/umd/min/persisters/persister-automerge/index.js +1 -1
  618. package/umd/min/persisters/persister-automerge/index.js.gz +0 -0
  619. package/umd/min/persisters/persister-automerge/with-schemas/index.js +1 -1
  620. package/umd/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  621. package/umd/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  622. package/umd/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  623. package/umd/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  624. package/umd/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  625. package/umd/min/persisters/persister-electric-sql/index.js +1 -1
  626. package/umd/min/persisters/persister-electric-sql/index.js.gz +0 -0
  627. package/umd/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  628. package/umd/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  629. package/umd/min/persisters/persister-expo-sqlite/index.js +1 -1
  630. package/umd/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  631. package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  632. package/umd/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  633. package/umd/min/persisters/persister-libsql/index.js +1 -1
  634. package/umd/min/persisters/persister-libsql/index.js.gz +0 -0
  635. package/umd/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  636. package/umd/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  637. package/umd/min/persisters/persister-postgres/index.js +1 -1
  638. package/umd/min/persisters/persister-postgres/index.js.gz +0 -0
  639. package/umd/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  640. package/umd/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  641. package/umd/min/persisters/persister-powersync/index.js +1 -1
  642. package/umd/min/persisters/persister-powersync/index.js.gz +0 -0
  643. package/umd/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  644. package/umd/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  645. package/umd/min/persisters/persister-sqlite-wasm/index.js +1 -1
  646. package/umd/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  647. package/umd/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  648. package/umd/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  649. package/umd/min/persisters/persister-sqlite3/index.js +1 -1
  650. package/umd/min/persisters/persister-sqlite3/index.js.gz +0 -0
  651. package/umd/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  652. package/umd/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  653. package/umd/min/store/index.js +1 -1
  654. package/umd/min/store/index.js.gz +0 -0
  655. package/umd/min/store/with-schemas/index.js +1 -1
  656. package/umd/min/store/with-schemas/index.js.gz +0 -0
  657. package/umd/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  658. package/umd/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  659. package/umd/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  660. package/umd/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  661. package/umd/min/tools/index.js +1 -1
  662. package/umd/min/tools/index.js.gz +0 -0
  663. package/umd/min/tools/with-schemas/index.js +1 -1
  664. package/umd/min/tools/with-schemas/index.js.gz +0 -0
  665. package/umd/min/ui-react-inspector/index.js +1 -1
  666. package/umd/min/ui-react-inspector/index.js.gz +0 -0
  667. package/umd/min/ui-react-inspector/with-schemas/index.js +1 -1
  668. package/umd/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  669. package/umd/min/with-schemas/index.js +1 -1
  670. package/umd/min/with-schemas/index.js.gz +0 -0
  671. package/umd/persisters/index.js +5 -3
  672. package/umd/persisters/persister-automerge/index.js +7 -4
  673. package/umd/persisters/persister-automerge/with-schemas/index.js +7 -4
  674. package/umd/persisters/persister-browser/index.js +5 -3
  675. package/umd/persisters/persister-browser/with-schemas/index.js +5 -3
  676. package/umd/persisters/persister-cr-sqlite-wasm/index.js +52 -37
  677. package/umd/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +52 -37
  678. package/umd/persisters/persister-electric-sql/index.js +52 -37
  679. package/umd/persisters/persister-electric-sql/with-schemas/index.js +52 -37
  680. package/umd/persisters/persister-expo-sqlite/index.js +52 -37
  681. package/umd/persisters/persister-expo-sqlite/with-schemas/index.js +52 -37
  682. package/umd/persisters/persister-file/index.js +5 -3
  683. package/umd/persisters/persister-file/with-schemas/index.js +5 -3
  684. package/umd/persisters/persister-indexed-db/index.js +5 -3
  685. package/umd/persisters/persister-indexed-db/with-schemas/index.js +5 -3
  686. package/umd/persisters/persister-libsql/index.js +52 -37
  687. package/umd/persisters/persister-libsql/with-schemas/index.js +52 -37
  688. package/umd/persisters/persister-partykit-client/index.js +5 -3
  689. package/umd/persisters/persister-partykit-client/with-schemas/index.js +5 -3
  690. package/umd/persisters/persister-partykit-server/index.js +36 -25
  691. package/umd/persisters/persister-partykit-server/with-schemas/index.js +36 -25
  692. package/umd/persisters/persister-postgres/index.js +77 -31
  693. package/umd/persisters/persister-postgres/with-schemas/index.js +77 -31
  694. package/umd/persisters/persister-powersync/index.js +52 -37
  695. package/umd/persisters/persister-powersync/with-schemas/index.js +52 -37
  696. package/umd/persisters/persister-remote/index.js +5 -3
  697. package/umd/persisters/persister-remote/with-schemas/index.js +5 -3
  698. package/umd/persisters/persister-sqlite-wasm/index.js +52 -37
  699. package/umd/persisters/persister-sqlite-wasm/with-schemas/index.js +52 -37
  700. package/umd/persisters/persister-sqlite3/index.js +52 -37
  701. package/umd/persisters/persister-sqlite3/with-schemas/index.js +52 -37
  702. package/umd/persisters/persister-yjs/index.js +5 -3
  703. package/umd/persisters/persister-yjs/with-schemas/index.js +5 -3
  704. package/umd/persisters/with-schemas/index.js +5 -3
  705. package/umd/relationships/index.js +9 -7
  706. package/umd/relationships/with-schemas/index.js +9 -7
  707. package/umd/store/index.js +17 -9
  708. package/umd/store/with-schemas/index.js +17 -9
  709. package/umd/synchronizers/index.js +5 -3
  710. package/umd/synchronizers/synchronizer-broadcast-channel/index.js +5 -3
  711. package/umd/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +5 -3
  712. package/umd/synchronizers/synchronizer-local/index.js +5 -3
  713. package/umd/synchronizers/synchronizer-local/with-schemas/index.js +5 -3
  714. package/umd/synchronizers/synchronizer-ws-client/index.js +8 -6
  715. package/umd/synchronizers/synchronizer-ws-client/with-schemas/index.js +8 -6
  716. package/umd/synchronizers/synchronizer-ws-server/index.js +30 -23
  717. package/umd/synchronizers/synchronizer-ws-server/with-schemas/index.js +30 -23
  718. package/umd/synchronizers/with-schemas/index.js +5 -3
  719. package/umd/tools/index.js +1 -1
  720. package/umd/tools/with-schemas/index.js +1 -1
  721. package/umd/ui-react-inspector/index.js +24 -13
  722. package/umd/ui-react-inspector/with-schemas/index.js +24 -13
  723. package/umd/with-schemas/index.js +22 -12
  724. package/with-schemas/index.js +22 -12
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t="",a=Promise,s=globalThis,n=Math,o=n.floor,r=e=>null==e,i=(e,t,a)=>r(e)?a?.():t(e),c=e=>Array.isArray(e),l=(e,t,a)=>e.slice(t,a),d=e=>e.length,g=e=>{throw Error(e)},u=(e,t)=>e.forEach(t),y=(e,t)=>e.map(t),h=(e,t,a)=>e.reduce(t,a),f=(e,...t)=>e.push(...t),v=e=>e.shift(),p=Object,S=e=>p.getPrototypeOf(e),w=p.entries,b=p.keys,A=p.freeze,C=(e,t)=>u(w(e),(([e,a])=>t(a,e))),M=e=>(e=>!r(e)&&i(S(e),(e=>e==p.prototype||r(S(e))),(()=>!0)))(e)&&0==(e=>d(b(e)))(e),L=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),m=e=>e?.size??0,T=(H=m,e=>h(k(e),((e,t)=>e+H(t)),0));var H;const D=e=>r(e)||0==m(e),k=e=>[...e?.values()??[]],x=(e,t)=>e?.forEach(t),E=(e,t)=>e?.delete(t),O=e=>new Map(e),P=e=>[...e?.keys()??[]],z=(e,t)=>e?.get(t),I=(e,t,a)=>r(a)?(E(e,t),e):e?.set(t,a),N=(e,t,a,s)=>{var n,o;return n=e,o=t,n?.has(o)?s?.(z(e,t)):I(e,t,a()),z(e,t)},R=(e,t,a,s,n=0)=>i((a?N:z)(e,t[n],n>d(t)-2?a:O),(o=>{if(n>d(t)-2)return s?.(o)&&I(e,t[n]),o;const r=R(o,t,a,s,n+1);return D(o)&&I(e,t[n]),r})),V=(e,t)=>{const a=e.indexOf("\n");-1!==a&&t(l(e,0,a),l(e,a+1))},W=(e,t)=>e+"\n"+t;new s.TextEncoder;const j=(e,t)=>t?[e,t]:[e],J=(e,t)=>((e??"")>(t??"")?e:t)??"",$=(e="")=>j(((e=[])=>p.fromEntries(e))(),e),B=O(),F=O(),U="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split(t);O(y(U,((e,t)=>[e,t])));const q=s.crypto?e=>s.crypto.getRandomValues(e):e=>y(e,(()=>o(256*n.random()))),G=e=>new Set(c(e)||r(e)?e:[e]),K=/^\d+$/,Q=/\/([^?]*)/;e.createWsServer=(e,s)=>{const n=O(),o=O(),l=O(),y=O(),[p,S,w]=(()=>{let e;const[a,s]=(()=>{const e=[];let a=0;return[s=>(s?v(e):null)??t+a++,t=>{K.test(t)&&d(e)<1e3&&f(e,t)}]})(),n=O();return[(s,o,r,i=[],c=()=>[])=>{e??=k;const l=a(1);var d,g;return I(n,l,[s,o,r,i,c]),d=R(o,r??[t],G),g=l,d?.add(g),l},(a,s,...o)=>u(((e,a=[t])=>{const s=[],n=(e,t)=>t==d(a)?f(s,e):null===a[t]?x(e,(e=>n(e,t+1))):u([a[t],null],(a=>n(z(e,a),t+1)));return n(e,0),s})(a,s),(t=>x(t,(t=>z(n,t)[0](e,...s??[],...o))))),e=>i(z(n,e),(([,a,o])=>(R(a,o??[t],void 0,(t=>(E(t,e),D(t)?1:0))),I(n,e),s(e),o))),t=>i(z(n,t),(([t,,a=[],s,n])=>{const o=(...i)=>{const c=d(i);c==d(a)?t(e,...i,...n(i)):r(a[c])?u(s[c]?.(...i)??[],(e=>o(...i,e))):o(...i,a[c])};o()}))]})(),b=e=>{e[1]?.destroy(),e[2]?.destroy()},H=(e,a,s)=>n=>V(n,((n,o)=>{const r=W(e,o);var i;n===t?("S"!==e&&s[3]?.(r),i=(t,a)=>t!==e?a.send(r):0,x(a,((e,t)=>i(t,e)))):"S"===n?s[3]?.(r):z(a,n)?.send(r)}));e.on("connection",((e,d)=>i(d.url?.match(Q),(([,p])=>i(d.headers["sec-websocket-key"],(async d=>{const w=N(l,p,O),m=N(y,p,(()=>[0])),T=H(d,w,m);D(w)&&(S(n,void 0,p,1),await(async(e,n,o)=>i(await(s?.(n)),(s=>{e[0]=1,e[1]=c(s)?s[0]:s;const n=H("S",o,e);e[2]=((e,t,s,n,o,l,d,u,y={})=>{let p,S=0,w=0;const b=O(),m=(e,a,s,n)=>{S++,t(e,a,s,n)},T=async(e,t,s="")=>new a(((a,n)=>{const r=((e=16)=>h(q(new Uint8Array(e)),((e,t)=>e+U[63&t]),""))(),i=setTimeout((()=>{E(b,r),n(`No response from ${e??"anyone"} to ${r}, `+t)}),1e3*o);I(b,r,[e,(e,t)=>{clearTimeout(i),E(b,r),a([e,t])}]),m(e,r,t,s)})),H=(e,[t,a])=>{C(t,(([t,a],s)=>{const n=L(e[0],s,$);C(t,(([e,t],a)=>{const s=L(n[0],a,$);C(e,(([e,t],a)=>s[0][a]=j(e,t))),s[1]=J(s[1],t)})),n[1]=J(n[1],a)})),e[1]=J(e[1],a)},D=async(t=null,a)=>{r(a)&&([a,t]=await T(t,1));const[s,n]=a,[o,i]=e.getMergeableContentHashes();let c=$();if(o!=s){const[a,s]=(await T(t,4,e.getMergeableTableHashes()))[0];if(c=a,!M(s)){const[a,n]=(await T(t,5,e.getMergeableRowHashes(s)))[0];if(H(c,a),!M(n)){const a=(await T(t,6,e.getMergeableCellHashes(n)))[0];H(c,a)}}}return[c,i==n?$():(await T(t,7,e.getMergeableValueHashes()))[0],1]},k=((e,t,a,s,n,o,l,d={},u=[])=>{let y,h,p,S=0,w=0,b=0;N(B,u,(()=>0)),N(F,u,(()=>[]));const[C,L,m,T,H]=((e=1,t)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!M(e)||!M(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!M(e)||!M(t),t.setContent]:g("Store type not supported by this Persister"))(l,e),D=t=>{(C&&c(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},k=async e=>(2!=S&&(S=1,w++,await P((async()=>{try{const e=await t();c(e)?D(e):g("Content is not an array "+e)}catch(t){e&&H(e)}S=0}))),R),x=()=>(h&&(n(h),h=void 0),R),E=async e=>(1!=S&&(S=2,b++,await P((async()=>{try{await a(L,e)}catch(e){}S=0}))),R),O=()=>(i(p,e.delListener),p=void 0,R),P=async(...e)=>(f(z(F,u),...e),await(async()=>{if(!z(B,u)){for(I(B,u,1);!r(y=v(z(F,u)));)try{await y()}catch(e){}I(B,u,0)}})(),R),R={load:k,startAutoLoad:async e=>{await x().load(e);try{h=await s((async(e,t)=>{t||e?2!=S&&(S=1,w++,D(t??e),S=0):await k()}))}catch(e){}return R},stopAutoLoad:x,isAutoLoading:()=>!r(h),save:E,startAutoSave:async()=>(await O().save(),p=e.addDidFinishTransactionListener((()=>{const e=m();T(e)&&E(e)})),R),stopAutoSave:O,isAutoSaving:()=>!r(p),schedule:P,getStore:()=>e,destroy:()=>(z(F,u).splice(0,void 0),x().stopAutoSave()),getStats:()=>({loads:w,saves:b}),...d};return A(R)})(e,(async()=>{const e=await D();return M(e[0][0])&&M(e[1][0])?void 0:e}),(async(t,a)=>a?m(null,null,3,a):m(null,null,2,e.getMergeableContentHashes())),(e=>p=e),(()=>p=void 0),0,2,{startSync:async e=>await(await k.startAutoLoad(e)).startAutoSave(),stopSync:()=>k.stopAutoLoad().stopAutoSave(),destroy:()=>k.stopSync(),getSynchronizerStats:()=>({sends:S,receives:w}),...y});return s(((t,a,s,n)=>{w++,0==s?i(z(b,a),(([e,a])=>r(e)||e==t?a(n,t):0)):2==s&&k.isAutoLoading()?D(t,n).then((e=>{p?.(void 0,e)})):3==s&&k.isAutoLoading()?p?.(void 0,n):i(1==s&&k.isAutoSaving()?e.getMergeableContentHashes():4==s?e.getMergeableTableDiff(n):5==s?e.getMergeableRowDiff(n):6==s?e.getMergeableCellDiff(n):7==s?e.getMergeableValueDiff(n):void 0,(e=>{m(t,a,0,e)}))})),k})(e[1].getStore(),((e,a,s,o)=>n(((e,...a)=>W(e??t,JSON.stringify(a,((e,t)=>void 0===t?"":t))))(e,a,s,o))),(t=>e[3]=e=>((e,t)=>V(e,((e,a)=>{return t(e,...(s=a,JSON.parse(s,((e,t)=>""===t?void 0:t))));var s})))(e,t)),0,1),e[4]=[],e[5]=c(s)?s[1]:e=>0})))(m,p,w)),I(w,d,e),S(o,[p],d,1),e.on("message",(e=>{const t=e.toString("utf8");0==m[0]?T(t):f(m[4],t)})),1==m[0]&&(await(async e=>{e[0]=2,await e[1].schedule(e[1].startAutoLoad,e[1].startAutoSave,e[2].startSync),e[5](e[1].getStore()),e[0]=0})(m),u(m[4],T),m[4]=[]),e.on("close",(()=>{E(w,d),S(o,[p],d,-1),D(w)&&(b(m),E(y,p),E(l,p),S(n,void 0,p,-1))}))}))))));const k={getWebSocketServer:()=>e,getPathIds:()=>P(l),getClientIds:e=>P(z(l,e)),addPathIdsListener:e=>p(e,n),addClientIdsListener:(e,t)=>p(t,o,[e]),delListener:e=>(w(e),k),getStats:()=>({paths:m(l),clients:T(l)}),destroy:()=>{l.clear(),x(y,b),e.close()}};return A(k)}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseSynchronizerWsServer={});
1
+ var e,t;e=this,t=function(e){"use strict";const t="",a=Promise,s=globalThis,n=Math,o=n.floor,r=e=>null==e,i=(e,t,a)=>r(e)?a?.():t(e),c=e=>Array.isArray(e),l=(e,t,a)=>e.slice(t,a),d=e=>e.length,u=e=>{throw Error(e)},g=(e,t)=>e.forEach(t),y=(e,t)=>e.map(t),h=(e,t,a)=>e.reduce(t,a),f=(e,...t)=>e.push(...t),v=e=>e.shift(),p=Object,S=e=>p.getPrototypeOf(e),w=p.entries,b=p.keys,A=p.freeze,C=(e,t)=>g(w(e),(([e,a])=>t(a,e))),M=e=>(e=>!r(e)&&i(S(e),(e=>e==p.prototype||r(S(e))),(()=>!0)))(e)&&0==(e=>d(b(e)))(e),L=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),m=e=>e?.size??0,T=(H=m,e=>h(k(e),((e,t)=>e+H(t)),0));var H;const D=e=>r(e)||0==m(e),k=e=>[...e?.values()??[]],x=(e,t)=>e?.forEach(t),E=(e,t)=>e?.delete(t),O=e=>new Map(e),P=e=>[...e?.keys()??[]],z=(e,t)=>e?.get(t),I=(e,t,a)=>r(a)?(E(e,t),e):e?.set(t,a),N=(e,t,a,s)=>{var n,o;return n=e,o=t,n?.has(o)?s?.(z(e,t)):I(e,t,a()),z(e,t)},R=(e,t,a,s,n=0)=>i((a?N:z)(e,t[n],n>d(t)-2?a:O),(o=>{if(n>d(t)-2)return s?.(o)&&I(e,t[n]),o;const r=R(o,t,a,s,n+1);return D(o)&&I(e,t[n]),r})),V=(e,t)=>{const a=e.indexOf("\n");-1!==a&&t(l(e,0,a),l(e,a+1))},W=(e,t)=>e+"\n"+t;new s.TextEncoder;const j=(e,t)=>t?[e,t]:[e],J=(e,t)=>((e??"")>(t??"")?e:t)??"",$=(e="")=>j(((e=[])=>p.fromEntries(e))(),e),B=O(),F=O(),U="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split(t);O(y(U,((e,t)=>[e,t])));const q=s.crypto?e=>s.crypto.getRandomValues(e):e=>y(e,(()=>o(256*n.random()))),G=e=>new Set(c(e)||r(e)?e:[e]),K=/^\d+$/,Q=/\/([^?]*)/;e.createWsServer=(e,s)=>{const n=O(),o=O(),l=O(),y=O(),[p,S,w]=(()=>{let e;const[a,s]=(()=>{const e=[];let a=0;return[s=>(s?v(e):null)??t+a++,t=>{K.test(t)&&d(e)<1e3&&f(e,t)}]})(),n=O();return[(s,o,r,i=[],c=()=>[])=>{e??=k;const l=a(1);var d,u;return I(n,l,[s,o,r,i,c]),d=R(o,r??[t],G),u=l,d?.add(u),l},(a,s,...o)=>g(((e,a=[t])=>{const s=[],n=(e,t)=>t==d(a)?f(s,e):null===a[t]?x(e,(e=>n(e,t+1))):g([a[t],null],(a=>n(z(e,a),t+1)));return n(e,0),s})(a,s),(t=>x(t,(t=>z(n,t)[0](e,...s??[],...o))))),e=>i(z(n,e),(([,a,o])=>(R(a,o??[t],void 0,(t=>(E(t,e),D(t)?1:0))),I(n,e),s(e),o))),t=>i(z(n,t),(([t,,a=[],s,n])=>{const o=(...i)=>{const c=d(i);c==d(a)?t(e,...i,...n(i)):r(a[c])?g(s[c]?.(...i)??[],(e=>o(...i,e))):o(...i,a[c])};o()}))]})(),b=e=>{e[1]?.destroy(),e[2]?.destroy()},H=(e,a,s)=>n=>V(n,((n,o)=>{const r=W(e,o);var i;n===t?("S"!==e&&s[3]?.(r),i=(t,a)=>t!==e?a.send(r):0,x(a,((e,t)=>i(t,e)))):"S"===n?s[3]?.(r):z(a,n)?.send(r)}));e.on("connection",((e,d)=>{return i((p=d.url,w=Q,p?.match(w)),(([,p])=>i(d.headers["sec-websocket-key"],(async d=>{const w=N(l,p,O),m=N(y,p,(()=>[0])),T=H(d,w,m);D(w)&&(S(n,void 0,p,1),await(async(e,n,o)=>i(await(s?.(n)),(s=>{e[0]=1,e[1]=c(s)?s[0]:s;const n=H("S",o,e);e[2]=((e,t,s,n,o,l,d,g,y={})=>{let p,S=0,w=0;const b=O(),m=(e,a,s,n)=>{S++,t(e,a,s,n)},T=async(e,t,s="")=>new a(((a,n)=>{const r=((e=16)=>h(q(new Uint8Array(e)),((e,t)=>e+U[63&t]),""))(),i=setTimeout((()=>{E(b,r),n(`No response from ${e??"anyone"} to ${r}, `+t)}),1e3*o);I(b,r,[e,(e,t)=>{clearTimeout(i),E(b,r),a([e,t])}]),m(e,r,t,s)})),H=(e,[t,a])=>{C(t,(([t,a],s)=>{const n=L(e[0],s,$);C(t,(([e,t],a)=>{const s=L(n[0],a,$);C(e,(([e,t],a)=>s[0][a]=j(e,t))),s[1]=J(s[1],t)})),n[1]=J(n[1],a)})),e[1]=J(e[1],a)},D=async(t=null,a)=>{r(a)&&([a,t]=await T(t,1));const[s,n]=a,[o,i]=e.getMergeableContentHashes();let c=$();if(o!=s){const[a,s]=(await T(t,4,e.getMergeableTableHashes()))[0];if(c=a,!M(s)){const[a,n]=(await T(t,5,e.getMergeableRowHashes(s)))[0];if(H(c,a),!M(n)){const a=(await T(t,6,e.getMergeableCellHashes(n)))[0];H(c,a)}}}return[c,i==n?$():(await T(t,7,e.getMergeableValueHashes()))[0],1]},k=((e,t,a,s,n,o,l,d={},g=[])=>{let y,h,p,S=0,w=0,b=0;N(B,g,(()=>0)),N(F,g,(()=>[]));const[C,L,m,T,H]=((e=1,t)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!M(e)||!M(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!M(e)||!M(t),t.setContent]:u("Store type not supported by this Persister"))(l,e),D=t=>{(C&&c(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},k=async e=>(2!=S&&(S=1,w++,await P((async()=>{try{const e=await t();c(e)?D(e):u("Content is not an array "+e)}catch(t){e&&H(e)}S=0}))),R),x=()=>(h&&(n(h),h=void 0),R),E=async e=>(1!=S&&(S=2,b++,await P((async()=>{try{await a(L,e)}catch(e){}S=0}))),R),O=()=>(i(p,e.delListener),p=void 0,R),P=async(...e)=>(f(z(F,g),...e),await(async()=>{if(!z(B,g)){for(I(B,g,1);!r(y=v(z(F,g)));)try{await y()}catch(e){}I(B,g,0)}})(),R),R={load:k,startAutoLoad:async e=>{await x().load(e);try{h=await s((async(e,t)=>{t||e?2!=S&&(S=1,w++,D(t??e),S=0):await k()}))}catch(e){}return R},stopAutoLoad:x,isAutoLoading:()=>!r(h),save:E,startAutoSave:async()=>(await O().save(),p=e.addDidFinishTransactionListener((()=>{const e=m();T(e)&&E(e)})),R),stopAutoSave:O,isAutoSaving:()=>!r(p),schedule:P,getStore:()=>e,destroy:()=>(z(F,g).splice(0,void 0),x().stopAutoSave()),getStats:()=>({loads:w,saves:b}),...d};return A(R)})(e,(async()=>{const e=await D();return M(e[0][0])&&M(e[1][0])?void 0:e}),(async(t,a)=>a?m(null,null,3,a):m(null,null,2,e.getMergeableContentHashes())),(e=>p=e),(()=>p=void 0),0,2,{startSync:async e=>await(await k.startAutoLoad(e)).startAutoSave(),stopSync:()=>k.stopAutoLoad().stopAutoSave(),destroy:()=>k.stopSync(),getSynchronizerStats:()=>({sends:S,receives:w}),...y});return s(((t,a,s,n)=>{w++,0==s?i(z(b,a),(([e,a])=>r(e)||e==t?a(n,t):0)):2==s&&k.isAutoLoading()?D(t,n).then((e=>{p?.(void 0,e)})):3==s&&k.isAutoLoading()?p?.(void 0,n):i(1==s&&k.isAutoSaving()?e.getMergeableContentHashes():4==s?e.getMergeableTableDiff(n):5==s?e.getMergeableRowDiff(n):6==s?e.getMergeableCellDiff(n):7==s?e.getMergeableValueDiff(n):void 0,(e=>{m(t,a,0,e)}))})),k})(e[1].getStore(),((e,a,s,o)=>n(((e,...a)=>W(e??t,JSON.stringify(a,((e,t)=>void 0===t?"":t))))(e,a,s,o))),(t=>e[3]=e=>((e,t)=>V(e,((e,a)=>{return t(e,...(s=a,JSON.parse(s,((e,t)=>""===t?void 0:t))));var s})))(e,t)),0,1),e[4]=[],e[5]=c(s)?s[1]:e=>0})))(m,p,w)),I(w,d,e),S(o,[p],d,1),e.on("message",(e=>{const t=e.toString("utf8");0==m[0]?T(t):f(m[4],t)})),1==m[0]&&(await(async e=>{e[0]=2,await e[1].schedule(e[1].startAutoLoad,e[1].startAutoSave,e[2].startSync),e[5](e[1].getStore()),e[0]=0})(m),g(m[4],T),m[4]=[]),e.on("close",(()=>{E(w,d),S(o,[p],d,-1),D(w)&&(b(m),E(y,p),E(l,p),S(n,void 0,p,-1))}))}))));var p,w}));const k={getWebSocketServer:()=>e,getPathIds:()=>P(l),getClientIds:e=>P(z(l,e)),addPathIdsListener:e=>p(e,n),addClientIdsListener:(e,t)=>p(t,o,[e]),delListener:e=>(w(e),k),getStats:()=>({paths:m(l),clients:T(l)}),destroy:()=>{l.clear(),x(y,b),e.close()}};return A(k)}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseSynchronizerWsServer={});
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t="",a=Promise,s=globalThis,n=Math,o=n.floor,r=e=>null==e,i=(e,t,a)=>r(e)?a?.():t(e),c=e=>Array.isArray(e),l=(e,t,a)=>e.slice(t,a),d=e=>e.length,g=e=>{throw Error(e)},u=(e,t)=>e.forEach(t),y=(e,t)=>e.map(t),h=(e,t,a)=>e.reduce(t,a),f=(e,...t)=>e.push(...t),v=e=>e.shift(),p=Object,S=e=>p.getPrototypeOf(e),w=p.entries,b=p.keys,A=p.freeze,C=(e,t)=>u(w(e),(([e,a])=>t(a,e))),M=e=>(e=>!r(e)&&i(S(e),(e=>e==p.prototype||r(S(e))),(()=>!0)))(e)&&0==(e=>d(b(e)))(e),L=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),m=e=>e?.size??0,T=(H=m,e=>h(k(e),((e,t)=>e+H(t)),0));var H;const D=e=>r(e)||0==m(e),k=e=>[...e?.values()??[]],x=(e,t)=>e?.forEach(t),E=(e,t)=>e?.delete(t),O=e=>new Map(e),P=e=>[...e?.keys()??[]],z=(e,t)=>e?.get(t),I=(e,t,a)=>r(a)?(E(e,t),e):e?.set(t,a),N=(e,t,a,s)=>{var n,o;return n=e,o=t,n?.has(o)?s?.(z(e,t)):I(e,t,a()),z(e,t)},R=(e,t,a,s,n=0)=>i((a?N:z)(e,t[n],n>d(t)-2?a:O),(o=>{if(n>d(t)-2)return s?.(o)&&I(e,t[n]),o;const r=R(o,t,a,s,n+1);return D(o)&&I(e,t[n]),r})),V=(e,t)=>{const a=e.indexOf("\n");-1!==a&&t(l(e,0,a),l(e,a+1))},W=(e,t)=>e+"\n"+t;new s.TextEncoder;const j=(e,t)=>t?[e,t]:[e],J=(e,t)=>((e??"")>(t??"")?e:t)??"",$=(e="")=>j(((e=[])=>p.fromEntries(e))(),e),B=O(),F=O(),U="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split(t);O(y(U,((e,t)=>[e,t])));const q=s.crypto?e=>s.crypto.getRandomValues(e):e=>y(e,(()=>o(256*n.random()))),G=e=>new Set(c(e)||r(e)?e:[e]),K=/^\d+$/,Q=/\/([^?]*)/;e.createWsServer=(e,s)=>{const n=O(),o=O(),l=O(),y=O(),[p,S,w]=(()=>{let e;const[a,s]=(()=>{const e=[];let a=0;return[s=>(s?v(e):null)??t+a++,t=>{K.test(t)&&d(e)<1e3&&f(e,t)}]})(),n=O();return[(s,o,r,i=[],c=()=>[])=>{e??=k;const l=a(1);var d,g;return I(n,l,[s,o,r,i,c]),d=R(o,r??[t],G),g=l,d?.add(g),l},(a,s,...o)=>u(((e,a=[t])=>{const s=[],n=(e,t)=>t==d(a)?f(s,e):null===a[t]?x(e,(e=>n(e,t+1))):u([a[t],null],(a=>n(z(e,a),t+1)));return n(e,0),s})(a,s),(t=>x(t,(t=>z(n,t)[0](e,...s??[],...o))))),e=>i(z(n,e),(([,a,o])=>(R(a,o??[t],void 0,(t=>(E(t,e),D(t)?1:0))),I(n,e),s(e),o))),t=>i(z(n,t),(([t,,a=[],s,n])=>{const o=(...i)=>{const c=d(i);c==d(a)?t(e,...i,...n(i)):r(a[c])?u(s[c]?.(...i)??[],(e=>o(...i,e))):o(...i,a[c])};o()}))]})(),b=e=>{e[1]?.destroy(),e[2]?.destroy()},H=(e,a,s)=>n=>V(n,((n,o)=>{const r=W(e,o);var i;n===t?("S"!==e&&s[3]?.(r),i=(t,a)=>t!==e?a.send(r):0,x(a,((e,t)=>i(t,e)))):"S"===n?s[3]?.(r):z(a,n)?.send(r)}));e.on("connection",((e,d)=>i(d.url?.match(Q),(([,p])=>i(d.headers["sec-websocket-key"],(async d=>{const w=N(l,p,O),m=N(y,p,(()=>[0])),T=H(d,w,m);D(w)&&(S(n,void 0,p,1),await(async(e,n,o)=>i(await(s?.(n)),(s=>{e[0]=1,e[1]=c(s)?s[0]:s;const n=H("S",o,e);e[2]=((e,t,s,n,o,l,d,u,y={})=>{let p,S=0,w=0;const b=O(),m=(e,a,s,n)=>{S++,t(e,a,s,n)},T=async(e,t,s="")=>new a(((a,n)=>{const r=((e=16)=>h(q(new Uint8Array(e)),((e,t)=>e+U[63&t]),""))(),i=setTimeout((()=>{E(b,r),n(`No response from ${e??"anyone"} to ${r}, `+t)}),1e3*o);I(b,r,[e,(e,t)=>{clearTimeout(i),E(b,r),a([e,t])}]),m(e,r,t,s)})),H=(e,[t,a])=>{C(t,(([t,a],s)=>{const n=L(e[0],s,$);C(t,(([e,t],a)=>{const s=L(n[0],a,$);C(e,(([e,t],a)=>s[0][a]=j(e,t))),s[1]=J(s[1],t)})),n[1]=J(n[1],a)})),e[1]=J(e[1],a)},D=async(t=null,a)=>{r(a)&&([a,t]=await T(t,1));const[s,n]=a,[o,i]=e.getMergeableContentHashes();let c=$();if(o!=s){const[a,s]=(await T(t,4,e.getMergeableTableHashes()))[0];if(c=a,!M(s)){const[a,n]=(await T(t,5,e.getMergeableRowHashes(s)))[0];if(H(c,a),!M(n)){const a=(await T(t,6,e.getMergeableCellHashes(n)))[0];H(c,a)}}}return[c,i==n?$():(await T(t,7,e.getMergeableValueHashes()))[0],1]},k=((e,t,a,s,n,o,l,d={},u=[])=>{let y,h,p,S=0,w=0,b=0;N(B,u,(()=>0)),N(F,u,(()=>[]));const[C,L,m,T,H]=((e=1,t)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!M(e)||!M(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!M(e)||!M(t),t.setContent]:g("Store type not supported by this Persister"))(l,e),D=t=>{(C&&c(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},k=async e=>(2!=S&&(S=1,w++,await P((async()=>{try{const e=await t();c(e)?D(e):g("Content is not an array "+e)}catch(t){e&&H(e)}S=0}))),R),x=()=>(h&&(n(h),h=void 0),R),E=async e=>(1!=S&&(S=2,b++,await P((async()=>{try{await a(L,e)}catch(e){}S=0}))),R),O=()=>(i(p,e.delListener),p=void 0,R),P=async(...e)=>(f(z(F,u),...e),await(async()=>{if(!z(B,u)){for(I(B,u,1);!r(y=v(z(F,u)));)try{await y()}catch(e){}I(B,u,0)}})(),R),R={load:k,startAutoLoad:async e=>{await x().load(e);try{h=await s((async(e,t)=>{t||e?2!=S&&(S=1,w++,D(t??e),S=0):await k()}))}catch(e){}return R},stopAutoLoad:x,isAutoLoading:()=>!r(h),save:E,startAutoSave:async()=>(await O().save(),p=e.addDidFinishTransactionListener((()=>{const e=m();T(e)&&E(e)})),R),stopAutoSave:O,isAutoSaving:()=>!r(p),schedule:P,getStore:()=>e,destroy:()=>(z(F,u).splice(0,void 0),x().stopAutoSave()),getStats:()=>({loads:w,saves:b}),...d};return A(R)})(e,(async()=>{const e=await D();return M(e[0][0])&&M(e[1][0])?void 0:e}),(async(t,a)=>a?m(null,null,3,a):m(null,null,2,e.getMergeableContentHashes())),(e=>p=e),(()=>p=void 0),0,2,{startSync:async e=>await(await k.startAutoLoad(e)).startAutoSave(),stopSync:()=>k.stopAutoLoad().stopAutoSave(),destroy:()=>k.stopSync(),getSynchronizerStats:()=>({sends:S,receives:w}),...y});return s(((t,a,s,n)=>{w++,0==s?i(z(b,a),(([e,a])=>r(e)||e==t?a(n,t):0)):2==s&&k.isAutoLoading()?D(t,n).then((e=>{p?.(void 0,e)})):3==s&&k.isAutoLoading()?p?.(void 0,n):i(1==s&&k.isAutoSaving()?e.getMergeableContentHashes():4==s?e.getMergeableTableDiff(n):5==s?e.getMergeableRowDiff(n):6==s?e.getMergeableCellDiff(n):7==s?e.getMergeableValueDiff(n):void 0,(e=>{m(t,a,0,e)}))})),k})(e[1].getStore(),((e,a,s,o)=>n(((e,...a)=>W(e??t,JSON.stringify(a,((e,t)=>void 0===t?"":t))))(e,a,s,o))),(t=>e[3]=e=>((e,t)=>V(e,((e,a)=>{return t(e,...(s=a,JSON.parse(s,((e,t)=>""===t?void 0:t))));var s})))(e,t)),0,1),e[4]=[],e[5]=c(s)?s[1]:e=>0})))(m,p,w)),I(w,d,e),S(o,[p],d,1),e.on("message",(e=>{const t=e.toString("utf8");0==m[0]?T(t):f(m[4],t)})),1==m[0]&&(await(async e=>{e[0]=2,await e[1].schedule(e[1].startAutoLoad,e[1].startAutoSave,e[2].startSync),e[5](e[1].getStore()),e[0]=0})(m),u(m[4],T),m[4]=[]),e.on("close",(()=>{E(w,d),S(o,[p],d,-1),D(w)&&(b(m),E(y,p),E(l,p),S(n,void 0,p,-1))}))}))))));const k={getWebSocketServer:()=>e,getPathIds:()=>P(l),getClientIds:e=>P(z(l,e)),addPathIdsListener:e=>p(e,n),addClientIdsListener:(e,t)=>p(t,o,[e]),delListener:e=>(w(e),k),getStats:()=>({paths:m(l),clients:T(l)}),destroy:()=>{l.clear(),x(y,b),e.close()}};return A(k)}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseSynchronizerWsServer={});
1
+ var e,t;e=this,t=function(e){"use strict";const t="",a=Promise,s=globalThis,n=Math,o=n.floor,r=e=>null==e,i=(e,t,a)=>r(e)?a?.():t(e),c=e=>Array.isArray(e),l=(e,t,a)=>e.slice(t,a),d=e=>e.length,u=e=>{throw Error(e)},g=(e,t)=>e.forEach(t),y=(e,t)=>e.map(t),h=(e,t,a)=>e.reduce(t,a),f=(e,...t)=>e.push(...t),v=e=>e.shift(),p=Object,S=e=>p.getPrototypeOf(e),w=p.entries,b=p.keys,A=p.freeze,C=(e,t)=>g(w(e),(([e,a])=>t(a,e))),M=e=>(e=>!r(e)&&i(S(e),(e=>e==p.prototype||r(S(e))),(()=>!0)))(e)&&0==(e=>d(b(e)))(e),L=(e,t,a)=>(((e,t)=>t in e)(e,t)||(e[t]=a()),e[t]),m=e=>e?.size??0,T=(H=m,e=>h(k(e),((e,t)=>e+H(t)),0));var H;const D=e=>r(e)||0==m(e),k=e=>[...e?.values()??[]],x=(e,t)=>e?.forEach(t),E=(e,t)=>e?.delete(t),O=e=>new Map(e),P=e=>[...e?.keys()??[]],z=(e,t)=>e?.get(t),I=(e,t,a)=>r(a)?(E(e,t),e):e?.set(t,a),N=(e,t,a,s)=>{var n,o;return n=e,o=t,n?.has(o)?s?.(z(e,t)):I(e,t,a()),z(e,t)},R=(e,t,a,s,n=0)=>i((a?N:z)(e,t[n],n>d(t)-2?a:O),(o=>{if(n>d(t)-2)return s?.(o)&&I(e,t[n]),o;const r=R(o,t,a,s,n+1);return D(o)&&I(e,t[n]),r})),V=(e,t)=>{const a=e.indexOf("\n");-1!==a&&t(l(e,0,a),l(e,a+1))},W=(e,t)=>e+"\n"+t;new s.TextEncoder;const j=(e,t)=>t?[e,t]:[e],J=(e,t)=>((e??"")>(t??"")?e:t)??"",$=(e="")=>j(((e=[])=>p.fromEntries(e))(),e),B=O(),F=O(),U="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz".split(t);O(y(U,((e,t)=>[e,t])));const q=s.crypto?e=>s.crypto.getRandomValues(e):e=>y(e,(()=>o(256*n.random()))),G=e=>new Set(c(e)||r(e)?e:[e]),K=/^\d+$/,Q=/\/([^?]*)/;e.createWsServer=(e,s)=>{const n=O(),o=O(),l=O(),y=O(),[p,S,w]=(()=>{let e;const[a,s]=(()=>{const e=[];let a=0;return[s=>(s?v(e):null)??t+a++,t=>{K.test(t)&&d(e)<1e3&&f(e,t)}]})(),n=O();return[(s,o,r,i=[],c=()=>[])=>{e??=k;const l=a(1);var d,u;return I(n,l,[s,o,r,i,c]),d=R(o,r??[t],G),u=l,d?.add(u),l},(a,s,...o)=>g(((e,a=[t])=>{const s=[],n=(e,t)=>t==d(a)?f(s,e):null===a[t]?x(e,(e=>n(e,t+1))):g([a[t],null],(a=>n(z(e,a),t+1)));return n(e,0),s})(a,s),(t=>x(t,(t=>z(n,t)[0](e,...s??[],...o))))),e=>i(z(n,e),(([,a,o])=>(R(a,o??[t],void 0,(t=>(E(t,e),D(t)?1:0))),I(n,e),s(e),o))),t=>i(z(n,t),(([t,,a=[],s,n])=>{const o=(...i)=>{const c=d(i);c==d(a)?t(e,...i,...n(i)):r(a[c])?g(s[c]?.(...i)??[],(e=>o(...i,e))):o(...i,a[c])};o()}))]})(),b=e=>{e[1]?.destroy(),e[2]?.destroy()},H=(e,a,s)=>n=>V(n,((n,o)=>{const r=W(e,o);var i;n===t?("S"!==e&&s[3]?.(r),i=(t,a)=>t!==e?a.send(r):0,x(a,((e,t)=>i(t,e)))):"S"===n?s[3]?.(r):z(a,n)?.send(r)}));e.on("connection",((e,d)=>{return i((p=d.url,w=Q,p?.match(w)),(([,p])=>i(d.headers["sec-websocket-key"],(async d=>{const w=N(l,p,O),m=N(y,p,(()=>[0])),T=H(d,w,m);D(w)&&(S(n,void 0,p,1),await(async(e,n,o)=>i(await(s?.(n)),(s=>{e[0]=1,e[1]=c(s)?s[0]:s;const n=H("S",o,e);e[2]=((e,t,s,n,o,l,d,g,y={})=>{let p,S=0,w=0;const b=O(),m=(e,a,s,n)=>{S++,t(e,a,s,n)},T=async(e,t,s="")=>new a(((a,n)=>{const r=((e=16)=>h(q(new Uint8Array(e)),((e,t)=>e+U[63&t]),""))(),i=setTimeout((()=>{E(b,r),n(`No response from ${e??"anyone"} to ${r}, `+t)}),1e3*o);I(b,r,[e,(e,t)=>{clearTimeout(i),E(b,r),a([e,t])}]),m(e,r,t,s)})),H=(e,[t,a])=>{C(t,(([t,a],s)=>{const n=L(e[0],s,$);C(t,(([e,t],a)=>{const s=L(n[0],a,$);C(e,(([e,t],a)=>s[0][a]=j(e,t))),s[1]=J(s[1],t)})),n[1]=J(n[1],a)})),e[1]=J(e[1],a)},D=async(t=null,a)=>{r(a)&&([a,t]=await T(t,1));const[s,n]=a,[o,i]=e.getMergeableContentHashes();let c=$();if(o!=s){const[a,s]=(await T(t,4,e.getMergeableTableHashes()))[0];if(c=a,!M(s)){const[a,n]=(await T(t,5,e.getMergeableRowHashes(s)))[0];if(H(c,a),!M(n)){const a=(await T(t,6,e.getMergeableCellHashes(n)))[0];H(c,a)}}}return[c,i==n?$():(await T(t,7,e.getMergeableValueHashes()))[0],1]},k=((e,t,a,s,n,o,l,d={},g=[])=>{let y,h,p,S=0,w=0,b=0;N(B,g,(()=>0)),N(F,g,(()=>[]));const[C,L,m,T,H]=((e=1,t)=>1!=e&&t.isMergeable()?[1,t.getMergeableContent,t.getTransactionMergeableChanges,([[e],[t]])=>!M(e)||!M(t),t.setDefaultContent]:2!=e?[0,t.getContent,t.getTransactionChanges,([e,t])=>!M(e)||!M(t),t.setContent]:u("Store type not supported by this Persister"))(l,e),D=t=>{(C&&c(t?.[0])?1===t?.[2]?e.applyMergeableChanges:e.setMergeableContent:1===t?.[2]?e.applyChanges:e.setContent)(t)},k=async e=>(2!=S&&(S=1,w++,await P((async()=>{try{const e=await t();c(e)?D(e):u("Content is not an array "+e)}catch(t){e&&H(e)}S=0}))),R),x=()=>(h&&(n(h),h=void 0),R),E=async e=>(1!=S&&(S=2,b++,await P((async()=>{try{await a(L,e)}catch(e){}S=0}))),R),O=()=>(i(p,e.delListener),p=void 0,R),P=async(...e)=>(f(z(F,g),...e),await(async()=>{if(!z(B,g)){for(I(B,g,1);!r(y=v(z(F,g)));)try{await y()}catch(e){}I(B,g,0)}})(),R),R={load:k,startAutoLoad:async e=>{await x().load(e);try{h=await s((async(e,t)=>{t||e?2!=S&&(S=1,w++,D(t??e),S=0):await k()}))}catch(e){}return R},stopAutoLoad:x,isAutoLoading:()=>!r(h),save:E,startAutoSave:async()=>(await O().save(),p=e.addDidFinishTransactionListener((()=>{const e=m();T(e)&&E(e)})),R),stopAutoSave:O,isAutoSaving:()=>!r(p),schedule:P,getStore:()=>e,destroy:()=>(z(F,g).splice(0,void 0),x().stopAutoSave()),getStats:()=>({loads:w,saves:b}),...d};return A(R)})(e,(async()=>{const e=await D();return M(e[0][0])&&M(e[1][0])?void 0:e}),(async(t,a)=>a?m(null,null,3,a):m(null,null,2,e.getMergeableContentHashes())),(e=>p=e),(()=>p=void 0),0,2,{startSync:async e=>await(await k.startAutoLoad(e)).startAutoSave(),stopSync:()=>k.stopAutoLoad().stopAutoSave(),destroy:()=>k.stopSync(),getSynchronizerStats:()=>({sends:S,receives:w}),...y});return s(((t,a,s,n)=>{w++,0==s?i(z(b,a),(([e,a])=>r(e)||e==t?a(n,t):0)):2==s&&k.isAutoLoading()?D(t,n).then((e=>{p?.(void 0,e)})):3==s&&k.isAutoLoading()?p?.(void 0,n):i(1==s&&k.isAutoSaving()?e.getMergeableContentHashes():4==s?e.getMergeableTableDiff(n):5==s?e.getMergeableRowDiff(n):6==s?e.getMergeableCellDiff(n):7==s?e.getMergeableValueDiff(n):void 0,(e=>{m(t,a,0,e)}))})),k})(e[1].getStore(),((e,a,s,o)=>n(((e,...a)=>W(e??t,JSON.stringify(a,((e,t)=>void 0===t?"":t))))(e,a,s,o))),(t=>e[3]=e=>((e,t)=>V(e,((e,a)=>{return t(e,...(s=a,JSON.parse(s,((e,t)=>""===t?void 0:t))));var s})))(e,t)),0,1),e[4]=[],e[5]=c(s)?s[1]:e=>0})))(m,p,w)),I(w,d,e),S(o,[p],d,1),e.on("message",(e=>{const t=e.toString("utf8");0==m[0]?T(t):f(m[4],t)})),1==m[0]&&(await(async e=>{e[0]=2,await e[1].schedule(e[1].startAutoLoad,e[1].startAutoSave,e[2].startSync),e[5](e[1].getStore()),e[0]=0})(m),g(m[4],T),m[4]=[]),e.on("close",(()=>{E(w,d),S(o,[p],d,-1),D(w)&&(b(m),E(y,p),E(l,p),S(n,void 0,p,-1))}))}))));var p,w}));const k={getWebSocketServer:()=>e,getPathIds:()=>P(l),getClientIds:e=>P(z(l,e)),addPathIdsListener:e=>p(e,n),addClientIdsListener:(e,t)=>p(t,o,[e]),delListener:e=>(w(e),k),getStats:()=>({paths:m(l),clients:T(l)}),destroy:()=>{l.clear(),x(y,b),e.close()}};return A(k)}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseSynchronizerWsServer={});
@@ -1 +1 @@
1
- var e,l;e=this,l=function(e){"use strict";const l=e=>typeof e,t="tinybase",a="",n=",",d=l(a),o=l(!0),s=l(0),r="type",I="default",$="Listener",c="get",u="add",i="Has",b="Ids",p="Table",C=p+"s",h=p+b,m="Row",g=m+b,f="Sorted"+m+b,w="Cell",T=w+b,y="Value",v=y+"s",x=y+b,V=Promise,R=isFinite,A=e=>null==e,k=(e,l,t)=>A(e)?t?.():l(e),S=e=>e==d||e==o,P=e=>l(e)==d,O=e=>Array.isArray(e),E=(e,l,t)=>e.slice(l,t),N=e=>e.length,D=async e=>V.all(e),L=e=>{const t=l(e);return S(t)||t==s&&R(e)?t:void 0},j=(e,l)=>e.every(l),G=(e,l)=>e.sort(l),H=(e,l)=>e.forEach(l),M=(e,l=a)=>e.join(l),J=(e,l)=>e.map(l),z=(e,l)=>e.filter(l),W=(e,...l)=>e.push(...l),B=e=>e.pop(),F=(e,...l)=>e.unshift(...l),U=e=>e.shift(),_=Object,Z=e=>_.getPrototypeOf(e),Q=_.entries,q=e=>!A(e)&&k(Z(e),(e=>e==_.prototype||A(Z(e))),(()=>!0)),K=_.keys,X=_.freeze,Y=(e,l)=>J(Q(e),(([e,t])=>l(t,e))),ee=e=>N(K(e)),le=e=>q(e)&&0==ee(e),te=(e,l)=>e?.has(l)??!1,ae=e=>[...e?.values()??[]],ne=(e,l)=>e?.forEach(l),de=(e,l)=>e?.delete(l),oe=e=>new Map(e),se=(e,l)=>e?.get(l),re=(e,l)=>ne(e,((e,t)=>l(t,e))),Ie=(e,l)=>J([...e?.entries()??[]],(([e,t])=>l(t,e))),$e=(e,l,t)=>A(t)?(de(e,l),e):e?.set(l,t),ce=(e,l,t,a)=>(te(e,l)||$e(e,l,t()),se(e,l)),ue=e=>e.toUpperCase(),ie=e=>e.toLowerCase(),be="a ",pe="A function for",Ce=", and registers a listener so that any changes to that result will cause a re-render",he="Callback",me="Changes",ge="Count",fe="Del",we="Deps",Te=we+"?: React.DependencyList",ye="doRollback?: DoRollback",ve="actions: () => Return, "+ye,xe="export",Ve="Id",Re="Invalid",Ae="Json",ke=ie($),Se="?: ",Pe=" | undefined",Oe="NonNullable",Ee="Partial",Ne="Props",De="Provider",Le=`Registers a ${ke} that will be called`,je="Represents",Ge="rowId: "+Ve,He="Schema",Me="Set",Je=", descending?: boolean, offset?: number, limit?: number",ze="[]",We="the Store",Be="Transaction",Fe=ie(Be),Ue="Execute a "+Fe+" to make multiple mutations",_e="Explicitly starts a "+Fe,Ze="Explicitly finishes a "+Fe,Qe="the end of the "+Fe,qe="void",Ke=" => "+qe,Xe="WhenSet",Ye=" when setting it",el=be+"string serialization of",ll=" ",tl="Gets a callback that can ",al="the ",nl=" the schema for",dl=(e=0)=>e?"the existence of ":"",ol=(e=0,l=0,t=0)=>dl(t)+`the ${vl[e]}content of`+(l?ll+We:a),sl=(e=0,l,t=0,n=0)=>wl[l]+ll+dl(n)+ol(e,1)+(t?" when setting it":a),rl=(e,l=0)=>je+` a Row when ${l?"s":"g"}etting ${ol()} the '${e}' `+p,Il=(e,l,t=0)=>`Gets ${t?"sorted, paginated":"the"} Ids of the ${e}s in `+l,$l=(e,l)=>`Calls a function for each ${e} in `+l,cl=e=>"The props passed to a component that renders "+e,ul=e=>"A function that takes "+e,il=(e,l=0,t=0)=>pe+" listening to changes to "+dl(t)+yl[e]+" in "+yl[l],bl=(e,l,t=0,n=0)=>Le+" whenever "+dl(n)+yl[e]+" in "+yl[l]+" change"+(t?a:"s"),pl=e=>`the '${e}' `+p,Cl=e=>"the specified Row in "+pl(e),hl=(e,l=0,t=0)=>wl[l]+ll+ol(0,0,t)+ll+pl(e),ml=(e,l=0,t=0)=>wl[l]+` ${ol(0,0,t)} `+Cl(e),gl=(e,l,t=0,a=0)=>wl[t]+ll+dl(a)+`the '${l}' Cell for `+Cl(e),fl=(e,l=0,t=0)=>wl[l]+ll+dl(t)+`the '${e}' Value`,wl=["Gets","Checks existence of","Sets","Deletes","Sets part of",je,"Gets "+el,"Sets "+el,Le+" whenever",tl+"set",tl+"add",tl+"set part of",tl+"delete","Renders","Gets "+el+nl,"Sets"+nl,"Deletes"+nl],Tl=[c,"has","set","del","set","forEach",u,a],yl=[We,C,al+p+ll+b,be+p,al+m+ll+b,be+m,al+w+ll+b,be+w,"invalid Cell changes",v,al+y+ll+b,be+y,"invalid Value changes",al+"sorted "+m+ll+b,al+w+ll+b+" anywhere",al+"number of Rows",be+w+" anywhere"],vl=[a,"tabular ","keyed value "],xl=e=>new Set(O(e)||A(e)?e:[e]),Vl=(e,l)=>e?.add(l),Rl=/[^A-Za-z]+/,Al=/[^A-Za-z0-9]+/,kl=/^( *)\/\*\* *(.*?) *\*\/$/gm,Sl=e=>e.includes(n),Pl=(e,l,t,a=1)=>{const n=`${l}${1==a?"":a}`;return te(e,n)?Pl(e,l,t,a+1):($e(e,n,t),n)},Ol=e=>e.replace(kl,((e,l,t)=>{const a=77-N(l);return`${l}/**\n${t.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),l+" * $1\n")}${l} */`})),El=e=>e.flat(1e3),Nl=(e,l=0)=>M(J(e.split(Al),((e,t)=>(t>0||l?ue:ie)(E(e,0,1))+E(e,1)))),Dl=e=>ue(M((e&&!Rl.test(e[0])?e:" "+e).split(Al),"_")),Ll=e=>`/** ${e}. */`,jl=(...e)=>M(z(e,(e=>e)),", "),Gl=(...e)=>"{"+M(e,"; ")+"}",Hl=(...e)=>Gl(...J(e,(e=>"readonly "+e))),Ml=()=>{const e=[oe(),oe(),oe(),oe()],l=oe(),t=oe(),n=e=>{const l=e.indexOf(" as ");return-1!=l?E(e,l+4):e};return[(...e)=>M(El(e),"\n"),(l,t,...a)=>H(a,(a=>H([0,1],(n=>(l??n)==n?Vl(ce(e[n],t,xl),a):0)))),(e,t,n,d=a,o=1)=>Pl(l,e,[t,n,d,o]),(e,l,a)=>Pl(t,e,O(a)?[`(${l}) => {`,a,"}"]:[`(${l}) => ${a}`]),(e,l)=>se(t,e)===l?e:Pl(t,e,l),(l=0)=>J([...G(Ie(e[l],((e,l)=>`import {${M(G(ae(e),((e,l)=>n(e)>n(l)?1:-1)),", ")}} from '${l}';`)),((e,l)=>Sl(e)!=Sl(l)?Sl(e)?-1:1:e>l?1:-1)),a],(e=>e.replace("{React}","React"))),()=>Ie(l,(([e,l,t,n],d)=>[Ll(l),`${n?xe+" ":a}type ${d}${t} = ${e};`,a])),()=>Ie(t,((e,l)=>(e=O(e)?e:[e],W(e,B(e)+";"),[`const ${l} = ${U(e)}`,e,a])))]},Jl=(e,l)=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},zl=(e,l,t)=>[l=>Y(e,((e,a)=>l(a,Nl(a,1),t(Dl(a),`'${a}'`)))),(l,a)=>Y(e[l],((e,l)=>a(l,e[r],e[I],t(Dl(l),`'${l}'`),Nl(l,1)))),e=>Y(l,((l,a)=>e(a,l[r],l[I],t(Dl(a),`'${a}'`),Nl(a,1))))],Wl=(e,l,t,n)=>[(n,d)=>{const o=n+": "+d,s=e(C,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...t(e,((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`)))+"}"))),sl(1,5)),r=e(C+Xe,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...t(e,((e,l)=>`'${e}'?: ${l}`)))+"}"))),sl(1,5,1)),I=e(p+Ve,"keyof "+s,"A "+p+" Id in "+We),c=`<TId extends ${I}>`,u=e(p,Oe+`<${s}[TId]>`,"A "+p+" in "+We,c),b=e(p+Xe,Oe+`<${r}[TId]>`,"A "+p+" in "+We+Ye,c),y=e(m,u+"<TId>[Id]","A "+m+" in a "+p,c),v=e(m+Xe,b+"<TId>[Id]","A "+m+" in a "+p+Ye,c),x=e(w+Ve,`Extract<keyof ${y}<TId>, Id>`,"A "+w+" Id in a "+m,c),V=e(w,Oe+`<${s}[TId]>[Id][CId]`,"A "+w+" in a "+m,`<TId extends ${I}, CId extends ${x}<TId>>`),R=e("CellIdCellArray",`CId extends ${x}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,w+" Ids and types in a "+m,`<TId extends ${I}, CId = ${x}<TId>>`,0),k=e(w+he,`(...[cellId, cell]: ${R}<TId>)`+Ke,ul(be+w+" Id, and "+w),c),S=e(m+he,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Ke+") "+Ke,ul(be+m+" Id, and a "+w+" iterator"),c),P=e(p+w+he,`(cellId: ${x}<TId>, count: number) `+Ke,ul(be+w+" Id, and count of how many times it appears"),c),O=e("TableIdForEachRowArray",`TId extends ${I} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${Ke}] : never`,p+" Ids and callback types",`<TId = ${I}>`,0),E=e(p+he,`(...[tableId, forEachRow]: ${O})`+Ke,ul(be+p+" Id, and a "+m+" iterator"),a),N=e("TableIdRowIdCellIdArray",`TId extends ${I} ? [tableId: TId, rowId: Id, cellId: ${x}<TId>] : never`,"Ids for GetCellChange",`<TId = ${I}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${N}) => CellChange`,pe+" returning information about any Cell's changes during a "+Fe),L=e(i+C+$,`(${o}, hasTables: boolean)`+Ke,il(1,0,1)),j=e(C+$,`(${o}, getCellChange: ${D}${Pe})`+Ke,il(1)),G=e(h+$,`(${o})`+Ke,il(2)),H=e(i+p+$,`(${o}, tableId: ${I}, hasTable: boolean)`+Ke,il(3,0,1)),M=e(p+$,`(${o}, tableId: ${I}, getCellChange: ${D}${Pe})`+Ke,il(3)),J=e(p+T+$,`(${o}, tableId: ${I})`+Ke,il(14,3)),z=e("HasTableCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, cellId: CId, hasTableCell: boolean] : never`,"Cell args for HasTableCellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),W=e("HasTableCellListenerArgsArrayOuter",`TId extends ${I} ? `+z+"<TId> : never","Table args for HasTableCellListener",`<TId = ${I}>`,0),B=e(i+p+w+$,`(...[${n}, tableId, cellId, hasTableCell]: `+W+")"+Ke,il(16,3,1)),F=e(m+"Count"+$,`(${o}, tableId: ${I})`+Ke,il(15,3)),U=e(g+$,`(${o}, tableId: ${I})`+Ke,il(4,3)),_=e(f+$,"("+jl(o,"tableId: "+I,"cellId: Id"+Pe,"descending: boolean","offset: number","limit: number"+Pe,"sortedRowIds: Ids")+")"+Ke,il(13,3)),Z=e(i+m+$,"("+jl(""+o,"tableId: "+I,Ge,"hasRow: boolean")+")"+Ke,il(5,3,1)),Q=e(m+$,"("+jl(""+o,"tableId: "+I,Ge,`getCellChange: ${D}${Pe}`)+")"+Ke,il(5,3)),q=e(T+$,"("+jl(""+o,"tableId: "+I,Ge)+")"+Ke,il(6,5)),K=e("HasCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, hasCell: boolean] : never`,"Cell args for HasCellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),X=e("HasCellListenerArgsArrayOuter",`TId extends ${I} ? `+K+"<TId> : never","Table args for HasCellListener",`<TId = ${I}>`,0),Y=e(i+w+$,`(...[${n}, tableId, rowId, cellId, hasCell]: `+X+")"+Ke,il(7,5,1)),ee=e("CellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, newCell: ${V}<TId, CId> ${Pe}, oldCell: ${V}<TId, CId> ${Pe}, getCellChange: ${D} ${Pe}] : never`,"Cell args for CellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),le=e("CellListenerArgsArrayOuter",`TId extends ${I} ? `+ee+"<TId> : never","Table args for CellListener",`<TId = ${I}>`,0);return[s,r,I,u,b,y,v,x,V,k,S,P,E,L,j,G,H,M,J,B,F,U,_,Z,Q,q,Y,e(w+$,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${le})`+Ke,il(7,5)),e(Re+w+$,`(${o}, tableId: Id, ${Ge}, cellId: Id, invalidCells: any[])`+Ke,il(8))]},(l,t)=>{const d=l+": "+t,o=e(v,Gl(...n(((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`))),sl(2,5)),s=e(v+Xe,Gl(...n(((e,l)=>`'${e}'?: ${l}`))),sl(2,5,1)),r=e(y+Ve,"keyof "+o,"A "+y+" Id in "+We),I=e(y,Oe+`<${o}[VId]>`,"A "+y+" Id in "+We,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${I}<VId>] : never`,y+" Ids and types in "+We,`<VId = ${r}>`,0),u=e(y+he,`(...[valueId, value]: ${c})`+Ke,ul(be+y+" Id, and "+y)),b=e("GetValueChange",`(valueId: ${r}) => ValueChange`,pe+" returning information about any Value's changes during a "+Fe),p=e(i+v+$,`(${d}, hasValues: boolean)`+Ke,il(9,0,1)),C=e(v+$,`(${d}, getValueChange: ${b}${Pe})`+Ke,il(9)),h=e(x+$,`(${d})`+Ke,il(10)),m=e(i+y+$,`(${d}, valueId: ValueId, hasValue: boolean)`+Ke,il(11,0,1)),g=e("ValueListenerArgsArray",`VId extends ${r} ? [${d}, valueId: VId, newValue: ${I}<VId> ${Pe}, oldValue: ${I}<VId> ${Pe}, getValueChange: ${b} ${Pe}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[o,s,r,I,u,p,C,h,m,e(y+$,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+g+")"+Ke,il(11)),e(Re+y+$,`(${d}, valueId: Id, invalidValues: any[])`+Ke,il(12))]},(l,t)=>e(Be+$,`(${l}: ${t})`+Ke,pe+" listening to the completion of a "+Fe)],Bl=(e,l=a,t=a)=>`store.${e}(${l})`+(t?" as "+t:a),Fl=(e,l=a)=>`fluent(() => ${Bl(e,l)})`,Ul=(e,l=a,t=a)=>`store.${e}(${l?l+", ":a}proxy(listener)${t?", "+t:a})`,_l=(e,l,n)=>{const[d,s,c,V,R,k,S,O]=Ml(),[E,N,D]=zl(e,l,R),[L,j,G]=Wl(c,E,N,D),J=oe(),z=(e=0)=>Ie(J,(([l,t,n,d,o],s)=>{const r=e?[s+`: ${o}(${l}): ${t} => ${n},`]:[s+o+`(${l}): ${t};`];return e||F(r,Ll(d)),W(r,a),r})),B=(e,l,t,n,d,o=a)=>Pl(J,e,[l,t,n,d,o]),U=(e,l,t,n,d,o=a,s=a,r=a)=>B(Tl[e]+l+(4==e?Ee:a)+t,o,n,(n==Q?Fl:Bl)(Tl[e]+(4==e?Ee:a)+t,s,e?void 0:n),d,r),_=(e,l,t,n=a,d=a,o=1,s=a)=>B(u+e+$,(n?n+", ":a)+ke+": "+l+(o?", mutator?: boolean":a),Ve,Ul(u+e+$,d,o?"mutator":a),t,s),Z=`./${Nl(n)}.d`,Q=Nl(n,1),q=Nl(Q),K=[],X=oe();let Y=[],ee=[];if(s(1,Z,Q,`create${Q} as create${Q}Decl`),le(e))s(null,t,C);else{s(0,t,"CellChange"),s(null,t,b);const[e,l,n,d,$,u,y,v,x,V,k,S,O,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ue]=L(q,Q),ie=oe();E(((e,l)=>{const t=`<'${e}'>`,a=[c(l+p,d+t,je+` the '${e}' `+p),c(l+p+Xe,$+t,je+` the '${e}' `+p+Ye),c(l+m,u+t,rl(e)),c(l+m+Xe,y+t,rl(e,1)),c(l+w+Ve,v+t,`A Cell Id for the '${e}' `+p),c(l+w+he,V+t,ul(`a Cell Id and value from a Row in the '${e}' `+p)),c(l+m+he,k+t,ul(`a Row Id from the '${e}' Table, and a Cell iterator`)),c(l+p+w+he,S+t,ul(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];$e(ie,e,a),s(1,Z,...a)})),s(1,Z,e,l,n,v,O,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ue),Y=[e,l,n,v,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ie],H([[e],[o],[Q,"tables: "+l,"tables"],[Q]],(([e,l,t],n)=>U(n,a,C,e,sl(1,n),l,t))),U(0,a,h,n+ze,Il(p,We)),U(5,a,p,qe,$l(p,We),"tableCallback: "+O,"tableCallback as any"),E(((e,l,t)=>{const[n,d,s,r,I,$,c,u]=se(ie,e);H([[n],[o],[Q,"table: "+d,", table"],[Q]],(([n,d,o=a],s)=>U(s,l,p,n,hl(e,s),d,t+o))),U(0,l,p+T,b,Il(w,"the whole of "+pl(e)),a,t),U(5,l,p+w,qe,$l(p+w,"the whole of "+pl(e)),"tableCellCallback: "+u,t+", tableCellCallback as any"),U(0,l,m+ge,"number","Gets the number of Rows in the "+pl(e),a,t),U(0,l,g,b,Il(m,pl(e)),a,t),U(0,l,f,b,Il(m,pl(e),1),"cellId?: "+I+Je,t+", cellId, descending, offset, limit"),U(5,l,m,qe,$l(m,pl(e)),"rowCallback: "+c,t+", rowCallback as any"),H([[s],[o],[Q,", row: "+r,", row"],[Q],[Q,", partialRow: "+r,", partialRow"]],(([n,d=a,o=a],s)=>U(s,l,m,n,ml(e,s),Ge+d,t+", rowId"+o))),U(6,l,m,Ve+Pe,"Add a new Row to "+pl(e),"row: "+r+", reuseIds?: boolean",t+", row, reuseIds"),U(0,l,T,I+ze,Il(w,Cl(e)),Ge,t+", rowId"),U(5,l,w,qe,$l(w,Cl(e)),Ge+", cellCallback: "+$,t+", rowId, cellCallback as any"),N(e,((n,d,s,r,I)=>{const $="Map"+Nl(d,1);$e(X,d,$);const c=d+(A(s)?Pe:a);H([[c],[o],[Q,`, cell: ${d} | `+$,", cell as any"],[Q]],(([d,o=a,s=a],$)=>U($,l+I,w,d,gl(e,n,$),Ge+o,t+", rowId, "+r+s))),U(1,l+I,p+w,o,wl[1]+` the '${n}' Cell anywhere in `+pl(e),a,t+", "+r)}))})),U(0,a,C+Ae,Ae,sl(1,6)),U(2,a,C+Ae,Q,sl(1,7),"tablesJson: "+Ae,"tables"+Ae),_(i+C,D,sl(1,8,0,1)+" changes"),_(C,j,sl(1,8)+" changes"),_(h,G,bl(2,0,1)),_(i+p,J,bl(3,0,0,1),`tableId: ${n} | null`,"tableId"),_(p,z,bl(3,0),`tableId: ${n} | null`,"tableId"),_(p+T,B,bl(14,3,1),`tableId: ${n} | null`,"tableId"),_(i+p+w,F,bl(16,3,0,1),`tableId: ${n} | null, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, cellId"),_(m+ge,ee,bl(15,3),`tableId: ${n} | null`,"tableId"),_(g,le,bl(4,3,1),`tableId: ${n} | null`,"tableId"),_(f,te,bl(13,3,1),jl("tableId: TId",`cellId: ${v}<TId>`+Pe,"descending: boolean","offset: number","limit: number"+Pe),jl("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(i+m,ne,bl(5,3,0,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(m,de,bl(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(T,re,bl(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(i+w,Ie,bl(7,5,0,1),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(w,ce,bl(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(Re+w,ue,Le+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),s(1,Z,...ae(X)),W(K,".set"+C+He+"({",El(E(((e,l,t)=>[`[${t}]: {`,...N(e,((e,l,t,n)=>`[${n}]: {[${R(Dl(r),`'${r}'`)}]: ${R(Dl(l),`'${l}'`)}${A(t)?a:`, [${R(Dl(I),`'${I}'`)}]: `+(P(t)?R(Dl(t),`'${t}'`):t)}},`)),"},"]))),"})")}if(le(l))s(null,t,v);else{const[e,l,n,d,$,c,u,b,p,C,h]=j(q,Q);s(1,Z,e,l,n,$,c,u,b,p,C,h),ee=[e,l,n,c,u,b,p,C],H([[e],[o],[Q,"values: "+l,"values"],[Q],[Q,"partialValues: "+l,"partialValues"]],(([e,l,t],n)=>U(n,a,v,e,sl(2,n),l,t))),U(0,a,x,n+ze,Il(y,We)),U(5,a,y,"void",$l(y,We),"valueCallback: "+$,"valueCallback as any"),D(((e,l,t,n,d)=>{const s="Map"+Nl(l,1);$e(X,l,s),H([[l],[o],[Q,`value: ${l} | `+s,", value as any"],[Q]],(([l,t,o=a],s)=>U(s,d,y,l,fl(e,s),t,n+o)))})),U(0,a,v+Ae,Ae,sl(2,6)),U(2,a,v+Ae,Q,sl(2,7),"valuesJson: "+Ae,"values"+Ae),_(i+v,c,sl(2,8,0,1)+" changes"),_(v,u,sl(2,8)+" changes"),_(x,b,bl(10,0,1)),_(i+y,p,bl(11,0,0,1),`valueId: ${n} | null`,"valueId"),_(y,C,bl(11,0),`valueId: ${n} | null`,"valueId"),_(Re+y,h,Le+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),s(1,Z,...ae(X)),s(0,t,"ValueChange"),W(K,".set"+v+He+"({",D(((e,l,t,n)=>[`[${n}]: {[${R(Dl(r),`'${r}'`)}]: ${R(Dl(l),`'${l}'`)}${A(t)?a:`, [${R(Dl(I),`'${I}'`)}]: `+(P(t)?R(Dl(t),`'${t}'`):t)}},`])),"})")}U(0,a,"Content",`[${C}, ${v}]`,sl(0,0)),U(2,a,"Content",Q,sl(0,2),`[tables, values]: [${C}, ${v}]`,"[tables, values]"),U(7,a,"applyChanges",Q,`Applies a set of ${me} to the Store`,"changes: "+me,"changes"),re(X,((e,l)=>c(l,`(cell: ${e}${Pe}) => `+e,`Takes a ${e} Cell value and returns another`))),s(null,t,"DoRollback",Ve,"IdOrNull",Ae,"Store",me),U(0,a,Ae,Ae,sl(0,6)),U(2,a,Ae,Q,sl(0,7),"tablesAndValuesJson: "+Ae,"tablesAndValuesJson"),U(7,a,Fe,"Return",Ue,ve,"actions, doRollback","<Return>"),U(7,a,"start"+Be,Q,_e),U(7,a,"finish"+Be,Q,Ze,ye,"doRollback");const te=G(q,Q);return _("Start"+Be,te,Le+" just before the start of the "+Fe,a,a,0),_("WillFinish"+Be,te,Le+" just before "+Qe,a,a,0),_("DidFinish"+Be,te,Le+" just after "+Qe,a,a,0),U(7,a,"call"+$,Q,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,a,$,Q,"Remove a listener that was previously added to "+We,"listenerId: Id","listenerId"),B("getStore",a,"Store","store",wl[0]+" the underlying Store object"),s(1,t,"createStore"),s(1,Z,Q,`create${Q} as create${Q}Decl`,te),R("store",["createStore()",...K]),V("fluent","actions: () => Store",["actions();",`return ${q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),R(q,["{",...z(1),"}"]),[d(...k(0),...S(),xe+" interface "+Q+" {",...z(0),"}",a,Ll(`Creates a ${Q} object`),xe+" function create"+Q+"(): "+Q+";"),d(...k(1),xe+" const create"+Q+": typeof create"+Q+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),Y,ee]},Zl=e=>c+e,Ql=e=>jl(Zl(e),Zl(e)+we),ql="debugIds?: boolean",Kl="debugIds={debugIds}",Xl="then"+Te,Yl="Parameter",et=": (parameter: "+Yl+", store: Store) => ",lt="const contextValue = useContext(Context);",tt=", based on a parameter",at=": ",nt="<"+Yl+",>",dt=Yl+"ized"+he+"<"+Yl+">",ot="rowId",st="rowId={rowId}",rt=", separator, debugIds",It="separator?: ReactElement | string",$t="then?: (store: Store",ct=jl($t+")"+Ke,Xl),ut="then, then"+we,it=ot+at+Ve,bt="View",pt=(e,...l)=>jl(...l,ke+": "+e,ke+Te,"mutator?: boolean"),Ct=(...e)=>jl(...e,ke,ke+we,"mutator"),ht=(e,l,n,d,r)=>{const[I,c,u,V,R,k,S,P]=Ml(),[O,E,N]=zl(e,l,R),D=`./${Nl(n)}.d`,L=`./${Nl(n)}-ui-react.d`,j="tinybase/ui-react",G=Nl(n,1),H=Nl(G),J=G+"Or"+G+Ve,z=H+"Or"+G+Ve,B=H+`={${H}}`,U=oe(),_=(e,l,t,n,d,o=a)=>(c(1,L,e+" as "+e+"Decl"),Pl(U,e,[l,t,n,d,o])),Z=(e,l,t,n,d,o=a)=>_("use"+e,l,t,n,d,o),Q=(e,l,t,n,d=a,o=a,s=a,r=a,I=a)=>(c(1,j,`use${l} as use${l}Core`),Z(e,jl(d,ee,r),t,ae+`(${z}, use${l}Core, [`+(o||a)+(I?"], ["+I:a)+"]);",n,s)),q=(e,l,t,a)=>_(e,l,1,t,a),K=(e=0)=>Ie(U,(([l,t,n,d,o],s)=>{const r=e?[xe+` const ${s}: typeof ${s}Decl = ${o}(${l}): ${1==t?"any":t} =>`,n]:[xe+` function ${s}${o}(${l}): ${1==t?"ComponentReturnType":t};`];return e||F(r,Ll(d)),W(r,a),r}));c(null,t,Ve,"Store",he,Yl+"ized"+he),c(0,j,"ComponentReturnType"),c(1,j,"useCellIds"),c(null,j,"ExtraProps"),c(0,D,G);const X=u(J,G+" | "+Ve,`Used when you need to refer to a ${G} in a React hook or component`),Y=u(De+Ne,Hl(H+Se+G,H+`ById?: {[${H}Id: Id]: ${G}}`),`Used with the ${De} component, so that a `+G+" can be passed into the context of an application");c(0,"react","ReactElement","ComponentType"),c(1,"react","React"),c(1,L,X,Y);const ee=z+Se+X;R("{createContext, useContext, useMemo}","React"),R("Context",`createContext<[${G}?, {[${H}Id: Id]: ${G}}?]>([])`),Z("Create"+G,`create: () => ${G}, create`+Te,G,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${G} within a React application with convenient memoization`);const te=Z(G,"id?: Id",G+Pe,["{",lt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${G} from within a ${De} component context`),ae=V("useHook",z+`: ${X} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${H} = ${te}(${z} as Id);`,`return hook(...preParams, ((${z} == null || typeof ${z} == 'string')`,`? ${H} : ${z})?.getStore(), ...postParams)`]),ne=V("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),de=V("wrap",jl("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),re=V("useCustomOrDefaultCellIds",jl("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${z}?: ${X} | undefined`),[`const defaultCellIds = ${ae}(${z}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),$e=R("NullComponent","() => null");if(!le(e)){const[e,l,n,r,I,y,v,x,R,k,S,P,N,j,J,z,W,F,U,_]=d;c(null,D,e,l,n,I,y,v,x,R,k,S,P,N,j,J,z,W,U,F),c(0,D,r),c(1,D,G),c(null,t,b,"IdOrNull");const Z=V("tableView",`{${H}, rowComponent, getRowComponentProps, customCellIds`+rt+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${de}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",st,"customCellIds={customCellIds}",B,Kl,"/>","))",rt,", tableId,",");"]),K=V("getDefaultTableComponent","tableId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${l}TableView : `)))+$e),X=V("getDefaultCellComponent","tableId: Id, cellId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${M(E(e,((e,t,a,n,d)=>`cellId == ${n} ? `+l+d+"CellView : ")))+$e} : `)))+$e);Q(i+C,i+C,o,sl(1,0,0,1)+Ce),Q(C,C,e,sl(1,0)+Ce);const Y=Q(h,h,n+ze,Il(p,We)+Ce);Q(Me+C+he,Me+C+he,dt,sl(1,9)+tt,jl(Zl(C)+et+l,Zl(C)+Te),Ql(C),nt,jl($t,`tables: ${l})`+Ke,Xl),ut),Q(fe+C+he,fe+C+he,he,sl(1,12),a,a,a,ct,ut);const ee=u(w+Ne,Hl("tableId?: TId","rowId: Id","cellId?: CId",H+Se+G,ql),cl(be+w),`<TId extends ${n}, CId extends ${r}<TId>>`),le=u(m+Ne,Hl("tableId?: TId","rowId: Id",H+Se+G,"cellComponents?: {readonly [CId in "+r+`<TId>]?: ComponentType<${ee}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${r}<TId>) => ExtraProps`,`customCellIds?: ${r}<TId>[]`,It,ql),cl(be+m),`<TId extends ${n}>`),te=u(p+Ne,Hl("tableId?: TId",H+Se+G,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",It,ql),cl(be+p),`<TId extends ${n}>`),ae=u("Sorted"+p+Ne,Hl("tableId?: TId","cellId?: "+r+"<TId>","descending?: boolean","offset?: number","limit?: number",H+Se+G,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",It,ql),cl(be+"sorted "+p),`<TId extends ${n}>`),oe=u(C+Ne,Hl(H+Se+G,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${te}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,It,ql),cl(ol(1,1)));c(1,L,oe,te,ae,le,ee),q(C+bt,"{"+H+", tableComponents, getTableComponentProps"+rt+"}: "+oe,[de+`(${Y}(${H}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+K+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",B,Kl,"/>;","}), separator)"],sl(1,13)+Ce),O(((e,l,t)=>{const[n,d,r,I,$]=se(_,e);c(null,D,n,d,r,I,$),Q(i+l+p,i+p,o,hl(e,0,1)+Ce,a,t),Q(l+p,p,n,hl(e)+Ce,a,t),Q(l+p+T,p+T,b,Il(w,"the whole of "+pl(e))+Ce,a,t),Q(l+m+ge,m+ge,s,"Gets the number of Rows in "+pl(e)+Ce,a,t);const u=Q(l+g,g,b,Il(m,pl(e))+Ce,a,t),C=Q(l+f,f,b,Il(m,pl(e),1)+Ce,"cellId?: "+$+", descending?: boolean, offset?: number, limit?: number",t+", cellId, descending, offset, limit");Q(i+l+m,i+m,o,ml(e,0,1)+Ce,it,jl(t,ot)),Q(l+m,m,r,ml(e)+Ce,it,jl(t,ot)),Q(l+T,T,$+ze,Il(w,Cl(e))+Ce,it,jl(t,ot)),Q(Me+l+p+he,Me+p+he,dt,hl(e,9)+tt,jl(Zl(p)+et+d,Zl(p)+Te),jl(t,Ql(p)),nt,jl($t,`table: ${d})`+Ke,Xl),ut),Q(fe+l+p+he,fe+p+he,he,hl(e,12),a,t,a,ct,ut),Q(Me+l+m+he,Me+m+he,dt,ml(e,9)+tt,jl(it,Zl(m)+et+I,Zl(m)+Te),jl(t,ot,Ql(m)),nt,jl($t,`row: ${I})`+Ke,Xl),ut),Q("Add"+l+m+he,"Add"+m+he,dt,ml(e,10)+tt,jl(Zl(m)+et+I,Zl(m)+Te),jl(t,Ql(m)),nt,"then?: ("+jl(it+Pe,"store: Store","row: "+I+")"+Ke,"then"+Te)+", reuseRowIds?: boolean",ut+", reuseRowIds"),Q(Me+l+Ee+m+he,Me+Ee+m+he,dt,ml(e,11)+tt,jl(it,Zl(Ee+m)+et+I,Zl(Ee+m)+Te),jl(t,ot,Ql(Ee+m)),nt,jl($t,`partialRow: ${I})`+Ke,Xl),ut),Q(fe+l+m+he,fe+m+he,he,ml(e,12),it,jl(t,ot),a,ct,ut);const h=q(l+m+bt,"{rowId, "+H+", cellComponents, getCellComponentProps, customCellIds"+rt+`}: ${le}<'${e}'>`,[de+`(${re}(customCellIds, `+t+`, rowId, ${H}).map((cellId: ${$}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+X+`(${t}, cellId)) as React.ComponentType<CellProps<typeof `+t+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${t}}`,st,"cellId={cellId}",B,Kl,"/>;","})"+rt+", rowId)"],ml(e,13)+Ce);q(l+"Sorted"+p+bt,"{cellId, descending, offset, limit, ...props}: "+ae+`<'${e}'>`,Z+"(props, "+C+`(cellId, descending, offset, limit, props.${H}), ${t}, ${h});`,hl(e,13)+", sorted"+Ce),q(l+p+bt,`props: ${te}<'${e}'>`,Z+"(props, "+u+`(props.${H}), ${t}, ${h});`,hl(e,13)+Ce),E(e,((n,d,s,r,I)=>{const $="Map"+Nl(d,1);c(0,D,$),c(1,D,$),Q(i+l+I+p+w,i+p+w,o,`Gets ${dl(1)}the '${n}' Cell anywhere in `+pl(e)+Ce,a,jl(t,r)),Q(i+l+I+w,i+w,o,gl(e,n,0,1)+Ce,it,jl(t,ot,r));const u=Q(l+I+w,w,d+(A(s)?Pe:a),gl(e,n)+Ce,it,jl(t,ot,r));Q(Me+l+I+w+he,Me+w+he,dt,gl(e,n,9)+tt,jl(it,Zl(w)+et+d+" | "+$,Zl(w)+Te),jl(t,ot,r,Ql(w)),nt,jl($t,`cell: ${d} | ${$})`+Ke,Xl),ut),Q(fe+l+I+w+he,fe+w+he,he,gl(e,n,12),jl(it,"forceDel?: boolean"),jl(t,ot,r,"forceDel"),a,ct,ut),q(l+I+w+bt,`{rowId, ${H}, debugIds}: `+ee+`<'${e}', '${n}'>`,[de+`('' + ${u}(rowId, `+H+`) ?? '', undefined, debugIds, ${r})`],gl(e,n,13)+Ce)}))}));const Ie=M(O((e=>se(_,e)?.[4]??a))," | ");Q(i+C+$,i+C+$,qe,sl(1,8,0,1)+" changes",pt(I),Ct()),Q(C+$,C+$,qe,sl(1,8)+" changes",pt(y),Ct()),Q(h+$,h+$,qe,bl(2,0,1),pt(v),Ct()),Q(i+p+$,i+p+$,qe,bl(3,0,0,1),pt(x,`tableId: ${n} | null`),Ct("tableId")),Q(p+$,p+$,qe,bl(3,0),pt(R,`tableId: ${n} | null`),Ct("tableId")),Q(p+T+$,p+T+$,qe,bl(14,3,1),pt(k,`tableId: ${n} | null`),Ct("tableId")),Q(i+p+w+$,i+p+w+$,qe,bl(16,3,0,1),pt(S,`tableId: ${n} | null`,`cellId: ${Ie} | null`),Ct("tableId","cellId")),Q(m+ge+$,m+ge+$,qe,bl(15,3),pt(P,`tableId: ${n} | null`),Ct("tableId")),Q(g+$,g+$,qe,bl(4,3,1),pt(N,`tableId: ${n} | null`),Ct("tableId")),Q(f+$,f+$,qe,bl(13,3,1),pt(j,`tableId: ${n} | null`,"cellId: "+Ie+Pe,"descending: boolean","offset: number","limit: number"+Pe),Ct("tableId","cellId","descending","offset","limit")),Q(i+m+$,i+m+$,qe,bl(5,3,0,1),pt(J,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(m+$,m+$,qe,bl(5,3),pt(z,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(T+$,T+$,qe,bl(6,5,1),pt(W,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(i+w+$,i+w+$,qe,bl(7,5,0,1),pt(F,`tableId: ${n} | null`,ot+": IdOrNull",`cellId: ${Ie} | null`),Ct("tableId",ot,"cellId")),Q(w+$,w+$,qe,bl(7,5),pt(U,`tableId: ${n} | null`,ot+": IdOrNull",`cellId: ${Ie} | null`),Ct("tableId",ot,"cellId"))}if(!le(l)){const[e,l,t,n,d,s,I,b]=r;c(null,D,...r),c(1,D,G);const p=V("getDefaultValueComponent","valueId: Id",M(N(((e,l,t,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+$e);Q(i+v,i+v,o,sl(2,0,0,1)+Ce),Q(v,v,e,sl(2,0)+Ce);const C=Q(x,x,t+ze,Il(y,We)+Ce);Q(Me+v+he,Me+v+he,dt,sl(2,9)+tt,jl(Zl(v)+et+l,Zl(v)+Te),Ql(v),nt,jl($t,`values: ${l})`+Ke,Xl),ut),Q(Me+Ee+v+he,Me+Ee+v+he,dt,sl(2,11)+tt,jl(Zl(Ee+v)+et+l,Zl(Ee+v)+Te),Ql(Ee+v),nt,jl($t,`partialValues: ${l})`+Ke,Xl),ut),Q(fe+v+he,fe+v+he,he,sl(2,12),a,a,a,ct,ut);const h=u(y+Ne,Hl("valueId?: VId",H+Se+G,ql),cl("a Value"),`<VId extends ${t}>`),m=u(v+Ne,Hl(H+Se+G,"valueComponents?: {readonly [VId in "+t+`]?: ComponentType<${h}<VId>>;}`,`getValueComponentProps?: (valueId: ${t}) => ExtraProps`,It,ql),cl(ol(2,1)));c(1,L,m,h),q(v+bt,"{"+H+", valueComponents, getValueComponentProps"+rt+"}: "+m,[de+`(${C}(${H}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+p+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",B,Kl,"/>;","}), separator)"],sl(2,13)+Ce),N(((e,l,t,n,d)=>{const s="Map"+Nl(l,1);c(0,D,s),c(1,D,s),Q(i+d+y,i+y,o,fl(e,0,1)+Ce,a,n);const r=Q(d+y,y,l,fl(e)+Ce,a,n);Q(Me+d+y+he,Me+y+he,dt,fl(e,9)+tt,jl(Zl(y)+et+l+" | "+s,Zl(y)+Te),jl(n,Ql(y)),nt,jl($t,`value: ${l} | ${s})`+Ke,Xl),ut),Q(fe+d+y+he,fe+y+he,he,fl(e,12),a,n,a,ct,ut),q(d+y+bt,`{${H}, debugIds}: ${h}<'${e}'>`,[de+`('' + ${r}(`+H+`) ?? '', undefined, debugIds, ${n})`],fl(e,13)+Ce)})),Q(i+v+$,i+v+$,qe,sl(2,8,0,1)+" changes",pt(n),Ct()),Q(v+$,v+$,qe,sl(2,8)+" changes",pt(d),Ct()),Q(x+$,x+$,qe,bl(10,0,1),pt(s),Ct()),Q(i+y+$,i+y+$,qe,bl(11,0,0,1),pt(I,`valueId: ${t} | null`),Ct("valueId")),Q(y+$,y+$,qe,bl(11,0),pt(b,`valueId: ${t} | null`),Ct("valueId"))}return q(De,`{${H}, ${H}ById, children}: `+Y+" & {readonly children: React.ReactNode}",["{",lt,"return (","<Context."+De,"value={useMemo(",`() => [${H} ?? contextValue[0], {...contextValue[1], ...${H}ById}],`,`[${H}, ${H}ById, contextValue],`,")}>","{children}",`</Context.${De}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[I(...k(0),...S(),...K(0)),I(...k(1),...P(),...K(1))]},mt=(e,l,t)=>{if(le(e)&&le(l))return[a,a,a,a];const[n,d,o,s]=_l(e,l,t);return[n,d,...ht(e,l,t,o,s)]},gt=JSON.parse,ft="prettier/",wt=ft+"plugins/",Tt={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},yt=Jl((e=>{const l=()=>{const l=gt(e.getTablesSchemaJson());return!le(l)||j(e.getTableIds(),(t=>{const a=e.getRowIds(t),n=oe();if(j(a,(l=>j(e.getCellIds(t,l),(a=>{const d=e.getCell(t,l,a),o=ce(n,a,(()=>[L(d),oe(),[0],0])),[s,r,[I]]=o,$=ce(r,d,(()=>0))+1;return $>I&&(o[2]=[$,d]),$e(r,d,$),o[3]++,s==L(d)})))))return l[t]={},ne(n,(([e,,[,n],d],o)=>{l[t][o]={[r]:e,...d==N(a)?{[I]:n}:{}}})),1}))?l:{}},t=()=>{const l=gt(e.getValuesSchemaJson());return le(l)&&e.forEachValue(((e,t)=>{l[e]={[r]:L(t)}})),l},a=e=>mt(l(),t(),e),n=async e=>{const l=["d.ts","ts","d.ts","tsx"],t=[];let n;try{n=(await import(ft+"standalone")).format,W(t,await import(wt+"estree"),await import(wt+"typescript"))}catch(e){n=async e=>e}return await D(J(a(e),(async(e,a)=>Ol(await n(e,{...Tt,plugins:t,filepath:"_."+l[a]})))))};return X({getStoreStats:l=>{let t=0,a=0,n=0;const d={};return e.forEachTable(((e,o)=>{t++;let s=0,r=0;const I={};o(((e,t)=>{s++;let a=0;t((()=>a++)),r+=a,l&&(I[e]={rowCells:a})})),a+=s,n+=r,l&&(d[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:t,totalRows:a,totalCells:n,totalValues:N(e.getValueIds()),jsonLength:N(e.getJson()),...l?{detail:{tables:d}}:{}}},getStoreTablesSchema:l,getStoreValuesSchema:t,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));e.createTools=yt},"object"==typeof exports&&"undefined"!=typeof module?l(exports):"function"==typeof define&&define.amd?define(["exports"],l):l((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseTools={});
1
+ var e,l;e=this,l=function(e){"use strict";const l=e=>typeof e,t="tinybase",a="",n=",",d=l(a),o=l(!0),s=l(0),r="type",I="default",$="Listener",c="get",u="add",i="Has",b="Ids",p="Table",C=p+"s",h=p+b,m="Row",g=m+b,f="Sorted"+m+b,w="Cell",T=w+b,y="Value",v=y+"s",x=y+b,V=Promise,R=isFinite,A=e=>null==e,k=(e,l,t)=>A(e)?t?.():l(e),S=e=>e==d||e==o,P=e=>l(e)==d,O=e=>Array.isArray(e),E=(e,l,t)=>e.slice(l,t),N=e=>e.length,D=async e=>V.all(e),L=e=>{const t=l(e);return S(t)||t==s&&R(e)?t:void 0},j=(e,l)=>e.every(l),G=(e,l)=>e.sort(l),H=(e,l)=>e.forEach(l),M=(e,l=a)=>e.join(l),J=(e,l)=>e.map(l),z=(e,l)=>e.filter(l),W=(e,...l)=>e.push(...l),B=e=>e.pop(),F=(e,...l)=>e.unshift(...l),U=e=>e.shift(),_=Object,Z=e=>_.getPrototypeOf(e),Q=_.entries,q=e=>!A(e)&&k(Z(e),(e=>e==_.prototype||A(Z(e))),(()=>!0)),K=_.keys,X=_.freeze,Y=(e,l)=>J(Q(e),(([e,t])=>l(t,e))),ee=e=>N(K(e)),le=e=>q(e)&&0==ee(e),te=(e,l)=>e?.has(l)??!1,ae=e=>[...e?.values()??[]],ne=(e,l)=>e?.forEach(l),de=(e,l)=>e?.delete(l),oe=e=>new Map(e),se=(e,l)=>e?.get(l),re=(e,l)=>ne(e,((e,t)=>l(t,e))),Ie=(e,l)=>J([...e?.entries()??[]],(([e,t])=>l(t,e))),$e=(e,l,t)=>A(t)?(de(e,l),e):e?.set(l,t),ce=(e,l,t,a)=>(te(e,l)||$e(e,l,t()),se(e,l)),ue=e=>e.toUpperCase(),ie=e=>e.toLowerCase(),be="a ",pe="A function for",Ce=", and registers a listener so that any changes to that result will cause a re-render",he="Callback",me="Changes",ge="Count",fe="Del",we="Deps",Te=we+"?: React.DependencyList",ye="doRollback?: DoRollback",ve="actions: () => Return, "+ye,xe="export",Ve="Id",Re="Invalid",Ae="Json",ke=ie($),Se="?: ",Pe=" | undefined",Oe="NonNullable",Ee="Partial",Ne="Props",De="Provider",Le=`Registers a ${ke} that will be called`,je="Represents",Ge="rowId: "+Ve,He="Schema",Me="Set",Je=", descending?: boolean, offset?: number, limit?: number",ze="[]",We="the Store",Be="Transaction",Fe=ie(Be),Ue="Execute a "+Fe+" to make multiple mutations",_e="Explicitly starts a "+Fe,Ze="Explicitly finishes a "+Fe,Qe="the end of the "+Fe,qe="void",Ke=" => "+qe,Xe="WhenSet",Ye=" when setting it",el=be+"string serialization of",ll=" ",tl="Gets a callback that can ",al="the ",nl=" the schema for",dl=(e=0)=>e?"the existence of ":"",ol=(e=0,l=0,t=0)=>dl(t)+`the ${vl[e]}content of`+(l?ll+We:a),sl=(e=0,l,t=0,n=0)=>wl[l]+ll+dl(n)+ol(e,1)+(t?" when setting it":a),rl=(e,l=0)=>je+` a Row when ${l?"s":"g"}etting ${ol()} the '${e}' `+p,Il=(e,l,t=0)=>`Gets ${t?"sorted, paginated":"the"} Ids of the ${e}s in `+l,$l=(e,l)=>`Calls a function for each ${e} in `+l,cl=e=>"The props passed to a component that renders "+e,ul=e=>"A function that takes "+e,il=(e,l=0,t=0)=>pe+" listening to changes to "+dl(t)+yl[e]+" in "+yl[l],bl=(e,l,t=0,n=0)=>Le+" whenever "+dl(n)+yl[e]+" in "+yl[l]+" change"+(t?a:"s"),pl=e=>`the '${e}' `+p,Cl=e=>"the specified Row in "+pl(e),hl=(e,l=0,t=0)=>wl[l]+ll+ol(0,0,t)+ll+pl(e),ml=(e,l=0,t=0)=>wl[l]+` ${ol(0,0,t)} `+Cl(e),gl=(e,l,t=0,a=0)=>wl[t]+ll+dl(a)+`the '${l}' Cell for `+Cl(e),fl=(e,l=0,t=0)=>wl[l]+ll+dl(t)+`the '${e}' Value`,wl=["Gets","Checks existence of","Sets","Deletes","Sets part of",je,"Gets "+el,"Sets "+el,Le+" whenever",tl+"set",tl+"add",tl+"set part of",tl+"delete","Renders","Gets "+el+nl,"Sets"+nl,"Deletes"+nl],Tl=[c,"has","set","del","set","forEach",u,a],yl=[We,C,al+p+ll+b,be+p,al+m+ll+b,be+m,al+w+ll+b,be+w,"invalid Cell changes",v,al+y+ll+b,be+y,"invalid Value changes",al+"sorted "+m+ll+b,al+w+ll+b+" anywhere",al+"number of Rows",be+w+" anywhere"],vl=[a,"tabular ","keyed value "],xl=e=>new Set(O(e)||A(e)?e:[e]),Vl=(e,l)=>e?.add(l),Rl=/[^A-Za-z]+/,Al=/[^A-Za-z0-9]+/,kl=/^( *)\/\*\* *(.*?) *\*\/$/gm,Sl=e=>e.includes(n),Pl=(e,l,t,a=1)=>{const n=`${l}${1==a?"":a}`;return te(e,n)?Pl(e,l,t,a+1):($e(e,n,t),n)},Ol=e=>e.replace(kl,((e,l,t)=>{const a=77-N(l);return`${l}/**\n${t.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),l+" * $1\n")}${l} */`})),El=e=>e.flat(1e3),Nl=(e,l=0)=>M(J(e.split(Al),((e,t)=>(t>0||l?ue:ie)(E(e,0,1))+E(e,1)))),Dl=e=>ue(M((e&&!Rl.test(e[0])?e:" "+e).split(Al),"_")),Ll=e=>`/** ${e}. */`,jl=(...e)=>M(z(e,(e=>e)),", "),Gl=(...e)=>"{"+M(e,"; ")+"}",Hl=(...e)=>Gl(...J(e,(e=>"readonly "+e))),Ml=()=>{const e=[oe(),oe(),oe(),oe()],l=oe(),t=oe(),n=e=>{const l=e.indexOf(" as ");return-1!=l?E(e,l+4):e};return[(...e)=>M(El(e),"\n"),(l,t,...a)=>H(a,(a=>H([0,1],(n=>(l??n)==n?Vl(ce(e[n],t,xl),a):0)))),(e,t,n,d=a,o=1)=>Pl(l,e,[t,n,d,o]),(e,l,a)=>Pl(t,e,O(a)?[`(${l}) => {`,a,"}"]:[`(${l}) => ${a}`]),(e,l)=>se(t,e)===l?e:Pl(t,e,l),(l=0)=>J([...G(Ie(e[l],((e,l)=>`import {${M(G(ae(e),((e,l)=>n(e)>n(l)?1:-1)),", ")}} from '${l}';`)),((e,l)=>Sl(e)!=Sl(l)?Sl(e)?-1:1:e>l?1:-1)),a],(e=>e.replace("{React}","React"))),()=>Ie(l,(([e,l,t,n],d)=>[Ll(l),`${n?xe+" ":a}type ${d}${t} = ${e};`,a])),()=>Ie(t,((e,l)=>(e=O(e)?e:[e],W(e,B(e)+";"),[`const ${l} = ${U(e)}`,e,a])))]},Jl=(e,l)=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},zl=(e,l,t)=>[l=>Y(e,((e,a)=>l(a,Nl(a,1),t(Dl(a),`'${a}'`)))),(l,a)=>Y(e[l],((e,l)=>a(l,e[r],e[I],t(Dl(l),`'${l}'`),Nl(l,1)))),e=>Y(l,((l,a)=>e(a,l[r],l[I],t(Dl(a),`'${a}'`),Nl(a,1))))],Wl=(e,l,t,n)=>[(n,d)=>{const o=n+": "+d,s=e(C,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...t(e,((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`)))+"}"))),sl(1,5)),r=e(C+Xe,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...t(e,((e,l)=>`'${e}'?: ${l}`)))+"}"))),sl(1,5,1)),I=e(p+Ve,"keyof "+s,"A "+p+" Id in "+We),c=`<TId extends ${I}>`,u=e(p,Oe+`<${s}[TId]>`,"A "+p+" in "+We,c),b=e(p+Xe,Oe+`<${r}[TId]>`,"A "+p+" in "+We+Ye,c),y=e(m,u+"<TId>[Id]","A "+m+" in a "+p,c),v=e(m+Xe,b+"<TId>[Id]","A "+m+" in a "+p+Ye,c),x=e(w+Ve,`Extract<keyof ${y}<TId>, Id>`,"A "+w+" Id in a "+m,c),V=e(w,Oe+`<${s}[TId]>[Id][CId]`,"A "+w+" in a "+m,`<TId extends ${I}, CId extends ${x}<TId>>`),R=e("CellIdCellArray",`CId extends ${x}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,w+" Ids and types in a "+m,`<TId extends ${I}, CId = ${x}<TId>>`,0),k=e(w+he,`(...[cellId, cell]: ${R}<TId>)`+Ke,ul(be+w+" Id, and "+w),c),S=e(m+he,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Ke+") "+Ke,ul(be+m+" Id, and a "+w+" iterator"),c),P=e(p+w+he,`(cellId: ${x}<TId>, count: number) `+Ke,ul(be+w+" Id, and count of how many times it appears"),c),O=e("TableIdForEachRowArray",`TId extends ${I} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${Ke}] : never`,p+" Ids and callback types",`<TId = ${I}>`,0),E=e(p+he,`(...[tableId, forEachRow]: ${O})`+Ke,ul(be+p+" Id, and a "+m+" iterator"),a),N=e("TableIdRowIdCellIdArray",`TId extends ${I} ? [tableId: TId, rowId: Id, cellId: ${x}<TId>] : never`,"Ids for GetCellChange",`<TId = ${I}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${N}) => CellChange`,pe+" returning information about any Cell's changes during a "+Fe),L=e(i+C+$,`(${o}, hasTables: boolean)`+Ke,il(1,0,1)),j=e(C+$,`(${o}, getCellChange: ${D}${Pe})`+Ke,il(1)),G=e(h+$,`(${o})`+Ke,il(2)),H=e(i+p+$,`(${o}, tableId: ${I}, hasTable: boolean)`+Ke,il(3,0,1)),M=e(p+$,`(${o}, tableId: ${I}, getCellChange: ${D}${Pe})`+Ke,il(3)),J=e(p+T+$,`(${o}, tableId: ${I})`+Ke,il(14,3)),z=e("HasTableCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, cellId: CId, hasTableCell: boolean] : never`,"Cell args for HasTableCellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),W=e("HasTableCellListenerArgsArrayOuter",`TId extends ${I} ? `+z+"<TId> : never","Table args for HasTableCellListener",`<TId = ${I}>`,0),B=e(i+p+w+$,`(...[${n}, tableId, cellId, hasTableCell]: `+W+")"+Ke,il(16,3,1)),F=e(m+"Count"+$,`(${o}, tableId: ${I})`+Ke,il(15,3)),U=e(g+$,`(${o}, tableId: ${I})`+Ke,il(4,3)),_=e(f+$,"("+jl(o,"tableId: "+I,"cellId: Id"+Pe,"descending: boolean","offset: number","limit: number"+Pe,"sortedRowIds: Ids")+")"+Ke,il(13,3)),Z=e(i+m+$,"("+jl(""+o,"tableId: "+I,Ge,"hasRow: boolean")+")"+Ke,il(5,3,1)),Q=e(m+$,"("+jl(""+o,"tableId: "+I,Ge,`getCellChange: ${D}${Pe}`)+")"+Ke,il(5,3)),q=e(T+$,"("+jl(""+o,"tableId: "+I,Ge)+")"+Ke,il(6,5)),K=e("HasCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, hasCell: boolean] : never`,"Cell args for HasCellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),X=e("HasCellListenerArgsArrayOuter",`TId extends ${I} ? `+K+"<TId> : never","Table args for HasCellListener",`<TId = ${I}>`,0),Y=e(i+w+$,`(...[${n}, tableId, rowId, cellId, hasCell]: `+X+")"+Ke,il(7,5,1)),ee=e("CellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, newCell: ${V}<TId, CId> ${Pe}, oldCell: ${V}<TId, CId> ${Pe}, getCellChange: ${D} ${Pe}] : never`,"Cell args for CellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),le=e("CellListenerArgsArrayOuter",`TId extends ${I} ? `+ee+"<TId> : never","Table args for CellListener",`<TId = ${I}>`,0);return[s,r,I,u,b,y,v,x,V,k,S,P,E,L,j,G,H,M,J,B,F,U,_,Z,Q,q,Y,e(w+$,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${le})`+Ke,il(7,5)),e(Re+w+$,`(${o}, tableId: Id, ${Ge}, cellId: Id, invalidCells: any[])`+Ke,il(8))]},(l,t)=>{const d=l+": "+t,o=e(v,Gl(...n(((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`))),sl(2,5)),s=e(v+Xe,Gl(...n(((e,l)=>`'${e}'?: ${l}`))),sl(2,5,1)),r=e(y+Ve,"keyof "+o,"A "+y+" Id in "+We),I=e(y,Oe+`<${o}[VId]>`,"A "+y+" Id in "+We,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${I}<VId>] : never`,y+" Ids and types in "+We,`<VId = ${r}>`,0),u=e(y+he,`(...[valueId, value]: ${c})`+Ke,ul(be+y+" Id, and "+y)),b=e("GetValueChange",`(valueId: ${r}) => ValueChange`,pe+" returning information about any Value's changes during a "+Fe),p=e(i+v+$,`(${d}, hasValues: boolean)`+Ke,il(9,0,1)),C=e(v+$,`(${d}, getValueChange: ${b}${Pe})`+Ke,il(9)),h=e(x+$,`(${d})`+Ke,il(10)),m=e(i+y+$,`(${d}, valueId: ValueId, hasValue: boolean)`+Ke,il(11,0,1)),g=e("ValueListenerArgsArray",`VId extends ${r} ? [${d}, valueId: VId, newValue: ${I}<VId> ${Pe}, oldValue: ${I}<VId> ${Pe}, getValueChange: ${b} ${Pe}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[o,s,r,I,u,p,C,h,m,e(y+$,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+g+")"+Ke,il(11)),e(Re+y+$,`(${d}, valueId: Id, invalidValues: any[])`+Ke,il(12))]},(l,t)=>e(Be+$,`(${l}: ${t})`+Ke,pe+" listening to the completion of a "+Fe)],Bl=(e,l=a,t=a)=>`store.${e}(${l})`+(t?" as "+t:a),Fl=(e,l=a)=>`fluent(() => ${Bl(e,l)})`,Ul=(e,l=a,t=a)=>`store.${e}(${l?l+", ":a}proxy(listener)${t?", "+t:a})`,_l=(e,l,n)=>{const[d,s,c,V,R,k,S,O]=Ml(),[E,N,D]=zl(e,l,R),[L,j,G]=Wl(c,E,N,D),J=oe(),z=(e=0)=>Ie(J,(([l,t,n,d,o],s)=>{const r=e?[s+`: ${o}(${l}): ${t} => ${n},`]:[s+o+`(${l}): ${t};`];return e||F(r,Ll(d)),W(r,a),r})),B=(e,l,t,n,d,o=a)=>Pl(J,e,[l,t,n,d,o]),U=(e,l,t,n,d,o=a,s=a,r=a)=>B(Tl[e]+l+(4==e?Ee:a)+t,o,n,(n==Q?Fl:Bl)(Tl[e]+(4==e?Ee:a)+t,s,e?void 0:n),d,r),_=(e,l,t,n=a,d=a,o=1,s=a)=>B(u+e+$,(n?n+", ":a)+ke+": "+l+(o?", mutator?: boolean":a),Ve,Ul(u+e+$,d,o?"mutator":a),t,s),Z=`./${Nl(n)}.d`,Q=Nl(n,1),q=Nl(Q),K=[],X=oe();let Y=[],ee=[];if(s(1,Z,Q,`create${Q} as create${Q}Decl`),le(e))s(null,t,C);else{s(0,t,"CellChange"),s(null,t,b);const[e,l,n,d,$,u,y,v,x,V,k,S,O,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ue]=L(q,Q),ie=oe();E(((e,l)=>{const t=`<'${e}'>`,a=[c(l+p,d+t,je+` the '${e}' `+p),c(l+p+Xe,$+t,je+` the '${e}' `+p+Ye),c(l+m,u+t,rl(e)),c(l+m+Xe,y+t,rl(e,1)),c(l+w+Ve,v+t,`A Cell Id for the '${e}' `+p),c(l+w+he,V+t,ul(`a Cell Id and value from a Row in the '${e}' `+p)),c(l+m+he,k+t,ul(`a Row Id from the '${e}' Table, and a Cell iterator`)),c(l+p+w+he,S+t,ul(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];$e(ie,e,a),s(1,Z,...a)})),s(1,Z,e,l,n,v,O,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ue),Y=[e,l,n,v,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ie],H([[e],[o],[Q,"tables: "+l,"tables"],[Q]],(([e,l,t],n)=>U(n,a,C,e,sl(1,n),l,t))),U(0,a,h,n+ze,Il(p,We)),U(5,a,p,qe,$l(p,We),"tableCallback: "+O,"tableCallback as any"),E(((e,l,t)=>{const[n,d,s,r,I,$,c,u]=se(ie,e);H([[n],[o],[Q,"table: "+d,", table"],[Q]],(([n,d,o=a],s)=>U(s,l,p,n,hl(e,s),d,t+o))),U(0,l,p+T,b,Il(w,"the whole of "+pl(e)),a,t),U(5,l,p+w,qe,$l(p+w,"the whole of "+pl(e)),"tableCellCallback: "+u,t+", tableCellCallback as any"),U(0,l,m+ge,"number","Gets the number of Rows in the "+pl(e),a,t),U(0,l,g,b,Il(m,pl(e)),a,t),U(0,l,f,b,Il(m,pl(e),1),"cellId?: "+I+Je,t+", cellId, descending, offset, limit"),U(5,l,m,qe,$l(m,pl(e)),"rowCallback: "+c,t+", rowCallback as any"),H([[s],[o],[Q,", row: "+r,", row"],[Q],[Q,", partialRow: "+r,", partialRow"]],(([n,d=a,o=a],s)=>U(s,l,m,n,ml(e,s),Ge+d,t+", rowId"+o))),U(6,l,m,Ve+Pe,"Add a new Row to "+pl(e),"row: "+r+", reuseIds?: boolean",t+", row, reuseIds"),U(0,l,T,I+ze,Il(w,Cl(e)),Ge,t+", rowId"),U(5,l,w,qe,$l(w,Cl(e)),Ge+", cellCallback: "+$,t+", rowId, cellCallback as any"),N(e,((n,d,s,r,I)=>{const $="Map"+Nl(d,1);$e(X,d,$);const c=d+(A(s)?Pe:a);H([[c],[o],[Q,`, cell: ${d} | `+$,", cell as any"],[Q]],(([d,o=a,s=a],$)=>U($,l+I,w,d,gl(e,n,$),Ge+o,t+", rowId, "+r+s))),U(1,l+I,p+w,o,wl[1]+` the '${n}' Cell anywhere in `+pl(e),a,t+", "+r)}))})),U(0,a,C+Ae,Ae,sl(1,6)),U(2,a,C+Ae,Q,sl(1,7),"tablesJson: "+Ae,"tables"+Ae),_(i+C,D,sl(1,8,0,1)+" changes"),_(C,j,sl(1,8)+" changes"),_(h,G,bl(2,0,1)),_(i+p,J,bl(3,0,0,1),`tableId: ${n} | null`,"tableId"),_(p,z,bl(3,0),`tableId: ${n} | null`,"tableId"),_(p+T,B,bl(14,3,1),`tableId: ${n} | null`,"tableId"),_(i+p+w,F,bl(16,3,0,1),`tableId: ${n} | null, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, cellId"),_(m+ge,ee,bl(15,3),`tableId: ${n} | null`,"tableId"),_(g,le,bl(4,3,1),`tableId: ${n} | null`,"tableId"),_(f,te,bl(13,3,1),jl("tableId: TId",`cellId: ${v}<TId>`+Pe,"descending: boolean","offset: number","limit: number"+Pe),jl("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(i+m,ne,bl(5,3,0,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(m,de,bl(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(T,re,bl(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(i+w,Ie,bl(7,5,0,1),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(w,ce,bl(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(Re+w,ue,Le+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),s(1,Z,...ae(X)),W(K,".set"+C+He+"({",El(E(((e,l,t)=>[`[${t}]: {`,...N(e,((e,l,t,n)=>`[${n}]: {[${R(Dl(r),`'${r}'`)}]: ${R(Dl(l),`'${l}'`)}${A(t)?a:`, [${R(Dl(I),`'${I}'`)}]: `+(P(t)?R(Dl(t),`'${t}'`):t)}},`)),"},"]))),"})")}if(le(l))s(null,t,v);else{const[e,l,n,d,$,c,u,b,p,C,h]=j(q,Q);s(1,Z,e,l,n,$,c,u,b,p,C,h),ee=[e,l,n,c,u,b,p,C],H([[e],[o],[Q,"values: "+l,"values"],[Q],[Q,"partialValues: "+l,"partialValues"]],(([e,l,t],n)=>U(n,a,v,e,sl(2,n),l,t))),U(0,a,x,n+ze,Il(y,We)),U(5,a,y,"void",$l(y,We),"valueCallback: "+$,"valueCallback as any"),D(((e,l,t,n,d)=>{const s="Map"+Nl(l,1);$e(X,l,s),H([[l],[o],[Q,`value: ${l} | `+s,", value as any"],[Q]],(([l,t,o=a],s)=>U(s,d,y,l,fl(e,s),t,n+o)))})),U(0,a,v+Ae,Ae,sl(2,6)),U(2,a,v+Ae,Q,sl(2,7),"valuesJson: "+Ae,"values"+Ae),_(i+v,c,sl(2,8,0,1)+" changes"),_(v,u,sl(2,8)+" changes"),_(x,b,bl(10,0,1)),_(i+y,p,bl(11,0,0,1),`valueId: ${n} | null`,"valueId"),_(y,C,bl(11,0),`valueId: ${n} | null`,"valueId"),_(Re+y,h,Le+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),s(1,Z,...ae(X)),s(0,t,"ValueChange"),W(K,".set"+v+He+"({",D(((e,l,t,n)=>[`[${n}]: {[${R(Dl(r),`'${r}'`)}]: ${R(Dl(l),`'${l}'`)}${A(t)?a:`, [${R(Dl(I),`'${I}'`)}]: `+(P(t)?R(Dl(t),`'${t}'`):t)}},`])),"})")}U(0,a,"Content",`[${C}, ${v}]`,sl(0,0)),U(2,a,"Content",Q,sl(0,2),`[tables, values]: [${C}, ${v}]`,"[tables, values]"),U(7,a,"applyChanges",Q,`Applies a set of ${me} to the Store`,"changes: "+me,"changes"),re(X,((e,l)=>c(l,`(cell: ${e}${Pe}) => `+e,`Takes a ${e} Cell value and returns another`))),s(null,t,"DoRollback",Ve,"IdOrNull",Ae,"Store",me),U(0,a,Ae,Ae,sl(0,6)),U(2,a,Ae,Q,sl(0,7),"tablesAndValuesJson: "+Ae,"tablesAndValuesJson"),U(7,a,Fe,"Return",Ue,ve,"actions, doRollback","<Return>"),U(7,a,"start"+Be,Q,_e),U(7,a,"finish"+Be,Q,Ze,ye,"doRollback");const te=G(q,Q);return _("Start"+Be,te,Le+" just before the start of the "+Fe,a,a,0),_("WillFinish"+Be,te,Le+" just before "+Qe,a,a,0),_("DidFinish"+Be,te,Le+" just after "+Qe,a,a,0),U(7,a,"call"+$,Q,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,a,$,Q,"Remove a listener that was previously added to "+We,"listenerId: Id","listenerId"),B("getStore",a,"Store","store",wl[0]+" the underlying Store object"),s(1,t,"createStore"),s(1,Z,Q,`create${Q} as create${Q}Decl`,te),R("store",["createStore()",...K]),V("fluent","actions: () => Store",["actions();",`return ${q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),R(q,["{",...z(1),"}"]),[d(...k(0),...S(),xe+" interface "+Q+" {",...z(0),"}",a,Ll(`Creates a ${Q} object`),xe+" function create"+Q+"(): "+Q+";"),d(...k(1),xe+" const create"+Q+": typeof create"+Q+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),Y,ee]},Zl=e=>c+e,Ql=e=>jl(Zl(e),Zl(e)+we),ql="debugIds?: boolean",Kl="debugIds={debugIds}",Xl="then"+Te,Yl="Parameter",et=": (parameter: "+Yl+", store: Store) => ",lt="const contextValue = useContext(Context);",tt=", based on a parameter",at=": ",nt="<"+Yl+",>",dt=Yl+"ized"+he+"<"+Yl+">",ot="rowId",st="rowId={rowId}",rt=", separator, debugIds",It="separator?: ReactElement | string",$t="then?: (store: Store",ct=jl($t+")"+Ke,Xl),ut="then, then"+we,it=ot+at+Ve,bt="View",pt=(e,...l)=>jl(...l,ke+": "+e,ke+Te,"mutator?: boolean"),Ct=(...e)=>jl(...e,ke,ke+we,"mutator"),ht=(e,l,n,d,r)=>{const[I,c,u,V,R,k,S,P]=Ml(),[O,E,N]=zl(e,l,R),D=`./${Nl(n)}.d`,L=`./${Nl(n)}-ui-react.d`,j="tinybase/ui-react",G=Nl(n,1),H=Nl(G),J=G+"Or"+G+Ve,z=H+"Or"+G+Ve,B=H+`={${H}}`,U=oe(),_=(e,l,t,n,d,o=a)=>(c(1,L,e+" as "+e+"Decl"),Pl(U,e,[l,t,n,d,o])),Z=(e,l,t,n,d,o=a)=>_("use"+e,l,t,n,d,o),Q=(e,l,t,n,d=a,o=a,s=a,r=a,I=a)=>(c(1,j,`use${l} as use${l}Core`),Z(e,jl(d,ee,r),t,ae+`(${z}, use${l}Core, [`+(o||a)+(I?"], ["+I:a)+"]);",n,s)),q=(e,l,t,a)=>_(e,l,1,t,a),K=(e=0)=>Ie(U,(([l,t,n,d,o],s)=>{const r=e?[xe+` const ${s}: typeof ${s}Decl = ${o}(${l}): ${1==t?"any":t} =>`,n]:[xe+` function ${s}${o}(${l}): ${1==t?"ComponentReturnType":t};`];return e||F(r,Ll(d)),W(r,a),r}));c(null,t,Ve,"Store",he,Yl+"ized"+he),c(0,j,"ComponentReturnType"),c(1,j,"useCellIds"),c(null,j,"ExtraProps"),c(0,D,G);const X=u(J,G+" | "+Ve,`Used when you need to refer to a ${G} in a React hook or component`),Y=u(De+Ne,Hl(H+Se+G,H+`ById?: {[${H}Id: Id]: ${G}}`),`Used with the ${De} component, so that a `+G+" can be passed into the context of an application");c(0,"react","ReactElement","ComponentType"),c(1,"react","React"),c(1,L,X,Y);const ee=z+Se+X;R("{createContext, useContext, useMemo}","React"),R("Context",`createContext<[${G}?, {[${H}Id: Id]: ${G}}?]>([])`),Z("Create"+G,`create: () => ${G}, create`+Te,G,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${G} within a React application with convenient memoization`);const te=Z(G,"id?: Id",G+Pe,["{",lt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${G} from within a ${De} component context`),ae=V("useHook",z+`: ${X} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${H} = ${te}(${z} as Id);`,`return hook(...preParams, ((${z} == null || typeof ${z} == 'string')`,`? ${H} : ${z})?.getStore(), ...postParams)`]),ne=V("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),de=V("wrap",jl("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),re=V("useCustomOrDefaultCellIds",jl("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${z}?: ${X} | undefined`),[`const defaultCellIds = ${ae}(${z}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),$e=R("NullComponent","() => null");if(!le(e)){const[e,l,n,r,I,y,v,x,R,k,S,P,N,j,J,z,W,F,U,_]=d;c(null,D,e,l,n,I,y,v,x,R,k,S,P,N,j,J,z,W,U,F),c(0,D,r),c(1,D,G),c(null,t,b,"IdOrNull");const Z=V("tableView",`{${H}, rowComponent, getRowComponentProps, customCellIds`+rt+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${de}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",st,"customCellIds={customCellIds}",B,Kl,"/>","))",rt,", tableId,",");"]),K=V("getDefaultTableComponent","tableId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${l}TableView : `)))+$e),X=V("getDefaultCellComponent","tableId: Id, cellId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${M(E(e,((e,t,a,n,d)=>`cellId == ${n} ? `+l+d+"CellView : ")))+$e} : `)))+$e);Q(i+C,i+C,o,sl(1,0,0,1)+Ce),Q(C,C,e,sl(1,0)+Ce);const Y=Q(h,h,n+ze,Il(p,We)+Ce);Q(Me+C+he,Me+C+he,dt,sl(1,9)+tt,jl(Zl(C)+et+l,Zl(C)+Te),Ql(C),nt,jl($t,`tables: ${l})`+Ke,Xl),ut),Q(fe+C+he,fe+C+he,he,sl(1,12),a,a,a,ct,ut);const ee=u(w+Ne,Hl("tableId?: TId","rowId: Id","cellId?: CId",H+Se+G,ql),cl(be+w),`<TId extends ${n}, CId extends ${r}<TId>>`),le=u(m+Ne,Hl("tableId?: TId","rowId: Id",H+Se+G,"cellComponents?: {readonly [CId in "+r+`<TId>]?: ComponentType<${ee}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${r}<TId>) => ExtraProps`,`customCellIds?: ${r}<TId>[]`,It,ql),cl(be+m),`<TId extends ${n}>`),te=u(p+Ne,Hl("tableId?: TId",H+Se+G,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",It,ql),cl(be+p),`<TId extends ${n}>`),ae=u("Sorted"+p+Ne,Hl("tableId?: TId","cellId?: "+r+"<TId>","descending?: boolean","offset?: number","limit?: number",H+Se+G,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",It,ql),cl(be+"sorted "+p),`<TId extends ${n}>`),oe=u(C+Ne,Hl(H+Se+G,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${te}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,It,ql),cl(ol(1,1)));c(1,L,oe,te,ae,le,ee),q(C+bt,"{"+H+", tableComponents, getTableComponentProps"+rt+"}: "+oe,[de+`(${Y}(${H}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+K+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",B,Kl,"/>;","}), separator)"],sl(1,13)+Ce),O(((e,l,t)=>{const[n,d,r,I,$]=se(_,e);c(null,D,n,d,r,I,$),Q(i+l+p,i+p,o,hl(e,0,1)+Ce,a,t),Q(l+p,p,n,hl(e)+Ce,a,t),Q(l+p+T,p+T,b,Il(w,"the whole of "+pl(e))+Ce,a,t),Q(l+m+ge,m+ge,s,"Gets the number of Rows in "+pl(e)+Ce,a,t);const u=Q(l+g,g,b,Il(m,pl(e))+Ce,a,t),C=Q(l+f,f,b,Il(m,pl(e),1)+Ce,"cellId?: "+$+", descending?: boolean, offset?: number, limit?: number",t+", cellId, descending, offset, limit");Q(i+l+m,i+m,o,ml(e,0,1)+Ce,it,jl(t,ot)),Q(l+m,m,r,ml(e)+Ce,it,jl(t,ot)),Q(l+T,T,$+ze,Il(w,Cl(e))+Ce,it,jl(t,ot)),Q(Me+l+p+he,Me+p+he,dt,hl(e,9)+tt,jl(Zl(p)+et+d,Zl(p)+Te),jl(t,Ql(p)),nt,jl($t,`table: ${d})`+Ke,Xl),ut),Q(fe+l+p+he,fe+p+he,he,hl(e,12),a,t,a,ct,ut),Q(Me+l+m+he,Me+m+he,dt,ml(e,9)+tt,jl(it,Zl(m)+et+I,Zl(m)+Te),jl(t,ot,Ql(m)),nt,jl($t,`row: ${I})`+Ke,Xl),ut),Q("Add"+l+m+he,"Add"+m+he,dt,ml(e,10)+tt,jl(Zl(m)+et+I,Zl(m)+Te),jl(t,Ql(m)),nt,"then?: ("+jl(it+Pe,"store: Store","row: "+I+")"+Ke,"then"+Te)+", reuseRowIds?: boolean",ut+", reuseRowIds"),Q(Me+l+Ee+m+he,Me+Ee+m+he,dt,ml(e,11)+tt,jl(it,Zl(Ee+m)+et+I,Zl(Ee+m)+Te),jl(t,ot,Ql(Ee+m)),nt,jl($t,`partialRow: ${I})`+Ke,Xl),ut),Q(fe+l+m+he,fe+m+he,he,ml(e,12),it,jl(t,ot),a,ct,ut);const h=q(l+m+bt,"{rowId, "+H+", cellComponents, getCellComponentProps, customCellIds"+rt+`}: ${le}<'${e}'>`,[de+`(${re}(customCellIds, `+t+`, rowId, ${H}).map((cellId: ${$}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+X+`(${t}, cellId)) as React.ComponentType<CellProps<typeof `+t+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${t}}`,st,"cellId={cellId}",B,Kl,"/>;","})"+rt+", rowId)"],ml(e,13)+Ce);q(l+"Sorted"+p+bt,"{cellId, descending, offset, limit, ...props}: "+ae+`<'${e}'>`,Z+"(props, "+C+`(cellId, descending, offset, limit, props.${H}), ${t}, ${h});`,hl(e,13)+", sorted"+Ce),q(l+p+bt,`props: ${te}<'${e}'>`,Z+"(props, "+u+`(props.${H}), ${t}, ${h});`,hl(e,13)+Ce),E(e,((n,d,s,r,I)=>{const $="Map"+Nl(d,1);c(0,D,$),c(1,D,$),Q(i+l+I+p+w,i+p+w,o,`Gets ${dl(1)}the '${n}' Cell anywhere in `+pl(e)+Ce,a,jl(t,r)),Q(i+l+I+w,i+w,o,gl(e,n,0,1)+Ce,it,jl(t,ot,r));const u=Q(l+I+w,w,d+(A(s)?Pe:a),gl(e,n)+Ce,it,jl(t,ot,r));Q(Me+l+I+w+he,Me+w+he,dt,gl(e,n,9)+tt,jl(it,Zl(w)+et+d+" | "+$,Zl(w)+Te),jl(t,ot,r,Ql(w)),nt,jl($t,`cell: ${d} | ${$})`+Ke,Xl),ut),Q(fe+l+I+w+he,fe+w+he,he,gl(e,n,12),jl(it,"forceDel?: boolean"),jl(t,ot,r,"forceDel"),a,ct,ut),q(l+I+w+bt,`{rowId, ${H}, debugIds}: `+ee+`<'${e}', '${n}'>`,[de+`('' + ${u}(rowId, `+H+`) ?? '', undefined, debugIds, ${r})`],gl(e,n,13)+Ce)}))}));const Ie=M(O((e=>se(_,e)?.[4]??a))," | ");Q(i+C+$,i+C+$,qe,sl(1,8,0,1)+" changes",pt(I),Ct()),Q(C+$,C+$,qe,sl(1,8)+" changes",pt(y),Ct()),Q(h+$,h+$,qe,bl(2,0,1),pt(v),Ct()),Q(i+p+$,i+p+$,qe,bl(3,0,0,1),pt(x,`tableId: ${n} | null`),Ct("tableId")),Q(p+$,p+$,qe,bl(3,0),pt(R,`tableId: ${n} | null`),Ct("tableId")),Q(p+T+$,p+T+$,qe,bl(14,3,1),pt(k,`tableId: ${n} | null`),Ct("tableId")),Q(i+p+w+$,i+p+w+$,qe,bl(16,3,0,1),pt(S,`tableId: ${n} | null`,`cellId: ${Ie} | null`),Ct("tableId","cellId")),Q(m+ge+$,m+ge+$,qe,bl(15,3),pt(P,`tableId: ${n} | null`),Ct("tableId")),Q(g+$,g+$,qe,bl(4,3,1),pt(N,`tableId: ${n} | null`),Ct("tableId")),Q(f+$,f+$,qe,bl(13,3,1),pt(j,`tableId: ${n} | null`,"cellId: "+Ie+Pe,"descending: boolean","offset: number","limit: number"+Pe),Ct("tableId","cellId","descending","offset","limit")),Q(i+m+$,i+m+$,qe,bl(5,3,0,1),pt(J,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(m+$,m+$,qe,bl(5,3),pt(z,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(T+$,T+$,qe,bl(6,5,1),pt(W,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(i+w+$,i+w+$,qe,bl(7,5,0,1),pt(F,`tableId: ${n} | null`,ot+": IdOrNull",`cellId: ${Ie} | null`),Ct("tableId",ot,"cellId")),Q(w+$,w+$,qe,bl(7,5),pt(U,`tableId: ${n} | null`,ot+": IdOrNull",`cellId: ${Ie} | null`),Ct("tableId",ot,"cellId"))}if(!le(l)){const[e,l,t,n,d,s,I,b]=r;c(null,D,...r),c(1,D,G);const p=V("getDefaultValueComponent","valueId: Id",M(N(((e,l,t,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+$e);Q(i+v,i+v,o,sl(2,0,0,1)+Ce),Q(v,v,e,sl(2,0)+Ce);const C=Q(x,x,t+ze,Il(y,We)+Ce);Q(Me+v+he,Me+v+he,dt,sl(2,9)+tt,jl(Zl(v)+et+l,Zl(v)+Te),Ql(v),nt,jl($t,`values: ${l})`+Ke,Xl),ut),Q(Me+Ee+v+he,Me+Ee+v+he,dt,sl(2,11)+tt,jl(Zl(Ee+v)+et+l,Zl(Ee+v)+Te),Ql(Ee+v),nt,jl($t,`partialValues: ${l})`+Ke,Xl),ut),Q(fe+v+he,fe+v+he,he,sl(2,12),a,a,a,ct,ut);const h=u(y+Ne,Hl("valueId?: VId",H+Se+G,ql),cl("a Value"),`<VId extends ${t}>`),m=u(v+Ne,Hl(H+Se+G,"valueComponents?: {readonly [VId in "+t+`]?: ComponentType<${h}<VId>>;}`,`getValueComponentProps?: (valueId: ${t}) => ExtraProps`,It,ql),cl(ol(2,1)));c(1,L,m,h),q(v+bt,"{"+H+", valueComponents, getValueComponentProps"+rt+"}: "+m,[de+`(${C}(${H}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+p+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",B,Kl,"/>;","}), separator)"],sl(2,13)+Ce),N(((e,l,t,n,d)=>{const s="Map"+Nl(l,1);c(0,D,s),c(1,D,s),Q(i+d+y,i+y,o,fl(e,0,1)+Ce,a,n);const r=Q(d+y,y,l,fl(e)+Ce,a,n);Q(Me+d+y+he,Me+y+he,dt,fl(e,9)+tt,jl(Zl(y)+et+l+" | "+s,Zl(y)+Te),jl(n,Ql(y)),nt,jl($t,`value: ${l} | ${s})`+Ke,Xl),ut),Q(fe+d+y+he,fe+y+he,he,fl(e,12),a,n,a,ct,ut),q(d+y+bt,`{${H}, debugIds}: ${h}<'${e}'>`,[de+`('' + ${r}(`+H+`) ?? '', undefined, debugIds, ${n})`],fl(e,13)+Ce)})),Q(i+v+$,i+v+$,qe,sl(2,8,0,1)+" changes",pt(n),Ct()),Q(v+$,v+$,qe,sl(2,8)+" changes",pt(d),Ct()),Q(x+$,x+$,qe,bl(10,0,1),pt(s),Ct()),Q(i+y+$,i+y+$,qe,bl(11,0,0,1),pt(I,`valueId: ${t} | null`),Ct("valueId")),Q(y+$,y+$,qe,bl(11,0),pt(b,`valueId: ${t} | null`),Ct("valueId"))}return q(De,`{${H}, ${H}ById, children}: `+Y+" & {readonly children: React.ReactNode}",["{",lt,"return (","<Context."+De,"value={useMemo(",`() => [${H} ?? contextValue[0], {...contextValue[1], ...${H}ById}],`,`[${H}, ${H}ById, contextValue],`,")}>","{children}",`</Context.${De}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[I(...k(0),...S(),...K(0)),I(...k(1),...P(),...K(1))]},mt=(e,l,t)=>{if(le(e)&&le(l))return[a,a,a,a];const[n,d,o,s]=_l(e,l,t);return[n,d,...ht(e,l,t,o,s)]},gt=JSON.parse,ft="prettier/",wt=ft+"plugins/",Tt={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},yt=Jl((e=>{const l=()=>{const l=gt(e.getTablesSchemaJson());return!le(l)||j(e.getTableIds(),(t=>{const a=e.getRowIds(t),n=oe();if(j(a,(l=>j(e.getCellIds(t,l),(a=>{const d=e.getCell(t,l,a),o=ce(n,a,(()=>[L(d),oe(),[0],0])),[s,r,[I]]=o,$=ce(r,d,(()=>0))+1;return $>I&&(o[2]=[$,d]),$e(r,d,$),o[3]++,s==L(d)})))))return l[t]={},ne(n,(([e,,[,n],d],o)=>{l[t][o]={[r]:e,...d==N(a)?{[I]:n}:{}}})),1}))?l:{}},t=()=>{const l=gt(e.getValuesSchemaJson());return le(l)&&e.forEachValue(((e,t)=>{l[e]={[r]:L(t)}})),l},a=e=>mt(l(),t(),e),n=async e=>{const l=["d.ts","ts","d.ts","tsx"],t=[];let n;try{n=(await import(ft+"standalone")).format,W(t,await import(wt+"estree"),await import(wt+"typescript"))}catch{n=async e=>e}return await D(J(a(e),(async(e,a)=>Ol(await n(e,{...Tt,plugins:t,filepath:"_."+l[a]})))))};return X({getStoreStats:l=>{let t=0,a=0,n=0;const d={};return e.forEachTable(((e,o)=>{t++;let s=0,r=0;const I={};o(((e,t)=>{s++;let a=0;t((()=>a++)),r+=a,l&&(I[e]={rowCells:a})})),a+=s,n+=r,l&&(d[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:t,totalRows:a,totalCells:n,totalValues:N(e.getValueIds()),jsonLength:N(e.getJson()),...l?{detail:{tables:d}}:{}}},getStoreTablesSchema:l,getStoreValuesSchema:t,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));e.createTools=yt},"object"==typeof exports&&"undefined"!=typeof module?l(exports):"function"==typeof define&&define.amd?define(["exports"],l):l((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseTools={});
Binary file
@@ -1 +1 @@
1
- var e,l;e=this,l=function(e){"use strict";const l=e=>typeof e,t="tinybase",a="",n=",",d=l(a),o=l(!0),s=l(0),r="type",I="default",$="Listener",c="get",u="add",i="Has",b="Ids",p="Table",C=p+"s",h=p+b,m="Row",g=m+b,f="Sorted"+m+b,w="Cell",T=w+b,y="Value",v=y+"s",x=y+b,V=Promise,R=isFinite,A=e=>null==e,k=(e,l,t)=>A(e)?t?.():l(e),S=e=>e==d||e==o,P=e=>l(e)==d,O=e=>Array.isArray(e),E=(e,l,t)=>e.slice(l,t),N=e=>e.length,D=async e=>V.all(e),L=e=>{const t=l(e);return S(t)||t==s&&R(e)?t:void 0},j=(e,l)=>e.every(l),G=(e,l)=>e.sort(l),H=(e,l)=>e.forEach(l),M=(e,l=a)=>e.join(l),J=(e,l)=>e.map(l),z=(e,l)=>e.filter(l),W=(e,...l)=>e.push(...l),B=e=>e.pop(),F=(e,...l)=>e.unshift(...l),U=e=>e.shift(),_=Object,Z=e=>_.getPrototypeOf(e),Q=_.entries,q=e=>!A(e)&&k(Z(e),(e=>e==_.prototype||A(Z(e))),(()=>!0)),K=_.keys,X=_.freeze,Y=(e,l)=>J(Q(e),(([e,t])=>l(t,e))),ee=e=>N(K(e)),le=e=>q(e)&&0==ee(e),te=(e,l)=>e?.has(l)??!1,ae=e=>[...e?.values()??[]],ne=(e,l)=>e?.forEach(l),de=(e,l)=>e?.delete(l),oe=e=>new Map(e),se=(e,l)=>e?.get(l),re=(e,l)=>ne(e,((e,t)=>l(t,e))),Ie=(e,l)=>J([...e?.entries()??[]],(([e,t])=>l(t,e))),$e=(e,l,t)=>A(t)?(de(e,l),e):e?.set(l,t),ce=(e,l,t,a)=>(te(e,l)||$e(e,l,t()),se(e,l)),ue=e=>e.toUpperCase(),ie=e=>e.toLowerCase(),be="a ",pe="A function for",Ce=", and registers a listener so that any changes to that result will cause a re-render",he="Callback",me="Changes",ge="Count",fe="Del",we="Deps",Te=we+"?: React.DependencyList",ye="doRollback?: DoRollback",ve="actions: () => Return, "+ye,xe="export",Ve="Id",Re="Invalid",Ae="Json",ke=ie($),Se="?: ",Pe=" | undefined",Oe="NonNullable",Ee="Partial",Ne="Props",De="Provider",Le=`Registers a ${ke} that will be called`,je="Represents",Ge="rowId: "+Ve,He="Schema",Me="Set",Je=", descending?: boolean, offset?: number, limit?: number",ze="[]",We="the Store",Be="Transaction",Fe=ie(Be),Ue="Execute a "+Fe+" to make multiple mutations",_e="Explicitly starts a "+Fe,Ze="Explicitly finishes a "+Fe,Qe="the end of the "+Fe,qe="void",Ke=" => "+qe,Xe="WhenSet",Ye=" when setting it",el=be+"string serialization of",ll=" ",tl="Gets a callback that can ",al="the ",nl=" the schema for",dl=(e=0)=>e?"the existence of ":"",ol=(e=0,l=0,t=0)=>dl(t)+`the ${vl[e]}content of`+(l?ll+We:a),sl=(e=0,l,t=0,n=0)=>wl[l]+ll+dl(n)+ol(e,1)+(t?" when setting it":a),rl=(e,l=0)=>je+` a Row when ${l?"s":"g"}etting ${ol()} the '${e}' `+p,Il=(e,l,t=0)=>`Gets ${t?"sorted, paginated":"the"} Ids of the ${e}s in `+l,$l=(e,l)=>`Calls a function for each ${e} in `+l,cl=e=>"The props passed to a component that renders "+e,ul=e=>"A function that takes "+e,il=(e,l=0,t=0)=>pe+" listening to changes to "+dl(t)+yl[e]+" in "+yl[l],bl=(e,l,t=0,n=0)=>Le+" whenever "+dl(n)+yl[e]+" in "+yl[l]+" change"+(t?a:"s"),pl=e=>`the '${e}' `+p,Cl=e=>"the specified Row in "+pl(e),hl=(e,l=0,t=0)=>wl[l]+ll+ol(0,0,t)+ll+pl(e),ml=(e,l=0,t=0)=>wl[l]+` ${ol(0,0,t)} `+Cl(e),gl=(e,l,t=0,a=0)=>wl[t]+ll+dl(a)+`the '${l}' Cell for `+Cl(e),fl=(e,l=0,t=0)=>wl[l]+ll+dl(t)+`the '${e}' Value`,wl=["Gets","Checks existence of","Sets","Deletes","Sets part of",je,"Gets "+el,"Sets "+el,Le+" whenever",tl+"set",tl+"add",tl+"set part of",tl+"delete","Renders","Gets "+el+nl,"Sets"+nl,"Deletes"+nl],Tl=[c,"has","set","del","set","forEach",u,a],yl=[We,C,al+p+ll+b,be+p,al+m+ll+b,be+m,al+w+ll+b,be+w,"invalid Cell changes",v,al+y+ll+b,be+y,"invalid Value changes",al+"sorted "+m+ll+b,al+w+ll+b+" anywhere",al+"number of Rows",be+w+" anywhere"],vl=[a,"tabular ","keyed value "],xl=e=>new Set(O(e)||A(e)?e:[e]),Vl=(e,l)=>e?.add(l),Rl=/[^A-Za-z]+/,Al=/[^A-Za-z0-9]+/,kl=/^( *)\/\*\* *(.*?) *\*\/$/gm,Sl=e=>e.includes(n),Pl=(e,l,t,a=1)=>{const n=`${l}${1==a?"":a}`;return te(e,n)?Pl(e,l,t,a+1):($e(e,n,t),n)},Ol=e=>e.replace(kl,((e,l,t)=>{const a=77-N(l);return`${l}/**\n${t.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),l+" * $1\n")}${l} */`})),El=e=>e.flat(1e3),Nl=(e,l=0)=>M(J(e.split(Al),((e,t)=>(t>0||l?ue:ie)(E(e,0,1))+E(e,1)))),Dl=e=>ue(M((e&&!Rl.test(e[0])?e:" "+e).split(Al),"_")),Ll=e=>`/** ${e}. */`,jl=(...e)=>M(z(e,(e=>e)),", "),Gl=(...e)=>"{"+M(e,"; ")+"}",Hl=(...e)=>Gl(...J(e,(e=>"readonly "+e))),Ml=()=>{const e=[oe(),oe(),oe(),oe()],l=oe(),t=oe(),n=e=>{const l=e.indexOf(" as ");return-1!=l?E(e,l+4):e};return[(...e)=>M(El(e),"\n"),(l,t,...a)=>H(a,(a=>H([0,1],(n=>(l??n)==n?Vl(ce(e[n],t,xl),a):0)))),(e,t,n,d=a,o=1)=>Pl(l,e,[t,n,d,o]),(e,l,a)=>Pl(t,e,O(a)?[`(${l}) => {`,a,"}"]:[`(${l}) => ${a}`]),(e,l)=>se(t,e)===l?e:Pl(t,e,l),(l=0)=>J([...G(Ie(e[l],((e,l)=>`import {${M(G(ae(e),((e,l)=>n(e)>n(l)?1:-1)),", ")}} from '${l}';`)),((e,l)=>Sl(e)!=Sl(l)?Sl(e)?-1:1:e>l?1:-1)),a],(e=>e.replace("{React}","React"))),()=>Ie(l,(([e,l,t,n],d)=>[Ll(l),`${n?xe+" ":a}type ${d}${t} = ${e};`,a])),()=>Ie(t,((e,l)=>(e=O(e)?e:[e],W(e,B(e)+";"),[`const ${l} = ${U(e)}`,e,a])))]},Jl=(e,l)=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},zl=(e,l,t)=>[l=>Y(e,((e,a)=>l(a,Nl(a,1),t(Dl(a),`'${a}'`)))),(l,a)=>Y(e[l],((e,l)=>a(l,e[r],e[I],t(Dl(l),`'${l}'`),Nl(l,1)))),e=>Y(l,((l,a)=>e(a,l[r],l[I],t(Dl(a),`'${a}'`),Nl(a,1))))],Wl=(e,l,t,n)=>[(n,d)=>{const o=n+": "+d,s=e(C,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...t(e,((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`)))+"}"))),sl(1,5)),r=e(C+Xe,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...t(e,((e,l)=>`'${e}'?: ${l}`)))+"}"))),sl(1,5,1)),I=e(p+Ve,"keyof "+s,"A "+p+" Id in "+We),c=`<TId extends ${I}>`,u=e(p,Oe+`<${s}[TId]>`,"A "+p+" in "+We,c),b=e(p+Xe,Oe+`<${r}[TId]>`,"A "+p+" in "+We+Ye,c),y=e(m,u+"<TId>[Id]","A "+m+" in a "+p,c),v=e(m+Xe,b+"<TId>[Id]","A "+m+" in a "+p+Ye,c),x=e(w+Ve,`Extract<keyof ${y}<TId>, Id>`,"A "+w+" Id in a "+m,c),V=e(w,Oe+`<${s}[TId]>[Id][CId]`,"A "+w+" in a "+m,`<TId extends ${I}, CId extends ${x}<TId>>`),R=e("CellIdCellArray",`CId extends ${x}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,w+" Ids and types in a "+m,`<TId extends ${I}, CId = ${x}<TId>>`,0),k=e(w+he,`(...[cellId, cell]: ${R}<TId>)`+Ke,ul(be+w+" Id, and "+w),c),S=e(m+he,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Ke+") "+Ke,ul(be+m+" Id, and a "+w+" iterator"),c),P=e(p+w+he,`(cellId: ${x}<TId>, count: number) `+Ke,ul(be+w+" Id, and count of how many times it appears"),c),O=e("TableIdForEachRowArray",`TId extends ${I} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${Ke}] : never`,p+" Ids and callback types",`<TId = ${I}>`,0),E=e(p+he,`(...[tableId, forEachRow]: ${O})`+Ke,ul(be+p+" Id, and a "+m+" iterator"),a),N=e("TableIdRowIdCellIdArray",`TId extends ${I} ? [tableId: TId, rowId: Id, cellId: ${x}<TId>] : never`,"Ids for GetCellChange",`<TId = ${I}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${N}) => CellChange`,pe+" returning information about any Cell's changes during a "+Fe),L=e(i+C+$,`(${o}, hasTables: boolean)`+Ke,il(1,0,1)),j=e(C+$,`(${o}, getCellChange: ${D}${Pe})`+Ke,il(1)),G=e(h+$,`(${o})`+Ke,il(2)),H=e(i+p+$,`(${o}, tableId: ${I}, hasTable: boolean)`+Ke,il(3,0,1)),M=e(p+$,`(${o}, tableId: ${I}, getCellChange: ${D}${Pe})`+Ke,il(3)),J=e(p+T+$,`(${o}, tableId: ${I})`+Ke,il(14,3)),z=e("HasTableCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, cellId: CId, hasTableCell: boolean] : never`,"Cell args for HasTableCellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),W=e("HasTableCellListenerArgsArrayOuter",`TId extends ${I} ? `+z+"<TId> : never","Table args for HasTableCellListener",`<TId = ${I}>`,0),B=e(i+p+w+$,`(...[${n}, tableId, cellId, hasTableCell]: `+W+")"+Ke,il(16,3,1)),F=e(m+"Count"+$,`(${o}, tableId: ${I})`+Ke,il(15,3)),U=e(g+$,`(${o}, tableId: ${I})`+Ke,il(4,3)),_=e(f+$,"("+jl(o,"tableId: "+I,"cellId: Id"+Pe,"descending: boolean","offset: number","limit: number"+Pe,"sortedRowIds: Ids")+")"+Ke,il(13,3)),Z=e(i+m+$,"("+jl(""+o,"tableId: "+I,Ge,"hasRow: boolean")+")"+Ke,il(5,3,1)),Q=e(m+$,"("+jl(""+o,"tableId: "+I,Ge,`getCellChange: ${D}${Pe}`)+")"+Ke,il(5,3)),q=e(T+$,"("+jl(""+o,"tableId: "+I,Ge)+")"+Ke,il(6,5)),K=e("HasCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, hasCell: boolean] : never`,"Cell args for HasCellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),X=e("HasCellListenerArgsArrayOuter",`TId extends ${I} ? `+K+"<TId> : never","Table args for HasCellListener",`<TId = ${I}>`,0),Y=e(i+w+$,`(...[${n}, tableId, rowId, cellId, hasCell]: `+X+")"+Ke,il(7,5,1)),ee=e("CellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, newCell: ${V}<TId, CId> ${Pe}, oldCell: ${V}<TId, CId> ${Pe}, getCellChange: ${D} ${Pe}] : never`,"Cell args for CellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),le=e("CellListenerArgsArrayOuter",`TId extends ${I} ? `+ee+"<TId> : never","Table args for CellListener",`<TId = ${I}>`,0);return[s,r,I,u,b,y,v,x,V,k,S,P,E,L,j,G,H,M,J,B,F,U,_,Z,Q,q,Y,e(w+$,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${le})`+Ke,il(7,5)),e(Re+w+$,`(${o}, tableId: Id, ${Ge}, cellId: Id, invalidCells: any[])`+Ke,il(8))]},(l,t)=>{const d=l+": "+t,o=e(v,Gl(...n(((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`))),sl(2,5)),s=e(v+Xe,Gl(...n(((e,l)=>`'${e}'?: ${l}`))),sl(2,5,1)),r=e(y+Ve,"keyof "+o,"A "+y+" Id in "+We),I=e(y,Oe+`<${o}[VId]>`,"A "+y+" Id in "+We,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${I}<VId>] : never`,y+" Ids and types in "+We,`<VId = ${r}>`,0),u=e(y+he,`(...[valueId, value]: ${c})`+Ke,ul(be+y+" Id, and "+y)),b=e("GetValueChange",`(valueId: ${r}) => ValueChange`,pe+" returning information about any Value's changes during a "+Fe),p=e(i+v+$,`(${d}, hasValues: boolean)`+Ke,il(9,0,1)),C=e(v+$,`(${d}, getValueChange: ${b}${Pe})`+Ke,il(9)),h=e(x+$,`(${d})`+Ke,il(10)),m=e(i+y+$,`(${d}, valueId: ValueId, hasValue: boolean)`+Ke,il(11,0,1)),g=e("ValueListenerArgsArray",`VId extends ${r} ? [${d}, valueId: VId, newValue: ${I}<VId> ${Pe}, oldValue: ${I}<VId> ${Pe}, getValueChange: ${b} ${Pe}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[o,s,r,I,u,p,C,h,m,e(y+$,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+g+")"+Ke,il(11)),e(Re+y+$,`(${d}, valueId: Id, invalidValues: any[])`+Ke,il(12))]},(l,t)=>e(Be+$,`(${l}: ${t})`+Ke,pe+" listening to the completion of a "+Fe)],Bl=(e,l=a,t=a)=>`store.${e}(${l})`+(t?" as "+t:a),Fl=(e,l=a)=>`fluent(() => ${Bl(e,l)})`,Ul=(e,l=a,t=a)=>`store.${e}(${l?l+", ":a}proxy(listener)${t?", "+t:a})`,_l=(e,l,n)=>{const[d,s,c,V,R,k,S,O]=Ml(),[E,N,D]=zl(e,l,R),[L,j,G]=Wl(c,E,N,D),J=oe(),z=(e=0)=>Ie(J,(([l,t,n,d,o],s)=>{const r=e?[s+`: ${o}(${l}): ${t} => ${n},`]:[s+o+`(${l}): ${t};`];return e||F(r,Ll(d)),W(r,a),r})),B=(e,l,t,n,d,o=a)=>Pl(J,e,[l,t,n,d,o]),U=(e,l,t,n,d,o=a,s=a,r=a)=>B(Tl[e]+l+(4==e?Ee:a)+t,o,n,(n==Q?Fl:Bl)(Tl[e]+(4==e?Ee:a)+t,s,e?void 0:n),d,r),_=(e,l,t,n=a,d=a,o=1,s=a)=>B(u+e+$,(n?n+", ":a)+ke+": "+l+(o?", mutator?: boolean":a),Ve,Ul(u+e+$,d,o?"mutator":a),t,s),Z=`./${Nl(n)}.d`,Q=Nl(n,1),q=Nl(Q),K=[],X=oe();let Y=[],ee=[];if(s(1,Z,Q,`create${Q} as create${Q}Decl`),le(e))s(null,t,C);else{s(0,t,"CellChange"),s(null,t,b);const[e,l,n,d,$,u,y,v,x,V,k,S,O,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ue]=L(q,Q),ie=oe();E(((e,l)=>{const t=`<'${e}'>`,a=[c(l+p,d+t,je+` the '${e}' `+p),c(l+p+Xe,$+t,je+` the '${e}' `+p+Ye),c(l+m,u+t,rl(e)),c(l+m+Xe,y+t,rl(e,1)),c(l+w+Ve,v+t,`A Cell Id for the '${e}' `+p),c(l+w+he,V+t,ul(`a Cell Id and value from a Row in the '${e}' `+p)),c(l+m+he,k+t,ul(`a Row Id from the '${e}' Table, and a Cell iterator`)),c(l+p+w+he,S+t,ul(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];$e(ie,e,a),s(1,Z,...a)})),s(1,Z,e,l,n,v,O,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ue),Y=[e,l,n,v,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ie],H([[e],[o],[Q,"tables: "+l,"tables"],[Q]],(([e,l,t],n)=>U(n,a,C,e,sl(1,n),l,t))),U(0,a,h,n+ze,Il(p,We)),U(5,a,p,qe,$l(p,We),"tableCallback: "+O,"tableCallback as any"),E(((e,l,t)=>{const[n,d,s,r,I,$,c,u]=se(ie,e);H([[n],[o],[Q,"table: "+d,", table"],[Q]],(([n,d,o=a],s)=>U(s,l,p,n,hl(e,s),d,t+o))),U(0,l,p+T,b,Il(w,"the whole of "+pl(e)),a,t),U(5,l,p+w,qe,$l(p+w,"the whole of "+pl(e)),"tableCellCallback: "+u,t+", tableCellCallback as any"),U(0,l,m+ge,"number","Gets the number of Rows in the "+pl(e),a,t),U(0,l,g,b,Il(m,pl(e)),a,t),U(0,l,f,b,Il(m,pl(e),1),"cellId?: "+I+Je,t+", cellId, descending, offset, limit"),U(5,l,m,qe,$l(m,pl(e)),"rowCallback: "+c,t+", rowCallback as any"),H([[s],[o],[Q,", row: "+r,", row"],[Q],[Q,", partialRow: "+r,", partialRow"]],(([n,d=a,o=a],s)=>U(s,l,m,n,ml(e,s),Ge+d,t+", rowId"+o))),U(6,l,m,Ve+Pe,"Add a new Row to "+pl(e),"row: "+r+", reuseIds?: boolean",t+", row, reuseIds"),U(0,l,T,I+ze,Il(w,Cl(e)),Ge,t+", rowId"),U(5,l,w,qe,$l(w,Cl(e)),Ge+", cellCallback: "+$,t+", rowId, cellCallback as any"),N(e,((n,d,s,r,I)=>{const $="Map"+Nl(d,1);$e(X,d,$);const c=d+(A(s)?Pe:a);H([[c],[o],[Q,`, cell: ${d} | `+$,", cell as any"],[Q]],(([d,o=a,s=a],$)=>U($,l+I,w,d,gl(e,n,$),Ge+o,t+", rowId, "+r+s))),U(1,l+I,p+w,o,wl[1]+` the '${n}' Cell anywhere in `+pl(e),a,t+", "+r)}))})),U(0,a,C+Ae,Ae,sl(1,6)),U(2,a,C+Ae,Q,sl(1,7),"tablesJson: "+Ae,"tables"+Ae),_(i+C,D,sl(1,8,0,1)+" changes"),_(C,j,sl(1,8)+" changes"),_(h,G,bl(2,0,1)),_(i+p,J,bl(3,0,0,1),`tableId: ${n} | null`,"tableId"),_(p,z,bl(3,0),`tableId: ${n} | null`,"tableId"),_(p+T,B,bl(14,3,1),`tableId: ${n} | null`,"tableId"),_(i+p+w,F,bl(16,3,0,1),`tableId: ${n} | null, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, cellId"),_(m+ge,ee,bl(15,3),`tableId: ${n} | null`,"tableId"),_(g,le,bl(4,3,1),`tableId: ${n} | null`,"tableId"),_(f,te,bl(13,3,1),jl("tableId: TId",`cellId: ${v}<TId>`+Pe,"descending: boolean","offset: number","limit: number"+Pe),jl("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(i+m,ne,bl(5,3,0,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(m,de,bl(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(T,re,bl(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(i+w,Ie,bl(7,5,0,1),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(w,ce,bl(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(Re+w,ue,Le+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),s(1,Z,...ae(X)),W(K,".set"+C+He+"({",El(E(((e,l,t)=>[`[${t}]: {`,...N(e,((e,l,t,n)=>`[${n}]: {[${R(Dl(r),`'${r}'`)}]: ${R(Dl(l),`'${l}'`)}${A(t)?a:`, [${R(Dl(I),`'${I}'`)}]: `+(P(t)?R(Dl(t),`'${t}'`):t)}},`)),"},"]))),"})")}if(le(l))s(null,t,v);else{const[e,l,n,d,$,c,u,b,p,C,h]=j(q,Q);s(1,Z,e,l,n,$,c,u,b,p,C,h),ee=[e,l,n,c,u,b,p,C],H([[e],[o],[Q,"values: "+l,"values"],[Q],[Q,"partialValues: "+l,"partialValues"]],(([e,l,t],n)=>U(n,a,v,e,sl(2,n),l,t))),U(0,a,x,n+ze,Il(y,We)),U(5,a,y,"void",$l(y,We),"valueCallback: "+$,"valueCallback as any"),D(((e,l,t,n,d)=>{const s="Map"+Nl(l,1);$e(X,l,s),H([[l],[o],[Q,`value: ${l} | `+s,", value as any"],[Q]],(([l,t,o=a],s)=>U(s,d,y,l,fl(e,s),t,n+o)))})),U(0,a,v+Ae,Ae,sl(2,6)),U(2,a,v+Ae,Q,sl(2,7),"valuesJson: "+Ae,"values"+Ae),_(i+v,c,sl(2,8,0,1)+" changes"),_(v,u,sl(2,8)+" changes"),_(x,b,bl(10,0,1)),_(i+y,p,bl(11,0,0,1),`valueId: ${n} | null`,"valueId"),_(y,C,bl(11,0),`valueId: ${n} | null`,"valueId"),_(Re+y,h,Le+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),s(1,Z,...ae(X)),s(0,t,"ValueChange"),W(K,".set"+v+He+"({",D(((e,l,t,n)=>[`[${n}]: {[${R(Dl(r),`'${r}'`)}]: ${R(Dl(l),`'${l}'`)}${A(t)?a:`, [${R(Dl(I),`'${I}'`)}]: `+(P(t)?R(Dl(t),`'${t}'`):t)}},`])),"})")}U(0,a,"Content",`[${C}, ${v}]`,sl(0,0)),U(2,a,"Content",Q,sl(0,2),`[tables, values]: [${C}, ${v}]`,"[tables, values]"),U(7,a,"applyChanges",Q,`Applies a set of ${me} to the Store`,"changes: "+me,"changes"),re(X,((e,l)=>c(l,`(cell: ${e}${Pe}) => `+e,`Takes a ${e} Cell value and returns another`))),s(null,t,"DoRollback",Ve,"IdOrNull",Ae,"Store",me),U(0,a,Ae,Ae,sl(0,6)),U(2,a,Ae,Q,sl(0,7),"tablesAndValuesJson: "+Ae,"tablesAndValuesJson"),U(7,a,Fe,"Return",Ue,ve,"actions, doRollback","<Return>"),U(7,a,"start"+Be,Q,_e),U(7,a,"finish"+Be,Q,Ze,ye,"doRollback");const te=G(q,Q);return _("Start"+Be,te,Le+" just before the start of the "+Fe,a,a,0),_("WillFinish"+Be,te,Le+" just before "+Qe,a,a,0),_("DidFinish"+Be,te,Le+" just after "+Qe,a,a,0),U(7,a,"call"+$,Q,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,a,$,Q,"Remove a listener that was previously added to "+We,"listenerId: Id","listenerId"),B("getStore",a,"Store","store",wl[0]+" the underlying Store object"),s(1,t,"createStore"),s(1,Z,Q,`create${Q} as create${Q}Decl`,te),R("store",["createStore()",...K]),V("fluent","actions: () => Store",["actions();",`return ${q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),R(q,["{",...z(1),"}"]),[d(...k(0),...S(),xe+" interface "+Q+" {",...z(0),"}",a,Ll(`Creates a ${Q} object`),xe+" function create"+Q+"(): "+Q+";"),d(...k(1),xe+" const create"+Q+": typeof create"+Q+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),Y,ee]},Zl=e=>c+e,Ql=e=>jl(Zl(e),Zl(e)+we),ql="debugIds?: boolean",Kl="debugIds={debugIds}",Xl="then"+Te,Yl="Parameter",et=": (parameter: "+Yl+", store: Store) => ",lt="const contextValue = useContext(Context);",tt=", based on a parameter",at=": ",nt="<"+Yl+",>",dt=Yl+"ized"+he+"<"+Yl+">",ot="rowId",st="rowId={rowId}",rt=", separator, debugIds",It="separator?: ReactElement | string",$t="then?: (store: Store",ct=jl($t+")"+Ke,Xl),ut="then, then"+we,it=ot+at+Ve,bt="View",pt=(e,...l)=>jl(...l,ke+": "+e,ke+Te,"mutator?: boolean"),Ct=(...e)=>jl(...e,ke,ke+we,"mutator"),ht=(e,l,n,d,r)=>{const[I,c,u,V,R,k,S,P]=Ml(),[O,E,N]=zl(e,l,R),D=`./${Nl(n)}.d`,L=`./${Nl(n)}-ui-react.d`,j="tinybase/ui-react",G=Nl(n,1),H=Nl(G),J=G+"Or"+G+Ve,z=H+"Or"+G+Ve,B=H+`={${H}}`,U=oe(),_=(e,l,t,n,d,o=a)=>(c(1,L,e+" as "+e+"Decl"),Pl(U,e,[l,t,n,d,o])),Z=(e,l,t,n,d,o=a)=>_("use"+e,l,t,n,d,o),Q=(e,l,t,n,d=a,o=a,s=a,r=a,I=a)=>(c(1,j,`use${l} as use${l}Core`),Z(e,jl(d,ee,r),t,ae+`(${z}, use${l}Core, [`+(o||a)+(I?"], ["+I:a)+"]);",n,s)),q=(e,l,t,a)=>_(e,l,1,t,a),K=(e=0)=>Ie(U,(([l,t,n,d,o],s)=>{const r=e?[xe+` const ${s}: typeof ${s}Decl = ${o}(${l}): ${1==t?"any":t} =>`,n]:[xe+` function ${s}${o}(${l}): ${1==t?"ComponentReturnType":t};`];return e||F(r,Ll(d)),W(r,a),r}));c(null,t,Ve,"Store",he,Yl+"ized"+he),c(0,j,"ComponentReturnType"),c(1,j,"useCellIds"),c(null,j,"ExtraProps"),c(0,D,G);const X=u(J,G+" | "+Ve,`Used when you need to refer to a ${G} in a React hook or component`),Y=u(De+Ne,Hl(H+Se+G,H+`ById?: {[${H}Id: Id]: ${G}}`),`Used with the ${De} component, so that a `+G+" can be passed into the context of an application");c(0,"react","ReactElement","ComponentType"),c(1,"react","React"),c(1,L,X,Y);const ee=z+Se+X;R("{createContext, useContext, useMemo}","React"),R("Context",`createContext<[${G}?, {[${H}Id: Id]: ${G}}?]>([])`),Z("Create"+G,`create: () => ${G}, create`+Te,G,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${G} within a React application with convenient memoization`);const te=Z(G,"id?: Id",G+Pe,["{",lt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${G} from within a ${De} component context`),ae=V("useHook",z+`: ${X} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${H} = ${te}(${z} as Id);`,`return hook(...preParams, ((${z} == null || typeof ${z} == 'string')`,`? ${H} : ${z})?.getStore(), ...postParams)`]),ne=V("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),de=V("wrap",jl("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),re=V("useCustomOrDefaultCellIds",jl("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${z}?: ${X} | undefined`),[`const defaultCellIds = ${ae}(${z}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),$e=R("NullComponent","() => null");if(!le(e)){const[e,l,n,r,I,y,v,x,R,k,S,P,N,j,J,z,W,F,U,_]=d;c(null,D,e,l,n,I,y,v,x,R,k,S,P,N,j,J,z,W,U,F),c(0,D,r),c(1,D,G),c(null,t,b,"IdOrNull");const Z=V("tableView",`{${H}, rowComponent, getRowComponentProps, customCellIds`+rt+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${de}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",st,"customCellIds={customCellIds}",B,Kl,"/>","))",rt,", tableId,",");"]),K=V("getDefaultTableComponent","tableId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${l}TableView : `)))+$e),X=V("getDefaultCellComponent","tableId: Id, cellId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${M(E(e,((e,t,a,n,d)=>`cellId == ${n} ? `+l+d+"CellView : ")))+$e} : `)))+$e);Q(i+C,i+C,o,sl(1,0,0,1)+Ce),Q(C,C,e,sl(1,0)+Ce);const Y=Q(h,h,n+ze,Il(p,We)+Ce);Q(Me+C+he,Me+C+he,dt,sl(1,9)+tt,jl(Zl(C)+et+l,Zl(C)+Te),Ql(C),nt,jl($t,`tables: ${l})`+Ke,Xl),ut),Q(fe+C+he,fe+C+he,he,sl(1,12),a,a,a,ct,ut);const ee=u(w+Ne,Hl("tableId?: TId","rowId: Id","cellId?: CId",H+Se+G,ql),cl(be+w),`<TId extends ${n}, CId extends ${r}<TId>>`),le=u(m+Ne,Hl("tableId?: TId","rowId: Id",H+Se+G,"cellComponents?: {readonly [CId in "+r+`<TId>]?: ComponentType<${ee}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${r}<TId>) => ExtraProps`,`customCellIds?: ${r}<TId>[]`,It,ql),cl(be+m),`<TId extends ${n}>`),te=u(p+Ne,Hl("tableId?: TId",H+Se+G,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",It,ql),cl(be+p),`<TId extends ${n}>`),ae=u("Sorted"+p+Ne,Hl("tableId?: TId","cellId?: "+r+"<TId>","descending?: boolean","offset?: number","limit?: number",H+Se+G,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",It,ql),cl(be+"sorted "+p),`<TId extends ${n}>`),oe=u(C+Ne,Hl(H+Se+G,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${te}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,It,ql),cl(ol(1,1)));c(1,L,oe,te,ae,le,ee),q(C+bt,"{"+H+", tableComponents, getTableComponentProps"+rt+"}: "+oe,[de+`(${Y}(${H}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+K+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",B,Kl,"/>;","}), separator)"],sl(1,13)+Ce),O(((e,l,t)=>{const[n,d,r,I,$]=se(_,e);c(null,D,n,d,r,I,$),Q(i+l+p,i+p,o,hl(e,0,1)+Ce,a,t),Q(l+p,p,n,hl(e)+Ce,a,t),Q(l+p+T,p+T,b,Il(w,"the whole of "+pl(e))+Ce,a,t),Q(l+m+ge,m+ge,s,"Gets the number of Rows in "+pl(e)+Ce,a,t);const u=Q(l+g,g,b,Il(m,pl(e))+Ce,a,t),C=Q(l+f,f,b,Il(m,pl(e),1)+Ce,"cellId?: "+$+", descending?: boolean, offset?: number, limit?: number",t+", cellId, descending, offset, limit");Q(i+l+m,i+m,o,ml(e,0,1)+Ce,it,jl(t,ot)),Q(l+m,m,r,ml(e)+Ce,it,jl(t,ot)),Q(l+T,T,$+ze,Il(w,Cl(e))+Ce,it,jl(t,ot)),Q(Me+l+p+he,Me+p+he,dt,hl(e,9)+tt,jl(Zl(p)+et+d,Zl(p)+Te),jl(t,Ql(p)),nt,jl($t,`table: ${d})`+Ke,Xl),ut),Q(fe+l+p+he,fe+p+he,he,hl(e,12),a,t,a,ct,ut),Q(Me+l+m+he,Me+m+he,dt,ml(e,9)+tt,jl(it,Zl(m)+et+I,Zl(m)+Te),jl(t,ot,Ql(m)),nt,jl($t,`row: ${I})`+Ke,Xl),ut),Q("Add"+l+m+he,"Add"+m+he,dt,ml(e,10)+tt,jl(Zl(m)+et+I,Zl(m)+Te),jl(t,Ql(m)),nt,"then?: ("+jl(it+Pe,"store: Store","row: "+I+")"+Ke,"then"+Te)+", reuseRowIds?: boolean",ut+", reuseRowIds"),Q(Me+l+Ee+m+he,Me+Ee+m+he,dt,ml(e,11)+tt,jl(it,Zl(Ee+m)+et+I,Zl(Ee+m)+Te),jl(t,ot,Ql(Ee+m)),nt,jl($t,`partialRow: ${I})`+Ke,Xl),ut),Q(fe+l+m+he,fe+m+he,he,ml(e,12),it,jl(t,ot),a,ct,ut);const h=q(l+m+bt,"{rowId, "+H+", cellComponents, getCellComponentProps, customCellIds"+rt+`}: ${le}<'${e}'>`,[de+`(${re}(customCellIds, `+t+`, rowId, ${H}).map((cellId: ${$}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+X+`(${t}, cellId)) as React.ComponentType<CellProps<typeof `+t+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${t}}`,st,"cellId={cellId}",B,Kl,"/>;","})"+rt+", rowId)"],ml(e,13)+Ce);q(l+"Sorted"+p+bt,"{cellId, descending, offset, limit, ...props}: "+ae+`<'${e}'>`,Z+"(props, "+C+`(cellId, descending, offset, limit, props.${H}), ${t}, ${h});`,hl(e,13)+", sorted"+Ce),q(l+p+bt,`props: ${te}<'${e}'>`,Z+"(props, "+u+`(props.${H}), ${t}, ${h});`,hl(e,13)+Ce),E(e,((n,d,s,r,I)=>{const $="Map"+Nl(d,1);c(0,D,$),c(1,D,$),Q(i+l+I+p+w,i+p+w,o,`Gets ${dl(1)}the '${n}' Cell anywhere in `+pl(e)+Ce,a,jl(t,r)),Q(i+l+I+w,i+w,o,gl(e,n,0,1)+Ce,it,jl(t,ot,r));const u=Q(l+I+w,w,d+(A(s)?Pe:a),gl(e,n)+Ce,it,jl(t,ot,r));Q(Me+l+I+w+he,Me+w+he,dt,gl(e,n,9)+tt,jl(it,Zl(w)+et+d+" | "+$,Zl(w)+Te),jl(t,ot,r,Ql(w)),nt,jl($t,`cell: ${d} | ${$})`+Ke,Xl),ut),Q(fe+l+I+w+he,fe+w+he,he,gl(e,n,12),jl(it,"forceDel?: boolean"),jl(t,ot,r,"forceDel"),a,ct,ut),q(l+I+w+bt,`{rowId, ${H}, debugIds}: `+ee+`<'${e}', '${n}'>`,[de+`('' + ${u}(rowId, `+H+`) ?? '', undefined, debugIds, ${r})`],gl(e,n,13)+Ce)}))}));const Ie=M(O((e=>se(_,e)?.[4]??a))," | ");Q(i+C+$,i+C+$,qe,sl(1,8,0,1)+" changes",pt(I),Ct()),Q(C+$,C+$,qe,sl(1,8)+" changes",pt(y),Ct()),Q(h+$,h+$,qe,bl(2,0,1),pt(v),Ct()),Q(i+p+$,i+p+$,qe,bl(3,0,0,1),pt(x,`tableId: ${n} | null`),Ct("tableId")),Q(p+$,p+$,qe,bl(3,0),pt(R,`tableId: ${n} | null`),Ct("tableId")),Q(p+T+$,p+T+$,qe,bl(14,3,1),pt(k,`tableId: ${n} | null`),Ct("tableId")),Q(i+p+w+$,i+p+w+$,qe,bl(16,3,0,1),pt(S,`tableId: ${n} | null`,`cellId: ${Ie} | null`),Ct("tableId","cellId")),Q(m+ge+$,m+ge+$,qe,bl(15,3),pt(P,`tableId: ${n} | null`),Ct("tableId")),Q(g+$,g+$,qe,bl(4,3,1),pt(N,`tableId: ${n} | null`),Ct("tableId")),Q(f+$,f+$,qe,bl(13,3,1),pt(j,`tableId: ${n} | null`,"cellId: "+Ie+Pe,"descending: boolean","offset: number","limit: number"+Pe),Ct("tableId","cellId","descending","offset","limit")),Q(i+m+$,i+m+$,qe,bl(5,3,0,1),pt(J,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(m+$,m+$,qe,bl(5,3),pt(z,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(T+$,T+$,qe,bl(6,5,1),pt(W,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(i+w+$,i+w+$,qe,bl(7,5,0,1),pt(F,`tableId: ${n} | null`,ot+": IdOrNull",`cellId: ${Ie} | null`),Ct("tableId",ot,"cellId")),Q(w+$,w+$,qe,bl(7,5),pt(U,`tableId: ${n} | null`,ot+": IdOrNull",`cellId: ${Ie} | null`),Ct("tableId",ot,"cellId"))}if(!le(l)){const[e,l,t,n,d,s,I,b]=r;c(null,D,...r),c(1,D,G);const p=V("getDefaultValueComponent","valueId: Id",M(N(((e,l,t,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+$e);Q(i+v,i+v,o,sl(2,0,0,1)+Ce),Q(v,v,e,sl(2,0)+Ce);const C=Q(x,x,t+ze,Il(y,We)+Ce);Q(Me+v+he,Me+v+he,dt,sl(2,9)+tt,jl(Zl(v)+et+l,Zl(v)+Te),Ql(v),nt,jl($t,`values: ${l})`+Ke,Xl),ut),Q(Me+Ee+v+he,Me+Ee+v+he,dt,sl(2,11)+tt,jl(Zl(Ee+v)+et+l,Zl(Ee+v)+Te),Ql(Ee+v),nt,jl($t,`partialValues: ${l})`+Ke,Xl),ut),Q(fe+v+he,fe+v+he,he,sl(2,12),a,a,a,ct,ut);const h=u(y+Ne,Hl("valueId?: VId",H+Se+G,ql),cl("a Value"),`<VId extends ${t}>`),m=u(v+Ne,Hl(H+Se+G,"valueComponents?: {readonly [VId in "+t+`]?: ComponentType<${h}<VId>>;}`,`getValueComponentProps?: (valueId: ${t}) => ExtraProps`,It,ql),cl(ol(2,1)));c(1,L,m,h),q(v+bt,"{"+H+", valueComponents, getValueComponentProps"+rt+"}: "+m,[de+`(${C}(${H}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+p+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",B,Kl,"/>;","}), separator)"],sl(2,13)+Ce),N(((e,l,t,n,d)=>{const s="Map"+Nl(l,1);c(0,D,s),c(1,D,s),Q(i+d+y,i+y,o,fl(e,0,1)+Ce,a,n);const r=Q(d+y,y,l,fl(e)+Ce,a,n);Q(Me+d+y+he,Me+y+he,dt,fl(e,9)+tt,jl(Zl(y)+et+l+" | "+s,Zl(y)+Te),jl(n,Ql(y)),nt,jl($t,`value: ${l} | ${s})`+Ke,Xl),ut),Q(fe+d+y+he,fe+y+he,he,fl(e,12),a,n,a,ct,ut),q(d+y+bt,`{${H}, debugIds}: ${h}<'${e}'>`,[de+`('' + ${r}(`+H+`) ?? '', undefined, debugIds, ${n})`],fl(e,13)+Ce)})),Q(i+v+$,i+v+$,qe,sl(2,8,0,1)+" changes",pt(n),Ct()),Q(v+$,v+$,qe,sl(2,8)+" changes",pt(d),Ct()),Q(x+$,x+$,qe,bl(10,0,1),pt(s),Ct()),Q(i+y+$,i+y+$,qe,bl(11,0,0,1),pt(I,`valueId: ${t} | null`),Ct("valueId")),Q(y+$,y+$,qe,bl(11,0),pt(b,`valueId: ${t} | null`),Ct("valueId"))}return q(De,`{${H}, ${H}ById, children}: `+Y+" & {readonly children: React.ReactNode}",["{",lt,"return (","<Context."+De,"value={useMemo(",`() => [${H} ?? contextValue[0], {...contextValue[1], ...${H}ById}],`,`[${H}, ${H}ById, contextValue],`,")}>","{children}",`</Context.${De}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[I(...k(0),...S(),...K(0)),I(...k(1),...P(),...K(1))]},mt=(e,l,t)=>{if(le(e)&&le(l))return[a,a,a,a];const[n,d,o,s]=_l(e,l,t);return[n,d,...ht(e,l,t,o,s)]},gt=JSON.parse,ft="prettier/",wt=ft+"plugins/",Tt={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},yt=Jl((e=>{const l=()=>{const l=gt(e.getTablesSchemaJson());return!le(l)||j(e.getTableIds(),(t=>{const a=e.getRowIds(t),n=oe();if(j(a,(l=>j(e.getCellIds(t,l),(a=>{const d=e.getCell(t,l,a),o=ce(n,a,(()=>[L(d),oe(),[0],0])),[s,r,[I]]=o,$=ce(r,d,(()=>0))+1;return $>I&&(o[2]=[$,d]),$e(r,d,$),o[3]++,s==L(d)})))))return l[t]={},ne(n,(([e,,[,n],d],o)=>{l[t][o]={[r]:e,...d==N(a)?{[I]:n}:{}}})),1}))?l:{}},t=()=>{const l=gt(e.getValuesSchemaJson());return le(l)&&e.forEachValue(((e,t)=>{l[e]={[r]:L(t)}})),l},a=e=>mt(l(),t(),e),n=async e=>{const l=["d.ts","ts","d.ts","tsx"],t=[];let n;try{n=(await import(ft+"standalone")).format,W(t,await import(wt+"estree"),await import(wt+"typescript"))}catch(e){n=async e=>e}return await D(J(a(e),(async(e,a)=>Ol(await n(e,{...Tt,plugins:t,filepath:"_."+l[a]})))))};return X({getStoreStats:l=>{let t=0,a=0,n=0;const d={};return e.forEachTable(((e,o)=>{t++;let s=0,r=0;const I={};o(((e,t)=>{s++;let a=0;t((()=>a++)),r+=a,l&&(I[e]={rowCells:a})})),a+=s,n+=r,l&&(d[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:t,totalRows:a,totalCells:n,totalValues:N(e.getValueIds()),jsonLength:N(e.getJson()),...l?{detail:{tables:d}}:{}}},getStoreTablesSchema:l,getStoreValuesSchema:t,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));e.createTools=yt},"object"==typeof exports&&"undefined"!=typeof module?l(exports):"function"==typeof define&&define.amd?define(["exports"],l):l((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseTools={});
1
+ var e,l;e=this,l=function(e){"use strict";const l=e=>typeof e,t="tinybase",a="",n=",",d=l(a),o=l(!0),s=l(0),r="type",I="default",$="Listener",c="get",u="add",i="Has",b="Ids",p="Table",C=p+"s",h=p+b,m="Row",g=m+b,f="Sorted"+m+b,w="Cell",T=w+b,y="Value",v=y+"s",x=y+b,V=Promise,R=isFinite,A=e=>null==e,k=(e,l,t)=>A(e)?t?.():l(e),S=e=>e==d||e==o,P=e=>l(e)==d,O=e=>Array.isArray(e),E=(e,l,t)=>e.slice(l,t),N=e=>e.length,D=async e=>V.all(e),L=e=>{const t=l(e);return S(t)||t==s&&R(e)?t:void 0},j=(e,l)=>e.every(l),G=(e,l)=>e.sort(l),H=(e,l)=>e.forEach(l),M=(e,l=a)=>e.join(l),J=(e,l)=>e.map(l),z=(e,l)=>e.filter(l),W=(e,...l)=>e.push(...l),B=e=>e.pop(),F=(e,...l)=>e.unshift(...l),U=e=>e.shift(),_=Object,Z=e=>_.getPrototypeOf(e),Q=_.entries,q=e=>!A(e)&&k(Z(e),(e=>e==_.prototype||A(Z(e))),(()=>!0)),K=_.keys,X=_.freeze,Y=(e,l)=>J(Q(e),(([e,t])=>l(t,e))),ee=e=>N(K(e)),le=e=>q(e)&&0==ee(e),te=(e,l)=>e?.has(l)??!1,ae=e=>[...e?.values()??[]],ne=(e,l)=>e?.forEach(l),de=(e,l)=>e?.delete(l),oe=e=>new Map(e),se=(e,l)=>e?.get(l),re=(e,l)=>ne(e,((e,t)=>l(t,e))),Ie=(e,l)=>J([...e?.entries()??[]],(([e,t])=>l(t,e))),$e=(e,l,t)=>A(t)?(de(e,l),e):e?.set(l,t),ce=(e,l,t,a)=>(te(e,l)||$e(e,l,t()),se(e,l)),ue=e=>e.toUpperCase(),ie=e=>e.toLowerCase(),be="a ",pe="A function for",Ce=", and registers a listener so that any changes to that result will cause a re-render",he="Callback",me="Changes",ge="Count",fe="Del",we="Deps",Te=we+"?: React.DependencyList",ye="doRollback?: DoRollback",ve="actions: () => Return, "+ye,xe="export",Ve="Id",Re="Invalid",Ae="Json",ke=ie($),Se="?: ",Pe=" | undefined",Oe="NonNullable",Ee="Partial",Ne="Props",De="Provider",Le=`Registers a ${ke} that will be called`,je="Represents",Ge="rowId: "+Ve,He="Schema",Me="Set",Je=", descending?: boolean, offset?: number, limit?: number",ze="[]",We="the Store",Be="Transaction",Fe=ie(Be),Ue="Execute a "+Fe+" to make multiple mutations",_e="Explicitly starts a "+Fe,Ze="Explicitly finishes a "+Fe,Qe="the end of the "+Fe,qe="void",Ke=" => "+qe,Xe="WhenSet",Ye=" when setting it",el=be+"string serialization of",ll=" ",tl="Gets a callback that can ",al="the ",nl=" the schema for",dl=(e=0)=>e?"the existence of ":"",ol=(e=0,l=0,t=0)=>dl(t)+`the ${vl[e]}content of`+(l?ll+We:a),sl=(e=0,l,t=0,n=0)=>wl[l]+ll+dl(n)+ol(e,1)+(t?" when setting it":a),rl=(e,l=0)=>je+` a Row when ${l?"s":"g"}etting ${ol()} the '${e}' `+p,Il=(e,l,t=0)=>`Gets ${t?"sorted, paginated":"the"} Ids of the ${e}s in `+l,$l=(e,l)=>`Calls a function for each ${e} in `+l,cl=e=>"The props passed to a component that renders "+e,ul=e=>"A function that takes "+e,il=(e,l=0,t=0)=>pe+" listening to changes to "+dl(t)+yl[e]+" in "+yl[l],bl=(e,l,t=0,n=0)=>Le+" whenever "+dl(n)+yl[e]+" in "+yl[l]+" change"+(t?a:"s"),pl=e=>`the '${e}' `+p,Cl=e=>"the specified Row in "+pl(e),hl=(e,l=0,t=0)=>wl[l]+ll+ol(0,0,t)+ll+pl(e),ml=(e,l=0,t=0)=>wl[l]+` ${ol(0,0,t)} `+Cl(e),gl=(e,l,t=0,a=0)=>wl[t]+ll+dl(a)+`the '${l}' Cell for `+Cl(e),fl=(e,l=0,t=0)=>wl[l]+ll+dl(t)+`the '${e}' Value`,wl=["Gets","Checks existence of","Sets","Deletes","Sets part of",je,"Gets "+el,"Sets "+el,Le+" whenever",tl+"set",tl+"add",tl+"set part of",tl+"delete","Renders","Gets "+el+nl,"Sets"+nl,"Deletes"+nl],Tl=[c,"has","set","del","set","forEach",u,a],yl=[We,C,al+p+ll+b,be+p,al+m+ll+b,be+m,al+w+ll+b,be+w,"invalid Cell changes",v,al+y+ll+b,be+y,"invalid Value changes",al+"sorted "+m+ll+b,al+w+ll+b+" anywhere",al+"number of Rows",be+w+" anywhere"],vl=[a,"tabular ","keyed value "],xl=e=>new Set(O(e)||A(e)?e:[e]),Vl=(e,l)=>e?.add(l),Rl=/[^A-Za-z]+/,Al=/[^A-Za-z0-9]+/,kl=/^( *)\/\*\* *(.*?) *\*\/$/gm,Sl=e=>e.includes(n),Pl=(e,l,t,a=1)=>{const n=`${l}${1==a?"":a}`;return te(e,n)?Pl(e,l,t,a+1):($e(e,n,t),n)},Ol=e=>e.replace(kl,((e,l,t)=>{const a=77-N(l);return`${l}/**\n${t.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),l+" * $1\n")}${l} */`})),El=e=>e.flat(1e3),Nl=(e,l=0)=>M(J(e.split(Al),((e,t)=>(t>0||l?ue:ie)(E(e,0,1))+E(e,1)))),Dl=e=>ue(M((e&&!Rl.test(e[0])?e:" "+e).split(Al),"_")),Ll=e=>`/** ${e}. */`,jl=(...e)=>M(z(e,(e=>e)),", "),Gl=(...e)=>"{"+M(e,"; ")+"}",Hl=(...e)=>Gl(...J(e,(e=>"readonly "+e))),Ml=()=>{const e=[oe(),oe(),oe(),oe()],l=oe(),t=oe(),n=e=>{const l=e.indexOf(" as ");return-1!=l?E(e,l+4):e};return[(...e)=>M(El(e),"\n"),(l,t,...a)=>H(a,(a=>H([0,1],(n=>(l??n)==n?Vl(ce(e[n],t,xl),a):0)))),(e,t,n,d=a,o=1)=>Pl(l,e,[t,n,d,o]),(e,l,a)=>Pl(t,e,O(a)?[`(${l}) => {`,a,"}"]:[`(${l}) => ${a}`]),(e,l)=>se(t,e)===l?e:Pl(t,e,l),(l=0)=>J([...G(Ie(e[l],((e,l)=>`import {${M(G(ae(e),((e,l)=>n(e)>n(l)?1:-1)),", ")}} from '${l}';`)),((e,l)=>Sl(e)!=Sl(l)?Sl(e)?-1:1:e>l?1:-1)),a],(e=>e.replace("{React}","React"))),()=>Ie(l,(([e,l,t,n],d)=>[Ll(l),`${n?xe+" ":a}type ${d}${t} = ${e};`,a])),()=>Ie(t,((e,l)=>(e=O(e)?e:[e],W(e,B(e)+";"),[`const ${l} = ${U(e)}`,e,a])))]},Jl=(e,l)=>{const t=new WeakMap;return l=>(t.has(l)||t.set(l,e(l)),t.get(l))},zl=(e,l,t)=>[l=>Y(e,((e,a)=>l(a,Nl(a,1),t(Dl(a),`'${a}'`)))),(l,a)=>Y(e[l],((e,l)=>a(l,e[r],e[I],t(Dl(l),`'${l}'`),Nl(l,1)))),e=>Y(l,((l,a)=>e(a,l[r],l[I],t(Dl(a),`'${a}'`),Nl(a,1))))],Wl=(e,l,t,n)=>[(n,d)=>{const o=n+": "+d,s=e(C,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...t(e,((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`)))+"}"))),sl(1,5)),r=e(C+Xe,Gl(...l((e=>`'${e}'?: {[rowId: Id]: `+Gl(...t(e,((e,l)=>`'${e}'?: ${l}`)))+"}"))),sl(1,5,1)),I=e(p+Ve,"keyof "+s,"A "+p+" Id in "+We),c=`<TId extends ${I}>`,u=e(p,Oe+`<${s}[TId]>`,"A "+p+" in "+We,c),b=e(p+Xe,Oe+`<${r}[TId]>`,"A "+p+" in "+We+Ye,c),y=e(m,u+"<TId>[Id]","A "+m+" in a "+p,c),v=e(m+Xe,b+"<TId>[Id]","A "+m+" in a "+p+Ye,c),x=e(w+Ve,`Extract<keyof ${y}<TId>, Id>`,"A "+w+" Id in a "+m,c),V=e(w,Oe+`<${s}[TId]>[Id][CId]`,"A "+w+" in a "+m,`<TId extends ${I}, CId extends ${x}<TId>>`),R=e("CellIdCellArray",`CId extends ${x}<TId> ? [cellId: CId, cell: ${V}<TId, CId>] : never`,w+" Ids and types in a "+m,`<TId extends ${I}, CId = ${x}<TId>>`,0),k=e(w+he,`(...[cellId, cell]: ${R}<TId>)`+Ke,ul(be+w+" Id, and "+w),c),S=e(m+he,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Ke+") "+Ke,ul(be+m+" Id, and a "+w+" iterator"),c),P=e(p+w+he,`(cellId: ${x}<TId>, count: number) `+Ke,ul(be+w+" Id, and count of how many times it appears"),c),O=e("TableIdForEachRowArray",`TId extends ${I} ? [tableId: TId, forEachRow: (rowCallback: ${S}<TId>)${Ke}] : never`,p+" Ids and callback types",`<TId = ${I}>`,0),E=e(p+he,`(...[tableId, forEachRow]: ${O})`+Ke,ul(be+p+" Id, and a "+m+" iterator"),a),N=e("TableIdRowIdCellIdArray",`TId extends ${I} ? [tableId: TId, rowId: Id, cellId: ${x}<TId>] : never`,"Ids for GetCellChange",`<TId = ${I}>`,0),D=e("GetCellChange",`(...[tableId, rowId, cellId]: ${N}) => CellChange`,pe+" returning information about any Cell's changes during a "+Fe),L=e(i+C+$,`(${o}, hasTables: boolean)`+Ke,il(1,0,1)),j=e(C+$,`(${o}, getCellChange: ${D}${Pe})`+Ke,il(1)),G=e(h+$,`(${o})`+Ke,il(2)),H=e(i+p+$,`(${o}, tableId: ${I}, hasTable: boolean)`+Ke,il(3,0,1)),M=e(p+$,`(${o}, tableId: ${I}, getCellChange: ${D}${Pe})`+Ke,il(3)),J=e(p+T+$,`(${o}, tableId: ${I})`+Ke,il(14,3)),z=e("HasTableCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, cellId: CId, hasTableCell: boolean] : never`,"Cell args for HasTableCellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),W=e("HasTableCellListenerArgsArrayOuter",`TId extends ${I} ? `+z+"<TId> : never","Table args for HasTableCellListener",`<TId = ${I}>`,0),B=e(i+p+w+$,`(...[${n}, tableId, cellId, hasTableCell]: `+W+")"+Ke,il(16,3,1)),F=e(m+"Count"+$,`(${o}, tableId: ${I})`+Ke,il(15,3)),U=e(g+$,`(${o}, tableId: ${I})`+Ke,il(4,3)),_=e(f+$,"("+jl(o,"tableId: "+I,"cellId: Id"+Pe,"descending: boolean","offset: number","limit: number"+Pe,"sortedRowIds: Ids")+")"+Ke,il(13,3)),Z=e(i+m+$,"("+jl(""+o,"tableId: "+I,Ge,"hasRow: boolean")+")"+Ke,il(5,3,1)),Q=e(m+$,"("+jl(""+o,"tableId: "+I,Ge,`getCellChange: ${D}${Pe}`)+")"+Ke,il(5,3)),q=e(T+$,"("+jl(""+o,"tableId: "+I,Ge)+")"+Ke,il(6,5)),K=e("HasCellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, hasCell: boolean] : never`,"Cell args for HasCellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),X=e("HasCellListenerArgsArrayOuter",`TId extends ${I} ? `+K+"<TId> : never","Table args for HasCellListener",`<TId = ${I}>`,0),Y=e(i+w+$,`(...[${n}, tableId, rowId, cellId, hasCell]: `+X+")"+Ke,il(7,5,1)),ee=e("CellListenerArgsArrayInner",`CId extends ${x}<TId> ? [${o}, tableId: TId, ${Ge}, cellId: CId, newCell: ${V}<TId, CId> ${Pe}, oldCell: ${V}<TId, CId> ${Pe}, getCellChange: ${D} ${Pe}] : never`,"Cell args for CellListener",`<TId extends ${I}, CId = ${x}<TId>>`,0),le=e("CellListenerArgsArrayOuter",`TId extends ${I} ? `+ee+"<TId> : never","Table args for CellListener",`<TId = ${I}>`,0);return[s,r,I,u,b,y,v,x,V,k,S,P,E,L,j,G,H,M,J,B,F,U,_,Z,Q,q,Y,e(w+$,`(...[${n}, tableId, rowId, cellId, newCell, oldCell, getCellChange]: ${le})`+Ke,il(7,5)),e(Re+w+$,`(${o}, tableId: Id, ${Ge}, cellId: Id, invalidCells: any[])`+Ke,il(8))]},(l,t)=>{const d=l+": "+t,o=e(v,Gl(...n(((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`))),sl(2,5)),s=e(v+Xe,Gl(...n(((e,l)=>`'${e}'?: ${l}`))),sl(2,5,1)),r=e(y+Ve,"keyof "+o,"A "+y+" Id in "+We),I=e(y,Oe+`<${o}[VId]>`,"A "+y+" Id in "+We,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${I}<VId>] : never`,y+" Ids and types in "+We,`<VId = ${r}>`,0),u=e(y+he,`(...[valueId, value]: ${c})`+Ke,ul(be+y+" Id, and "+y)),b=e("GetValueChange",`(valueId: ${r}) => ValueChange`,pe+" returning information about any Value's changes during a "+Fe),p=e(i+v+$,`(${d}, hasValues: boolean)`+Ke,il(9,0,1)),C=e(v+$,`(${d}, getValueChange: ${b}${Pe})`+Ke,il(9)),h=e(x+$,`(${d})`+Ke,il(10)),m=e(i+y+$,`(${d}, valueId: ValueId, hasValue: boolean)`+Ke,il(11,0,1)),g=e("ValueListenerArgsArray",`VId extends ${r} ? [${d}, valueId: VId, newValue: ${I}<VId> ${Pe}, oldValue: ${I}<VId> ${Pe}, getValueChange: ${b} ${Pe}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[o,s,r,I,u,p,C,h,m,e(y+$,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+g+")"+Ke,il(11)),e(Re+y+$,`(${d}, valueId: Id, invalidValues: any[])`+Ke,il(12))]},(l,t)=>e(Be+$,`(${l}: ${t})`+Ke,pe+" listening to the completion of a "+Fe)],Bl=(e,l=a,t=a)=>`store.${e}(${l})`+(t?" as "+t:a),Fl=(e,l=a)=>`fluent(() => ${Bl(e,l)})`,Ul=(e,l=a,t=a)=>`store.${e}(${l?l+", ":a}proxy(listener)${t?", "+t:a})`,_l=(e,l,n)=>{const[d,s,c,V,R,k,S,O]=Ml(),[E,N,D]=zl(e,l,R),[L,j,G]=Wl(c,E,N,D),J=oe(),z=(e=0)=>Ie(J,(([l,t,n,d,o],s)=>{const r=e?[s+`: ${o}(${l}): ${t} => ${n},`]:[s+o+`(${l}): ${t};`];return e||F(r,Ll(d)),W(r,a),r})),B=(e,l,t,n,d,o=a)=>Pl(J,e,[l,t,n,d,o]),U=(e,l,t,n,d,o=a,s=a,r=a)=>B(Tl[e]+l+(4==e?Ee:a)+t,o,n,(n==Q?Fl:Bl)(Tl[e]+(4==e?Ee:a)+t,s,e?void 0:n),d,r),_=(e,l,t,n=a,d=a,o=1,s=a)=>B(u+e+$,(n?n+", ":a)+ke+": "+l+(o?", mutator?: boolean":a),Ve,Ul(u+e+$,d,o?"mutator":a),t,s),Z=`./${Nl(n)}.d`,Q=Nl(n,1),q=Nl(Q),K=[],X=oe();let Y=[],ee=[];if(s(1,Z,Q,`create${Q} as create${Q}Decl`),le(e))s(null,t,C);else{s(0,t,"CellChange"),s(null,t,b);const[e,l,n,d,$,u,y,v,x,V,k,S,O,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ue]=L(q,Q),ie=oe();E(((e,l)=>{const t=`<'${e}'>`,a=[c(l+p,d+t,je+` the '${e}' `+p),c(l+p+Xe,$+t,je+` the '${e}' `+p+Ye),c(l+m,u+t,rl(e)),c(l+m+Xe,y+t,rl(e,1)),c(l+w+Ve,v+t,`A Cell Id for the '${e}' `+p),c(l+w+he,V+t,ul(`a Cell Id and value from a Row in the '${e}' `+p)),c(l+m+he,k+t,ul(`a Row Id from the '${e}' Table, and a Cell iterator`)),c(l+p+w+he,S+t,ul(`a Cell Id from anywhere in the '${e}' Table, and a count of how many times it appears`))];$e(ie,e,a),s(1,Z,...a)})),s(1,Z,e,l,n,v,O,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ue),Y=[e,l,n,v,D,j,G,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ie],H([[e],[o],[Q,"tables: "+l,"tables"],[Q]],(([e,l,t],n)=>U(n,a,C,e,sl(1,n),l,t))),U(0,a,h,n+ze,Il(p,We)),U(5,a,p,qe,$l(p,We),"tableCallback: "+O,"tableCallback as any"),E(((e,l,t)=>{const[n,d,s,r,I,$,c,u]=se(ie,e);H([[n],[o],[Q,"table: "+d,", table"],[Q]],(([n,d,o=a],s)=>U(s,l,p,n,hl(e,s),d,t+o))),U(0,l,p+T,b,Il(w,"the whole of "+pl(e)),a,t),U(5,l,p+w,qe,$l(p+w,"the whole of "+pl(e)),"tableCellCallback: "+u,t+", tableCellCallback as any"),U(0,l,m+ge,"number","Gets the number of Rows in the "+pl(e),a,t),U(0,l,g,b,Il(m,pl(e)),a,t),U(0,l,f,b,Il(m,pl(e),1),"cellId?: "+I+Je,t+", cellId, descending, offset, limit"),U(5,l,m,qe,$l(m,pl(e)),"rowCallback: "+c,t+", rowCallback as any"),H([[s],[o],[Q,", row: "+r,", row"],[Q],[Q,", partialRow: "+r,", partialRow"]],(([n,d=a,o=a],s)=>U(s,l,m,n,ml(e,s),Ge+d,t+", rowId"+o))),U(6,l,m,Ve+Pe,"Add a new Row to "+pl(e),"row: "+r+", reuseIds?: boolean",t+", row, reuseIds"),U(0,l,T,I+ze,Il(w,Cl(e)),Ge,t+", rowId"),U(5,l,w,qe,$l(w,Cl(e)),Ge+", cellCallback: "+$,t+", rowId, cellCallback as any"),N(e,((n,d,s,r,I)=>{const $="Map"+Nl(d,1);$e(X,d,$);const c=d+(A(s)?Pe:a);H([[c],[o],[Q,`, cell: ${d} | `+$,", cell as any"],[Q]],(([d,o=a,s=a],$)=>U($,l+I,w,d,gl(e,n,$),Ge+o,t+", rowId, "+r+s))),U(1,l+I,p+w,o,wl[1]+` the '${n}' Cell anywhere in `+pl(e),a,t+", "+r)}))})),U(0,a,C+Ae,Ae,sl(1,6)),U(2,a,C+Ae,Q,sl(1,7),"tablesJson: "+Ae,"tables"+Ae),_(i+C,D,sl(1,8,0,1)+" changes"),_(C,j,sl(1,8)+" changes"),_(h,G,bl(2,0,1)),_(i+p,J,bl(3,0,0,1),`tableId: ${n} | null`,"tableId"),_(p,z,bl(3,0),`tableId: ${n} | null`,"tableId"),_(p+T,B,bl(14,3,1),`tableId: ${n} | null`,"tableId"),_(i+p+w,F,bl(16,3,0,1),`tableId: ${n} | null, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, cellId"),_(m+ge,ee,bl(15,3),`tableId: ${n} | null`,"tableId"),_(g,le,bl(4,3,1),`tableId: ${n} | null`,"tableId"),_(f,te,bl(13,3,1),jl("tableId: TId",`cellId: ${v}<TId>`+Pe,"descending: boolean","offset: number","limit: number"+Pe),jl("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(i+m,ne,bl(5,3,0,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(m,de,bl(5,3),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(T,re,bl(6,5,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(i+w,Ie,bl(7,5,0,1),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(w,ce,bl(7,5),`tableId: ${n} | null, rowId: IdOrNull, cellId: ${M(E((e=>se(ie,e)?.[4]??a))," | ")} | null`,"tableId, rowId, cellId"),_(Re+w,ue,Le+" whenever an invalid Cell change was attempted","tableId: IdOrNull, rowId: IdOrNull, cellId: IdOrNull","tableId, rowId, cellId"),s(1,Z,...ae(X)),W(K,".set"+C+He+"({",El(E(((e,l,t)=>[`[${t}]: {`,...N(e,((e,l,t,n)=>`[${n}]: {[${R(Dl(r),`'${r}'`)}]: ${R(Dl(l),`'${l}'`)}${A(t)?a:`, [${R(Dl(I),`'${I}'`)}]: `+(P(t)?R(Dl(t),`'${t}'`):t)}},`)),"},"]))),"})")}if(le(l))s(null,t,v);else{const[e,l,n,d,$,c,u,b,p,C,h]=j(q,Q);s(1,Z,e,l,n,$,c,u,b,p,C,h),ee=[e,l,n,c,u,b,p,C],H([[e],[o],[Q,"values: "+l,"values"],[Q],[Q,"partialValues: "+l,"partialValues"]],(([e,l,t],n)=>U(n,a,v,e,sl(2,n),l,t))),U(0,a,x,n+ze,Il(y,We)),U(5,a,y,"void",$l(y,We),"valueCallback: "+$,"valueCallback as any"),D(((e,l,t,n,d)=>{const s="Map"+Nl(l,1);$e(X,l,s),H([[l],[o],[Q,`value: ${l} | `+s,", value as any"],[Q]],(([l,t,o=a],s)=>U(s,d,y,l,fl(e,s),t,n+o)))})),U(0,a,v+Ae,Ae,sl(2,6)),U(2,a,v+Ae,Q,sl(2,7),"valuesJson: "+Ae,"values"+Ae),_(i+v,c,sl(2,8,0,1)+" changes"),_(v,u,sl(2,8)+" changes"),_(x,b,bl(10,0,1)),_(i+y,p,bl(11,0,0,1),`valueId: ${n} | null`,"valueId"),_(y,C,bl(11,0),`valueId: ${n} | null`,"valueId"),_(Re+y,h,Le+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),s(1,Z,...ae(X)),s(0,t,"ValueChange"),W(K,".set"+v+He+"({",D(((e,l,t,n)=>[`[${n}]: {[${R(Dl(r),`'${r}'`)}]: ${R(Dl(l),`'${l}'`)}${A(t)?a:`, [${R(Dl(I),`'${I}'`)}]: `+(P(t)?R(Dl(t),`'${t}'`):t)}},`])),"})")}U(0,a,"Content",`[${C}, ${v}]`,sl(0,0)),U(2,a,"Content",Q,sl(0,2),`[tables, values]: [${C}, ${v}]`,"[tables, values]"),U(7,a,"applyChanges",Q,`Applies a set of ${me} to the Store`,"changes: "+me,"changes"),re(X,((e,l)=>c(l,`(cell: ${e}${Pe}) => `+e,`Takes a ${e} Cell value and returns another`))),s(null,t,"DoRollback",Ve,"IdOrNull",Ae,"Store",me),U(0,a,Ae,Ae,sl(0,6)),U(2,a,Ae,Q,sl(0,7),"tablesAndValuesJson: "+Ae,"tablesAndValuesJson"),U(7,a,Fe,"Return",Ue,ve,"actions, doRollback","<Return>"),U(7,a,"start"+Be,Q,_e),U(7,a,"finish"+Be,Q,Ze,ye,"doRollback");const te=G(q,Q);return _("Start"+Be,te,Le+" just before the start of the "+Fe,a,a,0),_("WillFinish"+Be,te,Le+" just before "+Qe,a,a,0),_("DidFinish"+Be,te,Le+" just after "+Qe,a,a,0),U(7,a,"call"+$,Q,"Manually provoke a listener to be called","listenerId: Id","listenerId"),U(3,a,$,Q,"Remove a listener that was previously added to "+We,"listenerId: Id","listenerId"),B("getStore",a,"Store","store",wl[0]+" the underlying Store object"),s(1,t,"createStore"),s(1,Z,Q,`create${Q} as create${Q}Decl`,te),R("store",["createStore()",...K]),V("fluent","actions: () => Store",["actions();",`return ${q};`]),V("proxy","listener: any",`(_: Store, ...params: any[]) => listener(${q}, ...params)`),R(q,["{",...z(1),"}"]),[d(...k(0),...S(),xe+" interface "+Q+" {",...z(0),"}",a,Ll(`Creates a ${Q} object`),xe+" function create"+Q+"(): "+Q+";"),d(...k(1),xe+" const create"+Q+": typeof create"+Q+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),Y,ee]},Zl=e=>c+e,Ql=e=>jl(Zl(e),Zl(e)+we),ql="debugIds?: boolean",Kl="debugIds={debugIds}",Xl="then"+Te,Yl="Parameter",et=": (parameter: "+Yl+", store: Store) => ",lt="const contextValue = useContext(Context);",tt=", based on a parameter",at=": ",nt="<"+Yl+",>",dt=Yl+"ized"+he+"<"+Yl+">",ot="rowId",st="rowId={rowId}",rt=", separator, debugIds",It="separator?: ReactElement | string",$t="then?: (store: Store",ct=jl($t+")"+Ke,Xl),ut="then, then"+we,it=ot+at+Ve,bt="View",pt=(e,...l)=>jl(...l,ke+": "+e,ke+Te,"mutator?: boolean"),Ct=(...e)=>jl(...e,ke,ke+we,"mutator"),ht=(e,l,n,d,r)=>{const[I,c,u,V,R,k,S,P]=Ml(),[O,E,N]=zl(e,l,R),D=`./${Nl(n)}.d`,L=`./${Nl(n)}-ui-react.d`,j="tinybase/ui-react",G=Nl(n,1),H=Nl(G),J=G+"Or"+G+Ve,z=H+"Or"+G+Ve,B=H+`={${H}}`,U=oe(),_=(e,l,t,n,d,o=a)=>(c(1,L,e+" as "+e+"Decl"),Pl(U,e,[l,t,n,d,o])),Z=(e,l,t,n,d,o=a)=>_("use"+e,l,t,n,d,o),Q=(e,l,t,n,d=a,o=a,s=a,r=a,I=a)=>(c(1,j,`use${l} as use${l}Core`),Z(e,jl(d,ee,r),t,ae+`(${z}, use${l}Core, [`+(o||a)+(I?"], ["+I:a)+"]);",n,s)),q=(e,l,t,a)=>_(e,l,1,t,a),K=(e=0)=>Ie(U,(([l,t,n,d,o],s)=>{const r=e?[xe+` const ${s}: typeof ${s}Decl = ${o}(${l}): ${1==t?"any":t} =>`,n]:[xe+` function ${s}${o}(${l}): ${1==t?"ComponentReturnType":t};`];return e||F(r,Ll(d)),W(r,a),r}));c(null,t,Ve,"Store",he,Yl+"ized"+he),c(0,j,"ComponentReturnType"),c(1,j,"useCellIds"),c(null,j,"ExtraProps"),c(0,D,G);const X=u(J,G+" | "+Ve,`Used when you need to refer to a ${G} in a React hook or component`),Y=u(De+Ne,Hl(H+Se+G,H+`ById?: {[${H}Id: Id]: ${G}}`),`Used with the ${De} component, so that a `+G+" can be passed into the context of an application");c(0,"react","ReactElement","ComponentType"),c(1,"react","React"),c(1,L,X,Y);const ee=z+Se+X;R("{createContext, useContext, useMemo}","React"),R("Context",`createContext<[${G}?, {[${H}Id: Id]: ${G}}?]>([])`),Z("Create"+G,`create: () => ${G}, create`+Te,G,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${G} within a React application with convenient memoization`);const te=Z(G,"id?: Id",G+Pe,["{",lt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${G} from within a ${De} component context`),ae=V("useHook",z+`: ${X} | undefined, hook: (...params: any[]) => any, preParams: any[], postParams: any[] = []`,[`const ${H} = ${te}(${z} as Id);`,`return hook(...preParams, ((${z} == null || typeof ${z} == 'string')`,`? ${H} : ${z})?.getStore(), ...postParams)`]),ne=V("getProps","getProps: ((id: any) => ExtraProps) | undefined, id: Id","(getProps == null) ? ({} as ExtraProps) : getProps(id)"),de=V("wrap",jl("children: any","separator?: any","encloseWithId?: boolean","id?: Id"),["const separated = separator==null || !Array.isArray(children)"," ? children"," : children.map((child, c) => (c > 0 ? [separator, child] : child));","return encloseWithId ? [id, ':{', separated, '}'] : separated;"]),re=V("useCustomOrDefaultCellIds",jl("customCellIds: Ids | undefined","tableId: Id","rowId: Id",`${z}?: ${X} | undefined`),[`const defaultCellIds = ${ae}(${z}, useCellIds, [tableId, rowId]);`,"return customCellIds ?? defaultCellIds;"]),$e=R("NullComponent","() => null");if(!le(e)){const[e,l,n,r,I,y,v,x,R,k,S,P,N,j,J,z,W,F,U,_]=d;c(null,D,e,l,n,I,y,v,x,R,k,S,P,N,j,J,z,W,U,F),c(0,D,r),c(1,D,G),c(null,t,b,"IdOrNull");const Z=V("tableView",`{${H}, rowComponent, getRowComponentProps, customCellIds`+rt+"}: any, rowIds: Ids, tableId: Id, defaultRowComponent: React.ComponentType<any>",["const Row = rowComponent ?? defaultRowComponent;",`return ${de}(rowIds.map((rowId) => (`,"<Row","{..."+ne+"(getRowComponentProps, rowId)}","key={rowId}","tableId={tableId}",st,"customCellIds={customCellIds}",B,Kl,"/>","))",rt,", tableId,",");"]),K=V("getDefaultTableComponent","tableId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${l}TableView : `)))+$e),X=V("getDefaultCellComponent","tableId: Id, cellId: Id",M(O(((e,l,t)=>`tableId == ${t} ? ${M(E(e,((e,t,a,n,d)=>`cellId == ${n} ? `+l+d+"CellView : ")))+$e} : `)))+$e);Q(i+C,i+C,o,sl(1,0,0,1)+Ce),Q(C,C,e,sl(1,0)+Ce);const Y=Q(h,h,n+ze,Il(p,We)+Ce);Q(Me+C+he,Me+C+he,dt,sl(1,9)+tt,jl(Zl(C)+et+l,Zl(C)+Te),Ql(C),nt,jl($t,`tables: ${l})`+Ke,Xl),ut),Q(fe+C+he,fe+C+he,he,sl(1,12),a,a,a,ct,ut);const ee=u(w+Ne,Hl("tableId?: TId","rowId: Id","cellId?: CId",H+Se+G,ql),cl(be+w),`<TId extends ${n}, CId extends ${r}<TId>>`),le=u(m+Ne,Hl("tableId?: TId","rowId: Id",H+Se+G,"cellComponents?: {readonly [CId in "+r+`<TId>]?: ComponentType<${ee}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${r}<TId>) => ExtraProps`,`customCellIds?: ${r}<TId>[]`,It,ql),cl(be+m),`<TId extends ${n}>`),te=u(p+Ne,Hl("tableId?: TId",H+Se+G,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",It,ql),cl(be+p),`<TId extends ${n}>`),ae=u("Sorted"+p+Ne,Hl("tableId?: TId","cellId?: "+r+"<TId>","descending?: boolean","offset?: number","limit?: number",H+Se+G,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",It,ql),cl(be+"sorted "+p),`<TId extends ${n}>`),oe=u(C+Ne,Hl(H+Se+G,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${te}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,It,ql),cl(ol(1,1)));c(1,L,oe,te,ae,le,ee),q(C+bt,"{"+H+", tableComponents, getTableComponentProps"+rt+"}: "+oe,[de+`(${Y}(${H}).map((tableId) => {`,"const Table = (tableComponents?.[tableId] ?? "+K+"(tableId)) as React.ComponentType<TableProps<typeof tableId>>;","return <Table",`{...${ne}(getTableComponentProps, tableId)}`,"tableId={tableId}","key={tableId}",B,Kl,"/>;","}), separator)"],sl(1,13)+Ce),O(((e,l,t)=>{const[n,d,r,I,$]=se(_,e);c(null,D,n,d,r,I,$),Q(i+l+p,i+p,o,hl(e,0,1)+Ce,a,t),Q(l+p,p,n,hl(e)+Ce,a,t),Q(l+p+T,p+T,b,Il(w,"the whole of "+pl(e))+Ce,a,t),Q(l+m+ge,m+ge,s,"Gets the number of Rows in "+pl(e)+Ce,a,t);const u=Q(l+g,g,b,Il(m,pl(e))+Ce,a,t),C=Q(l+f,f,b,Il(m,pl(e),1)+Ce,"cellId?: "+$+", descending?: boolean, offset?: number, limit?: number",t+", cellId, descending, offset, limit");Q(i+l+m,i+m,o,ml(e,0,1)+Ce,it,jl(t,ot)),Q(l+m,m,r,ml(e)+Ce,it,jl(t,ot)),Q(l+T,T,$+ze,Il(w,Cl(e))+Ce,it,jl(t,ot)),Q(Me+l+p+he,Me+p+he,dt,hl(e,9)+tt,jl(Zl(p)+et+d,Zl(p)+Te),jl(t,Ql(p)),nt,jl($t,`table: ${d})`+Ke,Xl),ut),Q(fe+l+p+he,fe+p+he,he,hl(e,12),a,t,a,ct,ut),Q(Me+l+m+he,Me+m+he,dt,ml(e,9)+tt,jl(it,Zl(m)+et+I,Zl(m)+Te),jl(t,ot,Ql(m)),nt,jl($t,`row: ${I})`+Ke,Xl),ut),Q("Add"+l+m+he,"Add"+m+he,dt,ml(e,10)+tt,jl(Zl(m)+et+I,Zl(m)+Te),jl(t,Ql(m)),nt,"then?: ("+jl(it+Pe,"store: Store","row: "+I+")"+Ke,"then"+Te)+", reuseRowIds?: boolean",ut+", reuseRowIds"),Q(Me+l+Ee+m+he,Me+Ee+m+he,dt,ml(e,11)+tt,jl(it,Zl(Ee+m)+et+I,Zl(Ee+m)+Te),jl(t,ot,Ql(Ee+m)),nt,jl($t,`partialRow: ${I})`+Ke,Xl),ut),Q(fe+l+m+he,fe+m+he,he,ml(e,12),it,jl(t,ot),a,ct,ut);const h=q(l+m+bt,"{rowId, "+H+", cellComponents, getCellComponentProps, customCellIds"+rt+`}: ${le}<'${e}'>`,[de+`(${re}(customCellIds, `+t+`, rowId, ${H}).map((cellId: ${$}) => {`,"const Cell = (cellComponents?.[cellId] ?? "+X+`(${t}, cellId)) as React.ComponentType<CellProps<typeof `+t+", typeof cellId>>;","return <Cell",`{...${ne}(getCellComponentProps, cellId)} `,"key={cellId}",`tableId={${t}}`,st,"cellId={cellId}",B,Kl,"/>;","})"+rt+", rowId)"],ml(e,13)+Ce);q(l+"Sorted"+p+bt,"{cellId, descending, offset, limit, ...props}: "+ae+`<'${e}'>`,Z+"(props, "+C+`(cellId, descending, offset, limit, props.${H}), ${t}, ${h});`,hl(e,13)+", sorted"+Ce),q(l+p+bt,`props: ${te}<'${e}'>`,Z+"(props, "+u+`(props.${H}), ${t}, ${h});`,hl(e,13)+Ce),E(e,((n,d,s,r,I)=>{const $="Map"+Nl(d,1);c(0,D,$),c(1,D,$),Q(i+l+I+p+w,i+p+w,o,`Gets ${dl(1)}the '${n}' Cell anywhere in `+pl(e)+Ce,a,jl(t,r)),Q(i+l+I+w,i+w,o,gl(e,n,0,1)+Ce,it,jl(t,ot,r));const u=Q(l+I+w,w,d+(A(s)?Pe:a),gl(e,n)+Ce,it,jl(t,ot,r));Q(Me+l+I+w+he,Me+w+he,dt,gl(e,n,9)+tt,jl(it,Zl(w)+et+d+" | "+$,Zl(w)+Te),jl(t,ot,r,Ql(w)),nt,jl($t,`cell: ${d} | ${$})`+Ke,Xl),ut),Q(fe+l+I+w+he,fe+w+he,he,gl(e,n,12),jl(it,"forceDel?: boolean"),jl(t,ot,r,"forceDel"),a,ct,ut),q(l+I+w+bt,`{rowId, ${H}, debugIds}: `+ee+`<'${e}', '${n}'>`,[de+`('' + ${u}(rowId, `+H+`) ?? '', undefined, debugIds, ${r})`],gl(e,n,13)+Ce)}))}));const Ie=M(O((e=>se(_,e)?.[4]??a))," | ");Q(i+C+$,i+C+$,qe,sl(1,8,0,1)+" changes",pt(I),Ct()),Q(C+$,C+$,qe,sl(1,8)+" changes",pt(y),Ct()),Q(h+$,h+$,qe,bl(2,0,1),pt(v),Ct()),Q(i+p+$,i+p+$,qe,bl(3,0,0,1),pt(x,`tableId: ${n} | null`),Ct("tableId")),Q(p+$,p+$,qe,bl(3,0),pt(R,`tableId: ${n} | null`),Ct("tableId")),Q(p+T+$,p+T+$,qe,bl(14,3,1),pt(k,`tableId: ${n} | null`),Ct("tableId")),Q(i+p+w+$,i+p+w+$,qe,bl(16,3,0,1),pt(S,`tableId: ${n} | null`,`cellId: ${Ie} | null`),Ct("tableId","cellId")),Q(m+ge+$,m+ge+$,qe,bl(15,3),pt(P,`tableId: ${n} | null`),Ct("tableId")),Q(g+$,g+$,qe,bl(4,3,1),pt(N,`tableId: ${n} | null`),Ct("tableId")),Q(f+$,f+$,qe,bl(13,3,1),pt(j,`tableId: ${n} | null`,"cellId: "+Ie+Pe,"descending: boolean","offset: number","limit: number"+Pe),Ct("tableId","cellId","descending","offset","limit")),Q(i+m+$,i+m+$,qe,bl(5,3,0,1),pt(J,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(m+$,m+$,qe,bl(5,3),pt(z,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(T+$,T+$,qe,bl(6,5,1),pt(W,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(i+w+$,i+w+$,qe,bl(7,5,0,1),pt(F,`tableId: ${n} | null`,ot+": IdOrNull",`cellId: ${Ie} | null`),Ct("tableId",ot,"cellId")),Q(w+$,w+$,qe,bl(7,5),pt(U,`tableId: ${n} | null`,ot+": IdOrNull",`cellId: ${Ie} | null`),Ct("tableId",ot,"cellId"))}if(!le(l)){const[e,l,t,n,d,s,I,b]=r;c(null,D,...r),c(1,D,G);const p=V("getDefaultValueComponent","valueId: Id",M(N(((e,l,t,a,n)=>`valueId == ${a} ? `+n+"ValueView : ")))+$e);Q(i+v,i+v,o,sl(2,0,0,1)+Ce),Q(v,v,e,sl(2,0)+Ce);const C=Q(x,x,t+ze,Il(y,We)+Ce);Q(Me+v+he,Me+v+he,dt,sl(2,9)+tt,jl(Zl(v)+et+l,Zl(v)+Te),Ql(v),nt,jl($t,`values: ${l})`+Ke,Xl),ut),Q(Me+Ee+v+he,Me+Ee+v+he,dt,sl(2,11)+tt,jl(Zl(Ee+v)+et+l,Zl(Ee+v)+Te),Ql(Ee+v),nt,jl($t,`partialValues: ${l})`+Ke,Xl),ut),Q(fe+v+he,fe+v+he,he,sl(2,12),a,a,a,ct,ut);const h=u(y+Ne,Hl("valueId?: VId",H+Se+G,ql),cl("a Value"),`<VId extends ${t}>`),m=u(v+Ne,Hl(H+Se+G,"valueComponents?: {readonly [VId in "+t+`]?: ComponentType<${h}<VId>>;}`,`getValueComponentProps?: (valueId: ${t}) => ExtraProps`,It,ql),cl(ol(2,1)));c(1,L,m,h),q(v+bt,"{"+H+", valueComponents, getValueComponentProps"+rt+"}: "+m,[de+`(${C}(${H}).map((valueId) => {`,"const Value = valueComponents?.[valueId] ?? "+p+"(valueId);","return <Value",`{...${ne}(getValueComponentProps, valueId)}`,"key={valueId}",B,Kl,"/>;","}), separator)"],sl(2,13)+Ce),N(((e,l,t,n,d)=>{const s="Map"+Nl(l,1);c(0,D,s),c(1,D,s),Q(i+d+y,i+y,o,fl(e,0,1)+Ce,a,n);const r=Q(d+y,y,l,fl(e)+Ce,a,n);Q(Me+d+y+he,Me+y+he,dt,fl(e,9)+tt,jl(Zl(y)+et+l+" | "+s,Zl(y)+Te),jl(n,Ql(y)),nt,jl($t,`value: ${l} | ${s})`+Ke,Xl),ut),Q(fe+d+y+he,fe+y+he,he,fl(e,12),a,n,a,ct,ut),q(d+y+bt,`{${H}, debugIds}: ${h}<'${e}'>`,[de+`('' + ${r}(`+H+`) ?? '', undefined, debugIds, ${n})`],fl(e,13)+Ce)})),Q(i+v+$,i+v+$,qe,sl(2,8,0,1)+" changes",pt(n),Ct()),Q(v+$,v+$,qe,sl(2,8)+" changes",pt(d),Ct()),Q(x+$,x+$,qe,bl(10,0,1),pt(s),Ct()),Q(i+y+$,i+y+$,qe,bl(11,0,0,1),pt(I,`valueId: ${t} | null`),Ct("valueId")),Q(y+$,y+$,qe,bl(11,0),pt(b,`valueId: ${t} | null`),Ct("valueId"))}return q(De,`{${H}, ${H}ById, children}: `+Y+" & {readonly children: React.ReactNode}",["{",lt,"return (","<Context."+De,"value={useMemo(",`() => [${H} ?? contextValue[0], {...contextValue[1], ...${H}ById}],`,`[${H}, ${H}ById, contextValue],`,")}>","{children}",`</Context.${De}>`,");","}"],"Wraps part of an application in a context that provides default objects to be used by hooks and components within"),[I(...k(0),...S(),...K(0)),I(...k(1),...P(),...K(1))]},mt=(e,l,t)=>{if(le(e)&&le(l))return[a,a,a,a];const[n,d,o,s]=_l(e,l,t);return[n,d,...ht(e,l,t,o,s)]},gt=JSON.parse,ft="prettier/",wt=ft+"plugins/",Tt={parser:"typescript",singleQuote:!0,trailingComma:"all",bracketSpacing:!1,jsdocSingleLineComment:!1},yt=Jl((e=>{const l=()=>{const l=gt(e.getTablesSchemaJson());return!le(l)||j(e.getTableIds(),(t=>{const a=e.getRowIds(t),n=oe();if(j(a,(l=>j(e.getCellIds(t,l),(a=>{const d=e.getCell(t,l,a),o=ce(n,a,(()=>[L(d),oe(),[0],0])),[s,r,[I]]=o,$=ce(r,d,(()=>0))+1;return $>I&&(o[2]=[$,d]),$e(r,d,$),o[3]++,s==L(d)})))))return l[t]={},ne(n,(([e,,[,n],d],o)=>{l[t][o]={[r]:e,...d==N(a)?{[I]:n}:{}}})),1}))?l:{}},t=()=>{const l=gt(e.getValuesSchemaJson());return le(l)&&e.forEachValue(((e,t)=>{l[e]={[r]:L(t)}})),l},a=e=>mt(l(),t(),e),n=async e=>{const l=["d.ts","ts","d.ts","tsx"],t=[];let n;try{n=(await import(ft+"standalone")).format,W(t,await import(wt+"estree"),await import(wt+"typescript"))}catch{n=async e=>e}return await D(J(a(e),(async(e,a)=>Ol(await n(e,{...Tt,plugins:t,filepath:"_."+l[a]})))))};return X({getStoreStats:l=>{let t=0,a=0,n=0;const d={};return e.forEachTable(((e,o)=>{t++;let s=0,r=0;const I={};o(((e,t)=>{s++;let a=0;t((()=>a++)),r+=a,l&&(I[e]={rowCells:a})})),a+=s,n+=r,l&&(d[e]={tableRows:s,tableCells:r,rows:I})})),{totalTables:t,totalRows:a,totalCells:n,totalValues:N(e.getValueIds()),jsonLength:N(e.getJson()),...l?{detail:{tables:d}}:{}}},getStoreTablesSchema:l,getStoreValuesSchema:t,getStoreApi:a,getPrettyStoreApi:n,getStore:()=>e})}));e.createTools=yt},"object"==typeof exports&&"undefined"!=typeof module?l(exports):"function"==typeof define&&define.amd?define(["exports"],l):l((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseTools={});