kafka-ts 0.0.1-beta → 0.0.2-beta

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 (138) hide show
  1. package/.github/workflows/release.yml +17 -0
  2. package/LICENSE +1 -1
  3. package/README.md +12 -9
  4. package/examples/package-lock.json +4 -3
  5. package/examples/package.json +1 -1
  6. package/examples/src/client.ts +1 -1
  7. package/examples/src/create-topic.ts +1 -1
  8. package/package.json +5 -1
  9. package/src/__snapshots__/request-handler.test.ts.snap +9 -718
  10. package/src/{request-handler.test.ts → cluster.test.ts} +16 -13
  11. package/src/utils/debug.ts +1 -1
  12. package/src/utils/tracer.ts +1 -1
  13. package/dist/api/api-versions.d.ts +0 -9
  14. package/dist/api/api-versions.js +0 -24
  15. package/dist/api/create-topics.d.ts +0 -38
  16. package/dist/api/create-topics.js +0 -53
  17. package/dist/api/delete-topics.d.ts +0 -18
  18. package/dist/api/delete-topics.js +0 -33
  19. package/dist/api/fetch.d.ts +0 -77
  20. package/dist/api/fetch.js +0 -106
  21. package/dist/api/find-coordinator.d.ts +0 -21
  22. package/dist/api/find-coordinator.js +0 -39
  23. package/dist/api/heartbeat.d.ts +0 -11
  24. package/dist/api/heartbeat.js +0 -27
  25. package/dist/api/index.d.ts +0 -573
  26. package/dist/api/index.js +0 -164
  27. package/dist/api/init-producer-id.d.ts +0 -13
  28. package/dist/api/init-producer-id.js +0 -29
  29. package/dist/api/join-group.d.ts +0 -34
  30. package/dist/api/join-group.js +0 -51
  31. package/dist/api/leave-group.d.ts +0 -19
  32. package/dist/api/leave-group.js +0 -39
  33. package/dist/api/list-offsets.d.ts +0 -29
  34. package/dist/api/list-offsets.js +0 -48
  35. package/dist/api/metadata.d.ts +0 -40
  36. package/dist/api/metadata.js +0 -58
  37. package/dist/api/offset-commit.d.ts +0 -28
  38. package/dist/api/offset-commit.js +0 -48
  39. package/dist/api/offset-fetch.d.ts +0 -33
  40. package/dist/api/offset-fetch.js +0 -57
  41. package/dist/api/produce.d.ts +0 -53
  42. package/dist/api/produce.js +0 -129
  43. package/dist/api/sasl-authenticate.d.ts +0 -11
  44. package/dist/api/sasl-authenticate.js +0 -23
  45. package/dist/api/sasl-handshake.d.ts +0 -6
  46. package/dist/api/sasl-handshake.js +0 -19
  47. package/dist/api/sync-group.d.ts +0 -24
  48. package/dist/api/sync-group.js +0 -36
  49. package/dist/broker.d.ts +0 -29
  50. package/dist/broker.js +0 -60
  51. package/dist/client.d.ts +0 -23
  52. package/dist/client.js +0 -36
  53. package/dist/cluster.d.ts +0 -24
  54. package/dist/cluster.js +0 -72
  55. package/dist/connection.d.ts +0 -25
  56. package/dist/connection.js +0 -155
  57. package/dist/consumer/consumer-group.d.ts +0 -36
  58. package/dist/consumer/consumer-group.js +0 -182
  59. package/dist/consumer/consumer-metadata.d.ts +0 -7
  60. package/dist/consumer/consumer-metadata.js +0 -14
  61. package/dist/consumer/consumer.d.ts +0 -37
  62. package/dist/consumer/consumer.js +0 -178
  63. package/dist/consumer/metadata.d.ts +0 -24
  64. package/dist/consumer/metadata.js +0 -64
  65. package/dist/consumer/offset-manager.d.ts +0 -22
  66. package/dist/consumer/offset-manager.js +0 -56
  67. package/dist/distributors/assignments-to-replicas.d.ts +0 -17
  68. package/dist/distributors/assignments-to-replicas.js +0 -60
  69. package/dist/distributors/assignments-to-replicas.test.d.ts +0 -1
  70. package/dist/distributors/assignments-to-replicas.test.js +0 -40
  71. package/dist/distributors/messages-to-topic-partition-leaders.d.ts +0 -17
  72. package/dist/distributors/messages-to-topic-partition-leaders.js +0 -15
  73. package/dist/distributors/messages-to-topic-partition-leaders.test.d.ts +0 -1
  74. package/dist/distributors/messages-to-topic-partition-leaders.test.js +0 -30
  75. package/dist/examples/src/replicator.js +0 -34
  76. package/dist/examples/src/utils/json.js +0 -5
  77. package/dist/index.d.ts +0 -3
  78. package/dist/index.js +0 -19
  79. package/dist/metadata.d.ts +0 -24
  80. package/dist/metadata.js +0 -89
  81. package/dist/producer/producer.d.ts +0 -19
  82. package/dist/producer/producer.js +0 -111
  83. package/dist/request-handler.d.ts +0 -16
  84. package/dist/request-handler.js +0 -67
  85. package/dist/request-handler.test.d.ts +0 -1
  86. package/dist/request-handler.test.js +0 -340
  87. package/dist/src/api/api-versions.js +0 -18
  88. package/dist/src/api/create-topics.js +0 -46
  89. package/dist/src/api/delete-topics.js +0 -26
  90. package/dist/src/api/fetch.js +0 -95
  91. package/dist/src/api/find-coordinator.js +0 -34
  92. package/dist/src/api/heartbeat.js +0 -22
  93. package/dist/src/api/index.js +0 -38
  94. package/dist/src/api/init-producer-id.js +0 -24
  95. package/dist/src/api/join-group.js +0 -48
  96. package/dist/src/api/leave-group.js +0 -30
  97. package/dist/src/api/list-offsets.js +0 -39
  98. package/dist/src/api/metadata.js +0 -47
  99. package/dist/src/api/offset-commit.js +0 -39
  100. package/dist/src/api/offset-fetch.js +0 -44
  101. package/dist/src/api/produce.js +0 -119
  102. package/dist/src/api/sync-group.js +0 -31
  103. package/dist/src/broker.js +0 -35
  104. package/dist/src/connection.js +0 -21
  105. package/dist/src/consumer/consumer-group.js +0 -131
  106. package/dist/src/consumer/consumer.js +0 -103
  107. package/dist/src/consumer/metadata.js +0 -52
  108. package/dist/src/consumer/offset-manager.js +0 -23
  109. package/dist/src/index.js +0 -19
  110. package/dist/src/producer/producer.js +0 -84
  111. package/dist/src/request-handler.js +0 -57
  112. package/dist/src/request-handler.test.js +0 -321
  113. package/dist/src/types.js +0 -2
  114. package/dist/src/utils/api.js +0 -5
  115. package/dist/src/utils/decoder.js +0 -161
  116. package/dist/src/utils/encoder.js +0 -137
  117. package/dist/src/utils/error.js +0 -10
  118. package/dist/types.d.ts +0 -9
  119. package/dist/types.js +0 -2
  120. package/dist/utils/api.d.ts +0 -9
  121. package/dist/utils/api.js +0 -5
  122. package/dist/utils/debug.d.ts +0 -2
  123. package/dist/utils/debug.js +0 -11
  124. package/dist/utils/decoder.d.ts +0 -29
  125. package/dist/utils/decoder.js +0 -147
  126. package/dist/utils/delay.d.ts +0 -1
  127. package/dist/utils/delay.js +0 -5
  128. package/dist/utils/encoder.d.ts +0 -28
  129. package/dist/utils/encoder.js +0 -122
  130. package/dist/utils/error.d.ts +0 -11
  131. package/dist/utils/error.js +0 -27
  132. package/dist/utils/memo.d.ts +0 -1
  133. package/dist/utils/memo.js +0 -16
  134. package/dist/utils/retrier.d.ts +0 -10
  135. package/dist/utils/retrier.js +0 -22
  136. package/dist/utils/tracer.d.ts +0 -1
  137. package/dist/utils/tracer.js +0 -26
  138. package/examples/node_modules/.package-lock.json +0 -22
