@powerhousedao/reactor 6.0.0-dev.9 → 6.0.0-dev.91
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/dist/src/admin/document-integrity-service.d.ts +17 -0
- package/dist/src/admin/document-integrity-service.d.ts.map +1 -0
- package/dist/src/admin/types.d.ts +30 -0
- package/dist/src/admin/types.d.ts.map +1 -0
- package/dist/src/cache/collection-membership-cache.d.ts +14 -0
- package/dist/src/cache/collection-membership-cache.d.ts.map +1 -0
- package/dist/src/cache/document-meta-cache.d.ts +1 -0
- package/dist/src/cache/document-meta-cache.d.ts.map +1 -1
- package/dist/src/cache/kysely-operation-index.d.ts +11 -2
- package/dist/src/cache/kysely-operation-index.d.ts.map +1 -1
- package/dist/src/cache/kysely-write-cache.d.ts +10 -2
- package/dist/src/cache/kysely-write-cache.d.ts.map +1 -1
- package/dist/src/cache/operation-index-types.d.ts +16 -2
- package/dist/src/cache/operation-index-types.d.ts.map +1 -1
- package/dist/src/cache/write/interfaces.d.ts +7 -2
- package/dist/src/cache/write/interfaces.d.ts.map +1 -1
- package/dist/src/client/reactor-client.d.ts +13 -10
- package/dist/src/client/reactor-client.d.ts.map +1 -1
- package/dist/src/client/types.d.ts +25 -6
- package/dist/src/client/types.d.ts.map +1 -1
- package/dist/src/core/reactor-builder.d.ts +23 -10
- package/dist/src/core/reactor-builder.d.ts.map +1 -1
- package/dist/src/core/reactor-client-builder.d.ts +8 -4
- package/dist/src/core/reactor-client-builder.d.ts.map +1 -1
- package/dist/src/core/reactor.d.ts +20 -80
- package/dist/src/core/reactor.d.ts.map +1 -1
- package/dist/src/core/types.d.ts +64 -28
- package/dist/src/core/types.d.ts.map +1 -1
- package/dist/src/core/utils.d.ts +39 -3
- package/dist/src/core/utils.d.ts.map +1 -1
- package/dist/src/events/types.d.ts +35 -10
- package/dist/src/events/types.d.ts.map +1 -1
- package/dist/src/executor/document-action-handler.d.ts +30 -0
- package/dist/src/executor/document-action-handler.d.ts.map +1 -0
- package/dist/src/executor/execution-scope.d.ts +44 -0
- package/dist/src/executor/execution-scope.d.ts.map +1 -0
- package/dist/src/executor/signature-verifier.d.ts +9 -0
- package/dist/src/executor/signature-verifier.d.ts.map +1 -0
- package/dist/src/executor/simple-job-executor-manager.d.ts +6 -1
- package/dist/src/executor/simple-job-executor-manager.d.ts.map +1 -1
- package/dist/src/executor/simple-job-executor.d.ts +8 -46
- package/dist/src/executor/simple-job-executor.d.ts.map +1 -1
- package/dist/src/executor/types.d.ts +1 -3
- package/dist/src/executor/types.d.ts.map +1 -1
- package/dist/src/executor/util.d.ts +12 -2
- package/dist/src/executor/util.d.ts.map +1 -1
- package/dist/src/index.d.ts +13 -9
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +20575 -61
- package/dist/src/job-tracker/in-memory-job-tracker.d.ts +4 -3
- package/dist/src/job-tracker/in-memory-job-tracker.d.ts.map +1 -1
- package/dist/src/job-tracker/interfaces.d.ts +3 -1
- package/dist/src/job-tracker/interfaces.d.ts.map +1 -1
- package/dist/src/logging/console.d.ts +1 -22
- package/dist/src/logging/console.d.ts.map +1 -1
- package/dist/src/logging/types.d.ts +1 -11
- package/dist/src/logging/types.d.ts.map +1 -1
- package/dist/src/processors/index.d.ts +0 -1
- package/dist/src/processors/index.d.ts.map +1 -1
- package/dist/src/processors/processor-manager.d.ts +19 -6
- package/dist/src/processors/processor-manager.d.ts.map +1 -1
- package/dist/src/processors/utils.d.ts +3 -2
- package/dist/src/processors/utils.d.ts.map +1 -1
- package/dist/src/queue/job-execution-handle.d.ts +3 -0
- package/dist/src/queue/job-execution-handle.d.ts.map +1 -1
- package/dist/src/queue/queue.d.ts +30 -1
- package/dist/src/queue/queue.d.ts.map +1 -1
- package/dist/src/queue/types.d.ts +4 -3
- package/dist/src/queue/types.d.ts.map +1 -1
- package/dist/src/read-models/base-read-model.d.ts +11 -9
- package/dist/src/read-models/base-read-model.d.ts.map +1 -1
- package/dist/src/read-models/coordinator.d.ts +2 -2
- package/dist/src/read-models/coordinator.d.ts.map +1 -1
- package/dist/src/read-models/document-view.d.ts +7 -4
- package/dist/src/read-models/document-view.d.ts.map +1 -1
- package/dist/src/read-models/interfaces.d.ts +1 -1
- package/dist/src/read-models/interfaces.d.ts.map +1 -1
- package/dist/src/read-models/types.d.ts +16 -0
- package/dist/src/read-models/types.d.ts.map +1 -1
- package/dist/src/registry/document-model-resolver.d.ts +29 -0
- package/dist/src/registry/document-model-resolver.d.ts.map +1 -0
- package/dist/src/registry/implementation.d.ts +4 -0
- package/dist/src/registry/implementation.d.ts.map +1 -1
- package/dist/src/registry/index.d.ts +3 -1
- package/dist/src/registry/index.d.ts.map +1 -1
- package/dist/src/registry/interfaces.d.ts +8 -0
- package/dist/src/registry/interfaces.d.ts.map +1 -1
- package/dist/src/shared/awaiter.d.ts +2 -2
- package/dist/src/shared/awaiter.d.ts.map +1 -1
- package/dist/src/shared/collect-all-pages.d.ts +7 -0
- package/dist/src/shared/collect-all-pages.d.ts.map +1 -0
- package/dist/src/shared/drive-url.d.ts +15 -0
- package/dist/src/shared/drive-url.d.ts.map +1 -0
- package/dist/src/shared/errors.d.ts +9 -0
- package/dist/src/shared/errors.d.ts.map +1 -1
- package/dist/src/shared/factories.d.ts +6 -2
- package/dist/src/shared/factories.d.ts.map +1 -1
- package/dist/src/shared/types.d.ts +32 -6
- package/dist/src/shared/types.d.ts.map +1 -1
- package/dist/src/signer/passthrough-signer.d.ts +1 -1
- package/dist/src/signer/passthrough-signer.d.ts.map +1 -1
- package/dist/src/storage/interfaces.d.ts +252 -124
- package/dist/src/storage/interfaces.d.ts.map +1 -1
- package/dist/src/storage/kysely/document-indexer.d.ts +17 -18
- package/dist/src/storage/kysely/document-indexer.d.ts.map +1 -1
- package/dist/src/storage/kysely/keyframe-store.d.ts +10 -1
- package/dist/src/storage/kysely/keyframe-store.d.ts.map +1 -1
- package/dist/src/storage/kysely/store.d.ts +9 -4
- package/dist/src/storage/kysely/store.d.ts.map +1 -1
- package/dist/src/storage/kysely/sync-cursor-storage.d.ts +1 -1
- package/dist/src/storage/kysely/sync-cursor-storage.d.ts.map +1 -1
- package/dist/src/storage/kysely/sync-dead-letter-storage.d.ts +17 -0
- package/dist/src/storage/kysely/sync-dead-letter-storage.d.ts.map +1 -0
- package/dist/src/storage/kysely/types.d.ts +22 -0
- package/dist/src/storage/kysely/types.d.ts.map +1 -1
- package/dist/src/storage/migrations/011_add_cursor_type_column.d.ts +3 -0
- package/dist/src/storage/migrations/011_add_cursor_type_column.d.ts.map +1 -0
- package/dist/src/storage/migrations/012_add_source_remote_column.d.ts +3 -0
- package/dist/src/storage/migrations/012_add_source_remote_column.d.ts.map +1 -0
- package/dist/src/storage/migrations/013_create_sync_dead_letters_table.d.ts +3 -0
- package/dist/src/storage/migrations/013_create_sync_dead_letters_table.d.ts.map +1 -0
- package/dist/src/storage/migrations/014_create_processor_cursor_table.d.ts +3 -0
- package/dist/src/storage/migrations/014_create_processor_cursor_table.d.ts.map +1 -0
- package/dist/src/storage/migrations/migrator.d.ts.map +1 -1
- package/dist/src/subs/default-error-handler.d.ts.map +1 -1
- package/dist/src/subs/subscription-notification-read-model.d.ts +3 -2
- package/dist/src/subs/subscription-notification-read-model.d.ts.map +1 -1
- package/dist/src/sync/batch-aggregator.d.ts +25 -0
- package/dist/src/sync/batch-aggregator.d.ts.map +1 -0
- package/dist/src/sync/buffered-mailbox.d.ts +36 -0
- package/dist/src/sync/buffered-mailbox.d.ts.map +1 -0
- package/dist/src/sync/channels/gql-req-channel.d.ts +126 -0
- package/dist/src/sync/channels/gql-req-channel.d.ts.map +1 -0
- package/dist/src/sync/channels/gql-request-channel-factory.d.ts +32 -0
- package/dist/src/sync/channels/gql-request-channel-factory.d.ts.map +1 -0
- package/dist/src/sync/channels/gql-res-channel.d.ts +31 -0
- package/dist/src/sync/channels/gql-res-channel.d.ts.map +1 -0
- package/dist/src/sync/channels/gql-response-channel-factory.d.ts +13 -0
- package/dist/src/sync/channels/gql-response-channel-factory.d.ts.map +1 -0
- package/dist/src/sync/channels/index.d.ts +6 -4
- package/dist/src/sync/channels/index.d.ts.map +1 -1
- package/dist/src/sync/channels/interval-poll-timer.d.ts +40 -0
- package/dist/src/sync/channels/interval-poll-timer.d.ts.map +1 -0
- package/dist/src/sync/channels/poll-timer.d.ts +14 -0
- package/dist/src/sync/channels/poll-timer.d.ts.map +1 -0
- package/dist/src/sync/channels/utils.d.ts +15 -1
- package/dist/src/sync/channels/utils.d.ts.map +1 -1
- package/dist/src/sync/errors.d.ts +6 -0
- package/dist/src/sync/errors.d.ts.map +1 -1
- package/dist/src/sync/index.d.ts +11 -7
- package/dist/src/sync/index.d.ts.map +1 -1
- package/dist/src/sync/interfaces.d.ts +42 -19
- package/dist/src/sync/interfaces.d.ts.map +1 -1
- package/dist/src/sync/mailbox.d.ts +51 -12
- package/dist/src/sync/mailbox.d.ts.map +1 -1
- package/dist/src/sync/sync-awaiter.d.ts +34 -0
- package/dist/src/sync/sync-awaiter.d.ts.map +1 -0
- package/dist/src/sync/sync-builder.d.ts +5 -1
- package/dist/src/sync/sync-builder.d.ts.map +1 -1
- package/dist/src/sync/sync-manager.d.ts +23 -8
- package/dist/src/sync/sync-manager.d.ts.map +1 -1
- package/dist/src/sync/sync-operation.d.ts +4 -2
- package/dist/src/sync/sync-operation.d.ts.map +1 -1
- package/dist/src/sync/sync-status-tracker.d.ts +31 -0
- package/dist/src/sync/sync-status-tracker.d.ts.map +1 -0
- package/dist/src/sync/types.d.ts +107 -2
- package/dist/src/sync/types.d.ts.map +1 -1
- package/dist/src/sync/utils.d.ts +37 -2
- package/dist/src/sync/utils.d.ts.map +1 -1
- package/dist/src/utils/reshuffle.d.ts +22 -5
- package/dist/src/utils/reshuffle.d.ts.map +1 -1
- package/package.json +24 -20
- package/dist/src/actions/index.js +0 -76
- package/dist/src/actions/index.js.map +0 -1
- package/dist/src/cache/buffer/ring-buffer.js +0 -69
- package/dist/src/cache/buffer/ring-buffer.js.map +0 -1
- package/dist/src/cache/document-meta-cache-types.js +0 -2
- package/dist/src/cache/document-meta-cache-types.js.map +0 -1
- package/dist/src/cache/document-meta-cache.js +0 -128
- package/dist/src/cache/document-meta-cache.js.map +0 -1
- package/dist/src/cache/index.js +0 -2
- package/dist/src/cache/index.js.map +0 -1
- package/dist/src/cache/kysely-operation-index.js +0 -250
- package/dist/src/cache/kysely-operation-index.js.map +0 -1
- package/dist/src/cache/kysely-write-cache.js +0 -388
- package/dist/src/cache/kysely-write-cache.js.map +0 -1
- package/dist/src/cache/lru/lru-tracker.js +0 -96
- package/dist/src/cache/lru/lru-tracker.js.map +0 -1
- package/dist/src/cache/operation-index-types.js +0 -4
- package/dist/src/cache/operation-index-types.js.map +0 -1
- package/dist/src/cache/write/interfaces.js +0 -2
- package/dist/src/cache/write/interfaces.js.map +0 -1
- package/dist/src/cache/write-cache-types.js +0 -2
- package/dist/src/cache/write-cache-types.js.map +0 -1
- package/dist/src/client/reactor-client.js +0 -406
- package/dist/src/client/reactor-client.js.map +0 -1
- package/dist/src/client/types.js +0 -14
- package/dist/src/client/types.js.map +0 -1
- package/dist/src/core/reactor-builder.js +0 -231
- package/dist/src/core/reactor-builder.js.map +0 -1
- package/dist/src/core/reactor-client-builder.js +0 -123
- package/dist/src/core/reactor-client-builder.js.map +0 -1
- package/dist/src/core/reactor.js +0 -981
- package/dist/src/core/reactor.js.map +0 -1
- package/dist/src/core/types.js +0 -2
- package/dist/src/core/types.js.map +0 -1
- package/dist/src/core/utils.js +0 -171
- package/dist/src/core/utils.js.map +0 -1
- package/dist/src/events/event-bus.js +0 -53
- package/dist/src/events/event-bus.js.map +0 -1
- package/dist/src/events/interfaces.js +0 -2
- package/dist/src/events/interfaces.js.map +0 -1
- package/dist/src/events/types.js +0 -28
- package/dist/src/events/types.js.map +0 -1
- package/dist/src/executor/interfaces.js +0 -2
- package/dist/src/executor/interfaces.js.map +0 -1
- package/dist/src/executor/simple-job-executor-manager.js +0 -233
- package/dist/src/executor/simple-job-executor-manager.js.map +0 -1
- package/dist/src/executor/simple-job-executor.js +0 -898
- package/dist/src/executor/simple-job-executor.js.map +0 -1
- package/dist/src/executor/types.js +0 -11
- package/dist/src/executor/types.js.map +0 -1
- package/dist/src/executor/util.js +0 -184
- package/dist/src/executor/util.js.map +0 -1
- package/dist/src/index.js.map +0 -1
- package/dist/src/job-tracker/in-memory-job-tracker.js +0 -112
- package/dist/src/job-tracker/in-memory-job-tracker.js.map +0 -1
- package/dist/src/job-tracker/index.js +0 -2
- package/dist/src/job-tracker/index.js.map +0 -1
- package/dist/src/job-tracker/interfaces.js +0 -2
- package/dist/src/job-tracker/interfaces.js.map +0 -1
- package/dist/src/logging/console.js +0 -108
- package/dist/src/logging/console.js.map +0 -1
- package/dist/src/logging/types.js +0 -2
- package/dist/src/logging/types.js.map +0 -1
- package/dist/src/processors/index.js +0 -2
- package/dist/src/processors/index.js.map +0 -1
- package/dist/src/processors/processor-manager.js +0 -165
- package/dist/src/processors/processor-manager.js.map +0 -1
- package/dist/src/processors/types.d.ts +0 -63
- package/dist/src/processors/types.d.ts.map +0 -1
- package/dist/src/processors/types.js +0 -2
- package/dist/src/processors/types.js.map +0 -1
- package/dist/src/processors/utils.js +0 -58
- package/dist/src/processors/utils.js.map +0 -1
- package/dist/src/queue/interfaces.js +0 -2
- package/dist/src/queue/interfaces.js.map +0 -1
- package/dist/src/queue/job-execution-handle.js +0 -62
- package/dist/src/queue/job-execution-handle.js.map +0 -1
- package/dist/src/queue/queue.js +0 -384
- package/dist/src/queue/queue.js.map +0 -1
- package/dist/src/queue/types.js +0 -19
- package/dist/src/queue/types.js.map +0 -1
- package/dist/src/read-models/base-read-model.js +0 -143
- package/dist/src/read-models/base-read-model.js.map +0 -1
- package/dist/src/read-models/coordinator.js +0 -72
- package/dist/src/read-models/coordinator.js.map +0 -1
- package/dist/src/read-models/document-view.js +0 -375
- package/dist/src/read-models/document-view.js.map +0 -1
- package/dist/src/read-models/interfaces.js +0 -2
- package/dist/src/read-models/interfaces.js.map +0 -1
- package/dist/src/read-models/types.js +0 -2
- package/dist/src/read-models/types.js.map +0 -1
- package/dist/src/registry/implementation.js +0 -216
- package/dist/src/registry/implementation.js.map +0 -1
- package/dist/src/registry/index.js +0 -2
- package/dist/src/registry/index.js.map +0 -1
- package/dist/src/registry/interfaces.js +0 -2
- package/dist/src/registry/interfaces.js.map +0 -1
- package/dist/src/shared/awaiter.js +0 -123
- package/dist/src/shared/awaiter.js.map +0 -1
- package/dist/src/shared/consistency-tracker.js +0 -123
- package/dist/src/shared/consistency-tracker.js.map +0 -1
- package/dist/src/shared/errors.js +0 -75
- package/dist/src/shared/errors.js.map +0 -1
- package/dist/src/shared/factories.js +0 -33
- package/dist/src/shared/factories.js.map +0 -1
- package/dist/src/shared/types.js +0 -38
- package/dist/src/shared/types.js.map +0 -1
- package/dist/src/shared/utils.js +0 -8
- package/dist/src/shared/utils.js.map +0 -1
- package/dist/src/signer/passthrough-signer.js +0 -19
- package/dist/src/signer/passthrough-signer.js.map +0 -1
- package/dist/src/signer/types.js +0 -2
- package/dist/src/signer/types.js.map +0 -1
- package/dist/src/storage/consistency-aware-legacy-storage.d.ts +0 -33
- package/dist/src/storage/consistency-aware-legacy-storage.d.ts.map +0 -1
- package/dist/src/storage/consistency-aware-legacy-storage.js +0 -65
- package/dist/src/storage/consistency-aware-legacy-storage.js.map +0 -1
- package/dist/src/storage/index.js +0 -3
- package/dist/src/storage/index.js.map +0 -1
- package/dist/src/storage/interfaces.js +0 -19
- package/dist/src/storage/interfaces.js.map +0 -1
- package/dist/src/storage/kysely/document-indexer.js +0 -350
- package/dist/src/storage/kysely/document-indexer.js.map +0 -1
- package/dist/src/storage/kysely/keyframe-store.js +0 -64
- package/dist/src/storage/kysely/keyframe-store.js.map +0 -1
- package/dist/src/storage/kysely/store.js +0 -233
- package/dist/src/storage/kysely/store.js.map +0 -1
- package/dist/src/storage/kysely/sync-cursor-storage.js +0 -93
- package/dist/src/storage/kysely/sync-cursor-storage.js.map +0 -1
- package/dist/src/storage/kysely/sync-remote-storage.js +0 -133
- package/dist/src/storage/kysely/sync-remote-storage.js.map +0 -1
- package/dist/src/storage/kysely/types.js +0 -2
- package/dist/src/storage/kysely/types.js.map +0 -1
- package/dist/src/storage/migrations/001_create_operation_table.js +0 -41
- package/dist/src/storage/migrations/001_create_operation_table.js.map +0 -1
- package/dist/src/storage/migrations/002_create_keyframe_table.js +0 -27
- package/dist/src/storage/migrations/002_create_keyframe_table.js.map +0 -1
- package/dist/src/storage/migrations/003_create_document_table.js +0 -10
- package/dist/src/storage/migrations/003_create_document_table.js.map +0 -1
- package/dist/src/storage/migrations/004_create_document_relationship_table.js +0 -35
- package/dist/src/storage/migrations/004_create_document_relationship_table.js.map +0 -1
- package/dist/src/storage/migrations/005_create_indexer_state_table.js +0 -10
- package/dist/src/storage/migrations/005_create_indexer_state_table.js.map +0 -1
- package/dist/src/storage/migrations/006_create_document_snapshot_table.js +0 -49
- package/dist/src/storage/migrations/006_create_document_snapshot_table.js.map +0 -1
- package/dist/src/storage/migrations/007_create_slug_mapping_table.js +0 -24
- package/dist/src/storage/migrations/007_create_slug_mapping_table.js.map +0 -1
- package/dist/src/storage/migrations/008_create_view_state_table.js +0 -10
- package/dist/src/storage/migrations/008_create_view_state_table.js.map +0 -1
- package/dist/src/storage/migrations/009_create_operation_index_tables.js +0 -50
- package/dist/src/storage/migrations/009_create_operation_index_tables.js.map +0 -1
- package/dist/src/storage/migrations/010_create_sync_tables.js +0 -43
- package/dist/src/storage/migrations/010_create_sync_tables.js.map +0 -1
- package/dist/src/storage/migrations/index.js +0 -3
- package/dist/src/storage/migrations/index.js.map +0 -1
- package/dist/src/storage/migrations/migrator.js +0 -78
- package/dist/src/storage/migrations/migrator.js.map +0 -1
- package/dist/src/storage/migrations/run-migrations.js +0 -58
- package/dist/src/storage/migrations/run-migrations.js.map +0 -1
- package/dist/src/storage/migrations/types.js +0 -2
- package/dist/src/storage/migrations/types.js.map +0 -1
- package/dist/src/storage/txn.js +0 -42
- package/dist/src/storage/txn.js.map +0 -1
- package/dist/src/subs/default-error-handler.js +0 -27
- package/dist/src/subs/default-error-handler.js.map +0 -1
- package/dist/src/subs/react-subscription-manager.js +0 -185
- package/dist/src/subs/react-subscription-manager.js.map +0 -1
- package/dist/src/subs/subscription-notification-read-model.js +0 -62
- package/dist/src/subs/subscription-notification-read-model.js.map +0 -1
- package/dist/src/subs/types.js +0 -2
- package/dist/src/subs/types.js.map +0 -1
- package/dist/src/sync/channels/composite-channel-factory.d.ts +0 -30
- package/dist/src/sync/channels/composite-channel-factory.d.ts.map +0 -1
- package/dist/src/sync/channels/composite-channel-factory.js +0 -87
- package/dist/src/sync/channels/composite-channel-factory.js.map +0 -1
- package/dist/src/sync/channels/gql-channel-factory.d.ts +0 -25
- package/dist/src/sync/channels/gql-channel-factory.d.ts.map +0 -1
- package/dist/src/sync/channels/gql-channel-factory.js +0 -76
- package/dist/src/sync/channels/gql-channel-factory.js.map +0 -1
- package/dist/src/sync/channels/gql-channel.d.ts +0 -118
- package/dist/src/sync/channels/gql-channel.d.ts.map +0 -1
- package/dist/src/sync/channels/gql-channel.js +0 -423
- package/dist/src/sync/channels/gql-channel.js.map +0 -1
- package/dist/src/sync/channels/index.js +0 -6
- package/dist/src/sync/channels/index.js.map +0 -1
- package/dist/src/sync/channels/polling-channel.d.ts +0 -39
- package/dist/src/sync/channels/polling-channel.d.ts.map +0 -1
- package/dist/src/sync/channels/polling-channel.js +0 -72
- package/dist/src/sync/channels/polling-channel.js.map +0 -1
- package/dist/src/sync/channels/utils.js +0 -96
- package/dist/src/sync/channels/utils.js.map +0 -1
- package/dist/src/sync/errors.js +0 -17
- package/dist/src/sync/errors.js.map +0 -1
- package/dist/src/sync/index.js +0 -9
- package/dist/src/sync/index.js.map +0 -1
- package/dist/src/sync/interfaces.js +0 -2
- package/dist/src/sync/interfaces.js.map +0 -1
- package/dist/src/sync/mailbox.js +0 -59
- package/dist/src/sync/mailbox.js.map +0 -1
- package/dist/src/sync/sync-builder.js +0 -39
- package/dist/src/sync/sync-builder.js.map +0 -1
- package/dist/src/sync/sync-manager.js +0 -266
- package/dist/src/sync/sync-manager.js.map +0 -1
- package/dist/src/sync/sync-operation.js +0 -63
- package/dist/src/sync/sync-operation.js.map +0 -1
- package/dist/src/sync/types.js +0 -16
- package/dist/src/sync/types.js.map +0 -1
- package/dist/src/sync/utils.js +0 -78
- package/dist/src/sync/utils.js.map +0 -1
- package/dist/src/utils/reshuffle.js +0 -47
- package/dist/src/utils/reshuffle.js.map +0 -1
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { IWriteCache } from "../cache/write/interfaces.js";
|
|
2
|
+
import type { IDocumentModelRegistry } from "../registry/interfaces.js";
|
|
3
|
+
import type { IDocumentView, IKeyframeStore, IOperationStore } from "../storage/interfaces.js";
|
|
4
|
+
import type { IDocumentIntegrityService, RebuildResult, ValidationResult } from "./types.js";
|
|
5
|
+
export declare class DocumentIntegrityService implements IDocumentIntegrityService {
|
|
6
|
+
private readonly keyframeStore;
|
|
7
|
+
private readonly operationStore;
|
|
8
|
+
private readonly writeCache;
|
|
9
|
+
private readonly documentView;
|
|
10
|
+
private readonly documentModelRegistry;
|
|
11
|
+
constructor(keyframeStore: IKeyframeStore, operationStore: IOperationStore, writeCache: IWriteCache, documentView: IDocumentView, documentModelRegistry: IDocumentModelRegistry);
|
|
12
|
+
validateDocument(documentId: string, branch?: string, signal?: AbortSignal): Promise<ValidationResult>;
|
|
13
|
+
rebuildKeyframes(documentId: string, branch?: string, signal?: AbortSignal): Promise<RebuildResult>;
|
|
14
|
+
rebuildSnapshots(documentId: string, branch?: string, signal?: AbortSignal): Promise<RebuildResult>;
|
|
15
|
+
private discoverScopes;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=document-integrity-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"document-integrity-service.d.ts","sourceRoot":"","sources":["../../../src/admin/document-integrity-service.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,KAAK,EACV,aAAa,EACb,cAAc,EACd,eAAe,EAChB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EACV,yBAAyB,EAEzB,aAAa,EAEb,gBAAgB,EACjB,MAAM,YAAY,CAAC;AASpB,qBAAa,wBAAyB,YAAW,yBAAyB;IACxE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiB;IAC/C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAkB;IACjD,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAc;IACzC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgB;IAC7C,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAyB;gBAG7D,aAAa,EAAE,cAAc,EAC7B,cAAc,EAAE,eAAe,EAC/B,UAAU,EAAE,WAAW,EACvB,YAAY,EAAE,aAAa,EAC3B,qBAAqB,EAAE,sBAAsB;IASzC,gBAAgB,CACpB,UAAU,EAAE,MAAM,EAClB,MAAM,SAAS,EACf,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,gBAAgB,CAAC;IAiHtB,gBAAgB,CACpB,UAAU,EAAE,MAAM,EAClB,MAAM,SAAS,EACf,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,aAAa,CAAC;IAenB,gBAAgB,CACpB,UAAU,EAAE,MAAM,EAClB,MAAM,SAAS,EACf,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,aAAa,CAAC;YAiBX,cAAc;CAY7B"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export type KeyframeValidationIssue = {
|
|
2
|
+
scope: string;
|
|
3
|
+
branch: string;
|
|
4
|
+
revision: number;
|
|
5
|
+
keyframeHash: string;
|
|
6
|
+
replayedHash: string;
|
|
7
|
+
};
|
|
8
|
+
export type SnapshotValidationIssue = {
|
|
9
|
+
scope: string;
|
|
10
|
+
branch: string;
|
|
11
|
+
snapshotHash: string;
|
|
12
|
+
replayedHash: string;
|
|
13
|
+
};
|
|
14
|
+
export type ValidationResult = {
|
|
15
|
+
documentId: string;
|
|
16
|
+
isConsistent: boolean;
|
|
17
|
+
keyframeIssues: KeyframeValidationIssue[];
|
|
18
|
+
snapshotIssues: SnapshotValidationIssue[];
|
|
19
|
+
};
|
|
20
|
+
export type RebuildResult = {
|
|
21
|
+
documentId: string;
|
|
22
|
+
keyframesDeleted: number;
|
|
23
|
+
scopesInvalidated: number;
|
|
24
|
+
};
|
|
25
|
+
export interface IDocumentIntegrityService {
|
|
26
|
+
validateDocument(documentId: string, branch?: string, signal?: AbortSignal): Promise<ValidationResult>;
|
|
27
|
+
rebuildKeyframes(documentId: string, branch?: string, signal?: AbortSignal): Promise<RebuildResult>;
|
|
28
|
+
rebuildSnapshots(documentId: string, branch?: string, signal?: AbortSignal): Promise<RebuildResult>;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/admin/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,uBAAuB,GAAG;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,OAAO,CAAC;IACtB,cAAc,EAAE,uBAAuB,EAAE,CAAC;IAC1C,cAAc,EAAE,uBAAuB,EAAE,CAAC;CAC3C,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,WAAW,yBAAyB;IACxC,gBAAgB,CACd,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAE7B,gBAAgB,CACd,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,aAAa,CAAC,CAAC;IAE1B,gBAAgB,CACd,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,aAAa,CAAC,CAAC;CAC3B"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { IOperationIndex } from "./operation-index-types.js";
|
|
2
|
+
export interface ICollectionMembershipCache {
|
|
3
|
+
getCollectionsForDocuments(documentIds: string[]): Promise<Record<string, string[]>>;
|
|
4
|
+
invalidate(documentId: string): void;
|
|
5
|
+
}
|
|
6
|
+
export declare class CollectionMembershipCache implements ICollectionMembershipCache {
|
|
7
|
+
private operationIndex;
|
|
8
|
+
private cache;
|
|
9
|
+
constructor(operationIndex: IOperationIndex);
|
|
10
|
+
withScopedIndex(operationIndex: IOperationIndex): CollectionMembershipCache;
|
|
11
|
+
getCollectionsForDocuments(documentIds: string[]): Promise<Record<string, string[]>>;
|
|
12
|
+
invalidate(documentId: string): void;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=collection-membership-cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"collection-membership-cache.d.ts","sourceRoot":"","sources":["../../../src/cache/collection-membership-cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAElE,MAAM,WAAW,0BAA0B;IAEzC,0BAA0B,CACxB,WAAW,EAAE,MAAM,EAAE,GACpB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IAGrC,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAED,qBAAa,yBAA0B,YAAW,0BAA0B;IAG9D,OAAO,CAAC,cAAc;IAFlC,OAAO,CAAC,KAAK,CAAoC;gBAE7B,cAAc,EAAE,eAAe;IAEnD,eAAe,CAAC,cAAc,EAAE,eAAe,GAAG,yBAAyB;IAMrE,0BAA0B,CAC9B,WAAW,EAAE,MAAM,EAAE,GACpB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IA0BpC,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;CAGrC"}
|
|
@@ -16,6 +16,7 @@ export declare class DocumentMetaCache implements IDocumentMetaCache {
|
|
|
16
16
|
private operationStore;
|
|
17
17
|
private config;
|
|
18
18
|
constructor(operationStore: IOperationStore, config: DocumentMetaCacheConfig);
|
|
19
|
+
withScopedStore(operationStore: IOperationStore): DocumentMetaCache;
|
|
19
20
|
startup(): Promise<void>;
|
|
20
21
|
shutdown(): Promise<void>;
|
|
21
22
|
getDocumentMeta(documentId: string, branch: string, signal?: AbortSignal): Promise<CachedDocumentMeta>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"document-meta-cache.d.ts","sourceRoot":"","sources":["../../../src/cache/document-meta-cache.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"document-meta-cache.d.ts","sourceRoot":"","sources":["../../../src/cache/document-meta-cache.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EACV,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EACnB,MAAM,gCAAgC,CAAC;AAGxC;;;;;;;;;GASG;AACH,qBAAa,iBAAkB,YAAW,kBAAkB;IAC1D,OAAO,CAAC,KAAK,CAAkC;IAC/C,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,cAAc,CAAkB;IACxC,OAAO,CAAC,MAAM,CAA0B;gBAGtC,cAAc,EAAE,eAAe,EAC/B,MAAM,EAAE,uBAAuB;IAUjC,eAAe,CAAC,cAAc,EAAE,eAAe,GAAG,iBAAiB;IAO7D,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIxB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB,eAAe,CACnB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,kBAAkB,CAAC;IAkBxB,iBAAiB,CACrB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,MAAM,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,kBAAkB,CAAC;IAa9B,eAAe,CACb,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,kBAAkB,GACvB,IAAI;IAcP,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM;IAuBvD,KAAK,IAAI,IAAI;IAKb,OAAO,CAAC,OAAO;YAID,aAAa;YAQb,qBAAqB;CA2DpC"}
|
|
@@ -1,15 +1,24 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type {
|
|
1
|
+
import type { OperationWithContext } from "document-model";
|
|
2
|
+
import type { Kysely, Transaction } from "kysely";
|
|
3
|
+
import type { PagedResults, PagingOptions } from "../shared/types.js";
|
|
4
|
+
import type { ViewFilter } from "../storage/interfaces.js";
|
|
3
5
|
import type { Database } from "../storage/kysely/types.js";
|
|
4
6
|
import type { IOperationIndex, IOperationIndexTxn, OperationIndexEntry } from "./operation-index-types.js";
|
|
5
7
|
export declare class KyselyOperationIndex implements IOperationIndex {
|
|
6
8
|
private db;
|
|
9
|
+
private trx?;
|
|
7
10
|
constructor(db: Kysely<Database>);
|
|
11
|
+
private get queryExecutor();
|
|
12
|
+
withTransaction(trx: Transaction<Database>): KyselyOperationIndex;
|
|
8
13
|
start(): IOperationIndexTxn;
|
|
9
14
|
commit(txn: IOperationIndexTxn, signal?: AbortSignal): Promise<number[]>;
|
|
15
|
+
private executeCommit;
|
|
10
16
|
find(collectionId: string, cursor?: number, view?: ViewFilter, paging?: PagingOptions, signal?: AbortSignal): Promise<PagedResults<OperationIndexEntry>>;
|
|
17
|
+
get(documentId: string, view?: ViewFilter, paging?: PagingOptions, signal?: AbortSignal): Promise<PagedResults<OperationIndexEntry>>;
|
|
11
18
|
getSinceOrdinal(ordinal: number, paging?: PagingOptions, signal?: AbortSignal): Promise<PagedResults<OperationWithContext>>;
|
|
12
19
|
private rowToOperationWithContext;
|
|
13
20
|
private rowToOperationIndexEntry;
|
|
21
|
+
getLatestTimestampForCollection(collectionId: string, signal?: AbortSignal): Promise<string | null>;
|
|
22
|
+
getCollectionsForDocuments(documentIds: string[]): Promise<Record<string, string[]>>;
|
|
14
23
|
}
|
|
15
24
|
//# sourceMappingURL=kysely-operation-index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kysely-operation-index.d.ts","sourceRoot":"","sources":["../../../src/cache/kysely-operation-index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"kysely-operation-index.d.ts","sourceRoot":"","sources":["../../../src/cache/kysely-operation-index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAElD,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,KAAK,EAGV,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EAEpB,MAAM,4BAA4B,CAAC;AAsEpC,qBAAa,oBAAqB,YAAW,eAAe;IAG9C,OAAO,CAAC,EAAE;IAFtB,OAAO,CAAC,GAAG,CAAC,CAAwB;gBAEhB,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC;IAExC,OAAO,KAAK,aAAa,GAExB;IAED,eAAe,CAAC,GAAG,EAAE,WAAW,CAAC,QAAQ,CAAC,GAAG,oBAAoB;IAMjE,KAAK,IAAI,kBAAkB;IAIrB,MAAM,CACV,GAAG,EAAE,kBAAkB,EACvB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,MAAM,EAAE,CAAC;YAkBN,aAAa;IA8FrB,IAAI,CACR,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,UAAU,EACjB,MAAM,CAAC,EAAE,aAAa,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC;IA6EvC,GAAG,CACP,UAAU,EAAE,MAAM,EAClB,IAAI,CAAC,EAAE,UAAU,EACjB,MAAM,CAAC,EAAE,aAAa,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC;IA0DvC,eAAe,CACnB,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,aAAa,EACtB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAAC;IAsD9C,OAAO,CAAC,yBAAyB;IAsBjC,OAAO,CAAC,wBAAwB;IAmB1B,+BAA+B,CACnC,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAoBnB,0BAA0B,CAC9B,WAAW,EAAE,MAAM,EAAE,GACpB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;CAqBrC"}
|
|
@@ -52,6 +52,7 @@ export declare class KyselyWriteCache implements IWriteCache {
|
|
|
52
52
|
private registry;
|
|
53
53
|
private config;
|
|
54
54
|
constructor(keyframeStore: IKeyframeStore, operationStore: IOperationStore, registry: IDocumentModelRegistry, config: WriteCacheConfig);
|
|
55
|
+
withScopedStores(operationStore: IOperationStore, keyframeStore: IKeyframeStore): KyselyWriteCache;
|
|
55
56
|
/**
|
|
56
57
|
* Initializes the write cache.
|
|
57
58
|
* Currently a no-op as keyframe store lifecycle is managed externally.
|
|
@@ -85,8 +86,13 @@ export declare class KyselyWriteCache implements IWriteCache {
|
|
|
85
86
|
/**
|
|
86
87
|
* Stores a document snapshot in the cache at a specific revision.
|
|
87
88
|
*
|
|
88
|
-
*
|
|
89
|
-
*
|
|
89
|
+
* The cached document is a shallow copy of the input with its operation history
|
|
90
|
+
* truncated to the last operation per scope and its clipboard cleared. This keeps
|
|
91
|
+
* memory use and copy costs constant regardless of operation count. Consumers of
|
|
92
|
+
* getState() must not rely on the full operation history being present; the only
|
|
93
|
+
* guaranteed invariant is that operations[scope].at(-1) reflects the latest
|
|
94
|
+
* operation index for each scope.
|
|
95
|
+
*
|
|
90
96
|
* Updates LRU tracker and may evict least recently used stream if at capacity.
|
|
91
97
|
* Asynchronously persists keyframes at configured intervals (fire-and-forget).
|
|
92
98
|
*
|
|
@@ -120,6 +126,8 @@ export declare class KyselyWriteCache implements IWriteCache {
|
|
|
120
126
|
/**
|
|
121
127
|
* Retrieves a specific stream for a document. Exposed on the implementation
|
|
122
128
|
* for testing, but not on the interface.
|
|
129
|
+
*
|
|
130
|
+
* @internal
|
|
123
131
|
*/
|
|
124
132
|
getStream(documentId: string, scope: string, branch: string): DocumentStream | undefined;
|
|
125
133
|
private findNearestKeyframe;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kysely-write-cache.d.ts","sourceRoot":"","sources":["../../../src/cache/kysely-write-cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,UAAU,EAEX,MAAM,gBAAgB,CAAC;AAMxB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,KAAK,cAAc,GAAG;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;CACxC,CAAC;
|
|
1
|
+
{"version":3,"file":"kysely-write-cache.d.ts","sourceRoot":"","sources":["../../../src/cache/kysely-write-cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,UAAU,EAEX,MAAM,gBAAgB,CAAC;AAMxB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChF,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,KAAK,cAAc,GAAG;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC;CACxC,CAAC;AAQF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,qBAAa,gBAAiB,YAAW,WAAW;IAClD,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,UAAU,CAAqB;IACvC,OAAO,CAAC,aAAa,CAAiB;IACtC,OAAO,CAAC,cAAc,CAAkB;IACxC,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,MAAM,CAA6B;gBAGzC,aAAa,EAAE,cAAc,EAC7B,cAAc,EAAE,eAAe,EAC/B,QAAQ,EAAE,sBAAsB,EAChC,MAAM,EAAE,gBAAgB;IAc1B,gBAAgB,CACd,cAAc,EAAE,eAAe,EAC/B,aAAa,EAAE,cAAc,GAC5B,gBAAgB;IAYnB;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAI/B;;;;;;;;;;;;;;;;;;OAkBG;IACG,QAAQ,CACZ,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,cAAc,CAAC,EAAE,MAAM,EACvB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC;IAiEtB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,QAAQ,CACN,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,UAAU,GACnB,IAAI;IA0CP;;;;;;;;;;;;OAYG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM;IA+BvE;;;OAGG;IACH,KAAK,IAAI,IAAI;IAKb;;;;;OAKG;IACH,SAAS,CACP,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,cAAc,GAAG,SAAS;YAKf,mBAAmB;YAoBnB,eAAe;YA2Kf,eAAe;IAmE7B,OAAO,CAAC,wBAAwB;IAiBhC,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,iBAAiB;IAsBzB,OAAO,CAAC,kBAAkB;CAG3B"}
|
|
@@ -1,12 +1,14 @@
|
|
|
1
|
-
import type { Operation } from "document-model";
|
|
1
|
+
import type { Operation, OperationWithContext } from "document-model";
|
|
2
2
|
import type { Generated, Insertable, Selectable, Updateable } from "kysely";
|
|
3
|
-
import type {
|
|
3
|
+
import type { PagedResults, PagingOptions } from "../shared/types.js";
|
|
4
|
+
import type { ViewFilter } from "../storage/interfaces.js";
|
|
4
5
|
export type OperationIndexEntry = Operation & {
|
|
5
6
|
ordinal?: number;
|
|
6
7
|
documentId: string;
|
|
7
8
|
documentType: string;
|
|
8
9
|
branch: string;
|
|
9
10
|
scope: string;
|
|
11
|
+
sourceRemote: string;
|
|
10
12
|
};
|
|
11
13
|
export interface IOperationIndexTxn {
|
|
12
14
|
createCollection(collectionId: string): void;
|
|
@@ -18,7 +20,18 @@ export interface IOperationIndex {
|
|
|
18
20
|
start(): IOperationIndexTxn;
|
|
19
21
|
commit(txn: IOperationIndexTxn, signal?: AbortSignal): Promise<number[]>;
|
|
20
22
|
find(collectionId: string, cursor?: number, view?: ViewFilter, paging?: PagingOptions, signal?: AbortSignal): Promise<PagedResults<OperationIndexEntry>>;
|
|
23
|
+
/**
|
|
24
|
+
* Get all operations for a specific document, ordered by ordinal.
|
|
25
|
+
* Used for retroactive sync when a document is added to a collection.
|
|
26
|
+
*/
|
|
27
|
+
get(documentId: string, view?: ViewFilter, paging?: PagingOptions, signal?: AbortSignal): Promise<PagedResults<OperationIndexEntry>>;
|
|
21
28
|
getSinceOrdinal(ordinal: number, paging?: PagingOptions, signal?: AbortSignal): Promise<PagedResults<OperationWithContext>>;
|
|
29
|
+
getLatestTimestampForCollection(collectionId: string, signal?: AbortSignal): Promise<string | null>;
|
|
30
|
+
/**
|
|
31
|
+
* Get all collection memberships for the given document IDs.
|
|
32
|
+
* Returns a map of documentId to array of collection IDs.
|
|
33
|
+
*/
|
|
34
|
+
getCollectionsForDocuments(documentIds: string[]): Promise<Record<string, string[]>>;
|
|
22
35
|
}
|
|
23
36
|
export interface DocumentCollectionTable {
|
|
24
37
|
documentId: string;
|
|
@@ -39,6 +52,7 @@ export interface OperationIndexOperationTable {
|
|
|
39
52
|
skip: number;
|
|
40
53
|
hash: string;
|
|
41
54
|
action: unknown;
|
|
55
|
+
sourceRemote: Generated<string>;
|
|
42
56
|
}
|
|
43
57
|
export type DocumentCollectionRow = Selectable<DocumentCollectionTable>;
|
|
44
58
|
export type InsertableDocumentCollection = Insertable<DocumentCollectionTable>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operation-index-types.d.ts","sourceRoot":"","sources":["../../../src/cache/operation-index-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"operation-index-types.d.ts","sourceRoot":"","sources":["../../../src/cache/operation-index-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,13 +28,18 @@ export interface IWriteCache {
|
|
|
28
28
|
getState(documentId: string, scope: string, branch: string, targetRevision?: number, signal?: AbortSignal): Promise<PHDocument>;
|
|
29
29
|
/**
|
|
30
30
|
* Stores a document snapshot in the cache at the specified revision.
|
|
31
|
-
*
|
|
31
|
+
* Implementations may truncate the stored document (e.g. strip operation
|
|
32
|
+
* history beyond the last entry per scope, clear clipboard) to bound memory
|
|
33
|
+
* and copy cost. Callers must not assume that the document returned by a
|
|
34
|
+
* subsequent getState() call will have a complete operations array; the only
|
|
35
|
+
* guaranteed invariant is that operations[scope].at(-1) holds the latest
|
|
36
|
+
* operation index for each scope present in the cached document.
|
|
32
37
|
*
|
|
33
38
|
* @param documentId - The document identifier
|
|
34
39
|
* @param scope - Operation scope
|
|
35
40
|
* @param branch - Branch name
|
|
36
41
|
* @param revision - The revision this document represents
|
|
37
|
-
* @param document - The
|
|
42
|
+
* @param document - The document to cache
|
|
38
43
|
*
|
|
39
44
|
* @example
|
|
40
45
|
* ```typescript
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../../src/cache/write/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;;;;;;;;;;;;;;;;OAmBG;IACH,QAAQ,CACN,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,cAAc,CAAC,EAAE,MAAM,EACvB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CAAC;IAEvB
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../../src/cache/write/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B;;;;;;;;;;;;;;;;;;;OAmBG;IACH,QAAQ,CACN,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,cAAc,CAAC,EAAE,MAAM,EACvB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,UAAU,CAAC,CAAC;IAEvB;;;;;;;;;;;;;;;;;;;OAmBG;IACH,QAAQ,CACN,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,UAAU,GACnB,IAAI,CAAC;IAER;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAExE;;OAEG;IACH,KAAK,IAAI,IAAI,CAAC;IAEd;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzB;;OAEG;IACH,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import type { Action, DocumentModelModule, ISigner, PHDocument } from "document-model";
|
|
2
|
-
import type {
|
|
3
|
-
import type {
|
|
1
|
+
import type { Action, DocumentModelModule, ISigner, Operation, PHDocument } from "document-model";
|
|
2
|
+
import type { BatchLoadRequest, BatchLoadResult, IReactor } from "../core/types.js";
|
|
3
|
+
import type { ILogger } from "../logging/types.js";
|
|
4
4
|
import { type IJobAwaiter } from "../shared/awaiter.js";
|
|
5
5
|
import { PropagationMode, type JobInfo, type PagedResults, type PagingOptions, type SearchFilter, type ViewFilter } from "../shared/types.js";
|
|
6
|
-
import type { IDocumentIndexer } from "../storage/interfaces.js";
|
|
6
|
+
import type { IDocumentIndexer, IDocumentView, OperationFilter } from "../storage/interfaces.js";
|
|
7
7
|
import type { IReactorSubscriptionManager } from "../subs/types.js";
|
|
8
8
|
import { type CreateDocumentOptions, type DocumentChangeEvent, type IReactorClient } from "./types.js";
|
|
9
9
|
/**
|
|
@@ -23,7 +23,8 @@ export declare class ReactorClient implements IReactorClient {
|
|
|
23
23
|
private subscriptionManager;
|
|
24
24
|
private jobAwaiter;
|
|
25
25
|
private documentIndexer;
|
|
26
|
-
|
|
26
|
+
private documentView;
|
|
27
|
+
constructor(logger: ILogger, reactor: IReactor, signer: ISigner, subscriptionManager: IReactorSubscriptionManager, jobAwaiter: IJobAwaiter, documentIndexer: IDocumentIndexer, documentView: IDocumentView);
|
|
27
28
|
/**
|
|
28
29
|
* Retrieves a list of document model modules.
|
|
29
30
|
*/
|
|
@@ -38,10 +39,11 @@ export declare class ReactorClient implements IReactorClient {
|
|
|
38
39
|
/**
|
|
39
40
|
* Retrieves a specific PHDocument
|
|
40
41
|
*/
|
|
41
|
-
get<TDocument extends PHDocument>(identifier: string, view?: ViewFilter, signal?: AbortSignal): Promise<
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
42
|
+
get<TDocument extends PHDocument>(identifier: string, view?: ViewFilter, signal?: AbortSignal): Promise<TDocument>;
|
|
43
|
+
/**
|
|
44
|
+
* Retrieves operations for a document
|
|
45
|
+
*/
|
|
46
|
+
getOperations(documentIdentifier: string, view?: ViewFilter, filter?: OperationFilter, paging?: PagingOptions, signal?: AbortSignal): Promise<PagedResults<Operation>>;
|
|
45
47
|
/**
|
|
46
48
|
* Retrieves children of a document
|
|
47
49
|
*/
|
|
@@ -57,7 +59,7 @@ export declare class ReactorClient implements IReactorClient {
|
|
|
57
59
|
/**
|
|
58
60
|
* Creates a document and waits for completion
|
|
59
61
|
*/
|
|
60
|
-
create(document: PHDocument, parentIdentifier?: string, signal?: AbortSignal): Promise<
|
|
62
|
+
create<TDocument extends PHDocument = PHDocument>(document: PHDocument, parentIdentifier?: string, signal?: AbortSignal): Promise<TDocument>;
|
|
61
63
|
/**
|
|
62
64
|
* Creates an empty document and waits for completion
|
|
63
65
|
*/
|
|
@@ -93,6 +95,7 @@ export declare class ReactorClient implements IReactorClient {
|
|
|
93
95
|
source: PHDocument;
|
|
94
96
|
target: PHDocument;
|
|
95
97
|
}>;
|
|
98
|
+
loadBatch(request: BatchLoadRequest, signal?: AbortSignal): Promise<BatchLoadResult>;
|
|
96
99
|
/**
|
|
97
100
|
* Deletes a document and waits for completion
|
|
98
101
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reactor-client.d.ts","sourceRoot":"","sources":["../../../src/client/reactor-client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,MAAM,EAEN,mBAAmB,EACnB,OAAO,EACP,UAAU,EACX,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"reactor-client.d.ts","sourceRoot":"","sources":["../../../src/client/reactor-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
import type { Action, DocumentModelModule, PHDocument } from "document-model";
|
|
1
|
+
import type { Action, DocumentModelModule, Operation, PHDocument } from "document-model";
|
|
2
|
+
import type { BatchLoadRequest, BatchLoadResult } from "../core/types.js";
|
|
2
3
|
import type { JobInfo, PagedResults, PagingOptions, PropagationMode, SearchFilter, ViewFilter } from "../shared/types.js";
|
|
4
|
+
import type { OperationFilter } from "../storage/interfaces.js";
|
|
3
5
|
/**
|
|
4
6
|
* Describes the types of document changes that can occur.
|
|
5
7
|
*/
|
|
@@ -67,10 +69,18 @@ export interface IReactorClient {
|
|
|
67
69
|
* @param signal - Optional abort signal to cancel the request
|
|
68
70
|
* @returns The up-to-date PHDocument with scopes and list of child document ids
|
|
69
71
|
*/
|
|
70
|
-
get<TDocument extends PHDocument>(identifier: string, view?: ViewFilter, signal?: AbortSignal): Promise<
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
72
|
+
get<TDocument extends PHDocument>(identifier: string, view?: ViewFilter, signal?: AbortSignal): Promise<TDocument>;
|
|
73
|
+
/**
|
|
74
|
+
* Retrieves operations for a document.
|
|
75
|
+
*
|
|
76
|
+
* @param documentIdentifier - Required, this is either a document "id" field or a "slug"
|
|
77
|
+
* @param view - Optional filter containing branch and scopes information
|
|
78
|
+
* @param filter - Optional filter for actionTypes, timestamps, and revision
|
|
79
|
+
* @param paging - Optional pagination options
|
|
80
|
+
* @param signal - Optional abort signal to cancel the request
|
|
81
|
+
* @returns Paginated list of operations
|
|
82
|
+
*/
|
|
83
|
+
getOperations(documentIdentifier: string, view?: ViewFilter, filter?: OperationFilter, paging?: PagingOptions, signal?: AbortSignal): Promise<PagedResults<Operation>>;
|
|
74
84
|
/**
|
|
75
85
|
* Retrieves children of a document.
|
|
76
86
|
*
|
|
@@ -109,7 +119,7 @@ export interface IReactorClient {
|
|
|
109
119
|
* @param signal - Optional abort signal to cancel the request
|
|
110
120
|
* @returns The created document
|
|
111
121
|
*/
|
|
112
|
-
create(document: PHDocument, parentIdentifier?: string, signal?: AbortSignal): Promise<
|
|
122
|
+
create<TDocument extends PHDocument = PHDocument>(document: PHDocument, parentIdentifier?: string, signal?: AbortSignal): Promise<TDocument>;
|
|
113
123
|
/**
|
|
114
124
|
* Creates an empty document and waits for completion
|
|
115
125
|
*
|
|
@@ -212,6 +222,15 @@ export interface IReactorClient {
|
|
|
212
222
|
* @returns a promise, resolving on deletion confirmation
|
|
213
223
|
*/
|
|
214
224
|
deleteDocuments(identifiers: string[], propagate?: PropagationMode, signal?: AbortSignal): Promise<void>;
|
|
225
|
+
/**
|
|
226
|
+
* Loads multiple batches of pre-existing operations across documents with dependency management.
|
|
227
|
+
* Waits for all jobs to complete.
|
|
228
|
+
*
|
|
229
|
+
* @param request - Batch load request containing jobs with dependencies
|
|
230
|
+
* @param signal - Optional abort signal to cancel the request
|
|
231
|
+
* @returns Map of job keys to completed job information
|
|
232
|
+
*/
|
|
233
|
+
loadBatch(request: BatchLoadRequest, signal?: AbortSignal): Promise<BatchLoadResult>;
|
|
215
234
|
/**
|
|
216
235
|
* Retrieves the status of a job
|
|
217
236
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/client/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/client/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +1,23 @@
|
|
|
1
|
-
import type { IDocumentOperationStorage, IDocumentStorage } from "document-drive";
|
|
2
1
|
import type { DocumentModelModule, UpgradeManifest } from "document-model";
|
|
3
|
-
import type { WriteCacheConfig } from "../cache/write-cache-types.js";
|
|
4
|
-
import type { IReadModel, IReadModelCoordinator } from "../read-models/interfaces.js";
|
|
5
|
-
import type { SyncBuilder } from "../sync/sync-builder.js";
|
|
6
|
-
import type { Database, ExecutorConfig, IReactor, ReactorFeatures, ReactorModule } from "./types.js";
|
|
7
|
-
import type { IJobExecutorManager } from "#executor/interfaces.js";
|
|
8
|
-
import type { ILogger } from "#logging/types.js";
|
|
9
2
|
import { Kysely } from "kysely";
|
|
3
|
+
import type { WriteCacheConfig } from "../cache/write-cache-types.js";
|
|
10
4
|
import type { IEventBus } from "../events/interfaces.js";
|
|
5
|
+
import type { IJobExecutorManager } from "../executor/interfaces.js";
|
|
6
|
+
import type { JobExecutorConfig } from "../executor/types.js";
|
|
7
|
+
import type { ILogger } from "../logging/types.js";
|
|
8
|
+
import type { IQueue } from "../queue/interfaces.js";
|
|
9
|
+
import type { IReadModel, IReadModelCoordinator } from "../read-models/interfaces.js";
|
|
10
|
+
import type { IDocumentModelLoader } from "../registry/interfaces.js";
|
|
11
11
|
import type { SignatureVerificationHandler } from "../signer/types.js";
|
|
12
12
|
import type { MigrationStrategy } from "../storage/migrations/types.js";
|
|
13
|
+
import { SyncBuilder } from "../sync/sync-builder.js";
|
|
14
|
+
import type { JwtHandler } from "../sync/types.js";
|
|
15
|
+
import { ChannelScheme } from "../sync/types.js";
|
|
16
|
+
import type { Database, IReactor, ReactorFeatures, ReactorModule } from "./types.js";
|
|
13
17
|
export declare class ReactorBuilder {
|
|
14
18
|
private logger?;
|
|
15
19
|
private documentModels;
|
|
16
20
|
private upgradeManifests;
|
|
17
|
-
private storage?;
|
|
18
21
|
private features;
|
|
19
22
|
private readModels;
|
|
20
23
|
private executorManager;
|
|
@@ -26,22 +29,32 @@ export declare class ReactorBuilder {
|
|
|
26
29
|
private readModelCoordinator?;
|
|
27
30
|
private signatureVerifier?;
|
|
28
31
|
private kyselyInstance?;
|
|
32
|
+
private signalHandlersEnabled;
|
|
33
|
+
private queueInstance?;
|
|
34
|
+
private channelScheme?;
|
|
35
|
+
private jwtHandler?;
|
|
36
|
+
private documentModelLoader?;
|
|
29
37
|
withLogger(logger: ILogger): this;
|
|
30
38
|
withDocumentModels(models: DocumentModelModule<any>[]): this;
|
|
31
39
|
withUpgradeManifests(manifests: UpgradeManifest<readonly number[]>[]): this;
|
|
32
|
-
withLegacyStorage(storage: IDocumentStorage & IDocumentOperationStorage): this;
|
|
33
40
|
withFeatures(features: ReactorFeatures): this;
|
|
34
41
|
withReadModel(readModel: IReadModel): this;
|
|
35
42
|
withReadModelCoordinator(readModelCoordinator: IReadModelCoordinator): this;
|
|
36
43
|
withExecutor(executor: IJobExecutorManager): this;
|
|
37
|
-
withExecutorConfig(config: Partial<
|
|
44
|
+
withExecutorConfig(config: Partial<JobExecutorConfig>): this;
|
|
38
45
|
withWriteCacheConfig(config: Partial<WriteCacheConfig>): this;
|
|
39
46
|
withMigrationStrategy(strategy: MigrationStrategy): this;
|
|
40
47
|
withSync(syncBuilder: SyncBuilder): this;
|
|
41
48
|
withEventBus(eventBus: IEventBus): this;
|
|
42
49
|
withSignatureVerifier(verifier: SignatureVerificationHandler): this;
|
|
43
50
|
withKysely(kysely: Kysely<Database>): this;
|
|
51
|
+
withQueue(queue: IQueue): this;
|
|
52
|
+
withChannelScheme(scheme: ChannelScheme): this;
|
|
53
|
+
withJwtHandler(handler: JwtHandler): this;
|
|
54
|
+
withDocumentModelLoader(loader: IDocumentModelLoader): this;
|
|
55
|
+
withSignalHandlers(): this;
|
|
44
56
|
build(): Promise<IReactor>;
|
|
45
57
|
buildModule(): Promise<ReactorModule>;
|
|
58
|
+
private attachSignalHandlers;
|
|
46
59
|
}
|
|
47
60
|
//# sourceMappingURL=reactor-builder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reactor-builder.d.ts","sourceRoot":"","sources":["../../../src/core/reactor-builder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"reactor-builder.d.ts","sourceRoot":"","sources":["../../../src/core/reactor-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import type { IEventBus } from "#events/interfaces.js";
|
|
2
|
-
import type { ILogger } from "#logging/types.js";
|
|
3
1
|
import type { ISigner } from "document-model";
|
|
4
2
|
import { ReactorClient } from "../client/reactor-client.js";
|
|
3
|
+
import type { IEventBus } from "../events/interfaces.js";
|
|
4
|
+
import type { ILogger } from "../logging/types.js";
|
|
5
5
|
import { type IJobAwaiter } from "../shared/awaiter.js";
|
|
6
6
|
import type { SignerConfig } from "../signer/types.js";
|
|
7
|
-
import type {
|
|
7
|
+
import type { IDocumentModelLoader } from "../registry/interfaces.js";
|
|
8
|
+
import type { IDocumentIndexer, IDocumentView } from "../storage/interfaces.js";
|
|
8
9
|
import type { IReactorSubscriptionManager } from "../subs/types.js";
|
|
9
10
|
import type { ReactorBuilder } from "./reactor-builder.js";
|
|
10
11
|
import type { IReactor, ReactorClientModule } from "./types.js";
|
|
@@ -17,10 +18,12 @@ export declare class ReactorClientBuilder {
|
|
|
17
18
|
private reactor?;
|
|
18
19
|
private eventBus?;
|
|
19
20
|
private documentIndexer?;
|
|
21
|
+
private documentView?;
|
|
20
22
|
private signer?;
|
|
21
23
|
private signatureVerifier?;
|
|
22
24
|
private subscriptionManager?;
|
|
23
25
|
private jobAwaiter?;
|
|
26
|
+
private documentModelLoader?;
|
|
24
27
|
/**
|
|
25
28
|
* Sets the logger for the ReactorClient.
|
|
26
29
|
* @param logger - The logger to use.
|
|
@@ -34,7 +37,7 @@ export declare class ReactorClientBuilder {
|
|
|
34
37
|
/**
|
|
35
38
|
* Either this or withReactorBuilder must be set.
|
|
36
39
|
*/
|
|
37
|
-
withReactor(reactor: IReactor, eventBus: IEventBus, documentIndexer: IDocumentIndexer): this;
|
|
40
|
+
withReactor(reactor: IReactor, eventBus: IEventBus, documentIndexer: IDocumentIndexer, documentView: IDocumentView): this;
|
|
38
41
|
/**
|
|
39
42
|
* Sets the signer configuration for signing and verifying actions.
|
|
40
43
|
*
|
|
@@ -43,6 +46,7 @@ export declare class ReactorClientBuilder {
|
|
|
43
46
|
withSigner(config: ISigner | SignerConfig): this;
|
|
44
47
|
withSubscriptionManager(subscriptionManager: IReactorSubscriptionManager): this;
|
|
45
48
|
withJobAwaiter(jobAwaiter: IJobAwaiter): this;
|
|
49
|
+
withDocumentModelLoader(loader: IDocumentModelLoader): this;
|
|
46
50
|
build(): Promise<ReactorClient>;
|
|
47
51
|
buildModule(): Promise<ReactorClientModule>;
|
|
48
52
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reactor-client-builder.d.ts","sourceRoot":"","sources":["../../../src/core/reactor-client-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"reactor-client-builder.d.ts","sourceRoot":"","sources":["../../../src/core/reactor-client-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAc,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,KAAK,EAEV,YAAY,EACb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAGhF,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,mBAAmB,EAAiB,MAAM,YAAY,CAAC;AAE/E;;GAEG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,MAAM,CAAC,CAAU;IACzB,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,OAAO,CAAC,CAAW;IAC3B,OAAO,CAAC,QAAQ,CAAC,CAAY;IAC7B,OAAO,CAAC,eAAe,CAAC,CAAmB;IAC3C,OAAO,CAAC,YAAY,CAAC,CAAgB;IACrC,OAAO,CAAC,MAAM,CAAC,CAAU;IACzB,OAAO,CAAC,iBAAiB,CAAC,CAA+B;IACzD,OAAO,CAAC,mBAAmB,CAAC,CAA8B;IAC1D,OAAO,CAAC,UAAU,CAAC,CAAc;IACjC,OAAO,CAAC,mBAAmB,CAAC,CAAuB;IAEnD;;;;OAIG;IACI,UAAU,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAKxC;;OAEG;IACI,kBAAkB,CAAC,cAAc,EAAE,cAAc,GAAG,IAAI;IAS/D;;OAEG;IACI,WAAW,CAChB,OAAO,EAAE,QAAQ,EACjB,QAAQ,EAAE,SAAS,EACnB,eAAe,EAAE,gBAAgB,EACjC,YAAY,EAAE,aAAa,GAC1B,IAAI;IAYP;;;;OAIG;IACI,UAAU,CAAC,MAAM,EAAE,OAAO,GAAG,YAAY,GAAG,IAAI;IAUhD,uBAAuB,CAC5B,mBAAmB,EAAE,2BAA2B,GAC/C,IAAI;IAKA,cAAc,CAAC,UAAU,EAAE,WAAW,GAAG,IAAI;IAK7C,uBAAuB,CAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI;IAKrD,KAAK,IAAI,OAAO,CAAC,aAAa,CAAC;IAK/B,WAAW,IAAI,OAAO,CAAC,mBAAmB,CAAC;CA2EzD"}
|