actor-ts 0.9.0 → 0.10.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/CHANGELOG.md +408 -0
- package/README.md +285 -269
- package/dist/ActorSystem.d.ts +3 -38
- package/dist/ActorSystem.d.ts.map +1 -1
- package/dist/ActorSystem.js +2 -2
- package/dist/ActorSystem.js.map +1 -1
- package/dist/ActorSystemOptions.d.ts +91 -0
- package/dist/ActorSystemOptions.d.ts.map +1 -0
- package/dist/ActorSystemOptions.js +45 -0
- package/dist/ActorSystemOptions.js.map +1 -0
- package/dist/Logger.d.ts +63 -0
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +146 -0
- package/dist/Logger.js.map +1 -1
- package/dist/cache/MemcachedCache.d.ts +2 -12
- package/dist/cache/MemcachedCache.d.ts.map +1 -1
- package/dist/cache/MemcachedCache.js +2 -1
- package/dist/cache/MemcachedCache.js.map +1 -1
- package/dist/cache/MemcachedCacheOptions.d.ts +40 -0
- package/dist/cache/MemcachedCacheOptions.d.ts.map +1 -0
- package/dist/cache/MemcachedCacheOptions.js +32 -0
- package/dist/cache/MemcachedCacheOptions.js.map +1 -0
- package/dist/cache/RedisCache.d.ts +2 -22
- package/dist/cache/RedisCache.d.ts.map +1 -1
- package/dist/cache/RedisCache.js +2 -1
- package/dist/cache/RedisCache.js.map +1 -1
- package/dist/cache/RedisCacheOptions.d.ts +56 -0
- package/dist/cache/RedisCacheOptions.d.ts.map +1 -0
- package/dist/cache/RedisCacheOptions.js +43 -0
- package/dist/cache/RedisCacheOptions.js.map +1 -0
- package/dist/cache/index.d.ts +6 -2
- package/dist/cache/index.d.ts.map +1 -1
- package/dist/cache/index.js +2 -0
- package/dist/cache/index.js.map +1 -1
- package/dist/cluster/Cluster.d.ts +4 -63
- package/dist/cluster/Cluster.d.ts.map +1 -1
- package/dist/cluster/Cluster.js +10 -5
- package/dist/cluster/Cluster.js.map +1 -1
- package/dist/cluster/ClusterBootstrap.d.ts +6 -84
- package/dist/cluster/ClusterBootstrap.d.ts.map +1 -1
- package/dist/cluster/ClusterBootstrap.js +33 -21
- package/dist/cluster/ClusterBootstrap.js.map +1 -1
- package/dist/cluster/ClusterBootstrapOptions.d.ts +152 -0
- package/dist/cluster/ClusterBootstrapOptions.d.ts.map +1 -0
- package/dist/cluster/ClusterBootstrapOptions.js +103 -0
- package/dist/cluster/ClusterBootstrapOptions.js.map +1 -0
- package/dist/cluster/ClusterClient.d.ts +21 -31
- package/dist/cluster/ClusterClient.d.ts.map +1 -1
- package/dist/cluster/ClusterClient.js +21 -6
- package/dist/cluster/ClusterClient.js.map +1 -1
- package/dist/cluster/ClusterClientOptions.d.ts +65 -0
- package/dist/cluster/ClusterClientOptions.d.ts.map +1 -0
- package/dist/cluster/ClusterClientOptions.js +43 -0
- package/dist/cluster/ClusterClientOptions.js.map +1 -0
- package/dist/cluster/ClusterClientReceptionist.d.ts +2 -8
- package/dist/cluster/ClusterClientReceptionist.d.ts.map +1 -1
- package/dist/cluster/ClusterClientReceptionist.js +3 -1
- package/dist/cluster/ClusterClientReceptionist.js.map +1 -1
- package/dist/cluster/ClusterClientReceptionistOptions.d.ts +32 -0
- package/dist/cluster/ClusterClientReceptionistOptions.d.ts.map +1 -0
- package/dist/cluster/ClusterClientReceptionistOptions.js +22 -0
- package/dist/cluster/ClusterClientReceptionistOptions.js.map +1 -0
- package/dist/cluster/ClusterOptions.d.ts +116 -0
- package/dist/cluster/ClusterOptions.d.ts.map +1 -0
- package/dist/cluster/ClusterOptions.js +77 -0
- package/dist/cluster/ClusterOptions.js.map +1 -0
- package/dist/cluster/FailureDetector.d.ts +4 -11
- package/dist/cluster/FailureDetector.d.ts.map +1 -1
- package/dist/cluster/FailureDetector.js +4 -3
- package/dist/cluster/FailureDetector.js.map +1 -1
- package/dist/cluster/FailureDetectorOptions.d.ts +38 -0
- package/dist/cluster/FailureDetectorOptions.d.ts.map +1 -0
- package/dist/cluster/FailureDetectorOptions.js +31 -0
- package/dist/cluster/FailureDetectorOptions.js.map +1 -0
- package/dist/cluster/PhiAccrualFailureDetector.d.ts +3 -19
- package/dist/cluster/PhiAccrualFailureDetector.d.ts.map +1 -1
- package/dist/cluster/PhiAccrualFailureDetector.js +2 -2
- package/dist/cluster/PhiAccrualFailureDetector.js.map +1 -1
- package/dist/cluster/PhiAccrualOptions.d.ts +53 -0
- package/dist/cluster/PhiAccrualOptions.d.ts.map +1 -0
- package/dist/cluster/PhiAccrualOptions.js +43 -0
- package/dist/cluster/PhiAccrualOptions.js.map +1 -0
- package/dist/cluster/downing/KeepOldest.d.ts +2 -11
- package/dist/cluster/downing/KeepOldest.d.ts.map +1 -1
- package/dist/cluster/downing/KeepOldest.js +2 -2
- package/dist/cluster/downing/KeepOldest.js.map +1 -1
- package/dist/cluster/downing/KeepOldestOptions.d.ts +34 -0
- package/dist/cluster/downing/KeepOldestOptions.d.ts.map +1 -0
- package/dist/cluster/downing/KeepOldestOptions.js +23 -0
- package/dist/cluster/downing/KeepOldestOptions.js.map +1 -0
- package/dist/cluster/downing/KeepReferee.d.ts +2 -10
- package/dist/cluster/downing/KeepReferee.d.ts.map +1 -1
- package/dist/cluster/downing/KeepReferee.js +3 -3
- package/dist/cluster/downing/KeepReferee.js.map +1 -1
- package/dist/cluster/downing/KeepRefereeOptions.d.ts +35 -0
- package/dist/cluster/downing/KeepRefereeOptions.d.ts.map +1 -0
- package/dist/cluster/downing/KeepRefereeOptions.js +25 -0
- package/dist/cluster/downing/KeepRefereeOptions.js.map +1 -0
- package/dist/cluster/downing/LeaseMajority.d.ts +63 -21
- package/dist/cluster/downing/LeaseMajority.d.ts.map +1 -1
- package/dist/cluster/downing/LeaseMajority.js +132 -9
- package/dist/cluster/downing/LeaseMajority.js.map +1 -1
- package/dist/cluster/downing/LeaseMajorityOptions.d.ts +49 -0
- package/dist/cluster/downing/LeaseMajorityOptions.d.ts.map +1 -0
- package/dist/cluster/downing/LeaseMajorityOptions.js +31 -0
- package/dist/cluster/downing/LeaseMajorityOptions.js.map +1 -0
- package/dist/cluster/downing/StaticQuorum.d.ts +2 -7
- package/dist/cluster/downing/StaticQuorum.d.ts.map +1 -1
- package/dist/cluster/downing/StaticQuorum.js +3 -3
- package/dist/cluster/downing/StaticQuorum.js.map +1 -1
- package/dist/cluster/downing/StaticQuorumOptions.d.ts +30 -0
- package/dist/cluster/downing/StaticQuorumOptions.d.ts.map +1 -0
- package/dist/cluster/downing/StaticQuorumOptions.js +23 -0
- package/dist/cluster/downing/StaticQuorumOptions.js.map +1 -0
- package/dist/cluster/downing/index.d.ts +8 -4
- package/dist/cluster/downing/index.d.ts.map +1 -1
- package/dist/cluster/downing/index.js +4 -0
- package/dist/cluster/downing/index.js.map +1 -1
- package/dist/cluster/index.d.ts +34 -19
- package/dist/cluster/index.d.ts.map +1 -1
- package/dist/cluster/index.js +15 -4
- package/dist/cluster/index.js.map +1 -1
- package/dist/cluster/pubsub/DistributedPubSubExtension.d.ts +2 -2
- package/dist/cluster/pubsub/DistributedPubSubExtension.d.ts.map +1 -1
- package/dist/cluster/pubsub/DistributedPubSubExtension.js +5 -2
- package/dist/cluster/pubsub/DistributedPubSubExtension.js.map +1 -1
- package/dist/cluster/pubsub/DistributedPubSubMediator.d.ts +3 -7
- package/dist/cluster/pubsub/DistributedPubSubMediator.d.ts.map +1 -1
- package/dist/cluster/pubsub/DistributedPubSubMediator.js +3 -3
- package/dist/cluster/pubsub/DistributedPubSubMediator.js.map +1 -1
- package/dist/cluster/pubsub/DistributedPubSubOptions.d.ts +29 -0
- package/dist/cluster/pubsub/DistributedPubSubOptions.d.ts.map +1 -0
- package/dist/cluster/pubsub/DistributedPubSubOptions.js +23 -0
- package/dist/cluster/pubsub/DistributedPubSubOptions.js.map +1 -0
- package/dist/cluster/pubsub/index.d.ts +2 -1
- package/dist/cluster/pubsub/index.d.ts.map +1 -1
- package/dist/cluster/pubsub/index.js +1 -0
- package/dist/cluster/pubsub/index.js.map +1 -1
- package/dist/cluster/router/ClusterRouter.d.ts +12 -32
- package/dist/cluster/router/ClusterRouter.d.ts.map +1 -1
- package/dist/cluster/router/ClusterRouter.js +4 -2
- package/dist/cluster/router/ClusterRouter.js.map +1 -1
- package/dist/cluster/router/ClusterRouterOptions.d.ts +60 -0
- package/dist/cluster/router/ClusterRouterOptions.d.ts.map +1 -0
- package/dist/cluster/router/ClusterRouterOptions.js +41 -0
- package/dist/cluster/router/ClusterRouterOptions.js.map +1 -0
- package/dist/cluster/router/index.d.ts +3 -1
- package/dist/cluster/router/index.d.ts.map +1 -1
- package/dist/cluster/router/index.js +1 -0
- package/dist/cluster/router/index.js.map +1 -1
- package/dist/cluster/sharding/CassandraRememberEntitiesStore.d.ts +1 -15
- package/dist/cluster/sharding/CassandraRememberEntitiesStore.d.ts.map +1 -1
- package/dist/cluster/sharding/CassandraRememberEntitiesStore.js +35 -2
- package/dist/cluster/sharding/CassandraRememberEntitiesStore.js.map +1 -1
- package/dist/cluster/sharding/CassandraRememberEntitiesStoreOptions.d.ts +63 -0
- package/dist/cluster/sharding/CassandraRememberEntitiesStoreOptions.d.ts.map +1 -0
- package/dist/cluster/sharding/CassandraRememberEntitiesStoreOptions.js +63 -0
- package/dist/cluster/sharding/CassandraRememberEntitiesStoreOptions.js.map +1 -0
- package/dist/cluster/sharding/ClusterSharding.d.ts +18 -64
- package/dist/cluster/sharding/ClusterSharding.d.ts.map +1 -1
- package/dist/cluster/sharding/ClusterSharding.js +44 -20
- package/dist/cluster/sharding/ClusterSharding.js.map +1 -1
- package/dist/cluster/sharding/CoordinatorState.d.ts +1 -1
- package/dist/cluster/sharding/CoordinatorState.js +1 -1
- package/dist/cluster/sharding/ShardCoordinator.d.ts +3 -63
- package/dist/cluster/sharding/ShardCoordinator.d.ts.map +1 -1
- package/dist/cluster/sharding/ShardCoordinator.js +3 -3
- package/dist/cluster/sharding/ShardCoordinator.js.map +1 -1
- package/dist/cluster/sharding/ShardCoordinatorOptions.d.ts +111 -0
- package/dist/cluster/sharding/ShardCoordinatorOptions.d.ts.map +1 -0
- package/dist/cluster/sharding/ShardCoordinatorOptions.js +69 -0
- package/dist/cluster/sharding/ShardCoordinatorOptions.js.map +1 -0
- package/dist/cluster/sharding/ShardRegion.d.ts +2 -33
- package/dist/cluster/sharding/ShardRegion.d.ts.map +1 -1
- package/dist/cluster/sharding/ShardRegion.js.map +1 -1
- package/dist/cluster/sharding/ShardedDaemonProcess.d.ts +2 -22
- package/dist/cluster/sharding/ShardedDaemonProcess.d.ts.map +1 -1
- package/dist/cluster/sharding/ShardedDaemonProcess.js +14 -11
- package/dist/cluster/sharding/ShardedDaemonProcess.js.map +1 -1
- package/dist/cluster/sharding/ShardedDaemonProcessOptions.d.ts +51 -0
- package/dist/cluster/sharding/ShardedDaemonProcessOptions.d.ts.map +1 -0
- package/dist/cluster/sharding/ShardedDaemonProcessOptions.js +35 -0
- package/dist/cluster/sharding/ShardedDaemonProcessOptions.js.map +1 -0
- package/dist/cluster/sharding/ShardingOptions.d.ts +84 -0
- package/dist/cluster/sharding/ShardingOptions.d.ts.map +1 -0
- package/dist/cluster/sharding/ShardingOptions.js +62 -0
- package/dist/cluster/sharding/ShardingOptions.js.map +1 -0
- package/dist/cluster/sharding/StartShardingOptions.d.ts +98 -0
- package/dist/cluster/sharding/StartShardingOptions.d.ts.map +1 -0
- package/dist/cluster/sharding/StartShardingOptions.js +52 -0
- package/dist/cluster/sharding/StartShardingOptions.js.map +1 -0
- package/dist/cluster/singleton/ClusterSingleton.d.ts +2 -30
- package/dist/cluster/singleton/ClusterSingleton.d.ts.map +1 -1
- package/dist/cluster/singleton/ClusterSingleton.js +15 -9
- package/dist/cluster/singleton/ClusterSingleton.js.map +1 -1
- package/dist/cluster/singleton/ClusterSingletonManager.d.ts +3 -18
- package/dist/cluster/singleton/ClusterSingletonManager.d.ts.map +1 -1
- package/dist/cluster/singleton/ClusterSingletonManager.js +3 -3
- package/dist/cluster/singleton/ClusterSingletonManager.js.map +1 -1
- package/dist/cluster/singleton/ClusterSingletonManagerOptions.d.ts +49 -0
- package/dist/cluster/singleton/ClusterSingletonManagerOptions.d.ts.map +1 -0
- package/dist/cluster/singleton/ClusterSingletonManagerOptions.js +40 -0
- package/dist/cluster/singleton/ClusterSingletonManagerOptions.js.map +1 -0
- package/dist/cluster/singleton/StartSingletonOptions.d.ts +64 -0
- package/dist/cluster/singleton/StartSingletonOptions.d.ts.map +1 -0
- package/dist/cluster/singleton/StartSingletonOptions.js +40 -0
- package/dist/cluster/singleton/StartSingletonOptions.js.map +1 -0
- package/dist/cluster/singleton/index.d.ts +6 -2
- package/dist/cluster/singleton/index.d.ts.map +1 -1
- package/dist/cluster/singleton/index.js +2 -0
- package/dist/cluster/singleton/index.js.map +1 -1
- package/dist/config/ConfigKeys.d.ts +5 -0
- package/dist/config/ConfigKeys.d.ts.map +1 -1
- package/dist/config/ConfigKeys.js +5 -0
- package/dist/config/ConfigKeys.js.map +1 -1
- package/dist/coordination/Lease.d.ts +32 -14
- package/dist/coordination/Lease.d.ts.map +1 -1
- package/dist/coordination/LeaseOptions.d.ts +61 -0
- package/dist/coordination/LeaseOptions.d.ts.map +1 -0
- package/dist/coordination/LeaseOptions.js +50 -0
- package/dist/coordination/LeaseOptions.js.map +1 -0
- package/dist/coordination/index.d.ts +5 -2
- package/dist/coordination/index.d.ts.map +1 -1
- package/dist/coordination/index.js +2 -0
- package/dist/coordination/index.js.map +1 -1
- package/dist/coordination/leases/InMemoryLease.d.ts +18 -5
- package/dist/coordination/leases/InMemoryLease.d.ts.map +1 -1
- package/dist/coordination/leases/InMemoryLease.js +23 -11
- package/dist/coordination/leases/InMemoryLease.js.map +1 -1
- package/dist/coordination/leases/KubernetesLease.d.ts +19 -24
- package/dist/coordination/leases/KubernetesLease.d.ts.map +1 -1
- package/dist/coordination/leases/KubernetesLease.js +28 -9
- package/dist/coordination/leases/KubernetesLease.js.map +1 -1
- package/dist/coordination/leases/KubernetesLeaseOptions.d.ts +58 -0
- package/dist/coordination/leases/KubernetesLeaseOptions.d.ts.map +1 -0
- package/dist/coordination/leases/KubernetesLeaseOptions.js +42 -0
- package/dist/coordination/leases/KubernetesLeaseOptions.js.map +1 -0
- package/dist/crdt/DistributedData.d.ts +2 -22
- package/dist/crdt/DistributedData.d.ts.map +1 -1
- package/dist/crdt/DistributedData.js +3 -2
- package/dist/crdt/DistributedData.js.map +1 -1
- package/dist/crdt/DistributedDataOptions.d.ts +50 -0
- package/dist/crdt/DistributedDataOptions.d.ts.map +1 -0
- package/dist/crdt/DistributedDataOptions.js +28 -0
- package/dist/crdt/DistributedDataOptions.js.map +1 -0
- package/dist/crdt/index.d.ts +3 -1
- package/dist/crdt/index.d.ts.map +1 -1
- package/dist/crdt/index.js +1 -0
- package/dist/crdt/index.js.map +1 -1
- package/dist/delivery/ProducerController.d.ts +4 -19
- package/dist/delivery/ProducerController.d.ts.map +1 -1
- package/dist/delivery/ProducerController.js +4 -3
- package/dist/delivery/ProducerController.js.map +1 -1
- package/dist/delivery/ProducerControllerOptions.d.ts +50 -0
- package/dist/delivery/ProducerControllerOptions.d.ts.map +1 -0
- package/dist/delivery/ProducerControllerOptions.js +36 -0
- package/dist/delivery/ProducerControllerOptions.js.map +1 -0
- package/dist/delivery/ReliableDelivery.d.ts +3 -2
- package/dist/delivery/ReliableDelivery.d.ts.map +1 -1
- package/dist/delivery/ReliableDelivery.js +2 -2
- package/dist/delivery/ReliableDelivery.js.map +1 -1
- package/dist/delivery/index.d.ts +3 -1
- package/dist/delivery/index.d.ts.map +1 -1
- package/dist/delivery/index.js +1 -0
- package/dist/delivery/index.js.map +1 -1
- package/dist/discovery/AutoDiscoveryOptions.d.ts +72 -0
- package/dist/discovery/AutoDiscoveryOptions.d.ts.map +1 -0
- package/dist/discovery/AutoDiscoveryOptions.js +34 -0
- package/dist/discovery/AutoDiscoveryOptions.js.map +1 -0
- package/dist/discovery/ConfigSeedProvider.d.ts +2 -7
- package/dist/discovery/ConfigSeedProvider.d.ts.map +1 -1
- package/dist/discovery/ConfigSeedProvider.js +4 -3
- package/dist/discovery/ConfigSeedProvider.js.map +1 -1
- package/dist/discovery/ConfigSeedProviderOptions.d.ts +34 -0
- package/dist/discovery/ConfigSeedProviderOptions.d.ts.map +1 -0
- package/dist/discovery/ConfigSeedProviderOptions.js +27 -0
- package/dist/discovery/ConfigSeedProviderOptions.js.map +1 -0
- package/dist/discovery/DnsSeedProvider.d.ts +3 -27
- package/dist/discovery/DnsSeedProvider.d.ts.map +1 -1
- package/dist/discovery/DnsSeedProvider.js +4 -4
- package/dist/discovery/DnsSeedProvider.js.map +1 -1
- package/dist/discovery/DnsSeedProviderOptions.d.ts +67 -0
- package/dist/discovery/DnsSeedProviderOptions.d.ts.map +1 -0
- package/dist/discovery/DnsSeedProviderOptions.js +48 -0
- package/dist/discovery/DnsSeedProviderOptions.js.map +1 -0
- package/dist/discovery/KubernetesApiSeedProvider.d.ts +2 -13
- package/dist/discovery/KubernetesApiSeedProvider.d.ts.map +1 -1
- package/dist/discovery/KubernetesApiSeedProvider.js +2 -2
- package/dist/discovery/KubernetesApiSeedProvider.js.map +1 -1
- package/dist/discovery/KubernetesApiSeedProviderOptions.d.ts +46 -0
- package/dist/discovery/KubernetesApiSeedProviderOptions.d.ts.map +1 -0
- package/dist/discovery/KubernetesApiSeedProviderOptions.js +39 -0
- package/dist/discovery/KubernetesApiSeedProviderOptions.js.map +1 -0
- package/dist/discovery/Receptionist.d.ts +3 -6
- package/dist/discovery/Receptionist.d.ts.map +1 -1
- package/dist/discovery/Receptionist.js +10 -3
- package/dist/discovery/Receptionist.js.map +1 -1
- package/dist/discovery/ReceptionistOptions.d.ts +30 -0
- package/dist/discovery/ReceptionistOptions.d.ts.map +1 -0
- package/dist/discovery/ReceptionistOptions.js +24 -0
- package/dist/discovery/ReceptionistOptions.js.map +1 -0
- package/dist/discovery/autoDiscovery.d.ts +3 -44
- package/dist/discovery/autoDiscovery.d.ts.map +1 -1
- package/dist/discovery/autoDiscovery.js +31 -32
- package/dist/discovery/autoDiscovery.js.map +1 -1
- package/dist/discovery/index.d.ts +10 -5
- package/dist/discovery/index.d.ts.map +1 -1
- package/dist/discovery/index.js +5 -0
- package/dist/discovery/index.js.map +1 -1
- package/dist/http/HttpExtension.d.ts.map +1 -1
- package/dist/http/HttpExtension.js +69 -8
- package/dist/http/HttpExtension.js.map +1 -1
- package/dist/http/Route.d.ts +76 -4
- package/dist/http/Route.d.ts.map +1 -1
- package/dist/http/Route.js +74 -1
- package/dist/http/Route.js.map +1 -1
- package/dist/http/backend/ExpressBackend.d.ts +18 -12
- package/dist/http/backend/ExpressBackend.d.ts.map +1 -1
- package/dist/http/backend/ExpressBackend.js +134 -8
- package/dist/http/backend/ExpressBackend.js.map +1 -1
- package/dist/http/backend/ExpressBackendOptions.d.ts +47 -0
- package/dist/http/backend/ExpressBackendOptions.d.ts.map +1 -0
- package/dist/http/backend/ExpressBackendOptions.js +35 -0
- package/dist/http/backend/ExpressBackendOptions.js.map +1 -0
- package/dist/http/backend/FastifyBackend.d.ts +4 -1
- package/dist/http/backend/FastifyBackend.d.ts.map +1 -1
- package/dist/http/backend/FastifyBackend.js +71 -1
- package/dist/http/backend/FastifyBackend.js.map +1 -1
- package/dist/http/backend/HonoBackend.d.ts +19 -13
- package/dist/http/backend/HonoBackend.d.ts.map +1 -1
- package/dist/http/backend/HonoBackend.js +152 -5
- package/dist/http/backend/HonoBackend.js.map +1 -1
- package/dist/http/backend/HonoBackendOptions.d.ts +47 -0
- package/dist/http/backend/HonoBackendOptions.d.ts.map +1 -0
- package/dist/http/backend/HonoBackendOptions.js +35 -0
- package/dist/http/backend/HonoBackendOptions.js.map +1 -0
- package/dist/http/backend/HttpServerBackend.d.ts +24 -0
- package/dist/http/backend/HttpServerBackend.d.ts.map +1 -1
- package/dist/http/index.d.ts +11 -5
- package/dist/http/index.d.ts.map +1 -1
- package/dist/http/index.js +8 -1
- package/dist/http/index.js.map +1 -1
- package/dist/http/middleware/BearerToken.d.ts +44 -0
- package/dist/http/middleware/BearerToken.d.ts.map +1 -0
- package/dist/http/middleware/BearerToken.js +72 -0
- package/dist/http/middleware/BearerToken.js.map +1 -0
- package/dist/http/middleware/IpAllowlist.d.ts +45 -0
- package/dist/http/middleware/IpAllowlist.d.ts.map +1 -0
- package/dist/http/middleware/IpAllowlist.js +148 -0
- package/dist/http/middleware/IpAllowlist.js.map +1 -0
- package/dist/http/middleware/index.d.ts +5 -0
- package/dist/http/middleware/index.d.ts.map +1 -0
- package/dist/http/middleware/index.js +3 -0
- package/dist/http/middleware/index.js.map +1 -0
- package/dist/http/types.d.ts +9 -0
- package/dist/http/types.d.ts.map +1 -1
- package/dist/http/types.js.map +1 -1
- package/dist/http/ws/ConnectionWiring.d.ts +59 -0
- package/dist/http/ws/ConnectionWiring.d.ts.map +1 -0
- package/dist/http/ws/ConnectionWiring.js +112 -0
- package/dist/http/ws/ConnectionWiring.js.map +1 -0
- package/dist/http/ws/SocketAdapter.d.ts +72 -0
- package/dist/http/ws/SocketAdapter.d.ts.map +1 -0
- package/dist/http/ws/SocketAdapter.js +97 -0
- package/dist/http/ws/SocketAdapter.js.map +1 -0
- package/dist/http/ws/WebSocketClientActor.d.ts +66 -0
- package/dist/http/ws/WebSocketClientActor.d.ts.map +1 -0
- package/dist/http/ws/WebSocketClientActor.js +194 -0
- package/dist/http/ws/WebSocketClientActor.js.map +1 -0
- package/dist/http/ws/WebSocketClientOptions.d.ts +77 -0
- package/dist/http/ws/WebSocketClientOptions.d.ts.map +1 -0
- package/dist/http/ws/WebSocketClientOptions.js +69 -0
- package/dist/http/ws/WebSocketClientOptions.js.map +1 -0
- package/dist/http/ws/WebSocketConnectionActor.d.ts +51 -0
- package/dist/http/ws/WebSocketConnectionActor.d.ts.map +1 -0
- package/dist/http/ws/WebSocketConnectionActor.js +170 -0
- package/dist/http/ws/WebSocketConnectionActor.js.map +1 -0
- package/dist/http/ws/WebSocketRoute.d.ts +20 -0
- package/dist/http/ws/WebSocketRoute.d.ts.map +1 -0
- package/dist/http/ws/WebSocketRoute.js +44 -0
- package/dist/http/ws/WebSocketRoute.js.map +1 -0
- package/dist/http/ws/WebSocketRouteOptions.d.ts +54 -0
- package/dist/http/ws/WebSocketRouteOptions.d.ts.map +1 -0
- package/dist/http/ws/WebSocketRouteOptions.js +55 -0
- package/dist/http/ws/WebSocketRouteOptions.js.map +1 -0
- package/dist/http/ws/WebSocketServerActor.d.ts +65 -0
- package/dist/http/ws/WebSocketServerActor.d.ts.map +1 -0
- package/dist/http/ws/WebSocketServerActor.js +133 -0
- package/dist/http/ws/WebSocketServerActor.js.map +1 -0
- package/dist/http/ws/WsCodec.d.ts +65 -0
- package/dist/http/ws/WsCodec.d.ts.map +1 -0
- package/dist/http/ws/WsCodec.js +82 -0
- package/dist/http/ws/WsCodec.js.map +1 -0
- package/dist/http/ws/WsConnection.d.ts +59 -0
- package/dist/http/ws/WsConnection.d.ts.map +1 -0
- package/dist/http/ws/WsConnection.js +45 -0
- package/dist/http/ws/WsConnection.js.map +1 -0
- package/dist/http/ws/WsMessages.d.ts +91 -0
- package/dist/http/ws/WsMessages.d.ts.map +1 -0
- package/dist/http/ws/WsMessages.js +90 -0
- package/dist/http/ws/WsMessages.js.map +1 -0
- package/dist/http/ws/WsPolicy.d.ts +32 -0
- package/dist/http/ws/WsPolicy.d.ts.map +1 -0
- package/dist/http/ws/WsPolicy.js +43 -0
- package/dist/http/ws/WsPolicy.js.map +1 -0
- package/dist/http/ws/index.d.ts +22 -0
- package/dist/http/ws/index.d.ts.map +1 -0
- package/dist/http/ws/index.js +15 -0
- package/dist/http/ws/index.js.map +1 -0
- package/dist/http/ws/matchPattern.d.ts +12 -0
- package/dist/http/ws/matchPattern.d.ts.map +1 -0
- package/dist/http/ws/matchPattern.js +29 -0
- package/dist/http/ws/matchPattern.js.map +1 -0
- package/dist/http/ws/rawResponse.d.ts +15 -0
- package/dist/http/ws/rawResponse.d.ts.map +1 -0
- package/dist/http/ws/rawResponse.js +54 -0
- package/dist/http/ws/rawResponse.js.map +1 -0
- package/dist/http/ws/types.d.ts +70 -0
- package/dist/http/ws/types.d.ts.map +1 -0
- package/dist/http/ws/types.js +81 -0
- package/dist/http/ws/types.js.map +1 -0
- package/dist/http/ws/wsCtor.d.ts +34 -0
- package/dist/http/ws/wsCtor.d.ts.map +1 -0
- package/dist/http/ws/wsCtor.js +38 -0
- package/dist/http/ws/wsCtor.js.map +1 -0
- package/dist/index.d.ts +25 -23
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +15 -11
- package/dist/index.js.map +1 -1
- package/dist/internal/ActorCell.d.ts +16 -1
- package/dist/internal/ActorCell.d.ts.map +1 -1
- package/dist/internal/ActorCell.js +32 -2
- package/dist/internal/ActorCell.js.map +1 -1
- package/dist/io/broker/AmqpActor.d.ts +19 -16
- package/dist/io/broker/AmqpActor.d.ts.map +1 -1
- package/dist/io/broker/AmqpActor.js +13 -5
- package/dist/io/broker/AmqpActor.js.map +1 -1
- package/dist/io/broker/AmqpOptions.d.ts +41 -0
- package/dist/io/broker/AmqpOptions.d.ts.map +1 -0
- package/dist/io/broker/AmqpOptions.js +34 -0
- package/dist/io/broker/AmqpOptions.js.map +1 -0
- package/dist/io/broker/BrokerActor.d.ts +4 -3
- package/dist/io/broker/BrokerActor.d.ts.map +1 -1
- package/dist/io/broker/BrokerActor.js +4 -2
- package/dist/io/broker/BrokerActor.js.map +1 -1
- package/dist/io/broker/BrokerOptions.d.ts +24 -0
- package/dist/io/broker/BrokerOptions.d.ts.map +1 -0
- package/dist/io/broker/BrokerOptions.js +29 -0
- package/dist/io/broker/BrokerOptions.js.map +1 -0
- package/dist/io/broker/BrokerSettings.d.ts +2 -2
- package/dist/io/broker/BrokerSettings.d.ts.map +1 -1
- package/dist/io/broker/BrokerSettings.js.map +1 -1
- package/dist/io/broker/GrpcClientActor.d.ts +6 -19
- package/dist/io/broker/GrpcClientActor.d.ts.map +1 -1
- package/dist/io/broker/GrpcClientActor.js +1 -1
- package/dist/io/broker/GrpcClientActor.js.map +1 -1
- package/dist/io/broker/GrpcClientOptions.d.ts +48 -0
- package/dist/io/broker/GrpcClientOptions.d.ts.map +1 -0
- package/dist/io/broker/GrpcClientOptions.js +42 -0
- package/dist/io/broker/GrpcClientOptions.js.map +1 -0
- package/dist/io/broker/GrpcServerActor.d.ts +3 -24
- package/dist/io/broker/GrpcServerActor.d.ts.map +1 -1
- package/dist/io/broker/GrpcServerActor.js +3 -3
- package/dist/io/broker/GrpcServerActor.js.map +1 -1
- package/dist/io/broker/GrpcServerOptions.d.ts +58 -0
- package/dist/io/broker/GrpcServerOptions.d.ts.map +1 -0
- package/dist/io/broker/GrpcServerOptions.js +44 -0
- package/dist/io/broker/GrpcServerOptions.js.map +1 -0
- package/dist/io/broker/JetStreamActor.d.ts +13 -35
- package/dist/io/broker/JetStreamActor.d.ts.map +1 -1
- package/dist/io/broker/JetStreamActor.js +2 -2
- package/dist/io/broker/JetStreamActor.js.map +1 -1
- package/dist/io/broker/JetStreamOptions.d.ts +64 -0
- package/dist/io/broker/JetStreamOptions.d.ts.map +1 -0
- package/dist/io/broker/JetStreamOptions.js +54 -0
- package/dist/io/broker/JetStreamOptions.js.map +1 -0
- package/dist/io/broker/KafkaActor.d.ts +13 -54
- package/dist/io/broker/KafkaActor.d.ts.map +1 -1
- package/dist/io/broker/KafkaActor.js +20 -8
- package/dist/io/broker/KafkaActor.js.map +1 -1
- package/dist/io/broker/KafkaOptions.d.ts +82 -0
- package/dist/io/broker/KafkaOptions.d.ts.map +1 -0
- package/dist/io/broker/KafkaOptions.js +50 -0
- package/dist/io/broker/KafkaOptions.js.map +1 -0
- package/dist/io/broker/MqttActor.d.ts +174 -114
- package/dist/io/broker/MqttActor.d.ts.map +1 -1
- package/dist/io/broker/MqttActor.js +328 -103
- package/dist/io/broker/MqttActor.js.map +1 -1
- package/dist/io/broker/MqttCodec.d.ts +70 -0
- package/dist/io/broker/MqttCodec.d.ts.map +1 -0
- package/dist/io/broker/MqttCodec.js +98 -0
- package/dist/io/broker/MqttCodec.js.map +1 -0
- package/dist/io/broker/MqttMessages.d.ts +145 -0
- package/dist/io/broker/MqttMessages.d.ts.map +1 -0
- package/dist/io/broker/MqttMessages.js +102 -0
- package/dist/io/broker/MqttMessages.js.map +1 -0
- package/dist/io/broker/MqttOptions.d.ts +100 -0
- package/dist/io/broker/MqttOptions.d.ts.map +1 -0
- package/dist/io/broker/MqttOptions.js +73 -0
- package/dist/io/broker/MqttOptions.js.map +1 -0
- package/dist/io/broker/NatsActor.d.ts +6 -21
- package/dist/io/broker/NatsActor.d.ts.map +1 -1
- package/dist/io/broker/NatsActor.js +1 -1
- package/dist/io/broker/NatsActor.js.map +1 -1
- package/dist/io/broker/NatsOptions.d.ts +51 -0
- package/dist/io/broker/NatsOptions.d.ts.map +1 -0
- package/dist/io/broker/NatsOptions.js +42 -0
- package/dist/io/broker/NatsOptions.js.map +1 -0
- package/dist/io/broker/RedisStreamsActor.d.ts +6 -24
- package/dist/io/broker/RedisStreamsActor.d.ts.map +1 -1
- package/dist/io/broker/RedisStreamsActor.js +1 -1
- package/dist/io/broker/RedisStreamsActor.js.map +1 -1
- package/dist/io/broker/RedisStreamsOptions.d.ts +51 -0
- package/dist/io/broker/RedisStreamsOptions.d.ts.map +1 -0
- package/dist/io/broker/RedisStreamsOptions.js +38 -0
- package/dist/io/broker/RedisStreamsOptions.js.map +1 -0
- package/dist/io/broker/SseActor.d.ts +6 -15
- package/dist/io/broker/SseActor.d.ts.map +1 -1
- package/dist/io/broker/SseActor.js +1 -1
- package/dist/io/broker/SseActor.js.map +1 -1
- package/dist/io/broker/SseOptions.d.ts +38 -0
- package/dist/io/broker/SseOptions.d.ts.map +1 -0
- package/dist/io/broker/SseOptions.js +30 -0
- package/dist/io/broker/SseOptions.js.map +1 -0
- package/dist/io/broker/TcpSocketActor.d.ts +6 -21
- package/dist/io/broker/TcpSocketActor.d.ts.map +1 -1
- package/dist/io/broker/TcpSocketActor.js +1 -1
- package/dist/io/broker/TcpSocketActor.js.map +1 -1
- package/dist/io/broker/TcpSocketOptions.d.ts +46 -0
- package/dist/io/broker/TcpSocketOptions.d.ts.map +1 -0
- package/dist/io/broker/TcpSocketOptions.js +34 -0
- package/dist/io/broker/TcpSocketOptions.js.map +1 -0
- package/dist/io/broker/UdpSocketActor.d.ts +6 -17
- package/dist/io/broker/UdpSocketActor.d.ts.map +1 -1
- package/dist/io/broker/UdpSocketActor.js +1 -1
- package/dist/io/broker/UdpSocketActor.js.map +1 -1
- package/dist/io/broker/UdpSocketOptions.d.ts +42 -0
- package/dist/io/broker/UdpSocketOptions.d.ts.map +1 -0
- package/dist/io/broker/UdpSocketOptions.js +34 -0
- package/dist/io/broker/UdpSocketOptions.js.map +1 -0
- package/dist/io/broker/index.d.ts +39 -19
- package/dist/io/broker/index.d.ts.map +1 -1
- package/dist/io/broker/index.js +21 -4
- package/dist/io/broker/index.js.map +1 -1
- package/dist/mailbox/BoundedMailbox.d.ts +12 -0
- package/dist/mailbox/BoundedMailbox.d.ts.map +1 -1
- package/dist/mailbox/BoundedMailbox.js +7 -1
- package/dist/mailbox/BoundedMailbox.js.map +1 -1
- package/dist/management/HttpManagement.d.ts +34 -1
- package/dist/management/HttpManagement.d.ts.map +1 -1
- package/dist/management/HttpManagement.js +30 -4
- package/dist/management/HttpManagement.js.map +1 -1
- package/dist/metrics/PromClientAdapter.d.ts +2 -12
- package/dist/metrics/PromClientAdapter.d.ts.map +1 -1
- package/dist/metrics/PromClientAdapter.js +2 -2
- package/dist/metrics/PromClientAdapter.js.map +1 -1
- package/dist/metrics/PromClientAdapterOptions.d.ts +46 -0
- package/dist/metrics/PromClientAdapterOptions.d.ts.map +1 -0
- package/dist/metrics/PromClientAdapterOptions.js +35 -0
- package/dist/metrics/PromClientAdapterOptions.js.map +1 -0
- package/dist/metrics/index.d.ts +3 -1
- package/dist/metrics/index.d.ts.map +1 -1
- package/dist/metrics/index.js +1 -0
- package/dist/metrics/index.js.map +1 -1
- package/dist/persistence/DurableStateActor.d.ts +4 -9
- package/dist/persistence/DurableStateActor.d.ts.map +1 -1
- package/dist/persistence/DurableStateActor.js +3 -3
- package/dist/persistence/DurableStateActor.js.map +1 -1
- package/dist/persistence/DurableStateOptions.d.ts +40 -0
- package/dist/persistence/DurableStateOptions.d.ts.map +1 -0
- package/dist/persistence/DurableStateOptions.js +36 -0
- package/dist/persistence/DurableStateOptions.js.map +1 -0
- package/dist/persistence/PersistenceOptions.d.ts +45 -0
- package/dist/persistence/PersistenceOptions.d.ts.map +1 -1
- package/dist/persistence/ReplicatedEventSourcedActor.d.ts.map +1 -1
- package/dist/persistence/ReplicatedEventSourcedActor.js +2 -2
- package/dist/persistence/ReplicatedEventSourcedActor.js.map +1 -1
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStore.d.ts +32 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStore.d.ts.map +1 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStore.js +120 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStore.js.map +1 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStoreOptions.d.ts +38 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStoreOptions.d.ts.map +1 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStoreOptions.js +38 -0
- package/dist/persistence/durable-state-stores/MariaDbDurableStateStoreOptions.js.map +1 -0
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStore.d.ts +4 -9
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStore.d.ts.map +1 -1
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStore.js +49 -7
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStore.js.map +1 -1
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStoreOptions.d.ts +61 -0
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStoreOptions.d.ts.map +1 -0
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStoreOptions.js +42 -0
- package/dist/persistence/durable-state-stores/ObjectStorageDurableStateStoreOptions.js.map +1 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStore.d.ts +38 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStore.d.ts.map +1 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStore.js +121 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStore.js.map +1 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStoreOptions.d.ts +38 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStoreOptions.d.ts.map +1 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStoreOptions.js +38 -0
- package/dist/persistence/durable-state-stores/PostgresDurableStateStoreOptions.js.map +1 -0
- package/dist/persistence/index.d.ts +59 -16
- package/dist/persistence/index.d.ts.map +1 -1
- package/dist/persistence/index.js +33 -2
- package/dist/persistence/index.js.map +1 -1
- package/dist/persistence/journals/CassandraJournal.d.ts +1 -48
- package/dist/persistence/journals/CassandraJournal.d.ts.map +1 -1
- package/dist/persistence/journals/CassandraJournal.js +2 -2
- package/dist/persistence/journals/CassandraJournal.js.map +1 -1
- package/dist/persistence/journals/CassandraJournalOptions.d.ts +107 -0
- package/dist/persistence/journals/CassandraJournalOptions.d.ts.map +1 -0
- package/dist/persistence/journals/CassandraJournalOptions.js +90 -0
- package/dist/persistence/journals/CassandraJournalOptions.js.map +1 -0
- package/dist/persistence/journals/CassandraPlugin.d.ts +1 -16
- package/dist/persistence/journals/CassandraPlugin.d.ts.map +1 -1
- package/dist/persistence/journals/CassandraPlugin.js +9 -4
- package/dist/persistence/journals/CassandraPlugin.js.map +1 -1
- package/dist/persistence/journals/CassandraPluginOptions.d.ts +51 -0
- package/dist/persistence/journals/CassandraPluginOptions.d.ts.map +1 -0
- package/dist/persistence/journals/CassandraPluginOptions.js +37 -0
- package/dist/persistence/journals/CassandraPluginOptions.js.map +1 -0
- package/dist/persistence/journals/MariaDbClient.d.ts +54 -0
- package/dist/persistence/journals/MariaDbClient.d.ts.map +1 -0
- package/dist/persistence/journals/MariaDbClient.js +40 -0
- package/dist/persistence/journals/MariaDbClient.js.map +1 -0
- package/dist/persistence/journals/MariaDbJournal.d.ts +29 -0
- package/dist/persistence/journals/MariaDbJournal.d.ts.map +1 -0
- package/dist/persistence/journals/MariaDbJournal.js +161 -0
- package/dist/persistence/journals/MariaDbJournal.js.map +1 -0
- package/dist/persistence/journals/MariaDbJournalOptions.d.ts +43 -0
- package/dist/persistence/journals/MariaDbJournalOptions.d.ts.map +1 -0
- package/dist/persistence/journals/MariaDbJournalOptions.js +43 -0
- package/dist/persistence/journals/MariaDbJournalOptions.js.map +1 -0
- package/dist/persistence/journals/MariaDbPlugin.d.ts +27 -0
- package/dist/persistence/journals/MariaDbPlugin.d.ts.map +1 -0
- package/dist/persistence/journals/MariaDbPlugin.js +30 -0
- package/dist/persistence/journals/MariaDbPlugin.js.map +1 -0
- package/dist/persistence/journals/MariaDbPluginOptions.d.ts +52 -0
- package/dist/persistence/journals/MariaDbPluginOptions.d.ts.map +1 -0
- package/dist/persistence/journals/MariaDbPluginOptions.js +38 -0
- package/dist/persistence/journals/MariaDbPluginOptions.js.map +1 -0
- package/dist/persistence/journals/PostgresClient.d.ts +56 -0
- package/dist/persistence/journals/PostgresClient.d.ts.map +1 -0
- package/dist/persistence/journals/PostgresClient.js +35 -0
- package/dist/persistence/journals/PostgresClient.js.map +1 -0
- package/dist/persistence/journals/PostgresJournal.d.ts +41 -0
- package/dist/persistence/journals/PostgresJournal.d.ts.map +1 -0
- package/dist/persistence/journals/PostgresJournal.js +176 -0
- package/dist/persistence/journals/PostgresJournal.js.map +1 -0
- package/dist/persistence/journals/PostgresJournalOptions.d.ts +44 -0
- package/dist/persistence/journals/PostgresJournalOptions.d.ts.map +1 -0
- package/dist/persistence/journals/PostgresJournalOptions.js +44 -0
- package/dist/persistence/journals/PostgresJournalOptions.js.map +1 -0
- package/dist/persistence/journals/PostgresPlugin.d.ts +32 -0
- package/dist/persistence/journals/PostgresPlugin.d.ts.map +1 -0
- package/dist/persistence/journals/PostgresPlugin.js +35 -0
- package/dist/persistence/journals/PostgresPlugin.js.map +1 -0
- package/dist/persistence/journals/PostgresPluginOptions.d.ts +54 -0
- package/dist/persistence/journals/PostgresPluginOptions.d.ts.map +1 -0
- package/dist/persistence/journals/PostgresPluginOptions.js +39 -0
- package/dist/persistence/journals/PostgresPluginOptions.js.map +1 -0
- package/dist/persistence/journals/SqliteJournal.d.ts +5 -19
- package/dist/persistence/journals/SqliteJournal.d.ts.map +1 -1
- package/dist/persistence/journals/SqliteJournal.js +10 -9
- package/dist/persistence/journals/SqliteJournal.js.map +1 -1
- package/dist/persistence/journals/SqliteJournalOptions.d.ts +41 -0
- package/dist/persistence/journals/SqliteJournalOptions.d.ts.map +1 -0
- package/dist/persistence/journals/SqliteJournalOptions.js +31 -0
- package/dist/persistence/journals/SqliteJournalOptions.js.map +1 -0
- package/dist/persistence/object-storage/BodyCodec.d.ts +43 -0
- package/dist/persistence/object-storage/BodyCodec.d.ts.map +1 -1
- package/dist/persistence/object-storage/BodyCodec.js +78 -20
- package/dist/persistence/object-storage/BodyCodec.js.map +1 -1
- package/dist/persistence/object-storage/Compression.d.ts +21 -7
- package/dist/persistence/object-storage/Compression.d.ts.map +1 -1
- package/dist/persistence/object-storage/Compression.js +79 -29
- package/dist/persistence/object-storage/Compression.js.map +1 -1
- package/dist/persistence/object-storage/FilesystemObjectStorageBackend.d.ts +2 -61
- package/dist/persistence/object-storage/FilesystemObjectStorageBackend.d.ts.map +1 -1
- package/dist/persistence/object-storage/FilesystemObjectStorageBackend.js +56 -11
- package/dist/persistence/object-storage/FilesystemObjectStorageBackend.js.map +1 -1
- package/dist/persistence/object-storage/FilesystemObjectStorageOptions.d.ts +45 -0
- package/dist/persistence/object-storage/FilesystemObjectStorageOptions.d.ts.map +1 -0
- package/dist/persistence/object-storage/FilesystemObjectStorageOptions.js +30 -0
- package/dist/persistence/object-storage/FilesystemObjectStorageOptions.js.map +1 -0
- package/dist/persistence/object-storage/Integrity.d.ts +43 -0
- package/dist/persistence/object-storage/Integrity.d.ts.map +1 -0
- package/dist/persistence/object-storage/Integrity.js +66 -0
- package/dist/persistence/object-storage/Integrity.js.map +1 -0
- package/dist/persistence/object-storage/ObjectStoragePlugin.d.ts +6 -22
- package/dist/persistence/object-storage/ObjectStoragePlugin.d.ts.map +1 -1
- package/dist/persistence/object-storage/ObjectStoragePlugin.js +36 -28
- package/dist/persistence/object-storage/ObjectStoragePlugin.js.map +1 -1
- package/dist/persistence/object-storage/ObjectStoragePluginOptions.d.ts +60 -0
- package/dist/persistence/object-storage/ObjectStoragePluginOptions.d.ts.map +1 -0
- package/dist/persistence/object-storage/ObjectStoragePluginOptions.js +52 -0
- package/dist/persistence/object-storage/ObjectStoragePluginOptions.js.map +1 -0
- package/dist/persistence/object-storage/PluginConfig.d.ts +5 -2
- package/dist/persistence/object-storage/PluginConfig.d.ts.map +1 -1
- package/dist/persistence/object-storage/PluginConfig.js +8 -0
- package/dist/persistence/object-storage/PluginConfig.js.map +1 -1
- package/dist/persistence/object-storage/S3ObjectStorageBackend.d.ts +1 -30
- package/dist/persistence/object-storage/S3ObjectStorageBackend.d.ts.map +1 -1
- package/dist/persistence/object-storage/S3ObjectStorageBackend.js +12 -7
- package/dist/persistence/object-storage/S3ObjectStorageBackend.js.map +1 -1
- package/dist/persistence/object-storage/S3ObjectStorageOptions.d.ts +64 -0
- package/dist/persistence/object-storage/S3ObjectStorageOptions.d.ts.map +1 -0
- package/dist/persistence/object-storage/S3ObjectStorageOptions.js +42 -0
- package/dist/persistence/object-storage/S3ObjectStorageOptions.js.map +1 -0
- package/dist/persistence/object-storage/reEncryptionSweep.d.ts +72 -0
- package/dist/persistence/object-storage/reEncryptionSweep.d.ts.map +1 -1
- package/dist/persistence/object-storage/reEncryptionSweep.js +82 -2
- package/dist/persistence/object-storage/reEncryptionSweep.js.map +1 -1
- package/dist/persistence/projection/ProjectionActor.d.ts +4 -24
- package/dist/persistence/projection/ProjectionActor.d.ts.map +1 -1
- package/dist/persistence/projection/ProjectionActor.js +36 -2
- package/dist/persistence/projection/ProjectionActor.js.map +1 -1
- package/dist/persistence/projection/ProjectionOptions.d.ts +109 -0
- package/dist/persistence/projection/ProjectionOptions.d.ts.map +1 -0
- package/dist/persistence/projection/ProjectionOptions.js +108 -0
- package/dist/persistence/projection/ProjectionOptions.js.map +1 -0
- package/dist/persistence/snapshot-stores/CachedSnapshotStore.d.ts +2 -10
- package/dist/persistence/snapshot-stores/CachedSnapshotStore.d.ts.map +1 -1
- package/dist/persistence/snapshot-stores/CachedSnapshotStore.js +12 -6
- package/dist/persistence/snapshot-stores/CachedSnapshotStore.js.map +1 -1
- package/dist/persistence/snapshot-stores/CachedSnapshotStoreOptions.d.ts +37 -0
- package/dist/persistence/snapshot-stores/CachedSnapshotStoreOptions.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/CachedSnapshotStoreOptions.js +31 -0
- package/dist/persistence/snapshot-stores/CachedSnapshotStoreOptions.js.map +1 -0
- package/dist/persistence/snapshot-stores/CassandraSnapshotStore.d.ts +1 -11
- package/dist/persistence/snapshot-stores/CassandraSnapshotStore.d.ts.map +1 -1
- package/dist/persistence/snapshot-stores/CassandraSnapshotStore.js +3 -3
- package/dist/persistence/snapshot-stores/CassandraSnapshotStore.js.map +1 -1
- package/dist/persistence/snapshot-stores/CassandraSnapshotStoreOptions.d.ts +61 -0
- package/dist/persistence/snapshot-stores/CassandraSnapshotStoreOptions.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/CassandraSnapshotStoreOptions.js +73 -0
- package/dist/persistence/snapshot-stores/CassandraSnapshotStoreOptions.js.map +1 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStore.d.ts +30 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStore.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStore.js +102 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStore.js.map +1 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStoreOptions.d.ts +42 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStoreOptions.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStoreOptions.js +42 -0
- package/dist/persistence/snapshot-stores/MariaDbSnapshotStoreOptions.js.map +1 -0
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStore.d.ts +2 -15
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStore.d.ts.map +1 -1
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStore.js +10 -6
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStore.js.map +1 -1
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStoreOptions.d.ts +45 -0
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStoreOptions.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStoreOptions.js +38 -0
- package/dist/persistence/snapshot-stores/ObjectStorageSnapshotStoreOptions.js.map +1 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStore.d.ts +31 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStore.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStore.js +101 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStore.js.map +1 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStoreOptions.d.ts +42 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStoreOptions.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStoreOptions.js +42 -0
- package/dist/persistence/snapshot-stores/PostgresSnapshotStoreOptions.js.map +1 -0
- package/dist/persistence/snapshot-stores/SqliteSnapshotStore.d.ts +2 -15
- package/dist/persistence/snapshot-stores/SqliteSnapshotStore.d.ts.map +1 -1
- package/dist/persistence/snapshot-stores/SqliteSnapshotStore.js +7 -6
- package/dist/persistence/snapshot-stores/SqliteSnapshotStore.js.map +1 -1
- package/dist/persistence/snapshot-stores/SqliteSnapshotStoreOptions.d.ts +40 -0
- package/dist/persistence/snapshot-stores/SqliteSnapshotStoreOptions.d.ts.map +1 -0
- package/dist/persistence/snapshot-stores/SqliteSnapshotStoreOptions.js +31 -0
- package/dist/persistence/snapshot-stores/SqliteSnapshotStoreOptions.js.map +1 -0
- package/dist/runtime/http/BunHonoRunner.d.ts +7 -1
- package/dist/runtime/http/BunHonoRunner.d.ts.map +1 -1
- package/dist/runtime/http/BunHonoRunner.js +22 -0
- package/dist/runtime/http/BunHonoRunner.js.map +1 -1
- package/dist/runtime/http/DenoHonoRunner.d.ts +5 -2
- package/dist/runtime/http/DenoHonoRunner.d.ts.map +1 -1
- package/dist/runtime/http/DenoHonoRunner.js +19 -2
- package/dist/runtime/http/DenoHonoRunner.js.map +1 -1
- package/dist/runtime/http/HonoServerRunner.d.ts +39 -0
- package/dist/runtime/http/HonoServerRunner.d.ts.map +1 -1
- package/dist/runtime/http/NodeHonoRunner.d.ts +3 -1
- package/dist/runtime/http/NodeHonoRunner.d.ts.map +1 -1
- package/dist/runtime/http/NodeHonoRunner.js +22 -0
- package/dist/runtime/http/NodeHonoRunner.js.map +1 -1
- package/dist/runtime/http/index.d.ts +1 -1
- package/dist/runtime/http/index.d.ts.map +1 -1
- package/dist/runtime/http/index.js.map +1 -1
- package/dist/testkit/ManualScheduler.d.ts +2 -1
- package/dist/testkit/ManualScheduler.d.ts.map +1 -1
- package/dist/testkit/ManualScheduler.js +2 -1
- package/dist/testkit/ManualScheduler.js.map +1 -1
- package/dist/testkit/MockCluster.d.ts +74 -0
- package/dist/testkit/MockCluster.d.ts.map +1 -0
- package/dist/testkit/MockCluster.js +163 -0
- package/dist/testkit/MockCluster.js.map +1 -0
- package/dist/testkit/MultiNodeClusterFixture.d.ts +62 -0
- package/dist/testkit/MultiNodeClusterFixture.d.ts.map +1 -0
- package/dist/testkit/MultiNodeClusterFixture.js +43 -0
- package/dist/testkit/MultiNodeClusterFixture.js.map +1 -0
- package/dist/testkit/MultiNodeSpec.d.ts +45 -3
- package/dist/testkit/MultiNodeSpec.d.ts.map +1 -1
- package/dist/testkit/MultiNodeSpec.js +108 -14
- package/dist/testkit/MultiNodeSpec.js.map +1 -1
- package/dist/testkit/ParallelMultiNodeSpec.d.ts +12 -2
- package/dist/testkit/ParallelMultiNodeSpec.d.ts.map +1 -1
- package/dist/testkit/ParallelMultiNodeSpec.js +49 -4
- package/dist/testkit/ParallelMultiNodeSpec.js.map +1 -1
- package/dist/testkit/SnapshotMigrationTest.d.ts +86 -0
- package/dist/testkit/SnapshotMigrationTest.d.ts.map +1 -0
- package/dist/testkit/SnapshotMigrationTest.js +77 -0
- package/dist/testkit/SnapshotMigrationTest.js.map +1 -0
- package/dist/testkit/TestKit.d.ts +6 -8
- package/dist/testkit/TestKit.d.ts.map +1 -1
- package/dist/testkit/TestKit.js +10 -6
- package/dist/testkit/TestKit.js.map +1 -1
- package/dist/testkit/TestKitOptions.d.ts +26 -0
- package/dist/testkit/TestKitOptions.d.ts.map +1 -0
- package/dist/testkit/TestKitOptions.js +19 -0
- package/dist/testkit/TestKitOptions.js.map +1 -0
- package/dist/testkit/TestProbe.d.ts +2 -7
- package/dist/testkit/TestProbe.d.ts.map +1 -1
- package/dist/testkit/TestProbe.js +2 -1
- package/dist/testkit/TestProbe.js.map +1 -1
- package/dist/testkit/TestProbeOptions.d.ts +26 -0
- package/dist/testkit/TestProbeOptions.d.ts.map +1 -0
- package/dist/testkit/TestProbeOptions.js +19 -0
- package/dist/testkit/TestProbeOptions.js.map +1 -0
- package/dist/testkit/index.d.ts +10 -2
- package/dist/testkit/index.d.ts.map +1 -1
- package/dist/testkit/index.js +5 -0
- package/dist/testkit/index.js.map +1 -1
- package/dist/testkit/internal/parallel-multi-node-bootstrap.d.ts.map +1 -1
- package/dist/testkit/internal/parallel-multi-node-bootstrap.js +16 -12
- package/dist/testkit/internal/parallel-multi-node-bootstrap.js.map +1 -1
- package/dist/tracing/OtelAdapter.d.ts +4 -12
- package/dist/tracing/OtelAdapter.d.ts.map +1 -1
- package/dist/tracing/OtelAdapter.js +4 -2
- package/dist/tracing/OtelAdapter.js.map +1 -1
- package/dist/tracing/OtelAdapterOptions.d.ts +42 -0
- package/dist/tracing/OtelAdapterOptions.d.ts.map +1 -0
- package/dist/tracing/OtelAdapterOptions.js +34 -0
- package/dist/tracing/OtelAdapterOptions.js.map +1 -0
- package/dist/tracing/OtelLogsAdapter.d.ts +100 -0
- package/dist/tracing/OtelLogsAdapter.d.ts.map +1 -0
- package/dist/tracing/OtelLogsAdapter.js +130 -0
- package/dist/tracing/OtelLogsAdapter.js.map +1 -0
- package/dist/tracing/index.d.ts +5 -1
- package/dist/tracing/index.d.ts.map +1 -1
- package/dist/tracing/index.js +2 -0
- package/dist/tracing/index.js.map +1 -1
- package/dist/util/Constants.d.ts +23 -0
- package/dist/util/Constants.d.ts.map +1 -1
- package/dist/util/Constants.js +23 -0
- package/dist/util/Constants.js.map +1 -1
- package/dist/util/Lazy.d.ts +31 -0
- package/dist/util/Lazy.d.ts.map +1 -1
- package/dist/util/Lazy.js +70 -0
- package/dist/util/Lazy.js.map +1 -1
- package/dist/util/OptionsBuilder.d.ts +48 -0
- package/dist/util/OptionsBuilder.d.ts.map +1 -0
- package/dist/util/OptionsBuilder.js +53 -0
- package/dist/util/OptionsBuilder.js.map +1 -0
- package/dist/worker/WorkerCluster.d.ts +2 -11
- package/dist/worker/WorkerCluster.d.ts.map +1 -1
- package/dist/worker/WorkerCluster.js +2 -1
- package/dist/worker/WorkerCluster.js.map +1 -1
- package/dist/worker/WorkerClusterOptions.d.ts +55 -0
- package/dist/worker/WorkerClusterOptions.d.ts.map +1 -0
- package/dist/worker/WorkerClusterOptions.js +55 -0
- package/dist/worker/WorkerClusterOptions.js.map +1 -0
- package/dist/worker/index.d.ts +3 -1
- package/dist/worker/index.d.ts.map +1 -1
- package/dist/worker/index.js +1 -0
- package/dist/worker/index.js.map +1 -1
- package/package.json +56 -13
- package/dist/io/broker/ServerWebSocketActor.d.ts +0 -109
- package/dist/io/broker/ServerWebSocketActor.d.ts.map +0 -1
- package/dist/io/broker/ServerWebSocketActor.js +0 -128
- package/dist/io/broker/ServerWebSocketActor.js.map +0 -1
- package/dist/io/broker/WebSocketActor.d.ts +0 -77
- package/dist/io/broker/WebSocketActor.d.ts.map +0 -1
- package/dist/io/broker/WebSocketActor.js +0 -217
- package/dist/io/broker/WebSocketActor.js.map +0 -1
- package/dist/io/broker/WebSocketServerAdapters.d.ts +0 -140
- package/dist/io/broker/WebSocketServerAdapters.d.ts.map +0 -1
- package/dist/io/broker/WebSocketServerAdapters.js +0 -155
- package/dist/io/broker/WebSocketServerAdapters.js.map +0 -1
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base class for the framework's fluent options builders — the shared
|
|
3
|
+
* mechanics behind `MqttOptions`, `KafkaOptions`, `ActorSystemOptions`,
|
|
4
|
+
* and every other `<X>Options` builder.
|
|
5
|
+
*
|
|
6
|
+
* Design (matches the hand-written `MqttOptions` that seeded this):
|
|
7
|
+
*
|
|
8
|
+
* - **Mutable, `this`-returning.** Each concrete `withX(...)` calls the
|
|
9
|
+
* protected {@link set} and returns `this`, so chaining stays typed
|
|
10
|
+
* as the concrete subclass across inheritance levels (no F-bounded
|
|
11
|
+
* `Self` generic needed — `this` already IS the subclass).
|
|
12
|
+
* - **A builder *is* its settings.** {@link set} writes each field as an
|
|
13
|
+
* own enumerable property of the builder instance, so a builder is
|
|
14
|
+
* structurally a bag of the fields you set. Consumers accept the
|
|
15
|
+
* `XOptions` union (`XOptionsBuilder | Partial<XOptionsType>`) and read /
|
|
16
|
+
* spread the argument directly — no separate "resolve" step. The `withX`
|
|
17
|
+
* / `build` methods live on the prototype, so they never surface when
|
|
18
|
+
* the settings are spread (`{ ...options }`), enumerated
|
|
19
|
+
* (`Object.keys`), or serialized (`JSON.stringify`): only the set
|
|
20
|
+
* fields do. (The consumer keeps the union in its signature because a
|
|
21
|
+
* builder — a methods-only type — is not assignable to a bare
|
|
22
|
+
* `Partial<T>`: TypeScript's weak-type check would reject it. Reading
|
|
23
|
+
* the settings out of the argument is a plain cast: `options as
|
|
24
|
+
* XOptionsType` / `{ ...(options as Partial<XOptionsType>) }`.)
|
|
25
|
+
* - **`build()` snapshots.** It returns an independent `Partial<T>` (a
|
|
26
|
+
* copy of the own fields) for the rare caller that wants to freeze a
|
|
27
|
+
* builder it intends to keep mutating; ordinary consumers don't need
|
|
28
|
+
* it because they already read/spread the argument.
|
|
29
|
+
* - **Feeds the existing resolution.** For brokers the settings are the
|
|
30
|
+
* highest-precedence layer of `mergeSettings(defaults, HOCON, ctor)`;
|
|
31
|
+
* because a builder records ONLY the fields you set, unset fields fall
|
|
32
|
+
* through to HOCON — the builder never competes with config.
|
|
33
|
+
*
|
|
34
|
+
* A builder instance is a throwaway construction helper: methods mutate in
|
|
35
|
+
* place, so a single instance is not a branch point (two chains off the
|
|
36
|
+
* same instance share state).
|
|
37
|
+
*/
|
|
38
|
+
export declare abstract class OptionsBuilder<T extends object> {
|
|
39
|
+
/**
|
|
40
|
+
* Set one field and return `this` for chaining. The value is written as
|
|
41
|
+
* an own enumerable property of the builder so the instance reads as a
|
|
42
|
+
* plain bag of settings (see the class doc); methods stay on the prototype.
|
|
43
|
+
*/
|
|
44
|
+
protected set<K extends keyof T>(key: K, value: T[K]): this;
|
|
45
|
+
/** Snapshot the set fields as an independent `Partial<T>` (own props only). */
|
|
46
|
+
build(): Partial<T>;
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=OptionsBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OptionsBuilder.d.ts","sourceRoot":"","sources":["../../src/util/OptionsBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,8BAAsB,cAAc,CAAC,CAAC,SAAS,MAAM;IACnD;;;;OAIG;IACH,SAAS,CAAC,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;IAK3D,+EAA+E;IAC/E,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC;CAGpB"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base class for the framework's fluent options builders — the shared
|
|
3
|
+
* mechanics behind `MqttOptions`, `KafkaOptions`, `ActorSystemOptions`,
|
|
4
|
+
* and every other `<X>Options` builder.
|
|
5
|
+
*
|
|
6
|
+
* Design (matches the hand-written `MqttOptions` that seeded this):
|
|
7
|
+
*
|
|
8
|
+
* - **Mutable, `this`-returning.** Each concrete `withX(...)` calls the
|
|
9
|
+
* protected {@link set} and returns `this`, so chaining stays typed
|
|
10
|
+
* as the concrete subclass across inheritance levels (no F-bounded
|
|
11
|
+
* `Self` generic needed — `this` already IS the subclass).
|
|
12
|
+
* - **A builder *is* its settings.** {@link set} writes each field as an
|
|
13
|
+
* own enumerable property of the builder instance, so a builder is
|
|
14
|
+
* structurally a bag of the fields you set. Consumers accept the
|
|
15
|
+
* `XOptions` union (`XOptionsBuilder | Partial<XOptionsType>`) and read /
|
|
16
|
+
* spread the argument directly — no separate "resolve" step. The `withX`
|
|
17
|
+
* / `build` methods live on the prototype, so they never surface when
|
|
18
|
+
* the settings are spread (`{ ...options }`), enumerated
|
|
19
|
+
* (`Object.keys`), or serialized (`JSON.stringify`): only the set
|
|
20
|
+
* fields do. (The consumer keeps the union in its signature because a
|
|
21
|
+
* builder — a methods-only type — is not assignable to a bare
|
|
22
|
+
* `Partial<T>`: TypeScript's weak-type check would reject it. Reading
|
|
23
|
+
* the settings out of the argument is a plain cast: `options as
|
|
24
|
+
* XOptionsType` / `{ ...(options as Partial<XOptionsType>) }`.)
|
|
25
|
+
* - **`build()` snapshots.** It returns an independent `Partial<T>` (a
|
|
26
|
+
* copy of the own fields) for the rare caller that wants to freeze a
|
|
27
|
+
* builder it intends to keep mutating; ordinary consumers don't need
|
|
28
|
+
* it because they already read/spread the argument.
|
|
29
|
+
* - **Feeds the existing resolution.** For brokers the settings are the
|
|
30
|
+
* highest-precedence layer of `mergeSettings(defaults, HOCON, ctor)`;
|
|
31
|
+
* because a builder records ONLY the fields you set, unset fields fall
|
|
32
|
+
* through to HOCON — the builder never competes with config.
|
|
33
|
+
*
|
|
34
|
+
* A builder instance is a throwaway construction helper: methods mutate in
|
|
35
|
+
* place, so a single instance is not a branch point (two chains off the
|
|
36
|
+
* same instance share state).
|
|
37
|
+
*/
|
|
38
|
+
export class OptionsBuilder {
|
|
39
|
+
/**
|
|
40
|
+
* Set one field and return `this` for chaining. The value is written as
|
|
41
|
+
* an own enumerable property of the builder so the instance reads as a
|
|
42
|
+
* plain bag of settings (see the class doc); methods stay on the prototype.
|
|
43
|
+
*/
|
|
44
|
+
set(key, value) {
|
|
45
|
+
this[key] = value;
|
|
46
|
+
return this;
|
|
47
|
+
}
|
|
48
|
+
/** Snapshot the set fields as an independent `Partial<T>` (own props only). */
|
|
49
|
+
build() {
|
|
50
|
+
return { ...this };
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=OptionsBuilder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OptionsBuilder.js","sourceRoot":"","sources":["../../src/util/OptionsBuilder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAM,OAAgB,cAAc;IAClC;;;;OAIG;IACO,GAAG,CAAoB,GAAM,EAAE,KAAW;QACjD,IAA6C,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QAC5D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,+EAA+E;IAC/E,KAAK;QACH,OAAO,EAAE,GAAI,IAA8B,EAAE,CAAC;IAChD,CAAC;CACF"}
|
|
@@ -1,18 +1,9 @@
|
|
|
1
1
|
import { NodeAddress } from '../cluster/NodeAddress.js';
|
|
2
2
|
import type { BrokeredMessage } from '../cluster/transports/MessageChannelTransport.js';
|
|
3
3
|
import { type WorkerLike } from '../runtime/worker/index.js';
|
|
4
|
+
import type { WorkerClusterOptions } from './WorkerClusterOptions.js';
|
|
4
5
|
import { WorkerBroker } from './WorkerBroker.js';
|
|
5
6
|
export type RestartPolicy = 'always' | 'on-failure' | 'never';
|
|
6
|
-
export interface WorkerClusterSettings {
|
|
7
|
-
readonly bootstrap: URL | string;
|
|
8
|
-
readonly workers?: number | 'auto';
|
|
9
|
-
readonly systemName?: string;
|
|
10
|
-
readonly hostname?: string;
|
|
11
|
-
readonly basePort?: number;
|
|
12
|
-
readonly initData?: unknown;
|
|
13
|
-
readonly restartPolicy?: RestartPolicy;
|
|
14
|
-
readonly readyTimeoutMs?: number;
|
|
15
|
-
}
|
|
16
7
|
export interface WorkerHandle {
|
|
17
8
|
readonly id: number;
|
|
18
9
|
readonly address: NodeAddress;
|
|
@@ -53,7 +44,7 @@ export declare class WorkerCluster {
|
|
|
53
44
|
private readonly settings;
|
|
54
45
|
private closed;
|
|
55
46
|
private constructor();
|
|
56
|
-
static spawn(
|
|
47
|
+
static spawn(options: WorkerClusterOptions): Promise<WorkerCluster>;
|
|
57
48
|
get addresses(): NodeAddress[];
|
|
58
49
|
get size(): number;
|
|
59
50
|
terminate(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkerCluster.d.ts","sourceRoot":"","sources":["../../src/worker/WorkerCluster.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,KAAK,EACV,eAAe,EAEhB,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAAoB,KAAK,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"WorkerCluster.d.ts","sourceRoot":"","sources":["../../src/worker/WorkerCluster.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,KAAK,EACV,eAAe,EAEhB,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAAoB,KAAK,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,KAAK,EAAE,oBAAoB,EAA4B,MAAM,2BAA2B,CAAC;AAChG,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,YAAY,GAAG,OAAO,CAAC;AAE9D,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;CAC7B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;CAC/B;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;CAClD;AAED,0EAA0E;AAC1E,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;CACpC;AAED;;;;;;;;;;GAUG;AACH,qBAAa,aAAa;IACxB,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC;IAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsB;IAC9C,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAEoD;IAC7E,OAAO,CAAC,MAAM,CAAS;IAEvB,OAAO;WAkBM,KAAK,CAChB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,aAAa,CAAC;IASzB,IAAI,SAAS,IAAI,WAAW,EAAE,CAA6C;IAC3E,IAAI,IAAI,IAAI,MAAM,CAAgC;IAE5C,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;YAQlB,MAAM;YASN,QAAQ;IA+BtB;wDACoD;IACpD,OAAO,CAAC,YAAY;IAoBpB,OAAO,CAAC,SAAS;IAqBjB,OAAO,CAAC,oBAAoB;CAgB7B"}
|
|
@@ -30,7 +30,8 @@ export class WorkerCluster {
|
|
|
30
30
|
restartPolicy: settings.restartPolicy ?? 'on-failure',
|
|
31
31
|
};
|
|
32
32
|
}
|
|
33
|
-
static async spawn(
|
|
33
|
+
static async spawn(options) {
|
|
34
|
+
const settings = options;
|
|
34
35
|
const workers = resolveWorkerCount(settings.workers);
|
|
35
36
|
const broker = new WorkerBroker();
|
|
36
37
|
const cluster = new WorkerCluster(broker, settings, workers);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WorkerCluster.js","sourceRoot":"","sources":["../../src/worker/WorkerCluster.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAKxD,OAAO,EAAE,gBAAgB,EAAmB,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"WorkerCluster.js","sourceRoot":"","sources":["../../src/worker/WorkerCluster.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { OptionsBuilder } from '../util/OptionsBuilder.js';
|
|
2
|
+
import type { RestartPolicy } from './WorkerCluster.js';
|
|
3
|
+
/** Plain settings-object shape accepted by {@link WorkerCluster.spawn}. */
|
|
4
|
+
export interface WorkerClusterOptionsType {
|
|
5
|
+
readonly bootstrap: URL | string;
|
|
6
|
+
readonly workers?: number | 'auto';
|
|
7
|
+
readonly systemName?: string;
|
|
8
|
+
readonly hostname?: string;
|
|
9
|
+
readonly basePort?: number;
|
|
10
|
+
readonly initData?: unknown;
|
|
11
|
+
readonly restartPolicy?: RestartPolicy;
|
|
12
|
+
readonly readyTimeoutMs?: number;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Fluent builder for {@link WorkerClusterOptionsType}:
|
|
16
|
+
*
|
|
17
|
+
* WorkerCluster.spawn(
|
|
18
|
+
* WorkerClusterOptions.create()
|
|
19
|
+
* .withBootstrap(new URL('./worker.js', import.meta.url))
|
|
20
|
+
* .withWorkers(4),
|
|
21
|
+
* )
|
|
22
|
+
*
|
|
23
|
+
* `withBootstrap` is mandatory — there is no worker entrypoint to spawn
|
|
24
|
+
* without it. Every other field falls back to its built-in default
|
|
25
|
+
* inside the constructor.
|
|
26
|
+
*/
|
|
27
|
+
export declare class WorkerClusterOptionsBuilder extends OptionsBuilder<WorkerClusterOptionsType> {
|
|
28
|
+
/** Start a fresh builder. Equivalent to `new WorkerClusterOptionsBuilder()`. */
|
|
29
|
+
static create(): WorkerClusterOptionsBuilder;
|
|
30
|
+
/** Module URL (or string) of the worker entrypoint each worker runs. */
|
|
31
|
+
withBootstrap(bootstrap: URL | string): this;
|
|
32
|
+
/** Number of workers to spawn, or `'auto'` (hardware concurrency). Default: `'auto'` heuristic. */
|
|
33
|
+
withWorkers(workers: number | 'auto'): this;
|
|
34
|
+
/** ActorSystem name each worker hosts. Default: `'worker-cluster'`. */
|
|
35
|
+
withSystemName(systemName: string): this;
|
|
36
|
+
/** Hostname component of each worker's {@link NodeAddress}. Default: `'worker'`. */
|
|
37
|
+
withHostname(hostname: string): this;
|
|
38
|
+
/** Port assigned to the first worker; subsequent workers increment. Default: 1. */
|
|
39
|
+
withBasePort(basePort: number): this;
|
|
40
|
+
/** Arbitrary payload delivered to each worker in its init message. Default: `null`. */
|
|
41
|
+
withInitData(initData: unknown): this;
|
|
42
|
+
/** Restart policy for crashed / exited workers. Default: `'on-failure'`. */
|
|
43
|
+
withRestartPolicy(restartPolicy: RestartPolicy): this;
|
|
44
|
+
/** How long to wait for a worker's ready handshake before failing. Default: 10000ms. */
|
|
45
|
+
withReadyTimeoutMs(readyTimeoutMs: number): this;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Accepted input for {@link WorkerCluster.spawn}: the fluent
|
|
49
|
+
* {@link WorkerClusterOptionsBuilder} OR a plain
|
|
50
|
+
* {@link WorkerClusterOptionsType} object.
|
|
51
|
+
*/
|
|
52
|
+
export type WorkerClusterOptions = WorkerClusterOptionsBuilder | Partial<WorkerClusterOptionsType>;
|
|
53
|
+
/** Value alias so `WorkerClusterOptions.create()` / `new WorkerClusterOptions()` resolve to the builder. */
|
|
54
|
+
export declare const WorkerClusterOptions: typeof WorkerClusterOptionsBuilder;
|
|
55
|
+
//# sourceMappingURL=WorkerClusterOptions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkerClusterOptions.d.ts","sourceRoot":"","sources":["../../src/worker/WorkerClusterOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD,2EAA2E;AAC3E,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,SAAS,EAAE,GAAG,GAAG,MAAM,CAAC;IACjC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACnC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;IACvC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,2BAA4B,SAAQ,cAAc,CAAC,wBAAwB,CAAC;IACvF,iFAAiF;IACjF,MAAM,CAAC,MAAM,IAAI,2BAA2B;IAI5C,wEAAwE;IACxE,aAAa,CAAC,SAAS,EAAE,GAAG,GAAG,MAAM,GAAG,IAAI;IAI5C,oGAAoG;IACpG,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAI3C,wEAAwE;IACxE,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAIxC,qFAAqF;IACrF,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIpC,oFAAoF;IACpF,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIpC,wFAAwF;IACxF,YAAY,CAAC,QAAQ,EAAE,OAAO,GAAG,IAAI;IAIrC,6EAA6E;IAC7E,iBAAiB,CAAC,aAAa,EAAE,aAAa,GAAG,IAAI;IAIrD,yFAAyF;IACzF,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;CAGjD;AAED;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG,2BAA2B,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;AACnG,4GAA4G;AAC5G,eAAO,MAAM,oBAAoB,oCAA8B,CAAC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { OptionsBuilder } from '../util/OptionsBuilder.js';
|
|
2
|
+
/**
|
|
3
|
+
* Fluent builder for {@link WorkerClusterOptionsType}:
|
|
4
|
+
*
|
|
5
|
+
* WorkerCluster.spawn(
|
|
6
|
+
* WorkerClusterOptions.create()
|
|
7
|
+
* .withBootstrap(new URL('./worker.js', import.meta.url))
|
|
8
|
+
* .withWorkers(4),
|
|
9
|
+
* )
|
|
10
|
+
*
|
|
11
|
+
* `withBootstrap` is mandatory — there is no worker entrypoint to spawn
|
|
12
|
+
* without it. Every other field falls back to its built-in default
|
|
13
|
+
* inside the constructor.
|
|
14
|
+
*/
|
|
15
|
+
export class WorkerClusterOptionsBuilder extends OptionsBuilder {
|
|
16
|
+
/** Start a fresh builder. Equivalent to `new WorkerClusterOptionsBuilder()`. */
|
|
17
|
+
static create() {
|
|
18
|
+
return new WorkerClusterOptionsBuilder();
|
|
19
|
+
}
|
|
20
|
+
/** Module URL (or string) of the worker entrypoint each worker runs. */
|
|
21
|
+
withBootstrap(bootstrap) {
|
|
22
|
+
return this.set('bootstrap', bootstrap);
|
|
23
|
+
}
|
|
24
|
+
/** Number of workers to spawn, or `'auto'` (hardware concurrency). Default: `'auto'` heuristic. */
|
|
25
|
+
withWorkers(workers) {
|
|
26
|
+
return this.set('workers', workers);
|
|
27
|
+
}
|
|
28
|
+
/** ActorSystem name each worker hosts. Default: `'worker-cluster'`. */
|
|
29
|
+
withSystemName(systemName) {
|
|
30
|
+
return this.set('systemName', systemName);
|
|
31
|
+
}
|
|
32
|
+
/** Hostname component of each worker's {@link NodeAddress}. Default: `'worker'`. */
|
|
33
|
+
withHostname(hostname) {
|
|
34
|
+
return this.set('hostname', hostname);
|
|
35
|
+
}
|
|
36
|
+
/** Port assigned to the first worker; subsequent workers increment. Default: 1. */
|
|
37
|
+
withBasePort(basePort) {
|
|
38
|
+
return this.set('basePort', basePort);
|
|
39
|
+
}
|
|
40
|
+
/** Arbitrary payload delivered to each worker in its init message. Default: `null`. */
|
|
41
|
+
withInitData(initData) {
|
|
42
|
+
return this.set('initData', initData);
|
|
43
|
+
}
|
|
44
|
+
/** Restart policy for crashed / exited workers. Default: `'on-failure'`. */
|
|
45
|
+
withRestartPolicy(restartPolicy) {
|
|
46
|
+
return this.set('restartPolicy', restartPolicy);
|
|
47
|
+
}
|
|
48
|
+
/** How long to wait for a worker's ready handshake before failing. Default: 10000ms. */
|
|
49
|
+
withReadyTimeoutMs(readyTimeoutMs) {
|
|
50
|
+
return this.set('readyTimeoutMs', readyTimeoutMs);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
/** Value alias so `WorkerClusterOptions.create()` / `new WorkerClusterOptions()` resolve to the builder. */
|
|
54
|
+
export const WorkerClusterOptions = WorkerClusterOptionsBuilder;
|
|
55
|
+
//# sourceMappingURL=WorkerClusterOptions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkerClusterOptions.js","sourceRoot":"","sources":["../../src/worker/WorkerClusterOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAe3D;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,2BAA4B,SAAQ,cAAwC;IACvF,iFAAiF;IACjF,MAAM,CAAC,MAAM;QACX,OAAO,IAAI,2BAA2B,EAAE,CAAC;IAC3C,CAAC;IAED,wEAAwE;IACxE,aAAa,CAAC,SAAuB;QACnC,OAAO,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAC1C,CAAC;IAED,oGAAoG;IACpG,WAAW,CAAC,OAAwB;QAClC,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,wEAAwE;IACxE,cAAc,CAAC,UAAkB;QAC/B,OAAO,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAC5C,CAAC;IAED,qFAAqF;IACrF,YAAY,CAAC,QAAgB;QAC3B,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACxC,CAAC;IAED,oFAAoF;IACpF,YAAY,CAAC,QAAgB;QAC3B,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACxC,CAAC;IAED,wFAAwF;IACxF,YAAY,CAAC,QAAiB;QAC5B,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IACxC,CAAC;IAED,6EAA6E;IAC7E,iBAAiB,CAAC,aAA4B;QAC5C,OAAO,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;IAClD,CAAC;IAED,yFAAyF;IACzF,kBAAkB,CAAC,cAAsB;QACvC,OAAO,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;IACpD,CAAC;CACF;AAQD,4GAA4G;AAC5G,MAAM,CAAC,MAAM,oBAAoB,GAAG,2BAA2B,CAAC"}
|
package/dist/worker/index.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
export { WorkerCluster } from './WorkerCluster.js';
|
|
2
|
-
export
|
|
2
|
+
export { WorkerClusterOptions, WorkerClusterOptionsBuilder } from './WorkerClusterOptions.js';
|
|
3
|
+
export type { WorkerClusterOptionsType } from './WorkerClusterOptions.js';
|
|
4
|
+
export type { WorkerHandle, WorkerHelloMessage, WorkerInitMessage, WorkerReadyMessage, RestartPolicy, } from './WorkerCluster.js';
|
|
3
5
|
export { WorkerNode } from './WorkerNode.js';
|
|
4
6
|
export type { WorkerNodeContext } from './WorkerNode.js';
|
|
5
7
|
export { WorkerBroker } from './WorkerBroker.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/worker/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/worker/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AAC9F,YAAY,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAC1E,YAAY,EACV,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,GACd,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,YAAY,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC"}
|
package/dist/worker/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { WorkerCluster } from './WorkerCluster.js';
|
|
2
|
+
export { WorkerClusterOptions, WorkerClusterOptionsBuilder } from './WorkerClusterOptions.js';
|
|
2
3
|
export { WorkerNode } from './WorkerNode.js';
|
|
3
4
|
export { WorkerBroker } from './WorkerBroker.js';
|
|
4
5
|
//# sourceMappingURL=index.js.map
|
package/dist/worker/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/worker/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/worker/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AAS9F,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "actor-ts",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.10.0",
|
|
4
4
|
"description": "An actor-model framework for TypeScript — runs on Bun, Node.js and Deno",
|
|
5
5
|
"author": "pathosDev",
|
|
6
6
|
"repository": {
|
|
@@ -37,9 +37,34 @@
|
|
|
37
37
|
"typecheck:dev": "bunx tsc -p tsconfig.dev.json --noEmit",
|
|
38
38
|
"test": "bun test",
|
|
39
39
|
"test:coverage": "bun test --coverage",
|
|
40
|
-
"
|
|
41
|
-
"
|
|
42
|
-
"
|
|
40
|
+
"test:coverage:gate": "bun scripts/coverage-gate.mjs",
|
|
41
|
+
"test:integration": "docker compose -f tests/integration/docker-compose.integration.yml up --build --abort-on-container-exit --exit-code-from controller",
|
|
42
|
+
"test:integration:teardown": "docker compose -f tests/integration/docker-compose.integration.yml down -v --remove-orphans",
|
|
43
|
+
"test:integration:s3": "docker compose -f tests/integration/brokers/s3/docker-compose.s3.yml up --build --abort-on-container-exit --exit-code-from runner",
|
|
44
|
+
"test:integration:s3:teardown": "docker compose -f tests/integration/brokers/s3/docker-compose.s3.yml down -v --remove-orphans",
|
|
45
|
+
"test:integration:mqtt": "docker compose -f tests/integration/brokers/mqtt/docker-compose.mqtt.yml up --build --abort-on-container-exit --exit-code-from runner",
|
|
46
|
+
"test:integration:mqtt:teardown": "docker compose -f tests/integration/brokers/mqtt/docker-compose.mqtt.yml down -v --remove-orphans",
|
|
47
|
+
"test:integration:kafka": "docker compose -f tests/integration/brokers/kafka/docker-compose.kafka.yml up --build --abort-on-container-exit --exit-code-from runner",
|
|
48
|
+
"test:integration:kafka:teardown": "docker compose -f tests/integration/brokers/kafka/docker-compose.kafka.yml down -v --remove-orphans",
|
|
49
|
+
"test:integration:amqp": "docker compose -f tests/integration/brokers/amqp/docker-compose.amqp.yml up --build --abort-on-container-exit --exit-code-from runner",
|
|
50
|
+
"test:integration:amqp:teardown": "docker compose -f tests/integration/brokers/amqp/docker-compose.amqp.yml down -v --remove-orphans",
|
|
51
|
+
"test:integration:nats": "docker compose -f tests/integration/brokers/nats/docker-compose.nats.yml up --build --abort-on-container-exit --exit-code-from runner",
|
|
52
|
+
"test:integration:nats:teardown": "docker compose -f tests/integration/brokers/nats/docker-compose.nats.yml down -v --remove-orphans",
|
|
53
|
+
"test:integration:redis": "docker compose -f tests/integration/brokers/redis-streams/docker-compose.redis-streams.yml up --build --abort-on-container-exit --exit-code-from runner",
|
|
54
|
+
"test:integration:redis:teardown": "docker compose -f tests/integration/brokers/redis-streams/docker-compose.redis-streams.yml down -v --remove-orphans",
|
|
55
|
+
"test:integration:grpc": "docker compose -f tests/integration/brokers/grpc/docker-compose.grpc.yml up --build --abort-on-container-exit --exit-code-from runner",
|
|
56
|
+
"test:integration:grpc:teardown": "docker compose -f tests/integration/brokers/grpc/docker-compose.grpc.yml down -v --remove-orphans",
|
|
57
|
+
"test:integration:k8s": "docker compose -f tests/integration/brokers/k8s/docker-compose.k8s.yml up --build --abort-on-container-exit --exit-code-from runner",
|
|
58
|
+
"test:integration:k8s:teardown": "docker compose -f tests/integration/brokers/k8s/docker-compose.k8s.yml down -v --remove-orphans",
|
|
59
|
+
"test:integration:postgres": "docker compose -f tests/integration/brokers/postgres/docker-compose.postgres.yml up --build --abort-on-container-exit --exit-code-from runner",
|
|
60
|
+
"test:integration:postgres:teardown": "docker compose -f tests/integration/brokers/postgres/docker-compose.postgres.yml down -v --remove-orphans",
|
|
61
|
+
"test:integration:mariadb": "docker compose -f tests/integration/brokers/mariadb/docker-compose.mariadb.yml up --build --abort-on-container-exit --exit-code-from runner",
|
|
62
|
+
"test:integration:mariadb:teardown": "docker compose -f tests/integration/brokers/mariadb/docker-compose.mariadb.yml down -v --remove-orphans",
|
|
63
|
+
"test:integration:brokers": "bun run test:integration:s3 && bun run test:integration:mqtt && bun run test:integration:kafka && bun run test:integration:amqp && bun run test:integration:nats && bun run test:integration:redis && bun run test:integration:grpc && bun run test:integration:k8s && bun run test:integration:postgres && bun run test:integration:mariadb",
|
|
64
|
+
"test:integration:brokers:teardown": "bun run test:integration:s3:teardown; bun run test:integration:mqtt:teardown; bun run test:integration:kafka:teardown; bun run test:integration:amqp:teardown; bun run test:integration:nats:teardown; bun run test:integration:redis:teardown; bun run test:integration:grpc:teardown; bun run test:integration:k8s:teardown; bun run test:integration:postgres:teardown; bun run test:integration:mariadb:teardown",
|
|
65
|
+
"smoke:bun": "bun tests/smoke/run-cases.mjs",
|
|
66
|
+
"smoke:node": "bun run build && ACTOR_TS_SMOKE_USE_DIST=1 node tests/smoke/run-cases.mjs",
|
|
67
|
+
"smoke:deno": "bun run build && ACTOR_TS_SMOKE_USE_DIST=1 deno run --allow-read --allow-env tests/smoke/run-cases.mjs",
|
|
43
68
|
"smoke": "bun run smoke:bun && bun run smoke:node && bun run smoke:deno",
|
|
44
69
|
"bench": "bun run benchmarks/run-all.ts",
|
|
45
70
|
"prepublishOnly": "bun run clean && bun run build && bun run typecheck && bun test"
|
|
@@ -59,31 +84,37 @@
|
|
|
59
84
|
"@fastify/static": "^9.1.3",
|
|
60
85
|
"@fastify/websocket": "^11.2.0",
|
|
61
86
|
"@hono/node-server": "^2.0.2",
|
|
87
|
+
"@hono/node-ws": "^1.0.0",
|
|
62
88
|
"@types/better-sqlite3": "^7.6.13",
|
|
63
89
|
"@types/bun": "^1.3.14",
|
|
64
90
|
"@types/express": "^5.0.6",
|
|
65
|
-
"@types/node": "^
|
|
91
|
+
"@types/node": "^26.1.0",
|
|
66
92
|
"better-sqlite3": "^12.10.0",
|
|
67
93
|
"express": "^5.2.1",
|
|
94
|
+
"fast-check": "^4.8.0",
|
|
68
95
|
"hono": "^4.12.18",
|
|
69
96
|
"typescript": "^6.0.3"
|
|
70
97
|
},
|
|
71
98
|
"peerDependencies": {
|
|
72
|
-
"@aws-sdk/client-s3": "^3.
|
|
73
|
-
"@
|
|
74
|
-
"@grpc/
|
|
99
|
+
"@aws-sdk/client-s3": "^3.1048.0",
|
|
100
|
+
"@fastify/websocket": "^11.0.0",
|
|
101
|
+
"@grpc/grpc-js": "^1.14.3",
|
|
102
|
+
"@grpc/proto-loader": "^0.8.1",
|
|
75
103
|
"@hono/node-server": "^2.0.0",
|
|
76
|
-
"
|
|
104
|
+
"@hono/node-ws": "^1.0.0",
|
|
105
|
+
"amqplib": "^2.0.1",
|
|
77
106
|
"better-sqlite3": "^12.9.0",
|
|
78
107
|
"cassandra-driver": "^4.0.0",
|
|
79
108
|
"express": "^4.0.0 || ^5.0.0",
|
|
80
109
|
"fzstd": "^0.1.0",
|
|
81
110
|
"hono": "^4.0.0",
|
|
82
|
-
"ioredis": "^5.
|
|
83
|
-
"kafkajs": "^2.2.
|
|
111
|
+
"ioredis": "^5.10.1",
|
|
112
|
+
"kafkajs": "^2.2.4",
|
|
113
|
+
"mariadb": "^3.5.2",
|
|
84
114
|
"memjs": "^1.3.0",
|
|
85
|
-
"mqtt": "^5.
|
|
86
|
-
"nats": "^2.
|
|
115
|
+
"mqtt": "^5.15.1",
|
|
116
|
+
"nats": "^2.29.3",
|
|
117
|
+
"pg": "^8.21.0",
|
|
87
118
|
"typescript": "^5.0.0 || ^6.0.0",
|
|
88
119
|
"ws": "^8.0.0"
|
|
89
120
|
},
|
|
@@ -91,9 +122,15 @@
|
|
|
91
122
|
"@aws-sdk/client-s3": {
|
|
92
123
|
"optional": true
|
|
93
124
|
},
|
|
125
|
+
"@fastify/websocket": {
|
|
126
|
+
"optional": true
|
|
127
|
+
},
|
|
94
128
|
"@grpc/grpc-js": {
|
|
95
129
|
"optional": true
|
|
96
130
|
},
|
|
131
|
+
"@hono/node-ws": {
|
|
132
|
+
"optional": true
|
|
133
|
+
},
|
|
97
134
|
"@grpc/proto-loader": {
|
|
98
135
|
"optional": true
|
|
99
136
|
},
|
|
@@ -124,6 +161,9 @@
|
|
|
124
161
|
"kafkajs": {
|
|
125
162
|
"optional": true
|
|
126
163
|
},
|
|
164
|
+
"mariadb": {
|
|
165
|
+
"optional": true
|
|
166
|
+
},
|
|
127
167
|
"memjs": {
|
|
128
168
|
"optional": true
|
|
129
169
|
},
|
|
@@ -133,6 +173,9 @@
|
|
|
133
173
|
"nats": {
|
|
134
174
|
"optional": true
|
|
135
175
|
},
|
|
176
|
+
"pg": {
|
|
177
|
+
"optional": true
|
|
178
|
+
},
|
|
136
179
|
"ws": {
|
|
137
180
|
"optional": true
|
|
138
181
|
}
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
import { Actor } from '../../Actor.js';
|
|
2
|
-
import type { ActorRef } from '../../ActorRef.js';
|
|
3
|
-
import type { WebSocketCmd, WebSocketFrame } from './WebSocketActor.js';
|
|
4
|
-
/**
|
|
5
|
-
* Server-side counterpart to {@link WebSocketActor} (#1). Wraps an
|
|
6
|
-
* already-upgraded WebSocket — typically handed in by a Fastify /
|
|
7
|
-
* Hono / Bun.serve upgrade handler — and bridges its lifecycle into
|
|
8
|
-
* the actor system.
|
|
9
|
-
*
|
|
10
|
-
* **Why a separate actor instead of teaching `WebSocketActor` to be
|
|
11
|
-
* dual-mode?** The two halves have fundamentally different
|
|
12
|
-
* lifecycle assumptions:
|
|
13
|
-
*
|
|
14
|
-
* - `WebSocketActor` (client) dials a URL, owns reconnect-backoff,
|
|
15
|
-
* buffers outbound while disconnected, retries. The remote peer
|
|
16
|
-
* is the server; we drive the connection.
|
|
17
|
-
* - `ServerWebSocketActor` is handed a connected socket whose
|
|
18
|
-
* lifecycle is owned by the *client*. When the client goes
|
|
19
|
-
* away, the actor's job is over — there's nothing to "reconnect"
|
|
20
|
-
* to. Reconnect-backoff and outbound buffering across reconnects
|
|
21
|
-
* would be incorrect.
|
|
22
|
-
*
|
|
23
|
-
* The shared piece is the message envelope (`WebSocketFrame`) and the
|
|
24
|
-
* outbound command shape (`WebSocketCmd`); we re-export those rather
|
|
25
|
-
* than duplicate the types.
|
|
26
|
-
*
|
|
27
|
-
* **Lifecycle.**
|
|
28
|
-
*
|
|
29
|
-
* - On `preStart`, registers `message` / `close` / `error`
|
|
30
|
-
* listeners. Inbound frames are forwarded to `target` as
|
|
31
|
-
* `WebSocketFrame`s (text / binary).
|
|
32
|
-
* - On socket `close`, the actor stops itself by default
|
|
33
|
-
* (`stopOnSocketClose: true`); flip the flag to keep the actor
|
|
34
|
-
* alive — useful when you want to handle the close yourself
|
|
35
|
-
* (e.g. log + emit a domain event).
|
|
36
|
-
* - On `postStop`, the socket is closed. Idempotent — closing an
|
|
37
|
-
* already-closed socket is a no-op.
|
|
38
|
-
*
|
|
39
|
-
* **Outbound** flows through the same `WebSocketCmd` shape as the
|
|
40
|
-
* client actor, so handlers written against one work against the
|
|
41
|
-
* other. No buffering — sends fail loud if the socket is closed.
|
|
42
|
-
*
|
|
43
|
-
* import { ServerWebSocketActor, bunWebSocketHandler } from 'actor-ts';
|
|
44
|
-
*
|
|
45
|
-
* Bun.serve({
|
|
46
|
-
* port: 3000,
|
|
47
|
-
* fetch: bunWebSocketHandler(system, '/ws', {
|
|
48
|
-
* onOpen: (ws, ref, _ctx) => {
|
|
49
|
-
* // ref is the actor reference. Subscribe it to a chat room, etc.
|
|
50
|
-
* chatRoom.tell({ kind: 'join', client: ref });
|
|
51
|
-
* },
|
|
52
|
-
* }),
|
|
53
|
-
* websocket: { /* placeholder, filled by bunWebSocketHandler */ /** Re-export so callers don't have to import from two places. */
|
|
54
|
-
export type { WebSocketCmd, WebSocketFrame } from './WebSocketActor.js';
|
|
55
|
-
export interface ServerWebSocketActorOptions {
|
|
56
|
-
/** Subscriber that receives every inbound text/binary frame. */
|
|
57
|
-
readonly target?: ActorRef<WebSocketFrame>;
|
|
58
|
-
/**
|
|
59
|
-
* Stop the actor when the socket closes. Default `true` — the
|
|
60
|
-
* usual case where the actor exists solely to bridge one
|
|
61
|
-
* connection. Flip to `false` to handle close yourself
|
|
62
|
-
* (e.g. when an outer supervisor wants to react before teardown).
|
|
63
|
-
*/
|
|
64
|
-
readonly stopOnSocketClose?: boolean;
|
|
65
|
-
/**
|
|
66
|
-
* Optional callback fired when the socket emits an error. Useful
|
|
67
|
-
* for backend-specific telemetry; the actor still proceeds to
|
|
68
|
-
* stop unless you turn `stopOnSocketClose` off.
|
|
69
|
-
*/
|
|
70
|
-
readonly onError?: (err: Error) => void;
|
|
71
|
-
}
|
|
72
|
-
/**
|
|
73
|
-
* Minimal socket surface the actor depends on. Bun's native
|
|
74
|
-
* `ServerWebSocket`, the `ws` package's `WebSocket`, and the W3C
|
|
75
|
-
* `WebSocket` all satisfy it. Adapter helpers normalise the small
|
|
76
|
-
* shape differences.
|
|
77
|
-
*/
|
|
78
|
-
export interface ServerWebSocketLike {
|
|
79
|
-
send(data: string | Uint8Array | ArrayBuffer): void;
|
|
80
|
-
close(code?: number, reason?: string): void;
|
|
81
|
-
addEventListener(event: 'message', cb: (ev: {
|
|
82
|
-
data: unknown;
|
|
83
|
-
}) => void): void;
|
|
84
|
-
addEventListener(event: 'close', cb: () => void): void;
|
|
85
|
-
addEventListener(event: 'error', cb: (ev: unknown) => void): void;
|
|
86
|
-
removeEventListener?(event: string, cb: (...args: never[]) => void): void;
|
|
87
|
-
/**
|
|
88
|
-
* Optional readyState — when present we skip `send` on a closing
|
|
89
|
-
* socket so we don't queue a 'send after close' error in tests.
|
|
90
|
-
*/
|
|
91
|
-
readonly readyState?: number;
|
|
92
|
-
}
|
|
93
|
-
export declare class ServerWebSocketActor extends Actor<WebSocketCmd> {
|
|
94
|
-
private readonly socket;
|
|
95
|
-
private readonly opts;
|
|
96
|
-
private closed;
|
|
97
|
-
private readonly onMessage;
|
|
98
|
-
private readonly onClose;
|
|
99
|
-
private readonly onErrorEvent;
|
|
100
|
-
constructor(socket: ServerWebSocketLike, opts?: ServerWebSocketActorOptions);
|
|
101
|
-
preStart(): void;
|
|
102
|
-
postStop(): void;
|
|
103
|
-
onReceive(cmd: WebSocketCmd): void;
|
|
104
|
-
private send;
|
|
105
|
-
private handleMessage;
|
|
106
|
-
private handleClose;
|
|
107
|
-
private handleError;
|
|
108
|
-
}
|
|
109
|
-
//# sourceMappingURL=ServerWebSocketActor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ServerWebSocketActor.d.ts","sourceRoot":"","sources":["../../../src/io/broker/ServerWebSocketActor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAExE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oEAiDoE,CAIpE,iEAAiE;AACjE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAExE,MAAM,WAAW,2BAA2B;IAC1C,gEAAgE;IAChE,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;IAC3C;;;;;OAKG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IACrC;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,IAAI,CAAC;CACzC;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,IAAI,CAAC;IACpD,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5C,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE;QAAE,IAAI,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,GAAG,IAAI,CAAC;IAC9E,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC;IACvD,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI,CAAC;IAClE,mBAAmB,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,IAAI,GAAG,IAAI,CAAC;IAC1E;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,qBAAa,oBAAqB,SAAQ,KAAK,CAAC,YAAY,CAAC;IAC3D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;IAC7C,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA8B;IACnD,OAAO,CAAC,MAAM,CAAS;IAIvB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgE;IAC1F,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;IAC1D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA+C;gBAEhE,MAAM,EAAE,mBAAmB,EAAE,IAAI,GAAE,2BAAgC;IAMtE,QAAQ,IAAI,IAAI;IAOhB,QAAQ,IAAI,IAAI;IAchB,SAAS,CAAC,GAAG,EAAE,YAAY,GAAG,IAAI;IAyB3C,OAAO,CAAC,IAAI;IAKZ,OAAO,CAAC,aAAa;IAuCrB,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,WAAW;CAOpB"}
|