@gravito/stream 1.0.0-alpha.2
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 +319 -0
- package/dist/Consumer.d.ts +67 -0
- package/dist/Consumer.d.ts.map +1 -0
- package/dist/Job.d.ts +76 -0
- package/dist/Job.d.ts.map +1 -0
- package/dist/OrbitQueue.d.ts +74 -0
- package/dist/OrbitQueue.d.ts.map +1 -0
- package/dist/QueueManager.d.ts +86 -0
- package/dist/QueueManager.d.ts.map +1 -0
- package/dist/Queueable.d.ts +63 -0
- package/dist/Queueable.d.ts.map +1 -0
- package/dist/Worker.d.ts +48 -0
- package/dist/Worker.d.ts.map +1 -0
- package/dist/core/src/ConfigManager.d.ts +26 -0
- package/dist/core/src/ConfigManager.d.ts.map +1 -0
- package/dist/core/src/Container.d.ts +39 -0
- package/dist/core/src/Container.d.ts.map +1 -0
- package/dist/core/src/Event.d.ts +6 -0
- package/dist/core/src/Event.d.ts.map +1 -0
- package/dist/core/src/EventManager.d.ts +124 -0
- package/dist/core/src/EventManager.d.ts.map +1 -0
- package/dist/core/src/GlobalErrorHandlers.d.ts +32 -0
- package/dist/core/src/GlobalErrorHandlers.d.ts.map +1 -0
- package/dist/core/src/HookManager.d.ts +29 -0
- package/dist/core/src/HookManager.d.ts.map +1 -0
- package/dist/core/src/Listener.d.ts +5 -0
- package/dist/core/src/Listener.d.ts.map +1 -0
- package/dist/core/src/Logger.d.ts +21 -0
- package/dist/core/src/Logger.d.ts.map +1 -0
- package/dist/core/src/PlanetCore.d.ts +116 -0
- package/dist/core/src/PlanetCore.d.ts.map +1 -0
- package/dist/core/src/Route.d.ts +13 -0
- package/dist/core/src/Route.d.ts.map +1 -0
- package/dist/core/src/Router.d.ts +168 -0
- package/dist/core/src/Router.d.ts.map +1 -0
- package/dist/core/src/ServiceProvider.d.ts +17 -0
- package/dist/core/src/ServiceProvider.d.ts.map +1 -0
- package/dist/core/src/exceptions/AuthenticationException.d.ts +5 -0
- package/dist/core/src/exceptions/AuthenticationException.d.ts.map +1 -0
- package/dist/core/src/exceptions/AuthorizationException.d.ts +5 -0
- package/dist/core/src/exceptions/AuthorizationException.d.ts.map +1 -0
- package/dist/core/src/exceptions/GravitoException.d.ts +15 -0
- package/dist/core/src/exceptions/GravitoException.d.ts.map +1 -0
- package/dist/core/src/exceptions/ModelNotFoundException.d.ts +7 -0
- package/dist/core/src/exceptions/ModelNotFoundException.d.ts.map +1 -0
- package/dist/core/src/exceptions/ValidationException.d.ts +15 -0
- package/dist/core/src/exceptions/ValidationException.d.ts.map +1 -0
- package/dist/core/src/exceptions/index.d.ts +6 -0
- package/dist/core/src/exceptions/index.d.ts.map +1 -0
- package/dist/core/src/helpers/Arr.d.ts +15 -0
- package/dist/core/src/helpers/Arr.d.ts.map +1 -0
- package/dist/core/src/helpers/Str.d.ts +19 -0
- package/dist/core/src/helpers/Str.d.ts.map +1 -0
- package/dist/core/src/helpers/data.d.ts +6 -0
- package/dist/core/src/helpers/data.d.ts.map +1 -0
- package/dist/core/src/helpers/errors.d.ts +13 -0
- package/dist/core/src/helpers/errors.d.ts.map +1 -0
- package/dist/core/src/helpers/response.d.ts +19 -0
- package/dist/core/src/helpers/response.d.ts.map +1 -0
- package/dist/core/src/helpers.d.ts +39 -0
- package/dist/core/src/helpers.d.ts.map +1 -0
- package/dist/core/src/http/CookieJar.d.ts +34 -0
- package/dist/core/src/http/CookieJar.d.ts.map +1 -0
- package/dist/core/src/http/middleware/ThrottleRequests.d.ts +13 -0
- package/dist/core/src/http/middleware/ThrottleRequests.d.ts.map +1 -0
- package/dist/core/src/index.d.ts +32 -0
- package/dist/core/src/index.d.ts.map +1 -0
- package/dist/core/src/security/Encrypter.d.ts +25 -0
- package/dist/core/src/security/Encrypter.d.ts.map +1 -0
- package/dist/core/src/security/Hasher.d.ts +30 -0
- package/dist/core/src/security/Hasher.d.ts.map +1 -0
- package/dist/core/src/types/events.d.ts +95 -0
- package/dist/core/src/types/events.d.ts.map +1 -0
- package/dist/drivers/DatabaseDriver.d.ts +60 -0
- package/dist/drivers/DatabaseDriver.d.ts.map +1 -0
- package/dist/drivers/KafkaDriver.d.ts +134 -0
- package/dist/drivers/KafkaDriver.d.ts.map +1 -0
- package/dist/drivers/MemoryDriver.d.ts +45 -0
- package/dist/drivers/MemoryDriver.d.ts.map +1 -0
- package/dist/drivers/QueueDriver.d.ts +89 -0
- package/dist/drivers/QueueDriver.d.ts.map +1 -0
- package/dist/drivers/RedisDriver.d.ts +79 -0
- package/dist/drivers/RedisDriver.d.ts.map +1 -0
- package/dist/drivers/SQSDriver.d.ts +100 -0
- package/dist/drivers/SQSDriver.d.ts.map +1 -0
- package/dist/index.cjs +32101 -0
- package/dist/index.cjs.map +422 -0
- package/dist/index.d.ts +45 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.mjs +32095 -0
- package/dist/index.mjs.map +422 -0
- package/dist/orbit-db/src/DBService.d.ts +270 -0
- package/dist/orbit-db/src/DBService.d.ts.map +1 -0
- package/dist/orbit-db/src/EventBus.d.ts +53 -0
- package/dist/orbit-db/src/EventBus.d.ts.map +1 -0
- package/dist/orbit-db/src/MigrationDriver.d.ts +55 -0
- package/dist/orbit-db/src/MigrationDriver.d.ts.map +1 -0
- package/dist/orbit-db/src/Model.d.ts +564 -0
- package/dist/orbit-db/src/Model.d.ts.map +1 -0
- package/dist/orbit-db/src/ModelCollection.d.ts +35 -0
- package/dist/orbit-db/src/ModelCollection.d.ts.map +1 -0
- package/dist/orbit-db/src/index.d.ts +34 -0
- package/dist/orbit-db/src/index.d.ts.map +1 -0
- package/dist/orbit-db/src/types.d.ts +146 -0
- package/dist/orbit-db/src/types.d.ts.map +1 -0
- package/dist/orbit-queue/src/Consumer.d.ts +67 -0
- package/dist/orbit-queue/src/Consumer.d.ts.map +1 -0
- package/dist/orbit-queue/src/Job.d.ts +76 -0
- package/dist/orbit-queue/src/Job.d.ts.map +1 -0
- package/dist/orbit-queue/src/OrbitQueue.d.ts +74 -0
- package/dist/orbit-queue/src/OrbitQueue.d.ts.map +1 -0
- package/dist/orbit-queue/src/QueueManager.d.ts +86 -0
- package/dist/orbit-queue/src/QueueManager.d.ts.map +1 -0
- package/dist/orbit-queue/src/Queueable.d.ts +63 -0
- package/dist/orbit-queue/src/Queueable.d.ts.map +1 -0
- package/dist/orbit-queue/src/Worker.d.ts +48 -0
- package/dist/orbit-queue/src/Worker.d.ts.map +1 -0
- package/dist/orbit-queue/src/drivers/DatabaseDriver.d.ts +60 -0
- package/dist/orbit-queue/src/drivers/DatabaseDriver.d.ts.map +1 -0
- package/dist/orbit-queue/src/drivers/KafkaDriver.d.ts +134 -0
- package/dist/orbit-queue/src/drivers/KafkaDriver.d.ts.map +1 -0
- package/dist/orbit-queue/src/drivers/MemoryDriver.d.ts +45 -0
- package/dist/orbit-queue/src/drivers/MemoryDriver.d.ts.map +1 -0
- package/dist/orbit-queue/src/drivers/QueueDriver.d.ts +89 -0
- package/dist/orbit-queue/src/drivers/QueueDriver.d.ts.map +1 -0
- package/dist/orbit-queue/src/drivers/RedisDriver.d.ts +79 -0
- package/dist/orbit-queue/src/drivers/RedisDriver.d.ts.map +1 -0
- package/dist/orbit-queue/src/drivers/SQSDriver.d.ts +100 -0
- package/dist/orbit-queue/src/drivers/SQSDriver.d.ts.map +1 -0
- package/dist/orbit-queue/src/index.d.ts +45 -0
- package/dist/orbit-queue/src/index.d.ts.map +1 -0
- package/dist/orbit-queue/src/serializers/ClassNameSerializer.d.ts +46 -0
- package/dist/orbit-queue/src/serializers/ClassNameSerializer.d.ts.map +1 -0
- package/dist/orbit-queue/src/serializers/JobSerializer.d.ts +36 -0
- package/dist/orbit-queue/src/serializers/JobSerializer.d.ts.map +1 -0
- package/dist/orbit-queue/src/serializers/JsonSerializer.d.ts +32 -0
- package/dist/orbit-queue/src/serializers/JsonSerializer.d.ts.map +1 -0
- package/dist/orbit-queue/src/types.d.ts +85 -0
- package/dist/orbit-queue/src/types.d.ts.map +1 -0
- package/dist/serializers/ClassNameSerializer.d.ts +46 -0
- package/dist/serializers/ClassNameSerializer.d.ts.map +1 -0
- package/dist/serializers/JobSerializer.d.ts +36 -0
- package/dist/serializers/JobSerializer.d.ts.map +1 -0
- package/dist/serializers/JsonSerializer.d.ts +32 -0
- package/dist/serializers/JsonSerializer.d.ts.map +1 -0
- package/dist/types.d.ts +85 -0
- package/dist/types.d.ts.map +1 -0
- package/package.json +57 -0
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Serialized job payload.
|
|
3
|
+
*/
|
|
4
|
+
export interface SerializedJob {
|
|
5
|
+
/**
|
|
6
|
+
* Unique job identifier.
|
|
7
|
+
*/
|
|
8
|
+
id: string;
|
|
9
|
+
/**
|
|
10
|
+
* Serializer type: `'json'` or `'class'`.
|
|
11
|
+
*/
|
|
12
|
+
type: 'json' | 'class';
|
|
13
|
+
/**
|
|
14
|
+
* Serialized data.
|
|
15
|
+
*/
|
|
16
|
+
data: string;
|
|
17
|
+
/**
|
|
18
|
+
* Class name (only for `type === 'class'`).
|
|
19
|
+
*/
|
|
20
|
+
className?: string;
|
|
21
|
+
/**
|
|
22
|
+
* Created timestamp.
|
|
23
|
+
*/
|
|
24
|
+
createdAt: number;
|
|
25
|
+
/**
|
|
26
|
+
* Delay before execution (seconds).
|
|
27
|
+
*/
|
|
28
|
+
delaySeconds?: number;
|
|
29
|
+
/**
|
|
30
|
+
* Current attempt number.
|
|
31
|
+
*/
|
|
32
|
+
attempts?: number;
|
|
33
|
+
/**
|
|
34
|
+
* Maximum attempts.
|
|
35
|
+
*/
|
|
36
|
+
maxAttempts?: number;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Topic options (for Kafka, etc.).
|
|
40
|
+
*/
|
|
41
|
+
export interface TopicOptions {
|
|
42
|
+
/**
|
|
43
|
+
* Number of partitions.
|
|
44
|
+
*/
|
|
45
|
+
partitions?: number;
|
|
46
|
+
/**
|
|
47
|
+
* Replication factor.
|
|
48
|
+
*/
|
|
49
|
+
replicationFactor?: number;
|
|
50
|
+
/**
|
|
51
|
+
* Additional config.
|
|
52
|
+
*/
|
|
53
|
+
config?: Record<string, string>;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Queue connection config.
|
|
57
|
+
*/
|
|
58
|
+
export interface QueueConnectionConfig {
|
|
59
|
+
/**
|
|
60
|
+
* Driver type.
|
|
61
|
+
*/
|
|
62
|
+
driver: 'memory' | 'database' | 'redis' | 'kafka' | 'sqs' | 'rabbitmq' | 'nats';
|
|
63
|
+
/**
|
|
64
|
+
* Driver-specific config.
|
|
65
|
+
*/
|
|
66
|
+
[key: string]: unknown;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Queue manager config.
|
|
70
|
+
*/
|
|
71
|
+
export interface QueueConfig {
|
|
72
|
+
/**
|
|
73
|
+
* Default connection name.
|
|
74
|
+
*/
|
|
75
|
+
default?: string;
|
|
76
|
+
/**
|
|
77
|
+
* Connection configs.
|
|
78
|
+
*/
|
|
79
|
+
connections?: Record<string, QueueConnectionConfig>;
|
|
80
|
+
/**
|
|
81
|
+
* Default serializer type.
|
|
82
|
+
*/
|
|
83
|
+
defaultSerializer?: 'json' | 'class';
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,EAAE,EAAE,MAAM,CAAA;IAEV;;OAEG;IACH,IAAI,EAAE,MAAM,GAAG,OAAO,CAAA;IAEtB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IAEZ;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAA;IAEjB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE1B;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,KAAK,GAAG,UAAU,GAAG,MAAM,CAAA;IAE/E;;OAEG;IACH,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAA;IAEnD;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;CACrC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { Job } from '../Job';
|
|
2
|
+
import type { SerializedJob } from '../types';
|
|
3
|
+
import type { JobSerializer } from './JobSerializer';
|
|
4
|
+
/**
|
|
5
|
+
* Class name serializer (Laravel-style).
|
|
6
|
+
*
|
|
7
|
+
* Stores the class name and properties, then recreates an instance at runtime.
|
|
8
|
+
* This is the recommended serializer because it can restore class instances correctly.
|
|
9
|
+
*
|
|
10
|
+
* Requirement: Job classes must be dynamically loadable (by class name).
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```typescript
|
|
14
|
+
* const serializer = new ClassNameSerializer()
|
|
15
|
+
* const serialized = serializer.serialize(new SendEmail('user@example.com'))
|
|
16
|
+
* // serialized.data contains class name and properties
|
|
17
|
+
*
|
|
18
|
+
* const job = serializer.deserialize(serialized)
|
|
19
|
+
* // job is an instance of SendEmail
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
export declare class ClassNameSerializer implements JobSerializer {
|
|
23
|
+
/**
|
|
24
|
+
* Job class registry (for resolving classes by name).
|
|
25
|
+
*/
|
|
26
|
+
private jobClasses;
|
|
27
|
+
/**
|
|
28
|
+
* Register a Job class.
|
|
29
|
+
* @param jobClass - Job class
|
|
30
|
+
*/
|
|
31
|
+
register(jobClass: new (...args: unknown[]) => Job): void;
|
|
32
|
+
/**
|
|
33
|
+
* Register multiple Job classes.
|
|
34
|
+
* @param jobClasses - Job class array
|
|
35
|
+
*/
|
|
36
|
+
registerMany(jobClasses: Array<new (...args: unknown[]) => Job>): void;
|
|
37
|
+
/**
|
|
38
|
+
* Serialize a Job.
|
|
39
|
+
*/
|
|
40
|
+
serialize(job: Job): SerializedJob;
|
|
41
|
+
/**
|
|
42
|
+
* Deserialize a Job.
|
|
43
|
+
*/
|
|
44
|
+
deserialize(serialized: SerializedJob): Job;
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=ClassNameSerializer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClassNameSerializer.d.ts","sourceRoot":"","sources":["../../src/serializers/ClassNameSerializer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;AACjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAEpD;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,mBAAoB,YAAW,aAAa;IACvD;;OAEG;IACH,OAAO,CAAC,UAAU,CAAqD;IAEvE;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,KAAK,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,GAAG,GAAG,IAAI;IAIzD;;;OAGG;IACH,YAAY,CAAC,UAAU,EAAE,KAAK,CAAC,KAAK,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,GAAG,CAAC,GAAG,IAAI;IAMtE;;OAEG;IACH,SAAS,CAAC,GAAG,EAAE,GAAG,GAAG,aAAa;IA8BlC;;OAEG;IACH,WAAW,CAAC,UAAU,EAAE,aAAa,GAAG,GAAG;CAqC5C"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { Job } from '../Job';
|
|
2
|
+
import type { SerializedJob } from '../types';
|
|
3
|
+
/**
|
|
4
|
+
* Job serializer interface.
|
|
5
|
+
*
|
|
6
|
+
* Responsible for serializing and deserializing jobs.
|
|
7
|
+
* Supports multiple strategies (JSON, class-name, etc.).
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```typescript
|
|
11
|
+
* class MySerializer implements JobSerializer {
|
|
12
|
+
* serialize(job: Job): SerializedJob {
|
|
13
|
+
* // serialization logic
|
|
14
|
+
* }
|
|
15
|
+
*
|
|
16
|
+
* deserialize(serialized: SerializedJob): Job {
|
|
17
|
+
* // deserialization logic
|
|
18
|
+
* }
|
|
19
|
+
* }
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
export interface JobSerializer {
|
|
23
|
+
/**
|
|
24
|
+
* Serialize a job.
|
|
25
|
+
* @param job - Job instance
|
|
26
|
+
* @returns Serialized job payload
|
|
27
|
+
*/
|
|
28
|
+
serialize(job: Job): SerializedJob;
|
|
29
|
+
/**
|
|
30
|
+
* Deserialize a job.
|
|
31
|
+
* @param serialized - Serialized job payload
|
|
32
|
+
* @returns Job instance
|
|
33
|
+
*/
|
|
34
|
+
deserialize(serialized: SerializedJob): Job;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=JobSerializer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"JobSerializer.d.ts","sourceRoot":"","sources":["../../src/serializers/JobSerializer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;AACjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAE7C;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,SAAS,CAAC,GAAG,EAAE,GAAG,GAAG,aAAa,CAAA;IAElC;;;;OAIG;IACH,WAAW,CAAC,UAAU,EAAE,aAAa,GAAG,GAAG,CAAA;CAC5C"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { Job } from '../Job';
|
|
2
|
+
import type { SerializedJob } from '../types';
|
|
3
|
+
import type { JobSerializer } from './JobSerializer';
|
|
4
|
+
/**
|
|
5
|
+
* JSON Serializer
|
|
6
|
+
*
|
|
7
|
+
* Serializes jobs using JSON.
|
|
8
|
+
* Suitable for simple scenarios where you only need to persist plain properties.
|
|
9
|
+
*
|
|
10
|
+
* Limitation: cannot restore class instances, functions, or complex objects.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```typescript
|
|
14
|
+
* const serializer = new JsonSerializer()
|
|
15
|
+
* const serialized = serializer.serialize(job)
|
|
16
|
+
* const job = serializer.deserialize(serialized)
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
export declare class JsonSerializer implements JobSerializer {
|
|
20
|
+
/**
|
|
21
|
+
* Serialize a job.
|
|
22
|
+
*/
|
|
23
|
+
serialize(job: Job): SerializedJob;
|
|
24
|
+
/**
|
|
25
|
+
* Deserialize a job.
|
|
26
|
+
*
|
|
27
|
+
* Note: this implementation only restores properties and does not recreate class instances.
|
|
28
|
+
* For class instances, use `ClassNameSerializer`.
|
|
29
|
+
*/
|
|
30
|
+
deserialize(serialized: SerializedJob): Job;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=JsonSerializer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"JsonSerializer.d.ts","sourceRoot":"","sources":["../../src/serializers/JsonSerializer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAA;AACjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAC7C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAEpD;;;;;;;;;;;;;;GAcG;AACH,qBAAa,cAAe,YAAW,aAAa;IAClD;;OAEG;IACH,SAAS,CAAC,GAAG,EAAE,GAAG,GAAG,aAAa;IAiBlC;;;;;OAKG;IACH,WAAW,CAAC,UAAU,EAAE,aAAa,GAAG,GAAG;CAW5C"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Serialized job payload.
|
|
3
|
+
*/
|
|
4
|
+
export interface SerializedJob {
|
|
5
|
+
/**
|
|
6
|
+
* Unique job identifier.
|
|
7
|
+
*/
|
|
8
|
+
id: string;
|
|
9
|
+
/**
|
|
10
|
+
* Serializer type: `'json'` or `'class'`.
|
|
11
|
+
*/
|
|
12
|
+
type: 'json' | 'class';
|
|
13
|
+
/**
|
|
14
|
+
* Serialized data.
|
|
15
|
+
*/
|
|
16
|
+
data: string;
|
|
17
|
+
/**
|
|
18
|
+
* Class name (only for `type === 'class'`).
|
|
19
|
+
*/
|
|
20
|
+
className?: string;
|
|
21
|
+
/**
|
|
22
|
+
* Created timestamp.
|
|
23
|
+
*/
|
|
24
|
+
createdAt: number;
|
|
25
|
+
/**
|
|
26
|
+
* Delay before execution (seconds).
|
|
27
|
+
*/
|
|
28
|
+
delaySeconds?: number;
|
|
29
|
+
/**
|
|
30
|
+
* Current attempt number.
|
|
31
|
+
*/
|
|
32
|
+
attempts?: number;
|
|
33
|
+
/**
|
|
34
|
+
* Maximum attempts.
|
|
35
|
+
*/
|
|
36
|
+
maxAttempts?: number;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Topic options (for Kafka, etc.).
|
|
40
|
+
*/
|
|
41
|
+
export interface TopicOptions {
|
|
42
|
+
/**
|
|
43
|
+
* Number of partitions.
|
|
44
|
+
*/
|
|
45
|
+
partitions?: number;
|
|
46
|
+
/**
|
|
47
|
+
* Replication factor.
|
|
48
|
+
*/
|
|
49
|
+
replicationFactor?: number;
|
|
50
|
+
/**
|
|
51
|
+
* Additional config.
|
|
52
|
+
*/
|
|
53
|
+
config?: Record<string, string>;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Queue connection config.
|
|
57
|
+
*/
|
|
58
|
+
export interface QueueConnectionConfig {
|
|
59
|
+
/**
|
|
60
|
+
* Driver type.
|
|
61
|
+
*/
|
|
62
|
+
driver: 'memory' | 'database' | 'redis' | 'kafka' | 'sqs' | 'rabbitmq' | 'nats';
|
|
63
|
+
/**
|
|
64
|
+
* Driver-specific config.
|
|
65
|
+
*/
|
|
66
|
+
[key: string]: unknown;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Queue manager config.
|
|
70
|
+
*/
|
|
71
|
+
export interface QueueConfig {
|
|
72
|
+
/**
|
|
73
|
+
* Default connection name.
|
|
74
|
+
*/
|
|
75
|
+
default?: string;
|
|
76
|
+
/**
|
|
77
|
+
* Connection configs.
|
|
78
|
+
*/
|
|
79
|
+
connections?: Record<string, QueueConnectionConfig>;
|
|
80
|
+
/**
|
|
81
|
+
* Default serializer type.
|
|
82
|
+
*/
|
|
83
|
+
defaultSerializer?: 'json' | 'class';
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,EAAE,EAAE,MAAM,CAAA;IAEV;;OAEG;IACH,IAAI,EAAE,MAAM,GAAG,OAAO,CAAA;IAEtB;;OAEG;IACH,IAAI,EAAE,MAAM,CAAA;IAEZ;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAA;IAEjB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAE1B;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,OAAO,GAAG,OAAO,GAAG,KAAK,GAAG,UAAU,GAAG,MAAM,CAAA;IAE/E;;OAEG;IACH,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAA;IAEnD;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;CACrC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@gravito/stream",
|
|
3
|
+
"version": "1.0.0-alpha.2",
|
|
4
|
+
"publishConfig": {
|
|
5
|
+
"access": "public"
|
|
6
|
+
},
|
|
7
|
+
"description": "Lightweight, high-performance queue system for Gravito framework. Supports multiple brokers (Database, Redis, Kafka, SQS) with zero runtime overhead.",
|
|
8
|
+
"module": "./dist/index.mjs",
|
|
9
|
+
"main": "./dist/index.cjs",
|
|
10
|
+
"type": "module",
|
|
11
|
+
"types": "./dist/index.d.ts",
|
|
12
|
+
"exports": {
|
|
13
|
+
".": {
|
|
14
|
+
"types": "./dist/index.d.ts",
|
|
15
|
+
"import": "./dist/index.mjs",
|
|
16
|
+
"require": "./dist/index.cjs"
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
"files": [
|
|
20
|
+
"dist",
|
|
21
|
+
"README.md",
|
|
22
|
+
"LICENSE"
|
|
23
|
+
],
|
|
24
|
+
"scripts": {
|
|
25
|
+
"build": "bun run build.ts",
|
|
26
|
+
"test": "bun test",
|
|
27
|
+
"typecheck": "tsc --noEmit"
|
|
28
|
+
},
|
|
29
|
+
"keywords": [
|
|
30
|
+
"gravito",
|
|
31
|
+
"orbit",
|
|
32
|
+
"queue",
|
|
33
|
+
"job",
|
|
34
|
+
"worker",
|
|
35
|
+
"kafka",
|
|
36
|
+
"sqs",
|
|
37
|
+
"redis"
|
|
38
|
+
],
|
|
39
|
+
"author": "Carl Lee <carllee0520@gmail.com>",
|
|
40
|
+
"license": "MIT",
|
|
41
|
+
"dependencies": {
|
|
42
|
+
"@aws-sdk/client-sqs": "^3.955.0",
|
|
43
|
+
"gravito-core": "1.0.0-beta.2"
|
|
44
|
+
},
|
|
45
|
+
"devDependencies": {
|
|
46
|
+
"@gravito/db": "1.0.0-alpha.2",
|
|
47
|
+
"bun-types": "latest",
|
|
48
|
+
"hono": "^4.11.1",
|
|
49
|
+
"typescript": "^5.9.3"
|
|
50
|
+
},
|
|
51
|
+
"homepage": "https://github.com/gravito-framework/gravito#readme",
|
|
52
|
+
"repository": {
|
|
53
|
+
"type": "git",
|
|
54
|
+
"url": "git+https://github.com/gravito-framework/gravito.git",
|
|
55
|
+
"directory": "packages/stream"
|
|
56
|
+
}
|
|
57
|
+
}
|