@forgezero/providers 0.1.14 → 0.1.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -35,16 +35,16 @@ Every row links to the detailed explanation and named-import/example area below.
35
35
 
36
36
  | public entry | short description | runtime | details |
37
37
  |---|---|---|---|
38
- | @forgezero/providers | The registry: priority, health, and a terminal-versus-retryable verdict per failure. | portable | [Details + example](#forgezero-providers) |
39
- | @forgezero/providers/email | JetEmail (`send`, `sendBatch`), SMTP (`send` only), and the typed email service contract; SMTP transport is injected. | portable | [Details + example](#forgezero-providers-email) |
40
- | @forgezero/providers/database | ArangoDB in the registry for credential rotation and health — with failover off by default. | portable | [Details + example](#forgezero-providers-database) |
41
- | @forgezero/providers/http | Outbound HTTP with a per-host weight budget reserved before the call and settled from the response. | portable | [Details + example](#forgezero-providers-http) |
42
- | @forgezero/providers/pool | Which outbound address a request leaves by, sticky per key, over the same budget as everything else. | portable | [Details + example](#forgezero-providers-pool) |
43
- | @forgezero/providers/chain | An EVM node behind the same failover as any other service: read logs, broadcast, and never stop scanning because one endpoint rate-limited. | portable | [Details + example](#forgezero-providers-chain) |
44
- | @forgezero/providers/binance | Binance behind the venue adapter: three hosts, one weight budget, signed over the exact string that is sent. | portable | [Details + example](#forgezero-providers-binance) |
45
- | @forgezero/providers/storage | S3-compatible object storage, SigV4 signed with Web Crypto and no vendor SDK. | portable | [Details + example](#forgezero-providers-storage) |
46
- | @forgezero/providers/translation | Google AI Studio translation with strict batch alignment and classified quota failures. | portable | [Details + example](#forgezero-providers-translation) |
47
- | @forgezero/providers/realtime | Cloudflare KV node-directory and Durable Object fan-out clients for project-defined realtime services. | portable | [Details + example](#forgezero-providers-realtime) |
38
+ | @forgezero/providers | The registry: priority, health, and a terminal-versus-retryable verdict per failure. | portable | [Reference + usage](#forgezero-providers) |
39
+ | @forgezero/providers/email | JetEmail (`send`, `sendBatch`), SMTP (`send` only), and the typed email service contract; SMTP transport is injected. | portable | [Reference + usage](#forgezero-providers-email) |
40
+ | @forgezero/providers/database | ArangoDB in the registry for credential rotation and health — with failover off by default. | portable | [Reference + usage](#forgezero-providers-database) |
41
+ | @forgezero/providers/http | Outbound HTTP with a per-host weight budget reserved before the call and settled from the response. | portable | [Reference + usage](#forgezero-providers-http) |
42
+ | @forgezero/providers/pool | Which outbound address a request leaves by, sticky per key, over the same budget as everything else. | portable | [Reference + usage](#forgezero-providers-pool) |
43
+ | @forgezero/providers/chain | An EVM node behind the same failover as any other service: read logs, broadcast, and never stop scanning because one endpoint rate-limited. | portable | [Reference + usage](#forgezero-providers-chain) |
44
+ | @forgezero/providers/binance | Binance behind the venue adapter: three hosts, one weight budget, signed over the exact string that is sent. | portable | [Reference + usage](#forgezero-providers-binance) |
45
+ | @forgezero/providers/storage | S3-compatible object storage, SigV4 signed with Web Crypto and no vendor SDK. | portable | [Reference + usage](#forgezero-providers-storage) |
46
+ | @forgezero/providers/translation | Google AI Studio translation with strict batch alignment and classified quota failures. | portable | [Reference + usage](#forgezero-providers-translation) |
47
+ | @forgezero/providers/realtime | Cloudflare KV node-directory and Durable Object fan-out clients for project-defined realtime services. | portable | [Reference + usage](#forgezero-providers-realtime) |
48
48
 
49
49
  ## Commands
50
50
 
@@ -271,6 +271,18 @@ import type {
271
271
  } from '@forgezero/providers/database';
272
272
  ```
273
273
 
274
+ ## @forgezero/providers/database — Use this entry point
275
+
276
+ This minimal executable use imports one concrete value from this exact entry point without a wildcard or package-root detour. Keep the value or values the application actually needs; the full named inventory remains directly above it.
277
+
278
+ ```text
279
+ import {
280
+ ARANGO_COMMUNITY_VERSION,
281
+ } from '@forgezero/providers/database';
282
+
283
+ export const selectedCapability = ARANGO_COMMUNITY_VERSION;
284
+ ```
285
+
274
286
  <a id="forgezero-providers-http"></a>
275
287
  ## @forgezero/providers/http
276
288
 
@@ -298,6 +310,18 @@ import type {
298
310
  } from '@forgezero/providers/http';
299
311
  ```
300
312
 
313
+ ## @forgezero/providers/http — Use this entry point
314
+
315
+ This minimal executable use imports one concrete value from this exact entry point without a wildcard or package-root detour. Keep the value or values the application actually needs; the full named inventory remains directly above it.
316
+
317
+ ```text
318
+ import {
319
+ BudgetExhausted,
320
+ } from '@forgezero/providers/http';
321
+
322
+ export const selectedCapability = BudgetExhausted;
323
+ ```
324
+
301
325
  <a id="forgezero-providers-pool"></a>
302
326
  ## @forgezero/providers/pool
303
327
 
@@ -318,6 +342,18 @@ import type {
318
342
  } from '@forgezero/providers/pool';
319
343
  ```
320
344
 
345
+ ## @forgezero/providers/pool — Use this entry point
346
+
347
+ This minimal executable use imports one concrete value from this exact entry point without a wildcard or package-root detour. Keep the value or values the application actually needs; the full named inventory remains directly above it.
348
+
349
+ ```text
350
+ import {
351
+ PoolEmpty,
352
+ } from '@forgezero/providers/pool';
353
+
354
+ export const selectedCapability = PoolEmpty;
355
+ ```
356
+
321
357
  <a id="forgezero-providers-chain"></a>
322
358
  ## @forgezero/providers/chain
323
359
 
@@ -336,6 +372,18 @@ import type {
336
372
  } from '@forgezero/providers/chain';
337
373
  ```
338
374
 
375
+ ## @forgezero/providers/chain — Use this entry point
376
+
377
+ This minimal executable use imports one concrete value from this exact entry point without a wildcard or package-root detour. Keep the value or values the application actually needs; the full named inventory remains directly above it.
378
+
379
+ ```text
380
+ import {
381
+ evmRpc,
382
+ } from '@forgezero/providers/chain';
383
+
384
+ export const selectedCapability = evmRpc;
385
+ ```
386
+
339
387
  <a id="forgezero-providers-binance"></a>
340
388
  ## @forgezero/providers/binance
341
389
 
@@ -355,6 +403,18 @@ import type {
355
403
  } from '@forgezero/providers/binance';
356
404
  ```
357
405
 
406
+ ## @forgezero/providers/binance — Use this entry point
407
+
408
+ This minimal executable use imports one concrete value from this exact entry point without a wildcard or package-root detour. Keep the value or values the application actually needs; the full named inventory remains directly above it.
409
+
410
+ ```text
411
+ import {
412
+ binanceSymbol,
413
+ } from '@forgezero/providers/binance';
414
+
415
+ export const selectedCapability = binanceSymbol;
416
+ ```
417
+
358
418
  <a id="forgezero-providers-storage"></a>
359
419
  ## @forgezero/providers/storage
360
420
 
@@ -384,6 +444,18 @@ import type {
384
444
  } from '@forgezero/providers/storage';
385
445
  ```
386
446
 
447
+ ## @forgezero/providers/storage — Use this entry point
448
+
449
+ This minimal executable use imports one concrete value from this exact entry point without a wildcard or package-root detour. Keep the value or values the application actually needs; the full named inventory remains directly above it.
450
+
451
+ ```text
452
+ import {
453
+ MAX_SINGLE_PUT_BYTES,
454
+ } from '@forgezero/providers/storage';
455
+
456
+ export const selectedCapability = MAX_SINGLE_PUT_BYTES;
457
+ ```
458
+
387
459
  <a id="forgezero-providers-translation"></a>
388
460
  ## @forgezero/providers/translation
389
461
 
@@ -404,6 +476,18 @@ import type {
404
476
  } from '@forgezero/providers/translation';
405
477
  ```
406
478
 
479
+ ## @forgezero/providers/translation — Use this entry point
480
+
481
+ This minimal executable use imports one concrete value from this exact entry point without a wildcard or package-root detour. Keep the value or values the application actually needs; the full named inventory remains directly above it.
482
+
483
+ ```text
484
+ import {
485
+ TranslationError,
486
+ } from '@forgezero/providers/translation';
487
+
488
+ export const selectedCapability = TranslationError;
489
+ ```
490
+
407
491
  <a id="forgezero-providers-realtime"></a>
408
492
  ## @forgezero/providers/realtime
409
493
 
@@ -420,6 +504,18 @@ import type {
420
504
  } from '@forgezero/providers/realtime';
421
505
  ```
422
506
 
507
+ ## @forgezero/providers/realtime — Use this entry point
508
+
509
+ This minimal executable use imports one concrete value from this exact entry point without a wildcard or package-root detour. Keep the value or values the application actually needs; the full named inventory remains directly above it.
510
+
511
+ ```text
512
+ import {
513
+ RealtimeProviderError,
514
+ } from '@forgezero/providers/realtime';
515
+
516
+ export const selectedCapability = RealtimeProviderError;
517
+ ```
518
+
423
519
  ## Built-in provider capabilities
424
520
 
425
521
  A provider owns capabilities; it does not own a service. A service method attaches a provider instance and one of its methods. This keeps custom providers and custom services independent.
package/dist/binance.js CHANGED
@@ -298,7 +298,7 @@ function createService(definition, methods, options = {}) {
298
298
  }
299
299
  };
300
300
  }
301
- var VERSION = "0.1.14";
301
+ var VERSION = "0.1.15";
302
302
 
303
303
  // src/http.ts
304
304
  class BudgetExhausted extends ProviderError {
package/dist/chain.js CHANGED
@@ -298,7 +298,7 @@ function createService(definition, methods, options = {}) {
298
298
  }
299
299
  };
300
300
  }
301
- var VERSION = "0.1.14";
301
+ var VERSION = "0.1.15";
302
302
 
303
303
  // src/chain.ts
304
304
  var hexToNumber = (value) => Number(BigInt(value));
package/dist/database.js CHANGED
@@ -298,7 +298,7 @@ function createService(definition, methods, options = {}) {
298
298
  }
299
299
  };
300
300
  }
301
- var VERSION = "0.1.14";
301
+ var VERSION = "0.1.15";
302
302
 
303
303
  // src/database.ts
304
304
  var pools = new Map;
package/dist/email.js CHANGED
@@ -298,7 +298,7 @@ function createService(definition, methods, options = {}) {
298
298
  }
299
299
  };
300
300
  }
301
- var VERSION = "0.1.14";
301
+ var VERSION = "0.1.15";
302
302
 
303
303
  // src/email.ts
304
304
  var recipients = (to) => Array.isArray(to) ? [...to] : [to];
package/dist/http.js CHANGED
@@ -298,7 +298,7 @@ function createService(definition, methods, options = {}) {
298
298
  }
299
299
  };
300
300
  }
301
- var VERSION = "0.1.14";
301
+ var VERSION = "0.1.15";
302
302
 
303
303
  // src/http.ts
304
304
  class BudgetExhausted extends ProviderError {
package/dist/index.d.ts CHANGED
@@ -285,5 +285,5 @@ export interface EmailBatchResult {
285
285
  };
286
286
  results: readonly EmailBatchItemResult[];
287
287
  }
288
- export declare const VERSION = "0.1.14";
288
+ export declare const VERSION = "0.1.15";
289
289
  export {};
package/dist/index.js CHANGED
@@ -298,7 +298,7 @@ function createService(definition, methods, options = {}) {
298
298
  }
299
299
  };
300
300
  }
301
- var VERSION = "0.1.14";
301
+ var VERSION = "0.1.15";
302
302
  export {
303
303
  staticConfig,
304
304
  serviceMethod,
package/dist/pool.js CHANGED
@@ -298,7 +298,7 @@ function createService(definition, methods, options = {}) {
298
298
  }
299
299
  };
300
300
  }
301
- var VERSION = "0.1.14";
301
+ var VERSION = "0.1.15";
302
302
 
303
303
  // src/http.ts
304
304
  class BudgetExhausted extends ProviderError {
package/dist/storage.js CHANGED
@@ -298,7 +298,7 @@ function createService(definition, methods, options = {}) {
298
298
  }
299
299
  };
300
300
  }
301
- var VERSION = "0.1.14";
301
+ var VERSION = "0.1.15";
302
302
 
303
303
  // src/storage.ts
304
304
  var encoder = new TextEncoder;
@@ -298,7 +298,7 @@ function createService(definition, methods, options = {}) {
298
298
  }
299
299
  };
300
300
  }
301
- var VERSION = "0.1.14";
301
+ var VERSION = "0.1.15";
302
302
 
303
303
  // src/translation.ts
304
304
  var GOOGLE_ENDPOINT = "https://generativelanguage.googleapis.com/v1beta/models";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forgezero/providers",
3
- "version": "0.1.14",
3
+ "version": "0.1.15",
4
4
  "type": "module",
5
5
  "publishConfig": {
6
6
  "access": "public",
@@ -85,6 +85,6 @@
85
85
  "LICENSE"
86
86
  ],
87
87
  "dependencies": {
88
- "@forgezero/runtime": "^0.1.9"
88
+ "@forgezero/runtime": "^0.1.10"
89
89
  }
90
90
  }