@connecttomahdi/rxdb 17.0.0-beta.17

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 (1969) hide show
  1. package/AGENTS.md +54 -0
  2. package/CHANGELOG.md +2469 -0
  3. package/CLAUDE.md +63 -0
  4. package/LICENSE.txt +201 -0
  5. package/README.md +263 -0
  6. package/babel.config.js +58 -0
  7. package/dist/cjs/change-event-buffer.js +146 -0
  8. package/dist/cjs/change-event-buffer.js.map +1 -0
  9. package/dist/cjs/custom-index.js +284 -0
  10. package/dist/cjs/custom-index.js.map +1 -0
  11. package/dist/cjs/doc-cache.js +231 -0
  12. package/dist/cjs/doc-cache.js.map +1 -0
  13. package/dist/cjs/event-reduce.js +102 -0
  14. package/dist/cjs/event-reduce.js.map +1 -0
  15. package/dist/cjs/hooks.js +131 -0
  16. package/dist/cjs/hooks.js.map +1 -0
  17. package/dist/cjs/incremental-write.js +169 -0
  18. package/dist/cjs/incremental-write.js.map +1 -0
  19. package/dist/cjs/index.js +270 -0
  20. package/dist/cjs/index.js.map +1 -0
  21. package/dist/cjs/overwritable.js +39 -0
  22. package/dist/cjs/overwritable.js.map +1 -0
  23. package/dist/cjs/plugin-helpers.js +223 -0
  24. package/dist/cjs/plugin-helpers.js.map +1 -0
  25. package/dist/cjs/plugin.js +94 -0
  26. package/dist/cjs/plugin.js.map +1 -0
  27. package/dist/cjs/plugins/attachments/attachments-utils.js +49 -0
  28. package/dist/cjs/plugins/attachments/attachments-utils.js.map +1 -0
  29. package/dist/cjs/plugins/attachments/index.js +237 -0
  30. package/dist/cjs/plugins/attachments/index.js.map +1 -0
  31. package/dist/cjs/plugins/attachments-compression/index.js +143 -0
  32. package/dist/cjs/plugins/attachments-compression/index.js.map +1 -0
  33. package/dist/cjs/plugins/backup/file-util.js +102 -0
  34. package/dist/cjs/plugins/backup/file-util.js.map +1 -0
  35. package/dist/cjs/plugins/backup/index.js +206 -0
  36. package/dist/cjs/plugins/backup/index.js.map +1 -0
  37. package/dist/cjs/plugins/cleanup/cleanup-helper.js +17 -0
  38. package/dist/cjs/plugins/cleanup/cleanup-helper.js.map +1 -0
  39. package/dist/cjs/plugins/cleanup/cleanup-state.js +83 -0
  40. package/dist/cjs/plugins/cleanup/cleanup-state.js.map +1 -0
  41. package/dist/cjs/plugins/cleanup/cleanup.js +116 -0
  42. package/dist/cjs/plugins/cleanup/cleanup.js.map +1 -0
  43. package/dist/cjs/plugins/cleanup/index.js +64 -0
  44. package/dist/cjs/plugins/cleanup/index.js.map +1 -0
  45. package/dist/cjs/plugins/crdt/index.js +392 -0
  46. package/dist/cjs/plugins/crdt/index.js.map +1 -0
  47. package/dist/cjs/plugins/dev-mode/check-document.js +158 -0
  48. package/dist/cjs/plugins/dev-mode/check-document.js.map +1 -0
  49. package/dist/cjs/plugins/dev-mode/check-migration-strategies.js +43 -0
  50. package/dist/cjs/plugins/dev-mode/check-migration-strategies.js.map +1 -0
  51. package/dist/cjs/plugins/dev-mode/check-orm.js +53 -0
  52. package/dist/cjs/plugins/dev-mode/check-orm.js.map +1 -0
  53. package/dist/cjs/plugins/dev-mode/check-query.js +183 -0
  54. package/dist/cjs/plugins/dev-mode/check-query.js.map +1 -0
  55. package/dist/cjs/plugins/dev-mode/check-schema.js +487 -0
  56. package/dist/cjs/plugins/dev-mode/check-schema.js.map +1 -0
  57. package/dist/cjs/plugins/dev-mode/dev-mode-tracking.js +93 -0
  58. package/dist/cjs/plugins/dev-mode/dev-mode-tracking.js.map +1 -0
  59. package/dist/cjs/plugins/dev-mode/entity-properties.js +56 -0
  60. package/dist/cjs/plugins/dev-mode/entity-properties.js.map +1 -0
  61. package/dist/cjs/plugins/dev-mode/error-messages.js +1295 -0
  62. package/dist/cjs/plugins/dev-mode/error-messages.js.map +1 -0
  63. package/dist/cjs/plugins/dev-mode/index.js +195 -0
  64. package/dist/cjs/plugins/dev-mode/index.js.map +1 -0
  65. package/dist/cjs/plugins/dev-mode/unallowed-properties.js +88 -0
  66. package/dist/cjs/plugins/dev-mode/unallowed-properties.js.map +1 -0
  67. package/dist/cjs/plugins/electron/electron-helper.js +9 -0
  68. package/dist/cjs/plugins/electron/electron-helper.js.map +1 -0
  69. package/dist/cjs/plugins/electron/index.js +39 -0
  70. package/dist/cjs/plugins/electron/index.js.map +1 -0
  71. package/dist/cjs/plugins/electron/rx-storage-ipc-main.js +45 -0
  72. package/dist/cjs/plugins/electron/rx-storage-ipc-main.js.map +1 -0
  73. package/dist/cjs/plugins/electron/rx-storage-ipc-renderer.js +37 -0
  74. package/dist/cjs/plugins/electron/rx-storage-ipc-renderer.js.map +1 -0
  75. package/dist/cjs/plugins/encryption-crypto-js/index.js +165 -0
  76. package/dist/cjs/plugins/encryption-crypto-js/index.js.map +1 -0
  77. package/dist/cjs/plugins/flutter/index.js +62 -0
  78. package/dist/cjs/plugins/flutter/index.js.map +1 -0
  79. package/dist/cjs/plugins/json-dump/index.js +94 -0
  80. package/dist/cjs/plugins/json-dump/index.js.map +1 -0
  81. package/dist/cjs/plugins/key-compression/index.js +136 -0
  82. package/dist/cjs/plugins/key-compression/index.js.map +1 -0
  83. package/dist/cjs/plugins/leader-election/index.js +107 -0
  84. package/dist/cjs/plugins/leader-election/index.js.map +1 -0
  85. package/dist/cjs/plugins/local-documents/index.js +109 -0
  86. package/dist/cjs/plugins/local-documents/index.js.map +1 -0
  87. package/dist/cjs/plugins/local-documents/local-documents-helper.js +78 -0
  88. package/dist/cjs/plugins/local-documents/local-documents-helper.js.map +1 -0
  89. package/dist/cjs/plugins/local-documents/local-documents.js +107 -0
  90. package/dist/cjs/plugins/local-documents/local-documents.js.map +1 -0
  91. package/dist/cjs/plugins/local-documents/rx-local-document.js +257 -0
  92. package/dist/cjs/plugins/local-documents/rx-local-document.js.map +1 -0
  93. package/dist/cjs/plugins/migration-schema/index.js +84 -0
  94. package/dist/cjs/plugins/migration-schema/index.js.map +1 -0
  95. package/dist/cjs/plugins/migration-schema/migration-helpers.js +116 -0
  96. package/dist/cjs/plugins/migration-schema/migration-helpers.js.map +1 -0
  97. package/dist/cjs/plugins/migration-schema/migration-types.js +2 -0
  98. package/dist/cjs/plugins/migration-schema/migration-types.js.map +1 -0
  99. package/dist/cjs/plugins/migration-schema/rx-migration-state.js +410 -0
  100. package/dist/cjs/plugins/migration-schema/rx-migration-state.js.map +1 -0
  101. package/dist/cjs/plugins/migration-storage/index.js +173 -0
  102. package/dist/cjs/plugins/migration-storage/index.js.map +1 -0
  103. package/dist/cjs/plugins/pipeline/flagged-functions.js +129 -0
  104. package/dist/cjs/plugins/pipeline/flagged-functions.js.map +1 -0
  105. package/dist/cjs/plugins/pipeline/index.js +43 -0
  106. package/dist/cjs/plugins/pipeline/index.js.map +1 -0
  107. package/dist/cjs/plugins/pipeline/rx-pipeline.js +219 -0
  108. package/dist/cjs/plugins/pipeline/rx-pipeline.js.map +1 -0
  109. package/dist/cjs/plugins/pipeline/types.js +2 -0
  110. package/dist/cjs/plugins/pipeline/types.js.map +1 -0
  111. package/dist/cjs/plugins/query-builder/index.js +70 -0
  112. package/dist/cjs/plugins/query-builder/index.js.map +1 -0
  113. package/dist/cjs/plugins/query-builder/mquery/mquery-utils.js +40 -0
  114. package/dist/cjs/plugins/query-builder/mquery/mquery-utils.js.map +1 -0
  115. package/dist/cjs/plugins/query-builder/mquery/nosql-query-builder.js +488 -0
  116. package/dist/cjs/plugins/query-builder/mquery/nosql-query-builder.js.map +1 -0
  117. package/dist/cjs/plugins/react/database-context.js +15 -0
  118. package/dist/cjs/plugins/react/database-context.js.map +1 -0
  119. package/dist/cjs/plugins/react/database-provider.js +41 -0
  120. package/dist/cjs/plugins/react/database-provider.js.map +1 -0
  121. package/dist/cjs/plugins/react/hooks/index.js +50 -0
  122. package/dist/cjs/plugins/react/hooks/index.js.map +1 -0
  123. package/dist/cjs/plugins/react/hooks/use-live-rx-query.js +27 -0
  124. package/dist/cjs/plugins/react/hooks/use-live-rx-query.js.map +1 -0
  125. package/dist/cjs/plugins/react/hooks/use-rx-collection.js +39 -0
  126. package/dist/cjs/plugins/react/hooks/use-rx-collection.js.map +1 -0
  127. package/dist/cjs/plugins/react/hooks/use-rx-database.js +24 -0
  128. package/dist/cjs/plugins/react/hooks/use-rx-database.js.map +1 -0
  129. package/dist/cjs/plugins/react/hooks/use-rx-query.js +99 -0
  130. package/dist/cjs/plugins/react/hooks/use-rx-query.js.map +1 -0
  131. package/dist/cjs/plugins/react/index.js +28 -0
  132. package/dist/cjs/plugins/react/index.js.map +1 -0
  133. package/dist/cjs/plugins/reactivity-angular/index.js +30 -0
  134. package/dist/cjs/plugins/reactivity-angular/index.js.map +1 -0
  135. package/dist/cjs/plugins/reactivity-preact-signals/index.js +67 -0
  136. package/dist/cjs/plugins/reactivity-preact-signals/index.js.map +1 -0
  137. package/dist/cjs/plugins/reactivity-vue/index.js +32 -0
  138. package/dist/cjs/plugins/reactivity-vue/index.js.map +1 -0
  139. package/dist/cjs/plugins/replication/index.js +487 -0
  140. package/dist/cjs/plugins/replication/index.js.map +1 -0
  141. package/dist/cjs/plugins/replication/replication-helper.js +97 -0
  142. package/dist/cjs/plugins/replication/replication-helper.js.map +1 -0
  143. package/dist/cjs/plugins/replication-appwrite/appwrite-helpers.js +33 -0
  144. package/dist/cjs/plugins/replication-appwrite/appwrite-helpers.js.map +1 -0
  145. package/dist/cjs/plugins/replication-appwrite/appwrite-types.js +2 -0
  146. package/dist/cjs/plugins/replication-appwrite/appwrite-types.js.map +1 -0
  147. package/dist/cjs/plugins/replication-appwrite/index.js +176 -0
  148. package/dist/cjs/plugins/replication-appwrite/index.js.map +1 -0
  149. package/dist/cjs/plugins/replication-couchdb/couchdb-helper.js +77 -0
  150. package/dist/cjs/plugins/replication-couchdb/couchdb-helper.js.map +1 -0
  151. package/dist/cjs/plugins/replication-couchdb/couchdb-types.js +2 -0
  152. package/dist/cjs/plugins/replication-couchdb/couchdb-types.js.map +1 -0
  153. package/dist/cjs/plugins/replication-couchdb/index.js +287 -0
  154. package/dist/cjs/plugins/replication-couchdb/index.js.map +1 -0
  155. package/dist/cjs/plugins/replication-firestore/firestore-helper.js +61 -0
  156. package/dist/cjs/plugins/replication-firestore/firestore-helper.js.map +1 -0
  157. package/dist/cjs/plugins/replication-firestore/firestore-types.js +2 -0
  158. package/dist/cjs/plugins/replication-firestore/firestore-types.js.map +1 -0
  159. package/dist/cjs/plugins/replication-firestore/index.js +266 -0
  160. package/dist/cjs/plugins/replication-firestore/index.js.map +1 -0
  161. package/dist/cjs/plugins/replication-google-drive/document-handling.js +150 -0
  162. package/dist/cjs/plugins/replication-google-drive/document-handling.js.map +1 -0
  163. package/dist/cjs/plugins/replication-google-drive/downstream.js +73 -0
  164. package/dist/cjs/plugins/replication-google-drive/downstream.js.map +1 -0
  165. package/dist/cjs/plugins/replication-google-drive/google-drive-helper.js +349 -0
  166. package/dist/cjs/plugins/replication-google-drive/google-drive-helper.js.map +1 -0
  167. package/dist/cjs/plugins/replication-google-drive/google-drive-types.js +2 -0
  168. package/dist/cjs/plugins/replication-google-drive/google-drive-types.js.map +1 -0
  169. package/dist/cjs/plugins/replication-google-drive/index.js +233 -0
  170. package/dist/cjs/plugins/replication-google-drive/index.js.map +1 -0
  171. package/dist/cjs/plugins/replication-google-drive/init.js +76 -0
  172. package/dist/cjs/plugins/replication-google-drive/init.js.map +1 -0
  173. package/dist/cjs/plugins/replication-google-drive/multipart.js +74 -0
  174. package/dist/cjs/plugins/replication-google-drive/multipart.js.map +1 -0
  175. package/dist/cjs/plugins/replication-google-drive/signaling.js +262 -0
  176. package/dist/cjs/plugins/replication-google-drive/signaling.js.map +1 -0
  177. package/dist/cjs/plugins/replication-google-drive/transaction.js +134 -0
  178. package/dist/cjs/plugins/replication-google-drive/transaction.js.map +1 -0
  179. package/dist/cjs/plugins/replication-google-drive/upstream.js +182 -0
  180. package/dist/cjs/plugins/replication-google-drive/upstream.js.map +1 -0
  181. package/dist/cjs/plugins/replication-graphql/graphql-schema-from-rx-schema.js +235 -0
  182. package/dist/cjs/plugins/replication-graphql/graphql-schema-from-rx-schema.js.map +1 -0
  183. package/dist/cjs/plugins/replication-graphql/graphql-websocket.js +43 -0
  184. package/dist/cjs/plugins/replication-graphql/graphql-websocket.js.map +1 -0
  185. package/dist/cjs/plugins/replication-graphql/helper.js +29 -0
  186. package/dist/cjs/plugins/replication-graphql/helper.js.map +1 -0
  187. package/dist/cjs/plugins/replication-graphql/index.js +215 -0
  188. package/dist/cjs/plugins/replication-graphql/index.js.map +1 -0
  189. package/dist/cjs/plugins/replication-graphql/query-builder-from-rx-schema.js +141 -0
  190. package/dist/cjs/plugins/replication-graphql/query-builder-from-rx-schema.js.map +1 -0
  191. package/dist/cjs/plugins/replication-microsoft-onedrive/document-handling.js +187 -0
  192. package/dist/cjs/plugins/replication-microsoft-onedrive/document-handling.js.map +1 -0
  193. package/dist/cjs/plugins/replication-microsoft-onedrive/downstream.js +78 -0
  194. package/dist/cjs/plugins/replication-microsoft-onedrive/downstream.js.map +1 -0
  195. package/dist/cjs/plugins/replication-microsoft-onedrive/index.js +222 -0
  196. package/dist/cjs/plugins/replication-microsoft-onedrive/index.js.map +1 -0
  197. package/dist/cjs/plugins/replication-microsoft-onedrive/init.js +76 -0
  198. package/dist/cjs/plugins/replication-microsoft-onedrive/init.js.map +1 -0
  199. package/dist/cjs/plugins/replication-microsoft-onedrive/microsoft-onedrive-helper.js +273 -0
  200. package/dist/cjs/plugins/replication-microsoft-onedrive/microsoft-onedrive-helper.js.map +1 -0
  201. package/dist/cjs/plugins/replication-microsoft-onedrive/microsoft-onedrive-types.js +2 -0
  202. package/dist/cjs/plugins/replication-microsoft-onedrive/microsoft-onedrive-types.js.map +1 -0
  203. package/dist/cjs/plugins/replication-microsoft-onedrive/signaling.js +235 -0
  204. package/dist/cjs/plugins/replication-microsoft-onedrive/signaling.js.map +1 -0
  205. package/dist/cjs/plugins/replication-microsoft-onedrive/transaction.js +138 -0
  206. package/dist/cjs/plugins/replication-microsoft-onedrive/transaction.js.map +1 -0
  207. package/dist/cjs/plugins/replication-microsoft-onedrive/upstream.js +190 -0
  208. package/dist/cjs/plugins/replication-microsoft-onedrive/upstream.js.map +1 -0
  209. package/dist/cjs/plugins/replication-mongodb/index.js +229 -0
  210. package/dist/cjs/plugins/replication-mongodb/index.js.map +1 -0
  211. package/dist/cjs/plugins/replication-mongodb/mongodb-checkpoint.js +140 -0
  212. package/dist/cjs/plugins/replication-mongodb/mongodb-checkpoint.js.map +1 -0
  213. package/dist/cjs/plugins/replication-mongodb/mongodb-helper.js +53 -0
  214. package/dist/cjs/plugins/replication-mongodb/mongodb-helper.js.map +1 -0
  215. package/dist/cjs/plugins/replication-mongodb/mongodb-types.js +2 -0
  216. package/dist/cjs/plugins/replication-mongodb/mongodb-types.js.map +1 -0
  217. package/dist/cjs/plugins/replication-nats/index.js +232 -0
  218. package/dist/cjs/plugins/replication-nats/index.js.map +1 -0
  219. package/dist/cjs/plugins/replication-nats/nats-helper.js +13 -0
  220. package/dist/cjs/plugins/replication-nats/nats-helper.js.map +1 -0
  221. package/dist/cjs/plugins/replication-nats/nats-types.js +2 -0
  222. package/dist/cjs/plugins/replication-nats/nats-types.js.map +1 -0
  223. package/dist/cjs/plugins/replication-supabase/helper.js +42 -0
  224. package/dist/cjs/plugins/replication-supabase/helper.js.map +1 -0
  225. package/dist/cjs/plugins/replication-supabase/index.js +239 -0
  226. package/dist/cjs/plugins/replication-supabase/index.js.map +1 -0
  227. package/dist/cjs/plugins/replication-supabase/types.js +2 -0
  228. package/dist/cjs/plugins/replication-supabase/types.js.map +1 -0
  229. package/dist/cjs/plugins/replication-webrtc/connection-handler-p2pcf.js +79 -0
  230. package/dist/cjs/plugins/replication-webrtc/connection-handler-p2pcf.js.map +1 -0
  231. package/dist/cjs/plugins/replication-webrtc/connection-handler-simple-peer.js +199 -0
  232. package/dist/cjs/plugins/replication-webrtc/connection-handler-simple-peer.js.map +1 -0
  233. package/dist/cjs/plugins/replication-webrtc/connection-handler-webtorrent.js +137 -0
  234. package/dist/cjs/plugins/replication-webrtc/connection-handler-webtorrent.js.map +1 -0
  235. package/dist/cjs/plugins/replication-webrtc/index.js +260 -0
  236. package/dist/cjs/plugins/replication-webrtc/index.js.map +1 -0
  237. package/dist/cjs/plugins/replication-webrtc/signaling-server.js +151 -0
  238. package/dist/cjs/plugins/replication-webrtc/signaling-server.js.map +1 -0
  239. package/dist/cjs/plugins/replication-webrtc/webrtc-helper.js +32 -0
  240. package/dist/cjs/plugins/replication-webrtc/webrtc-helper.js.map +1 -0
  241. package/dist/cjs/plugins/replication-webrtc/webrtc-types.js +2 -0
  242. package/dist/cjs/plugins/replication-webrtc/webrtc-types.js.map +1 -0
  243. package/dist/cjs/plugins/replication-websocket/index.js +39 -0
  244. package/dist/cjs/plugins/replication-websocket/index.js.map +1 -0
  245. package/dist/cjs/plugins/replication-websocket/websocket-client.js +133 -0
  246. package/dist/cjs/plugins/replication-websocket/websocket-client.js.map +1 -0
  247. package/dist/cjs/plugins/replication-websocket/websocket-server.js +108 -0
  248. package/dist/cjs/plugins/replication-websocket/websocket-server.js.map +1 -0
  249. package/dist/cjs/plugins/replication-websocket/websocket-types.js +2 -0
  250. package/dist/cjs/plugins/replication-websocket/websocket-types.js.map +1 -0
  251. package/dist/cjs/plugins/state/helpers.js +81 -0
  252. package/dist/cjs/plugins/state/helpers.js.map +1 -0
  253. package/dist/cjs/plugins/state/index.js +42 -0
  254. package/dist/cjs/plugins/state/index.js.map +1 -0
  255. package/dist/cjs/plugins/state/rx-state.js +293 -0
  256. package/dist/cjs/plugins/state/rx-state.js.map +1 -0
  257. package/dist/cjs/plugins/state/types.js +2 -0
  258. package/dist/cjs/plugins/state/types.js.map +1 -0
  259. package/dist/cjs/plugins/storage-denokv/denokv-helper.js +49 -0
  260. package/dist/cjs/plugins/storage-denokv/denokv-helper.js.map +1 -0
  261. package/dist/cjs/plugins/storage-denokv/denokv-query.js +99 -0
  262. package/dist/cjs/plugins/storage-denokv/denokv-query.js.map +1 -0
  263. package/dist/cjs/plugins/storage-denokv/denokv-types.js +2 -0
  264. package/dist/cjs/plugins/storage-denokv/denokv-types.js.map +1 -0
  265. package/dist/cjs/plugins/storage-denokv/index.js +31 -0
  266. package/dist/cjs/plugins/storage-denokv/index.js.map +1 -0
  267. package/dist/cjs/plugins/storage-denokv/rx-storage-instance-denokv.js +332 -0
  268. package/dist/cjs/plugins/storage-denokv/rx-storage-instance-denokv.js.map +1 -0
  269. package/dist/cjs/plugins/storage-dexie/dexie-helper.js +259 -0
  270. package/dist/cjs/plugins/storage-dexie/dexie-helper.js.map +1 -0
  271. package/dist/cjs/plugins/storage-dexie/dexie-query.js +178 -0
  272. package/dist/cjs/plugins/storage-dexie/dexie-query.js.map +1 -0
  273. package/dist/cjs/plugins/storage-dexie/index.js +50 -0
  274. package/dist/cjs/plugins/storage-dexie/index.js.map +1 -0
  275. package/dist/cjs/plugins/storage-dexie/rx-storage-dexie.js +46 -0
  276. package/dist/cjs/plugins/storage-dexie/rx-storage-dexie.js.map +1 -0
  277. package/dist/cjs/plugins/storage-dexie/rx-storage-instance-dexie.js +229 -0
  278. package/dist/cjs/plugins/storage-dexie/rx-storage-instance-dexie.js.map +1 -0
  279. package/dist/cjs/plugins/storage-foundationdb/foundationdb-helpers.js +13 -0
  280. package/dist/cjs/plugins/storage-foundationdb/foundationdb-helpers.js.map +1 -0
  281. package/dist/cjs/plugins/storage-foundationdb/foundationdb-query.js +96 -0
  282. package/dist/cjs/plugins/storage-foundationdb/foundationdb-query.js.map +1 -0
  283. package/dist/cjs/plugins/storage-foundationdb/foundationdb-types.js +2 -0
  284. package/dist/cjs/plugins/storage-foundationdb/foundationdb-types.js.map +1 -0
  285. package/dist/cjs/plugins/storage-foundationdb/index.js +62 -0
  286. package/dist/cjs/plugins/storage-foundationdb/index.js.map +1 -0
  287. package/dist/cjs/plugins/storage-foundationdb/rx-storage-instance-foundationdb.js +309 -0
  288. package/dist/cjs/plugins/storage-foundationdb/rx-storage-instance-foundationdb.js.map +1 -0
  289. package/dist/cjs/plugins/storage-localstorage/index.js +45 -0
  290. package/dist/cjs/plugins/storage-localstorage/index.js.map +1 -0
  291. package/dist/cjs/plugins/storage-localstorage/localstorage-mock.js +38 -0
  292. package/dist/cjs/plugins/storage-localstorage/localstorage-mock.js.map +1 -0
  293. package/dist/cjs/plugins/storage-localstorage/rx-storage-instance-localstorage.js +443 -0
  294. package/dist/cjs/plugins/storage-localstorage/rx-storage-instance-localstorage.js.map +1 -0
  295. package/dist/cjs/plugins/storage-memory/binary-search-bounds.js +113 -0
  296. package/dist/cjs/plugins/storage-memory/binary-search-bounds.js.map +1 -0
  297. package/dist/cjs/plugins/storage-memory/index.js +91 -0
  298. package/dist/cjs/plugins/storage-memory/index.js.map +1 -0
  299. package/dist/cjs/plugins/storage-memory/memory-helper.js +177 -0
  300. package/dist/cjs/plugins/storage-memory/memory-helper.js.map +1 -0
  301. package/dist/cjs/plugins/storage-memory/memory-indexes.js +28 -0
  302. package/dist/cjs/plugins/storage-memory/memory-indexes.js.map +1 -0
  303. package/dist/cjs/plugins/storage-memory/memory-types.js +2 -0
  304. package/dist/cjs/plugins/storage-memory/memory-types.js.map +1 -0
  305. package/dist/cjs/plugins/storage-memory/rx-storage-instance-memory.js +371 -0
  306. package/dist/cjs/plugins/storage-memory/rx-storage-instance-memory.js.map +1 -0
  307. package/dist/cjs/plugins/storage-mongodb/index.js +50 -0
  308. package/dist/cjs/plugins/storage-mongodb/index.js.map +1 -0
  309. package/dist/cjs/plugins/storage-mongodb/mongodb-helper.js +97 -0
  310. package/dist/cjs/plugins/storage-mongodb/mongodb-helper.js.map +1 -0
  311. package/dist/cjs/plugins/storage-mongodb/mongodb-types.js +2 -0
  312. package/dist/cjs/plugins/storage-mongodb/mongodb-types.js.map +1 -0
  313. package/dist/cjs/plugins/storage-mongodb/rx-storage-instance-mongodb.js +324 -0
  314. package/dist/cjs/plugins/storage-mongodb/rx-storage-instance-mongodb.js.map +1 -0
  315. package/dist/cjs/plugins/storage-mongodb/rx-storage-mongodb.js +29 -0
  316. package/dist/cjs/plugins/storage-mongodb/rx-storage-mongodb.js.map +1 -0
  317. package/dist/cjs/plugins/storage-remote/index.js +61 -0
  318. package/dist/cjs/plugins/storage-remote/index.js.map +1 -0
  319. package/dist/cjs/plugins/storage-remote/message-channel-cache.js +52 -0
  320. package/dist/cjs/plugins/storage-remote/message-channel-cache.js.map +1 -0
  321. package/dist/cjs/plugins/storage-remote/remote.js +217 -0
  322. package/dist/cjs/plugins/storage-remote/remote.js.map +1 -0
  323. package/dist/cjs/plugins/storage-remote/rx-storage-remote.js +199 -0
  324. package/dist/cjs/plugins/storage-remote/rx-storage-remote.js.map +1 -0
  325. package/dist/cjs/plugins/storage-remote/storage-remote-helpers.js +25 -0
  326. package/dist/cjs/plugins/storage-remote/storage-remote-helpers.js.map +1 -0
  327. package/dist/cjs/plugins/storage-remote/storage-remote-types.js +2 -0
  328. package/dist/cjs/plugins/storage-remote/storage-remote-types.js.map +1 -0
  329. package/dist/cjs/plugins/storage-remote-websocket/index.js +183 -0
  330. package/dist/cjs/plugins/storage-remote-websocket/index.js.map +1 -0
  331. package/dist/cjs/plugins/storage-remote-websocket/types.js +2 -0
  332. package/dist/cjs/plugins/storage-remote-websocket/types.js.map +1 -0
  333. package/dist/cjs/plugins/storage-sqlite/index.js +84 -0
  334. package/dist/cjs/plugins/storage-sqlite/index.js.map +1 -0
  335. package/dist/cjs/plugins/storage-sqlite/sqlite-basics-helpers.js +530 -0
  336. package/dist/cjs/plugins/storage-sqlite/sqlite-basics-helpers.js.map +1 -0
  337. package/dist/cjs/plugins/storage-sqlite/sqlite-helpers.js +203 -0
  338. package/dist/cjs/plugins/storage-sqlite/sqlite-helpers.js.map +1 -0
  339. package/dist/cjs/plugins/storage-sqlite/sqlite-storage-instance.js +291 -0
  340. package/dist/cjs/plugins/storage-sqlite/sqlite-storage-instance.js.map +1 -0
  341. package/dist/cjs/plugins/storage-sqlite/sqlite-types.js +2 -0
  342. package/dist/cjs/plugins/storage-sqlite/sqlite-types.js.map +1 -0
  343. package/dist/cjs/plugins/test-utils/config.js +120 -0
  344. package/dist/cjs/plugins/test-utils/config.js.map +1 -0
  345. package/dist/cjs/plugins/test-utils/humans-collection.js +420 -0
  346. package/dist/cjs/plugins/test-utils/humans-collection.js.map +1 -0
  347. package/dist/cjs/plugins/test-utils/index.js +130 -0
  348. package/dist/cjs/plugins/test-utils/index.js.map +1 -0
  349. package/dist/cjs/plugins/test-utils/performance.js +275 -0
  350. package/dist/cjs/plugins/test-utils/performance.js.map +1 -0
  351. package/dist/cjs/plugins/test-utils/replication-base-test-suite.js +179 -0
  352. package/dist/cjs/plugins/test-utils/replication-base-test-suite.js.map +1 -0
  353. package/dist/cjs/plugins/test-utils/replication.js +54 -0
  354. package/dist/cjs/plugins/test-utils/replication.js.map +1 -0
  355. package/dist/cjs/plugins/test-utils/revisions.js +11 -0
  356. package/dist/cjs/plugins/test-utils/revisions.js.map +1 -0
  357. package/dist/cjs/plugins/test-utils/schema-objects.js +315 -0
  358. package/dist/cjs/plugins/test-utils/schema-objects.js.map +1 -0
  359. package/dist/cjs/plugins/test-utils/schemas.js +1254 -0
  360. package/dist/cjs/plugins/test-utils/schemas.js.map +1 -0
  361. package/dist/cjs/plugins/test-utils/test-util.js +72 -0
  362. package/dist/cjs/plugins/test-utils/test-util.js.map +1 -0
  363. package/dist/cjs/plugins/update/index.js +45 -0
  364. package/dist/cjs/plugins/update/index.js.map +1 -0
  365. package/dist/cjs/plugins/update/mingo-updater.js +20 -0
  366. package/dist/cjs/plugins/update/mingo-updater.js.map +1 -0
  367. package/dist/cjs/plugins/utils/index.js +226 -0
  368. package/dist/cjs/plugins/utils/index.js.map +1 -0
  369. package/dist/cjs/plugins/utils/utils-array.js +150 -0
  370. package/dist/cjs/plugins/utils/utils-array.js.map +1 -0
  371. package/dist/cjs/plugins/utils/utils-base64.js +57 -0
  372. package/dist/cjs/plugins/utils/utils-base64.js.map +1 -0
  373. package/dist/cjs/plugins/utils/utils-blob.js +62 -0
  374. package/dist/cjs/plugins/utils/utils-blob.js.map +1 -0
  375. package/dist/cjs/plugins/utils/utils-document.js +100 -0
  376. package/dist/cjs/plugins/utils/utils-document.js.map +1 -0
  377. package/dist/cjs/plugins/utils/utils-error.js +42 -0
  378. package/dist/cjs/plugins/utils/utils-error.js.map +1 -0
  379. package/dist/cjs/plugins/utils/utils-global.js +12 -0
  380. package/dist/cjs/plugins/utils/utils-global.js.map +1 -0
  381. package/dist/cjs/plugins/utils/utils-hash.js +59 -0
  382. package/dist/cjs/plugins/utils/utils-hash.js.map +1 -0
  383. package/dist/cjs/plugins/utils/utils-map.js +25 -0
  384. package/dist/cjs/plugins/utils/utils-map.js.map +1 -0
  385. package/dist/cjs/plugins/utils/utils-number.js +16 -0
  386. package/dist/cjs/plugins/utils/utils-number.js.map +1 -0
  387. package/dist/cjs/plugins/utils/utils-object-deep-equal.js +42 -0
  388. package/dist/cjs/plugins/utils/utils-object-deep-equal.js.map +1 -0
  389. package/dist/cjs/plugins/utils/utils-object-dot-prop.js +306 -0
  390. package/dist/cjs/plugins/utils/utils-object-dot-prop.js.map +1 -0
  391. package/dist/cjs/plugins/utils/utils-object.js +245 -0
  392. package/dist/cjs/plugins/utils/utils-object.js.map +1 -0
  393. package/dist/cjs/plugins/utils/utils-other.js +69 -0
  394. package/dist/cjs/plugins/utils/utils-other.js.map +1 -0
  395. package/dist/cjs/plugins/utils/utils-premium.js +37 -0
  396. package/dist/cjs/plugins/utils/utils-premium.js.map +1 -0
  397. package/dist/cjs/plugins/utils/utils-promise.js +149 -0
  398. package/dist/cjs/plugins/utils/utils-promise.js.map +1 -0
  399. package/dist/cjs/plugins/utils/utils-regex.js +9 -0
  400. package/dist/cjs/plugins/utils/utils-regex.js.map +1 -0
  401. package/dist/cjs/plugins/utils/utils-revision.js +60 -0
  402. package/dist/cjs/plugins/utils/utils-revision.js.map +1 -0
  403. package/dist/cjs/plugins/utils/utils-rxdb-version.js +11 -0
  404. package/dist/cjs/plugins/utils/utils-rxdb-version.js.map +1 -0
  405. package/dist/cjs/plugins/utils/utils-rxdb-version.template.js +11 -0
  406. package/dist/cjs/plugins/utils/utils-rxdb-version.template.js.map +1 -0
  407. package/dist/cjs/plugins/utils/utils-string.js +97 -0
  408. package/dist/cjs/plugins/utils/utils-string.js.map +1 -0
  409. package/dist/cjs/plugins/utils/utils-time.js +42 -0
  410. package/dist/cjs/plugins/utils/utils-time.js.map +1 -0
  411. package/dist/cjs/plugins/validate-ajv/index.js +53 -0
  412. package/dist/cjs/plugins/validate-ajv/index.js.map +1 -0
  413. package/dist/cjs/plugins/validate-is-my-json-valid/index.js +29 -0
  414. package/dist/cjs/plugins/validate-is-my-json-valid/index.js.map +1 -0
  415. package/dist/cjs/plugins/validate-z-schema/index.js +58 -0
  416. package/dist/cjs/plugins/validate-z-schema/index.js.map +1 -0
  417. package/dist/cjs/plugins/vector/helper.js +2 -0
  418. package/dist/cjs/plugins/vector/helper.js.map +1 -0
  419. package/dist/cjs/plugins/vector/index.js +17 -0
  420. package/dist/cjs/plugins/vector/index.js.map +1 -0
  421. package/dist/cjs/plugins/vector/types.js +2 -0
  422. package/dist/cjs/plugins/vector/types.js.map +1 -0
  423. package/dist/cjs/plugins/vector/vector-distance.js +38 -0
  424. package/dist/cjs/plugins/vector/vector-distance.js.map +1 -0
  425. package/dist/cjs/plugins/webmcp/index.js +28 -0
  426. package/dist/cjs/plugins/webmcp/index.js.map +1 -0
  427. package/dist/cjs/plugins/webmcp/nosql-query-schema.js +360 -0
  428. package/dist/cjs/plugins/webmcp/nosql-query-schema.js.map +1 -0
  429. package/dist/cjs/plugins/webmcp/webmcp.js +315 -0
  430. package/dist/cjs/plugins/webmcp/webmcp.js.map +1 -0
  431. package/dist/cjs/query-cache.js +110 -0
  432. package/dist/cjs/query-cache.js.map +1 -0
  433. package/dist/cjs/query-planner.js +307 -0
  434. package/dist/cjs/query-planner.js.map +1 -0
  435. package/dist/cjs/replication-protocol/checkpoint.js +103 -0
  436. package/dist/cjs/replication-protocol/checkpoint.js.map +1 -0
  437. package/dist/cjs/replication-protocol/conflicts.js +36 -0
  438. package/dist/cjs/replication-protocol/conflicts.js.map +1 -0
  439. package/dist/cjs/replication-protocol/default-conflict-handler.js +39 -0
  440. package/dist/cjs/replication-protocol/default-conflict-handler.js.map +1 -0
  441. package/dist/cjs/replication-protocol/downstream.js +339 -0
  442. package/dist/cjs/replication-protocol/downstream.js.map +1 -0
  443. package/dist/cjs/replication-protocol/helper.js +58 -0
  444. package/dist/cjs/replication-protocol/helper.js.map +1 -0
  445. package/dist/cjs/replication-protocol/index.js +314 -0
  446. package/dist/cjs/replication-protocol/index.js.map +1 -0
  447. package/dist/cjs/replication-protocol/meta-instance.js +130 -0
  448. package/dist/cjs/replication-protocol/meta-instance.js.map +1 -0
  449. package/dist/cjs/replication-protocol/upstream.js +384 -0
  450. package/dist/cjs/replication-protocol/upstream.js.map +1 -0
  451. package/dist/cjs/rx-change-event.js +112 -0
  452. package/dist/cjs/rx-change-event.js.map +1 -0
  453. package/dist/cjs/rx-collection-helper.js +205 -0
  454. package/dist/cjs/rx-collection-helper.js.map +1 -0
  455. package/dist/cjs/rx-collection.js +931 -0
  456. package/dist/cjs/rx-collection.js.map +1 -0
  457. package/dist/cjs/rx-database-internal-store.js +283 -0
  458. package/dist/cjs/rx-database-internal-store.js.map +1 -0
  459. package/dist/cjs/rx-database.js +682 -0
  460. package/dist/cjs/rx-database.js.map +1 -0
  461. package/dist/cjs/rx-document-prototype-merge.js +87 -0
  462. package/dist/cjs/rx-document-prototype-merge.js.map +1 -0
  463. package/dist/cjs/rx-document.js +404 -0
  464. package/dist/cjs/rx-document.js.map +1 -0
  465. package/dist/cjs/rx-error.js +167 -0
  466. package/dist/cjs/rx-error.js.map +1 -0
  467. package/dist/cjs/rx-query-helper.js +277 -0
  468. package/dist/cjs/rx-query-helper.js.map +1 -0
  469. package/dist/cjs/rx-query-mingo.js +60 -0
  470. package/dist/cjs/rx-query-mingo.js.map +1 -0
  471. package/dist/cjs/rx-query-single-result.js +105 -0
  472. package/dist/cjs/rx-query-single-result.js.map +1 -0
  473. package/dist/cjs/rx-query.js +703 -0
  474. package/dist/cjs/rx-query.js.map +1 -0
  475. package/dist/cjs/rx-schema-helper.js +333 -0
  476. package/dist/cjs/rx-schema-helper.js.map +1 -0
  477. package/dist/cjs/rx-schema.js +189 -0
  478. package/dist/cjs/rx-schema.js.map +1 -0
  479. package/dist/cjs/rx-storage-helper.js +808 -0
  480. package/dist/cjs/rx-storage-helper.js.map +1 -0
  481. package/dist/cjs/rx-storage-multiinstance.js +121 -0
  482. package/dist/cjs/rx-storage-multiinstance.js.map +1 -0
  483. package/dist/cjs/types/conflict-handling.d.js +2 -0
  484. package/dist/cjs/types/conflict-handling.d.js.map +1 -0
  485. package/dist/cjs/types/couchdb.d.js +2 -0
  486. package/dist/cjs/types/couchdb.d.js.map +1 -0
  487. package/dist/cjs/types/index.d.js +2 -0
  488. package/dist/cjs/types/index.d.js.map +1 -0
  489. package/dist/cjs/types/modules/index.d.js +2 -0
  490. package/dist/cjs/types/modules/index.d.js.map +1 -0
  491. package/dist/cjs/types/modules/mocha.parallel.d.js +2 -0
  492. package/dist/cjs/types/modules/mocha.parallel.d.js.map +1 -0
  493. package/dist/cjs/types/plugins/backup.d.js +2 -0
  494. package/dist/cjs/types/plugins/backup.d.js.map +1 -0
  495. package/dist/cjs/types/plugins/cleanup.d.js +2 -0
  496. package/dist/cjs/types/plugins/cleanup.d.js.map +1 -0
  497. package/dist/cjs/types/plugins/crdt.d.js +2 -0
  498. package/dist/cjs/types/plugins/crdt.d.js.map +1 -0
  499. package/dist/cjs/types/plugins/dexie.d.js +2 -0
  500. package/dist/cjs/types/plugins/dexie.d.js.map +1 -0
  501. package/dist/cjs/types/plugins/local-documents.d.js +2 -0
  502. package/dist/cjs/types/plugins/local-documents.d.js.map +1 -0
  503. package/dist/cjs/types/plugins/migration.d.js +2 -0
  504. package/dist/cjs/types/plugins/migration.d.js.map +1 -0
  505. package/dist/cjs/types/plugins/reactivity.d.js +2 -0
  506. package/dist/cjs/types/plugins/reactivity.d.js.map +1 -0
  507. package/dist/cjs/types/plugins/replication-graphql.d.js +2 -0
  508. package/dist/cjs/types/plugins/replication-graphql.d.js.map +1 -0
  509. package/dist/cjs/types/plugins/replication.d.js +2 -0
  510. package/dist/cjs/types/plugins/replication.d.js.map +1 -0
  511. package/dist/cjs/types/plugins/state.d.js +2 -0
  512. package/dist/cjs/types/plugins/state.d.js.map +1 -0
  513. package/dist/cjs/types/plugins/update.d.js +2 -0
  514. package/dist/cjs/types/plugins/update.d.js.map +1 -0
  515. package/dist/cjs/types/plugins/webmcp.d.js +2 -0
  516. package/dist/cjs/types/plugins/webmcp.d.js.map +1 -0
  517. package/dist/cjs/types/query-planner.d.js +2 -0
  518. package/dist/cjs/types/query-planner.d.js.map +1 -0
  519. package/dist/cjs/types/replication-protocol.d.js +2 -0
  520. package/dist/cjs/types/replication-protocol.d.js.map +1 -0
  521. package/dist/cjs/types/rx-attachment.d.js +2 -0
  522. package/dist/cjs/types/rx-attachment.d.js.map +1 -0
  523. package/dist/cjs/types/rx-change-event.d.js +2 -0
  524. package/dist/cjs/types/rx-change-event.d.js.map +1 -0
  525. package/dist/cjs/types/rx-collection.d.js +2 -0
  526. package/dist/cjs/types/rx-collection.d.js.map +1 -0
  527. package/dist/cjs/types/rx-database-internal-store.d.js +2 -0
  528. package/dist/cjs/types/rx-database-internal-store.d.js.map +1 -0
  529. package/dist/cjs/types/rx-database.d.js +2 -0
  530. package/dist/cjs/types/rx-database.d.js.map +1 -0
  531. package/dist/cjs/types/rx-document.d.js +2 -0
  532. package/dist/cjs/types/rx-document.d.js.map +1 -0
  533. package/dist/cjs/types/rx-error.d.js +2 -0
  534. package/dist/cjs/types/rx-error.d.js.map +1 -0
  535. package/dist/cjs/types/rx-plugin.d.js +2 -0
  536. package/dist/cjs/types/rx-plugin.d.js.map +1 -0
  537. package/dist/cjs/types/rx-query.d.js +2 -0
  538. package/dist/cjs/types/rx-query.d.js.map +1 -0
  539. package/dist/cjs/types/rx-schema.d.js +2 -0
  540. package/dist/cjs/types/rx-schema.d.js.map +1 -0
  541. package/dist/cjs/types/rx-storage.d.js +2 -0
  542. package/dist/cjs/types/rx-storage.d.js.map +1 -0
  543. package/dist/cjs/types/rx-storage.interface.d.js +2 -0
  544. package/dist/cjs/types/rx-storage.interface.d.js.map +1 -0
  545. package/dist/cjs/types/util.d.js +2 -0
  546. package/dist/cjs/types/util.d.js.map +1 -0
  547. package/dist/esm/change-event-buffer.js +141 -0
  548. package/dist/esm/change-event-buffer.js.map +1 -0
  549. package/dist/esm/custom-index.js +271 -0
  550. package/dist/esm/custom-index.js.map +1 -0
  551. package/dist/esm/doc-cache.js +227 -0
  552. package/dist/esm/doc-cache.js.map +1 -0
  553. package/dist/esm/event-reduce.js +93 -0
  554. package/dist/esm/event-reduce.js.map +1 -0
  555. package/dist/esm/hooks.js +122 -0
  556. package/dist/esm/hooks.js.map +1 -0
  557. package/dist/esm/incremental-write.js +161 -0
  558. package/dist/esm/incremental-write.js.map +1 -0
  559. package/dist/esm/index.js +30 -0
  560. package/dist/esm/index.js.map +1 -0
  561. package/dist/esm/overwritable.js +33 -0
  562. package/dist/esm/overwritable.js.map +1 -0
  563. package/dist/esm/package.json +1 -0
  564. package/dist/esm/plugin-helpers.js +217 -0
  565. package/dist/esm/plugin-helpers.js.map +1 -0
  566. package/dist/esm/plugin.js +88 -0
  567. package/dist/esm/plugin.js.map +1 -0
  568. package/dist/esm/plugins/attachments/attachments-utils.js +41 -0
  569. package/dist/esm/plugins/attachments/attachments-utils.js.map +1 -0
  570. package/dist/esm/plugins/attachments/index.js +202 -0
  571. package/dist/esm/plugins/attachments/index.js.map +1 -0
  572. package/dist/esm/plugins/attachments-compression/index.js +134 -0
  573. package/dist/esm/plugins/attachments-compression/index.js.map +1 -0
  574. package/dist/esm/plugins/backup/file-util.js +87 -0
  575. package/dist/esm/plugins/backup/file-util.js.map +1 -0
  576. package/dist/esm/plugins/backup/index.js +183 -0
  577. package/dist/esm/plugins/backup/index.js.map +1 -0
  578. package/dist/esm/plugins/cleanup/cleanup-helper.js +11 -0
  579. package/dist/esm/plugins/cleanup/cleanup-helper.js.map +1 -0
  580. package/dist/esm/plugins/cleanup/cleanup-state.js +75 -0
  581. package/dist/esm/plugins/cleanup/cleanup-state.js.map +1 -0
  582. package/dist/esm/plugins/cleanup/cleanup.js +108 -0
  583. package/dist/esm/plugins/cleanup/cleanup.js.map +1 -0
  584. package/dist/esm/plugins/cleanup/index.js +35 -0
  585. package/dist/esm/plugins/cleanup/index.js.map +1 -0
  586. package/dist/esm/plugins/crdt/index.js +378 -0
  587. package/dist/esm/plugins/crdt/index.js.map +1 -0
  588. package/dist/esm/plugins/dev-mode/check-document.js +150 -0
  589. package/dist/esm/plugins/dev-mode/check-document.js.map +1 -0
  590. package/dist/esm/plugins/dev-mode/check-migration-strategies.js +38 -0
  591. package/dist/esm/plugins/dev-mode/check-migration-strategies.js.map +1 -0
  592. package/dist/esm/plugins/dev-mode/check-orm.js +47 -0
  593. package/dist/esm/plugins/dev-mode/check-orm.js.map +1 -0
  594. package/dist/esm/plugins/dev-mode/check-query.js +174 -0
  595. package/dist/esm/plugins/dev-mode/check-query.js.map +1 -0
  596. package/dist/esm/plugins/dev-mode/check-schema.js +478 -0
  597. package/dist/esm/plugins/dev-mode/check-schema.js.map +1 -0
  598. package/dist/esm/plugins/dev-mode/dev-mode-tracking.js +87 -0
  599. package/dist/esm/plugins/dev-mode/dev-mode-tracking.js.map +1 -0
  600. package/dist/esm/plugins/dev-mode/entity-properties.js +49 -0
  601. package/dist/esm/plugins/dev-mode/entity-properties.js.map +1 -0
  602. package/dist/esm/plugins/dev-mode/error-messages.js +1289 -0
  603. package/dist/esm/plugins/dev-mode/error-messages.js.map +1 -0
  604. package/dist/esm/plugins/dev-mode/index.js +151 -0
  605. package/dist/esm/plugins/dev-mode/index.js.map +1 -0
  606. package/dist/esm/plugins/dev-mode/unallowed-properties.js +81 -0
  607. package/dist/esm/plugins/dev-mode/unallowed-properties.js.map +1 -0
  608. package/dist/esm/plugins/electron/electron-helper.js +3 -0
  609. package/dist/esm/plugins/electron/electron-helper.js.map +1 -0
  610. package/dist/esm/plugins/electron/index.js +4 -0
  611. package/dist/esm/plugins/electron/index.js.map +1 -0
  612. package/dist/esm/plugins/electron/rx-storage-ipc-main.js +39 -0
  613. package/dist/esm/plugins/electron/rx-storage-ipc-main.js.map +1 -0
  614. package/dist/esm/plugins/electron/rx-storage-ipc-renderer.js +31 -0
  615. package/dist/esm/plugins/electron/rx-storage-ipc-renderer.js.map +1 -0
  616. package/dist/esm/plugins/encryption-crypto-js/index.js +154 -0
  617. package/dist/esm/plugins/encryption-crypto-js/index.js.map +1 -0
  618. package/dist/esm/plugins/flutter/index.js +55 -0
  619. package/dist/esm/plugins/flutter/index.js.map +1 -0
  620. package/dist/esm/plugins/json-dump/index.js +87 -0
  621. package/dist/esm/plugins/json-dump/index.js.map +1 -0
  622. package/dist/esm/plugins/key-compression/index.js +127 -0
  623. package/dist/esm/plugins/key-compression/index.js.map +1 -0
  624. package/dist/esm/plugins/leader-election/index.js +95 -0
  625. package/dist/esm/plugins/leader-election/index.js.map +1 -0
  626. package/dist/esm/plugins/local-documents/index.js +70 -0
  627. package/dist/esm/plugins/local-documents/index.js.map +1 -0
  628. package/dist/esm/plugins/local-documents/local-documents-helper.js +67 -0
  629. package/dist/esm/plugins/local-documents/local-documents-helper.js.map +1 -0
  630. package/dist/esm/plugins/local-documents/local-documents.js +99 -0
  631. package/dist/esm/plugins/local-documents/local-documents.js.map +1 -0
  632. package/dist/esm/plugins/local-documents/rx-local-document.js +248 -0
  633. package/dist/esm/plugins/local-documents/rx-local-document.js.map +1 -0
  634. package/dist/esm/plugins/migration-schema/index.js +42 -0
  635. package/dist/esm/plugins/migration-schema/index.js.map +1 -0
  636. package/dist/esm/plugins/migration-schema/migration-helpers.js +103 -0
  637. package/dist/esm/plugins/migration-schema/migration-helpers.js.map +1 -0
  638. package/dist/esm/plugins/migration-schema/migration-types.js +3 -0
  639. package/dist/esm/plugins/migration-schema/migration-types.js.map +1 -0
  640. package/dist/esm/plugins/migration-schema/rx-migration-state.js +404 -0
  641. package/dist/esm/plugins/migration-schema/rx-migration-state.js.map +1 -0
  642. package/dist/esm/plugins/migration-storage/index.js +166 -0
  643. package/dist/esm/plugins/migration-storage/index.js.map +1 -0
  644. package/dist/esm/plugins/pipeline/flagged-functions.js +122 -0
  645. package/dist/esm/plugins/pipeline/flagged-functions.js.map +1 -0
  646. package/dist/esm/plugins/pipeline/index.js +13 -0
  647. package/dist/esm/plugins/pipeline/index.js.map +1 -0
  648. package/dist/esm/plugins/pipeline/rx-pipeline.js +210 -0
  649. package/dist/esm/plugins/pipeline/rx-pipeline.js.map +1 -0
  650. package/dist/esm/plugins/pipeline/types.js +3 -0
  651. package/dist/esm/plugins/pipeline/types.js.map +1 -0
  652. package/dist/esm/plugins/query-builder/index.js +48 -0
  653. package/dist/esm/plugins/query-builder/index.js.map +1 -0
  654. package/dist/esm/plugins/query-builder/mquery/mquery-utils.js +33 -0
  655. package/dist/esm/plugins/query-builder/mquery/mquery-utils.js.map +1 -0
  656. package/dist/esm/plugins/query-builder/mquery/nosql-query-builder.js +478 -0
  657. package/dist/esm/plugins/query-builder/mquery/nosql-query-builder.js.map +1 -0
  658. package/dist/esm/plugins/react/database-context.js +8 -0
  659. package/dist/esm/plugins/react/database-context.js.map +1 -0
  660. package/dist/esm/plugins/react/database-provider.js +34 -0
  661. package/dist/esm/plugins/react/database-provider.js.map +1 -0
  662. package/dist/esm/plugins/react/hooks/index.js +5 -0
  663. package/dist/esm/plugins/react/hooks/index.js.map +1 -0
  664. package/dist/esm/plugins/react/hooks/use-live-rx-query.js +22 -0
  665. package/dist/esm/plugins/react/hooks/use-live-rx-query.js.map +1 -0
  666. package/dist/esm/plugins/react/hooks/use-rx-collection.js +34 -0
  667. package/dist/esm/plugins/react/hooks/use-rx-collection.js.map +1 -0
  668. package/dist/esm/plugins/react/hooks/use-rx-database.js +19 -0
  669. package/dist/esm/plugins/react/hooks/use-rx-database.js.map +1 -0
  670. package/dist/esm/plugins/react/hooks/use-rx-query.js +92 -0
  671. package/dist/esm/plugins/react/hooks/use-rx-query.js.map +1 -0
  672. package/dist/esm/plugins/react/index.js +3 -0
  673. package/dist/esm/plugins/react/index.js.map +1 -0
  674. package/dist/esm/plugins/reactivity-angular/index.js +25 -0
  675. package/dist/esm/plugins/reactivity-angular/index.js.map +1 -0
  676. package/dist/esm/plugins/reactivity-preact-signals/index.js +62 -0
  677. package/dist/esm/plugins/reactivity-preact-signals/index.js.map +1 -0
  678. package/dist/esm/plugins/reactivity-vue/index.js +27 -0
  679. package/dist/esm/plugins/reactivity-vue/index.js.map +1 -0
  680. package/dist/esm/plugins/replication/index.js +479 -0
  681. package/dist/esm/plugins/replication/index.js.map +1 -0
  682. package/dist/esm/plugins/replication/replication-helper.js +86 -0
  683. package/dist/esm/plugins/replication/replication-helper.js.map +1 -0
  684. package/dist/esm/plugins/replication-appwrite/appwrite-helpers.js +26 -0
  685. package/dist/esm/plugins/replication-appwrite/appwrite-helpers.js.map +1 -0
  686. package/dist/esm/plugins/replication-appwrite/appwrite-types.js +3 -0
  687. package/dist/esm/plugins/replication-appwrite/appwrite-types.js.map +1 -0
  688. package/dist/esm/plugins/replication-appwrite/index.js +168 -0
  689. package/dist/esm/plugins/replication-appwrite/index.js.map +1 -0
  690. package/dist/esm/plugins/replication-couchdb/couchdb-helper.js +65 -0
  691. package/dist/esm/plugins/replication-couchdb/couchdb-helper.js.map +1 -0
  692. package/dist/esm/plugins/replication-couchdb/couchdb-types.js +3 -0
  693. package/dist/esm/plugins/replication-couchdb/couchdb-types.js.map +1 -0
  694. package/dist/esm/plugins/replication-couchdb/index.js +254 -0
  695. package/dist/esm/plugins/replication-couchdb/index.js.map +1 -0
  696. package/dist/esm/plugins/replication-firestore/firestore-helper.js +49 -0
  697. package/dist/esm/plugins/replication-firestore/firestore-helper.js.map +1 -0
  698. package/dist/esm/plugins/replication-firestore/firestore-types.js +3 -0
  699. package/dist/esm/plugins/replication-firestore/firestore-types.js.map +1 -0
  700. package/dist/esm/plugins/replication-firestore/index.js +233 -0
  701. package/dist/esm/plugins/replication-firestore/index.js.map +1 -0
  702. package/dist/esm/plugins/replication-google-drive/document-handling.js +140 -0
  703. package/dist/esm/plugins/replication-google-drive/document-handling.js.map +1 -0
  704. package/dist/esm/plugins/replication-google-drive/downstream.js +66 -0
  705. package/dist/esm/plugins/replication-google-drive/downstream.js.map +1 -0
  706. package/dist/esm/plugins/replication-google-drive/google-drive-helper.js +331 -0
  707. package/dist/esm/plugins/replication-google-drive/google-drive-helper.js.map +1 -0
  708. package/dist/esm/plugins/replication-google-drive/google-drive-types.js +3 -0
  709. package/dist/esm/plugins/replication-google-drive/google-drive-types.js.map +1 -0
  710. package/dist/esm/plugins/replication-google-drive/index.js +126 -0
  711. package/dist/esm/plugins/replication-google-drive/index.js.map +1 -0
  712. package/dist/esm/plugins/replication-google-drive/init.js +70 -0
  713. package/dist/esm/plugins/replication-google-drive/init.js.map +1 -0
  714. package/dist/esm/plugins/replication-google-drive/multipart.js +67 -0
  715. package/dist/esm/plugins/replication-google-drive/multipart.js.map +1 -0
  716. package/dist/esm/plugins/replication-google-drive/signaling.js +253 -0
  717. package/dist/esm/plugins/replication-google-drive/signaling.js.map +1 -0
  718. package/dist/esm/plugins/replication-google-drive/transaction.js +123 -0
  719. package/dist/esm/plugins/replication-google-drive/transaction.js.map +1 -0
  720. package/dist/esm/plugins/replication-google-drive/upstream.js +171 -0
  721. package/dist/esm/plugins/replication-google-drive/upstream.js.map +1 -0
  722. package/dist/esm/plugins/replication-graphql/graphql-schema-from-rx-schema.js +228 -0
  723. package/dist/esm/plugins/replication-graphql/graphql-schema-from-rx-schema.js.map +1 -0
  724. package/dist/esm/plugins/replication-graphql/graphql-websocket.js +35 -0
  725. package/dist/esm/plugins/replication-graphql/graphql-websocket.js.map +1 -0
  726. package/dist/esm/plugins/replication-graphql/helper.js +21 -0
  727. package/dist/esm/plugins/replication-graphql/helper.js.map +1 -0
  728. package/dist/esm/plugins/replication-graphql/index.js +161 -0
  729. package/dist/esm/plugins/replication-graphql/index.js.map +1 -0
  730. package/dist/esm/plugins/replication-graphql/query-builder-from-rx-schema.js +133 -0
  731. package/dist/esm/plugins/replication-graphql/query-builder-from-rx-schema.js.map +1 -0
  732. package/dist/esm/plugins/replication-microsoft-onedrive/document-handling.js +178 -0
  733. package/dist/esm/plugins/replication-microsoft-onedrive/document-handling.js.map +1 -0
  734. package/dist/esm/plugins/replication-microsoft-onedrive/downstream.js +71 -0
  735. package/dist/esm/plugins/replication-microsoft-onedrive/downstream.js.map +1 -0
  736. package/dist/esm/plugins/replication-microsoft-onedrive/index.js +126 -0
  737. package/dist/esm/plugins/replication-microsoft-onedrive/index.js.map +1 -0
  738. package/dist/esm/plugins/replication-microsoft-onedrive/init.js +70 -0
  739. package/dist/esm/plugins/replication-microsoft-onedrive/init.js.map +1 -0
  740. package/dist/esm/plugins/replication-microsoft-onedrive/microsoft-onedrive-helper.js +258 -0
  741. package/dist/esm/plugins/replication-microsoft-onedrive/microsoft-onedrive-helper.js.map +1 -0
  742. package/dist/esm/plugins/replication-microsoft-onedrive/microsoft-onedrive-types.js +3 -0
  743. package/dist/esm/plugins/replication-microsoft-onedrive/microsoft-onedrive-types.js.map +1 -0
  744. package/dist/esm/plugins/replication-microsoft-onedrive/signaling.js +226 -0
  745. package/dist/esm/plugins/replication-microsoft-onedrive/signaling.js.map +1 -0
  746. package/dist/esm/plugins/replication-microsoft-onedrive/transaction.js +127 -0
  747. package/dist/esm/plugins/replication-microsoft-onedrive/transaction.js.map +1 -0
  748. package/dist/esm/plugins/replication-microsoft-onedrive/upstream.js +179 -0
  749. package/dist/esm/plugins/replication-microsoft-onedrive/upstream.js.map +1 -0
  750. package/dist/esm/plugins/replication-mongodb/index.js +197 -0
  751. package/dist/esm/plugins/replication-mongodb/index.js.map +1 -0
  752. package/dist/esm/plugins/replication-mongodb/mongodb-checkpoint.js +131 -0
  753. package/dist/esm/plugins/replication-mongodb/mongodb-checkpoint.js.map +1 -0
  754. package/dist/esm/plugins/replication-mongodb/mongodb-helper.js +45 -0
  755. package/dist/esm/plugins/replication-mongodb/mongodb-helper.js.map +1 -0
  756. package/dist/esm/plugins/replication-mongodb/mongodb-types.js +3 -0
  757. package/dist/esm/plugins/replication-mongodb/mongodb-types.js.map +1 -0
  758. package/dist/esm/plugins/replication-nats/index.js +199 -0
  759. package/dist/esm/plugins/replication-nats/index.js.map +1 -0
  760. package/dist/esm/plugins/replication-nats/nats-helper.js +7 -0
  761. package/dist/esm/plugins/replication-nats/nats-helper.js.map +1 -0
  762. package/dist/esm/plugins/replication-nats/nats-types.js +3 -0
  763. package/dist/esm/plugins/replication-nats/nats-types.js.map +1 -0
  764. package/dist/esm/plugins/replication-supabase/helper.js +35 -0
  765. package/dist/esm/plugins/replication-supabase/helper.js.map +1 -0
  766. package/dist/esm/plugins/replication-supabase/index.js +231 -0
  767. package/dist/esm/plugins/replication-supabase/index.js.map +1 -0
  768. package/dist/esm/plugins/replication-supabase/types.js +3 -0
  769. package/dist/esm/plugins/replication-supabase/types.js.map +1 -0
  770. package/dist/esm/plugins/replication-webrtc/connection-handler-p2pcf.js +78 -0
  771. package/dist/esm/plugins/replication-webrtc/connection-handler-p2pcf.js.map +1 -0
  772. package/dist/esm/plugins/replication-webrtc/connection-handler-simple-peer.js +192 -0
  773. package/dist/esm/plugins/replication-webrtc/connection-handler-simple-peer.js.map +1 -0
  774. package/dist/esm/plugins/replication-webrtc/connection-handler-webtorrent.js +136 -0
  775. package/dist/esm/plugins/replication-webrtc/connection-handler-webtorrent.js.map +1 -0
  776. package/dist/esm/plugins/replication-webrtc/index.js +207 -0
  777. package/dist/esm/plugins/replication-webrtc/index.js.map +1 -0
  778. package/dist/esm/plugins/replication-webrtc/signaling-server.js +144 -0
  779. package/dist/esm/plugins/replication-webrtc/signaling-server.js.map +1 -0
  780. package/dist/esm/plugins/replication-webrtc/webrtc-helper.js +26 -0
  781. package/dist/esm/plugins/replication-webrtc/webrtc-helper.js.map +1 -0
  782. package/dist/esm/plugins/replication-webrtc/webrtc-types.js +3 -0
  783. package/dist/esm/plugins/replication-webrtc/webrtc-types.js.map +1 -0
  784. package/dist/esm/plugins/replication-websocket/index.js +4 -0
  785. package/dist/esm/plugins/replication-websocket/index.js.map +1 -0
  786. package/dist/esm/plugins/replication-websocket/websocket-client.js +125 -0
  787. package/dist/esm/plugins/replication-websocket/websocket-client.js.map +1 -0
  788. package/dist/esm/plugins/replication-websocket/websocket-server.js +100 -0
  789. package/dist/esm/plugins/replication-websocket/websocket-server.js.map +1 -0
  790. package/dist/esm/plugins/replication-websocket/websocket-types.js +3 -0
  791. package/dist/esm/plugins/replication-websocket/websocket-types.js.map +1 -0
  792. package/dist/esm/plugins/state/helpers.js +73 -0
  793. package/dist/esm/plugins/state/helpers.js.map +1 -0
  794. package/dist/esm/plugins/state/index.js +20 -0
  795. package/dist/esm/plugins/state/index.js.map +1 -0
  796. package/dist/esm/plugins/state/rx-state.js +285 -0
  797. package/dist/esm/plugins/state/rx-state.js.map +1 -0
  798. package/dist/esm/plugins/state/types.js +3 -0
  799. package/dist/esm/plugins/state/types.js.map +1 -0
  800. package/dist/esm/plugins/storage-denokv/denokv-helper.js +40 -0
  801. package/dist/esm/plugins/storage-denokv/denokv-helper.js.map +1 -0
  802. package/dist/esm/plugins/storage-denokv/denokv-query.js +93 -0
  803. package/dist/esm/plugins/storage-denokv/denokv-query.js.map +1 -0
  804. package/dist/esm/plugins/storage-denokv/denokv-types.js +3 -0
  805. package/dist/esm/plugins/storage-denokv/denokv-types.js.map +1 -0
  806. package/dist/esm/plugins/storage-denokv/index.js +24 -0
  807. package/dist/esm/plugins/storage-denokv/index.js.map +1 -0
  808. package/dist/esm/plugins/storage-denokv/rx-storage-instance-denokv.js +325 -0
  809. package/dist/esm/plugins/storage-denokv/rx-storage-instance-denokv.js.map +1 -0
  810. package/dist/esm/plugins/storage-dexie/dexie-helper.js +241 -0
  811. package/dist/esm/plugins/storage-dexie/dexie-helper.js.map +1 -0
  812. package/dist/esm/plugins/storage-dexie/dexie-query.js +169 -0
  813. package/dist/esm/plugins/storage-dexie/dexie-query.js.map +1 -0
  814. package/dist/esm/plugins/storage-dexie/index.js +5 -0
  815. package/dist/esm/plugins/storage-dexie/index.js.map +1 -0
  816. package/dist/esm/plugins/storage-dexie/rx-storage-dexie.js +39 -0
  817. package/dist/esm/plugins/storage-dexie/rx-storage-dexie.js.map +1 -0
  818. package/dist/esm/plugins/storage-dexie/rx-storage-instance-dexie.js +222 -0
  819. package/dist/esm/plugins/storage-dexie/rx-storage-instance-dexie.js.map +1 -0
  820. package/dist/esm/plugins/storage-foundationdb/foundationdb-helpers.js +6 -0
  821. package/dist/esm/plugins/storage-foundationdb/foundationdb-helpers.js.map +1 -0
  822. package/dist/esm/plugins/storage-foundationdb/foundationdb-query.js +90 -0
  823. package/dist/esm/plugins/storage-foundationdb/foundationdb-query.js.map +1 -0
  824. package/dist/esm/plugins/storage-foundationdb/foundationdb-types.js +3 -0
  825. package/dist/esm/plugins/storage-foundationdb/foundationdb-types.js.map +1 -0
  826. package/dist/esm/plugins/storage-foundationdb/index.js +31 -0
  827. package/dist/esm/plugins/storage-foundationdb/index.js.map +1 -0
  828. package/dist/esm/plugins/storage-foundationdb/rx-storage-instance-foundationdb.js +302 -0
  829. package/dist/esm/plugins/storage-foundationdb/rx-storage-instance-foundationdb.js.map +1 -0
  830. package/dist/esm/plugins/storage-localstorage/index.js +23 -0
  831. package/dist/esm/plugins/storage-localstorage/index.js.map +1 -0
  832. package/dist/esm/plugins/storage-localstorage/localstorage-mock.js +33 -0
  833. package/dist/esm/plugins/storage-localstorage/localstorage-mock.js.map +1 -0
  834. package/dist/esm/plugins/storage-localstorage/rx-storage-instance-localstorage.js +432 -0
  835. package/dist/esm/plugins/storage-localstorage/rx-storage-instance-localstorage.js.map +1 -0
  836. package/dist/esm/plugins/storage-memory/binary-search-bounds.js +103 -0
  837. package/dist/esm/plugins/storage-memory/binary-search-bounds.js.map +1 -0
  838. package/dist/esm/plugins/storage-memory/index.js +29 -0
  839. package/dist/esm/plugins/storage-memory/index.js.map +1 -0
  840. package/dist/esm/plugins/storage-memory/memory-helper.js +165 -0
  841. package/dist/esm/plugins/storage-memory/memory-helper.js.map +1 -0
  842. package/dist/esm/plugins/storage-memory/memory-indexes.js +21 -0
  843. package/dist/esm/plugins/storage-memory/memory-indexes.js.map +1 -0
  844. package/dist/esm/plugins/storage-memory/memory-types.js +3 -0
  845. package/dist/esm/plugins/storage-memory/memory-types.js.map +1 -0
  846. package/dist/esm/plugins/storage-memory/rx-storage-instance-memory.js +364 -0
  847. package/dist/esm/plugins/storage-memory/rx-storage-instance-memory.js.map +1 -0
  848. package/dist/esm/plugins/storage-mongodb/index.js +5 -0
  849. package/dist/esm/plugins/storage-mongodb/index.js.map +1 -0
  850. package/dist/esm/plugins/storage-mongodb/mongodb-helper.js +85 -0
  851. package/dist/esm/plugins/storage-mongodb/mongodb-helper.js.map +1 -0
  852. package/dist/esm/plugins/storage-mongodb/mongodb-types.js +3 -0
  853. package/dist/esm/plugins/storage-mongodb/mongodb-types.js.map +1 -0
  854. package/dist/esm/plugins/storage-mongodb/rx-storage-instance-mongodb.js +316 -0
  855. package/dist/esm/plugins/storage-mongodb/rx-storage-instance-mongodb.js.map +1 -0
  856. package/dist/esm/plugins/storage-mongodb/rx-storage-mongodb.js +22 -0
  857. package/dist/esm/plugins/storage-mongodb/rx-storage-mongodb.js.map +1 -0
  858. package/dist/esm/plugins/storage-remote/index.js +6 -0
  859. package/dist/esm/plugins/storage-remote/index.js.map +1 -0
  860. package/dist/esm/plugins/storage-remote/message-channel-cache.js +44 -0
  861. package/dist/esm/plugins/storage-remote/message-channel-cache.js.map +1 -0
  862. package/dist/esm/plugins/storage-remote/remote.js +212 -0
  863. package/dist/esm/plugins/storage-remote/remote.js.map +1 -0
  864. package/dist/esm/plugins/storage-remote/rx-storage-remote.js +193 -0
  865. package/dist/esm/plugins/storage-remote/rx-storage-remote.js.map +1 -0
  866. package/dist/esm/plugins/storage-remote/storage-remote-helpers.js +18 -0
  867. package/dist/esm/plugins/storage-remote/storage-remote-helpers.js.map +1 -0
  868. package/dist/esm/plugins/storage-remote/storage-remote-types.js +3 -0
  869. package/dist/esm/plugins/storage-remote/storage-remote-types.js.map +1 -0
  870. package/dist/esm/plugins/storage-remote-websocket/index.js +161 -0
  871. package/dist/esm/plugins/storage-remote-websocket/index.js.map +1 -0
  872. package/dist/esm/plugins/storage-remote-websocket/types.js +3 -0
  873. package/dist/esm/plugins/storage-remote-websocket/types.js.map +1 -0
  874. package/dist/esm/plugins/storage-sqlite/index.js +31 -0
  875. package/dist/esm/plugins/storage-sqlite/index.js.map +1 -0
  876. package/dist/esm/plugins/storage-sqlite/sqlite-basics-helpers.js +510 -0
  877. package/dist/esm/plugins/storage-sqlite/sqlite-basics-helpers.js.map +1 -0
  878. package/dist/esm/plugins/storage-sqlite/sqlite-helpers.js +187 -0
  879. package/dist/esm/plugins/storage-sqlite/sqlite-helpers.js.map +1 -0
  880. package/dist/esm/plugins/storage-sqlite/sqlite-storage-instance.js +283 -0
  881. package/dist/esm/plugins/storage-sqlite/sqlite-storage-instance.js.map +1 -0
  882. package/dist/esm/plugins/storage-sqlite/sqlite-types.js +3 -0
  883. package/dist/esm/plugins/storage-sqlite/sqlite-types.js.map +1 -0
  884. package/dist/esm/plugins/test-utils/config.js +104 -0
  885. package/dist/esm/plugins/test-utils/config.js.map +1 -0
  886. package/dist/esm/plugins/test-utils/humans-collection.js +397 -0
  887. package/dist/esm/plugins/test-utils/humans-collection.js.map +1 -0
  888. package/dist/esm/plugins/test-utils/index.js +22 -0
  889. package/dist/esm/plugins/test-utils/index.js.map +1 -0
  890. package/dist/esm/plugins/test-utils/performance.js +267 -0
  891. package/dist/esm/plugins/test-utils/performance.js.map +1 -0
  892. package/dist/esm/plugins/test-utils/replication-base-test-suite.js +170 -0
  893. package/dist/esm/plugins/test-utils/replication-base-test-suite.js.map +1 -0
  894. package/dist/esm/plugins/test-utils/replication.js +46 -0
  895. package/dist/esm/plugins/test-utils/replication.js.map +1 -0
  896. package/dist/esm/plugins/test-utils/revisions.js +5 -0
  897. package/dist/esm/plugins/test-utils/revisions.js.map +1 -0
  898. package/dist/esm/plugins/test-utils/schema-objects.js +283 -0
  899. package/dist/esm/plugins/test-utils/schema-objects.js.map +1 -0
  900. package/dist/esm/plugins/test-utils/schemas.js +1244 -0
  901. package/dist/esm/plugins/test-utils/schemas.js.map +1 -0
  902. package/dist/esm/plugins/test-utils/test-util.js +62 -0
  903. package/dist/esm/plugins/test-utils/test-util.js.map +1 -0
  904. package/dist/esm/plugins/update/index.js +35 -0
  905. package/dist/esm/plugins/update/index.js.map +1 -0
  906. package/dist/esm/plugins/update/mingo-updater.js +13 -0
  907. package/dist/esm/plugins/update/mingo-updater.js.map +1 -0
  908. package/dist/esm/plugins/utils/index.js +21 -0
  909. package/dist/esm/plugins/utils/index.js.map +1 -0
  910. package/dist/esm/plugins/utils/utils-array.js +130 -0
  911. package/dist/esm/plugins/utils/utils-array.js.map +1 -0
  912. package/dist/esm/plugins/utils/utils-base64.js +48 -0
  913. package/dist/esm/plugins/utils/utils-base64.js.map +1 -0
  914. package/dist/esm/plugins/utils/utils-blob.js +54 -0
  915. package/dist/esm/plugins/utils/utils-blob.js.map +1 -0
  916. package/dist/esm/plugins/utils/utils-document.js +87 -0
  917. package/dist/esm/plugins/utils/utils-document.js.map +1 -0
  918. package/dist/esm/plugins/utils/utils-error.js +36 -0
  919. package/dist/esm/plugins/utils/utils-error.js.map +1 -0
  920. package/dist/esm/plugins/utils/utils-global.js +6 -0
  921. package/dist/esm/plugins/utils/utils-global.js.map +1 -0
  922. package/dist/esm/plugins/utils/utils-hash.js +51 -0
  923. package/dist/esm/plugins/utils/utils-hash.js.map +1 -0
  924. package/dist/esm/plugins/utils/utils-map.js +18 -0
  925. package/dist/esm/plugins/utils/utils-map.js.map +1 -0
  926. package/dist/esm/plugins/utils/utils-number.js +10 -0
  927. package/dist/esm/plugins/utils/utils-number.js.map +1 -0
  928. package/dist/esm/plugins/utils/utils-object-deep-equal.js +36 -0
  929. package/dist/esm/plugins/utils/utils-object-deep-equal.js.map +1 -0
  930. package/dist/esm/plugins/utils/utils-object-dot-prop.js +296 -0
  931. package/dist/esm/plugins/utils/utils-object-dot-prop.js.map +1 -0
  932. package/dist/esm/plugins/utils/utils-object.js +228 -0
  933. package/dist/esm/plugins/utils/utils-object.js.map +1 -0
  934. package/dist/esm/plugins/utils/utils-other.js +58 -0
  935. package/dist/esm/plugins/utils/utils-other.js.map +1 -0
  936. package/dist/esm/plugins/utils/utils-premium.js +30 -0
  937. package/dist/esm/plugins/utils/utils-premium.js.map +1 -0
  938. package/dist/esm/plugins/utils/utils-promise.js +134 -0
  939. package/dist/esm/plugins/utils/utils-promise.js.map +1 -0
  940. package/dist/esm/plugins/utils/utils-regex.js +3 -0
  941. package/dist/esm/plugins/utils/utils-regex.js.map +1 -0
  942. package/dist/esm/plugins/utils/utils-revision.js +53 -0
  943. package/dist/esm/plugins/utils/utils-revision.js.map +1 -0
  944. package/dist/esm/plugins/utils/utils-rxdb-version.js +5 -0
  945. package/dist/esm/plugins/utils/utils-rxdb-version.js.map +1 -0
  946. package/dist/esm/plugins/utils/utils-rxdb-version.template.js +5 -0
  947. package/dist/esm/plugins/utils/utils-rxdb-version.template.js.map +1 -0
  948. package/dist/esm/plugins/utils/utils-string.js +83 -0
  949. package/dist/esm/plugins/utils/utils-string.js.map +1 -0
  950. package/dist/esm/plugins/utils/utils-time.js +36 -0
  951. package/dist/esm/plugins/utils/utils-time.js.map +1 -0
  952. package/dist/esm/plugins/validate-ajv/index.js +43 -0
  953. package/dist/esm/plugins/validate-ajv/index.js.map +1 -0
  954. package/dist/esm/plugins/validate-is-my-json-valid/index.js +20 -0
  955. package/dist/esm/plugins/validate-is-my-json-valid/index.js.map +1 -0
  956. package/dist/esm/plugins/validate-z-schema/index.js +47 -0
  957. package/dist/esm/plugins/validate-z-schema/index.js.map +1 -0
  958. package/dist/esm/plugins/vector/helper.js +2 -0
  959. package/dist/esm/plugins/vector/helper.js.map +1 -0
  960. package/dist/esm/plugins/vector/index.js +2 -0
  961. package/dist/esm/plugins/vector/index.js.map +1 -0
  962. package/dist/esm/plugins/vector/types.js +3 -0
  963. package/dist/esm/plugins/vector/types.js.map +1 -0
  964. package/dist/esm/plugins/vector/vector-distance.js +29 -0
  965. package/dist/esm/plugins/vector/vector-distance.js.map +1 -0
  966. package/dist/esm/plugins/webmcp/index.js +3 -0
  967. package/dist/esm/plugins/webmcp/index.js.map +1 -0
  968. package/dist/esm/plugins/webmcp/nosql-query-schema.js +354 -0
  969. package/dist/esm/plugins/webmcp/nosql-query-schema.js.map +1 -0
  970. package/dist/esm/plugins/webmcp/webmcp.js +307 -0
  971. package/dist/esm/plugins/webmcp/webmcp.js.map +1 -0
  972. package/dist/esm/query-cache.js +99 -0
  973. package/dist/esm/query-cache.js.map +1 -0
  974. package/dist/esm/query-planner.js +297 -0
  975. package/dist/esm/query-planner.js.map +1 -0
  976. package/dist/esm/replication-protocol/checkpoint.js +95 -0
  977. package/dist/esm/replication-protocol/checkpoint.js.map +1 -0
  978. package/dist/esm/replication-protocol/conflicts.js +31 -0
  979. package/dist/esm/replication-protocol/conflicts.js.map +1 -0
  980. package/dist/esm/replication-protocol/default-conflict-handler.js +33 -0
  981. package/dist/esm/replication-protocol/default-conflict-handler.js.map +1 -0
  982. package/dist/esm/replication-protocol/downstream.js +334 -0
  983. package/dist/esm/replication-protocol/downstream.js.map +1 -0
  984. package/dist/esm/replication-protocol/helper.js +49 -0
  985. package/dist/esm/replication-protocol/helper.js.map +1 -0
  986. package/dist/esm/replication-protocol/index.js +221 -0
  987. package/dist/esm/replication-protocol/index.js.map +1 -0
  988. package/dist/esm/replication-protocol/meta-instance.js +121 -0
  989. package/dist/esm/replication-protocol/meta-instance.js.map +1 -0
  990. package/dist/esm/replication-protocol/upstream.js +379 -0
  991. package/dist/esm/replication-protocol/upstream.js.map +1 -0
  992. package/dist/esm/rx-change-event.js +103 -0
  993. package/dist/esm/rx-change-event.js.map +1 -0
  994. package/dist/esm/rx-collection-helper.js +196 -0
  995. package/dist/esm/rx-collection-helper.js.map +1 -0
  996. package/dist/esm/rx-collection.js +923 -0
  997. package/dist/esm/rx-collection.js.map +1 -0
  998. package/dist/esm/rx-database-internal-store.js +270 -0
  999. package/dist/esm/rx-database-internal-store.js.map +1 -0
  1000. package/dist/esm/rx-database.js +670 -0
  1001. package/dist/esm/rx-database.js.map +1 -0
  1002. package/dist/esm/rx-document-prototype-merge.js +78 -0
  1003. package/dist/esm/rx-document-prototype-merge.js.map +1 -0
  1004. package/dist/esm/rx-document.js +394 -0
  1005. package/dist/esm/rx-document.js.map +1 -0
  1006. package/dist/esm/rx-error.js +153 -0
  1007. package/dist/esm/rx-error.js.map +1 -0
  1008. package/dist/esm/rx-query-helper.js +268 -0
  1009. package/dist/esm/rx-query-helper.js.map +1 -0
  1010. package/dist/esm/rx-query-mingo.js +54 -0
  1011. package/dist/esm/rx-query-mingo.js.map +1 -0
  1012. package/dist/esm/rx-query-single-result.js +98 -0
  1013. package/dist/esm/rx-query-single-result.js.map +1 -0
  1014. package/dist/esm/rx-query.js +690 -0
  1015. package/dist/esm/rx-query.js.map +1 -0
  1016. package/dist/esm/rx-schema-helper.js +316 -0
  1017. package/dist/esm/rx-schema-helper.js.map +1 -0
  1018. package/dist/esm/rx-schema.js +177 -0
  1019. package/dist/esm/rx-schema.js.map +1 -0
  1020. package/dist/esm/rx-storage-helper.js +785 -0
  1021. package/dist/esm/rx-storage-helper.js.map +1 -0
  1022. package/dist/esm/rx-storage-multiinstance.js +113 -0
  1023. package/dist/esm/rx-storage-multiinstance.js.map +1 -0
  1024. package/dist/esm/types/conflict-handling.d.js +3 -0
  1025. package/dist/esm/types/conflict-handling.d.js.map +1 -0
  1026. package/dist/esm/types/couchdb.d.js +3 -0
  1027. package/dist/esm/types/couchdb.d.js.map +1 -0
  1028. package/dist/esm/types/index.d.js +2 -0
  1029. package/dist/esm/types/index.d.js.map +1 -0
  1030. package/dist/esm/types/modules/index.d.js +2 -0
  1031. package/dist/esm/types/modules/index.d.js.map +1 -0
  1032. package/dist/esm/types/modules/mocha.parallel.d.js +2 -0
  1033. package/dist/esm/types/modules/mocha.parallel.d.js.map +1 -0
  1034. package/dist/esm/types/plugins/backup.d.js +3 -0
  1035. package/dist/esm/types/plugins/backup.d.js.map +1 -0
  1036. package/dist/esm/types/plugins/cleanup.d.js +3 -0
  1037. package/dist/esm/types/plugins/cleanup.d.js.map +1 -0
  1038. package/dist/esm/types/plugins/crdt.d.js +3 -0
  1039. package/dist/esm/types/plugins/crdt.d.js.map +1 -0
  1040. package/dist/esm/types/plugins/dexie.d.js +3 -0
  1041. package/dist/esm/types/plugins/dexie.d.js.map +1 -0
  1042. package/dist/esm/types/plugins/local-documents.d.js +3 -0
  1043. package/dist/esm/types/plugins/local-documents.d.js.map +1 -0
  1044. package/dist/esm/types/plugins/migration.d.js +3 -0
  1045. package/dist/esm/types/plugins/migration.d.js.map +1 -0
  1046. package/dist/esm/types/plugins/reactivity.d.js +3 -0
  1047. package/dist/esm/types/plugins/reactivity.d.js.map +1 -0
  1048. package/dist/esm/types/plugins/replication-graphql.d.js +3 -0
  1049. package/dist/esm/types/plugins/replication-graphql.d.js.map +1 -0
  1050. package/dist/esm/types/plugins/replication.d.js +3 -0
  1051. package/dist/esm/types/plugins/replication.d.js.map +1 -0
  1052. package/dist/esm/types/plugins/state.d.js +3 -0
  1053. package/dist/esm/types/plugins/state.d.js.map +1 -0
  1054. package/dist/esm/types/plugins/update.d.js +3 -0
  1055. package/dist/esm/types/plugins/update.d.js.map +1 -0
  1056. package/dist/esm/types/plugins/webmcp.d.js +3 -0
  1057. package/dist/esm/types/plugins/webmcp.d.js.map +1 -0
  1058. package/dist/esm/types/query-planner.d.js +3 -0
  1059. package/dist/esm/types/query-planner.d.js.map +1 -0
  1060. package/dist/esm/types/replication-protocol.d.js +3 -0
  1061. package/dist/esm/types/replication-protocol.d.js.map +1 -0
  1062. package/dist/esm/types/rx-attachment.d.js +3 -0
  1063. package/dist/esm/types/rx-attachment.d.js.map +1 -0
  1064. package/dist/esm/types/rx-change-event.d.js +3 -0
  1065. package/dist/esm/types/rx-change-event.d.js.map +1 -0
  1066. package/dist/esm/types/rx-collection.d.js +3 -0
  1067. package/dist/esm/types/rx-collection.d.js.map +1 -0
  1068. package/dist/esm/types/rx-database-internal-store.d.js +3 -0
  1069. package/dist/esm/types/rx-database-internal-store.d.js.map +1 -0
  1070. package/dist/esm/types/rx-database.d.js +3 -0
  1071. package/dist/esm/types/rx-database.d.js.map +1 -0
  1072. package/dist/esm/types/rx-document.d.js +3 -0
  1073. package/dist/esm/types/rx-document.d.js.map +1 -0
  1074. package/dist/esm/types/rx-error.d.js +3 -0
  1075. package/dist/esm/types/rx-error.d.js.map +1 -0
  1076. package/dist/esm/types/rx-plugin.d.js +3 -0
  1077. package/dist/esm/types/rx-plugin.d.js.map +1 -0
  1078. package/dist/esm/types/rx-query.d.js +3 -0
  1079. package/dist/esm/types/rx-query.d.js.map +1 -0
  1080. package/dist/esm/types/rx-schema.d.js +3 -0
  1081. package/dist/esm/types/rx-schema.d.js.map +1 -0
  1082. package/dist/esm/types/rx-storage.d.js +3 -0
  1083. package/dist/esm/types/rx-storage.d.js.map +1 -0
  1084. package/dist/esm/types/rx-storage.interface.d.js +3 -0
  1085. package/dist/esm/types/rx-storage.interface.d.js.map +1 -0
  1086. package/dist/esm/types/util.d.js +3 -0
  1087. package/dist/esm/types/util.d.js.map +1 -0
  1088. package/dist/types/change-event-buffer.d.ts +50 -0
  1089. package/dist/types/custom-index.d.ts +58 -0
  1090. package/dist/types/doc-cache.d.ts +96 -0
  1091. package/dist/types/event-reduce.d.ts +15 -0
  1092. package/dist/types/hooks.d.ts +109 -0
  1093. package/dist/types/incremental-write.d.ts +29 -0
  1094. package/dist/types/index.d.ts +30 -0
  1095. package/dist/types/overwritable.d.ts +26 -0
  1096. package/dist/types/plugin-helpers.d.ts +30 -0
  1097. package/dist/types/plugin.d.ts +6 -0
  1098. package/dist/types/plugins/attachments/attachments-utils.d.ts +10 -0
  1099. package/dist/types/plugins/attachments/index.d.ts +42 -0
  1100. package/dist/types/plugins/attachments-compression/index.d.ts +38 -0
  1101. package/dist/types/plugins/backup/file-util.d.ts +17 -0
  1102. package/dist/types/plugins/backup/index.d.ts +37 -0
  1103. package/dist/types/plugins/cleanup/cleanup-helper.d.ts +2 -0
  1104. package/dist/types/plugins/cleanup/cleanup-state.d.ts +7 -0
  1105. package/dist/types/plugins/cleanup/cleanup.d.ts +8 -0
  1106. package/dist/types/plugins/cleanup/index.d.ts +4 -0
  1107. package/dist/types/plugins/crdt/index.d.ts +12 -0
  1108. package/dist/types/plugins/dev-mode/check-document.d.ts +9 -0
  1109. package/dist/types/plugins/dev-mode/check-migration-strategies.d.ts +6 -0
  1110. package/dist/types/plugins/dev-mode/check-orm.d.ts +7 -0
  1111. package/dist/types/plugins/dev-mode/check-query.d.ts +21 -0
  1112. package/dist/types/plugins/dev-mode/check-schema.d.ts +18 -0
  1113. package/dist/types/plugins/dev-mode/dev-mode-tracking.d.ts +4 -0
  1114. package/dist/types/plugins/dev-mode/entity-properties.d.ts +3 -0
  1115. package/dist/types/plugins/dev-mode/error-messages.d.ts +1230 -0
  1116. package/dist/types/plugins/dev-mode/index.d.ts +19 -0
  1117. package/dist/types/plugins/dev-mode/unallowed-properties.d.ts +20 -0
  1118. package/dist/types/plugins/electron/electron-helper.d.ts +2 -0
  1119. package/dist/types/plugins/electron/index.d.ts +3 -0
  1120. package/dist/types/plugins/electron/rx-storage-ipc-main.d.ts +10 -0
  1121. package/dist/types/plugins/electron/rx-storage-ipc-renderer.d.ts +13 -0
  1122. package/dist/types/plugins/encryption-crypto-js/index.d.ts +10 -0
  1123. package/dist/types/plugins/flutter/index.d.ts +11 -0
  1124. package/dist/types/plugins/json-dump/index.d.ts +2 -0
  1125. package/dist/types/plugins/key-compression/index.d.ts +18 -0
  1126. package/dist/types/plugins/leader-election/index.d.ts +25 -0
  1127. package/dist/types/plugins/local-documents/index.d.ts +6 -0
  1128. package/dist/types/plugins/local-documents/local-documents-helper.d.ts +9 -0
  1129. package/dist/types/plugins/local-documents/local-documents.d.ts +14 -0
  1130. package/dist/types/plugins/local-documents/rx-local-document.d.ts +11 -0
  1131. package/dist/types/plugins/migration-schema/index.d.ts +8 -0
  1132. package/dist/types/plugins/migration-schema/migration-helpers.d.ts +29 -0
  1133. package/dist/types/plugins/migration-schema/migration-types.d.ts +33 -0
  1134. package/dist/types/plugins/migration-schema/rx-migration-state.d.ts +50 -0
  1135. package/dist/types/plugins/migration-storage/index.d.ts +32 -0
  1136. package/dist/types/plugins/pipeline/flagged-functions.d.ts +69 -0
  1137. package/dist/types/plugins/pipeline/index.d.ts +5 -0
  1138. package/dist/types/plugins/pipeline/rx-pipeline.d.ts +37 -0
  1139. package/dist/types/plugins/pipeline/types.d.ts +17 -0
  1140. package/dist/types/plugins/query-builder/index.d.ts +5 -0
  1141. package/dist/types/plugins/query-builder/mquery/mquery-utils.d.ts +12 -0
  1142. package/dist/types/plugins/query-builder/mquery/nosql-query-builder.d.ts +165 -0
  1143. package/dist/types/plugins/react/database-context.d.ts +4 -0
  1144. package/dist/types/plugins/react/database-provider.d.ts +24 -0
  1145. package/dist/types/plugins/react/hooks/index.d.ts +4 -0
  1146. package/dist/types/plugins/react/hooks/use-live-rx-query.d.ts +11 -0
  1147. package/dist/types/plugins/react/hooks/use-rx-collection.d.ts +10 -0
  1148. package/dist/types/plugins/react/hooks/use-rx-database.d.ts +9 -0
  1149. package/dist/types/plugins/react/hooks/use-rx-query.d.ts +24 -0
  1150. package/dist/types/plugins/react/index.d.ts +2 -0
  1151. package/dist/types/plugins/reactivity-angular/index.d.ts +16 -0
  1152. package/dist/types/plugins/reactivity-preact-signals/index.d.ts +27 -0
  1153. package/dist/types/plugins/reactivity-vue/index.d.ts +17 -0
  1154. package/dist/types/plugins/replication/index.d.ts +84 -0
  1155. package/dist/types/plugins/replication/replication-helper.d.ts +23 -0
  1156. package/dist/types/plugins/replication-appwrite/appwrite-helpers.d.ts +3 -0
  1157. package/dist/types/plugins/replication-appwrite/appwrite-types.d.ts +16 -0
  1158. package/dist/types/plugins/replication-appwrite/index.d.ts +14 -0
  1159. package/dist/types/plugins/replication-couchdb/couchdb-helper.d.ts +19 -0
  1160. package/dist/types/plugins/replication-couchdb/couchdb-types.d.ts +22 -0
  1161. package/dist/types/plugins/replication-couchdb/index.d.ts +18 -0
  1162. package/dist/types/plugins/replication-firestore/firestore-helper.d.ts +10 -0
  1163. package/dist/types/plugins/replication-firestore/firestore-types.d.ts +46 -0
  1164. package/dist/types/plugins/replication-firestore/index.d.ts +17 -0
  1165. package/dist/types/plugins/replication-google-drive/document-handling.d.ts +13 -0
  1166. package/dist/types/plugins/replication-google-drive/downstream.d.ts +10 -0
  1167. package/dist/types/plugins/replication-google-drive/google-drive-helper.d.ts +35 -0
  1168. package/dist/types/plugins/replication-google-drive/google-drive-types.d.ts +67 -0
  1169. package/dist/types/plugins/replication-google-drive/index.d.ts +39 -0
  1170. package/dist/types/plugins/replication-google-drive/init.d.ts +29 -0
  1171. package/dist/types/plugins/replication-google-drive/multipart.d.ts +10 -0
  1172. package/dist/types/plugins/replication-google-drive/signaling.d.ts +41 -0
  1173. package/dist/types/plugins/replication-google-drive/transaction.d.ts +22 -0
  1174. package/dist/types/plugins/replication-google-drive/upstream.d.ts +24 -0
  1175. package/dist/types/plugins/replication-graphql/graphql-schema-from-rx-schema.d.ts +51 -0
  1176. package/dist/types/plugins/replication-graphql/graphql-websocket.d.ts +12 -0
  1177. package/dist/types/plugins/replication-graphql/helper.d.ts +15 -0
  1178. package/dist/types/plugins/replication-graphql/index.d.ts +26 -0
  1179. package/dist/types/plugins/replication-graphql/query-builder-from-rx-schema.d.ts +5 -0
  1180. package/dist/types/plugins/replication-microsoft-onedrive/document-handling.d.ts +14 -0
  1181. package/dist/types/plugins/replication-microsoft-onedrive/downstream.d.ts +10 -0
  1182. package/dist/types/plugins/replication-microsoft-onedrive/index.d.ts +38 -0
  1183. package/dist/types/plugins/replication-microsoft-onedrive/init.d.ts +29 -0
  1184. package/dist/types/plugins/replication-microsoft-onedrive/microsoft-onedrive-helper.d.ts +30 -0
  1185. package/dist/types/plugins/replication-microsoft-onedrive/microsoft-onedrive-types.d.ts +71 -0
  1186. package/dist/types/plugins/replication-microsoft-onedrive/signaling.d.ts +41 -0
  1187. package/dist/types/plugins/replication-microsoft-onedrive/transaction.d.ts +22 -0
  1188. package/dist/types/plugins/replication-microsoft-onedrive/upstream.d.ts +25 -0
  1189. package/dist/types/plugins/replication-mongodb/index.d.ts +22 -0
  1190. package/dist/types/plugins/replication-mongodb/mongodb-checkpoint.d.ts +15 -0
  1191. package/dist/types/plugins/replication-mongodb/mongodb-helper.d.ts +13 -0
  1192. package/dist/types/plugins/replication-mongodb/mongodb-types.d.ts +33 -0
  1193. package/dist/types/plugins/replication-nats/index.d.ts +16 -0
  1194. package/dist/types/plugins/replication-nats/nats-helper.d.ts +2 -0
  1195. package/dist/types/plugins/replication-nats/nats-types.d.ts +21 -0
  1196. package/dist/types/plugins/replication-supabase/helper.d.ts +5 -0
  1197. package/dist/types/plugins/replication-supabase/index.d.ts +14 -0
  1198. package/dist/types/plugins/replication-supabase/types.d.ts +28 -0
  1199. package/dist/types/plugins/replication-webrtc/connection-handler-p2pcf.d.ts +0 -0
  1200. package/dist/types/plugins/replication-webrtc/connection-handler-simple-peer.d.ts +57 -0
  1201. package/dist/types/plugins/replication-webrtc/connection-handler-webtorrent.d.ts +0 -0
  1202. package/dist/types/plugins/replication-webrtc/index.d.ts +27 -0
  1203. package/dist/types/plugins/replication-webrtc/signaling-server.d.ts +17 -0
  1204. package/dist/types/plugins/replication-webrtc/webrtc-helper.d.ts +16 -0
  1205. package/dist/types/plugins/replication-webrtc/webrtc-types.d.ts +51 -0
  1206. package/dist/types/plugins/replication-websocket/index.d.ts +3 -0
  1207. package/dist/types/plugins/replication-websocket/websocket-client.d.ts +13 -0
  1208. package/dist/types/plugins/replication-websocket/websocket-server.d.ts +6 -0
  1209. package/dist/types/plugins/replication-websocket/websocket-types.d.ts +32 -0
  1210. package/dist/types/plugins/state/helpers.d.ts +10 -0
  1211. package/dist/types/plugins/state/index.d.ts +4 -0
  1212. package/dist/types/plugins/state/rx-state.d.ts +46 -0
  1213. package/dist/types/plugins/state/types.d.ts +28 -0
  1214. package/dist/types/plugins/storage-denokv/denokv-helper.d.ts +16 -0
  1215. package/dist/types/plugins/storage-denokv/denokv-query.d.ts +3 -0
  1216. package/dist/types/plugins/storage-denokv/denokv-types.d.ts +17 -0
  1217. package/dist/types/plugins/storage-denokv/index.d.ts +11 -0
  1218. package/dist/types/plugins/storage-denokv/rx-storage-instance-denokv.d.ts +41 -0
  1219. package/dist/types/plugins/storage-dexie/dexie-helper.d.ts +40 -0
  1220. package/dist/types/plugins/storage-dexie/dexie-query.d.ts +9 -0
  1221. package/dist/types/plugins/storage-dexie/index.d.ts +4 -0
  1222. package/dist/types/plugins/storage-dexie/rx-storage-dexie.d.ts +11 -0
  1223. package/dist/types/plugins/storage-dexie/rx-storage-instance-dexie.d.ts +29 -0
  1224. package/dist/types/plugins/storage-foundationdb/foundationdb-helpers.d.ts +3 -0
  1225. package/dist/types/plugins/storage-foundationdb/foundationdb-query.d.ts +3 -0
  1226. package/dist/types/plugins/storage-foundationdb/foundationdb-types.d.ts +46 -0
  1227. package/dist/types/plugins/storage-foundationdb/index.d.ts +4 -0
  1228. package/dist/types/plugins/storage-foundationdb/rx-storage-instance-foundationdb.d.ts +26 -0
  1229. package/dist/types/plugins/storage-localstorage/index.d.ts +11 -0
  1230. package/dist/types/plugins/storage-localstorage/localstorage-mock.d.ts +1 -0
  1231. package/dist/types/plugins/storage-localstorage/rx-storage-instance-localstorage.d.ts +84 -0
  1232. package/dist/types/plugins/storage-memory/binary-search-bounds.d.ts +14 -0
  1233. package/dist/types/plugins/storage-memory/index.d.ts +7 -0
  1234. package/dist/types/plugins/storage-memory/memory-helper.d.ts +22 -0
  1235. package/dist/types/plugins/storage-memory/memory-indexes.d.ts +4 -0
  1236. package/dist/types/plugins/storage-memory/memory-types.d.ts +72 -0
  1237. package/dist/types/plugins/storage-memory/rx-storage-instance-memory.d.ts +47 -0
  1238. package/dist/types/plugins/storage-mongodb/index.d.ts +4 -0
  1239. package/dist/types/plugins/storage-mongodb/mongodb-helper.d.ts +22 -0
  1240. package/dist/types/plugins/storage-mongodb/mongodb-types.d.ts +21 -0
  1241. package/dist/types/plugins/storage-mongodb/rx-storage-instance-mongodb.d.ts +52 -0
  1242. package/dist/types/plugins/storage-mongodb/rx-storage-mongodb.d.ts +11 -0
  1243. package/dist/types/plugins/storage-remote/index.d.ts +5 -0
  1244. package/dist/types/plugins/storage-remote/message-channel-cache.d.ts +13 -0
  1245. package/dist/types/plugins/storage-remote/remote.d.ts +6 -0
  1246. package/dist/types/plugins/storage-remote/rx-storage-remote.d.ts +43 -0
  1247. package/dist/types/plugins/storage-remote/storage-remote-helpers.d.ts +4 -0
  1248. package/dist/types/plugins/storage-remote/storage-remote-types.d.ts +88 -0
  1249. package/dist/types/plugins/storage-remote-websocket/index.d.ts +4 -0
  1250. package/dist/types/plugins/storage-remote-websocket/types.d.ts +24 -0
  1251. package/dist/types/plugins/storage-sqlite/index.d.ts +15 -0
  1252. package/dist/types/plugins/storage-sqlite/sqlite-basics-helpers.d.ts +53 -0
  1253. package/dist/types/plugins/storage-sqlite/sqlite-helpers.d.ts +48 -0
  1254. package/dist/types/plugins/storage-sqlite/sqlite-storage-instance.d.ts +38 -0
  1255. package/dist/types/plugins/storage-sqlite/sqlite-types.d.ts +116 -0
  1256. package/dist/types/plugins/test-utils/config.d.ts +16 -0
  1257. package/dist/types/plugins/test-utils/humans-collection.d.ts +26 -0
  1258. package/dist/types/plugins/test-utils/index.d.ts +20 -0
  1259. package/dist/types/plugins/test-utils/performance.d.ts +68 -0
  1260. package/dist/types/plugins/test-utils/replication-base-test-suite.d.ts +66 -0
  1261. package/dist/types/plugins/test-utils/replication.d.ts +10 -0
  1262. package/dist/types/plugins/test-utils/revisions.d.ts +4 -0
  1263. package/dist/types/plugins/test-utils/schema-objects.d.ts +219 -0
  1264. package/dist/types/plugins/test-utils/schemas.d.ts +356 -0
  1265. package/dist/types/plugins/test-utils/test-util.d.ts +10 -0
  1266. package/dist/types/plugins/update/index.d.ts +5 -0
  1267. package/dist/types/plugins/update/mingo-updater.d.ts +2 -0
  1268. package/dist/types/plugins/utils/index.d.ts +20 -0
  1269. package/dist/types/plugins/utils/utils-array.d.ts +40 -0
  1270. package/dist/types/plugins/utils/utils-base64.d.ts +15 -0
  1271. package/dist/types/plugins/utils/utils-blob.d.ts +12 -0
  1272. package/dist/types/plugins/utils/utils-document.d.ts +26 -0
  1273. package/dist/types/plugins/utils/utils-error.d.ts +8 -0
  1274. package/dist/types/plugins/utils/utils-global.d.ts +5 -0
  1275. package/dist/types/plugins/utils/utils-hash.d.ts +4 -0
  1276. package/dist/types/plugins/utils/utils-map.d.ts +2 -0
  1277. package/dist/types/plugins/utils/utils-number.d.ts +7 -0
  1278. package/dist/types/plugins/utils/utils-object-deep-equal.d.ts +7 -0
  1279. package/dist/types/plugins/utils/utils-object-dot-prop.d.ts +14 -0
  1280. package/dist/types/plugins/utils/utils-object.d.ts +61 -0
  1281. package/dist/types/plugins/utils/utils-other.d.ts +20 -0
  1282. package/dist/types/plugins/utils/utils-premium.d.ts +10 -0
  1283. package/dist/types/plugins/utils/utils-promise.d.ts +43 -0
  1284. package/dist/types/plugins/utils/utils-regex.d.ts +2 -0
  1285. package/dist/types/plugins/utils/utils-revision.d.ts +22 -0
  1286. package/dist/types/plugins/utils/utils-rxdb-version.d.ts +4 -0
  1287. package/dist/types/plugins/utils/utils-rxdb-version.template.d.ts +4 -0
  1288. package/dist/types/plugins/utils/utils-string.d.ts +35 -0
  1289. package/dist/types/plugins/utils/utils-time.d.ts +5 -0
  1290. package/dist/types/plugins/validate-ajv/index.d.ts +13 -0
  1291. package/dist/types/plugins/validate-is-my-json-valid/index.d.ts +5 -0
  1292. package/dist/types/plugins/validate-z-schema/index.d.ts +13 -0
  1293. package/dist/types/plugins/vector/helper.d.ts +0 -0
  1294. package/dist/types/plugins/vector/index.d.ts +2 -0
  1295. package/dist/types/plugins/vector/types.d.ts +1 -0
  1296. package/dist/types/plugins/vector/vector-distance.d.ts +13 -0
  1297. package/dist/types/plugins/webmcp/index.d.ts +2 -0
  1298. package/dist/types/plugins/webmcp/nosql-query-schema.d.ts +549 -0
  1299. package/dist/types/plugins/webmcp/webmcp.d.ts +12 -0
  1300. package/dist/types/query-cache.d.ts +35 -0
  1301. package/dist/types/query-planner.d.ts +30 -0
  1302. package/dist/types/replication-protocol/checkpoint.d.ts +8 -0
  1303. package/dist/types/replication-protocol/conflicts.d.ts +10 -0
  1304. package/dist/types/replication-protocol/default-conflict-handler.d.ts +2 -0
  1305. package/dist/types/replication-protocol/downstream.d.ts +10 -0
  1306. package/dist/types/replication-protocol/helper.d.ts +5 -0
  1307. package/dist/types/replication-protocol/index.d.ts +30 -0
  1308. package/dist/types/replication-protocol/meta-instance.d.ts +12 -0
  1309. package/dist/types/replication-protocol/upstream.d.ts +10 -0
  1310. package/dist/types/rx-change-event.d.ts +20 -0
  1311. package/dist/types/rx-collection-helper.d.ts +41 -0
  1312. package/dist/types/rx-collection.d.ts +185 -0
  1313. package/dist/types/rx-database-internal-store.d.ts +37 -0
  1314. package/dist/types/rx-database.d.ts +213 -0
  1315. package/dist/types/rx-document-prototype-merge.d.ts +24 -0
  1316. package/dist/types/rx-document.d.ts +274 -0
  1317. package/dist/types/rx-error.d.ts +37 -0
  1318. package/dist/types/rx-query-helper.d.ts +31 -0
  1319. package/dist/types/rx-query-mingo.d.ts +10 -0
  1320. package/dist/types/rx-query-single-result.d.ts +31 -0
  1321. package/dist/types/rx-query.d.ts +153 -0
  1322. package/dist/types/rx-schema-helper.d.ts +57 -0
  1323. package/dist/types/rx-schema.d.ts +43 -0
  1324. package/dist/types/rx-storage-helper.d.ts +111 -0
  1325. package/dist/types/rx-storage-multiinstance.d.ts +51 -0
  1326. package/dist/types/types/conflict-handling.d.ts +48 -0
  1327. package/dist/types/types/couchdb.d.ts +293 -0
  1328. package/dist/types/types/index.d.ts +32 -0
  1329. package/dist/types/types/modules/index.d.ts +0 -0
  1330. package/dist/types/types/modules/mocha.parallel.d.ts +1 -0
  1331. package/dist/types/types/plugins/backup.d.ts +35 -0
  1332. package/dist/types/types/plugins/cleanup.d.ts +38 -0
  1333. package/dist/types/types/plugins/crdt.d.ts +76 -0
  1334. package/dist/types/types/plugins/dexie.d.ts +30 -0
  1335. package/dist/types/types/plugins/local-documents.d.ts +49 -0
  1336. package/dist/types/types/plugins/migration.d.ts +14 -0
  1337. package/dist/types/types/plugins/reactivity.d.ts +40 -0
  1338. package/dist/types/types/plugins/replication-graphql.d.ts +98 -0
  1339. package/dist/types/types/plugins/replication.d.ts +175 -0
  1340. package/dist/types/types/plugins/state.d.ts +4 -0
  1341. package/dist/types/types/plugins/update.d.ts +23 -0
  1342. package/dist/types/types/plugins/webmcp.d.ts +40 -0
  1343. package/dist/types/types/query-planner.d.ts +47 -0
  1344. package/dist/types/types/replication-protocol.d.ts +296 -0
  1345. package/dist/types/types/rx-attachment.d.ts +46 -0
  1346. package/dist/types/types/rx-change-event.d.ts +85 -0
  1347. package/dist/types/types/rx-collection.d.ts +117 -0
  1348. package/dist/types/types/rx-database-internal-store.d.ts +54 -0
  1349. package/dist/types/types/rx-database.d.ts +124 -0
  1350. package/dist/types/types/rx-document.d.ts +160 -0
  1351. package/dist/types/types/rx-error.d.ts +222 -0
  1352. package/dist/types/types/rx-plugin.d.ts +167 -0
  1353. package/dist/types/types/rx-query.d.ts +144 -0
  1354. package/dist/types/types/rx-schema.d.ts +209 -0
  1355. package/dist/types/types/rx-storage.d.ts +347 -0
  1356. package/dist/types/types/rx-storage.interface.d.ts +312 -0
  1357. package/dist/types/types/util.d.ts +180 -0
  1358. package/eslint.config.mjs +514 -0
  1359. package/package.json +729 -0
  1360. package/plugins/attachments/index.cjs +2 -0
  1361. package/plugins/attachments/index.d.cts +1 -0
  1362. package/plugins/attachments/index.d.mts +1 -0
  1363. package/plugins/attachments/index.mjs +1 -0
  1364. package/plugins/attachments/index.ts +1 -0
  1365. package/plugins/attachments/package.json +18 -0
  1366. package/plugins/attachments-compression/index.cjs +2 -0
  1367. package/plugins/attachments-compression/index.d.cts +1 -0
  1368. package/plugins/attachments-compression/index.d.mts +1 -0
  1369. package/plugins/attachments-compression/index.mjs +1 -0
  1370. package/plugins/attachments-compression/index.ts +1 -0
  1371. package/plugins/attachments-compression/package.json +18 -0
  1372. package/plugins/backup/index.cjs +2 -0
  1373. package/plugins/backup/index.d.cts +1 -0
  1374. package/plugins/backup/index.d.mts +1 -0
  1375. package/plugins/backup/index.mjs +1 -0
  1376. package/plugins/backup/index.ts +1 -0
  1377. package/plugins/backup/package.json +18 -0
  1378. package/plugins/cleanup/index.cjs +2 -0
  1379. package/plugins/cleanup/index.d.cts +1 -0
  1380. package/plugins/cleanup/index.d.mts +1 -0
  1381. package/plugins/cleanup/index.mjs +1 -0
  1382. package/plugins/cleanup/index.ts +1 -0
  1383. package/plugins/cleanup/package.json +18 -0
  1384. package/plugins/core/index.cjs +2 -0
  1385. package/plugins/core/index.d.cts +1 -0
  1386. package/plugins/core/index.d.mts +1 -0
  1387. package/plugins/core/index.mjs +1 -0
  1388. package/plugins/core/index.ts +1 -0
  1389. package/plugins/core/package.json +18 -0
  1390. package/plugins/crdt/index.cjs +2 -0
  1391. package/plugins/crdt/index.d.cts +1 -0
  1392. package/plugins/crdt/index.d.mts +1 -0
  1393. package/plugins/crdt/index.mjs +1 -0
  1394. package/plugins/crdt/index.ts +1 -0
  1395. package/plugins/crdt/package.json +18 -0
  1396. package/plugins/dev-mode/index.cjs +2 -0
  1397. package/plugins/dev-mode/index.d.cts +1 -0
  1398. package/plugins/dev-mode/index.d.mts +1 -0
  1399. package/plugins/dev-mode/index.mjs +1 -0
  1400. package/plugins/dev-mode/index.ts +1 -0
  1401. package/plugins/dev-mode/package.json +18 -0
  1402. package/plugins/electron/index.cjs +2 -0
  1403. package/plugins/electron/index.d.cts +1 -0
  1404. package/plugins/electron/index.d.mts +1 -0
  1405. package/plugins/electron/index.mjs +1 -0
  1406. package/plugins/electron/index.ts +1 -0
  1407. package/plugins/electron/package.json +18 -0
  1408. package/plugins/encryption-crypto-js/index.cjs +2 -0
  1409. package/plugins/encryption-crypto-js/index.d.cts +1 -0
  1410. package/plugins/encryption-crypto-js/index.d.mts +1 -0
  1411. package/plugins/encryption-crypto-js/index.mjs +1 -0
  1412. package/plugins/encryption-crypto-js/index.ts +1 -0
  1413. package/plugins/encryption-crypto-js/package.json +18 -0
  1414. package/plugins/flutter/index.cjs +2 -0
  1415. package/plugins/flutter/index.d.cts +1 -0
  1416. package/plugins/flutter/index.d.mts +1 -0
  1417. package/plugins/flutter/index.mjs +1 -0
  1418. package/plugins/flutter/index.ts +1 -0
  1419. package/plugins/flutter/package.json +18 -0
  1420. package/plugins/json-dump/index.cjs +2 -0
  1421. package/plugins/json-dump/index.d.cts +1 -0
  1422. package/plugins/json-dump/index.d.mts +1 -0
  1423. package/plugins/json-dump/index.mjs +1 -0
  1424. package/plugins/json-dump/index.ts +1 -0
  1425. package/plugins/json-dump/package.json +18 -0
  1426. package/plugins/key-compression/index.cjs +2 -0
  1427. package/plugins/key-compression/index.d.cts +1 -0
  1428. package/plugins/key-compression/index.d.mts +1 -0
  1429. package/plugins/key-compression/index.mjs +1 -0
  1430. package/plugins/key-compression/index.ts +1 -0
  1431. package/plugins/key-compression/package.json +18 -0
  1432. package/plugins/leader-election/index.cjs +2 -0
  1433. package/plugins/leader-election/index.d.cts +1 -0
  1434. package/plugins/leader-election/index.d.mts +1 -0
  1435. package/plugins/leader-election/index.mjs +1 -0
  1436. package/plugins/leader-election/index.ts +1 -0
  1437. package/plugins/leader-election/package.json +18 -0
  1438. package/plugins/local-documents/index.cjs +2 -0
  1439. package/plugins/local-documents/index.d.cts +1 -0
  1440. package/plugins/local-documents/index.d.mts +1 -0
  1441. package/plugins/local-documents/index.mjs +1 -0
  1442. package/plugins/local-documents/index.ts +1 -0
  1443. package/plugins/local-documents/package.json +18 -0
  1444. package/plugins/migration-schema/index.cjs +2 -0
  1445. package/plugins/migration-schema/index.d.cts +1 -0
  1446. package/plugins/migration-schema/index.d.mts +1 -0
  1447. package/plugins/migration-schema/index.mjs +1 -0
  1448. package/plugins/migration-schema/index.ts +1 -0
  1449. package/plugins/migration-schema/package.json +18 -0
  1450. package/plugins/migration-storage/index.cjs +2 -0
  1451. package/plugins/migration-storage/index.d.cts +1 -0
  1452. package/plugins/migration-storage/index.d.mts +1 -0
  1453. package/plugins/migration-storage/index.mjs +1 -0
  1454. package/plugins/migration-storage/index.ts +1 -0
  1455. package/plugins/migration-storage/package.json +18 -0
  1456. package/plugins/pipeline/index.cjs +2 -0
  1457. package/plugins/pipeline/index.d.cts +1 -0
  1458. package/plugins/pipeline/index.d.mts +1 -0
  1459. package/plugins/pipeline/index.mjs +1 -0
  1460. package/plugins/pipeline/index.ts +1 -0
  1461. package/plugins/pipeline/package.json +18 -0
  1462. package/plugins/query-builder/index.cjs +2 -0
  1463. package/plugins/query-builder/index.d.cts +1 -0
  1464. package/plugins/query-builder/index.d.mts +1 -0
  1465. package/plugins/query-builder/index.mjs +1 -0
  1466. package/plugins/query-builder/index.ts +1 -0
  1467. package/plugins/query-builder/package.json +18 -0
  1468. package/plugins/react/index.cjs +2 -0
  1469. package/plugins/react/index.d.cts +1 -0
  1470. package/plugins/react/index.d.mts +1 -0
  1471. package/plugins/react/index.mjs +1 -0
  1472. package/plugins/react/index.ts +1 -0
  1473. package/plugins/react/package.json +18 -0
  1474. package/plugins/reactivity-angular/index.cjs +2 -0
  1475. package/plugins/reactivity-angular/index.d.cts +1 -0
  1476. package/plugins/reactivity-angular/index.d.mts +1 -0
  1477. package/plugins/reactivity-angular/index.mjs +1 -0
  1478. package/plugins/reactivity-angular/index.ts +1 -0
  1479. package/plugins/reactivity-angular/package.json +18 -0
  1480. package/plugins/reactivity-preact-signals/index.cjs +2 -0
  1481. package/plugins/reactivity-preact-signals/index.d.cts +1 -0
  1482. package/plugins/reactivity-preact-signals/index.d.mts +1 -0
  1483. package/plugins/reactivity-preact-signals/index.mjs +1 -0
  1484. package/plugins/reactivity-preact-signals/index.ts +1 -0
  1485. package/plugins/reactivity-preact-signals/package.json +18 -0
  1486. package/plugins/reactivity-vue/index.cjs +2 -0
  1487. package/plugins/reactivity-vue/index.d.cts +1 -0
  1488. package/plugins/reactivity-vue/index.d.mts +1 -0
  1489. package/plugins/reactivity-vue/index.mjs +1 -0
  1490. package/plugins/reactivity-vue/index.ts +1 -0
  1491. package/plugins/reactivity-vue/package.json +18 -0
  1492. package/plugins/replication/index.cjs +2 -0
  1493. package/plugins/replication/index.d.cts +1 -0
  1494. package/plugins/replication/index.d.mts +1 -0
  1495. package/plugins/replication/index.mjs +1 -0
  1496. package/plugins/replication/index.ts +1 -0
  1497. package/plugins/replication/package.json +18 -0
  1498. package/plugins/replication-appwrite/index.cjs +2 -0
  1499. package/plugins/replication-appwrite/index.d.cts +1 -0
  1500. package/plugins/replication-appwrite/index.d.mts +1 -0
  1501. package/plugins/replication-appwrite/index.mjs +1 -0
  1502. package/plugins/replication-appwrite/index.ts +1 -0
  1503. package/plugins/replication-appwrite/package.json +18 -0
  1504. package/plugins/replication-couchdb/index.cjs +2 -0
  1505. package/plugins/replication-couchdb/index.d.cts +1 -0
  1506. package/plugins/replication-couchdb/index.d.mts +1 -0
  1507. package/plugins/replication-couchdb/index.mjs +1 -0
  1508. package/plugins/replication-couchdb/index.ts +1 -0
  1509. package/plugins/replication-couchdb/package.json +18 -0
  1510. package/plugins/replication-firestore/index.cjs +2 -0
  1511. package/plugins/replication-firestore/index.d.cts +1 -0
  1512. package/plugins/replication-firestore/index.d.mts +1 -0
  1513. package/plugins/replication-firestore/index.mjs +1 -0
  1514. package/plugins/replication-firestore/index.ts +1 -0
  1515. package/plugins/replication-firestore/package.json +18 -0
  1516. package/plugins/replication-google-drive/index.cjs +2 -0
  1517. package/plugins/replication-google-drive/index.d.cts +1 -0
  1518. package/plugins/replication-google-drive/index.d.mts +1 -0
  1519. package/plugins/replication-google-drive/index.mjs +1 -0
  1520. package/plugins/replication-google-drive/index.ts +1 -0
  1521. package/plugins/replication-google-drive/package.json +18 -0
  1522. package/plugins/replication-graphql/index.cjs +2 -0
  1523. package/plugins/replication-graphql/index.d.cts +1 -0
  1524. package/plugins/replication-graphql/index.d.mts +1 -0
  1525. package/plugins/replication-graphql/index.mjs +1 -0
  1526. package/plugins/replication-graphql/index.ts +1 -0
  1527. package/plugins/replication-graphql/package.json +18 -0
  1528. package/plugins/replication-microsoft-onedrive/index.cjs +2 -0
  1529. package/plugins/replication-microsoft-onedrive/index.d.cts +1 -0
  1530. package/plugins/replication-microsoft-onedrive/index.d.mts +1 -0
  1531. package/plugins/replication-microsoft-onedrive/index.mjs +1 -0
  1532. package/plugins/replication-microsoft-onedrive/index.ts +1 -0
  1533. package/plugins/replication-microsoft-onedrive/package.json +18 -0
  1534. package/plugins/replication-mongodb/index.cjs +2 -0
  1535. package/plugins/replication-mongodb/index.d.cts +1 -0
  1536. package/plugins/replication-mongodb/index.d.mts +1 -0
  1537. package/plugins/replication-mongodb/index.mjs +1 -0
  1538. package/plugins/replication-mongodb/index.ts +1 -0
  1539. package/plugins/replication-mongodb/package.json +18 -0
  1540. package/plugins/replication-nats/index.cjs +2 -0
  1541. package/plugins/replication-nats/index.d.cts +1 -0
  1542. package/plugins/replication-nats/index.d.mts +1 -0
  1543. package/plugins/replication-nats/index.mjs +1 -0
  1544. package/plugins/replication-nats/index.ts +1 -0
  1545. package/plugins/replication-nats/package.json +18 -0
  1546. package/plugins/replication-supabase/index.cjs +2 -0
  1547. package/plugins/replication-supabase/index.d.cts +1 -0
  1548. package/plugins/replication-supabase/index.d.mts +1 -0
  1549. package/plugins/replication-supabase/index.mjs +1 -0
  1550. package/plugins/replication-supabase/index.ts +1 -0
  1551. package/plugins/replication-supabase/package.json +18 -0
  1552. package/plugins/replication-webrtc/index.cjs +2 -0
  1553. package/plugins/replication-webrtc/index.d.cts +1 -0
  1554. package/plugins/replication-webrtc/index.d.mts +1 -0
  1555. package/plugins/replication-webrtc/index.mjs +1 -0
  1556. package/plugins/replication-webrtc/index.ts +1 -0
  1557. package/plugins/replication-webrtc/package.json +18 -0
  1558. package/plugins/replication-websocket/index.cjs +2 -0
  1559. package/plugins/replication-websocket/index.d.cts +1 -0
  1560. package/plugins/replication-websocket/index.d.mts +1 -0
  1561. package/plugins/replication-websocket/index.mjs +1 -0
  1562. package/plugins/replication-websocket/index.ts +1 -0
  1563. package/plugins/replication-websocket/package.json +18 -0
  1564. package/plugins/state/index.cjs +2 -0
  1565. package/plugins/state/index.d.cts +1 -0
  1566. package/plugins/state/index.d.mts +1 -0
  1567. package/plugins/state/index.mjs +1 -0
  1568. package/plugins/state/index.ts +1 -0
  1569. package/plugins/state/package.json +18 -0
  1570. package/plugins/storage-denokv/index.cjs +2 -0
  1571. package/plugins/storage-denokv/index.d.cts +1 -0
  1572. package/plugins/storage-denokv/index.d.mts +1 -0
  1573. package/plugins/storage-denokv/index.mjs +1 -0
  1574. package/plugins/storage-denokv/index.ts +1 -0
  1575. package/plugins/storage-denokv/package.json +18 -0
  1576. package/plugins/storage-dexie/index.cjs +2 -0
  1577. package/plugins/storage-dexie/index.d.cts +1 -0
  1578. package/plugins/storage-dexie/index.d.mts +1 -0
  1579. package/plugins/storage-dexie/index.mjs +1 -0
  1580. package/plugins/storage-dexie/index.ts +1 -0
  1581. package/plugins/storage-dexie/package.json +18 -0
  1582. package/plugins/storage-foundationdb/index.cjs +2 -0
  1583. package/plugins/storage-foundationdb/index.d.cts +1 -0
  1584. package/plugins/storage-foundationdb/index.d.mts +1 -0
  1585. package/plugins/storage-foundationdb/index.mjs +1 -0
  1586. package/plugins/storage-foundationdb/index.ts +1 -0
  1587. package/plugins/storage-foundationdb/package.json +18 -0
  1588. package/plugins/storage-localstorage/index.cjs +2 -0
  1589. package/plugins/storage-localstorage/index.d.cts +1 -0
  1590. package/plugins/storage-localstorage/index.d.mts +1 -0
  1591. package/plugins/storage-localstorage/index.mjs +1 -0
  1592. package/plugins/storage-localstorage/index.ts +1 -0
  1593. package/plugins/storage-localstorage/package.json +18 -0
  1594. package/plugins/storage-memory/index.cjs +2 -0
  1595. package/plugins/storage-memory/index.d.cts +1 -0
  1596. package/plugins/storage-memory/index.d.mts +1 -0
  1597. package/plugins/storage-memory/index.mjs +1 -0
  1598. package/plugins/storage-memory/index.ts +1 -0
  1599. package/plugins/storage-memory/package.json +18 -0
  1600. package/plugins/storage-mongodb/index.cjs +2 -0
  1601. package/plugins/storage-mongodb/index.d.cts +1 -0
  1602. package/plugins/storage-mongodb/index.d.mts +1 -0
  1603. package/plugins/storage-mongodb/index.mjs +1 -0
  1604. package/plugins/storage-mongodb/index.ts +1 -0
  1605. package/plugins/storage-mongodb/package.json +18 -0
  1606. package/plugins/storage-remote/index.cjs +2 -0
  1607. package/plugins/storage-remote/index.d.cts +1 -0
  1608. package/plugins/storage-remote/index.d.mts +1 -0
  1609. package/plugins/storage-remote/index.mjs +1 -0
  1610. package/plugins/storage-remote/index.ts +1 -0
  1611. package/plugins/storage-remote/package.json +18 -0
  1612. package/plugins/storage-remote-websocket/index.cjs +2 -0
  1613. package/plugins/storage-remote-websocket/index.d.cts +1 -0
  1614. package/plugins/storage-remote-websocket/index.d.mts +1 -0
  1615. package/plugins/storage-remote-websocket/index.mjs +1 -0
  1616. package/plugins/storage-remote-websocket/index.ts +1 -0
  1617. package/plugins/storage-remote-websocket/package.json +18 -0
  1618. package/plugins/storage-sqlite/index.cjs +2 -0
  1619. package/plugins/storage-sqlite/index.d.cts +1 -0
  1620. package/plugins/storage-sqlite/index.d.mts +1 -0
  1621. package/plugins/storage-sqlite/index.mjs +1 -0
  1622. package/plugins/storage-sqlite/index.ts +1 -0
  1623. package/plugins/storage-sqlite/package.json +18 -0
  1624. package/plugins/test-utils/index.cjs +2 -0
  1625. package/plugins/test-utils/index.d.cts +1 -0
  1626. package/plugins/test-utils/index.d.mts +1 -0
  1627. package/plugins/test-utils/index.mjs +1 -0
  1628. package/plugins/test-utils/index.ts +1 -0
  1629. package/plugins/test-utils/package.json +18 -0
  1630. package/plugins/update/index.cjs +2 -0
  1631. package/plugins/update/index.d.cts +1 -0
  1632. package/plugins/update/index.d.mts +1 -0
  1633. package/plugins/update/index.mjs +1 -0
  1634. package/plugins/update/index.ts +1 -0
  1635. package/plugins/update/package.json +18 -0
  1636. package/plugins/utils/index.cjs +2 -0
  1637. package/plugins/utils/index.d.cts +1 -0
  1638. package/plugins/utils/index.d.mts +1 -0
  1639. package/plugins/utils/index.mjs +1 -0
  1640. package/plugins/utils/index.ts +1 -0
  1641. package/plugins/utils/package.json +18 -0
  1642. package/plugins/validate-ajv/index.cjs +2 -0
  1643. package/plugins/validate-ajv/index.d.cts +1 -0
  1644. package/plugins/validate-ajv/index.d.mts +1 -0
  1645. package/plugins/validate-ajv/index.mjs +1 -0
  1646. package/plugins/validate-ajv/index.ts +1 -0
  1647. package/plugins/validate-ajv/package.json +18 -0
  1648. package/plugins/validate-is-my-json-valid/index.cjs +2 -0
  1649. package/plugins/validate-is-my-json-valid/index.d.cts +1 -0
  1650. package/plugins/validate-is-my-json-valid/index.d.mts +1 -0
  1651. package/plugins/validate-is-my-json-valid/index.mjs +1 -0
  1652. package/plugins/validate-is-my-json-valid/index.ts +1 -0
  1653. package/plugins/validate-is-my-json-valid/package.json +18 -0
  1654. package/plugins/validate-z-schema/index.cjs +2 -0
  1655. package/plugins/validate-z-schema/index.d.cts +1 -0
  1656. package/plugins/validate-z-schema/index.d.mts +1 -0
  1657. package/plugins/validate-z-schema/index.mjs +1 -0
  1658. package/plugins/validate-z-schema/index.ts +1 -0
  1659. package/plugins/validate-z-schema/package.json +18 -0
  1660. package/plugins/vector/index.cjs +2 -0
  1661. package/plugins/vector/index.d.cts +1 -0
  1662. package/plugins/vector/index.d.mts +1 -0
  1663. package/plugins/vector/index.mjs +1 -0
  1664. package/plugins/vector/index.ts +1 -0
  1665. package/plugins/vector/package.json +18 -0
  1666. package/plugins/webmcp/index.cjs +2 -0
  1667. package/plugins/webmcp/index.d.cts +1 -0
  1668. package/plugins/webmcp/index.d.mts +1 -0
  1669. package/plugins/webmcp/index.mjs +1 -0
  1670. package/plugins/webmcp/index.ts +1 -0
  1671. package/plugins/webmcp/package.json +18 -0
  1672. package/scripts/acme-challenge/.gittouch +0 -0
  1673. package/scripts/ai-context-generator.mjs +63 -0
  1674. package/scripts/cloud-signaling-script.sh +6 -0
  1675. package/scripts/docs-remove-time.mjs +55 -0
  1676. package/scripts/fix-types.mjs +23 -0
  1677. package/scripts/generate-all-headers.ts +102 -0
  1678. package/scripts/generate-error-messages.mjs +41 -0
  1679. package/scripts/generate-header.ts +226 -0
  1680. package/scripts/generate-plugins-package-json.mjs +133 -0
  1681. package/scripts/install-foundationdb.sh +14 -0
  1682. package/scripts/module_package.json +1 -0
  1683. package/scripts/module_package_no_side.json +1 -0
  1684. package/scripts/postinstall.js +33 -0
  1685. package/scripts/profile.mjs +31 -0
  1686. package/scripts/set-version.mjs +162 -0
  1687. package/scripts/start-cloud-signaling-server.mjs +120 -0
  1688. package/scripts/transpile.mjs +229 -0
  1689. package/scripts/update-version-variable.mjs +49 -0
  1690. package/src/change-event-buffer.ts +171 -0
  1691. package/src/custom-index.ts +376 -0
  1692. package/src/doc-cache.ts +294 -0
  1693. package/src/event-reduce.ts +159 -0
  1694. package/src/hooks.ts +128 -0
  1695. package/src/incremental-write.ts +227 -0
  1696. package/src/index.ts +30 -0
  1697. package/src/overwritable.ts +41 -0
  1698. package/src/plugin-helpers.ts +319 -0
  1699. package/src/plugin.ts +113 -0
  1700. package/src/plugins/attachments/attachments-utils.ts +84 -0
  1701. package/src/plugins/attachments/index.ts +316 -0
  1702. package/src/plugins/attachments-compression/index.ts +221 -0
  1703. package/src/plugins/backup/file-util.ts +132 -0
  1704. package/src/plugins/backup/index.ts +281 -0
  1705. package/src/plugins/cleanup/cleanup-helper.ts +11 -0
  1706. package/src/plugins/cleanup/cleanup-state.ts +92 -0
  1707. package/src/plugins/cleanup/cleanup.ts +140 -0
  1708. package/src/plugins/cleanup/index.ts +45 -0
  1709. package/src/plugins/crdt/index.ts +505 -0
  1710. package/src/plugins/dev-mode/check-document.ts +176 -0
  1711. package/src/plugins/dev-mode/check-migration-strategies.ts +53 -0
  1712. package/src/plugins/dev-mode/check-orm.ts +65 -0
  1713. package/src/plugins/dev-mode/check-query.ts +231 -0
  1714. package/src/plugins/dev-mode/check-schema.ts +564 -0
  1715. package/src/plugins/dev-mode/dev-mode-tracking.ts +125 -0
  1716. package/src/plugins/dev-mode/entity-properties.ts +56 -0
  1717. package/src/plugins/dev-mode/error-messages.ts +1331 -0
  1718. package/src/plugins/dev-mode/index.ts +203 -0
  1719. package/src/plugins/dev-mode/unallowed-properties.ts +96 -0
  1720. package/src/plugins/electron/electron-helper.ts +2 -0
  1721. package/src/plugins/electron/index.ts +3 -0
  1722. package/src/plugins/electron/rx-storage-ipc-main.ts +58 -0
  1723. package/src/plugins/electron/rx-storage-ipc-renderer.ts +62 -0
  1724. package/src/plugins/encryption-crypto-js/index.ts +220 -0
  1725. package/src/plugins/flutter/dart/analysis_options.yaml +30 -0
  1726. package/src/plugins/flutter/dart/example/rxdb_example.dart +6 -0
  1727. package/src/plugins/flutter/dart/lib/rxdb.dart +7 -0
  1728. package/src/plugins/flutter/dart/lib/src/rxdb_base.dart +332 -0
  1729. package/src/plugins/flutter/dart/pubspec.yaml +15 -0
  1730. package/src/plugins/flutter/index.ts +65 -0
  1731. package/src/plugins/json-dump/index.ts +146 -0
  1732. package/src/plugins/key-compression/index.ts +238 -0
  1733. package/src/plugins/leader-election/index.ts +129 -0
  1734. package/src/plugins/local-documents/index.ts +95 -0
  1735. package/src/plugins/local-documents/local-documents-helper.ts +103 -0
  1736. package/src/plugins/local-documents/local-documents.ts +146 -0
  1737. package/src/plugins/local-documents/rx-local-document.ts +388 -0
  1738. package/src/plugins/migration-schema/index.ts +75 -0
  1739. package/src/plugins/migration-schema/migration-helpers.ts +162 -0
  1740. package/src/plugins/migration-schema/migration-types.ts +42 -0
  1741. package/src/plugins/migration-schema/rx-migration-state.ts +632 -0
  1742. package/src/plugins/migration-storage/index.ts +255 -0
  1743. package/src/plugins/pipeline/flagged-functions.ts +131 -0
  1744. package/src/plugins/pipeline/index.ts +18 -0
  1745. package/src/plugins/pipeline/rx-pipeline.ts +303 -0
  1746. package/src/plugins/pipeline/types.ts +28 -0
  1747. package/src/plugins/query-builder/index.ts +81 -0
  1748. package/src/plugins/query-builder/mquery/README.md +5 -0
  1749. package/src/plugins/query-builder/mquery/mquery-utils.ts +37 -0
  1750. package/src/plugins/query-builder/mquery/nosql-query-builder.ts +578 -0
  1751. package/src/plugins/react/database-context.ts +10 -0
  1752. package/src/plugins/react/database-provider.tsx +38 -0
  1753. package/src/plugins/react/hooks/index.ts +4 -0
  1754. package/src/plugins/react/hooks/use-live-rx-query.ts +34 -0
  1755. package/src/plugins/react/hooks/use-rx-collection.ts +73 -0
  1756. package/src/plugins/react/hooks/use-rx-database.ts +35 -0
  1757. package/src/plugins/react/hooks/use-rx-query.ts +168 -0
  1758. package/src/plugins/react/index.ts +2 -0
  1759. package/src/plugins/reactivity-angular/index.ts +32 -0
  1760. package/src/plugins/reactivity-preact-signals/index.ts +85 -0
  1761. package/src/plugins/reactivity-vue/index.ts +43 -0
  1762. package/src/plugins/replication/index.ts +668 -0
  1763. package/src/plugins/replication/replication-helper.ts +122 -0
  1764. package/src/plugins/replication-appwrite/appwrite-helpers.ts +38 -0
  1765. package/src/plugins/replication-appwrite/appwrite-types.ts +31 -0
  1766. package/src/plugins/replication-appwrite/index.ts +269 -0
  1767. package/src/plugins/replication-couchdb/couchdb-helper.ts +100 -0
  1768. package/src/plugins/replication-couchdb/couchdb-types.ts +34 -0
  1769. package/src/plugins/replication-couchdb/index.ts +341 -0
  1770. package/src/plugins/replication-firestore/firestore-helper.ts +79 -0
  1771. package/src/plugins/replication-firestore/firestore-types.ts +72 -0
  1772. package/src/plugins/replication-firestore/index.ts +387 -0
  1773. package/src/plugins/replication-google-drive/AGENTS.md +5 -0
  1774. package/src/plugins/replication-google-drive/document-handling.ts +203 -0
  1775. package/src/plugins/replication-google-drive/download-specs.sh +49 -0
  1776. package/src/plugins/replication-google-drive/downstream.ts +118 -0
  1777. package/src/plugins/replication-google-drive/google-drive-helper.ts +467 -0
  1778. package/src/plugins/replication-google-drive/google-drive-types.ts +84 -0
  1779. package/src/plugins/replication-google-drive/index.ts +221 -0
  1780. package/src/plugins/replication-google-drive/init.ts +108 -0
  1781. package/src/plugins/replication-google-drive/multipart.ts +86 -0
  1782. package/src/plugins/replication-google-drive/signaling.ts +399 -0
  1783. package/src/plugins/replication-google-drive/transaction.ts +222 -0
  1784. package/src/plugins/replication-google-drive/upstream.ts +279 -0
  1785. package/src/plugins/replication-graphql/graphql-schema-from-rx-schema.ts +337 -0
  1786. package/src/plugins/replication-graphql/graphql-websocket.ts +56 -0
  1787. package/src/plugins/replication-graphql/helper.ts +52 -0
  1788. package/src/plugins/replication-graphql/index.ts +255 -0
  1789. package/src/plugins/replication-graphql/query-builder-from-rx-schema.ts +195 -0
  1790. package/src/plugins/replication-microsoft-onedrive/document-handling.ts +216 -0
  1791. package/src/plugins/replication-microsoft-onedrive/downstream.ts +121 -0
  1792. package/src/plugins/replication-microsoft-onedrive/index.ts +220 -0
  1793. package/src/plugins/replication-microsoft-onedrive/init.ts +107 -0
  1794. package/src/plugins/replication-microsoft-onedrive/microsoft-onedrive-helper.ts +355 -0
  1795. package/src/plugins/replication-microsoft-onedrive/microsoft-onedrive-types.ts +88 -0
  1796. package/src/plugins/replication-microsoft-onedrive/signaling.ts +333 -0
  1797. package/src/plugins/replication-microsoft-onedrive/transaction.ts +220 -0
  1798. package/src/plugins/replication-microsoft-onedrive/upstream.ts +282 -0
  1799. package/src/plugins/replication-mongodb/index.ts +275 -0
  1800. package/src/plugins/replication-mongodb/mongodb-checkpoint.ts +184 -0
  1801. package/src/plugins/replication-mongodb/mongodb-helper.ts +69 -0
  1802. package/src/plugins/replication-mongodb/mongodb-types.ts +50 -0
  1803. package/src/plugins/replication-nats/index.ts +289 -0
  1804. package/src/plugins/replication-nats/nats-helper.ts +15 -0
  1805. package/src/plugins/replication-nats/nats-types.ts +43 -0
  1806. package/src/plugins/replication-supabase/helper.ts +63 -0
  1807. package/src/plugins/replication-supabase/index.ts +308 -0
  1808. package/src/plugins/replication-supabase/types.ts +47 -0
  1809. package/src/plugins/replication-webrtc/connection-handler-p2pcf.ts +77 -0
  1810. package/src/plugins/replication-webrtc/connection-handler-simple-peer.ts +302 -0
  1811. package/src/plugins/replication-webrtc/connection-handler-webtorrent.ts +137 -0
  1812. package/src/plugins/replication-webrtc/index.ts +307 -0
  1813. package/src/plugins/replication-webrtc/signaling-server.ts +193 -0
  1814. package/src/plugins/replication-webrtc/webrtc-helper.ts +55 -0
  1815. package/src/plugins/replication-webrtc/webrtc-types.ts +91 -0
  1816. package/src/plugins/replication-websocket/index.ts +3 -0
  1817. package/src/plugins/replication-websocket/websocket-client.ts +187 -0
  1818. package/src/plugins/replication-websocket/websocket-server.ts +135 -0
  1819. package/src/plugins/replication-websocket/websocket-types.ts +47 -0
  1820. package/src/plugins/state/helpers.ts +86 -0
  1821. package/src/plugins/state/index.ts +40 -0
  1822. package/src/plugins/state/rx-state.ts +386 -0
  1823. package/src/plugins/state/types.ts +32 -0
  1824. package/src/plugins/storage-denokv/denokv-helper.ts +46 -0
  1825. package/src/plugins/storage-denokv/denokv-query.ts +135 -0
  1826. package/src/plugins/storage-denokv/denokv-types.ts +19 -0
  1827. package/src/plugins/storage-denokv/index.ts +37 -0
  1828. package/src/plugins/storage-denokv/rx-storage-instance-denokv.ts +426 -0
  1829. package/src/plugins/storage-dexie/dexie-helper.ts +302 -0
  1830. package/src/plugins/storage-dexie/dexie-query.ts +252 -0
  1831. package/src/plugins/storage-dexie/index.ts +4 -0
  1832. package/src/plugins/storage-dexie/rx-storage-dexie.ts +62 -0
  1833. package/src/plugins/storage-dexie/rx-storage-instance-dexie.ts +378 -0
  1834. package/src/plugins/storage-foundationdb/foundationdb-helpers.ts +6 -0
  1835. package/src/plugins/storage-foundationdb/foundationdb-query.ts +140 -0
  1836. package/src/plugins/storage-foundationdb/foundationdb-types.ts +64 -0
  1837. package/src/plugins/storage-foundationdb/index.ts +57 -0
  1838. package/src/plugins/storage-foundationdb/rx-storage-instance-foundationdb.ts +449 -0
  1839. package/src/plugins/storage-localstorage/index.ts +44 -0
  1840. package/src/plugins/storage-localstorage/localstorage-mock.ts +32 -0
  1841. package/src/plugins/storage-localstorage/rx-storage-instance-localstorage.ts +686 -0
  1842. package/src/plugins/storage-memory/binary-search-bounds.ts +106 -0
  1843. package/src/plugins/storage-memory/index.ts +52 -0
  1844. package/src/plugins/storage-memory/memory-helper.ts +259 -0
  1845. package/src/plugins/storage-memory/memory-indexes.ts +34 -0
  1846. package/src/plugins/storage-memory/memory-types.ts +90 -0
  1847. package/src/plugins/storage-memory/rx-storage-instance-memory.ts +609 -0
  1848. package/src/plugins/storage-mongodb/index.ts +4 -0
  1849. package/src/plugins/storage-mongodb/mongodb-helper.ts +119 -0
  1850. package/src/plugins/storage-mongodb/mongodb-types.ts +32 -0
  1851. package/src/plugins/storage-mongodb/rx-storage-instance-mongodb.ts +464 -0
  1852. package/src/plugins/storage-mongodb/rx-storage-mongodb.ts +33 -0
  1853. package/src/plugins/storage-remote/index.ts +5 -0
  1854. package/src/plugins/storage-remote/message-channel-cache.ts +88 -0
  1855. package/src/plugins/storage-remote/remote.ts +285 -0
  1856. package/src/plugins/storage-remote/rx-storage-remote.ts +286 -0
  1857. package/src/plugins/storage-remote/storage-remote-helpers.ts +33 -0
  1858. package/src/plugins/storage-remote/storage-remote-types.ts +118 -0
  1859. package/src/plugins/storage-remote-websocket/index.ts +218 -0
  1860. package/src/plugins/storage-remote-websocket/types.ts +34 -0
  1861. package/src/plugins/storage-sqlite/index.ts +64 -0
  1862. package/src/plugins/storage-sqlite/sqlite-basics-helpers.ts +656 -0
  1863. package/src/plugins/storage-sqlite/sqlite-helpers.ts +287 -0
  1864. package/src/plugins/storage-sqlite/sqlite-storage-instance.ts +507 -0
  1865. package/src/plugins/storage-sqlite/sqlite-types.ts +151 -0
  1866. package/src/plugins/test-utils/config.ts +135 -0
  1867. package/src/plugins/test-utils/humans-collection.ts +557 -0
  1868. package/src/plugins/test-utils/index.ts +24 -0
  1869. package/src/plugins/test-utils/performance.ts +344 -0
  1870. package/src/plugins/test-utils/replication-base-test-suite.ts +236 -0
  1871. package/src/plugins/test-utils/replication.ts +95 -0
  1872. package/src/plugins/test-utils/revisions.ts +4 -0
  1873. package/src/plugins/test-utils/schema-objects.ts +527 -0
  1874. package/src/plugins/test-utils/schemas.ts +1391 -0
  1875. package/src/plugins/test-utils/test-util.ts +85 -0
  1876. package/src/plugins/update/index.ts +57 -0
  1877. package/src/plugins/update/mingo-updater.ts +26 -0
  1878. package/src/plugins/utils/index.ts +20 -0
  1879. package/src/plugins/utils/utils-array.ts +152 -0
  1880. package/src/plugins/utils/utils-base64.ts +49 -0
  1881. package/src/plugins/utils/utils-blob.ts +65 -0
  1882. package/src/plugins/utils/utils-document.ts +117 -0
  1883. package/src/plugins/utils/utils-error.ts +53 -0
  1884. package/src/plugins/utils/utils-global.ts +5 -0
  1885. package/src/plugins/utils/utils-hash.ts +62 -0
  1886. package/src/plugins/utils/utils-map.ts +23 -0
  1887. package/src/plugins/utils/utils-number.ts +9 -0
  1888. package/src/plugins/utils/utils-object-deep-equal.ts +46 -0
  1889. package/src/plugins/utils/utils-object-dot-prop.ts +365 -0
  1890. package/src/plugins/utils/utils-object.ts +272 -0
  1891. package/src/plugins/utils/utils-other.ts +58 -0
  1892. package/src/plugins/utils/utils-premium.ts +37 -0
  1893. package/src/plugins/utils/utils-promise.ts +171 -0
  1894. package/src/plugins/utils/utils-regex.ts +2 -0
  1895. package/src/plugins/utils/utils-revision.ts +55 -0
  1896. package/src/plugins/utils/utils-rxdb-version.template.ts +4 -0
  1897. package/src/plugins/utils/utils-rxdb-version.ts +4 -0
  1898. package/src/plugins/utils/utils-string.ts +91 -0
  1899. package/src/plugins/utils/utils-time.ts +37 -0
  1900. package/src/plugins/validate-ajv/index.ts +61 -0
  1901. package/src/plugins/validate-is-my-json-valid/index.ts +30 -0
  1902. package/src/plugins/validate-z-schema/index.ts +58 -0
  1903. package/src/plugins/vector/helper.ts +0 -0
  1904. package/src/plugins/vector/index.ts +2 -0
  1905. package/src/plugins/vector/types.ts +1 -0
  1906. package/src/plugins/vector/vector-distance.ts +34 -0
  1907. package/src/plugins/webmcp/index.ts +2 -0
  1908. package/src/plugins/webmcp/nosql-query-schema.ts +299 -0
  1909. package/src/plugins/webmcp/webmcp.ts +319 -0
  1910. package/src/query-cache.ts +139 -0
  1911. package/src/query-planner.ts +386 -0
  1912. package/src/replication-protocol/checkpoint.ts +154 -0
  1913. package/src/replication-protocol/conflicts.ts +53 -0
  1914. package/src/replication-protocol/default-conflict-handler.ts +43 -0
  1915. package/src/replication-protocol/downstream.ts +550 -0
  1916. package/src/replication-protocol/helper.ts +96 -0
  1917. package/src/replication-protocol/index.ts +348 -0
  1918. package/src/replication-protocol/meta-instance.ts +195 -0
  1919. package/src/replication-protocol/upstream.ts +560 -0
  1920. package/src/rx-change-event.ts +137 -0
  1921. package/src/rx-collection-helper.ts +262 -0
  1922. package/src/rx-collection.ts +1306 -0
  1923. package/src/rx-database-internal-store.ts +402 -0
  1924. package/src/rx-database.ts +919 -0
  1925. package/src/rx-document-prototype-merge.ts +124 -0
  1926. package/src/rx-document.ts +557 -0
  1927. package/src/rx-error.ts +190 -0
  1928. package/src/rx-query-helper.ts +317 -0
  1929. package/src/rx-query-mingo.ts +87 -0
  1930. package/src/rx-query-single-result.ts +110 -0
  1931. package/src/rx-query.ts +887 -0
  1932. package/src/rx-schema-helper.ts +391 -0
  1933. package/src/rx-schema.ts +247 -0
  1934. package/src/rx-storage-helper.ts +1050 -0
  1935. package/src/rx-storage-multiinstance.ts +188 -0
  1936. package/src/types/conflict-handling.d.ts +48 -0
  1937. package/src/types/couchdb.d.ts +293 -0
  1938. package/src/types/index.d.ts +32 -0
  1939. package/src/types/modules/index.d.ts +0 -0
  1940. package/src/types/modules/mocha.parallel.d.ts +1 -0
  1941. package/src/types/plugins/backup.d.ts +35 -0
  1942. package/src/types/plugins/cleanup.d.ts +38 -0
  1943. package/src/types/plugins/crdt.d.ts +76 -0
  1944. package/src/types/plugins/dexie.d.ts +30 -0
  1945. package/src/types/plugins/local-documents.d.ts +49 -0
  1946. package/src/types/plugins/migration.d.ts +14 -0
  1947. package/src/types/plugins/reactivity.d.ts +40 -0
  1948. package/src/types/plugins/replication-graphql.d.ts +98 -0
  1949. package/src/types/plugins/replication.d.ts +175 -0
  1950. package/src/types/plugins/state.d.ts +4 -0
  1951. package/src/types/plugins/update.d.ts +23 -0
  1952. package/src/types/plugins/webmcp.d.ts +40 -0
  1953. package/src/types/query-planner.d.ts +47 -0
  1954. package/src/types/replication-protocol.d.ts +296 -0
  1955. package/src/types/rx-attachment.d.ts +46 -0
  1956. package/src/types/rx-change-event.d.ts +85 -0
  1957. package/src/types/rx-collection.d.ts +117 -0
  1958. package/src/types/rx-database-internal-store.d.ts +54 -0
  1959. package/src/types/rx-database.d.ts +124 -0
  1960. package/src/types/rx-document.d.ts +160 -0
  1961. package/src/types/rx-error.d.ts +222 -0
  1962. package/src/types/rx-plugin.d.ts +167 -0
  1963. package/src/types/rx-query.d.ts +144 -0
  1964. package/src/types/rx-schema.d.ts +209 -0
  1965. package/src/types/rx-storage.d.ts +347 -0
  1966. package/src/types/rx-storage.interface.d.ts +312 -0
  1967. package/src/types/util.d.ts +180 -0
  1968. package/tsconfig.json +54 -0
  1969. package/tsconfig.lint.json +18 -0
