@abloatai/transaction 0.56.0 → 0.58.0
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/CONVENTIONS.md +54 -10
- package/README.md +3 -1
- package/dist/ai-sdk/modelTools.d.ts +3 -3
- package/dist/ai-sdk/modelTools.d.ts.map +1 -1
- package/dist/ai-sdk/modelTools.js +1 -1
- package/dist/ai-sdk/modelTools.js.map +1 -1
- package/dist/ai-sdk/updateTool.d.ts +5 -7
- package/dist/ai-sdk/updateTool.d.ts.map +1 -1
- package/dist/ai-sdk/updateTool.js +3 -5
- package/dist/ai-sdk/updateTool.js.map +1 -1
- package/dist/auth/capability.d.ts +5 -0
- package/dist/auth/capability.d.ts.map +1 -1
- package/dist/auth/capability.js +5 -0
- package/dist/auth/capability.js.map +1 -1
- package/dist/auth/capabilityLifecycle.d.ts +1 -1
- package/dist/auth/capabilityLifecycle.d.ts.map +1 -1
- package/dist/auth/credentialPolicy.d.ts +1 -1
- package/dist/auth/credentialPolicy.d.ts.map +1 -1
- package/dist/auth/identity.d.ts +3 -3
- package/dist/auth/identity.d.ts.map +1 -1
- package/dist/auth/identity.js +5 -5
- package/dist/auth/identity.js.map +1 -1
- package/dist/auth/index.d.ts +4 -208
- package/dist/auth/index.d.ts.map +1 -1
- package/dist/auth/index.js +4 -330
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/runtime.d.ts +218 -0
- package/dist/auth/runtime.d.ts.map +1 -0
- package/dist/auth/runtime.js +336 -0
- package/dist/auth/runtime.js.map +1 -0
- package/dist/auth/sessionMint.d.ts +1 -1
- package/dist/auth/sessionMint.d.ts.map +1 -1
- package/dist/auth/sessionMint.js +2 -1
- package/dist/auth/sessionMint.js.map +1 -1
- package/dist/branches.d.ts +25 -21
- package/dist/branches.d.ts.map +1 -1
- package/dist/branches.js +3 -0
- package/dist/branches.js.map +1 -1
- package/dist/{coordination/awaitClaimGrant.d.ts → claims/awaitGrant.d.ts} +1 -1
- package/dist/claims/awaitGrant.d.ts.map +1 -0
- package/dist/{coordination/awaitClaimGrant.js → claims/awaitGrant.js} +4 -4
- package/dist/claims/awaitGrant.js.map +1 -0
- package/dist/{wire/claims.d.ts → claims/contract.d.ts} +1 -1
- package/dist/claims/contract.d.ts.map +1 -0
- package/dist/{wire/claims.js → claims/contract.js} +2 -2
- package/dist/claims/contract.js.map +1 -0
- package/dist/{wire/claimEvent.d.ts → claims/eventContract.d.ts} +1 -1
- package/dist/claims/eventContract.d.ts.map +1 -0
- package/dist/{wire/claimEvent.js → claims/eventContract.js} +1 -1
- package/dist/claims/eventContract.js.map +1 -0
- package/dist/{coordination → claims}/events.d.ts +7 -11
- package/dist/claims/events.d.ts.map +1 -0
- package/dist/claims/events.js +8 -0
- package/dist/claims/events.js.map +1 -0
- package/dist/{coordination/claimHeartbeatLoop.d.ts → claims/heartbeat.d.ts} +1 -1
- package/dist/claims/heartbeat.d.ts.map +1 -0
- package/dist/{coordination/claimHeartbeatLoop.js → claims/heartbeat.js} +1 -1
- package/dist/claims/heartbeat.js.map +1 -0
- package/dist/claims/index.d.ts +17 -0
- package/dist/claims/index.d.ts.map +1 -0
- package/dist/claims/index.js +16 -0
- package/dist/claims/index.js.map +1 -0
- package/dist/claims/lifetime.d.ts +26 -0
- package/dist/claims/lifetime.d.ts.map +1 -0
- package/dist/claims/lifetime.js +62 -0
- package/dist/claims/lifetime.js.map +1 -0
- package/dist/{coordination → claims}/locator.d.ts +1 -1
- package/dist/claims/locator.d.ts.map +1 -0
- package/dist/{coordination → claims}/locator.js +2 -2
- package/dist/claims/locator.js.map +1 -0
- package/dist/{coordination/claimMeta.d.ts → claims/meta.d.ts} +1 -1
- package/dist/claims/meta.d.ts.map +1 -0
- package/dist/{coordination/claimMeta.js → claims/meta.js} +1 -1
- package/dist/claims/meta.js.map +1 -0
- package/dist/claims/routes.d.ts +59 -0
- package/dist/claims/routes.d.ts.map +1 -0
- package/dist/claims/routes.js +69 -0
- package/dist/claims/routes.js.map +1 -0
- package/dist/claims/targetConflict.d.ts.map +1 -0
- package/dist/claims/targetConflict.js.map +1 -0
- package/dist/{coordination → claims}/trace.d.ts +2 -2
- package/dist/claims/trace.d.ts.map +1 -0
- package/dist/{coordination → claims}/trace.js +5 -5
- package/dist/claims/trace.js.map +1 -0
- package/dist/{ablo.d.ts → client/ablo.d.ts} +6 -15
- package/dist/client/ablo.d.ts.map +1 -0
- package/dist/{ablo.js → client/ablo.js} +2 -2
- package/dist/client/ablo.js.map +1 -0
- package/dist/{transactionLayer.d.ts → client/contract.d.ts} +12 -14
- package/dist/client/contract.d.ts.map +1 -0
- package/dist/{transactionLayer.js → client/contract.js} +4 -5
- package/dist/client/contract.js.map +1 -0
- package/dist/{headlessClient.d.ts → client/headless.d.ts} +4 -4
- package/dist/client/headless.d.ts.map +1 -0
- package/dist/{headlessClient.js → client/headless.js} +8 -10
- package/dist/{headlessClient.js.map → client/headless.js.map} +1 -1
- package/dist/client/index.d.ts +11 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +11 -0
- package/dist/client/index.js.map +1 -0
- package/dist/{resources → client/resources}/functionalUpdate.d.ts +4 -4
- package/dist/client/resources/functionalUpdate.d.ts.map +1 -0
- package/dist/{resources → client/resources}/functionalUpdate.js +3 -3
- package/dist/client/resources/functionalUpdate.js.map +1 -0
- package/dist/{resources → client/resources}/httpResources.d.ts +92 -77
- package/dist/client/resources/httpResources.d.ts.map +1 -0
- package/dist/client/resources/httpResources.js +94 -0
- package/dist/client/resources/httpResources.js.map +1 -0
- package/dist/client/resources/modelCreate.d.ts +21 -0
- package/dist/client/resources/modelCreate.d.ts.map +1 -0
- package/dist/client/resources/modelCreate.js +49 -0
- package/dist/client/resources/modelCreate.js.map +1 -0
- package/dist/{resources → client/resources}/modelOperations.d.ts +57 -51
- package/dist/client/resources/modelOperations.d.ts.map +1 -0
- package/dist/{resources → client/resources}/modelOperations.js +1 -1
- package/dist/client/resources/modelOperations.js.map +1 -0
- package/dist/{resources → client/resources}/mutationOptions.d.ts +4 -17
- package/dist/client/resources/mutationOptions.d.ts.map +1 -0
- package/dist/client/resources/mutationOptions.js.map +1 -0
- package/dist/client/resources/where.d.ts.map +1 -0
- package/dist/{resources → client/resources}/where.js +1 -1
- package/dist/client/resources/where.js.map +1 -0
- package/dist/{resources → client/resources}/writeOptionsSchema.d.ts +16 -35
- package/dist/client/resources/writeOptionsSchema.d.ts.map +1 -0
- package/dist/{resources → client/resources}/writeOptionsSchema.js +25 -18
- package/dist/client/resources/writeOptionsSchema.js.map +1 -0
- package/dist/{transactions → commit}/confirmation/commitEnvelope.d.ts +1 -37
- package/dist/commit/confirmation/commitEnvelope.d.ts.map +1 -0
- package/dist/{transactions → commit}/confirmation/commitEnvelope.js +2 -7
- package/dist/commit/confirmation/commitEnvelope.js.map +1 -0
- package/dist/commit/confirmation/httpCommitEnvelope.d.ts.map +1 -0
- package/dist/{transactions → commit}/confirmation/httpCommitEnvelope.js +1 -1
- package/dist/commit/confirmation/httpCommitEnvelope.js.map +1 -0
- package/dist/commit/confirmation/idempotencyKey.d.ts.map +1 -0
- package/dist/commit/confirmation/idempotencyKey.js.map +1 -0
- package/dist/{transactions → commit}/confirmation/pendingWrite.d.ts +2 -33
- package/dist/commit/confirmation/pendingWrite.d.ts.map +1 -0
- package/dist/{transactions → commit}/confirmation/pendingWrite.js +1 -1
- package/dist/commit/confirmation/pendingWrite.js.map +1 -0
- package/dist/commit/contract.d.ts +1404 -0
- package/dist/commit/contract.d.ts.map +1 -0
- package/dist/{wire/commit.js → commit/contract.js} +26 -21
- package/dist/commit/contract.js.map +1 -0
- package/dist/{durableWrites.d.ts → commit/durableWrites.d.ts} +6 -6
- package/dist/commit/durableWrites.d.ts.map +1 -0
- package/dist/{durableWrites.js → commit/durableWrites.js} +5 -5
- package/dist/commit/durableWrites.js.map +1 -0
- package/dist/commit/httpRequest.d.ts +45 -0
- package/dist/commit/httpRequest.d.ts.map +1 -0
- package/dist/commit/httpRequest.js +66 -0
- package/dist/commit/httpRequest.js.map +1 -0
- package/dist/commit/index.d.ts +17 -0
- package/dist/commit/index.d.ts.map +1 -0
- package/dist/commit/index.js +17 -0
- package/dist/commit/index.js.map +1 -0
- package/dist/{readSetContext.d.ts → commit/readSetContext.d.ts} +7 -15
- package/dist/commit/readSetContext.d.ts.map +1 -0
- package/dist/{readSetContext.js → commit/readSetContext.js} +18 -28
- package/dist/commit/readSetContext.js.map +1 -0
- package/dist/{commitRecordRuntime.d.ts → commit/recordRuntime.d.ts} +3 -5
- package/dist/commit/recordRuntime.d.ts.map +1 -0
- package/dist/{commitRecordRuntime.js → commit/recordRuntime.js} +13 -54
- package/dist/commit/recordRuntime.js.map +1 -0
- package/dist/coordination/index.d.ts +6 -8
- package/dist/coordination/index.d.ts.map +1 -1
- package/dist/coordination/index.js +3 -9
- package/dist/coordination/index.js.map +1 -1
- package/dist/coordination/schema.d.ts +11 -466
- package/dist/coordination/schema.d.ts.map +1 -1
- package/dist/coordination/schema.js +13 -265
- package/dist/coordination/schema.js.map +1 -1
- package/dist/errorCodes.d.ts +16 -9
- package/dist/errorCodes.d.ts.map +1 -1
- package/dist/errorCodes.js +14 -6
- package/dist/errorCodes.js.map +1 -1
- package/dist/errorObservation.d.ts +2 -2
- package/dist/errors.d.ts +3 -2
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +27 -11
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +7 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/internal/read-set.d.ts +3 -3
- package/dist/internal/read-set.d.ts.map +1 -1
- package/dist/internal/read-set.js +2 -2
- package/dist/internal/read-set.js.map +1 -1
- package/dist/observability.d.ts +4 -4
- package/dist/observability.d.ts.map +1 -1
- package/dist/observability.js +2 -2
- package/dist/{wire/delta.d.ts → observation/contract.d.ts} +8 -8
- package/dist/observation/contract.d.ts.map +1 -0
- package/dist/{wire/delta.js → observation/contract.js} +3 -3
- package/dist/observation/contract.js.map +1 -0
- package/dist/{wire/feedCursor.d.ts → observation/cursor.d.ts} +1 -1
- package/dist/observation/cursor.d.ts.map +1 -0
- package/dist/{wire/feedCursor.js → observation/cursor.js} +1 -1
- package/dist/observation/cursor.js.map +1 -0
- package/dist/{wire/deltaDelivery.d.ts → observation/deliveryContract.d.ts} +1 -1
- package/dist/observation/deliveryContract.d.ts.map +1 -0
- package/dist/{wire/deltaDelivery.js → observation/deliveryContract.js} +1 -1
- package/dist/observation/deliveryContract.js.map +1 -0
- package/dist/{wire/feedEvent.d.ts → observation/feedContract.d.ts} +10 -10
- package/dist/observation/feedContract.d.ts.map +1 -0
- package/dist/{wire/feedEvent.js → observation/feedContract.js} +4 -4
- package/dist/observation/feedContract.js.map +1 -0
- package/dist/observation/httpFeed.d.ts +4 -0
- package/dist/observation/httpFeed.d.ts.map +1 -0
- package/dist/{transport → observation}/httpFeed.js +1 -1
- package/dist/{transport → observation}/httpFeed.js.map +1 -1
- package/dist/observation/index.d.ts +13 -0
- package/dist/observation/index.d.ts.map +1 -0
- package/dist/observation/index.js +13 -0
- package/dist/observation/index.js.map +1 -0
- package/dist/{log → observation/persistence}/syncDeltaRow.d.ts +8 -8
- package/dist/observation/persistence/syncDeltaRow.d.ts.map +1 -0
- package/dist/{log → observation/persistence}/syncDeltaRow.js +4 -4
- package/dist/observation/persistence/syncDeltaRow.js.map +1 -0
- package/dist/pricing.d.ts +20 -12
- package/dist/pricing.d.ts.map +1 -1
- package/dist/pricing.js +46 -26
- package/dist/pricing.js.map +1 -1
- package/dist/schema/audit.d.ts +15 -0
- package/dist/schema/audit.d.ts.map +1 -0
- package/dist/schema/audit.js +90 -0
- package/dist/schema/audit.js.map +1 -0
- package/dist/schema/ddl.d.ts.map +1 -1
- package/dist/schema/ddl.js +68 -1
- package/dist/schema/ddl.js.map +1 -1
- package/dist/schema/index.d.ts +7 -6
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/index.js +6 -7
- package/dist/schema/index.js.map +1 -1
- package/dist/schema/model.d.ts +14 -27
- package/dist/schema/model.d.ts.map +1 -1
- package/dist/schema/model.js +2 -2
- package/dist/schema/model.js.map +1 -1
- package/dist/schema/openapi.d.ts.map +1 -1
- package/dist/schema/openapi.js +149 -8
- package/dist/schema/openapi.js.map +1 -1
- package/dist/schema/roles.d.ts +27 -0
- package/dist/schema/roles.d.ts.map +1 -1
- package/dist/schema/roles.js +40 -0
- package/dist/schema/roles.js.map +1 -1
- package/dist/schema/schema.d.ts +34 -7
- package/dist/schema/schema.d.ts.map +1 -1
- package/dist/schema/schema.js +39 -3
- package/dist/schema/schema.js.map +1 -1
- package/dist/schema/serialize.d.ts +5 -5
- package/dist/schema/serialize.d.ts.map +1 -1
- package/dist/schema/serialize.js +5 -5
- package/dist/schema/serialize.js.map +1 -1
- package/dist/schema/subject.d.ts +18 -0
- package/dist/schema/subject.d.ts.map +1 -0
- package/dist/schema/subject.js +27 -0
- package/dist/schema/subject.js.map +1 -0
- package/dist/schema/tenancy.d.ts +1 -1
- package/dist/server/adapter.d.ts +3 -1
- package/dist/server/adapter.d.ts.map +1 -1
- package/dist/server/commit.d.ts +6 -14
- package/dist/server/commit.d.ts.map +1 -1
- package/dist/server/index.d.ts +1 -1
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +1 -1
- package/dist/server/index.js.map +1 -1
- package/dist/server/readConfig.d.ts +3 -0
- package/dist/server/readConfig.d.ts.map +1 -1
- package/dist/server/readConfig.js +0 -21
- package/dist/server/readConfig.js.map +1 -1
- package/dist/server/storageMode.d.ts +1 -1
- package/dist/source/{adapter.d.ts → adapters/adapter.d.ts} +10 -4
- package/dist/source/adapters/adapter.d.ts.map +1 -0
- package/dist/source/adapters/adapter.js.map +1 -0
- package/dist/source/adapters/adapterFactory.d.ts.map +1 -0
- package/dist/source/{adapterFactory.js → adapters/adapterFactory.js} +1 -1
- package/dist/source/adapters/adapterFactory.js.map +1 -0
- package/dist/source/adapters/adapterProfile.d.ts.map +1 -0
- package/dist/source/adapters/adapterProfile.js.map +1 -0
- package/dist/source/{conformance.d.ts → adapters/conformance.d.ts} +1 -1
- package/dist/source/adapters/conformance.d.ts.map +1 -0
- package/dist/source/{conformance.js → adapters/conformance.js} +1 -1
- package/dist/source/adapters/conformance.js.map +1 -0
- package/dist/source/{contract.d.ts → adapters/contract.d.ts} +20 -75
- package/dist/source/adapters/contract.d.ts.map +1 -0
- package/dist/source/{contract.js → adapters/contract.js} +20 -55
- package/dist/source/adapters/contract.js.map +1 -0
- package/dist/source/adapters/drizzle.d.ts +1 -1
- package/dist/source/adapters/drizzle.d.ts.map +1 -1
- package/dist/source/adapters/drizzle.js +54 -25
- package/dist/source/adapters/drizzle.js.map +1 -1
- package/dist/source/adapters/idempotency.d.ts.map +1 -0
- package/dist/source/{idempotency.js → adapters/idempotency.js} +2 -2
- package/dist/source/adapters/idempotency.js.map +1 -0
- package/dist/source/adapters/index.d.ts +21 -0
- package/dist/source/adapters/index.d.ts.map +1 -0
- package/dist/source/adapters/index.js +21 -0
- package/dist/source/adapters/index.js.map +1 -0
- package/dist/source/adapters/kysely.d.ts +3 -1
- package/dist/source/adapters/kysely.d.ts.map +1 -1
- package/dist/source/adapters/kysely.js +49 -23
- package/dist/source/adapters/kysely.js.map +1 -1
- package/dist/source/adapters/kyselyMutationCore.d.ts +6 -3
- package/dist/source/adapters/kyselyMutationCore.d.ts.map +1 -1
- package/dist/source/adapters/kyselyMutationCore.js +17 -8
- package/dist/source/adapters/kyselyMutationCore.js.map +1 -1
- package/dist/source/adapters/memory.d.ts +3 -3
- package/dist/source/adapters/memory.d.ts.map +1 -1
- package/dist/source/adapters/memory.js +20 -7
- package/dist/source/adapters/memory.js.map +1 -1
- package/dist/source/adapters/migration.d.ts +8 -0
- package/dist/source/adapters/migration.d.ts.map +1 -0
- package/dist/source/adapters/migration.js +9 -0
- package/dist/source/adapters/migration.js.map +1 -0
- package/dist/source/{migrations.d.ts → adapters/migrations.d.ts} +3 -4
- package/dist/source/adapters/migrations.d.ts.map +1 -0
- package/dist/source/{migrations.js → adapters/migrations.js} +4 -31
- package/dist/source/adapters/migrations.js.map +1 -0
- package/dist/source/adapters/prisma.d.ts +1 -1
- package/dist/source/adapters/prisma.d.ts.map +1 -1
- package/dist/source/adapters/prisma.js +75 -30
- package/dist/source/adapters/prisma.js.map +1 -1
- package/dist/source/adapters/subjectAuthorization.d.ts +16 -0
- package/dist/source/adapters/subjectAuthorization.d.ts.map +1 -0
- package/dist/source/adapters/subjectAuthorization.js +126 -0
- package/dist/source/adapters/subjectAuthorization.js.map +1 -0
- package/dist/source/{connector.d.ts → connector/client.d.ts} +6 -1
- package/dist/source/connector/client.d.ts.map +1 -0
- package/dist/source/{connector.js → connector/client.js} +28 -11
- package/dist/source/connector/client.js.map +1 -0
- package/dist/source/connector/index.d.ts +4 -0
- package/dist/source/connector/index.d.ts.map +1 -0
- package/dist/source/connector/index.js +4 -0
- package/dist/source/connector/index.js.map +1 -0
- package/dist/source/{connectorProtocol.d.ts → connector/protocol.d.ts} +8 -1
- package/dist/source/connector/protocol.d.ts.map +1 -0
- package/dist/source/{connectorProtocol.js → connector/protocol.js} +10 -3
- package/dist/source/connector/protocol.js.map +1 -0
- package/dist/source/delivery/index.d.ts +3 -0
- package/dist/source/delivery/index.d.ts.map +1 -0
- package/dist/source/delivery/index.js +3 -0
- package/dist/source/delivery/index.js.map +1 -0
- package/dist/source/{pushQueue.d.ts → delivery/pushQueue.d.ts} +1 -1
- package/dist/source/delivery/pushQueue.d.ts.map +1 -0
- package/dist/source/{pushQueue.js → delivery/pushQueue.js} +1 -1
- package/dist/source/delivery/pushQueue.js.map +1 -0
- package/dist/source/{factory.d.ts → endpoint/factory.d.ts} +9 -3
- package/dist/source/endpoint/factory.d.ts.map +1 -0
- package/dist/source/{factory.js → endpoint/factory.js} +122 -6
- package/dist/source/endpoint/factory.js.map +1 -0
- package/dist/source/endpoint/index.d.ts +5 -0
- package/dist/source/endpoint/index.d.ts.map +1 -0
- package/dist/source/endpoint/index.js +5 -0
- package/dist/source/endpoint/index.js.map +1 -0
- package/dist/source/{next.d.ts → endpoint/next.d.ts} +2 -2
- package/dist/source/endpoint/next.d.ts.map +1 -0
- package/dist/source/{next.js → endpoint/next.js} +1 -1
- package/dist/source/endpoint/next.js.map +1 -0
- package/dist/source/{signing.d.ts → endpoint/signing.d.ts} +1 -1
- package/dist/source/endpoint/signing.d.ts.map +1 -0
- package/dist/source/{signing.js → endpoint/signing.js} +1 -1
- package/dist/source/endpoint/signing.js.map +1 -0
- package/dist/source/index.d.ts +15 -12
- package/dist/source/index.d.ts.map +1 -1
- package/dist/source/index.js +13 -10
- package/dist/source/index.js.map +1 -1
- package/dist/source/outbox/contract.d.ts +50 -0
- package/dist/source/outbox/contract.d.ts.map +1 -0
- package/dist/source/outbox/contract.js +50 -0
- package/dist/source/outbox/contract.js.map +1 -0
- package/dist/source/outbox/envelope.d.ts +9 -0
- package/dist/source/outbox/envelope.d.ts.map +1 -0
- package/dist/source/outbox/envelope.js +36 -0
- package/dist/source/outbox/envelope.js.map +1 -0
- package/dist/source/outbox/index.d.ts +11 -0
- package/dist/source/outbox/index.d.ts.map +1 -0
- package/dist/source/outbox/index.js +11 -0
- package/dist/source/outbox/index.js.map +1 -0
- package/dist/source/outbox/migrations.d.ts +4 -0
- package/dist/source/outbox/migrations.d.ts.map +1 -0
- package/dist/source/outbox/migrations.js +67 -0
- package/dist/source/outbox/migrations.js.map +1 -0
- package/dist/source/outbox/retention.d.ts +3 -0
- package/dist/source/outbox/retention.d.ts.map +1 -0
- package/dist/source/outbox/retention.js +3 -0
- package/dist/source/outbox/retention.js.map +1 -0
- package/dist/source/types.d.ts +59 -10
- package/dist/source/types.d.ts.map +1 -1
- package/dist/source/types.js +2 -0
- package/dist/source/types.js.map +1 -1
- package/dist/syncLog/contract.d.ts +19 -8
- package/dist/syncLog/contract.d.ts.map +1 -1
- package/dist/syncLog/contract.js +19 -6
- package/dist/syncLog/contract.js.map +1 -1
- package/dist/testing/fixtures/httpResponses.d.ts +6 -0
- package/dist/testing/fixtures/httpResponses.d.ts.map +1 -1
- package/dist/testing/fixtures/httpResponses.js +1 -0
- package/dist/testing/fixtures/httpResponses.js.map +1 -1
- package/dist/transport/{credentialLifecycle.d.ts → connection/credentialLifecycle.d.ts} +3 -3
- package/dist/transport/connection/credentialLifecycle.d.ts.map +1 -0
- package/dist/transport/{credentialLifecycle.js → connection/credentialLifecycle.js} +2 -2
- package/dist/transport/connection/credentialLifecycle.js.map +1 -0
- package/dist/transport/connection/index.d.ts +5 -0
- package/dist/transport/connection/index.d.ts.map +1 -0
- package/dist/transport/connection/index.js +5 -0
- package/dist/transport/connection/index.js.map +1 -0
- package/dist/transport/{connectionManager.d.ts → connection/manager.d.ts} +13 -5
- package/dist/transport/connection/manager.d.ts.map +1 -0
- package/dist/transport/{connectionManager.js → connection/manager.js} +6 -4
- package/dist/transport/connection/manager.js.map +1 -0
- package/dist/transport/{networkProbe.d.ts → connection/networkProbe.d.ts} +2 -2
- package/dist/transport/connection/networkProbe.d.ts.map +1 -0
- package/dist/transport/{networkProbe.js → connection/networkProbe.js} +4 -4
- package/dist/transport/connection/networkProbe.js.map +1 -0
- package/dist/transport/{httpClient.d.ts → http/client.d.ts} +32 -44
- package/dist/transport/http/client.d.ts.map +1 -0
- package/dist/transport/{httpClient.js → http/client.js} +96 -105
- package/dist/transport/http/client.js.map +1 -0
- package/dist/transport/http/helpers.d.ts +10 -0
- package/dist/transport/http/helpers.d.ts.map +1 -0
- package/dist/transport/http/helpers.js +46 -0
- package/dist/transport/http/helpers.js.map +1 -0
- package/dist/transport/http/index.d.ts +6 -0
- package/dist/transport/http/index.d.ts.map +1 -0
- package/dist/transport/http/index.js +6 -0
- package/dist/transport/http/index.js.map +1 -0
- package/dist/transport/{httpOptions.d.ts → http/options.d.ts} +7 -7
- package/dist/transport/{httpOptions.d.ts.map → http/options.d.ts.map} +1 -1
- package/dist/transport/{httpOptions.js → http/options.js} +1 -1
- package/dist/transport/http/options.js.map +1 -0
- package/dist/transport/http/subscription.d.ts +16 -0
- package/dist/transport/http/subscription.d.ts.map +1 -0
- package/dist/transport/http/subscription.js +146 -0
- package/dist/transport/http/subscription.js.map +1 -0
- package/dist/transport/{httpTransport.d.ts → http/transport.d.ts} +9 -6
- package/dist/transport/http/transport.d.ts.map +1 -0
- package/dist/transport/{httpTransport.js → http/transport.js} +153 -188
- package/dist/transport/http/transport.js.map +1 -0
- package/dist/transport/index.d.ts +8 -0
- package/dist/transport/index.d.ts.map +1 -0
- package/dist/transport/index.js +8 -0
- package/dist/transport/index.js.map +1 -0
- package/dist/transport/{commitFrames.d.ts → websocket/commitFrames.d.ts} +8 -20
- package/dist/transport/websocket/commitFrames.d.ts.map +1 -0
- package/dist/transport/{commitFrames.js → websocket/commitFrames.js} +6 -25
- package/dist/transport/websocket/commitFrames.js.map +1 -0
- package/dist/transport/{wsFrameHandlers.d.ts → websocket/frameHandlers.d.ts} +5 -5
- package/dist/transport/websocket/frameHandlers.d.ts.map +1 -0
- package/dist/transport/{wsFrameHandlers.js → websocket/frameHandlers.js} +10 -51
- package/dist/transport/websocket/frameHandlers.js.map +1 -0
- package/dist/transport/{heartbeat.d.ts → websocket/heartbeat.d.ts} +1 -1
- package/dist/transport/websocket/heartbeat.d.ts.map +1 -0
- package/dist/transport/{heartbeat.js → websocket/heartbeat.js} +2 -2
- package/dist/transport/websocket/heartbeat.js.map +1 -0
- package/dist/transport/websocket/index.d.ts +6 -0
- package/dist/transport/websocket/index.d.ts.map +1 -0
- package/dist/transport/websocket/index.js +6 -0
- package/dist/transport/websocket/index.js.map +1 -0
- package/dist/transport/{wsTransport.d.ts → websocket/transport.d.ts} +13 -25
- package/dist/transport/websocket/transport.d.ts.map +1 -0
- package/dist/transport/{wsTransport.js → websocket/transport.js} +14 -14
- package/dist/transport/websocket/transport.js.map +1 -0
- package/dist/types/index.d.ts +1 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/streams.d.ts +8 -48
- package/dist/types/streams.d.ts.map +1 -1
- package/dist/types/streams.js +2 -2
- package/dist/wire/accountResponses.d.ts +4 -72
- package/dist/wire/accountResponses.d.ts.map +1 -1
- package/dist/wire/accountResponses.js +2 -10
- package/dist/wire/accountResponses.js.map +1 -1
- package/dist/wire/apiLifecycle.d.ts +63 -0
- package/dist/wire/apiLifecycle.d.ts.map +1 -0
- package/dist/wire/apiLifecycle.js +89 -0
- package/dist/wire/apiLifecycle.js.map +1 -0
- package/dist/wire/frames.d.ts +6 -83
- package/dist/wire/frames.d.ts.map +1 -1
- package/dist/wire/frames.js +4 -11
- package/dist/wire/frames.js.map +1 -1
- package/dist/wire/inboundFrames.d.ts +6 -131
- package/dist/wire/inboundFrames.d.ts.map +1 -1
- package/dist/wire/inboundFrames.js +3 -3
- package/dist/wire/inboundFrames.js.map +1 -1
- package/dist/wire/index.d.ts +20 -15
- package/dist/wire/index.d.ts.map +1 -1
- package/dist/wire/index.js +22 -8
- package/dist/wire/index.js.map +1 -1
- package/dist/wire/modelMutations.d.ts +1 -32
- package/dist/wire/modelMutations.d.ts.map +1 -1
- package/dist/wire/modelMutations.js +1 -8
- package/dist/wire/modelMutations.js.map +1 -1
- package/dist/wire/rateLimit.d.ts +82 -0
- package/dist/wire/rateLimit.d.ts.map +1 -0
- package/dist/wire/rateLimit.js +142 -0
- package/dist/wire/rateLimit.js.map +1 -0
- package/package.json +130 -10
- package/src/ai-sdk/modelTools.ts +5 -5
- package/src/ai-sdk/updateTool.ts +5 -7
- package/src/auth/capability.ts +5 -0
- package/src/auth/capabilityLifecycle.ts +1 -1
- package/src/auth/credentialPolicy.ts +1 -1
- package/src/auth/identity.ts +7 -7
- package/src/auth/index.ts +4 -663
- package/src/auth/runtime.ts +669 -0
- package/src/auth/sessionMint.ts +3 -2
- package/src/branches.ts +3 -0
- package/src/{coordination/awaitClaimGrant.ts → claims/awaitGrant.ts} +4 -4
- package/src/{wire/claims.ts → claims/contract.ts} +1 -1
- package/src/{coordination → claims}/events.ts +7 -11
- package/src/claims/index.ts +21 -0
- package/src/claims/lifetime.ts +78 -0
- package/src/{coordination → claims}/locator.ts +3 -3
- package/src/claims/routes.ts +81 -0
- package/src/{coordination → claims}/trace.ts +5 -5
- package/src/{ablo.ts → client/ablo.ts} +8 -20
- package/src/{transactionLayer.ts → client/contract.ts} +11 -13
- package/src/{headlessClient.ts → client/headless.ts} +13 -15
- package/src/client/index.ts +10 -0
- package/src/{resources → client/resources}/functionalUpdate.ts +4 -4
- package/src/{resources → client/resources}/httpResources.ts +163 -92
- package/src/client/resources/modelCreate.ts +73 -0
- package/src/{resources → client/resources}/modelOperations.ts +73 -55
- package/src/{resources → client/resources}/mutationOptions.ts +4 -17
- package/src/{resources → client/resources}/where.ts +1 -1
- package/src/{resources → client/resources}/writeOptionsSchema.ts +35 -27
- package/src/{transactions → commit}/confirmation/commitEnvelope.ts +2 -12
- package/src/{transactions → commit}/confirmation/httpCommitEnvelope.ts +1 -1
- package/src/{transactions → commit}/confirmation/pendingWrite.ts +1 -1
- package/src/{wire/commit.ts → commit/contract.ts} +27 -26
- package/src/{durableWrites.ts → commit/durableWrites.ts} +7 -7
- package/src/commit/httpRequest.ts +103 -0
- package/src/commit/index.ts +16 -0
- package/src/{readSetContext.ts → commit/readSetContext.ts} +24 -43
- package/src/{commitRecordRuntime.ts → commit/recordRuntime.ts} +12 -67
- package/src/coordination/index.ts +4 -54
- package/src/coordination/schema.ts +15 -309
- package/src/errorCodes.ts +62 -10
- package/src/errors.ts +32 -10
- package/src/index.ts +8 -8
- package/src/internal/read-set.ts +3 -6
- package/src/observability.ts +4 -4
- package/src/{wire/delta.ts → observation/contract.ts} +2 -2
- package/src/{wire/feedEvent.ts → observation/feedContract.ts} +3 -4
- package/src/{transport → observation}/httpFeed.ts +3 -3
- package/src/observation/index.ts +12 -0
- package/src/{log → observation/persistence}/syncDeltaRow.ts +6 -7
- package/src/pricing.ts +46 -25
- package/src/schema/audit.ts +121 -0
- package/src/schema/ddl.ts +71 -1
- package/src/schema/index.ts +20 -20
- package/src/schema/model.ts +17 -33
- package/src/schema/openapi.ts +170 -9
- package/src/schema/roles.ts +53 -0
- package/src/schema/schema.ts +91 -6
- package/src/schema/serialize.ts +8 -9
- package/src/schema/subject.ts +43 -0
- package/src/server/adapter.ts +3 -1
- package/src/server/commit.ts +6 -14
- package/src/server/index.ts +1 -1
- package/src/server/readConfig.ts +4 -0
- package/src/source/{adapter.ts → adapters/adapter.ts} +9 -5
- package/src/source/{adapterFactory.ts → adapters/adapterFactory.ts} +1 -1
- package/src/source/{conformance.ts → adapters/conformance.ts} +1 -1
- package/src/source/{contract.ts → adapters/contract.ts} +24 -61
- package/src/source/adapters/drizzle.ts +75 -29
- package/src/source/{idempotency.ts → adapters/idempotency.ts} +2 -2
- package/src/source/adapters/index.ts +20 -0
- package/src/source/adapters/kysely.ts +77 -27
- package/src/source/adapters/kyselyMutationCore.ts +23 -11
- package/src/source/adapters/memory.ts +26 -9
- package/src/source/adapters/migration.ts +11 -0
- package/src/source/{migrations.ts → adapters/migrations.ts} +6 -33
- package/src/source/adapters/prisma.ts +98 -34
- package/src/source/adapters/subjectAuthorization.ts +182 -0
- package/src/source/{connector.ts → connector/client.ts} +35 -12
- package/src/source/connector/index.ts +3 -0
- package/src/source/{connectorProtocol.ts → connector/protocol.ts} +10 -2
- package/src/source/delivery/index.ts +2 -0
- package/src/source/{pushQueue.ts → delivery/pushQueue.ts} +2 -2
- package/src/source/{factory.ts → endpoint/factory.ts} +150 -9
- package/src/source/endpoint/index.ts +4 -0
- package/src/source/{next.ts → endpoint/next.ts} +2 -2
- package/src/source/{signing.ts → endpoint/signing.ts} +1 -1
- package/src/source/index.ts +27 -18
- package/src/source/outbox/contract.ts +56 -0
- package/src/source/outbox/envelope.ts +47 -0
- package/src/source/outbox/index.ts +15 -0
- package/src/source/outbox/migrations.ts +71 -0
- package/src/source/outbox/retention.ts +2 -0
- package/src/source/types.ts +64 -10
- package/src/syncLog/contract.ts +19 -9
- package/src/testing/fixtures/httpResponses.ts +7 -0
- package/src/transport/{credentialLifecycle.ts → connection/credentialLifecycle.ts} +3 -3
- package/src/transport/connection/index.ts +4 -0
- package/src/transport/{connectionManager.ts → connection/manager.ts} +13 -4
- package/src/transport/{networkProbe.ts → connection/networkProbe.ts} +4 -4
- package/src/transport/{httpClient.ts → http/client.ts} +165 -184
- package/src/transport/http/helpers.ts +63 -0
- package/src/transport/http/index.ts +5 -0
- package/src/transport/{httpOptions.ts → http/options.ts} +6 -6
- package/src/transport/http/subscription.ts +174 -0
- package/src/transport/{httpTransport.ts → http/transport.ts} +210 -246
- package/src/transport/index.ts +7 -0
- package/src/transport/{commitFrames.ts → websocket/commitFrames.ts} +14 -46
- package/src/transport/{wsFrameHandlers.ts → websocket/frameHandlers.ts} +11 -54
- package/src/transport/{heartbeat.ts → websocket/heartbeat.ts} +2 -2
- package/src/transport/websocket/index.ts +5 -0
- package/src/transport/{wsTransport.ts → websocket/transport.ts} +16 -30
- package/src/types/index.ts +2 -6
- package/src/types/streams.ts +7 -61
- package/src/webhooks/events.ts +1 -1
- package/src/wire/accountResponses.ts +3 -12
- package/src/wire/apiLifecycle.ts +94 -0
- package/src/wire/frames.ts +5 -15
- package/src/wire/inboundFrames.ts +3 -3
- package/src/wire/index.ts +50 -15
- package/src/wire/modelMutations.ts +1 -14
- package/src/wire/rateLimit.ts +155 -0
- package/dist/ablo.d.ts.map +0 -1
- package/dist/ablo.js.map +0 -1
- package/dist/commitRecordRuntime.d.ts.map +0 -1
- package/dist/commitRecordRuntime.js.map +0 -1
- package/dist/coordination/awaitClaimGrant.d.ts.map +0 -1
- package/dist/coordination/awaitClaimGrant.js.map +0 -1
- package/dist/coordination/claimHeartbeatLoop.d.ts.map +0 -1
- package/dist/coordination/claimHeartbeatLoop.js.map +0 -1
- package/dist/coordination/claimMeta.d.ts.map +0 -1
- package/dist/coordination/claimMeta.js.map +0 -1
- package/dist/coordination/events.d.ts.map +0 -1
- package/dist/coordination/events.js +0 -8
- package/dist/coordination/events.js.map +0 -1
- package/dist/coordination/locator.d.ts.map +0 -1
- package/dist/coordination/locator.js.map +0 -1
- package/dist/coordination/targetConflict.d.ts.map +0 -1
- package/dist/coordination/targetConflict.js.map +0 -1
- package/dist/coordination/trace.d.ts.map +0 -1
- package/dist/coordination/trace.js.map +0 -1
- package/dist/durableWrites.d.ts.map +0 -1
- package/dist/durableWrites.js.map +0 -1
- package/dist/headlessClient.d.ts.map +0 -1
- package/dist/log/syncDeltaRow.d.ts.map +0 -1
- package/dist/log/syncDeltaRow.js.map +0 -1
- package/dist/policy/types.d.ts +0 -226
- package/dist/policy/types.d.ts.map +0 -1
- package/dist/policy/types.js +0 -127
- package/dist/policy/types.js.map +0 -1
- package/dist/readSetContext.d.ts.map +0 -1
- package/dist/readSetContext.js.map +0 -1
- package/dist/resources/functionalUpdate.d.ts.map +0 -1
- package/dist/resources/functionalUpdate.js.map +0 -1
- package/dist/resources/httpResources.d.ts.map +0 -1
- package/dist/resources/httpResources.js +0 -17
- package/dist/resources/httpResources.js.map +0 -1
- package/dist/resources/modelOperations.d.ts.map +0 -1
- package/dist/resources/modelOperations.js.map +0 -1
- package/dist/resources/mutationOptions.d.ts.map +0 -1
- package/dist/resources/mutationOptions.js.map +0 -1
- package/dist/resources/where.d.ts.map +0 -1
- package/dist/resources/where.js.map +0 -1
- package/dist/resources/writeOptionsSchema.d.ts.map +0 -1
- package/dist/resources/writeOptionsSchema.js.map +0 -1
- package/dist/schema/coordination.d.ts +0 -113
- package/dist/schema/coordination.d.ts.map +0 -1
- package/dist/schema/coordination.js +0 -134
- package/dist/schema/coordination.js.map +0 -1
- package/dist/source/adapter.d.ts.map +0 -1
- package/dist/source/adapter.js.map +0 -1
- package/dist/source/adapterFactory.d.ts.map +0 -1
- package/dist/source/adapterFactory.js.map +0 -1
- package/dist/source/adapterProfile.d.ts.map +0 -1
- package/dist/source/adapterProfile.js.map +0 -1
- package/dist/source/conformance.d.ts.map +0 -1
- package/dist/source/conformance.js.map +0 -1
- package/dist/source/connector.d.ts.map +0 -1
- package/dist/source/connector.js.map +0 -1
- package/dist/source/connectorProtocol.d.ts.map +0 -1
- package/dist/source/connectorProtocol.js.map +0 -1
- package/dist/source/contract.d.ts.map +0 -1
- package/dist/source/contract.js.map +0 -1
- package/dist/source/drizzle.d.ts +0 -2
- package/dist/source/drizzle.d.ts.map +0 -1
- package/dist/source/drizzle.js +0 -2
- package/dist/source/drizzle.js.map +0 -1
- package/dist/source/factory.d.ts.map +0 -1
- package/dist/source/factory.js.map +0 -1
- package/dist/source/idempotency.d.ts.map +0 -1
- package/dist/source/idempotency.js.map +0 -1
- package/dist/source/kysely.d.ts +0 -3
- package/dist/source/kysely.d.ts.map +0 -1
- package/dist/source/kysely.js +0 -3
- package/dist/source/kysely.js.map +0 -1
- package/dist/source/migrations.d.ts.map +0 -1
- package/dist/source/migrations.js.map +0 -1
- package/dist/source/next.d.ts.map +0 -1
- package/dist/source/next.js.map +0 -1
- package/dist/source/pushQueue.d.ts.map +0 -1
- package/dist/source/pushQueue.js.map +0 -1
- package/dist/source/signing.d.ts.map +0 -1
- package/dist/source/signing.js.map +0 -1
- package/dist/transactionLayer.d.ts.map +0 -1
- package/dist/transactionLayer.js.map +0 -1
- package/dist/transactions/confirmation/commitEnvelope.d.ts.map +0 -1
- package/dist/transactions/confirmation/commitEnvelope.js.map +0 -1
- package/dist/transactions/confirmation/httpCommitEnvelope.d.ts.map +0 -1
- package/dist/transactions/confirmation/httpCommitEnvelope.js.map +0 -1
- package/dist/transactions/confirmation/idempotencyKey.d.ts.map +0 -1
- package/dist/transactions/confirmation/idempotencyKey.js.map +0 -1
- package/dist/transactions/confirmation/pendingWrite.d.ts.map +0 -1
- package/dist/transactions/confirmation/pendingWrite.js.map +0 -1
- package/dist/transport/commitFrames.d.ts.map +0 -1
- package/dist/transport/commitFrames.js.map +0 -1
- package/dist/transport/connectionManager.d.ts.map +0 -1
- package/dist/transport/connectionManager.js.map +0 -1
- package/dist/transport/credentialLifecycle.d.ts.map +0 -1
- package/dist/transport/credentialLifecycle.js.map +0 -1
- package/dist/transport/heartbeat.d.ts.map +0 -1
- package/dist/transport/heartbeat.js.map +0 -1
- package/dist/transport/httpClient.d.ts.map +0 -1
- package/dist/transport/httpClient.js.map +0 -1
- package/dist/transport/httpFeed.d.ts +0 -4
- package/dist/transport/httpFeed.d.ts.map +0 -1
- package/dist/transport/httpOptions.js.map +0 -1
- package/dist/transport/httpTransport.d.ts.map +0 -1
- package/dist/transport/httpTransport.js.map +0 -1
- package/dist/transport/networkProbe.d.ts.map +0 -1
- package/dist/transport/networkProbe.js.map +0 -1
- package/dist/transport/wsFrameHandlers.d.ts.map +0 -1
- package/dist/transport/wsFrameHandlers.js.map +0 -1
- package/dist/transport/wsTransport.d.ts.map +0 -1
- package/dist/transport/wsTransport.js.map +0 -1
- package/dist/wire/claimEvent.d.ts.map +0 -1
- package/dist/wire/claimEvent.js.map +0 -1
- package/dist/wire/claims.d.ts.map +0 -1
- package/dist/wire/claims.js.map +0 -1
- package/dist/wire/commit.d.ts +0 -2801
- package/dist/wire/commit.d.ts.map +0 -1
- package/dist/wire/commit.js.map +0 -1
- package/dist/wire/delta.d.ts.map +0 -1
- package/dist/wire/delta.js.map +0 -1
- package/dist/wire/deltaDelivery.d.ts.map +0 -1
- package/dist/wire/deltaDelivery.js.map +0 -1
- package/dist/wire/feedCursor.d.ts.map +0 -1
- package/dist/wire/feedCursor.js.map +0 -1
- package/dist/wire/feedEvent.d.ts.map +0 -1
- package/dist/wire/feedEvent.js.map +0 -1
- package/src/policy/types.ts +0 -300
- package/src/schema/coordination.ts +0 -161
- package/src/source/drizzle.ts +0 -1
- package/src/source/kysely.ts +0 -2
- /package/dist/{coordination → claims}/targetConflict.d.ts +0 -0
- /package/dist/{coordination → claims}/targetConflict.js +0 -0
- /package/dist/{resources → client/resources}/mutationOptions.js +0 -0
- /package/dist/{resources → client/resources}/where.d.ts +0 -0
- /package/dist/{transactions → commit}/confirmation/httpCommitEnvelope.d.ts +0 -0
- /package/dist/{transactions → commit}/confirmation/idempotencyKey.d.ts +0 -0
- /package/dist/{transactions → commit}/confirmation/idempotencyKey.js +0 -0
- /package/dist/source/{adapter.js → adapters/adapter.js} +0 -0
- /package/dist/source/{adapterFactory.d.ts → adapters/adapterFactory.d.ts} +0 -0
- /package/dist/source/{adapterProfile.d.ts → adapters/adapterProfile.d.ts} +0 -0
- /package/dist/source/{adapterProfile.js → adapters/adapterProfile.js} +0 -0
- /package/dist/source/{idempotency.d.ts → adapters/idempotency.d.ts} +0 -0
- /package/src/{wire/claimEvent.ts → claims/eventContract.ts} +0 -0
- /package/src/{coordination/claimHeartbeatLoop.ts → claims/heartbeat.ts} +0 -0
- /package/src/{coordination/claimMeta.ts → claims/meta.ts} +0 -0
- /package/src/{coordination → claims}/targetConflict.ts +0 -0
- /package/src/{transactions → commit}/confirmation/idempotencyKey.ts +0 -0
- /package/src/{wire/feedCursor.ts → observation/cursor.ts} +0 -0
- /package/src/{wire/deltaDelivery.ts → observation/deliveryContract.ts} +0 -0
- /package/src/source/{adapterProfile.ts → adapters/adapterProfile.ts} +0 -0
|
@@ -5,19 +5,18 @@
|
|
|
5
5
|
* These types describe the *change or the query being requested*, never a local
|
|
6
6
|
* copy of the rows it touches, so they sit in the commit core and are shared
|
|
7
7
|
* by every transport and every caller (ADR 0013 §4, ADR 0016). The factory that
|
|
8
|
-
* binds them to reactive model instances — `
|
|
8
|
+
* binds them to reactive model instances — `createModelOperations` — stays with the
|
|
9
9
|
* reactive consumer, along with `ModelOperations` and `ModelCollaboration`,
|
|
10
10
|
* which reference the live participant handle.
|
|
11
11
|
*/
|
|
12
|
-
import type { ModelScope } from '
|
|
13
|
-
import type { ResolveClaimMeta } from '
|
|
14
|
-
import type { AbloError } from '
|
|
15
|
-
import type {
|
|
16
|
-
import type {
|
|
17
|
-
import type {
|
|
18
|
-
import type {
|
|
19
|
-
import type {
|
|
20
|
-
import type { Claim, ClaimHeartbeat, ClaimHeartbeatOptions, HeldClaim, HeldLease } from '../types/streams.js';
|
|
12
|
+
import type { ModelScope } from '../../types/index.js';
|
|
13
|
+
import type { ResolveClaimMeta } from '../../types/global.js';
|
|
14
|
+
import type { AbloError } from '../../errors.js';
|
|
15
|
+
import type { FieldRef, FieldSelector } from '../../schema/fieldRef.js';
|
|
16
|
+
import type { BaseModelFields, Clearable } from '../../schema/schema.js';
|
|
17
|
+
import type { ClaimHeartbeatPlan } from '../../claims/heartbeat.js';
|
|
18
|
+
import type { Duration } from '../../utils/duration.js';
|
|
19
|
+
import type { Claim, ClaimHeartbeat, ClaimHeartbeatOptions, HeldClaim, HeldLease } from '../../types/streams.js';
|
|
21
20
|
import type { MutationOptions } from './mutationOptions.js';
|
|
22
21
|
import type { LoadWhere } from './where.js';
|
|
23
22
|
/**
|
|
@@ -89,31 +88,6 @@ export declare function claimAttemptFailure(wait: boolean, error: AbloError): Cl
|
|
|
89
88
|
* a scope added to {@link ModelScope} is spellable both ways at once.
|
|
90
89
|
*/
|
|
91
90
|
export type ModelListScope = ModelScope | `${ModelScope}`;
|
|
92
|
-
/**
|
|
93
|
-
* Options for `track({ id })` — register a durable premise on a row.
|
|
94
|
-
*
|
|
95
|
-
* Derived from the wire's row-form {@link TrackDependency} rather than restated
|
|
96
|
-
* beside it: the caller names the row and, optionally, the watermark it is
|
|
97
|
-
* premised on, while `model` comes from the proxy the call was made on. Adding
|
|
98
|
-
* a field to the dependency therefore reaches this surface automatically, and
|
|
99
|
-
* removing one stops the callers compiling.
|
|
100
|
-
*
|
|
101
|
-
* On `readAt`: omit it to baseline at the current head — "tell me about
|
|
102
|
-
* anything from here on". Pass a known watermark (the one you read the row at)
|
|
103
|
-
* to also catch a change that landed between that read and this call.
|
|
104
|
-
*/
|
|
105
|
-
export type ModelTrackParams = Omit<Extract<TrackDependency, {
|
|
106
|
-
model: string;
|
|
107
|
-
}>, 'model'>;
|
|
108
|
-
/** The result of `track({ id })`. */
|
|
109
|
-
export interface ModelTrackResult {
|
|
110
|
-
/**
|
|
111
|
-
* Tracks that had ALREADY fired at registration time — a change matching an
|
|
112
|
-
* open track that landed before this call. Present only when something was
|
|
113
|
-
* already stale; the ongoing signal arrives on the receipts of later commits.
|
|
114
|
-
*/
|
|
115
|
-
notifications?: StaleNotification[];
|
|
116
|
-
}
|
|
117
91
|
/** Options for the synchronous local-graph reads `local.list` and `onChange` —
|
|
118
92
|
* a JavaScript `filter`, an equality `where`, and a lifecycle `state`. This is
|
|
119
93
|
* the local, reactive axis; contrast {@link ServerReadOptions}, the
|
|
@@ -132,7 +106,7 @@ export interface LocalReadOptions<T> {
|
|
|
132
106
|
state?: ModelListScope;
|
|
133
107
|
}
|
|
134
108
|
export type LocalCountOptions<T> = Pick<LocalReadOptions<T>, 'where' | 'filter' | 'state'>;
|
|
135
|
-
/** Options for the asynchronous server reads `
|
|
109
|
+
/** Options for the asynchronous server reads `read` and `list` — the
|
|
136
110
|
* operator `where` filter, `type`, and `expand`. This is the server axis;
|
|
137
111
|
* contrast {@link LocalReadOptions}, the local, reactive axis. */
|
|
138
112
|
export interface ServerReadOptions<T> {
|
|
@@ -174,11 +148,16 @@ export interface ServerReadOptions<T> {
|
|
|
174
148
|
*/
|
|
175
149
|
expand?: readonly string[];
|
|
176
150
|
}
|
|
177
|
-
/** Options for
|
|
151
|
+
/** Options for an explicit complete collection traversal. */
|
|
152
|
+
export interface ListAllOptions<T> extends Omit<ServerReadOptions<T>, 'cursor'> {
|
|
153
|
+
/** Maximum pages to read before refusing an unexpectedly broad traversal. @default 100 */
|
|
154
|
+
maxPages?: number;
|
|
155
|
+
/** Stops traversal between page requests and row yields. */
|
|
156
|
+
signal?: AbortSignal;
|
|
157
|
+
}
|
|
158
|
+
/** Options for the single-row async server `read({ id })`. A subset of
|
|
178
159
|
* {@link ServerReadOptions} — `where`/`limit`/`orderBy` are fixed by the id. */
|
|
179
|
-
export type
|
|
180
|
-
/** Canonical point-lookup options; retained separately for compatibility naming. */
|
|
181
|
-
export type ServerGetOptions = ServerRetrieveOptions;
|
|
160
|
+
export type ServerPointReadOptions = Pick<ServerReadOptions<unknown>, 'type' | 'expand'>;
|
|
182
161
|
/**
|
|
183
162
|
* A claimable part of a row is a field declared by that model's Zod shape.
|
|
184
163
|
*
|
|
@@ -419,8 +398,15 @@ export interface ClaimReadApi<T = Record<string, unknown>> {
|
|
|
419
398
|
* an already-async one (`release`) is left untouched. Used to derive the
|
|
420
399
|
* stateless HTTP claim surface from the reactive {@link ClaimReadApi}.
|
|
421
400
|
*/
|
|
422
|
-
export type AwaitedClaimMethod<F> = F extends (...args: infer A) => infer R ? R extends Promise<unknown> ? (...args: A) => R : (...args: A) => Promise<R> : F;
|
|
423
|
-
|
|
401
|
+
export type AwaitedClaimMethod<F> = F extends (...args: infer A) => infer R ? [R] extends [Promise<unknown>] ? (...args: A) => R : (...args: A) => Promise<R> : F;
|
|
402
|
+
/**
|
|
403
|
+
* The four ways to take a claim. Already async on every transport, so this is
|
|
404
|
+
* the ONE definition of the callable half of a claim namespace: the reactive
|
|
405
|
+
* {@link ClaimApi} and the stateless {@link HttpClaimApi} both extend it, and an
|
|
406
|
+
* overload added here reaches both. (The two used to restate these by hand, and
|
|
407
|
+
* the row-free pair below existed on one surface and not the other.)
|
|
408
|
+
*/
|
|
409
|
+
export interface ClaimCall<T, Fields = T> {
|
|
424
410
|
/**
|
|
425
411
|
* The try-claim: `contention: { mode: 'skip' }` (or `queue: false`)
|
|
426
412
|
* treats a held target as an expected outcome, not an error — it resolves
|
|
@@ -435,22 +421,27 @@ export interface ClaimApi<T, Fields = T> extends ClaimReadApi<T> {
|
|
|
435
421
|
* Takes a claim and returns an explicit held-work handle — a {@link HeldClaim}.
|
|
436
422
|
* `data`, `release`, `revoke`, and the async disposer are always present (this
|
|
437
423
|
* call re-reads the row under the lease), so callers can use `handle.data`
|
|
438
|
-
* directly and `await using` works without a guard.
|
|
424
|
+
* directly and `await using` works without a guard. A row that does not
|
|
425
|
+
* exist rejects with `AbloNotFoundError` after the lease is given back; to
|
|
426
|
+
* hold a key before its row exists, use the id-only form below.
|
|
439
427
|
*/
|
|
440
428
|
(params: ClaimParams<Fields>): Promise<HeldClaim<T>>;
|
|
441
429
|
/** The row-free try-claim — `null` when the key is already held. */
|
|
442
430
|
(id: string, opts: ClaimSkipOptions<Fields>): Promise<HeldLease | null>;
|
|
443
431
|
/**
|
|
444
432
|
* Takes a claim by id alone, for a row that lives only in the customer's own
|
|
445
|
-
* database
|
|
446
|
-
* {@link HeldLease}: the same lease controls
|
|
447
|
-
* (`release`, `revoke`, `heartbeat`, `await using`) but
|
|
448
|
-
* key you know by id is exactly this — serialize
|
|
449
|
-
* syncing the row into Ablo
|
|
433
|
+
* database or does not exist yet — Ablo has nothing to re-read, so no read is
|
|
434
|
+
* made after the grant. Returns a {@link HeldLease}: the same lease controls
|
|
435
|
+
* as {@link HeldClaim} (`release`, `revoke`, `heartbeat`, `await using`) but
|
|
436
|
+
* no `.data`. Locking a key you know by id is exactly this — serialize
|
|
437
|
+
* writers without first syncing the row into Ablo, or claim an id before
|
|
438
|
+
* creating its row so two actors cannot both create it.
|
|
450
439
|
*/
|
|
451
440
|
(id: string, opts?: ClaimOptions<Fields>): Promise<HeldLease>;
|
|
452
441
|
}
|
|
453
|
-
export interface
|
|
442
|
+
export interface ClaimApi<T, Fields = T> extends ClaimReadApi<T>, ClaimCall<T, Fields> {
|
|
443
|
+
}
|
|
444
|
+
export interface ModelReadParams extends ServerPointReadOptions {
|
|
454
445
|
readonly id: string;
|
|
455
446
|
}
|
|
456
447
|
/**
|
|
@@ -462,20 +453,35 @@ export interface ModelRetrieveParams extends ServerRetrieveOptions {
|
|
|
462
453
|
* confirmation. Callers that need an earlier queued receipt use the lower-level
|
|
463
454
|
* `commits.create` resource instead.
|
|
464
455
|
*/
|
|
465
|
-
export type ModelWriteOptions = Omit<MutationOptions, 'wait'>;
|
|
456
|
+
export type ModelWriteOptions = Omit<MutationOptions, 'wait' | 'readAt' | 'fenceToken' | 'claimRef'>;
|
|
466
457
|
export interface ModelCreateParams<T, CreateInput> extends ModelWriteOptions {
|
|
467
458
|
readonly data: CreateInput;
|
|
468
459
|
readonly id?: string | null;
|
|
469
460
|
readonly claim?: Claim<T> | ClaimTargetOptions<CreateInput> | null;
|
|
470
461
|
}
|
|
462
|
+
/**
|
|
463
|
+
* Creating many rows at once: the same verb, handed a list.
|
|
464
|
+
*
|
|
465
|
+
* One atomic commit, so the batch lands whole or not at all, and the rows come
|
|
466
|
+
* back in the order they were given. There is no `id` beside `data` here the
|
|
467
|
+
* way there is for a single create, since one id cannot address many rows;
|
|
468
|
+
* write it into each row instead, which the create input has always allowed.
|
|
469
|
+
*/
|
|
470
|
+
export type ModelCreateManyParams<CreateInput> = Pick<ModelWriteOptions, 'idempotencyKey' | 'reads'> & {
|
|
471
|
+
readonly data: readonly CreateInput[];
|
|
472
|
+
};
|
|
471
473
|
export interface ModelUpdateParams<T, Fields = T> extends ModelWriteOptions {
|
|
472
474
|
readonly id: string;
|
|
473
475
|
/**
|
|
474
476
|
* Patch only fields declared by the model's Zod input shape. Hydrated rows
|
|
475
477
|
* also carry framework fields, relations, methods, and computed values; none
|
|
476
478
|
* of those are writable data.
|
|
479
|
+
*
|
|
480
|
+
* Send a field to change it, omit it to leave it, send `null` to clear it —
|
|
481
|
+
* see {@link Clearable}. `undefined` is not a clear: it is dropped from the
|
|
482
|
+
* payload and the old value survives.
|
|
477
483
|
*/
|
|
478
|
-
readonly data:
|
|
484
|
+
readonly data: Clearable<ClaimableFields<Fields>>;
|
|
479
485
|
readonly claim?: Claim<T> | ClaimTargetOptions<Fields> | null;
|
|
480
486
|
}
|
|
481
487
|
export interface ModelDeleteParams<T, Fields = T> extends ModelWriteOptions {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"modelOperations.d.ts","sourceRoot":"","sources":["../../../src/client/resources/modelOperations.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* These types describe the *change or the query being requested*, never a local
|
|
6
6
|
* copy of the rows it touches, so they sit in the commit core and are shared
|
|
7
7
|
* by every transport and every caller (ADR 0013 §4, ADR 0016). The factory that
|
|
8
|
-
* binds them to reactive model instances — `
|
|
8
|
+
* binds them to reactive model instances — `createModelOperations` — stays with the
|
|
9
9
|
* reactive consumer, along with `ModelOperations` and `ModelCollaboration`,
|
|
10
10
|
* which reference the live participant handle.
|
|
11
11
|
*/
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"modelOperations.js","sourceRoot":"","sources":["../../../src/client/resources/modelOperations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AA8EH,qFAAqF;AACrF,MAAM,UAAU,6BAA6B,CAAC,OAM7C;IACC,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IACtC,MAAM,QAAQ,GAAG,UAAU,EAAE,QAAQ,IAAI,OAAO,CAAC,aAAa,CAAC;IAC/D,MAAM,SAAS,GAAG,UAAU,EAAE,SAAS,IAAI,OAAO,CAAC,aAAa,CAAC;IACjE,MAAM,MAAM,GAAG,UAAU,EAAE,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IACpD,OAAO;QACL,IAAI,EAAE,UAAU;YACd,CAAC,CAAC,UAAU,CAAC,IAAI,KAAK,MAAM;YAC5B,CAAC,CAAC,OAAO,CAAC,KAAK,KAAK,KAAK;QAC3B,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3C,GAAG,CAAC,UAAU,EAAE,QAAQ,KAAK,SAAS;YACpC,CAAC,CAAC,EAAE,QAAQ,EAAE,UAAU,CAAC,QAAQ,EAAE;YACnC,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,eAAe,CAC7B,QAA0D,EAC1D,KAAwB;IAExB,IAAI,CAAC;QACH,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC;IACpB,CAAC;IAAC,MAAM,CAAC;QACP,sEAAsE;IACxE,CAAC;AACH,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,mBAAmB,CACjC,IAAa,EACb,KAAgB;IAEhB,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;IACxB,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,gBAAgB,IAAI,IAAI,KAAK,gBAAgB,CAAC;QACtE,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE;QAC5B,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AAChC,CAAC;AAyOD,MAAM,UAAU,cAAc,CAC5B,OAAqD;IAErD,OAAO;QACL,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,OAAO;QACb,OAAO;QACP,IAAI,EAAE,OAAO,CAAC,MAAM;QACpB,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI;KACzB,CAAC;AACJ,CAAC"}
|
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
* None of it touches a local copy of rows, so it belongs with the commit
|
|
7
7
|
* core rather than the reactive consumer (ADR 0013 §4, ADR 0016).
|
|
8
8
|
*/
|
|
9
|
-
import type { CommitWait } from '
|
|
10
|
-
import type {
|
|
9
|
+
import type { CommitWait } from '../../commit/contract.js';
|
|
10
|
+
import type { ReadDependency } from '../../coordination/schema.js';
|
|
11
11
|
/**
|
|
12
12
|
* Per-call options accepted by any mutation, passed as the last argument.
|
|
13
13
|
* Every field is optional; omitted fields fall back to sensible defaults.
|
|
@@ -25,7 +25,6 @@ export interface MutationOptions {
|
|
|
25
25
|
label?: string;
|
|
26
26
|
wait?: CommitWait;
|
|
27
27
|
readAt?: number | null;
|
|
28
|
-
onStale?: OnStaleMode | null;
|
|
29
28
|
/**
|
|
30
29
|
* The fencing token (Option B) of the held claim this write belongs to. The
|
|
31
30
|
* server validates it against the entity's persisted high-water and rejects a
|
|
@@ -43,25 +42,13 @@ export interface MutationOptions {
|
|
|
43
42
|
* The batch premise — the answer to "did anything I looked at change?" Each
|
|
44
43
|
* entry is a row (`{ model, id, readAt, fields? }`) or a sync group
|
|
45
44
|
* (`{ group, readAt }`) that this write was premised on. The server checks
|
|
46
|
-
* that none of them moved since their `readAt
|
|
47
|
-
*
|
|
45
|
+
* that none of them moved since their `readAt`; a stale dependency rejects the
|
|
46
|
+
* whole batch. This is distinct from the per-operation
|
|
48
47
|
* `readAt`, which guards only the row being written.
|
|
49
48
|
*
|
|
50
49
|
* See `packages/ablo/docs/concurrency-convention.md` (§3 the two
|
|
51
50
|
* premises, §4 the batch premise) for the governing convention.
|
|
52
51
|
*/
|
|
53
52
|
reads?: ReadDependency[] | null;
|
|
54
|
-
/**
|
|
55
|
-
* Durable premises — what this write (or the record it produces) should
|
|
56
|
-
* keep watching. Unlike `reads`, which is checked once at commit and discarded,
|
|
57
|
-
* each `track` entry is persisted and re-checked against every future delta; a
|
|
58
|
-
* later matching change opens a `StaleNotification` for the tracking participant,
|
|
59
|
-
* delivered at their next commit or live to a held claim. Each entry is a row
|
|
60
|
-
* (`{ model, id }`) or a sync group (`{ group }`), optionally pinned to a `readAt`
|
|
61
|
-
* baseline (defaults to this commit's watermark).
|
|
62
|
-
*
|
|
63
|
-
* See `packages/ablo/docs/groups.md` for how `track` drives propagation.
|
|
64
|
-
*/
|
|
65
|
-
track?: TrackDependency[] | null;
|
|
66
53
|
}
|
|
67
54
|
//# sourceMappingURL=mutationOptions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mutationOptions.d.ts","sourceRoot":"","sources":["../../../src/client/resources/mutationOptions.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,eAAe;IAC9B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B;;;yFAGqF;IACrF,QAAQ,CAAC,EAAE,MAAM,GAAG;QAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACnD;;;;;;;;;;OAUG;IACH,KAAK,CAAC,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;CACjC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mutationOptions.js","sourceRoot":"","sources":["../../../src/client/resources/mutationOptions.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"where.d.ts","sourceRoot":"","sources":["../../../src/client/resources/where.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,yDAAyD;AACzD,eAAO,MAAM,oBAAoB,0EAK/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;;;;GAKG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;EAexB,CAAC;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAEpD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,gBAAgB,EAAE,WAAW,CAAC,OAAO,CAWhD,CAAC;AACH,eAAO,MAAM,eAAe,EAAE,WAAW,CAAC,OAAO,CAAsC,CAAC;AACxF,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,OAAO,CAAsC,CAAC;AACvF,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,OAAO,CAK9C,CAAC;AAEH;;;;;;;;;;;;;;GAcG;AACH;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,cAAc,GAAG,SAAS,cAAc,EAAE,GAAG,SAAS,GAC5D,KAAK,IAAI,SAAS,cAAc,EAAE,CAEpC;AAED,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,OAAO,EACX,KAAK,EAAE,OAAO,GACb,MAAM,GAAG,OAAO,GAAG,QAAQ,CA4B7B;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;mNAS5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,yEAAyE;AACzE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;qNAAwC,CAAC;AAExE;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,IACnB,OAAO,CAAC,CAAC,CAAC,GACV;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;CAAE,GAC3C,SAAS,WAAW,EAAE,CAAC;AAE3B;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,WAAW,EAAE,CAYrE"}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* so they live with the commit core rather than the reactive consumer.
|
|
14
14
|
*/
|
|
15
15
|
import { z } from 'zod';
|
|
16
|
-
import { AbloValidationError } from '
|
|
16
|
+
import { AbloValidationError } from '../../errors.js';
|
|
17
17
|
/** Primitive operand types allowed in a where clause. */
|
|
18
18
|
export const wherePrimitiveSchema = z.union([
|
|
19
19
|
z.string(),
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"where.js","sourceRoot":"","sources":["../../../src/client/resources/where.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* The Zod schema for write options — the settings accepted by every write
|
|
3
3
|
* entry point, including `ablo.<model>.create/update/delete`, `commits.create`,
|
|
4
4
|
* and the HTTP write routes. Each of those boundaries validates against this
|
|
5
|
-
* one schema, so a caller who passes
|
|
5
|
+
* one schema, so a caller who passes a malformed option fails right away
|
|
6
6
|
* with a typed {@link AbloValidationError} at the call site instead of silently
|
|
7
7
|
* or with a 400 from the server.
|
|
8
8
|
*
|
|
@@ -16,18 +16,11 @@
|
|
|
16
16
|
* asserts the shape rather than replacing the value with a parsed copy.
|
|
17
17
|
*/
|
|
18
18
|
import { z } from 'zod';
|
|
19
|
-
import { onStaleModeSchema } from '../coordination/schema.js';
|
|
20
|
-
export { onStaleModeSchema };
|
|
21
19
|
export declare const writeOptionsSchema: z.ZodObject<{
|
|
22
20
|
idempotencyKey: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
23
21
|
label: z.ZodOptional<z.ZodString>;
|
|
24
22
|
wait: z.ZodOptional<z.ZodUnion<readonly [z.ZodLiteral<"queued">, z.ZodLiteral<"confirmed">]>>;
|
|
25
23
|
readAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
26
|
-
onStale: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
|
|
27
|
-
reject: "reject";
|
|
28
|
-
overwrite: "overwrite";
|
|
29
|
-
notify: "notify";
|
|
30
|
-
}>>>;
|
|
31
24
|
fenceToken: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
32
25
|
claim: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodObject<{
|
|
33
26
|
id: z.ZodString;
|
|
@@ -36,39 +29,13 @@ export declare const writeOptionsSchema: z.ZodObject<{
|
|
|
36
29
|
id: z.ZodString;
|
|
37
30
|
}, z.core.$strip>]>>>;
|
|
38
31
|
reads: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
|
|
32
|
+
model: z.ZodString;
|
|
39
33
|
id: z.ZodString;
|
|
40
34
|
fields: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
|
|
41
|
-
model: z.ZodString;
|
|
42
35
|
readAt: z.ZodNumber;
|
|
43
|
-
onStale: z.ZodOptional<z.ZodEnum<{
|
|
44
|
-
reject: "reject";
|
|
45
|
-
overwrite: "overwrite";
|
|
46
|
-
notify: "notify";
|
|
47
|
-
}>>;
|
|
48
36
|
}, z.core.$strip>, z.ZodObject<{
|
|
49
37
|
group: z.ZodTemplateLiteral<`${string}:${string}`>;
|
|
50
38
|
readAt: z.ZodNumber;
|
|
51
|
-
onStale: z.ZodOptional<z.ZodEnum<{
|
|
52
|
-
reject: "reject";
|
|
53
|
-
overwrite: "overwrite";
|
|
54
|
-
notify: "notify";
|
|
55
|
-
}>>;
|
|
56
|
-
}, z.core.$strip>]>>>>;
|
|
57
|
-
track: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
|
|
58
|
-
id: z.ZodString;
|
|
59
|
-
model: z.ZodString;
|
|
60
|
-
readAt: z.ZodOptional<z.ZodNumber>;
|
|
61
|
-
onStale: z.ZodOptional<z.ZodEnum<{
|
|
62
|
-
reject: "reject";
|
|
63
|
-
notify: "notify";
|
|
64
|
-
}>>;
|
|
65
|
-
}, z.core.$strip>, z.ZodObject<{
|
|
66
|
-
group: z.ZodTemplateLiteral<`${string}:${string}`>;
|
|
67
|
-
readAt: z.ZodOptional<z.ZodNumber>;
|
|
68
|
-
onStale: z.ZodOptional<z.ZodEnum<{
|
|
69
|
-
reject: "reject";
|
|
70
|
-
notify: "notify";
|
|
71
|
-
}>>;
|
|
72
39
|
}, z.core.$strip>]>>>>;
|
|
73
40
|
}, z.core.$strip>;
|
|
74
41
|
export type WriteOptionsInput = z.infer<typeof writeOptionsSchema>;
|
|
@@ -80,4 +47,18 @@ export type WriteOptionsInput = z.infer<typeof writeOptionsSchema>;
|
|
|
80
47
|
* untouched. A `null` or `undefined` value passes.
|
|
81
48
|
*/
|
|
82
49
|
export declare function assertWriteOptions(value: unknown, context?: string): void;
|
|
50
|
+
/**
|
|
51
|
+
* Refuse a per-model write that does not name its row.
|
|
52
|
+
*
|
|
53
|
+
* `update` and `delete` address the row through the URL, so an absent `id`
|
|
54
|
+
* used to be spelled into the path by `encodeURIComponent` as the literal
|
|
55
|
+
* string `"undefined"`. The request was well-formed, it matched no row, and it
|
|
56
|
+
* came back as an ordinary receipt: `delete({ where: { id } })` reported
|
|
57
|
+
* success and deleted nothing. `{ where }` is the shape the commit protocol
|
|
58
|
+
* takes one layer down, so reaching for it here is an easy and quiet mistake.
|
|
59
|
+
*
|
|
60
|
+
* The typed surface already rejects it at compile time. This is the same
|
|
61
|
+
* refusal for callers who reach the transport without those types.
|
|
62
|
+
*/
|
|
63
|
+
export declare function assertWriteTarget(action: 'update' | 'delete', modelName: string, id: unknown): void;
|
|
83
64
|
//# sourceMappingURL=writeOptionsSchema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"writeOptionsSchema.d.ts","sourceRoot":"","sources":["../../../src/client/resources/writeOptionsSchema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;iBAsB7B,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAEnE;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAezE;AAgBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,QAAQ,GAAG,QAAQ,EAC3B,SAAS,EAAE,MAAM,EACjB,EAAE,EAAE,OAAO,GACV,IAAI,CASN"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* The Zod schema for write options — the settings accepted by every write
|
|
3
3
|
* entry point, including `ablo.<model>.create/update/delete`, `commits.create`,
|
|
4
4
|
* and the HTTP write routes. Each of those boundaries validates against this
|
|
5
|
-
* one schema, so a caller who passes
|
|
5
|
+
* one schema, so a caller who passes a malformed option fails right away
|
|
6
6
|
* with a typed {@link AbloValidationError} at the call site instead of silently
|
|
7
7
|
* or with a 400 from the server.
|
|
8
8
|
*
|
|
@@ -16,16 +16,10 @@
|
|
|
16
16
|
* asserts the shape rather than replacing the value with a parsed copy.
|
|
17
17
|
*/
|
|
18
18
|
import { z } from 'zod';
|
|
19
|
-
import { logPositionSchema } from '
|
|
20
|
-
import { AbloValidationError } from '
|
|
21
|
-
import { commitWaitSchema } from '
|
|
22
|
-
import {
|
|
23
|
-
// Re-exported, not redeclared. `coordination/schema.ts` owns this enum — it is
|
|
24
|
-
// what the wire schemas and the server validate against — while the published
|
|
25
|
-
// SDK barrel exports the name from this module. Declaring it twice put a second
|
|
26
|
-
// object behind the public export that agreed with the canonical one only by
|
|
27
|
-
// both happening to list the same three strings.
|
|
28
|
-
export { onStaleModeSchema };
|
|
19
|
+
import { logPositionSchema } from '../../syncLog/contract.js';
|
|
20
|
+
import { AbloValidationError } from '../../errors.js';
|
|
21
|
+
import { commitWaitSchema } from '../../commit/contract.js';
|
|
22
|
+
import { readDependencyListSchema } from '../../coordination/schema.js';
|
|
29
23
|
export const writeOptionsSchema = z.object({
|
|
30
24
|
/** Idempotency key the server records in `mutation_log` to make retries
|
|
31
25
|
* safe; `null` opts out of that protection. */
|
|
@@ -36,8 +30,6 @@ export const writeOptionsSchema = z.object({
|
|
|
36
30
|
wait: commitWaitSchema.optional(),
|
|
37
31
|
/** Stale guard: the sync watermark the caller's reasoning was based on. */
|
|
38
32
|
readAt: logPositionSchema.nullish(),
|
|
39
|
-
/** What the server does when the target moved past `readAt`. */
|
|
40
|
-
onStale: onStaleModeSchema.nullish(),
|
|
41
33
|
/** The held claim's fencing token (Option B), sourced from the claim handle
|
|
42
34
|
* rather than set by hand; the server validates it against the entity's
|
|
43
35
|
* high-water. Kept in the schema so it stays aligned with `MutationOptions`
|
|
@@ -50,11 +42,6 @@ export const writeOptionsSchema = z.object({
|
|
|
50
42
|
claimRef: z.union([z.string(), z.object({ id: z.string() })]).nullish(),
|
|
51
43
|
/** Commit-lifetime entries in the write's ReadSet. */
|
|
52
44
|
reads: readDependencyListSchema.nullish(),
|
|
53
|
-
/** Persisted entries projected from the write's ReadSet. */
|
|
54
|
-
track: trackDependencyListSchema.nullish(),
|
|
55
|
-
}).refine((value) => readSetProjectionEntryCount(value) <= MAX_READ_SET_ENTRIES, {
|
|
56
|
-
path: ['reads'],
|
|
57
|
-
message: `reads and track may contain at most ${MAX_READ_SET_ENTRIES} entries combined`,
|
|
58
45
|
});
|
|
59
46
|
/**
|
|
60
47
|
* Validates a write-options object against {@link writeOptionsSchema}. On
|
|
@@ -78,4 +65,24 @@ export function assertWriteOptions(value, context) {
|
|
|
78
65
|
}
|
|
79
66
|
const _writeOptionsContractInSync = true;
|
|
80
67
|
void _writeOptionsContractInSync;
|
|
68
|
+
/**
|
|
69
|
+
* Refuse a per-model write that does not name its row.
|
|
70
|
+
*
|
|
71
|
+
* `update` and `delete` address the row through the URL, so an absent `id`
|
|
72
|
+
* used to be spelled into the path by `encodeURIComponent` as the literal
|
|
73
|
+
* string `"undefined"`. The request was well-formed, it matched no row, and it
|
|
74
|
+
* came back as an ordinary receipt: `delete({ where: { id } })` reported
|
|
75
|
+
* success and deleted nothing. `{ where }` is the shape the commit protocol
|
|
76
|
+
* takes one layer down, so reaching for it here is an easy and quiet mistake.
|
|
77
|
+
*
|
|
78
|
+
* The typed surface already rejects it at compile time. This is the same
|
|
79
|
+
* refusal for callers who reach the transport without those types.
|
|
80
|
+
*/
|
|
81
|
+
export function assertWriteTarget(action, modelName, id) {
|
|
82
|
+
if (typeof id === 'string' && id.length > 0)
|
|
83
|
+
return;
|
|
84
|
+
const namedAFilter = typeof id === 'object' && id !== null && 'where' in id;
|
|
85
|
+
throw new AbloValidationError(`A ${modelName} ${action} has to name the row it acts on: ${action}({ id })` +
|
|
86
|
+
(namedAFilter ? ', not a `where` filter.' : '.'), { code: 'invalid_body', param: 'id' });
|
|
87
|
+
}
|
|
81
88
|
//# sourceMappingURL=writeOptionsSchema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"writeOptionsSchema.js","sourceRoot":"","sources":["../../../src/client/resources/writeOptionsSchema.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,11 +28,6 @@ export declare const durableCommitOperationSchema: z.ZodObject<{
|
|
|
28
28
|
UNARCHIVE: "UNARCHIVE";
|
|
29
29
|
}>;
|
|
30
30
|
readAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
31
|
-
onStale: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
|
|
32
|
-
reject: "reject";
|
|
33
|
-
overwrite: "overwrite";
|
|
34
|
-
notify: "notify";
|
|
35
|
-
}>>>;
|
|
36
31
|
fenceToken: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
37
32
|
model: z.ZodString;
|
|
38
33
|
id: z.ZodString;
|
|
@@ -75,11 +70,6 @@ export declare const durableCommitEnvelopeSchema: z.ZodObject<{
|
|
|
75
70
|
UNARCHIVE: "UNARCHIVE";
|
|
76
71
|
}>;
|
|
77
72
|
readAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
78
|
-
onStale: z.ZodOptional<z.ZodNullable<z.ZodEnum<{
|
|
79
|
-
reject: "reject";
|
|
80
|
-
overwrite: "overwrite";
|
|
81
|
-
notify: "notify";
|
|
82
|
-
}>>>;
|
|
83
73
|
fenceToken: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
84
74
|
model: z.ZodString;
|
|
85
75
|
id: z.ZodString;
|
|
@@ -94,39 +84,13 @@ export declare const durableCommitEnvelopeSchema: z.ZodObject<{
|
|
|
94
84
|
sourceMutationIds: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
95
85
|
commitOptions: z.ZodDefault<z.ZodObject<{
|
|
96
86
|
reads: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
|
|
87
|
+
model: z.ZodString;
|
|
97
88
|
id: z.ZodString;
|
|
98
89
|
fields: z.ZodOptional<z.ZodReadonly<z.ZodArray<z.ZodString>>>;
|
|
99
|
-
model: z.ZodString;
|
|
100
90
|
readAt: z.ZodNumber;
|
|
101
|
-
onStale: z.ZodOptional<z.ZodEnum<{
|
|
102
|
-
reject: "reject";
|
|
103
|
-
overwrite: "overwrite";
|
|
104
|
-
notify: "notify";
|
|
105
|
-
}>>;
|
|
106
91
|
}, z.core.$strip>, z.ZodObject<{
|
|
107
92
|
group: z.ZodTemplateLiteral<`${string}:${string}`>;
|
|
108
93
|
readAt: z.ZodNumber;
|
|
109
|
-
onStale: z.ZodOptional<z.ZodEnum<{
|
|
110
|
-
reject: "reject";
|
|
111
|
-
overwrite: "overwrite";
|
|
112
|
-
notify: "notify";
|
|
113
|
-
}>>;
|
|
114
|
-
}, z.core.$strip>]>>>>;
|
|
115
|
-
track: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
|
|
116
|
-
id: z.ZodString;
|
|
117
|
-
model: z.ZodString;
|
|
118
|
-
readAt: z.ZodOptional<z.ZodNumber>;
|
|
119
|
-
onStale: z.ZodOptional<z.ZodEnum<{
|
|
120
|
-
reject: "reject";
|
|
121
|
-
notify: "notify";
|
|
122
|
-
}>>;
|
|
123
|
-
}, z.core.$strip>, z.ZodObject<{
|
|
124
|
-
group: z.ZodTemplateLiteral<`${string}:${string}`>;
|
|
125
|
-
readAt: z.ZodOptional<z.ZodNumber>;
|
|
126
|
-
onStale: z.ZodOptional<z.ZodEnum<{
|
|
127
|
-
reject: "reject";
|
|
128
|
-
notify: "notify";
|
|
129
|
-
}>>;
|
|
130
94
|
}, z.core.$strip>]>>>>;
|
|
131
95
|
}, z.core.$strict>>;
|
|
132
96
|
scope: z.ZodOptional<z.ZodObject<{
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commitEnvelope.d.ts","sourceRoot":"","sources":["../../../src/commit/confirmation/commitEnvelope.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,uBAAuB,EAAG,CAAU,CAAC;AAClD,eAAO,MAAM,6BAA6B,qBAAqB,CAAC;AAEhE,+EAA+E;AAC/E,eAAO,MAAM,0BAA0B;;;;;;kBAWpC,CAAC;AAEJ,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,6EAA6E;AAC7E,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;iBAuBrC,CAAC;AAEL,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAMvF,eAAO,MAAM,uBAAuB;;;;kBAIlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE;;;;GAIG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA2EpC,CAAC;AAEL,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF,wBAAgB,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAErE;AAED,8EAA8E;AAC9E,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,GAChD,oBAAoB,CAEtB;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,IAAI,CACT,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,EAC3C,IAAI,GAAG,MAAM,GAAG,gBAAgB,GAAG,WAAW,CAC/C,GACA,qBAAqB,CAWvB"}
|
|
@@ -7,9 +7,9 @@
|
|
|
7
7
|
* operations, and the source mutations it supersedes.
|
|
8
8
|
*/
|
|
9
9
|
import { z } from 'zod';
|
|
10
|
-
import {
|
|
10
|
+
import { readDependencyListSchema } from '../../coordination/schema.js';
|
|
11
11
|
import { wireCommitOperationSchema } from '../../wire/frames.js';
|
|
12
|
-
import { correlationIdSchema } from '
|
|
12
|
+
import { correlationIdSchema } from '../contract.js';
|
|
13
13
|
import { idempotencyKeySchema } from './idempotencyKey.js';
|
|
14
14
|
import { snapshotJsonValue } from '../../utils/json.js';
|
|
15
15
|
export const COMMIT_ENVELOPE_VERSION = 1;
|
|
@@ -34,7 +34,6 @@ export const durableCommitOperationSchema = wireCommitOperationSchema
|
|
|
34
34
|
transactionId: true,
|
|
35
35
|
claimId: true,
|
|
36
36
|
readAt: true,
|
|
37
|
-
onStale: true,
|
|
38
37
|
fenceToken: true,
|
|
39
38
|
})
|
|
40
39
|
.extend({
|
|
@@ -52,10 +51,6 @@ export const durableCommitOperationSchema = wireCommitOperationSchema
|
|
|
52
51
|
});
|
|
53
52
|
const durableCommitOptionsSchema = z.strictObject({
|
|
54
53
|
reads: readDependencyListSchema.nullable().optional(),
|
|
55
|
-
track: trackDependencyListSchema.nullable().optional(),
|
|
56
|
-
}).refine((value) => readSetProjectionEntryCount(value) <= MAX_READ_SET_ENTRIES, {
|
|
57
|
-
path: ['reads'],
|
|
58
|
-
message: `reads and track may contain at most ${MAX_READ_SET_ENTRIES} entries combined`,
|
|
59
54
|
});
|
|
60
55
|
export const commitOutboxScopeSchema = z.strictObject({
|
|
61
56
|
organizationId: z.string().min(1),
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commitEnvelope.js","sourceRoot":"","sources":["../../../src/commit/confirmation/commitEnvelope.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"httpCommitEnvelope.d.ts","sourceRoot":"","sources":["../../../src/commit/confirmation/httpCommitEnvelope.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAE3E,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,eAAO,MAAM,4BAA4B,EAAG,CAAU,CAAC;AACvD,eAAO,MAAM,2BAA2B,0BAA0B,CAAC;AACnE,8EAA8E;AAC9E,eAAO,MAAM,4BAA4B,QAAsB,CAAC;AA4BhE,6EAA6E;AAC7E,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAE9D;AAED,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;kBAuIxC,CAAC;AAEL,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAC7C,OAAO,+BAA+B,CACvC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,uBAAuB,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;AAErF,wBAAgB,0BAA0B,CACxC,cAAc,EAAE,MAAM,EACtB,cAAc,CAAC,EAAE,MAAM,GACtB,MAAM,CAMR;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE;IACrD,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE;QACP,MAAM,EAAE,uBAAuB,CAAC;QAChC,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,OAAO,CAAC;KACf,CAAC;IACF,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,yBAAyB,CAsB5B;AAED,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,IAAI,CAAC,yBAAyB,EAAE,UAAU,GAAG,YAAY,CAAC,EACpE,GAAG,SAAa,GACf,OAAO,CAMT"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { z } from 'zod';
|
|
3
3
|
import { v5 as uuidv5 } from 'uuid';
|
|
4
4
|
import { snapshotJsonValue, stableStringify } from '../../utils/json.js';
|
|
5
|
-
import { correlationIdSchema } from '
|
|
5
|
+
import { correlationIdSchema } from '../contract.js';
|
|
6
6
|
import { PROTOCOL_VERSION } from '../../wire/protocolVersion.js';
|
|
7
7
|
import { idempotencyKeySchema } from './idempotencyKey.js';
|
|
8
8
|
export const HTTP_COMMIT_ENVELOPE_VERSION = 1;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"httpCommitEnvelope.js","sourceRoot":"","sources":["../../../src/commit/confirmation/httpCommitEnvelope.ts"],"names":[],"mappings":"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"}
|