tinybase 5.0.0-beta.1 → 5.0.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 (313) hide show
  1. package/lib/cjs/mergeable-store.cjs +1 -0
  2. package/lib/cjs/mergeable-store.cjs.gz +0 -0
  3. package/lib/cjs/persisters/persister-automerge.cjs +1 -1
  4. package/lib/cjs/persisters/persister-automerge.cjs.gz +0 -0
  5. package/lib/cjs/persisters/persister-browser.cjs +1 -1
  6. package/lib/cjs/persisters/persister-browser.cjs.gz +0 -0
  7. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  8. package/lib/cjs/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  9. package/lib/cjs/persisters/persister-electric-sql.cjs +1 -1
  10. package/lib/cjs/persisters/persister-electric-sql.cjs.gz +0 -0
  11. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs +1 -1
  12. package/lib/cjs/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  13. package/lib/cjs/persisters/persister-expo-sqlite.cjs +1 -1
  14. package/lib/cjs/persisters/persister-expo-sqlite.cjs.gz +0 -0
  15. package/lib/cjs/persisters/persister-file.cjs +1 -1
  16. package/lib/cjs/persisters/persister-file.cjs.gz +0 -0
  17. package/lib/cjs/persisters/persister-indexed-db.cjs +1 -1
  18. package/lib/cjs/persisters/persister-indexed-db.cjs.gz +0 -0
  19. package/lib/cjs/persisters/persister-partykit-client.cjs +1 -1
  20. package/lib/cjs/persisters/persister-partykit-client.cjs.gz +0 -0
  21. package/lib/cjs/persisters/persister-partykit-server.cjs +1 -1
  22. package/lib/cjs/persisters/persister-partykit-server.cjs.gz +0 -0
  23. package/lib/cjs/persisters/persister-remote.cjs +1 -1
  24. package/lib/cjs/persisters/persister-remote.cjs.gz +0 -0
  25. package/lib/cjs/persisters/persister-sqlite-wasm.cjs +1 -1
  26. package/lib/cjs/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  27. package/lib/cjs/persisters/persister-sqlite3.cjs +1 -1
  28. package/lib/cjs/persisters/persister-sqlite3.cjs.gz +0 -0
  29. package/lib/cjs/persisters/persister-yjs.cjs +1 -1
  30. package/lib/cjs/persisters/persister-yjs.cjs.gz +0 -0
  31. package/lib/cjs/persisters.cjs +1 -1
  32. package/lib/cjs/persisters.cjs.gz +0 -0
  33. package/lib/cjs/store.cjs +1 -1
  34. package/lib/cjs/store.cjs.gz +0 -0
  35. package/lib/cjs/tinybase.cjs +1 -1
  36. package/lib/cjs/tinybase.cjs.gz +0 -0
  37. package/lib/cjs/tools.cjs +1 -1
  38. package/lib/cjs/tools.cjs.gz +0 -0
  39. package/lib/cjs/ui-react-dom-debug.cjs +1 -1
  40. package/lib/cjs/ui-react-dom-debug.cjs.gz +0 -0
  41. package/lib/cjs/ui-react-dom.cjs +1 -1
  42. package/lib/cjs/ui-react-dom.cjs.gz +0 -0
  43. package/lib/cjs-es6/mergeable-store.cjs +1 -0
  44. package/lib/cjs-es6/mergeable-store.cjs.gz +0 -0
  45. package/lib/cjs-es6/persisters/persister-automerge.cjs +1 -1
  46. package/lib/cjs-es6/persisters/persister-automerge.cjs.gz +0 -0
  47. package/lib/cjs-es6/persisters/persister-browser.cjs +1 -1
  48. package/lib/cjs-es6/persisters/persister-browser.cjs.gz +0 -0
  49. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs +1 -1
  50. package/lib/cjs-es6/persisters/persister-cr-sqlite-wasm.cjs.gz +0 -0
  51. package/lib/cjs-es6/persisters/persister-electric-sql.cjs +1 -1
  52. package/lib/cjs-es6/persisters/persister-electric-sql.cjs.gz +0 -0
  53. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs +1 -1
  54. package/lib/cjs-es6/persisters/persister-expo-sqlite-next.cjs.gz +0 -0
  55. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs +1 -1
  56. package/lib/cjs-es6/persisters/persister-expo-sqlite.cjs.gz +0 -0
  57. package/lib/cjs-es6/persisters/persister-file.cjs +1 -1
  58. package/lib/cjs-es6/persisters/persister-file.cjs.gz +0 -0
  59. package/lib/cjs-es6/persisters/persister-indexed-db.cjs +1 -1
  60. package/lib/cjs-es6/persisters/persister-indexed-db.cjs.gz +0 -0
  61. package/lib/cjs-es6/persisters/persister-partykit-client.cjs +1 -1
  62. package/lib/cjs-es6/persisters/persister-partykit-client.cjs.gz +0 -0
  63. package/lib/cjs-es6/persisters/persister-partykit-server.cjs +1 -1
  64. package/lib/cjs-es6/persisters/persister-partykit-server.cjs.gz +0 -0
  65. package/lib/cjs-es6/persisters/persister-remote.cjs +1 -1
  66. package/lib/cjs-es6/persisters/persister-remote.cjs.gz +0 -0
  67. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs +1 -1
  68. package/lib/cjs-es6/persisters/persister-sqlite-wasm.cjs.gz +0 -0
  69. package/lib/cjs-es6/persisters/persister-sqlite3.cjs +1 -1
  70. package/lib/cjs-es6/persisters/persister-sqlite3.cjs.gz +0 -0
  71. package/lib/cjs-es6/persisters/persister-yjs.cjs +1 -1
  72. package/lib/cjs-es6/persisters/persister-yjs.cjs.gz +0 -0
  73. package/lib/cjs-es6/persisters.cjs +1 -1
  74. package/lib/cjs-es6/persisters.cjs.gz +0 -0
  75. package/lib/cjs-es6/store.cjs +1 -1
  76. package/lib/cjs-es6/store.cjs.gz +0 -0
  77. package/lib/cjs-es6/tinybase.cjs +1 -1
  78. package/lib/cjs-es6/tinybase.cjs.gz +0 -0
  79. package/lib/cjs-es6/tools.cjs +1 -1
  80. package/lib/cjs-es6/tools.cjs.gz +0 -0
  81. package/lib/cjs-es6/ui-react-dom-debug.cjs +1 -1
  82. package/lib/cjs-es6/ui-react-dom-debug.cjs.gz +0 -0
  83. package/lib/cjs-es6/ui-react-dom.cjs +1 -1
  84. package/lib/cjs-es6/ui-react-dom.cjs.gz +0 -0
  85. package/lib/debug/mergeable-store.js +1863 -0
  86. package/lib/debug/persisters/persister-automerge.js +54 -53
  87. package/lib/debug/persisters/persister-browser.js +28 -18
  88. package/lib/debug/persisters/persister-cr-sqlite-wasm.js +80 -57
  89. package/lib/debug/persisters/persister-electric-sql.js +80 -57
  90. package/lib/debug/persisters/persister-expo-sqlite-next.js +80 -57
  91. package/lib/debug/persisters/persister-expo-sqlite.js +80 -57
  92. package/lib/debug/persisters/persister-file.js +27 -18
  93. package/lib/debug/persisters/persister-indexed-db.js +34 -23
  94. package/lib/debug/persisters/persister-partykit-client.js +26 -23
  95. package/lib/debug/persisters/persister-partykit-server.js +11 -21
  96. package/lib/debug/persisters/persister-remote.js +28 -18
  97. package/lib/debug/persisters/persister-sqlite-wasm.js +80 -57
  98. package/lib/debug/persisters/persister-sqlite3.js +80 -57
  99. package/lib/debug/persisters/persister-yjs.js +50 -48
  100. package/lib/debug/persisters.js +27 -18
  101. package/lib/debug/queries.js +2 -2
  102. package/lib/debug/store.js +63 -71
  103. package/lib/debug/tinybase.js +354 -90
  104. package/lib/debug/tools.js +13 -15
  105. package/lib/debug/ui-react-dom.js +115 -119
  106. package/lib/es6/mergeable-store.js +1 -0
  107. package/lib/es6/mergeable-store.js.gz +0 -0
  108. package/lib/es6/persisters/persister-automerge.js +1 -1
  109. package/lib/es6/persisters/persister-automerge.js.gz +0 -0
  110. package/lib/es6/persisters/persister-browser.js +1 -1
  111. package/lib/es6/persisters/persister-browser.js.gz +0 -0
  112. package/lib/es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  113. package/lib/es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  114. package/lib/es6/persisters/persister-electric-sql.js +1 -1
  115. package/lib/es6/persisters/persister-electric-sql.js.gz +0 -0
  116. package/lib/es6/persisters/persister-expo-sqlite-next.js +1 -1
  117. package/lib/es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  118. package/lib/es6/persisters/persister-expo-sqlite.js +1 -1
  119. package/lib/es6/persisters/persister-expo-sqlite.js.gz +0 -0
  120. package/lib/es6/persisters/persister-file.js +1 -1
  121. package/lib/es6/persisters/persister-file.js.gz +0 -0
  122. package/lib/es6/persisters/persister-indexed-db.js +1 -1
  123. package/lib/es6/persisters/persister-indexed-db.js.gz +0 -0
  124. package/lib/es6/persisters/persister-partykit-client.js +1 -1
  125. package/lib/es6/persisters/persister-partykit-client.js.gz +0 -0
  126. package/lib/es6/persisters/persister-partykit-server.js +1 -1
  127. package/lib/es6/persisters/persister-partykit-server.js.gz +0 -0
  128. package/lib/es6/persisters/persister-remote.js +1 -1
  129. package/lib/es6/persisters/persister-remote.js.gz +0 -0
  130. package/lib/es6/persisters/persister-sqlite-wasm.js +1 -1
  131. package/lib/es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  132. package/lib/es6/persisters/persister-sqlite3.js +1 -1
  133. package/lib/es6/persisters/persister-sqlite3.js.gz +0 -0
  134. package/lib/es6/persisters/persister-yjs.js +1 -1
  135. package/lib/es6/persisters/persister-yjs.js.gz +0 -0
  136. package/lib/es6/persisters.js +1 -1
  137. package/lib/es6/persisters.js.gz +0 -0
  138. package/lib/es6/store.js +1 -1
  139. package/lib/es6/store.js.gz +0 -0
  140. package/lib/es6/tinybase.js +1 -1
  141. package/lib/es6/tinybase.js.gz +0 -0
  142. package/lib/es6/tools.js +1 -1
  143. package/lib/es6/tools.js.gz +0 -0
  144. package/lib/es6/ui-react-dom-debug.js +1 -1
  145. package/lib/es6/ui-react-dom-debug.js.gz +0 -0
  146. package/lib/es6/ui-react-dom.js +1 -1
  147. package/lib/es6/ui-react-dom.js.gz +0 -0
  148. package/lib/mergeable-store.js +1 -0
  149. package/lib/mergeable-store.js.gz +0 -0
  150. package/lib/persisters/persister-automerge.js +1 -1
  151. package/lib/persisters/persister-automerge.js.gz +0 -0
  152. package/lib/persisters/persister-browser.js +1 -1
  153. package/lib/persisters/persister-browser.js.gz +0 -0
  154. package/lib/persisters/persister-cr-sqlite-wasm.js +1 -1
  155. package/lib/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  156. package/lib/persisters/persister-electric-sql.js +1 -1
  157. package/lib/persisters/persister-electric-sql.js.gz +0 -0
  158. package/lib/persisters/persister-expo-sqlite-next.js +1 -1
  159. package/lib/persisters/persister-expo-sqlite-next.js.gz +0 -0
  160. package/lib/persisters/persister-expo-sqlite.js +1 -1
  161. package/lib/persisters/persister-expo-sqlite.js.gz +0 -0
  162. package/lib/persisters/persister-file.js +1 -1
  163. package/lib/persisters/persister-file.js.gz +0 -0
  164. package/lib/persisters/persister-indexed-db.js +1 -1
  165. package/lib/persisters/persister-indexed-db.js.gz +0 -0
  166. package/lib/persisters/persister-partykit-client.js +1 -1
  167. package/lib/persisters/persister-partykit-client.js.gz +0 -0
  168. package/lib/persisters/persister-partykit-server.js +1 -1
  169. package/lib/persisters/persister-partykit-server.js.gz +0 -0
  170. package/lib/persisters/persister-remote.js +1 -1
  171. package/lib/persisters/persister-remote.js.gz +0 -0
  172. package/lib/persisters/persister-sqlite-wasm.js +1 -1
  173. package/lib/persisters/persister-sqlite-wasm.js.gz +0 -0
  174. package/lib/persisters/persister-sqlite3.js +1 -1
  175. package/lib/persisters/persister-sqlite3.js.gz +0 -0
  176. package/lib/persisters/persister-yjs.js +1 -1
  177. package/lib/persisters/persister-yjs.js.gz +0 -0
  178. package/lib/persisters.js +1 -1
  179. package/lib/persisters.js.gz +0 -0
  180. package/lib/store.js +1 -1
  181. package/lib/store.js.gz +0 -0
  182. package/lib/tinybase.js +1 -1
  183. package/lib/tinybase.js.gz +0 -0
  184. package/lib/tools.js +1 -1
  185. package/lib/tools.js.gz +0 -0
  186. package/lib/types/mergeable-store.d.ts +79 -0
  187. package/lib/types/persisters/persister-automerge.d.ts +8 -7
  188. package/lib/types/persisters/persister-browser.d.ts +2 -0
  189. package/lib/types/persisters/persister-cr-sqlite-wasm.d.ts +1 -0
  190. package/lib/types/persisters/persister-electric-sql.d.ts +1 -0
  191. package/lib/types/persisters/persister-expo-sqlite-next.d.ts +1 -0
  192. package/lib/types/persisters/persister-expo-sqlite.d.ts +1 -0
  193. package/lib/types/persisters/persister-file.d.ts +1 -0
  194. package/lib/types/persisters/persister-indexed-db.d.ts +1 -0
  195. package/lib/types/persisters/persister-partykit-client.d.ts +1 -0
  196. package/lib/types/persisters/persister-partykit-server.d.ts +12 -8
  197. package/lib/types/persisters/persister-remote.d.ts +1 -0
  198. package/lib/types/persisters/persister-sqlite-wasm.d.ts +1 -0
  199. package/lib/types/persisters/persister-sqlite3.d.ts +1 -0
  200. package/lib/types/persisters/persister-yjs.d.ts +1 -0
  201. package/lib/types/persisters.d.ts +50 -30
  202. package/lib/types/store.d.ts +241 -186
  203. package/lib/types/tinybase.d.ts +1 -0
  204. package/lib/types/tools.d.ts +2 -2
  205. package/lib/types/ui-react.d.ts +1 -0
  206. package/lib/types/with-schemas/internal/store.d.ts +4 -0
  207. package/lib/types/with-schemas/mergeable-store.d.ts +112 -0
  208. package/lib/types/with-schemas/persisters/persister-automerge.d.ts +8 -7
  209. package/lib/types/with-schemas/persisters/persister-browser.d.ts +2 -0
  210. package/lib/types/with-schemas/persisters/persister-cr-sqlite-wasm.d.ts +1 -0
  211. package/lib/types/with-schemas/persisters/persister-electric-sql.d.ts +1 -0
  212. package/lib/types/with-schemas/persisters/persister-expo-sqlite-next.d.ts +1 -0
  213. package/lib/types/with-schemas/persisters/persister-expo-sqlite.d.ts +1 -0
  214. package/lib/types/with-schemas/persisters/persister-file.d.ts +1 -0
  215. package/lib/types/with-schemas/persisters/persister-indexed-db.d.ts +1 -0
  216. package/lib/types/with-schemas/persisters/persister-partykit-client.d.ts +1 -0
  217. package/lib/types/with-schemas/persisters/persister-partykit-server.d.ts +15 -11
  218. package/lib/types/with-schemas/persisters/persister-remote.d.ts +1 -0
  219. package/lib/types/with-schemas/persisters/persister-sqlite-wasm.d.ts +1 -0
  220. package/lib/types/with-schemas/persisters/persister-sqlite3.d.ts +1 -0
  221. package/lib/types/with-schemas/persisters/persister-yjs.d.ts +1 -0
  222. package/lib/types/with-schemas/persisters.d.ts +81 -45
  223. package/lib/types/with-schemas/store.d.ts +364 -273
  224. package/lib/types/with-schemas/tinybase.d.ts +1 -0
  225. package/lib/types/with-schemas/tools.d.ts +2 -2
  226. package/lib/ui-react-dom.js +1 -1
  227. package/lib/ui-react-dom.js.gz +0 -0
  228. package/lib/umd/mergeable-store.js +1 -0
  229. package/lib/umd/mergeable-store.js.gz +0 -0
  230. package/lib/umd/persisters/persister-automerge.js +1 -1
  231. package/lib/umd/persisters/persister-automerge.js.gz +0 -0
  232. package/lib/umd/persisters/persister-browser.js +1 -1
  233. package/lib/umd/persisters/persister-browser.js.gz +0 -0
  234. package/lib/umd/persisters/persister-cr-sqlite-wasm.js +1 -1
  235. package/lib/umd/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  236. package/lib/umd/persisters/persister-electric-sql.js +1 -1
  237. package/lib/umd/persisters/persister-electric-sql.js.gz +0 -0
  238. package/lib/umd/persisters/persister-expo-sqlite-next.js +1 -1
  239. package/lib/umd/persisters/persister-expo-sqlite-next.js.gz +0 -0
  240. package/lib/umd/persisters/persister-expo-sqlite.js +1 -1
  241. package/lib/umd/persisters/persister-expo-sqlite.js.gz +0 -0
  242. package/lib/umd/persisters/persister-file.js +1 -1
  243. package/lib/umd/persisters/persister-file.js.gz +0 -0
  244. package/lib/umd/persisters/persister-indexed-db.js +1 -1
  245. package/lib/umd/persisters/persister-indexed-db.js.gz +0 -0
  246. package/lib/umd/persisters/persister-partykit-client.js +1 -1
  247. package/lib/umd/persisters/persister-partykit-client.js.gz +0 -0
  248. package/lib/umd/persisters/persister-partykit-server.js +1 -1
  249. package/lib/umd/persisters/persister-partykit-server.js.gz +0 -0
  250. package/lib/umd/persisters/persister-remote.js +1 -1
  251. package/lib/umd/persisters/persister-remote.js.gz +0 -0
  252. package/lib/umd/persisters/persister-sqlite-wasm.js +1 -1
  253. package/lib/umd/persisters/persister-sqlite-wasm.js.gz +0 -0
  254. package/lib/umd/persisters/persister-sqlite3.js +1 -1
  255. package/lib/umd/persisters/persister-sqlite3.js.gz +0 -0
  256. package/lib/umd/persisters/persister-yjs.js +1 -1
  257. package/lib/umd/persisters/persister-yjs.js.gz +0 -0
  258. package/lib/umd/persisters.js +1 -1
  259. package/lib/umd/persisters.js.gz +0 -0
  260. package/lib/umd/store.js +1 -1
  261. package/lib/umd/store.js.gz +0 -0
  262. package/lib/umd/tinybase.js +1 -1
  263. package/lib/umd/tinybase.js.gz +0 -0
  264. package/lib/umd/tools.js +1 -1
  265. package/lib/umd/tools.js.gz +0 -0
  266. package/lib/umd/ui-react-dom-debug.js +1 -1
  267. package/lib/umd/ui-react-dom-debug.js.gz +0 -0
  268. package/lib/umd/ui-react-dom.js +1 -1
  269. package/lib/umd/ui-react-dom.js.gz +0 -0
  270. package/lib/umd-es6/mergeable-store.js +1 -0
  271. package/lib/umd-es6/mergeable-store.js.gz +0 -0
  272. package/lib/umd-es6/persisters/persister-automerge.js +1 -1
  273. package/lib/umd-es6/persisters/persister-automerge.js.gz +0 -0
  274. package/lib/umd-es6/persisters/persister-browser.js +1 -1
  275. package/lib/umd-es6/persisters/persister-browser.js.gz +0 -0
  276. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js +1 -1
  277. package/lib/umd-es6/persisters/persister-cr-sqlite-wasm.js.gz +0 -0
  278. package/lib/umd-es6/persisters/persister-electric-sql.js +1 -1
  279. package/lib/umd-es6/persisters/persister-electric-sql.js.gz +0 -0
  280. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js +1 -1
  281. package/lib/umd-es6/persisters/persister-expo-sqlite-next.js.gz +0 -0
  282. package/lib/umd-es6/persisters/persister-expo-sqlite.js +1 -1
  283. package/lib/umd-es6/persisters/persister-expo-sqlite.js.gz +0 -0
  284. package/lib/umd-es6/persisters/persister-file.js +1 -1
  285. package/lib/umd-es6/persisters/persister-file.js.gz +0 -0
  286. package/lib/umd-es6/persisters/persister-indexed-db.js +1 -1
  287. package/lib/umd-es6/persisters/persister-indexed-db.js.gz +0 -0
  288. package/lib/umd-es6/persisters/persister-partykit-client.js +1 -1
  289. package/lib/umd-es6/persisters/persister-partykit-client.js.gz +0 -0
  290. package/lib/umd-es6/persisters/persister-partykit-server.js +1 -1
  291. package/lib/umd-es6/persisters/persister-partykit-server.js.gz +0 -0
  292. package/lib/umd-es6/persisters/persister-remote.js +1 -1
  293. package/lib/umd-es6/persisters/persister-remote.js.gz +0 -0
  294. package/lib/umd-es6/persisters/persister-sqlite-wasm.js +1 -1
  295. package/lib/umd-es6/persisters/persister-sqlite-wasm.js.gz +0 -0
  296. package/lib/umd-es6/persisters/persister-sqlite3.js +1 -1
  297. package/lib/umd-es6/persisters/persister-sqlite3.js.gz +0 -0
  298. package/lib/umd-es6/persisters/persister-yjs.js +1 -1
  299. package/lib/umd-es6/persisters/persister-yjs.js.gz +0 -0
  300. package/lib/umd-es6/persisters.js +1 -1
  301. package/lib/umd-es6/persisters.js.gz +0 -0
  302. package/lib/umd-es6/store.js +1 -1
  303. package/lib/umd-es6/store.js.gz +0 -0
  304. package/lib/umd-es6/tinybase.js +1 -1
  305. package/lib/umd-es6/tinybase.js.gz +0 -0
  306. package/lib/umd-es6/tools.js +1 -1
  307. package/lib/umd-es6/tools.js.gz +0 -0
  308. package/lib/umd-es6/ui-react-dom-debug.js +1 -1
  309. package/lib/umd-es6/ui-react-dom-debug.js.gz +0 -0
  310. package/lib/umd-es6/ui-react-dom.js +1 -1
  311. package/lib/umd-es6/ui-react-dom.js.gz +0 -0
  312. package/package.json +39 -35
  313. package/readme.md +2 -2
