conduithub 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/dist/core/conduit-hub/index.cjs +1 -1
  2. package/dist/core/conduit-hub/index.d.cts +1 -1
  3. package/dist/core/conduit-hub/index.d.mts +1 -1
  4. package/dist/core/conduit-hub/index.d.ts +1 -1
  5. package/dist/core/conduit-hub/index.mjs +1 -1
  6. package/dist/core/config-manager/index.d.cts +1 -1
  7. package/dist/core/config-manager/index.d.mts +1 -1
  8. package/dist/core/config-manager/index.d.ts +1 -1
  9. package/dist/core/event-bus/index.cjs +4 -4
  10. package/dist/core/event-bus/index.mjs +1 -1
  11. package/dist/core/hook/index.cjs +6 -6
  12. package/dist/core/hook/index.mjs +1 -1
  13. package/dist/core/index.cjs +5 -3
  14. package/dist/core/index.d.cts +8 -184
  15. package/dist/core/index.d.mts +8 -184
  16. package/dist/core/index.d.ts +8 -184
  17. package/dist/core/index.mjs +4 -3
  18. package/dist/core/plugin/index.d.cts +1 -1
  19. package/dist/core/plugin/index.d.mts +1 -1
  20. package/dist/core/plugin/index.d.ts +1 -1
  21. package/dist/core/service-container/index.cjs +9 -9
  22. package/dist/core/service-container/index.mjs +1 -1
  23. package/dist/core/state-manager/index.cjs +3 -3
  24. package/dist/core/state-manager/index.mjs +1 -1
  25. package/dist/{shared/conduithub.BqUYv04j.cjs → error/index.cjs} +3 -0
  26. package/dist/error/index.d.cts +47 -0
  27. package/dist/error/index.d.mts +47 -0
  28. package/dist/error/index.d.ts +47 -0
  29. package/dist/{shared/conduithub.BDwZXllF.mjs → error/index.mjs} +3 -1
  30. package/dist/index.cjs +191 -16
  31. package/dist/index.d.cts +65 -47
  32. package/dist/index.d.mts +65 -47
  33. package/dist/index.d.ts +65 -47
  34. package/dist/index.mjs +161 -5
  35. package/dist/plugins/index.cjs +40 -0
  36. package/dist/plugins/index.d.cts +10 -0
  37. package/dist/plugins/index.d.mts +10 -0
  38. package/dist/plugins/index.d.ts +10 -0
  39. package/dist/plugins/index.mjs +24 -0
  40. package/dist/plugins/kafka/index.cjs +34 -0
  41. package/dist/plugins/kafka/index.d.cts +250 -0
  42. package/dist/plugins/kafka/index.d.mts +250 -0
  43. package/dist/plugins/kafka/index.d.ts +250 -0
  44. package/dist/plugins/kafka/index.mjs +23 -0
  45. package/dist/plugins/redis/index.cjs +33 -0
  46. package/dist/plugins/redis/index.d.cts +151 -0
  47. package/dist/plugins/redis/index.d.mts +151 -0
  48. package/dist/plugins/redis/index.d.ts +151 -0
  49. package/dist/plugins/redis/index.mjs +23 -0
  50. package/dist/shared/conduithub.0FKJet8c.cjs +1130 -0
  51. package/dist/shared/conduithub.B16qn6pY.mjs +174 -0
  52. package/dist/shared/conduithub.BW-S7Bp_.d.cts +181 -0
  53. package/dist/shared/conduithub.BdX_BLza.mjs +1124 -0
  54. package/dist/shared/conduithub.BzuAKyjY.mjs +971 -0
  55. package/dist/shared/conduithub.DSAmRivG.d.ts +181 -0
  56. package/dist/shared/conduithub.DhMIxMx2.cjs +981 -0
  57. package/dist/shared/{conduithub.gF2DFc43.cjs → conduithub.Dlvl2xGE.cjs} +3 -3
  58. package/dist/shared/conduithub.GrtzQn_7.d.mts +181 -0
  59. package/dist/shared/{conduithub.bsiNMTVD.mjs → conduithub.Up0QYVao.mjs} +1 -1
  60. package/dist/shared/conduithub.jH-df3Zd.cjs +181 -0
  61. package/dist/utils/index.cjs +3 -2
  62. package/dist/utils/index.mjs +3 -2
  63. package/package.json +22 -1