@@ -0,0 +1,271 @@
1
+ /**
2
+ * For some RxStorage implementations,
3
+ * we need to use our custom crafted indexes
4
+ * so we can easily iterate over them. And sort plain arrays of document data.
5
+ *
6
+ * We really often have to craft an index string for a given document.
7
+ * Performance of everything in this file is very important
8
+ * which is why the code sometimes looks strange.
9
+ * Run performance tests before and after you touch anything here!
10
+ */
11
+
12
+ import { getSchemaByObjectPath } from "./rx-schema-helper.js";
13
+ import { ensureNotFalsy, objectPathMonad } from "./plugins/utils/index.js";
14
+ import { INDEX_MAX, INDEX_MIN } from "./query-planner.js";
15
+
16
+ /**
17
+ * Prepare all relevant information
18
+ * outside of the returned function
19
+ * from getIndexableStringMonad()
20
+ * to save performance when the returned
21
+ * function is called many times.
22
+ */
23
+
24
+ export function getIndexMeta(schema, index) {
25
+ var fieldNameProperties = index.map(fieldName => {
26
+ var schemaPart = getSchemaByObjectPath(schema, fieldName);
27
+ if (!schemaPart) {
28
+ throw new Error('not in schema: ' + fieldName);
29
+ }
30
+ var type = schemaPart.type;
31
+ var parsedLengths;
32
+ if (type === 'number' || type === 'integer') {
33
+ parsedLengths = getStringLengthOfIndexNumber(schemaPart);
34
+ }
35
+ var getValue = objectPathMonad(fieldName);
36
+ var maxLength = schemaPart.maxLength ? schemaPart.maxLength : 0;
37
+ var getIndexStringPart;
38
+ if (type === 'string') {
39
+ getIndexStringPart = docData => {
40
+ var fieldValue = getValue(docData);
41
+ if (!fieldValue) {
42
+ fieldValue = '';
43
+ }
44
+ return fieldValue.padEnd(maxLength, ' ');
45
+ };
46
+ } else if (type === 'boolean') {
47
+ getIndexStringPart = docData => {
48
+ var fieldValue = getValue(docData);
49
+ return fieldValue ? '1' : '0';
50
+ };
51
+ } else {
52
+ // number
53
+ getIndexStringPart = docData => {
54
+ var fieldValue = getValue(docData);
55
+ return getNumberIndexString(parsedLengths, fieldValue);
56
+ };
57
+ }
58
+ var ret = {
59
+ fieldName,
60
+ schemaPart,
61
+ parsedLengths,
62
+ getValue,
63
+ getIndexStringPart
64
+ };
65
+ return ret;
66
+ });
67
+ return fieldNameProperties;
68
+ }
69
+
70
+ /**
71
+ * Crafts an indexable string that can be used
72
+ * to check if a document would be sorted below or above
73
+ * another documents, dependent on the index values.
74
+ * @monad for better performance
75
+ *
76
+ * IMPORTANT: Performance is really important here
77
+ * which is why we code so 'strange'.
78
+ * Always run performance tests when you want to
79
+ * change something in this method.
80
+ */
81
+ export function getIndexableStringMonad(schema, index) {
82
+ var fieldNameProperties = getIndexMeta(schema, index);
83
+ var fieldNamePropertiesAmount = fieldNameProperties.length;
84
+ var indexPartsFunctions = fieldNameProperties.map(r => r.getIndexStringPart);
85
+
86
+ /**
87
+ * @hotPath Performance of this function is very critical!
88
+ */
89
+ var ret = function (docData) {
90
+ var str = '';
91
+ for (var i = 0; i < fieldNamePropertiesAmount; ++i) {
92
+ str += indexPartsFunctions[i](docData);
93
+ }
94
+ return str;
95
+ };
96
+ return ret;
97
+ }
98
+ export function getStringLengthOfIndexNumber(schemaPart) {
99
+ var minimum = Math.floor(schemaPart.minimum);
100
+ var maximum = Math.ceil(schemaPart.maximum);
101
+ var multipleOf = schemaPart.multipleOf;
102
+ var valueSpan = maximum - minimum;
103
+ var nonDecimals = valueSpan.toString().length;
104
+ var multipleOfParts = multipleOf.toString().split('.');
105
+ var decimals = 0;
106
+ if (multipleOfParts.length > 1) {
107
+ decimals = multipleOfParts[1].length;
108
+ }
109
+ return {
110
+ minimum,
111
+ maximum,
112
+ nonDecimals,
113
+ decimals,
114
+ roundedMinimum: minimum
115
+ };
116
+ }
117
+ export function getIndexStringLength(schema, index) {
118
+ var fieldNameProperties = getIndexMeta(schema, index);
119
+ var length = 0;
120
+ fieldNameProperties.forEach(props => {
121
+ var schemaPart = props.schemaPart;
122
+ var type = schemaPart.type;
123
+ if (type === 'string') {
124
+ length += schemaPart.maxLength;
125
+ } else if (type === 'boolean') {
126
+ length += 1;
127
+ } else {
128
+ var parsedLengths = props.parsedLengths;
129
+ length = length + parsedLengths.nonDecimals + parsedLengths.decimals;
130
+ }
131
+ });
132
+ return length;
133
+ }
134
+ export function getPrimaryKeyFromIndexableString(indexableString, primaryKeyLength) {
135
+ var paddedPrimaryKey = indexableString.slice(primaryKeyLength * -1);
136
+ // we can safely trim here because the primary key is not allowed to start or end with a space char.
137
+ var primaryKey = paddedPrimaryKey.trim();
138
+ return primaryKey;
139
+ }
140
+ export function getNumberIndexString(parsedLengths, fieldValue) {
141
+ /**
142
+ * Ensure that the given value is in the boundaries
143
+ * of the schema, otherwise it would create a broken index string.
144
+ * This can happen for example if you have a minimum of 0
145
+ * and run a query like
146
+ * selector {
147
+ * numField: { $gt: -1000 }
148
+ * }
149
+ */
150
+ if (typeof fieldValue === 'undefined') {
151
+ fieldValue = 0;
152
+ }
153
+ if (fieldValue < parsedLengths.minimum) {
154
+ fieldValue = parsedLengths.minimum;
155
+ }
156
+ if (fieldValue > parsedLengths.maximum) {
157
+ fieldValue = parsedLengths.maximum;
158
+ }
159
+ var nonDecimalsValueAsString = (Math.floor(fieldValue) - parsedLengths.roundedMinimum).toString();
160
+ var str = nonDecimalsValueAsString.padStart(parsedLengths.nonDecimals, '0');
161
+ if (parsedLengths.decimals > 0) {
162
+ var splitByDecimalPoint = fieldValue.toString().split('.');
163
+ var decimalValueAsString = splitByDecimalPoint.length > 1 ? splitByDecimalPoint[1] : '0';
164
+ str += decimalValueAsString.padEnd(parsedLengths.decimals, '0');
165
+ }
166
+ return str;
167
+ }
168
+ export function getStartIndexStringFromLowerBound(schema, index, lowerBound) {
169
+ var str = '';
170
+ index.forEach((fieldName, idx) => {
171
+ var schemaPart = getSchemaByObjectPath(schema, fieldName);
172
+ var bound = lowerBound[idx];
173
+ var type = schemaPart.type;
174
+ switch (type) {
175
+ case 'string':
176
+ var maxLength = ensureNotFalsy(schemaPart.maxLength, 'maxLength not set');
177
+ if (typeof bound === 'string') {
178
+ str += bound.padEnd(maxLength, ' ');
179
+ } else {
180
+ // str += ''.padStart(maxLength, inclusiveStart ? ' ' : INDEX_MAX);
181
+ str += ''.padEnd(maxLength, ' ');
182
+ }
183
+ break;
184
+ case 'boolean':
185
+ if (bound === null) {
186
+ str += '0';
187
+ } else if (bound === INDEX_MIN) {
188
+ str += '0';
189
+ } else if (bound === INDEX_MAX) {
190
+ str += '1';
191
+ } else {
192
+ var boolToStr = bound ? '1' : '0';
193
+ str += boolToStr;
194
+ }
195
+ break;
196
+ case 'number':
197
+ case 'integer':
198
+ var parsedLengths = getStringLengthOfIndexNumber(schemaPart);
199
+ if (bound === null || bound === INDEX_MIN) {
200
+ var fillChar = '0';
201
+ str += fillChar.repeat(parsedLengths.nonDecimals + parsedLengths.decimals);
202
+ } else if (bound === INDEX_MAX) {
203
+ str += getNumberIndexString(parsedLengths, parsedLengths.maximum);
204
+ } else {
205
+ var add = getNumberIndexString(parsedLengths, bound);
206
+ str += add;
207
+ }
208
+ break;
209
+ default:
210
+ throw new Error('unknown index type ' + type);
211
+ }
212
+ });
213
+ return str;
214
+ }
215
+ export function getStartIndexStringFromUpperBound(schema, index, upperBound) {
216
+ var str = '';
217
+ index.forEach((fieldName, idx) => {
218
+ var schemaPart = getSchemaByObjectPath(schema, fieldName);
219
+ var bound = upperBound[idx];
220
+ var type = schemaPart.type;
221
+ switch (type) {
222
+ case 'string':
223
+ var maxLength = ensureNotFalsy(schemaPart.maxLength, 'maxLength not set');
224
+ if (typeof bound === 'string' && bound !== INDEX_MAX) {
225
+ str += bound.padEnd(maxLength, ' ');
226
+ } else if (bound === INDEX_MIN) {
227
+ str += ''.padEnd(maxLength, ' ');
228
+ } else {
229
+ str += ''.padEnd(maxLength, INDEX_MAX);
230
+ }
231
+ break;
232
+ case 'boolean':
233
+ if (bound === null) {
234
+ str += '1';
235
+ } else {
236
+ var boolToStr = bound ? '1' : '0';
237
+ str += boolToStr;
238
+ }
239
+ break;
240
+ case 'number':
241
+ case 'integer':
242
+ var parsedLengths = getStringLengthOfIndexNumber(schemaPart);
243
+ if (bound === null || bound === INDEX_MAX) {
244
+ var fillChar = '9';
245
+ str += fillChar.repeat(parsedLengths.nonDecimals + parsedLengths.decimals);
246
+ } else if (bound === INDEX_MIN) {
247
+ var _fillChar = '0';
248
+ str += _fillChar.repeat(parsedLengths.nonDecimals + parsedLengths.decimals);
249
+ } else {
250
+ str += getNumberIndexString(parsedLengths, bound);
251
+ }
252
+ break;
253
+ default:
254
+ throw new Error('unknown index type ' + type);
255
+ }
256
+ });
257
+ return str;
258
+ }
259
+
260
+ /**
261
+ * Used in storages where it is not possible
262
+ * to define inclusiveEnd/inclusiveStart
263
+ */
264
+ export function changeIndexableStringByOneQuantum(str, direction) {
265
+ var lastChar = str.slice(-1);
266
+ var charCode = lastChar.charCodeAt(0);
267
+ charCode = charCode + direction;
268
+ var withoutLastChar = str.slice(0, -1);
269
+ return withoutLastChar + String.fromCharCode(charCode);
270
+ }
271
+ //# sourceMappingURL=custom-index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-index.js","names":["getSchemaByObjectPath","ensureNotFalsy","objectPathMonad","INDEX_MAX","INDEX_MIN","getIndexMeta","schema","index","fieldNameProperties","map","fieldName","schemaPart","Error","type","parsedLengths","getStringLengthOfIndexNumber","getValue","maxLength","getIndexStringPart","docData","fieldValue","padEnd","getNumberIndexString","ret","getIndexableStringMonad","fieldNamePropertiesAmount","length","indexPartsFunctions","r","str","i","minimum","Math","floor","maximum","ceil","multipleOf","valueSpan","nonDecimals","toString","multipleOfParts","split","decimals","roundedMinimum","getIndexStringLength","forEach","props","getPrimaryKeyFromIndexableString","indexableString","primaryKeyLength","paddedPrimaryKey","slice","primaryKey","trim","nonDecimalsValueAsString","padStart","splitByDecimalPoint","decimalValueAsString","getStartIndexStringFromLowerBound","lowerBound","idx","bound","boolToStr","fillChar","repeat","add","getStartIndexStringFromUpperBound","upperBound","changeIndexableStringByOneQuantum","direction","lastChar","charCode","charCodeAt","withoutLastChar","String","fromCharCode"],"sources":["../../src/custom-index.ts"],"sourcesContent":["/**\r\n * For some RxStorage implementations,\r\n * we need to use our custom crafted indexes\r\n * so we can easily iterate over them. And sort plain arrays of document data.\r\n *\r\n * We really often have to craft an index string for a given document.\r\n * Performance of everything in this file is very important\r\n * which is why the code sometimes looks strange.\r\n * Run performance tests before and after you touch anything here!\r\n */\r\n\r\nimport {\r\n getSchemaByObjectPath\r\n} from './rx-schema-helper.ts';\r\nimport type {\r\n JsonSchema,\r\n RxDocumentData,\r\n RxJsonSchema\r\n} from './types/index.d.ts';\r\nimport {\r\n ensureNotFalsy,\r\n objectPathMonad,\r\n ObjectPathMonadFunction\r\n} from './plugins/utils/index.ts';\r\nimport {\r\n INDEX_MAX,\r\n INDEX_MIN\r\n} from './query-planner.ts';\r\n\r\n\r\n/**\r\n * Prepare all relevant information\r\n * outside of the returned function\r\n * from getIndexableStringMonad()\r\n * to save performance when the returned\r\n * function is called many times.\r\n */\r\ntype IndexMetaField<RxDocType> = {\r\n fieldName: string;\r\n schemaPart: JsonSchema;\r\n /*\r\n * Only in number fields.\r\n */\r\n parsedLengths?: ParsedLengths;\r\n getValue: ObjectPathMonadFunction<RxDocType>;\r\n getIndexStringPart: (docData: RxDocumentData<RxDocType>) => string;\r\n};\r\n\r\nexport function getIndexMeta<RxDocType>(\r\n schema: RxJsonSchema<RxDocumentData<RxDocType>>,\r\n index: string[]\r\n): IndexMetaField<RxDocType>[] {\r\n const fieldNameProperties: IndexMetaField<RxDocType>[] = index.map(fieldName => {\r\n const schemaPart = getSchemaByObjectPath(\r\n schema,\r\n fieldName\r\n );\r\n if (!schemaPart) {\r\n throw new Error('not in schema: ' + fieldName);\r\n }\r\n const type = schemaPart.type;\r\n let parsedLengths: ParsedLengths | undefined;\r\n if (type === 'number' || type === 'integer') {\r\n parsedLengths = getStringLengthOfIndexNumber(\r\n schemaPart\r\n );\r\n }\r\n\r\n const getValue = objectPathMonad(fieldName);\r\n const maxLength = schemaPart.maxLength ? schemaPart.maxLength : 0;\r\n\r\n let getIndexStringPart: (docData: RxDocumentData<RxDocType>) => string;\r\n if (type === 'string') {\r\n getIndexStringPart = docData => {\r\n let fieldValue = getValue(docData);\r\n if (!fieldValue) {\r\n fieldValue = '';\r\n }\r\n return fieldValue.padEnd(maxLength, ' ');\r\n };\r\n } else if (type === 'boolean') {\r\n getIndexStringPart = docData => {\r\n const fieldValue = getValue(docData);\r\n return fieldValue ? '1' : '0';\r\n };\r\n } else { // number\r\n getIndexStringPart = docData => {\r\n const fieldValue = getValue(docData);\r\n return getNumberIndexString(\r\n parsedLengths as any,\r\n fieldValue\r\n );\r\n };\r\n }\r\n\r\n const ret: IndexMetaField<RxDocType> = {\r\n fieldName,\r\n schemaPart,\r\n parsedLengths,\r\n getValue,\r\n getIndexStringPart\r\n };\r\n return ret;\r\n });\r\n return fieldNameProperties;\r\n}\r\n\r\n\r\n/**\r\n * Crafts an indexable string that can be used\r\n * to check if a document would be sorted below or above\r\n * another documents, dependent on the index values.\r\n * @monad for better performance\r\n *\r\n * IMPORTANT: Performance is really important here\r\n * which is why we code so 'strange'.\r\n * Always run performance tests when you want to\r\n * change something in this method.\r\n */\r\nexport function getIndexableStringMonad<RxDocType>(\r\n schema: RxJsonSchema<RxDocumentData<RxDocType>>,\r\n index: string[]\r\n): (docData: RxDocumentData<RxDocType>) => string {\r\n const fieldNameProperties = getIndexMeta(schema, index);\r\n const fieldNamePropertiesAmount = fieldNameProperties.length;\r\n const indexPartsFunctions = fieldNameProperties.map(r => r.getIndexStringPart);\r\n\r\n\r\n /**\r\n * @hotPath Performance of this function is very critical!\r\n */\r\n const ret = function (docData: RxDocumentData<RxDocType>): string {\r\n let str = '';\r\n for (let i = 0; i < fieldNamePropertiesAmount; ++i) {\r\n str += indexPartsFunctions[i](docData);\r\n }\r\n return str;\r\n };\r\n return ret;\r\n}\r\n\r\n\r\ndeclare type ParsedLengths = {\r\n minimum: number;\r\n maximum: number;\r\n nonDecimals: number;\r\n decimals: number;\r\n roundedMinimum: number;\r\n};\r\nexport function getStringLengthOfIndexNumber(\r\n schemaPart: JsonSchema\r\n): ParsedLengths {\r\n const minimum = Math.floor(schemaPart.minimum as number);\r\n const maximum = Math.ceil(schemaPart.maximum as number);\r\n const multipleOf: number = schemaPart.multipleOf as number;\r\n\r\n const valueSpan = maximum - minimum;\r\n const nonDecimals = valueSpan.toString().length;\r\n\r\n const multipleOfParts = multipleOf.toString().split('.');\r\n let decimals = 0;\r\n if (multipleOfParts.length > 1) {\r\n decimals = multipleOfParts[1].length;\r\n }\r\n return {\r\n minimum,\r\n maximum,\r\n nonDecimals,\r\n decimals,\r\n roundedMinimum: minimum\r\n };\r\n}\r\n\r\nexport function getIndexStringLength<RxDocType>(\r\n schema: RxJsonSchema<RxDocumentData<RxDocType>>,\r\n index: string[]\r\n): number {\r\n const fieldNameProperties = getIndexMeta(schema, index);\r\n let length = 0;\r\n fieldNameProperties.forEach(props => {\r\n const schemaPart = props.schemaPart;\r\n const type = schemaPart.type;\r\n\r\n if (type === 'string') {\r\n length += schemaPart.maxLength as number;\r\n } else if (type === 'boolean') {\r\n length += 1;\r\n } else {\r\n const parsedLengths = props.parsedLengths as ParsedLengths;\r\n length = length + parsedLengths.nonDecimals + parsedLengths.decimals;\r\n }\r\n\r\n });\r\n return length;\r\n}\r\n\r\n\r\nexport function getPrimaryKeyFromIndexableString(\r\n indexableString: string,\r\n primaryKeyLength: number\r\n): string {\r\n const paddedPrimaryKey = indexableString.slice(primaryKeyLength * -1);\r\n // we can safely trim here because the primary key is not allowed to start or end with a space char.\r\n const primaryKey = paddedPrimaryKey.trim();\r\n return primaryKey;\r\n}\r\n\r\n\r\nexport function getNumberIndexString(\r\n parsedLengths: ParsedLengths,\r\n fieldValue: number\r\n): string {\r\n /**\r\n * Ensure that the given value is in the boundaries\r\n * of the schema, otherwise it would create a broken index string.\r\n * This can happen for example if you have a minimum of 0\r\n * and run a query like\r\n * selector {\r\n * numField: { $gt: -1000 }\r\n * }\r\n */\r\n if (typeof fieldValue === 'undefined') {\r\n fieldValue = 0;\r\n }\r\n if (fieldValue < parsedLengths.minimum) {\r\n fieldValue = parsedLengths.minimum;\r\n }\r\n if (fieldValue > parsedLengths.maximum) {\r\n fieldValue = parsedLengths.maximum;\r\n }\r\n\r\n const nonDecimalsValueAsString = (Math.floor(fieldValue) - parsedLengths.roundedMinimum).toString();\r\n let str = nonDecimalsValueAsString.padStart(parsedLengths.nonDecimals, '0');\r\n\r\n if (parsedLengths.decimals > 0) {\r\n const splitByDecimalPoint = fieldValue.toString().split('.');\r\n const decimalValueAsString = splitByDecimalPoint.length > 1 ? splitByDecimalPoint[1] : '0';\r\n str += decimalValueAsString.padEnd(parsedLengths.decimals, '0');\r\n }\r\n return str;\r\n}\r\n\r\nexport function getStartIndexStringFromLowerBound(\r\n schema: RxJsonSchema<any>,\r\n index: string[],\r\n lowerBound: (string | boolean | number | null | undefined)[]\r\n): string {\r\n let str = '';\r\n index.forEach((fieldName, idx) => {\r\n const schemaPart = getSchemaByObjectPath(\r\n schema,\r\n fieldName\r\n );\r\n const bound = lowerBound[idx];\r\n const type = schemaPart.type;\r\n\r\n switch (type) {\r\n case 'string':\r\n const maxLength = ensureNotFalsy(schemaPart.maxLength, 'maxLength not set');\r\n if (typeof bound === 'string') {\r\n str += (bound as string).padEnd(maxLength, ' ');\r\n } else {\r\n // str += ''.padStart(maxLength, inclusiveStart ? ' ' : INDEX_MAX);\r\n str += ''.padEnd(maxLength, ' ');\r\n }\r\n break;\r\n case 'boolean':\r\n if (bound === null) {\r\n str += '0';\r\n } else if (bound === INDEX_MIN) {\r\n str += '0';\r\n } else if (bound === INDEX_MAX) {\r\n str += '1';\r\n } else {\r\n const boolToStr = bound ? '1' : '0';\r\n str += boolToStr;\r\n }\r\n break;\r\n case 'number':\r\n case 'integer':\r\n const parsedLengths = getStringLengthOfIndexNumber(\r\n schemaPart\r\n );\r\n if (bound === null || bound === INDEX_MIN) {\r\n const fillChar = '0';\r\n str += fillChar.repeat(parsedLengths.nonDecimals + parsedLengths.decimals);\r\n } else if (bound === INDEX_MAX) {\r\n str += getNumberIndexString(\r\n parsedLengths,\r\n parsedLengths.maximum\r\n );\r\n } else {\r\n const add = getNumberIndexString(\r\n parsedLengths,\r\n bound as number\r\n );\r\n str += add;\r\n }\r\n break;\r\n default:\r\n throw new Error('unknown index type ' + type);\r\n }\r\n });\r\n return str;\r\n}\r\n\r\n\r\nexport function getStartIndexStringFromUpperBound(\r\n schema: RxJsonSchema<any>,\r\n index: string[],\r\n upperBound: (string | boolean | number | null | undefined)[]\r\n): string {\r\n let str = '';\r\n index.forEach((fieldName, idx) => {\r\n const schemaPart = getSchemaByObjectPath(\r\n schema,\r\n fieldName\r\n );\r\n const bound = upperBound[idx];\r\n const type = schemaPart.type;\r\n\r\n switch (type) {\r\n case 'string':\r\n const maxLength = ensureNotFalsy(schemaPart.maxLength, 'maxLength not set');\r\n if (typeof bound === 'string' && bound !== INDEX_MAX) {\r\n str += (bound as string).padEnd(maxLength, ' ');\r\n } else if (bound === INDEX_MIN) {\r\n str += ''.padEnd(maxLength, ' ');\r\n } else {\r\n str += ''.padEnd(maxLength, INDEX_MAX);\r\n }\r\n break;\r\n case 'boolean':\r\n if (bound === null) {\r\n str += '1';\r\n } else {\r\n const boolToStr = bound ? '1' : '0';\r\n str += boolToStr;\r\n }\r\n break;\r\n case 'number':\r\n case 'integer':\r\n const parsedLengths = getStringLengthOfIndexNumber(\r\n schemaPart\r\n );\r\n if (bound === null || bound === INDEX_MAX) {\r\n const fillChar = '9';\r\n str += fillChar.repeat(parsedLengths.nonDecimals + parsedLengths.decimals);\r\n } else if (bound === INDEX_MIN) {\r\n const fillChar = '0';\r\n str += fillChar.repeat(parsedLengths.nonDecimals + parsedLengths.decimals);\r\n } else {\r\n str += getNumberIndexString(\r\n parsedLengths,\r\n bound as number\r\n );\r\n }\r\n break;\r\n default:\r\n throw new Error('unknown index type ' + type);\r\n }\r\n });\r\n return str;\r\n}\r\n\r\n/**\r\n * Used in storages where it is not possible\r\n * to define inclusiveEnd/inclusiveStart\r\n */\r\nexport function changeIndexableStringByOneQuantum(str: string, direction: 1 | -1): string {\r\n const lastChar = str.slice(-1);\r\n let charCode = lastChar.charCodeAt(0);\r\n charCode = charCode + direction;\r\n const withoutLastChar = str.slice(0, -1);\r\n return withoutLastChar + String.fromCharCode(charCode);\r\n}\r\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,227 @@
1
+ import _createClass from "@babel/runtime/helpers/createClass";
2
+ import { getFromMapOrThrow, getHeightOfRevision, overwriteGetterForCaching, requestIdlePromiseNoQueue } from "./plugins/utils/index.js";
3
+ import { overwritable } from "./overwritable.js";
4
+
5
+ /**
6
+ * Because we have to create many cache items,
7
+ * we use an array instead of an object with properties
8
+ * for better performance and less memory usage.
9
+ * @link https://stackoverflow.com/questions/17295056/array-vs-object-efficiency-in-javascript
10
+ */
11
+
12
+ /**
13
+ * @link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/FinalizationRegistry
14
+ */
15
+
16
+ /**
17
+ * The DocumentCache stores RxDocument objects
18
+ * by their primary key and revision.
19
+ * This is useful on client side applications where
20
+ * it is not known how much memory can be used, so
21
+ * we de-duplicate RxDocument states to save memory.
22
+ * To not fill up the memory with old document states, the DocumentCache
23
+ * only contains weak references to the RxDocuments themself.
24
+ * @link https://caniuse.com/?search=weakref
25
+ */
26
+ export var DocumentCache = /*#__PURE__*/function () {
27
+ /**
28
+ * Process stuff lazy to not block the CPU
29
+ * on critical paths.
30
+ */
31
+
32
+ /**
33
+ * Some JavaScript runtimes like QuickJS,
34
+ * so not have a FinalizationRegistry or WeakRef.
35
+ * Therefore we need a workaround which might waste a lot of memory,
36
+ * but at least works.
37
+ */
38
+
39
+ function DocumentCache(primaryPath, changes$,
40
+ /**
41
+ * A method that can create a RxDocument by the given document data.
42
+ */
43
+ documentCreator) {
44
+ this.cacheItemByDocId = new Map();
45
+ this.tasks = new Set();
46
+ this.registry = typeof FinalizationRegistry === 'function' ? new FinalizationRegistry(docMeta => {
47
+ var docId = docMeta.docId;
48
+ var cacheItem = this.cacheItemByDocId.get(docId);
49
+ if (cacheItem) {
50
+ cacheItem[0].delete(docMeta.revisionHeight + docMeta.lwt + '');
51
+ if (cacheItem[0].size === 0) {
52
+ /**
53
+ * No state of the document is cached anymore,
54
+ * so we can clean up.
55
+ */
56
+ this.cacheItemByDocId.delete(docId);
57
+ }
58
+ }
59
+ }) : undefined;
60
+ this.primaryPath = primaryPath;
61
+ this.changes$ = changes$;
62
+ this.documentCreator = documentCreator;
63
+ changes$.subscribe(events => {
64
+ this.tasks.add(() => {
65
+ var cacheItemByDocId = this.cacheItemByDocId;
66
+ for (var index = 0; index < events.length; index++) {
67
+ var event = events[index];
68
+ var cacheItem = cacheItemByDocId.get(event.documentId);
69
+ if (cacheItem) {
70
+ var documentData = event.documentData;
71
+ if (!documentData) {
72
+ documentData = event.previousDocumentData;
73
+ }
74
+ cacheItem[1] = documentData;
75
+ }
76
+ }
77
+ });
78
+ if (this.tasks.size <= 1) {
79
+ requestIdlePromiseNoQueue().then(() => {
80
+ this.processTasks();
81
+ });
82
+ }
83
+ });
84
+ }
85
+ var _proto = DocumentCache.prototype;
86
+ _proto.processTasks = function processTasks() {
87
+ if (this.tasks.size === 0) {
88
+ return;
89
+ }
90
+ var tasks = Array.from(this.tasks);
91
+ tasks.forEach(task => task());
92
+ this.tasks.clear();
93
+ }
94
+
95
+ /**
96
+ * Get the RxDocument from the cache
97
+ * and create a new one if not exits before.
98
+ * @overwrites itself with the actual function
99
+ * because this is @performance relevant.
100
+ * It is called on each document row for each write and read.
101
+ */;
102
+ /**
103
+ * Throws if not exists
104
+ */
105
+ _proto.getLatestDocumentData = function getLatestDocumentData(docId) {
106
+ this.processTasks();
107
+ var cacheItem = getFromMapOrThrow(this.cacheItemByDocId, docId);
108
+ return cacheItem[1];
109
+ };
110
+ _proto.getLatestDocumentDataIfExists = function getLatestDocumentDataIfExists(docId) {
111
+ this.processTasks();
112
+ var cacheItem = this.cacheItemByDocId.get(docId);
113
+ if (cacheItem) {
114
+ return cacheItem[1];
115
+ }
116
+ };
117
+ return _createClass(DocumentCache, [{
118
+ key: "getCachedRxDocuments",
119
+ get: function () {
120
+ var fn = getCachedRxDocumentMonad(this);
121
+ return overwriteGetterForCaching(this, 'getCachedRxDocuments', fn);
122
+ }
123
+ }, {
124
+ key: "getCachedRxDocument",
125
+ get: function () {
126
+ var fn = getCachedRxDocumentMonad(this);
127
+ return overwriteGetterForCaching(this, 'getCachedRxDocument', doc => fn([doc])[0]);
128
+ }
129
+ }]);
130
+ }();
131
+
132
+ /**
133
+ * This function is called very very often.
134
+ * @hotPath This is one of the most important methods for performance.
135
+ * It is used in many places to transform the raw document data into RxDocuments.
136
+ */
137
+ function getCachedRxDocumentMonad(docCache) {
138
+ var primaryPath = docCache.primaryPath;
139
+ var cacheItemByDocId = docCache.cacheItemByDocId;
140
+ var registry = docCache.registry;
141
+ var deepFreezeWhenDevMode = overwritable.deepFreezeWhenDevMode;
142
+ var documentCreator = docCache.documentCreator;
143
+ var fn = docsData => {
144
+ var ret = new Array(docsData.length);
145
+ var registryTasks = [];
146
+ for (var index = 0; index < docsData.length; index++) {
147
+ var docData = docsData[index];
148
+ var docId = docData[primaryPath];
149
+ var revisionHeight = getHeightOfRevision(docData._rev);
150
+
151
+ /**
152
+ * @performance
153
+ * Compute the byRev cache key once and reuse it
154
+ * for both the Map.get() and Map.set() calls.
155
+ */
156
+ var cacheKey = revisionHeight + docData._meta.lwt + '';
157
+ var byRev = void 0;
158
+ var cachedRxDocumentWeakRef = void 0;
159
+ var cacheItem = cacheItemByDocId.get(docId);
160
+ if (!cacheItem) {
161
+ byRev = new Map();
162
+ cacheItem = [byRev, docData];
163
+ cacheItemByDocId.set(docId, cacheItem);
164
+ } else {
165
+ byRev = cacheItem[0];
166
+ cachedRxDocumentWeakRef = byRev.get(cacheKey);
167
+ }
168
+ var cachedRxDocument = cachedRxDocumentWeakRef ? cachedRxDocumentWeakRef.deref() : undefined;
169
+ if (!cachedRxDocument) {
170
+ docData = deepFreezeWhenDevMode(docData);
171
+ cachedRxDocument = documentCreator(docData);
172
+ byRev.set(cacheKey, createWeakRefWithFallback(cachedRxDocument));
173
+ if (registry) {
174
+ registryTasks.push(cachedRxDocument);
175
+ }
176
+ }
177
+ ret[index] = cachedRxDocument;
178
+ }
179
+ if (registryTasks.length > 0 && registry) {
180
+ /**
181
+ * Calling registry.register() has shown to have
182
+ * really bad performance. So we add the cached documents
183
+ * lazily.
184
+ */
185
+ docCache.tasks.add(() => {
186
+ for (var _index = 0; _index < registryTasks.length; _index++) {
187
+ var doc = registryTasks[_index];
188
+ registry.register(doc, {
189
+ docId: doc.primary,
190
+ revisionHeight: getHeightOfRevision(doc.revision),
191
+ lwt: doc._data._meta.lwt
192
+ });
193
+ }
194
+ });
195
+ if (docCache.tasks.size <= 1) {
196
+ requestIdlePromiseNoQueue().then(() => {
197
+ docCache.processTasks();
198
+ });
199
+ }
200
+ }
201
+ return ret;
202
+ };
203
+ return fn;
204
+ }
205
+ export function mapDocumentsDataToCacheDocs(docCache, docsData) {
206
+ var getCachedRxDocuments = docCache.getCachedRxDocuments;
207
+ return getCachedRxDocuments(docsData);
208
+ }
209
+
210
+ /**
211
+ * Fallback for JavaScript runtimes that do not support WeakRef.
212
+ * The fallback will keep the items in cache forever,
213
+ * but at least works.
214
+ */
215
+ var HAS_WEAK_REF = typeof WeakRef === 'function';
216
+ var createWeakRefWithFallback = HAS_WEAK_REF ? createWeakRef : createWeakRefFallback;
217
+ function createWeakRef(obj) {
218
+ return new WeakRef(obj);
219
+ }
220
+ function createWeakRefFallback(obj) {
221
+ return {
222
+ deref() {
223
+ return obj;
224
+ }
225
+ };
226
+ }
227
+ //# sourceMappingURL=doc-cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doc-cache.js","names":["getFromMapOrThrow","getHeightOfRevision","overwriteGetterForCaching","requestIdlePromiseNoQueue","overwritable","DocumentCache","primaryPath","changes$","documentCreator","cacheItemByDocId","Map","tasks","Set","registry","FinalizationRegistry","docMeta","docId","cacheItem","get","delete","revisionHeight","lwt","size","undefined","subscribe","events","add","index","length","event","documentId","documentData","previousDocumentData","then","processTasks","_proto","prototype","Array","from","forEach","task","clear","getLatestDocumentData","getLatestDocumentDataIfExists","_createClass","key","fn","getCachedRxDocumentMonad","doc","docCache","deepFreezeWhenDevMode","docsData","ret","registryTasks","docData","_rev","cacheKey","_meta","byRev","cachedRxDocumentWeakRef","set","cachedRxDocument","deref","createWeakRefWithFallback","push","register","primary","revision","_data","mapDocumentsDataToCacheDocs","getCachedRxDocuments","HAS_WEAK_REF","WeakRef","createWeakRef","createWeakRefFallback","obj"],"sources":["../../src/doc-cache.ts"],"sourcesContent":["import type {\r\n RxDocument,\r\n RxDocumentData,\r\n RxStorageChangeEvent,\r\n WeakRef,\r\n FinalizationRegistry\r\n} from './types/index.d.ts';\r\nimport {\r\n getFromMapOrThrow,\r\n getHeightOfRevision,\r\n overwriteGetterForCaching,\r\n requestIdlePromiseNoQueue\r\n} from './plugins/utils/index.ts';\r\nimport {\r\n overwritable\r\n} from './overwritable.ts';\r\nimport { Observable } from 'rxjs';\r\n\r\n/**\r\n * Because we have to create many cache items,\r\n * we use an array instead of an object with properties\r\n * for better performance and less memory usage.\r\n * @link https://stackoverflow.com/questions/17295056/array-vs-object-efficiency-in-javascript\r\n */\r\ndeclare type CacheItem<RxDocType, OrmMethods> = [\r\n /**\r\n * Store the different document states of time\r\n * based on their [revisionHeight+_meta.lwt] .\r\n * We store WeakRefs so that we can later clean up\r\n * document states that are no longer needed.\r\n *\r\n * Notice that we can not only rely on the revisionHeight\r\n * because when cleanup is used, two document states can end up with\r\n * the same revision but different _meta.lwt.\r\n */\r\n Map<string, WeakRef<RxDocument<RxDocType, OrmMethods>>>,\r\n\r\n /**\r\n * Store the latest known document state.\r\n * As long as any state of the document is in the cache,\r\n * we observe the changestream and update the latestDoc accordingly.\r\n * This makes it easier to optimize performance on other parts\r\n * because for each known document we can always get the current state\r\n * in the storage.\r\n * Also it makes it possible to call RxDocument.latest() in a non-async way\r\n * to retrieve the latest document state or to observe$ some property.\r\n *\r\n * To not prevent the whole cacheItem from being garbage collected,\r\n * we store only the document data here, but not the RxDocument.\r\n */\r\n RxDocumentData<RxDocType>\r\n];\r\n\r\n\r\n/**\r\n * @link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/FinalizationRegistry\r\n */\r\ndeclare type FinalizationRegistryValue = {\r\n docId: string;\r\n revisionHeight: number;\r\n lwt: number;\r\n};\r\n\r\n/**\r\n * The DocumentCache stores RxDocument objects\r\n * by their primary key and revision.\r\n * This is useful on client side applications where\r\n * it is not known how much memory can be used, so\r\n * we de-duplicate RxDocument states to save memory.\r\n * To not fill up the memory with old document states, the DocumentCache\r\n * only contains weak references to the RxDocuments themself.\r\n * @link https://caniuse.com/?search=weakref\r\n */\r\nexport class DocumentCache<RxDocType, OrmMethods> {\r\n public readonly cacheItemByDocId = new Map<string, CacheItem<RxDocType, OrmMethods>>();\r\n\r\n /**\r\n * Process stuff lazy to not block the CPU\r\n * on critical paths.\r\n */\r\n public readonly tasks = new Set<Function>();\r\n\r\n /**\r\n * Some JavaScript runtimes like QuickJS,\r\n * so not have a FinalizationRegistry or WeakRef.\r\n * Therefore we need a workaround which might waste a lot of memory,\r\n * but at least works.\r\n */\r\n public readonly registry?: FinalizationRegistry<FinalizationRegistryValue> = typeof FinalizationRegistry === 'function' ?\r\n new FinalizationRegistry<FinalizationRegistryValue>(docMeta => {\r\n const docId = docMeta.docId;\r\n const cacheItem = this.cacheItemByDocId.get(docId);\r\n if (cacheItem) {\r\n cacheItem[0].delete(docMeta.revisionHeight + docMeta.lwt + '');\r\n if (cacheItem[0].size === 0) {\r\n /**\r\n * No state of the document is cached anymore,\r\n * so we can clean up.\r\n */\r\n this.cacheItemByDocId.delete(docId);\r\n }\r\n }\r\n }) as any :\r\n undefined;\r\n\r\n constructor(\r\n public readonly primaryPath: string,\r\n public readonly changes$: Observable<RxStorageChangeEvent<RxDocType>[]>,\r\n /**\r\n * A method that can create a RxDocument by the given document data.\r\n */\r\n public documentCreator: (docData: RxDocumentData<RxDocType>) => RxDocument<RxDocType, OrmMethods>\r\n ) {\r\n changes$.subscribe((events: RxStorageChangeEvent<RxDocType>[]) => {\r\n this.tasks.add(() => {\r\n const cacheItemByDocId = this.cacheItemByDocId;\r\n for (let index = 0; index < events.length; index++) {\r\n const event = events[index];\r\n const cacheItem = cacheItemByDocId.get(event.documentId);\r\n if (cacheItem) {\r\n let documentData = event.documentData;\r\n if (!documentData) {\r\n documentData = event.previousDocumentData as any;\r\n }\r\n cacheItem[1] = documentData;\r\n }\r\n }\r\n });\r\n if (this.tasks.size <= 1) {\r\n requestIdlePromiseNoQueue().then(() => {\r\n this.processTasks();\r\n });\r\n }\r\n });\r\n }\r\n\r\n public processTasks() {\r\n if (this.tasks.size === 0) {\r\n return;\r\n }\r\n const tasks = Array.from(this.tasks);\r\n tasks.forEach(task => task());\r\n this.tasks.clear();\r\n }\r\n\r\n /**\r\n * Get the RxDocument from the cache\r\n * and create a new one if not exits before.\r\n * @overwrites itself with the actual function\r\n * because this is @performance relevant.\r\n * It is called on each document row for each write and read.\r\n */\r\n get getCachedRxDocuments(): (docsData: RxDocumentData<RxDocType>[]) => RxDocument<RxDocType, OrmMethods>[] {\r\n const fn = getCachedRxDocumentMonad(this);\r\n return overwriteGetterForCaching(\r\n this,\r\n 'getCachedRxDocuments',\r\n fn\r\n );\r\n }\r\n\r\n get getCachedRxDocument(): (docData: RxDocumentData<RxDocType>) => RxDocument<RxDocType, OrmMethods> {\r\n const fn = getCachedRxDocumentMonad(this);\r\n return overwriteGetterForCaching(\r\n this,\r\n 'getCachedRxDocument',\r\n doc => fn([doc])[0]\r\n );\r\n }\r\n\r\n /**\r\n * Throws if not exists\r\n */\r\n public getLatestDocumentData(docId: string): RxDocumentData<RxDocType> {\r\n this.processTasks();\r\n const cacheItem = getFromMapOrThrow(this.cacheItemByDocId, docId);\r\n return cacheItem[1];\r\n }\r\n\r\n public getLatestDocumentDataIfExists(docId: string): RxDocumentData<RxDocType> | undefined {\r\n this.processTasks();\r\n const cacheItem = this.cacheItemByDocId.get(docId);\r\n if (cacheItem) {\r\n return cacheItem[1];\r\n }\r\n }\r\n}\r\n\r\n/**\r\n * This function is called very very often.\r\n * @hotPath This is one of the most important methods for performance.\r\n * It is used in many places to transform the raw document data into RxDocuments.\r\n */\r\nfunction getCachedRxDocumentMonad<RxDocType, OrmMethods>(\r\n docCache: DocumentCache<RxDocType, OrmMethods>\r\n): (docsData: RxDocumentData<RxDocType>[]) => RxDocument<RxDocType, OrmMethods>[] {\r\n const primaryPath = docCache.primaryPath;\r\n const cacheItemByDocId = docCache.cacheItemByDocId;\r\n const registry = docCache.registry;\r\n const deepFreezeWhenDevMode = overwritable.deepFreezeWhenDevMode;\r\n const documentCreator = docCache.documentCreator;\r\n const fn: (docsData: RxDocumentData<RxDocType>[]) => RxDocument<RxDocType, OrmMethods>[] = (docsData: RxDocumentData<RxDocType>[]) => {\r\n const ret: RxDocument<RxDocType, OrmMethods>[] = new Array(docsData.length);\r\n const registryTasks: RxDocument<RxDocType, OrmMethods>[] = [];\r\n for (let index = 0; index < docsData.length; index++) {\r\n let docData = docsData[index];\r\n const docId: string = (docData as any)[primaryPath];\r\n\r\n const revisionHeight = getHeightOfRevision(docData._rev);\r\n\r\n /**\r\n * @performance\r\n * Compute the byRev cache key once and reuse it\r\n * for both the Map.get() and Map.set() calls.\r\n */\r\n const cacheKey = revisionHeight + docData._meta.lwt + '';\r\n\r\n let byRev: Map<string, WeakRef<RxDocument<RxDocType, OrmMethods>>>;\r\n let cachedRxDocumentWeakRef: WeakRef<RxDocument<RxDocType, OrmMethods>> | undefined;\r\n let cacheItem = cacheItemByDocId.get(docId);\r\n if (!cacheItem) {\r\n byRev = new Map();\r\n cacheItem = [\r\n byRev,\r\n docData\r\n ];\r\n cacheItemByDocId.set(docId, cacheItem);\r\n } else {\r\n byRev = cacheItem[0];\r\n cachedRxDocumentWeakRef = byRev.get(cacheKey);\r\n }\r\n let cachedRxDocument = cachedRxDocumentWeakRef ? cachedRxDocumentWeakRef.deref() : undefined;\r\n if (!cachedRxDocument) {\r\n docData = deepFreezeWhenDevMode(docData) as any;\r\n cachedRxDocument = documentCreator(docData) as RxDocument<RxDocType, OrmMethods>;\r\n byRev.set(cacheKey, createWeakRefWithFallback(cachedRxDocument));\r\n if (registry) {\r\n registryTasks.push(cachedRxDocument);\r\n }\r\n }\r\n ret[index] = cachedRxDocument;\r\n }\r\n if (registryTasks.length > 0 && registry) {\r\n /**\r\n * Calling registry.register() has shown to have\r\n * really bad performance. So we add the cached documents\r\n * lazily.\r\n */\r\n docCache.tasks.add(() => {\r\n for (let index = 0; index < registryTasks.length; index++) {\r\n const doc = registryTasks[index];\r\n registry.register(doc, {\r\n docId: doc.primary,\r\n revisionHeight: getHeightOfRevision(doc.revision),\r\n lwt: doc._data._meta.lwt\r\n });\r\n }\r\n });\r\n if (docCache.tasks.size <= 1) {\r\n requestIdlePromiseNoQueue().then(() => {\r\n docCache.processTasks();\r\n });\r\n }\r\n }\r\n return ret;\r\n };\r\n return fn;\r\n}\r\n\r\nexport function mapDocumentsDataToCacheDocs<RxDocType, OrmMethods>(\r\n docCache: DocumentCache<RxDocType, OrmMethods>,\r\n docsData: RxDocumentData<RxDocType>[]\r\n) {\r\n const getCachedRxDocuments = docCache.getCachedRxDocuments;\r\n return getCachedRxDocuments(docsData);\r\n}\r\n\r\n/**\r\n * Fallback for JavaScript runtimes that do not support WeakRef.\r\n * The fallback will keep the items in cache forever,\r\n * but at least works.\r\n */\r\nconst HAS_WEAK_REF = typeof WeakRef === 'function';\r\nconst createWeakRefWithFallback = HAS_WEAK_REF ? createWeakRef : createWeakRefFallback;\r\nfunction createWeakRef<T extends object>(obj: T): WeakRef<T> {\r\n return new WeakRef(obj) as any;\r\n}\r\nfunction createWeakRefFallback<T extends object>(obj: T): WeakRef<T> {\r\n return {\r\n deref() {\r\n return obj;\r\n }\r\n } as any;\r\n}\r\n"],"mappings":"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","ignoreList":[]}