package/lib/umd/tools.js CHANGED
@@ -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,g="Row",m=g+b,f="Sorted"+g+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),L=e=>e.length,N=async e=>V.all(e),D=e=>{const t=l(e);return S(t)||t==s&&R(e)?t:void 0},G=(e,l)=>e.every(l),j=(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=_.keys,K=_.freeze,X=e=>!A(e)&&k(Z(e),(e=>e==_.prototype||A(Z(e))),(()=>!0)),Y=(e,l)=>J(Q(e),(([e,t])=>l(t,e))),ee=e=>L(q(e)),le=e=>X(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)=>(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",ge="Count",me="Del",fe="Deps",we=fe+"?: React.DependencyList",Te="doRollback?: DoRollback",ye="actions: () => Return, "+Te,ve="export",xe="Id",Ve="Invalid",Re="Json",Ae=ie($),ke="?: ",Se=" | undefined",Pe="NonNullable",Oe="Partial",Ee="Props",Le="Provider",Ne=`Registers a ${Ae} that will be called`,De="Represents",Ge="rowId: "+xe,je="Schema",He="Set",Me=", descending?: boolean, offset?: number, limit?: number",Je="[]",ze="the Store",We="Transaction",Be=We+"Changes",Fe=ie(We),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+ze: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)=>De+` 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)=>Ne+" 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),gl=(e,l=0,t=0)=>wl[l]+` ${ol(0,0,t)} `+Cl(e),ml=(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",De,"Gets "+el,"Sets "+el,Ne+" 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=[ze,C,al+p+ll+b,be+p,al+g+ll+b,be+g,al+w+ll+b,be+w,"invalid Cell changes",v,al+y+ll+b,be+y,"invalid Value changes",al+"sorted "+g+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-L(l);return`${l}/**\n${t.replace(RegExp(`([^\\n]{1,${a}})(\\s|$)`,"g"),l+" * $1\n")}${l} */`})),El=e=>e.flat(1e3),Ll=(e,l=0)=>M(J(e.split(Al),((e,t)=>(t>0||l?ue:ie)(E(e,0,1))+E(e,1)))),Nl=e=>ue(M((e&&!Rl.test(e[0])?e:" "+e).split(Al),"_")),Dl=e=>`/** ${e}. */`,Gl=(...e)=>M(z(e,(e=>e)),", "),jl=(...e)=>"{"+M(e,"; ")+"}",Hl=(...e)=>jl(...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([...j(Ie(e[l],((e,l)=>`import {${M(j(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)=>[Dl(l),`${n?ve+" ":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 a=>{t.has(a)||t.set(a,e(a));const n=t.get(a);return l?.(n),n}},zl=(e,l,t)=>[l=>Y(e,((e,a)=>l(a,Ll(a,1),t(Nl(a),`'${a}'`)))),(l,a)=>Y(e[l],((e,l)=>a(l,e[r],e[I],t(Nl(l),`'${l}'`),Ll(l,1)))),e=>Y(l,((l,a)=>e(a,l[r],l[I],t(Nl(a),`'${a}'`),Ll(a,1))))],Wl=(e,l,t,n)=>[(n,d)=>{const o=n+": "+d,s=e(C,jl(...l((e=>`'${e}'?: {[rowId: Id]: `+jl(...t(e,((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`)))+"}"))),sl(1,5)),r=e(C+Xe,jl(...l((e=>`'${e}'?: {[rowId: Id]: `+jl(...t(e,((e,l)=>`'${e}'?: ${l}`)))+"}"))),sl(1,5,1)),I=e(p+xe,"keyof "+s,"A "+p+" Id in "+ze),c=`<TId extends ${I}>`,u=e(p,Pe+`<${s}[TId]>`,"A "+p+" in "+ze,c),b=e(p+Xe,Pe+`<${r}[TId]>`,"A "+p+" in "+ze+Ye,c),y=e(g,u+"<TId>[Id]","A "+g+" in a "+p,c),v=e(g+Xe,b+"<TId>[Id]","A "+g+" in a "+p+Ye,c),x=e(w+xe,`Extract<keyof ${y}<TId>, Id>`,"A "+w+" Id in a "+g,c),V=e(w,Pe+`<${s}[TId]>[Id][CId]`,"A "+w+" in a "+g,`<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 "+g,`<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(g+he,"(rowId: Id, forEachCell: (cellCallback: CellCallback<TId>) "+Ke+") "+Ke,ul(be+g+" 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 "+g+" iterator"),a),L=e("TableIdRowIdCellIdArray",`TId extends ${I} ? [tableId: TId, rowId: Id, cellId: ${x}<TId>] : never`,"Ids for GetCellChange",`<TId = ${I}>`,0),N=e("GetCellChange",`(...[tableId, rowId, cellId]: ${L}) => CellChange`,pe+" returning information about any Cell's changes during a "+Fe),D=e(i+C+$,`(${o}, hasTables: boolean)`+Ke,il(1,0,1)),G=e(C+$,`(${o}, getCellChange: ${N}${Se})`+Ke,il(1)),j=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: ${N}${Se})`+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(g+"Count"+$,`(${o}, tableId: ${I})`+Ke,il(15,3)),U=e(m+$,`(${o}, tableId: ${I})`+Ke,il(4,3)),_=e(f+$,"("+Gl(o,"tableId: "+I,"cellId: Id"+Se,"descending: boolean","offset: number","limit: number"+Se,"sortedRowIds: Ids")+")"+Ke,il(13,3)),Z=e(i+g+$,"("+Gl(""+o,"tableId: "+I,Ge,"hasRow: boolean")+")"+Ke,il(5,3,1)),Q=e(g+$,"("+Gl(""+o,"tableId: "+I,Ge,`getCellChange: ${N}${Se}`)+")"+Ke,il(5,3)),q=e(T+$,"("+Gl(""+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> ${Se}, oldCell: ${V}<TId, CId> ${Se}, getCellChange: ${N} ${Se}] : 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,D,G,j,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(Ve+w+$,`(${o}, tableId: Id, ${Ge}, cellId: Id, invalidCells: any[])`+Ke,il(8))]},(l,t)=>{const d=l+": "+t,o=e(v,jl(...n(((e,l,t)=>`'${e}'${A(t)?"?":a}: ${l}`))),sl(2,5)),s=e(v+Xe,jl(...n(((e,l)=>`'${e}'?: ${l}`))),sl(2,5,1)),r=e(y+xe,"keyof "+o,"A "+y+" Id in "+ze),I=e(y,Pe+`<${o}[VId]>`,"A "+y+" Id in "+ze,`<VId extends ${r}>`),c=e("ValueIdValueArray",`VId extends ${r} ? [valueId: VId, value: ${I}<VId>] : never`,y+" Ids and types in "+ze,`<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}${Se})`+Ke,il(9)),h=e(x+$,`(${d})`+Ke,il(10)),g=e(i+y+$,`(${d}, valueId: ValueId, hasValue: boolean)`+Ke,il(11,0,1)),m=e("ValueListenerArgsArray",`VId extends ${r} ? [${d}, valueId: VId, newValue: ${I}<VId> ${Se}, oldValue: ${I}<VId> ${Se}, getValueChange: ${b} ${Se}] : never`,"Value args for ValueListener",`<VId = ${r}>`,0);return[o,s,r,I,u,p,C,h,g,e(y+$,`(...[${l}, valueId, newValue, oldValue, getValueChange]: `+m+")"+Ke,il(11)),e(Ve+y+$,`(${d}, valueId: Id, invalidValues: any[])`+Ke,il(12))]},(l,t)=>e(We+$,`(${l}: ${t}, getTransactionChanges: GetTransactionChanges, getTransactionLog: GetTransactionLog)`+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,L,N]=zl(e,l,R),[D,G,j]=Wl(c,E,L,N),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,Dl(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?Oe:a)+t,o,n,(n==Q?Fl:Bl)(Tl[e]+(4==e?Oe: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)+Ae+": "+l+(o?", mutator?: boolean":a),xe,Ul(u+e+$,d,o?"mutator":a),t,s),Z=`./${Ll(n)}.d`,Q=Ll(n,1),q=Ll(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,N,G,j,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ue]=D(q,Q),ie=oe();E(((e,l)=>{const t=`<'${e}'>`,a=[c(l+p,d+t,De+` the '${e}' `+p),c(l+p+Xe,$+t,De+` the '${e}' `+p+Ye),c(l+g,u+t,rl(e)),c(l+g+Xe,y+t,rl(e,1)),c(l+w+xe,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+g+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,N,G,j,J,z,B,F,ee,le,te,ne,de,re,Ie,ce,ue),Y=[e,l,n,v,N,G,j,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+Je,Il(p,ze)),U(5,a,p,qe,$l(p,ze),"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,g+ge,"number","Gets the number of Rows in the "+pl(e),a,t),U(0,l,m,b,Il(g,pl(e)),a,t),U(0,l,f,b,Il(g,pl(e),1),"cellId?: "+I+Me,t+", cellId, descending, offset, limit"),U(5,l,g,qe,$l(g,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,g,n,gl(e,s),Ge+d,t+", rowId"+o))),U(6,l,g,xe+Se,"Add a new Row to "+pl(e),"row: "+r+", reuseIds?: boolean",t+", row, reuseIds"),U(0,l,T,I+Je,Il(w,Cl(e)),Ge,t+", rowId"),U(5,l,w,qe,$l(w,Cl(e)),Ge+", cellCallback: "+$,t+", rowId, cellCallback as any"),L(e,((n,d,s,r,I)=>{const $="Map"+Ll(d,1);$e(X,d,$);const c=d+(A(s)?Se:a);H([[c],[o],[Q,`, cell: ${d} | `+$,", cell as any"],[Q]],(([d,o=a,s=a],$)=>U($,l+I,w,d,ml(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+Re,Re,sl(1,6)),U(2,a,C+Re,Q,sl(1,7),"tablesJson: "+Re,"tables"+Re),_(i+C,N,sl(1,8,0,1)+" changes"),_(C,G,sl(1,8)+" changes"),_(h,j,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"),_(g+ge,ee,bl(15,3),`tableId: ${n} | null`,"tableId"),_(m,le,bl(4,3,1),`tableId: ${n} | null`,"tableId"),_(f,te,bl(13,3,1),Gl("tableId: TId",`cellId: ${v}<TId>`+Se,"descending: boolean","offset: number","limit: number"+Se),Gl("tableId","cellId","descending","offset","limit"),1,"<TId extends TableId>"),_(i+g,ne,bl(5,3,0,1),`tableId: ${n} | null, rowId: IdOrNull`,"tableId, rowId"),_(g,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"),_(Ve+w,ue,Ne+" 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+je+"({",El(E(((e,l,t)=>[`[${t}]: {`,...L(e,((e,l,t,n)=>`[${n}]: {[${R(Nl(r),`'${r}'`)}]: ${R(Nl(l),`'${l}'`)}${A(t)?a:`, [${R(Nl(I),`'${I}'`)}]: `+(P(t)?R(Nl(t),`'${t}'`):t)}},`)),"},"]))),"})")}if(le(l))s(null,t,v);else{const[e,l,n,d,$,c,u,b,p,C,h]=G(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+Je,Il(y,ze)),U(5,a,y,"void",$l(y,ze),"valueCallback: "+$,"valueCallback as any"),N(((e,l,t,n,d)=>{const s="Map"+Ll(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+Re,Re,sl(2,6)),U(2,a,v+Re,Q,sl(2,7),"valuesJson: "+Re,"values"+Re),_(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"),_(Ve+y,h,Ne+" whenever an invalid Value change was attempted","valueId: IdOrNull","valueId"),s(1,Z,...ae(X)),s(0,t,"ValueChange"),W(K,".set"+v+je+"({",N(((e,l,t,n)=>[`[${n}]: {[${R(Nl(r),`'${r}'`)}]: ${R(Nl(l),`'${l}'`)}${A(t)?a:`, [${R(Nl(I),`'${I}'`)}]: `+(P(t)?R(Nl(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(2,a,Be,Q,`Applies a set of ${Be} to the Store`,"transactionChanges: "+Be,"transactionChanges"),re(X,((e,l)=>c(l,`(cell: ${e}${Se}) => `+e,`Takes a ${e} Cell value and returns another`))),s(null,t,"DoRollback",xe,"IdOrNull",Re,"Store",Be),s(0,t,"Get"+Be,"GetTransactionLog"),U(0,a,Re,Re,sl(0,6)),U(2,a,Re,Q,sl(0,7),"tablesAndValuesJson: "+Re,"tablesAndValuesJson"),U(7,a,Fe,"Return",Ue,ye,"actions, doRollback","<Return>"),U(7,a,"start"+We,Q,_e),U(7,a,"finish"+We,Q,Ze,Te,"doRollback");const te=j(q,Q);return _("Start"+We,te,Ne+" just before the start of the "+Fe,a,a,0),_("WillFinish"+We,te,Ne+" just before "+Qe,a,a,0),_("DidFinish"+We,te,Ne+" 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 "+ze,"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(),ve+" interface "+Q+" {",...z(0),"}",a,Dl(`Creates a ${Q} object`),ve+" function create"+Q+"(): "+Q+";"),d(...k(1),ve+" const create"+Q+": typeof create"+Q+"Decl = () => {",...O(),`return Object.freeze(${q});`,"};"),Y,ee]},Zl=e=>c+e,Ql=e=>Gl(Zl(e),Zl(e)+fe),ql="debugIds?: boolean",Kl="debugIds={debugIds}",Xl="then"+we,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=Gl($t+")"+Ke,Xl),ut="then, then"+fe,it=ot+at+xe,bt="View",pt=(e,...l)=>Gl(...l,Ae+": "+e,Ae+we,"mutator?: boolean"),Ct=(...e)=>Gl(...e,Ae,Ae+fe,"mutator"),ht=(e,l,n,d,r)=>{const[I,c,u,V,R,k,S,P]=Ml(),[O,E,L]=zl(e,l,R),N=`./${Ll(n)}.d`,D=`./${Ll(n)}-ui-react.d`,G="tinybase/ui-react",j=Ll(n,1),H=Ll(j),J=j+"Or"+j+xe,z=H+"Or"+j+xe,B=H+`={${H}}`,U=oe(),_=(e,l,t,n,d,o=a)=>(c(1,D,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,G,`use${l} as use${l}Core`),Z(e,Gl(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?[ve+` const ${s}: typeof ${s}Decl = ${o}(${l}): ${1==t?"any":t} =>`,n]:[ve+` function ${s}${o}(${l}): ${1==t?"ComponentReturnType":t};`];return e||F(r,Dl(d)),W(r,a),r}));c(null,t,xe,"Store",he,Yl+"ized"+he),c(0,G,"ComponentReturnType"),c(1,G,"useCellIds"),c(null,G,"ExtraProps"),c(0,N,j);const X=u(J,j+" | "+xe,`Used when you need to refer to a ${j} in a React hook or component`),Y=u(Le+Ee,Hl(H+ke+j,H+`ById?: {[${H}Id: Id]: ${j}}`),`Used with the ${Le} component, so that a `+j+" can be passed into the context of an application");c(0,"react","ReactElement","ComponentType"),c(1,"react","React"),c(1,D,X,Y);const ee=z+ke+X;R("{createContext, useContext, useMemo}","React"),R("Context",`createContext<[${j}?, {[${H}Id: Id]: ${j}}?]>([])`),Z("Create"+j,`create: () => ${j}, create`+we,j,"\n// eslint-disable-next-line react-hooks/exhaustive-deps\nuseMemo(create, createDeps)",`Create a ${j} within a React application with convenient memoization`);const te=Z(j,"id?: Id",j+Se,["{",lt,"return id == null ? contextValue[0] : contextValue[1]?.[id];","}"],`Get a reference to a ${j} from within a ${Le} 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",Gl("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",Gl("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,L,G,J,z,W,F,U,_]=d;c(null,N,e,l,n,I,y,v,x,R,k,S,P,L,G,J,z,W,U,F),c(0,N,r),c(1,N,j),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+Je,Il(p,ze)+Ce);Q(He+C+he,He+C+he,dt,sl(1,9)+tt,Gl(Zl(C)+et+l,Zl(C)+we),Ql(C),nt,Gl($t,`tables: ${l})`+Ke,Xl),ut),Q(me+C+he,me+C+he,he,sl(1,12),a,a,a,ct,ut);const ee=u(w+Ee,Hl("tableId?: TId","rowId: Id","cellId?: CId",H+ke+j,ql),cl(be+w),`<TId extends ${n}, CId extends ${r}<TId>>`),le=u(g+Ee,Hl("tableId?: TId","rowId: Id",H+ke+j,"cellComponents?: {readonly [CId in "+r+`<TId>]?: ComponentType<${ee}<TId, CId>>;}`,`getCellComponentProps?: (cellId: ${r}<TId>) => ExtraProps`,`customCellIds?: ${r}<TId>[]`,It,ql),cl(be+g),`<TId extends ${n}>`),te=u(p+Ee,Hl("tableId?: TId",H+ke+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",It,ql),cl(be+p),`<TId extends ${n}>`),ae=u("Sorted"+p+Ee,Hl("tableId?: TId","cellId?: "+r+"<TId>","descending?: boolean","offset?: number","limit?: number",H+ke+j,`rowComponent?: ComponentType<${le}<TId>>`,"getRowComponentProps?: (rowId: Id) => ExtraProps","customCellIds?: CellId<TId>[]",It,ql),cl(be+"sorted "+p),`<TId extends ${n}>`),oe=u(C+Ee,Hl(H+ke+j,"tableComponents?: {readonly [TId in "+n+`]?: ComponentType<${te}<TId>>;}`,`getTableComponentProps?: (tableId: ${n}) => ExtraProps`,It,ql),cl(ol(1,1)));c(1,D,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,N,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+g+ge,g+ge,s,"Gets the number of Rows in "+pl(e)+Ce,a,t);const u=Q(l+m,m,b,Il(g,pl(e))+Ce,a,t),C=Q(l+f,f,b,Il(g,pl(e),1)+Ce,"cellId?: "+$+", descending?: boolean, offset?: number, limit?: number",t+", cellId, descending, offset, limit");Q(i+l+g,i+g,o,gl(e,0,1)+Ce,it,Gl(t,ot)),Q(l+g,g,r,gl(e)+Ce,it,Gl(t,ot)),Q(l+T,T,$+Je,Il(w,Cl(e))+Ce,it,Gl(t,ot)),Q(He+l+p+he,He+p+he,dt,hl(e,9)+tt,Gl(Zl(p)+et+d,Zl(p)+we),Gl(t,Ql(p)),nt,Gl($t,`table: ${d})`+Ke,Xl),ut),Q(me+l+p+he,me+p+he,he,hl(e,12),a,t,a,ct,ut),Q(He+l+g+he,He+g+he,dt,gl(e,9)+tt,Gl(it,Zl(g)+et+I,Zl(g)+we),Gl(t,ot,Ql(g)),nt,Gl($t,`row: ${I})`+Ke,Xl),ut),Q("Add"+l+g+he,"Add"+g+he,dt,gl(e,10)+tt,Gl(Zl(g)+et+I,Zl(g)+we),Gl(t,Ql(g)),nt,"then?: ("+Gl(it+Se,"store: Store","row: "+I+")"+Ke,"then"+we)+", reuseRowIds?: boolean",ut+", reuseRowIds"),Q(He+l+Oe+g+he,He+Oe+g+he,dt,gl(e,11)+tt,Gl(it,Zl(Oe+g)+et+I,Zl(Oe+g)+we),Gl(t,ot,Ql(Oe+g)),nt,Gl($t,`partialRow: ${I})`+Ke,Xl),ut),Q(me+l+g+he,me+g+he,he,gl(e,12),it,Gl(t,ot),a,ct,ut);const h=q(l+g+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)"],gl(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"+Ll(d,1);c(0,N,$),c(1,N,$),Q(i+l+I+p+w,i+p+w,o,`Gets ${dl(1)}the '${n}' Cell anywhere in `+pl(e)+Ce,a,Gl(t,r)),Q(i+l+I+w,i+w,o,ml(e,n,0,1)+Ce,it,Gl(t,ot,r));const u=Q(l+I+w,w,d+(A(s)?Se:a),ml(e,n)+Ce,it,Gl(t,ot,r));Q(He+l+I+w+he,He+w+he,dt,ml(e,n,9)+tt,Gl(it,Zl(w)+et+d+" | "+$,Zl(w)+we),Gl(t,ot,r,Ql(w)),nt,Gl($t,`cell: ${d} | ${$})`+Ke,Xl),ut),Q(me+l+I+w+he,me+w+he,he,ml(e,n,12),Gl(it,"forceDel?: boolean"),Gl(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})`],ml(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(g+ge+$,g+ge+$,qe,bl(15,3),pt(P,`tableId: ${n} | null`),Ct("tableId")),Q(m+$,m+$,qe,bl(4,3,1),pt(L,`tableId: ${n} | null`),Ct("tableId")),Q(f+$,f+$,qe,bl(13,3,1),pt(G,`tableId: ${n} | null`,"cellId: "+Ie+Se,"descending: boolean","offset: number","limit: number"+Se),Ct("tableId","cellId","descending","offset","limit")),Q(i+g+$,i+g+$,qe,bl(5,3,0,1),pt(J,`tableId: ${n} | null`,ot+": IdOrNull"),Ct("tableId",ot)),Q(g+$,g+$,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,N,...r),c(1,N,j);const p=V("getDefaultValueComponent","valueId: Id",M(L(((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+Je,Il(y,ze)+Ce);Q(He+v+he,He+v+he,dt,sl(2,9)+tt,Gl(Zl(v)+et+l,Zl(v)+we),Ql(v),nt,Gl($t,`values: ${l})`+Ke,Xl),ut),Q(He+Oe+v+he,He+Oe+v+he,dt,sl(2,11)+tt,Gl(Zl(Oe+v)+et+l,Zl(Oe+v)+we),Ql(Oe+v),nt,Gl($t,`partialValues: ${l})`+Ke,Xl),ut),Q(me+v+he,me+v+he,he,sl(2,12),a,a,a,ct,ut);const h=u(y+Ee,Hl("valueId?: VId",H+ke+j,ql),cl("a Value"),`<VId extends ${t}>`),g=u(v+Ee,Hl(H+ke+j,"valueComponents?: {readonly [VId in "+t+`]?: ComponentType<${h}<VId>>;}`,`getValueComponentProps?: (valueId: ${t}) => ExtraProps`,It,ql),cl(ol(2,1)));c(1,D,g,h),q(v+bt,"{"+H+", valueComponents, getValueComponentProps"+rt+"}: "+g,[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),L(((e,l,t,n,d)=>{const s="Map"+Ll(l,1);c(0,N,s),c(1,N,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(He+d+y+he,He+y+he,dt,fl(e,9)+tt,Gl(Zl(y)+et+l+" | "+s,Zl(y)+we),Gl(n,Ql(y)),nt,Gl($t,`value: ${l} | ${s})`+Ke,Xl),ut),Q(me+d+y+he,me+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(Le,`{${H}, ${H}ById, children}: `+Y+" & {children: React.ReactNode}",["{",lt,"return (","<Context."+Le,"value={useMemo(",`() => [${H} ?? contextValue[0], {...contextValue[1], ...${H}ById}],`,`[${H}, ${H}ById, contextValue],`,")}>","{children}",`</Context.${Le}>`,");","}"],"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))]},gt=(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)]},mt=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=mt(e.getTablesSchemaJson());return!le(l)||G(e.getTableIds(),(t=>{const a=e.getRowIds(t),n=oe();if(G(a,(l=>G(e.getCellIds(t,l),(a=>{const d=e.getCell(t,l,a),o=ce(n,a,(()=>[D(d),oe(),[0],0])),[s,r,[I]]=o,$=ce(r,d,(()=>0))+1;return $>I&&(o[2]=[$,d]),$e(r,d,$),o[3]++,s==D(d)})))))return l[t]={},ne(n,(([e,,[,n],d],o)=>{l[t][o]={[r]:e,...d==L(a)?{[I]:n}:{}}})),1}))?l:{}},t=()=>{const l=mt(e.getValuesSchemaJson());return le(l)&&e.forEachValue(((e,t)=>{l[e]={[r]:D(t)}})),l},a=e=>gt(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 N(J(a(e),(async(e,a)=>Ol(await n(e,{...Tt,plugins:t,filepath:"_."+l[a]})))))};return K({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:L(e.getValueIds()),jsonLength:L(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=_.keys,K=_.freeze,X=e=>!A(e)&&k(Z(e),(e=>e==_.prototype||A(Z(e))),(()=>!0)),Y=(e,l)=>J(Q(e),(([e,t])=>l(t,e))),ee=e=>N(q(e)),le=e=>X(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)=>(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 a=>{t.has(a)||t.set(a,e(a));const n=t.get(a);return l?.(n),n}},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 K({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,t;e=this,t=function(e,t,s){"use strict";const l=e=>typeof e,a="",n=l(a),o=l(!0),r=l(0),i=l(l),d="type",u="default",c="Has",h="Ids",m="Table",b=m+"s",g=m+h,p="Row",I=p+"Count",f=p+h,w="Cell",y=w+h,C="Value",v=C+"s",T=C+h,k="currentTarget",S="value",x=e=>a+e,V=Math.floor,R=isFinite,q=e=>null==e,N=(e,t,s)=>q(e)?s?.():t(e),L=e=>e==n||e==o,M=e=>l(e)==i,E=e=>Array.isArray(e),z=(e,t,s)=>e.slice(t,s),$=e=>e.length,{PureComponent:O,Fragment:A,createElement:F,useCallback:J,useLayoutEffect:P,useRef:H,useState:B}=t,D=(e,...t)=>q(e)?{}:e(...t),Q=(e,t)=>e.sort(t),j=(e,t)=>e.forEach(t),W=(e,t)=>e.map(t),U=e=>0==$(e),G=(e,...t)=>e.push(...t),K=e=>e.shift(),X=Object,Y=e=>X.getPrototypeOf(e),Z=X.entries,_=X.keys,ee=X.isFrozen,te=X.freeze,se=e=>!q(e)&&N(Y(e),(e=>e==X.prototype||q(Y(e))),(()=>!0)),le=(e=[])=>X.fromEntries(e),ae=(e,t)=>!q(((e,t)=>N(e,(e=>e[t])))(e,t)),ne=(e,t)=>(delete e[t],e),oe=(e,t)=>W(Z(e),(([e,s])=>t(s,e))),re=e=>se(e)&&0==(e=>$(_(e)))(e),ie=e=>JSON.stringify(e,((e,t)=>t instanceof Map?X.fromEntries([...t]):t)),de=JSON.parse,ue="tinybaseStoreInspector",ce="TinyBase Store Inspector",he=["left","top","bottom","right","full"],me="state",be="sort",ge="open",pe="position",Ie=ge,fe="editable",we=(...e)=>ie(e),ye=(e,t)=>W(Q(e),t),Ce=(e,t)=>[!!s.useCell(me,e,fe,t),J((s=>{t.setCell(me,e,fe,(e=>!e)),s.preventDefault()}),[t,e])],ve="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",Te='content:url("',ke=Te+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",Se='</svg>")',xe=Te+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")",Ve=W([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,s,l])=>ke+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${s}' height='${l}' fill='white'/>`+Se)),Re=ke+"<path d='M20 20l60 60M20 80l60-60' />"+Se,qe=ke+`<path d='${ve}' />`+Se,Ne=ke+`<path d='${ve}M20 20l60 60' />`+Se,Le="*::-webkit-scrollbar",Me=((e,t="")=>e.join(t))(oe({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[Le]:"width:0.5rem;height:0.5rem;",[Le+"-track"]:"background:#111",[Le+"-thumb"]:"background:#999;border:1px solid #111",[Le+"-thumb:hover"]:"background:#fff",[Le+"-corner"]:"background:#111",img:"width:1rem;height:1rem;background:#111;border:0;vertical-align:text-bottom",">img":"padding:0.25rem;bottom:0;right:0;position:fixed;"+xe,...le(W(["bottom:0;left:0","top:0;right:0"],((e,t)=>[`>img[data-position='${t}']`,e]))),main:"display:flex;flex-direction:column;background:#111d;color:#fff;position:fixed;",...le(W(["bottom:0;left:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:30vh","bottom:0;left:0;width:100vw;height:30vh","top:0;right:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:100vh"],((e,t)=>[`main[data-position='${t}']`,e]))),header:"display:flex;padding:0.25rem;background:#000;align-items:center","header>img:nth-of-type(1)":xe,"header>img:nth-of-type(6)":Re,...le(W(Ve,((e,t)=>[`header>img[data-id='${t}']`,e]))),"header>span":"flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-left:0.25rem",article:"padding:0.25rem 0.25rem 0.25rem 0.5rem;overflow:auto;flex:1",details:"margin-left:0.75rem;width:fit-content;","details img":"display:none","details[open]>summary img":"display:unset;background:none;margin-left:0.25rem","details[open]>summary img.edit":qe,"details[open]>summary img.done":Ne,summary:"margin-left:-0.75rem;line-height:1.25rem;user-select:none;width:fit-content",table:"border-collapse:collapse;table-layout:fixed;margin-bottom:0.5rem","table input":"background:#111;color:unset;padding:0 0.25rem;border:0;font-size:unset;vertical-align:top;margin:0",'table input[type="number"]':"width:4rem","table tbody button":"font-size:0;background:#fff;border-radius:50%;margin:0 0.125rem 0 0;width:0.85rem;color:#111","table button:first-letter":"font-size:0.75rem",thead:"background:#222","th:nth-of-type(1)":"min-width:2rem;","th.sorted":"background:#000","table caption":"text-align:left;white-space:nowrap;line-height:1.25rem",button:"width:1.5rem;border:none;background:none;color:#fff;padding:0","button[disabled]":"color:#777","button.next":"margin-right:0.5rem",[`th,#${ue} td`]:"overflow:hidden;text-overflow:ellipsis;padding:0.25rem 0.5rem;max-width:12rem;white-space:nowrap;border-width:1px 0;border-style:solid;border-color:#777;text-align:left","span.warn":"margin:0.25rem;color:#d81b60"},((e,t)=>e?`#${ue} ${t}{${e}}`:""))),Ee=({s:e})=>{const t=s.useValue(pe,e)??1,l=s.useSetValueCallback(Ie,(()=>!0),[],e);return s.useValue(Ie,e)?null:F("img",{onClick:l,title:ce,"data-position":t})},ze=({uniqueId:e,summary:t,editable:l,handleEditable:a,children:n,s:o})=>{const r=!!s.useCell(me,e,ge,o),i=s.useSetCellCallback(me,e,ge,(e=>e[k].open),[],o);return F("details",{open:r,onToggle:i},F("summary",null,t,a?F("img",{onClick:a,className:l?"done":"edit"}):null),n)},$e=e=>{const t=l(e);return L(t)||t==r&&R(e)?t:void 0},Oe=(e,t,s,l,a)=>q(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),Ae=(e,t,s)=>q(s)?e.delValue(t):e.setValue(t,s),Fe=(e,t,s,l)=>e==n?t:e==r?s:l,{useCallback:Je,useMemo:Pe,useState:He}=t,Be="editable",De=(e,t)=>W(s.useTableCellIds(e,t),(t=>e+"."+t)),Qe=(e,t,s)=>{const l=Je(e,t);return s?l:void 0},je=(...e)=>Pe((()=>e),e),We=(e,t)=>Pe((()=>({store:e,tableId:t})),[e,t]),Ue=(e,t)=>Pe((()=>({queries:e,queryId:t})),[e,t]),Ge=(e,t=!1,s,l=0,a,n,o,r)=>{const[[i,d,u],c]=He([e,t,l]),h=Je((e=>{c(e),r?.(e)}),[r]),m=Qe((e=>h([e,e==i&&!d,u])),[h,i,d,u],s),b=Je((e=>h([i,d,e])),[h,i,d]),g=!0===o?rt:o;return[[i,d,u],m,Pe((()=>!1===o?null:F(g,{offset:u,limit:a,total:n,onChange:b})),[o,g,u,a,n,b])]},Ke=(e,t,s)=>Pe((()=>{const a=t??e;return le(oe(E(a)?le(W(a,(e=>[e,e]))):a,((e,t)=>{return[t,{label:t,component:s,...(a=e,l(a)==n?{label:e}:e)}];var a})))}),[t,s,e]),Xe=({className:e,headerRow:t,idColumn:s,params:[l,a,n,o,r,i]})=>F("table",{className:e},i?F("caption",null,i):null,!1===t?null:F("thead",null,F("tr",null,!1===s?null:F(Ye,{sort:o??[],label:"Id",onClick:r}),oe(l,(({label:e},t)=>F(Ye,{key:t,cellId:t,label:e,sort:o??[],onClick:r}))))),F("tbody",null,W(n,(e=>F("tr",{key:e},!1===s?null:F("th",null,e),oe(l,(({component:t,getComponentProps:s},l)=>F("td",{key:l},F(t,{...D(s,e,l),...a,rowId:e,cellId:l}))))))))),Ye=({cellId:e,sort:[t,s],label:l=e??a,onClick:n})=>F("th",{onClick:Qe((()=>n?.(e)),[n,e],n),className:q(s)||t!=e?void 0:`sorted ${s?"de":"a"}scending`},q(s)||t!=e?null:(s?"↓":"↑")+" ",l),Ze=({localRowId:e,params:[l,a,n,o,r,i,d]})=>{const u=s.useRemoteRowId(r,e,i);return F("tr",null,!1===l?null:F(t.Fragment,null,F("th",null,e),F("th",null,u)),oe(a,(({component:t,getComponentProps:s},l)=>{const[a,r]=l.split(".",2),i=a===n?e:a===o?u:null;return q(i)?null:F("td",{key:l},F(t,{...D(s,i,r),store:d,tableId:a,rowId:i,cellId:r}))})))},_e=({thing:e,onThingChange:t,className:s,hasSchema:l,showType:a=!0})=>{const[i,d]=He(),[u,c]=He(),[h,m]=He(),[b,g]=He(),[p,I]=He();u!==e&&(d($e(e)),c(e),m(e+""),g(Number(e)||0),I(!!e));const f=Je(((e,s)=>{s(e),c(e),t(e)}),[t]),w=Je((()=>{if(!l?.()){const e=Fe(i,r,o,n),s=Fe(e,h,b,p);d(e),c(s),t(s)}}),[l,t,h,b,p,i]);return F("div",{className:s},a?F("button",{className:i,onClick:w},i):null,Fe(i,F("input",{key:i,value:h,onChange:Je((e=>f(e[k][S]+"",m)),[f])}),F("input",{key:i,type:"number",value:b,onChange:Je((e=>f(Number(e[k][S]||0),g)),[f])}),F("input",{key:i,type:"checkbox",checked:p,onChange:Je((e=>f(!!e[k].checked,I)),[f])})))},et=({tableId:e,cellId:t,descending:l,offset:a,limit:n,store:o,editable:r,sortOnClick:i,paginator:d=!1,onChange:u,customCells:c,...h})=>{const[m,b,g]=Ge(t,l,i,a,n,s.useRowCount(e,o),d,u);return F(Xe,{...h,params:je(Ke(s.useTableCellIds(e,o),c,r?nt:s.CellView),We(o,e),s.useSortedRowIds(e,...m,n,o),m,b,g)})},tt=({store:e,editable:t=!1,valueComponent:l=(t?ot:s.ValueView),getValueComponentProps:a,className:n,headerRow:o,idColumn:r})=>F("table",{className:n},!1===o?null:F("thead",null,F("tr",null,!1===r?null:F("th",null,"Id"),F("th",null,C))),F("tbody",null,W(s.useValueIds(e),(t=>F("tr",{key:t},!1===r?null:F("th",null,t),F("td",null,F(l,{...D(a,t),valueId:t,store:e}))))))),st=({indexId:e,sliceId:t,indexes:l,editable:a,customCells:n,...o})=>{const[r,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(s.useIndexesOrIndexesById(l),e);return F(Xe,{...o,params:je(Ke(s.useTableCellIds(d,i),n,a?nt:s.CellView),We(i,d),s.useSliceRowIds(e,t,r))})},lt=({relationshipId:e,relationships:l,editable:a,customCells:n,className:o,headerRow:r,idColumn:i=!0})=>{const[d,u,c,h]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(s.useRelationshipsOrRelationshipsById(l),e),m=Ke([...De(c,u),...De(h,u)],n,a?nt:s.CellView),b=je(i,m,c,h,e,d,u);return F("table",{className:o},!1===r?null:F("thead",null,F("tr",null,!1===i?null:F(t.Fragment,null,F("th",null,c,".Id"),F("th",null,h,".Id")),oe(m,(({label:e},t)=>F("th",{key:t},e))))),F("tbody",null,W(s.useRowIds(c,u),(e=>F(Ze,{key:e,localRowId:e,params:b})))))},at=({queryId:e,cellId:t,descending:l,offset:a,limit:n,queries:o,sortOnClick:r,paginator:i=!1,customCells:d,onChange:u,...c})=>{const[h,m,b]=Ge(t,l,r,a,n,s.useResultRowCount(e,o),i,u);return F(Xe,{...c,params:je(Ke(s.useResultTableCellIds(e,o),d,s.ResultCellView),Ue(o,e),s.useResultSortedRowIds(e,...h,n,o),h,m,b)})},nt=({tableId:e,rowId:t,cellId:l,store:a,className:n,showType:o})=>F(_e,{thing:s.useCell(e,t,l,a),onThingChange:s.useSetCellCallback(e,t,l,(e=>e),[],a),className:n??Be+w,showType:o,hasSchema:s.useStoreOrStoreById(a)?.hasTablesSchema}),ot=({valueId:e,store:t,className:l,showType:a})=>F(_e,{thing:s.useValue(e,t),onThingChange:s.useSetValueCallback(e,(e=>e),[],t),className:l??Be+C,showType:a,hasSchema:s.useStoreOrStoreById(t)?.hasValuesSchema}),rt=({onChange:e,total:s,offset:l=0,limit:a=s,singular:n="row",plural:o=n+"s"})=>{(l>s||l<0)&&(l=0,e(0));const r=Qe((()=>e(l-a)),[e,l,a],l>0),i=Qe((()=>e(l+a)),[e,l,a],l+a<s);return F(t.Fragment,null,s>a&&F(t.Fragment,null,F("button",{className:"previous",disabled:0==l,onClick:r},"←"),F("button",{className:"next",disabled:l+a>=s,onClick:i},"→"),l+1," to ",Math.min(s,l+a)," of "),s," ",1!=s?o:n)},it=({indexes:e,indexesId:t,indexId:l,s:a})=>F(ze,{uniqueId:we("i",t,l),summary:"Index: "+l,s:a},W(s.useSliceIds(l,e),(s=>F(dt,{indexes:e,indexesId:t,indexId:l,sliceId:s,s:a,key:s})))),dt=({indexes:e,indexesId:t,indexId:s,sliceId:l,s:a})=>{const n=we("i",t,s,l),[o,r]=Ce(n,a);return F(ze,{uniqueId:n,summary:"Slice: "+l,editable:o,handleEditable:r,s:a},F(st,{sliceId:l,indexId:s,indexes:e,editable:o}))},ut=({indexesId:e,s:t})=>{const l=s.useIndexes(e),a=s.useIndexIds(l);return q(l)?null:F(ze,{uniqueId:we("i",e),summary:"Indexes: "+(e??u),s:t},U(a)?"No indexes defined":ye(a,(s=>F(it,{indexes:l,indexesId:e,indexId:s,s:t,key:s}))))},ct=({metrics:e,metricId:t})=>F("tr",null,F("th",null,t),F("td",null,e?.getTableId(t)),F("td",null,s.useMetric(t,e))),ht=({metricsId:e,s:t})=>{const l=s.useMetrics(e),a=s.useMetricIds(l);return q(l)?null:F(ze,{uniqueId:we("m",e),summary:"Metrics: "+(e??u),s:t},U(a)?"No metrics defined":F("table",null,F("thead",null,F("th",null,"Metric Id"),F("th",null,"Table Id"),F("th",null,"Metric")),F("tbody",null,W(a,(e=>F(ct,{metrics:l,metricId:e,key:e}))))))},mt=({queries:e,queriesId:t,queryId:l,s:a})=>{const n=we("q",t,l),[o,r,i]=de(s.useCell(me,n,be,a)??"[]"),d=s.useSetCellCallback(me,n,be,ie,[],a);return F(ze,{uniqueId:n,summary:"Query: "+l,s:a},F(at,{queryId:l,queries:e,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d}))},bt=({queriesId:e,s:t})=>{const l=s.useQueries(e),a=s.useQueryIds(l);return q(l)?null:F(ze,{uniqueId:we("q",e),summary:"Queries: "+(e??u),s:t},U(a)?"No queries defined":ye(a,(s=>F(mt,{queries:l,queriesId:e,queryId:s,s:t,key:s}))))},gt=({relationships:e,relationshipsId:t,relationshipId:s,s:l})=>{const a=we("r",t,s),[n,o]=Ce(a,l);return F(ze,{uniqueId:a,summary:"Relationship: "+s,editable:n,handleEditable:o,s:l},F(lt,{relationshipId:s,relationships:e,editable:n}))},pt=({relationshipsId:e,s:t})=>{const l=s.useRelationships(e),a=s.useRelationshipIds(l);return q(l)?null:F(ze,{uniqueId:we("r",e),summary:"Relationships: "+(e??u),s:t},U(a)?"No relationships defined":ye(a,(s=>F(gt,{relationships:l,relationshipsId:e,relationshipId:s,s:t,key:s}))))},It=({tableId:e,store:t,storeId:l,s:a})=>{const n=we("t",l,e),[o,r,i]=de(s.useCell(me,n,be,a)??"[]"),d=s.useSetCellCallback(me,n,be,ie,[],a),[u,c]=Ce(n,a);return F(ze,{uniqueId:n,summary:m+": "+e,editable:u,handleEditable:c,s:a},F(et,{tableId:e,store:t,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d,editable:u}))},ft=({store:e,storeId:t,s:l})=>{const a=we("v",t),[n,o]=Ce(a,l);return U(s.useValueIds(e))?null:F(ze,{uniqueId:a,summary:v,editable:n,handleEditable:o,s:l},F(tt,{store:e,editable:n}))},wt=({storeId:e,s:t})=>{const l=s.useStore(e),a=s.useTableIds(l);return q(l)?null:F(ze,{uniqueId:we("s",e),summary:"Store: "+(e??u),s:t},F(ft,{storeId:e,store:l,s:t}),ye(a,(s=>F(It,{store:l,storeId:e,tableId:s,s:t,key:s}))))},yt=({s:e})=>{const t=H(null),l=H(0),[a,n]=B(!1),{scrollLeft:o,scrollTop:r}=s.useValues(e);P((()=>{const e=t.current;if(e&&!a){const t=new MutationObserver((()=>{e.scrollWidth>=V(o)+e.clientWidth&&e.scrollHeight>=V(r)+e.clientHeight&&e.scrollTo(o,r)}));return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}}),[a,o,r]);const i=J((t=>{const{scrollLeft:s,scrollTop:a}=t[k];cancelIdleCallback(l.current),l.current=requestIdleCallback((()=>{n(!0),e.setPartialValues({scrollLeft:s,scrollTop:a})}))}),[e]),d=s.useStore(),u=s.useStoreIds(),c=s.useMetrics(),h=s.useMetricsIds(),m=s.useIndexes(),b=s.useIndexesIds(),g=s.useRelationships(),p=s.useRelationshipsIds(),I=s.useQueries(),f=s.useQueriesIds();return q(d)&&U(u)&&q(c)&&U(h)&&q(m)&&U(b)&&q(g)&&U(p)&&q(I)&&U(f)?F("span",{className:"warn"},"There are no Stores or other objects to inspect. Make sure you placed the StoreInspector inside a Provider component."):F("article",{ref:t,onScroll:i},F(wt,{s:e}),W(u,(t=>F(wt,{storeId:t,s:e,key:t}))),F(ht,{s:e}),W(h,(t=>F(ht,{metricsId:t,s:e,key:t}))),F(ut,{s:e}),W(b,(t=>F(ut,{indexesId:t,s:e,key:t}))),F(pt,{s:e}),W(p,(t=>F(pt,{relationshipsId:t,s:e,key:t}))),F(bt,{s:e}),W(f,(t=>F(bt,{queriesId:t,s:e,key:t}))))};class Ct extends O{constructor(e){super(e),this.componentDidCatch=(e,t)=>console.error(e,t.componentStack),this.state={e:0}}static getDerivedStateFromError(){return{e:1}}render(){return this.state.e?F("span",{className:"warn"},"Inspector error: please see console for details."):this.props.children}}const vt=({s:e})=>{const t=s.useValue(pe,e)??1,l=s.useSetValueCallback(Ie,(()=>!1),[],e),a=s.useSetValueCallback(pe,(e=>Number(e[k].dataset.id)),[],e);return F("header",null,F("img",{title:ce}),F("span",null,ce),W(he,((e,s)=>s==t?null:F("img",{onClick:a,"data-id":s,title:"Dock to "+e,key:s}))),F("img",{onClick:l,title:"Close"}))},Tt=({s:e})=>{const t=s.useValue(pe,e)??1;return s.useValue(Ie,e)?F("main",{"data-position":t},F(vt,{s:e}),F(Ct,null,F(yt,{s:e}))):null},kt=e=>t=>{return s=(t,s)=>t+e(s),Lt(t).reduce(s,0);var s},St=e=>e?.size??0,xt=kt(St),Vt=kt(xt),Rt=kt(Vt),qt=(e,t)=>e?.has(t)??!1,Nt=e=>q(e)||0==St(e),Lt=e=>[...e?.values()??[]],Mt=e=>e.clear(),Et=(e,t)=>e?.forEach(t),zt=(e,t)=>e?.delete(t),$t=e=>new Map(e),Ot=e=>[...e?.keys()??[]],At=(e,t)=>e?.get(t),Ft=(e,t)=>Et(e,((e,s)=>t(s,e))),Jt=(e,t,s)=>q(s)?(zt(e,t),e):e?.set(t,s),Pt=(e,t,s)=>(qt(e,t)||Jt(e,t,s()),At(e,t)),Ht=(e,t,s,l=Jt)=>(oe(t,((t,l)=>s(e,l,t))),Ft(e,(s=>ae(t,s)?0:l(e,s))),e),Bt=(e,t,s)=>{const l={};return Et(e,((e,a)=>{const n=t?t(e,a):e;!s?.(n,e)&&(l[a]=n)})),l},Dt=(e,t,s)=>Bt(e,(e=>Bt(e,t,s)),re),Qt=(e,t,s)=>Bt(e,(e=>Dt(e,t,s)),re),jt=(e,t)=>{const s=$t();return Et(e,((e,l)=>s.set(l,t?.(e)??e))),s},Wt=e=>jt(e,jt),Ut=e=>jt(e,Wt),Gt=(e,t,s,l,a=0)=>N((s?Pt:At)(e,t[a],a>$(t)-2?s:$t),(n=>{if(a>$(t)-2)return l?.(n)&&Jt(e,t[a]),n;const o=Gt(n,t,s,l,a+1);return Nt(n)&&Jt(e,t[a]),o})),Kt=$t(),Xt=$t(),Yt="storage",Zt=globalThis.window,_t=e=>new Set(E(e)||q(e)?e:[e]),es=(e,t)=>e?.add(t),ts=/^\d+$/,ss=()=>{const e=[];let t=0;return[s=>(s?K(e):null)??a+t++,t=>{ts.test(t)&&$(e)<1e3&&G(e,t)}]},ls=e=>[e,e],as=(e,t=xt)=>t(e[0])+t(e[1]),ns=()=>[$t(),$t()],os=e=>[...e],rs=([e,t])=>e===t,is=(e,t,s)=>q(e)||!se(e)||re(e)||ee(e)?(s?.(),!1):(oe(e,((s,l)=>{t(s,l)||ne(e,l)})),!re(e)),ds=(e,t,s)=>Jt(e,t,At(e,t)==-s?void 0:s),us=()=>{let e,t,s=!1,l=!1,n=!1,o=!1,i=0;const h=$t(),k=$t(),S=$t(),V=$t(),R=$t(),E=$t(),O=$t(),A=$t(),F=$t(),J=$t(),P=$t(),H=$t(),B=$t(),D=$t(),U=_t(),K=$t(),X=$t(),Y=$t(),Z=$t(),_=ns(),ee=ns(),se=ns(),le=ns(),ue=ns(),ce=ns(),he=ns(),me=ns(),be=ns(),ge=ns(),pe=ns(),Ie=ns(),fe=ns(),we=ns(),ye=ns(),Ce=ns(),ve=ns(),Te=ns(),ke=ns(),Se=ns(),xe=ns(),Ve=ns(),Re=$t(),qe=ns(),[Ne,Le,Me,Ee]=(e=>{let t;const[s,l]=ss(),n=$t();return[(e,l,o,r=[],i=(()=>[]))=>{t??=Fs;const d=s(1);return Jt(n,d,[e,l,o,r,i]),es(Gt(l,o??[a],_t),d),d},(e,s,...l)=>j(((e,t=[a])=>{const s=[],l=(e,a)=>a==$(t)?G(s,e):null===t[a]?Et(e,(e=>l(e,a+1))):j([t[a],null],(t=>l(At(e,t),a+1)));return l(e,0),s})(e,s),(e=>Et(e,(e=>At(n,e)[0](t,...s??[],...l))))),e=>N(At(n,e),(([,t,s])=>(Gt(t,s??[a],void 0,(t=>(zt(t,e),Nt(t)?1:0))),Jt(n,e),l(e),s))),e=>N(At(n,e),(([e,,s=[],l,a])=>{const n=(...o)=>{const r=$(o);r==$(s)?e(t,...o,...a(o)):q(s[r])?j(l[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),ze=e=>{if(!is(e,((e,t)=>[d,u].includes(t))))return!1;const t=e[d];return!(!L(t)&&t!=r||($e(e[u])!=t&&ne(e,u),0))},Fe=(t,s)=>(!e||qt(P,s)||bt(s))&&is(t,((e,t)=>Je(s,t,e)),(()=>bt(s))),Je=(e,t,s,l)=>is(l?s:De(s,e,t),((l,a)=>N(Pe(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>bt(e,t))),Pe=(t,s,l,a)=>e?N(At(At(P,t),l),(e=>$e(a)!=e[d]?bt(t,s,l,a,e[u]):a),(()=>bt(t,s,l,a))):q($e(a))?bt(t,s,l,a):a,He=(e,t)=>is(t?e:Qe(e),((t,s)=>N(Be(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>gt())),Be=(e,s)=>t?N(At(B,e),(t=>$e(s)!=t[d]?gt(e,s,t[u]):s),(()=>gt(e,s))):q($e(s))?gt(e,s):s,De=(e,t,s)=>(N(At(H,t),(([l,a])=>{Et(l,((t,s)=>{ae(e,s)||(e[s]=t)})),Et(a,(l=>{ae(e,l)||bt(t,s,l)}))})),e),Qe=e=>(t&&(Et(D,((t,s)=>{ae(e,s)||(e[s]=t)})),Et(U,(t=>{ae(e,t)||gt(t)}))),e),je=e=>Ht(P,e,((e,t,s)=>{const l=$t(),a=_t();Ht(Pt(P,t,$t),s,((e,t,s)=>{Jt(e,t,s),N(s[u],(e=>Jt(l,t,e)),(()=>es(a,t)))})),Jt(H,t,[l,a])}),((e,t)=>{Jt(P,t),Jt(H,t)})),We=e=>Ht(B,e,((e,t,s)=>{Jt(B,t,s),N(s[u],(e=>Jt(D,t,e)),(()=>es(U,t)))}),((e,t)=>{Jt(B,t),Jt(D,t),zt(U,t)})),Ue=e=>re(e)?qs():ks(e),Ge=e=>Ht(Y,e,((e,t,s)=>Ke(t,s)),((e,t)=>at(t))),Ke=(e,t)=>Ht(Pt(Y,e,(()=>(it(e,1),Jt(K,e,ss()),Jt(X,e,$t()),$t()))),t,((t,s,l)=>Xe(e,t,s,l)),((t,s)=>nt(e,t,s))),Xe=(e,t,s,l,a)=>Ht(Pt(t,s,(()=>(dt(e,s,1),$t()))),l,((t,l,a)=>Ye(e,s,t,l,a)),((l,n)=>ot(e,t,s,l,n,a))),Ye=(e,t,s,l,a)=>{qt(s,l)||ut(e,t,l,1);const n=At(s,l);a!==n&&(ct(e,t,l,n,a),Jt(s,l,a))},Ze=(e,t,s,l,a)=>N(At(t,s),(t=>Ye(e,s,t,l,a)),(()=>Xe(e,t,s,De({[l]:a},e,s)))),_e=e=>re(e)?Ms():Ss(e),et=e=>Ht(Z,e,((e,t,s)=>tt(t,s)),((e,t)=>rt(t))),tt=(e,t)=>{qt(Z,e)||ht(e,1);const s=At(Z,e);t!==s&&(mt(e,s,t),Jt(Z,e,t))},st=(e,t)=>{const[s]=At(K,e),l=s(t);return qt(At(Y,e),l)?st(e,t):l},lt=e=>At(Y,e)??Ke(e,{}),at=e=>Ke(e,{}),nt=(e,t,s)=>{const[,l]=At(K,e);l(s),Xe(e,t,s,{},!0)},ot=(e,t,s,l,a,n)=>{const o=At(At(H,e)?.[0],a);if(!q(o)&&!n)return Ye(e,s,l,a,o);const r=t=>{ct(e,s,t,At(l,t)),ut(e,s,t,-1),Jt(l,t)};q(o)?r(a):Ft(l,r),Nt(l)&&(dt(e,s,-1),Nt(Jt(t,s))&&(it(e,-1),Jt(Y,e),Jt(K,e),Jt(X,e)))},rt=e=>{const t=At(D,e);if(!q(t))return tt(e,t);mt(e,At(Z,e)),ht(e,-1),Jt(Z,e)},it=(e,t)=>ds(h,e,t),dt=(e,t,s)=>ds(Pt(V,e,$t),t,s)&&Jt(S,e,Pt(S,e,(()=>0))+s),ut=(e,t,s,l)=>{const a=At(X,e),n=At(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&ds(Pt(k,e,$t),s,l),Jt(a,s,n!=-l?n+l:null),ds(Pt(Pt(R,e,$t),t,$t),s,l)},ct=(e,t,s,l,a)=>Pt(Pt(Pt(E,e,$t),t,$t),s,(()=>[l,0]))[1]=a,ht=(e,t)=>ds(O,e,t),mt=(e,t,s)=>Pt(A,e,(()=>[t,0]))[1]=s,bt=(e,t,s,l,a)=>(G(Pt(Pt(Pt(F,e,$t),t,$t),s,(()=>[])),l),a),gt=(e,t,s)=>(G(Pt(J,e,(()=>[])),t),s),pt=(e,t,s)=>N(At(At(At(E,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...ls(ms(e,t,s))])),It=e=>N(At(A,e),(([e,t])=>[!0,e,t]),(()=>[!1,...ls(ps(e))])),ft=e=>Nt(F)||Nt(Ce[e])?0:Et(e?Ut(F):F,((t,s)=>Et(t,((t,l)=>Et(t,((t,a)=>Le(Ce[e],[s,l,a],t))))))),wt=e=>Nt(J)||Nt(ve[e])?0:Et(e?jt(J):J,((t,s)=>Le(ve[e],[s],t))),yt=(e,t,s,l)=>{if(!Nt(e))return Le(t,l,(()=>Bt(e))),Ft(e,((e,t)=>Le(s,[...l??[],e],1==t))),1},Ct=e=>{const t=Is();t!=n&&Le(_[e],void 0,t);const s=Nt(ge[e]),l=Nt(fe[e])&&Nt(we[e])&&Nt(be[e])&&Nt(pe[e])&&Nt(ce[e])&&Nt(he[e])&&Nt(me[e])&&s&&Nt(se[e])&&Nt(le[e]),a=Nt(ye[e])&&Nt(Ie[e])&&Nt(ue[e])&&Nt(ee[e]);if(!l||!a){const t=e?[jt(h),Wt(k),jt(S),Wt(V),Ut(R),Ut(E)]:[h,k,S,V,R,E];if(!l){yt(t[0],se[e],le[e]),Et(t[1],((t,s)=>yt(t,ce[e],he[e],[s]))),Et(t[2],((t,s)=>{0!=t&&Le(me[e],[s],Zt(s))}));const l=_t();Et(t[3],((t,a)=>{yt(t,be[e],pe[e],[a])&&!s&&(Le(ge[e],[a,null]),es(l,a))})),s||Et(t[5],((t,s)=>{if(!qt(l,s)){const l=_t();Et(t,(e=>Et(e,(([t,s],a)=>s!==t?es(l,a):zt(e,a))))),Et(l,(t=>Le(ge[e],[s,t])))}})),Et(t[4],((t,s)=>Et(t,((t,l)=>yt(t,fe[e],we[e],[s,l])))))}if(!a){let s;Et(t[5],((t,l)=>{let a;Et(t,((t,n)=>{let o;Et(t,(([t,r],i)=>{r!==t&&(Le(ye[e],[l,n,i],r,t,pt),s=a=o=1)})),o&&Le(Ie[e],[l,n],pt)})),a&&Le(ue[e],[l],pt)})),s&&Le(ee[e],void 0,pt)}}},vt=e=>{const t=vs();t!=o&&Le(Te[e],void 0,t);const s=Nt(Se[e])&&Nt(xe[e]),l=Nt(Ve[e])&&Nt(ke[e]);if(!s||!l){const t=e?[jt(O),jt(A)]:[O,A];if(s||yt(t[0],Se[e],xe[e]),!l){let s;Et(t[1],(([t,l],a)=>{l!==t&&(Le(Ve[e],[a],l,t,It),s=1)})),s&&Le(ke[e],void 0,It)}}},Tt=(e,...t)=>($s((()=>e(...W(t,x)))),Fs),kt=()=>[Bt(E,((e,t)=>-1===At(h,t)?null:Bt(e,((e,s)=>-1===At(At(V,t),s)?null:Bt(e,(([,e])=>e??null),((e,t)=>rs(t)))),re)),re),Bt(A,(([,e])=>e??null),((e,t)=>rs(t)))],Lt=()=>({cellsTouched:s,valuesTouched:l,changedCells:Qt(E,os,rs),invalidCells:Qt(F),changedValues:Bt(A,os,rs),invalidValues:Bt(J),changedTableIds:Bt(h),changedRowIds:Dt(V),changedCellIds:Qt(R),changedValueIds:Bt(O)}),Kt=()=>Qt(Y),Xt=()=>Ot(Y),Yt=e=>Ot(At(X,x(e))),Zt=e=>St(At(Y,x(e))),ts=e=>Ot(At(Y,x(e))),cs=(e,t,s,l=0,a)=>{return W(z(Q((n=At(Y,x(e)),o=(e,s)=>[q(t)?s:At(e,x(t)),s],W([...n?.entries()??[]],(([e,t])=>o(t,e)))),(([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1))),l,q(a)?a:l+a),(([,e])=>e));var n,o},hs=(e,t)=>Ot(At(At(Y,x(e)),x(t))),ms=(e,t,s)=>At(At(At(Y,x(e)),x(t)),x(s)),bs=()=>Bt(Z),gs=()=>Ot(Z),ps=e=>At(Z,x(e)),Is=()=>!Nt(Y),fs=e=>qt(Y,x(e)),ws=(e,t)=>qt(At(X,x(e)),x(t)),ys=(e,t)=>qt(At(Y,x(e)),x(t)),Cs=(e,t,s)=>qt(At(At(Y,x(e)),x(t)),x(s)),vs=()=>!Nt(Z),Ts=e=>qt(Z,x(e)),ks=e=>Tt((()=>(e=>is(e,Fe,bt))(e)?Ge(e):0)),Ss=e=>Tt((()=>He(e)?et(e):0)),xs=e=>{try{Ue(de(e))}catch{}return Fs},Vs=t=>Tt((()=>{if((e=is(t,(e=>is(e,ze))))&&(je(t),!Nt(Y))){const e=Kt();qs(),ks(e)}})),Rs=e=>Tt((()=>{if(t=(e=>is(e,ze))(e)){const s=bs();zs(),Ms(),t=!0,We(e),Ss(s)}})),qs=()=>Tt((()=>Ge({}))),Ns=e=>Tt((e=>qt(Y,e)?at(e):0),e),Ls=(e,t)=>Tt(((e,t)=>N(At(Y,e),(s=>qt(s,t)?nt(e,s,t):0))),e,t),Ms=()=>Tt((()=>et({}))),Es=()=>Tt((()=>{je({}),e=!1})),zs=()=>Tt((()=>{We({}),t=!1})),$s=(e,t)=>{if(-1!=i){Os();const s=e();return As(t),s}},Os=()=>(-1!=i&&i++,1==i&&Le(Re,void 0,kt,Lt),Fs),As=e=>(i>0&&(i--,0==i&&(s=!Nt(E),l=!Nt(A),i=1,ft(1),s&&Ct(1),wt(1),l&&vt(1),e?.(kt,Lt)&&(Et(E,((e,t)=>Et(e,((e,s)=>Et(e,(([e],l)=>Oe(Fs,t,s,l,e))))))),Et(A,(([e],t)=>Ae(Fs,t,e))),s=l=!1),Le(qe[0],void 0,kt,Lt),i=-1,ft(0),s&&Ct(0),wt(0),l&&vt(0),Le(qe[1],void 0,kt,Lt),i=0,s=l=!1,n=Is(),o=vs(),j([h,k,S,V,R,E,F,O,A,J],Mt))),Fs),Fs={getContent:()=>[Kt(),bs()],getTables:Kt,getTableIds:Xt,getTable:e=>Dt(At(Y,x(e))),getTableCellIds:Yt,getRowCount:Zt,getRowIds:ts,getSortedRowIds:cs,getRow:(e,t)=>Bt(At(At(Y,x(e)),x(t))),getCellIds:hs,getCell:ms,getValues:bs,getValueIds:gs,getValue:ps,hasTables:Is,hasTable:fs,hasTableCell:ws,hasRow:ys,hasCell:Cs,hasValues:vs,hasValue:Ts,getTablesJson:()=>ie(Y),getValuesJson:()=>ie(Z),getJson:()=>ie([Y,Z]),getTablesSchemaJson:()=>ie(P),getValuesSchemaJson:()=>ie(B),getSchemaJson:()=>ie([P,B]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>Tt((()=>{(re(e)?qs:ks)(e),(re(t)?Ms:Ss)(t)})),setTables:ks,setTable:(e,t)=>Tt((e=>Fe(t,e)?Ke(e,t):0),e),setRow:(e,t,s)=>Tt(((e,t)=>Je(e,t,s)?Xe(e,lt(e),t,s):0),e,t),addRow:(e,t,s=!0)=>$s((()=>{let l;return Je(e,l,t)&&(e=x(e),Xe(e,lt(e),l=st(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>Tt(((e,t)=>{if(Je(e,t,s,1)){const l=lt(e);oe(s,((s,a)=>Ze(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>Tt(((e,t,s)=>N(Pe(e,t,s,M(l)?l(ms(e,t,s)):l),(l=>Ze(e,lt(e),t,s,l)))),e,t,s),setValues:Ss,setPartialValues:e=>Tt((()=>He(e,1)?oe(e,((e,t)=>tt(t,e))):0)),setValue:(e,t)=>Tt((e=>N(Be(e,M(t)?t(ps(e)):t),(t=>tt(e,t)))),e),setTransactionChanges:e=>Tt((()=>{oe(e[0],((e,t)=>q(e)?Ns(t):oe(e,((e,s)=>q(e)?Ls(t,s):oe(e,((e,l)=>Oe(Fs,t,s,l,e))))))),oe(e[1],((e,t)=>Ae(Fs,t,e)))})),setTablesJson:xs,setValuesJson:e=>{try{_e(de(e))}catch{}return Fs},setJson:e=>Tt((()=>{try{const[t,s]=de(e);Ue(t),_e(s)}catch{xs(e)}})),setTablesSchema:Vs,setValuesSchema:Rs,setSchema:(e,t)=>Tt((()=>{Vs(e),Rs(t)})),delTables:qs,delTable:Ns,delRow:Ls,delCell:(e,t,s,l)=>Tt(((e,t,s)=>N(At(Y,e),(a=>N(At(a,t),(n=>qt(n,s)?ot(e,a,t,n,s,l):0))))),e,t,s),delValues:Ms,delValue:e=>Tt((e=>qt(Z,e)?rt(e):0),e),delTablesSchema:Es,delValuesSchema:zs,delSchema:()=>Tt((()=>{Es(),zs()})),transaction:$s,startTransaction:Os,finishTransaction:As,forEachTable:e=>Et(Y,((t,s)=>e(s,(e=>Et(t,((t,s)=>e(s,(e=>Ft(t,e))))))))),forEachTableCell:(e,t)=>Ft(At(X,x(e)),t),forEachRow:(e,t)=>Et(At(Y,x(e)),((e,s)=>t(s,(t=>Ft(e,t))))),forEachCell:(e,t,s)=>Ft(At(At(Y,x(e)),x(t)),s),forEachValue:e=>Ft(Z,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>{let r=cs(e,t,s,l,a);return Ne((()=>{const o=cs(e,t,s,l,a);var i,d,u;d=r,$(i=o)===$(d)&&(u=(e,t)=>d[t]===e,i.every(u))||(r=o,n(Fs,e,t,s,l,a,r))}),ge[o?1:0],[e,t],[Xt])},addStartTransactionListener:e=>Ne(e,Re),addWillFinishTransactionListener:e=>Ne(e,qe[0]),addDidFinishTransactionListener:e=>Ne(e,qe[1]),callListener:e=>(Ee(e),Fs),delListener:e=>(Me(e),Fs),getListenerStats:()=>({hasTables:as(_),tables:as(ee),tableIds:as(se),hasTable:as(le),table:as(ue),tableCellIds:as(ce),hasTableCell:as(he,Vt),rowCount:as(me),rowIds:as(be),sortedRowIds:as(ge),hasRow:as(pe,Vt),row:as(Ie,Vt),cellIds:as(fe,Vt),hasCell:as(we,Rt),cell:as(ye,Rt),invalidCell:as(Ce,Rt),hasValues:as(Te),values:as(ke),valueIds:as(Se),hasValue:as(xe),value:as(Ve),invalidValue:as(ve),transaction:xt(Re)+as(qe)}),createStore:us,addListener:Ne,callListeners:Le};return oe({[c+b]:[0,_,[],()=>[Is()]],[b]:[0,ee],[g]:[0,se],[c+m]:[1,le,[Xt],e=>[fs(...e)]],[m]:[1,ue,[Xt]],[m+y]:[1,ce,[Xt]],[c+m+w]:[2,he,[Xt,Yt],e=>[ws(...e)]],[I]:[1,me,[Xt]],[f]:[1,be,[Xt]],[c+p]:[2,pe,[Xt,ts],e=>[ys(...e)]],[p]:[2,Ie,[Xt,ts]],[y]:[2,fe,[Xt,ts]],[c+w]:[3,we,[Xt,ts,hs],e=>[Cs(...e)]],[w]:[3,ye,[Xt,ts,hs],e=>ls(ms(...e))],InvalidCell:[3,Ce],[c+v]:[0,Te,[],()=>[vs()]],[v]:[0,ke],[T]:[0,Se],[c+C]:[1,xe,[gs],e=>[Ts(...e)]],[C]:[1,Ve,[gs],e=>ls(ps(e[0]))],InvalidValue:[1,ve]},(([e,t,s,l],a)=>{Fs["add"+a+"Listener"]=(...a)=>Ne(a[e],t[a[e+1]?1:0],e>0?z(a,0,e):void 0,s,l)})),te(Fs)},cs=({position:e="right",open:t=!1})=>{const l=s.useCreateStore(us),a=he.indexOf(e);return s.useCreatePersister(l,(e=>{return((e,t,s,l)=>((e,t,s,l,a,n,[o,r]=[],i=[])=>{let d,u,c,h=0,m=0,b=0,g=0;Pt(Kt,i,(()=>0)),Pt(Xt,i,(()=>[]));const p=async e=>(2!=h&&(h=1,m++,await I.schedule((async()=>{await e(),h=0}))),I),I={load:async(s,l)=>await p((async()=>{try{e.setContent(await t())}catch{e.setContent([s,l])}})),startAutoLoad:async(s={},a={})=>(I.stopAutoLoad(),await I.load(s,a),g=1,c=l((async(s,l)=>{if(l){const t=l();await p((async()=>e.setTransactionChanges(t)))}else await p((async()=>{try{e.setContent(s?.()??await t())}catch(e){n?.(e)}}))})),I),stopAutoLoad:()=>(g&&(a(c),c=void 0,g=0),I),save:async t=>(1!=h&&(h=2,b++,await I.schedule((async()=>{try{await s(e.getContent,t)}catch(e){n?.(e)}h=0}))),I),startAutoSave:async()=>(await I.stopAutoSave().save(),d=e.addDidFinishTransactionListener(((e,t)=>{const[s,l]=t();re(s)&&re(l)||I.save((()=>[s,l]))})),I),stopAutoSave:()=>(N(d,e.delListener),d=void 0,I),schedule:async(...e)=>(G(At(Xt,i),...e),await(async()=>{if(!At(Kt,i)){for(Jt(Kt,i,1);!q(u=K(At(Xt,i)));)try{await u()}catch(e){n?.(e)}Jt(Kt,i,0)}})(),I),getStore:()=>e,destroy:()=>I.stopAutoLoad().stopAutoSave(),getStats:()=>({loads:m,saves:b})};return o&&(I[o]=()=>r),te(I)})(e,(async()=>de(s.getItem(t))),(async e=>s.setItem(t,ie(e()))),(e=>{const l=l=>{l.storageArea===s&&l.key===t&&e((()=>de(l.newValue)))};return Zt.addEventListener(Yt,l),l}),(e=>Zt.removeEventListener(Yt,e)),l,["getStorageName",t]))(e,ue,sessionStorage,t);var t}),void 0,(async e=>{await e.load(void 0,{position:-1==a?1:a,open:!!t}),await e.startAutoSave()})),F(A,null,F("aside",{id:ue},F(Ee,{s:l}),F(Tt,{s:l})),F("style",null,Me))};e.EditableCellView=nt,e.EditableValueView=ot,e.RelationshipInHtmlTable=lt,e.ResultSortedTableInHtmlTable=at,e.ResultTableInHtmlTable=({queryId:e,queries:t,customCells:l,...a})=>F(Xe,{...a,params:je(Ke(s.useResultTableCellIds(e,t),l,s.ResultCellView),Ue(t,e),s.useResultRowIds(e,t))}),e.SliceInHtmlTable=st,e.SortedTableInHtmlTable=et,e.SortedTablePaginator=rt,e.StoreInspector=e=>F(cs,{...e}),e.TableInHtmlTable=({tableId:e,store:t,editable:l,customCells:a,...n})=>F(Xe,{...n,params:je(Ke(s.useTableCellIds(e,t),a,l?nt:s.CellView),We(t,e),s.useRowIds(e,t))}),e.ValuesInHtmlTable=tt},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("./ui-react")):"function"==typeof define&&define.amd?define(["exports","react","./ui-react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReactDomDebug={},e.React,e.TinyBaseUiReact);
1
+ var e,t;e=this,t=function(e,t,s){"use strict";const l=e=>typeof e,a="",n=l(a),o=l(!0),r=l(0),i=l(l),d="type",u="default",c="Has",h="Ids",m="Table",b=m+"s",g=m+h,p="Row",I=p+"Count",f=p+h,y="Cell",w=y+h,C="Value",v=C+"s",T=C+h,k="currentTarget",S="value",x=e=>a+e,V=Math.floor,R=isFinite,q=e=>null==e,N=(e,t,s)=>q(e)?s?.():t(e),L=e=>e==n||e==o,M=e=>l(e)==n,E=e=>l(e)==i,z=e=>Array.isArray(e),$=(e,t,s)=>e.slice(t,s),O=e=>e.length,{PureComponent:A,Fragment:P,createElement:F,useCallback:J,useLayoutEffect:H,useRef:B,useState:D}=t,Q=(e,...t)=>q(e)?{}:e(...t),j=(e,t)=>e.sort(t),W=(e,t)=>e.forEach(t),U=(e,t)=>e.map(t),G=e=>0==O(e),K=(e,...t)=>e.push(...t),X=e=>e.shift(),Y=Object,Z=e=>Y.getPrototypeOf(e),_=Y.entries,ee=Y.keys,te=Y.isFrozen,se=Y.freeze,le=e=>!q(e)&&N(Z(e),(e=>e==Y.prototype||q(Z(e))),(()=>!0)),ae=(e=[])=>Y.fromEntries(e),ne=(e,t)=>t in e,oe=(e,t)=>(delete e[t],e),re=(e,t)=>U(_(e),(([e,s])=>t(s,e))),ie=e=>le(e)&&0==(e=>O(ee(e)))(e),de=e=>JSON.stringify(e,((e,t)=>t instanceof Map?Y.fromEntries([...t]):t)),ue=JSON.parse,ce="tinybaseStoreInspector",he="TinyBase Store Inspector",me=["left","top","bottom","right","full"],be="state",ge="sort",pe="open",Ie="position",fe=pe,ye="editable",we=(...e)=>de(e),Ce=(e,t)=>U(j(e),t),ve=(e,t)=>[!!s.useCell(be,e,ye,t),J((s=>{t.setCell(be,e,ye,(e=>!e)),s.preventDefault()}),[t,e])],Te="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",ke='content:url("',Se=ke+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",xe='</svg>")',Ve=ke+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")",Re=U([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,s,l])=>Se+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${s}' height='${l}' fill='white'/>`+xe)),qe=Se+"<path d='M20 20l60 60M20 80l60-60' />"+xe,Ne=Se+`<path d='${Te}' />`+xe,Le=Se+`<path d='${Te}M20 20l60 60' />`+xe,Me="*::-webkit-scrollbar",Ee=((e,t="")=>e.join(t))(re({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[Me]:"width:0.5rem;height:0.5rem;",[Me+"-track"]:"background:#111",[Me+"-thumb"]:"background:#999;border:1px solid #111",[Me+"-thumb:hover"]:"background:#fff",[Me+"-corner"]:"background:#111",img:"width:1rem;height:1rem;background:#111;border:0;vertical-align:text-bottom",">img":"padding:0.25rem;bottom:0;right:0;position:fixed;"+Ve,...ae(U(["bottom:0;left:0","top:0;right:0"],((e,t)=>[`>img[data-position='${t}']`,e]))),main:"display:flex;flex-direction:column;background:#111d;color:#fff;position:fixed;",...ae(U(["bottom:0;left:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:30vh","bottom:0;left:0;width:100vw;height:30vh","top:0;right:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:100vh"],((e,t)=>[`main[data-position='${t}']`,e]))),header:"display:flex;padding:0.25rem;background:#000;align-items:center","header>img:nth-of-type(1)":Ve,"header>img:nth-of-type(6)":qe,...ae(U(Re,((e,t)=>[`header>img[data-id='${t}']`,e]))),"header>span":"flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-left:0.25rem",article:"padding:0.25rem 0.25rem 0.25rem 0.5rem;overflow:auto;flex:1",details:"margin-left:0.75rem;width:fit-content;","details img":"display:none","details[open]>summary img":"display:unset;background:none;margin-left:0.25rem","details[open]>summary img.edit":Ne,"details[open]>summary img.done":Le,summary:"margin-left:-0.75rem;line-height:1.25rem;user-select:none;width:fit-content",table:"border-collapse:collapse;table-layout:fixed;margin-bottom:0.5rem","table input":"background:#111;color:unset;padding:0 0.25rem;border:0;font-size:unset;vertical-align:top;margin:0",'table input[type="number"]':"width:4rem","table tbody button":"font-size:0;background:#fff;border-radius:50%;margin:0 0.125rem 0 0;width:0.85rem;color:#111","table button:first-letter":"font-size:0.75rem",thead:"background:#222","th:nth-of-type(1)":"min-width:2rem;","th.sorted":"background:#000","table caption":"text-align:left;white-space:nowrap;line-height:1.25rem",button:"width:1.5rem;border:none;background:none;color:#fff;padding:0","button[disabled]":"color:#777","button.next":"margin-right:0.5rem",[`th,#${ce} td`]:"overflow:hidden;text-overflow:ellipsis;padding:0.25rem 0.5rem;max-width:12rem;white-space:nowrap;border-width:1px 0;border-style:solid;border-color:#777;text-align:left","span.warn":"margin:0.25rem;color:#d81b60"},((e,t)=>e?`#${ce} ${t}{${e}}`:""))),ze=({s:e})=>{const t=s.useValue(Ie,e)??1,l=s.useSetValueCallback(fe,(()=>!0),[],e);return s.useValue(fe,e)?null:F("img",{onClick:l,title:he,"data-position":t})},$e=({uniqueId:e,summary:t,editable:l,handleEditable:a,children:n,s:o})=>{const r=!!s.useCell(be,e,pe,o),i=s.useSetCellCallback(be,e,pe,(e=>e[k].open),[],o);return F("details",{open:r,onToggle:i},F("summary",null,t,a?F("img",{onClick:a,className:l?"done":"edit"}):null),n)},Oe=e=>{const t=l(e);return L(t)||t==r&&R(e)?t:void 0},Ae=(e,t,s,l,a)=>q(a)?e.delCell(t,s,l,!0):e.setCell(t,s,l,a),Pe=(e,t,s)=>q(s)?e.delValue(t):e.setValue(t,s),Fe=(e,t,s,l)=>e==n?t:e==r?s:l,{useCallback:Je,useMemo:He,useState:Be}=t,De="editable",Qe=(e,t)=>U(s.useTableCellIds(e,t),(t=>e+"."+t)),je=(e,t,s)=>{const l=Je(e,t);return s?l:void 0},We=(...e)=>He((()=>e),e),Ue=(e,t)=>He((()=>({store:e,tableId:t})),[e,t]),Ge=(e,t)=>He((()=>({queries:e,queryId:t})),[e,t]),Ke=(e,t=!1,s,l=0,a,n,o,r)=>{const[[i,d,u],c]=Be([e,t,l]),h=Je((e=>{c(e),r?.(e)}),[r]),m=je((e=>h([e,e==i&&!d,u])),[h,i,d,u],s),b=Je((e=>h([i,d,e])),[h,i,d]),g=!0===o?it:o;return[[i,d,u],m,He((()=>!1===o?null:F(g,{offset:u,limit:a,total:n,onChange:b})),[o,g,u,a,n,b])]},Xe=(e,t,s)=>He((()=>{const l=t??e;return a=z(l)?ae(U(l,(e=>[e,e]))):l,n=(e,t)=>({label:t,component:s,...M(e)?{label:e}:e}),ae(re(a,((e,t)=>[t,n(e,t)])));var a,n}),[t,s,e]),Ye=({className:e,headerRow:t,idColumn:s,params:[l,a,n,o,r,i]})=>F("table",{className:e},i?F("caption",null,i):null,!1===t?null:F("thead",null,F("tr",null,!1===s?null:F(Ze,{sort:o??[],label:"Id",onClick:r}),re(l,(({label:e},t)=>F(Ze,{key:t,cellId:t,label:e,sort:o??[],onClick:r}))))),F("tbody",null,U(n,(e=>F("tr",{key:e},!1===s?null:F("th",null,e),re(l,(({component:t,getComponentProps:s},l)=>F("td",{key:l},F(t,{...Q(s,e,l),...a,rowId:e,cellId:l}))))))))),Ze=({cellId:e,sort:[t,s],label:l=e??a,onClick:n})=>F("th",{onClick:je((()=>n?.(e)),[n,e],n),className:q(s)||t!=e?void 0:`sorted ${s?"de":"a"}scending`},q(s)||t!=e?null:(s?"↓":"↑")+" ",l),_e=({localRowId:e,params:[l,a,n,o,r,i,d]})=>{const u=s.useRemoteRowId(r,e,i);return F("tr",null,!1===l?null:F(t.Fragment,null,F("th",null,e),F("th",null,u)),re(a,(({component:t,getComponentProps:s},l)=>{const[a,r]=l.split(".",2),i=a===n?e:a===o?u:null;return q(i)?null:F("td",{key:l},F(t,{...Q(s,i,r),store:d,tableId:a,rowId:i,cellId:r}))})))},et=({thing:e,onThingChange:t,className:s,hasSchema:l,showType:a=!0})=>{const[i,d]=Be(),[u,c]=Be(),[h,m]=Be(),[b,g]=Be(),[p,I]=Be();u!==e&&(d(Oe(e)),c(e),m(e+""),g(Number(e)||0),I(!!e));const f=Je(((e,s)=>{s(e),c(e),t(e)}),[t]),y=Je((()=>{if(!l?.()){const e=Fe(i,r,o,n),s=Fe(e,h,b,p);d(e),c(s),t(s)}}),[l,t,h,b,p,i]);return F("div",{className:s},a?F("button",{className:i,onClick:y},i):null,Fe(i,F("input",{key:i,value:h,onChange:Je((e=>f(e[k][S]+"",m)),[f])}),F("input",{key:i,type:"number",value:b,onChange:Je((e=>f(Number(e[k][S]||0),g)),[f])}),F("input",{key:i,type:"checkbox",checked:p,onChange:Je((e=>f(!!e[k].checked,I)),[f])})))},tt=({tableId:e,cellId:t,descending:l,offset:a,limit:n,store:o,editable:r,sortOnClick:i,paginator:d=!1,onChange:u,customCells:c,...h})=>{const[m,b,g]=Ke(t,l,i,a,n,s.useRowCount(e,o),d,u);return F(Ye,{...h,params:We(Xe(s.useTableCellIds(e,o),c,r?ot:s.CellView),Ue(o,e),s.useSortedRowIds(e,...m,n,o),m,b,g)})},st=({store:e,editable:t=!1,valueComponent:l=(t?rt:s.ValueView),getValueComponentProps:a,className:n,headerRow:o,idColumn:r})=>F("table",{className:n},!1===o?null:F("thead",null,F("tr",null,!1===r?null:F("th",null,"Id"),F("th",null,C))),F("tbody",null,U(s.useValueIds(e),(t=>F("tr",{key:t},!1===r?null:F("th",null,t),F("td",null,F(l,{...Q(a,t),valueId:t,store:e}))))))),lt=({indexId:e,sliceId:t,indexes:l,editable:a,customCells:n,...o})=>{const[r,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(s.useIndexesOrIndexesById(l),e);return F(Ye,{...o,params:We(Xe(s.useTableCellIds(d,i),n,a?ot:s.CellView),Ue(i,d),s.useSliceRowIds(e,t,r))})},at=({relationshipId:e,relationships:l,editable:a,customCells:n,className:o,headerRow:r,idColumn:i=!0})=>{const[d,u,c,h]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(s.useRelationshipsOrRelationshipsById(l),e),m=Xe([...Qe(c,u),...Qe(h,u)],n,a?ot:s.CellView),b=We(i,m,c,h,e,d,u);return F("table",{className:o},!1===r?null:F("thead",null,F("tr",null,!1===i?null:F(t.Fragment,null,F("th",null,c,".Id"),F("th",null,h,".Id")),re(m,(({label:e},t)=>F("th",{key:t},e))))),F("tbody",null,U(s.useRowIds(c,u),(e=>F(_e,{key:e,localRowId:e,params:b})))))},nt=({queryId:e,cellId:t,descending:l,offset:a,limit:n,queries:o,sortOnClick:r,paginator:i=!1,customCells:d,onChange:u,...c})=>{const[h,m,b]=Ke(t,l,r,a,n,s.useResultRowCount(e,o),i,u);return F(Ye,{...c,params:We(Xe(s.useResultTableCellIds(e,o),d,s.ResultCellView),Ge(o,e),s.useResultSortedRowIds(e,...h,n,o),h,m,b)})},ot=({tableId:e,rowId:t,cellId:l,store:a,className:n,showType:o})=>F(et,{thing:s.useCell(e,t,l,a),onThingChange:s.useSetCellCallback(e,t,l,(e=>e),[],a),className:n??De+y,showType:o,hasSchema:s.useStoreOrStoreById(a)?.hasTablesSchema}),rt=({valueId:e,store:t,className:l,showType:a})=>F(et,{thing:s.useValue(e,t),onThingChange:s.useSetValueCallback(e,(e=>e),[],t),className:l??De+C,showType:a,hasSchema:s.useStoreOrStoreById(t)?.hasValuesSchema}),it=({onChange:e,total:s,offset:l=0,limit:a=s,singular:n="row",plural:o=n+"s"})=>{(l>s||l<0)&&(l=0,e(0));const r=je((()=>e(l-a)),[e,l,a],l>0),i=je((()=>e(l+a)),[e,l,a],l+a<s);return F(t.Fragment,null,s>a&&F(t.Fragment,null,F("button",{className:"previous",disabled:0==l,onClick:r},"←"),F("button",{className:"next",disabled:l+a>=s,onClick:i},"→"),l+1," to ",Math.min(s,l+a)," of "),s," ",1!=s?o:n)},dt=({indexes:e,indexesId:t,indexId:l,s:a})=>F($e,{uniqueId:we("i",t,l),summary:"Index: "+l,s:a},U(s.useSliceIds(l,e),(s=>F(ut,{indexes:e,indexesId:t,indexId:l,sliceId:s,s:a,key:s})))),ut=({indexes:e,indexesId:t,indexId:s,sliceId:l,s:a})=>{const n=we("i",t,s,l),[o,r]=ve(n,a);return F($e,{uniqueId:n,summary:"Slice: "+l,editable:o,handleEditable:r,s:a},F(lt,{sliceId:l,indexId:s,indexes:e,editable:o}))},ct=({indexesId:e,s:t})=>{const l=s.useIndexes(e),a=s.useIndexIds(l);return q(l)?null:F($e,{uniqueId:we("i",e),summary:"Indexes: "+(e??u),s:t},G(a)?"No indexes defined":Ce(a,(s=>F(dt,{indexes:l,indexesId:e,indexId:s,s:t,key:s}))))},ht=({metrics:e,metricId:t})=>F("tr",null,F("th",null,t),F("td",null,e?.getTableId(t)),F("td",null,s.useMetric(t,e))),mt=({metricsId:e,s:t})=>{const l=s.useMetrics(e),a=s.useMetricIds(l);return q(l)?null:F($e,{uniqueId:we("m",e),summary:"Metrics: "+(e??u),s:t},G(a)?"No metrics defined":F("table",null,F("thead",null,F("th",null,"Metric Id"),F("th",null,"Table Id"),F("th",null,"Metric")),F("tbody",null,U(a,(e=>F(ht,{metrics:l,metricId:e,key:e}))))))},bt=({queries:e,queriesId:t,queryId:l,s:a})=>{const n=we("q",t,l),[o,r,i]=ue(s.useCell(be,n,ge,a)??"[]"),d=s.useSetCellCallback(be,n,ge,de,[],a);return F($e,{uniqueId:n,summary:"Query: "+l,s:a},F(nt,{queryId:l,queries:e,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d}))},gt=({queriesId:e,s:t})=>{const l=s.useQueries(e),a=s.useQueryIds(l);return q(l)?null:F($e,{uniqueId:we("q",e),summary:"Queries: "+(e??u),s:t},G(a)?"No queries defined":Ce(a,(s=>F(bt,{queries:l,queriesId:e,queryId:s,s:t,key:s}))))},pt=({relationships:e,relationshipsId:t,relationshipId:s,s:l})=>{const a=we("r",t,s),[n,o]=ve(a,l);return F($e,{uniqueId:a,summary:"Relationship: "+s,editable:n,handleEditable:o,s:l},F(at,{relationshipId:s,relationships:e,editable:n}))},It=({relationshipsId:e,s:t})=>{const l=s.useRelationships(e),a=s.useRelationshipIds(l);return q(l)?null:F($e,{uniqueId:we("r",e),summary:"Relationships: "+(e??u),s:t},G(a)?"No relationships defined":Ce(a,(s=>F(pt,{relationships:l,relationshipsId:e,relationshipId:s,s:t,key:s}))))},ft=({tableId:e,store:t,storeId:l,s:a})=>{const n=we("t",l,e),[o,r,i]=ue(s.useCell(be,n,ge,a)??"[]"),d=s.useSetCellCallback(be,n,ge,de,[],a),[u,c]=ve(n,a);return F($e,{uniqueId:n,summary:m+": "+e,editable:u,handleEditable:c,s:a},F(tt,{tableId:e,store:t,cellId:o,descending:r,offset:i,limit:10,paginator:!0,sortOnClick:!0,onChange:d,editable:u}))},yt=({store:e,storeId:t,s:l})=>{const a=we("v",t),[n,o]=ve(a,l);return G(s.useValueIds(e))?null:F($e,{uniqueId:a,summary:v,editable:n,handleEditable:o,s:l},F(st,{store:e,editable:n}))},wt=({storeId:e,s:t})=>{const l=s.useStore(e),a=s.useTableIds(l);return q(l)?null:F($e,{uniqueId:we("s",e),summary:"Store: "+(e??u),s:t},F(yt,{storeId:e,store:l,s:t}),Ce(a,(s=>F(ft,{store:l,storeId:e,tableId:s,s:t,key:s}))))},Ct=({s:e})=>{const t=B(null),l=B(0),[a,n]=D(!1),{scrollLeft:o,scrollTop:r}=s.useValues(e);H((()=>{const e=t.current;if(e&&!a){const t=new MutationObserver((()=>{e.scrollWidth>=V(o)+e.clientWidth&&e.scrollHeight>=V(r)+e.clientHeight&&e.scrollTo(o,r)}));return t.observe(e,{childList:!0,subtree:!0}),()=>t.disconnect()}}),[a,o,r]);const i=J((t=>{const{scrollLeft:s,scrollTop:a}=t[k];cancelIdleCallback(l.current),l.current=requestIdleCallback((()=>{n(!0),e.setPartialValues({scrollLeft:s,scrollTop:a})}))}),[e]),d=s.useStore(),u=s.useStoreIds(),c=s.useMetrics(),h=s.useMetricsIds(),m=s.useIndexes(),b=s.useIndexesIds(),g=s.useRelationships(),p=s.useRelationshipsIds(),I=s.useQueries(),f=s.useQueriesIds();return q(d)&&G(u)&&q(c)&&G(h)&&q(m)&&G(b)&&q(g)&&G(p)&&q(I)&&G(f)?F("span",{className:"warn"},"There are no Stores or other objects to inspect. Make sure you placed the StoreInspector inside a Provider component."):F("article",{ref:t,onScroll:i},F(wt,{s:e}),U(u,(t=>F(wt,{storeId:t,s:e,key:t}))),F(mt,{s:e}),U(h,(t=>F(mt,{metricsId:t,s:e,key:t}))),F(ct,{s:e}),U(b,(t=>F(ct,{indexesId:t,s:e,key:t}))),F(It,{s:e}),U(p,(t=>F(It,{relationshipsId:t,s:e,key:t}))),F(gt,{s:e}),U(f,(t=>F(gt,{queriesId:t,s:e,key:t}))))};class vt extends A{constructor(e){super(e),this.componentDidCatch=(e,t)=>console.error(e,t.componentStack),this.state={e:0}}static getDerivedStateFromError(){return{e:1}}render(){return this.state.e?F("span",{className:"warn"},"Inspector error: please see console for details."):this.props.children}}const Tt=({s:e})=>{const t=s.useValue(Ie,e)??1,l=s.useSetValueCallback(fe,(()=>!1),[],e),a=s.useSetValueCallback(Ie,(e=>Number(e[k].dataset.id)),[],e);return F("header",null,F("img",{title:he}),F("span",null,he),U(me,((e,s)=>s==t?null:F("img",{onClick:a,"data-id":s,title:"Dock to "+e,key:s}))),F("img",{onClick:l,title:"Close"}))},kt=({s:e})=>{const t=s.useValue(Ie,e)??1;return s.useValue(fe,e)?F("main",{"data-position":t},F(Tt,{s:e}),F(vt,null,F(Ct,{s:e}))):null},St=e=>t=>{return s=(t,s)=>t+e(s),Mt(t).reduce(s,0);var s},xt=e=>e?.size??0,Vt=St(xt),Rt=St(Vt),qt=St(Rt),Nt=(e,t)=>e?.has(t)??!1,Lt=e=>q(e)||0==xt(e),Mt=e=>[...e?.values()??[]],Et=e=>e.clear(),zt=(e,t)=>e?.forEach(t),$t=(e,t)=>e?.delete(t),Ot=e=>new Map(e),At=e=>[...e?.keys()??[]],Pt=(e,t)=>e?.get(t),Ft=(e,t)=>zt(e,((e,s)=>t(s,e))),Jt=(e,t,s)=>q(s)?($t(e,t),e):e?.set(t,s),Ht=(e,t,s)=>(Nt(e,t)||Jt(e,t,s()),Pt(e,t)),Bt=(e,t,s,l=Jt)=>(re(t,((t,l)=>s(e,l,t))),Ft(e,(s=>ne(t,s)?0:l(e,s))),e),Dt=(e,t,s)=>{const l={};return zt(e,((e,a)=>{const n=t?t(e,a):e;!s?.(n,e)&&(l[a]=n)})),l},Qt=(e,t,s)=>Dt(e,(e=>Dt(e,t,s)),ie),jt=(e,t,s)=>Dt(e,(e=>Qt(e,t,s)),ie),Wt=(e,t)=>{const s=Ot();return zt(e,((e,l)=>s.set(l,t?.(e)??e))),s},Ut=e=>Wt(e,Wt),Gt=e=>Wt(e,Ut),Kt=(e,t,s,l,a=0)=>N((s?Ht:Pt)(e,t[a],a>O(t)-2?s:Ot),(n=>{if(a>O(t)-2)return l?.(n)&&Jt(e,t[a]),n;const o=Kt(n,t,s,l,a+1);return Lt(n)&&Jt(e,t[a]),o})),Xt=Ot(),Yt=Ot(),Zt="storage",_t=globalThis.window,es=e=>new Set(z(e)||q(e)?e:[e]),ts=(e,t)=>e?.add(t),ss=/^\d+$/,ls=()=>{const e=[];let t=0;return[s=>(s?X(e):null)??a+t++,t=>{ss.test(t)&&O(e)<1e3&&K(e,t)}]},as=e=>[e,e],ns=(e,t=Vt)=>t(e[0])+t(e[1]),os=()=>[Ot(),Ot()],rs=e=>[...e],is=([e,t])=>e===t,ds=(e,t,s)=>q(e)||!le(e)||ie(e)||te(e)?(s?.(),!1):(re(e,((s,l)=>{t(s,l)||oe(e,l)})),!ie(e)),us=(e,t,s)=>Jt(e,t,Pt(e,t)==-s?void 0:s),cs=()=>{let e,t,s,l=!1,n=!1,o=!1,i=!1,h=0;const k=Ot(),S=Ot(),V=Ot(),R=Ot(),M=Ot(),z=Ot(),A=Ot(),P=Ot(),F=Ot(),J=Ot(),H=Ot(),B=Ot(),D=Ot(),Q=Ot(),G=es(),X=Ot(),Y=Ot(),Z=Ot(),_=Ot(),ee=os(),te=os(),le=os(),ae=os(),ce=os(),he=os(),me=os(),be=os(),ge=os(),pe=os(),Ie=os(),fe=os(),ye=os(),we=os(),Ce=os(),ve=os(),Te=os(),ke=os(),Se=os(),xe=os(),Ve=os(),Re=os(),qe=Ot(),Ne=os(),[Le,Me,Ee,ze]=(e=>{let t;const[s,l]=ls(),n=Ot();return[(e,l,o,r=[],i=(()=>[]))=>{t??=As;const d=s(1);return Jt(n,d,[e,l,o,r,i]),ts(Kt(l,o??[a],es),d),d},(e,s,...l)=>W(((e,t=[a])=>{const s=[],l=(e,a)=>a==O(t)?K(s,e):null===t[a]?zt(e,(e=>l(e,a+1))):W([t[a],null],(t=>l(Pt(e,t),a+1)));return l(e,0),s})(e,s),(e=>zt(e,(e=>Pt(n,e)[0](t,...s??[],...l))))),e=>N(Pt(n,e),(([,t,s])=>(Kt(t,s??[a],void 0,(t=>($t(t,e),Lt(t)?1:0))),Jt(n,e),l(e),s))),e=>N(Pt(n,e),(([e,,s=[],l,a])=>{const n=(...o)=>{const r=O(o);r==O(s)?e(t,...o,...a(o)):q(s[r])?W(l[r]?.(...o)??[],(e=>n(...o,e))):n(...o,s[r])};n()}))]})(),$e=e=>{if(!ds(e,((e,t)=>[d,u].includes(t))))return!1;const t=e[d];return!(!L(t)&&t!=r||(Oe(e[u])!=t&&oe(e,u),0))},Fe=(t,s)=>(!e||Nt(H,s)||gt(s))&&ds(t,((e,t)=>Je(s,t,e)),(()=>gt(s))),Je=(e,t,s,l)=>ds(l?s:Qe(s,e,t),((l,a)=>N(He(e,t,a,l),(e=>(s[a]=e,!0)),(()=>!1))),(()=>gt(e,t))),He=(t,s,l,a)=>e?N(Pt(Pt(H,t),l),(e=>Oe(a)!=e[d]?gt(t,s,l,a,e[u]):a),(()=>gt(t,s,l,a))):q(Oe(a))?gt(t,s,l,a):a,Be=(e,t)=>ds(t?e:je(e),((t,s)=>N(De(s,t),(t=>(e[s]=t,!0)),(()=>!1))),(()=>pt())),De=(e,s)=>t?N(Pt(D,e),(t=>Oe(s)!=t[d]?pt(e,s,t[u]):s),(()=>pt(e,s))):q(Oe(s))?pt(e,s):s,Qe=(e,t,s)=>(N(Pt(B,t),(([l,a])=>{zt(l,((t,s)=>{ne(e,s)||(e[s]=t)})),zt(a,(l=>{ne(e,l)||gt(t,s,l)}))})),e),je=e=>(t&&(zt(Q,((t,s)=>{ne(e,s)||(e[s]=t)})),zt(G,(t=>{ne(e,t)||pt(t)}))),e),We=e=>Bt(H,e,((e,t,s)=>{const l=Ot(),a=es();Bt(Ht(H,t,Ot),s,((e,t,s)=>{Jt(e,t,s),N(s[u],(e=>Jt(l,t,e)),(()=>ts(a,t)))})),Jt(B,t,[l,a])}),((e,t)=>{Jt(H,t),Jt(B,t)})),Ue=e=>Bt(D,e,((e,t,s)=>{Jt(D,t,s),N(s[u],(e=>Jt(Q,t,e)),(()=>ts(G,t)))}),((e,t)=>{Jt(D,t),Jt(Q,t),$t(G,t)})),Ge=e=>ie(e)?Rs():Ts(e),Ke=e=>Bt(Z,e,((e,t,s)=>Xe(t,s)),((e,t)=>nt(t))),Xe=(e,t)=>Bt(Ht(Z,e,(()=>(dt(e,1),Jt(X,e,ls()),Jt(Y,e,Ot()),Ot()))),t,((t,s,l)=>Ye(e,t,s,l)),((t,s)=>ot(e,t,s))),Ye=(e,t,s,l,a)=>Bt(Ht(t,s,(()=>(ut(e,s,1),Ot()))),l,((t,l,a)=>Ze(e,s,t,l,a)),((l,n)=>rt(e,t,s,l,n,a))),Ze=(e,t,s,l,a)=>{Nt(s,l)||ct(e,t,l,1);const n=Pt(s,l);a!==n&&(ht(e,t,l,n,a),Jt(s,l,a))},_e=(e,t,s,l,a)=>N(Pt(t,s),(t=>Ze(e,s,t,l,a)),(()=>Ye(e,t,s,Qe({[l]:a},e,s)))),et=e=>ie(e)?Ls():ks(e),tt=e=>Bt(_,e,((e,t,s)=>st(t,s)),((e,t)=>it(t))),st=(e,t)=>{Nt(_,e)||mt(e,1);const s=Pt(_,e);t!==s&&(bt(e,s,t),Jt(_,e,t))},lt=(e,t)=>{const[s]=Pt(X,e),l=s(t);return Nt(Pt(Z,e),l)?lt(e,t):l},at=e=>Pt(Z,e)??Xe(e,{}),nt=e=>Xe(e,{}),ot=(e,t,s)=>{const[,l]=Pt(X,e);l(s),Ye(e,t,s,{},!0)},rt=(e,t,s,l,a,n)=>{const o=Pt(Pt(B,e)?.[0],a);if(!q(o)&&!n)return Ze(e,s,l,a,o);const r=t=>{ht(e,s,t,Pt(l,t)),ct(e,s,t,-1),Jt(l,t)};q(o)?r(a):Ft(l,r),Lt(l)&&(ut(e,s,-1),Lt(Jt(t,s))&&(dt(e,-1),Jt(Z,e),Jt(X,e),Jt(Y,e)))},it=e=>{const t=Pt(Q,e);if(!q(t))return st(e,t);bt(e,Pt(_,e)),mt(e,-1),Jt(_,e)},dt=(e,t)=>us(k,e,t),ut=(e,t,s)=>us(Ht(R,e,Ot),t,s)&&Jt(V,e,Ht(V,e,(()=>0))+s),ct=(e,t,s,l)=>{const a=Pt(Y,e),n=Pt(a,s)??0;(0==n&&1==l||1==n&&-1==l)&&us(Ht(S,e,Ot),s,l),Jt(a,s,n!=-l?n+l:null),us(Ht(Ht(M,e,Ot),t,Ot),s,l)},ht=(e,t,s,l,a)=>Ht(Ht(Ht(z,e,Ot),t,Ot),s,(()=>[l,0]))[1]=a,mt=(e,t)=>us(A,e,t),bt=(e,t,s)=>Ht(P,e,(()=>[t,0]))[1]=s,gt=(e,t,s,l,a)=>(K(Ht(Ht(Ht(F,e,Ot),t,Ot),s,(()=>[])),l),a),pt=(e,t,s)=>(K(Ht(J,e,(()=>[])),t),s),It=(e,t,s)=>N(Pt(Pt(Pt(z,e),t),s),(([e,t])=>[!0,e,t]),(()=>[!1,...as(hs(e,t,s))])),ft=e=>N(Pt(P,e),(([e,t])=>[!0,e,t]),(()=>[!1,...as(gs(e))])),yt=e=>Lt(F)||Lt(ve[e])?0:zt(e?Gt(F):F,((t,s)=>zt(t,((t,l)=>zt(t,((t,a)=>Me(ve[e],[s,l,a],t))))))),wt=e=>Lt(J)||Lt(Te[e])?0:zt(e?Wt(J):J,((t,s)=>Me(Te[e],[s],t))),Ct=(e,t,s,l)=>{if(!Lt(e))return Me(t,l,(()=>Dt(e))),Ft(e,((e,t)=>Me(s,[...l??[],e],1==t))),1},vt=e=>{const t=ps();t!=o&&Me(ee[e],void 0,t);const s=Lt(pe[e]),l=Lt(ye[e])&&Lt(we[e])&&Lt(ge[e])&&Lt(Ie[e])&&Lt(he[e])&&Lt(me[e])&&Lt(be[e])&&s&&Lt(le[e])&&Lt(ae[e]),a=Lt(Ce[e])&&Lt(fe[e])&&Lt(ce[e])&&Lt(te[e]);if(!l||!a){const t=e?[Wt(k),Ut(S),Wt(V),Ut(R),Gt(M),Gt(z)]:[k,S,V,R,M,z];if(!l){Ct(t[0],le[e],ae[e]),zt(t[1],((t,s)=>Ct(t,he[e],me[e],[s]))),zt(t[2],((t,s)=>{0!=t&&Me(be[e],[s],Yt(s))}));const l=es();zt(t[3],((t,a)=>{Ct(t,ge[e],Ie[e],[a])&&!s&&(Me(pe[e],[a,null]),ts(l,a))})),s||zt(t[5],((t,s)=>{if(!Nt(l,s)){const l=es();zt(t,(e=>zt(e,(([t,s],a)=>s!==t?ts(l,a):$t(e,a))))),zt(l,(t=>Me(pe[e],[s,t])))}})),zt(t[4],((t,s)=>zt(t,((t,l)=>Ct(t,ye[e],we[e],[s,l])))))}if(!a){let s;zt(t[5],((t,l)=>{let a;zt(t,((t,n)=>{let o;zt(t,(([t,r],i)=>{r!==t&&(Me(Ce[e],[l,n,i],r,t,It),s=a=o=1)})),o&&Me(fe[e],[l,n],It)})),a&&Me(ce[e],[l],It)})),s&&Me(te[e],void 0,It)}}},Tt=e=>{const t=Cs();t!=i&&Me(ke[e],void 0,t);const s=Lt(xe[e])&&Lt(Ve[e]),l=Lt(Re[e])&&Lt(Se[e]);if(!s||!l){const t=e?[Wt(A),Wt(P)]:[A,P];if(s||Ct(t[0],xe[e],Ve[e]),!l){let s;zt(t[1],(([t,l],a)=>{l!==t&&(Me(Re[e],[a],l,t,ft),s=1)})),s&&Me(Se[e],void 0,ft)}}},kt=(e,...t)=>(zs((()=>e(...U(t,x)))),As),St=()=>jt(Z),Mt=()=>At(Z),Xt=e=>At(Pt(Y,x(e))),Yt=e=>xt(Pt(Z,x(e))),Zt=e=>At(Pt(Z,x(e))),_t=(e,t,s,l=0,a)=>{return U($(j((n=Pt(Z,x(e)),o=(e,s)=>[q(t)?s:Pt(e,x(t)),s],U([...n?.entries()??[]],(([e,t])=>o(t,e)))),(([e],[t])=>((e??0)<(t??0)?-1:1)*(s?-1:1))),l,q(a)?a:l+a),(([,e])=>e));var n,o},ss=(e,t)=>At(Pt(Pt(Z,x(e)),x(t))),hs=(e,t,s)=>Pt(Pt(Pt(Z,x(e)),x(t)),x(s)),ms=()=>Dt(_),bs=()=>At(_),gs=e=>Pt(_,x(e)),ps=()=>!Lt(Z),Is=e=>Nt(Z,x(e)),fs=(e,t)=>Nt(Pt(Y,x(e)),x(t)),ys=(e,t)=>Nt(Pt(Z,x(e)),x(t)),ws=(e,t,s)=>Nt(Pt(Pt(Z,x(e)),x(t)),x(s)),Cs=()=>!Lt(_),vs=e=>Nt(_,x(e)),Ts=e=>kt((()=>(e=>ds(e,Fe,gt))(e)?Ke(e):0)),ks=e=>kt((()=>Be(e)?tt(e):0)),Ss=e=>{try{Ge(ue(e))}catch{}return As},xs=t=>kt((()=>{if((e=ds(t,(e=>ds(e,$e))))&&(We(t),!Lt(Z))){const e=St();Rs(),Ts(e)}})),Vs=e=>kt((()=>{if(t=(e=>ds(e,$e))(e)){const s=ms();Es(),Ls(),t=!0,Ue(e),ks(s)}})),Rs=()=>kt((()=>Ke({}))),qs=e=>kt((e=>Nt(Z,e)?nt(e):0),e),Ns=(e,t)=>kt(((e,t)=>N(Pt(Z,e),(s=>Nt(s,t)?ot(e,s,t):0))),e,t),Ls=()=>kt((()=>tt({}))),Ms=()=>kt((()=>{We({}),e=!1})),Es=()=>kt((()=>{Ue({}),t=!1})),zs=(e,t)=>{if(-1!=h){$s();const s=e();return Os(t),s}},$s=()=>(-1!=h&&h++,1==h&&Me(qe,void 0),As),Os=e=>(h>0&&(h--,0==h&&(l=!Lt(z),n=!Lt(P),h=1,yt(1),l&&vt(1),wt(1),n&&Tt(1),e?.(As)&&(zt(z,((e,t)=>zt(e,((e,s)=>zt(e,(([e],l)=>Ae(As,t,s,l,e))))))),zt(P,(([e],t)=>Pe(As,t,e))),l=n=!1),Me(Ne[0],void 0),h=-1,yt(0),l&&vt(0),wt(0),n&&Tt(0),s?.(As),Me(Ne[1],void 0),h=0,l=n=!1,o=ps(),i=Cs(),W([k,S,V,R,M,z,F,A,P,J],Et))),As),As={getContent:()=>[St(),ms()],getTables:St,getTableIds:Mt,getTable:e=>Qt(Pt(Z,x(e))),getTableCellIds:Xt,getRowCount:Yt,getRowIds:Zt,getSortedRowIds:_t,getRow:(e,t)=>Dt(Pt(Pt(Z,x(e)),x(t))),getCellIds:ss,getCell:hs,getValues:ms,getValueIds:bs,getValue:gs,hasTables:ps,hasTable:Is,hasTableCell:fs,hasRow:ys,hasCell:ws,hasValues:Cs,hasValue:vs,getTablesJson:()=>de(Z),getValuesJson:()=>de(_),getJson:()=>de([Z,_]),getTablesSchemaJson:()=>de(H),getValuesSchemaJson:()=>de(D),getSchemaJson:()=>de([H,D]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>kt((()=>{(ie(e)?Rs:Ts)(e),(ie(t)?Ls:ks)(t)})),setTables:Ts,setTable:(e,t)=>kt((e=>Fe(t,e)?Xe(e,t):0),e),setRow:(e,t,s)=>kt(((e,t)=>Je(e,t,s)?Ye(e,at(e),t,s):0),e,t),addRow:(e,t,s=!0)=>zs((()=>{let l;return Je(e,l,t)&&(e=x(e),Ye(e,at(e),l=lt(e,s?1:0),t)),l})),setPartialRow:(e,t,s)=>kt(((e,t)=>{if(Je(e,t,s,1)){const l=at(e);re(s,((s,a)=>_e(e,l,t,a,s)))}}),e,t),setCell:(e,t,s,l)=>kt(((e,t,s)=>N(He(e,t,s,E(l)?l(hs(e,t,s)):l),(l=>_e(e,at(e),t,s,l)))),e,t,s),setValues:ks,setPartialValues:e=>kt((()=>Be(e,1)?re(e,((e,t)=>st(t,e))):0)),setValue:(e,t)=>kt((e=>N(De(e,E(t)?t(gs(e)):t),(t=>st(e,t)))),e),applyChanges:e=>kt((()=>{re(e[0],((e,t)=>q(e)?qs(t):re(e,((e,s)=>q(e)?Ns(t,s):re(e,((e,l)=>Ae(As,t,s,l,e))))))),re(e[1],((e,t)=>Pe(As,t,e)))})),setTablesJson:Ss,setValuesJson:e=>{try{et(ue(e))}catch{}return As},setJson:e=>kt((()=>{try{const[t,s]=ue(e);Ge(t),et(s)}catch{Ss(e)}})),setTablesSchema:xs,setValuesSchema:Vs,setSchema:(e,t)=>kt((()=>{xs(e),Vs(t)})),delTables:Rs,delTable:qs,delRow:Ns,delCell:(e,t,s,l)=>kt(((e,t,s)=>N(Pt(Z,e),(a=>N(Pt(a,t),(n=>Nt(n,s)?rt(e,a,t,n,s,l):0))))),e,t,s),delValues:Ls,delValue:e=>kt((e=>Nt(_,e)?it(e):0),e),delTablesSchema:Ms,delValuesSchema:Es,delSchema:()=>kt((()=>{Ms(),Es()})),transaction:zs,startTransaction:$s,getTransactionChanges:()=>[Dt(z,((e,t)=>-1===Pt(k,t)?void 0:Dt(e,((e,s)=>-1===Pt(Pt(R,t),s)?void 0:Dt(e,(([,e])=>e),((e,t)=>is(t)))),ie)),ie),Dt(P,(([,e])=>e),((e,t)=>is(t)))],getTransactionLog:()=>[l,n,jt(z,rs,is),jt(F),Dt(P,rs,is),Dt(J),Dt(k),Qt(R),jt(M),Dt(A)],finishTransaction:Os,forEachTable:e=>zt(Z,((t,s)=>e(s,(e=>zt(t,((t,s)=>e(s,(e=>Ft(t,e))))))))),forEachTableCell:(e,t)=>Ft(Pt(Y,x(e)),t),forEachRow:(e,t)=>zt(Pt(Z,x(e)),((e,s)=>t(s,(t=>Ft(e,t))))),forEachCell:(e,t,s)=>Ft(Pt(Pt(Z,x(e)),x(t)),s),forEachValue:e=>Ft(_,e),addSortedRowIdsListener:(e,t,s,l,a,n,o)=>{let r=_t(e,t,s,l,a);return Le((()=>{const o=_t(e,t,s,l,a);var i,d,u;d=r,O(i=o)===O(d)&&(u=(e,t)=>d[t]===e,i.every(u))||(r=o,n(As,e,t,s,l,a,r))}),pe[o?1:0],[e,t],[Mt])},addStartTransactionListener:e=>Le(e,qe),addWillFinishTransactionListener:e=>Le(e,Ne[0]),addDidFinishTransactionListener:e=>Le(e,Ne[1]),callListener:e=>(ze(e),As),delListener:e=>(Ee(e),As),getListenerStats:()=>({hasTables:ns(ee),tables:ns(te),tableIds:ns(le),hasTable:ns(ae),table:ns(ce),tableCellIds:ns(he),hasTableCell:ns(me,Rt),rowCount:ns(be),rowIds:ns(ge),sortedRowIds:ns(pe),hasRow:ns(Ie,Rt),row:ns(fe,Rt),cellIds:ns(ye,Rt),hasCell:ns(we,qt),cell:ns(Ce,qt),invalidCell:ns(ve,qt),hasValues:ns(ke),values:ns(Se),valueIds:ns(xe),hasValue:ns(Ve),value:ns(Re),invalidValue:ns(Te),transaction:Vt(qe)+ns(Ne)}),createStore:cs,addListener:Le,callListeners:Me,addPostTransactionListener:e=>{s=e}};return re({[c+b]:[0,ee,[],()=>[ps()]],[b]:[0,te],[g]:[0,le],[c+m]:[1,ae,[Mt],e=>[Is(...e)]],[m]:[1,ce,[Mt]],[m+w]:[1,he,[Mt]],[c+m+y]:[2,me,[Mt,Xt],e=>[fs(...e)]],[I]:[1,be,[Mt]],[f]:[1,ge,[Mt]],[c+p]:[2,Ie,[Mt,Zt],e=>[ys(...e)]],[p]:[2,fe,[Mt,Zt]],[w]:[2,ye,[Mt,Zt]],[c+y]:[3,we,[Mt,Zt,ss],e=>[ws(...e)]],[y]:[3,Ce,[Mt,Zt,ss],e=>as(hs(...e))],InvalidCell:[3,ve],[c+v]:[0,ke,[],()=>[Cs()]],[v]:[0,Se],[T]:[0,xe],[c+C]:[1,Ve,[bs],e=>[vs(...e)]],[C]:[1,Re,[bs],e=>as(gs(e[0]))],InvalidValue:[1,Te]},(([e,t,s,l],a)=>{As["add"+a+"Listener"]=(...a)=>Le(a[e],t[a[e+1]?1:0],e>0?$(a,0,e):void 0,s,l)})),se(As)},hs=({position:e="right",open:t=!1})=>{const l=s.useCreateStore(cs),a=me.indexOf(e);return s.useCreatePersister(l,(e=>{return((e,t,s,l)=>((e,t,s,l,a,n,o,[r,i]=[],d=[])=>{let u,c,h,m=0,b=0,g=0,p=0;Ht(Xt,d,(()=>0)),Ht(Yt,d,(()=>[]));const I=(o?e.getMergeableContent:null)??e.getContent,f=e.getTransactionChanges,y=async e=>(2!=m&&(m=1,b++,await w.schedule((async()=>{await e(),m=0}))),w),w={load:async(s,l)=>await y((async()=>{try{const s=await t();(o&&M(s[0])?e.applyMergeableChanges:e.setContent)(s)}catch{e.setContent([s,l])}})),startAutoLoad:async(s={},a={})=>(w.stopAutoLoad(),await w.load(s,a),p=1,h=l((async(s,l)=>{if(l){const t=l();await y((async()=>e.applyChanges(t)))}else await y((async()=>{try{e.setContent(s?.()??await t())}catch(e){n?.(e)}}))})),w),stopAutoLoad:()=>(p&&(a(h),h=void 0,p=0),w),save:async e=>(1!=m&&(m=2,g++,await w.schedule((async()=>{try{await s(I,e)}catch(e){n?.(e)}m=0}))),w),startAutoSave:async()=>(await w.stopAutoSave().save(),u=e.addDidFinishTransactionListener((()=>{const[e,t]=f();ie(e)&&ie(t)||w.save((()=>[e,t]))})),w),stopAutoSave:()=>(N(u,e.delListener),u=void 0,w),schedule:async(...e)=>(K(Pt(Yt,d),...e),await(async()=>{if(!Pt(Xt,d)){for(Jt(Xt,d,1);!q(c=X(Pt(Yt,d)));)try{await c()}catch(e){n?.(e)}Jt(Xt,d,0)}})(),w),getStore:()=>e,destroy:()=>w.stopAutoLoad().stopAutoSave(),getStats:()=>({loads:b,saves:g})};return r&&(w[r]=()=>i),se(w)})(e,(async()=>ue(s.getItem(t))),(async e=>s.setItem(t,de(e()))),(e=>{const l=l=>{l.storageArea===s&&l.key===t&&e((()=>ue(l.newValue)))};return _t.addEventListener(Zt,l),l}),(e=>_t.removeEventListener(Zt,e)),l,!1,["getStorageName",t]))(e,ce,sessionStorage,t);var t}),void 0,(async e=>{await e.load(void 0,{position:-1==a?1:a,open:!!t}),await e.startAutoSave()})),F(P,null,F("aside",{id:ce},F(ze,{s:l}),F(kt,{s:l})),F("style",null,Ee))};e.EditableCellView=ot,e.EditableValueView=rt,e.RelationshipInHtmlTable=at,e.ResultSortedTableInHtmlTable=nt,e.ResultTableInHtmlTable=({queryId:e,queries:t,customCells:l,...a})=>F(Ye,{...a,params:We(Xe(s.useResultTableCellIds(e,t),l,s.ResultCellView),Ge(t,e),s.useResultRowIds(e,t))}),e.SliceInHtmlTable=lt,e.SortedTableInHtmlTable=tt,e.SortedTablePaginator=it,e.StoreInspector=e=>F(hs,{...e}),e.TableInHtmlTable=({tableId:e,store:t,editable:l,customCells:a,...n})=>F(Ye,{...n,params:We(Xe(s.useTableCellIds(e,t),a,l?ot:s.CellView),Ue(t,e),s.useRowIds(e,t))}),e.ValuesInHtmlTable=st},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("./ui-react")):"function"==typeof define&&define.amd?define(["exports","react","./ui-react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReactDomDebug={},e.React,e.TinyBaseUiReact);
Binary file
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e,t,l){"use strict";const a=e=>typeof e,n=a(""),o=a(!0),r=a(0),s="Value",i="currentTarget",d="value",u=isFinite,m=e=>null==e,{PureComponent:c,Fragment:h,createElement:b,useCallback:g,useLayoutEffect:p,useRef:w,useState:f}=t,I=(e,...t)=>m(e)?{}:e(...t),y=(e,t)=>e.map(t),C=Object,k=C.entries,v=(e=[])=>C.fromEntries(e),x=(e,t)=>y(k(e),(([e,l])=>t(l,e))),T="tinybaseStoreInspector",R="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",S='content:url("',N=S+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",V='</svg>")',z=S+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")",$=y([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,l,a])=>N+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${l}' height='${a}' fill='white'/>`+V)),M=N+"<path d='M20 20l60 60M20 80l60-60' />"+V,q=N+`<path d='${R}' />`+V,B=N+`<path d='${R}M20 20l60 60' />`+V,H="*::-webkit-scrollbar";((e,t="")=>{e.join(t)})(x({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[H]:"width:0.5rem;height:0.5rem;",[H+"-track"]:"background:#111",[H+"-thumb"]:"background:#999;border:1px solid #111",[H+"-thumb:hover"]:"background:#fff",[H+"-corner"]:"background:#111",img:"width:1rem;height:1rem;background:#111;border:0;vertical-align:text-bottom",">img":"padding:0.25rem;bottom:0;right:0;position:fixed;"+z,...v(y(["bottom:0;left:0","top:0;right:0"],((e,t)=>[`>img[data-position='${t}']`,e]))),main:"display:flex;flex-direction:column;background:#111d;color:#fff;position:fixed;",...v(y(["bottom:0;left:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:30vh","bottom:0;left:0;width:100vw;height:30vh","top:0;right:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:100vh"],((e,t)=>[`main[data-position='${t}']`,e]))),header:"display:flex;padding:0.25rem;background:#000;align-items:center","header>img:nth-of-type(1)":z,"header>img:nth-of-type(6)":M,...v(y($,((e,t)=>[`header>img[data-id='${t}']`,e]))),"header>span":"flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-left:0.25rem",article:"padding:0.25rem 0.25rem 0.25rem 0.5rem;overflow:auto;flex:1",details:"margin-left:0.75rem;width:fit-content;","details img":"display:none","details[open]>summary img":"display:unset;background:none;margin-left:0.25rem","details[open]>summary img.edit":q,"details[open]>summary img.done":B,summary:"margin-left:-0.75rem;line-height:1.25rem;user-select:none;width:fit-content",table:"border-collapse:collapse;table-layout:fixed;margin-bottom:0.5rem","table input":"background:#111;color:unset;padding:0 0.25rem;border:0;font-size:unset;vertical-align:top;margin:0",'table input[type="number"]':"width:4rem","table tbody button":"font-size:0;background:#fff;border-radius:50%;margin:0 0.125rem 0 0;width:0.85rem;color:#111","table button:first-letter":"font-size:0.75rem",thead:"background:#222","th:nth-of-type(1)":"min-width:2rem;","th.sorted":"background:#000","table caption":"text-align:left;white-space:nowrap;line-height:1.25rem",button:"width:1.5rem;border:none;background:none;color:#fff;padding:0","button[disabled]":"color:#777","button.next":"margin-right:0.5rem",[`th,#${T} td`]:"overflow:hidden;text-overflow:ellipsis;padding:0.25rem 0.5rem;max-width:12rem;white-space:nowrap;border-width:1px 0;border-style:solid;border-color:#777;text-align:left","span.warn":"margin:0.25rem;color:#d81b60"},((e,t)=>e?`#${T} ${t}{${e}}`:"")));const O=(e,t,l,a)=>e==n?t:e==r?l:a,{useCallback:F,useMemo:E,useState:P}=t,j="editable",A=(e,t)=>y(l.useTableCellIds(e,t),(t=>e+"."+t)),L=(e,t,l)=>{const a=F(e,t);return l?a:void 0},U=(...e)=>E((()=>e),e),D=(e,t)=>E((()=>({store:e,tableId:t})),[e,t]),G=(e,t)=>E((()=>({queries:e,queryId:t})),[e,t]),J=(e,t=!1,l,a=0,n,o,r,s)=>{const[[i,d,u],m]=P([e,t,a]),c=F((e=>{m(e),s?.(e)}),[s]),h=L((e=>c([e,e==i&&!d,u])),[c,i,d,u],l),g=F((e=>c([i,d,e])),[c,i,d]),p=!0===r?ee:r;return[[i,d,u],h,E((()=>!1===r?null:b(p,{offset:u,limit:n,total:o,onChange:g})),[r,p,u,n,o,g])]},K=(e,t,l)=>E((()=>{const o=t??e;return v(x(Array.isArray(o)?v(y(o,(e=>[e,e]))):o,((e,t)=>{return[t,{label:t,component:l,...(o=e,a(o)==n?{label:e}:e)}];var o})))}),[t,l,e]),Q=({className:e,headerRow:t,idColumn:l,params:[a,n,o,r,s,i]})=>b("table",{className:e},i?b("caption",null,i):null,!1===t?null:b("thead",null,b("tr",null,!1===l?null:b(W,{sort:r??[],label:"Id",onClick:s}),x(a,(({label:e},t)=>b(W,{key:t,cellId:t,label:e,sort:r??[],onClick:s}))))),b("tbody",null,y(o,(e=>b("tr",{key:e},!1===l?null:b("th",null,e),x(a,(({component:t,getComponentProps:l},a)=>b("td",{key:a},b(t,{...I(l,e,a),...n,rowId:e,cellId:a}))))))))),W=({cellId:e,sort:[t,l],label:a=e??"",onClick:n})=>b("th",{onClick:L((()=>n?.(e)),[n,e],n),className:m(l)||t!=e?void 0:`sorted ${l?"de":"a"}scending`},m(l)||t!=e?null:(l?"↓":"↑")+" ",a),X=({localRowId:e,params:[a,n,o,r,s,i,d]})=>{const u=l.useRemoteRowId(s,e,i);return b("tr",null,!1===a?null:b(t.Fragment,null,b("th",null,e),b("th",null,u)),x(n,(({component:t,getComponentProps:l},a)=>{const[n,s]=a.split(".",2),i=n===o?e:n===r?u:null;return m(i)?null:b("td",{key:a},b(t,{...I(l,i,s),store:d,tableId:n,rowId:i,cellId:s}))})))},Y=({thing:e,onThingChange:t,className:l,hasSchema:s,showType:m=!0})=>{const[c,h]=P(),[g,p]=P(),[w,f]=P(),[I,y]=P(),[C,k]=P();g!==e&&(h((e=>{const t=a(e);return(e=>e==n||e==o)(t)||t==r&&u(e)?t:void 0})(e)),p(e),f(e+""),y(Number(e)||0),k(!!e));const v=F(((e,l)=>{l(e),p(e),t(e)}),[t]),x=F((()=>{if(!s?.()){const e=O(c,r,o,n),l=O(e,w,I,C);h(e),p(l),t(l)}}),[s,t,w,I,C,c]);return b("div",{className:l},m?b("button",{className:c,onClick:x},c):null,O(c,b("input",{key:c,value:w,onChange:F((e=>v(e[i][d]+"",f)),[v])}),b("input",{key:c,type:"number",value:I,onChange:F((e=>v(Number(e[i][d]||0),y)),[v])}),b("input",{key:c,type:"checkbox",checked:C,onChange:F((e=>v(!!e[i].checked,k)),[v])})))},Z=({tableId:e,rowId:t,cellId:a,store:n,className:o,showType:r})=>b(Y,{thing:l.useCell(e,t,a,n),onThingChange:l.useSetCellCallback(e,t,a,(e=>e),[],n),className:o??j+"Cell",showType:r,hasSchema:l.useStoreOrStoreById(n)?.hasTablesSchema}),_=({valueId:e,store:t,className:a,showType:n})=>b(Y,{thing:l.useValue(e,t),onThingChange:l.useSetValueCallback(e,(e=>e),[],t),className:a??j+s,showType:n,hasSchema:l.useStoreOrStoreById(t)?.hasValuesSchema}),ee=({onChange:e,total:l,offset:a=0,limit:n=l,singular:o="row",plural:r=o+"s"})=>{(a>l||a<0)&&(a=0,e(0));const s=L((()=>e(a-n)),[e,a,n],a>0),i=L((()=>e(a+n)),[e,a,n],a+n<l);return b(t.Fragment,null,l>n&&b(t.Fragment,null,b("button",{className:"previous",disabled:0==a,onClick:s},"←"),b("button",{className:"next",disabled:a+n>=l,onClick:i},"→"),a+1," to ",Math.min(l,a+n)," of "),l," ",1!=l?r:o)},te=e=>new Map(e);te(),te(),e.EditableCellView=Z,e.EditableValueView=_,e.RelationshipInHtmlTable=({relationshipId:e,relationships:a,editable:n,customCells:o,className:r,headerRow:s,idColumn:i=!0})=>{const[d,u,m,c]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(l.useRelationshipsOrRelationshipsById(a),e),h=K([...A(m,u),...A(c,u)],o,n?Z:l.CellView),g=U(i,h,m,c,e,d,u);return b("table",{className:r},!1===s?null:b("thead",null,b("tr",null,!1===i?null:b(t.Fragment,null,b("th",null,m,".Id"),b("th",null,c,".Id")),x(h,(({label:e},t)=>b("th",{key:t},e))))),b("tbody",null,y(l.useRowIds(m,u),(e=>b(X,{key:e,localRowId:e,params:g})))))},e.ResultSortedTableInHtmlTable=({queryId:e,cellId:t,descending:a,offset:n,limit:o,queries:r,sortOnClick:s,paginator:i=!1,customCells:d,onChange:u,...m})=>{const[c,h,g]=J(t,a,s,n,o,l.useResultRowCount(e,r),i,u);return b(Q,{...m,params:U(K(l.useResultTableCellIds(e,r),d,l.ResultCellView),G(r,e),l.useResultSortedRowIds(e,...c,o,r),c,h,g)})},e.ResultTableInHtmlTable=({queryId:e,queries:t,customCells:a,...n})=>b(Q,{...n,params:U(K(l.useResultTableCellIds(e,t),a,l.ResultCellView),G(t,e),l.useResultRowIds(e,t))}),e.SliceInHtmlTable=({indexId:e,sliceId:t,indexes:a,editable:n,customCells:o,...r})=>{const[s,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(l.useIndexesOrIndexesById(a),e);return b(Q,{...r,params:U(K(l.useTableCellIds(d,i),o,n?Z:l.CellView),D(i,d),l.useSliceRowIds(e,t,s))})},e.SortedTableInHtmlTable=({tableId:e,cellId:t,descending:a,offset:n,limit:o,store:r,editable:s,sortOnClick:i,paginator:d=!1,onChange:u,customCells:m,...c})=>{const[h,g,p]=J(t,a,i,n,o,l.useRowCount(e,r),d,u);return b(Q,{...c,params:U(K(l.useTableCellIds(e,r),m,s?Z:l.CellView),D(r,e),l.useSortedRowIds(e,...h,o,r),h,g,p)})},e.SortedTablePaginator=ee,e.StoreInspector=e=>null,e.TableInHtmlTable=({tableId:e,store:t,editable:a,customCells:n,...o})=>b(Q,{...o,params:U(K(l.useTableCellIds(e,t),n,a?Z:l.CellView),D(t,e),l.useRowIds(e,t))}),e.ValuesInHtmlTable=({store:e,editable:t=!1,valueComponent:a=(t?_:l.ValueView),getValueComponentProps:n,className:o,headerRow:r,idColumn:i})=>b("table",{className:o},!1===r?null:b("thead",null,b("tr",null,!1===i?null:b("th",null,"Id"),b("th",null,s))),b("tbody",null,y(l.useValueIds(e),(t=>b("tr",{key:t},!1===i?null:b("th",null,t),b("td",null,b(a,{...I(n,t),valueId:t,store:e})))))))},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("./ui-react")):"function"==typeof define&&define.amd?define(["exports","react","./ui-react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReactDom={},e.React,e.TinyBaseUiReact);
1
+ var e,t;e=this,t=function(e,t,l){"use strict";const a=e=>typeof e,n=a(""),o=a(!0),r=a(0),s="Value",i="currentTarget",d="value",u=isFinite,m=e=>null==e,{PureComponent:c,Fragment:h,createElement:b,useCallback:g,useLayoutEffect:p,useRef:w,useState:f}=t,I=(e,...t)=>m(e)?{}:e(...t),y=(e,t)=>e.map(t),C=Object,k=C.entries,v=(e=[])=>C.fromEntries(e),x=(e,t)=>y(k(e),(([e,l])=>t(l,e))),T="tinybaseStoreInspector",R="M20 80l5-15l40-40l10 10l-40 40l-15 5m5-15l10 10",S='content:url("',N=S+"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' stroke-width='4' stroke='white' fill='none'>",V='</svg>")',z=S+"data:image/svg+xml,%3csvg viewBox='0 0 680 680' xmlns='http://www.w3.org/2000/svg' style='width:680px%3bheight:680px'%3e %3cpath stroke='white' stroke-width='80' fill='none' d='M340 617a84 241 90 11.01 0zM131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124zm-12-127a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e %3cpath fill='%23d81b60' d='M131 475a94 254 70 10428-124 114 286 70 01-428 124zm0-140a94 254 70 10428-124 114 286 70 01-428 124z' /%3e %3cpath d='M249 619a94 240 90 00308-128 114 289 70 01-308 128zM119 208a94 254 70 00306 38 90 260 90 01-306-38zm221 3a74 241 90 11.01 0z' /%3e%3c/svg%3e\")",$=y([[20,20,20,60],[20,20,60,20],[20,60,60,20],[60,20,20,60],[30,30,40,40]],(([e,t,l,a])=>N+`<rect x='20' y='20' width='60' height='60' fill='grey'/><rect x='${e}' y='${t}' width='${l}' height='${a}' fill='white'/>`+V)),M=N+"<path d='M20 20l60 60M20 80l60-60' />"+V,q=N+`<path d='${R}' />`+V,B=N+`<path d='${R}M20 20l60 60' />`+V,H="*::-webkit-scrollbar";((e,t="")=>{e.join(t)})(x({"":"all:initial;font-family:sans-serif;font-size:0.75rem;position:fixed;z-index:999999","*":"all:revert","*::before":"all:revert","*::after":"all:revert",[H]:"width:0.5rem;height:0.5rem;",[H+"-track"]:"background:#111",[H+"-thumb"]:"background:#999;border:1px solid #111",[H+"-thumb:hover"]:"background:#fff",[H+"-corner"]:"background:#111",img:"width:1rem;height:1rem;background:#111;border:0;vertical-align:text-bottom",">img":"padding:0.25rem;bottom:0;right:0;position:fixed;"+z,...v(y(["bottom:0;left:0","top:0;right:0"],((e,t)=>[`>img[data-position='${t}']`,e]))),main:"display:flex;flex-direction:column;background:#111d;color:#fff;position:fixed;",...v(y(["bottom:0;left:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:30vh","bottom:0;left:0;width:100vw;height:30vh","top:0;right:0;width:35vw;height:100vh","top:0;right:0;width:100vw;height:100vh"],((e,t)=>[`main[data-position='${t}']`,e]))),header:"display:flex;padding:0.25rem;background:#000;align-items:center","header>img:nth-of-type(1)":z,"header>img:nth-of-type(6)":M,...v(y($,((e,t)=>[`header>img[data-id='${t}']`,e]))),"header>span":"flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-left:0.25rem",article:"padding:0.25rem 0.25rem 0.25rem 0.5rem;overflow:auto;flex:1",details:"margin-left:0.75rem;width:fit-content;","details img":"display:none","details[open]>summary img":"display:unset;background:none;margin-left:0.25rem","details[open]>summary img.edit":q,"details[open]>summary img.done":B,summary:"margin-left:-0.75rem;line-height:1.25rem;user-select:none;width:fit-content",table:"border-collapse:collapse;table-layout:fixed;margin-bottom:0.5rem","table input":"background:#111;color:unset;padding:0 0.25rem;border:0;font-size:unset;vertical-align:top;margin:0",'table input[type="number"]':"width:4rem","table tbody button":"font-size:0;background:#fff;border-radius:50%;margin:0 0.125rem 0 0;width:0.85rem;color:#111","table button:first-letter":"font-size:0.75rem",thead:"background:#222","th:nth-of-type(1)":"min-width:2rem;","th.sorted":"background:#000","table caption":"text-align:left;white-space:nowrap;line-height:1.25rem",button:"width:1.5rem;border:none;background:none;color:#fff;padding:0","button[disabled]":"color:#777","button.next":"margin-right:0.5rem",[`th,#${T} td`]:"overflow:hidden;text-overflow:ellipsis;padding:0.25rem 0.5rem;max-width:12rem;white-space:nowrap;border-width:1px 0;border-style:solid;border-color:#777;text-align:left","span.warn":"margin:0.25rem;color:#d81b60"},((e,t)=>e?`#${T} ${t}{${e}}`:"")));const O=(e,t,l,a)=>e==n?t:e==r?l:a,{useCallback:F,useMemo:E,useState:P}=t,j="editable",A=(e,t)=>y(l.useTableCellIds(e,t),(t=>e+"."+t)),L=(e,t,l)=>{const a=F(e,t);return l?a:void 0},U=(...e)=>E((()=>e),e),D=(e,t)=>E((()=>({store:e,tableId:t})),[e,t]),G=(e,t)=>E((()=>({queries:e,queryId:t})),[e,t]),J=(e,t=!1,l,a=0,n,o,r,s)=>{const[[i,d,u],m]=P([e,t,a]),c=F((e=>{m(e),s?.(e)}),[s]),h=L((e=>c([e,e==i&&!d,u])),[c,i,d,u],l),g=F((e=>c([i,d,e])),[c,i,d]),p=!0===r?ee:r;return[[i,d,u],h,E((()=>!1===r?null:b(p,{offset:u,limit:n,total:o,onChange:g})),[r,p,u,n,o,g])]},K=(e,t,l)=>E((()=>{const o=t??e;return r=Array.isArray(o)?v(y(o,(e=>[e,e]))):o,s=(e,t)=>{return{label:t,component:l,...(o=e,a(o)==n?{label:e}:e)};var o},v(x(r,((e,t)=>[t,s(e,t)])));var r,s}),[t,l,e]),Q=({className:e,headerRow:t,idColumn:l,params:[a,n,o,r,s,i]})=>b("table",{className:e},i?b("caption",null,i):null,!1===t?null:b("thead",null,b("tr",null,!1===l?null:b(W,{sort:r??[],label:"Id",onClick:s}),x(a,(({label:e},t)=>b(W,{key:t,cellId:t,label:e,sort:r??[],onClick:s}))))),b("tbody",null,y(o,(e=>b("tr",{key:e},!1===l?null:b("th",null,e),x(a,(({component:t,getComponentProps:l},a)=>b("td",{key:a},b(t,{...I(l,e,a),...n,rowId:e,cellId:a}))))))))),W=({cellId:e,sort:[t,l],label:a=e??"",onClick:n})=>b("th",{onClick:L((()=>n?.(e)),[n,e],n),className:m(l)||t!=e?void 0:`sorted ${l?"de":"a"}scending`},m(l)||t!=e?null:(l?"↓":"↑")+" ",a),X=({localRowId:e,params:[a,n,o,r,s,i,d]})=>{const u=l.useRemoteRowId(s,e,i);return b("tr",null,!1===a?null:b(t.Fragment,null,b("th",null,e),b("th",null,u)),x(n,(({component:t,getComponentProps:l},a)=>{const[n,s]=a.split(".",2),i=n===o?e:n===r?u:null;return m(i)?null:b("td",{key:a},b(t,{...I(l,i,s),store:d,tableId:n,rowId:i,cellId:s}))})))},Y=({thing:e,onThingChange:t,className:l,hasSchema:s,showType:m=!0})=>{const[c,h]=P(),[g,p]=P(),[w,f]=P(),[I,y]=P(),[C,k]=P();g!==e&&(h((e=>{const t=a(e);return(e=>e==n||e==o)(t)||t==r&&u(e)?t:void 0})(e)),p(e),f(e+""),y(Number(e)||0),k(!!e));const v=F(((e,l)=>{l(e),p(e),t(e)}),[t]),x=F((()=>{if(!s?.()){const e=O(c,r,o,n),l=O(e,w,I,C);h(e),p(l),t(l)}}),[s,t,w,I,C,c]);return b("div",{className:l},m?b("button",{className:c,onClick:x},c):null,O(c,b("input",{key:c,value:w,onChange:F((e=>v(e[i][d]+"",f)),[v])}),b("input",{key:c,type:"number",value:I,onChange:F((e=>v(Number(e[i][d]||0),y)),[v])}),b("input",{key:c,type:"checkbox",checked:C,onChange:F((e=>v(!!e[i].checked,k)),[v])})))},Z=({tableId:e,rowId:t,cellId:a,store:n,className:o,showType:r})=>b(Y,{thing:l.useCell(e,t,a,n),onThingChange:l.useSetCellCallback(e,t,a,(e=>e),[],n),className:o??j+"Cell",showType:r,hasSchema:l.useStoreOrStoreById(n)?.hasTablesSchema}),_=({valueId:e,store:t,className:a,showType:n})=>b(Y,{thing:l.useValue(e,t),onThingChange:l.useSetValueCallback(e,(e=>e),[],t),className:a??j+s,showType:n,hasSchema:l.useStoreOrStoreById(t)?.hasValuesSchema}),ee=({onChange:e,total:l,offset:a=0,limit:n=l,singular:o="row",plural:r=o+"s"})=>{(a>l||a<0)&&(a=0,e(0));const s=L((()=>e(a-n)),[e,a,n],a>0),i=L((()=>e(a+n)),[e,a,n],a+n<l);return b(t.Fragment,null,l>n&&b(t.Fragment,null,b("button",{className:"previous",disabled:0==a,onClick:s},"←"),b("button",{className:"next",disabled:a+n>=l,onClick:i},"→"),a+1," to ",Math.min(l,a+n)," of "),l," ",1!=l?r:o)},te=e=>new Map(e);te(),te(),e.EditableCellView=Z,e.EditableValueView=_,e.RelationshipInHtmlTable=({relationshipId:e,relationships:a,editable:n,customCells:o,className:r,headerRow:s,idColumn:i=!0})=>{const[d,u,m,c]=((e,t)=>[e,e?.getStore(),e?.getLocalTableId(t),e?.getRemoteTableId(t)])(l.useRelationshipsOrRelationshipsById(a),e),h=K([...A(m,u),...A(c,u)],o,n?Z:l.CellView),g=U(i,h,m,c,e,d,u);return b("table",{className:r},!1===s?null:b("thead",null,b("tr",null,!1===i?null:b(t.Fragment,null,b("th",null,m,".Id"),b("th",null,c,".Id")),x(h,(({label:e},t)=>b("th",{key:t},e))))),b("tbody",null,y(l.useRowIds(m,u),(e=>b(X,{key:e,localRowId:e,params:g})))))},e.ResultSortedTableInHtmlTable=({queryId:e,cellId:t,descending:a,offset:n,limit:o,queries:r,sortOnClick:s,paginator:i=!1,customCells:d,onChange:u,...m})=>{const[c,h,g]=J(t,a,s,n,o,l.useResultRowCount(e,r),i,u);return b(Q,{...m,params:U(K(l.useResultTableCellIds(e,r),d,l.ResultCellView),G(r,e),l.useResultSortedRowIds(e,...c,o,r),c,h,g)})},e.ResultTableInHtmlTable=({queryId:e,queries:t,customCells:a,...n})=>b(Q,{...n,params:U(K(l.useResultTableCellIds(e,t),a,l.ResultCellView),G(t,e),l.useResultRowIds(e,t))}),e.SliceInHtmlTable=({indexId:e,sliceId:t,indexes:a,editable:n,customCells:o,...r})=>{const[s,i,d]=((e,t)=>[e,e?.getStore(),e?.getTableId(t)])(l.useIndexesOrIndexesById(a),e);return b(Q,{...r,params:U(K(l.useTableCellIds(d,i),o,n?Z:l.CellView),D(i,d),l.useSliceRowIds(e,t,s))})},e.SortedTableInHtmlTable=({tableId:e,cellId:t,descending:a,offset:n,limit:o,store:r,editable:s,sortOnClick:i,paginator:d=!1,onChange:u,customCells:m,...c})=>{const[h,g,p]=J(t,a,i,n,o,l.useRowCount(e,r),d,u);return b(Q,{...c,params:U(K(l.useTableCellIds(e,r),m,s?Z:l.CellView),D(r,e),l.useSortedRowIds(e,...h,o,r),h,g,p)})},e.SortedTablePaginator=ee,e.StoreInspector=e=>null,e.TableInHtmlTable=({tableId:e,store:t,editable:a,customCells:n,...o})=>b(Q,{...o,params:U(K(l.useTableCellIds(e,t),n,a?Z:l.CellView),D(t,e),l.useRowIds(e,t))}),e.ValuesInHtmlTable=({store:e,editable:t=!1,valueComponent:a=(t?_:l.ValueView),getValueComponentProps:n,className:o,headerRow:r,idColumn:i})=>b("table",{className:o},!1===r?null:b("thead",null,b("tr",null,!1===i?null:b("th",null,"Id"),b("th",null,s))),b("tbody",null,y(l.useValueIds(e),(t=>b("tr",{key:t},!1===i?null:b("th",null,t),b("td",null,b(a,{...I(n,t),valueId:t,store:e})))))))},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("./ui-react")):"function"==typeof define&&define.amd?define(["exports","react","./ui-react"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseUiReactDom={},e.React,e.TinyBaseUiReact);
Binary file
@@ -0,0 +1 @@
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,l="",n=t(l),s=t(!0),a=t(0),r=t(t),o="type",i="default",u="Has",d="Ids",c="Table",v=c+"s",h=c+d,g="Row",f=g+"Count",T=g+d,b="Cell",C=b+d,p="Value",V=p+"s",y=p+d,S=e=>l+e,w=(e,t)=>e.startsWith(t),m=(e,t)=>e.endsWith(t),R=(e,t=0)=>e.charCodeAt(t),I=isFinite,L=e=>null==e,M=(e,t,l)=>L(e)?null==l?void 0:l():t(e),J=e=>e==n||e==s,E=e=>t(e)==r,H=(e,t,l)=>e.slice(t,l),x=e=>e.length,P=(e,t)=>e.forEach(t),F=(e,t)=>e.map(t),O=(e,...t)=>e.push(...t),z=Object,A=e=>z.getPrototypeOf(e),W=z.entries,j=z.keys,k=z.isFrozen,D=z.freeze,N=e=>!L(e)&&M(A(e),(e=>e==z.prototype||L(A(e))),(()=>!0)),B=(e,t)=>t in e,$=(e,t)=>(delete e[t],e),q=(e,t)=>P(W(e),(([e,l])=>t(l,e))),G=(e,t)=>F(W(e),(([e,l])=>t(l,e))),K=e=>N(e)&&0==(e=>x(j(e)))(e),Q=e=>{var t;return null!=(t=null==e?void 0:e.size)?t:0},U=(e,t)=>{var l;return null!=(l=null==e?void 0:e.has(t))&&l},X=e=>L(e)||0==Q(e),Y=e=>e.clear(),Z=(e,t)=>null==e?void 0:e.forEach(t),_=(e,t)=>null==e?void 0:e.delete(t),ee=e=>new Map(e),te=e=>{var t;return[...null!=(t=null==e?void 0:e.keys())?t:[]]},le=(e,t)=>null==e?void 0:e.get(t),ne=(e,t)=>Z(e,((e,l)=>t(l,e))),se=(e,t,l)=>L(l)?(_(e,t),e):null==e?void 0:e.set(t,l),ae=(e,t,l)=>(U(e,t)||se(e,t,l()),le(e,t)),re=(e,t,l,n=se)=>(G(t,((t,n)=>l(e,n,t))),ne(e,(l=>B(t,l)?0:n(e,l))),e),oe=(e,t,l)=>{const n={};return Z(e,((e,s)=>{const a=t?t(e,s):e;!(null==l?void 0:l(a,e))&&(n[s]=a)})),n},ie=(e,t,l)=>oe(e,(e=>oe(e,t,l)),K),ue=(e,t,l)=>oe(e,(e=>ie(e,t,l)),K),de=(e,t)=>{const l=ee();return Z(e,((e,n)=>{var s;return l.set(n,null!=(s=null==t?void 0:t(e))?s:e)})),l},ce=e=>de(e,de),ve=e=>de(e,ce),he=(e,t,l,n,s=0)=>M((l?ae:le)(e,t[s],s>x(t)-2?l:ee),(a=>{if(s>x(t)-2)return(null==n?void 0:n(a))&&se(e,t[s]),a;const r=he(a,t,l,n,s+1);return X(a)&&se(e,t[s]),r})),ge=()=>[l,void 0],fe=()=>[l,ee()],Te=([e,t],l)=>[e,l(t,e)],be=(e,t)=>Te(e,(e=>oe(e,t))),Ce=(e,t,l,n)=>q(e,((e,s)=>pe(e,ae(t,s,fe),l[s]=((e=[])=>z.fromEntries(e))(),n))),pe=([e,t],l,n,s)=>{e>l[0]&&(l[0]=e),s(t,l[1],n)},Ve=(e,t,l)=>q(e,(([e,n],s)=>{const a=ae(t,s,ge);e>a[0]&&(a[0]=e,a[1]=l[s]=n)})),ye=e=>new Set(Array.isArray(e)||L(e)?e:[e]),Se=(e,t)=>null==e?void 0:e.add(t),we=/^\d+$/,me=()=>{const e=[];let t=0;return[n=>{var s;return null!=(s=n?e.shift():null)?s:l+t++},t=>{we.test(t)&&x(e)<1e3&&O(e,t)}]},Re=e=>[e,e],Ie=()=>[ee(),ee()],Le=e=>[...e],Me=([e,t])=>e===t,Je=e=>{const l=t(e);return J(l)||l==a&&I(e)?l:void 0},Ee=(e,t,l,n,s)=>L(s)?e.delCell(t,l,n,!0):e.setCell(t,l,n,s),He=(e,t,l)=>L(l)?e.delValue(t):e.setValue(t,l),xe=e=>JSON.stringify(e,((e,t)=>t instanceof Map?z.fromEntries([...t]):t)),Pe=JSON.parse,Fe=(e,t,l)=>L(e)||!N(e)||K(e)||k(e)?(null==l||l(),!1):(G(e,((l,n)=>{t(l,n)||$(e,n)})),!K(e)),Oe=(e,t,l)=>se(e,t,le(e,t)==-l?void 0:l),ze=()=>{let e,t,n,s=!1,r=!1,d=!1,w=!1,m=0;const R=ee(),I=ee(),z=ee(),A=ee(),W=ee(),j=ee(),k=ee(),N=ee(),q=ee(),ge=ee(),fe=ee(),Te=ee(),be=ee(),Ce=ee(),pe=ye(),Ve=ee(),we=ee(),Ae=ee(),We=ee(),je=Ie(),ke=Ie(),De=Ie(),Ne=Ie(),Be=Ie(),$e=Ie(),qe=Ie(),Ge=Ie(),Ke=Ie(),Qe=Ie(),Ue=Ie(),Xe=Ie(),Ye=Ie(),Ze=Ie(),_e=Ie(),et=Ie(),tt=Ie(),lt=Ie(),nt=Ie(),st=Ie(),at=Ie(),rt=Ie(),ot=ee(),it=Ie(),[ut,dt,ct,vt]=(e=>{let t;const[n,s]=me(),a=ee();return[(e,s,r,o=[],i=(()=>[]))=>{null!=t||(t=xl);const u=n(1);return se(a,u,[e,s,r,o,i]),Se(he(s,null!=r?r:[l],ye),u),u},(e,n,...s)=>P(((e,t=[l])=>{const n=[],s=(e,l)=>l==x(t)?O(n,e):null===t[l]?Z(e,(e=>s(e,l+1))):P([t[l],null],(t=>s(le(e,t),l+1)));return s(e,0),n})(e,n),(e=>Z(e,(e=>le(a,e)[0](t,...null!=n?n:[],...s))))),e=>M(le(a,e),(([,t,n])=>(he(t,null!=n?n:[l],void 0,(t=>(_(t,e),X(t)?1:0))),se(a,e),s(e),n))),e=>M(le(a,e),(([e,,l=[],n,s])=>{const a=(...r)=>{var o,i;const u=x(r);u==x(l)?e(t,...r,...s(r)):L(l[u])?P(null!=(i=null==(o=n[u])?void 0:o.call(n,...r))?i:[],(e=>a(...r,e))):a(...r,l[u])};a()}))]})(),ht=e=>{if(!Fe(e,((e,t)=>[o,i].includes(t))))return!1;const t=e[o];return!(!J(t)&&t!=a||(Je(e[i])!=t&&$(e,i),0))},gt=(t,l)=>(!e||U(fe,l)||$t(l))&&Fe(t,((e,t)=>ft(l,t,e)),(()=>$t(l))),ft=(e,t,l,n)=>Fe(n?l:pt(l,e,t),((n,s)=>M(Tt(e,t,s,n),(e=>(l[s]=e,!0)),(()=>!1))),(()=>$t(e,t))),Tt=(t,l,n,s)=>e?M(le(le(fe,t),n),(e=>Je(s)!=e[o]?$t(t,l,n,s,e[i]):s),(()=>$t(t,l,n,s))):L(Je(s))?$t(t,l,n,s):s,bt=(e,t)=>Fe(t?e:Vt(e),((t,l)=>M(Ct(l,t),(t=>(e[l]=t,!0)),(()=>!1))),(()=>qt())),Ct=(e,l)=>t?M(le(be,e),(t=>Je(l)!=t[o]?qt(e,l,t[i]):l),(()=>qt(e,l))):L(Je(l))?qt(e,l):l,pt=(e,t,l)=>(M(le(Te,t),(([n,s])=>{Z(n,((t,l)=>{B(e,l)||(e[l]=t)})),Z(s,(n=>{B(e,n)||$t(t,l,n)}))})),e),Vt=e=>(t&&(Z(Ce,((t,l)=>{B(e,l)||(e[l]=t)})),Z(pe,(t=>{B(e,t)||qt(t)}))),e),yt=e=>re(fe,e,((e,t,l)=>{const n=ee(),s=ye();re(ae(fe,t,ee),l,((e,t,l)=>{se(e,t,l),M(l[i],(e=>se(n,t,e)),(()=>Se(s,t)))})),se(Te,t,[n,s])}),((e,t)=>{se(fe,t),se(Te,t)})),St=e=>re(be,e,((e,t,l)=>{se(be,t,l),M(l[i],(e=>se(Ce,t,e)),(()=>Se(pe,t)))}),((e,t)=>{se(be,t),se(Ce,t),_(pe,t)})),wt=e=>K(e)?wl():Cl(e),mt=e=>re(Ae,e,((e,t,l)=>Rt(t,l)),((e,t)=>Ft(t))),Rt=(e,t)=>re(ae(Ae,e,(()=>(Wt(e,1),se(Ve,e,me()),se(we,e,ee()),ee()))),t,((t,l,n)=>It(e,t,l,n)),((t,l)=>Ot(e,t,l))),It=(e,t,l,n,s)=>re(ae(t,l,(()=>(jt(e,l,1),ee()))),n,((t,n,s)=>Lt(e,l,t,n,s)),((n,a)=>zt(e,t,l,n,a,s))),Lt=(e,t,l,n,s)=>{U(l,n)||kt(e,t,n,1);const a=le(l,n);s!==a&&(Dt(e,t,n,a,s),se(l,n,s))},Mt=(e,t,l,n,s)=>M(le(t,l),(t=>Lt(e,l,t,n,s)),(()=>It(e,t,l,pt({[n]:s},e,l)))),Jt=e=>K(e)?Il():pl(e),Et=e=>re(We,e,((e,t,l)=>Ht(t,l)),((e,t)=>At(t))),Ht=(e,t)=>{U(We,e)||Nt(e,1);const l=le(We,e);t!==l&&(Bt(e,l,t),se(We,e,t))},xt=(e,t)=>{const[l]=le(Ve,e),n=l(t);return U(le(Ae,e),n)?xt(e,t):n},Pt=e=>{var t;return null!=(t=le(Ae,e))?t:Rt(e,{})},Ft=e=>Rt(e,{}),Ot=(e,t,l)=>{const[,n]=le(Ve,e);n(l),It(e,t,l,{},!0)},zt=(e,t,l,n,s,a)=>{var r;const o=le(null==(r=le(Te,e))?void 0:r[0],s);if(!L(o)&&!a)return Lt(e,l,n,s,o);const i=t=>{Dt(e,l,t,le(n,t)),kt(e,l,t,-1),se(n,t)};L(o)?i(s):ne(n,i),X(n)&&(jt(e,l,-1),X(se(t,l))&&(Wt(e,-1),se(Ae,e),se(Ve,e),se(we,e)))},At=e=>{const t=le(Ce,e);if(!L(t))return Ht(e,t);Bt(e,le(We,e)),Nt(e,-1),se(We,e)},Wt=(e,t)=>Oe(R,e,t),jt=(e,t,l)=>Oe(ae(A,e,ee),t,l)&&se(z,e,ae(z,e,(()=>0))+l),kt=(e,t,l,n)=>{var s;const a=le(we,e),r=null!=(s=le(a,l))?s:0;(0==r&&1==n||1==r&&-1==n)&&Oe(ae(I,e,ee),l,n),se(a,l,r!=-n?r+n:null),Oe(ae(ae(W,e,ee),t,ee),l,n)},Dt=(e,t,l,n,s)=>ae(ae(ae(j,e,ee),t,ee),l,(()=>[n,0]))[1]=s,Nt=(e,t)=>Oe(k,e,t),Bt=(e,t,l)=>ae(N,e,(()=>[t,0]))[1]=l,$t=(e,t,l,n,s)=>(O(ae(ae(ae(q,e,ee),t,ee),l,(()=>[])),n),s),qt=(e,t,l)=>(O(ae(ge,e,(()=>[])),t),l),Gt=(e,t,l)=>M(le(le(le(j,e),t),l),(([e,t])=>[!0,e,t]),(()=>[!1,...Re(ol(e,t,l))])),Kt=e=>M(le(N,e),(([e,t])=>[!0,e,t]),(()=>[!1,...Re(dl(e))])),Qt=e=>X(q)||X(et[e])?0:Z(e?ve(q):q,((t,l)=>Z(t,((t,n)=>Z(t,((t,s)=>dt(et[e],[l,n,s],t))))))),Ut=e=>X(ge)||X(tt[e])?0:Z(e?de(ge):ge,((t,l)=>dt(tt[e],[l],t))),Xt=(e,t,l,n)=>{if(!X(e))return dt(t,n,(()=>oe(e))),ne(e,((e,t)=>dt(l,[...null!=n?n:[],e],1==t))),1},Yt=e=>{const t=cl();t!=d&&dt(je[e],void 0,t);const l=X(Qe[e]),n=X(Ye[e])&&X(Ze[e])&&X(Ke[e])&&X(Ue[e])&&X($e[e])&&X(qe[e])&&X(Ge[e])&&l&&X(De[e])&&X(Ne[e]),s=X(_e[e])&&X(Xe[e])&&X(Be[e])&&X(ke[e]);if(!n||!s){const t=e?[de(R),ce(I),de(z),ce(A),ve(W),ve(j)]:[R,I,z,A,W,j];if(!n){Xt(t[0],De[e],Ne[e]),Z(t[1],((t,l)=>Xt(t,$e[e],qe[e],[l]))),Z(t[2],((t,l)=>{0!=t&&dt(Ge[e],[l],nl(l))}));const n=ye();Z(t[3],((t,s)=>{Xt(t,Ke[e],Ue[e],[s])&&!l&&(dt(Qe[e],[s,null]),Se(n,s))})),l||Z(t[5],((t,l)=>{if(!U(n,l)){const n=ye();Z(t,(e=>Z(e,(([t,l],s)=>l!==t?Se(n,s):_(e,s))))),Z(n,(t=>dt(Qe[e],[l,t])))}})),Z(t[4],((t,l)=>Z(t,((t,n)=>Xt(t,Ye[e],Ze[e],[l,n])))))}if(!s){let l;Z(t[5],((t,n)=>{let s;Z(t,((t,a)=>{let r;Z(t,(([t,o],i)=>{o!==t&&(dt(_e[e],[n,a,i],o,t,Gt),l=s=r=1)})),r&&dt(Xe[e],[n,a],Gt)})),s&&dt(Be[e],[n],Gt)})),l&&dt(ke[e],void 0,Gt)}}},Zt=e=>{const t=Tl();t!=w&&dt(lt[e],void 0,t);const l=X(st[e])&&X(at[e]),n=X(rt[e])&&X(nt[e]);if(!l||!n){const t=e?[de(k),de(N)]:[k,N];if(l||Xt(t[0],st[e],at[e]),!n){let l;Z(t[1],(([t,n],s)=>{n!==t&&(dt(rt[e],[s],n,t,Kt),l=1)})),l&&dt(nt[e],void 0,Kt)}}},_t=(e,...t)=>(Jl((()=>e(...F(t,S)))),xl),el=()=>ue(Ae),tl=()=>te(Ae),ll=e=>te(le(we,S(e))),nl=e=>Q(le(Ae,S(e))),sl=e=>te(le(Ae,S(e))),al=(e,t,l,n=0,s)=>{return F(H((r=le(Ae,S(e)),o=(e,l)=>[L(t)?l:le(e,S(t)),l],a=([e],[t])=>{return((null!=(n=e)?n:0)<(null!=(s=t)?s:0)?-1:1)*(l?-1:1);var n,s},F([...null!=(i=null==r?void 0:r.entries())?i:[]],(([e,t])=>o(t,e))).sort(a)),n,L(s)?s:n+s),(([,e])=>e));var a,r,o,i},rl=(e,t)=>te(le(le(Ae,S(e)),S(t))),ol=(e,t,l)=>le(le(le(Ae,S(e)),S(t)),S(l)),il=()=>oe(We),ul=()=>te(We),dl=e=>le(We,S(e)),cl=()=>!X(Ae),vl=e=>U(Ae,S(e)),hl=(e,t)=>U(le(we,S(e)),S(t)),gl=(e,t)=>U(le(Ae,S(e)),S(t)),fl=(e,t,l)=>U(le(le(Ae,S(e)),S(t)),S(l)),Tl=()=>!X(We),bl=e=>U(We,S(e)),Cl=e=>_t((()=>(e=>Fe(e,gt,$t))(e)?mt(e):0)),pl=e=>_t((()=>bt(e)?Et(e):0)),Vl=e=>{try{wt(Pe(e))}catch(e){}return xl},yl=t=>_t((()=>{if((e=Fe(t,(e=>Fe(e,ht))))&&(yt(t),!X(Ae))){const e=el();wl(),Cl(e)}})),Sl=e=>_t((()=>{if(t=(e=>Fe(e,ht))(e)){const l=il();Ml(),Il(),t=!0,St(e),pl(l)}})),wl=()=>_t((()=>mt({}))),ml=e=>_t((e=>U(Ae,e)?Ft(e):0),e),Rl=(e,t)=>_t(((e,t)=>M(le(Ae,e),(l=>U(l,t)?Ot(e,l,t):0))),e,t),Il=()=>_t((()=>Et({}))),Ll=()=>_t((()=>{yt({}),e=!1})),Ml=()=>_t((()=>{St({}),t=!1})),Jl=(e,t)=>{if(-1!=m){El();const l=e();return Hl(t),l}},El=()=>(-1!=m&&m++,1==m&&dt(ot,void 0),xl),Hl=e=>(m>0&&(m--,0==m&&(s=!X(j),r=!X(N),m=1,Qt(1),s&&Yt(1),Ut(1),r&&Zt(1),(null==e?void 0:e(xl))&&(Z(j,((e,t)=>Z(e,((e,l)=>Z(e,(([e],n)=>Ee(xl,t,l,n,e))))))),Z(N,(([e],t)=>He(xl,t,e))),s=r=!1),dt(it[0],void 0),m=-1,Qt(0),s&&Yt(0),Ut(0),r&&Zt(0),null==n||n(xl),dt(it[1],void 0),m=0,s=r=!1,d=cl(),w=Tl(),P([R,I,z,A,W,j,q,k,N,ge],Y))),xl),xl={getContent:()=>[el(),il()],getTables:el,getTableIds:tl,getTable:e=>ie(le(Ae,S(e))),getTableCellIds:ll,getRowCount:nl,getRowIds:sl,getSortedRowIds:al,getRow:(e,t)=>oe(le(le(Ae,S(e)),S(t))),getCellIds:rl,getCell:ol,getValues:il,getValueIds:ul,getValue:dl,hasTables:cl,hasTable:vl,hasTableCell:hl,hasRow:gl,hasCell:fl,hasValues:Tl,hasValue:bl,getTablesJson:()=>xe(Ae),getValuesJson:()=>xe(We),getJson:()=>xe([Ae,We]),getTablesSchemaJson:()=>xe(fe),getValuesSchemaJson:()=>xe(be),getSchemaJson:()=>xe([fe,be]),hasTablesSchema:()=>e,hasValuesSchema:()=>t,setContent:([e,t])=>_t((()=>{(K(e)?wl:Cl)(e),(K(t)?Il:pl)(t)})),setTables:Cl,setTable:(e,t)=>_t((e=>gt(t,e)?Rt(e,t):0),e),setRow:(e,t,l)=>_t(((e,t)=>ft(e,t,l)?It(e,Pt(e),t,l):0),e,t),addRow:(e,t,l=!0)=>Jl((()=>{let n;return ft(e,n,t)&&(e=S(e),It(e,Pt(e),n=xt(e,l?1:0),t)),n})),setPartialRow:(e,t,l)=>_t(((e,t)=>{if(ft(e,t,l,1)){const n=Pt(e);G(l,((l,s)=>Mt(e,n,t,s,l)))}}),e,t),setCell:(e,t,l,n)=>_t(((e,t,l)=>M(Tt(e,t,l,E(n)?n(ol(e,t,l)):n),(n=>Mt(e,Pt(e),t,l,n)))),e,t,l),setValues:pl,setPartialValues:e=>_t((()=>bt(e,1)?G(e,((e,t)=>Ht(t,e))):0)),setValue:(e,t)=>_t((e=>M(Ct(e,E(t)?t(dl(e)):t),(t=>Ht(e,t)))),e),applyChanges:e=>_t((()=>{G(e[0],((e,t)=>L(e)?ml(t):G(e,((e,l)=>L(e)?Rl(t,l):G(e,((e,n)=>Ee(xl,t,l,n,e))))))),G(e[1],((e,t)=>He(xl,t,e)))})),setTablesJson:Vl,setValuesJson:e=>{try{Jt(Pe(e))}catch(e){}return xl},setJson:e=>_t((()=>{try{const[t,l]=Pe(e);wt(t),Jt(l)}catch(t){Vl(e)}})),setTablesSchema:yl,setValuesSchema:Sl,setSchema:(e,t)=>_t((()=>{yl(e),Sl(t)})),delTables:wl,delTable:ml,delRow:Rl,delCell:(e,t,l,n)=>_t(((e,t,l)=>M(le(Ae,e),(s=>M(le(s,t),(a=>U(a,l)?zt(e,s,t,a,l,n):0))))),e,t,l),delValues:Il,delValue:e=>_t((e=>U(We,e)?At(e):0),e),delTablesSchema:Ll,delValuesSchema:Ml,delSchema:()=>_t((()=>{Ll(),Ml()})),transaction:Jl,startTransaction:El,getTransactionChanges:()=>[oe(j,((e,t)=>-1===le(R,t)?void 0:oe(e,((e,l)=>-1===le(le(A,t),l)?void 0:oe(e,(([,e])=>e),((e,t)=>Me(t)))),K)),K),oe(N,(([,e])=>e),((e,t)=>Me(t)))],getTransactionLog:()=>[s,r,ue(j,Le,Me),ue(q),oe(N,Le,Me),oe(ge),oe(R),ie(A),ue(W),oe(k)],finishTransaction:Hl,forEachTable:e=>Z(Ae,((t,l)=>e(l,(e=>Z(t,((t,l)=>e(l,(e=>ne(t,e))))))))),forEachTableCell:(e,t)=>ne(le(we,S(e)),t),forEachRow:(e,t)=>Z(le(Ae,S(e)),((e,l)=>t(l,(t=>ne(e,t))))),forEachCell:(e,t,l)=>ne(le(le(Ae,S(e)),S(t)),l),forEachValue:e=>ne(We,e),addSortedRowIdsListener:(e,t,l,n,s,a,r)=>{let o=al(e,t,l,n,s);return ut((()=>{const r=al(e,t,l,n,s);var i,u,d;u=o,x(i=r)===x(u)&&(d=(e,t)=>u[t]===e,i.every(d))||(o=r,a(xl,e,t,l,n,s,o))}),Qe[r?1:0],[e,t],[tl])},addStartTransactionListener:e=>ut(e,ot),addWillFinishTransactionListener:e=>ut(e,it[0]),addDidFinishTransactionListener:e=>ut(e,it[1]),callListener:e=>(vt(e),xl),delListener:e=>(ct(e),xl),getListenerStats:()=>({}),createStore:ze,addListener:ut,callListeners:dt,addPostTransactionListener:e=>{n=e}};return G({[u+v]:[0,je,[],()=>[cl()]],[v]:[0,ke],[h]:[0,De],[u+c]:[1,Ne,[tl],e=>[vl(...e)]],[c]:[1,Be,[tl]],[c+C]:[1,$e,[tl]],[u+c+b]:[2,qe,[tl,ll],e=>[hl(...e)]],[f]:[1,Ge,[tl]],[T]:[1,Ke,[tl]],[u+g]:[2,Ue,[tl,sl],e=>[gl(...e)]],[g]:[2,Xe,[tl,sl]],[C]:[2,Ye,[tl,sl]],[u+b]:[3,Ze,[tl,sl,rl],e=>[fl(...e)]],[b]:[3,_e,[tl,sl,rl],e=>Re(ol(...e))],InvalidCell:[3,et],[u+V]:[0,lt,[],()=>[Tl()]],[V]:[0,nt],[y]:[0,st],[u+p]:[1,at,[ul],e=>[bl(...e)]],[p]:[1,rt,[ul],e=>Re(dl(e[0]))],InvalidValue:[1,tt]},(([e,t,l,n],s)=>{xl["add"+s+"Listener"]=(...s)=>ut(s[e],t[s[e+1]?1:0],e>0?H(s,0,e):void 0,l,n)})),D(xl)};var Ae=Math.pow;const We=Ae(2,36),je=Ae(2,30),ke=Ae(2,24),De=Ae(2,18),Ne=Ae(2,12),Be=Ae(2,6),$e=e=>String.fromCharCode(48+(63&e)),qe=(e,t)=>R(e,t)-48,Ge={HasTable:1,Table:1,TableCellIds:1,HasTableCell:2,RowCount:1,RowIds:1,SortedRowIds:5,HasRow:2,Row:2,CellIds:2,HasCell:3,Cell:3,HasValue:1,Value:1,InvalidCell:3,InvalidValue:1},Ke=()=>[l,[fe(),fe()]];e.createMergeableStore=e=>{let t=1,l=Ke();const[n,s]=(e=>{let t=0,l=0;const n=(s=(e,t)=>(e<<5)+e^R(t),((e,t="",l)=>e.split(t,l))(e).reduce(s,5381)>>>0);var s;const a=e=>{const n=t,[s,a]=L(e)?[0,0]:[qe(r=e,0)*We+qe(r,1)*je+qe(r,2)*ke+qe(r,3)*De+qe(r,4)*Ne+qe(r,5)*Be+qe(r,6),qe(r,7)*De+qe(r,8)*Ne+qe(r,9)*Be+qe(r,10),qe(r,11)*ke+qe(r,12)*De+qe(r,13)*Ne+qe(r,14)*Be+qe(r,15)];var r;t=Math.max(n,s,Date.now()),l=t==n?t==s?Math.max(l,a):l:t==s?a:-1};return[()=>{return a(),s=++l,r=n,$e((e=t)/We)+$e(e/je)+$e(e/ke)+$e(e/De)+$e(e/Ne)+$e(e/Be)+$e(e)+$e(s/De)+$e(s/Ne)+$e(s/Be)+$e(s)+$e(r/ke)+$e(r/De)+$e(r/Ne)+$e(r/Be)+$e(r);var e,s,r},a]})(e),a=ze(),r=e=>{const l=t;t=0,e(),t=l},o=e=>{const t=[{},{}];return s(e[0]),pe(e,l,t,(([e,t],[l,n],[s,a])=>{pe(e,l,s,((e,t,l)=>Ce(e,t,l,((e,t,l)=>Ce(e,t,l,Ve))))),pe(t,n,a,Ve)})),r((()=>a.applyChanges(t))),i},i={getMergeableContent:()=>Te(l,(([e,t])=>[be(e,(e=>be(e,(e=>be(e,Le))))),be(t,Le)])),setMergeableContent:e=>(r((()=>a.transaction((()=>{a.delTables().delValues(),l=Ke()})))),o(e),i),applyMergeableChanges:o,merge:e=>{const t=i.getMergeableContent(),l=e.getMergeableContent();return e.applyMergeableChanges(t),o(l)}};return a.addPostTransactionListener((()=>{if(t){const e=n(),[t,s,r,,o]=a.getTransactionLog(),[i,u]=l[1];l[0]=e,t&&(i[0]=e,G(r,((t,l)=>{var n;const s=ae(i[1],l,ge),a=null!=(n=s[1])?n:s[1]=ee();s[0]=e,G(t,((t,l)=>{var n;const s=ae(a,l,ge),r=null!=(n=s[1])?n:s[1]=ee();s[0]=e,G(t,(([,t],l)=>se(r,l,[e,t])))}))}))),s&&(u[0]=e,G(o,(([,t],l)=>{se(u[1],l,[e,t])})))}})),G(a,((e,t)=>i[t]=w(t,"set")||w(t,"del")||w(t,"apply")||m(t,"Transaction")||"callListener"==t?(...t)=>(e(...t),i):w(t,"add")&&m(t,"Listener")?(...l)=>{var n;const s=null!=(n=Ge[H(t,3,-8)])?n:0,a=l[s];return l[s]=(e,...t)=>a(i,...t),e(...l)}:e)),D(i)}},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBaseMergeableStore={});
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>null==e,n=(e,n,o)=>t(e)?null==o?void 0:o():n(e),o=Object,l=e=>o.getPrototypeOf(e),i=o.entries,r=o.keys,u=o.freeze,d=(e,t)=>n(e,(e=>e[t])),s=(e,n)=>!t(d(e,n)),c=(e,t)=>(delete e[t],e),a=(e,t)=>((e,t)=>e.map(t))(i(e),(([e,n])=>t(n,e))),v=e=>r(e).length,f=e=>(e=>!t(e)&&n(l(e),(e=>e==o.prototype||t(l(e))),(()=>!0)))(e)&&0==v(e),y=e=>new Map(e),h=(e,t)=>null==e?void 0:e.get(t),p=(e,n,o)=>{return t(o)?(i=n,null==(l=e)||l.delete(i),e):null==e?void 0:e.set(n,o);var l,i},g=(e,t,n)=>{var o,l,i;return l=t,null!=(i=null==(o=e)?void 0:o.has(l))&&i||p(e,t,n()),h(e,t)};var m=(e,t,n)=>new Promise(((o,l)=>{var i=e=>{try{u(n.next(e))}catch(e){l(e)}},r=e=>{try{u(n.throw(e))}catch(e){l(e)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,r);u((n=n.apply(e,t)).next())}));const A=y(),x=y();var L=(e,t,n)=>new Promise(((o,l)=>{var i=e=>{try{u(n.next(e))}catch(e){l(e)}},r=e=>{try{u(n.throw(e))}catch(e){l(e)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,r);u((n=n.apply(e,t)).next())}));const P=(e,t)=>[e[t].t,e[t].v],S=(e,n,o,l)=>{const i=t(n)?e:((e,t,n)=>(s(e,t)||(e[t]={}),e[t]))(e,n);let r;return a(o,((e,t)=>{l(i,t,e)&&(r=1)})),a(i,((e,t)=>{s(o,t)||(c(i,t),r=1)})),!t(n)&&f(i)&&c(e,n),r};e.createAutomergePersister=(e,o,l="tinybase",i)=>(o.change((e=>e[l]={})),((e,o,l,i,r,d,[s,c]=[],a=[])=>{let v,y,L,P=0,S=0;g(A,a,(()=>0)),g(x,a,(()=>[]));const b=e=>m(void 0,null,(function*(){return 2!=P&&(P=1,yield w.schedule((()=>m(void 0,null,(function*(){yield e(),P=0}))))),w})),w={load:(t,n)=>m(void 0,null,(function*(){return yield b((()=>m(void 0,null,(function*(){try{e.setContent(yield o())}catch(o){e.setContent([t,n])}}))))})),startAutoLoad:(...t)=>m(void 0,[...t],(function*(t={},n={}){return w.stopAutoLoad(),yield w.load(t,n),S=1,L=i(((t,n)=>m(void 0,null,(function*(){if(n){const t=n();yield b((()=>m(void 0,null,(function*(){return e.setTransactionChanges(t)}))))}else yield b((()=>m(void 0,null,(function*(){var n;try{e.setContent(null!=(n=null==t?void 0:t())?n:yield o())}catch(e){null==d||d(e)}}))))})))),w})),stopAutoLoad:()=>(S&&(r(L),L=void 0,S=0),w),save:t=>m(void 0,null,(function*(){return 1!=P&&(P=2,yield w.schedule((()=>m(void 0,null,(function*(){try{yield l(e.getContent,t)}catch(e){null==d||d(e)}P=0}))))),w})),startAutoSave:()=>m(void 0,null,(function*(){return yield w.stopAutoSave().save(),v=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();f(n)&&f(o)||w.save((()=>[n,o]))})),w})),stopAutoSave:()=>(n(v,e.delListener),v=void 0,w),schedule:(...e)=>m(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(h(x,a),...e),yield m(void 0,null,(function*(){if(!h(A,a)){for(p(A,a,1);!t((e=h(x,a),y=e.shift()));)try{yield y()}catch(e){null==d||d(e)}p(A,a,0)}var e})),w})),getStore:()=>e,destroy:()=>w.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return s&&(w[s]=()=>c),u(w)})(e,(()=>L(void 0,null,(function*(){return 2==v(o.doc[l])?P(o.doc,l):void 0}))),((e,i)=>L(void 0,null,(function*(){return o.change((o=>((e,o,l,i)=>{((e,t)=>{f(e[t])&&(e[t]={t:{},v:{}})})(e,o);const[r,u]=P(e,o),s=()=>{v=1};let v=1;if(n(null==i?void 0:i(),(([e,o])=>{v=0,a(e,((e,o)=>v?0:t(e)?c(r,o):n(r[o],(o=>a(e,((e,l)=>v?0:t(e)?c(o,l):n(d(o,l),(n=>a(e,((e,o)=>t(e)?c(n,o):n[o]=e))),s)))),s))),a(o,((e,n)=>v?0:t(e)?c(u,n):u[n]=e))})),v){const[e,t]=l();S(r,void 0,e,((e,t,n)=>S(r,t,n,((e,t,n)=>S(e,t,n,((e,t,n)=>{if(d(e,t)!==n)return e[t]=n,1})))))),S(u,void 0,t,((e,t,n)=>{d(u,t)!==n&&(u[t]=n)}))}})(o,l,e,i)))}))),(e=>{const t=({doc:t})=>e((()=>P(t,l)));return o.on("change",t),t}),(e=>{o.removeListener("change",e)}),i,["getDocHandle",o]))},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterAutomerge={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n=t(""),o=e=>null==e,l=(e,t,n)=>o(e)?null==n?void 0:n():t(e),i=Object,r=e=>i.getPrototypeOf(e),u=i.entries,d=i.keys,s=i.freeze,a=(e,t)=>l(e,(e=>e[t])),c=(e,t)=>t in e,v=(e,t)=>(delete e[t],e),y=(e,t)=>((e,t)=>e.map(t))(u(e),(([e,n])=>t(n,e))),f=e=>d(e).length,h=e=>(e=>!o(e)&&l(r(e),(e=>e==i.prototype||o(r(e))),(()=>!0)))(e)&&0==f(e),p=e=>new Map(e),g=(e,t)=>null==e?void 0:e.get(t),m=(e,t,n)=>{return o(n)?(i=t,null==(l=e)||l.delete(i),e):null==e?void 0:e.set(t,n);var l,i},A=(e,t,n)=>{var o,l,i;return l=t,null!=(i=null==(o=e)?void 0:o.has(l))&&i||m(e,t,n()),g(e,t)};var C=(e,t,n)=>new Promise(((o,l)=>{var i=e=>{try{u(n.next(e))}catch(e){l(e)}},r=e=>{try{u(n.throw(e))}catch(e){l(e)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,r);u((n=n.apply(e,t)).next())}));const b=p(),x=p();var L=(e,t,n)=>new Promise(((o,l)=>{var i=e=>{try{u(n.next(e))}catch(e){l(e)}},r=e=>{try{u(n.throw(e))}catch(e){l(e)}},u=e=>e.done?o(e.value):Promise.resolve(e.value).then(i,r);u((n=n.apply(e,t)).next())}));const P=(e,t)=>[e[t].t,e[t].v],S=(e,t,n,l)=>{const i=o(t)?e:((e,t,n)=>(c(e,t)||(e[t]={}),e[t]))(e,t);let r;return y(n,((e,t)=>{l(i,t,e)&&(r=1)})),y(i,((e,t)=>{c(n,t)||(v(i,t),r=1)})),!o(t)&&h(i)&&v(e,t),r};e.createAutomergePersister=(e,i,r="tinybase",u)=>(i.change((e=>e[r]={})),((e,i,r,u,d,a,c,[v,y]=[],f=[])=>{var p;let L,P,S,w=0,T=0;A(b,f,(()=>0)),A(x,f,(()=>[]));const M=null!=(p=c?e.getMergeableContent:null)?p:e.getContent,j=e.getTransactionChanges,D=e=>C(void 0,null,(function*(){return 2!=w&&(w=1,yield O.schedule((()=>C(void 0,null,(function*(){yield e(),w=0}))))),O})),O={load:(o,l)=>C(void 0,null,(function*(){return yield D((()=>C(void 0,null,(function*(){try{const o=yield i();(c&&(e=>t(e)==n)(o[0])?e.applyMergeableChanges:e.setContent)(o)}catch(t){e.setContent([o,l])}}))))})),startAutoLoad:(...t)=>C(void 0,[...t],(function*(t={},n={}){return O.stopAutoLoad(),yield O.load(t,n),T=1,S=u(((t,n)=>C(void 0,null,(function*(){if(n){const t=n();yield D((()=>C(void 0,null,(function*(){return e.applyChanges(t)}))))}else yield D((()=>C(void 0,null,(function*(){var n;try{e.setContent(null!=(n=null==t?void 0:t())?n:yield i())}catch(e){null==a||a(e)}}))))})))),O})),stopAutoLoad:()=>(T&&(d(S),S=void 0,T=0),O),save:e=>C(void 0,null,(function*(){return 1!=w&&(w=2,yield O.schedule((()=>C(void 0,null,(function*(){try{yield r(M,e)}catch(e){null==a||a(e)}w=0}))))),O})),startAutoSave:()=>C(void 0,null,(function*(){return yield O.stopAutoSave().save(),L=e.addDidFinishTransactionListener((()=>{const[e,t]=j();h(e)&&h(t)||O.save((()=>[e,t]))})),O})),stopAutoSave:()=>(l(L,e.delListener),L=void 0,O),schedule:(...e)=>C(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(g(x,f),...e),yield C(void 0,null,(function*(){if(!g(b,f)){for(m(b,f,1);!o((e=g(x,f),P=e.shift()));)try{yield P()}catch(e){null==a||a(e)}m(b,f,0)}var e})),O})),getStore:()=>e,destroy:()=>O.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return v&&(O[v]=()=>y),s(O)})(e,(()=>L(void 0,null,(function*(){const e=yield i.doc();return 2==f(e[r])?P(e,r):void 0}))),((e,t)=>L(void 0,null,(function*(){return i.change((n=>((e,t,n,i)=>{((e,t)=>{h(e[t])&&(e[t]={t:{},v:{}})})(e,t);const[r,u]=P(e,t),d=()=>{s=1};let s=1;if(l(null==i?void 0:i(),(([e,t])=>{s=0,y(e,((e,t)=>s?0:o(e)?v(r,t):l(r[t],(t=>y(e,((e,n)=>s?0:o(e)?v(t,n):l(a(t,n),(t=>y(e,((e,n)=>o(e)?v(t,n):t[n]=e))),d)))),d))),y(t,((e,t)=>s?0:o(e)?v(u,t):u[t]=e))})),s){const[e,t]=n();S(r,void 0,e,((e,t,n)=>S(r,t,n,((e,t,n)=>S(e,t,n,((e,t,n)=>{if(a(e,t)!==n)return e[t]=n,1})))))),S(u,void 0,t,((e,t,n)=>{a(u,t)!==n&&(u[t]=n)}))}})(n,r,e,t)))}))),(e=>{const t=({doc:t})=>e((()=>P(t,r)));return i.on("change",t),t}),(e=>{i.removeListener("change",e)}),u,!1,["getDocHandle",i]))},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterAutomerge={});
@@ -1 +1 @@
1
- var e,t;e=this,t=function(e){"use strict";const t=e=>null==e,n=(e,n,o)=>t(e)?null==o?void 0:o():n(e),o=Object,l=e=>o.getPrototypeOf(e),r=o.keys,i=o.freeze,s=e=>(e=>!t(e)&&n(l(e),(e=>e==o.prototype||t(l(e))),(()=>!0)))(e)&&0==(e=>r(e).length)(e),u=JSON.parse,a=e=>new Map(e),d=(e,t)=>null==e?void 0:e.get(t),c=(e,n,o)=>{return t(o)?(r=n,null==(l=e)||l.delete(r),e):null==e?void 0:e.set(n,o);var l,r},v=(e,t,n)=>{var o,l,r;return l=t,null!=(r=null==(o=e)?void 0:o.has(l))&&r||c(e,t,n()),d(e,t)};var f=(e,t,n)=>new Promise(((o,l)=>{var r=e=>{try{s(n.next(e))}catch(e){l(e)}},i=e=>{try{s(n.throw(e))}catch(e){l(e)}},s=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,i);s((n=n.apply(e,t)).next())}));const y=a(),h=a();var p=(e,t,n)=>new Promise(((o,l)=>{var r=e=>{try{s(n.next(e))}catch(e){l(e)}},i=e=>{try{s(n.throw(e))}catch(e){l(e)}},s=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,i);s((n=n.apply(e,t)).next())}));const g="storage",S=globalThis.window,m=(e,l,r,a)=>((e,o,l,r,u,a,[p,g]=[],S=[])=>{let m,w,A,L=0,P=0;v(y,S,(()=>0)),v(h,S,(()=>[]));const x=e=>f(void 0,null,(function*(){return 2!=L&&(L=1,yield T.schedule((()=>f(void 0,null,(function*(){yield e(),L=0}))))),T})),T={load:(t,n)=>f(void 0,null,(function*(){return yield x((()=>f(void 0,null,(function*(){try{e.setContent(yield o())}catch(o){e.setContent([t,n])}}))))})),startAutoLoad:(...t)=>f(void 0,[...t],(function*(t={},n={}){return T.stopAutoLoad(),yield T.load(t,n),P=1,A=r(((t,n)=>f(void 0,null,(function*(){if(n){const t=n();yield x((()=>f(void 0,null,(function*(){return e.setTransactionChanges(t)}))))}else yield x((()=>f(void 0,null,(function*(){var n;try{e.setContent(null!=(n=null==t?void 0:t())?n:yield o())}catch(e){null==a||a(e)}}))))})))),T})),stopAutoLoad:()=>(P&&(u(A),A=void 0,P=0),T),save:t=>f(void 0,null,(function*(){return 1!=L&&(L=2,yield T.schedule((()=>f(void 0,null,(function*(){try{yield l(e.getContent,t)}catch(e){null==a||a(e)}L=0}))))),T})),startAutoSave:()=>f(void 0,null,(function*(){return yield T.stopAutoSave().save(),m=e.addDidFinishTransactionListener(((e,t)=>{const[n,o]=t();s(n)&&s(o)||T.save((()=>[n,o]))})),T})),stopAutoSave:()=>(n(m,e.delListener),m=void 0,T),schedule:(...e)=>f(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(d(h,S),...e),yield f(void 0,null,(function*(){if(!d(y,S)){for(c(y,S,1);!t((e=d(h,S),w=e.shift()));)try{yield w()}catch(e){null==a||a(e)}c(y,S,0)}var e})),T})),getStore:()=>e,destroy:()=>T.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return p&&(T[p]=()=>g),i(T)})(e,(()=>p(void 0,null,(function*(){return u(r.getItem(l))}))),(e=>p(void 0,null,(function*(){return r.setItem(l,(t=e(),JSON.stringify(t,((e,t)=>t instanceof Map?o.fromEntries([...t]):t))));var t}))),(e=>{const t=t=>{t.storageArea===r&&t.key===l&&e((()=>u(t.newValue)))};return S.addEventListener(g,t),t}),(e=>S.removeEventListener(g,e)),a,["getStorageName",l]);e.createLocalPersister=(e,t,n)=>m(e,t,localStorage,n),e.createSessionPersister=(e,t,n)=>m(e,t,sessionStorage,n)},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterBrowser={});
1
+ var e,t;e=this,t=function(e){"use strict";const t=e=>typeof e,n=t(""),o=e=>null==e,l=(e,t,n)=>o(e)?null==n?void 0:n():t(e),r=Object,i=e=>r.getPrototypeOf(e),s=r.keys,u=r.freeze,a=e=>(e=>!o(e)&&l(i(e),(e=>e==r.prototype||o(i(e))),(()=>!0)))(e)&&0==(e=>s(e).length)(e),d=JSON.parse,c=e=>new Map(e),v=(e,t)=>null==e?void 0:e.get(t),f=(e,t,n)=>{return o(n)?(r=t,null==(l=e)||l.delete(r),e):null==e?void 0:e.set(t,n);var l,r},y=(e,t,n)=>{var o,l,r;return l=t,null!=(r=null==(o=e)?void 0:o.has(l))&&r||f(e,t,n()),v(e,t)};var p=(e,t,n)=>new Promise(((o,l)=>{var r=e=>{try{s(n.next(e))}catch(e){l(e)}},i=e=>{try{s(n.throw(e))}catch(e){l(e)}},s=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,i);s((n=n.apply(e,t)).next())}));const h=c(),g=c();var S=(e,t,n)=>new Promise(((o,l)=>{var r=e=>{try{s(n.next(e))}catch(e){l(e)}},i=e=>{try{s(n.throw(e))}catch(e){l(e)}},s=e=>e.done?o(e.value):Promise.resolve(e.value).then(r,i);s((n=n.apply(e,t)).next())}));const m="storage",w=globalThis.window,A=(e,i,s,c)=>((e,r,i,s,d,c,S,[m,w]=[],A=[])=>{var L;let C,P,b,x=0,T=0;y(h,A,(()=>0)),y(g,A,(()=>[]));const M=null!=(L=S?e.getMergeableContent:null)?L:e.getContent,O=e.getTransactionChanges,E=e=>p(void 0,null,(function*(){return 2!=x&&(x=1,yield N.schedule((()=>p(void 0,null,(function*(){yield e(),x=0}))))),N})),N={load:(o,l)=>p(void 0,null,(function*(){return yield E((()=>p(void 0,null,(function*(){try{const o=yield r();(S&&(e=>t(e)==n)(o[0])?e.applyMergeableChanges:e.setContent)(o)}catch(t){e.setContent([o,l])}}))))})),startAutoLoad:(...t)=>p(void 0,[...t],(function*(t={},n={}){return N.stopAutoLoad(),yield N.load(t,n),T=1,b=s(((t,n)=>p(void 0,null,(function*(){if(n){const t=n();yield E((()=>p(void 0,null,(function*(){return e.applyChanges(t)}))))}else yield E((()=>p(void 0,null,(function*(){var n;try{e.setContent(null!=(n=null==t?void 0:t())?n:yield r())}catch(e){null==c||c(e)}}))))})))),N})),stopAutoLoad:()=>(T&&(d(b),b=void 0,T=0),N),save:e=>p(void 0,null,(function*(){return 1!=x&&(x=2,yield N.schedule((()=>p(void 0,null,(function*(){try{yield i(M,e)}catch(e){null==c||c(e)}x=0}))))),N})),startAutoSave:()=>p(void 0,null,(function*(){return yield N.stopAutoSave().save(),C=e.addDidFinishTransactionListener((()=>{const[e,t]=O();a(e)&&a(t)||N.save((()=>[e,t]))})),N})),stopAutoSave:()=>(l(C,e.delListener),C=void 0,N),schedule:(...e)=>p(void 0,null,(function*(){return((e,...t)=>{e.push(...t)})(v(g,A),...e),yield p(void 0,null,(function*(){if(!v(h,A)){for(f(h,A,1);!o((e=v(g,A),P=e.shift()));)try{yield P()}catch(e){null==c||c(e)}f(h,A,0)}var e})),N})),getStore:()=>e,destroy:()=>N.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return m&&(N[m]=()=>w),u(N)})(e,(()=>S(void 0,null,(function*(){return d(s.getItem(i))}))),(e=>S(void 0,null,(function*(){return s.setItem(i,(t=e(),JSON.stringify(t,((e,t)=>t instanceof Map?r.fromEntries([...t]):t))));var t}))),(e=>{const t=t=>{t.storageArea===s&&t.key===i&&e((()=>d(t.newValue)))};return w.addEventListener(m,t),t}),(e=>w.removeEventListener(m,e)),c,!1,["getStorageName",i]);e.createLocalPersister=(e,t,n)=>A(e,t,localStorage,n),e.createSessionPersister=(e,t,n)=>A(e,t,sessionStorage,n)},"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterBrowser={});
@@ -1 +1 @@
1
- var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,t="tinybase",l=",",o=n(""),r=(e,n)=>e.repeat(n),i=Promise,u=clearInterval,d=e=>null==e,a=(e,n,t)=>d(e)?null==t?void 0:t():n(e),c=e=>n(e)==o,s=(e,n,t)=>e.slice(n,t),v=e=>e.length,y=e=>{return n=function*(){return i.all(e)},new Promise(((e,t)=>{var l=e=>{try{r(n.next(e))}catch(e){t(e)}},o=e=>{try{r(n.throw(e))}catch(e){t(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,o);r((n=n.apply(void 0,null)).next())}));var n},f="_",p="_id",h=e=>`"${e.replace(/"/g,'""')}"`,E="SELECT",m=(e,n="")=>e.join(n),T=(e,n)=>e.map(n),O=e=>0==v(e),A=(e,n)=>e.filter(n),P=(e,...n)=>e.push(...n),L=(e,n)=>{var t;return null!=(t=null==e?void 0:e.has(n))&&t},b=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},R=(e,n)=>null==e?void 0:e.delete(n),w=Object,N=e=>w.getPrototypeOf(e),x=w.entries,S=w.keys,C=w.freeze,g=(e=[])=>w.fromEntries(e),D=(...e)=>w.assign({},...e),I=(e,n)=>T(x(e),(([e,t])=>n(t,e))),F=e=>w.values(e),M=e=>v(S(e)),$=e=>(e=>!d(e)&&a(N(e),(e=>e==w.prototype||d(N(e))),(()=>!0)))(e)&&0==M(e),j=e=>new Map(e),_=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},B=(e,n)=>null==e?void 0:e.get(n),W=(e,n)=>{var t;return T([...null!=(t=null==e?void 0:e.entries())?t:[]],(([e,t])=>n(t,e)))},H=(e,n,t)=>d(t)?(R(e,n),e):null==e?void 0:e.set(n,t),U=(e,n,t)=>(L(e,n)||H(e,n,t()),B(e,n)),Y=(e,n,t,l=H)=>(I(n,((n,l)=>t(e,l,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,t)=>n(t)))})(e,(t=>((e,n)=>!d(((e,n)=>a(e,(e=>e[n])))(e,n)))(n,t)?0:l(e,t))),e),k=e=>new Set(Array.isArray(e)||d(e)?e:[e]),q=(e,n)=>null==e?void 0:e.add(n);var G=Object.defineProperty,J=Object.getOwnPropertySymbols,z=Object.prototype.hasOwnProperty,K=Object.prototype.propertyIsEnumerable,V=(e,n,t)=>n in e?G(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,Q=(e,n)=>{for(var t in n||(n={}))z.call(n,t)&&V(e,t,n[t]);if(J)for(var t of J(n))K.call(n,t)&&V(e,t,n[t]);return e},X=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const Z=E+"*FROM",ee="FROM pragma_table_",ne="WHERE",te=(e,n,t)=>{const o=j();return[()=>X(void 0,null,(function*(){return Y(o,g(yield y(T(yield e("SELECT name "+ee+"list WHERE schema='main'AND type='table'AND name IN("+oe(n)+")ORDER BY name",n),(n=>X(void 0,[n],(function*({name:n}){return[n,g(T(yield e(E+" name,type "+ee+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,t)=>H(o,n,Y(U(o,n,j),t,((e,n,t)=>{t!=B(e,n)&&H(e,n,t)}),((e,n)=>H(e,n))))),((e,n)=>H(o,n)))})),(n,t)=>X(void 0,null,(function*(){return((e,n)=>!d(B(B(o,e),n)))(n,t)?g(A(T(yield e(Z+h(n)),(e=>{return[e[t],(n=Q({},e),l=t,delete n[l],n)];var n,l})),(([e,n])=>!d(e)&&!$(n)))):{}})),(n,t,r,i,u,a=!1)=>X(void 0,null,(function*(){const c=k();I(null!=r?r:{},(e=>T(S(null!=e?e:{}),(e=>q(c,e)))));const s=b(c);if(!a&&u&&O(s)&&L(o,n))return yield e("DROP TABLE"+h(n)),void H(o,n);if(O(s)||L(o,n)){const l=B(o,n),r=k(_(l));yield y([...T(s,(t=>X(void 0,null,(function*(){R(r,t)||(yield e(`ALTER TABLE${h(n)}ADD${h(t)}`),H(l,t,""))})))),...!a&&i?T(b(r),(o=>X(void 0,null,(function*(){o!=t&&(yield e(`ALTER TABLE${h(n)}DROP${h(o)}`),H(l,o))})))):[]])}else yield e(`CREATE TABLE${h(n)}(${h(t)} PRIMARY KEY ON CONFLICT REPLACE${m(T(s,(e=>l+h(e))))});`),H(o,n,j([[t,""],...T(s,(e=>[e,""]))]));if(a)d(r)?yield e("DELETE FROM"+h(n)+"WHERE 1"):yield y(I(r,((l,o)=>X(void 0,null,(function*(){d(l)?yield e("DELETE FROM"+h(n)+ne+h(t)+"=?",[o]):O(s)||(yield le(e,n,t,S(l),[o,...F(l)]))})))));else if(O(s))L(o,n)&&(yield e("DELETE FROM"+h(n)+"WHERE 1"));else{const l=A(_(B(o,n)),(e=>e!=t)),i=[],u=[];I(null!=r?r:{},((e,n)=>{P(i,n,...T(l,(n=>null==e?void 0:e[n]))),P(u,n)})),yield le(e,n,t,l,i),yield e("DELETE FROM"+h(n)+ne+h(t)+"NOT IN("+oe(u)+")",u)}})),n=>X(void 0,null,(function*(){let l;yield e("BEGIN");try{l=yield n()}catch(e){null==t||t(e)}return yield e("END"),l}))]},le=(e,n,t,o,i)=>X(void 0,null,(function*(){return yield e("INSERT INTO"+h(n)+"("+h(t)+m(T(o,(e=>l+h(e))))+")VALUES"+s(r(`,(?${r(",?",v(o))})`,v(i)/(v(o)+1)),1)+"ON CONFLICT("+h(t)+")DO UPDATE SET"+m(T(o,(e=>h(e)+"=excluded."+h(e))),l),i)})),oe=e=>m(T(e,(()=>"?")),l),re=JSON.parse;var ie=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const ue=j(),de=j(),ae=(e,n,t,l,o,r,[i,u]=[],c=[])=>{let s,v,y,f=0,p=0;U(ue,c,(()=>0)),U(de,c,(()=>[]));const h=e=>ie(void 0,null,(function*(){return 2!=f&&(f=1,yield E.schedule((()=>ie(void 0,null,(function*(){yield e(),f=0}))))),E})),E={load:(t,l)=>ie(void 0,null,(function*(){return yield h((()=>ie(void 0,null,(function*(){try{e.setContent(yield n())}catch(n){e.setContent([t,l])}}))))})),startAutoLoad:(...t)=>ie(void 0,[...t],(function*(t={},o={}){return E.stopAutoLoad(),yield E.load(t,o),p=1,y=l(((t,l)=>ie(void 0,null,(function*(){if(l){const n=l();yield h((()=>ie(void 0,null,(function*(){return e.setTransactionChanges(n)}))))}else yield h((()=>ie(void 0,null,(function*(){var l;try{e.setContent(null!=(l=null==t?void 0:t())?l:yield n())}catch(e){null==r||r(e)}}))))})))),E})),stopAutoLoad:()=>(p&&(o(y),y=void 0,p=0),E),save:n=>ie(void 0,null,(function*(){return 1!=f&&(f=2,yield E.schedule((()=>ie(void 0,null,(function*(){try{yield t(e.getContent,n)}catch(e){null==r||r(e)}f=0}))))),E})),startAutoSave:()=>ie(void 0,null,(function*(){return yield E.stopAutoSave().save(),s=e.addDidFinishTransactionListener(((e,n)=>{const[t,l]=n();$(t)&&$(l)||E.save((()=>[t,l]))})),E})),stopAutoSave:()=>(a(s,e.delListener),s=void 0,E),schedule:(...e)=>ie(void 0,null,(function*(){return P(B(de,c),...e),yield ie(void 0,null,(function*(){if(!B(ue,c)){for(H(ue,c,1);!d((e=B(de,c),v=e.shift()));)try{yield v()}catch(e){null==r||r(e)}H(ue,c,0)}var e})),E})),getStore:()=>e,destroy:()=>E.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return i&&(E[i]=()=>u),C(E)};var ce=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const se="store",ve=(e,n,t,l,o,[r],i,u,d)=>{const[a,c,s,v]=te(n,i,o);return ae(e,(()=>ce(void 0,null,(function*(){return yield v((()=>ce(void 0,null,(function*(){var e,n;return yield a(),re(null!=(n=null==(e=(yield c(r,p))[f])?void 0:e[se])?n:"null")}))))}))),(e=>ce(void 0,null,(function*(){return yield v((()=>ce(void 0,null,(function*(){var n,t;yield a(),yield s(r,p,{[f]:{[se]:(t=null!=(n=e())?n:null,JSON.stringify(t,((e,n)=>n instanceof Map?w.fromEntries([...n]):n)))}},!0,!0)}))))}))),t,l,o,[d,u],u)};var ye=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const fe=(e,n,t,l,o,[r,i,[u,a,c]],s,v,h)=>{const[E,m,T,O]=te(n,s,o),P=(e,n)=>ye(void 0,null,(function*(){return yield y(W(i,((t,l)=>ye(void 0,[t,l],(function*([t,l,o,r],i){const u=e[i];n&&void 0===u||(yield T(t,l,u,o,r,n))})))))})),L=(e,n)=>ye(void 0,null,(function*(){return a?yield T(c,p,{[f]:e},!0,!0,n):null}));return ae(e,(()=>ye(void 0,null,(function*(){return yield O((()=>ye(void 0,null,(function*(){yield E();const e=yield ye(void 0,null,(function*(){return g(A(yield y(W(r,((e,n)=>ye(void 0,[e,n],(function*([e,n],t){return[e,yield m(t,n)]}))))),(e=>!$(e[1]))))})),n=yield ye(void 0,null,(function*(){return u?(yield m(c,p))[f]:{}}));return $(e)&&d(n)?void 0:[e,n]}))))}))),((e,n)=>ye(void 0,null,(function*(){return yield O((()=>ye(void 0,null,(function*(){if(yield E(),d(n)){const[n,t]=e();yield P(n),yield L(t)}else{const[e,t]=n();yield P(e,!0),yield L(t,!0)}}))))}))),t,l,o,[h,v],v)},pe="json",he="autoLoadIntervalSeconds",Ee="rowIdColumnName",me="tableId",Te="tableName",Oe={mode:pe,[he]:1},Ae={load:0,save:0,[Te]:t+"_values"},Pe=(e,n,t,l)=>{const o=j();return I(e,((e,r)=>{const i=s(F(D(n,c(e)?{[t]:e}:e)),0,M(n));d(i[0])||l(r,i[0])||H(o,r,i)})),o};var Le=(e,n,t)=>new Promise(((l,o)=>{var r=e=>{try{u(t.next(e))}catch(e){o(e)}},i=e=>{try{u(t.throw(e))}catch(e){o(e)}},u=e=>e.done?l(e.value):Promise.resolve(e.value).then(r,i);u((t=t.apply(e,n)).next())}));const be="pragma ",Re="data_version",we="schema_version",Ne=(e,n,l,o,r,i,d,a,v="getDb")=>{let y,f,h;const[m,T,O,A]=(e=>{const n=(e=>D(Oe,c(e)?{storeTableName:e}:null!=e?e:{}))(e),l=n[he];if(n.mode==pe){const{storeTableName:e=t}=n;return[1,l,[e],k(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=n,u=s(F(D(Ae,i)),0,M(Ae)),d=u[2],a=k(d);return[0,l,[Pe(o,{[me]:null,[Ee]:p},me,(e=>q(a,e)&&e==d)),Pe(r,{[Te]:null,[Ee]:p,deleteEmptyColumns:0,deleteEmptyTable:0},Te,((e,n)=>q(a,n)&&n==d)),u],a]})(n);return(m?ve:fe)(e,i?(e,n)=>Le(void 0,null,(function*(){return i(e,n),yield l(e,n)})):l,(e=>{return[(n=()=>Le(void 0,null,(function*(){try{const n=(yield l(be+Re))[0][Re],t=(yield l(be+we))[0][we],o=(yield l(E+" TOTAL_CHANGES() c"))[0].c;n==(null!=y?y:y=n)&&t==(null!=f?f:f=t)&&o==(null!=h?h:h=o)||(e(),y=n,f=t)}catch(e){}})),t=T,n(),setInterval(n,1e3*t)),o((n=>A.has(n)?e():0))];var n,t}),(([e,n])=>{u(e),y=f=null,r(n)}),d,O,b(A),a,v)};e.createCrSqliteWasmPersister=(e,n,t,l,o)=>Ne(e,t,((e,...t)=>{return l=[e,...t],o=function*(e,t=[]){return yield n.execO(e,t)},new Promise(((e,n)=>{var t=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,r);i((o=o.apply(void 0,l)).next())}));var l,o}),(e=>n.onUpdate(((n,t,l)=>e(l)))),(e=>e()),l,o,n)},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterCrSqliteWasm={});
1
+ var e,n;e=this,n=function(e){"use strict";const n=e=>typeof e,l="tinybase",t="",o=",",r=n(t),i=(e,n)=>e.repeat(n),u=Promise,a=clearInterval,d=e=>null==e,s=(e,n,l)=>d(e)?null==l?void 0:l():n(e),c=e=>n(e)==r,v=(e,n,l)=>e.slice(n,l),y=e=>e.length,f=e=>{return n=function*(){return u.all(e)},new Promise(((e,l)=>{var t=e=>{try{r(n.next(e))}catch(e){l(e)}},o=e=>{try{r(n.throw(e))}catch(e){l(e)}},r=n=>n.done?e(n.value):Promise.resolve(n.value).then(t,o);r((n=n.apply(void 0,null)).next())}));var n},p="_",h="_id",E=e=>`"${e.replace(/"/g,'""')}"`,m="SELECT",O=(e,n="")=>e.join(n),T=(e,n)=>e.map(n),A=e=>0==y(e),P=(e,n)=>e.filter(n),b=(e,...n)=>e.push(...n),L=(e,n)=>{var l;return null!=(l=null==e?void 0:e.has(n))&&l},R=e=>{var n;return[...null!=(n=null==e?void 0:e.values())?n:[]]},g=(e,n)=>null==e?void 0:e.delete(n),C=Object,w=e=>C.getPrototypeOf(e),N=C.entries,x=C.keys,S=C.freeze,D=(e=[])=>C.fromEntries(e),I=(...e)=>C.assign({},...e),M=(e,n)=>n in e,F=(e,n)=>T(N(e),(([e,l])=>n(l,e))),$=e=>C.values(e),j=e=>y(x(e)),_=e=>(e=>!d(e)&&s(w(e),(e=>e==C.prototype||d(w(e))),(()=>!0)))(e)&&0==j(e),B=e=>new Map(e),W=e=>{var n;return[...null!=(n=null==e?void 0:e.keys())?n:[]]},H=(e,n)=>null==e?void 0:e.get(n),U=(e,n)=>{var l;return T([...null!=(l=null==e?void 0:e.entries())?l:[]],(([e,l])=>n(l,e)))},Y=(e,n,l)=>d(l)?(g(e,n),e):null==e?void 0:e.set(n,l),k=(e,n,l)=>(L(e,n)||Y(e,n,l()),H(e,n)),q=(e,n,l,t=Y)=>(F(n,((n,t)=>l(e,t,n))),((e,n)=>{((e,n)=>{null==e||e.forEach(n)})(e,((e,l)=>n(l)))})(e,(l=>M(n,l)?0:t(e,l))),e),G=e=>new Set(Array.isArray(e)||d(e)?e:[e]),J=(e,n)=>null==e?void 0:e.add(n);var z=Object.defineProperty,K=Object.getOwnPropertySymbols,V=Object.prototype.hasOwnProperty,Q=Object.prototype.propertyIsEnumerable,X=(e,n,l)=>n in e?z(e,n,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[n]=l,Z=(e,n)=>{for(var l in n||(n={}))V.call(n,l)&&X(e,l,n[l]);if(K)for(var l of K(n))Q.call(n,l)&&X(e,l,n[l]);return e},ee=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ne=m+"*FROM",le="FROM pragma_table_",te="WHERE",oe=(e,n,l,r)=>{const i=B();return[()=>ee(void 0,null,(function*(){return q(i,D(yield f(T(yield e("SELECT name "+le+"list WHERE schema='main'AND(type='table'OR type='view')AND name IN("+ie(n)+")ORDER BY name",n),(n=>ee(void 0,[n],(function*({name:n}){return[n,D(T(yield e(m+" name,type "+le+"info(?)",[n]),(({name:e,type:n})=>[e,n])))]})))))),((e,n,l)=>Y(i,n,q(k(i,n,B),l,((e,n,l)=>{l!=H(e,n)&&Y(e,n,l)}),((e,n)=>Y(e,n))))),((e,n)=>Y(i,n)))})),(n,l)=>ee(void 0,null,(function*(){return((e,n)=>!d(H(H(i,e),n)))(n,l)?D(P(T(yield e(ne+E(n)),(e=>{return[e[l],(n=Z({},e),t=l,delete n[t],n)];var n,t})),(([e,n])=>!d(e)&&!_(n)))):{}})),(n,l,u,a,s,c=!1)=>ee(void 0,null,(function*(){const v=G();F(null!=u?u:{},(e=>T(x(null!=e?e:{}),(e=>J(v,e)))));const y=R(v);if(!c&&s&&A(y)&&L(i,n))return yield e("DROP TABLE"+E(n)),void Y(i,n);if(A(y)||L(i,n)){const o=H(i,n),r=G(W(o));yield f([...T(y,(l=>ee(void 0,null,(function*(){g(r,l)||(yield e(`ALTER TABLE${E(n)}ADD${E(l)}`),Y(o,l,t))})))),...!c&&a?T(R(r),(t=>ee(void 0,null,(function*(){t!=l&&(yield e(`ALTER TABLE${E(n)}DROP${E(t)}`),Y(o,t))})))):[]])}else yield e(`CREATE TABLE${E(n)}(${E(l)} PRIMARY KEY ON CONFLICT REPLACE${O(T(y,(e=>o+E(e))))});`),Y(i,n,B([[l,t],...T(y,(e=>[e,t]))]));if(c)d(u)?yield e("DELETE FROM"+E(n)+"WHERE 1"):yield f(F(u,((t,o)=>ee(void 0,null,(function*(){d(t)?yield e("DELETE FROM"+E(n)+te+E(l)+"=?",[o]):A(y)||(yield re(e,n,l,x(t),[o,...$(t)],r))})))));else if(A(y))L(i,n)&&(yield e("DELETE FROM"+E(n)+"WHERE 1"));else{const t=P(W(H(i,n)),(e=>e!=l)),o=[],r=[];F(null!=u?u:{},((e,n)=>{b(o,n,...T(t,(n=>null==e?void 0:e[n]))),b(r,n)})),yield re(e,n,l,t,o),yield e("DELETE FROM"+E(n)+te+E(l)+"NOT IN("+ie(r)+")",r)}})),n=>ee(void 0,null,(function*(){let t;yield e("BEGIN");try{t=yield n()}catch(e){null==l||l(e)}return yield e("END"),t}))]},re=(e,n,l,r,u,a=!0)=>ee(void 0,null,(function*(){return yield e("INSERT "+(a?t:"OR REPLACE ")+"INTO"+E(n)+"("+E(l)+O(T(r,(e=>o+E(e))))+")VALUES"+v(i(`,(?${i(",?",y(r))})`,y(u)/(y(r)+1)),1)+(a?"ON CONFLICT("+E(l)+")DO UPDATE SET"+O(T(r,(e=>E(e)+"=excluded."+E(e))),o):t),T(u,(e=>null!=e?e:null)))})),ie=e=>O(T(e,(()=>"?")),o),ue=JSON.parse;var ae=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const de=B(),se=B(),ce=(e,n,l,t,o,r,i,[u,a]=[],v=[])=>{var y;let f,p,h,E=0,m=0;k(de,v,(()=>0)),k(se,v,(()=>[]));const O=null!=(y=i?e.getMergeableContent:null)?y:e.getContent,T=e.getTransactionChanges,A=e=>ae(void 0,null,(function*(){return 2!=E&&(E=1,yield P.schedule((()=>ae(void 0,null,(function*(){yield e(),E=0}))))),P})),P={load:(l,t)=>ae(void 0,null,(function*(){return yield A((()=>ae(void 0,null,(function*(){try{const l=yield n();(i&&c(l[0])?e.applyMergeableChanges:e.setContent)(l)}catch(n){e.setContent([l,t])}}))))})),startAutoLoad:(...l)=>ae(void 0,[...l],(function*(l={},o={}){return P.stopAutoLoad(),yield P.load(l,o),m=1,h=t(((l,t)=>ae(void 0,null,(function*(){if(t){const n=t();yield A((()=>ae(void 0,null,(function*(){return e.applyChanges(n)}))))}else yield A((()=>ae(void 0,null,(function*(){var t;try{e.setContent(null!=(t=null==l?void 0:l())?t:yield n())}catch(e){null==r||r(e)}}))))})))),P})),stopAutoLoad:()=>(m&&(o(h),h=void 0,m=0),P),save:e=>ae(void 0,null,(function*(){return 1!=E&&(E=2,yield P.schedule((()=>ae(void 0,null,(function*(){try{yield l(O,e)}catch(e){null==r||r(e)}E=0}))))),P})),startAutoSave:()=>ae(void 0,null,(function*(){return yield P.stopAutoSave().save(),f=e.addDidFinishTransactionListener((()=>{const[e,n]=T();_(e)&&_(n)||P.save((()=>[e,n]))})),P})),stopAutoSave:()=>(s(f,e.delListener),f=void 0,P),schedule:(...e)=>ae(void 0,null,(function*(){return b(H(se,v),...e),yield ae(void 0,null,(function*(){if(!H(de,v)){for(Y(de,v,1);!d((e=H(se,v),p=e.shift()));)try{yield p()}catch(e){null==r||r(e)}Y(de,v,0)}var e})),P})),getStore:()=>e,destroy:()=>P.stopAutoLoad().stopAutoSave(),getStats:()=>({})};return u&&(P[u]=()=>a),S(P)};var ve=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ye="store",fe=(e,n,l,t,o,[r],i,u,a)=>{const[d,s,c,v]=oe(n,i,o);return ce(e,(()=>ve(void 0,null,(function*(){return yield v((()=>ve(void 0,null,(function*(){var e,n;return yield d(),ue(null!=(n=null==(e=(yield s(r,h))[p])?void 0:e[ye])?n:"null")}))))}))),(e=>ve(void 0,null,(function*(){return yield v((()=>ve(void 0,null,(function*(){var n,l;yield d(),yield c(r,h,{[p]:{[ye]:(l=null!=(n=e())?n:null,JSON.stringify(l,((e,n)=>n instanceof Map?C.fromEntries([...n]):n)))}},!0,!0)}))))}))),l,t,o,!1,[a,u],u)};var pe=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const he=(e,n,l,t,o,[r,i,[u,a,s]],c,v,y,E)=>{const[m,O,T,A]=oe(n,c,o,E),b=(e,n)=>pe(void 0,null,(function*(){return yield f(U(i,((l,t)=>pe(void 0,[l,t],(function*([l,t,o,r],i){n&&!M(e,i)||(yield T(l,t,e[i],o,r,n))})))))})),L=(e,n)=>pe(void 0,null,(function*(){return a?yield T(s,h,{[p]:e},!0,!0,n):null}));return ce(e,(()=>pe(void 0,null,(function*(){return yield A((()=>pe(void 0,null,(function*(){yield m();const e=yield pe(void 0,null,(function*(){return D(P(yield f(U(r,((e,n)=>pe(void 0,[e,n],(function*([e,n],l){return[e,yield O(l,n)]}))))),(e=>!_(e[1]))))})),n=yield pe(void 0,null,(function*(){return u?(yield O(s,h))[p]:{}}));return _(e)&&d(n)?void 0:[e,n]}))))}))),((e,n)=>pe(void 0,null,(function*(){return yield A((()=>pe(void 0,null,(function*(){if(yield m(),d(n)){const[n,l]=e();yield b(n),yield L(l)}else{const[e,l]=n();yield b(e,!0),yield L(l,!0)}}))))}))),l,t,o,!1,[y,v],v)},Ee="json",me="autoLoadIntervalSeconds",Oe="rowIdColumnName",Te="tableId",Ae="tableName",Pe={mode:Ee,[me]:1},be={load:0,save:0,[Ae]:l+"_values"},Le=(e,n,l,t)=>{const o=B();return F(e,((e,r)=>{const i=v($(I(n,c(e)?{[l]:e}:e)),0,j(n));d(i[0])||t(r,i[0])||Y(o,r,i)})),o};var Re=(e,n,l)=>new Promise(((t,o)=>{var r=e=>{try{u(l.next(e))}catch(e){o(e)}},i=e=>{try{u(l.throw(e))}catch(e){o(e)}},u=e=>e.done?t(e.value):Promise.resolve(e.value).then(r,i);u((l=l.apply(e,n)).next())}));const ge="pragma ",Ce="data_version",we="schema_version",Ne=(e,n,t,o,r,i,u,d,s="getDb",y)=>{let f,p,E;const[O,T,A,P]=(e=>{const n=(e=>I(Pe,c(e)?{storeTableName:e}:null!=e?e:{}))(e),t=n[me];if(n.mode==Ee){const{storeTableName:e=l}=n;return[1,t,[e],G(e)]}const{tables:{load:o={},save:r={}}={},values:i={}}=n,u=v($(I(be,i)),0,j(be)),a=u[2],d=G(a);return[0,t,[Le(o,{[Te]:null,[Oe]:h},Te,(e=>J(d,e)&&e==a)),Le(r,{[Ae]:null,[Oe]:h,deleteEmptyColumns:0,deleteEmptyTable:0},Ae,((e,n)=>J(d,n)&&n==a)),u],d]})(n);return(O?fe:he)(e,i?(e,n)=>Re(void 0,null,(function*(){return i(e,n),yield t(e,n)})):t,(e=>{return[(n=()=>Re(void 0,null,(function*(){try{const n=(yield t(ge+Ce))[0][Ce],l=(yield t(ge+we))[0][we],o=(yield t(m+" TOTAL_CHANGES() c"))[0].c;n==(null!=f?f:f=n)&&l==(null!=p?p:p=l)&&o==(null!=E?E:E=o)||(e(),f=n,p=l)}catch(e){}})),l=T,n(),setInterval(n,1e3*l)),o((n=>P.has(n)?e():0))];var n,l}),(([e,n])=>{a(e),f=p=null,r(n)}),u,A,R(P),d,s,y)};e.createCrSqliteWasmPersister=(e,n,l,t,o)=>Ne(e,l,((e,...l)=>{return t=[e,...l],o=function*(e,l=[]){return yield n.execO(e,l)},new Promise(((e,n)=>{var l=e=>{try{i(o.next(e))}catch(e){n(e)}},r=e=>{try{i(o.throw(e))}catch(e){n(e)}},i=n=>n.done?e(n.value):Promise.resolve(n.value).then(l,r);i((o=o.apply(void 0,t)).next())}));var t,o}),(e=>n.onUpdate(((n,l,t)=>e(t)))),(e=>e()),t,o,n)},"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((e="undefined"!=typeof globalThis?globalThis:e||self).TinyBasePersisterCrSqliteWasm={});