@@ -1,11 +0,0 @@
1
- export declare class KafkaTSError extends Error {
2
- constructor(message: string);
3
- }
4
- export declare class KafkaTSApiError<T = any> extends KafkaTSError {
5
- errorCode: number;
6
- errorMessage: string | null;
7
- response: T;
8
- constructor(errorCode: number, errorMessage: string | null, response: T);
9
- }
10
- export declare class ConnectionError extends KafkaTSError {
11
- }
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ConnectionError = exports.KafkaTSApiError = exports.KafkaTSError = void 0;
4
- const api_1 = require("../api");
5
- class KafkaTSError extends Error {
6
- constructor(message) {
7
- super(message);
8
- this.name = this.constructor.name;
9
- }
10
- }
11
- exports.KafkaTSError = KafkaTSError;
12
- class KafkaTSApiError extends KafkaTSError {
13
- errorCode;
14
- errorMessage;
15
- response;
16
- constructor(errorCode, errorMessage, response) {
17
- const [errorName] = Object.entries(api_1.API_ERROR).find(([, value]) => value === errorCode) ?? ["UNKNOWN"];
18
- super(`${errorName}${errorMessage ? `: ${errorMessage}` : ""}`);
19
- this.errorCode = errorCode;
20
- this.errorMessage = errorMessage;
21
- this.response = response;
22
- }
23
- }
24
- exports.KafkaTSApiError = KafkaTSApiError;
25
- class ConnectionError extends KafkaTSError {
26
- }
27
- exports.ConnectionError = ConnectionError;
@@ -1 +0,0 @@
1
- export declare const memo: <T extends (...args: any[]) => any>(fn: T) => (...args: Parameters<T>) => ReturnType<T>;
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.memo = void 0;
4
- const memo = (fn) => {
5
- const cache = {};
6
- return (...args) => {
7
- const key = JSON.stringify(args);
8
- if (cache[key]) {
9
- return cache[key];
10
- }
11
- const result = fn(...args);
12
- cache[key] = result;
13
- return result;
14
- };
15
- };
16
- exports.memo = memo;
@@ -1,10 +0,0 @@
1
- export type Retrier = (func: () => unknown) => Promise<void>;
2
- export declare const createExponentialBackoffRetrier: (options: {
3
- onFailure?: (error: unknown) => Promise<void>;
4
- maxRetries?: number;
5
- initialDelayMs?: number;
6
- maxDelayMs?: number;
7
- multiplier?: number;
8
- retry?: number;
9
- }) => Retrier;
10
- export declare const defaultRetrier: Retrier;
@@ -1,22 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.defaultRetrier = exports.createExponentialBackoffRetrier = void 0;
4
- const delay_1 = require("./delay");
5
- const createExponentialBackoffRetrier = (options) => async (func) => {
6
- try {
7
- await func();
8
- }
9
- catch (error) {
10
- const { retry = 0, maxRetries = 3, onFailure = (error) => {
11
- throw error;
12
- }, initialDelayMs = 100, maxDelayMs = 3000, multiplier = 2, } = options;
13
- const isMaxRetriesExceeded = retry > maxRetries;
14
- if (isMaxRetriesExceeded)
15
- return onFailure(error);
16
- const delayMs = Math.min(maxDelayMs, initialDelayMs * multiplier ** retry);
17
- await (0, delay_1.delay)(delayMs);
18
- return (0, exports.createExponentialBackoffRetrier)({ ...options, retry: retry + 1 })(func);
19
- }
20
- };
21
- exports.createExponentialBackoffRetrier = createExponentialBackoffRetrier;
22
- exports.defaultRetrier = (0, exports.createExponentialBackoffRetrier)({});
@@ -1 +0,0 @@
1
- export declare const trace: (fn?: (...args: any[]) => Record<string, unknown> | undefined) => (target: any, propertyKey: string, descriptor: PropertyDescriptor) => void;
@@ -1,26 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.trace = void 0;
4
- const debug_1 = require("./debug");
5
- const trace = (fn) => (target, propertyKey, descriptor) => {
6
- if (!process.env.DEBUG?.includes("kafkats"))
7
- return;
8
- const original = descriptor.value;
9
- descriptor.value = function (...args) {
10
- const startTime = Date.now();
11
- const metadata = fn?.(...args);
12
- const onEnd = (result) => {
13
- console.log(`[${propertyKey}] +${Date.now() - startTime}ms ${JSON.stringify({ ...metadata, result }, debug_1.serializer)}`);
14
- return result;
15
- };
16
- const result = original.apply(this, args);
17
- if (result instanceof Promise) {
18
- return result.then(onEnd);
19
- }
20
- else {
21
- onEnd(result);
22
- return result;
23
- }
24
- };
25
- };
26
- exports.trace = trace;
@@ -1,22 +0,0 @@
1
- {
2
- "name": "examples",
3
- "version": "1.0.0",
4
- "lockfileVersion": 3,
5
- "requires": true,
6
- "packages": {
7
- "..": {
8
- "version": "1.0.0",
9
- "license": "MIT",
10
- "devDependencies": {
11
- "@types/node": "^20.12.12",
12
- "prettier": "^3.2.5",
13
- "typescript": "^5.4.5",
14
- "vitest": "^1.6.0"
15
- }
16
- },
17
- "node_modules/kafkats": {
18
- "resolved": "..",
19
- "link": true
20
- }
21
- }
22
- }