bytekit 1.0.20 → 1.0.22

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 (107) hide show
  1. package/bin/{sutils.js → bytekit.js} +2 -4
  2. package/dist/cli/index.d.ts +3 -0
  3. package/dist/cli/index.d.ts.map +1 -1
  4. package/dist/cli/index.js +104 -474
  5. package/dist/cli/index.js.map +1 -1
  6. package/dist/cli/swagger-generator.d.ts +9 -0
  7. package/dist/cli/swagger-generator.d.ts.map +1 -0
  8. package/dist/cli/swagger-generator.js +149 -0
  9. package/dist/cli/swagger-generator.js.map +1 -0
  10. package/dist/cli/type-generator.d.ts +1 -0
  11. package/dist/cli/type-generator.d.ts.map +1 -1
  12. package/dist/cli/type-generator.js +2 -1
  13. package/dist/cli/type-generator.js.map +1 -1
  14. package/dist/utils/async/allSettled.d.ts +27 -0
  15. package/dist/utils/async/allSettled.d.ts.map +1 -0
  16. package/dist/utils/async/allSettled.js +45 -0
  17. package/dist/utils/async/allSettled.js.map +1 -0
  18. package/dist/utils/async/debounce.d.ts +24 -0
  19. package/dist/utils/async/debounce.d.ts.map +1 -0
  20. package/dist/utils/async/debounce.js +138 -0
  21. package/dist/utils/async/debounce.js.map +1 -0
  22. package/dist/utils/async/errors.d.ts +22 -0
  23. package/dist/utils/async/errors.d.ts.map +1 -0
  24. package/dist/utils/async/errors.js +58 -0
  25. package/dist/utils/async/errors.js.map +1 -0
  26. package/dist/utils/async/index.d.ts +19 -0
  27. package/dist/utils/async/index.d.ts.map +1 -0
  28. package/dist/utils/async/index.js +20 -0
  29. package/dist/utils/async/index.js.map +1 -0
  30. package/dist/utils/async/parallel.d.ts +24 -0
  31. package/dist/utils/async/parallel.d.ts.map +1 -0
  32. package/dist/utils/async/parallel.js +98 -0
  33. package/dist/utils/async/parallel.js.map +1 -0
  34. package/dist/utils/async/race.d.ts +37 -0
  35. package/dist/utils/async/race.d.ts.map +1 -0
  36. package/dist/utils/async/race.js +69 -0
  37. package/dist/utils/async/race.js.map +1 -0
  38. package/dist/utils/async/retry.d.ts +34 -0
  39. package/dist/utils/async/retry.d.ts.map +1 -0
  40. package/dist/utils/async/retry.js +118 -0
  41. package/dist/utils/async/retry.js.map +1 -0
  42. package/dist/utils/async/sequential.d.ts +28 -0
  43. package/dist/utils/async/sequential.d.ts.map +1 -0
  44. package/dist/utils/async/sequential.js +66 -0
  45. package/dist/utils/async/sequential.js.map +1 -0
  46. package/dist/utils/async/sleep.d.ts +28 -0
  47. package/dist/utils/async/sleep.d.ts.map +1 -0
  48. package/dist/utils/async/sleep.js +64 -0
  49. package/dist/utils/async/sleep.js.map +1 -0
  50. package/dist/utils/async/throttle.d.ts +24 -0
  51. package/dist/utils/async/throttle.d.ts.map +1 -0
  52. package/dist/utils/async/throttle.js +118 -0
  53. package/dist/utils/async/throttle.js.map +1 -0
  54. package/dist/utils/async/timeout.d.ts +45 -0
  55. package/dist/utils/async/timeout.d.ts.map +1 -0
  56. package/dist/utils/async/timeout.js +75 -0
  57. package/dist/utils/async/timeout.js.map +1 -0
  58. package/dist/utils/async/types.d.ts +105 -0
  59. package/dist/utils/async/types.d.ts.map +1 -0
  60. package/dist/utils/async/types.js +5 -0
  61. package/dist/utils/async/types.js.map +1 -0
  62. package/dist/utils/core/ApiClient.d.ts.map +1 -1
  63. package/dist/utils/core/ApiClient.js +28 -10
  64. package/dist/utils/core/ApiClient.js.map +1 -1
  65. package/dist/utils/core/Logger.js.map +1 -1
  66. package/dist/utils/core/Profiler.d.ts +3 -1
  67. package/dist/utils/core/Profiler.d.ts.map +1 -1
  68. package/dist/utils/core/Profiler.js +17 -2
  69. package/dist/utils/core/Profiler.js.map +1 -1
  70. package/dist/utils/core/QueryClient.d.ts.map +1 -1
  71. package/dist/utils/core/QueryClient.js +0 -2
  72. package/dist/utils/core/QueryClient.js.map +1 -1
  73. package/dist/utils/core/QueryState.d.ts.map +1 -1
  74. package/dist/utils/core/QueryState.js.map +1 -1
  75. package/dist/utils/core/RetryPolicy.d.ts +7 -0
  76. package/dist/utils/core/RetryPolicy.d.ts.map +1 -1
  77. package/dist/utils/core/RetryPolicy.js +9 -0
  78. package/dist/utils/core/RetryPolicy.js.map +1 -1
  79. package/dist/utils/helpers/CompressionUtils.js +1 -1
  80. package/dist/utils/helpers/CompressionUtils.js.map +1 -1
  81. package/dist/utils/helpers/CryptoUtils.d.ts.map +1 -1
  82. package/dist/utils/helpers/CryptoUtils.js +13 -2
  83. package/dist/utils/helpers/CryptoUtils.js.map +1 -1
  84. package/dist/utils/helpers/DateUtils.d.ts.map +1 -1
  85. package/dist/utils/helpers/DateUtils.js +1 -1
  86. package/dist/utils/helpers/DateUtils.js.map +1 -1
  87. package/dist/utils/helpers/EnvManager.d.ts.map +1 -1
  88. package/dist/utils/helpers/EnvManager.js.map +1 -1
  89. package/dist/utils/helpers/FormUtils.d.ts +14 -0
  90. package/dist/utils/helpers/FormUtils.d.ts.map +1 -1
  91. package/dist/utils/helpers/FormUtils.js +24 -0
  92. package/dist/utils/helpers/FormUtils.js.map +1 -1
  93. package/dist/utils/helpers/ObjectUtils.d.ts +2 -2
  94. package/dist/utils/helpers/ObjectUtils.d.ts.map +1 -1
  95. package/dist/utils/helpers/ObjectUtils.js +4 -0
  96. package/dist/utils/helpers/ObjectUtils.js.map +1 -1
  97. package/dist/utils/helpers/PaginationHelper.js +6 -6
  98. package/dist/utils/helpers/PaginationHelper.js.map +1 -1
  99. package/dist/utils/helpers/Signal.d.ts.map +1 -1
  100. package/dist/utils/helpers/Signal.js.map +1 -1
  101. package/dist/utils/helpers/WebSocketHelper.d.ts.map +1 -1
  102. package/dist/utils/helpers/WebSocketHelper.js.map +1 -1
  103. package/dist/utils/helpers/index.d.ts +1 -0
  104. package/dist/utils/helpers/index.d.ts.map +1 -1
  105. package/dist/utils/helpers/index.js +1 -0
  106. package/dist/utils/helpers/index.js.map +1 -1
  107. package/package.json +10 -7
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export interface SwaggerOptions {
2
+ url: string;
3
+ output?: string;
4
+ }
5
+ /**
6
+ * Generate TypeScript interfaces from an OpenAPI/Swagger specification
7
+ */
8
+ export declare function generateFromSwagger(options: SwaggerOptions): Promise<void>;
9
+ //# sourceMappingURL=swagger-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"swagger-generator.d.ts","sourceRoot":"","sources":["../../src/cli/swagger-generator.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,cAAc;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACrC,OAAO,EAAE,cAAc,GACxB,OAAO,CAAC,IAAI,CAAC,CAgGf"}
@@ -0,0 +1,149 @@
1
+ import fs from "node:fs/promises";
2
+ import path from "node:path";
3
+ /**
4
+ * Generate TypeScript interfaces from an OpenAPI/Swagger specification
5
+ */
6
+ export async function generateFromSwagger(options) {
7
+ const { url, output = "src/types/api-docs.ts" } = options;
8
+ console.log(`\n📖 Attempting to resolve Swagger/OpenAPI spec from ${url}...`);
9
+ try {
10
+ let spec;
11
+ const response = await fetch(url);
12
+ if (!response.ok) {
13
+ throw new Error(`HTTP ${response.status}: ${response.statusText}`);
14
+ }
15
+ const contentType = response.headers.get("content-type") || "";
16
+ // If it's HTML (likely Swagger UI), try to guess the JSON location
17
+ if (contentType.includes("text/html")) {
18
+ console.log("🔍 URL looks like a documentation page, trying to find spec JSON...");
19
+ // Try to find the spec by replacing /docs or adding common paths
20
+ const baseUrl = url
21
+ .replace(/\/docs\/?$/, "")
22
+ .replace(/\/swagger-ui\/?$/, "");
23
+ const commonPaths = [
24
+ "/openapi.json",
25
+ "/swagger.json",
26
+ "/v2/api-docs",
27
+ "/api-docs",
28
+ ];
29
+ let found = false;
30
+ for (const p of commonPaths) {
31
+ const tryUrl = baseUrl.endsWith("/")
32
+ ? `${baseUrl}${p.slice(1)}`
33
+ : `${baseUrl}${p}`;
34
+ try {
35
+ const tryRes = await fetch(tryUrl);
36
+ if (tryRes.ok &&
37
+ (tryRes.headers.get("content-type") || "").includes("json")) {
38
+ console.log(`✨ Found spec at: ${tryUrl}`);
39
+ spec = await tryRes.json();
40
+ found = true;
41
+ break;
42
+ }
43
+ }
44
+ catch {
45
+ continue;
46
+ }
47
+ }
48
+ if (!found) {
49
+ throw new Error("Could not automatically find the OpenAPI/Swagger JSON from the documentation page. Please provide the direct JSON URL.");
50
+ }
51
+ }
52
+ else {
53
+ spec = await response.json();
54
+ }
55
+ const schemas = spec.components?.schemas || spec.definitions || {};
56
+ if (Object.keys(schemas).length === 0) {
57
+ console.warn("⚠️ No schemas or definitions found in the specification.");
58
+ return;
59
+ }
60
+ let typeDefinitions = `/**\n * Auto-generated types from Swagger/OpenAPI\n * Generated at ${new Date().toISOString()}\n */\n\n`;
61
+ for (const [name, schema] of Object.entries(schemas)) {
62
+ typeDefinitions += generateInterface(name, schema) + "\n\n";
63
+ }
64
+ const outputPath = path.join(process.cwd(), output);
65
+ const outputDir = path.dirname(outputPath);
66
+ await fs.mkdir(outputDir, { recursive: true });
67
+ await fs.writeFile(outputPath, typeDefinitions, "utf8");
68
+ console.log(`✅ Successfully generated ${Object.keys(schemas).length} types!`);
69
+ console.log(`📝 Output: ${outputPath}\n`);
70
+ }
71
+ catch (error) {
72
+ const message = error instanceof Error ? error.message : String(error);
73
+ console.error(`❌ Swagger Error: ${message}`);
74
+ process.exit(1);
75
+ }
76
+ }
77
+ function generateInterface(name, schema) {
78
+ // Sanitize name (remove invalid characters)
79
+ const sanitizedName = name.replace(/[^a-zA-Z0-9]/g, "");
80
+ if (schema.type === "object" ||
81
+ schema.properties ||
82
+ schema.additionalProperties) {
83
+ if (schema.additionalProperties && !schema.properties) {
84
+ return `export type ${sanitizedName} = Record<string, ${mapOpenApiToTs(schema.additionalProperties)}>;`;
85
+ }
86
+ const properties = schema.properties || {};
87
+ const required = schema.required || [];
88
+ const props = Object.entries(properties)
89
+ .map(([propName, propSchema]) => {
90
+ const isRequired = required.includes(propName);
91
+ const type = mapOpenApiToTs(propSchema);
92
+ return ` ${propName}${isRequired ? "" : "?"}: ${type};`;
93
+ })
94
+ .join("\n");
95
+ if (schema.additionalProperties) {
96
+ return `export interface ${sanitizedName} extends Record<string, ${mapOpenApiToTs(schema.additionalProperties)}> {\n${props}\n}`;
97
+ }
98
+ return `export interface ${sanitizedName} {\n${props}\n}`;
99
+ }
100
+ if (schema.enum) {
101
+ const values = schema.enum
102
+ .map((v) => (typeof v === "string" ? `'${v}'` : v))
103
+ .join(" | ");
104
+ return `export type ${sanitizedName} = ${values};`;
105
+ }
106
+ return `export type ${sanitizedName} = ${mapOpenApiToTs(schema)};`;
107
+ }
108
+ function mapOpenApiToTs(schema) {
109
+ if (!schema)
110
+ return "any";
111
+ // Handle references
112
+ if (schema.$ref) {
113
+ const refName = schema.$ref.split("/").pop();
114
+ return refName ? refName.replace(/[^a-zA-Z0-9]/g, "") : "any";
115
+ }
116
+ // Handle basic types
117
+ switch (schema.type) {
118
+ case "string":
119
+ if (schema.format === "date" || schema.format === "date-time")
120
+ return "string | Date";
121
+ return "string";
122
+ case "integer":
123
+ case "number":
124
+ return "number";
125
+ case "boolean":
126
+ return "boolean";
127
+ case "array": {
128
+ const itemType = mapOpenApiToTs(schema.items);
129
+ return `${itemType}[]`;
130
+ }
131
+ case "object":
132
+ if (schema.additionalProperties) {
133
+ return `Record<string, ${mapOpenApiToTs(schema.additionalProperties)}>`;
134
+ }
135
+ return "Record<string, any>";
136
+ default:
137
+ // Handle combinations (oneOf, anyOf, allOf)
138
+ if (schema.oneOf || schema.anyOf) {
139
+ const types = (schema.oneOf || schema.anyOf).map((s) => mapOpenApiToTs(s));
140
+ return `(${types.join(" | ")})`;
141
+ }
142
+ if (schema.allOf) {
143
+ const types = schema.allOf.map((s) => mapOpenApiToTs(s));
144
+ return `(${types.join(" & ")})`;
145
+ }
146
+ return "any";
147
+ }
148
+ }
149
+ //# sourceMappingURL=swagger-generator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"swagger-generator.js","sourceRoot":"","sources":["../../src/cli/swagger-generator.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ export interface TypeGeneratorOptions {
4
4
  output?: string;
