@restatedev/restate-sdk 1.0.0 → 1.1.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/README.md +3 -3
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/src/common_api.d.ts +9 -0
- package/dist/cjs/src/common_api.d.ts.map +1 -0
- package/dist/{src/public_api.js → cjs/src/common_api.js} +13 -15
- package/dist/cjs/src/common_api.js.map +1 -0
- package/dist/{src/connection/http_connection.d.ts → cjs/src/connection/connection.d.ts} +32 -25
- package/dist/cjs/src/connection/connection.d.ts.map +1 -0
- package/dist/cjs/src/connection/connection.js +181 -0
- package/dist/cjs/src/connection/connection.js.map +1 -0
- package/dist/{src → cjs/src}/context.d.ts +14 -10
- package/dist/cjs/src/context.d.ts.map +1 -0
- package/dist/{src → cjs/src}/context.js +5 -5
- package/dist/cjs/src/context.js.map +1 -0
- package/dist/{src → cjs/src}/context_impl.d.ts +7 -18
- package/dist/cjs/src/context_impl.d.ts.map +1 -0
- package/dist/{src → cjs/src}/context_impl.js +90 -123
- package/dist/cjs/src/context_impl.js.map +1 -0
- package/dist/cjs/src/endpoint/endpoint_builder.d.ts +28 -0
- package/dist/cjs/src/endpoint/endpoint_builder.d.ts.map +1 -0
- package/dist/{src/endpoint/endpoint_impl.js → cjs/src/endpoint/endpoint_builder.js} +30 -77
- package/dist/cjs/src/endpoint/endpoint_builder.js.map +1 -0
- package/dist/cjs/src/endpoint/fetch_endpoint.d.ts +54 -0
- package/dist/cjs/src/endpoint/fetch_endpoint.d.ts.map +1 -0
- package/dist/cjs/src/endpoint/fetch_endpoint.js +61 -0
- package/dist/cjs/src/endpoint/fetch_endpoint.js.map +1 -0
- package/dist/cjs/src/endpoint/handlers/fetch.d.ts +6 -0
- package/dist/cjs/src/endpoint/handlers/fetch.d.ts.map +1 -0
- package/dist/cjs/src/endpoint/handlers/fetch.js +33 -0
- package/dist/cjs/src/endpoint/handlers/fetch.js.map +1 -0
- package/dist/cjs/src/endpoint/handlers/generic.d.ts +47 -0
- package/dist/cjs/src/endpoint/handlers/generic.d.ts.map +1 -0
- package/dist/cjs/src/endpoint/handlers/generic.js +215 -0
- package/dist/cjs/src/endpoint/handlers/generic.js.map +1 -0
- package/dist/cjs/src/endpoint/handlers/lambda.d.ts +8 -0
- package/dist/cjs/src/endpoint/handlers/lambda.d.ts.map +1 -0
- package/dist/cjs/src/endpoint/handlers/lambda.js +83 -0
- package/dist/cjs/src/endpoint/handlers/lambda.js.map +1 -0
- package/dist/cjs/src/endpoint/lambda_endpoint.d.ts +34 -0
- package/dist/cjs/src/endpoint/lambda_endpoint.d.ts.map +1 -0
- package/dist/cjs/src/endpoint/lambda_endpoint.js +53 -0
- package/dist/cjs/src/endpoint/lambda_endpoint.js.map +1 -0
- package/dist/cjs/src/endpoint/node_endpoint.d.ts +21 -0
- package/dist/cjs/src/endpoint/node_endpoint.d.ts.map +1 -0
- package/dist/cjs/src/endpoint/node_endpoint.js +127 -0
- package/dist/cjs/src/endpoint/node_endpoint.js.map +1 -0
- package/dist/cjs/src/endpoint/request_signing/basex.d.ts.map +1 -0
- package/dist/cjs/src/endpoint/request_signing/basex.js.map +1 -0
- package/dist/{src → cjs/src}/endpoint/request_signing/ed25519.d.ts +1 -1
- package/dist/cjs/src/endpoint/request_signing/ed25519.d.ts.map +1 -0
- package/dist/{src → cjs/src}/endpoint/request_signing/ed25519.js +3 -1
- package/dist/cjs/src/endpoint/request_signing/ed25519.js.map +1 -0
- package/dist/{src → cjs/src}/endpoint/request_signing/v1.d.ts +2 -2
- package/dist/cjs/src/endpoint/request_signing/v1.d.ts.map +1 -0
- package/dist/{src → cjs/src}/endpoint/request_signing/v1.js +9 -16
- package/dist/cjs/src/endpoint/request_signing/v1.js.map +1 -0
- package/dist/{src → cjs/src}/endpoint/request_signing/validate.d.ts +1 -1
- package/dist/cjs/src/endpoint/request_signing/validate.d.ts.map +1 -0
- package/dist/{src → cjs/src}/endpoint/request_signing/validate.js +3 -3
- package/dist/cjs/src/endpoint/request_signing/validate.js.map +1 -0
- package/dist/{src → cjs/src}/endpoint.d.ts +51 -29
- package/dist/cjs/src/endpoint.d.ts.map +1 -0
- package/dist/{src/connection/connection.js → cjs/src/endpoint.js} +1 -1
- package/dist/cjs/src/endpoint.js.map +1 -0
- package/dist/cjs/src/fetch.d.ts +8 -0
- package/dist/cjs/src/fetch.d.ts.map +1 -0
- package/dist/cjs/src/fetch.js +39 -0
- package/dist/cjs/src/fetch.js.map +1 -0
- package/dist/cjs/src/generated/proto/discovery_pb.d.ts.map +1 -0
- package/dist/{src → cjs/src}/generated/proto/discovery_pb.js +1 -1
- package/dist/cjs/src/generated/proto/discovery_pb.js.map +1 -0
- package/dist/cjs/src/generated/proto/javascript_pb.d.ts.map +1 -0
- package/dist/cjs/src/generated/proto/javascript_pb.js.map +1 -0
- package/dist/cjs/src/generated/proto/protocol_pb.d.ts.map +1 -0
- package/dist/{src → cjs/src}/generated/proto/protocol_pb.js +1 -1
- package/dist/cjs/src/generated/proto/protocol_pb.js.map +1 -0
- package/dist/cjs/src/generated/version.d.ts +2 -0
- package/dist/cjs/src/generated/version.d.ts.map +1 -0
- package/dist/{src → cjs/src}/generated/version.js +1 -1
- package/dist/cjs/src/generated/version.js.map +1 -0
- package/dist/{src → cjs/src}/invocation.d.ts +5 -5
- package/dist/cjs/src/invocation.d.ts.map +1 -0
- package/dist/{src → cjs/src}/invocation.js +14 -14
- package/dist/cjs/src/invocation.js.map +1 -0
- package/dist/{src → cjs/src}/io/decoder.d.ts +3 -3
- package/dist/cjs/src/io/decoder.d.ts.map +1 -0
- package/dist/{src → cjs/src}/io/decoder.js +25 -24
- package/dist/cjs/src/io/decoder.js.map +1 -0
- package/dist/cjs/src/io/encoder.d.ts +4 -0
- package/dist/cjs/src/io/encoder.d.ts.map +1 -0
- package/dist/{src → cjs/src}/io/encoder.js +7 -23
- package/dist/cjs/src/io/encoder.js.map +1 -0
- package/dist/{src → cjs/src}/journal.d.ts +7 -7
- package/dist/cjs/src/journal.d.ts.map +1 -0
- package/dist/{src → cjs/src}/journal.js +38 -38
- package/dist/cjs/src/journal.js.map +1 -0
- package/dist/cjs/src/lambda.d.ts +7 -0
- package/dist/cjs/src/lambda.d.ts.map +1 -0
- package/dist/cjs/src/lambda.js +37 -0
- package/dist/cjs/src/lambda.js.map +1 -0
- package/dist/{src → cjs/src}/local_state_store.d.ts +2 -1
- package/dist/cjs/src/local_state_store.d.ts.map +1 -0
- package/dist/{src → cjs/src}/local_state_store.js +10 -10
- package/dist/cjs/src/local_state_store.js.map +1 -0
- package/dist/cjs/src/logger.d.ts +35 -0
- package/dist/cjs/src/logger.d.ts.map +1 -0
- package/dist/cjs/src/logger.js +151 -0
- package/dist/cjs/src/logger.js.map +1 -0
- package/dist/{src → cjs/src}/promise_combinator_tracker.d.ts +1 -1
- package/dist/cjs/src/promise_combinator_tracker.d.ts.map +1 -0
- package/dist/{src → cjs/src}/promise_combinator_tracker.js +7 -5
- package/dist/cjs/src/promise_combinator_tracker.js.map +1 -0
- package/dist/cjs/src/public_api.d.ts +7 -0
- package/dist/cjs/src/public_api.d.ts.map +1 -0
- package/dist/cjs/src/public_api.js +37 -0
- package/dist/cjs/src/public_api.js.map +1 -0
- package/dist/{src → cjs/src}/state_machine.d.ts +13 -15
- package/dist/cjs/src/state_machine.d.ts.map +1 -0
- package/dist/{src → cjs/src}/state_machine.js +55 -63
- package/dist/cjs/src/state_machine.js.map +1 -0
- package/dist/{src → cjs/src}/types/components.d.ts +4 -3
- package/dist/cjs/src/types/components.d.ts.map +1 -0
- package/dist/{src → cjs/src}/types/components.js +4 -4
- package/dist/cjs/src/types/components.js.map +1 -0
- package/dist/cjs/src/types/discovery.d.ts.map +1 -0
- package/dist/{src → cjs/src}/types/discovery.js +3 -3
- package/dist/cjs/src/types/discovery.js.map +1 -0
- package/dist/{src → cjs/src}/types/errors.d.ts +2 -2
- package/dist/cjs/src/types/errors.d.ts.map +1 -0
- package/dist/{src → cjs/src}/types/errors.js +8 -8
- package/dist/cjs/src/types/errors.js.map +1 -0
- package/dist/{src → cjs/src}/types/protocol.d.ts +6 -8
- package/dist/cjs/src/types/protocol.d.ts.map +1 -0
- package/dist/{src → cjs/src}/types/protocol.js +61 -61
- package/dist/cjs/src/types/protocol.js.map +1 -0
- package/dist/{src → cjs/src}/types/rpc.d.ts +13 -13
- package/dist/cjs/src/types/rpc.d.ts.map +1 -0
- package/dist/{src → cjs/src}/types/rpc.js +8 -7
- package/dist/cjs/src/types/rpc.js.map +1 -0
- package/dist/{src → cjs/src}/types/types.d.ts +1 -1
- package/dist/cjs/src/types/types.d.ts.map +1 -0
- package/dist/{src → cjs/src}/types/types.js +14 -14
- package/dist/cjs/src/types/types.js.map +1 -0
- package/dist/cjs/src/user_agent.d.ts +2 -0
- package/dist/cjs/src/user_agent.d.ts.map +1 -0
- package/dist/{src → cjs/src}/user_agent.js +2 -2
- package/dist/cjs/src/user_agent.js.map +1 -0
- package/dist/cjs/src/utils/buffer.d.ts +5 -0
- package/dist/cjs/src/utils/buffer.d.ts.map +1 -0
- package/dist/cjs/src/utils/buffer.js +59 -0
- package/dist/cjs/src/utils/buffer.js.map +1 -0
- package/dist/cjs/src/utils/message_logger.d.ts +7 -0
- package/dist/cjs/src/utils/message_logger.d.ts.map +1 -0
- package/dist/{src → cjs/src}/utils/message_logger.js +8 -8
- package/dist/cjs/src/utils/message_logger.js.map +1 -0
- package/dist/cjs/src/utils/promises.d.ts.map +1 -0
- package/dist/{src → cjs/src}/utils/promises.js +2 -1
- package/dist/cjs/src/utils/promises.js.map +1 -0
- package/dist/{src → cjs/src}/utils/rand.d.ts +3 -3
- package/dist/cjs/src/utils/rand.d.ts.map +1 -0
- package/dist/{src → cjs/src}/utils/rand.js +10 -15
- package/dist/cjs/src/utils/rand.js.map +1 -0
- package/dist/cjs/src/utils/serde.d.ts +5 -0
- package/dist/cjs/src/utils/serde.d.ts.map +1 -0
- package/dist/{src → cjs/src}/utils/serde.js +6 -4
- package/dist/cjs/src/utils/serde.js.map +1 -0
- package/dist/cjs/src/utils/streams.d.ts +4 -0
- package/dist/cjs/src/utils/streams.d.ts.map +1 -0
- package/dist/cjs/src/utils/streams.js +24 -0
- package/dist/cjs/src/utils/streams.js.map +1 -0
- package/dist/cjs/src/utils/utils.d.ts.map +1 -0
- package/dist/{src → cjs/src}/utils/utils.js +11 -11
- package/dist/cjs/src/utils/utils.js.map +1 -0
- package/dist/cjs/test/awakeable.test.d.ts +2 -0
- package/dist/cjs/test/awakeable.test.d.ts.map +1 -0
- package/dist/cjs/test/awakeable.test.js +141 -0
- package/dist/cjs/test/awakeable.test.js.map +1 -0
- package/dist/cjs/test/complete_awakeable.test.d.ts +2 -0
- package/dist/cjs/test/complete_awakeable.test.d.ts.map +1 -0
- package/dist/cjs/test/complete_awakeable.test.js +123 -0
- package/dist/cjs/test/complete_awakeable.test.js.map +1 -0
- package/dist/cjs/test/eager_state.test.d.ts +2 -0
- package/dist/cjs/test/eager_state.test.d.ts.map +1 -0
- package/dist/cjs/test/eager_state.test.js +280 -0
- package/dist/cjs/test/eager_state.test.js.map +1 -0
- package/dist/cjs/test/get_and_set_state.test.d.ts +2 -0
- package/dist/cjs/test/get_and_set_state.test.d.ts.map +1 -0
- package/dist/cjs/test/get_and_set_state.test.js +233 -0
- package/dist/cjs/test/get_and_set_state.test.js.map +1 -0
- package/dist/cjs/test/get_state.test.d.ts +2 -0
- package/dist/cjs/test/get_state.test.d.ts.map +1 -0
- package/dist/cjs/test/get_state.test.js +333 -0
- package/dist/cjs/test/get_state.test.js.map +1 -0
- package/dist/cjs/test/lambda.test.d.ts +2 -0
- package/dist/cjs/test/lambda.test.d.ts.map +1 -0
- package/dist/cjs/test/lambda.test.js +246 -0
- package/dist/cjs/test/lambda.test.js.map +1 -0
- package/dist/cjs/test/message_coders.test.d.ts +2 -0
- package/dist/cjs/test/message_coders.test.d.ts.map +1 -0
- package/dist/cjs/test/message_coders.test.js +37 -0
- package/dist/cjs/test/message_coders.test.js.map +1 -0
- package/dist/cjs/test/promise_combinator_tracker.test.d.ts +2 -0
- package/dist/cjs/test/promise_combinator_tracker.test.d.ts.map +1 -0
- package/dist/cjs/test/promise_combinator_tracker.test.js +156 -0
- package/dist/cjs/test/promise_combinator_tracker.test.js.map +1 -0
- package/dist/cjs/test/promise_combinators.test.d.ts +2 -0
- package/dist/cjs/test/promise_combinators.test.d.ts.map +1 -0
- package/dist/cjs/test/promise_combinators.test.js +433 -0
- package/dist/cjs/test/promise_combinators.test.js.map +1 -0
- package/dist/cjs/test/promises.test.d.ts +2 -0
- package/dist/cjs/test/promises.test.d.ts.map +1 -0
- package/dist/cjs/test/promises.test.js +32 -0
- package/dist/cjs/test/promises.test.js.map +1 -0
- package/dist/cjs/test/protocol_stream.test.d.ts +2 -0
- package/dist/cjs/test/protocol_stream.test.d.ts.map +1 -0
- package/dist/cjs/test/protocol_stream.test.js +243 -0
- package/dist/cjs/test/protocol_stream.test.js.map +1 -0
- package/dist/cjs/test/protoutils.d.ts +44 -0
- package/dist/cjs/test/protoutils.d.ts.map +1 -0
- package/dist/cjs/test/protoutils.js +359 -0
- package/dist/cjs/test/protoutils.js.map +1 -0
- package/dist/cjs/test/service_bind.test.d.ts +2 -0
- package/dist/cjs/test/service_bind.test.d.ts.map +1 -0
- package/dist/cjs/test/service_bind.test.js +50 -0
- package/dist/cjs/test/service_bind.test.js.map +1 -0
- package/dist/cjs/test/side_effect.test.d.ts +2 -0
- package/dist/cjs/test/side_effect.test.d.ts.map +1 -0
- package/dist/cjs/test/side_effect.test.js +133 -0
- package/dist/cjs/test/side_effect.test.js.map +1 -0
- package/dist/cjs/test/sleep.test.d.ts +2 -0
- package/dist/cjs/test/sleep.test.d.ts.map +1 -0
- package/dist/cjs/test/sleep.test.js +224 -0
- package/dist/cjs/test/sleep.test.js.map +1 -0
- package/dist/cjs/test/state_keys.test.d.ts +2 -0
- package/dist/cjs/test/state_keys.test.d.ts.map +1 -0
- package/dist/cjs/test/state_keys.test.js +92 -0
- package/dist/cjs/test/state_keys.test.js.map +1 -0
- package/dist/cjs/test/state_machine.test.d.ts +2 -0
- package/dist/cjs/test/state_machine.test.d.ts.map +1 -0
- package/dist/cjs/test/state_machine.test.js +42 -0
- package/dist/cjs/test/state_machine.test.js.map +1 -0
- package/dist/cjs/test/testdriver.d.ts +31 -0
- package/dist/cjs/test/testdriver.d.ts.map +1 -0
- package/dist/cjs/test/testdriver.js +137 -0
- package/dist/cjs/test/testdriver.js.map +1 -0
- package/dist/cjs/test/utils.test.d.ts +2 -0
- package/dist/cjs/test/utils.test.d.ts.map +1 -0
- package/dist/cjs/test/utils.test.js +104 -0
- package/dist/cjs/test/utils.test.js.map +1 -0
- package/dist/cjs/tsconfig.tsbuildinfo +1 -0
- package/dist/esm/src/common_api.d.ts +9 -0
- package/dist/esm/src/common_api.d.ts.map +1 -0
- package/dist/esm/src/common_api.js +14 -0
- package/dist/esm/src/common_api.js.map +1 -0
- package/dist/esm/src/connection/connection.d.ts +84 -0
- package/dist/esm/src/connection/connection.d.ts.map +1 -0
- package/dist/esm/src/connection/connection.js +177 -0
- package/dist/esm/src/connection/connection.js.map +1 -0
- package/dist/esm/src/context.d.ts +545 -0
- package/dist/esm/src/context.d.ts.map +1 -0
- package/dist/esm/src/context.js +75 -0
- package/dist/esm/src/context.js.map +1 -0
- package/dist/esm/src/context_impl.d.ts +54 -0
- package/dist/esm/src/context_impl.d.ts.map +1 -0
- package/dist/esm/src/context_impl.js +510 -0
- package/dist/esm/src/context_impl.js.map +1 -0
- package/dist/esm/src/endpoint/endpoint_builder.d.ts +28 -0
- package/dist/esm/src/endpoint/endpoint_builder.d.ts.map +1 -0
- package/dist/esm/src/endpoint/endpoint_builder.js +139 -0
- package/dist/esm/src/endpoint/endpoint_builder.js.map +1 -0
- package/dist/esm/src/endpoint/fetch_endpoint.d.ts +54 -0
- package/dist/esm/src/endpoint/fetch_endpoint.d.ts.map +1 -0
- package/dist/esm/src/endpoint/fetch_endpoint.js +57 -0
- package/dist/esm/src/endpoint/fetch_endpoint.js.map +1 -0
- package/dist/esm/src/endpoint/handlers/fetch.d.ts +6 -0
- package/dist/esm/src/endpoint/handlers/fetch.d.ts.map +1 -0
- package/dist/esm/src/endpoint/handlers/fetch.js +29 -0
- package/dist/esm/src/endpoint/handlers/fetch.js.map +1 -0
- package/dist/esm/src/endpoint/handlers/generic.d.ts +47 -0
- package/dist/esm/src/endpoint/handlers/generic.d.ts.map +1 -0
- package/dist/esm/src/endpoint/handlers/generic.js +211 -0
- package/dist/esm/src/endpoint/handlers/generic.js.map +1 -0
- package/dist/esm/src/endpoint/handlers/lambda.d.ts +8 -0
- package/dist/esm/src/endpoint/handlers/lambda.d.ts.map +1 -0
- package/dist/esm/src/endpoint/handlers/lambda.js +79 -0
- package/dist/esm/src/endpoint/handlers/lambda.js.map +1 -0
- package/dist/esm/src/endpoint/lambda_endpoint.d.ts +34 -0
- package/dist/esm/src/endpoint/lambda_endpoint.d.ts.map +1 -0
- package/dist/esm/src/endpoint/lambda_endpoint.js +49 -0
- package/dist/esm/src/endpoint/lambda_endpoint.js.map +1 -0
- package/dist/esm/src/endpoint/node_endpoint.d.ts +21 -0
- package/dist/esm/src/endpoint/node_endpoint.d.ts.map +1 -0
- package/dist/esm/src/endpoint/node_endpoint.js +100 -0
- package/dist/esm/src/endpoint/node_endpoint.js.map +1 -0
- package/dist/esm/src/endpoint/request_signing/basex.d.ts +10 -0
- package/dist/esm/src/endpoint/request_signing/basex.d.ts.map +1 -0
- package/dist/esm/src/endpoint/request_signing/basex.js +136 -0
- package/dist/esm/src/endpoint/request_signing/basex.js.map +1 -0
- package/dist/esm/src/endpoint/request_signing/ed25519.d.ts +17 -0
- package/dist/esm/src/endpoint/request_signing/ed25519.d.ts.map +1 -0
- package/dist/esm/src/endpoint/request_signing/ed25519.js +52 -0
- package/dist/esm/src/endpoint/request_signing/ed25519.js.map +1 -0
- package/dist/esm/src/endpoint/request_signing/v1.d.ts +9 -0
- package/dist/esm/src/endpoint/request_signing/v1.d.ts.map +1 -0
- package/dist/esm/src/endpoint/request_signing/v1.js +133 -0
- package/dist/esm/src/endpoint/request_signing/v1.js.map +1 -0
- package/dist/esm/src/endpoint/request_signing/validate.d.ts +18 -0
- package/dist/esm/src/endpoint/request_signing/validate.d.ts.map +1 -0
- package/dist/esm/src/endpoint/request_signing/validate.js +40 -0
- package/dist/esm/src/endpoint/request_signing/validate.js.map +1 -0
- package/dist/esm/src/endpoint.d.ts +126 -0
- package/dist/esm/src/endpoint.d.ts.map +1 -0
- package/dist/esm/src/endpoint.js +12 -0
- package/dist/esm/src/endpoint.js.map +1 -0
- package/dist/esm/src/fetch.d.ts +8 -0
- package/dist/esm/src/fetch.d.ts.map +1 -0
- package/dist/esm/src/fetch.js +21 -0
- package/dist/esm/src/fetch.js.map +1 -0
- package/dist/esm/src/generated/proto/discovery_pb.d.ts +18 -0
- package/dist/esm/src/generated/proto/discovery_pb.d.ts.map +1 -0
- package/dist/esm/src/generated/proto/discovery_pb.js +37 -0
- package/dist/esm/src/generated/proto/discovery_pb.js.map +1 -0
- package/dist/esm/src/generated/proto/javascript_pb.d.ts +26 -0
- package/dist/esm/src/generated/proto/javascript_pb.d.ts.map +1 -0
- package/dist/esm/src/generated/proto/javascript_pb.js +48 -0
- package/dist/esm/src/generated/proto/javascript_pb.js.map +1 -0
- package/dist/esm/src/generated/proto/protocol_pb.d.ts +1051 -0
- package/dist/esm/src/generated/proto/protocol_pb.d.ts.map +1 -0
- package/dist/esm/src/generated/proto/protocol_pb.js +1258 -0
- package/dist/esm/src/generated/proto/protocol_pb.js.map +1 -0
- package/dist/esm/src/generated/version.d.ts +2 -0
- package/dist/esm/src/generated/version.d.ts.map +1 -0
- package/dist/esm/src/generated/version.js +2 -0
- package/dist/esm/src/generated/version.js.map +1 -0
- package/dist/esm/src/invocation.d.ts +48 -0
- package/dist/esm/src/invocation.d.ts.map +1 -0
- package/dist/esm/src/invocation.js +153 -0
- package/dist/esm/src/invocation.js.map +1 -0
- package/dist/esm/src/io/decoder.d.ts +9 -0
- package/dist/esm/src/io/decoder.d.ts.map +1 -0
- package/dist/esm/src/io/decoder.js +128 -0
- package/dist/esm/src/io/decoder.js.map +1 -0
- package/dist/esm/src/io/encoder.d.ts +4 -0
- package/dist/esm/src/io/encoder.d.ts.map +1 -0
- package/dist/esm/src/io/encoder.js +36 -0
- package/dist/esm/src/io/encoder.js.map +1 -0
- package/dist/esm/src/journal.d.ts +52 -0
- package/dist/esm/src/journal.d.ts.map +1 -0
- package/dist/esm/src/journal.js +412 -0
- package/dist/esm/src/journal.js.map +1 -0
- package/dist/esm/src/lambda.d.ts +7 -0
- package/dist/esm/src/lambda.d.ts.map +1 -0
- package/dist/{src/endpoint.js → esm/src/lambda.js} +5 -8
- package/dist/esm/src/lambda.js.map +1 -0
- package/dist/esm/src/local_state_store.d.ts +16 -0
- package/dist/esm/src/local_state_store.d.ts.map +1 -0
- package/dist/esm/src/local_state_store.js +80 -0
- package/dist/esm/src/local_state_store.js.map +1 -0
- package/dist/esm/src/logger.d.ts +35 -0
- package/dist/esm/src/logger.d.ts.map +1 -0
- package/dist/esm/src/logger.js +144 -0
- package/dist/esm/src/logger.js.map +1 -0
- package/dist/esm/src/promise_combinator_tracker.d.ts +29 -0
- package/dist/esm/src/promise_combinator_tracker.d.ts.map +1 -0
- package/dist/esm/src/promise_combinator_tracker.js +125 -0
- package/dist/esm/src/promise_combinator_tracker.js.map +1 -0
- package/dist/esm/src/public_api.d.ts +7 -0
- package/dist/esm/src/public_api.d.ts.map +1 -0
- package/dist/esm/src/public_api.js +19 -0
- package/dist/esm/src/public_api.js.map +1 -0
- package/dist/esm/src/state_machine.d.ts +84 -0
- package/dist/esm/src/state_machine.d.ts.map +1 -0
- package/dist/esm/src/state_machine.js +399 -0
- package/dist/esm/src/state_machine.js.map +1 -0
- package/dist/esm/src/types/components.d.ts +78 -0
- package/dist/esm/src/types/components.d.ts.map +1 -0
- package/dist/esm/src/types/components.js +227 -0
- package/dist/esm/src/types/components.js.map +1 -0
- package/dist/esm/src/types/discovery.d.ts +43 -0
- package/dist/esm/src/types/discovery.d.ts.map +1 -0
- package/dist/esm/src/types/discovery.js +28 -0
- package/dist/esm/src/types/discovery.js.map +1 -0
- package/dist/esm/src/types/errors.d.ts +53 -0
- package/dist/esm/src/types/errors.d.ts.map +1 -0
- package/dist/esm/src/types/errors.js +117 -0
- package/dist/esm/src/types/errors.js.map +1 -0
- package/dist/esm/src/types/protocol.d.ts +40 -0
- package/dist/esm/src/types/protocol.d.ts.map +1 -0
- package/dist/esm/src/types/protocol.js +206 -0
- package/dist/esm/src/types/protocol.js.map +1 -0
- package/dist/esm/src/types/rpc.d.ts +300 -0
- package/dist/esm/src/types/rpc.d.ts.map +1 -0
- package/dist/esm/src/types/rpc.js +412 -0
- package/dist/esm/src/types/rpc.js.map +1 -0
- package/dist/esm/src/types/types.d.ts +20 -0
- package/dist/esm/src/types/types.d.ts.map +1 -0
- package/dist/esm/src/types/types.js +105 -0
- package/dist/esm/src/types/types.js.map +1 -0
- package/dist/esm/src/user_agent.d.ts +2 -0
- package/dist/esm/src/user_agent.d.ts.map +1 -0
- package/dist/esm/src/user_agent.js +13 -0
- package/dist/esm/src/user_agent.js.map +1 -0
- package/dist/esm/src/utils/buffer.d.ts +5 -0
- package/dist/esm/src/utils/buffer.d.ts.map +1 -0
- package/dist/esm/src/utils/buffer.js +53 -0
- package/dist/esm/src/utils/buffer.js.map +1 -0
- package/dist/esm/src/utils/message_logger.d.ts +7 -0
- package/dist/esm/src/utils/message_logger.d.ts.map +1 -0
- package/dist/esm/src/utils/message_logger.js +75 -0
- package/dist/esm/src/utils/message_logger.js.map +1 -0
- package/dist/esm/src/utils/promises.d.ts +15 -0
- package/dist/esm/src/utils/promises.d.ts.map +1 -0
- package/dist/esm/src/utils/promises.js +63 -0
- package/dist/esm/src/utils/promises.js.map +1 -0
- package/dist/esm/src/utils/rand.d.ts +15 -0
- package/dist/esm/src/utils/rand.d.ts.map +1 -0
- package/dist/esm/src/utils/rand.js +106 -0
- package/dist/esm/src/utils/rand.js.map +1 -0
- package/dist/esm/src/utils/serde.d.ts +5 -0
- package/dist/esm/src/utils/serde.d.ts.map +1 -0
- package/dist/esm/src/utils/serde.js +43 -0
- package/dist/esm/src/utils/serde.js.map +1 -0
- package/dist/esm/src/utils/streams.d.ts +4 -0
- package/dist/esm/src/utils/streams.d.ts.map +1 -0
- package/dist/esm/src/utils/streams.js +20 -0
- package/dist/esm/src/utils/streams.js.map +1 -0
- package/dist/esm/src/utils/utils.d.ts +5 -0
- package/dist/esm/src/utils/utils.d.ts.map +1 -0
- package/dist/esm/src/utils/utils.js +109 -0
- package/dist/esm/src/utils/utils.js.map +1 -0
- package/dist/esm/test/awakeable.test.d.ts +2 -0
- package/dist/esm/test/awakeable.test.d.ts.map +1 -0
- package/dist/esm/test/awakeable.test.js +139 -0
- package/dist/esm/test/awakeable.test.js.map +1 -0
- package/dist/esm/test/complete_awakeable.test.d.ts +2 -0
- package/dist/esm/test/complete_awakeable.test.d.ts.map +1 -0
- package/dist/esm/test/complete_awakeable.test.js +121 -0
- package/dist/esm/test/complete_awakeable.test.js.map +1 -0
- package/dist/esm/test/eager_state.test.d.ts +2 -0
- package/dist/esm/test/eager_state.test.d.ts.map +1 -0
- package/dist/esm/test/eager_state.test.js +278 -0
- package/dist/esm/test/eager_state.test.js.map +1 -0
- package/dist/esm/test/get_and_set_state.test.d.ts +2 -0
- package/dist/esm/test/get_and_set_state.test.d.ts.map +1 -0
- package/dist/esm/test/get_and_set_state.test.js +231 -0
- package/dist/esm/test/get_and_set_state.test.js.map +1 -0
- package/dist/esm/test/get_state.test.d.ts +2 -0
- package/dist/esm/test/get_state.test.d.ts.map +1 -0
- package/dist/esm/test/get_state.test.js +331 -0
- package/dist/esm/test/get_state.test.js.map +1 -0
- package/dist/esm/test/lambda.test.d.ts +2 -0
- package/dist/esm/test/lambda.test.d.ts.map +1 -0
- package/dist/esm/test/lambda.test.js +221 -0
- package/dist/esm/test/lambda.test.js.map +1 -0
- package/dist/esm/test/message_coders.test.d.ts +2 -0
- package/dist/esm/test/message_coders.test.d.ts.map +1 -0
- package/dist/esm/test/message_coders.test.js +35 -0
- package/dist/esm/test/message_coders.test.js.map +1 -0
- package/dist/esm/test/promise_combinator_tracker.test.d.ts +2 -0
- package/dist/esm/test/promise_combinator_tracker.test.d.ts.map +1 -0
- package/dist/esm/test/promise_combinator_tracker.test.js +154 -0
- package/dist/esm/test/promise_combinator_tracker.test.js.map +1 -0
- package/dist/esm/test/promise_combinators.test.d.ts +2 -0
- package/dist/esm/test/promise_combinators.test.d.ts.map +1 -0
- package/dist/esm/test/promise_combinators.test.js +431 -0
- package/dist/esm/test/promise_combinators.test.js.map +1 -0
- package/dist/esm/test/promises.test.d.ts +2 -0
- package/dist/esm/test/promises.test.d.ts.map +1 -0
- package/dist/esm/test/promises.test.js +30 -0
- package/dist/esm/test/promises.test.js.map +1 -0
- package/dist/esm/test/protocol_stream.test.d.ts +2 -0
- package/dist/esm/test/protocol_stream.test.d.ts.map +1 -0
- package/dist/esm/test/protocol_stream.test.js +218 -0
- package/dist/esm/test/protocol_stream.test.js.map +1 -0
- package/dist/esm/test/protoutils.d.ts +44 -0
- package/dist/esm/test/protoutils.d.ts.map +1 -0
- package/dist/esm/test/protoutils.js +326 -0
- package/dist/esm/test/protoutils.js.map +1 -0
- package/dist/esm/test/service_bind.test.d.ts +2 -0
- package/dist/esm/test/service_bind.test.d.ts.map +1 -0
- package/dist/esm/test/service_bind.test.js +48 -0
- package/dist/esm/test/service_bind.test.js.map +1 -0
- package/dist/esm/test/side_effect.test.d.ts +2 -0
- package/dist/esm/test/side_effect.test.d.ts.map +1 -0
- package/dist/esm/test/side_effect.test.js +131 -0
- package/dist/esm/test/side_effect.test.js.map +1 -0
- package/dist/esm/test/sleep.test.d.ts +2 -0
- package/dist/esm/test/sleep.test.d.ts.map +1 -0
- package/dist/esm/test/sleep.test.js +222 -0
- package/dist/esm/test/sleep.test.js.map +1 -0
- package/dist/esm/test/state_keys.test.d.ts +2 -0
- package/dist/esm/test/state_keys.test.d.ts.map +1 -0
- package/dist/esm/test/state_keys.test.js +90 -0
- package/dist/esm/test/state_keys.test.js.map +1 -0
- package/dist/esm/test/state_machine.test.d.ts +2 -0
- package/dist/esm/test/state_machine.test.d.ts.map +1 -0
- package/dist/esm/test/state_machine.test.js +40 -0
- package/dist/esm/test/state_machine.test.js.map +1 -0
- package/dist/esm/test/testdriver.d.ts +31 -0
- package/dist/esm/test/testdriver.d.ts.map +1 -0
- package/dist/esm/test/testdriver.js +133 -0
- package/dist/esm/test/testdriver.js.map +1 -0
- package/dist/esm/test/utils.test.d.ts +2 -0
- package/dist/esm/test/utils.test.d.ts.map +1 -0
- package/dist/esm/test/utils.test.js +102 -0
- package/dist/esm/test/utils.test.js.map +1 -0
- package/dist/esm/tsconfig.tsbuildinfo +1 -0
- package/package.json +57 -19
- package/dist/src/connection/buffered_connection.d.ts +0 -14
- package/dist/src/connection/buffered_connection.d.ts.map +0 -1
- package/dist/src/connection/buffered_connection.js +0 -44
- package/dist/src/connection/buffered_connection.js.map +0 -1
- package/dist/src/connection/connection.d.ts +0 -20
- package/dist/src/connection/connection.d.ts.map +0 -1
- package/dist/src/connection/connection.js.map +0 -1
- package/dist/src/connection/http_connection.d.ts.map +0 -1
- package/dist/src/connection/http_connection.js +0 -208
- package/dist/src/connection/http_connection.js.map +0 -1
- package/dist/src/connection/lambda_connection.d.ts +0 -17
- package/dist/src/connection/lambda_connection.d.ts.map +0 -1
- package/dist/src/connection/lambda_connection.js +0 -64
- package/dist/src/connection/lambda_connection.js.map +0 -1
- package/dist/src/context.d.ts.map +0 -1
- package/dist/src/context.js.map +0 -1
- package/dist/src/context_impl.d.ts.map +0 -1
- package/dist/src/context_impl.js.map +0 -1
- package/dist/src/endpoint/endpoint_impl.d.ts +0 -27
- package/dist/src/endpoint/endpoint_impl.d.ts.map +0 -1
- package/dist/src/endpoint/endpoint_impl.js.map +0 -1
- package/dist/src/endpoint/http2_handler.d.ts +0 -11
- package/dist/src/endpoint/http2_handler.d.ts.map +0 -1
- package/dist/src/endpoint/http2_handler.js +0 -186
- package/dist/src/endpoint/http2_handler.js.map +0 -1
- package/dist/src/endpoint/lambda_handler.d.ts +0 -15
- package/dist/src/endpoint/lambda_handler.d.ts.map +0 -1
- package/dist/src/endpoint/lambda_handler.js +0 -176
- package/dist/src/endpoint/lambda_handler.js.map +0 -1
- package/dist/src/endpoint/request_signing/basex.d.ts.map +0 -1
- package/dist/src/endpoint/request_signing/basex.js.map +0 -1
- package/dist/src/endpoint/request_signing/ed25519.d.ts.map +0 -1
- package/dist/src/endpoint/request_signing/ed25519.js.map +0 -1
- package/dist/src/endpoint/request_signing/v1.d.ts.map +0 -1
- package/dist/src/endpoint/request_signing/v1.js.map +0 -1
- package/dist/src/endpoint/request_signing/validate.d.ts.map +0 -1
- package/dist/src/endpoint/request_signing/validate.js.map +0 -1
- package/dist/src/endpoint.d.ts.map +0 -1
- package/dist/src/endpoint.js.map +0 -1
- package/dist/src/generated/proto/discovery_pb.d.ts.map +0 -1
- package/dist/src/generated/proto/discovery_pb.js.map +0 -1
- package/dist/src/generated/proto/javascript_pb.d.ts.map +0 -1
- package/dist/src/generated/proto/javascript_pb.js.map +0 -1
- package/dist/src/generated/proto/protocol_pb.d.ts.map +0 -1
- package/dist/src/generated/proto/protocol_pb.js.map +0 -1
- package/dist/src/generated/version.d.ts +0 -2
- package/dist/src/generated/version.d.ts.map +0 -1
- package/dist/src/generated/version.js.map +0 -1
- package/dist/src/invocation.d.ts.map +0 -1
- package/dist/src/invocation.js.map +0 -1
- package/dist/src/io/decoder.d.ts.map +0 -1
- package/dist/src/io/decoder.js.map +0 -1
- package/dist/src/io/encoder.d.ts +0 -7
- package/dist/src/io/encoder.d.ts.map +0 -1
- package/dist/src/io/encoder.js.map +0 -1
- package/dist/src/journal.d.ts.map +0 -1
- package/dist/src/journal.js.map +0 -1
- package/dist/src/local_state_store.d.ts.map +0 -1
- package/dist/src/local_state_store.js.map +0 -1
- package/dist/src/logger.d.ts +0 -27
- package/dist/src/logger.d.ts.map +0 -1
- package/dist/src/logger.js +0 -151
- package/dist/src/logger.js.map +0 -1
- package/dist/src/promise_combinator_tracker.d.ts.map +0 -1
- package/dist/src/promise_combinator_tracker.js.map +0 -1
- package/dist/src/public_api.d.ts +0 -7
- package/dist/src/public_api.d.ts.map +0 -1
- package/dist/src/public_api.js.map +0 -1
- package/dist/src/state_machine.d.ts.map +0 -1
- package/dist/src/state_machine.js.map +0 -1
- package/dist/src/types/components.d.ts.map +0 -1
- package/dist/src/types/components.js.map +0 -1
- package/dist/src/types/discovery.d.ts.map +0 -1
- package/dist/src/types/discovery.js.map +0 -1
- package/dist/src/types/errors.d.ts.map +0 -1
- package/dist/src/types/errors.js.map +0 -1
- package/dist/src/types/protocol.d.ts.map +0 -1
- package/dist/src/types/protocol.js.map +0 -1
- package/dist/src/types/rpc.d.ts.map +0 -1
- package/dist/src/types/rpc.js.map +0 -1
- package/dist/src/types/types.d.ts.map +0 -1
- package/dist/src/types/types.js.map +0 -1
- package/dist/src/user_agent.d.ts +0 -2
- package/dist/src/user_agent.d.ts.map +0 -1
- package/dist/src/user_agent.js.map +0 -1
- package/dist/src/utils/message_logger.d.ts +0 -7
- package/dist/src/utils/message_logger.d.ts.map +0 -1
- package/dist/src/utils/message_logger.js.map +0 -1
- package/dist/src/utils/promises.d.ts.map +0 -1
- package/dist/src/utils/promises.js.map +0 -1
- package/dist/src/utils/rand.d.ts.map +0 -1
- package/dist/src/utils/rand.js.map +0 -1
- package/dist/src/utils/serde.d.ts +0 -5
- package/dist/src/utils/serde.d.ts.map +0 -1
- package/dist/src/utils/serde.js.map +0 -1
- package/dist/src/utils/utils.d.ts.map +0 -1
- package/dist/src/utils/utils.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
- /package/dist/{src → cjs/src}/endpoint/request_signing/basex.d.ts +0 -0
- /package/dist/{src → cjs/src}/endpoint/request_signing/basex.js +0 -0
- /package/dist/{src → cjs/src}/generated/proto/discovery_pb.d.ts +0 -0
- /package/dist/{src → cjs/src}/generated/proto/javascript_pb.d.ts +0 -0
- /package/dist/{src → cjs/src}/generated/proto/javascript_pb.js +0 -0
- /package/dist/{src → cjs/src}/generated/proto/protocol_pb.d.ts +0 -0
- /package/dist/{src → cjs/src}/types/discovery.d.ts +0 -0
- /package/dist/{src → cjs/src}/utils/promises.d.ts +0 -0
- /package/dist/{src → cjs/src}/utils/utils.d.ts +0 -0
package/README.md
CHANGED
|
@@ -53,6 +53,6 @@ This library follows [Semantic Versioning](https://semver.org/).
|
|
|
53
53
|
|
|
54
54
|
The compatibility with Restate is described in the following table:
|
|
55
55
|
|
|
56
|
-
| Restate Server\sdk-typescript | 1.0 |
|
|
57
|
-
|
|
58
|
-
| 1.0 | ✅ |
|
|
56
|
+
| Restate Server\sdk-typescript | 1.0 | 1.1 |
|
|
57
|
+
|-------------------------------|-----|-----|
|
|
58
|
+
| 1.0 | ✅ | ✅ |
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type":"commonjs"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export type { Context, ObjectContext, ObjectSharedContext, WorkflowContext, WorkflowSharedContext, Rand, } from "./context.js";
|
|
2
|
+
export { CombineablePromise } from "./context.js";
|
|
3
|
+
export type { Client, SendClient } from "./types/rpc.js";
|
|
4
|
+
export { service, object, workflow, handlers } from "./types/rpc.js";
|
|
5
|
+
export type { ServiceDefinition, VirtualObjectDefinition, WorkflowDefinition, } from "@restatedev/restate-sdk-core";
|
|
6
|
+
export type { ServiceBundle, RestateEndpoint } from "./endpoint.js";
|
|
7
|
+
export { RestateError, TerminalError, TimeoutError } from "./types/errors.js";
|
|
8
|
+
export type { Logger, LogParams, RestateLogLevel, LoggerContext, LogSource, } from "./logger.js";
|
|
9
|
+
//# sourceMappingURL=common_api.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common_api.d.ts","sourceRoot":"","sources":["../../../src/common_api.ts"],"names":[],"mappings":"AAWA,YAAY,EACV,OAAO,EACP,aAAa,EACb,mBAAmB,EACnB,eAAe,EACf,qBAAqB,EACrB,IAAI,GACL,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAErE,YAAY,EACV,iBAAiB,EACjB,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,8BAA8B,CAAC;AAEtC,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC9E,YAAY,EACV,MAAM,EACN,SAAS,EACT,eAAe,EACf,aAAa,EACb,SAAS,GACV,MAAM,aAAa,CAAC"}
|
|
@@ -10,18 +10,16 @@
|
|
|
10
10
|
* https://github.com/restatedev/sdk-typescript/blob/main/LICENSE
|
|
11
11
|
*/
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
exports.TimeoutError = exports.TerminalError = exports.RestateError = exports.
|
|
14
|
-
var
|
|
15
|
-
Object.defineProperty(exports, "CombineablePromise", { enumerable: true, get: function () { return
|
|
16
|
-
var
|
|
17
|
-
Object.defineProperty(exports, "service", { enumerable: true, get: function () { return
|
|
18
|
-
Object.defineProperty(exports, "object", { enumerable: true, get: function () { return
|
|
19
|
-
Object.defineProperty(exports, "workflow", { enumerable: true, get: function () { return
|
|
20
|
-
Object.defineProperty(exports, "handlers", { enumerable: true, get: function () { return
|
|
21
|
-
var
|
|
22
|
-
Object.defineProperty(exports, "
|
|
23
|
-
|
|
24
|
-
Object.defineProperty(exports, "
|
|
25
|
-
|
|
26
|
-
Object.defineProperty(exports, "TimeoutError", { enumerable: true, get: function () { return errors_1.TimeoutError; } });
|
|
27
|
-
//# sourceMappingURL=public_api.js.map
|
|
13
|
+
exports.TimeoutError = exports.TerminalError = exports.RestateError = exports.handlers = exports.workflow = exports.object = exports.service = exports.CombineablePromise = void 0;
|
|
14
|
+
var context_js_1 = require("./context.js");
|
|
15
|
+
Object.defineProperty(exports, "CombineablePromise", { enumerable: true, get: function () { return context_js_1.CombineablePromise; } });
|
|
16
|
+
var rpc_js_1 = require("./types/rpc.js");
|
|
17
|
+
Object.defineProperty(exports, "service", { enumerable: true, get: function () { return rpc_js_1.service; } });
|
|
18
|
+
Object.defineProperty(exports, "object", { enumerable: true, get: function () { return rpc_js_1.object; } });
|
|
19
|
+
Object.defineProperty(exports, "workflow", { enumerable: true, get: function () { return rpc_js_1.workflow; } });
|
|
20
|
+
Object.defineProperty(exports, "handlers", { enumerable: true, get: function () { return rpc_js_1.handlers; } });
|
|
21
|
+
var errors_js_1 = require("./types/errors.js");
|
|
22
|
+
Object.defineProperty(exports, "RestateError", { enumerable: true, get: function () { return errors_js_1.RestateError; } });
|
|
23
|
+
Object.defineProperty(exports, "TerminalError", { enumerable: true, get: function () { return errors_js_1.TerminalError; } });
|
|
24
|
+
Object.defineProperty(exports, "TimeoutError", { enumerable: true, get: function () { return errors_js_1.TimeoutError; } });
|
|
25
|
+
//# sourceMappingURL=common_api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common_api.js","sourceRoot":"","sources":["../../../src/common_api.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAUH,2CAAkD;AAAzC,gHAAA,kBAAkB,OAAA;AAG3B,yCAAqE;AAA5D,iGAAA,OAAO,OAAA;AAAE,gGAAA,MAAM,OAAA;AAAE,kGAAA,QAAQ,OAAA;AAAE,kGAAA,QAAQ,OAAA;AAS5C,+CAA8E;AAArE,yGAAA,YAAY,OAAA;AAAE,0GAAA,aAAa,OAAA;AAAE,yGAAA,YAAY,OAAA"}
|
|
@@ -1,45 +1,52 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
/// <reference types="node" />
|
|
3
|
-
import stream from "node:stream";
|
|
4
|
-
import {
|
|
5
|
-
import { Message } from "../types/types";
|
|
6
|
-
import { Http2ServerRequest, IncomingHttpHeaders } from "node:http2";
|
|
3
|
+
import type stream from "node:stream/web";
|
|
4
|
+
import type { Message } from "../types/types.js";
|
|
7
5
|
/**
|
|
8
|
-
* A
|
|
6
|
+
* A connection from the service/SDK to Restate.
|
|
7
|
+
* Accepts messages to be sent and committed to the journal.
|
|
8
|
+
*/
|
|
9
|
+
export interface Connection {
|
|
10
|
+
send(msg: Message): Promise<void>;
|
|
11
|
+
end(): Promise<void>;
|
|
12
|
+
headers(): ReadonlyMap<string, string | string[] | undefined>;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* A consumer of a message stream from Restate.
|
|
16
|
+
* Messages include journal replay messages and completion messages.
|
|
17
|
+
*/
|
|
18
|
+
export interface RestateStreamConsumer {
|
|
19
|
+
handleMessage(m: Message): boolean;
|
|
20
|
+
handleStreamError(e: Error): void;
|
|
21
|
+
handleInputClosed(): void;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* A stream with Restate Messages, potentially but not necessarily full duplex.
|
|
9
25
|
*
|
|
10
26
|
* This stream handles the following concerns:
|
|
11
27
|
*
|
|
12
|
-
* (1) encoding and decoding of messages
|
|
13
|
-
*
|
|
14
|
-
* (2) buffering the outgoing messages, because the call sites that produce (potentially) large
|
|
15
|
-
* messages might not await their transfer. Aside from the fact that we achieve better pipelining
|
|
16
|
-
* that way, we also simply cannot guarantee that users of the Restate SDK actually await the
|
|
17
|
-
* relevant async API methods.
|
|
28
|
+
* (1) encoding and decoding of messages to and from raw bytes
|
|
18
29
|
*
|
|
19
|
-
* This stream essentially buffers messages and, upon flush, sends them asynchronously, as the
|
|
20
|
-
* stream has availability. Flush requests queue up, if new data gets flushed while the previous
|
|
21
|
-
* data is still being sent.
|
|
22
30
|
*
|
|
23
|
-
* (
|
|
31
|
+
* (2) Input messages can be pipelined to a sequence of consumers. For example, first to a journal,
|
|
24
32
|
* and afterwards to the state machine.
|
|
25
33
|
*
|
|
26
|
-
* (
|
|
34
|
+
* (3) Handling the relevant stream events for errors and consolidating them to one error handler, plus
|
|
27
35
|
* notifications for cleanly closed input (to trigger suspension).
|
|
28
36
|
*/
|
|
29
|
-
export declare class
|
|
37
|
+
export declare class RestateConnection implements Connection {
|
|
30
38
|
private readonly attemptHeaders;
|
|
31
|
-
private readonly rawStream;
|
|
32
39
|
/**
|
|
33
|
-
* create a
|
|
40
|
+
* create a RestateBidiConnection stream from a duplex stream
|
|
34
41
|
*/
|
|
35
|
-
static from(
|
|
36
|
-
private readonly
|
|
42
|
+
static from(rlog: Console, headers: Record<string, string | string[] | undefined>, rawStream: stream.ReadableWritablePair<Uint8Array, Uint8Array>): RestateConnection;
|
|
43
|
+
private readonly sdkInputPipeline;
|
|
37
44
|
private currentConsumer;
|
|
38
45
|
private inputBuffer;
|
|
39
46
|
private consumerError?;
|
|
40
47
|
private consumerInputClosed;
|
|
41
|
-
private
|
|
42
|
-
constructor(attemptHeaders:
|
|
48
|
+
private readonly sdkOutput;
|
|
49
|
+
constructor(rlog: Console, attemptHeaders: Record<string, string | string[] | undefined>, rawStream: stream.ReadableWritablePair<Uint8Array, Uint8Array>);
|
|
43
50
|
headers(): ReadonlyMap<string, string | string[] | undefined>;
|
|
44
51
|
/**
|
|
45
52
|
* Pipes the messages from this connection to the given consumer. The consumer
|
|
@@ -70,8 +77,8 @@ export declare class RestateHttp2Connection implements Connection {
|
|
|
70
77
|
*/
|
|
71
78
|
send(msg: Message): Promise<void>;
|
|
72
79
|
/**
|
|
73
|
-
* Ends the stream, awaiting pending writes.
|
|
80
|
+
* Ends the output stream, awaiting pending writes.
|
|
74
81
|
*/
|
|
75
82
|
end(): Promise<void>;
|
|
76
83
|
}
|
|
77
|
-
//# sourceMappingURL=
|
|
84
|
+
//# sourceMappingURL=connection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../../src/connection/connection.ts"],"names":[],"mappings":";;AAWA,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAC;AAE1C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAIjD;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAElC,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAErB,OAAO,IAAI,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;CAC/D;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,aAAa,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IAEnC,iBAAiB,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IAElC,iBAAiB,IAAI,IAAI,CAAC;CAC3B;AAED;;;;;;;;;;;;;GAaG;AACH,qBAAa,iBAAkB,YAAW,UAAU;IA0BhD,OAAO,CAAC,QAAQ,CAAC,cAAc;IAzBjC;;OAEG;WACW,IAAI,CAChB,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,EACtD,SAAS,EAAE,MAAM,CAAC,oBAAoB,CAAC,UAAU,EAAE,UAAU,CAAC,GAC7D,iBAAiB;IAMpB,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAgB;IAGjD,OAAO,CAAC,eAAe,CAAsC;IAC7D,OAAO,CAAC,WAAW,CAAiB;IACpC,OAAO,CAAC,aAAa,CAAC,CAAQ;IAC9B,OAAO,CAAC,mBAAmB,CAAS;IAEpC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAiD;gBAGzE,IAAI,EAAE,OAAO,EACI,cAAc,EAAE,MAAM,CACrC,MAAM,EACN,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAC9B,EACD,SAAS,EAAE,MAAM,CAAC,oBAAoB,CAAC,UAAU,EAAE,UAAU,CAAC;IAsEhE,OAAO,IAAI,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC;IAI7D;;;;;;;;OAQG;IACI,cAAc,CAAC,QAAQ,EAAE,qBAAqB,GAAG,IAAI;IA+B5D;;OAEG;IACI,qBAAqB,IAAI,IAAI;IAQpC;;;;;;;;;;;;OAYG;IACU,IAAI,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ9C;;OAEG;IACU,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAIlC"}
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright (c) 2023-2024 - Restate Software, Inc., Restate GmbH
|
|
4
|
+
*
|
|
5
|
+
* This file is part of the Restate SDK for Node.js/TypeScript,
|
|
6
|
+
* which is released under the MIT license.
|
|
7
|
+
*
|
|
8
|
+
* You can find a copy of the license in file LICENSE in the root
|
|
9
|
+
* directory of this repository or package, or at
|
|
10
|
+
* https://github.com/restatedev/sdk-typescript/blob/main/LICENSE
|
|
11
|
+
*/
|
|
12
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
+
exports.RestateConnection = void 0;
|
|
14
|
+
const decoder_js_1 = require("../io/decoder.js");
|
|
15
|
+
const encoder_js_1 = require("../io/encoder.js");
|
|
16
|
+
const web_1 = require("node:stream/web");
|
|
17
|
+
/**
|
|
18
|
+
* A stream with Restate Messages, potentially but not necessarily full duplex.
|
|
19
|
+
*
|
|
20
|
+
* This stream handles the following concerns:
|
|
21
|
+
*
|
|
22
|
+
* (1) encoding and decoding of messages to and from raw bytes
|
|
23
|
+
*
|
|
24
|
+
*
|
|
25
|
+
* (2) Input messages can be pipelined to a sequence of consumers. For example, first to a journal,
|
|
26
|
+
* and afterwards to the state machine.
|
|
27
|
+
*
|
|
28
|
+
* (3) Handling the relevant stream events for errors and consolidating them to one error handler, plus
|
|
29
|
+
* notifications for cleanly closed input (to trigger suspension).
|
|
30
|
+
*/
|
|
31
|
+
class RestateConnection {
|
|
32
|
+
attemptHeaders;
|
|
33
|
+
/**
|
|
34
|
+
* create a RestateBidiConnection stream from a duplex stream
|
|
35
|
+
*/
|
|
36
|
+
static from(rlog, headers, rawStream) {
|
|
37
|
+
return new RestateConnection(rlog, headers, rawStream);
|
|
38
|
+
}
|
|
39
|
+
// --------------------------------------------------------------------------
|
|
40
|
+
sdkInputPipeline;
|
|
41
|
+
// consumer handling
|
|
42
|
+
currentConsumer = null;
|
|
43
|
+
inputBuffer = [];
|
|
44
|
+
consumerError;
|
|
45
|
+
consumerInputClosed = false;
|
|
46
|
+
sdkOutput;
|
|
47
|
+
constructor(rlog, attemptHeaders, rawStream) {
|
|
48
|
+
// --------------------------------------------------------------------------
|
|
49
|
+
// input stream handling
|
|
50
|
+
// --------------------------------------------------------------------------
|
|
51
|
+
this.attemptHeaders = attemptHeaders;
|
|
52
|
+
const sdkInputSink = new web_1.WritableStream({
|
|
53
|
+
write: (m) => {
|
|
54
|
+
// deliver message, if we have a consumer. otherwise buffer the message.
|
|
55
|
+
if (this.currentConsumer) {
|
|
56
|
+
if (this.currentConsumer.handleMessage(m)) {
|
|
57
|
+
this.removeCurrentConsumer();
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
this.inputBuffer.push(m);
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
// this notifies of errors in the decoding pipeline as well as the incoming body stream
|
|
65
|
+
abort: (e) => {
|
|
66
|
+
rlog.error("Error in request stream from Restate: " + (e.stack ?? e.message));
|
|
67
|
+
errorHandler(e);
|
|
68
|
+
},
|
|
69
|
+
close: () => {
|
|
70
|
+
// remember and forward close events
|
|
71
|
+
this.consumerInputClosed = true;
|
|
72
|
+
if (this.currentConsumer) {
|
|
73
|
+
this.currentConsumer.handleInputClosed();
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
});
|
|
77
|
+
this.sdkInputPipeline = rawStream.readable
|
|
78
|
+
.pipeThrough((0, decoder_js_1.streamDecoder)())
|
|
79
|
+
.pipeTo(sdkInputSink);
|
|
80
|
+
this.sdkOutput = rawStream.writable.getWriter();
|
|
81
|
+
// --------- error handling --------
|
|
82
|
+
// the error handler for all sorts of errors coming from streams
|
|
83
|
+
const errorHandler = (e) => {
|
|
84
|
+
// make sure we don't overwrite the initial error
|
|
85
|
+
if (this.consumerError !== undefined) {
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
this.consumerError = e;
|
|
89
|
+
if (this.currentConsumer) {
|
|
90
|
+
this.currentConsumer.handleStreamError(e);
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
// this notifies of errors in the outgoing response stream
|
|
94
|
+
this.sdkOutput.closed.catch((e) => {
|
|
95
|
+
rlog.error("Error in response stream to Restate: " + (e.stack ?? e.message));
|
|
96
|
+
errorHandler(e);
|
|
97
|
+
});
|
|
98
|
+
// this notifies of errors in the decoding pipeline as well as the incoming body stream
|
|
99
|
+
this.sdkInputPipeline.catch((e) => {
|
|
100
|
+
rlog.error("Error in request stream from Restate: " + (e.stack ?? e.message));
|
|
101
|
+
errorHandler(e);
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
headers() {
|
|
105
|
+
return new Map(Object.entries(this.attemptHeaders));
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Pipes the messages from this connection to the given consumer. The consumer
|
|
109
|
+
* will also receive error and stream closing notifications.
|
|
110
|
+
*
|
|
111
|
+
* Once the 'handleMessage()' method returns 'true', the consumer is immediately removed.
|
|
112
|
+
* That way, consumers can consume a bounded amount of messages (like just the initial journal).
|
|
113
|
+
*
|
|
114
|
+
* There can only be one consumer at a time.
|
|
115
|
+
*/
|
|
116
|
+
pipeToConsumer(consumer) {
|
|
117
|
+
if (this.currentConsumer !== null) {
|
|
118
|
+
throw new Error("Already piping to a consumer");
|
|
119
|
+
}
|
|
120
|
+
this.currentConsumer = consumer;
|
|
121
|
+
// propagate pre-existing information
|
|
122
|
+
if (this.consumerError) {
|
|
123
|
+
consumer.handleStreamError(this.consumerError);
|
|
124
|
+
}
|
|
125
|
+
if (this.consumerInputClosed) {
|
|
126
|
+
consumer.handleInputClosed();
|
|
127
|
+
}
|
|
128
|
+
// pipe the buffered input messages, if we buffered some before the consumer was registered
|
|
129
|
+
const input = this.inputBuffer;
|
|
130
|
+
if (input.length > 0) {
|
|
131
|
+
let i = 0;
|
|
132
|
+
while (i < input.length) {
|
|
133
|
+
const done = consumer.handleMessage(input[i]);
|
|
134
|
+
i++;
|
|
135
|
+
if (done) {
|
|
136
|
+
this.removeCurrentConsumer();
|
|
137
|
+
break;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
this.inputBuffer = i === input.length ? [] : this.inputBuffer.slice(i);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Removes the current consumer, if there is one.
|
|
145
|
+
*/
|
|
146
|
+
removeCurrentConsumer() {
|
|
147
|
+
this.currentConsumer = null;
|
|
148
|
+
}
|
|
149
|
+
// --------------------------------------------------------------------------
|
|
150
|
+
// output stream handling
|
|
151
|
+
// --------------------------------------------------------------------------
|
|
152
|
+
/**
|
|
153
|
+
* Adds a message to the output stream.
|
|
154
|
+
*
|
|
155
|
+
* This always puts the message into the node stream, but will return a promise that is resolved once
|
|
156
|
+
* further messages can be written.
|
|
157
|
+
*
|
|
158
|
+
* The reasoning is that some, but not all Restate operations return promises and are typically
|
|
159
|
+
* awaited. For example, rpc, sleep, side-effect have promises and are awaited, while one-way-sends and
|
|
160
|
+
* state updates don't return promises.
|
|
161
|
+
*
|
|
162
|
+
* As a pragmatic solution, we always accept messages, but return a promise for when the output has
|
|
163
|
+
* capacity again, so that at least the operations that await results will respect backpressure.
|
|
164
|
+
*/
|
|
165
|
+
async send(msg) {
|
|
166
|
+
const bytes = (0, encoder_js_1.encodeMessage)(msg);
|
|
167
|
+
// don't await the write as it will not complete until data is completely flushed
|
|
168
|
+
this.sdkOutput.write(bytes).catch(() => { });
|
|
169
|
+
// however, do await until there is capacity for more, so there's backpressure
|
|
170
|
+
await this.sdkOutput.ready;
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Ends the output stream, awaiting pending writes.
|
|
174
|
+
*/
|
|
175
|
+
async end() {
|
|
176
|
+
// we don't care if the stream had any errors at this point
|
|
177
|
+
await this.sdkOutput.close().catch(() => { });
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
exports.RestateConnection = RestateConnection;
|
|
181
|
+
//# sourceMappingURL=connection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../../../../src/connection/connection.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
-
import type { Client, SendClient } from "./types/rpc";
|
|
2
|
+
import type { Client, SendClient } from "./types/rpc.js";
|
|
3
3
|
import type { RestateContext, RestateObjectContext, RestateObjectSharedContext, RestateWorkflowContext, RestateWorkflowSharedContext, Service, ServiceDefinitionFrom, VirtualObject, VirtualObjectDefinitionFrom, Workflow, WorkflowDefinitionFrom } from "@restatedev/restate-sdk-core";
|
|
4
4
|
/**
|
|
5
5
|
* Represents the original request as sent to this handler.
|
|
@@ -29,10 +29,14 @@ export interface Request {
|
|
|
29
29
|
*/
|
|
30
30
|
readonly body: Uint8Array;
|
|
31
31
|
}
|
|
32
|
+
export type TypedState = Record<string, any>;
|
|
33
|
+
export type UntypedState = {
|
|
34
|
+
_: never;
|
|
35
|
+
};
|
|
32
36
|
/**
|
|
33
37
|
* Key value store operations. Only keyed services have an attached key-value store.
|
|
34
38
|
*/
|
|
35
|
-
export interface KeyValueStore {
|
|
39
|
+
export interface KeyValueStore<TState extends TypedState> {
|
|
36
40
|
/**
|
|
37
41
|
* Get/retrieve state from the Restate runtime.
|
|
38
42
|
* Note that state objects are serialized with `Buffer.from(JSON.stringify(theObject))`
|
|
@@ -44,7 +48,7 @@ export interface KeyValueStore {
|
|
|
44
48
|
* @example
|
|
45
49
|
* const state = await ctx.get<string>("STATE");
|
|
46
50
|
*/
|
|
47
|
-
get<
|
|
51
|
+
get<TValue, TKey extends keyof TState = string>(name: TState extends UntypedState ? string : TKey): Promise<(TState extends UntypedState ? TValue : TState[TKey]) | null>;
|
|
48
52
|
stateKeys(): Promise<Array<string>>;
|
|
49
53
|
/**
|
|
50
54
|
* Set/store state in the Restate runtime.
|
|
@@ -57,7 +61,7 @@ export interface KeyValueStore {
|
|
|
57
61
|
* @example
|
|
58
62
|
* ctx.set("STATE", "Hello");
|
|
59
63
|
*/
|
|
60
|
-
set<
|
|
64
|
+
set<TValue, TKey extends keyof TState = string>(name: TState extends UntypedState ? string : TKey, value: TState extends UntypedState ? TValue : TState[TKey]): void;
|
|
61
65
|
/**
|
|
62
66
|
* Clear/delete state in the Restate runtime.
|
|
63
67
|
* @param name key of the state to delete
|
|
@@ -65,7 +69,7 @@ export interface KeyValueStore {
|
|
|
65
69
|
* @example
|
|
66
70
|
* ctx.clear("STATE");
|
|
67
71
|
*/
|
|
68
|
-
clear(name: string): void;
|
|
72
|
+
clear<TKey extends keyof TState>(name: TState extends UntypedState ? string : TKey): void;
|
|
69
73
|
/**
|
|
70
74
|
* Clear/delete all the state entries in the Restate runtime.
|
|
71
75
|
*
|
|
@@ -383,7 +387,7 @@ export interface Context extends RestateContext {
|
|
|
383
387
|
* This context can be used only within virtual objects.
|
|
384
388
|
*
|
|
385
389
|
*/
|
|
386
|
-
export interface ObjectContext extends Context, KeyValueStore
|
|
390
|
+
export interface ObjectContext<TState extends TypedState = UntypedState> extends Context, KeyValueStore<TState>, RestateObjectContext {
|
|
387
391
|
key: string;
|
|
388
392
|
}
|
|
389
393
|
/**
|
|
@@ -397,7 +401,7 @@ export interface ObjectContext extends Context, KeyValueStore, RestateObjectCont
|
|
|
397
401
|
* This context can be used only within a shared virtual objects.
|
|
398
402
|
*
|
|
399
403
|
*/
|
|
400
|
-
export interface ObjectSharedContext extends Context, RestateObjectSharedContext {
|
|
404
|
+
export interface ObjectSharedContext<TState extends TypedState = UntypedState> extends Context, RestateObjectSharedContext {
|
|
401
405
|
key: string;
|
|
402
406
|
/**
|
|
403
407
|
* Get/retrieve state from the Restate runtime.
|
|
@@ -410,7 +414,7 @@ export interface ObjectSharedContext extends Context, RestateObjectSharedContext
|
|
|
410
414
|
* @example
|
|
411
415
|
* const state = await ctx.get<string>("STATE");
|
|
412
416
|
*/
|
|
413
|
-
get<
|
|
417
|
+
get<TValue, TKey extends keyof TState = string>(name: TState extends UntypedState ? string : TKey): Promise<(TState extends UntypedState ? TValue : TState[TKey]) | null>;
|
|
414
418
|
/**
|
|
415
419
|
* Retrieve all the state keys for this object.
|
|
416
420
|
*/
|
|
@@ -509,7 +513,7 @@ export type DurablePromise<T> = Promise<T> & {
|
|
|
509
513
|
*/
|
|
510
514
|
get(): CombineablePromise<T>;
|
|
511
515
|
};
|
|
512
|
-
export interface WorkflowSharedContext extends ObjectSharedContext
|
|
516
|
+
export interface WorkflowSharedContext<TState extends TypedState = UntypedState> extends ObjectSharedContext<TState>, RestateWorkflowSharedContext {
|
|
513
517
|
/**
|
|
514
518
|
* Create a durable promise that can be resolved or rejected during the workflow execution.
|
|
515
519
|
* The promise is bound to the workflow and will be persisted across suspensions and retries.
|
|
@@ -536,6 +540,6 @@ export interface WorkflowSharedContext extends ObjectSharedContext, RestateWorkf
|
|
|
536
540
|
*/
|
|
537
541
|
promise<T = void>(name: string): DurablePromise<T>;
|
|
538
542
|
}
|
|
539
|
-
export interface WorkflowContext extends WorkflowSharedContext
|
|
543
|
+
export interface WorkflowContext<TState extends TypedState = UntypedState> extends WorkflowSharedContext<TState>, ObjectContext<TState>, RestateWorkflowContext {
|
|
540
544
|
}
|
|
541
545
|
//# sourceMappingURL=context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../../src/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
*/
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
13
|
exports.CombineablePromise = void 0;
|
|
14
|
-
const
|
|
14
|
+
const context_impl_js_1 = require("./context_impl.js");
|
|
15
15
|
exports.CombineablePromise = {
|
|
16
16
|
/**
|
|
17
17
|
* Creates a Promise that is resolved with an array of results when all of the provided Promises
|
|
@@ -26,7 +26,7 @@ exports.CombineablePromise = {
|
|
|
26
26
|
if (values.length == 0) {
|
|
27
27
|
return Promise.all(values);
|
|
28
28
|
}
|
|
29
|
-
return
|
|
29
|
+
return context_impl_js_1.ContextImpl.createCombinator(Promise.all.bind(Promise), values);
|
|
30
30
|
},
|
|
31
31
|
/**
|
|
32
32
|
* Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
|
|
@@ -41,7 +41,7 @@ exports.CombineablePromise = {
|
|
|
41
41
|
if (values.length == 0) {
|
|
42
42
|
return Promise.race(values);
|
|
43
43
|
}
|
|
44
|
-
return
|
|
44
|
+
return context_impl_js_1.ContextImpl.createCombinator(Promise.race.bind(Promise), values);
|
|
45
45
|
},
|
|
46
46
|
/**
|
|
47
47
|
* Creates a promise that fulfills when any of the input's promises fulfills, with this first fulfillment value.
|
|
@@ -57,7 +57,7 @@ exports.CombineablePromise = {
|
|
|
57
57
|
if (values.length == 0) {
|
|
58
58
|
return Promise.any(values);
|
|
59
59
|
}
|
|
60
|
-
return
|
|
60
|
+
return context_impl_js_1.ContextImpl.createCombinator(Promise.any.bind(Promise), values);
|
|
61
61
|
},
|
|
62
62
|
/**
|
|
63
63
|
* Creates a promise that fulfills when all the input's promises settle (including when an empty iterable is passed),
|
|
@@ -72,7 +72,7 @@ exports.CombineablePromise = {
|
|
|
72
72
|
if (values.length == 0) {
|
|
73
73
|
return Promise.allSettled(values);
|
|
74
74
|
}
|
|
75
|
-
return
|
|
75
|
+
return context_impl_js_1.ContextImpl.createCombinator(Promise.allSettled.bind(Promise), values);
|
|
76
76
|
},
|
|
77
77
|
};
|
|
78
78
|
//# sourceMappingURL=context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/context.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AAgBH,uDAAgD;AA4fnC,QAAA,kBAAkB,GAAG;IAChC;;;;;;;;OAQG;IACH,GAAG,CACD,MAAS;QAET,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YACvB,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;QACD,OAAO,6BAAW,CAAC,gBAAgB,CACjC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EACzB,MAAM,CAGN,CAAC;IACL,CAAC;IAED;;;;;;;;OAQG;IACH,IAAI,CACF,MAAS;QAET,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YACvB,OAAO,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,6BAAW,CAAC,gBAAgB,CACjC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAC1B,MAAM,CACwB,CAAC;IACnC,CAAC;IAED;;;;;;;;;OASG;IACH,GAAG,CACD,MAAS;QAET,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YACvB,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;QACD,OAAO,6BAAW,CAAC,gBAAgB,CACjC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EACzB,MAAM,CACwB,CAAC;IACnC,CAAC;IAED;;;;;;;;OAQG;IACH,UAAU,CACR,MAAS;QAIT,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YACvB,OAAO,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACpC,CAAC;QACD,OAAO,6BAAW,CAAC,gBAAgB,CACjC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAChC,MAAM,CAGN,CAAC;IACL,CAAC;CACF,CAAC"}
|
|
@@ -1,21 +1,12 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
/// <reference types="node" />
|
|
3
|
-
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import { Client, HandlerKind, SendClient } from "./types/rpc";
|
|
3
|
+
import type { CombineablePromise, ContextDate, DurablePromise, ObjectContext, Rand, Request, RunAction, SendOptions, WorkflowContext } from "./context.js";
|
|
4
|
+
import type { StateMachine } from "./state_machine.js";
|
|
5
|
+
import type { Client, SendClient } from "./types/rpc.js";
|
|
6
|
+
import { HandlerKind } from "./types/rpc.js";
|
|
8
7
|
import type { Service, ServiceDefinitionFrom, VirtualObjectDefinitionFrom, VirtualObject, WorkflowDefinitionFrom, Workflow } from "@restatedev/restate-sdk-core";
|
|
9
|
-
import { WrappedPromise } from "./utils/promises";
|
|
8
|
+
import type { WrappedPromise } from "./utils/promises.js";
|
|
10
9
|
import { Buffer } from "node:buffer";
|
|
11
|
-
export declare enum CallContextType {
|
|
12
|
-
None = 0,
|
|
13
|
-
Run = 1
|
|
14
|
-
}
|
|
15
|
-
export interface CallContext {
|
|
16
|
-
type: CallContextType;
|
|
17
|
-
delay?: number;
|
|
18
|
-
}
|
|
19
10
|
export type InternalCombineablePromise<T> = CombineablePromise<T> & {
|
|
20
11
|
journalIndex: number;
|
|
21
12
|
};
|
|
@@ -24,12 +15,11 @@ export declare class ContextImpl implements ObjectContext, WorkflowContext {
|
|
|
24
15
|
readonly handlerKind: HandlerKind;
|
|
25
16
|
readonly keyedContextKey: string | undefined;
|
|
26
17
|
readonly stateMachine: StateMachine;
|
|
27
|
-
readonly rand: Rand;
|
|
28
|
-
static callContext: AsyncLocalStorage<CallContext>;
|
|
29
18
|
private executingRun;
|
|
30
19
|
private readonly invocationRequest;
|
|
20
|
+
readonly rand: Rand;
|
|
31
21
|
readonly date: ContextDate;
|
|
32
|
-
constructor(id: Buffer, console: Console, handlerKind: HandlerKind, keyedContextKey: string | undefined, invocationValue: Uint8Array, invocationHeaders: ReadonlyMap<string, string>, attemptHeaders: ReadonlyMap<string, string | string[] | undefined>, stateMachine: StateMachine
|
|
22
|
+
constructor(id: Buffer, console: Console, handlerKind: HandlerKind, keyedContextKey: string | undefined, invocationValue: Uint8Array, invocationHeaders: ReadonlyMap<string, string>, attemptHeaders: ReadonlyMap<string, string | string[] | undefined>, stateMachine: StateMachine);
|
|
33
23
|
workflowClient<D>(opts: WorkflowDefinitionFrom<D>, key: string): Client<Workflow<D>>;
|
|
34
24
|
promise<T = void>(name: string): DurablePromise<T>;
|
|
35
25
|
get key(): string;
|
|
@@ -57,7 +47,6 @@ export declare class ContextImpl implements ObjectContext, WorkflowContext {
|
|
|
57
47
|
rejectAwakeable(id: string, reason: string): void;
|
|
58
48
|
private completeAwakeable;
|
|
59
49
|
static createCombinator<T extends readonly CombineablePromise<unknown>[]>(combinatorConstructor: (promises: PromiseLike<unknown>[]) => Promise<unknown>, promises: T): WrappedPromise<unknown>;
|
|
60
|
-
private isInRun;
|
|
61
50
|
private checkNotExecutingRun;
|
|
62
51
|
private checkState;
|
|
63
52
|
markCombineablePromise<T>(p: WrappedPromise<T>): InternalCombineablePromise<T>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context_impl.d.ts","sourceRoot":"","sources":["../../../src/context_impl.ts"],"names":[],"mappings":"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"}
|