@powerhousedao/reactor 6.0.0-dev.13 → 6.0.0-dev.130
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/index.d.ts +4320 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +9442 -0
- package/dist/index.js.map +1 -0
- package/package.json +21 -20
- package/dist/src/actions/index.d.ts +0 -24
- package/dist/src/actions/index.d.ts.map +0 -1
- package/dist/src/actions/index.js +0 -76
- package/dist/src/actions/index.js.map +0 -1
- package/dist/src/cache/buffer/ring-buffer.d.ts +0 -37
- package/dist/src/cache/buffer/ring-buffer.d.ts.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.d.ts +0 -114
- package/dist/src/cache/document-meta-cache-types.d.ts.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.d.ts +0 -30
- package/dist/src/cache/document-meta-cache.d.ts.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.d.ts +0 -3
- package/dist/src/cache/index.d.ts.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.d.ts +0 -15
- package/dist/src/cache/kysely-operation-index.d.ts.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.d.ts +0 -134
- package/dist/src/cache/kysely-write-cache.d.ts.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.d.ts +0 -15
- package/dist/src/cache/lru/lru-tracker.d.ts.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.d.ts +0 -50
- package/dist/src/cache/operation-index-types.d.ts.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.d.ts +0 -83
- package/dist/src/cache/write/interfaces.d.ts.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.d.ts +0 -42
- package/dist/src/cache/write-cache-types.d.ts.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.d.ts +0 -117
- package/dist/src/client/reactor-client.d.ts.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.d.ts +0 -241
- package/dist/src/client/types.d.ts.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.d.ts +0 -47
- package/dist/src/core/reactor-builder.d.ts.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.d.ts +0 -49
- package/dist/src/core/reactor-client-builder.d.ts.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.d.ts +0 -116
- package/dist/src/core/reactor.d.ts.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.d.ts +0 -276
- package/dist/src/core/types.d.ts.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.d.ts +0 -59
- package/dist/src/core/utils.d.ts.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.d.ts +0 -8
- package/dist/src/events/event-bus.d.ts.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.d.ts +0 -27
- package/dist/src/events/interfaces.d.ts.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.d.ts +0 -67
- package/dist/src/events/types.d.ts.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.d.ts +0 -49
- package/dist/src/executor/interfaces.d.ts.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.d.ts +0 -34
- package/dist/src/executor/simple-job-executor-manager.d.ts.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.d.ts +0 -80
- package/dist/src/executor/simple-job-executor.d.ts.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.d.ts +0 -93
- package/dist/src/executor/types.d.ts.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.d.ts +0 -74
- package/dist/src/executor/util.d.ts.map +0 -1
- package/dist/src/executor/util.js +0 -184
- package/dist/src/executor/util.js.map +0 -1
- package/dist/src/index.d.ts +0 -53
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/index.js +0 -62
- package/dist/src/index.js.map +0 -1
- package/dist/src/job-tracker/in-memory-job-tracker.d.ts +0 -25
- package/dist/src/job-tracker/in-memory-job-tracker.d.ts.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.d.ts +0 -3
- package/dist/src/job-tracker/index.d.ts.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.d.ts +0 -39
- package/dist/src/job-tracker/interfaces.d.ts.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.d.ts +0 -23
- package/dist/src/logging/console.d.ts.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.d.ts +0 -12
- package/dist/src/logging/types.d.ts.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.d.ts +0 -3
- package/dist/src/processors/index.d.ts.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.d.ts +0 -38
- package/dist/src/processors/processor-manager.d.ts.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.d.ts +0 -10
- package/dist/src/processors/utils.d.ts.map +0 -1
- package/dist/src/processors/utils.js +0 -59
- package/dist/src/processors/utils.js.map +0 -1
- package/dist/src/queue/interfaces.d.ts +0 -103
- package/dist/src/queue/interfaces.d.ts.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.d.ts +0 -25
- package/dist/src/queue/job-execution-handle.d.ts.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.d.ts +0 -81
- package/dist/src/queue/queue.d.ts.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.d.ts +0 -73
- package/dist/src/queue/types.d.ts.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.d.ts +0 -60
- package/dist/src/read-models/base-read-model.d.ts.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.d.ts +0 -39
- package/dist/src/read-models/coordinator.d.ts.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.d.ts +0 -24
- package/dist/src/read-models/document-view.d.ts.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.d.ts +0 -29
- package/dist/src/read-models/interfaces.d.ts.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.d.ts +0 -47
- package/dist/src/read-models/types.d.ts.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.d.ts +0 -70
- package/dist/src/registry/implementation.d.ts.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.d.ts +0 -3
- package/dist/src/registry/index.d.ts.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.d.ts +0 -100
- package/dist/src/registry/interfaces.d.ts.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.d.ts +0 -35
- package/dist/src/shared/awaiter.d.ts.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.d.ts +0 -48
- package/dist/src/shared/consistency-tracker.d.ts.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/drive-url.d.ts +0 -15
- package/dist/src/shared/drive-url.d.ts.map +0 -1
- package/dist/src/shared/drive-url.js +0 -17
- package/dist/src/shared/drive-url.js.map +0 -1
- package/dist/src/shared/errors.d.ts +0 -41
- package/dist/src/shared/errors.d.ts.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.d.ts +0 -16
- package/dist/src/shared/factories.d.ts.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.d.ts +0 -135
- package/dist/src/shared/types.d.ts.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.d.ts +0 -3
- package/dist/src/shared/utils.d.ts.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.d.ts +0 -12
- package/dist/src/signer/passthrough-signer.d.ts.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.d.ts +0 -17
- package/dist/src/signer/types.d.ts.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.d.ts +0 -4
- package/dist/src/storage/index.d.ts.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.d.ts +0 -439
- package/dist/src/storage/interfaces.d.ts.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.d.ts +0 -28
- package/dist/src/storage/kysely/document-indexer.d.ts.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.d.ts +0 -15
- package/dist/src/storage/kysely/keyframe-store.d.ts.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.d.ts +0 -16
- package/dist/src/storage/kysely/store.d.ts.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.d.ts +0 -13
- package/dist/src/storage/kysely/sync-cursor-storage.d.ts.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.d.ts +0 -13
- package/dist/src/storage/kysely/sync-remote-storage.d.ts.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.d.ts +0 -135
- package/dist/src/storage/kysely/types.d.ts.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.d.ts +0 -3
- package/dist/src/storage/migrations/001_create_operation_table.d.ts.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.d.ts +0 -3
- package/dist/src/storage/migrations/002_create_keyframe_table.d.ts.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.d.ts +0 -3
- package/dist/src/storage/migrations/003_create_document_table.d.ts.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.d.ts +0 -3
- package/dist/src/storage/migrations/004_create_document_relationship_table.d.ts.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.d.ts +0 -3
- package/dist/src/storage/migrations/005_create_indexer_state_table.d.ts.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.d.ts +0 -3
- package/dist/src/storage/migrations/006_create_document_snapshot_table.d.ts.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.d.ts +0 -3
- package/dist/src/storage/migrations/007_create_slug_mapping_table.d.ts.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.d.ts +0 -3
- package/dist/src/storage/migrations/008_create_view_state_table.d.ts.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.d.ts +0 -3
- package/dist/src/storage/migrations/009_create_operation_index_tables.d.ts.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.d.ts +0 -3
- package/dist/src/storage/migrations/010_create_sync_tables.d.ts.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.d.ts +0 -3
- package/dist/src/storage/migrations/index.d.ts.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.d.ts +0 -6
- package/dist/src/storage/migrations/migrator.d.ts.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.d.ts +0 -2
- package/dist/src/storage/migrations/run-migrations.d.ts.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.d.ts +0 -9
- package/dist/src/storage/migrations/types.d.ts.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.d.ts +0 -15
- package/dist/src/storage/txn.d.ts.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.d.ts +0 -13
- package/dist/src/subs/default-error-handler.d.ts.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.d.ts +0 -45
- package/dist/src/subs/react-subscription-manager.d.ts.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.d.ts +0 -17
- package/dist/src/subs/subscription-notification-read-model.d.ts.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.d.ts +0 -64
- package/dist/src/subs/types.d.ts.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.d.ts +0 -6
- package/dist/src/sync/channels/index.d.ts.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.d.ts +0 -30
- package/dist/src/sync/channels/utils.d.ts.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.d.ts +0 -10
- package/dist/src/sync/errors.d.ts.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.d.ts +0 -12
- package/dist/src/sync/index.d.ts.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.d.ts +0 -180
- package/dist/src/sync/interfaces.d.ts.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.d.ts +0 -21
- package/dist/src/sync/mailbox.d.ts.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.d.ts +0 -19
- package/dist/src/sync/sync-builder.d.ts.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.d.ts +0 -37
- package/dist/src/sync/sync-manager.d.ts.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.d.ts +0 -28
- package/dist/src/sync/sync-operation.d.ts.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.d.ts +0 -60
- package/dist/src/sync/types.d.ts.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.d.ts +0 -36
- package/dist/src/sync/utils.d.ts.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.d.ts +0 -30
- package/dist/src/utils/reshuffle.d.ts.map +0 -1
- package/dist/src/utils/reshuffle.js +0 -47
- package/dist/src/utils/reshuffle.js.map +0 -1
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import type { PHDocumentHeader } from "document-model";
|
|
2
|
-
import type { OperationWithContext } from "../storage/interfaces.js";
|
|
3
|
-
/**
|
|
4
|
-
* Filter for matching operations to processors.
|
|
5
|
-
* All fields are optional arrays - when provided, operations must match at least one value in each specified field.
|
|
6
|
-
* When a field is undefined or empty, it matches all values for that field.
|
|
7
|
-
*/
|
|
8
|
-
export type ProcessorFilter = {
|
|
9
|
-
documentType?: string[];
|
|
10
|
-
scope?: string[];
|
|
11
|
-
branch?: string[];
|
|
12
|
-
documentId?: string[];
|
|
13
|
-
};
|
|
14
|
-
/**
|
|
15
|
-
* Describes an object that can process operations.
|
|
16
|
-
*/
|
|
17
|
-
export interface IProcessor {
|
|
18
|
-
/**
|
|
19
|
-
* Processes a list of operations with context.
|
|
20
|
-
* Called when operations match this processor's filter.
|
|
21
|
-
*/
|
|
22
|
-
onOperations(operations: OperationWithContext[]): Promise<void>;
|
|
23
|
-
/**
|
|
24
|
-
* Called when the processor is disconnected.
|
|
25
|
-
* Used to clean up any resources allocated during processor creation.
|
|
26
|
-
*/
|
|
27
|
-
onDisconnect(): Promise<void>;
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Relates a processor to its filter configuration.
|
|
31
|
-
*/
|
|
32
|
-
export type ProcessorRecord = {
|
|
33
|
-
processor: IProcessor;
|
|
34
|
-
filter: ProcessorFilter;
|
|
35
|
-
};
|
|
36
|
-
/**
|
|
37
|
-
* A factory function that creates processor records for a given drive.
|
|
38
|
-
* Called once per drive when the drive is first detected or when the factory is registered.
|
|
39
|
-
*/
|
|
40
|
-
export type ProcessorFactory = (driveHeader: PHDocumentHeader) => ProcessorRecord[] | Promise<ProcessorRecord[]>;
|
|
41
|
-
/**
|
|
42
|
-
* Manages processor creation and destruction based on drive operations.
|
|
43
|
-
*/
|
|
44
|
-
export interface IProcessorManager {
|
|
45
|
-
/**
|
|
46
|
-
* Registers a processor factory.
|
|
47
|
-
* Immediately creates processors for all existing drives.
|
|
48
|
-
*/
|
|
49
|
-
registerFactory(identifier: string, factory: ProcessorFactory): Promise<void>;
|
|
50
|
-
/**
|
|
51
|
-
* Unregisters a processor factory and disconnects all processors it created.
|
|
52
|
-
*/
|
|
53
|
-
unregisterFactory(identifier: string): Promise<void>;
|
|
54
|
-
/**
|
|
55
|
-
* Gets all registered factory identifiers.
|
|
56
|
-
*/
|
|
57
|
-
getFactoryIdentifiers(): string[];
|
|
58
|
-
/**
|
|
59
|
-
* Gets all processor records for a specific drive.
|
|
60
|
-
*/
|
|
61
|
-
getProcessorsForDrive(driveId: string): ProcessorRecord[];
|
|
62
|
-
}
|
|
63
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/processors/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAErE;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB;;;OAGG;IACH,YAAY,CAAC,UAAU,EAAE,oBAAoB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhE;;;OAGG;IACH,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,SAAS,EAAE,UAAU,CAAC;IACtB,MAAM,EAAE,eAAe,CAAC;CACzB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAC7B,WAAW,EAAE,gBAAgB,KAC1B,eAAe,EAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9E;;OAEG;IACH,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAErD;;OAEG;IACH,qBAAqB,IAAI,MAAM,EAAE,CAAC;IAElC;;OAEG;IACH,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,EAAE,CAAC;CAC3D"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/processors/types.ts"],"names":[],"mappings":""}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import type { PHDocumentHeader } from "document-model";
|
|
2
|
-
import type { OperationWithContext } from "../storage/interfaces.js";
|
|
3
|
-
import type { ProcessorFilter } from "./types.js";
|
|
4
|
-
export declare function isDriveCreation(op: OperationWithContext): boolean;
|
|
5
|
-
export declare function isDriveDeletion(op: OperationWithContext): boolean;
|
|
6
|
-
export declare function extractDriveHeader(op: OperationWithContext): PHDocumentHeader | undefined;
|
|
7
|
-
export declare function extractDeletedDocumentId(op: OperationWithContext): string | undefined;
|
|
8
|
-
export declare function createMinimalDriveHeader(driveId: string): PHDocumentHeader;
|
|
9
|
-
export declare function matchesFilter(op: OperationWithContext, filter: ProcessorFilter): boolean;
|
|
10
|
-
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/processors/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAIlD,wBAAgB,eAAe,CAAC,EAAE,EAAE,oBAAoB,GAAG,OAAO,CAKjE;AAED,wBAAgB,eAAe,CAAC,EAAE,EAAE,oBAAoB,GAAG,OAAO,CAEjE;AAED,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,oBAAoB,GACvB,gBAAgB,GAAG,SAAS,CAQ9B;AAED,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,oBAAoB,GACvB,MAAM,GAAG,SAAS,CAGpB;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,CAe1E;AAED,wBAAgB,aAAa,CAC3B,EAAE,EAAE,oBAAoB,EACxB,MAAM,EAAE,eAAe,GACtB,OAAO,CA2BT"}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
const DRIVE_DOCUMENT_TYPE = "powerhouse/document-drive";
|
|
2
|
-
export function isDriveCreation(op) {
|
|
3
|
-
return (op.operation.action.type === "CREATE_DOCUMENT" &&
|
|
4
|
-
op.context.documentType === DRIVE_DOCUMENT_TYPE);
|
|
5
|
-
}
|
|
6
|
-
export function isDriveDeletion(op) {
|
|
7
|
-
return op.operation.action.type === "DELETE_DOCUMENT";
|
|
8
|
-
}
|
|
9
|
-
export function extractDriveHeader(op) {
|
|
10
|
-
if (!op.context.resultingState)
|
|
11
|
-
return undefined;
|
|
12
|
-
const state = JSON.parse(op.context.resultingState);
|
|
13
|
-
return state.header;
|
|
14
|
-
}
|
|
15
|
-
export function extractDeletedDocumentId(op) {
|
|
16
|
-
const input = op.operation.action.input;
|
|
17
|
-
return input.documentId ?? op.context.documentId;
|
|
18
|
-
}
|
|
19
|
-
export function createMinimalDriveHeader(driveId) {
|
|
20
|
-
return {
|
|
21
|
-
id: driveId,
|
|
22
|
-
documentType: DRIVE_DOCUMENT_TYPE,
|
|
23
|
-
sig: {
|
|
24
|
-
publicKey: {},
|
|
25
|
-
nonce: "",
|
|
26
|
-
},
|
|
27
|
-
slug: "",
|
|
28
|
-
name: "",
|
|
29
|
-
branch: "main",
|
|
30
|
-
revision: {},
|
|
31
|
-
createdAtUtcIso: new Date().toISOString(),
|
|
32
|
-
lastModifiedAtUtcIso: new Date().toISOString(),
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
export function matchesFilter(op, filter) {
|
|
36
|
-
if (filter.documentType && filter.documentType.length > 0) {
|
|
37
|
-
if (!filter.documentType.includes(op.context.documentType)) {
|
|
38
|
-
return false;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
if (filter.scope && filter.scope.length > 0) {
|
|
42
|
-
if (!filter.scope.includes(op.context.scope)) {
|
|
43
|
-
return false;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
if (filter.branch && filter.branch.length > 0) {
|
|
47
|
-
if (!filter.branch.includes(op.context.branch)) {
|
|
48
|
-
return false;
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
if (filter.documentId && filter.documentId.length > 0) {
|
|
52
|
-
const hasWildcard = filter.documentId.includes("*");
|
|
53
|
-
if (!hasWildcard && !filter.documentId.includes(op.context.documentId)) {
|
|
54
|
-
return false;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
return true;
|
|
58
|
-
}
|
|
59
|
-
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/processors/utils.ts"],"names":[],"mappings":"AAIA,MAAM,mBAAmB,GAAG,2BAA2B,CAAC;AAExD,MAAM,UAAU,eAAe,CAAC,EAAwB;IACtD,OAAO,CACL,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,KAAK,iBAAiB;QAC9C,EAAE,CAAC,OAAO,CAAC,YAAY,KAAK,mBAAmB,CAChD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,EAAwB;IACtD,OAAO,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,KAAK,iBAAiB,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,EAAwB;IAExB,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc;QAAE,OAAO,SAAS,CAAC;IAEjD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,CAGjD,CAAC;IACF,OAAO,KAAK,CAAC,MAAsC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,EAAwB;IAExB,MAAM,KAAK,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,KAAgC,CAAC;IACnE,OAAO,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,OAAe;IACtD,OAAO;QACL,EAAE,EAAE,OAAO;QACX,YAAY,EAAE,mBAAmB;QACjC,GAAG,EAAE;YACH,SAAS,EAAE,EAAE;YACb,KAAK,EAAE,EAAE;SACV;QACD,IAAI,EAAE,EAAE;QACR,IAAI,EAAE,EAAE;QACR,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,EAAE;QACZ,eAAe,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACzC,oBAAoB,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KAC/C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,EAAwB,EACxB,MAAuB;IAEvB,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1D,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;YAC3D,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7C,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/C,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtD,MAAM,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACpD,IAAI,CAAC,WAAW,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YACvE,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
import type { ErrorInfo } from "../shared/types.js";
|
|
2
|
-
import type { IJobExecutionHandle, Job } from "./types.js";
|
|
3
|
-
/**
|
|
4
|
-
* Interface for a job queue that manages write operations.
|
|
5
|
-
* Internally organizes jobs by documentId, scope, and branch to ensure proper ordering.
|
|
6
|
-
* Emits events to the event bus when new jobs are available for consumption.
|
|
7
|
-
*/
|
|
8
|
-
export interface IQueue {
|
|
9
|
-
/**
|
|
10
|
-
* Add a new job to the queue.
|
|
11
|
-
* Jobs are automatically organized by documentId, scope, and branch internally.
|
|
12
|
-
* Emits a 'jobAvailable' event to the event bus when the job is queued.
|
|
13
|
-
* @param job - The job to add to the queue
|
|
14
|
-
* @returns Promise that resolves when the job is queued
|
|
15
|
-
*/
|
|
16
|
-
enqueue(job: Job): Promise<void>;
|
|
17
|
-
/**
|
|
18
|
-
* Get the next job to execute for a specific document/scope/branch combination.
|
|
19
|
-
* @param documentId - The document ID to get jobs for
|
|
20
|
-
* @param scope - The scope to get jobs for
|
|
21
|
-
* @param branch - The branch to get jobs for
|
|
22
|
-
* @param signal - Optional abort signal to cancel the request
|
|
23
|
-
* @returns Promise that resolves to the next job execution handle or null if no jobs available
|
|
24
|
-
*/
|
|
25
|
-
dequeue(documentId: string, scope: string, branch: string, signal?: AbortSignal): Promise<IJobExecutionHandle | null>;
|
|
26
|
-
/**
|
|
27
|
-
* Get the next available job from any queue.
|
|
28
|
-
* @param signal - Optional abort signal to cancel the request
|
|
29
|
-
* @returns Promise that resolves to the next job execution handle or null if no jobs available
|
|
30
|
-
*/
|
|
31
|
-
dequeueNext(signal?: AbortSignal): Promise<IJobExecutionHandle | null>;
|
|
32
|
-
/**
|
|
33
|
-
* Get the current size of the queue for a specific document/scope/branch.
|
|
34
|
-
* @param documentId - The document ID
|
|
35
|
-
* @param scope - The scope
|
|
36
|
-
* @param branch - The branch
|
|
37
|
-
* @returns Promise that resolves to the number of jobs in the queue
|
|
38
|
-
*/
|
|
39
|
-
size(documentId: string, scope: string, branch: string): Promise<number>;
|
|
40
|
-
/**
|
|
41
|
-
* Get the total size of all queues.
|
|
42
|
-
* @returns Promise that resolves to the total number of jobs across all queues
|
|
43
|
-
*/
|
|
44
|
-
totalSize(): Promise<number>;
|
|
45
|
-
/**
|
|
46
|
-
* Remove a specific job from the queue.
|
|
47
|
-
* @param jobId - The ID of the job to remove
|
|
48
|
-
* @returns Promise that resolves to true if job was removed, false if not found
|
|
49
|
-
*/
|
|
50
|
-
remove(jobId: string): Promise<boolean>;
|
|
51
|
-
/**
|
|
52
|
-
* Clear all jobs for a specific document/scope/branch combination.
|
|
53
|
-
* @param documentId - The document ID
|
|
54
|
-
* @param scope - The scope
|
|
55
|
-
* @param branch - The branch
|
|
56
|
-
* @returns Promise that resolves when the queue is cleared
|
|
57
|
-
*/
|
|
58
|
-
clear(documentId: string, scope: string, branch: string): Promise<void>;
|
|
59
|
-
/**
|
|
60
|
-
* Clear all jobs from all queues.
|
|
61
|
-
* @returns Promise that resolves when all queues are cleared
|
|
62
|
-
*/
|
|
63
|
-
clearAll(): Promise<void>;
|
|
64
|
-
/**
|
|
65
|
-
* Check if there are any jobs in the queue.
|
|
66
|
-
* @returns Promise that resolves to true if there are jobs, false otherwise
|
|
67
|
-
*/
|
|
68
|
-
hasJobs(): Promise<boolean>;
|
|
69
|
-
/**
|
|
70
|
-
* Mark a job as completed.
|
|
71
|
-
* @param jobId - The ID of the job to mark as completed
|
|
72
|
-
* @returns Promise that resolves when the job is marked as completed
|
|
73
|
-
*/
|
|
74
|
-
completeJob(jobId: string): Promise<void>;
|
|
75
|
-
/**
|
|
76
|
-
* Mark a job as failed.
|
|
77
|
-
* @param jobId - The ID of the job to mark as failed
|
|
78
|
-
* @param error - Optional error information
|
|
79
|
-
* @returns Promise that resolves when the job is marked as failed
|
|
80
|
-
*/
|
|
81
|
-
failJob(jobId: string, error?: ErrorInfo): Promise<void>;
|
|
82
|
-
/**
|
|
83
|
-
* Retry a failed job.
|
|
84
|
-
* @param jobId - The ID of the job to retry
|
|
85
|
-
* @param error - Optional error information from the failure
|
|
86
|
-
* @returns Promise that resolves when the job is requeued for retry
|
|
87
|
-
*/
|
|
88
|
-
retryJob(jobId: string, error?: ErrorInfo): Promise<void>;
|
|
89
|
-
/**
|
|
90
|
-
* Returns true if and only if all jobs have been resolved.
|
|
91
|
-
*/
|
|
92
|
-
get isDrained(): boolean;
|
|
93
|
-
/**
|
|
94
|
-
* Blocks the queue from accepting new jobs.
|
|
95
|
-
* @param onDrained - Optional callback to call when the queue is drained
|
|
96
|
-
*/
|
|
97
|
-
block(onDrained?: () => void): void;
|
|
98
|
-
/**
|
|
99
|
-
* Unblocks the queue from accepting new jobs.
|
|
100
|
-
*/
|
|
101
|
-
unblock(): void;
|
|
102
|
-
}
|
|
103
|
-
//# sourceMappingURL=interfaces.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/queue/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,mBAAmB,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAE3D;;;;GAIG;AACH,MAAM,WAAW,MAAM;IACrB;;;;;;OAMG;IACH,OAAO,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjC;;;;;;;OAOG;IACH,OAAO,CACL,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAC;IAEvC;;;;OAIG;IACH,WAAW,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAC;IAEvE;;;;;;OAMG;IACH,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEzE;;;OAGG;IACH,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAE7B;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAExC;;;;;;OAMG;IACH,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAExE;;;OAGG;IACH,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1B;;;OAGG;IACH,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAE5B;;;;OAIG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1C;;;;;OAKG;IACH,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzD;;;;;OAKG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1D;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAAC;IAEzB;;;OAGG;IACH,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IAEpC;;OAEG;IACH,OAAO,IAAI,IAAI,CAAC;CACjB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/queue/interfaces.ts"],"names":[],"mappings":""}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import type { ErrorInfo } from "../shared/types.js";
|
|
2
|
-
import type { IJobExecutionHandle, Job } from "./types.js";
|
|
3
|
-
import { JobQueueState } from "./types.js";
|
|
4
|
-
/**
|
|
5
|
-
* Implementation of the IJobExecutionHandle interface
|
|
6
|
-
*/
|
|
7
|
-
export declare class JobExecutionHandle implements IJobExecutionHandle {
|
|
8
|
-
private _state;
|
|
9
|
-
private _job;
|
|
10
|
-
private onStart?;
|
|
11
|
-
private onComplete?;
|
|
12
|
-
private onFail?;
|
|
13
|
-
private getStateName;
|
|
14
|
-
constructor(job: Job, initialState: JobQueueState, callbacks?: {
|
|
15
|
-
onStart?: () => void;
|
|
16
|
-
onComplete?: () => void;
|
|
17
|
-
onFail?: (error: ErrorInfo) => void;
|
|
18
|
-
});
|
|
19
|
-
get job(): Job;
|
|
20
|
-
get state(): JobQueueState;
|
|
21
|
-
start(): void;
|
|
22
|
-
complete(): void;
|
|
23
|
-
fail(error: ErrorInfo): void;
|
|
24
|
-
}
|
|
25
|
-
//# sourceMappingURL=job-execution-handle.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"job-execution-handle.d.ts","sourceRoot":"","sources":["../../../src/queue/job-execution-handle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,mBAAmB,EAAE,GAAG,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C;;GAEG;AACH,qBAAa,kBAAmB,YAAW,mBAAmB;IAC5D,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,IAAI,CAAM;IAClB,OAAO,CAAC,OAAO,CAAC,CAAa;IAC7B,OAAO,CAAC,UAAU,CAAC,CAAa;IAChC,OAAO,CAAC,MAAM,CAAC,CAA6B;IAE5C,OAAO,CAAC,YAAY;gBAkBlB,GAAG,EAAE,GAAG,EACR,YAAY,EAAE,aAAa,EAC3B,SAAS,CAAC,EAAE;QACV,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,IAAI,CAAC;QACxB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;KACrC;IASH,IAAI,GAAG,IAAI,GAAG,CAEb;IAED,IAAI,KAAK,IAAI,aAAa,CAEzB;IAED,KAAK,IAAI,IAAI;IAUb,QAAQ,IAAI,IAAI;IAUhB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;CAS7B"}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { JobQueueState } from "./types.js";
|
|
2
|
-
/**
|
|
3
|
-
* Implementation of the IJobExecutionHandle interface
|
|
4
|
-
*/
|
|
5
|
-
export class JobExecutionHandle {
|
|
6
|
-
_state;
|
|
7
|
-
_job;
|
|
8
|
-
onStart;
|
|
9
|
-
onComplete;
|
|
10
|
-
onFail;
|
|
11
|
-
getStateName(state) {
|
|
12
|
-
switch (state) {
|
|
13
|
-
case JobQueueState.PREPROCESSING:
|
|
14
|
-
return "PREPROCESSING";
|
|
15
|
-
case JobQueueState.PENDING:
|
|
16
|
-
return "PENDING";
|
|
17
|
-
case JobQueueState.READY:
|
|
18
|
-
return "READY";
|
|
19
|
-
case JobQueueState.RUNNING:
|
|
20
|
-
return "RUNNING";
|
|
21
|
-
case JobQueueState.RESOLVED:
|
|
22
|
-
return "RESOLVED";
|
|
23
|
-
default:
|
|
24
|
-
return `UNKNOWN`;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
constructor(job, initialState, callbacks) {
|
|
28
|
-
this._job = job;
|
|
29
|
-
this._state = initialState;
|
|
30
|
-
this.onStart = callbacks?.onStart;
|
|
31
|
-
this.onComplete = callbacks?.onComplete;
|
|
32
|
-
this.onFail = callbacks?.onFail;
|
|
33
|
-
}
|
|
34
|
-
get job() {
|
|
35
|
-
return this._job;
|
|
36
|
-
}
|
|
37
|
-
get state() {
|
|
38
|
-
return this._state;
|
|
39
|
-
}
|
|
40
|
-
start() {
|
|
41
|
-
if (this._state !== JobQueueState.READY) {
|
|
42
|
-
throw new Error(`Cannot start job in state ${this.getStateName(this._state)}`);
|
|
43
|
-
}
|
|
44
|
-
this._state = JobQueueState.RUNNING;
|
|
45
|
-
this.onStart?.();
|
|
46
|
-
}
|
|
47
|
-
complete() {
|
|
48
|
-
if (this._state !== JobQueueState.RUNNING) {
|
|
49
|
-
throw new Error(`Cannot complete job in state ${this.getStateName(this._state)}`);
|
|
50
|
-
}
|
|
51
|
-
this._state = JobQueueState.RESOLVED;
|
|
52
|
-
this.onComplete?.();
|
|
53
|
-
}
|
|
54
|
-
fail(error) {
|
|
55
|
-
if (this._state !== JobQueueState.RUNNING) {
|
|
56
|
-
throw new Error(`Cannot fail job in state ${this.getStateName(this._state)}`);
|
|
57
|
-
}
|
|
58
|
-
this._state = JobQueueState.RESOLVED;
|
|
59
|
-
this.onFail?.(error);
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
//# sourceMappingURL=job-execution-handle.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"job-execution-handle.js","sourceRoot":"","sources":["../../../src/queue/job-execution-handle.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3C;;GAEG;AACH,MAAM,OAAO,kBAAkB;IACrB,MAAM,CAAgB;IACtB,IAAI,CAAM;IACV,OAAO,CAAc;IACrB,UAAU,CAAc;IACxB,MAAM,CAA8B;IAEpC,YAAY,CAAC,KAAoB;QACvC,QAAQ,KAAK,EAAE,CAAC;YACd,KAAK,aAAa,CAAC,aAAa;gBAC9B,OAAO,eAAe,CAAC;YACzB,KAAK,aAAa,CAAC,OAAO;gBACxB,OAAO,SAAS,CAAC;YACnB,KAAK,aAAa,CAAC,KAAK;gBACtB,OAAO,OAAO,CAAC;YACjB,KAAK,aAAa,CAAC,OAAO;gBACxB,OAAO,SAAS,CAAC;YACnB,KAAK,aAAa,CAAC,QAAQ;gBACzB,OAAO,UAAU,CAAC;YACpB;gBACE,OAAO,SAAS,CAAC;QACrB,CAAC;IACH,CAAC;IAED,YACE,GAAQ,EACR,YAA2B,EAC3B,SAIC;QAED,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAChB,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,SAAS,EAAE,OAAO,CAAC;QAClC,IAAI,CAAC,UAAU,GAAG,SAAS,EAAE,UAAU,CAAC;QACxC,IAAI,CAAC,MAAM,GAAG,SAAS,EAAE,MAAM,CAAC;IAClC,CAAC;IAED,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,CAAC,KAAK,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CACb,6BAA6B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAC9D,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC;QACpC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;IACnB,CAAC;IAED,QAAQ;QACN,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,CAAC,OAAO,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CACb,gCAAgC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CACjE,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC;QACrC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;IACtB,CAAC;IAED,IAAI,CAAC,KAAgB;QACnB,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,CAAC,OAAO,EAAE,CAAC;YAC1C,MAAM,IAAI,KAAK,CACb,4BAA4B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAC7D,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC;QACrC,IAAI,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;CACF"}
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import type { IEventBus } from "../events/interfaces.js";
|
|
2
|
-
import type { ErrorInfo } from "../shared/types.js";
|
|
3
|
-
import type { IQueue } from "./interfaces.js";
|
|
4
|
-
import type { IJobExecutionHandle, Job } from "./types.js";
|
|
5
|
-
/**
|
|
6
|
-
* In-memory implementation of the IQueue interface.
|
|
7
|
-
* Organizes jobs by documentId, scope, and branch to ensure proper ordering.
|
|
8
|
-
* Ensures serial execution per document by tracking executing jobs.
|
|
9
|
-
* Implements dependency management through queue hints.
|
|
10
|
-
*/
|
|
11
|
-
export declare class InMemoryQueue implements IQueue {
|
|
12
|
-
private eventBus;
|
|
13
|
-
private queues;
|
|
14
|
-
private jobIdToQueueKey;
|
|
15
|
-
private docIdToJobId;
|
|
16
|
-
private jobIdToDocId;
|
|
17
|
-
private completedJobs;
|
|
18
|
-
private jobIndex;
|
|
19
|
-
private isBlocked;
|
|
20
|
-
private onDrainedCallback?;
|
|
21
|
-
constructor(eventBus: IEventBus);
|
|
22
|
-
private toErrorInfo;
|
|
23
|
-
/**
|
|
24
|
-
* Creates a unique key for a document/scope/branch combination
|
|
25
|
-
*/
|
|
26
|
-
private createQueueKey;
|
|
27
|
-
/**
|
|
28
|
-
* Gets or creates a queue for the given key
|
|
29
|
-
*/
|
|
30
|
-
private getQueue;
|
|
31
|
-
/**
|
|
32
|
-
* Check if a document has any jobs currently executing
|
|
33
|
-
*/
|
|
34
|
-
private isDocumentExecuting;
|
|
35
|
-
/**
|
|
36
|
-
* Mark a job as executing for its document
|
|
37
|
-
*/
|
|
38
|
-
private markJobExecuting;
|
|
39
|
-
/**
|
|
40
|
-
* Mark a job as no longer executing for its document
|
|
41
|
-
*/
|
|
42
|
-
private markJobComplete;
|
|
43
|
-
/**
|
|
44
|
-
* Check if all dependencies for a job have been completed
|
|
45
|
-
*/
|
|
46
|
-
private areDependenciesMet;
|
|
47
|
-
/**
|
|
48
|
-
* Get the next job that has all its dependencies met
|
|
49
|
-
*/
|
|
50
|
-
private getNextJobWithMetDependencies;
|
|
51
|
-
enqueue(job: Job): Promise<void>;
|
|
52
|
-
dequeue(documentId: string, scope: string, branch: string, signal?: AbortSignal): Promise<IJobExecutionHandle | null>;
|
|
53
|
-
dequeueNext(signal?: AbortSignal): Promise<IJobExecutionHandle | null>;
|
|
54
|
-
size(documentId: string, scope: string, branch: string): Promise<number>;
|
|
55
|
-
totalSize(): Promise<number>;
|
|
56
|
-
remove(jobId: string): Promise<boolean>;
|
|
57
|
-
clear(documentId: string, scope: string, branch: string): Promise<void>;
|
|
58
|
-
clearAll(): Promise<void>;
|
|
59
|
-
hasJobs(): Promise<boolean>;
|
|
60
|
-
completeJob(jobId: string): Promise<void>;
|
|
61
|
-
failJob(jobId: string, error?: ErrorInfo): Promise<void>;
|
|
62
|
-
retryJob(jobId: string, error?: ErrorInfo): Promise<void>;
|
|
63
|
-
/**
|
|
64
|
-
* Check if the queue is drained and call the callback if it is
|
|
65
|
-
*/
|
|
66
|
-
private checkDrained;
|
|
67
|
-
/**
|
|
68
|
-
* Returns true if and only if all jobs have been resolved.
|
|
69
|
-
*/
|
|
70
|
-
get isDrained(): boolean;
|
|
71
|
-
/**
|
|
72
|
-
* Blocks the queue from accepting new jobs.
|
|
73
|
-
* @param onDrained - Optional callback to call when the queue is drained
|
|
74
|
-
*/
|
|
75
|
-
block(onDrained?: () => void): void;
|
|
76
|
-
/**
|
|
77
|
-
* Unblocks the queue from accepting new jobs.
|
|
78
|
-
*/
|
|
79
|
-
unblock(): void;
|
|
80
|
-
}
|
|
81
|
-
//# sourceMappingURL=queue.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../../src/queue/queue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,GAAG,EAAqB,MAAM,YAAY,CAAC;AAG9E;;;;;GAKG;AACH,qBAAa,aAAc,YAAW,MAAM;IAU9B,OAAO,CAAC,QAAQ;IAT5B,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,eAAe,CAA6B;IACpD,OAAO,CAAC,YAAY,CAAkC;IACtD,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,QAAQ,CAA0B;IAC1C,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,iBAAiB,CAAC,CAAa;gBAEnB,QAAQ,EAAE,SAAS;IAEvC,OAAO,CAAC,WAAW;IAanB;;OAEG;IACH,OAAO,CAAC,cAAc;IAQtB;;OAEG;IACH,OAAO,CAAC,QAAQ;IAShB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAK3B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAUxB;;OAEG;IACH,OAAO,CAAC,eAAe;IAWvB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAO1B;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAS/B,OAAO,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IA2BtC,OAAO,CACL,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IAiDtC,WAAW,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IAqDtE,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAMxE,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC;IAQ5B,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAqCvC,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBvE,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAYzB,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IAOrB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBzC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IA4BxD,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAoC/D;;OAEG;IACH,OAAO,CAAC,YAAY;IAQpB;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAUvB;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS,CAAC,EAAE,MAAM,IAAI,GAAG,IAAI;IAQnC;;OAEG;IACH,OAAO,IAAI,IAAI;CAIhB"}
|