bytekit 1.0.30 → 2.0.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 (118) hide show
  1. package/README.md +58 -188
  2. package/dist/utils/core/ApiClient.d.ts +11 -10
  3. package/dist/utils/core/ApiClient.d.ts.map +1 -1
  4. package/dist/utils/core/ApiClient.js +17 -9
  5. package/dist/utils/core/ApiClient.js.map +1 -1
  6. package/dist/utils/core/SchemaAdapter.d.ts +35 -0
  7. package/dist/utils/core/SchemaAdapter.d.ts.map +1 -0
  8. package/dist/utils/core/SchemaAdapter.js +36 -0
  9. package/dist/utils/core/SchemaAdapter.js.map +1 -0
  10. package/dist/utils/core/index.d.ts +1 -1
  11. package/dist/utils/core/index.d.ts.map +1 -1
  12. package/dist/utils/core/index.js +1 -1
  13. package/dist/utils/core/index.js.map +1 -1
  14. package/dist/utils/helpers/QueryStringHelper.d.ts +11 -0
  15. package/dist/utils/helpers/QueryStringHelper.d.ts.map +1 -0
  16. package/dist/utils/helpers/QueryStringHelper.js +84 -0
  17. package/dist/utils/helpers/QueryStringHelper.js.map +1 -0
  18. package/dist/utils/helpers/UrlSlugHelper.d.ts +19 -0
  19. package/dist/utils/helpers/UrlSlugHelper.d.ts.map +1 -0
  20. package/dist/utils/helpers/UrlSlugHelper.js +27 -0
  21. package/dist/utils/helpers/UrlSlugHelper.js.map +1 -0
  22. package/dist/utils/helpers/index.d.ts +2 -13
  23. package/dist/utils/helpers/index.d.ts.map +1 -1
  24. package/dist/utils/helpers/index.js +2 -13
  25. package/dist/utils/helpers/index.js.map +1 -1
  26. package/dist/utils/index.d.ts +2 -8
  27. package/dist/utils/index.d.ts.map +1 -1
  28. package/dist/utils/index.js +2 -8
  29. package/dist/utils/index.js.map +1 -1
  30. package/package.json +14 -73
  31. package/dist/color-utils.d.ts +0 -2
  32. package/dist/color-utils.d.ts.map +0 -1
  33. package/dist/color-utils.js +0 -2
  34. package/dist/color-utils.js.map +0 -1
  35. package/dist/date-utils.d.ts +0 -2
  36. package/dist/date-utils.d.ts.map +0 -1
  37. package/dist/date-utils.js +0 -2
  38. package/dist/date-utils.js.map +0 -1
  39. package/dist/number-utils.d.ts +0 -2
  40. package/dist/number-utils.d.ts.map +0 -1
  41. package/dist/number-utils.js +0 -2
  42. package/dist/number-utils.js.map +0 -1
  43. package/dist/string-utils.d.ts +0 -2
  44. package/dist/string-utils.d.ts.map +0 -1
  45. package/dist/string-utils.js +0 -2
  46. package/dist/string-utils.js.map +0 -1
  47. package/dist/utils/core/BatchRequest.d.ts +0 -79
  48. package/dist/utils/core/BatchRequest.d.ts.map +0 -1
  49. package/dist/utils/core/BatchRequest.js +0 -152
  50. package/dist/utils/core/BatchRequest.js.map +0 -1
  51. package/dist/utils/core/QueryClient.d.ts +0 -145
  52. package/dist/utils/core/QueryClient.d.ts.map +0 -1
  53. package/dist/utils/core/QueryClient.js +0 -453
  54. package/dist/utils/core/QueryClient.js.map +0 -1
  55. package/dist/utils/core/QueryState.d.ts +0 -99
  56. package/dist/utils/core/QueryState.d.ts.map +0 -1
  57. package/dist/utils/core/QueryState.js +0 -65
  58. package/dist/utils/core/QueryState.js.map +0 -1
  59. package/dist/utils/helpers/ArrayUtils.d.ts +0 -134
  60. package/dist/utils/helpers/ArrayUtils.d.ts.map +0 -1
  61. package/dist/utils/helpers/ArrayUtils.js +0 -306
  62. package/dist/utils/helpers/ArrayUtils.js.map +0 -1
  63. package/dist/utils/helpers/ColorUtils.d.ts +0 -235
  64. package/dist/utils/helpers/ColorUtils.d.ts.map +0 -1
  65. package/dist/utils/helpers/ColorUtils.js +0 -598
  66. package/dist/utils/helpers/ColorUtils.js.map +0 -1
  67. package/dist/utils/helpers/DateUtils.d.ts +0 -36
  68. package/dist/utils/helpers/DateUtils.d.ts.map +0 -1
  69. package/dist/utils/helpers/DateUtils.js +0 -131
  70. package/dist/utils/helpers/DateUtils.js.map +0 -1
  71. package/dist/utils/helpers/FormUtils.d.ts +0 -176
  72. package/dist/utils/helpers/FormUtils.d.ts.map +0 -1
  73. package/dist/utils/helpers/FormUtils.js +0 -437
  74. package/dist/utils/helpers/FormUtils.js.map +0 -1
  75. package/dist/utils/helpers/HttpStatusHelper.d.ts +0 -82
  76. package/dist/utils/helpers/HttpStatusHelper.d.ts.map +0 -1
  77. package/dist/utils/helpers/HttpStatusHelper.js +0 -174
  78. package/dist/utils/helpers/HttpStatusHelper.js.map +0 -1
  79. package/dist/utils/helpers/NumberUtils.d.ts +0 -230
  80. package/dist/utils/helpers/NumberUtils.d.ts.map +0 -1
  81. package/dist/utils/helpers/NumberUtils.js +0 -564
  82. package/dist/utils/helpers/NumberUtils.js.map +0 -1
  83. package/dist/utils/helpers/ObjectUtils.d.ts +0 -102
  84. package/dist/utils/helpers/ObjectUtils.d.ts.map +0 -1
  85. package/dist/utils/helpers/ObjectUtils.js +0 -301
  86. package/dist/utils/helpers/ObjectUtils.js.map +0 -1
  87. package/dist/utils/helpers/PaginationHelper.d.ts +0 -127
  88. package/dist/utils/helpers/PaginationHelper.d.ts.map +0 -1
  89. package/dist/utils/helpers/PaginationHelper.js +0 -295
  90. package/dist/utils/helpers/PaginationHelper.js.map +0 -1
  91. package/dist/utils/helpers/Signal.d.ts +0 -92
  92. package/dist/utils/helpers/Signal.d.ts.map +0 -1
  93. package/dist/utils/helpers/Signal.js +0 -243
  94. package/dist/utils/helpers/Signal.js.map +0 -1
  95. package/dist/utils/helpers/StringUtils.d.ts +0 -46
  96. package/dist/utils/helpers/StringUtils.d.ts.map +0 -1
  97. package/dist/utils/helpers/StringUtils.js +0 -228
  98. package/dist/utils/helpers/StringUtils.js.map +0 -1
  99. package/dist/utils/helpers/TimeUtils.d.ts +0 -87
  100. package/dist/utils/helpers/TimeUtils.d.ts.map +0 -1
  101. package/dist/utils/helpers/TimeUtils.js +0 -234
  102. package/dist/utils/helpers/TimeUtils.js.map +0 -1
  103. package/dist/utils/helpers/UrlBuilder.d.ts +0 -79
  104. package/dist/utils/helpers/UrlBuilder.d.ts.map +0 -1
  105. package/dist/utils/helpers/UrlBuilder.js +0 -161
  106. package/dist/utils/helpers/UrlBuilder.js.map +0 -1
  107. package/dist/utils/helpers/Validator.d.ts +0 -31
  108. package/dist/utils/helpers/Validator.d.ts.map +0 -1
  109. package/dist/utils/helpers/Validator.js +0 -175
  110. package/dist/utils/helpers/Validator.js.map +0 -1
  111. package/dist/utils/helpers/useSignal.d.ts +0 -11
  112. package/dist/utils/helpers/useSignal.d.ts.map +0 -1
  113. package/dist/utils/helpers/useSignal.js +0 -11
  114. package/dist/utils/helpers/useSignal.js.map +0 -1
  115. package/dist/validator.d.ts +0 -2
  116. package/dist/validator.d.ts.map +0 -1
  117. package/dist/validator.js +0 -2
  118. package/dist/validator.js.map +0 -1
