@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.
- package/AGENTS.md +54 -0
- package/CHANGELOG.md +2469 -0
- package/CLAUDE.md +63 -0
- package/LICENSE.txt +201 -0
- package/README.md +263 -0
- package/babel.config.js +58 -0
- package/dist/cjs/change-event-buffer.js +146 -0
- package/dist/cjs/change-event-buffer.js.map +1 -0
- package/dist/cjs/custom-index.js +284 -0
- package/dist/cjs/custom-index.js.map +1 -0
- package/dist/cjs/doc-cache.js +231 -0
- package/dist/cjs/doc-cache.js.map +1 -0
- package/dist/cjs/event-reduce.js +102 -0
- package/dist/cjs/event-reduce.js.map +1 -0
- package/dist/cjs/hooks.js +131 -0
- package/dist/cjs/hooks.js.map +1 -0
- package/dist/cjs/incremental-write.js +169 -0
- package/dist/cjs/incremental-write.js.map +1 -0
- package/dist/cjs/index.js +270 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/overwritable.js +39 -0
- package/dist/cjs/overwritable.js.map +1 -0
- package/dist/cjs/plugin-helpers.js +223 -0
- package/dist/cjs/plugin-helpers.js.map +1 -0
- package/dist/cjs/plugin.js +94 -0
- package/dist/cjs/plugin.js.map +1 -0
- package/dist/cjs/plugins/attachments/attachments-utils.js +49 -0
- package/dist/cjs/plugins/attachments/attachments-utils.js.map +1 -0
- package/dist/cjs/plugins/attachments/index.js +237 -0
- package/dist/cjs/plugins/attachments/index.js.map +1 -0
- package/dist/cjs/plugins/attachments-compression/index.js +143 -0
- package/dist/cjs/plugins/attachments-compression/index.js.map +1 -0
- package/dist/cjs/plugins/backup/file-util.js +102 -0
- package/dist/cjs/plugins/backup/file-util.js.map +1 -0
- package/dist/cjs/plugins/backup/index.js +206 -0
- package/dist/cjs/plugins/backup/index.js.map +1 -0
- package/dist/cjs/plugins/cleanup/cleanup-helper.js +17 -0
- package/dist/cjs/plugins/cleanup/cleanup-helper.js.map +1 -0
- package/dist/cjs/plugins/cleanup/cleanup-state.js +83 -0
- package/dist/cjs/plugins/cleanup/cleanup-state.js.map +1 -0
- package/dist/cjs/plugins/cleanup/cleanup.js +116 -0
- package/dist/cjs/plugins/cleanup/cleanup.js.map +1 -0
- package/dist/cjs/plugins/cleanup/index.js +64 -0
- package/dist/cjs/plugins/cleanup/index.js.map +1 -0
- package/dist/cjs/plugins/crdt/index.js +392 -0
- package/dist/cjs/plugins/crdt/index.js.map +1 -0
- package/dist/cjs/plugins/dev-mode/check-document.js +158 -0
- package/dist/cjs/plugins/dev-mode/check-document.js.map +1 -0
- package/dist/cjs/plugins/dev-mode/check-migration-strategies.js +43 -0
- package/dist/cjs/plugins/dev-mode/check-migration-strategies.js.map +1 -0
- package/dist/cjs/plugins/dev-mode/check-orm.js +53 -0
- package/dist/cjs/plugins/dev-mode/check-orm.js.map +1 -0
- package/dist/cjs/plugins/dev-mode/check-query.js +183 -0
- package/dist/cjs/plugins/dev-mode/check-query.js.map +1 -0
- package/dist/cjs/plugins/dev-mode/check-schema.js +487 -0
- package/dist/cjs/plugins/dev-mode/check-schema.js.map +1 -0
- package/dist/cjs/plugins/dev-mode/dev-mode-tracking.js +93 -0
- package/dist/cjs/plugins/dev-mode/dev-mode-tracking.js.map +1 -0
- package/dist/cjs/plugins/dev-mode/entity-properties.js +56 -0
- package/dist/cjs/plugins/dev-mode/entity-properties.js.map +1 -0
- package/dist/cjs/plugins/dev-mode/error-messages.js +1295 -0
- package/dist/cjs/plugins/dev-mode/error-messages.js.map +1 -0
- package/dist/cjs/plugins/dev-mode/index.js +195 -0
- package/dist/cjs/plugins/dev-mode/index.js.map +1 -0
- package/dist/cjs/plugins/dev-mode/unallowed-properties.js +88 -0
- package/dist/cjs/plugins/dev-mode/unallowed-properties.js.map +1 -0
- package/dist/cjs/plugins/electron/electron-helper.js +9 -0
- package/dist/cjs/plugins/electron/electron-helper.js.map +1 -0
- package/dist/cjs/plugins/electron/index.js +39 -0
- package/dist/cjs/plugins/electron/index.js.map +1 -0
- package/dist/cjs/plugins/electron/rx-storage-ipc-main.js +45 -0
- package/dist/cjs/plugins/electron/rx-storage-ipc-main.js.map +1 -0
- package/dist/cjs/plugins/electron/rx-storage-ipc-renderer.js +37 -0
- package/dist/cjs/plugins/electron/rx-storage-ipc-renderer.js.map +1 -0
- package/dist/cjs/plugins/encryption-crypto-js/index.js +165 -0
- package/dist/cjs/plugins/encryption-crypto-js/index.js.map +1 -0
- package/dist/cjs/plugins/flutter/index.js +62 -0
- package/dist/cjs/plugins/flutter/index.js.map +1 -0
- package/dist/cjs/plugins/json-dump/index.js +94 -0
- package/dist/cjs/plugins/json-dump/index.js.map +1 -0
- package/dist/cjs/plugins/key-compression/index.js +136 -0
- package/dist/cjs/plugins/key-compression/index.js.map +1 -0
- package/dist/cjs/plugins/leader-election/index.js +107 -0
- package/dist/cjs/plugins/leader-election/index.js.map +1 -0
- package/dist/cjs/plugins/local-documents/index.js +109 -0
- package/dist/cjs/plugins/local-documents/index.js.map +1 -0
- package/dist/cjs/plugins/local-documents/local-documents-helper.js +78 -0
- package/dist/cjs/plugins/local-documents/local-documents-helper.js.map +1 -0
- package/dist/cjs/plugins/local-documents/local-documents.js +107 -0
- package/dist/cjs/plugins/local-documents/local-documents.js.map +1 -0
- package/dist/cjs/plugins/local-documents/rx-local-document.js +257 -0
- package/dist/cjs/plugins/local-documents/rx-local-document.js.map +1 -0
- package/dist/cjs/plugins/migration-schema/index.js +84 -0
- package/dist/cjs/plugins/migration-schema/index.js.map +1 -0
- package/dist/cjs/plugins/migration-schema/migration-helpers.js +116 -0
- package/dist/cjs/plugins/migration-schema/migration-helpers.js.map +1 -0
- package/dist/cjs/plugins/migration-schema/migration-types.js +2 -0
- package/dist/cjs/plugins/migration-schema/migration-types.js.map +1 -0
- package/dist/cjs/plugins/migration-schema/rx-migration-state.js +410 -0
- package/dist/cjs/plugins/migration-schema/rx-migration-state.js.map +1 -0
- package/dist/cjs/plugins/migration-storage/index.js +173 -0
- package/dist/cjs/plugins/migration-storage/index.js.map +1 -0
- package/dist/cjs/plugins/pipeline/flagged-functions.js +129 -0
- package/dist/cjs/plugins/pipeline/flagged-functions.js.map +1 -0
- package/dist/cjs/plugins/pipeline/index.js +43 -0
- package/dist/cjs/plugins/pipeline/index.js.map +1 -0
- package/dist/cjs/plugins/pipeline/rx-pipeline.js +219 -0
- package/dist/cjs/plugins/pipeline/rx-pipeline.js.map +1 -0
- package/dist/cjs/plugins/pipeline/types.js +2 -0
- package/dist/cjs/plugins/pipeline/types.js.map +1 -0
- package/dist/cjs/plugins/query-builder/index.js +70 -0
- package/dist/cjs/plugins/query-builder/index.js.map +1 -0
- package/dist/cjs/plugins/query-builder/mquery/mquery-utils.js +40 -0
- package/dist/cjs/plugins/query-builder/mquery/mquery-utils.js.map +1 -0
- package/dist/cjs/plugins/query-builder/mquery/nosql-query-builder.js +488 -0
- package/dist/cjs/plugins/query-builder/mquery/nosql-query-builder.js.map +1 -0
- package/dist/cjs/plugins/react/database-context.js +15 -0
- package/dist/cjs/plugins/react/database-context.js.map +1 -0
- package/dist/cjs/plugins/react/database-provider.js +41 -0
- package/dist/cjs/plugins/react/database-provider.js.map +1 -0
- package/dist/cjs/plugins/react/hooks/index.js +50 -0
- package/dist/cjs/plugins/react/hooks/index.js.map +1 -0
- package/dist/cjs/plugins/react/hooks/use-live-rx-query.js +27 -0
- package/dist/cjs/plugins/react/hooks/use-live-rx-query.js.map +1 -0
- package/dist/cjs/plugins/react/hooks/use-rx-collection.js +39 -0
- package/dist/cjs/plugins/react/hooks/use-rx-collection.js.map +1 -0
- package/dist/cjs/plugins/react/hooks/use-rx-database.js +24 -0
- package/dist/cjs/plugins/react/hooks/use-rx-database.js.map +1 -0
- package/dist/cjs/plugins/react/hooks/use-rx-query.js +99 -0
- package/dist/cjs/plugins/react/hooks/use-rx-query.js.map +1 -0
- package/dist/cjs/plugins/react/index.js +28 -0
- package/dist/cjs/plugins/react/index.js.map +1 -0
- package/dist/cjs/plugins/reactivity-angular/index.js +30 -0
- package/dist/cjs/plugins/reactivity-angular/index.js.map +1 -0
- package/dist/cjs/plugins/reactivity-preact-signals/index.js +67 -0
- package/dist/cjs/plugins/reactivity-preact-signals/index.js.map +1 -0
- package/dist/cjs/plugins/reactivity-vue/index.js +32 -0
- package/dist/cjs/plugins/reactivity-vue/index.js.map +1 -0
- package/dist/cjs/plugins/replication/index.js +487 -0
- package/dist/cjs/plugins/replication/index.js.map +1 -0
- package/dist/cjs/plugins/replication/replication-helper.js +97 -0
- package/dist/cjs/plugins/replication/replication-helper.js.map +1 -0
- package/dist/cjs/plugins/replication-appwrite/appwrite-helpers.js +33 -0
- package/dist/cjs/plugins/replication-appwrite/appwrite-helpers.js.map +1 -0
- package/dist/cjs/plugins/replication-appwrite/appwrite-types.js +2 -0
- package/dist/cjs/plugins/replication-appwrite/appwrite-types.js.map +1 -0
- package/dist/cjs/plugins/replication-appwrite/index.js +176 -0
- package/dist/cjs/plugins/replication-appwrite/index.js.map +1 -0
- package/dist/cjs/plugins/replication-couchdb/couchdb-helper.js +77 -0
- package/dist/cjs/plugins/replication-couchdb/couchdb-helper.js.map +1 -0
- package/dist/cjs/plugins/replication-couchdb/couchdb-types.js +2 -0
- package/dist/cjs/plugins/replication-couchdb/couchdb-types.js.map +1 -0
- package/dist/cjs/plugins/replication-couchdb/index.js +287 -0
- package/dist/cjs/plugins/replication-couchdb/index.js.map +1 -0
- package/dist/cjs/plugins/replication-firestore/firestore-helper.js +61 -0
- package/dist/cjs/plugins/replication-firestore/firestore-helper.js.map +1 -0
- package/dist/cjs/plugins/replication-firestore/firestore-types.js +2 -0
- package/dist/cjs/plugins/replication-firestore/firestore-types.js.map +1 -0
- package/dist/cjs/plugins/replication-firestore/index.js +266 -0
- package/dist/cjs/plugins/replication-firestore/index.js.map +1 -0
- package/dist/cjs/plugins/replication-google-drive/document-handling.js +150 -0
- package/dist/cjs/plugins/replication-google-drive/document-handling.js.map +1 -0
- package/dist/cjs/plugins/replication-google-drive/downstream.js +73 -0
- package/dist/cjs/plugins/replication-google-drive/downstream.js.map +1 -0
- package/dist/cjs/plugins/replication-google-drive/google-drive-helper.js +349 -0
- package/dist/cjs/plugins/replication-google-drive/google-drive-helper.js.map +1 -0
- package/dist/cjs/plugins/replication-google-drive/google-drive-types.js +2 -0
- package/dist/cjs/plugins/replication-google-drive/google-drive-types.js.map +1 -0
- package/dist/cjs/plugins/replication-google-drive/index.js +233 -0
- package/dist/cjs/plugins/replication-google-drive/index.js.map +1 -0
- package/dist/cjs/plugins/replication-google-drive/init.js +76 -0
- package/dist/cjs/plugins/replication-google-drive/init.js.map +1 -0
- package/dist/cjs/plugins/replication-google-drive/multipart.js +74 -0
- package/dist/cjs/plugins/replication-google-drive/multipart.js.map +1 -0
- package/dist/cjs/plugins/replication-google-drive/signaling.js +262 -0
- package/dist/cjs/plugins/replication-google-drive/signaling.js.map +1 -0
- package/dist/cjs/plugins/replication-google-drive/transaction.js +134 -0
- package/dist/cjs/plugins/replication-google-drive/transaction.js.map +1 -0
- package/dist/cjs/plugins/replication-google-drive/upstream.js +182 -0
- package/dist/cjs/plugins/replication-google-drive/upstream.js.map +1 -0
- package/dist/cjs/plugins/replication-graphql/graphql-schema-from-rx-schema.js +235 -0
- package/dist/cjs/plugins/replication-graphql/graphql-schema-from-rx-schema.js.map +1 -0
- package/dist/cjs/plugins/replication-graphql/graphql-websocket.js +43 -0
- package/dist/cjs/plugins/replication-graphql/graphql-websocket.js.map +1 -0
- package/dist/cjs/plugins/replication-graphql/helper.js +29 -0
- package/dist/cjs/plugins/replication-graphql/helper.js.map +1 -0
- package/dist/cjs/plugins/replication-graphql/index.js +215 -0
- package/dist/cjs/plugins/replication-graphql/index.js.map +1 -0
- package/dist/cjs/plugins/replication-graphql/query-builder-from-rx-schema.js +141 -0
- package/dist/cjs/plugins/replication-graphql/query-builder-from-rx-schema.js.map +1 -0
- package/dist/cjs/plugins/replication-microsoft-onedrive/document-handling.js +187 -0
- package/dist/cjs/plugins/replication-microsoft-onedrive/document-handling.js.map +1 -0
- package/dist/cjs/plugins/replication-microsoft-onedrive/downstream.js +78 -0
- package/dist/cjs/plugins/replication-microsoft-onedrive/downstream.js.map +1 -0
- package/dist/cjs/plugins/replication-microsoft-onedrive/index.js +222 -0
- package/dist/cjs/plugins/replication-microsoft-onedrive/index.js.map +1 -0
- package/dist/cjs/plugins/replication-microsoft-onedrive/init.js +76 -0
- package/dist/cjs/plugins/replication-microsoft-onedrive/init.js.map +1 -0
- package/dist/cjs/plugins/replication-microsoft-onedrive/microsoft-onedrive-helper.js +273 -0
- package/dist/cjs/plugins/replication-microsoft-onedrive/microsoft-onedrive-helper.js.map +1 -0
- package/dist/cjs/plugins/replication-microsoft-onedrive/microsoft-onedrive-types.js +2 -0
- package/dist/cjs/plugins/replication-microsoft-onedrive/microsoft-onedrive-types.js.map +1 -0
- package/dist/cjs/plugins/replication-microsoft-onedrive/signaling.js +235 -0
- package/dist/cjs/plugins/replication-microsoft-onedrive/signaling.js.map +1 -0
- package/dist/cjs/plugins/replication-microsoft-onedrive/transaction.js +138 -0
- package/dist/cjs/plugins/replication-microsoft-onedrive/transaction.js.map +1 -0
- package/dist/cjs/plugins/replication-microsoft-onedrive/upstream.js +190 -0
- package/dist/cjs/plugins/replication-microsoft-onedrive/upstream.js.map +1 -0
- package/dist/cjs/plugins/replication-mongodb/index.js +229 -0
- package/dist/cjs/plugins/replication-mongodb/index.js.map +1 -0
- package/dist/cjs/plugins/replication-mongodb/mongodb-checkpoint.js +140 -0
- package/dist/cjs/plugins/replication-mongodb/mongodb-checkpoint.js.map +1 -0
- package/dist/cjs/plugins/replication-mongodb/mongodb-helper.js +53 -0
- package/dist/cjs/plugins/replication-mongodb/mongodb-helper.js.map +1 -0
- package/dist/cjs/plugins/replication-mongodb/mongodb-types.js +2 -0
- package/dist/cjs/plugins/replication-mongodb/mongodb-types.js.map +1 -0
- package/dist/cjs/plugins/replication-nats/index.js +232 -0
- package/dist/cjs/plugins/replication-nats/index.js.map +1 -0
- package/dist/cjs/plugins/replication-nats/nats-helper.js +13 -0
- package/dist/cjs/plugins/replication-nats/nats-helper.js.map +1 -0
- package/dist/cjs/plugins/replication-nats/nats-types.js +2 -0
- package/dist/cjs/plugins/replication-nats/nats-types.js.map +1 -0
- package/dist/cjs/plugins/replication-supabase/helper.js +42 -0
- package/dist/cjs/plugins/replication-supabase/helper.js.map +1 -0
- package/dist/cjs/plugins/replication-supabase/index.js +239 -0
- package/dist/cjs/plugins/replication-supabase/index.js.map +1 -0
- package/dist/cjs/plugins/replication-supabase/types.js +2 -0
- package/dist/cjs/plugins/replication-supabase/types.js.map +1 -0
- package/dist/cjs/plugins/replication-webrtc/connection-handler-p2pcf.js +79 -0
- package/dist/cjs/plugins/replication-webrtc/connection-handler-p2pcf.js.map +1 -0
- package/dist/cjs/plugins/replication-webrtc/connection-handler-simple-peer.js +199 -0
- package/dist/cjs/plugins/replication-webrtc/connection-handler-simple-peer.js.map +1 -0
- package/dist/cjs/plugins/replication-webrtc/connection-handler-webtorrent.js +137 -0
- package/dist/cjs/plugins/replication-webrtc/connection-handler-webtorrent.js.map +1 -0
- package/dist/cjs/plugins/replication-webrtc/index.js +260 -0
- package/dist/cjs/plugins/replication-webrtc/index.js.map +1 -0
- package/dist/cjs/plugins/replication-webrtc/signaling-server.js +151 -0
- package/dist/cjs/plugins/replication-webrtc/signaling-server.js.map +1 -0
- package/dist/cjs/plugins/replication-webrtc/webrtc-helper.js +32 -0
- package/dist/cjs/plugins/replication-webrtc/webrtc-helper.js.map +1 -0
- package/dist/cjs/plugins/replication-webrtc/webrtc-types.js +2 -0
- package/dist/cjs/plugins/replication-webrtc/webrtc-types.js.map +1 -0
- package/dist/cjs/plugins/replication-websocket/index.js +39 -0
- package/dist/cjs/plugins/replication-websocket/index.js.map +1 -0
- package/dist/cjs/plugins/replication-websocket/websocket-client.js +133 -0
- package/dist/cjs/plugins/replication-websocket/websocket-client.js.map +1 -0
- package/dist/cjs/plugins/replication-websocket/websocket-server.js +108 -0
- package/dist/cjs/plugins/replication-websocket/websocket-server.js.map +1 -0
- package/dist/cjs/plugins/replication-websocket/websocket-types.js +2 -0
- package/dist/cjs/plugins/replication-websocket/websocket-types.js.map +1 -0
- package/dist/cjs/plugins/state/helpers.js +81 -0
- package/dist/cjs/plugins/state/helpers.js.map +1 -0
- package/dist/cjs/plugins/state/index.js +42 -0
- package/dist/cjs/plugins/state/index.js.map +1 -0
- package/dist/cjs/plugins/state/rx-state.js +293 -0
- package/dist/cjs/plugins/state/rx-state.js.map +1 -0
- package/dist/cjs/plugins/state/types.js +2 -0
- package/dist/cjs/plugins/state/types.js.map +1 -0
- package/dist/cjs/plugins/storage-denokv/denokv-helper.js +49 -0
- package/dist/cjs/plugins/storage-denokv/denokv-helper.js.map +1 -0
- package/dist/cjs/plugins/storage-denokv/denokv-query.js +99 -0
- package/dist/cjs/plugins/storage-denokv/denokv-query.js.map +1 -0
- package/dist/cjs/plugins/storage-denokv/denokv-types.js +2 -0
- package/dist/cjs/plugins/storage-denokv/denokv-types.js.map +1 -0
- package/dist/cjs/plugins/storage-denokv/index.js +31 -0
- package/dist/cjs/plugins/storage-denokv/index.js.map +1 -0
- package/dist/cjs/plugins/storage-denokv/rx-storage-instance-denokv.js +332 -0
- package/dist/cjs/plugins/storage-denokv/rx-storage-instance-denokv.js.map +1 -0
- package/dist/cjs/plugins/storage-dexie/dexie-helper.js +259 -0
- package/dist/cjs/plugins/storage-dexie/dexie-helper.js.map +1 -0
- package/dist/cjs/plugins/storage-dexie/dexie-query.js +178 -0
- package/dist/cjs/plugins/storage-dexie/dexie-query.js.map +1 -0
- package/dist/cjs/plugins/storage-dexie/index.js +50 -0
- package/dist/cjs/plugins/storage-dexie/index.js.map +1 -0
- package/dist/cjs/plugins/storage-dexie/rx-storage-dexie.js +46 -0
- package/dist/cjs/plugins/storage-dexie/rx-storage-dexie.js.map +1 -0
- package/dist/cjs/plugins/storage-dexie/rx-storage-instance-dexie.js +229 -0
- package/dist/cjs/plugins/storage-dexie/rx-storage-instance-dexie.js.map +1 -0
- package/dist/cjs/plugins/storage-foundationdb/foundationdb-helpers.js +13 -0
- package/dist/cjs/plugins/storage-foundationdb/foundationdb-helpers.js.map +1 -0
- package/dist/cjs/plugins/storage-foundationdb/foundationdb-query.js +96 -0
- package/dist/cjs/plugins/storage-foundationdb/foundationdb-query.js.map +1 -0
- package/dist/cjs/plugins/storage-foundationdb/foundationdb-types.js +2 -0
- package/dist/cjs/plugins/storage-foundationdb/foundationdb-types.js.map +1 -0
- package/dist/cjs/plugins/storage-foundationdb/index.js +62 -0
- package/dist/cjs/plugins/storage-foundationdb/index.js.map +1 -0
- package/dist/cjs/plugins/storage-foundationdb/rx-storage-instance-foundationdb.js +309 -0
- package/dist/cjs/plugins/storage-foundationdb/rx-storage-instance-foundationdb.js.map +1 -0
- package/dist/cjs/plugins/storage-localstorage/index.js +45 -0
- package/dist/cjs/plugins/storage-localstorage/index.js.map +1 -0
- package/dist/cjs/plugins/storage-localstorage/localstorage-mock.js +38 -0
- package/dist/cjs/plugins/storage-localstorage/localstorage-mock.js.map +1 -0
- package/dist/cjs/plugins/storage-localstorage/rx-storage-instance-localstorage.js +443 -0
- package/dist/cjs/plugins/storage-localstorage/rx-storage-instance-localstorage.js.map +1 -0
- package/dist/cjs/plugins/storage-memory/binary-search-bounds.js +113 -0
- package/dist/cjs/plugins/storage-memory/binary-search-bounds.js.map +1 -0
- package/dist/cjs/plugins/storage-memory/index.js +91 -0
- package/dist/cjs/plugins/storage-memory/index.js.map +1 -0
- package/dist/cjs/plugins/storage-memory/memory-helper.js +177 -0
- package/dist/cjs/plugins/storage-memory/memory-helper.js.map +1 -0
- package/dist/cjs/plugins/storage-memory/memory-indexes.js +28 -0
- package/dist/cjs/plugins/storage-memory/memory-indexes.js.map +1 -0
- package/dist/cjs/plugins/storage-memory/memory-types.js +2 -0
- package/dist/cjs/plugins/storage-memory/memory-types.js.map +1 -0
- package/dist/cjs/plugins/storage-memory/rx-storage-instance-memory.js +371 -0
- package/dist/cjs/plugins/storage-memory/rx-storage-instance-memory.js.map +1 -0
- package/dist/cjs/plugins/storage-mongodb/index.js +50 -0
- package/dist/cjs/plugins/storage-mongodb/index.js.map +1 -0
- package/dist/cjs/plugins/storage-mongodb/mongodb-helper.js +97 -0
- package/dist/cjs/plugins/storage-mongodb/mongodb-helper.js.map +1 -0
- package/dist/cjs/plugins/storage-mongodb/mongodb-types.js +2 -0
- package/dist/cjs/plugins/storage-mongodb/mongodb-types.js.map +1 -0
- package/dist/cjs/plugins/storage-mongodb/rx-storage-instance-mongodb.js +324 -0
- package/dist/cjs/plugins/storage-mongodb/rx-storage-instance-mongodb.js.map +1 -0
- package/dist/cjs/plugins/storage-mongodb/rx-storage-mongodb.js +29 -0
- package/dist/cjs/plugins/storage-mongodb/rx-storage-mongodb.js.map +1 -0
- package/dist/cjs/plugins/storage-remote/index.js +61 -0
- package/dist/cjs/plugins/storage-remote/index.js.map +1 -0
- package/dist/cjs/plugins/storage-remote/message-channel-cache.js +52 -0
- package/dist/cjs/plugins/storage-remote/message-channel-cache.js.map +1 -0
- package/dist/cjs/plugins/storage-remote/remote.js +217 -0
- package/dist/cjs/plugins/storage-remote/remote.js.map +1 -0
- package/dist/cjs/plugins/storage-remote/rx-storage-remote.js +199 -0
- package/dist/cjs/plugins/storage-remote/rx-storage-remote.js.map +1 -0
- package/dist/cjs/plugins/storage-remote/storage-remote-helpers.js +25 -0
- package/dist/cjs/plugins/storage-remote/storage-remote-helpers.js.map +1 -0
- package/dist/cjs/plugins/storage-remote/storage-remote-types.js +2 -0
- package/dist/cjs/plugins/storage-remote/storage-remote-types.js.map +1 -0
- package/dist/cjs/plugins/storage-remote-websocket/index.js +183 -0
- package/dist/cjs/plugins/storage-remote-websocket/index.js.map +1 -0
- package/dist/cjs/plugins/storage-remote-websocket/types.js +2 -0
- package/dist/cjs/plugins/storage-remote-websocket/types.js.map +1 -0
- package/dist/cjs/plugins/storage-sqlite/index.js +84 -0
- package/dist/cjs/plugins/storage-sqlite/index.js.map +1 -0
- package/dist/cjs/plugins/storage-sqlite/sqlite-basics-helpers.js +530 -0
- package/dist/cjs/plugins/storage-sqlite/sqlite-basics-helpers.js.map +1 -0
- package/dist/cjs/plugins/storage-sqlite/sqlite-helpers.js +203 -0
- package/dist/cjs/plugins/storage-sqlite/sqlite-helpers.js.map +1 -0
- package/dist/cjs/plugins/storage-sqlite/sqlite-storage-instance.js +291 -0
- package/dist/cjs/plugins/storage-sqlite/sqlite-storage-instance.js.map +1 -0
- package/dist/cjs/plugins/storage-sqlite/sqlite-types.js +2 -0
- package/dist/cjs/plugins/storage-sqlite/sqlite-types.js.map +1 -0
- package/dist/cjs/plugins/test-utils/config.js +120 -0
- package/dist/cjs/plugins/test-utils/config.js.map +1 -0
- package/dist/cjs/plugins/test-utils/humans-collection.js +420 -0
- package/dist/cjs/plugins/test-utils/humans-collection.js.map +1 -0
- package/dist/cjs/plugins/test-utils/index.js +130 -0
- package/dist/cjs/plugins/test-utils/index.js.map +1 -0
- package/dist/cjs/plugins/test-utils/performance.js +275 -0
- package/dist/cjs/plugins/test-utils/performance.js.map +1 -0
- package/dist/cjs/plugins/test-utils/replication-base-test-suite.js +179 -0
- package/dist/cjs/plugins/test-utils/replication-base-test-suite.js.map +1 -0
- package/dist/cjs/plugins/test-utils/replication.js +54 -0
- package/dist/cjs/plugins/test-utils/replication.js.map +1 -0
- package/dist/cjs/plugins/test-utils/revisions.js +11 -0
- package/dist/cjs/plugins/test-utils/revisions.js.map +1 -0
- package/dist/cjs/plugins/test-utils/schema-objects.js +315 -0
- package/dist/cjs/plugins/test-utils/schema-objects.js.map +1 -0
- package/dist/cjs/plugins/test-utils/schemas.js +1254 -0
- package/dist/cjs/plugins/test-utils/schemas.js.map +1 -0
- package/dist/cjs/plugins/test-utils/test-util.js +72 -0
- package/dist/cjs/plugins/test-utils/test-util.js.map +1 -0
- package/dist/cjs/plugins/update/index.js +45 -0
- package/dist/cjs/plugins/update/index.js.map +1 -0
- package/dist/cjs/plugins/update/mingo-updater.js +20 -0
- package/dist/cjs/plugins/update/mingo-updater.js.map +1 -0
- package/dist/cjs/plugins/utils/index.js +226 -0
- package/dist/cjs/plugins/utils/index.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-array.js +150 -0
- package/dist/cjs/plugins/utils/utils-array.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-base64.js +57 -0
- package/dist/cjs/plugins/utils/utils-base64.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-blob.js +62 -0
- package/dist/cjs/plugins/utils/utils-blob.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-document.js +100 -0
- package/dist/cjs/plugins/utils/utils-document.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-error.js +42 -0
- package/dist/cjs/plugins/utils/utils-error.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-global.js +12 -0
- package/dist/cjs/plugins/utils/utils-global.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-hash.js +59 -0
- package/dist/cjs/plugins/utils/utils-hash.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-map.js +25 -0
- package/dist/cjs/plugins/utils/utils-map.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-number.js +16 -0
- package/dist/cjs/plugins/utils/utils-number.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-object-deep-equal.js +42 -0
- package/dist/cjs/plugins/utils/utils-object-deep-equal.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-object-dot-prop.js +306 -0
- package/dist/cjs/plugins/utils/utils-object-dot-prop.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-object.js +245 -0
- package/dist/cjs/plugins/utils/utils-object.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-other.js +69 -0
- package/dist/cjs/plugins/utils/utils-other.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-premium.js +37 -0
- package/dist/cjs/plugins/utils/utils-premium.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-promise.js +149 -0
- package/dist/cjs/plugins/utils/utils-promise.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-regex.js +9 -0
- package/dist/cjs/plugins/utils/utils-regex.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-revision.js +60 -0
- package/dist/cjs/plugins/utils/utils-revision.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-rxdb-version.js +11 -0
- package/dist/cjs/plugins/utils/utils-rxdb-version.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-rxdb-version.template.js +11 -0
- package/dist/cjs/plugins/utils/utils-rxdb-version.template.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-string.js +97 -0
- package/dist/cjs/plugins/utils/utils-string.js.map +1 -0
- package/dist/cjs/plugins/utils/utils-time.js +42 -0
- package/dist/cjs/plugins/utils/utils-time.js.map +1 -0
- package/dist/cjs/plugins/validate-ajv/index.js +53 -0
- package/dist/cjs/plugins/validate-ajv/index.js.map +1 -0
- package/dist/cjs/plugins/validate-is-my-json-valid/index.js +29 -0
- package/dist/cjs/plugins/validate-is-my-json-valid/index.js.map +1 -0
- package/dist/cjs/plugins/validate-z-schema/index.js +58 -0
- package/dist/cjs/plugins/validate-z-schema/index.js.map +1 -0
- package/dist/cjs/plugins/vector/helper.js +2 -0
- package/dist/cjs/plugins/vector/helper.js.map +1 -0
- package/dist/cjs/plugins/vector/index.js +17 -0
- package/dist/cjs/plugins/vector/index.js.map +1 -0
- package/dist/cjs/plugins/vector/types.js +2 -0
- package/dist/cjs/plugins/vector/types.js.map +1 -0
- package/dist/cjs/plugins/vector/vector-distance.js +38 -0
- package/dist/cjs/plugins/vector/vector-distance.js.map +1 -0
- package/dist/cjs/plugins/webmcp/index.js +28 -0
- package/dist/cjs/plugins/webmcp/index.js.map +1 -0
- package/dist/cjs/plugins/webmcp/nosql-query-schema.js +360 -0
- package/dist/cjs/plugins/webmcp/nosql-query-schema.js.map +1 -0
- package/dist/cjs/plugins/webmcp/webmcp.js +315 -0
- package/dist/cjs/plugins/webmcp/webmcp.js.map +1 -0
- package/dist/cjs/query-cache.js +110 -0
- package/dist/cjs/query-cache.js.map +1 -0
- package/dist/cjs/query-planner.js +307 -0
- package/dist/cjs/query-planner.js.map +1 -0
- package/dist/cjs/replication-protocol/checkpoint.js +103 -0
- package/dist/cjs/replication-protocol/checkpoint.js.map +1 -0
- package/dist/cjs/replication-protocol/conflicts.js +36 -0
- package/dist/cjs/replication-protocol/conflicts.js.map +1 -0
- package/dist/cjs/replication-protocol/default-conflict-handler.js +39 -0
- package/dist/cjs/replication-protocol/default-conflict-handler.js.map +1 -0
- package/dist/cjs/replication-protocol/downstream.js +339 -0
- package/dist/cjs/replication-protocol/downstream.js.map +1 -0
- package/dist/cjs/replication-protocol/helper.js +58 -0
- package/dist/cjs/replication-protocol/helper.js.map +1 -0
- package/dist/cjs/replication-protocol/index.js +314 -0
- package/dist/cjs/replication-protocol/index.js.map +1 -0
- package/dist/cjs/replication-protocol/meta-instance.js +130 -0
- package/dist/cjs/replication-protocol/meta-instance.js.map +1 -0
- package/dist/cjs/replication-protocol/upstream.js +384 -0
- package/dist/cjs/replication-protocol/upstream.js.map +1 -0
- package/dist/cjs/rx-change-event.js +112 -0
- package/dist/cjs/rx-change-event.js.map +1 -0
- package/dist/cjs/rx-collection-helper.js +205 -0
- package/dist/cjs/rx-collection-helper.js.map +1 -0
- package/dist/cjs/rx-collection.js +931 -0
- package/dist/cjs/rx-collection.js.map +1 -0
- package/dist/cjs/rx-database-internal-store.js +283 -0
- package/dist/cjs/rx-database-internal-store.js.map +1 -0
- package/dist/cjs/rx-database.js +682 -0
- package/dist/cjs/rx-database.js.map +1 -0
- package/dist/cjs/rx-document-prototype-merge.js +87 -0
- package/dist/cjs/rx-document-prototype-merge.js.map +1 -0
- package/dist/cjs/rx-document.js +404 -0
- package/dist/cjs/rx-document.js.map +1 -0
- package/dist/cjs/rx-error.js +167 -0
- package/dist/cjs/rx-error.js.map +1 -0
- package/dist/cjs/rx-query-helper.js +277 -0
- package/dist/cjs/rx-query-helper.js.map +1 -0
- package/dist/cjs/rx-query-mingo.js +60 -0
- package/dist/cjs/rx-query-mingo.js.map +1 -0
- package/dist/cjs/rx-query-single-result.js +105 -0
- package/dist/cjs/rx-query-single-result.js.map +1 -0
- package/dist/cjs/rx-query.js +703 -0
- package/dist/cjs/rx-query.js.map +1 -0
- package/dist/cjs/rx-schema-helper.js +333 -0
- package/dist/cjs/rx-schema-helper.js.map +1 -0
- package/dist/cjs/rx-schema.js +189 -0
- package/dist/cjs/rx-schema.js.map +1 -0
- package/dist/cjs/rx-storage-helper.js +808 -0
- package/dist/cjs/rx-storage-helper.js.map +1 -0
- package/dist/cjs/rx-storage-multiinstance.js +121 -0
- package/dist/cjs/rx-storage-multiinstance.js.map +1 -0
- package/dist/cjs/types/conflict-handling.d.js +2 -0
- package/dist/cjs/types/conflict-handling.d.js.map +1 -0
- package/dist/cjs/types/couchdb.d.js +2 -0
- package/dist/cjs/types/couchdb.d.js.map +1 -0
- package/dist/cjs/types/index.d.js +2 -0
- package/dist/cjs/types/index.d.js.map +1 -0
- package/dist/cjs/types/modules/index.d.js +2 -0
- package/dist/cjs/types/modules/index.d.js.map +1 -0
- package/dist/cjs/types/modules/mocha.parallel.d.js +2 -0
- package/dist/cjs/types/modules/mocha.parallel.d.js.map +1 -0
- package/dist/cjs/types/plugins/backup.d.js +2 -0
- package/dist/cjs/types/plugins/backup.d.js.map +1 -0
- package/dist/cjs/types/plugins/cleanup.d.js +2 -0
- package/dist/cjs/types/plugins/cleanup.d.js.map +1 -0
- package/dist/cjs/types/plugins/crdt.d.js +2 -0
- package/dist/cjs/types/plugins/crdt.d.js.map +1 -0
- package/dist/cjs/types/plugins/dexie.d.js +2 -0
- package/dist/cjs/types/plugins/dexie.d.js.map +1 -0
- package/dist/cjs/types/plugins/local-documents.d.js +2 -0
- package/dist/cjs/types/plugins/local-documents.d.js.map +1 -0
- package/dist/cjs/types/plugins/migration.d.js +2 -0
- package/dist/cjs/types/plugins/migration.d.js.map +1 -0
- package/dist/cjs/types/plugins/reactivity.d.js +2 -0
- package/dist/cjs/types/plugins/reactivity.d.js.map +1 -0
- package/dist/cjs/types/plugins/replication-graphql.d.js +2 -0
- package/dist/cjs/types/plugins/replication-graphql.d.js.map +1 -0
- package/dist/cjs/types/plugins/replication.d.js +2 -0
- package/dist/cjs/types/plugins/replication.d.js.map +1 -0
- package/dist/cjs/types/plugins/state.d.js +2 -0
- package/dist/cjs/types/plugins/state.d.js.map +1 -0
- package/dist/cjs/types/plugins/update.d.js +2 -0
- package/dist/cjs/types/plugins/update.d.js.map +1 -0
- package/dist/cjs/types/plugins/webmcp.d.js +2 -0
- package/dist/cjs/types/plugins/webmcp.d.js.map +1 -0
- package/dist/cjs/types/query-planner.d.js +2 -0
- package/dist/cjs/types/query-planner.d.js.map +1 -0
- package/dist/cjs/types/replication-protocol.d.js +2 -0
- package/dist/cjs/types/replication-protocol.d.js.map +1 -0
- package/dist/cjs/types/rx-attachment.d.js +2 -0
- package/dist/cjs/types/rx-attachment.d.js.map +1 -0
- package/dist/cjs/types/rx-change-event.d.js +2 -0
- package/dist/cjs/types/rx-change-event.d.js.map +1 -0
- package/dist/cjs/types/rx-collection.d.js +2 -0
- package/dist/cjs/types/rx-collection.d.js.map +1 -0
- package/dist/cjs/types/rx-database-internal-store.d.js +2 -0
- package/dist/cjs/types/rx-database-internal-store.d.js.map +1 -0
- package/dist/cjs/types/rx-database.d.js +2 -0
- package/dist/cjs/types/rx-database.d.js.map +1 -0
- package/dist/cjs/types/rx-document.d.js +2 -0
- package/dist/cjs/types/rx-document.d.js.map +1 -0
- package/dist/cjs/types/rx-error.d.js +2 -0
- package/dist/cjs/types/rx-error.d.js.map +1 -0
- package/dist/cjs/types/rx-plugin.d.js +2 -0
- package/dist/cjs/types/rx-plugin.d.js.map +1 -0
- package/dist/cjs/types/rx-query.d.js +2 -0
- package/dist/cjs/types/rx-query.d.js.map +1 -0
- package/dist/cjs/types/rx-schema.d.js +2 -0
- package/dist/cjs/types/rx-schema.d.js.map +1 -0
- package/dist/cjs/types/rx-storage.d.js +2 -0
- package/dist/cjs/types/rx-storage.d.js.map +1 -0
- package/dist/cjs/types/rx-storage.interface.d.js +2 -0
- package/dist/cjs/types/rx-storage.interface.d.js.map +1 -0
- package/dist/cjs/types/util.d.js +2 -0
- package/dist/cjs/types/util.d.js.map +1 -0
- package/dist/esm/change-event-buffer.js +141 -0
- package/dist/esm/change-event-buffer.js.map +1 -0
- package/dist/esm/custom-index.js +271 -0
- package/dist/esm/custom-index.js.map +1 -0
- package/dist/esm/doc-cache.js +227 -0
- package/dist/esm/doc-cache.js.map +1 -0
- package/dist/esm/event-reduce.js +93 -0
- package/dist/esm/event-reduce.js.map +1 -0
- package/dist/esm/hooks.js +122 -0
- package/dist/esm/hooks.js.map +1 -0
- package/dist/esm/incremental-write.js +161 -0
- package/dist/esm/incremental-write.js.map +1 -0
- package/dist/esm/index.js +30 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/overwritable.js +33 -0
- package/dist/esm/overwritable.js.map +1 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/plugin-helpers.js +217 -0
- package/dist/esm/plugin-helpers.js.map +1 -0
- package/dist/esm/plugin.js +88 -0
- package/dist/esm/plugin.js.map +1 -0
- package/dist/esm/plugins/attachments/attachments-utils.js +41 -0
- package/dist/esm/plugins/attachments/attachments-utils.js.map +1 -0
- package/dist/esm/plugins/attachments/index.js +202 -0
- package/dist/esm/plugins/attachments/index.js.map +1 -0
- package/dist/esm/plugins/attachments-compression/index.js +134 -0
- package/dist/esm/plugins/attachments-compression/index.js.map +1 -0
- package/dist/esm/plugins/backup/file-util.js +87 -0
- package/dist/esm/plugins/backup/file-util.js.map +1 -0
- package/dist/esm/plugins/backup/index.js +183 -0
- package/dist/esm/plugins/backup/index.js.map +1 -0
- package/dist/esm/plugins/cleanup/cleanup-helper.js +11 -0
- package/dist/esm/plugins/cleanup/cleanup-helper.js.map +1 -0
- package/dist/esm/plugins/cleanup/cleanup-state.js +75 -0
- package/dist/esm/plugins/cleanup/cleanup-state.js.map +1 -0
- package/dist/esm/plugins/cleanup/cleanup.js +108 -0
- package/dist/esm/plugins/cleanup/cleanup.js.map +1 -0
- package/dist/esm/plugins/cleanup/index.js +35 -0
- package/dist/esm/plugins/cleanup/index.js.map +1 -0
- package/dist/esm/plugins/crdt/index.js +378 -0
- package/dist/esm/plugins/crdt/index.js.map +1 -0
- package/dist/esm/plugins/dev-mode/check-document.js +150 -0
- package/dist/esm/plugins/dev-mode/check-document.js.map +1 -0
- package/dist/esm/plugins/dev-mode/check-migration-strategies.js +38 -0
- package/dist/esm/plugins/dev-mode/check-migration-strategies.js.map +1 -0
- package/dist/esm/plugins/dev-mode/check-orm.js +47 -0
- package/dist/esm/plugins/dev-mode/check-orm.js.map +1 -0
- package/dist/esm/plugins/dev-mode/check-query.js +174 -0
- package/dist/esm/plugins/dev-mode/check-query.js.map +1 -0
- package/dist/esm/plugins/dev-mode/check-schema.js +478 -0
- package/dist/esm/plugins/dev-mode/check-schema.js.map +1 -0
- package/dist/esm/plugins/dev-mode/dev-mode-tracking.js +87 -0
- package/dist/esm/plugins/dev-mode/dev-mode-tracking.js.map +1 -0
- package/dist/esm/plugins/dev-mode/entity-properties.js +49 -0
- package/dist/esm/plugins/dev-mode/entity-properties.js.map +1 -0
- package/dist/esm/plugins/dev-mode/error-messages.js +1289 -0
- package/dist/esm/plugins/dev-mode/error-messages.js.map +1 -0
- package/dist/esm/plugins/dev-mode/index.js +151 -0
- package/dist/esm/plugins/dev-mode/index.js.map +1 -0
- package/dist/esm/plugins/dev-mode/unallowed-properties.js +81 -0
- package/dist/esm/plugins/dev-mode/unallowed-properties.js.map +1 -0
- package/dist/esm/plugins/electron/electron-helper.js +3 -0
- package/dist/esm/plugins/electron/electron-helper.js.map +1 -0
- package/dist/esm/plugins/electron/index.js +4 -0
- package/dist/esm/plugins/electron/index.js.map +1 -0
- package/dist/esm/plugins/electron/rx-storage-ipc-main.js +39 -0
- package/dist/esm/plugins/electron/rx-storage-ipc-main.js.map +1 -0
- package/dist/esm/plugins/electron/rx-storage-ipc-renderer.js +31 -0
- package/dist/esm/plugins/electron/rx-storage-ipc-renderer.js.map +1 -0
- package/dist/esm/plugins/encryption-crypto-js/index.js +154 -0
- package/dist/esm/plugins/encryption-crypto-js/index.js.map +1 -0
- package/dist/esm/plugins/flutter/index.js +55 -0
- package/dist/esm/plugins/flutter/index.js.map +1 -0
- package/dist/esm/plugins/json-dump/index.js +87 -0
- package/dist/esm/plugins/json-dump/index.js.map +1 -0
- package/dist/esm/plugins/key-compression/index.js +127 -0
- package/dist/esm/plugins/key-compression/index.js.map +1 -0
- package/dist/esm/plugins/leader-election/index.js +95 -0
- package/dist/esm/plugins/leader-election/index.js.map +1 -0
- package/dist/esm/plugins/local-documents/index.js +70 -0
- package/dist/esm/plugins/local-documents/index.js.map +1 -0
- package/dist/esm/plugins/local-documents/local-documents-helper.js +67 -0
- package/dist/esm/plugins/local-documents/local-documents-helper.js.map +1 -0
- package/dist/esm/plugins/local-documents/local-documents.js +99 -0
- package/dist/esm/plugins/local-documents/local-documents.js.map +1 -0
- package/dist/esm/plugins/local-documents/rx-local-document.js +248 -0
- package/dist/esm/plugins/local-documents/rx-local-document.js.map +1 -0
- package/dist/esm/plugins/migration-schema/index.js +42 -0
- package/dist/esm/plugins/migration-schema/index.js.map +1 -0
- package/dist/esm/plugins/migration-schema/migration-helpers.js +103 -0
- package/dist/esm/plugins/migration-schema/migration-helpers.js.map +1 -0
- package/dist/esm/plugins/migration-schema/migration-types.js +3 -0
- package/dist/esm/plugins/migration-schema/migration-types.js.map +1 -0
- package/dist/esm/plugins/migration-schema/rx-migration-state.js +404 -0
- package/dist/esm/plugins/migration-schema/rx-migration-state.js.map +1 -0
- package/dist/esm/plugins/migration-storage/index.js +166 -0
- package/dist/esm/plugins/migration-storage/index.js.map +1 -0
- package/dist/esm/plugins/pipeline/flagged-functions.js +122 -0
- package/dist/esm/plugins/pipeline/flagged-functions.js.map +1 -0
- package/dist/esm/plugins/pipeline/index.js +13 -0
- package/dist/esm/plugins/pipeline/index.js.map +1 -0
- package/dist/esm/plugins/pipeline/rx-pipeline.js +210 -0
- package/dist/esm/plugins/pipeline/rx-pipeline.js.map +1 -0
- package/dist/esm/plugins/pipeline/types.js +3 -0
- package/dist/esm/plugins/pipeline/types.js.map +1 -0
- package/dist/esm/plugins/query-builder/index.js +48 -0
- package/dist/esm/plugins/query-builder/index.js.map +1 -0
- package/dist/esm/plugins/query-builder/mquery/mquery-utils.js +33 -0
- package/dist/esm/plugins/query-builder/mquery/mquery-utils.js.map +1 -0
- package/dist/esm/plugins/query-builder/mquery/nosql-query-builder.js +478 -0
- package/dist/esm/plugins/query-builder/mquery/nosql-query-builder.js.map +1 -0
- package/dist/esm/plugins/react/database-context.js +8 -0
- package/dist/esm/plugins/react/database-context.js.map +1 -0
- package/dist/esm/plugins/react/database-provider.js +34 -0
- package/dist/esm/plugins/react/database-provider.js.map +1 -0
- package/dist/esm/plugins/react/hooks/index.js +5 -0
- package/dist/esm/plugins/react/hooks/index.js.map +1 -0
- package/dist/esm/plugins/react/hooks/use-live-rx-query.js +22 -0
- package/dist/esm/plugins/react/hooks/use-live-rx-query.js.map +1 -0
- package/dist/esm/plugins/react/hooks/use-rx-collection.js +34 -0
- package/dist/esm/plugins/react/hooks/use-rx-collection.js.map +1 -0
- package/dist/esm/plugins/react/hooks/use-rx-database.js +19 -0
- package/dist/esm/plugins/react/hooks/use-rx-database.js.map +1 -0
- package/dist/esm/plugins/react/hooks/use-rx-query.js +92 -0
- package/dist/esm/plugins/react/hooks/use-rx-query.js.map +1 -0
- package/dist/esm/plugins/react/index.js +3 -0
- package/dist/esm/plugins/react/index.js.map +1 -0
- package/dist/esm/plugins/reactivity-angular/index.js +25 -0
- package/dist/esm/plugins/reactivity-angular/index.js.map +1 -0
- package/dist/esm/plugins/reactivity-preact-signals/index.js +62 -0
- package/dist/esm/plugins/reactivity-preact-signals/index.js.map +1 -0
- package/dist/esm/plugins/reactivity-vue/index.js +27 -0
- package/dist/esm/plugins/reactivity-vue/index.js.map +1 -0
- package/dist/esm/plugins/replication/index.js +479 -0
- package/dist/esm/plugins/replication/index.js.map +1 -0
- package/dist/esm/plugins/replication/replication-helper.js +86 -0
- package/dist/esm/plugins/replication/replication-helper.js.map +1 -0
- package/dist/esm/plugins/replication-appwrite/appwrite-helpers.js +26 -0
- package/dist/esm/plugins/replication-appwrite/appwrite-helpers.js.map +1 -0
- package/dist/esm/plugins/replication-appwrite/appwrite-types.js +3 -0
- package/dist/esm/plugins/replication-appwrite/appwrite-types.js.map +1 -0
- package/dist/esm/plugins/replication-appwrite/index.js +168 -0
- package/dist/esm/plugins/replication-appwrite/index.js.map +1 -0
- package/dist/esm/plugins/replication-couchdb/couchdb-helper.js +65 -0
- package/dist/esm/plugins/replication-couchdb/couchdb-helper.js.map +1 -0
- package/dist/esm/plugins/replication-couchdb/couchdb-types.js +3 -0
- package/dist/esm/plugins/replication-couchdb/couchdb-types.js.map +1 -0
- package/dist/esm/plugins/replication-couchdb/index.js +254 -0
- package/dist/esm/plugins/replication-couchdb/index.js.map +1 -0
- package/dist/esm/plugins/replication-firestore/firestore-helper.js +49 -0
- package/dist/esm/plugins/replication-firestore/firestore-helper.js.map +1 -0
- package/dist/esm/plugins/replication-firestore/firestore-types.js +3 -0
- package/dist/esm/plugins/replication-firestore/firestore-types.js.map +1 -0
- package/dist/esm/plugins/replication-firestore/index.js +233 -0
- package/dist/esm/plugins/replication-firestore/index.js.map +1 -0
- package/dist/esm/plugins/replication-google-drive/document-handling.js +140 -0
- package/dist/esm/plugins/replication-google-drive/document-handling.js.map +1 -0
- package/dist/esm/plugins/replication-google-drive/downstream.js +66 -0
- package/dist/esm/plugins/replication-google-drive/downstream.js.map +1 -0
- package/dist/esm/plugins/replication-google-drive/google-drive-helper.js +331 -0
- package/dist/esm/plugins/replication-google-drive/google-drive-helper.js.map +1 -0
- package/dist/esm/plugins/replication-google-drive/google-drive-types.js +3 -0
- package/dist/esm/plugins/replication-google-drive/google-drive-types.js.map +1 -0
- package/dist/esm/plugins/replication-google-drive/index.js +126 -0
- package/dist/esm/plugins/replication-google-drive/index.js.map +1 -0
- package/dist/esm/plugins/replication-google-drive/init.js +70 -0
- package/dist/esm/plugins/replication-google-drive/init.js.map +1 -0
- package/dist/esm/plugins/replication-google-drive/multipart.js +67 -0
- package/dist/esm/plugins/replication-google-drive/multipart.js.map +1 -0
- package/dist/esm/plugins/replication-google-drive/signaling.js +253 -0
- package/dist/esm/plugins/replication-google-drive/signaling.js.map +1 -0
- package/dist/esm/plugins/replication-google-drive/transaction.js +123 -0
- package/dist/esm/plugins/replication-google-drive/transaction.js.map +1 -0
- package/dist/esm/plugins/replication-google-drive/upstream.js +171 -0
- package/dist/esm/plugins/replication-google-drive/upstream.js.map +1 -0
- package/dist/esm/plugins/replication-graphql/graphql-schema-from-rx-schema.js +228 -0
- package/dist/esm/plugins/replication-graphql/graphql-schema-from-rx-schema.js.map +1 -0
- package/dist/esm/plugins/replication-graphql/graphql-websocket.js +35 -0
- package/dist/esm/plugins/replication-graphql/graphql-websocket.js.map +1 -0
- package/dist/esm/plugins/replication-graphql/helper.js +21 -0
- package/dist/esm/plugins/replication-graphql/helper.js.map +1 -0
- package/dist/esm/plugins/replication-graphql/index.js +161 -0
- package/dist/esm/plugins/replication-graphql/index.js.map +1 -0
- package/dist/esm/plugins/replication-graphql/query-builder-from-rx-schema.js +133 -0
- package/dist/esm/plugins/replication-graphql/query-builder-from-rx-schema.js.map +1 -0
- package/dist/esm/plugins/replication-microsoft-onedrive/document-handling.js +178 -0
- package/dist/esm/plugins/replication-microsoft-onedrive/document-handling.js.map +1 -0
- package/dist/esm/plugins/replication-microsoft-onedrive/downstream.js +71 -0
- package/dist/esm/plugins/replication-microsoft-onedrive/downstream.js.map +1 -0
- package/dist/esm/plugins/replication-microsoft-onedrive/index.js +126 -0
- package/dist/esm/plugins/replication-microsoft-onedrive/index.js.map +1 -0
- package/dist/esm/plugins/replication-microsoft-onedrive/init.js +70 -0
- package/dist/esm/plugins/replication-microsoft-onedrive/init.js.map +1 -0
- package/dist/esm/plugins/replication-microsoft-onedrive/microsoft-onedrive-helper.js +258 -0
- package/dist/esm/plugins/replication-microsoft-onedrive/microsoft-onedrive-helper.js.map +1 -0
- package/dist/esm/plugins/replication-microsoft-onedrive/microsoft-onedrive-types.js +3 -0
- package/dist/esm/plugins/replication-microsoft-onedrive/microsoft-onedrive-types.js.map +1 -0
- package/dist/esm/plugins/replication-microsoft-onedrive/signaling.js +226 -0
- package/dist/esm/plugins/replication-microsoft-onedrive/signaling.js.map +1 -0
- package/dist/esm/plugins/replication-microsoft-onedrive/transaction.js +127 -0
- package/dist/esm/plugins/replication-microsoft-onedrive/transaction.js.map +1 -0
- package/dist/esm/plugins/replication-microsoft-onedrive/upstream.js +179 -0
- package/dist/esm/plugins/replication-microsoft-onedrive/upstream.js.map +1 -0
- package/dist/esm/plugins/replication-mongodb/index.js +197 -0
- package/dist/esm/plugins/replication-mongodb/index.js.map +1 -0
- package/dist/esm/plugins/replication-mongodb/mongodb-checkpoint.js +131 -0
- package/dist/esm/plugins/replication-mongodb/mongodb-checkpoint.js.map +1 -0
- package/dist/esm/plugins/replication-mongodb/mongodb-helper.js +45 -0
- package/dist/esm/plugins/replication-mongodb/mongodb-helper.js.map +1 -0
- package/dist/esm/plugins/replication-mongodb/mongodb-types.js +3 -0
- package/dist/esm/plugins/replication-mongodb/mongodb-types.js.map +1 -0
- package/dist/esm/plugins/replication-nats/index.js +199 -0
- package/dist/esm/plugins/replication-nats/index.js.map +1 -0
- package/dist/esm/plugins/replication-nats/nats-helper.js +7 -0
- package/dist/esm/plugins/replication-nats/nats-helper.js.map +1 -0
- package/dist/esm/plugins/replication-nats/nats-types.js +3 -0
- package/dist/esm/plugins/replication-nats/nats-types.js.map +1 -0
- package/dist/esm/plugins/replication-supabase/helper.js +35 -0
- package/dist/esm/plugins/replication-supabase/helper.js.map +1 -0
- package/dist/esm/plugins/replication-supabase/index.js +231 -0
- package/dist/esm/plugins/replication-supabase/index.js.map +1 -0
- package/dist/esm/plugins/replication-supabase/types.js +3 -0
- package/dist/esm/plugins/replication-supabase/types.js.map +1 -0
- package/dist/esm/plugins/replication-webrtc/connection-handler-p2pcf.js +78 -0
- package/dist/esm/plugins/replication-webrtc/connection-handler-p2pcf.js.map +1 -0
- package/dist/esm/plugins/replication-webrtc/connection-handler-simple-peer.js +192 -0
- package/dist/esm/plugins/replication-webrtc/connection-handler-simple-peer.js.map +1 -0
- package/dist/esm/plugins/replication-webrtc/connection-handler-webtorrent.js +136 -0
- package/dist/esm/plugins/replication-webrtc/connection-handler-webtorrent.js.map +1 -0
- package/dist/esm/plugins/replication-webrtc/index.js +207 -0
- package/dist/esm/plugins/replication-webrtc/index.js.map +1 -0
- package/dist/esm/plugins/replication-webrtc/signaling-server.js +144 -0
- package/dist/esm/plugins/replication-webrtc/signaling-server.js.map +1 -0
- package/dist/esm/plugins/replication-webrtc/webrtc-helper.js +26 -0
- package/dist/esm/plugins/replication-webrtc/webrtc-helper.js.map +1 -0
- package/dist/esm/plugins/replication-webrtc/webrtc-types.js +3 -0
- package/dist/esm/plugins/replication-webrtc/webrtc-types.js.map +1 -0
- package/dist/esm/plugins/replication-websocket/index.js +4 -0
- package/dist/esm/plugins/replication-websocket/index.js.map +1 -0
- package/dist/esm/plugins/replication-websocket/websocket-client.js +125 -0
- package/dist/esm/plugins/replication-websocket/websocket-client.js.map +1 -0
- package/dist/esm/plugins/replication-websocket/websocket-server.js +100 -0
- package/dist/esm/plugins/replication-websocket/websocket-server.js.map +1 -0
- package/dist/esm/plugins/replication-websocket/websocket-types.js +3 -0
- package/dist/esm/plugins/replication-websocket/websocket-types.js.map +1 -0
- package/dist/esm/plugins/state/helpers.js +73 -0
- package/dist/esm/plugins/state/helpers.js.map +1 -0
- package/dist/esm/plugins/state/index.js +20 -0
- package/dist/esm/plugins/state/index.js.map +1 -0
- package/dist/esm/plugins/state/rx-state.js +285 -0
- package/dist/esm/plugins/state/rx-state.js.map +1 -0
- package/dist/esm/plugins/state/types.js +3 -0
- package/dist/esm/plugins/state/types.js.map +1 -0
- package/dist/esm/plugins/storage-denokv/denokv-helper.js +40 -0
- package/dist/esm/plugins/storage-denokv/denokv-helper.js.map +1 -0
- package/dist/esm/plugins/storage-denokv/denokv-query.js +93 -0
- package/dist/esm/plugins/storage-denokv/denokv-query.js.map +1 -0
- package/dist/esm/plugins/storage-denokv/denokv-types.js +3 -0
- package/dist/esm/plugins/storage-denokv/denokv-types.js.map +1 -0
- package/dist/esm/plugins/storage-denokv/index.js +24 -0
- package/dist/esm/plugins/storage-denokv/index.js.map +1 -0
- package/dist/esm/plugins/storage-denokv/rx-storage-instance-denokv.js +325 -0
- package/dist/esm/plugins/storage-denokv/rx-storage-instance-denokv.js.map +1 -0
- package/dist/esm/plugins/storage-dexie/dexie-helper.js +241 -0
- package/dist/esm/plugins/storage-dexie/dexie-helper.js.map +1 -0
- package/dist/esm/plugins/storage-dexie/dexie-query.js +169 -0
- package/dist/esm/plugins/storage-dexie/dexie-query.js.map +1 -0
- package/dist/esm/plugins/storage-dexie/index.js +5 -0
- package/dist/esm/plugins/storage-dexie/index.js.map +1 -0
- package/dist/esm/plugins/storage-dexie/rx-storage-dexie.js +39 -0
- package/dist/esm/plugins/storage-dexie/rx-storage-dexie.js.map +1 -0
- package/dist/esm/plugins/storage-dexie/rx-storage-instance-dexie.js +222 -0
- package/dist/esm/plugins/storage-dexie/rx-storage-instance-dexie.js.map +1 -0
- package/dist/esm/plugins/storage-foundationdb/foundationdb-helpers.js +6 -0
- package/dist/esm/plugins/storage-foundationdb/foundationdb-helpers.js.map +1 -0
- package/dist/esm/plugins/storage-foundationdb/foundationdb-query.js +90 -0
- package/dist/esm/plugins/storage-foundationdb/foundationdb-query.js.map +1 -0
- package/dist/esm/plugins/storage-foundationdb/foundationdb-types.js +3 -0
- package/dist/esm/plugins/storage-foundationdb/foundationdb-types.js.map +1 -0
- package/dist/esm/plugins/storage-foundationdb/index.js +31 -0
- package/dist/esm/plugins/storage-foundationdb/index.js.map +1 -0
- package/dist/esm/plugins/storage-foundationdb/rx-storage-instance-foundationdb.js +302 -0
- package/dist/esm/plugins/storage-foundationdb/rx-storage-instance-foundationdb.js.map +1 -0
- package/dist/esm/plugins/storage-localstorage/index.js +23 -0
- package/dist/esm/plugins/storage-localstorage/index.js.map +1 -0
- package/dist/esm/plugins/storage-localstorage/localstorage-mock.js +33 -0
- package/dist/esm/plugins/storage-localstorage/localstorage-mock.js.map +1 -0
- package/dist/esm/plugins/storage-localstorage/rx-storage-instance-localstorage.js +432 -0
- package/dist/esm/plugins/storage-localstorage/rx-storage-instance-localstorage.js.map +1 -0
- package/dist/esm/plugins/storage-memory/binary-search-bounds.js +103 -0
- package/dist/esm/plugins/storage-memory/binary-search-bounds.js.map +1 -0
- package/dist/esm/plugins/storage-memory/index.js +29 -0
- package/dist/esm/plugins/storage-memory/index.js.map +1 -0
- package/dist/esm/plugins/storage-memory/memory-helper.js +165 -0
- package/dist/esm/plugins/storage-memory/memory-helper.js.map +1 -0
- package/dist/esm/plugins/storage-memory/memory-indexes.js +21 -0
- package/dist/esm/plugins/storage-memory/memory-indexes.js.map +1 -0
- package/dist/esm/plugins/storage-memory/memory-types.js +3 -0
- package/dist/esm/plugins/storage-memory/memory-types.js.map +1 -0
- package/dist/esm/plugins/storage-memory/rx-storage-instance-memory.js +364 -0
- package/dist/esm/plugins/storage-memory/rx-storage-instance-memory.js.map +1 -0
- package/dist/esm/plugins/storage-mongodb/index.js +5 -0
- package/dist/esm/plugins/storage-mongodb/index.js.map +1 -0
- package/dist/esm/plugins/storage-mongodb/mongodb-helper.js +85 -0
- package/dist/esm/plugins/storage-mongodb/mongodb-helper.js.map +1 -0
- package/dist/esm/plugins/storage-mongodb/mongodb-types.js +3 -0
- package/dist/esm/plugins/storage-mongodb/mongodb-types.js.map +1 -0
- package/dist/esm/plugins/storage-mongodb/rx-storage-instance-mongodb.js +316 -0
- package/dist/esm/plugins/storage-mongodb/rx-storage-instance-mongodb.js.map +1 -0
- package/dist/esm/plugins/storage-mongodb/rx-storage-mongodb.js +22 -0
- package/dist/esm/plugins/storage-mongodb/rx-storage-mongodb.js.map +1 -0
- package/dist/esm/plugins/storage-remote/index.js +6 -0
- package/dist/esm/plugins/storage-remote/index.js.map +1 -0
- package/dist/esm/plugins/storage-remote/message-channel-cache.js +44 -0
- package/dist/esm/plugins/storage-remote/message-channel-cache.js.map +1 -0
- package/dist/esm/plugins/storage-remote/remote.js +212 -0
- package/dist/esm/plugins/storage-remote/remote.js.map +1 -0
- package/dist/esm/plugins/storage-remote/rx-storage-remote.js +193 -0
- package/dist/esm/plugins/storage-remote/rx-storage-remote.js.map +1 -0
- package/dist/esm/plugins/storage-remote/storage-remote-helpers.js +18 -0
- package/dist/esm/plugins/storage-remote/storage-remote-helpers.js.map +1 -0
- package/dist/esm/plugins/storage-remote/storage-remote-types.js +3 -0
- package/dist/esm/plugins/storage-remote/storage-remote-types.js.map +1 -0
- package/dist/esm/plugins/storage-remote-websocket/index.js +161 -0
- package/dist/esm/plugins/storage-remote-websocket/index.js.map +1 -0
- package/dist/esm/plugins/storage-remote-websocket/types.js +3 -0
- package/dist/esm/plugins/storage-remote-websocket/types.js.map +1 -0
- package/dist/esm/plugins/storage-sqlite/index.js +31 -0
- package/dist/esm/plugins/storage-sqlite/index.js.map +1 -0
- package/dist/esm/plugins/storage-sqlite/sqlite-basics-helpers.js +510 -0
- package/dist/esm/plugins/storage-sqlite/sqlite-basics-helpers.js.map +1 -0
- package/dist/esm/plugins/storage-sqlite/sqlite-helpers.js +187 -0
- package/dist/esm/plugins/storage-sqlite/sqlite-helpers.js.map +1 -0
- package/dist/esm/plugins/storage-sqlite/sqlite-storage-instance.js +283 -0
- package/dist/esm/plugins/storage-sqlite/sqlite-storage-instance.js.map +1 -0
- package/dist/esm/plugins/storage-sqlite/sqlite-types.js +3 -0
- package/dist/esm/plugins/storage-sqlite/sqlite-types.js.map +1 -0
- package/dist/esm/plugins/test-utils/config.js +104 -0
- package/dist/esm/plugins/test-utils/config.js.map +1 -0
- package/dist/esm/plugins/test-utils/humans-collection.js +397 -0
- package/dist/esm/plugins/test-utils/humans-collection.js.map +1 -0
- package/dist/esm/plugins/test-utils/index.js +22 -0
- package/dist/esm/plugins/test-utils/index.js.map +1 -0
- package/dist/esm/plugins/test-utils/performance.js +267 -0
- package/dist/esm/plugins/test-utils/performance.js.map +1 -0
- package/dist/esm/plugins/test-utils/replication-base-test-suite.js +170 -0
- package/dist/esm/plugins/test-utils/replication-base-test-suite.js.map +1 -0
- package/dist/esm/plugins/test-utils/replication.js +46 -0
- package/dist/esm/plugins/test-utils/replication.js.map +1 -0
- package/dist/esm/plugins/test-utils/revisions.js +5 -0
- package/dist/esm/plugins/test-utils/revisions.js.map +1 -0
- package/dist/esm/plugins/test-utils/schema-objects.js +283 -0
- package/dist/esm/plugins/test-utils/schema-objects.js.map +1 -0
- package/dist/esm/plugins/test-utils/schemas.js +1244 -0
- package/dist/esm/plugins/test-utils/schemas.js.map +1 -0
- package/dist/esm/plugins/test-utils/test-util.js +62 -0
- package/dist/esm/plugins/test-utils/test-util.js.map +1 -0
- package/dist/esm/plugins/update/index.js +35 -0
- package/dist/esm/plugins/update/index.js.map +1 -0
- package/dist/esm/plugins/update/mingo-updater.js +13 -0
- package/dist/esm/plugins/update/mingo-updater.js.map +1 -0
- package/dist/esm/plugins/utils/index.js +21 -0
- package/dist/esm/plugins/utils/index.js.map +1 -0
- package/dist/esm/plugins/utils/utils-array.js +130 -0
- package/dist/esm/plugins/utils/utils-array.js.map +1 -0
- package/dist/esm/plugins/utils/utils-base64.js +48 -0
- package/dist/esm/plugins/utils/utils-base64.js.map +1 -0
- package/dist/esm/plugins/utils/utils-blob.js +54 -0
- package/dist/esm/plugins/utils/utils-blob.js.map +1 -0
- package/dist/esm/plugins/utils/utils-document.js +87 -0
- package/dist/esm/plugins/utils/utils-document.js.map +1 -0
- package/dist/esm/plugins/utils/utils-error.js +36 -0
- package/dist/esm/plugins/utils/utils-error.js.map +1 -0
- package/dist/esm/plugins/utils/utils-global.js +6 -0
- package/dist/esm/plugins/utils/utils-global.js.map +1 -0
- package/dist/esm/plugins/utils/utils-hash.js +51 -0
- package/dist/esm/plugins/utils/utils-hash.js.map +1 -0
- package/dist/esm/plugins/utils/utils-map.js +18 -0
- package/dist/esm/plugins/utils/utils-map.js.map +1 -0
- package/dist/esm/plugins/utils/utils-number.js +10 -0
- package/dist/esm/plugins/utils/utils-number.js.map +1 -0
- package/dist/esm/plugins/utils/utils-object-deep-equal.js +36 -0
- package/dist/esm/plugins/utils/utils-object-deep-equal.js.map +1 -0
- package/dist/esm/plugins/utils/utils-object-dot-prop.js +296 -0
- package/dist/esm/plugins/utils/utils-object-dot-prop.js.map +1 -0
- package/dist/esm/plugins/utils/utils-object.js +228 -0
- package/dist/esm/plugins/utils/utils-object.js.map +1 -0
- package/dist/esm/plugins/utils/utils-other.js +58 -0
- package/dist/esm/plugins/utils/utils-other.js.map +1 -0
- package/dist/esm/plugins/utils/utils-premium.js +30 -0
- package/dist/esm/plugins/utils/utils-premium.js.map +1 -0
- package/dist/esm/plugins/utils/utils-promise.js +134 -0
- package/dist/esm/plugins/utils/utils-promise.js.map +1 -0
- package/dist/esm/plugins/utils/utils-regex.js +3 -0
- package/dist/esm/plugins/utils/utils-regex.js.map +1 -0
- package/dist/esm/plugins/utils/utils-revision.js +53 -0
- package/dist/esm/plugins/utils/utils-revision.js.map +1 -0
- package/dist/esm/plugins/utils/utils-rxdb-version.js +5 -0
- package/dist/esm/plugins/utils/utils-rxdb-version.js.map +1 -0
- package/dist/esm/plugins/utils/utils-rxdb-version.template.js +5 -0
- package/dist/esm/plugins/utils/utils-rxdb-version.template.js.map +1 -0
- package/dist/esm/plugins/utils/utils-string.js +83 -0
- package/dist/esm/plugins/utils/utils-string.js.map +1 -0
- package/dist/esm/plugins/utils/utils-time.js +36 -0
- package/dist/esm/plugins/utils/utils-time.js.map +1 -0
- package/dist/esm/plugins/validate-ajv/index.js +43 -0
- package/dist/esm/plugins/validate-ajv/index.js.map +1 -0
- package/dist/esm/plugins/validate-is-my-json-valid/index.js +20 -0
- package/dist/esm/plugins/validate-is-my-json-valid/index.js.map +1 -0
- package/dist/esm/plugins/validate-z-schema/index.js +47 -0
- package/dist/esm/plugins/validate-z-schema/index.js.map +1 -0
- package/dist/esm/plugins/vector/helper.js +2 -0
- package/dist/esm/plugins/vector/helper.js.map +1 -0
- package/dist/esm/plugins/vector/index.js +2 -0
- package/dist/esm/plugins/vector/index.js.map +1 -0
- package/dist/esm/plugins/vector/types.js +3 -0
- package/dist/esm/plugins/vector/types.js.map +1 -0
- package/dist/esm/plugins/vector/vector-distance.js +29 -0
- package/dist/esm/plugins/vector/vector-distance.js.map +1 -0
- package/dist/esm/plugins/webmcp/index.js +3 -0
- package/dist/esm/plugins/webmcp/index.js.map +1 -0
- package/dist/esm/plugins/webmcp/nosql-query-schema.js +354 -0
- package/dist/esm/plugins/webmcp/nosql-query-schema.js.map +1 -0
- package/dist/esm/plugins/webmcp/webmcp.js +307 -0
- package/dist/esm/plugins/webmcp/webmcp.js.map +1 -0
- package/dist/esm/query-cache.js +99 -0
- package/dist/esm/query-cache.js.map +1 -0
- package/dist/esm/query-planner.js +297 -0
- package/dist/esm/query-planner.js.map +1 -0
- package/dist/esm/replication-protocol/checkpoint.js +95 -0
- package/dist/esm/replication-protocol/checkpoint.js.map +1 -0
- package/dist/esm/replication-protocol/conflicts.js +31 -0
- package/dist/esm/replication-protocol/conflicts.js.map +1 -0
- package/dist/esm/replication-protocol/default-conflict-handler.js +33 -0
- package/dist/esm/replication-protocol/default-conflict-handler.js.map +1 -0
- package/dist/esm/replication-protocol/downstream.js +334 -0
- package/dist/esm/replication-protocol/downstream.js.map +1 -0
- package/dist/esm/replication-protocol/helper.js +49 -0
- package/dist/esm/replication-protocol/helper.js.map +1 -0
- package/dist/esm/replication-protocol/index.js +221 -0
- package/dist/esm/replication-protocol/index.js.map +1 -0
- package/dist/esm/replication-protocol/meta-instance.js +121 -0
- package/dist/esm/replication-protocol/meta-instance.js.map +1 -0
- package/dist/esm/replication-protocol/upstream.js +379 -0
- package/dist/esm/replication-protocol/upstream.js.map +1 -0
- package/dist/esm/rx-change-event.js +103 -0
- package/dist/esm/rx-change-event.js.map +1 -0
- package/dist/esm/rx-collection-helper.js +196 -0
- package/dist/esm/rx-collection-helper.js.map +1 -0
- package/dist/esm/rx-collection.js +923 -0
- package/dist/esm/rx-collection.js.map +1 -0
- package/dist/esm/rx-database-internal-store.js +270 -0
- package/dist/esm/rx-database-internal-store.js.map +1 -0
- package/dist/esm/rx-database.js +670 -0
- package/dist/esm/rx-database.js.map +1 -0
- package/dist/esm/rx-document-prototype-merge.js +78 -0
- package/dist/esm/rx-document-prototype-merge.js.map +1 -0
- package/dist/esm/rx-document.js +394 -0
- package/dist/esm/rx-document.js.map +1 -0
- package/dist/esm/rx-error.js +153 -0
- package/dist/esm/rx-error.js.map +1 -0
- package/dist/esm/rx-query-helper.js +268 -0
- package/dist/esm/rx-query-helper.js.map +1 -0
- package/dist/esm/rx-query-mingo.js +54 -0
- package/dist/esm/rx-query-mingo.js.map +1 -0
- package/dist/esm/rx-query-single-result.js +98 -0
- package/dist/esm/rx-query-single-result.js.map +1 -0
- package/dist/esm/rx-query.js +690 -0
- package/dist/esm/rx-query.js.map +1 -0
- package/dist/esm/rx-schema-helper.js +316 -0
- package/dist/esm/rx-schema-helper.js.map +1 -0
- package/dist/esm/rx-schema.js +177 -0
- package/dist/esm/rx-schema.js.map +1 -0
- package/dist/esm/rx-storage-helper.js +785 -0
- package/dist/esm/rx-storage-helper.js.map +1 -0
- package/dist/esm/rx-storage-multiinstance.js +113 -0
- package/dist/esm/rx-storage-multiinstance.js.map +1 -0
- package/dist/esm/types/conflict-handling.d.js +3 -0
- package/dist/esm/types/conflict-handling.d.js.map +1 -0
- package/dist/esm/types/couchdb.d.js +3 -0
- package/dist/esm/types/couchdb.d.js.map +1 -0
- package/dist/esm/types/index.d.js +2 -0
- package/dist/esm/types/index.d.js.map +1 -0
- package/dist/esm/types/modules/index.d.js +2 -0
- package/dist/esm/types/modules/index.d.js.map +1 -0
- package/dist/esm/types/modules/mocha.parallel.d.js +2 -0
- package/dist/esm/types/modules/mocha.parallel.d.js.map +1 -0
- package/dist/esm/types/plugins/backup.d.js +3 -0
- package/dist/esm/types/plugins/backup.d.js.map +1 -0
- package/dist/esm/types/plugins/cleanup.d.js +3 -0
- package/dist/esm/types/plugins/cleanup.d.js.map +1 -0
- package/dist/esm/types/plugins/crdt.d.js +3 -0
- package/dist/esm/types/plugins/crdt.d.js.map +1 -0
- package/dist/esm/types/plugins/dexie.d.js +3 -0
- package/dist/esm/types/plugins/dexie.d.js.map +1 -0
- package/dist/esm/types/plugins/local-documents.d.js +3 -0
- package/dist/esm/types/plugins/local-documents.d.js.map +1 -0
- package/dist/esm/types/plugins/migration.d.js +3 -0
- package/dist/esm/types/plugins/migration.d.js.map +1 -0
- package/dist/esm/types/plugins/reactivity.d.js +3 -0
- package/dist/esm/types/plugins/reactivity.d.js.map +1 -0
- package/dist/esm/types/plugins/replication-graphql.d.js +3 -0
- package/dist/esm/types/plugins/replication-graphql.d.js.map +1 -0
- package/dist/esm/types/plugins/replication.d.js +3 -0
- package/dist/esm/types/plugins/replication.d.js.map +1 -0
- package/dist/esm/types/plugins/state.d.js +3 -0
- package/dist/esm/types/plugins/state.d.js.map +1 -0
- package/dist/esm/types/plugins/update.d.js +3 -0
- package/dist/esm/types/plugins/update.d.js.map +1 -0
- package/dist/esm/types/plugins/webmcp.d.js +3 -0
- package/dist/esm/types/plugins/webmcp.d.js.map +1 -0
- package/dist/esm/types/query-planner.d.js +3 -0
- package/dist/esm/types/query-planner.d.js.map +1 -0
- package/dist/esm/types/replication-protocol.d.js +3 -0
- package/dist/esm/types/replication-protocol.d.js.map +1 -0
- package/dist/esm/types/rx-attachment.d.js +3 -0
- package/dist/esm/types/rx-attachment.d.js.map +1 -0
- package/dist/esm/types/rx-change-event.d.js +3 -0
- package/dist/esm/types/rx-change-event.d.js.map +1 -0
- package/dist/esm/types/rx-collection.d.js +3 -0
- package/dist/esm/types/rx-collection.d.js.map +1 -0
- package/dist/esm/types/rx-database-internal-store.d.js +3 -0
- package/dist/esm/types/rx-database-internal-store.d.js.map +1 -0
- package/dist/esm/types/rx-database.d.js +3 -0
- package/dist/esm/types/rx-database.d.js.map +1 -0
- package/dist/esm/types/rx-document.d.js +3 -0
- package/dist/esm/types/rx-document.d.js.map +1 -0
- package/dist/esm/types/rx-error.d.js +3 -0
- package/dist/esm/types/rx-error.d.js.map +1 -0
- package/dist/esm/types/rx-plugin.d.js +3 -0
- package/dist/esm/types/rx-plugin.d.js.map +1 -0
- package/dist/esm/types/rx-query.d.js +3 -0
- package/dist/esm/types/rx-query.d.js.map +1 -0
- package/dist/esm/types/rx-schema.d.js +3 -0
- package/dist/esm/types/rx-schema.d.js.map +1 -0
- package/dist/esm/types/rx-storage.d.js +3 -0
- package/dist/esm/types/rx-storage.d.js.map +1 -0
- package/dist/esm/types/rx-storage.interface.d.js +3 -0
- package/dist/esm/types/rx-storage.interface.d.js.map +1 -0
- package/dist/esm/types/util.d.js +3 -0
- package/dist/esm/types/util.d.js.map +1 -0
- package/dist/types/change-event-buffer.d.ts +50 -0
- package/dist/types/custom-index.d.ts +58 -0
- package/dist/types/doc-cache.d.ts +96 -0
- package/dist/types/event-reduce.d.ts +15 -0
- package/dist/types/hooks.d.ts +109 -0
- package/dist/types/incremental-write.d.ts +29 -0
- package/dist/types/index.d.ts +30 -0
- package/dist/types/overwritable.d.ts +26 -0
- package/dist/types/plugin-helpers.d.ts +30 -0
- package/dist/types/plugin.d.ts +6 -0
- package/dist/types/plugins/attachments/attachments-utils.d.ts +10 -0
- package/dist/types/plugins/attachments/index.d.ts +42 -0
- package/dist/types/plugins/attachments-compression/index.d.ts +38 -0
- package/dist/types/plugins/backup/file-util.d.ts +17 -0
- package/dist/types/plugins/backup/index.d.ts +37 -0
- package/dist/types/plugins/cleanup/cleanup-helper.d.ts +2 -0
- package/dist/types/plugins/cleanup/cleanup-state.d.ts +7 -0
- package/dist/types/plugins/cleanup/cleanup.d.ts +8 -0
- package/dist/types/plugins/cleanup/index.d.ts +4 -0
- package/dist/types/plugins/crdt/index.d.ts +12 -0
- package/dist/types/plugins/dev-mode/check-document.d.ts +9 -0
- package/dist/types/plugins/dev-mode/check-migration-strategies.d.ts +6 -0
- package/dist/types/plugins/dev-mode/check-orm.d.ts +7 -0
- package/dist/types/plugins/dev-mode/check-query.d.ts +21 -0
- package/dist/types/plugins/dev-mode/check-schema.d.ts +18 -0
- package/dist/types/plugins/dev-mode/dev-mode-tracking.d.ts +4 -0
- package/dist/types/plugins/dev-mode/entity-properties.d.ts +3 -0
- package/dist/types/plugins/dev-mode/error-messages.d.ts +1230 -0
- package/dist/types/plugins/dev-mode/index.d.ts +19 -0
- package/dist/types/plugins/dev-mode/unallowed-properties.d.ts +20 -0
- package/dist/types/plugins/electron/electron-helper.d.ts +2 -0
- package/dist/types/plugins/electron/index.d.ts +3 -0
- package/dist/types/plugins/electron/rx-storage-ipc-main.d.ts +10 -0
- package/dist/types/plugins/electron/rx-storage-ipc-renderer.d.ts +13 -0
- package/dist/types/plugins/encryption-crypto-js/index.d.ts +10 -0
- package/dist/types/plugins/flutter/index.d.ts +11 -0
- package/dist/types/plugins/json-dump/index.d.ts +2 -0
- package/dist/types/plugins/key-compression/index.d.ts +18 -0
- package/dist/types/plugins/leader-election/index.d.ts +25 -0
- package/dist/types/plugins/local-documents/index.d.ts +6 -0
- package/dist/types/plugins/local-documents/local-documents-helper.d.ts +9 -0
- package/dist/types/plugins/local-documents/local-documents.d.ts +14 -0
- package/dist/types/plugins/local-documents/rx-local-document.d.ts +11 -0
- package/dist/types/plugins/migration-schema/index.d.ts +8 -0
- package/dist/types/plugins/migration-schema/migration-helpers.d.ts +29 -0
- package/dist/types/plugins/migration-schema/migration-types.d.ts +33 -0
- package/dist/types/plugins/migration-schema/rx-migration-state.d.ts +50 -0
- package/dist/types/plugins/migration-storage/index.d.ts +32 -0
- package/dist/types/plugins/pipeline/flagged-functions.d.ts +69 -0
- package/dist/types/plugins/pipeline/index.d.ts +5 -0
- package/dist/types/plugins/pipeline/rx-pipeline.d.ts +37 -0
- package/dist/types/plugins/pipeline/types.d.ts +17 -0
- package/dist/types/plugins/query-builder/index.d.ts +5 -0
- package/dist/types/plugins/query-builder/mquery/mquery-utils.d.ts +12 -0
- package/dist/types/plugins/query-builder/mquery/nosql-query-builder.d.ts +165 -0
- package/dist/types/plugins/react/database-context.d.ts +4 -0
- package/dist/types/plugins/react/database-provider.d.ts +24 -0
- package/dist/types/plugins/react/hooks/index.d.ts +4 -0
- package/dist/types/plugins/react/hooks/use-live-rx-query.d.ts +11 -0
- package/dist/types/plugins/react/hooks/use-rx-collection.d.ts +10 -0
- package/dist/types/plugins/react/hooks/use-rx-database.d.ts +9 -0
- package/dist/types/plugins/react/hooks/use-rx-query.d.ts +24 -0
- package/dist/types/plugins/react/index.d.ts +2 -0
- package/dist/types/plugins/reactivity-angular/index.d.ts +16 -0
- package/dist/types/plugins/reactivity-preact-signals/index.d.ts +27 -0
- package/dist/types/plugins/reactivity-vue/index.d.ts +17 -0
- package/dist/types/plugins/replication/index.d.ts +84 -0
- package/dist/types/plugins/replication/replication-helper.d.ts +23 -0
- package/dist/types/plugins/replication-appwrite/appwrite-helpers.d.ts +3 -0
- package/dist/types/plugins/replication-appwrite/appwrite-types.d.ts +16 -0
- package/dist/types/plugins/replication-appwrite/index.d.ts +14 -0
- package/dist/types/plugins/replication-couchdb/couchdb-helper.d.ts +19 -0
- package/dist/types/plugins/replication-couchdb/couchdb-types.d.ts +22 -0
- package/dist/types/plugins/replication-couchdb/index.d.ts +18 -0
- package/dist/types/plugins/replication-firestore/firestore-helper.d.ts +10 -0
- package/dist/types/plugins/replication-firestore/firestore-types.d.ts +46 -0
- package/dist/types/plugins/replication-firestore/index.d.ts +17 -0
- package/dist/types/plugins/replication-google-drive/document-handling.d.ts +13 -0
- package/dist/types/plugins/replication-google-drive/downstream.d.ts +10 -0
- package/dist/types/plugins/replication-google-drive/google-drive-helper.d.ts +35 -0
- package/dist/types/plugins/replication-google-drive/google-drive-types.d.ts +67 -0
- package/dist/types/plugins/replication-google-drive/index.d.ts +39 -0
- package/dist/types/plugins/replication-google-drive/init.d.ts +29 -0
- package/dist/types/plugins/replication-google-drive/multipart.d.ts +10 -0
- package/dist/types/plugins/replication-google-drive/signaling.d.ts +41 -0
- package/dist/types/plugins/replication-google-drive/transaction.d.ts +22 -0
- package/dist/types/plugins/replication-google-drive/upstream.d.ts +24 -0
- package/dist/types/plugins/replication-graphql/graphql-schema-from-rx-schema.d.ts +51 -0
- package/dist/types/plugins/replication-graphql/graphql-websocket.d.ts +12 -0
- package/dist/types/plugins/replication-graphql/helper.d.ts +15 -0
- package/dist/types/plugins/replication-graphql/index.d.ts +26 -0
- package/dist/types/plugins/replication-graphql/query-builder-from-rx-schema.d.ts +5 -0
- package/dist/types/plugins/replication-microsoft-onedrive/document-handling.d.ts +14 -0
- package/dist/types/plugins/replication-microsoft-onedrive/downstream.d.ts +10 -0
- package/dist/types/plugins/replication-microsoft-onedrive/index.d.ts +38 -0
- package/dist/types/plugins/replication-microsoft-onedrive/init.d.ts +29 -0
- package/dist/types/plugins/replication-microsoft-onedrive/microsoft-onedrive-helper.d.ts +30 -0
- package/dist/types/plugins/replication-microsoft-onedrive/microsoft-onedrive-types.d.ts +71 -0
- package/dist/types/plugins/replication-microsoft-onedrive/signaling.d.ts +41 -0
- package/dist/types/plugins/replication-microsoft-onedrive/transaction.d.ts +22 -0
- package/dist/types/plugins/replication-microsoft-onedrive/upstream.d.ts +25 -0
- package/dist/types/plugins/replication-mongodb/index.d.ts +22 -0
- package/dist/types/plugins/replication-mongodb/mongodb-checkpoint.d.ts +15 -0
- package/dist/types/plugins/replication-mongodb/mongodb-helper.d.ts +13 -0
- package/dist/types/plugins/replication-mongodb/mongodb-types.d.ts +33 -0
- package/dist/types/plugins/replication-nats/index.d.ts +16 -0
- package/dist/types/plugins/replication-nats/nats-helper.d.ts +2 -0
- package/dist/types/plugins/replication-nats/nats-types.d.ts +21 -0
- package/dist/types/plugins/replication-supabase/helper.d.ts +5 -0
- package/dist/types/plugins/replication-supabase/index.d.ts +14 -0
- package/dist/types/plugins/replication-supabase/types.d.ts +28 -0
- package/dist/types/plugins/replication-webrtc/connection-handler-p2pcf.d.ts +0 -0
- package/dist/types/plugins/replication-webrtc/connection-handler-simple-peer.d.ts +57 -0
- package/dist/types/plugins/replication-webrtc/connection-handler-webtorrent.d.ts +0 -0
- package/dist/types/plugins/replication-webrtc/index.d.ts +27 -0
- package/dist/types/plugins/replication-webrtc/signaling-server.d.ts +17 -0
- package/dist/types/plugins/replication-webrtc/webrtc-helper.d.ts +16 -0
- package/dist/types/plugins/replication-webrtc/webrtc-types.d.ts +51 -0
- package/dist/types/plugins/replication-websocket/index.d.ts +3 -0
- package/dist/types/plugins/replication-websocket/websocket-client.d.ts +13 -0
- package/dist/types/plugins/replication-websocket/websocket-server.d.ts +6 -0
- package/dist/types/plugins/replication-websocket/websocket-types.d.ts +32 -0
- package/dist/types/plugins/state/helpers.d.ts +10 -0
- package/dist/types/plugins/state/index.d.ts +4 -0
- package/dist/types/plugins/state/rx-state.d.ts +46 -0
- package/dist/types/plugins/state/types.d.ts +28 -0
- package/dist/types/plugins/storage-denokv/denokv-helper.d.ts +16 -0
- package/dist/types/plugins/storage-denokv/denokv-query.d.ts +3 -0
- package/dist/types/plugins/storage-denokv/denokv-types.d.ts +17 -0
- package/dist/types/plugins/storage-denokv/index.d.ts +11 -0
- package/dist/types/plugins/storage-denokv/rx-storage-instance-denokv.d.ts +41 -0
- package/dist/types/plugins/storage-dexie/dexie-helper.d.ts +40 -0
- package/dist/types/plugins/storage-dexie/dexie-query.d.ts +9 -0
- package/dist/types/plugins/storage-dexie/index.d.ts +4 -0
- package/dist/types/plugins/storage-dexie/rx-storage-dexie.d.ts +11 -0
- package/dist/types/plugins/storage-dexie/rx-storage-instance-dexie.d.ts +29 -0
- package/dist/types/plugins/storage-foundationdb/foundationdb-helpers.d.ts +3 -0
- package/dist/types/plugins/storage-foundationdb/foundationdb-query.d.ts +3 -0
- package/dist/types/plugins/storage-foundationdb/foundationdb-types.d.ts +46 -0
- package/dist/types/plugins/storage-foundationdb/index.d.ts +4 -0
- package/dist/types/plugins/storage-foundationdb/rx-storage-instance-foundationdb.d.ts +26 -0
- package/dist/types/plugins/storage-localstorage/index.d.ts +11 -0
- package/dist/types/plugins/storage-localstorage/localstorage-mock.d.ts +1 -0
- package/dist/types/plugins/storage-localstorage/rx-storage-instance-localstorage.d.ts +84 -0
- package/dist/types/plugins/storage-memory/binary-search-bounds.d.ts +14 -0
- package/dist/types/plugins/storage-memory/index.d.ts +7 -0
- package/dist/types/plugins/storage-memory/memory-helper.d.ts +22 -0
- package/dist/types/plugins/storage-memory/memory-indexes.d.ts +4 -0
- package/dist/types/plugins/storage-memory/memory-types.d.ts +72 -0
- package/dist/types/plugins/storage-memory/rx-storage-instance-memory.d.ts +47 -0
- package/dist/types/plugins/storage-mongodb/index.d.ts +4 -0
- package/dist/types/plugins/storage-mongodb/mongodb-helper.d.ts +22 -0
- package/dist/types/plugins/storage-mongodb/mongodb-types.d.ts +21 -0
- package/dist/types/plugins/storage-mongodb/rx-storage-instance-mongodb.d.ts +52 -0
- package/dist/types/plugins/storage-mongodb/rx-storage-mongodb.d.ts +11 -0
- package/dist/types/plugins/storage-remote/index.d.ts +5 -0
- package/dist/types/plugins/storage-remote/message-channel-cache.d.ts +13 -0
- package/dist/types/plugins/storage-remote/remote.d.ts +6 -0
- package/dist/types/plugins/storage-remote/rx-storage-remote.d.ts +43 -0
- package/dist/types/plugins/storage-remote/storage-remote-helpers.d.ts +4 -0
- package/dist/types/plugins/storage-remote/storage-remote-types.d.ts +88 -0
- package/dist/types/plugins/storage-remote-websocket/index.d.ts +4 -0
- package/dist/types/plugins/storage-remote-websocket/types.d.ts +24 -0
- package/dist/types/plugins/storage-sqlite/index.d.ts +15 -0
- package/dist/types/plugins/storage-sqlite/sqlite-basics-helpers.d.ts +53 -0
- package/dist/types/plugins/storage-sqlite/sqlite-helpers.d.ts +48 -0
- package/dist/types/plugins/storage-sqlite/sqlite-storage-instance.d.ts +38 -0
- package/dist/types/plugins/storage-sqlite/sqlite-types.d.ts +116 -0
- package/dist/types/plugins/test-utils/config.d.ts +16 -0
- package/dist/types/plugins/test-utils/humans-collection.d.ts +26 -0
- package/dist/types/plugins/test-utils/index.d.ts +20 -0
- package/dist/types/plugins/test-utils/performance.d.ts +68 -0
- package/dist/types/plugins/test-utils/replication-base-test-suite.d.ts +66 -0
- package/dist/types/plugins/test-utils/replication.d.ts +10 -0
- package/dist/types/plugins/test-utils/revisions.d.ts +4 -0
- package/dist/types/plugins/test-utils/schema-objects.d.ts +219 -0
- package/dist/types/plugins/test-utils/schemas.d.ts +356 -0
- package/dist/types/plugins/test-utils/test-util.d.ts +10 -0
- package/dist/types/plugins/update/index.d.ts +5 -0
- package/dist/types/plugins/update/mingo-updater.d.ts +2 -0
- package/dist/types/plugins/utils/index.d.ts +20 -0
- package/dist/types/plugins/utils/utils-array.d.ts +40 -0
- package/dist/types/plugins/utils/utils-base64.d.ts +15 -0
- package/dist/types/plugins/utils/utils-blob.d.ts +12 -0
- package/dist/types/plugins/utils/utils-document.d.ts +26 -0
- package/dist/types/plugins/utils/utils-error.d.ts +8 -0
- package/dist/types/plugins/utils/utils-global.d.ts +5 -0
- package/dist/types/plugins/utils/utils-hash.d.ts +4 -0
- package/dist/types/plugins/utils/utils-map.d.ts +2 -0
- package/dist/types/plugins/utils/utils-number.d.ts +7 -0
- package/dist/types/plugins/utils/utils-object-deep-equal.d.ts +7 -0
- package/dist/types/plugins/utils/utils-object-dot-prop.d.ts +14 -0
- package/dist/types/plugins/utils/utils-object.d.ts +61 -0
- package/dist/types/plugins/utils/utils-other.d.ts +20 -0
- package/dist/types/plugins/utils/utils-premium.d.ts +10 -0
- package/dist/types/plugins/utils/utils-promise.d.ts +43 -0
- package/dist/types/plugins/utils/utils-regex.d.ts +2 -0
- package/dist/types/plugins/utils/utils-revision.d.ts +22 -0
- package/dist/types/plugins/utils/utils-rxdb-version.d.ts +4 -0
- package/dist/types/plugins/utils/utils-rxdb-version.template.d.ts +4 -0
- package/dist/types/plugins/utils/utils-string.d.ts +35 -0
- package/dist/types/plugins/utils/utils-time.d.ts +5 -0
- package/dist/types/plugins/validate-ajv/index.d.ts +13 -0
- package/dist/types/plugins/validate-is-my-json-valid/index.d.ts +5 -0
- package/dist/types/plugins/validate-z-schema/index.d.ts +13 -0
- package/dist/types/plugins/vector/helper.d.ts +0 -0
- package/dist/types/plugins/vector/index.d.ts +2 -0
- package/dist/types/plugins/vector/types.d.ts +1 -0
- package/dist/types/plugins/vector/vector-distance.d.ts +13 -0
- package/dist/types/plugins/webmcp/index.d.ts +2 -0
- package/dist/types/plugins/webmcp/nosql-query-schema.d.ts +549 -0
- package/dist/types/plugins/webmcp/webmcp.d.ts +12 -0
- package/dist/types/query-cache.d.ts +35 -0
- package/dist/types/query-planner.d.ts +30 -0
- package/dist/types/replication-protocol/checkpoint.d.ts +8 -0
- package/dist/types/replication-protocol/conflicts.d.ts +10 -0
- package/dist/types/replication-protocol/default-conflict-handler.d.ts +2 -0
- package/dist/types/replication-protocol/downstream.d.ts +10 -0
- package/dist/types/replication-protocol/helper.d.ts +5 -0
- package/dist/types/replication-protocol/index.d.ts +30 -0
- package/dist/types/replication-protocol/meta-instance.d.ts +12 -0
- package/dist/types/replication-protocol/upstream.d.ts +10 -0
- package/dist/types/rx-change-event.d.ts +20 -0
- package/dist/types/rx-collection-helper.d.ts +41 -0
- package/dist/types/rx-collection.d.ts +185 -0
- package/dist/types/rx-database-internal-store.d.ts +37 -0
- package/dist/types/rx-database.d.ts +213 -0
- package/dist/types/rx-document-prototype-merge.d.ts +24 -0
- package/dist/types/rx-document.d.ts +274 -0
- package/dist/types/rx-error.d.ts +37 -0
- package/dist/types/rx-query-helper.d.ts +31 -0
- package/dist/types/rx-query-mingo.d.ts +10 -0
- package/dist/types/rx-query-single-result.d.ts +31 -0
- package/dist/types/rx-query.d.ts +153 -0
- package/dist/types/rx-schema-helper.d.ts +57 -0
- package/dist/types/rx-schema.d.ts +43 -0
- package/dist/types/rx-storage-helper.d.ts +111 -0
- package/dist/types/rx-storage-multiinstance.d.ts +51 -0
- package/dist/types/types/conflict-handling.d.ts +48 -0
- package/dist/types/types/couchdb.d.ts +293 -0
- package/dist/types/types/index.d.ts +32 -0
- package/dist/types/types/modules/index.d.ts +0 -0
- package/dist/types/types/modules/mocha.parallel.d.ts +1 -0
- package/dist/types/types/plugins/backup.d.ts +35 -0
- package/dist/types/types/plugins/cleanup.d.ts +38 -0
- package/dist/types/types/plugins/crdt.d.ts +76 -0
- package/dist/types/types/plugins/dexie.d.ts +30 -0
- package/dist/types/types/plugins/local-documents.d.ts +49 -0
- package/dist/types/types/plugins/migration.d.ts +14 -0
- package/dist/types/types/plugins/reactivity.d.ts +40 -0
- package/dist/types/types/plugins/replication-graphql.d.ts +98 -0
- package/dist/types/types/plugins/replication.d.ts +175 -0
- package/dist/types/types/plugins/state.d.ts +4 -0
- package/dist/types/types/plugins/update.d.ts +23 -0
- package/dist/types/types/plugins/webmcp.d.ts +40 -0
- package/dist/types/types/query-planner.d.ts +47 -0
- package/dist/types/types/replication-protocol.d.ts +296 -0
- package/dist/types/types/rx-attachment.d.ts +46 -0
- package/dist/types/types/rx-change-event.d.ts +85 -0
- package/dist/types/types/rx-collection.d.ts +117 -0
- package/dist/types/types/rx-database-internal-store.d.ts +54 -0
- package/dist/types/types/rx-database.d.ts +124 -0
- package/dist/types/types/rx-document.d.ts +160 -0
- package/dist/types/types/rx-error.d.ts +222 -0
- package/dist/types/types/rx-plugin.d.ts +167 -0
- package/dist/types/types/rx-query.d.ts +144 -0
- package/dist/types/types/rx-schema.d.ts +209 -0
- package/dist/types/types/rx-storage.d.ts +347 -0
- package/dist/types/types/rx-storage.interface.d.ts +312 -0
- package/dist/types/types/util.d.ts +180 -0
- package/eslint.config.mjs +514 -0
- package/package.json +729 -0
- package/plugins/attachments/index.cjs +2 -0
- package/plugins/attachments/index.d.cts +1 -0
- package/plugins/attachments/index.d.mts +1 -0
- package/plugins/attachments/index.mjs +1 -0
- package/plugins/attachments/index.ts +1 -0
- package/plugins/attachments/package.json +18 -0
- package/plugins/attachments-compression/index.cjs +2 -0
- package/plugins/attachments-compression/index.d.cts +1 -0
- package/plugins/attachments-compression/index.d.mts +1 -0
- package/plugins/attachments-compression/index.mjs +1 -0
- package/plugins/attachments-compression/index.ts +1 -0
- package/plugins/attachments-compression/package.json +18 -0
- package/plugins/backup/index.cjs +2 -0
- package/plugins/backup/index.d.cts +1 -0
- package/plugins/backup/index.d.mts +1 -0
- package/plugins/backup/index.mjs +1 -0
- package/plugins/backup/index.ts +1 -0
- package/plugins/backup/package.json +18 -0
- package/plugins/cleanup/index.cjs +2 -0
- package/plugins/cleanup/index.d.cts +1 -0
- package/plugins/cleanup/index.d.mts +1 -0
- package/plugins/cleanup/index.mjs +1 -0
- package/plugins/cleanup/index.ts +1 -0
- package/plugins/cleanup/package.json +18 -0
- package/plugins/core/index.cjs +2 -0
- package/plugins/core/index.d.cts +1 -0
- package/plugins/core/index.d.mts +1 -0
- package/plugins/core/index.mjs +1 -0
- package/plugins/core/index.ts +1 -0
- package/plugins/core/package.json +18 -0
- package/plugins/crdt/index.cjs +2 -0
- package/plugins/crdt/index.d.cts +1 -0
- package/plugins/crdt/index.d.mts +1 -0
- package/plugins/crdt/index.mjs +1 -0
- package/plugins/crdt/index.ts +1 -0
- package/plugins/crdt/package.json +18 -0
- package/plugins/dev-mode/index.cjs +2 -0
- package/plugins/dev-mode/index.d.cts +1 -0
- package/plugins/dev-mode/index.d.mts +1 -0
- package/plugins/dev-mode/index.mjs +1 -0
- package/plugins/dev-mode/index.ts +1 -0
- package/plugins/dev-mode/package.json +18 -0
- package/plugins/electron/index.cjs +2 -0
- package/plugins/electron/index.d.cts +1 -0
- package/plugins/electron/index.d.mts +1 -0
- package/plugins/electron/index.mjs +1 -0
- package/plugins/electron/index.ts +1 -0
- package/plugins/electron/package.json +18 -0
- package/plugins/encryption-crypto-js/index.cjs +2 -0
- package/plugins/encryption-crypto-js/index.d.cts +1 -0
- package/plugins/encryption-crypto-js/index.d.mts +1 -0
- package/plugins/encryption-crypto-js/index.mjs +1 -0
- package/plugins/encryption-crypto-js/index.ts +1 -0
- package/plugins/encryption-crypto-js/package.json +18 -0
- package/plugins/flutter/index.cjs +2 -0
- package/plugins/flutter/index.d.cts +1 -0
- package/plugins/flutter/index.d.mts +1 -0
- package/plugins/flutter/index.mjs +1 -0
- package/plugins/flutter/index.ts +1 -0
- package/plugins/flutter/package.json +18 -0
- package/plugins/json-dump/index.cjs +2 -0
- package/plugins/json-dump/index.d.cts +1 -0
- package/plugins/json-dump/index.d.mts +1 -0
- package/plugins/json-dump/index.mjs +1 -0
- package/plugins/json-dump/index.ts +1 -0
- package/plugins/json-dump/package.json +18 -0
- package/plugins/key-compression/index.cjs +2 -0
- package/plugins/key-compression/index.d.cts +1 -0
- package/plugins/key-compression/index.d.mts +1 -0
- package/plugins/key-compression/index.mjs +1 -0
- package/plugins/key-compression/index.ts +1 -0
- package/plugins/key-compression/package.json +18 -0
- package/plugins/leader-election/index.cjs +2 -0
- package/plugins/leader-election/index.d.cts +1 -0
- package/plugins/leader-election/index.d.mts +1 -0
- package/plugins/leader-election/index.mjs +1 -0
- package/plugins/leader-election/index.ts +1 -0
- package/plugins/leader-election/package.json +18 -0
- package/plugins/local-documents/index.cjs +2 -0
- package/plugins/local-documents/index.d.cts +1 -0
- package/plugins/local-documents/index.d.mts +1 -0
- package/plugins/local-documents/index.mjs +1 -0
- package/plugins/local-documents/index.ts +1 -0
- package/plugins/local-documents/package.json +18 -0
- package/plugins/migration-schema/index.cjs +2 -0
- package/plugins/migration-schema/index.d.cts +1 -0
- package/plugins/migration-schema/index.d.mts +1 -0
- package/plugins/migration-schema/index.mjs +1 -0
- package/plugins/migration-schema/index.ts +1 -0
- package/plugins/migration-schema/package.json +18 -0
- package/plugins/migration-storage/index.cjs +2 -0
- package/plugins/migration-storage/index.d.cts +1 -0
- package/plugins/migration-storage/index.d.mts +1 -0
- package/plugins/migration-storage/index.mjs +1 -0
- package/plugins/migration-storage/index.ts +1 -0
- package/plugins/migration-storage/package.json +18 -0
- package/plugins/pipeline/index.cjs +2 -0
- package/plugins/pipeline/index.d.cts +1 -0
- package/plugins/pipeline/index.d.mts +1 -0
- package/plugins/pipeline/index.mjs +1 -0
- package/plugins/pipeline/index.ts +1 -0
- package/plugins/pipeline/package.json +18 -0
- package/plugins/query-builder/index.cjs +2 -0
- package/plugins/query-builder/index.d.cts +1 -0
- package/plugins/query-builder/index.d.mts +1 -0
- package/plugins/query-builder/index.mjs +1 -0
- package/plugins/query-builder/index.ts +1 -0
- package/plugins/query-builder/package.json +18 -0
- package/plugins/react/index.cjs +2 -0
- package/plugins/react/index.d.cts +1 -0
- package/plugins/react/index.d.mts +1 -0
- package/plugins/react/index.mjs +1 -0
- package/plugins/react/index.ts +1 -0
- package/plugins/react/package.json +18 -0
- package/plugins/reactivity-angular/index.cjs +2 -0
- package/plugins/reactivity-angular/index.d.cts +1 -0
- package/plugins/reactivity-angular/index.d.mts +1 -0
- package/plugins/reactivity-angular/index.mjs +1 -0
- package/plugins/reactivity-angular/index.ts +1 -0
- package/plugins/reactivity-angular/package.json +18 -0
- package/plugins/reactivity-preact-signals/index.cjs +2 -0
- package/plugins/reactivity-preact-signals/index.d.cts +1 -0
- package/plugins/reactivity-preact-signals/index.d.mts +1 -0
- package/plugins/reactivity-preact-signals/index.mjs +1 -0
- package/plugins/reactivity-preact-signals/index.ts +1 -0
- package/plugins/reactivity-preact-signals/package.json +18 -0
- package/plugins/reactivity-vue/index.cjs +2 -0
- package/plugins/reactivity-vue/index.d.cts +1 -0
- package/plugins/reactivity-vue/index.d.mts +1 -0
- package/plugins/reactivity-vue/index.mjs +1 -0
- package/plugins/reactivity-vue/index.ts +1 -0
- package/plugins/reactivity-vue/package.json +18 -0
- package/plugins/replication/index.cjs +2 -0
- package/plugins/replication/index.d.cts +1 -0
- package/plugins/replication/index.d.mts +1 -0
- package/plugins/replication/index.mjs +1 -0
- package/plugins/replication/index.ts +1 -0
- package/plugins/replication/package.json +18 -0
- package/plugins/replication-appwrite/index.cjs +2 -0
- package/plugins/replication-appwrite/index.d.cts +1 -0
- package/plugins/replication-appwrite/index.d.mts +1 -0
- package/plugins/replication-appwrite/index.mjs +1 -0
- package/plugins/replication-appwrite/index.ts +1 -0
- package/plugins/replication-appwrite/package.json +18 -0
- package/plugins/replication-couchdb/index.cjs +2 -0
- package/plugins/replication-couchdb/index.d.cts +1 -0
- package/plugins/replication-couchdb/index.d.mts +1 -0
- package/plugins/replication-couchdb/index.mjs +1 -0
- package/plugins/replication-couchdb/index.ts +1 -0
- package/plugins/replication-couchdb/package.json +18 -0
- package/plugins/replication-firestore/index.cjs +2 -0
- package/plugins/replication-firestore/index.d.cts +1 -0
- package/plugins/replication-firestore/index.d.mts +1 -0
- package/plugins/replication-firestore/index.mjs +1 -0
- package/plugins/replication-firestore/index.ts +1 -0
- package/plugins/replication-firestore/package.json +18 -0
- package/plugins/replication-google-drive/index.cjs +2 -0
- package/plugins/replication-google-drive/index.d.cts +1 -0
- package/plugins/replication-google-drive/index.d.mts +1 -0
- package/plugins/replication-google-drive/index.mjs +1 -0
- package/plugins/replication-google-drive/index.ts +1 -0
- package/plugins/replication-google-drive/package.json +18 -0
- package/plugins/replication-graphql/index.cjs +2 -0
- package/plugins/replication-graphql/index.d.cts +1 -0
- package/plugins/replication-graphql/index.d.mts +1 -0
- package/plugins/replication-graphql/index.mjs +1 -0
- package/plugins/replication-graphql/index.ts +1 -0
- package/plugins/replication-graphql/package.json +18 -0
- package/plugins/replication-microsoft-onedrive/index.cjs +2 -0
- package/plugins/replication-microsoft-onedrive/index.d.cts +1 -0
- package/plugins/replication-microsoft-onedrive/index.d.mts +1 -0
- package/plugins/replication-microsoft-onedrive/index.mjs +1 -0
- package/plugins/replication-microsoft-onedrive/index.ts +1 -0
- package/plugins/replication-microsoft-onedrive/package.json +18 -0
- package/plugins/replication-mongodb/index.cjs +2 -0
- package/plugins/replication-mongodb/index.d.cts +1 -0
- package/plugins/replication-mongodb/index.d.mts +1 -0
- package/plugins/replication-mongodb/index.mjs +1 -0
- package/plugins/replication-mongodb/index.ts +1 -0
- package/plugins/replication-mongodb/package.json +18 -0
- package/plugins/replication-nats/index.cjs +2 -0
- package/plugins/replication-nats/index.d.cts +1 -0
- package/plugins/replication-nats/index.d.mts +1 -0
- package/plugins/replication-nats/index.mjs +1 -0
- package/plugins/replication-nats/index.ts +1 -0
- package/plugins/replication-nats/package.json +18 -0
- package/plugins/replication-supabase/index.cjs +2 -0
- package/plugins/replication-supabase/index.d.cts +1 -0
- package/plugins/replication-supabase/index.d.mts +1 -0
- package/plugins/replication-supabase/index.mjs +1 -0
- package/plugins/replication-supabase/index.ts +1 -0
- package/plugins/replication-supabase/package.json +18 -0
- package/plugins/replication-webrtc/index.cjs +2 -0
- package/plugins/replication-webrtc/index.d.cts +1 -0
- package/plugins/replication-webrtc/index.d.mts +1 -0
- package/plugins/replication-webrtc/index.mjs +1 -0
- package/plugins/replication-webrtc/index.ts +1 -0
- package/plugins/replication-webrtc/package.json +18 -0
- package/plugins/replication-websocket/index.cjs +2 -0
- package/plugins/replication-websocket/index.d.cts +1 -0
- package/plugins/replication-websocket/index.d.mts +1 -0
- package/plugins/replication-websocket/index.mjs +1 -0
- package/plugins/replication-websocket/index.ts +1 -0
- package/plugins/replication-websocket/package.json +18 -0
- package/plugins/state/index.cjs +2 -0
- package/plugins/state/index.d.cts +1 -0
- package/plugins/state/index.d.mts +1 -0
- package/plugins/state/index.mjs +1 -0
- package/plugins/state/index.ts +1 -0
- package/plugins/state/package.json +18 -0
- package/plugins/storage-denokv/index.cjs +2 -0
- package/plugins/storage-denokv/index.d.cts +1 -0
- package/plugins/storage-denokv/index.d.mts +1 -0
- package/plugins/storage-denokv/index.mjs +1 -0
- package/plugins/storage-denokv/index.ts +1 -0
- package/plugins/storage-denokv/package.json +18 -0
- package/plugins/storage-dexie/index.cjs +2 -0
- package/plugins/storage-dexie/index.d.cts +1 -0
- package/plugins/storage-dexie/index.d.mts +1 -0
- package/plugins/storage-dexie/index.mjs +1 -0
- package/plugins/storage-dexie/index.ts +1 -0
- package/plugins/storage-dexie/package.json +18 -0
- package/plugins/storage-foundationdb/index.cjs +2 -0
- package/plugins/storage-foundationdb/index.d.cts +1 -0
- package/plugins/storage-foundationdb/index.d.mts +1 -0
- package/plugins/storage-foundationdb/index.mjs +1 -0
- package/plugins/storage-foundationdb/index.ts +1 -0
- package/plugins/storage-foundationdb/package.json +18 -0
- package/plugins/storage-localstorage/index.cjs +2 -0
- package/plugins/storage-localstorage/index.d.cts +1 -0
- package/plugins/storage-localstorage/index.d.mts +1 -0
- package/plugins/storage-localstorage/index.mjs +1 -0
- package/plugins/storage-localstorage/index.ts +1 -0
- package/plugins/storage-localstorage/package.json +18 -0
- package/plugins/storage-memory/index.cjs +2 -0
- package/plugins/storage-memory/index.d.cts +1 -0
- package/plugins/storage-memory/index.d.mts +1 -0
- package/plugins/storage-memory/index.mjs +1 -0
- package/plugins/storage-memory/index.ts +1 -0
- package/plugins/storage-memory/package.json +18 -0
- package/plugins/storage-mongodb/index.cjs +2 -0
- package/plugins/storage-mongodb/index.d.cts +1 -0
- package/plugins/storage-mongodb/index.d.mts +1 -0
- package/plugins/storage-mongodb/index.mjs +1 -0
- package/plugins/storage-mongodb/index.ts +1 -0
- package/plugins/storage-mongodb/package.json +18 -0
- package/plugins/storage-remote/index.cjs +2 -0
- package/plugins/storage-remote/index.d.cts +1 -0
- package/plugins/storage-remote/index.d.mts +1 -0
- package/plugins/storage-remote/index.mjs +1 -0
- package/plugins/storage-remote/index.ts +1 -0
- package/plugins/storage-remote/package.json +18 -0
- package/plugins/storage-remote-websocket/index.cjs +2 -0
- package/plugins/storage-remote-websocket/index.d.cts +1 -0
- package/plugins/storage-remote-websocket/index.d.mts +1 -0
- package/plugins/storage-remote-websocket/index.mjs +1 -0
- package/plugins/storage-remote-websocket/index.ts +1 -0
- package/plugins/storage-remote-websocket/package.json +18 -0
- package/plugins/storage-sqlite/index.cjs +2 -0
- package/plugins/storage-sqlite/index.d.cts +1 -0
- package/plugins/storage-sqlite/index.d.mts +1 -0
- package/plugins/storage-sqlite/index.mjs +1 -0
- package/plugins/storage-sqlite/index.ts +1 -0
- package/plugins/storage-sqlite/package.json +18 -0
- package/plugins/test-utils/index.cjs +2 -0
- package/plugins/test-utils/index.d.cts +1 -0
- package/plugins/test-utils/index.d.mts +1 -0
- package/plugins/test-utils/index.mjs +1 -0
- package/plugins/test-utils/index.ts +1 -0
- package/plugins/test-utils/package.json +18 -0
- package/plugins/update/index.cjs +2 -0
- package/plugins/update/index.d.cts +1 -0
- package/plugins/update/index.d.mts +1 -0
- package/plugins/update/index.mjs +1 -0
- package/plugins/update/index.ts +1 -0
- package/plugins/update/package.json +18 -0
- package/plugins/utils/index.cjs +2 -0
- package/plugins/utils/index.d.cts +1 -0
- package/plugins/utils/index.d.mts +1 -0
- package/plugins/utils/index.mjs +1 -0
- package/plugins/utils/index.ts +1 -0
- package/plugins/utils/package.json +18 -0
- package/plugins/validate-ajv/index.cjs +2 -0
- package/plugins/validate-ajv/index.d.cts +1 -0
- package/plugins/validate-ajv/index.d.mts +1 -0
- package/plugins/validate-ajv/index.mjs +1 -0
- package/plugins/validate-ajv/index.ts +1 -0
- package/plugins/validate-ajv/package.json +18 -0
- package/plugins/validate-is-my-json-valid/index.cjs +2 -0
- package/plugins/validate-is-my-json-valid/index.d.cts +1 -0
- package/plugins/validate-is-my-json-valid/index.d.mts +1 -0
- package/plugins/validate-is-my-json-valid/index.mjs +1 -0
- package/plugins/validate-is-my-json-valid/index.ts +1 -0
- package/plugins/validate-is-my-json-valid/package.json +18 -0
- package/plugins/validate-z-schema/index.cjs +2 -0
- package/plugins/validate-z-schema/index.d.cts +1 -0
- package/plugins/validate-z-schema/index.d.mts +1 -0
- package/plugins/validate-z-schema/index.mjs +1 -0
- package/plugins/validate-z-schema/index.ts +1 -0
- package/plugins/validate-z-schema/package.json +18 -0
- package/plugins/vector/index.cjs +2 -0
- package/plugins/vector/index.d.cts +1 -0
- package/plugins/vector/index.d.mts +1 -0
- package/plugins/vector/index.mjs +1 -0
- package/plugins/vector/index.ts +1 -0
- package/plugins/vector/package.json +18 -0
- package/plugins/webmcp/index.cjs +2 -0
- package/plugins/webmcp/index.d.cts +1 -0
- package/plugins/webmcp/index.d.mts +1 -0
- package/plugins/webmcp/index.mjs +1 -0
- package/plugins/webmcp/index.ts +1 -0
- package/plugins/webmcp/package.json +18 -0
- package/scripts/acme-challenge/.gittouch +0 -0
- package/scripts/ai-context-generator.mjs +63 -0
- package/scripts/cloud-signaling-script.sh +6 -0
- package/scripts/docs-remove-time.mjs +55 -0
- package/scripts/fix-types.mjs +23 -0
- package/scripts/generate-all-headers.ts +102 -0
- package/scripts/generate-error-messages.mjs +41 -0
- package/scripts/generate-header.ts +226 -0
- package/scripts/generate-plugins-package-json.mjs +133 -0
- package/scripts/install-foundationdb.sh +14 -0
- package/scripts/module_package.json +1 -0
- package/scripts/module_package_no_side.json +1 -0
- package/scripts/postinstall.js +33 -0
- package/scripts/profile.mjs +31 -0
- package/scripts/set-version.mjs +162 -0
- package/scripts/start-cloud-signaling-server.mjs +120 -0
- package/scripts/transpile.mjs +229 -0
- package/scripts/update-version-variable.mjs +49 -0
- package/src/change-event-buffer.ts +171 -0
- package/src/custom-index.ts +376 -0
- package/src/doc-cache.ts +294 -0
- package/src/event-reduce.ts +159 -0
- package/src/hooks.ts +128 -0
- package/src/incremental-write.ts +227 -0
- package/src/index.ts +30 -0
- package/src/overwritable.ts +41 -0
- package/src/plugin-helpers.ts +319 -0
- package/src/plugin.ts +113 -0
- package/src/plugins/attachments/attachments-utils.ts +84 -0
- package/src/plugins/attachments/index.ts +316 -0
- package/src/plugins/attachments-compression/index.ts +221 -0
- package/src/plugins/backup/file-util.ts +132 -0
- package/src/plugins/backup/index.ts +281 -0
- package/src/plugins/cleanup/cleanup-helper.ts +11 -0
- package/src/plugins/cleanup/cleanup-state.ts +92 -0
- package/src/plugins/cleanup/cleanup.ts +140 -0
- package/src/plugins/cleanup/index.ts +45 -0
- package/src/plugins/crdt/index.ts +505 -0
- package/src/plugins/dev-mode/check-document.ts +176 -0
- package/src/plugins/dev-mode/check-migration-strategies.ts +53 -0
- package/src/plugins/dev-mode/check-orm.ts +65 -0
- package/src/plugins/dev-mode/check-query.ts +231 -0
- package/src/plugins/dev-mode/check-schema.ts +564 -0
- package/src/plugins/dev-mode/dev-mode-tracking.ts +125 -0
- package/src/plugins/dev-mode/entity-properties.ts +56 -0
- package/src/plugins/dev-mode/error-messages.ts +1331 -0
- package/src/plugins/dev-mode/index.ts +203 -0
- package/src/plugins/dev-mode/unallowed-properties.ts +96 -0
- package/src/plugins/electron/electron-helper.ts +2 -0
- package/src/plugins/electron/index.ts +3 -0
- package/src/plugins/electron/rx-storage-ipc-main.ts +58 -0
- package/src/plugins/electron/rx-storage-ipc-renderer.ts +62 -0
- package/src/plugins/encryption-crypto-js/index.ts +220 -0
- package/src/plugins/flutter/dart/analysis_options.yaml +30 -0
- package/src/plugins/flutter/dart/example/rxdb_example.dart +6 -0
- package/src/plugins/flutter/dart/lib/rxdb.dart +7 -0
- package/src/plugins/flutter/dart/lib/src/rxdb_base.dart +332 -0
- package/src/plugins/flutter/dart/pubspec.yaml +15 -0
- package/src/plugins/flutter/index.ts +65 -0
- package/src/plugins/json-dump/index.ts +146 -0
- package/src/plugins/key-compression/index.ts +238 -0
- package/src/plugins/leader-election/index.ts +129 -0
- package/src/plugins/local-documents/index.ts +95 -0
- package/src/plugins/local-documents/local-documents-helper.ts +103 -0
- package/src/plugins/local-documents/local-documents.ts +146 -0
- package/src/plugins/local-documents/rx-local-document.ts +388 -0
- package/src/plugins/migration-schema/index.ts +75 -0
- package/src/plugins/migration-schema/migration-helpers.ts +162 -0
- package/src/plugins/migration-schema/migration-types.ts +42 -0
- package/src/plugins/migration-schema/rx-migration-state.ts +632 -0
- package/src/plugins/migration-storage/index.ts +255 -0
- package/src/plugins/pipeline/flagged-functions.ts +131 -0
- package/src/plugins/pipeline/index.ts +18 -0
- package/src/plugins/pipeline/rx-pipeline.ts +303 -0
- package/src/plugins/pipeline/types.ts +28 -0
- package/src/plugins/query-builder/index.ts +81 -0
- package/src/plugins/query-builder/mquery/README.md +5 -0
- package/src/plugins/query-builder/mquery/mquery-utils.ts +37 -0
- package/src/plugins/query-builder/mquery/nosql-query-builder.ts +578 -0
- package/src/plugins/react/database-context.ts +10 -0
- package/src/plugins/react/database-provider.tsx +38 -0
- package/src/plugins/react/hooks/index.ts +4 -0
- package/src/plugins/react/hooks/use-live-rx-query.ts +34 -0
- package/src/plugins/react/hooks/use-rx-collection.ts +73 -0
- package/src/plugins/react/hooks/use-rx-database.ts +35 -0
- package/src/plugins/react/hooks/use-rx-query.ts +168 -0
- package/src/plugins/react/index.ts +2 -0
- package/src/plugins/reactivity-angular/index.ts +32 -0
- package/src/plugins/reactivity-preact-signals/index.ts +85 -0
- package/src/plugins/reactivity-vue/index.ts +43 -0
- package/src/plugins/replication/index.ts +668 -0
- package/src/plugins/replication/replication-helper.ts +122 -0
- package/src/plugins/replication-appwrite/appwrite-helpers.ts +38 -0
- package/src/plugins/replication-appwrite/appwrite-types.ts +31 -0
- package/src/plugins/replication-appwrite/index.ts +269 -0
- package/src/plugins/replication-couchdb/couchdb-helper.ts +100 -0
- package/src/plugins/replication-couchdb/couchdb-types.ts +34 -0
- package/src/plugins/replication-couchdb/index.ts +341 -0
- package/src/plugins/replication-firestore/firestore-helper.ts +79 -0
- package/src/plugins/replication-firestore/firestore-types.ts +72 -0
- package/src/plugins/replication-firestore/index.ts +387 -0
- package/src/plugins/replication-google-drive/AGENTS.md +5 -0
- package/src/plugins/replication-google-drive/document-handling.ts +203 -0
- package/src/plugins/replication-google-drive/download-specs.sh +49 -0
- package/src/plugins/replication-google-drive/downstream.ts +118 -0
- package/src/plugins/replication-google-drive/google-drive-helper.ts +467 -0
- package/src/plugins/replication-google-drive/google-drive-types.ts +84 -0
- package/src/plugins/replication-google-drive/index.ts +221 -0
- package/src/plugins/replication-google-drive/init.ts +108 -0
- package/src/plugins/replication-google-drive/multipart.ts +86 -0
- package/src/plugins/replication-google-drive/signaling.ts +399 -0
- package/src/plugins/replication-google-drive/transaction.ts +222 -0
- package/src/plugins/replication-google-drive/upstream.ts +279 -0
- package/src/plugins/replication-graphql/graphql-schema-from-rx-schema.ts +337 -0
- package/src/plugins/replication-graphql/graphql-websocket.ts +56 -0
- package/src/plugins/replication-graphql/helper.ts +52 -0
- package/src/plugins/replication-graphql/index.ts +255 -0
- package/src/plugins/replication-graphql/query-builder-from-rx-schema.ts +195 -0
- package/src/plugins/replication-microsoft-onedrive/document-handling.ts +216 -0
- package/src/plugins/replication-microsoft-onedrive/downstream.ts +121 -0
- package/src/plugins/replication-microsoft-onedrive/index.ts +220 -0
- package/src/plugins/replication-microsoft-onedrive/init.ts +107 -0
- package/src/plugins/replication-microsoft-onedrive/microsoft-onedrive-helper.ts +355 -0
- package/src/plugins/replication-microsoft-onedrive/microsoft-onedrive-types.ts +88 -0
- package/src/plugins/replication-microsoft-onedrive/signaling.ts +333 -0
- package/src/plugins/replication-microsoft-onedrive/transaction.ts +220 -0
- package/src/plugins/replication-microsoft-onedrive/upstream.ts +282 -0
- package/src/plugins/replication-mongodb/index.ts +275 -0
- package/src/plugins/replication-mongodb/mongodb-checkpoint.ts +184 -0
- package/src/plugins/replication-mongodb/mongodb-helper.ts +69 -0
- package/src/plugins/replication-mongodb/mongodb-types.ts +50 -0
- package/src/plugins/replication-nats/index.ts +289 -0
- package/src/plugins/replication-nats/nats-helper.ts +15 -0
- package/src/plugins/replication-nats/nats-types.ts +43 -0
- package/src/plugins/replication-supabase/helper.ts +63 -0
- package/src/plugins/replication-supabase/index.ts +308 -0
- package/src/plugins/replication-supabase/types.ts +47 -0
- package/src/plugins/replication-webrtc/connection-handler-p2pcf.ts +77 -0
- package/src/plugins/replication-webrtc/connection-handler-simple-peer.ts +302 -0
- package/src/plugins/replication-webrtc/connection-handler-webtorrent.ts +137 -0
- package/src/plugins/replication-webrtc/index.ts +307 -0
- package/src/plugins/replication-webrtc/signaling-server.ts +193 -0
- package/src/plugins/replication-webrtc/webrtc-helper.ts +55 -0
- package/src/plugins/replication-webrtc/webrtc-types.ts +91 -0
- package/src/plugins/replication-websocket/index.ts +3 -0
- package/src/plugins/replication-websocket/websocket-client.ts +187 -0
- package/src/plugins/replication-websocket/websocket-server.ts +135 -0
- package/src/plugins/replication-websocket/websocket-types.ts +47 -0
- package/src/plugins/state/helpers.ts +86 -0
- package/src/plugins/state/index.ts +40 -0
- package/src/plugins/state/rx-state.ts +386 -0
- package/src/plugins/state/types.ts +32 -0
- package/src/plugins/storage-denokv/denokv-helper.ts +46 -0
- package/src/plugins/storage-denokv/denokv-query.ts +135 -0
- package/src/plugins/storage-denokv/denokv-types.ts +19 -0
- package/src/plugins/storage-denokv/index.ts +37 -0
- package/src/plugins/storage-denokv/rx-storage-instance-denokv.ts +426 -0
- package/src/plugins/storage-dexie/dexie-helper.ts +302 -0
- package/src/plugins/storage-dexie/dexie-query.ts +252 -0
- package/src/plugins/storage-dexie/index.ts +4 -0
- package/src/plugins/storage-dexie/rx-storage-dexie.ts +62 -0
- package/src/plugins/storage-dexie/rx-storage-instance-dexie.ts +378 -0
- package/src/plugins/storage-foundationdb/foundationdb-helpers.ts +6 -0
- package/src/plugins/storage-foundationdb/foundationdb-query.ts +140 -0
- package/src/plugins/storage-foundationdb/foundationdb-types.ts +64 -0
- package/src/plugins/storage-foundationdb/index.ts +57 -0
- package/src/plugins/storage-foundationdb/rx-storage-instance-foundationdb.ts +449 -0
- package/src/plugins/storage-localstorage/index.ts +44 -0
- package/src/plugins/storage-localstorage/localstorage-mock.ts +32 -0
- package/src/plugins/storage-localstorage/rx-storage-instance-localstorage.ts +686 -0
- package/src/plugins/storage-memory/binary-search-bounds.ts +106 -0
- package/src/plugins/storage-memory/index.ts +52 -0
- package/src/plugins/storage-memory/memory-helper.ts +259 -0
- package/src/plugins/storage-memory/memory-indexes.ts +34 -0
- package/src/plugins/storage-memory/memory-types.ts +90 -0
- package/src/plugins/storage-memory/rx-storage-instance-memory.ts +609 -0
- package/src/plugins/storage-mongodb/index.ts +4 -0
- package/src/plugins/storage-mongodb/mongodb-helper.ts +119 -0
- package/src/plugins/storage-mongodb/mongodb-types.ts +32 -0
- package/src/plugins/storage-mongodb/rx-storage-instance-mongodb.ts +464 -0
- package/src/plugins/storage-mongodb/rx-storage-mongodb.ts +33 -0
- package/src/plugins/storage-remote/index.ts +5 -0
- package/src/plugins/storage-remote/message-channel-cache.ts +88 -0
- package/src/plugins/storage-remote/remote.ts +285 -0
- package/src/plugins/storage-remote/rx-storage-remote.ts +286 -0
- package/src/plugins/storage-remote/storage-remote-helpers.ts +33 -0
- package/src/plugins/storage-remote/storage-remote-types.ts +118 -0
- package/src/plugins/storage-remote-websocket/index.ts +218 -0
- package/src/plugins/storage-remote-websocket/types.ts +34 -0
- package/src/plugins/storage-sqlite/index.ts +64 -0
- package/src/plugins/storage-sqlite/sqlite-basics-helpers.ts +656 -0
- package/src/plugins/storage-sqlite/sqlite-helpers.ts +287 -0
- package/src/plugins/storage-sqlite/sqlite-storage-instance.ts +507 -0
- package/src/plugins/storage-sqlite/sqlite-types.ts +151 -0
- package/src/plugins/test-utils/config.ts +135 -0
- package/src/plugins/test-utils/humans-collection.ts +557 -0
- package/src/plugins/test-utils/index.ts +24 -0
- package/src/plugins/test-utils/performance.ts +344 -0
- package/src/plugins/test-utils/replication-base-test-suite.ts +236 -0
- package/src/plugins/test-utils/replication.ts +95 -0
- package/src/plugins/test-utils/revisions.ts +4 -0
- package/src/plugins/test-utils/schema-objects.ts +527 -0
- package/src/plugins/test-utils/schemas.ts +1391 -0
- package/src/plugins/test-utils/test-util.ts +85 -0
- package/src/plugins/update/index.ts +57 -0
- package/src/plugins/update/mingo-updater.ts +26 -0
- package/src/plugins/utils/index.ts +20 -0
- package/src/plugins/utils/utils-array.ts +152 -0
- package/src/plugins/utils/utils-base64.ts +49 -0
- package/src/plugins/utils/utils-blob.ts +65 -0
- package/src/plugins/utils/utils-document.ts +117 -0
- package/src/plugins/utils/utils-error.ts +53 -0
- package/src/plugins/utils/utils-global.ts +5 -0
- package/src/plugins/utils/utils-hash.ts +62 -0
- package/src/plugins/utils/utils-map.ts +23 -0
- package/src/plugins/utils/utils-number.ts +9 -0
- package/src/plugins/utils/utils-object-deep-equal.ts +46 -0
- package/src/plugins/utils/utils-object-dot-prop.ts +365 -0
- package/src/plugins/utils/utils-object.ts +272 -0
- package/src/plugins/utils/utils-other.ts +58 -0
- package/src/plugins/utils/utils-premium.ts +37 -0
- package/src/plugins/utils/utils-promise.ts +171 -0
- package/src/plugins/utils/utils-regex.ts +2 -0
- package/src/plugins/utils/utils-revision.ts +55 -0
- package/src/plugins/utils/utils-rxdb-version.template.ts +4 -0
- package/src/plugins/utils/utils-rxdb-version.ts +4 -0
- package/src/plugins/utils/utils-string.ts +91 -0
- package/src/plugins/utils/utils-time.ts +37 -0
- package/src/plugins/validate-ajv/index.ts +61 -0
- package/src/plugins/validate-is-my-json-valid/index.ts +30 -0
- package/src/plugins/validate-z-schema/index.ts +58 -0
- package/src/plugins/vector/helper.ts +0 -0
- package/src/plugins/vector/index.ts +2 -0
- package/src/plugins/vector/types.ts +1 -0
- package/src/plugins/vector/vector-distance.ts +34 -0
- package/src/plugins/webmcp/index.ts +2 -0
- package/src/plugins/webmcp/nosql-query-schema.ts +299 -0
- package/src/plugins/webmcp/webmcp.ts +319 -0
- package/src/query-cache.ts +139 -0
- package/src/query-planner.ts +386 -0
- package/src/replication-protocol/checkpoint.ts +154 -0
- package/src/replication-protocol/conflicts.ts +53 -0
- package/src/replication-protocol/default-conflict-handler.ts +43 -0
- package/src/replication-protocol/downstream.ts +550 -0
- package/src/replication-protocol/helper.ts +96 -0
- package/src/replication-protocol/index.ts +348 -0
- package/src/replication-protocol/meta-instance.ts +195 -0
- package/src/replication-protocol/upstream.ts +560 -0
- package/src/rx-change-event.ts +137 -0
- package/src/rx-collection-helper.ts +262 -0
- package/src/rx-collection.ts +1306 -0
- package/src/rx-database-internal-store.ts +402 -0
- package/src/rx-database.ts +919 -0
- package/src/rx-document-prototype-merge.ts +124 -0
- package/src/rx-document.ts +557 -0
- package/src/rx-error.ts +190 -0
- package/src/rx-query-helper.ts +317 -0
- package/src/rx-query-mingo.ts +87 -0
- package/src/rx-query-single-result.ts +110 -0
- package/src/rx-query.ts +887 -0
- package/src/rx-schema-helper.ts +391 -0
- package/src/rx-schema.ts +247 -0
- package/src/rx-storage-helper.ts +1050 -0
- package/src/rx-storage-multiinstance.ts +188 -0
- package/src/types/conflict-handling.d.ts +48 -0
- package/src/types/couchdb.d.ts +293 -0
- package/src/types/index.d.ts +32 -0
- package/src/types/modules/index.d.ts +0 -0
- package/src/types/modules/mocha.parallel.d.ts +1 -0
- package/src/types/plugins/backup.d.ts +35 -0
- package/src/types/plugins/cleanup.d.ts +38 -0
- package/src/types/plugins/crdt.d.ts +76 -0
- package/src/types/plugins/dexie.d.ts +30 -0
- package/src/types/plugins/local-documents.d.ts +49 -0
- package/src/types/plugins/migration.d.ts +14 -0
- package/src/types/plugins/reactivity.d.ts +40 -0
- package/src/types/plugins/replication-graphql.d.ts +98 -0
- package/src/types/plugins/replication.d.ts +175 -0
- package/src/types/plugins/state.d.ts +4 -0
- package/src/types/plugins/update.d.ts +23 -0
- package/src/types/plugins/webmcp.d.ts +40 -0
- package/src/types/query-planner.d.ts +47 -0
- package/src/types/replication-protocol.d.ts +296 -0
- package/src/types/rx-attachment.d.ts +46 -0
- package/src/types/rx-change-event.d.ts +85 -0
- package/src/types/rx-collection.d.ts +117 -0
- package/src/types/rx-database-internal-store.d.ts +54 -0
- package/src/types/rx-database.d.ts +124 -0
- package/src/types/rx-document.d.ts +160 -0
- package/src/types/rx-error.d.ts +222 -0
- package/src/types/rx-plugin.d.ts +167 -0
- package/src/types/rx-query.d.ts +144 -0
- package/src/types/rx-schema.d.ts +209 -0
- package/src/types/rx-storage.d.ts +347 -0
- package/src/types/rx-storage.interface.d.ts +312 -0
- package/src/types/util.d.ts +180 -0
- package/tsconfig.json +54 -0
- package/tsconfig.lint.json +18 -0
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import { newRxError, newRxFetchError } from "../../rx-error.js";
|
|
2
|
+
import { deepEqual, ensureNotFalsy } from "../utils/index.js";
|
|
3
|
+
import { fetchDocumentContents, getDocumentFiles, insertDocumentFiles, updateDocumentFiles } from "./document-handling.js";
|
|
4
|
+
import { DRIVE_MAX_BULK_SIZE, fillFileIfEtagMatches } from "./google-drive-helper.js";
|
|
5
|
+
export var WAL_FILE_NAME = 'rxdb-wal.json';
|
|
6
|
+
export async function fetchConflicts(googleDriveOptions, init, primaryPath, writeRows) {
|
|
7
|
+
if (writeRows.length > DRIVE_MAX_BULK_SIZE) {
|
|
8
|
+
throw newRxError('GDR18', {
|
|
9
|
+
args: {
|
|
10
|
+
DRIVE_MAX_BULK_SIZE
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
var ids = writeRows.map(row => row.newDocumentState[primaryPath]);
|
|
15
|
+
var filesMeta = await getDocumentFiles(googleDriveOptions, init, ids);
|
|
16
|
+
var fileIdByDocId = new Map();
|
|
17
|
+
var fileIds = filesMeta.files.map(f => {
|
|
18
|
+
var fileId = ensureNotFalsy(f.id);
|
|
19
|
+
var docId = f.name.split('.')[0];
|
|
20
|
+
fileIdByDocId.set(docId, fileId);
|
|
21
|
+
return fileId;
|
|
22
|
+
});
|
|
23
|
+
var contentsByFileId = await fetchDocumentContents(googleDriveOptions, fileIds);
|
|
24
|
+
var conflicts = [];
|
|
25
|
+
var nonConflicts = [];
|
|
26
|
+
writeRows.forEach(row => {
|
|
27
|
+
var docId = row.newDocumentState[primaryPath];
|
|
28
|
+
var fileContent;
|
|
29
|
+
var fileId = fileIdByDocId.get(docId);
|
|
30
|
+
if (fileId) {
|
|
31
|
+
fileContent = contentsByFileId.byId[fileId];
|
|
32
|
+
}
|
|
33
|
+
if (row.assumedMasterState) {
|
|
34
|
+
if (!deepEqual(row.assumedMasterState, fileContent)) {
|
|
35
|
+
conflicts.push(ensureNotFalsy(fileContent));
|
|
36
|
+
} else {
|
|
37
|
+
nonConflicts.push(row);
|
|
38
|
+
}
|
|
39
|
+
} else if (fileContent) {
|
|
40
|
+
conflicts.push(fileContent);
|
|
41
|
+
} else {
|
|
42
|
+
nonConflicts.push(row);
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
if (nonConflicts.length + conflicts.length !== writeRows.length) {
|
|
46
|
+
throw newRxError('SNH', {
|
|
47
|
+
pushRows: writeRows,
|
|
48
|
+
args: {
|
|
49
|
+
nonConflicts,
|
|
50
|
+
conflicts,
|
|
51
|
+
contentsByFileId: contentsByFileId.byId
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
return {
|
|
56
|
+
conflicts,
|
|
57
|
+
nonConflicts
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
export async function writeToWal(googleDriveOptions, init, writeRows) {
|
|
61
|
+
var walFileId = init.walFile.fileId;
|
|
62
|
+
var metaUrl = googleDriveOptions.apiEndpoint + ("/drive/v2/files/" + encodeURIComponent(walFileId) + "?") + new URLSearchParams({
|
|
63
|
+
fields: "id,fileSize,mimeType,title,etag",
|
|
64
|
+
supportsAllDrives: "true"
|
|
65
|
+
}).toString();
|
|
66
|
+
var metaRes = await fetch(metaUrl, {
|
|
67
|
+
method: "GET",
|
|
68
|
+
headers: {
|
|
69
|
+
Authorization: "Bearer " + googleDriveOptions.authToken
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
if (!metaRes.ok) {
|
|
73
|
+
throw await newRxFetchError(metaRes);
|
|
74
|
+
}
|
|
75
|
+
var meta = await metaRes.json();
|
|
76
|
+
var sizeStr = meta.fileSize ?? "0";
|
|
77
|
+
var sizeNum = Number(sizeStr);
|
|
78
|
+
if (writeRows && (!meta.fileSize || sizeNum > 0)) {
|
|
79
|
+
throw newRxError("GDR19", {
|
|
80
|
+
args: {
|
|
81
|
+
sizeNum,
|
|
82
|
+
walFileId,
|
|
83
|
+
size: meta.size,
|
|
84
|
+
meta,
|
|
85
|
+
writeRows: writeRows?.length
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
var etag = ensureNotFalsy(metaRes.headers.get("etag"), 'etag missing');
|
|
90
|
+
var writeResult = await fillFileIfEtagMatches(googleDriveOptions, walFileId, etag, writeRows);
|
|
91
|
+
if (writeResult.status !== 200) {
|
|
92
|
+
throw newRxError("GDR19", {
|
|
93
|
+
args: {
|
|
94
|
+
walFileId,
|
|
95
|
+
meta,
|
|
96
|
+
writeRows: writeRows?.length
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
export async function readWalContent(googleDriveOptions, init) {
|
|
102
|
+
var walFileId = init.walFile.fileId;
|
|
103
|
+
var contentUrl = googleDriveOptions.apiEndpoint + ("/drive/v2/files/" + encodeURIComponent(walFileId) + "?alt=media");
|
|
104
|
+
var res = await fetch(contentUrl, {
|
|
105
|
+
method: "GET",
|
|
106
|
+
headers: {
|
|
107
|
+
Authorization: "Bearer " + googleDriveOptions.authToken
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
if (!res.ok) {
|
|
111
|
+
throw await newRxFetchError(res);
|
|
112
|
+
}
|
|
113
|
+
var etag = ensureNotFalsy(res.headers.get("etag"), "etag missing on WAL read");
|
|
114
|
+
var text = await res.text();
|
|
115
|
+
|
|
116
|
+
// If empty or whitespace → no WAL entries
|
|
117
|
+
if (!text || !text.trim()) {
|
|
118
|
+
return {
|
|
119
|
+
etag,
|
|
120
|
+
rows: undefined
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
return {
|
|
124
|
+
etag,
|
|
125
|
+
rows: JSON.parse(text)
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* Here we read the WAL file content
|
|
131
|
+
* and sort the content into the actual
|
|
132
|
+
* document files.
|
|
133
|
+
* Notice that when the JavaScript process
|
|
134
|
+
* exists at any point here, we need to have
|
|
135
|
+
* a recoverable state on the next run. So this
|
|
136
|
+
* must be idempotent.
|
|
137
|
+
*/
|
|
138
|
+
export async function processWalFile(googleDriveOptions, init, primaryPath) {
|
|
139
|
+
var content = await readWalContent(googleDriveOptions, init);
|
|
140
|
+
if (!content.rows) {
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
143
|
+
var docIds = content.rows.map(row => row.newDocumentState[primaryPath]);
|
|
144
|
+
var docFiles = await getDocumentFiles(googleDriveOptions, init, docIds);
|
|
145
|
+
var fileIdByDocId = {};
|
|
146
|
+
docFiles.files.forEach(file => {
|
|
147
|
+
var docId = file.name.split('.')[0];
|
|
148
|
+
fileIdByDocId[docId] = file.id;
|
|
149
|
+
});
|
|
150
|
+
var toInsert = [];
|
|
151
|
+
var toUpdate = [];
|
|
152
|
+
content.rows.filter(row => {
|
|
153
|
+
var docId = row.newDocumentState[primaryPath];
|
|
154
|
+
var fileExists = fileIdByDocId[docId];
|
|
155
|
+
if (!fileExists) {
|
|
156
|
+
toInsert.push(row.newDocumentState);
|
|
157
|
+
} else {
|
|
158
|
+
toUpdate.push(row.newDocumentState);
|
|
159
|
+
}
|
|
160
|
+
});
|
|
161
|
+
await Promise.all([insertDocumentFiles(googleDriveOptions, init, primaryPath, toInsert), updateDocumentFiles(googleDriveOptions, primaryPath, toUpdate, fileIdByDocId)]);
|
|
162
|
+
|
|
163
|
+
// overwrite wal with emptyness
|
|
164
|
+
await writeToWal(googleDriveOptions, init, undefined);
|
|
165
|
+
}
|
|
166
|
+
export async function handleUpstreamBatch(googleDriveOptions, init, primaryPath, writeRows) {
|
|
167
|
+
var conflictResult = await fetchConflicts(googleDriveOptions, init, primaryPath, writeRows);
|
|
168
|
+
await writeToWal(googleDriveOptions, init, conflictResult.nonConflicts);
|
|
169
|
+
return conflictResult.conflicts;
|
|
170
|
+
}
|
|
171
|
+
//# sourceMappingURL=upstream.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"upstream.js","names":["newRxError","newRxFetchError","deepEqual","ensureNotFalsy","fetchDocumentContents","getDocumentFiles","insertDocumentFiles","updateDocumentFiles","DRIVE_MAX_BULK_SIZE","fillFileIfEtagMatches","WAL_FILE_NAME","fetchConflicts","googleDriveOptions","init","primaryPath","writeRows","length","args","ids","map","row","newDocumentState","filesMeta","fileIdByDocId","Map","fileIds","files","f","fileId","id","docId","name","split","set","contentsByFileId","conflicts","nonConflicts","forEach","fileContent","get","byId","assumedMasterState","push","pushRows","writeToWal","walFileId","walFile","metaUrl","apiEndpoint","encodeURIComponent","URLSearchParams","fields","supportsAllDrives","toString","metaRes","fetch","method","headers","Authorization","authToken","ok","meta","json","sizeStr","fileSize","sizeNum","Number","size","etag","writeResult","status","readWalContent","contentUrl","res","text","trim","rows","undefined","JSON","parse","processWalFile","content","docIds","docFiles","file","toInsert","toUpdate","filter","fileExists","Promise","all","handleUpstreamBatch","conflictResult"],"sources":["../../../../src/plugins/replication-google-drive/upstream.ts"],"sourcesContent":["import { RxReplicationWriteToMasterRow, WithDeletedAndAttachments } from '../../index.ts';\r\nimport { newRxError, newRxFetchError } from '../../rx-error.ts';\r\nimport { deepEqual, ensureNotFalsy } from '../utils/index.ts';\r\nimport { fetchDocumentContents, getDocumentFiles, insertDocumentFiles, updateDocumentFiles } from './document-handling.ts';\r\nimport { DRIVE_MAX_BULK_SIZE, fillFileIfEtagMatches } from './google-drive-helper.ts';\r\nimport type {\r\n DriveFileMetadata,\r\n GoogleDriveOptionsWithDefaults\r\n} from './google-drive-types';\r\nimport { DriveStructure } from './init.ts';\r\nimport { commitTransaction, startTransaction } from './transaction.ts';\r\n\r\nexport const WAL_FILE_NAME = 'rxdb-wal.json';\r\n\r\nexport async function fetchConflicts<RxDocType>(\r\n googleDriveOptions: GoogleDriveOptionsWithDefaults,\r\n init: DriveStructure,\r\n primaryPath: keyof WithDeletedAndAttachments<RxDocType>,\r\n writeRows: RxReplicationWriteToMasterRow<RxDocType>[]\r\n) {\r\n if (writeRows.length > DRIVE_MAX_BULK_SIZE) {\r\n throw newRxError('GDR18', {\r\n args: {\r\n DRIVE_MAX_BULK_SIZE\r\n }\r\n });\r\n }\r\n\r\n const ids = writeRows.map(row => (row.newDocumentState as any)[primaryPath]);\r\n const filesMeta = await getDocumentFiles(\r\n googleDriveOptions,\r\n init,\r\n ids as string[]\r\n );\r\n const fileIdByDocId = new Map<string, string>();\r\n const fileIds: string[] = filesMeta.files.map((f) => {\r\n const fileId = ensureNotFalsy(f.id);\r\n const docId = f.name.split('.')[0];\r\n fileIdByDocId.set(docId, fileId);\r\n return fileId;\r\n });\r\n const contentsByFileId = await fetchDocumentContents<WithDeletedAndAttachments<RxDocType>>(\r\n googleDriveOptions,\r\n fileIds\r\n );\r\n\r\n const conflicts: WithDeletedAndAttachments<RxDocType>[] = [];\r\n const nonConflicts: RxReplicationWriteToMasterRow<RxDocType>[] = [];\r\n writeRows.forEach(row => {\r\n const docId = (row.newDocumentState as any)[primaryPath];\r\n let fileContent: undefined | WithDeletedAndAttachments<RxDocType>;\r\n const fileId = fileIdByDocId.get(docId);\r\n if (fileId) {\r\n fileContent = contentsByFileId.byId[fileId];\r\n }\r\n if (row.assumedMasterState) {\r\n if (!deepEqual(row.assumedMasterState, fileContent)) {\r\n conflicts.push(ensureNotFalsy(fileContent));\r\n } else {\r\n nonConflicts.push(row);\r\n }\r\n } else if (fileContent) {\r\n conflicts.push(fileContent);\r\n } else {\r\n nonConflicts.push(row);\r\n }\r\n });\r\n\r\n if ((nonConflicts.length + conflicts.length) !== writeRows.length) {\r\n throw newRxError('SNH', {\r\n pushRows: writeRows,\r\n args: {\r\n nonConflicts,\r\n conflicts,\r\n contentsByFileId: contentsByFileId.byId\r\n }\r\n });\r\n }\r\n\r\n return {\r\n conflicts,\r\n nonConflicts\r\n };\r\n}\r\n\r\nexport async function writeToWal<RxDocType>(\r\n googleDriveOptions: GoogleDriveOptionsWithDefaults,\r\n init: DriveStructure,\r\n writeRows?: RxReplicationWriteToMasterRow<RxDocType>[]\r\n) {\r\n const walFileId = init.walFile.fileId;\r\n\r\n const metaUrl =\r\n googleDriveOptions.apiEndpoint +\r\n `/drive/v2/files/${encodeURIComponent(walFileId)}?` +\r\n new URLSearchParams({\r\n fields: \"id,fileSize,mimeType,title,etag\",\r\n supportsAllDrives: \"true\"\r\n }).toString();\r\n const metaRes = await fetch(metaUrl, {\r\n method: \"GET\",\r\n headers: {\r\n Authorization: `Bearer ${googleDriveOptions.authToken}`,\r\n },\r\n });\r\n if (!metaRes.ok) {\r\n throw await newRxFetchError(metaRes);\r\n }\r\n const meta: DriveFileMetadata = await metaRes.json();\r\n const sizeStr = meta.fileSize ?? \"0\";\r\n const sizeNum = Number(sizeStr);\r\n if (writeRows && (!meta.fileSize || sizeNum > 0)) {\r\n throw newRxError(\"GDR19\", {\r\n args: {\r\n sizeNum,\r\n walFileId,\r\n size: meta.size,\r\n meta,\r\n writeRows: writeRows?.length\r\n }\r\n });\r\n }\r\n\r\n const etag = ensureNotFalsy(metaRes.headers.get(\"etag\"), 'etag missing');\r\n const writeResult = await fillFileIfEtagMatches(\r\n googleDriveOptions,\r\n walFileId,\r\n etag,\r\n writeRows\r\n );\r\n if (writeResult.status !== 200) {\r\n throw newRxError(\"GDR19\", {\r\n args: {\r\n walFileId,\r\n meta,\r\n writeRows: writeRows?.length\r\n }\r\n });\r\n }\r\n}\r\n\r\n\r\nexport async function readWalContent<RxDocType>(\r\n googleDriveOptions: GoogleDriveOptionsWithDefaults,\r\n init: DriveStructure,\r\n): Promise<{\r\n etag: string;\r\n rows: RxReplicationWriteToMasterRow<RxDocType>[] | undefined;\r\n}> {\r\n const walFileId = init.walFile.fileId;\r\n const contentUrl =\r\n googleDriveOptions.apiEndpoint +\r\n `/drive/v2/files/${encodeURIComponent(walFileId)}?alt=media`;\r\n\r\n const res = await fetch(contentUrl, {\r\n method: \"GET\",\r\n headers: {\r\n Authorization: `Bearer ${googleDriveOptions.authToken}`,\r\n },\r\n });\r\n\r\n if (!res.ok) {\r\n throw await newRxFetchError(res);\r\n }\r\n const etag = ensureNotFalsy(\r\n res.headers.get(\"etag\"),\r\n \"etag missing on WAL read\"\r\n );\r\n\r\n const text = await res.text();\r\n\r\n // If empty or whitespace → no WAL entries\r\n if (!text || !text.trim()) {\r\n return {\r\n etag,\r\n rows: undefined\r\n };\r\n }\r\n\r\n return {\r\n etag,\r\n rows: JSON.parse(text) as RxReplicationWriteToMasterRow<RxDocType>[]\r\n };\r\n}\r\n\r\n\r\n/**\r\n * Here we read the WAL file content\r\n * and sort the content into the actual\r\n * document files.\r\n * Notice that when the JavaScript process\r\n * exists at any point here, we need to have\r\n * a recoverable state on the next run. So this\r\n * must be idempotent.\r\n */\r\nexport async function processWalFile<RxDocType>(\r\n googleDriveOptions: GoogleDriveOptionsWithDefaults,\r\n init: DriveStructure,\r\n primaryPath: keyof RxDocType\r\n) {\r\n const content = await readWalContent<RxDocType>(\r\n googleDriveOptions,\r\n init\r\n );\r\n if (!content.rows) {\r\n return;\r\n }\r\n\r\n\r\n const docIds = content.rows.map(row => row.newDocumentState[primaryPath]);\r\n const docFiles = await getDocumentFiles(\r\n googleDriveOptions,\r\n init,\r\n docIds as string[]\r\n );\r\n const fileIdByDocId: Record<string, string> = {};\r\n\r\n docFiles.files.forEach(file => {\r\n const docId = file.name.split('.')[0] as any;\r\n fileIdByDocId[docId] = file.id;\r\n });\r\n\r\n const toInsert: WithDeletedAndAttachments<RxDocType>[] = [];\r\n const toUpdate: WithDeletedAndAttachments<RxDocType>[] = [];\r\n content.rows.filter(row => {\r\n const docId = row.newDocumentState[primaryPath];\r\n const fileExists = fileIdByDocId[docId as any];\r\n if (!fileExists) {\r\n toInsert.push(row.newDocumentState);\r\n } else {\r\n toUpdate.push(row.newDocumentState);\r\n }\r\n });\r\n\r\n await Promise.all([\r\n insertDocumentFiles(\r\n googleDriveOptions,\r\n init,\r\n primaryPath,\r\n toInsert\r\n ),\r\n updateDocumentFiles(\r\n googleDriveOptions,\r\n primaryPath,\r\n toUpdate,\r\n fileIdByDocId,\r\n )\r\n ]);\r\n\r\n\r\n // overwrite wal with emptyness\r\n await writeToWal(\r\n googleDriveOptions,\r\n init,\r\n undefined\r\n );\r\n\r\n}\r\n\r\nexport async function handleUpstreamBatch<RxDocType>(\r\n googleDriveOptions: GoogleDriveOptionsWithDefaults,\r\n init: DriveStructure,\r\n primaryPath: keyof WithDeletedAndAttachments<RxDocType>,\r\n writeRows: RxReplicationWriteToMasterRow<RxDocType>[]\r\n): Promise<WithDeletedAndAttachments<RxDocType>[]> {\r\n const conflictResult = await fetchConflicts(\r\n googleDriveOptions,\r\n init,\r\n primaryPath,\r\n writeRows\r\n );\r\n await writeToWal(\r\n googleDriveOptions,\r\n init,\r\n conflictResult.nonConflicts\r\n );\r\n\r\n return conflictResult.conflicts;\r\n}\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
import { getGraphqlSchemaFromJsonSchema } from 'get-graphql-from-jsonschema';
|
|
2
|
+
import { fillWithDefaultSettings } from "../../rx-schema-helper.js";
|
|
3
|
+
import { clone, ensureNotFalsy, flatClone, ucfirst } from "../../plugins/utils/index.js";
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* just type some common types
|
|
7
|
+
* to have better IDE autocomplete,
|
|
8
|
+
* all strings are allowed
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
// we use two spaces because get-graphql-from-jsonschema does also
|
|
12
|
+
export var SPACING = ' ';
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Create a GraphQL schema from a given RxJsonSchema
|
|
16
|
+
*/
|
|
17
|
+
export function graphQLSchemaFromRxSchema(input) {
|
|
18
|
+
var ret = {
|
|
19
|
+
asString: '',
|
|
20
|
+
queries: [],
|
|
21
|
+
mutations: [],
|
|
22
|
+
subscriptions: [],
|
|
23
|
+
inputs: [],
|
|
24
|
+
types: []
|
|
25
|
+
};
|
|
26
|
+
Object.entries(input).forEach(([collectionName, collectionSettings]) => {
|
|
27
|
+
collectionSettings = fillUpOptionals(collectionSettings);
|
|
28
|
+
var schema = collectionSettings.schema;
|
|
29
|
+
var prefixes = ensureNotFalsy(collectionSettings.prefixes);
|
|
30
|
+
var ucCollectionName = ucfirst(collectionName);
|
|
31
|
+
var collectionNameInput = ucfirst(collectionName) + 'Input';
|
|
32
|
+
|
|
33
|
+
// input
|
|
34
|
+
var inputSchema = stripKeysFromSchema(schema, ensureNotFalsy(collectionSettings.ignoreInputKeys));
|
|
35
|
+
var inputGraphQL = getGraphqlSchemaFromJsonSchema({
|
|
36
|
+
rootName: collectionNameInput,
|
|
37
|
+
schema: inputSchema,
|
|
38
|
+
direction: 'input'
|
|
39
|
+
});
|
|
40
|
+
var pushRowGraphQL = getGraphqlSchemaFromJsonSchema({
|
|
41
|
+
rootName: collectionNameInput + prefixes.pushRow,
|
|
42
|
+
schema: {
|
|
43
|
+
type: 'object',
|
|
44
|
+
properties: {
|
|
45
|
+
assumedMasterState: inputSchema,
|
|
46
|
+
newDocumentState: inputSchema
|
|
47
|
+
},
|
|
48
|
+
required: ['newDocumentState'],
|
|
49
|
+
additionalProperties: false
|
|
50
|
+
},
|
|
51
|
+
direction: 'input'
|
|
52
|
+
});
|
|
53
|
+
var checkpointSchema = {
|
|
54
|
+
type: 'object',
|
|
55
|
+
properties: {},
|
|
56
|
+
required: [],
|
|
57
|
+
additionalProperties: false
|
|
58
|
+
};
|
|
59
|
+
collectionSettings.checkpointFields.forEach(key => {
|
|
60
|
+
var subSchema = schema.properties[key];
|
|
61
|
+
checkpointSchema.properties[key] = subSchema;
|
|
62
|
+
checkpointSchema.required.push(key);
|
|
63
|
+
});
|
|
64
|
+
var checkpointInputGraphQL = getGraphqlSchemaFromJsonSchema({
|
|
65
|
+
rootName: collectionNameInput + prefixes.checkpoint,
|
|
66
|
+
schema: checkpointSchema,
|
|
67
|
+
direction: 'input'
|
|
68
|
+
});
|
|
69
|
+
ret.inputs = ret.inputs.concat(inputGraphQL.typeDefinitions.map(str => replaceTopLevelTypeName(str, collectionNameInput))).concat(pushRowGraphQL.typeDefinitions.map(str => replaceTopLevelTypeName(str, collectionNameInput + prefixes.pushRow))).concat(checkpointInputGraphQL.typeDefinitions.map(str => replaceTopLevelTypeName(str, collectionNameInput + prefixes.checkpoint)));
|
|
70
|
+
var headersSchema = {
|
|
71
|
+
type: 'object',
|
|
72
|
+
additionalProperties: false,
|
|
73
|
+
properties: {},
|
|
74
|
+
required: []
|
|
75
|
+
};
|
|
76
|
+
ensureNotFalsy(collectionSettings.headerFields).forEach(headerField => {
|
|
77
|
+
headersSchema.properties[headerField] = {
|
|
78
|
+
type: 'string'
|
|
79
|
+
};
|
|
80
|
+
headersSchema.required.push(headerField);
|
|
81
|
+
});
|
|
82
|
+
var headersInputName = collectionNameInput + prefixes.headers;
|
|
83
|
+
var headersInputGraphQL = getGraphqlSchemaFromJsonSchema({
|
|
84
|
+
rootName: headersInputName,
|
|
85
|
+
schema: headersSchema,
|
|
86
|
+
direction: 'input'
|
|
87
|
+
});
|
|
88
|
+
if (ensureNotFalsy(collectionSettings.headerFields).length > 0) {
|
|
89
|
+
ret.inputs = ret.inputs.concat(headersInputGraphQL.typeDefinitions.map(str => replaceTopLevelTypeName(str, headersInputName)));
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
// output
|
|
93
|
+
var outputSchema = stripKeysFromSchema(schema, ensureNotFalsy(collectionSettings.ignoreOutputKeys));
|
|
94
|
+
var outputGraphQL = getGraphqlSchemaFromJsonSchema({
|
|
95
|
+
rootName: collectionName,
|
|
96
|
+
schema: outputSchema,
|
|
97
|
+
direction: 'output'
|
|
98
|
+
});
|
|
99
|
+
var checkpointOutputGraphQL = getGraphqlSchemaFromJsonSchema({
|
|
100
|
+
rootName: ucCollectionName + prefixes.checkpoint,
|
|
101
|
+
schema: checkpointSchema,
|
|
102
|
+
direction: 'output'
|
|
103
|
+
});
|
|
104
|
+
var pullBulkOutputGraphQL = getGraphqlSchemaFromJsonSchema({
|
|
105
|
+
rootName: ucCollectionName + prefixes.pullBulk,
|
|
106
|
+
schema: {
|
|
107
|
+
type: 'object',
|
|
108
|
+
properties: {
|
|
109
|
+
documents: {
|
|
110
|
+
type: 'array',
|
|
111
|
+
items: inputSchema
|
|
112
|
+
},
|
|
113
|
+
checkpoint: checkpointSchema
|
|
114
|
+
},
|
|
115
|
+
required: ['documents', 'checkpoint'],
|
|
116
|
+
additionalProperties: false
|
|
117
|
+
},
|
|
118
|
+
direction: 'output'
|
|
119
|
+
});
|
|
120
|
+
ret.types = ret.types.concat(outputGraphQL.typeDefinitions.map(str => replaceTopLevelTypeName(str, ucCollectionName))).concat(checkpointOutputGraphQL.typeDefinitions.map(str => replaceTopLevelTypeName(str, ucCollectionName + prefixes.checkpoint))).concat(pullBulkOutputGraphQL.typeDefinitions.map(str => replaceTopLevelTypeName(str, ucCollectionName + prefixes.pullBulk)));
|
|
121
|
+
|
|
122
|
+
// query
|
|
123
|
+
var queryName = prefixes.pull + ucCollectionName;
|
|
124
|
+
var queryKeys = ['checkpoint: ' + collectionNameInput + prefixes.checkpoint, 'limit: Int!'];
|
|
125
|
+
var queryString = queryName + '(' + queryKeys.join(', ') + '): ' + ucCollectionName + prefixes.pullBulk + '!';
|
|
126
|
+
ret.queries.push(SPACING + queryString);
|
|
127
|
+
|
|
128
|
+
// mutation
|
|
129
|
+
var mutationName = prefixes.push + ucCollectionName;
|
|
130
|
+
var mutationString = mutationName + '(' + collectionName + prefixes.pushRow + ': [' + collectionNameInput + prefixes.pushRow + ']): [' + ucCollectionName + '!]!';
|
|
131
|
+
ret.mutations.push(SPACING + mutationString);
|
|
132
|
+
|
|
133
|
+
// subscription
|
|
134
|
+
var subscriptionHeaderInputString = '';
|
|
135
|
+
if (collectionSettings.headerFields && collectionSettings.headerFields.length > 0) {
|
|
136
|
+
subscriptionHeaderInputString = '(headers: ' + headersInputName + ')';
|
|
137
|
+
}
|
|
138
|
+
var subscriptionName = prefixes.stream + ucCollectionName;
|
|
139
|
+
var subscriptionString = subscriptionName + subscriptionHeaderInputString + ': ' + ucCollectionName + prefixes.pullBulk + '!';
|
|
140
|
+
ret.subscriptions.push(SPACING + subscriptionString);
|
|
141
|
+
});
|
|
142
|
+
|
|
143
|
+
// build full string
|
|
144
|
+
var fullQueryString = 'type Query {\n' + ret.queries.join('\n') + '\n}\n';
|
|
145
|
+
var fullMutationString = 'type Mutation {\n' + ret.mutations.join('\n') + '\n}\n';
|
|
146
|
+
var fullSubscriptionString = 'type Subscription {\n' + ret.subscriptions.join('\n') + '\n}\n';
|
|
147
|
+
var fullTypeString = ret.types.join('\n');
|
|
148
|
+
var fullInputString = ret.inputs.join('\n');
|
|
149
|
+
var fullSchemaString = '' + 'schema {\n' + SPACING + 'query: Query\n' + SPACING + 'mutation: Mutation\n' + SPACING + 'subscription: Subscription\n' + '}\n';
|
|
150
|
+
ret.asString = '' + fullQueryString + '\n' + fullMutationString + '\n' + fullSubscriptionString + '\n' + fullTypeString + '\n' + fullInputString + '\n' + fullSchemaString;
|
|
151
|
+
return ret;
|
|
152
|
+
}
|
|
153
|
+
export function fillUpOptionals(input) {
|
|
154
|
+
input = flatClone(input);
|
|
155
|
+
var schema = fillWithDefaultSettings(input.schema);
|
|
156
|
+
// strip internal attributes
|
|
157
|
+
Object.keys(schema.properties).forEach(key => {
|
|
158
|
+
if (key.startsWith('_')) {
|
|
159
|
+
delete schema.properties[key];
|
|
160
|
+
}
|
|
161
|
+
});
|
|
162
|
+
input.schema = schema;
|
|
163
|
+
|
|
164
|
+
// add deleted field to schema
|
|
165
|
+
if (!input.deletedField) {
|
|
166
|
+
input.deletedField = '_deleted';
|
|
167
|
+
}
|
|
168
|
+
schema.properties[input.deletedField] = {
|
|
169
|
+
type: 'boolean'
|
|
170
|
+
};
|
|
171
|
+
schema.required.push(input.deletedField);
|
|
172
|
+
|
|
173
|
+
// fill up prefixes
|
|
174
|
+
if (!input.prefixes) {
|
|
175
|
+
input.prefixes = {};
|
|
176
|
+
}
|
|
177
|
+
var prefixes = input.prefixes;
|
|
178
|
+
if (!prefixes.push) {
|
|
179
|
+
prefixes.push = 'push';
|
|
180
|
+
}
|
|
181
|
+
if (!prefixes.pushRow) {
|
|
182
|
+
prefixes.pushRow = 'PushRow';
|
|
183
|
+
}
|
|
184
|
+
if (!prefixes.checkpoint) {
|
|
185
|
+
prefixes.checkpoint = 'Checkpoint';
|
|
186
|
+
}
|
|
187
|
+
if (!prefixes.pull) {
|
|
188
|
+
prefixes.pull = 'pull';
|
|
189
|
+
}
|
|
190
|
+
if (!prefixes.pullBulk) {
|
|
191
|
+
prefixes.pullBulk = 'PullBulk';
|
|
192
|
+
}
|
|
193
|
+
if (!prefixes.stream) {
|
|
194
|
+
prefixes.stream = 'stream';
|
|
195
|
+
}
|
|
196
|
+
if (!prefixes.headers) {
|
|
197
|
+
prefixes.headers = 'Headers';
|
|
198
|
+
}
|
|
199
|
+
if (!input.headerFields) {
|
|
200
|
+
input.headerFields = [];
|
|
201
|
+
}
|
|
202
|
+
if (!input.withRevisions) {
|
|
203
|
+
input.withRevisions = false;
|
|
204
|
+
}
|
|
205
|
+
if (!input.ignoreInputKeys) {
|
|
206
|
+
input.ignoreInputKeys = [];
|
|
207
|
+
}
|
|
208
|
+
if (!input.ignoreOutputKeys) {
|
|
209
|
+
input.ignoreOutputKeys = [];
|
|
210
|
+
}
|
|
211
|
+
return input;
|
|
212
|
+
}
|
|
213
|
+
function stripKeysFromSchema(schema, strip) {
|
|
214
|
+
var cloned = clone(schema);
|
|
215
|
+
strip.forEach(key => {
|
|
216
|
+
delete cloned.properties[key];
|
|
217
|
+
});
|
|
218
|
+
return cloned;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
/**
|
|
222
|
+
* get-graphql-from-jsonschema add a T0-suffix
|
|
223
|
+
* that we do not want for the top level type
|
|
224
|
+
*/
|
|
225
|
+
function replaceTopLevelTypeName(str, ucCollectionName) {
|
|
226
|
+
return str.replace(' ' + ucCollectionName + 'T0 ', ' ' + ucCollectionName + ' ');
|
|
227
|
+
}
|
|
228
|
+
//# sourceMappingURL=graphql-schema-from-rx-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graphql-schema-from-rx-schema.js","names":["getGraphqlSchemaFromJsonSchema","fillWithDefaultSettings","clone","ensureNotFalsy","flatClone","ucfirst","SPACING","graphQLSchemaFromRxSchema","input","ret","asString","queries","mutations","subscriptions","inputs","types","Object","entries","forEach","collectionName","collectionSettings","fillUpOptionals","schema","prefixes","ucCollectionName","collectionNameInput","inputSchema","stripKeysFromSchema","ignoreInputKeys","inputGraphQL","rootName","direction","pushRowGraphQL","pushRow","type","properties","assumedMasterState","newDocumentState","required","additionalProperties","checkpointSchema","checkpointFields","key","subSchema","push","checkpointInputGraphQL","checkpoint","concat","typeDefinitions","map","str","replaceTopLevelTypeName","headersSchema","headerFields","headerField","headersInputName","headers","headersInputGraphQL","length","outputSchema","ignoreOutputKeys","outputGraphQL","checkpointOutputGraphQL","pullBulkOutputGraphQL","pullBulk","documents","items","queryName","pull","queryKeys","queryString","join","mutationName","mutationString","subscriptionHeaderInputString","subscriptionName","stream","subscriptionString","fullQueryString","fullMutationString","fullSubscriptionString","fullTypeString","fullInputString","fullSchemaString","keys","startsWith","deletedField","withRevisions","strip","cloned","replace"],"sources":["../../../../src/plugins/replication-graphql/graphql-schema-from-rx-schema.ts"],"sourcesContent":["import { getGraphqlSchemaFromJsonSchema } from 'get-graphql-from-jsonschema';\r\n\r\nimport { fillWithDefaultSettings } from '../../rx-schema-helper.ts';\r\n\r\nimport type { RxJsonSchema } from '../../types/index.d.ts';\r\nimport { clone, ensureNotFalsy, flatClone, ucfirst } from '../../plugins/utils/index.ts';\r\n\r\nexport type Prefixes = {\r\n push?: string;\r\n pushRow?: string;\r\n checkpoint?: string;\r\n pull?: string;\r\n pullBulk?: string;\r\n stream?: string;\r\n headers?: string;\r\n};\r\n\r\n/**\r\n * just type some common types\r\n * to have better IDE autocomplete,\r\n * all strings are allowed\r\n */\r\nexport type GraphQLParamType = 'ID' | 'ID!' |\r\n 'String' | 'String!' |\r\n 'Int' | 'Int!' |\r\n 'Float' | 'Float!' |\r\n string;\r\n\r\nexport type GraphQLSchemaFromRxSchemaInputSingleCollection = {\r\n schema: RxJsonSchema<any>;\r\n /**\r\n * These fields of the document data\r\n * will be used for the checkpoint.\r\n */\r\n checkpointFields: string[];\r\n ignoreInputKeys?: string[];\r\n ignoreOutputKeys?: string[];\r\n withRevisions?: boolean;\r\n prefixes?: Prefixes;\r\n headerFields?: string[];\r\n /**\r\n * Name of the boolean field that marks deleted documents.\r\n * [default='_deleted']\r\n */\r\n deletedField?: string;\r\n};\r\n\r\nexport type GraphQLSchemaFromRxSchemaInput = {\r\n [collectionName: string]: GraphQLSchemaFromRxSchemaInputSingleCollection;\r\n};\r\nexport type GraphQLSchemaFromRxSchemaOutput = {\r\n asString: string;\r\n queries: string[];\r\n mutations: string[];\r\n subscriptions: string[];\r\n inputs: string[];\r\n types: string[];\r\n};\r\n\r\n// we use two spaces because get-graphql-from-jsonschema does also\r\nexport const SPACING = ' ';\r\n\r\n/**\r\n * Create a GraphQL schema from a given RxJsonSchema\r\n */\r\nexport function graphQLSchemaFromRxSchema(\r\n input: GraphQLSchemaFromRxSchemaInput\r\n): GraphQLSchemaFromRxSchemaOutput {\r\n const ret: GraphQLSchemaFromRxSchemaOutput = {\r\n asString: '',\r\n queries: [],\r\n mutations: [],\r\n subscriptions: [],\r\n inputs: [],\r\n types: []\r\n };\r\n\r\n Object.entries(input).forEach(([collectionName, collectionSettings]) => {\r\n collectionSettings = fillUpOptionals(collectionSettings);\r\n\r\n const schema = collectionSettings.schema;\r\n const prefixes: Prefixes = ensureNotFalsy(collectionSettings.prefixes);\r\n const ucCollectionName = ucfirst(collectionName);\r\n const collectionNameInput = ucfirst(collectionName) + 'Input';\r\n\r\n // input\r\n const inputSchema = stripKeysFromSchema(schema, ensureNotFalsy(collectionSettings.ignoreInputKeys));\r\n\r\n const inputGraphQL = getGraphqlSchemaFromJsonSchema({\r\n rootName: collectionNameInput,\r\n schema: inputSchema as any,\r\n direction: 'input'\r\n });\r\n const pushRowGraphQL = getGraphqlSchemaFromJsonSchema({\r\n rootName: collectionNameInput + prefixes.pushRow,\r\n schema: {\r\n type: 'object',\r\n properties: {\r\n assumedMasterState: inputSchema as any,\r\n newDocumentState: inputSchema as any\r\n },\r\n required: ['newDocumentState'],\r\n additionalProperties: false\r\n },\r\n direction: 'input'\r\n });\r\n\r\n const checkpointSchema = {\r\n type: 'object',\r\n properties: {},\r\n required: [],\r\n additionalProperties: false\r\n } as any;\r\n collectionSettings.checkpointFields.forEach(key => {\r\n const subSchema: any = schema.properties[key];\r\n checkpointSchema.properties[key] = subSchema;\r\n checkpointSchema.required.push(key);\r\n });\r\n const checkpointInputGraphQL = getGraphqlSchemaFromJsonSchema({\r\n rootName: collectionNameInput + prefixes.checkpoint,\r\n schema: checkpointSchema as any,\r\n direction: 'input'\r\n });\r\n\r\n ret.inputs = ret.inputs.concat(\r\n inputGraphQL\r\n .typeDefinitions\r\n .map((str: string) => replaceTopLevelTypeName(str, collectionNameInput))\r\n ).concat(\r\n pushRowGraphQL\r\n .typeDefinitions\r\n .map((str: string) => replaceTopLevelTypeName(str, collectionNameInput + prefixes.pushRow))\r\n ).concat(\r\n checkpointInputGraphQL\r\n .typeDefinitions\r\n .map((str: string) => replaceTopLevelTypeName(str, collectionNameInput + prefixes.checkpoint))\r\n );\r\n\r\n const headersSchema: any = {\r\n type: 'object',\r\n additionalProperties: false,\r\n properties: {},\r\n required: []\r\n };\r\n ensureNotFalsy(collectionSettings.headerFields).forEach(headerField => {\r\n headersSchema.properties[headerField] = {\r\n type: 'string'\r\n };\r\n headersSchema.required.push(headerField);\r\n });\r\n const headersInputName = collectionNameInput + prefixes.headers;\r\n const headersInputGraphQL = getGraphqlSchemaFromJsonSchema({\r\n rootName: headersInputName,\r\n schema: headersSchema,\r\n direction: 'input'\r\n });\r\n if (ensureNotFalsy(collectionSettings.headerFields).length > 0) {\r\n ret.inputs = ret.inputs.concat(\r\n headersInputGraphQL\r\n .typeDefinitions\r\n .map((str: string) => replaceTopLevelTypeName(str, headersInputName))\r\n );\r\n }\r\n\r\n // output\r\n const outputSchema = stripKeysFromSchema(schema, ensureNotFalsy(collectionSettings.ignoreOutputKeys));\r\n const outputGraphQL = getGraphqlSchemaFromJsonSchema({\r\n rootName: collectionName,\r\n schema: outputSchema as any,\r\n direction: 'output'\r\n });\r\n const checkpointOutputGraphQL = getGraphqlSchemaFromJsonSchema({\r\n rootName: ucCollectionName + prefixes.checkpoint,\r\n schema: checkpointSchema as any,\r\n direction: 'output'\r\n });\r\n const pullBulkOutputGraphQL = getGraphqlSchemaFromJsonSchema({\r\n rootName: ucCollectionName + prefixes.pullBulk,\r\n schema: {\r\n type: 'object',\r\n properties: {\r\n documents: {\r\n type: 'array',\r\n items: inputSchema as any\r\n },\r\n checkpoint: checkpointSchema as any\r\n },\r\n required: ['documents', 'checkpoint'],\r\n additionalProperties: false\r\n },\r\n direction: 'output'\r\n });\r\n ret.types = ret.types.concat(\r\n outputGraphQL.typeDefinitions\r\n .map((str: string) => replaceTopLevelTypeName(str, ucCollectionName))\r\n ).concat(\r\n checkpointOutputGraphQL.typeDefinitions\r\n .map((str: string) => replaceTopLevelTypeName(str, ucCollectionName + prefixes.checkpoint))\r\n ).concat(\r\n pullBulkOutputGraphQL.typeDefinitions\r\n .map((str: string) => replaceTopLevelTypeName(str, ucCollectionName + prefixes.pullBulk))\r\n );\r\n\r\n // query\r\n const queryName = prefixes.pull + ucCollectionName;\r\n const queryKeys = [\r\n 'checkpoint: ' + collectionNameInput + prefixes.checkpoint,\r\n 'limit: Int!'\r\n ];\r\n const queryString = queryName + '(' + queryKeys.join(', ') + '): ' + ucCollectionName + prefixes.pullBulk + '!';\r\n ret.queries.push(SPACING + queryString);\r\n\r\n // mutation\r\n const mutationName = prefixes.push + ucCollectionName;\r\n const mutationString = mutationName + '(' + collectionName + prefixes.pushRow + ': [' + collectionNameInput + prefixes.pushRow + ']): [' + ucCollectionName + '!]!';\r\n ret.mutations.push(SPACING + mutationString);\r\n\r\n // subscription\r\n let subscriptionHeaderInputString = '';\r\n if (collectionSettings.headerFields && collectionSettings.headerFields.length > 0) {\r\n subscriptionHeaderInputString = '(headers: ' + headersInputName + ')';\r\n }\r\n const subscriptionName = prefixes.stream + ucCollectionName;\r\n const subscriptionString = subscriptionName + subscriptionHeaderInputString + ': ' + ucCollectionName + prefixes.pullBulk + '!';\r\n ret.subscriptions.push(SPACING + subscriptionString);\r\n });\r\n\r\n // build full string\r\n const fullQueryString = 'type Query {\\n' + ret.queries.join('\\n') + '\\n}\\n';\r\n const fullMutationString = 'type Mutation {\\n' + ret.mutations.join('\\n') + '\\n}\\n';\r\n const fullSubscriptionString = 'type Subscription {\\n' + ret.subscriptions.join('\\n') + '\\n}\\n';\r\n\r\n const fullTypeString = ret.types.join('\\n');\r\n const fullInputString = ret.inputs.join('\\n');\r\n\r\n const fullSchemaString = '' +\r\n 'schema {\\n' +\r\n SPACING + 'query: Query\\n' +\r\n SPACING + 'mutation: Mutation\\n' +\r\n SPACING + 'subscription: Subscription\\n' +\r\n '}\\n';\r\n\r\n ret.asString = '' +\r\n fullQueryString + '\\n' +\r\n fullMutationString + '\\n' +\r\n fullSubscriptionString + '\\n' +\r\n fullTypeString + '\\n' +\r\n fullInputString + '\\n' +\r\n fullSchemaString;\r\n\r\n return ret;\r\n}\r\n\r\n\r\nexport function fillUpOptionals(\r\n input: GraphQLSchemaFromRxSchemaInputSingleCollection\r\n): GraphQLSchemaFromRxSchemaInputSingleCollection {\r\n input = flatClone(input);\r\n\r\n const schema = fillWithDefaultSettings(input.schema);\r\n // strip internal attributes\r\n Object.keys(schema.properties).forEach(key => {\r\n if (key.startsWith('_')) {\r\n delete schema.properties[key];\r\n }\r\n });\r\n input.schema = schema;\r\n\r\n // add deleted field to schema\r\n if (!input.deletedField) {\r\n input.deletedField = '_deleted';\r\n }\r\n schema.properties[input.deletedField] = {\r\n type: 'boolean'\r\n };\r\n (schema.required as string[]).push(input.deletedField);\r\n\r\n // fill up prefixes\r\n if (!input.prefixes) {\r\n input.prefixes = {} as any;\r\n }\r\n const prefixes: Prefixes = input.prefixes as any;\r\n if (!prefixes.push) {\r\n prefixes.push = 'push';\r\n }\r\n if (!prefixes.pushRow) {\r\n prefixes.pushRow = 'PushRow';\r\n }\r\n if (!prefixes.checkpoint) {\r\n prefixes.checkpoint = 'Checkpoint';\r\n }\r\n if (!prefixes.pull) {\r\n prefixes.pull = 'pull';\r\n }\r\n if (!prefixes.pullBulk) {\r\n prefixes.pullBulk = 'PullBulk';\r\n }\r\n if (!prefixes.stream) {\r\n prefixes.stream = 'stream';\r\n }\r\n if (!prefixes.headers) {\r\n prefixes.headers = 'Headers';\r\n }\r\n if (!input.headerFields) {\r\n input.headerFields = [];\r\n }\r\n\r\n\r\n if (!input.withRevisions) {\r\n input.withRevisions = false;\r\n }\r\n\r\n if (!input.ignoreInputKeys) {\r\n input.ignoreInputKeys = [];\r\n }\r\n if (!input.ignoreOutputKeys) {\r\n input.ignoreOutputKeys = [];\r\n }\r\n\r\n return input;\r\n}\r\n\r\nfunction stripKeysFromSchema<T>(schema: RxJsonSchema<T>, strip: string[]): RxJsonSchema<Partial<T>> {\r\n const cloned: any = clone(schema);\r\n strip.forEach(key => {\r\n delete cloned.properties[key];\r\n });\r\n return cloned;\r\n}\r\n\r\n/**\r\n * get-graphql-from-jsonschema add a T0-suffix\r\n * that we do not want for the top level type\r\n */\r\nfunction replaceTopLevelTypeName(str: string, ucCollectionName: string): string {\r\n return str.replace(' ' + ucCollectionName + 'T0 ', ' ' + ucCollectionName + ' ');\r\n}\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { createClient } from 'graphql-ws';
|
|
2
|
+
import { getFromMapOrCreate, getFromMapOrThrow } from "../../plugins/utils/index.js";
|
|
3
|
+
import { WebSocket } from 'ws';
|
|
4
|
+
export var GRAPHQL_WEBSOCKET_BY_URL = new Map();
|
|
5
|
+
export function getGraphQLWebSocket(url, headers, options = {}) {
|
|
6
|
+
var has = getFromMapOrCreate(GRAPHQL_WEBSOCKET_BY_URL, url, () => {
|
|
7
|
+
var connectionParamsHeaders = headers ? {
|
|
8
|
+
headers
|
|
9
|
+
} : undefined;
|
|
10
|
+
var wsClient = createClient({
|
|
11
|
+
...options,
|
|
12
|
+
url,
|
|
13
|
+
shouldRetry: () => true,
|
|
14
|
+
webSocketImpl: WebSocket,
|
|
15
|
+
connectionParams: options.connectionParams || connectionParamsHeaders
|
|
16
|
+
});
|
|
17
|
+
return {
|
|
18
|
+
url,
|
|
19
|
+
socket: wsClient,
|
|
20
|
+
refCount: 1
|
|
21
|
+
};
|
|
22
|
+
}, value => {
|
|
23
|
+
value.refCount = value.refCount + 1;
|
|
24
|
+
});
|
|
25
|
+
return has.socket;
|
|
26
|
+
}
|
|
27
|
+
export function removeGraphQLWebSocketRef(url) {
|
|
28
|
+
var obj = getFromMapOrThrow(GRAPHQL_WEBSOCKET_BY_URL, url);
|
|
29
|
+
obj.refCount = obj.refCount - 1;
|
|
30
|
+
if (obj.refCount === 0) {
|
|
31
|
+
GRAPHQL_WEBSOCKET_BY_URL.delete(url);
|
|
32
|
+
obj.socket.dispose();
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=graphql-websocket.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graphql-websocket.js","names":["createClient","getFromMapOrCreate","getFromMapOrThrow","WebSocket","GRAPHQL_WEBSOCKET_BY_URL","Map","getGraphQLWebSocket","url","headers","options","has","connectionParamsHeaders","undefined","wsClient","shouldRetry","webSocketImpl","connectionParams","socket","refCount","value","removeGraphQLWebSocketRef","obj","delete","dispose"],"sources":["../../../../src/plugins/replication-graphql/graphql-websocket.ts"],"sourcesContent":["import { Client, createClient } from 'graphql-ws';\r\nimport { getFromMapOrCreate, getFromMapOrThrow } from '../../plugins/utils/index.ts';\r\nimport { WebSocket } from 'ws';\r\nimport { RxGraphQLPullWSOptions } from '../../types';\r\n\r\nexport type WebsocketWithRefCount = {\r\n url: string;\r\n socket: Client;\r\n refCount: number;\r\n};\r\n\r\nexport const GRAPHQL_WEBSOCKET_BY_URL: Map<string, WebsocketWithRefCount> = new Map();\r\n\r\n\r\nexport function getGraphQLWebSocket(\r\n url: string,\r\n headers?: { [k: string]: string; },\r\n options: RxGraphQLPullWSOptions = {},\r\n): Client {\r\n\r\n const has = getFromMapOrCreate(\r\n GRAPHQL_WEBSOCKET_BY_URL,\r\n url,\r\n () => {\r\n const connectionParamsHeaders = headers ? { headers } : undefined;\r\n const wsClient = createClient({\r\n ...options,\r\n url,\r\n shouldRetry: () => true,\r\n webSocketImpl: WebSocket,\r\n connectionParams: options.connectionParams || connectionParamsHeaders,\r\n });\r\n return {\r\n url,\r\n socket: wsClient,\r\n refCount: 1\r\n };\r\n },\r\n (value) => {\r\n value.refCount = value.refCount + 1;\r\n }\r\n );\r\n return has.socket;\r\n}\r\n\r\n\r\nexport function removeGraphQLWebSocketRef(\r\n url: string\r\n) {\r\n const obj = getFromMapOrThrow(GRAPHQL_WEBSOCKET_BY_URL, url);\r\n obj.refCount = obj.refCount - 1;\r\n if (obj.refCount === 0) {\r\n GRAPHQL_WEBSOCKET_BY_URL.delete(url);\r\n obj.socket.dispose();\r\n }\r\n}\r\n"],"mappings":"AAAA,SAAiBA,YAAY,QAAQ,YAAY;AACjD,SAASC,kBAAkB,EAAEC,iBAAiB,QAAQ,8BAA8B;AACpF,SAASC,SAAS,QAAQ,IAAI;AAS9B,OAAO,IAAMC,wBAA4D,GAAG,IAAIC,GAAG,CAAC,CAAC;AAGrF,OAAO,SAASC,mBAAmBA,CAC/BC,GAAW,EACXC,OAAkC,EAClCC,OAA+B,GAAG,CAAC,CAAC,EAC9B;EAEN,IAAMC,GAAG,GAAGT,kBAAkB,CAC1BG,wBAAwB,EACxBG,GAAG,EACH,MAAM;IACF,IAAMI,uBAAuB,GAAGH,OAAO,GAAG;MAAEA;IAAQ,CAAC,GAAGI,SAAS;IACjE,IAAMC,QAAQ,GAAGb,YAAY,CAAC;MAC1B,GAAGS,OAAO;MACVF,GAAG;MACHO,WAAW,EAAEA,CAAA,KAAM,IAAI;MACvBC,aAAa,EAAEZ,SAAS;MACxBa,gBAAgB,EAAEP,OAAO,CAACO,gBAAgB,IAAIL;IAClD,CAAC,CAAC;IACF,OAAO;MACHJ,GAAG;MACHU,MAAM,EAAEJ,QAAQ;MAChBK,QAAQ,EAAE;IACd,CAAC;EACL,CAAC,EACAC,KAAK,IAAK;IACPA,KAAK,CAACD,QAAQ,GAAGC,KAAK,CAACD,QAAQ,GAAG,CAAC;EACvC,CACJ,CAAC;EACD,OAAOR,GAAG,CAACO,MAAM;AACrB;AAGA,OAAO,SAASG,yBAAyBA,CACrCb,GAAW,EACb;EACE,IAAMc,GAAG,GAAGnB,iBAAiB,CAACE,wBAAwB,EAAEG,GAAG,CAAC;EAC5Dc,GAAG,CAACH,QAAQ,GAAGG,GAAG,CAACH,QAAQ,GAAG,CAAC;EAC/B,IAAIG,GAAG,CAACH,QAAQ,KAAK,CAAC,EAAE;IACpBd,wBAAwB,CAACkB,MAAM,CAACf,GAAG,CAAC;IACpCc,GAAG,CAACJ,MAAM,CAACM,OAAO,CAAC,CAAC;EACxB;AACJ","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { ensureNotFalsy, getProperty } from "../../plugins/utils/index.js";
|
|
2
|
+
export var GRAPHQL_REPLICATION_PLUGIN_IDENTITY_PREFIX = 'graphql';
|
|
3
|
+
export function graphQLRequest(fetchRequest, httpUrl, clientState, queryParams) {
|
|
4
|
+
var headers = new Headers(clientState.headers || {});
|
|
5
|
+
headers.append('Content-Type', 'application/json');
|
|
6
|
+
var req = new Request(ensureNotFalsy(httpUrl), {
|
|
7
|
+
method: 'POST',
|
|
8
|
+
body: JSON.stringify(queryParams),
|
|
9
|
+
headers,
|
|
10
|
+
credentials: clientState.credentials
|
|
11
|
+
});
|
|
12
|
+
return fetchRequest(req).then(res => res.json()).then(body => {
|
|
13
|
+
return body;
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
export function getDataFromResult(result, userDefinedDataPath) {
|
|
17
|
+
var dataPath = userDefinedDataPath || ['data', Object.keys(result.data)[0]];
|
|
18
|
+
var data = getProperty(result, dataPath);
|
|
19
|
+
return data;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helper.js","names":["ensureNotFalsy","getProperty","GRAPHQL_REPLICATION_PLUGIN_IDENTITY_PREFIX","graphQLRequest","fetchRequest","httpUrl","clientState","queryParams","headers","Headers","append","req","Request","method","body","JSON","stringify","credentials","then","res","json","getDataFromResult","result","userDefinedDataPath","dataPath","Object","keys","data"],"sources":["../../../../src/plugins/replication-graphql/helper.ts"],"sourcesContent":["import type { RxGraphQLReplicationClientState, RxGraphQLReplicationQueryBuilderResponseObject } from '../../types/index.d.ts';\r\nimport { ensureNotFalsy, getProperty } from '../../plugins/utils/index.ts';\r\n\r\nexport const GRAPHQL_REPLICATION_PLUGIN_IDENTITY_PREFIX = 'graphql';\r\n\r\nexport interface GraphQLError {\r\n message: string;\r\n locations: Array<{\r\n line: number;\r\n column: number;\r\n }>;\r\n path: string[];\r\n}\r\nexport type GraphQLErrors = Array<GraphQLError>;\r\n\r\n\r\n\r\nexport function graphQLRequest(\r\n fetchRequest: WindowOrWorkerGlobalScope['fetch'],\r\n httpUrl: string,\r\n clientState: RxGraphQLReplicationClientState,\r\n queryParams: RxGraphQLReplicationQueryBuilderResponseObject\r\n) {\r\n\r\n const headers = new Headers(clientState.headers || {});\r\n headers.append('Content-Type', 'application/json');\r\n\r\n const req = new Request(\r\n ensureNotFalsy(httpUrl),\r\n {\r\n method: 'POST',\r\n body: JSON.stringify(queryParams),\r\n headers,\r\n credentials: clientState.credentials,\r\n }\r\n );\r\n \r\n return fetchRequest(req)\r\n .then((res) => res.json())\r\n .then((body) => {\r\n return body;\r\n });\r\n}\r\n\r\nexport function getDataFromResult(\r\n result: { data: object },\r\n userDefinedDataPath: string | string[] | undefined\r\n): any {\r\n const dataPath = userDefinedDataPath || ['data', Object.keys(result.data)[0]];\r\n const data: any = getProperty(result, dataPath);\r\n return data;\r\n}"],"mappings":"AACA,SAASA,cAAc,EAAEC,WAAW,QAAQ,8BAA8B;AAE1E,OAAO,IAAMC,0CAA0C,GAAG,SAAS;AAcnE,OAAO,SAASC,cAAcA,CAC1BC,YAAgD,EAChDC,OAAe,EACfC,WAA4C,EAC5CC,WAA2D,EAC7D;EAEE,IAAMC,OAAO,GAAG,IAAIC,OAAO,CAACH,WAAW,CAACE,OAAO,IAAI,CAAC,CAAC,CAAC;EACtDA,OAAO,CAACE,MAAM,CAAC,cAAc,EAAE,kBAAkB,CAAC;EAElD,IAAMC,GAAG,GAAG,IAAIC,OAAO,CACnBZ,cAAc,CAACK,OAAO,CAAC,EACvB;IACIQ,MAAM,EAAE,MAAM;IACdC,IAAI,EAAEC,IAAI,CAACC,SAAS,CAACT,WAAW,CAAC;IACjCC,OAAO;IACPS,WAAW,EAAEX,WAAW,CAACW;EAC7B,CACJ,CAAC;EAED,OAAOb,YAAY,CAACO,GAAG,CAAC,CACnBO,IAAI,CAAEC,GAAG,IAAKA,GAAG,CAACC,IAAI,CAAC,CAAC,CAAC,CACzBF,IAAI,CAAEJ,IAAI,IAAK;IACZ,OAAOA,IAAI;EACf,CAAC,CAAC;AACV;AAEA,OAAO,SAASO,iBAAiBA,CAC7BC,MAAwB,EACxBC,mBAAkD,EAC/C;EACH,IAAMC,QAAQ,GAAGD,mBAAmB,IAAI,CAAC,MAAM,EAAEE,MAAM,CAACC,IAAI,CAACJ,MAAM,CAACK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;EAC7E,IAAMA,IAAS,GAAG1B,WAAW,CAACqB,MAAM,EAAEE,QAAQ,CAAC;EAC/C,OAAOG,IAAI;AACf","ignoreList":[]}
|