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

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 +11 -69
  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,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=memory-sys-container.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory-sys-container.d.ts","sourceRoot":"","sources":["../../../../src/runtime/memory-sys-container.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=memory-sys-container.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory-sys-container.js","sourceRoot":"","sources":["../../../../src/runtime/memory-sys-container.ts"],"names":[],"mappings":""}
@@ -1,42 +0,0 @@
1
- import { Result, URI } from "@adviser/cement";
2
- import { SerializedMeta } from "./gateways/fp-envelope-serialize.js";
3
- import { SerdeGateway, SerdeGatewayCtx } from "../blockstore/serde-gateway.js";
4
- import { FPEnvelope, FPEnvelopeMeta } from "../blockstore/fp-envelope.js";
5
- import { NotFoundError } from "../utils.js";
6
- import { Gateway } from "../blockstore/gateway.js";
7
- import { Loadable } from "../blockstore/types.js";
8
- type V1SerializedMetaKey = SerializedMeta & {
9
- readonly key?: string | string[];
10
- readonly keys?: string[];
11
- };
12
- export interface V2SerializedMetaKey {
13
- readonly metas: SerializedMeta[];
14
- readonly keys: string[];
15
- }
16
- export declare function V2SerializedMetaKeyExtractKey(ctx: SerdeGatewayCtx, v2: V2SerializedMetaKey): Promise<Result<SerializedMeta[]>>;
17
- export declare function decodeAsToSerializedMeta(ctx: SerdeGatewayCtx, raw: Uint8Array): Promise<Result<V2SerializedMetaKey>>;
18
- export declare function addKeyToDbMetaDecoder(ctx: SerdeGatewayCtx & {
19
- readonly lastDecodedMetas?: V2SerializedMetaKey[];
20
- }): SerdeGatewayCtx & {
21
- lastDecodedMetas: V2SerializedMetaKey[];
22
- };
23
- export declare function encodeAsV1SerializedMetaKey(ctx: SerdeGatewayCtx, payload: SerializedMeta[]): Promise<Result<V1SerializedMetaKey[]>>;
24
- export declare function encodeAsV2SerializedMetaKey(ctx: SerdeGatewayCtx, payload: SerializedMeta[]): Promise<Result<V2SerializedMetaKey>>;
25
- export declare function addKeyToDbMetaEncoder(ctx: SerdeGatewayCtx, version: "v1" | "v2"): SerdeGatewayCtx;
26
- export declare class AddKeyToDbMetaGateway implements SerdeGateway {
27
- private readonly sdGw;
28
- readonly version: "v1" | "v2";
29
- constructor(gw: Gateway, version: "v1" | "v2");
30
- buildUrl(ctx: SerdeGatewayCtx, baseUrl: URI, key: string): Promise<Result<URI>>;
31
- start(ctx: SerdeGatewayCtx, baseUrl: URI): Promise<Result<URI>>;
32
- close(ctx: SerdeGatewayCtx, baseUrl: URI): Promise<Result<void, Error>>;
33
- put<T>(ctx: SerdeGatewayCtx, url: URI, body: FPEnvelope<T>): Promise<Result<void, Error>>;
34
- get<S>(ctx: SerdeGatewayCtx, url: URI): Promise<Result<FPEnvelope<S>, Error | NotFoundError>>;
35
- readonly lastDecodedMetas: V2SerializedMetaKey[];
36
- delete(ctx: SerdeGatewayCtx, url: URI, loader?: Loadable): Promise<Result<void, Error>>;
37
- subscribe(ctx: SerdeGatewayCtx, url: URI, callback: (meta: FPEnvelopeMeta) => Promise<void>): Promise<Result<() => void, Error>>;
38
- getPlain(ctx: SerdeGatewayCtx, url: URI, key: string): Promise<Result<Uint8Array>>;
39
- destroy(ctx: SerdeGatewayCtx, baseUrl: URI): Promise<Result<void, Error>>;
40
- }
41
- export {};
42
- //# sourceMappingURL=meta-key-hack.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"meta-key-hack.d.ts","sourceRoot":"","sources":["../../../../src/runtime/meta-key-hack.ts"],"names":[],"mappings":"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"}
@@ -1,201 +0,0 @@
1
- import { exception2Result, Result } from "@adviser/cement";
2
- import { PARAM } from "../types.js";
3
- import { DefSerdeGateway } from "./gateways/def-serde-gateway.js";
4
- function fromV1toV2SerializedMetaKey(v1s, keys = []) {
5
- const res = v1s.reduce((acc, v1) => {
6
- const keys = [];
7
- if (v1.key) {
8
- if (typeof v1.key === "string") {
9
- acc.keys.add(v1.key);
10
- }
11
- else {
12
- keys.push(...v1.key);
13
- }
14
- }
15
- if (v1.keys) {
16
- keys.push(...v1.keys);
17
- }
18
- for (const key of keys) {
19
- acc.keys.add(key);
20
- }
21
- if (typeof v1.cid === "string" && (!v1.data || typeof v1.data === "string") && (!v1.parents || Array.isArray(v1.parents))) {
22
- acc.metas.set(v1.cid, {
23
- data: v1.data ?? "",
24
- parents: v1.parents ?? [],
25
- cid: v1.cid,
26
- });
27
- }
28
- return acc;
29
- }, {
30
- metas: new Map(),
31
- keys: new Set(keys),
32
- });
33
- return {
34
- metas: Array.from(res.metas.values()),
35
- keys: Array.from(res.keys),
36
- };
37
- }
38
- function isV2SerializedMetaKey(or) {
39
- const my = or;
40
- return my !== null && (!my.keys || Array.isArray(my.keys)) && (!my.metas || Array.isArray(my.metas));
41
- }
42
- function toV2SerializedMetaKey(or) {
43
- if (Array.isArray(or)) {
44
- return fromV1toV2SerializedMetaKey(or);
45
- }
46
- if (isV2SerializedMetaKey(or)) {
47
- return fromV1toV2SerializedMetaKey(or.metas ?? [], or.keys ?? []);
48
- }
49
- throw new Error("not a valid serialized meta key");
50
- }
51
- export async function V2SerializedMetaKeyExtractKey(ctx, v2) {
52
- const kb = await ctx.loader.keyBag();
53
- if (!kb) {
54
- return Promise.resolve(Result.Err(new Error("missing keybag")));
55
- }
56
- const dataUrl = await ctx.loader.attachedStores.local().active.car.url();
57
- const keyName = dataUrl.getParam(PARAM.STORE_KEY);
58
- if (!keyName) {
59
- ctx.loader.sthis.logger.Warn().Url(dataUrl).Msg("missing store key");
60
- }
61
- else {
62
- const rKey = await kb.getNamedKey(keyName);
63
- if (rKey.isErr()) {
64
- ctx.loader.sthis.logger.Warn().Str("keyName", keyName).Msg("did not found a extractable key");
65
- }
66
- else {
67
- for (const keyStr of v2.keys) {
68
- const res = await rKey.Ok().upsert(keyStr, false);
69
- if (res.isErr()) {
70
- ctx.loader.sthis.logger.Warn().Str("keyStr", keyStr).Msg("failed to upsert key");
71
- }
72
- }
73
- }
74
- }
75
- return Promise.resolve(Result.Ok(v2.metas));
76
- }
77
- export async function decodeAsToSerializedMeta(ctx, raw) {
78
- const rJsObj = exception2Result(() => JSON.parse(ctx.loader.sthis.txt.decode(raw)));
79
- if (rJsObj.isErr()) {
80
- return Result.Err(rJsObj);
81
- }
82
- const v2 = toV2SerializedMetaKey(rJsObj.unwrap());
83
- const metas = await V2SerializedMetaKeyExtractKey(ctx, v2);
84
- if (metas.isErr()) {
85
- return Result.Err(metas);
86
- }
87
- return Result.Ok({
88
- metas: metas.Ok(),
89
- keys: v2.keys,
90
- });
91
- }
92
- export function addKeyToDbMetaDecoder(ctx) {
93
- const lastDecodedMetas = ctx.lastDecodedMetas ?? [];
94
- return {
95
- ...ctx,
96
- lastDecodedMetas,
97
- decoder: {
98
- meta: async (sthis, raw) => {
99
- const r = await decodeAsToSerializedMeta(ctx, raw);
100
- if (r.isErr()) {
101
- return Promise.resolve(Result.Err(r));
102
- }
103
- if (lastDecodedMetas.length > 2) {
104
- lastDecodedMetas.shift();
105
- }
106
- lastDecodedMetas.push(r.Ok());
107
- return Promise.resolve(Result.Ok(r.Ok().metas));
108
- },
109
- },
110
- };
111
- }
112
- async function wrapEncode(ctx, payload, fn) {
113
- const carStore = ctx.loader.attachedStores.local().active.car;
114
- const kb = await ctx.loader.keyBag();
115
- if (!kb) {
116
- return Promise.resolve(Result.Err(new Error("missing keybag")));
117
- }
118
- const keyName = carStore.url().getParam(PARAM.STORE_KEY) ?? "";
119
- const rKex = await kb.getNamedKey(keyName);
120
- if (rKex.isErr()) {
121
- return Promise.resolve(Result.Err(rKex.Err()));
122
- }
123
- const keyMaterials = await rKex
124
- .Ok()
125
- .asKeysItem()
126
- .then((i) => Object.values(i.keys).map((i) => i.key));
127
- return Promise.resolve(Result.Ok(fn(payload, keyMaterials)));
128
- }
129
- export function encodeAsV1SerializedMetaKey(ctx, payload) {
130
- return wrapEncode(ctx, payload, (payload, keyM) => payload.map((p) => ({ ...p, key: keyM })));
131
- }
132
- export function encodeAsV2SerializedMetaKey(ctx, payload) {
133
- return wrapEncode(ctx, payload, (payload, keyM) => ({
134
- metas: payload,
135
- keys: keyM,
136
- }));
137
- }
138
- export function addKeyToDbMetaEncoder(ctx, version) {
139
- return {
140
- ...ctx,
141
- encoder: {
142
- meta: async (sthis, payload) => {
143
- let obj;
144
- switch (version) {
145
- case "v1":
146
- obj = await encodeAsV1SerializedMetaKey(ctx, payload);
147
- break;
148
- case "v2":
149
- obj = await encodeAsV2SerializedMetaKey(ctx, payload);
150
- break;
151
- default:
152
- return Promise.resolve(Result.Err(`unknown version:[${version}]`));
153
- }
154
- if (obj.isErr()) {
155
- return Promise.resolve(Result.Err(obj));
156
- }
157
- try {
158
- return Promise.resolve(Result.Ok(sthis.txt.encode(JSON.stringify(obj.Ok()))));
159
- }
160
- catch (e) {
161
- return Promise.resolve(Result.Err(e));
162
- }
163
- },
164
- },
165
- };
166
- }
167
- export class AddKeyToDbMetaGateway {
168
- constructor(gw, version) {
169
- this.lastDecodedMetas = [];
170
- this.sdGw = new DefSerdeGateway(gw);
171
- this.version = version;
172
- }
173
- buildUrl(ctx, baseUrl, key) {
174
- return this.sdGw.buildUrl(ctx, baseUrl, key);
175
- }
176
- start(ctx, baseUrl) {
177
- return this.sdGw.start(ctx, baseUrl);
178
- }
179
- close(ctx, baseUrl) {
180
- return this.sdGw.close(ctx, baseUrl);
181
- }
182
- async put(ctx, url, body) {
183
- return this.sdGw.put(addKeyToDbMetaEncoder(ctx, this.version), url, body);
184
- }
185
- async get(ctx, url) {
186
- return this.sdGw.get(addKeyToDbMetaDecoder({ ...ctx, lastDecodedMetas: this.lastDecodedMetas }), url);
187
- }
188
- delete(ctx, url, loader) {
189
- return this.sdGw.delete(ctx, url);
190
- }
191
- subscribe(ctx, url, callback) {
192
- return this.sdGw.subscribe(addKeyToDbMetaDecoder({ ...ctx, lastDecodedMetas: this.lastDecodedMetas }), url, callback);
193
- }
194
- getPlain(ctx, url, key) {
195
- return this.sdGw.getPlain(ctx, url, key);
196
- }
197
- destroy(ctx, baseUrl) {
198
- return this.sdGw.destroy(ctx, baseUrl);
199
- }
200
- }
201
- //# sourceMappingURL=meta-key-hack.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"meta-key-hack.js","sourceRoot":"","sources":["../../../../src/runtime/meta-key-hack.ts"],"names":[],"mappings":"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"}
@@ -1,40 +0,0 @@
1
- import { Result } from "@adviser/cement";
2
- import { JWTVerifyResult } from "jose";
3
- import { GenerateKeyPairOptions } from "jose/key/generate/keypair";
4
- import { SuperThis } from "../../types.js";
5
- import { BaseTokenParam, FPCloudClaim, TokenForParam } from "../../protocols/cloud/msg-types.js";
6
- export declare const envKeyDefaults: {
7
- SECRET: string;
8
- PUBLIC: string;
9
- };
10
- interface SessionTokenServiceParam extends Partial<BaseTokenParam> {
11
- readonly token: string;
12
- }
13
- interface SessionTokenServiceFromEnvParam extends Partial<BaseTokenParam> {
14
- readonly privateEnvKey?: string;
15
- readonly publicEnvKey?: string;
16
- }
17
- export declare function jwk2env(jwk: CryptoKey, sthis?: SuperThis): Promise<string>;
18
- export declare function env2jwk(env: string, alg: string, sthis?: SuperThis): Promise<CryptoKey>;
19
- export interface KeysResult {
20
- readonly material: CryptoKeyPair;
21
- readonly strings: {
22
- readonly publicKey: string;
23
- readonly privateKey: string;
24
- };
25
- }
26
- export declare class SessionTokenService {
27
- #private;
28
- static generateKeyPair(alg?: string, options?: GenerateKeyPairOptions, generateKeyPairFN?: (alg: string, options: GenerateKeyPairOptions) => Promise<import("jose").GenerateKeyPairResult>): Promise<KeysResult>;
29
- static createFromEnv(sthis: SuperThis, sp?: SessionTokenServiceFromEnvParam): Promise<SessionTokenService>;
30
- static create(stsparam: SessionTokenServiceParam, sthis?: SuperThis): Promise<SessionTokenService>;
31
- private constructor();
32
- get validFor(): number;
33
- get alg(): string;
34
- get isssuer(): string;
35
- get audience(): string;
36
- validate(token: string): Promise<Result<JWTVerifyResult<FPCloudClaim>>>;
37
- tokenFor(p: TokenForParam): Promise<string>;
38
- }
39
- export {};
40
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/runtime/sts-service/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAoB,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAwB,eAAe,EAAsB,MAAM,MAAM,CAAC;AACjF,OAAO,EAAmB,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAGpF,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAEjG,eAAO,MAAM,cAAc;;;CAG1B,CAAC;AAEF,UAAU,wBAAyB,SAAQ,OAAO,CAAC,cAAc,CAAC;IAChE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB;AAED,UAAU,+BAAgC,SAAQ,OAAO,CAAC,cAAc,CAAC;IACvE,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,wBAAsB,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,KAAK,YAAoB,GAAG,OAAO,CAAC,MAAM,CAAC,CAGxF;AAED,wBAAsB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,YAAoB,GAAG,OAAO,CAAC,SAAS,CAAC,CAGrG;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;CAC/E;AAED,qBAAa,mBAAmB;;WAIjB,eAAe,CAC1B,GAAG,SAAU,EACb,OAAO,GAAE,sBAA8C,EACvD,iBAAiB,IAAI,KAAK,MAAM,EAAE,SAAS,sBAAsB,kDAAkC,GAClG,OAAO,CAAC,UAAU,CAAC;WAWT,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,GAAE,+BAAoC;WAaxE,MAAM,CAAC,QAAQ,EAAE,wBAAwB,EAAE,KAAK,GAAE,SAA6B;IAK5F,OAAO;IAKP,IAAI,QAAQ,WAMX;IAED,IAAI,GAAG,WAEN;IAED,IAAI,OAAO,WAEV;IAED,IAAI,QAAQ,WAEX;IAEK,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC;IAWvE,QAAQ,CAAC,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;CAuBlD"}
@@ -1,108 +0,0 @@
1
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
2
- if (kind === "m") throw new TypeError("Private method is not writable");
3
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
4
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
5
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
6
- };
7
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
8
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
9
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
- };
12
- var _SessionTokenService_key, _SessionTokenService_param;
13
- import { exception2Result } from "@adviser/cement";
14
- import { exportJWK, importJWK, jwtVerify, SignJWT } from "jose";
15
- import { generateKeyPair } from "jose/key/generate/keypair";
16
- import { base58btc } from "multiformats/bases/base58";
17
- import { ensureSuperThis } from "../../utils.js";
18
- export const envKeyDefaults = {
19
- SECRET: "CLOUD_SESSION_TOKEN_SECRET",
20
- PUBLIC: "CLOUD_SESSION_TOKEN_PUBLIC",
21
- };
22
- export async function jwk2env(jwk, sthis = ensureSuperThis()) {
23
- const inPubKey = await exportJWK(jwk);
24
- return base58btc.encode(sthis.txt.encode(JSON.stringify(inPubKey)));
25
- }
26
- export async function env2jwk(env, alg, sthis = ensureSuperThis()) {
27
- const inJWT = JSON.parse(sthis.txt.decode(base58btc.decode(env)));
28
- return importJWK(inJWT, alg, { extractable: true });
29
- }
30
- export class SessionTokenService {
31
- static async generateKeyPair(alg = "ES256", options = { extractable: true }, generateKeyPairFN = (alg, options) => generateKeyPair(alg, options)) {
32
- const material = await generateKeyPairFN(alg, options);
33
- return {
34
- material,
35
- strings: {
36
- publicKey: await jwk2env(material.publicKey),
37
- privateKey: await jwk2env(material.privateKey),
38
- },
39
- };
40
- }
41
- static async createFromEnv(sthis, sp = {}) {
42
- let envToken = sthis.env.get(sp.privateEnvKey ?? envKeyDefaults.SECRET);
43
- if (!envToken) {
44
- envToken = sthis.env.get(sp.publicEnvKey ?? envKeyDefaults.PUBLIC);
45
- }
46
- if (!envToken) {
47
- throw new Error(`env not found for: ${sp.privateEnvKey ?? envKeyDefaults.SECRET} or ${sp.publicEnvKey ?? envKeyDefaults.PUBLIC}`);
48
- }
49
- return SessionTokenService.create({ token: envToken }, sthis);
50
- }
51
- static async create(stsparam, sthis = ensureSuperThis()) {
52
- const key = await env2jwk(stsparam.token, stsparam.alg ?? "ES256", sthis);
53
- return new SessionTokenService(key, stsparam);
54
- }
55
- constructor(key, stsparam) {
56
- _SessionTokenService_key.set(this, void 0);
57
- _SessionTokenService_param.set(this, void 0);
58
- __classPrivateFieldSet(this, _SessionTokenService_key, key, "f");
59
- __classPrivateFieldSet(this, _SessionTokenService_param, stsparam, "f");
60
- }
61
- get validFor() {
62
- let validFor = __classPrivateFieldGet(this, _SessionTokenService_param, "f").validFor ?? 3600;
63
- if (!(0 <= validFor && validFor <= 3600000)) {
64
- validFor = 3600000;
65
- }
66
- return validFor;
67
- }
68
- get alg() {
69
- return __classPrivateFieldGet(this, _SessionTokenService_param, "f").alg ?? "ES256";
70
- }
71
- get isssuer() {
72
- return __classPrivateFieldGet(this, _SessionTokenService_param, "f").issuer ?? "fireproof";
73
- }
74
- get audience() {
75
- return __classPrivateFieldGet(this, _SessionTokenService_param, "f").audience ?? "fireproof";
76
- }
77
- async validate(token) {
78
- return exception2Result(async () => {
79
- const ret = await jwtVerify(token, __classPrivateFieldGet(this, _SessionTokenService_key, "f"));
80
- return ret;
81
- });
82
- }
83
- async tokenFor(p) {
84
- if (__classPrivateFieldGet(this, _SessionTokenService_key, "f").type !== "private") {
85
- throw new Error("key must be private");
86
- }
87
- const token = await new SignJWT({
88
- userId: p.userId,
89
- tenants: p.tenants,
90
- ledgers: p.ledgers,
91
- email: "test@test",
92
- created: new Date(),
93
- selected: {
94
- tenant: p.tenants[0].id,
95
- ledger: p.ledgers[0].id,
96
- },
97
- })
98
- .setProtectedHeader({ alg: this.alg })
99
- .setIssuedAt()
100
- .setIssuer(p.issuer ?? this.isssuer)
101
- .setAudience(p.audience ?? this.audience)
102
- .setExpirationTime(Date.now() + (p.validFor ?? this.validFor))
103
- .sign(__classPrivateFieldGet(this, _SessionTokenService_key, "f"));
104
- return token;
105
- }
106
- }
107
- _SessionTokenService_key = new WeakMap(), _SessionTokenService_param = new WeakMap();
108
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/runtime/sts-service/index.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=sys-container.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sys-container.d.ts","sourceRoot":"","sources":["../../../../src/runtime/sys-container.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=sys-container.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sys-container.js","sourceRoot":"","sources":["../../../../src/runtime/sys-container.ts"],"names":[],"mappings":""}
@@ -1,47 +0,0 @@
1
- import { MultihashHasher, BlockView, ByteView, Version, Link } from "multiformats";
2
- import { Block as mfBlock } from "multiformats/block";
3
- import { AsyncBlockDecoder, AsyncBlockEncoder, BlockDecoder, BlockEncoder } from "./codec-interface.js";
4
- export declare const Block: typeof mfBlock;
5
- export interface DecodeInput<T, Code extends number, Alg extends number> {
6
- readonly bytes: ByteView<unknown>;
7
- readonly codec: BlockDecoder<Code, T>;
8
- readonly hasher: MultihashHasher<Alg>;
9
- }
10
- export interface AsyncDecodeInput<T, Code extends number, Alg extends number> {
11
- readonly bytes: ByteView<unknown>;
12
- readonly codec: AsyncBlockDecoder<Code, T>;
13
- readonly hasher: MultihashHasher<Alg>;
14
- }
15
- export declare function decode<T, Code extends number, Alg extends number>({ bytes, codec, hasher, }: AsyncDecodeInput<T, Code, Alg> | DecodeInput<T, Code, Alg>): Promise<BlockView<T, Code, Alg>>;
16
- export interface EncodeInput<T, Code extends number, Alg extends number> {
17
- readonly value: T;
18
- readonly codec: BlockEncoder<Code, T>;
19
- readonly hasher: MultihashHasher<Alg>;
20
- }
21
- export interface AsyncEncodeInput<T, Code extends number, Alg extends number> {
22
- readonly value: T;
23
- readonly codec: AsyncBlockEncoder<Code, T>;
24
- readonly hasher: MultihashHasher<Alg>;
25
- }
26
- export declare function encode<T, Code extends number, Alg extends number>({ value, codec, hasher, }: AsyncEncodeInput<T, Code, Alg> | EncodeInput<T, Code, Alg>): Promise<BlockView<T, Code, Alg>>;
27
- interface CreateInput<T, Code extends number, Alg extends number, V extends Version> {
28
- bytes: ByteView<T>;
29
- cid: Link<T, Code, Alg, V>;
30
- hasher: MultihashHasher<Alg>;
31
- codec: BlockDecoder<Code, T>;
32
- }
33
- export declare function create<T, Code extends number, Alg extends number, V extends Version>({ bytes, cid, hasher, codec, }: CreateInput<T, Code, Alg, V>): Promise<BlockView<T, Code, Alg, V>>;
34
- type CreateUnsafeInput<T, Code extends number, Alg extends number, V extends Version> = {
35
- cid: Link<T, Code, Alg, V>;
36
- value: T;
37
- codec?: BlockDecoder<Code, T>;
38
- bytes: ByteView<T>;
39
- } | {
40
- cid: Link<T, Code, Alg, V>;
41
- value?: undefined;
42
- codec: BlockDecoder<Code, T>;
43
- bytes: ByteView<T>;
44
- };
45
- export declare function createUnsafe<T, Code extends number, Alg extends number, V extends Version>({ bytes, cid, value: maybeValue, codec, }: CreateUnsafeInput<T, Code, Alg, V>): Promise<BlockView<T, Code, Alg, V>>;
46
- export {};
47
- //# sourceMappingURL=block.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../../../../../src/runtime/wait-pr-multiformats/block.ts"],"names":[],"mappings":"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"}
@@ -1,64 +0,0 @@
1
- import { bytes as binary, CID } from "multiformats";
2
- import { Block as mfBlock } from "multiformats/block";
3
- export const Block = mfBlock;
4
- export async function decode({ bytes, codec, hasher, }) {
5
- if (bytes == null)
6
- throw new Error('Missing required argument "bytes"');
7
- if (codec == null || hasher == null)
8
- throw new Error("Missing required argument: codec or hasher");
9
- const value = (await Promise.resolve(codec.decode(bytes)));
10
- let toHash = bytes;
11
- if (codec.valueToHashBytes) {
12
- toHash = (await Promise.resolve(codec.valueToHashBytes(value)));
13
- }
14
- const hash = await hasher.digest(toHash);
15
- const cid = CID.create(1, codec.code, hash);
16
- return new mfBlock({ value, bytes: toHash, cid });
17
- }
18
- export async function encode({ value, codec, hasher, }) {
19
- if (typeof value === "undefined")
20
- throw new Error('Missing required argument "value"');
21
- if (codec == null || hasher == null)
22
- throw new Error("Missing required argument: codec or hasher");
23
- let bytes;
24
- let hash;
25
- if (codec.bytesToHash) {
26
- const hashable = await Promise.resolve(codec.bytesToHash(value));
27
- hash = await hasher.digest(hashable);
28
- bytes = await Promise.resolve(codec.encode(value));
29
- }
30
- else {
31
- bytes = await Promise.resolve(codec.encode(value));
32
- hash = await hasher.digest(bytes);
33
- }
34
- const cid = CID.create(1, codec.code, hash);
35
- return new Block({ value, bytes, cid });
36
- }
37
- export async function create({ bytes, cid, hasher, codec, }) {
38
- if (bytes == null)
39
- throw new Error('Missing required argument "bytes"');
40
- if (hasher == null)
41
- throw new Error('Missing required argument "hasher"');
42
- const value = await Promise.resolve(codec.decode(bytes));
43
- const hash = await hasher.digest(bytes);
44
- if (!binary.equals(cid.multihash.bytes, hash.bytes)) {
45
- throw new Error("CID hash does not match bytes");
46
- }
47
- return createUnsafe({
48
- bytes,
49
- cid,
50
- value,
51
- codec,
52
- });
53
- }
54
- export async function createUnsafe({ bytes, cid, value: maybeValue, codec, }) {
55
- const value = await Promise.resolve(maybeValue !== undefined ? maybeValue : codec?.decode(bytes));
56
- if (value === undefined)
57
- throw new Error('Missing required argument, must either provide "value" or "codec"');
58
- return new Block({
59
- cid: cid,
60
- bytes,
61
- value,
62
- });
63
- }
64
- //# sourceMappingURL=block.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"block.js","sourceRoot":"","sources":["../../../../../src/runtime/wait-pr-multiformats/block.ts"],"names":[],"mappings":"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"}
@@ -1,29 +0,0 @@
1
- import type { ArrayBufferView, ByteView } from "multiformats";
2
- export interface BlockEncoder<Code extends number, T> {
3
- readonly name: string;
4
- readonly code: Code;
5
- bytesToHash?(data: T): ByteView<unknown>;
6
- encode(data: T): ByteView<T>;
7
- }
8
- export interface AsyncBlockEncoder<Code extends number, T> {
9
- readonly name: string;
10
- readonly code: Code;
11
- bytesToHash?(data: T): Promise<ByteView<unknown>>;
12
- encode(data: T): PromiseLike<ByteView<T>>;
13
- }
14
- export interface BlockDecoder<Code extends number, T> {
15
- readonly code: Code;
16
- valueToHashBytes?(value: T): ByteView<unknown>;
17
- decode(bytes: ByteView<unknown>): T;
18
- }
19
- export interface AsyncBlockDecoder<Code extends number, T> {
20
- readonly code: Code;
21
- valueToHashBytes?(value: T): Promise<ByteView<unknown>>;
22
- decode(bytes: ByteView<unknown>): PromiseLike<T>;
23
- }
24
- export interface BlockCodec<Code extends number, E, D> extends BlockEncoder<Code, E>, BlockDecoder<Code, D> {
25
- }
26
- export interface AsyncBlockCodec<Code extends number, E, D> extends AsyncBlockEncoder<Code, E>, AsyncBlockDecoder<Code, D> {
27
- }
28
- export type { ArrayBufferView, ByteView };
29
- //# sourceMappingURL=codec-interface.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"codec-interface.d.ts","sourceRoot":"","sources":["../../../../../src/runtime/wait-pr-multiformats/codec-interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAQ9D,MAAM,WAAW,YAAY,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC;IAClD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IAEpB,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IACzC,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,iBAAiB,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC;IACvD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,WAAW,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IAClD,MAAM,CAAC,IAAI,EAAE,CAAC,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;CAC3C;AAKD,MAAM,WAAW,YAAY,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC;IAClD,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,gBAAgB,CAAC,CAAC,KAAK,EAAE,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC;IAI/C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,iBAAiB,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC;IACvD,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;IACpB,gBAAgB,CAAC,CAAC,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IAGxD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;CAClD;AAKD,MAAM,WAAW,UAAU,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC,CAAE,SAAQ,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;CAAG;AAC9G,MAAM,WAAW,eAAe,CAAC,IAAI,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC,CAAE,SAAQ,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC;CAAG;AAE7H,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=codec-interface.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"codec-interface.js","sourceRoot":"","sources":["../../../../../src/runtime/wait-pr-multiformats/codec-interface.ts"],"names":[],"mappings":""}
@@ -1,3 +0,0 @@
1
- export * as block from "./block.js";
2
- export * as codec from "./codec-interface.js";
3
- //# sourceMappingURL=index.d.ts.map