package/README.md CHANGED
@@ -2,8 +2,8 @@
2
2
 
3
3
  > **Previously known as:** `@sebamar88/utils` (v0.1.9 and earlier)
4
4
 
5
- **EN:** Modern TypeScript utilities: an isomorphic **ApiClient**, structured logging/profiling helpers, and ready-to-use modules (`DateUtils`, `StringUtils`, `StorageManager`, etc.).
6
- **ES:** Colección moderna de utilidades TypeScript: **ApiClient** isomórfico, logging/profiling estructurado y helpers listos (`DateUtils`, `StringUtils`, `StorageManager`, etc.).
5
+ **EN:** A lean, high-performance TypeScript toolkit focused on **Isomorphic HTTP Networking** and **Advanced Async Utilities**. Deep-zero dependencies.
6
+ **ES:** Un toolkit TypeScript ligero y de alto rendimiento enfocado en **Networking HTTP Isomórfico** y **Utilidades Asíncronas Avanzadas**. Cero dependencias.
7
7
 
8
8
  ## 📊 Status / Estado
9
9
 
@@ -14,22 +14,18 @@
14
14
  [![npm downloads](https://img.shields.io/npm/dm/bytekit.svg?style=flat-square)](https://www.npmjs.com/package/bytekit)
15
15
  [![Bundle Size](https://img.shields.io/bundlephobia/minzip/bytekit?style=flat-square&label=gzip%20size)](https://bundlephobia.com/package/bytekit)
16
16
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=flat-square)](https://opensource.org/licenses/MIT)
17
- [![Node.js Version](https://img.shields.io/node/v/bytekit.svg?style=flat-square)](https://nodejs.org)
18
- [![TypeScript](https://img.shields.io/badge/TypeScript-5.0+-blue.svg?style=flat-square)](https://www.typescriptlang.org/)
19
- [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](https://github.com/sebamar88/bytekit/blob/main/CONTRIBUTING.md)
20
17
 
21
18
  ---
22
19
 
23
20
  ## ✨ Highlights / Características
24
21
 
25
- - **EN:** Fully ESM with `.d.ts` definitions and tree-shakeable exports. **ES:** Build 100% ESM con tipos listos y exports tree-shakeable.
26
- - 🌐 **EN:** Works on Node.js 18+ and modern browsers (native fetch). **ES:** Compatible con Node.js 18+ y navegadores modernos (fetch nativo).
27
- - 🔁 **EN:** ApiClient with retries, circuit breaker, localized errors, and flexible options. **ES:** ApiClient con reintentos, circuit breaker, errores localizados y configuración flexible.
28
- - 🧩 **EN:** 28 helper modules (strings, dates, validators, env, storage, crypto, cache). **ES:** 28 módulos helpers (strings, fechas, validadores, env, storage, crypto, cache).
29
- - 🪵 **EN:** Structured logging/profiling: `createLogger`, `Profiler`, `withTiming`. **ES:** Logging/profiling estructurado: `createLogger`, `Profiler`, `withTiming`.
30
- - 🎯 **EN:** 95%+ test coverage with comprehensive test suite. **ES:** >95% de cobertura de tests con suite completa.
31
- - 📦 **EN:** True zero dependencies (uses native fetch). **ES:** Verdadero zero dependencies (usa fetch nativo).
32
- - ⚡ **EN:** Optimized for performance and small bundle size. **ES:** Optimizado para rendimiento y tamaño mínimo.
22
+ - 🌐 **Isomorphic ApiClient:** Works on Node.js 18+ and modern browsers (native fetch).
23
+ - 🛡️ **Schema Validation:** Built-in adapters for Zod and Valibot. Fully typed responses.
24
+ - 🔁 **HTTP Resilience:** Retries, Circuit Breaker, Rate Limiting, Request Cache, and Deduplication out of the box.
25
+ - **Async Toolkit:** A powerful set of tools for concurrency (`parallel`, `race`), timing (`sleep`, `timeout`), and execution control (`retry`, `debounce`, `throttle`).
26
+ - 📦 **Deep-Zero Dependencies:** No external runtime packages added to your bundle.
27
+ - 🪵 **Observability:** Structured logging and performance profiling modules.
28
+ - 🎯 **95%+ Test Coverage:** Rigorously tested core.
33
29
 
34
30
  ## 🚀 Quick Start / Inicio Rápido
35
31
 
@@ -43,202 +39,80 @@ pnpm add bytekit
43
39
  yarn add bytekit
44
40
  ```
45
41
 
46
- ### Global CLI Installation / Instalación CLI Global
47
-
48
- ```bash
49
- npm install -g bytekit
50
- # Then use / Luego usa:
51
- sutils create users
52
- sutils types https://api.example.com/users
53
- ```
54
-
55
- ### Basic Usage / Uso Básico
42
+ ### 1. HTTP Client with Schema Validation (Zod)
56
43
 
57
44
  ```ts
58
- import { ApiClient, createLogger, DateUtils, StringUtils } from "bytekit";
45
+ import { ApiClient } from "bytekit/api-client";
46
+ import { zodAdapter } from "bytekit/schema-adapter";
47
+ import { z } from "zod";
48
+
49
+ const UserSchema = z.object({
50
+ id: z.number(),
51
+ name: z.string(),
52
+ });
59
53
 
60
54
  const http = new ApiClient({
61
55
  baseUrl: "https://api.my-service.com",
62
- defaultHeaders: { "X-Team": "@sebamar88" },
63
- locale: "es",
64
- errorMessages: {
65
- es: { 418: "Soy una tetera ☕" },
66
- },
56
+ retryPolicy: { maxAttempts: 3 }, // Automatic retries
57
+ circuitBreaker: { failureThreshold: 5 } // Prevent cascading failures
67
58
  });
68
59
 
69
- const users = await http.get<{ id: string; name: string }[]>("/users");
70
-
71
- const logger = createLogger({ namespace: "users-service", level: "info" });
72
- logger.info("Users synced", { count: users.length });
73
-
74
- const slug = StringUtils.slugify("New Users – October 2024");
60
+ // The response is safely validated and typed as { id: number, name: string }
61
+ const user = await http.get("/users/1", {
62
+ validateResponse: zodAdapter(UserSchema)
63
+ });
75
64
  ```
76
65
 
77
- ### Modular Imports / Importaciones Modulares
66
+ ### 2. Async Toolkit
78
67
 
79
68
  ```ts
80
- // Import specific modules to reduce bundle size
81
- // Importa módulos específicos para reducir el tamaño del bundle
82
-
83
- // Core modules / Módulos core
84
- import { ApiClient } from "bytekit/api-client";
85
- import { Logger } from "bytekit/logger";
86
- import { RetryPolicy } from "bytekit/retry-policy";
87
-
88
- // Helper modules / Módulos helpers
89
- import { DateUtils } from "bytekit/date-utils";
90
- import { StringUtils } from "bytekit/string-utils";
91
- import { ArrayUtils } from "bytekit/array-utils";
92
- ```
93
-
94
- ## 🎯 Framework Support / Soporte de Frameworks
95
-
96
- **EN:** Works seamlessly with React, Vue, Svelte, Angular, Next.js, Nuxt, SvelteKit, and more.
97
- **ES:** Funciona perfectamente con React, Vue, Svelte, Angular, Next.js, Nuxt, SvelteKit y más.
98
-
99
- ### React Example / Ejemplo React
100
-
101
- ```jsx
102
- import { createApiClient } from "bytekit";
103
- import { useState, useEffect } from "react";
104
-
105
- function Users() {
106
- const client = createApiClient({ baseURL: "https://api.example.com" });
107
- const [users, setUsers] = useState([]);
108
-
109
- useEffect(() => {
110
- client.get("/users").then(setUsers);
111
- }, [client]);
112
-
113
- return (
114
- <div>
115
- {users.map((u) => (
116
- <div key={u.id}>{u.name}</div>
117
- ))}
118
- </div>
119
- );
120
- }
121
- ```
122
-
123
- **[📖 View More Framework Examples →](https://github.com/sebamar88/bytekit/wiki/Framework-Examples)**
124
-
125
- ## 📚 Complete Documentation / Documentación Completa
126
-
127
- **EN:** For detailed documentation of all 28 modules, visit our comprehensive GitHub Wiki.
128
- **ES:** Para documentación detallada de todos los 28 módulos, visita nuestra GitHub Wiki completa.
129
-
130
- ### 🔗 Quick Links by Category / Enlaces Rápidos por Categoría
131
-
132
- #### 🔧 Core Modules (9) - Essential functionality / Funcionalidad esencial
69
+ import { parallel, retry, sleep, debounceAsync } from "bytekit/async";
133
70
 
134
- - **[ApiClient](https://github.com/sebamar88/bytekit/wiki/ApiClient)** - Typed HTTP client with retries, localized errors, and custom fetch support
135
- - **[Logger](https://github.com/sebamar88/bytekit/wiki/Logger)** - Structured logger with levels, namespaces, and transports for Node/browser
136
- - **[Profiler](https://github.com/sebamar88/bytekit/wiki/Profiler)** - Performance monitoring utilities including `Profiler` class and `withTiming` wrapper
137
- - **[RetryPolicy](https://github.com/sebamar88/bytekit/wiki/RetryPolicy)** - RetryPolicy utilities and helpers
138
- - **[ResponseValidator](https://github.com/sebamar88/bytekit/wiki/ResponseValidator)** - ResponseValidator utilities and helpers
139
- - **[RequestCache](https://github.com/sebamar88/bytekit/wiki/RequestCache)** - RequestCache utilities and helpers
140
- - **[RateLimiter](https://github.com/sebamar88/bytekit/wiki/RateLimiter)** - RateLimiter utilities and helpers
141
- - **[RequestDeduplicator](https://github.com/sebamar88/bytekit/wiki/RequestDeduplicator)** - RequestDeduplicator utilities and helpers
142
- - **[ErrorBoundary](https://github.com/sebamar88/bytekit/wiki/ErrorBoundary)** - ErrorBoundary utilities and helpers
143
-
144
- #### 🛠️ Helper Modules (12) - Common utilities / Utilidades comunes
145
-
146
- - **[DateUtils](https://github.com/sebamar88/bytekit/wiki/DateUtils)** - Safe date parsing, manipulation, and formatting (locale or custom tokens like YYYY-MM-DD)
147
- - **[StringUtils](https://github.com/sebamar88/bytekit/wiki/StringUtils)** - Text processing: slugify, capitalize, mask, interpolate, and case conversions (pascalCase, camelCase, snakeCase, kebabCase)
148
- - **[Validator](https://github.com/sebamar88/bytekit/wiki/Validator)** - Validation utilities for emails, phones, CUIT/CUIL, CBU, and more
149
- - **[EnvManager](https://github.com/sebamar88/bytekit/wiki/EnvManager)** - EnvManager utilities and helpers
150
- - **[StorageUtils](https://github.com/sebamar88/bytekit/wiki/StorageUtils)** - StorageUtils utilities and helpers
151
- - **[FileUploadHelper](https://github.com/sebamar88/bytekit/wiki/FileUploadHelper)** - FileUploadHelper utilities and helpers
152
- - **[StreamingHelper](https://github.com/sebamar88/bytekit/wiki/StreamingHelper)** - StreamingHelper utilities and helpers
153
- - **[WebSocketHelper](https://github.com/sebamar88/bytekit/wiki/WebSocketHelper)** - WebSocketHelper utilities and helpers
154
- - **[ArrayUtils](https://github.com/sebamar88/bytekit/wiki/ArrayUtils)** - Array manipulation utilities: chunk, flatten, unique, shuffle, zip
155
- - **[ObjectUtils](https://github.com/sebamar88/bytekit/wiki/ObjectUtils)** - Object manipulation utilities: merge, pick, omit, flatten, groupBy
156
- - **[FormUtils](https://github.com/sebamar88/bytekit/wiki/FormUtils)** - FormUtils utilities and helpers
157
- - **[TimeUtils](https://github.com/sebamar88/bytekit/wiki/TimeUtils)** - TimeUtils utilities and helpers
158
-
159
- #### ⚡ Utility Modules (7) - Advanced features / Características avanzadas
160
-
161
- - **[EventEmitter](https://github.com/sebamar88/bytekit/wiki/EventEmitter)** - EventEmitter utilities and helpers
162
- - **[DiffUtils](https://github.com/sebamar88/bytekit/wiki/DiffUtils)** - DiffUtils utilities and helpers
163
- - **[PollingHelper](https://github.com/sebamar88/bytekit/wiki/PollingHelper)** - PollingHelper utilities and helpers
164
- - **[CryptoUtils](https://github.com/sebamar88/bytekit/wiki/CryptoUtils)** - Token/UUID generation, base64 encoding, hashing, and HMAC
165
- - **[PaginationHelper](https://github.com/sebamar88/bytekit/wiki/PaginationHelper)** - PaginationHelper utilities and helpers
166
- - **[CacheManager](https://github.com/sebamar88/bytekit/wiki/CacheManager)** - Multi-tier cache with TTL, LRU eviction, and statistics
167
- - **[CompressionUtils](https://github.com/sebamar88/bytekit/wiki/CompressionUtils)** - CompressionUtils utilities and helpers
168
-
169
- **[🏠 Browse Full Wiki Index →](https://github.com/sebamar88/bytekit/wiki)**
170
-
171
- ## 🌟 Popular Use Cases / Casos de Uso Populares
172
-
173
- ### HTTP Client with Retries / Cliente HTTP con Reintentos
174
-
175
- ```ts
176
- const api = new ApiClient({
177
- baseUrl: "https://api.example.com",
178
- retryPolicy: { maxAttempts: 3, initialDelayMs: 100 },
179
- circuitBreaker: { failureThreshold: 5 },
71
+ // Retry an async operation automatically
72
+ const data = await retry(fetchDataFromUnstableAPI, {
73
+ maxAttempts: 5,
74
+ delayMs: 1000,
75
+ backoff: "exponential"
180
76
  });
181
77
 
182
- const users = await api.get("/users");
183
- ```
184
-
185
- ### Structured Logging / Logging Estructurado
78
+ // Run tasks in parallel with a concurrency limit
79
+ const results = await parallel(tasks, { concurrency: 3 });
186
80
 
187
- ```ts
188
- const logger = createLogger({ namespace: "app", level: "info" });
189
- logger.info("User created", { userId: 123, email: "user@example.com" });
81
+ // Debounce an async function
82
+ const fetchSuggestions = debounceAsync(api.getSuggestions, { waitMs: 300 });
190
83
  ```
191
84
 
192
- ### Date & String Utilities / Utilidades de Fecha y String
85
+ ### 3. Modular Imports / Importaciones Modulares
193
86
 
194
- ```ts
195
- const formatted = DateUtils.format(new Date(), "es-AR");
196
- const slug = StringUtils.slugify("Hello World! 🌍");
197
- const masked = StringUtils.mask("1234567890", { start: 4, end: 2 });
198
- ```
199
-
200
- ### Array & Object Manipulation / Manipulación de Arrays y Objetos
87
+ Bytekit is fully tree-shakeable. You can import exactly what you need:
201
88
 
202
89
  ```ts
203
- const chunks = ArrayUtils.chunk([1, 2, 3, 4, 5], 2); // [[1,2], [3,4], [5]]
204
- const picked = ObjectUtils.pick(user, ["id", "name", "email"]);
205
- const grouped = ObjectUtils.groupBy(users, "department");
90
+ import { ApiClient } from "bytekit/api-client";
91
+ import { Logger } from "bytekit/logger";
92
+ import { retry, timeout } from "bytekit/async";
93
+ import { UrlSlugHelper } from "bytekit/url-slug-helper";
206
94
  ```
207
95
 
208
- ## 🚀 Live Examples / Ejemplos en Vivo
209
-
210
- **EN:** Try bytekit in your browser with these interactive examples:
211
- **ES:** Prueba bytekit en tu navegador con estos ejemplos interactivos:
212
-
213
- - **[React Example](https://codesandbox.io/p/devbox/bytekit-react-example-gr2k2j)** - Complete React app with ApiClient
214
- - **[Vue Example](https://codesandbox.io/p/devbox/df26fs)** - Vue 3 composition API usage
215
- - **[Svelte Example](https://codesandbox.io/p/devbox/lxvghg)** - Svelte integration example
216
-
217
- **[📁 View Local Examples →](https://github.com/sebamar88/bytekit/tree/main/examples)**
218
-
219
- ## � Documentation / Documentación
96
+ ## 📚 Core Modules
220
97
 
221
- **EN:** Comprehensive guides to help you get the most out of bytekit:
222
- **ES:** Guías completas para aprovechar al máximo bytekit:
98
+ ### 🔧 Networking & Resilience
99
+ - **`ApiClient`** - Typed HTTP client with interceptors, retries, and schema validation support.
100
+ - **`SchemaAdapter`** - Generic adapter to plug your favorite validation library (Zod, Valibot).
101
+ - **`RetryPolicy` & `CircuitBreaker`** - Prevent failures and handle flaky endpoints.
102
+ - **`RequestCache` & `RequestDeduplicator`** - Optimize your network bandwidth.
103
+ - **`RateLimiter`** - Throttle your outbound requests.
223
104
 
224
- - **[🚀 Getting Started](./docs/guides/GETTING_STARTED.md)** - Installation, basic usage, and core concepts / Instalación, uso básico y conceptos core
225
- - **[🔬 Advanced Usage](./docs/guides/ADVANCED_USAGE.md)** - Complex patterns and techniques / Patrones y técnicas complejas
226
- - **[✨ Best Practices](./docs/guides/BEST_PRACTICES.md)** - Production-ready patterns / Patrones para producción
227
- - **[📖 Examples & Snippets](./docs/examples/README.md)** - Code samples and interactive demos / Ejemplos de código y demos interactivos
105
+ ### Async Toolkit
106
+ - Concurrency: **`parallel`**, **`race`**, **`allSettled`**, **`sequential`**.
107
+ - Execution: **`retry`**, **`debounceAsync`**, **`throttleAsync`**.
108
+ - Timing: **`sleep`**, **`timeout`**.
228
109
 
229
- ### 🎮 Interactive CodeSandbox Examples
230
-
231
- - **[React Basic](./docs/examples/codesandbox/react-basic)** - ApiClient with React hooks / ApiClient con hooks de React
232
- - **[Vue Basic](./docs/examples/codesandbox/vue-basic)** - Composition API integration / Integración con Composition API
233
- - **[Svelte Basic](./docs/examples/codesandbox/svelte-basic)** - Svelte stores integration / Integración con stores de Svelte
234
-
235
- ## �🔗 Links / Enlaces
236
-
237
- - **[📦 NPM Package](https://www.npmjs.com/package/bytekit)** - Install and version info
238
- - **[📚 Full Documentation Wiki](https://github.com/sebamar88/bytekit/wiki)** - Complete API reference
239
- - **[🚀 Live Examples](https://github.com/sebamar88/bytekit/tree/main/examples)** - Working code samples
240
- - **[📋 Issues & Support](https://github.com/sebamar88/bytekit/issues)** - Bug reports and feature requests
241
- - **[🔄 Changelog](https://github.com/sebamar88/bytekit/blob/main/CHANGELOG.md)** - Version history
110
+ ### 🛠️ Key Helpers
111
+ - **`Logger` & `Profiler`** - Structured logs and performance monitoring.
112
+ - **`UrlSlugHelper`** - Generate SEO-friendly URL slugs.
113
+ - **`QueryStringHelper`** - Powerful object-to-query-string serialization.
114
+ - **`FileUploadHelper`**, **`StreamingHelper`**, **`WebSocketHelper`** - Specialized network tasks.
115
+ - **`EventEmitter`**, **`DiffUtils`**, **`CacheManager`**, **`CryptoUtils`**.
242
116
 
243
117
  ## 🤝 Contributing / Contribuir
244
118
 
@@ -248,7 +122,3 @@ const grouped = ObjectUtils.groupBy(users, "department");
248
122
  ## 📄 License / Licencia
249
123
 
250
124
  MIT © [Sebastián Martinez](https://github.com/sebamar88)
251
-
252
- ---
253
-
254
- **💡 Need help?** Check the **[Wiki](https://github.com/sebamar88/bytekit/wiki)** or **[open an issue](https://github.com/sebamar88/bytekit/issues)**.
@@ -1,6 +1,7 @@
1
1
  import { Logger } from "#core/Logger.js";
2
2
  import { RetryConfig, CircuitBreakerConfig } from "#core/RetryPolicy.js";
3
3
  import { ValidationSchema } from "#core/ResponseValidator.js";
4
+ import { SchemaAdapter } from "./SchemaAdapter.js";
4
5
  export type QueryParamValue = string | number | boolean | null | undefined;
5
6
  export type QueryParam = QueryParamValue | QueryParamValue[] | Record<string, unknown>;
6
7
  export type Locale = "en" | "es";
@@ -24,12 +25,12 @@ export interface ApiClientConfig {
24
25
  retryPolicy?: RetryConfig;
25
26
  circuitBreaker?: CircuitBreakerConfig;
26
27
  }
27
- export interface RequestOptions extends Omit<RequestInit, "body"> {
28
+ export interface RequestOptions<TResponse = unknown> extends Omit<RequestInit, "body"> {
28
29
  searchParams?: Record<string, QueryParam>;
29
30
  body?: FormData | string | Blob | ArrayBuffer | Record<string, unknown>;
30
31
  errorLocale?: Locale;
31
32
  timeoutMs?: number;
32
- validateResponse?: ValidationSchema;
33
+ validateResponse?: ValidationSchema | SchemaAdapter<TResponse>;
33
34
  skipRetry?: boolean;
34
35
  skipInterceptors?: boolean;
35
36
  logHeaders?: boolean;
@@ -46,7 +47,7 @@ export interface PaginationParams {
46
47
  export interface FilterParams {
47
48
  [key: string]: QueryParam;
48
49
  }
49
- export interface ListOptions<TFilter extends FilterParams = FilterParams> extends Omit<RequestOptions, "searchParams"> {
50
+ export interface ListOptions<TFilter extends FilterParams = FilterParams, TResponse = unknown> extends Omit<RequestOptions<TResponse>, "searchParams"> {
50
51
  pagination?: PaginationParams;
51
52
  sort?: SortParams;
52
53
  filters?: TFilter;
@@ -108,7 +109,7 @@ export declare class ApiClient {
108
109
  private readonly retryPolicy;
109
110
  private readonly circuitBreaker;
110
111
  constructor({ baseUrl, baseURL, defaultHeaders, fetchImpl, locale, errorMessages, timeoutMs, interceptors, disableInterceptors, logHeaders, redactHeaderKeys, logger, retryPolicy, circuitBreaker, }: ApiClientConfig);
111
- get<T>(path: string, options?: RequestOptions): Promise<T>;
112
+ get<T>(path: string, options?: RequestOptions<T>): Promise<T>;
112
113
  /**
113
114
  * POST request - Acepta body directamente o RequestOptions
114
115
  * @example
@@ -121,17 +122,17 @@ export declare class ApiClient {
121
122
  * headers: { "X-Custom": "value" }
122
123
  * })
123
124
  */
124
- post<T>(path: string, bodyOrOptions?: RequestOptions | unknown): Promise<T>;
125
+ post<T>(path: string, bodyOrOptions?: RequestOptions<T> | unknown): Promise<T>;
125
126
  /**
126
127
  * PUT request - Acepta body directamente o RequestOptions
127
128
  */
128
- put<T>(path: string, bodyOrOptions?: RequestOptions | unknown): Promise<T>;
129
+ put<T>(path: string, bodyOrOptions?: RequestOptions<T> | unknown): Promise<T>;
129
130
  /**
130
131
  * PATCH request - Acepta body directamente o RequestOptions
131
132
  */
132
- patch<T>(path: string, bodyOrOptions?: RequestOptions | unknown): Promise<T>;
133
- delete<T>(path: string, options?: RequestOptions): Promise<T>;
134
- getList<T, TFilter extends FilterParams = FilterParams>(path: string, options?: ListOptions<TFilter>): Promise<PaginatedResponse<T>>;
133
+ patch<T>(path: string, bodyOrOptions?: RequestOptions<T> | unknown): Promise<T>;
134
+ delete<T>(path: string, options?: RequestOptions<T>): Promise<T>;
135
+ getList<T, TFilter extends FilterParams = FilterParams>(path: string, options?: ListOptions<TFilter, PaginatedResponse<T>>): Promise<PaginatedResponse<T>>;
135
136
  /**
136
137
  * Prepares request configuration with headers, body, and interceptors
137
138
  */
@@ -144,7 +145,7 @@ export declare class ApiClient {
144
145
  * Handles request errors with proper logging
145
146
  */
146
147
  private handleRequestError;
147
- request<T>(path: string, options?: RequestOptions): Promise<T>;
148
+ request<T>(path: string, options?: RequestOptions<T>): Promise<T>;
148
149
  /**
149
150
  * Normaliza el segundo parámetro de post/put/patch para soportar:
150
151
  * 1. Body directo: post("/path", { name: "John" })
@@ -1 +1 @@
1
- {"version":3,"file":"ApiClient.d.ts","sourceRoot":"","sources":["../../../src/utils/core/ApiClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAGzC,OAAO,EAGH,WAAW,EACX,oBAAoB,EACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEH,gBAAgB,EACnB,MAAM,4BAA4B,CAAC;AAEpC,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;AAC3E,MAAM,MAAM,UAAU,GAChB,eAAe,GACf,eAAe,EAAE,GACjB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAC9B,MAAM,MAAM,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;AAEjC,MAAM,WAAW,qBAAqB;IAClC,OAAO,CAAC,EAAE,CACN,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,WAAW,KAChB,OAAO,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC5D,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC;CACnE;AAED,MAAM,WAAW,eAAe;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,WAAW,CAAC;IAC7B,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACzE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,qBAAqB,CAAC;IACrC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,cAAc,CAAC,EAAE,oBAAoB,CAAC;CACzC;AAED,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7D,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC1C,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,IAAI,GAAG,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAC;CAC7B;AAED,MAAM,WAAW,WAAW,CACxB,OAAO,SAAS,YAAY,GAAG,YAAY,CAC7C,SAAQ,IAAI,CAAC,cAAc,EAAE,cAAc,CAAC;IAC1C,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAChC,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,UAAU,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,EAAE,MAAM,CAAC;QACnB,WAAW,EAAE,OAAO,CAAC;QACrB,eAAe,EAAE,OAAO,CAAC;KAC5B,CAAC;CACL;AAED,qBAAa,QAAS,SAAQ,KAAK;aAEX,MAAM,EAAE,MAAM;aACd,UAAU,EAAE,MAAM;aAElB,IAAI,CAAC,EAAE,OAAO;aACd,SAAS;gBAJT,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClC,OAAO,EAAE,MAAM,EACC,IAAI,CAAC,EAAE,OAAO,YAAA,EACd,SAAS,UAAQ;IAWrC;;OAEG;IACH,IAAI,OAAO;;;;;;MAQV;IAED;;OAEG;IACH,QAAQ,IAAI,MAAM;IAqBlB;;OAEG;IACH,MAAM;;;;;;;CAGT;AA2CD,qBAAa,SAAS;IAClB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAM;IAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAe;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAwB;IACtD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAU;IAC9C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAU;IACrC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAc;IAC/C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAE5B;IACF,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;gBAEpC,EACR,OAAO,EACP,OAAO,EACP,cAAc,EACd,SAAS,EACT,MAAa,EACb,aAAa,EACb,SAAiB,EACjB,YAAY,EACZ,mBAA2B,EAC3B,UAAkB,EAClB,gBAAgB,EAChB,MAAM,EACN,WAAW,EACX,cAAc,GACjB,EAAE,eAAe;IAoCZ,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc;IAInD;;;;;;;;;;;OAWG;IACG,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,cAAc,GAAG,OAAO;IAKpE;;OAEG;IACG,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,cAAc,GAAG,OAAO;IAKnE;;OAEG;IACG,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,cAAc,GAAG,OAAO;IAK/D,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc;IAOhD,OAAO,CAAC,CAAC,EAAE,OAAO,SAAS,YAAY,GAAG,YAAY,EACxD,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,GAC/B,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;IA8ChC;;OAEG;YACW,oBAAoB;IA8DlC;;OAEG;YACW,eAAe;IAgC7B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAgCpB,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,CAAC,CAAC;IAiGxE;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAgB9B;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAkDxB,OAAO,CAAC,YAAY;IAOpB,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,aAAa;IAUrB,OAAO,CAAC,WAAW;YAYL,WAAW;IAwBzB,OAAO,CAAC,QAAQ;YAqBF,UAAU;IAwBxB,OAAO,CAAC,mBAAmB;IAmB3B,OAAO,CAAC,mBAAmB;CAK9B;AAKD,eAAO,MAAM,eAAe,GAAI,QAAQ,eAAe,cAC9B,CAAC"}
1
+ {"version":3,"file":"ApiClient.d.ts","sourceRoot":"","sources":["../../../src/utils/core/ApiClient.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
- import { StringUtils } from "#helpers/StringUtils.js";
1
+ import { QueryStringHelper } from "#helpers/QueryStringHelper.js";
2
2
  import { retry as retryFn } from "../async/retry.js";
3
3
  import { RetryPolicy, CircuitBreaker, } from "#core/RetryPolicy.js";
4
4
  import { ResponseValidator, } from "#core/ResponseValidator.js";
5
+ import { isSchemaAdapter } from "./SchemaAdapter.js";
5
6
  export class ApiError extends Error {
6
7
  constructor(status, statusText, message, body, isTimeout = false) {
7
8
  super(message);
@@ -343,18 +344,25 @@ export class ApiClient {
343
344
  const contentType = response.headers.get("content-type") || "";
344
345
  let data;
345
346
  if (/json/i.test(contentType)) {
346
- data = (await response.json());
347
+ data = await response.json();
347
348
  }
348
349
  else {
349
- data = (await response.text());
350
+ data = await response.text();
350
351
  }
351
352
  // Validate response if schema provided
352
353
  if (validateResponse) {
353
- const errors = ResponseValidator.validate(data, validateResponse);
354
- if (errors.length > 0) {
355
- throw new Error(`Response validation failed: ${errors
356
- .map((e) => e.message)
357
- .join(", ")}`);
354
+ if (isSchemaAdapter(validateResponse)) {
355
+ // Use SchemaAdapter (Zod/Valibot/etc.)
356
+ return validateResponse.parse(data);
357
+ }
358
+ else {
359
+ // Use built-in ResponseValidator
360
+ const errors = ResponseValidator.validate(data, validateResponse);
361
+ if (errors.length > 0) {
362
+ throw new Error(`Response validation failed: ${errors
363
+ .map((e) => e.message)
364
+ .join(", ")}`);
365
+ }
358
366
  }
359
367
  }
360
368
  return data;
@@ -555,7 +563,7 @@ export class ApiClient {
555
563
  const normalized = path.startsWith("/") ? path.slice(1) : path;
556
564
  const url = new URL(normalized, this.baseUrl);
557
565
  if (params) {
558
- const queryString = StringUtils.toQueryString(params);
566
+ const queryString = QueryStringHelper.stringify(params);
559
567
  if (queryString) {
560
568
  url.search = url.search
561
569
  ? `${url.search}&${queryString}`
@@ -1 +1 @@
1
- {"version":3,"file":"ApiClient.js","sourceRoot":"","sources":["../../../src/utils/core/ApiClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ApiClient.js","sourceRoot":"","sources":["../../../src/utils/core/ApiClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Generic interface for schema validation adapters (e.g., Zod, Valibot, ArkType)
3
+ */
4
+ export interface SchemaAdapter<T = unknown> {
5
+ /**
6
+ * Parses and validates the data. Should throw an error if validation fails.
7
+ * Returns the validated (and potentially transformed) data.
8
+ */
9
+ parse: (data: unknown) => T;
10
+ }
11
+ /**
12
+ * Adapter for Zod schemas.
13
+ * Since Zod schemas already have a `parse` method, this just provides type safety,
14
+ * but you can also pass a Zod schema directly to `validateResponse`.
15
+ */
16
+ export declare function zodAdapter<T>(schema: {
17
+ parse: (data: unknown) => T;
18
+ }): SchemaAdapter<T>;
19
+ /**
20
+ * Adapter for Valibot schemas.
21
+ * Wraps Valibot's `parse` function and schema into a SchemaAdapter.
22
+ *
23
+ * @example
24
+ * import { object, string } from "valibot";
25
+ * import { valibotAdapter } from "bytekit";
26
+ *
27
+ * const schema = object({ name: string() });
28
+ * const adapter = valibotAdapter(schema, parse);
29
+ */
30
+ export declare function valibotAdapter<T>(schema: unknown, parseFn: (schema: any, data: unknown) => T): SchemaAdapter<T>;
31
+ /**
32
+ * Type guard to check if an object is a SchemaAdapter
33
+ */
34
+ export declare function isSchemaAdapter(obj: unknown): obj is SchemaAdapter;
35
+ //# sourceMappingURL=SchemaAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SchemaAdapter.d.ts","sourceRoot":"","sources":["../../../src/utils/core/SchemaAdapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,aAAa,CAAC,CAAC,GAAG,OAAO;IACtC;;;OAGG;IACH,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,CAAC,CAAC;CAC/B;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE;IAAE,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,CAAC,CAAA;CAAE,GAAG,aAAa,CAAC,CAAC,CAAC,CAIvF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAC5B,MAAM,EAAE,OAAO,EACf,OAAO,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,KAAK,CAAC,GAC3C,aAAa,CAAC,CAAC,CAAC,CAIlB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,aAAa,CAOlE"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Adapter for Zod schemas.
3
+ * Since Zod schemas already have a `parse` method, this just provides type safety,
4
+ * but you can also pass a Zod schema directly to `validateResponse`.
5
+ */
6
+ export function zodAdapter(schema) {
7
+ return {
8
+ parse: (data) => schema.parse(data),
9
+ };
10
+ }
11
+ /**
12
+ * Adapter for Valibot schemas.
13
+ * Wraps Valibot's `parse` function and schema into a SchemaAdapter.
14
+ *
15
+ * @example
16
+ * import { object, string } from "valibot";
17
+ * import { valibotAdapter } from "bytekit";
18
+ *
19
+ * const schema = object({ name: string() });
20
+ * const adapter = valibotAdapter(schema, parse);
21
+ */
22
+ export function valibotAdapter(schema, parseFn) {
23
+ return {
24
+ parse: (data) => parseFn(schema, data),
25
+ };
26
+ }
27
+ /**
28
+ * Type guard to check if an object is a SchemaAdapter
29
+ */
30
+ export function isSchemaAdapter(obj) {
31
+ return (typeof obj === "object" &&
32
+ obj !== null &&
33
+ "parse" in obj &&
34
+ typeof obj.parse === "function");
35
+ }
36
+ //# sourceMappingURL=SchemaAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SchemaAdapter.js","sourceRoot":"","sources":["../../../src/utils/core/SchemaAdapter.ts"],"names":[],"mappings":"AAWA;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAI,MAAuC;IACjE,OAAO;QACH,KAAK,EAAE,CAAC,IAAa,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;KAC/C,CAAC;AACN,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,cAAc,CAC1B,MAAe,EACf,OAA0C;IAE1C,OAAO;QACH,KAAK,EAAE,CAAC,IAAa,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC;KAClD,CAAC;AACN,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,GAAY;IACxC,OAAO,CACH,OAAO,GAAG,KAAK,QAAQ;QACvB,GAAG,KAAK,IAAI;QACZ,OAAO,IAAI,GAAG;QACd,OAAQ,GAA+B,CAAC,KAAK,KAAK,UAAU,CAC/D,CAAC;AACN,CAAC"}
@@ -1,5 +1,4 @@
1
1
  export * from "#core/ApiClient.js";
2
- export * from "#core/BatchRequest.js";
3
2
  export * from "#core/Logger.js";
4
3
  export * from "#core/Profiler.js";
5
4
  export * from "#core/debug.js";
@@ -9,4 +8,5 @@ export * from "#core/RequestCache.js";
9
8
  export * from "#core/RateLimiter.js";
10
9
  export * from "#core/RequestDeduplicator.js";
11
10
  export * from "#core/ErrorBoundary.js";
11
+ export * from "#core/SchemaAdapter.js";
12
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC"}