@@ -0,0 +1,250 @@
1
+ import { Admin, ResourceConfigQuery, IResourceConfig, Consumer } from 'kafkajs';
2
+ import { B as BasePlugin } from '../../shared/conduithub.GrtzQn_7.mjs';
3
+ import { z } from 'zod';
4
+ import '../../core/hook/index.mjs';
5
+ import '../../shared/conduithub.B7aryjPG.mjs';
6
+ import '../../shared/conduithub.BzLwccre.mjs';
7
+ import '../../core/service-container/index.mjs';
8
+ import '../../core/state-manager/index.mjs';
9
+
10
+ declare function initKafka(override?: Partial<KafkaPluginConfig>): Promise<KafkaPlugin>;
11
+ declare function getKafka(): KafkaPlugin;
12
+ declare function shutdownKafka(): Promise<void>;
13
+ declare const kafka: {
14
+ init: typeof initKafka;
15
+ get: typeof getKafka;
16
+ shutdown: typeof shutdownKafka;
17
+ createTopic: (topic: string, numPartitions?: number, replicationFactor?: number) => Promise<void>;
18
+ createTopics: (topics: string[]) => Promise<void>;
19
+ deleteTopic: (topic: string) => Promise<void>;
20
+ sendMessage: (topic: string, message: unknown, options?: {
21
+ partition?: number;
22
+ key?: string;
23
+ headers?: Record<string, unknown>;
24
+ }) => Promise<void>;
25
+ sendBatch: (topic: string, messages: unknown[], options?: {
26
+ partition?: number;
27
+ key?: string;
28
+ headers?: Record<string, unknown>;
29
+ }[]) => Promise<void>;
30
+ createConsumer: (topics: string[], handler: Parameters<KafkaPlugin["createConsumer"]>[1], options?: {
31
+ fromBeginning?: boolean;
32
+ }) => Promise<void>;
33
+ stopConsumer: () => Promise<void>;
34
+ seek: (topic: string, partition: number, offset: string) => Promise<void>;
35
+ pause: (topics: string[]) => Promise<void>;
36
+ resume: (topics: string[]) => Promise<void>;
37
+ commitOffsets: (offsets: Parameters<KafkaPlugin["commitOffsets"]>[0]) => Promise<void>;
38
+ listTopics: () => Promise<string[]>;
39
+ getTopicMetadata: (topics?: string[]) => Promise<ReturnType<KafkaPlugin["getTopicMetadata"]>>;
40
+ describeCluster: () => Promise<ReturnType<KafkaPlugin["describeCluster"]>>;
41
+ describeConfigs: (resources: Parameters<KafkaPlugin["describeConfigs"]>[0]) => Promise<ReturnType<KafkaPlugin["describeConfigs"]>>;
42
+ alterConfigs: (resources: Parameters<KafkaPlugin["alterConfigs"]>[0]) => Promise<void>;
43
+ createPartitions: (topicPartitions: Parameters<KafkaPlugin["createPartitions"]>[0]) => Promise<void>;
44
+ deleteRecords: (topicPartitions: Parameters<KafkaPlugin["deleteRecords"]>[0]) => Promise<void>;
45
+ describeGroups: (groupIds: Parameters<KafkaPlugin["describeGroups"]>[0]) => Promise<ReturnType<KafkaPlugin["describeGroups"]>>;
46
+ listGroups: () => Promise<ReturnType<KafkaPlugin["listGroups"]>>;
47
+ deleteGroups: (groupIds: Parameters<KafkaPlugin["deleteGroups"]>[0]) => Promise<void>;
48
+ getConnectionInfo: () => Promise<ReturnType<KafkaPlugin["getConnectionInfo"]>>;
49
+ getStats: () => Promise<ReturnType<KafkaPlugin["getStats"]>>;
50
+ };
51
+
52
+ declare const KafkaPluginConfigSchema: z.ZodObject<{
53
+ clientId: z.ZodDefault<z.ZodString>;
54
+ brokers: z.ZodDefault<z.ZodArray<z.ZodString>>;
55
+ ssl: z.ZodDefault<z.ZodBoolean>;
56
+ sasl: z.ZodOptional<z.ZodObject<{
57
+ mechanism: z.ZodEnum<{
58
+ plain: "plain";
59
+ "scram-sha-256": "scram-sha-256";
60
+ "scram-sha-512": "scram-sha-512";
61
+ aws: "aws";
62
+ oauthbearer: "oauthbearer";
63
+ }>;
64
+ username: z.ZodOptional<z.ZodString>;
65
+ password: z.ZodOptional<z.ZodString>;
66
+ }, z.core.$strip>>;
67
+ connectionTimeout: z.ZodDefault<z.ZodNumber>;
68
+ requestTimeout: z.ZodDefault<z.ZodNumber>;
69
+ authenticationTimeout: z.ZodDefault<z.ZodNumber>;
70
+ reauthenticationThreshold: z.ZodDefault<z.ZodNumber>;
71
+ enforceRequestTimeout: z.ZodDefault<z.ZodBoolean>;
72
+ retry: z.ZodDefault<z.ZodObject<{
73
+ initialRetryTime: z.ZodDefault<z.ZodNumber>;
74
+ retries: z.ZodDefault<z.ZodNumber>;
75
+ maxRetryTime: z.ZodDefault<z.ZodNumber>;
76
+ factor: z.ZodDefault<z.ZodNumber>;
77
+ multiplier: z.ZodDefault<z.ZodNumber>;
78
+ }, z.core.$strip>>;
79
+ producer: z.ZodDefault<z.ZodObject<{
80
+ allowAutoTopicCreation: z.ZodDefault<z.ZodBoolean>;
81
+ idempotent: z.ZodDefault<z.ZodBoolean>;
82
+ maxInFlightRequests: z.ZodDefault<z.ZodNumber>;
83
+ acks: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<-1>, z.ZodLiteral<0>, z.ZodLiteral<1>]>>;
84
+ compression: z.ZodDefault<z.ZodEnum<{
85
+ none: "none";
86
+ gzip: "gzip";
87
+ snappy: "snappy";
88
+ lz4: "lz4";
89
+ zstd: "zstd";
90
+ }>>;
91
+ maxBatchSize: z.ZodDefault<z.ZodNumber>;
92
+ linger: z.ZodDefault<z.ZodNumber>;
93
+ partitioner: z.ZodDefault<z.ZodEnum<{
94
+ random: "random";
95
+ murmur2: "murmur2";
96
+ murmur2_random: "murmur2_random";
97
+ consistent: "consistent";
98
+ }>>;
99
+ }, z.core.$strip>>;
100
+ consumer: z.ZodDefault<z.ZodObject<{
101
+ groupId: z.ZodDefault<z.ZodString>;
102
+ groupInstanceId: z.ZodOptional<z.ZodString>;
103
+ sessionTimeout: z.ZodDefault<z.ZodNumber>;
104
+ rebalanceTimeout: z.ZodDefault<z.ZodNumber>;
105
+ heartbeatInterval: z.ZodDefault<z.ZodNumber>;
106
+ maxBytesPerPartition: z.ZodDefault<z.ZodNumber>;
107
+ minBytes: z.ZodDefault<z.ZodNumber>;
108
+ maxBytes: z.ZodDefault<z.ZodNumber>;
109
+ maxWaitTimeInMs: z.ZodDefault<z.ZodNumber>;
110
+ retryBackoffMs: z.ZodDefault<z.ZodNumber>;
111
+ autoCommit: z.ZodDefault<z.ZodBoolean>;
112
+ autoCommitInterval: z.ZodDefault<z.ZodNumber>;
113
+ autoOffsetReset: z.ZodDefault<z.ZodEnum<{
114
+ none: "none";
115
+ earliest: "earliest";
116
+ latest: "latest";
117
+ }>>;
118
+ allowAutoTopicCreation: z.ZodDefault<z.ZodBoolean>;
119
+ maxPollRecords: z.ZodDefault<z.ZodNumber>;
120
+ maxPollIntervalMs: z.ZodDefault<z.ZodNumber>;
121
+ readUncommitted: z.ZodDefault<z.ZodBoolean>;
122
+ }, z.core.$strip>>;
123
+ admin: z.ZodDefault<z.ZodObject<{
124
+ clientTimeout: z.ZodDefault<z.ZodNumber>;
125
+ requestTimeout: z.ZodDefault<z.ZodNumber>;
126
+ retry: z.ZodDefault<z.ZodObject<{
127
+ initialRetryTime: z.ZodDefault<z.ZodNumber>;
128
+ retries: z.ZodDefault<z.ZodNumber>;
129
+ maxRetryTime: z.ZodDefault<z.ZodNumber>;
130
+ factor: z.ZodDefault<z.ZodNumber>;
131
+ multiplier: z.ZodDefault<z.ZodNumber>;
132
+ }, z.core.$strip>>;
133
+ }, z.core.$strip>>;
134
+ kafkaLogLevel: z.ZodDefault<z.ZodEnum<{
135
+ NOTHING: "NOTHING";
136
+ ERROR: "ERROR";
137
+ WARN: "WARN";
138
+ INFO: "INFO";
139
+ DEBUG: "DEBUG";
140
+ }>>;
141
+ verboseLogging: z.ZodDefault<z.ZodBoolean>;
142
+ redactSensitiveLogs: z.ZodDefault<z.ZodBoolean>;
143
+ topics: z.ZodDefault<z.ZodArray<z.ZodString>>;
144
+ autoCreateTopics: z.ZodDefault<z.ZodBoolean>;
145
+ defaultTopicPartitions: z.ZodDefault<z.ZodNumber>;
146
+ defaultTopicReplicationFactor: z.ZodDefault<z.ZodNumber>;
147
+ }, z.core.$strip>;
148
+ type KafkaPluginConfig = z.infer<typeof KafkaPluginConfigSchema>;
149
+
150
+ interface KafkaMessage<T = unknown> {
151
+ topic: string;
152
+ partition: number;
153
+ offset: string;
154
+ key: string | null;
155
+ value: T;
156
+ headers: Record<string, string | Buffer | (string | Buffer)[]> | null;
157
+ timestamp: number;
158
+ }
159
+ interface KafkaConsumerInfo<T = unknown> {
160
+ topics: string[];
161
+ handler: (message: KafkaMessage<T>) => Promise<void>;
162
+ options?: {
163
+ fromBeginning?: boolean;
164
+ };
165
+ }
166
+ interface KafkaConnectionInfo {
167
+ clientId: string;
168
+ brokers: string[];
169
+ connected: boolean;
170
+ ssl: boolean;
171
+ timestamp: number;
172
+ }
173
+ interface KafkaStats {
174
+ totalMessagesProduced: number;
175
+ totalMessagesConsumed: number;
176
+ successfulMessages: number;
177
+ failedMessages: number;
178
+ averageProcessingTime: number;
179
+ activeTopics: number;
180
+ activeConsumers: number;
181
+ lastMessageTime?: number;
182
+ }
183
+
184
+ declare class KafkaPlugin extends BasePlugin<KafkaPluginConfig> {
185
+ private kafka;
186
+ private producer;
187
+ private consumer;
188
+ private admin;
189
+ private isConnected;
190
+ private consumers;
191
+ private isConsuming;
192
+ private stats;
193
+ private createKafkaLogCreator;
194
+ constructor(config?: Partial<KafkaPluginConfig>);
195
+ getMetadata(): {
196
+ name: string;
197
+ version: string;
198
+ description: string;
199
+ author: string;
200
+ dependencies: never[];
201
+ hooks: string[];
202
+ events: string[];
203
+ };
204
+ protected onInitialize(): Promise<void>;
205
+ protected onStart(): Promise<void>;
206
+ protected onStop(): Promise<void>;
207
+ protected onDestroy(): Promise<void>;
208
+ sendMessage(topic: string, message: unknown, options?: {
209
+ partition?: number;
210
+ key?: string;
211
+ headers?: Record<string, unknown>;
212
+ }): Promise<void>;
213
+ sendBatch(topic: string, messages: unknown[], options?: {
214
+ partition?: number;
215
+ key?: string;
216
+ headers?: Record<string, unknown>;
217
+ }[]): Promise<void>;
218
+ createConsumer(topics: string[], handler: (message: KafkaMessage) => Promise<void>, options?: {
219
+ fromBeginning?: boolean;
220
+ }): Promise<void>;
221
+ stopConsumer(): Promise<void>;
222
+ createTopic(topic: string, numPartitions?: number, replicationFactor?: number): Promise<void>;
223
+ createTopics(topics: string[]): Promise<void>;
224
+ deleteTopic(topic: string): Promise<void>;
225
+ listTopics(): Promise<string[]>;
226
+ getTopicMetadata(topics?: string[]): Promise<ReturnType<Admin["fetchTopicMetadata"]>>;
227
+ describeCluster(): Promise<ReturnType<Admin["describeCluster"]>>;
228
+ describeConfigs(resources: ResourceConfigQuery[]): Promise<ReturnType<Admin["describeConfigs"]>>;
229
+ alterConfigs(resources: IResourceConfig[]): Promise<void>;
230
+ createPartitions(topicPartitions: Parameters<Admin["createPartitions"]>[0]["topicPartitions"]): Promise<void>;
231
+ deleteRecords(topicPartitions: Array<{
232
+ topic: string;
233
+ partitions: Array<{
234
+ partition: number;
235
+ offset: string;
236
+ }>;
237
+ }>): Promise<void>;
238
+ describeGroups(groupIds: string[]): Promise<ReturnType<Admin["describeGroups"]>>;
239
+ listGroups(): Promise<ReturnType<Admin["listGroups"]>>;
240
+ deleteGroups(groupIds: string[]): Promise<void>;
241
+ getConnectionInfo(): KafkaConnectionInfo;
242
+ getStats(): KafkaStats;
243
+ seek(topic: string, partition: number, offset: string): Promise<void>;
244
+ pause(topics: string[]): Promise<void>;
245
+ resume(topics: string[]): Promise<void>;
246
+ commitOffsets(offsets: Parameters<Consumer["commitOffsets"]>[0]): Promise<void>;
247
+ }
248
+
249
+ export { KafkaPlugin, KafkaPluginConfigSchema, getKafka, initKafka, kafka, shutdownKafka };
250
+ export type { KafkaConnectionInfo, KafkaConsumerInfo, KafkaMessage, KafkaPluginConfig, KafkaStats };
@@ -0,0 +1,250 @@
1
+ import { Admin, ResourceConfigQuery, IResourceConfig, Consumer } from 'kafkajs';
2
+ import { B as BasePlugin } from '../../shared/conduithub.DSAmRivG.js';
3
+ import { z } from 'zod';
4
+ import '../../core/hook/index.js';
5
+ import '../../shared/conduithub.B7aryjPG.js';
6
+ import '../../shared/conduithub.DQOWQ-Bx.js';
7
+ import '../../core/service-container/index.js';
8
+ import '../../core/state-manager/index.js';
9
+
10
+ declare function initKafka(override?: Partial<KafkaPluginConfig>): Promise<KafkaPlugin>;
11
+ declare function getKafka(): KafkaPlugin;
12
+ declare function shutdownKafka(): Promise<void>;
13
+ declare const kafka: {
14
+ init: typeof initKafka;
15
+ get: typeof getKafka;
16
+ shutdown: typeof shutdownKafka;
17
+ createTopic: (topic: string, numPartitions?: number, replicationFactor?: number) => Promise<void>;
18
+ createTopics: (topics: string[]) => Promise<void>;
19
+ deleteTopic: (topic: string) => Promise<void>;
20
+ sendMessage: (topic: string, message: unknown, options?: {
21
+ partition?: number;
22
+ key?: string;
23
+ headers?: Record<string, unknown>;
24
+ }) => Promise<void>;
25
+ sendBatch: (topic: string, messages: unknown[], options?: {
26
+ partition?: number;
27
+ key?: string;
28
+ headers?: Record<string, unknown>;
29
+ }[]) => Promise<void>;
30
+ createConsumer: (topics: string[], handler: Parameters<KafkaPlugin["createConsumer"]>[1], options?: {
31
+ fromBeginning?: boolean;
32
+ }) => Promise<void>;
33
+ stopConsumer: () => Promise<void>;
34
+ seek: (topic: string, partition: number, offset: string) => Promise<void>;
35
+ pause: (topics: string[]) => Promise<void>;
36
+ resume: (topics: string[]) => Promise<void>;
37
+ commitOffsets: (offsets: Parameters<KafkaPlugin["commitOffsets"]>[0]) => Promise<void>;
38
+ listTopics: () => Promise<string[]>;
39
+ getTopicMetadata: (topics?: string[]) => Promise<ReturnType<KafkaPlugin["getTopicMetadata"]>>;
40
+ describeCluster: () => Promise<ReturnType<KafkaPlugin["describeCluster"]>>;
41
+ describeConfigs: (resources: Parameters<KafkaPlugin["describeConfigs"]>[0]) => Promise<ReturnType<KafkaPlugin["describeConfigs"]>>;
42
+ alterConfigs: (resources: Parameters<KafkaPlugin["alterConfigs"]>[0]) => Promise<void>;
43
+ createPartitions: (topicPartitions: Parameters<KafkaPlugin["createPartitions"]>[0]) => Promise<void>;
44
+ deleteRecords: (topicPartitions: Parameters<KafkaPlugin["deleteRecords"]>[0]) => Promise<void>;
45
+ describeGroups: (groupIds: Parameters<KafkaPlugin["describeGroups"]>[0]) => Promise<ReturnType<KafkaPlugin["describeGroups"]>>;
46
+ listGroups: () => Promise<ReturnType<KafkaPlugin["listGroups"]>>;
47
+ deleteGroups: (groupIds: Parameters<KafkaPlugin["deleteGroups"]>[0]) => Promise<void>;
48
+ getConnectionInfo: () => Promise<ReturnType<KafkaPlugin["getConnectionInfo"]>>;
49
+ getStats: () => Promise<ReturnType<KafkaPlugin["getStats"]>>;
50
+ };
51
+
52
+ declare const KafkaPluginConfigSchema: z.ZodObject<{
53
+ clientId: z.ZodDefault<z.ZodString>;
54
+ brokers: z.ZodDefault<z.ZodArray<z.ZodString>>;
55
+ ssl: z.ZodDefault<z.ZodBoolean>;
56
+ sasl: z.ZodOptional<z.ZodObject<{
57
+ mechanism: z.ZodEnum<{
58
+ plain: "plain";
59
+ "scram-sha-256": "scram-sha-256";
60
+ "scram-sha-512": "scram-sha-512";
61
+ aws: "aws";
62
+ oauthbearer: "oauthbearer";
63
+ }>;
64
+ username: z.ZodOptional<z.ZodString>;
65
+ password: z.ZodOptional<z.ZodString>;
66
+ }, z.core.$strip>>;
67
+ connectionTimeout: z.ZodDefault<z.ZodNumber>;
68
+ requestTimeout: z.ZodDefault<z.ZodNumber>;
69
+ authenticationTimeout: z.ZodDefault<z.ZodNumber>;
70
+ reauthenticationThreshold: z.ZodDefault<z.ZodNumber>;
71
+ enforceRequestTimeout: z.ZodDefault<z.ZodBoolean>;
72
+ retry: z.ZodDefault<z.ZodObject<{
73
+ initialRetryTime: z.ZodDefault<z.ZodNumber>;
74
+ retries: z.ZodDefault<z.ZodNumber>;
75
+ maxRetryTime: z.ZodDefault<z.ZodNumber>;
76
+ factor: z.ZodDefault<z.ZodNumber>;
77
+ multiplier: z.ZodDefault<z.ZodNumber>;
78
+ }, z.core.$strip>>;
79
+ producer: z.ZodDefault<z.ZodObject<{
80
+ allowAutoTopicCreation: z.ZodDefault<z.ZodBoolean>;
81
+ idempotent: z.ZodDefault<z.ZodBoolean>;
82
+ maxInFlightRequests: z.ZodDefault<z.ZodNumber>;
83
+ acks: z.ZodDefault<z.ZodUnion<readonly [z.ZodLiteral<-1>, z.ZodLiteral<0>, z.ZodLiteral<1>]>>;
84
+ compression: z.ZodDefault<z.ZodEnum<{
85
+ none: "none";
86
+ gzip: "gzip";
87
+ snappy: "snappy";
88
+ lz4: "lz4";
89
+ zstd: "zstd";
90
+ }>>;
91
+ maxBatchSize: z.ZodDefault<z.ZodNumber>;
92
+ linger: z.ZodDefault<z.ZodNumber>;
93
+ partitioner: z.ZodDefault<z.ZodEnum<{
94
+ random: "random";
95
+ murmur2: "murmur2";
96
+ murmur2_random: "murmur2_random";
97
+ consistent: "consistent";
98
+ }>>;
99
+ }, z.core.$strip>>;
100
+ consumer: z.ZodDefault<z.ZodObject<{
101
+ groupId: z.ZodDefault<z.ZodString>;
102
+ groupInstanceId: z.ZodOptional<z.ZodString>;
103
+ sessionTimeout: z.ZodDefault<z.ZodNumber>;
104
+ rebalanceTimeout: z.ZodDefault<z.ZodNumber>;
105
+ heartbeatInterval: z.ZodDefault<z.ZodNumber>;
106
+ maxBytesPerPartition: z.ZodDefault<z.ZodNumber>;
107
+ minBytes: z.ZodDefault<z.ZodNumber>;
108
+ maxBytes: z.ZodDefault<z.ZodNumber>;
109
+ maxWaitTimeInMs: z.ZodDefault<z.ZodNumber>;
110
+ retryBackoffMs: z.ZodDefault<z.ZodNumber>;
111
+ autoCommit: z.ZodDefault<z.ZodBoolean>;
112
+ autoCommitInterval: z.ZodDefault<z.ZodNumber>;
113
+ autoOffsetReset: z.ZodDefault<z.ZodEnum<{
114
+ none: "none";
115
+ earliest: "earliest";
116
+ latest: "latest";
117
+ }>>;
118
+ allowAutoTopicCreation: z.ZodDefault<z.ZodBoolean>;
119
+ maxPollRecords: z.ZodDefault<z.ZodNumber>;
120
+ maxPollIntervalMs: z.ZodDefault<z.ZodNumber>;
121
+ readUncommitted: z.ZodDefault<z.ZodBoolean>;
122
+ }, z.core.$strip>>;
123
+ admin: z.ZodDefault<z.ZodObject<{
124
+ clientTimeout: z.ZodDefault<z.ZodNumber>;
125
+ requestTimeout: z.ZodDefault<z.ZodNumber>;
126
+ retry: z.ZodDefault<z.ZodObject<{
127
+ initialRetryTime: z.ZodDefault<z.ZodNumber>;
128
+ retries: z.ZodDefault<z.ZodNumber>;
129
+ maxRetryTime: z.ZodDefault<z.ZodNumber>;
130
+ factor: z.ZodDefault<z.ZodNumber>;
131
+ multiplier: z.ZodDefault<z.ZodNumber>;
132
+ }, z.core.$strip>>;
133
+ }, z.core.$strip>>;
134
+ kafkaLogLevel: z.ZodDefault<z.ZodEnum<{
135
+ NOTHING: "NOTHING";
136
+ ERROR: "ERROR";
137
+ WARN: "WARN";
138
+ INFO: "INFO";
139
+ DEBUG: "DEBUG";
140
+ }>>;
141
+ verboseLogging: z.ZodDefault<z.ZodBoolean>;
142
+ redactSensitiveLogs: z.ZodDefault<z.ZodBoolean>;
143
+ topics: z.ZodDefault<z.ZodArray<z.ZodString>>;
144
+ autoCreateTopics: z.ZodDefault<z.ZodBoolean>;
145
+ defaultTopicPartitions: z.ZodDefault<z.ZodNumber>;
146
+ defaultTopicReplicationFactor: z.ZodDefault<z.ZodNumber>;
147
+ }, z.core.$strip>;
148
+ type KafkaPluginConfig = z.infer<typeof KafkaPluginConfigSchema>;
149
+
150
+ interface KafkaMessage<T = unknown> {
151
+ topic: string;
152
+ partition: number;
153
+ offset: string;
154
+ key: string | null;
155
+ value: T;
156
+ headers: Record<string, string | Buffer | (string | Buffer)[]> | null;
157
+ timestamp: number;
158
+ }
159
+ interface KafkaConsumerInfo<T = unknown> {
160
+ topics: string[];
161
+ handler: (message: KafkaMessage<T>) => Promise<void>;
162
+ options?: {
163
+ fromBeginning?: boolean;
164
+ };
165
+ }
166
+ interface KafkaConnectionInfo {
167
+ clientId: string;
168
+ brokers: string[];
169
+ connected: boolean;
170
+ ssl: boolean;
171
+ timestamp: number;
172
+ }
173
+ interface KafkaStats {
174
+ totalMessagesProduced: number;
175
+ totalMessagesConsumed: number;
176
+ successfulMessages: number;
177
+ failedMessages: number;
178
+ averageProcessingTime: number;
179
+ activeTopics: number;
180
+ activeConsumers: number;
181
+ lastMessageTime?: number;
182
+ }
183
+
184
+ declare class KafkaPlugin extends BasePlugin<KafkaPluginConfig> {
185
+ private kafka;
186
+ private producer;
187
+ private consumer;
188
+ private admin;
189
+ private isConnected;
190
+ private consumers;
191
+ private isConsuming;
192
+ private stats;
193
+ private createKafkaLogCreator;
194
+ constructor(config?: Partial<KafkaPluginConfig>);
195
+ getMetadata(): {
196
+ name: string;
197
+ version: string;
198
+ description: string;
199
+ author: string;
200
+ dependencies: never[];
201
+ hooks: string[];
202
+ events: string[];
203
+ };
204
+ protected onInitialize(): Promise<void>;
205
+ protected onStart(): Promise<void>;
206
+ protected onStop(): Promise<void>;
207
+ protected onDestroy(): Promise<void>;
208
+ sendMessage(topic: string, message: unknown, options?: {
209
+ partition?: number;
210
+ key?: string;
211
+ headers?: Record<string, unknown>;
212
+ }): Promise<void>;
213
+ sendBatch(topic: string, messages: unknown[], options?: {
214
+ partition?: number;
215
+ key?: string;
216
+ headers?: Record<string, unknown>;
217
+ }[]): Promise<void>;
218
+ createConsumer(topics: string[], handler: (message: KafkaMessage) => Promise<void>, options?: {
219
+ fromBeginning?: boolean;
220
+ }): Promise<void>;
221
+ stopConsumer(): Promise<void>;
222
+ createTopic(topic: string, numPartitions?: number, replicationFactor?: number): Promise<void>;
223
+ createTopics(topics: string[]): Promise<void>;
224
+ deleteTopic(topic: string): Promise<void>;
225
+ listTopics(): Promise<string[]>;
226
+ getTopicMetadata(topics?: string[]): Promise<ReturnType<Admin["fetchTopicMetadata"]>>;
227
+ describeCluster(): Promise<ReturnType<Admin["describeCluster"]>>;
228
+ describeConfigs(resources: ResourceConfigQuery[]): Promise<ReturnType<Admin["describeConfigs"]>>;
229
+ alterConfigs(resources: IResourceConfig[]): Promise<void>;
230
+ createPartitions(topicPartitions: Parameters<Admin["createPartitions"]>[0]["topicPartitions"]): Promise<void>;
231
+ deleteRecords(topicPartitions: Array<{
232
+ topic: string;
233
+ partitions: Array<{
234
+ partition: number;
235
+ offset: string;
236
+ }>;
237
+ }>): Promise<void>;
238
+ describeGroups(groupIds: string[]): Promise<ReturnType<Admin["describeGroups"]>>;
239
+ listGroups(): Promise<ReturnType<Admin["listGroups"]>>;
240
+ deleteGroups(groupIds: string[]): Promise<void>;
241
+ getConnectionInfo(): KafkaConnectionInfo;
242
+ getStats(): KafkaStats;
243
+ seek(topic: string, partition: number, offset: string): Promise<void>;
244
+ pause(topics: string[]): Promise<void>;
245
+ resume(topics: string[]): Promise<void>;
246
+ commitOffsets(offsets: Parameters<Consumer["commitOffsets"]>[0]): Promise<void>;
247
+ }
248
+
249
+ export { KafkaPlugin, KafkaPluginConfigSchema, getKafka, initKafka, kafka, shutdownKafka };
250
+ export type { KafkaConnectionInfo, KafkaConsumerInfo, KafkaMessage, KafkaPluginConfig, KafkaStats };
@@ -0,0 +1,23 @@
1
+ export { K as KafkaPlugin, g as getKafka, i as initKafka, k as kafka, s as shutdownKafka } from '../../shared/conduithub.BdX_BLza.mjs';
2
+ export { K as KafkaPluginConfigSchema } from '../../shared/conduithub.B16qn6pY.mjs';
3
+ import 'node:fs';
4
+ import 'node:fs/promises';
5
+ import 'node:path';
6
+ import '../../shared/conduithub.BNefRQsK.mjs';
7
+ import '../../core/conduit-hub/index.mjs';
8
+ import 'process';
9
+ import 'readline';
10
+ import 'uuid';
11
+ import '../../core/config-manager/index.mjs';
12
+ import '../../shared/conduithub.G7ICpZIy.mjs';
13
+ import '../../shared/conduithub.alPiaJax.mjs';
14
+ import '../../core/event-bus/index.mjs';
15
+ import '../../error/index.mjs';
16
+ import '../../shared/conduithub.CkOQG3cD.mjs';
17
+ import '../../core/hook/index.mjs';
18
+ import '../../shared/conduithub.DyQQrHW9.mjs';
19
+ import '../../core/service-container/index.mjs';
20
+ import '../../core/state-manager/index.mjs';
21
+ import '../../core/plugin/index.mjs';
22
+ import 'ioredis';
23
+ import 'zod';
@@ -0,0 +1,33 @@
1
+ 'use strict';
2
+
3
+ const client = require('../../shared/conduithub.DhMIxMx2.cjs');
4
+ require('node:fs');
5
+ require('node:fs/promises');
6
+ require('node:path');
7
+ require('../../shared/conduithub.BNQsddJO.cjs');
8
+ require('../../shared/conduithub.jH-df3Zd.cjs');
9
+ require('zod');
10
+ require('../../core/conduit-hub/index.cjs');
11
+ require('process');
12
+ require('readline');
13
+ require('uuid');
14
+ require('../../core/config-manager/index.cjs');
15
+ require('../../shared/conduithub.CmZo_Vuc.cjs');
16
+ require('../../shared/conduithub.DQO1dRnn.cjs');
17
+ require('../../core/event-bus/index.cjs');
18
+ require('../../error/index.cjs');
19
+ require('../../shared/conduithub.Bq_7Xj0J.cjs');
20
+ require('../../core/hook/index.cjs');
21
+ require('../../shared/conduithub.DsOOeNwU.cjs');
22
+ require('../../core/service-container/index.cjs');
23
+ require('../../core/state-manager/index.cjs');
24
+ require('ioredis');
25
+ require('../../core/plugin/index.cjs');
26
+
27
+
28
+
29
+ exports.RedisPlugin = client.RedisPlugin;
30
+ exports.getRedis = client.getRedis;
31
+ exports.initRedis = client.initRedis;
32
+ exports.redis = client.redis;
33
+ exports.shutdownRedis = client.shutdownRedis;