@fireproof/core 0.21.0-dev-preview-7 → 0.22.0-keybag

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 (444) hide show
  1. package/index.d.ts +2 -16
  2. package/index.js +2 -15
  3. package/index.js.map +1 -1
  4. package/index.ts +2 -0
  5. package/package.json +12 -70
  6. package/tsconfig.json +18 -0
  7. package/README.md +0 -269
  8. package/apply-head-queue.d.ts +0 -18
  9. package/apply-head-queue.d.ts.map +0 -1
  10. package/apply-head-queue.js +0 -47
  11. package/apply-head-queue.js.map +0 -1
  12. package/blockstore/attachable-store.d.ts +0 -19
  13. package/blockstore/attachable-store.d.ts.map +0 -1
  14. package/blockstore/attachable-store.js +0 -316
  15. package/blockstore/attachable-store.js.map +0 -1
  16. package/blockstore/commit-queue.d.ts +0 -17
  17. package/blockstore/commit-queue.d.ts.map +0 -1
  18. package/blockstore/commit-queue.js +0 -60
  19. package/blockstore/commit-queue.js.map +0 -1
  20. package/blockstore/commitor.d.ts +0 -21
  21. package/blockstore/commitor.d.ts.map +0 -1
  22. package/blockstore/commitor.js +0 -95
  23. package/blockstore/commitor.js.map +0 -1
  24. package/blockstore/connect-raw.d.ts +0 -2
  25. package/blockstore/connect-raw.d.ts.map +0 -1
  26. package/blockstore/connect-raw.js +0 -2
  27. package/blockstore/connect-raw.js.map +0 -1
  28. package/blockstore/connection-base.d.ts +0 -2
  29. package/blockstore/connection-base.d.ts.map +0 -1
  30. package/blockstore/connection-base.js +0 -2
  31. package/blockstore/connection-base.js.map +0 -1
  32. package/blockstore/encrypt-helpers.d.ts +0 -2
  33. package/blockstore/encrypt-helpers.d.ts.map +0 -1
  34. package/blockstore/encrypt-helpers.js +0 -2
  35. package/blockstore/encrypt-helpers.js.map +0 -1
  36. package/blockstore/fp-envelope.d.ts +0 -32
  37. package/blockstore/fp-envelope.d.ts.map +0 -1
  38. package/blockstore/fp-envelope.js +0 -14
  39. package/blockstore/fp-envelope.js.map +0 -1
  40. package/blockstore/gateway.d.ts +0 -20
  41. package/blockstore/gateway.d.ts.map +0 -1
  42. package/blockstore/gateway.js +0 -2
  43. package/blockstore/gateway.js.map +0 -1
  44. package/blockstore/index.d.ts +0 -17
  45. package/blockstore/index.d.ts.map +0 -1
  46. package/blockstore/index.js +0 -17
  47. package/blockstore/index.js.map +0 -1
  48. package/blockstore/interceptor-gateway.d.ts +0 -29
  49. package/blockstore/interceptor-gateway.d.ts.map +0 -1
  50. package/blockstore/interceptor-gateway.js +0 -137
  51. package/blockstore/interceptor-gateway.js.map +0 -1
  52. package/blockstore/loader-helpers.d.ts +0 -10
  53. package/blockstore/loader-helpers.d.ts.map +0 -1
  54. package/blockstore/loader-helpers.js +0 -115
  55. package/blockstore/loader-helpers.js.map +0 -1
  56. package/blockstore/loader.d.ts +0 -62
  57. package/blockstore/loader.d.ts.map +0 -1
  58. package/blockstore/loader.js +0 -523
  59. package/blockstore/loader.js.map +0 -1
  60. package/blockstore/register-store-protocol.d.ts +0 -22
  61. package/blockstore/register-store-protocol.d.ts.map +0 -1
  62. package/blockstore/register-store-protocol.js +0 -125
  63. package/blockstore/register-store-protocol.js.map +0 -1
  64. package/blockstore/serde-gateway.d.ts +0 -78
  65. package/blockstore/serde-gateway.d.ts.map +0 -1
  66. package/blockstore/serde-gateway.js +0 -2
  67. package/blockstore/serde-gateway.js.map +0 -1
  68. package/blockstore/store-factory.d.ts +0 -11
  69. package/blockstore/store-factory.d.ts.map +0 -1
  70. package/blockstore/store-factory.js +0 -104
  71. package/blockstore/store-factory.js.map +0 -1
  72. package/blockstore/store-remote.d.ts +0 -2
  73. package/blockstore/store-remote.d.ts.map +0 -1
  74. package/blockstore/store-remote.js +0 -2
  75. package/blockstore/store-remote.js.map +0 -1
  76. package/blockstore/store.d.ts +0 -86
  77. package/blockstore/store.d.ts.map +0 -1
  78. package/blockstore/store.js +0 -437
  79. package/blockstore/store.js.map +0 -1
  80. package/blockstore/task-manager.d.ts +0 -19
  81. package/blockstore/task-manager.d.ts.map +0 -1
  82. package/blockstore/task-manager.js +0 -50
  83. package/blockstore/task-manager.js.map +0 -1
  84. package/blockstore/transaction.d.ts +0 -62
  85. package/blockstore/transaction.d.ts.map +0 -1
  86. package/blockstore/transaction.js +0 -256
  87. package/blockstore/transaction.js.map +0 -1
  88. package/blockstore/types.d.ts +0 -508
  89. package/blockstore/types.d.ts.map +0 -1
  90. package/blockstore/types.js +0 -83
  91. package/blockstore/types.js.map +0 -1
  92. package/blockstore/uri-interceptor.d.ts +0 -19
  93. package/blockstore/uri-interceptor.d.ts.map +0 -1
  94. package/blockstore/uri-interceptor.js +0 -61
  95. package/blockstore/uri-interceptor.js.map +0 -1
  96. package/bundle-not-impl.d.ts +0 -2
  97. package/bundle-not-impl.d.ts.map +0 -1
  98. package/bundle-not-impl.js +0 -4
  99. package/bundle-not-impl.js.map +0 -1
  100. package/cli/main.js +0 -26645
  101. package/crdt-clock.d.ts +0 -26
  102. package/crdt-clock.d.ts.map +0 -1
  103. package/crdt-clock.js +0 -133
  104. package/crdt-clock.js.map +0 -1
  105. package/crdt-helpers.d.ts +0 -19
  106. package/crdt-helpers.d.ts.map +0 -1
  107. package/crdt-helpers.js +0 -332
  108. package/crdt-helpers.js.map +0 -1
  109. package/crdt.d.ts +0 -41
  110. package/crdt.d.ts.map +0 -1
  111. package/crdt.js +0 -164
  112. package/crdt.js.map +0 -1
  113. package/database.d.ts +0 -33
  114. package/database.d.ts.map +0 -1
  115. package/database.js +0 -132
  116. package/database.js.map +0 -1
  117. package/deno.json +0 -20
  118. package/index.d.ts.map +0 -1
  119. package/indexer-helpers.d.ts +0 -68
  120. package/indexer-helpers.d.ts.map +0 -1
  121. package/indexer-helpers.js +0 -157
  122. package/indexer-helpers.js.map +0 -1
  123. package/indexer.d.ts +0 -24
  124. package/indexer.d.ts.map +0 -1
  125. package/indexer.js +0 -239
  126. package/indexer.js.map +0 -1
  127. package/ledger.d.ts +0 -56
  128. package/ledger.d.ts.map +0 -1
  129. package/ledger.js +0 -237
  130. package/ledger.js.map +0 -1
  131. package/protocols/cloud/http-connection.d.ts +0 -26
  132. package/protocols/cloud/http-connection.d.ts.map +0 -1
  133. package/protocols/cloud/http-connection.js +0 -154
  134. package/protocols/cloud/http-connection.js.map +0 -1
  135. package/protocols/cloud/index.d.ts +0 -10
  136. package/protocols/cloud/index.d.ts.map +0 -1
  137. package/protocols/cloud/index.js +0 -10
  138. package/protocols/cloud/index.js.map +0 -1
  139. package/protocols/cloud/msg-raw-connection-base.d.ts +0 -16
  140. package/protocols/cloud/msg-raw-connection-base.d.ts.map +0 -1
  141. package/protocols/cloud/msg-raw-connection-base.js +0 -22
  142. package/protocols/cloud/msg-raw-connection-base.js.map +0 -1
  143. package/protocols/cloud/msg-types-data.d.ts +0 -36
  144. package/protocols/cloud/msg-types-data.d.ts.map +0 -1
  145. package/protocols/cloud/msg-types-data.js +0 -38
  146. package/protocols/cloud/msg-types-data.js.map +0 -1
  147. package/protocols/cloud/msg-types-meta.d.ts +0 -41
  148. package/protocols/cloud/msg-types-meta.d.ts.map +0 -1
  149. package/protocols/cloud/msg-types-meta.js +0 -98
  150. package/protocols/cloud/msg-types-meta.js.map +0 -1
  151. package/protocols/cloud/msg-types-wal.d.ts +0 -33
  152. package/protocols/cloud/msg-types-wal.d.ts.map +0 -1
  153. package/protocols/cloud/msg-types-wal.js +0 -38
  154. package/protocols/cloud/msg-types-wal.js.map +0 -1
  155. package/protocols/cloud/msg-types.d.ts +0 -310
  156. package/protocols/cloud/msg-types.d.ts.map +0 -1
  157. package/protocols/cloud/msg-types.js +0 -299
  158. package/protocols/cloud/msg-types.js.map +0 -1
  159. package/protocols/cloud/msger.d.ts +0 -94
  160. package/protocols/cloud/msger.d.ts.map +0 -1
  161. package/protocols/cloud/msger.js +0 -319
  162. package/protocols/cloud/msger.js.map +0 -1
  163. package/protocols/cloud/ws-connection.d.ts +0 -40
  164. package/protocols/cloud/ws-connection.d.ts.map +0 -1
  165. package/protocols/cloud/ws-connection.js +0 -205
  166. package/protocols/cloud/ws-connection.js.map +0 -1
  167. package/protocols/dashboard/index.d.ts +0 -4
  168. package/protocols/dashboard/index.d.ts.map +0 -1
  169. package/protocols/dashboard/index.js +0 -4
  170. package/protocols/dashboard/index.js.map +0 -1
  171. package/protocols/dashboard/msg-api.d.ts +0 -11
  172. package/protocols/dashboard/msg-api.d.ts.map +0 -1
  173. package/protocols/dashboard/msg-api.js +0 -55
  174. package/protocols/dashboard/msg-api.js.map +0 -1
  175. package/protocols/dashboard/msg-is.d.ts +0 -45
  176. package/protocols/dashboard/msg-is.d.ts.map +0 -1
  177. package/protocols/dashboard/msg-is.js +0 -63
  178. package/protocols/dashboard/msg-is.js.map +0 -1
  179. package/protocols/dashboard/msg-types.d.ts +0 -397
  180. package/protocols/dashboard/msg-types.d.ts.map +0 -1
  181. package/protocols/dashboard/msg-types.js +0 -4
  182. package/protocols/dashboard/msg-types.js.map +0 -1
  183. package/protocols/index.d.ts +0 -3
  184. package/protocols/index.d.ts.map +0 -1
  185. package/protocols/index.js +0 -3
  186. package/protocols/index.js.map +0 -1
  187. package/react/img-file.d.ts +0 -303
  188. package/react/img-file.d.ts.map +0 -1
  189. package/react/img-file.js +0 -92
  190. package/react/img-file.js.map +0 -1
  191. package/react/index.d.ts +0 -5
  192. package/react/index.d.ts.map +0 -1
  193. package/react/index.js +0 -5
  194. package/react/index.js.map +0 -1
  195. package/react/types.d.ts +0 -91
  196. package/react/types.d.ts.map +0 -1
  197. package/react/types.js +0 -2
  198. package/react/types.js.map +0 -1
  199. package/react/use-all-docs.d.ts +0 -4
  200. package/react/use-all-docs.d.ts.map +0 -1
  201. package/react/use-all-docs.js +0 -25
  202. package/react/use-all-docs.js.map +0 -1
  203. package/react/use-attach.d.ts +0 -11
  204. package/react/use-attach.d.ts.map +0 -1
  205. package/react/use-attach.js +0 -169
  206. package/react/use-attach.js.map +0 -1
  207. package/react/use-changes.d.ts +0 -4
  208. package/react/use-changes.d.ts.map +0 -1
  209. package/react/use-changes.js +0 -19
  210. package/react/use-changes.js.map +0 -1
  211. package/react/use-document.d.ts +0 -4
  212. package/react/use-document.d.ts.map +0 -1
  213. package/react/use-document.js +0 -109
  214. package/react/use-document.js.map +0 -1
  215. package/react/use-fireproof.d.ts +0 -6
  216. package/react/use-fireproof.d.ts.map +0 -1
  217. package/react/use-fireproof.js +0 -20
  218. package/react/use-fireproof.js.map +0 -1
  219. package/react/use-live-query.d.ts +0 -4
  220. package/react/use-live-query.d.ts.map +0 -1
  221. package/react/use-live-query.js +0 -24
  222. package/react/use-live-query.js.map +0 -1
  223. package/runtime/files.d.ts +0 -12
  224. package/runtime/files.d.ts.map +0 -1
  225. package/runtime/files.js +0 -29
  226. package/runtime/files.js.map +0 -1
  227. package/runtime/gateways/cloud/gateway.d.ts +0 -41
  228. package/runtime/gateways/cloud/gateway.d.ts.map +0 -1
  229. package/runtime/gateways/cloud/gateway.js +0 -514
  230. package/runtime/gateways/cloud/gateway.js.map +0 -1
  231. package/runtime/gateways/cloud/index.d.ts +0 -3
  232. package/runtime/gateways/cloud/index.d.ts.map +0 -1
  233. package/runtime/gateways/cloud/index.js +0 -3
  234. package/runtime/gateways/cloud/index.js.map +0 -1
  235. package/runtime/gateways/cloud/to-cloud.d.ts +0 -59
  236. package/runtime/gateways/cloud/to-cloud.d.ts.map +0 -1
  237. package/runtime/gateways/cloud/to-cloud.js +0 -175
  238. package/runtime/gateways/cloud/to-cloud.js.map +0 -1
  239. package/runtime/gateways/def-serde-gateway.d.ts +0 -18
  240. package/runtime/gateways/def-serde-gateway.d.ts.map +0 -1
  241. package/runtime/gateways/def-serde-gateway.js +0 -92
  242. package/runtime/gateways/def-serde-gateway.js.map +0 -1
  243. package/runtime/gateways/file/deno/deno-filesystem.d.ts +0 -27
  244. package/runtime/gateways/file/deno/deno-filesystem.d.ts.map +0 -1
  245. package/runtime/gateways/file/deno/deno-filesystem.js +0 -52
  246. package/runtime/gateways/file/deno/deno-filesystem.js.map +0 -1
  247. package/runtime/gateways/file/deno/get-sys-file-system.d.ts +0 -4
  248. package/runtime/gateways/file/deno/get-sys-file-system.d.ts.map +0 -1
  249. package/runtime/gateways/file/deno/get-sys-file-system.js +0 -11
  250. package/runtime/gateways/file/deno/get-sys-file-system.js.map +0 -1
  251. package/runtime/gateways/file/deno/index.d.ts +0 -2
  252. package/runtime/gateways/file/deno/index.d.ts.map +0 -1
  253. package/runtime/gateways/file/deno/index.js +0 -2
  254. package/runtime/gateways/file/deno/index.js.map +0 -1
  255. package/runtime/gateways/file/gateway-impl.d.ts +0 -18
  256. package/runtime/gateways/file/gateway-impl.d.ts.map +0 -1
  257. package/runtime/gateways/file/gateway-impl.js +0 -121
  258. package/runtime/gateways/file/gateway-impl.js.map +0 -1
  259. package/runtime/gateways/file/index.d.ts +0 -3
  260. package/runtime/gateways/file/index.d.ts.map +0 -1
  261. package/runtime/gateways/file/index.js +0 -3
  262. package/runtime/gateways/file/index.js.map +0 -1
  263. package/runtime/gateways/file/key-bag-file.d.ts +0 -20
  264. package/runtime/gateways/file/key-bag-file.d.ts.map +0 -1
  265. package/runtime/gateways/file/key-bag-file.js +0 -52
  266. package/runtime/gateways/file/key-bag-file.js.map +0 -1
  267. package/runtime/gateways/file/node/get-sys-file-system.d.ts +0 -4
  268. package/runtime/gateways/file/node/get-sys-file-system.d.ts.map +0 -1
  269. package/runtime/gateways/file/node/get-sys-file-system.js +0 -11
  270. package/runtime/gateways/file/node/get-sys-file-system.js.map +0 -1
  271. package/runtime/gateways/file/node/index.d.ts +0 -2
  272. package/runtime/gateways/file/node/index.d.ts.map +0 -1
  273. package/runtime/gateways/file/node/index.js +0 -2
  274. package/runtime/gateways/file/node/index.js.map +0 -1
  275. package/runtime/gateways/file/node/node-filesystem.d.ts +0 -32
  276. package/runtime/gateways/file/node/node-filesystem.d.ts.map +0 -1
  277. package/runtime/gateways/file/node/node-filesystem.js +0 -33
  278. package/runtime/gateways/file/node/node-filesystem.js.map +0 -1
  279. package/runtime/gateways/file/node/to-array-buffer.d.ts +0 -2
  280. package/runtime/gateways/file/node/to-array-buffer.d.ts.map +0 -1
  281. package/runtime/gateways/file/node/to-array-buffer.js +0 -12
  282. package/runtime/gateways/file/node/to-array-buffer.js.map +0 -1
  283. package/runtime/gateways/file/sys-file-system-factory.d.ts +0 -4
  284. package/runtime/gateways/file/sys-file-system-factory.d.ts.map +0 -1
  285. package/runtime/gateways/file/sys-file-system-factory.js +0 -13
  286. package/runtime/gateways/file/sys-file-system-factory.js.map +0 -1
  287. package/runtime/gateways/file/utils.d.ts +0 -5
  288. package/runtime/gateways/file/utils.d.ts.map +0 -1
  289. package/runtime/gateways/file/utils.js +0 -27
  290. package/runtime/gateways/file/utils.js.map +0 -1
  291. package/runtime/gateways/file/version.d.ts +0 -2
  292. package/runtime/gateways/file/version.d.ts.map +0 -1
  293. package/runtime/gateways/file/version.js +0 -2
  294. package/runtime/gateways/file/version.js.map +0 -1
  295. package/runtime/gateways/fp-envelope-serialize.d.ts +0 -50
  296. package/runtime/gateways/fp-envelope-serialize.d.ts.map +0 -1
  297. package/runtime/gateways/fp-envelope-serialize.js +0 -141
  298. package/runtime/gateways/fp-envelope-serialize.js.map +0 -1
  299. package/runtime/gateways/index.d.ts +0 -6
  300. package/runtime/gateways/index.d.ts.map +0 -1
  301. package/runtime/gateways/index.js +0 -6
  302. package/runtime/gateways/index.js.map +0 -1
  303. package/runtime/gateways/indexeddb/gateway-impl.d.ts +0 -22
  304. package/runtime/gateways/indexeddb/gateway-impl.d.ts.map +0 -1
  305. package/runtime/gateways/indexeddb/gateway-impl.js +0 -147
  306. package/runtime/gateways/indexeddb/gateway-impl.js.map +0 -1
  307. package/runtime/gateways/indexeddb/index.d.ts +0 -6
  308. package/runtime/gateways/indexeddb/index.d.ts.map +0 -1
  309. package/runtime/gateways/indexeddb/index.js +0 -6
  310. package/runtime/gateways/indexeddb/index.js.map +0 -1
  311. package/runtime/gateways/indexeddb/key-bag-indexeddb.d.ts +0 -16
  312. package/runtime/gateways/indexeddb/key-bag-indexeddb.d.ts.map +0 -1
  313. package/runtime/gateways/indexeddb/key-bag-indexeddb.js +0 -48
  314. package/runtime/gateways/indexeddb/key-bag-indexeddb.js.map +0 -1
  315. package/runtime/gateways/indexeddb-version.d.ts +0 -2
  316. package/runtime/gateways/indexeddb-version.d.ts.map +0 -1
  317. package/runtime/gateways/indexeddb-version.js +0 -2
  318. package/runtime/gateways/indexeddb-version.js.map +0 -1
  319. package/runtime/gateways/memory/gateway.d.ts +0 -18
  320. package/runtime/gateways/memory/gateway.d.ts.map +0 -1
  321. package/runtime/gateways/memory/gateway.js +0 -73
  322. package/runtime/gateways/memory/gateway.js.map +0 -1
  323. package/runtime/gateways/memory/version.d.ts +0 -2
  324. package/runtime/gateways/memory/version.d.ts.map +0 -1
  325. package/runtime/gateways/memory/version.js +0 -2
  326. package/runtime/gateways/memory/version.js.map +0 -1
  327. package/runtime/index.d.ts +0 -13
  328. package/runtime/index.d.ts.map +0 -1
  329. package/runtime/index.js +0 -13
  330. package/runtime/index.js.map +0 -1
  331. package/runtime/key-bag-memory.d.ts +0 -13
  332. package/runtime/key-bag-memory.d.ts.map +0 -1
  333. package/runtime/key-bag-memory.js +0 -30
  334. package/runtime/key-bag-memory.js.map +0 -1
  335. package/runtime/key-bag.d.ts +0 -88
  336. package/runtime/key-bag.d.ts.map +0 -1
  337. package/runtime/key-bag.js +0 -417
  338. package/runtime/key-bag.js.map +0 -1
  339. package/runtime/keyed-crypto.d.ts +0 -19
  340. package/runtime/keyed-crypto.d.ts.map +0 -1
  341. package/runtime/keyed-crypto.js +0 -192
  342. package/runtime/keyed-crypto.js.map +0 -1
  343. package/runtime/memory-sys-container.d.ts +0 -2
  344. package/runtime/memory-sys-container.d.ts.map +0 -1
  345. package/runtime/memory-sys-container.js +0 -2
  346. package/runtime/memory-sys-container.js.map +0 -1
  347. package/runtime/meta-key-hack.d.ts +0 -42
  348. package/runtime/meta-key-hack.d.ts.map +0 -1
  349. package/runtime/meta-key-hack.js +0 -201
  350. package/runtime/meta-key-hack.js.map +0 -1
  351. package/runtime/sts-service/index.d.ts +0 -40
  352. package/runtime/sts-service/index.d.ts.map +0 -1
  353. package/runtime/sts-service/index.js +0 -108
  354. package/runtime/sts-service/index.js.map +0 -1
  355. package/runtime/sys-container.d.ts +0 -2
  356. package/runtime/sys-container.d.ts.map +0 -1
  357. package/runtime/sys-container.js +0 -2
  358. package/runtime/sys-container.js.map +0 -1
  359. package/runtime/wait-pr-multiformats/block.d.ts +0 -47
  360. package/runtime/wait-pr-multiformats/block.d.ts.map +0 -1
  361. package/runtime/wait-pr-multiformats/block.js +0 -64
  362. package/runtime/wait-pr-multiformats/block.js.map +0 -1
  363. package/runtime/wait-pr-multiformats/codec-interface.d.ts +0 -29
  364. package/runtime/wait-pr-multiformats/codec-interface.d.ts.map +0 -1
  365. package/runtime/wait-pr-multiformats/codec-interface.js +0 -2
  366. package/runtime/wait-pr-multiformats/codec-interface.js.map +0 -1
  367. package/runtime/wait-pr-multiformats/index.d.ts +0 -3
  368. package/runtime/wait-pr-multiformats/index.d.ts.map +0 -1
  369. package/runtime/wait-pr-multiformats/index.js +0 -3
  370. package/runtime/wait-pr-multiformats/index.js.map +0 -1
  371. package/tests/blockstore/fp-envelope.test.ts-off +0 -65
  372. package/tests/blockstore/fragment-gateway.test.ts-off +0 -106
  373. package/tests/blockstore/interceptor-gateway.test.ts +0 -254
  374. package/tests/blockstore/keyed-crypto-indexeddb-file.test.ts +0 -128
  375. package/tests/blockstore/keyed-crypto.test.ts +0 -376
  376. package/tests/blockstore/loader.test.ts +0 -298
  377. package/tests/blockstore/standalone.test.ts +0 -152
  378. package/tests/blockstore/store.test.ts +0 -192
  379. package/tests/blockstore/transaction.test.ts +0 -130
  380. package/tests/fireproof/all-gateway.test.ts +0 -461
  381. package/tests/fireproof/attachable.test.ts +0 -686
  382. package/tests/fireproof/cars/bafkreidxwt2nhvbl4fnqfw3ctlt6zbrir4kqwmjo5im6rf4q5si27kgo2i.car +0 -0
  383. package/tests/fireproof/cars/bafkreidxwt2nhvbl4fnqfw3ctlt6zbrir4kqwmjo5im6rf4q5si27kgo2i.ts +0 -324
  384. package/tests/fireproof/charwise-boolean.test.ts +0 -66
  385. package/tests/fireproof/crdt.test.ts +0 -570
  386. package/tests/fireproof/database.test.ts +0 -779
  387. package/tests/fireproof/deleted-docs-handling.test.ts +0 -111
  388. package/tests/fireproof/fireproof.test.fixture.ts +0 -133
  389. package/tests/fireproof/fireproof.test.ts +0 -777
  390. package/tests/fireproof/hello.test.ts +0 -74
  391. package/tests/fireproof/indexer.test.ts +0 -458
  392. package/tests/fireproof/multiple-ledger.test.ts +0 -65
  393. package/tests/fireproof/query-docs.test.ts +0 -116
  394. package/tests/fireproof/query-limit-issue.test.ts +0 -147
  395. package/tests/fireproof/query-property-inconsistency.test.ts +0 -89
  396. package/tests/fireproof/query-result-properties.test.ts +0 -42
  397. package/tests/fireproof/stable-cid.test.ts +0 -69
  398. package/tests/fireproof/utils.test.ts +0 -135
  399. package/tests/gateway/file/loader-config.test.ts +0 -307
  400. package/tests/gateway/indexeddb/loader-config.test.ts +0 -79
  401. package/tests/helpers.ts +0 -172
  402. package/tests/protocols/cloud/msger.test.ts +0 -548
  403. package/tests/react/img-file.test.tsx +0 -190
  404. package/tests/react/use-all-docs.test.tsx +0 -172
  405. package/tests/react/use-document-with-nonexistent-id.test.tsx +0 -96
  406. package/tests/react/use-fireproof-db-switch.test.tsx +0 -91
  407. package/tests/react/use-fireproof-stability.test.tsx +0 -145
  408. package/tests/react/use-fireproof.test.tsx +0 -645
  409. package/tests/runtime/fp-envelope-serialize.test.ts +0 -254
  410. package/tests/runtime/meta-key-hack.test.ts +0 -95
  411. package/tests/setup.file.ts +0 -1
  412. package/tests/setup.indexeddb.ts +0 -0
  413. package/tests/setup.memory.ts +0 -2
  414. package/tests/vitest.file.config.ts +0 -14
  415. package/tests/vitest.indexeddb.config.ts +0 -37
  416. package/tests/vitest.memory.config.ts +0 -25
  417. package/types.d.ts +0 -461
  418. package/types.d.ts.map +0 -1
  419. package/types.js +0 -60
  420. package/types.js.map +0 -1
  421. package/use-fireproof/iframe-strategy.d.ts +0 -14
  422. package/use-fireproof/iframe-strategy.d.ts.map +0 -1
  423. package/use-fireproof/iframe-strategy.js +0 -79
  424. package/use-fireproof/iframe-strategy.js.map +0 -1
  425. package/use-fireproof/index.d.ts +0 -14
  426. package/use-fireproof/index.d.ts.map +0 -1
  427. package/use-fireproof/index.js +0 -36
  428. package/use-fireproof/index.js.map +0 -1
  429. package/use-fireproof/redirect-strategy.d.ts +0 -15
  430. package/use-fireproof/redirect-strategy.d.ts.map +0 -1
  431. package/use-fireproof/redirect-strategy.js +0 -153
  432. package/use-fireproof/redirect-strategy.js.map +0 -1
  433. package/utils.d.ts +0 -48
  434. package/utils.d.ts.map +0 -1
  435. package/utils.js +0 -406
  436. package/utils.js.map +0 -1
  437. package/version.d.ts +0 -2
  438. package/version.d.ts.map +0 -1
  439. package/version.js +0 -4
  440. package/version.js.map +0 -1
  441. package/write-queue.d.ts +0 -9
  442. package/write-queue.d.ts.map +0 -1
  443. package/write-queue.js +0 -70
  444. package/write-queue.js.map +0 -1