5
5
  name?: string;
6
6
  headers?: Record<string, string>;
7
+ body?: string;
7
8
  }
8
9
  /**
9
10
  * Generate TypeScript types from API response
@@ -1 +1 @@
1
- {"version":3,"file":"type-generator.d.ts","sourceRoot":"","sources":["../../src/cli/type-generator.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,oBAAoB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;IACrD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAC3C,OAAO,EAAE,oBAAoB,GAC9B,OAAO,CAAC,IAAI,CAAC,CAyCf"}
1
+ {"version":3,"file":"type-generator.d.ts","sourceRoot":"","sources":["../../src/cli/type-generator.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,oBAAoB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;IACrD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAC3C,OAAO,EAAE,oBAAoB,GAC9B,OAAO,CAAC,IAAI,CAAC,CA2Cf"}
@@ -4,7 +4,7 @@ import path from "node:path";
4
4
  * Generate TypeScript types from API response
5
5
  */
6
6
  export async function generateTypesFromEndpoint(options) {
7
- const { endpoint, method = "GET", output = "types.ts", name = "ApiResponse", headers = {}, } = options;
7
+ const { endpoint, method = "GET", output = "types.ts", name = "ApiResponse", headers = {}, body, } = options;
8
8
  console.log(`\n📡 Fetching ${method} ${endpoint}...`);
9
9
  try {
10
10
  const response = await fetch(endpoint, {
@@ -13,6 +13,7 @@ export async function generateTypesFromEndpoint(options) {
13
13
  "Content-Type": "application/json",
14
14
  ...headers,
15
15
  },
16
+ body: body ? body : undefined,
16
17
  });
17
18
  if (!response.ok) {
18
19
  throw new Error(`HTTP ${response.status}: ${response.statusText}`);
@@ -1 +1 @@
1
- {"version":3,"file":"type-generator.js","sourceRoot":"","sources":["../../src/cli/type-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type-generator.js","sourceRoot":"","sources":["../../src/cli/type-generator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import type { AllSettledResult } from "./types.js";
2
+ /**
3
+ * Better handling of Promise.allSettled results
4
+ *
5
+ * Wraps native Promise.allSettled to provide a more convenient API
6
+ * that separates fulfilled and rejected results into separate arrays,
7
+ * each with the original index for traceability.
8
+ *
9
+ * @template T - The type of values in the promises
10
+ * @param promises - Array of promises to settle
11
+ * @returns Promise that resolves with separated fulfilled and rejected results
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * const promises = [
16
+ * Promise.resolve(1),
17
+ * Promise.reject(new Error('failed')),
18
+ * Promise.resolve(3)
19
+ * ];
20
+ *
21
+ * const result = await allSettled(promises);
22
+ * // result.fulfilled: [{ value: 1, index: 0 }, { value: 3, index: 2 }]
23
+ * // result.rejected: [{ reason: Error('failed'), index: 1 }]
24
+ * ```
25
+ */
26
+ export declare function allSettled<T>(promises: Array<Promise<T>>): Promise<AllSettledResult<T>>;
27
+ //# sourceMappingURL=allSettled.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"allSettled.d.ts","sourceRoot":"","sources":["../../../src/utils/async/allSettled.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,UAAU,CAAC,CAAC,EAC9B,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAC5B,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAsB9B"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Better handling of Promise.allSettled results
3
+ *
4
+ * Wraps native Promise.allSettled to provide a more convenient API
5
+ * that separates fulfilled and rejected results into separate arrays,
6
+ * each with the original index for traceability.
7
+ *
8
+ * @template T - The type of values in the promises
9
+ * @param promises - Array of promises to settle
10
+ * @returns Promise that resolves with separated fulfilled and rejected results
11
+ *
12
+ * @example
13
+ * ```typescript
14
+ * const promises = [
15
+ * Promise.resolve(1),
16
+ * Promise.reject(new Error('failed')),
17
+ * Promise.resolve(3)
18
+ * ];
19
+ *
20
+ * const result = await allSettled(promises);
21
+ * // result.fulfilled: [{ value: 1, index: 0 }, { value: 3, index: 2 }]
22
+ * // result.rejected: [{ reason: Error('failed'), index: 1 }]
23
+ * ```
24
+ */
25
+ export async function allSettled(promises) {
26
+ // Validate input
27
+ if (!Array.isArray(promises)) {
28
+ throw new TypeError("Expected an array of promises");
29
+ }
30
+ // Use native Promise.allSettled to wait for all promises to settle
31
+ const results = await Promise.allSettled(promises);
32
+ // Separate fulfilled and rejected results with original indices
33
+ const fulfilled = [];
34
+ const rejected = [];
35
+ results.forEach((result, index) => {
36
+ if (result.status === "fulfilled") {
37
+ fulfilled.push({ value: result.value, index });
38
+ }
39
+ else {
40
+ rejected.push({ reason: result.reason, index });
41
+ }
42
+ });
43
+ return { fulfilled, rejected };
44
+ }
45
+ //# sourceMappingURL=allSettled.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"allSettled.js","sourceRoot":"","sources":["../../../src/utils/async/allSettled.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC5B,QAA2B;IAE3B,iBAAiB;IACjB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,SAAS,CAAC,+BAA+B,CAAC,CAAC;IACzD,CAAC;IAED,mEAAmE;IACnE,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAEnD,gEAAgE;IAChE,MAAM,SAAS,GAAuC,EAAE,CAAC;IACzD,MAAM,QAAQ,GAA8C,EAAE,CAAC;IAE/D,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QAC9B,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAChC,SAAS,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACJ,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QACpD,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;AACnC,CAAC"}
@@ -0,0 +1,24 @@
1
+ import type { AsyncFunction, DebounceOptions, DebouncedFunction } from "./types.js";
2
+ /**
3
+ * Creates a debounced version of an async function that delays execution until after
4
+ * the specified delay has elapsed since the last call.
5
+ *
6
+ * @template TArgs - The argument types of the function
7
+ * @template TReturn - The return type of the function
8
+ * @param fn - The async function to debounce
9
+ * @param delay - The delay in milliseconds
10
+ * @param options - Optional configuration
11
+ * @returns A debounced version of the function with cancel and flush methods
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * const debouncedSearch = debounceAsync(searchAPI, 300);
16
+ *
17
+ * // Only the last call within 300ms will execute
18
+ * debouncedSearch('query1');
19
+ * debouncedSearch('query2');
20
+ * debouncedSearch('query3'); // Only this executes after 300ms
21
+ * ```
22
+ */
23
+ export declare function debounceAsync<TArgs extends any[], TReturn>(fn: AsyncFunction<TArgs, TReturn>, delay: number, options?: DebounceOptions): DebouncedFunction<TArgs, TReturn>;
24
+ //# sourceMappingURL=debounce.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debounce.d.ts","sourceRoot":"","sources":["../../../src/utils/async/debounce.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,aAAa,EACb,eAAe,EACf,iBAAiB,EACpB,MAAM,YAAY,CAAC;AAEpB;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,aAAa,CAAC,KAAK,SAAS,GAAG,EAAE,EAAE,OAAO,EACtD,EAAE,EAAE,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,EACjC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,eAAoB,GAC9B,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,CAwInC"}
@@ -0,0 +1,138 @@
1
+ /**
2
+ * Creates a debounced version of an async function that delays execution until after
3
+ * the specified delay has elapsed since the last call.
4
+ *
5
+ * @template TArgs - The argument types of the function
6
+ * @template TReturn - The return type of the function
7
+ * @param fn - The async function to debounce
8
+ * @param delay - The delay in milliseconds
9
+ * @param options - Optional configuration
10
+ * @returns A debounced version of the function with cancel and flush methods
11
+ *
12
+ * @example
13
+ * ```typescript
14
+ * const debouncedSearch = debounceAsync(searchAPI, 300);
15
+ *
16
+ * // Only the last call within 300ms will execute
17
+ * debouncedSearch('query1');
18
+ * debouncedSearch('query2');
19
+ * debouncedSearch('query3'); // Only this executes after 300ms
20
+ * ```
21
+ */
22
+ export function debounceAsync(fn, delay, options = {}) {
23
+ // Validate inputs
24
+ if (typeof fn !== "function") {
25
+ throw new TypeError("First argument must be a function");
26
+ }
27
+ if (typeof delay !== "number" || delay < 0) {
28
+ throw new TypeError("Delay must be a non-negative number");
29
+ }
30
+ const { leading = false, trailing = options.leading === true ? false : true, } = options;
31
+ let timeoutId = null;
32
+ let pendingArgs = null;
33
+ let pendingResolve = null;
34
+ let pendingReject = null;
35
+ let lastCallTime = 0;
36
+ /**
37
+ * Executes the function with the pending arguments
38
+ */
39
+ const execute = async () => {
40
+ if (pendingArgs === null)
41
+ return;
42
+ const args = pendingArgs;
43
+ const resolve = pendingResolve;
44
+ const reject = pendingReject;
45
+ // Clear pending state
46
+ pendingArgs = null;
47
+ pendingResolve = null;
48
+ pendingReject = null;
49
+ try {
50
+ const result = await fn(...args);
51
+ resolve?.(result);
52
+ }
53
+ catch (error) {
54
+ reject?.(error);
55
+ }
56
+ };
57
+ /**
58
+ * The debounced function
59
+ */
60
+ const debounced = function (...args) {
61
+ const now = Date.now();
62
+ const isInvoking = leading && (now - lastCallTime >= delay || lastCallTime === 0);
63
+ lastCallTime = now;
64
+ pendingArgs = args;
65
+ // Create a new promise for this call
66
+ const promise = new Promise((resolve, reject) => {
67
+ // Reject previous pending promise
68
+ if (pendingResolve !== null) {
69
+ pendingReject?.(new Error("Debounced call cancelled"));
70
+ }
71
+ pendingResolve = resolve;
72
+ pendingReject = reject;
73
+ });
74
+ // Clear existing timeout
75
+ if (timeoutId !== null) {
76
+ clearTimeout(timeoutId);
77
+ timeoutId = null;
78
+ }
79
+ if (isInvoking) {
80
+ execute();
81
+ }
82
+ else if (!trailing) {
83
+ // If not invoking and trailing is disabled, we must still handle the promise
84
+ // and we should probably reject it as it won't be executed.
85
+ pendingReject?.(new Error("Debounced call cancelled"));
86
+ pendingResolve = null;
87
+ pendingReject = null;
88
+ }
89
+ // Schedule execution for trailing edge if allowed
90
+ if (trailing) {
91
+ timeoutId = setTimeout(() => {
92
+ timeoutId = null;
93
+ execute();
94
+ }, delay);
95
+ }
96
+ else {
97
+ // If no trailing edge, we still need a timeout to reset the leading ability after delay
98
+ timeoutId = setTimeout(() => {
99
+ timeoutId = null;
100
+ }, delay);
101
+ }
102
+ return promise;
103
+ };
104
+ /**
105
+ * Cancels any pending execution and rejects pending promises
106
+ */
107
+ debounced.cancel = () => {
108
+ if (timeoutId !== null) {
109
+ clearTimeout(timeoutId);
110
+ timeoutId = null;
111
+ }
112
+ if (pendingReject !== null) {
113
+ pendingReject(new Error("Debounced call cancelled"));
114
+ pendingResolve = null;
115
+ pendingReject = null;
116
+ }
117
+ pendingArgs = null;
118
+ lastCallTime = 0;
119
+ };
120
+ /**
121
+ * Immediately executes any pending call and returns its result
122
+ */
123
+ debounced.flush = async () => {
124
+ if (timeoutId !== null) {
125
+ clearTimeout(timeoutId);
126
+ timeoutId = null;
127
+ }
128
+ if (pendingArgs !== null) {
129
+ lastCallTime = 0;
130
+ await execute();
131
+ // The execute function already resolved/rejected the promise
132
+ return undefined;
133
+ }
134
+ return undefined;
135
+ };
136
+ return debounced;
137
+ }
138
+ //# sourceMappingURL=debounce.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debounce.js","sourceRoot":"","sources":["../../../src/utils/async/debounce.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Custom error class for timeout-related failures
3
+ */
4
+ export declare class TimeoutError extends Error {
5
+ readonly timeout: number;
6
+ constructor(message: string, timeout: number);
7
+ }
8
+ /**
9
+ * Custom error class for abort-related failures
10
+ */
11
+ export declare class AbortError extends Error {
12
+ constructor(message?: string);
13
+ }
14
+ /**
15
+ * Custom error class for retry-related failures
16
+ */
17
+ export declare class RetryError extends Error {
18
+ readonly attempts: number;
19
+ readonly lastError: unknown;
20
+ constructor(message: string, attempts: number, lastError: unknown);
21
+ }
22
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/utils/async/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,YAAa,SAAQ,KAAK;aAGf,OAAO,EAAE,MAAM;gBAD/B,OAAO,EAAE,MAAM,EACC,OAAO,EAAE,MAAM;CAStC;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,KAAK;gBACrB,OAAO,GAAE,MAA4B;CAQpD;AAED;;GAEG;AACH,qBAAa,UAAW,SAAQ,KAAK;aAGb,QAAQ,EAAE,MAAM;aAChB,SAAS,EAAE,OAAO;gBAFlC,OAAO,EAAE,MAAM,EACC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,OAAO;CASzC"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Custom error class for timeout-related failures
3
+ */
4
+ export class TimeoutError extends Error {
5
+ constructor(message, timeout) {
6
+ super(message);
7
+ Object.defineProperty(this, "timeout", {
8
+ enumerable: true,
9
+ configurable: true,
10
+ writable: true,
11
+ value: timeout
12
+ });
13
+ this.name = "TimeoutError";
14
+ // Maintains proper stack trace for where our error was thrown (only available on V8)
15
+ if (Error.captureStackTrace) {
16
+ Error.captureStackTrace(this, TimeoutError);
17
+ }
18
+ }
19
+ }
20
+ /**
21
+ * Custom error class for abort-related failures
22
+ */
23
+ export class AbortError extends Error {
24
+ constructor(message = "Operation aborted") {
25
+ super(message);
26
+ this.name = "AbortError";
27
+ // Maintains proper stack trace for where our error was thrown (only available on V8)
28
+ if (Error.captureStackTrace) {
29
+ Error.captureStackTrace(this, AbortError);
30
+ }
31
+ }
32
+ }
33
+ /**
34
+ * Custom error class for retry-related failures
35
+ */
36
+ export class RetryError extends Error {
37
+ constructor(message, attempts, lastError) {
38
+ super(message);
39
+ Object.defineProperty(this, "attempts", {
40
+ enumerable: true,
41
+ configurable: true,
42
+ writable: true,
43
+ value: attempts
44
+ });
45
+ Object.defineProperty(this, "lastError", {
46
+ enumerable: true,
47
+ configurable: true,
48
+ writable: true,
49
+ value: lastError
50
+ });
51
+ this.name = "RetryError";
52
+ // Maintains proper stack trace for where our error was thrown (only available on V8)
53
+ if (Error.captureStackTrace) {
54
+ Error.captureStackTrace(this, RetryError);
55
+ }
56
+ }
57
+ }
58
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/utils/async/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,YAAa,SAAQ,KAAK;IACnC,YACI,OAAe,EACC,OAAe;QAE/B,KAAK,CAAC,OAAO,CAAC,CAAC;QAFf;;;;mBAAgB,OAAO;WAAQ;QAG/B,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;QAC3B,qFAAqF;QACrF,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC1B,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAChD,CAAC;IACL,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,UAAW,SAAQ,KAAK;IACjC,YAAY,UAAkB,mBAAmB;QAC7C,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACzB,qFAAqF;QACrF,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC1B,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAC9C,CAAC;IACL,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,OAAO,UAAW,SAAQ,KAAK;IACjC,YACI,OAAe,EACC,QAAgB,EAChB,SAAkB;QAElC,KAAK,CAAC,OAAO,CAAC,CAAC;QAHf;;;;mBAAgB,QAAQ;WAAQ;QAChC;;;;mBAAgB,SAAS;WAAS;QAGlC,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACzB,qFAAqF;QACrF,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC1B,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAC9C,CAAC;IACL,CAAC;CACJ"}