@@ -1,645 +0,0 @@
1
- import { renderHook, waitFor } from "@testing-library/react";
2
- import { describe, expect, it } from "vitest";
3
- import { fireproof, useFireproof } from "use-fireproof";
4
- import type { Database, DocResponse, LiveQueryResult, UseDocumentResult } from "use-fireproof";
5
-
6
- const TEST_TIMEOUT = 45000;
7
-
8
- describe("HOOK: useFireproof", () => {
9
- it(
10
- "should be defined",
11
- () => {
12
- expect(useFireproof).toBeDefined();
13
- },
14
- TEST_TIMEOUT,
15
- );
16
-
17
- it(
18
- "renders the hook correctly and checks types",
19
- () => {
20
- renderHook(() => {
21
- const { database, useLiveQuery, useDocument } = useFireproof("dbname");
22
- expect(typeof useLiveQuery).toBe("function");
23
- expect(typeof useDocument).toBe("function");
24
- expect(database?.constructor.name).toMatch(/^Database/);
25
- });
26
- },
27
- TEST_TIMEOUT,
28
- );
29
- });
30
-
31
- describe("HOOK: useFireproof useLiveQuery has results", () => {
32
- const dbName = "useLiveQueryHasResults";
33
- let db: Database,
34
- query: LiveQueryResult<{ foo: string }, string>,
35
- database: ReturnType<typeof useFireproof>["database"],
36
- useLiveQuery: ReturnType<typeof useFireproof>["useLiveQuery"];
37
-
38
- beforeEach(async () => {
39
- const expectedValues = ["aha", "bar", "caz"];
40
- db = fireproof(dbName);
41
- for (const value of expectedValues) {
42
- await db.put({ foo: value });
43
- }
44
-
45
- const allDocs = await db.allDocs<{ foo: string }>();
46
- expect(allDocs.rows.map((row) => row.value.foo)).toEqual(expectedValues);
47
- });
48
-
49
- it(
50
- "queries correctly",
51
- async () => {
52
- renderHook(() => {
53
- const result = useFireproof(dbName);
54
- database = result.database;
55
- useLiveQuery = result.useLiveQuery;
56
- query = useLiveQuery<{ foo: string }>("foo");
57
- });
58
-
59
- await waitFor(() => {
60
- expect(query.rows.map((row) => row.doc?.foo)).toEqual(["aha", "bar", "caz"]);
61
- });
62
- },
63
- TEST_TIMEOUT,
64
- );
65
-
66
- afterEach(async () => {
67
- await db.close();
68
- await db.destroy();
69
- await database?.close();
70
- await database?.destroy();
71
- });
72
- });
73
-
74
- describe("HOOK: useFireproof useDocument has results", () => {
75
- const dbName = "useDocumentHasResults";
76
- let db: Database,
77
- docResult: UseDocumentResult<{ input: string }>,
78
- database: ReturnType<typeof useFireproof>["database"],
79
- useDocument: ReturnType<typeof useFireproof>["useDocument"];
80
-
81
- beforeEach(async () => {
82
- db = fireproof(dbName);
83
-
84
- renderHook(() => {
85
- const result = useFireproof(dbName);
86
- database = result.database;
87
- useDocument = result.useDocument;
88
- docResult = useDocument<{ input: string }>({ input: "" });
89
- });
90
- });
91
-
92
- it(
93
- "should have empty setup data",
94
- async () => {
95
- const allDocs = await db.allDocs<{ input: string }>();
96
- expect(allDocs.rows.length).toBe(0);
97
- },
98
- TEST_TIMEOUT,
99
- );
100
-
101
- it(
102
- "queries correctly",
103
- async () => {
104
- await waitFor(() => {
105
- expect(docResult.doc.input).toBe("");
106
- expect(docResult.doc._id).toBeUndefined();
107
- });
108
- },
109
- TEST_TIMEOUT,
110
- );
111
-
112
- it(
113
- "handles mutations correctly",
114
- async () => {
115
- docResult.merge({ input: "new" });
116
- await waitFor(() => {
117
- expect(docResult.doc.input).toBe("new");
118
- expect(docResult.doc._id).toBeUndefined();
119
- });
120
- },
121
- TEST_TIMEOUT,
122
- );
123
-
124
- it(
125
- "handles save correctly",
126
- async () => {
127
- docResult.merge({ input: "first" });
128
- await waitFor(() => {
129
- expect(docResult.doc.input).toBe("first");
130
- expect(docResult.doc._id).toBeUndefined();
131
- });
132
-
133
- renderHook(() => {
134
- docResult.save();
135
- });
136
-
137
- await waitFor(() => {
138
- expect(docResult.doc._id).toBeDefined();
139
- });
140
- },
141
- TEST_TIMEOUT,
142
- );
143
-
144
- it(
145
- "handles reset after save",
146
- async () => {
147
- // Create a document with input "first" to ensure it exists in the database
148
- await db.put({ input: "first" });
149
-
150
- docResult.merge({ input: "new" });
151
- await waitFor(() => {
152
- expect(docResult.doc.input).toBe("new");
153
- expect(docResult.doc._id).toBeUndefined();
154
- });
155
-
156
- renderHook(() => {
157
- docResult.save();
158
- });
159
-
160
- await waitFor(() => {
161
- expect(docResult.doc._id).toBeDefined();
162
- });
163
-
164
- const doc1 = await db.get<{ input: string }>(docResult.doc._id);
165
- expect(doc1.input).toBe("new");
166
-
167
- renderHook(() => {
168
- docResult.reset();
169
- });
170
-
171
- await waitFor(() => {
172
- expect(docResult.doc.input).toBe("");
173
- expect(docResult.doc._id).toBeUndefined();
174
- });
175
-
176
- renderHook(() => {
177
- docResult.merge({ input: "fresh" });
178
- });
179
-
180
- renderHook(() => {
181
- docResult.save();
182
- });
183
-
184
- await waitFor(() => {
185
- expect(docResult.doc.input).toBe("fresh");
186
- expect(docResult.doc._id).toBeDefined();
187
- });
188
-
189
- const doc2 = await db.get<{ input: string }>(docResult.doc._id);
190
- expect(doc2.input).toBe("fresh");
191
- expect(doc2._id).toBe(docResult.doc._id);
192
- expect(doc1._id).not.toBe(doc2._id);
193
-
194
- const allDocs = await db.allDocs<{ input: string }>();
195
- const inputs = allDocs.rows.map((r) => r.value.input);
196
- expect(inputs).toEqual(expect.arrayContaining(["first", "new", "fresh"]));
197
- },
198
- TEST_TIMEOUT,
199
- );
200
-
201
- afterEach(async () => {
202
- await db.close();
203
- await db.destroy();
204
- await database.close();
205
- await database.destroy();
206
- });
207
- });
208
-
209
- describe("HOOK: useFireproof useDocument has results reset sync", () => {
210
- const dbName = "useDocumentHasResultsSync";
211
- let db: Database,
212
- docResult: UseDocumentResult<{ input: string }>,
213
- database: ReturnType<typeof useFireproof>["database"],
214
- useDocument: ReturnType<typeof useFireproof>["useDocument"];
215
-
216
- beforeEach(async () => {
217
- db = fireproof(dbName);
218
-
219
- renderHook(() => {
220
- const result = useFireproof(dbName);
221
- database = result.database;
222
- useDocument = result.useDocument;
223
- docResult = useDocument<{ input: string }>({ input: "" });
224
- });
225
- });
226
-
227
- it(
228
- "should have empty setup data",
229
- async () => {
230
- const allDocs = await db.allDocs<{ input: string }>();
231
- expect(allDocs.rows.length).toBe(0);
232
- },
233
- TEST_TIMEOUT,
234
- );
235
-
236
- it(
237
- "queries correctly",
238
- async () => {
239
- await waitFor(() => {
240
- expect(docResult.doc.input).toBe("");
241
- expect(docResult.doc._id).toBeUndefined();
242
- });
243
- },
244
- TEST_TIMEOUT,
245
- );
246
-
247
- it(
248
- "handles mutations correctly",
249
- async () => {
250
- docResult.merge({ input: "new" });
251
- await waitFor(() => {
252
- expect(docResult.doc.input).toBe("new");
253
- expect(docResult.doc._id).toBeUndefined();
254
- });
255
- },
256
- TEST_TIMEOUT,
257
- );
258
-
259
- it(
260
- "handles save correctly",
261
- async () => {
262
- docResult.merge({ input: "first" });
263
- await waitFor(() => {
264
- expect(docResult.doc.input).toBe("first");
265
- expect(docResult.doc._id).toBeUndefined();
266
- });
267
-
268
- renderHook(() => {
269
- docResult.save();
270
- });
271
-
272
- await waitFor(() => {
273
- expect(docResult.doc._id).toBeDefined();
274
- });
275
- },
276
- TEST_TIMEOUT,
277
- );
278
-
279
- it(
280
- "handles reset after save",
281
- async () => {
282
- // Create documents with input "first" and "new" to ensure they exist in the database
283
- await db.put({ input: "first" });
284
- await db.put({ input: "new" });
285
-
286
- docResult.merge({ input: "new" });
287
- await waitFor(() => {
288
- expect(docResult.doc.input).toBe("new");
289
- expect(docResult.doc._id).toBeUndefined();
290
- });
291
-
292
- renderHook(() => {
293
- docResult.save();
294
- docResult.reset();
295
- });
296
-
297
- await waitFor(() => {
298
- expect(docResult.doc.input).toBe("");
299
- expect(docResult.doc._id).toBeUndefined();
300
- });
301
-
302
- renderHook(() => {
303
- docResult.merge({ input: "fresh" });
304
- });
305
-
306
- let waitForSave: Promise<DocResponse>;
307
- renderHook(() => {
308
- waitForSave = docResult.save();
309
- });
310
-
311
- await waitFor(async () => {
312
- await waitForSave;
313
- expect(docResult.doc.input).toBe("fresh");
314
- expect(docResult.doc._id).toBeDefined();
315
- });
316
-
317
- const doc2 = await db.get<{ input: string }>(docResult.doc._id);
318
- expect(doc2.input).toBe("fresh");
319
- expect(doc2._id).toBe(docResult.doc._id);
320
-
321
- const allDocs = await db.allDocs<{ input: string }>();
322
- expect(allDocs.rows.length).toBe(4); // We now have 4 documents due to our explicit creation
323
- const inputs = allDocs.rows.map((r) => r.value.input);
324
- expect(inputs).toEqual(expect.arrayContaining(["first", "new", "fresh"]));
325
- },
326
- TEST_TIMEOUT,
327
- );
328
-
329
- afterEach(async () => {
330
- await db.close();
331
- await db.destroy();
332
- await database.close();
333
- await database.destroy();
334
- });
335
- });
336
-
337
- describe("HOOK: useFireproof useDocument with existing document has results", () => {
338
- const dbName = "useDocumentWithExistingDoc";
339
- let db: Database,
340
- docResult: UseDocumentResult<{ input: string }>,
341
- id: string,
342
- database: ReturnType<typeof useFireproof>["database"],
343
- useDocument: ReturnType<typeof useFireproof>["useDocument"];
344
-
345
- beforeEach(async () => {
346
- db = fireproof(dbName);
347
- const res = await db.put({ input: "initial" });
348
- id = res.id;
349
-
350
- renderHook(() => {
351
- const result = useFireproof(dbName);
352
- database = result.database;
353
- useDocument = result.useDocument;
354
- docResult = useDocument<{ input: string }>({ _id: id } as { _id: string; input: string });
355
- });
356
- });
357
-
358
- it(
359
- "should have setup data",
360
- async () => {
361
- const allDocs = await db.allDocs<{ input: string }>();
362
- expect(allDocs.rows.length).toBe(1);
363
- expect(allDocs.rows[0].value.input).toBe("initial");
364
- expect(allDocs.rows[0].key).toBe(id);
365
- },
366
- TEST_TIMEOUT,
367
- );
368
-
369
- it(
370
- "queries correctly",
371
- async () => {
372
- await waitFor(() => {
373
- expect(docResult.doc.input).toBe("initial");
374
- expect(docResult.doc._id).toBe(id);
375
- });
376
- },
377
- TEST_TIMEOUT,
378
- );
379
-
380
- it(
381
- "handles mutations correctly",
382
- async () => {
383
- // First verify initial state
384
- await waitFor(() => {
385
- expect(docResult.doc.input).toBe("initial");
386
- expect(docResult.doc._id).toBe(id);
387
- });
388
-
389
- // Run merge in hook context
390
- renderHook(() => {
391
- docResult.merge({ input: "new" });
392
- });
393
-
394
- // Then verify the mutation took effect
395
- await waitFor(() => {
396
- expect(docResult.doc.input).toBe("new");
397
- expect(docResult.doc._id).toBe(id);
398
- });
399
- },
400
- TEST_TIMEOUT,
401
- );
402
-
403
- afterEach(async () => {
404
- await db.close();
405
- await db.destroy();
406
- await database.close();
407
- await database.destroy();
408
- });
409
- });
410
-
411
- describe("HOOK: useFireproof useDocument with existing document handles external updates", () => {
412
- const dbName = "useDocumentWithExternalUpdates";
413
- let db: Database,
414
- docResult: UseDocumentResult<{ input: string }>,
415
- id: string,
416
- database: ReturnType<typeof useFireproof>["database"],
417
- useDocument: ReturnType<typeof useFireproof>["useDocument"];
418
-
419
- beforeEach(async () => {
420
- db = fireproof(dbName);
421
- const res = await db.put({ input: "initial" });
422
- id = res.id;
423
-
424
- renderHook(() => {
425
- const result = useFireproof(dbName);
426
- database = result.database;
427
- useDocument = result.useDocument;
428
- docResult = useDocument<{ input: string }>({ _id: id } as { _id: string; input: string });
429
- });
430
- });
431
-
432
- it(
433
- "should have setup data",
434
- async () => {
435
- const allDocs = await db.allDocs<{ input: string }>();
436
- expect(allDocs.rows.length).toBe(1);
437
- expect(allDocs.rows[0].value.input).toBe("initial");
438
- expect(allDocs.rows[0].key).toBe(id);
439
- },
440
- TEST_TIMEOUT,
441
- );
442
-
443
- it(
444
- "queries correctly",
445
- async () => {
446
- await waitFor(() => {
447
- expect(docResult.doc.input).toBe("initial");
448
- expect(docResult.doc._id).toBe(id);
449
- });
450
- },
451
- TEST_TIMEOUT,
452
- );
453
-
454
- it(
455
- "handles mutations correctly",
456
- async () => {
457
- // First verify initial state
458
- await waitFor(() => {
459
- expect(docResult.doc.input).toBe("initial");
460
- expect(docResult.doc._id).toBe(id);
461
- });
462
-
463
- // Run merge in hook context
464
- renderHook(() => {
465
- // docResult.merge({ input: "new" });
466
- db.put({ _id: id, input: "external" });
467
- });
468
-
469
- // Then verify the mutation took effect
470
- await waitFor(() => {
471
- expect(docResult.doc.input).toBe("external");
472
- expect(docResult.doc._id).toBe(id);
473
- });
474
- },
475
- TEST_TIMEOUT,
476
- );
477
-
478
- afterEach(async () => {
479
- await db.close();
480
- await db.destroy();
481
- await database.close();
482
- await database.destroy();
483
- });
484
- });
485
-
486
- describe("HOOK: useFireproof bug fix: once the ID is set, it can reset", () => {
487
- const dbName = "bugTestDocReset";
488
- let db: Database,
489
- docResult: UseDocumentResult<{ input: string }>,
490
- database: ReturnType<typeof useFireproof>["database"],
491
- useDocument: ReturnType<typeof useFireproof>["useDocument"];
492
-
493
- beforeEach(async () => {
494
- db = fireproof(dbName);
495
-
496
- renderHook(() => {
497
- const result = useFireproof(dbName);
498
- database = result.database;
499
- useDocument = result.useDocument;
500
- docResult = useDocument<{ input: string }>({ input: "" });
501
- });
502
- });
503
-
504
- it(
505
- "ensures save() then reset() yields an ephemeral doc (blank _id)",
506
- async () => {
507
- // Merge some changes
508
- docResult.merge({ input: "temp data" });
509
- await waitFor(() => {
510
- expect(docResult.doc.input).toBe("temp data");
511
- expect(docResult.doc._id).toBeUndefined();
512
- });
513
-
514
- // Save
515
- renderHook(() => {
516
- docResult.save();
517
- docResult.reset();
518
- });
519
-
520
- await waitFor(() => {
521
- expect(docResult.doc._id).toBeUndefined();
522
- expect(docResult.doc.input).toBe("");
523
- });
524
-
525
- renderHook(() => {
526
- docResult.merge({ input: "new temp data" });
527
- });
528
-
529
- let waitForSave: Promise<DocResponse>;
530
- renderHook(() => {
531
- waitForSave = docResult.save();
532
- });
533
-
534
- await waitFor(async () => {
535
- await waitForSave;
536
- expect(docResult.doc._id).toBeDefined();
537
- expect(docResult.doc.input).toBe("new temp data");
538
- });
539
-
540
- // Confirm it's actually in the DB
541
- const allDocs = await db.allDocs<{ input: string }>();
542
- expect(allDocs.rows.length).toBe(2);
543
- const docInputs = allDocs.rows.map((row) => row.value.input);
544
- expect(docInputs).toContain("temp data");
545
- expect(docInputs).toContain("new temp data");
546
- },
547
- TEST_TIMEOUT,
548
- );
549
-
550
- afterEach(async () => {
551
- await db.close();
552
- await db.destroy();
553
- await database.close();
554
- await database.destroy();
555
- });
556
- });
557
-
558
- describe("HOOK: useFireproof race condition: calling save() without await overwrites reset", () => {
559
- const dbName = "raceConditionDb";
560
- let db: Database, docResult: UseDocumentResult<{ input: string }>;
561
-
562
- beforeEach(async () => {
563
- db = fireproof(dbName);
564
-
565
- // Render a new hook instance
566
- renderHook(() => {
567
- const { useDocument } = useFireproof(dbName);
568
- docResult = useDocument<{ input: string }>({ input: "" });
569
- });
570
- });
571
-
572
- it.skip(
573
- "demonstrates that reset() takes precedence over save() when both are called",
574
- async () => {
575
- // Merge some changes into doc
576
- docResult.merge({ input: "some data" });
577
-
578
- // Call save and don't await it
579
- const savePromise = docResult.save();
580
-
581
- // Add a small delay to avoid React state queue issues in test environment
582
- await new Promise((resolve) => setTimeout(resolve, 10));
583
-
584
- // Call reset after save
585
- docResult.reset();
586
-
587
- // Wait for save to complete
588
- await savePromise;
589
-
590
- // Let any async subscriptions complete
591
- await new Promise((resolve) => setTimeout(resolve, 100));
592
-
593
- // Verify the reset took precedence
594
- expect(docResult.doc._id).toBeUndefined();
595
- expect(docResult.doc.input).toBe("");
596
- },
597
- TEST_TIMEOUT,
598
- );
599
-
600
- afterEach(async () => {
601
- await db.close();
602
- await db.destroy();
603
- });
604
- });
605
-
606
- describe("useFireproof calling submit()", () => {
607
- const dbName = "submitDb";
608
- let db: Database, docResult: UseDocumentResult<{ input: string }>;
609
-
610
- beforeEach(async () => {
611
- db = fireproof(dbName);
612
-
613
- // Render a new hook instance
614
- renderHook(() => {
615
- const { useDocument } = useFireproof(dbName);
616
- docResult = useDocument<{ input: string }>({ input: "" });
617
- });
618
- });
619
-
620
- it(
621
- "demonstrates that calling docResult.save() and docResult.reset() in the same tick can overwrite reset",
622
- async () => {
623
- // Merge some changes into doc
624
- docResult.merge({ input: "some data" });
625
-
626
- docResult.submit();
627
-
628
- // Let the async subscription produce a new doc in case the doc is reloaded with an _id
629
- await new Promise((resolve) => setTimeout(resolve, 500));
630
-
631
- // If the reset worked, doc._id should STILL be undefined.
632
- // If the subscription wins, doc._id will be defined => test fails.
633
- await waitFor(() => {
634
- expect(docResult.doc._id).toBeUndefined();
635
- expect(docResult.doc.input).toBe("");
636
- });
637
- },
638
- TEST_TIMEOUT,
639
- );
640
-
641
- afterEach(async () => {
642
- await db.close();
643
- await db.destroy();
644
- });
645
- });