ai-props 2.1.3 → 2.4.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 (105) hide show
  1. package/.dev.vars +2 -0
  2. package/.turbo/turbo-build.log +1 -1
  3. package/CHANGELOG.md +20 -0
  4. package/README.md +2 -0
  5. package/dist/ai.d.ts.map +1 -1
  6. package/dist/ai.js +4 -4
  7. package/dist/ai.js.map +1 -1
  8. package/dist/cascade.d.ts +329 -0
  9. package/dist/cascade.d.ts.map +1 -0
  10. package/dist/cascade.js +522 -0
  11. package/dist/cascade.js.map +1 -0
  12. package/dist/client.d.ts +233 -0
  13. package/dist/client.d.ts.map +1 -0
  14. package/dist/client.js +191 -0
  15. package/dist/client.js.map +1 -0
  16. package/dist/durable-cascade.d.ts +280 -0
  17. package/dist/durable-cascade.d.ts.map +1 -0
  18. package/dist/durable-cascade.js +469 -0
  19. package/dist/durable-cascade.js.map +1 -0
  20. package/dist/event-bridge.d.ts +257 -0
  21. package/dist/event-bridge.d.ts.map +1 -0
  22. package/dist/event-bridge.js +317 -0
  23. package/dist/event-bridge.js.map +1 -0
  24. package/dist/generate.d.ts.map +1 -1
  25. package/dist/generate.js +12 -6
  26. package/dist/generate.js.map +1 -1
  27. package/dist/hoc.d.ts.map +1 -1
  28. package/dist/hoc.js +13 -13
  29. package/dist/hoc.js.map +1 -1
  30. package/dist/hono-jsx.d.ts +208 -0
  31. package/dist/hono-jsx.d.ts.map +1 -0
  32. package/dist/hono-jsx.js +459 -0
  33. package/dist/hono-jsx.js.map +1 -0
  34. package/dist/index.d.ts +1 -0
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +2 -0
  37. package/dist/index.js.map +1 -1
  38. package/dist/mdx-types.d.ts +152 -0
  39. package/dist/mdx-types.d.ts.map +1 -0
  40. package/dist/mdx-types.js +9 -0
  41. package/dist/mdx-types.js.map +1 -0
  42. package/dist/mdx-utils.d.ts +106 -0
  43. package/dist/mdx-utils.d.ts.map +1 -0
  44. package/dist/mdx-utils.js +384 -0
  45. package/dist/mdx-utils.js.map +1 -0
  46. package/dist/mdx.d.ts +230 -0
  47. package/dist/mdx.d.ts.map +1 -0
  48. package/dist/mdx.js +820 -0
  49. package/dist/mdx.js.map +1 -0
  50. package/dist/rpc.d.ts +313 -0
  51. package/dist/rpc.d.ts.map +1 -0
  52. package/dist/rpc.js +359 -0
  53. package/dist/rpc.js.map +1 -0
  54. package/dist/streaming.d.ts +199 -0
  55. package/dist/streaming.d.ts.map +1 -0
  56. package/dist/streaming.js +402 -0
  57. package/dist/streaming.js.map +1 -0
  58. package/dist/validate.d.ts.map +1 -1
  59. package/dist/validate.js +11 -13
  60. package/dist/validate.js.map +1 -1
  61. package/dist/worker.d.ts +270 -0
  62. package/dist/worker.d.ts.map +1 -0
  63. package/dist/worker.js +405 -0
  64. package/dist/worker.js.map +1 -0
  65. package/package.json +39 -13
  66. package/src/ai.ts +12 -31
  67. package/src/cascade.ts +795 -0
  68. package/src/client.ts +440 -0
  69. package/src/durable-cascade.ts +743 -0
  70. package/src/event-bridge.ts +478 -0
  71. package/src/generate.ts +14 -12
  72. package/src/hoc.ts +15 -19
  73. package/src/hono-jsx.ts +675 -0
  74. package/src/index.ts +30 -0
  75. package/src/mdx-types.ts +169 -0
  76. package/src/mdx-utils.ts +437 -0
  77. package/src/mdx.ts +1008 -0
  78. package/src/rpc.ts +614 -0
  79. package/src/streaming.ts +618 -0
  80. package/src/validate.ts +15 -29
  81. package/src/worker.ts +547 -0
  82. package/test/cascade.test.ts +338 -0
  83. package/test/durable-cascade.test.ts +319 -0
  84. package/test/event-bridge.test.ts +351 -0
  85. package/test/generate.test.ts +6 -16
  86. package/test/mdx.test.ts +817 -0
  87. package/test/worker/capnweb-rpc.test.ts +1084 -0
  88. package/test/worker/full-flow.integration.test.ts +1463 -0
  89. package/test/worker/hono-jsx.test.ts +1258 -0
  90. package/test/worker/mdx-parsing.test.ts +1148 -0
  91. package/test/worker/setup.ts +56 -0
  92. package/test/worker.test.ts +595 -0
  93. package/tsconfig.json +2 -1
  94. package/vitest.config.js +6 -0
  95. package/vitest.config.ts +15 -1
  96. package/vitest.workers.config.ts +58 -0
  97. package/wrangler.jsonc +27 -0
  98. package/LICENSE +0 -21
  99. package/src/ai.js +0 -198
  100. package/src/cache.js +0 -182
  101. package/src/generate.js +0 -220
  102. package/src/hoc.js +0 -235
  103. package/src/index.js +0 -20
  104. package/src/types.js +0 -6
  105. package/src/validate.js +0 -252
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mdx.js","sourceRoot":"","sources":["../src/mdx.ts"],"names":[],"mappings":"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"}
package/dist/rpc.d.ts ADDED
@@ -0,0 +1,313 @@
1
+ /**
2
+ * RPC Export - Cloudflare Workers RPC utilities for AI Props
3
+ *
4
+ * This module provides RPC-specific functionality for consuming the AI Props
5
+ * service via Cloudflare Workers Service Bindings. It exports the service
6
+ * classes, types, and utilities for building RPC clients.
7
+ *
8
+ * ## RPC Pattern Overview
9
+ *
10
+ * Cloudflare Workers RPC allows direct method invocation between workers
11
+ * using Service Bindings. The AI Props service exposes methods through:
12
+ *
13
+ * 1. **WorkerEntrypoint** (`PropsService`) - The main entry point that workers
14
+ * bind to. Provides `getService()` to get an RPC-callable service instance.
15
+ *
16
+ * 2. **RpcTarget** (`PropsServiceCore`) - The actual service implementation
17
+ * with all callable methods. Returned by `getService()`.
18
+ *
19
+ * ## Usage Patterns
20
+ *
21
+ * ### Basic Service Binding
22
+ * ```typescript
23
+ * // wrangler.jsonc
24
+ * {
25
+ * "services": [
26
+ * { "binding": "AI_PROPS", "service": "ai-props" }
27
+ * ]
28
+ * }
29
+ *
30
+ * // worker.ts
31
+ * import type { PropsService } from 'ai-props/rpc'
32
+ *
33
+ * interface Env {
34
+ * AI_PROPS: Service<PropsService>
35
+ * }
36
+ *
37
+ * export default {
38
+ * async fetch(request: Request, env: Env) {
39
+ * const service = env.AI_PROPS.getService()
40
+ * const result = await service.generate({
41
+ * schema: { title: 'Page title' }
42
+ * })
43
+ * return Response.json(result)
44
+ * }
45
+ * }
46
+ * ```
47
+ *
48
+ * ### With Typed Client Factory
49
+ * ```typescript
50
+ * import { createPropsClient, type PropsClientOptions } from 'ai-props/rpc'
51
+ *
52
+ * const client = createPropsClient({
53
+ * service: env.AI_PROPS,
54
+ * timeout: 30000,
55
+ * retry: { attempts: 3, backoff: 'exponential' }
56
+ * })
57
+ *
58
+ * const result = await client.generate({
59
+ * schema: { title: 'Page title' }
60
+ * })
61
+ * ```
62
+ *
63
+ * ### Error Handling
64
+ * ```typescript
65
+ * import { PropsRPCError, isPropsRPCError } from 'ai-props/rpc'
66
+ *
67
+ * try {
68
+ * const result = await service.generate(options)
69
+ * } catch (error) {
70
+ * if (isPropsRPCError(error)) {
71
+ * console.error(`RPC Error: ${error.code} - ${error.message}`)
72
+ * }
73
+ * }
74
+ * ```
75
+ *
76
+ * @packageDocumentation
77
+ */
78
+ export { PropsService, PropsServiceCore, PropsWorker } from './worker.js';
79
+ export type { PropSchema, GeneratePropsOptions, GeneratePropsResult, AIPropsConfig, PropsCache, PropsCacheEntry, ValidationResult, ValidationError, } from './types.js';
80
+ export type { Env } from './worker.js';
81
+ /**
82
+ * Error codes for RPC operations
83
+ */
84
+ export declare enum PropsRPCErrorCode {
85
+ /** Method not found on service */
86
+ METHOD_NOT_FOUND = "METHOD_NOT_FOUND",
87
+ /** Invalid arguments passed to method */
88
+ INVALID_ARGUMENTS = "INVALID_ARGUMENTS",
89
+ /** Service connection failed */
90
+ CONNECTION_FAILED = "CONNECTION_FAILED",
91
+ /** Request timed out */
92
+ TIMEOUT = "TIMEOUT",
93
+ /** Service returned an error */
94
+ SERVICE_ERROR = "SERVICE_ERROR",
95
+ /** Network error during RPC call */
96
+ NETWORK_ERROR = "NETWORK_ERROR",
97
+ /** Unknown error */
98
+ UNKNOWN = "UNKNOWN"
99
+ }
100
+ /**
101
+ * Structured error for RPC failures
102
+ *
103
+ * Provides detailed error information for debugging RPC issues.
104
+ *
105
+ * @example
106
+ * ```typescript
107
+ * try {
108
+ * await service.generate(options)
109
+ * } catch (error) {
110
+ * if (error instanceof PropsRPCError) {
111
+ * console.error(`[${error.code}] ${error.message}`)
112
+ * if (error.cause) console.error('Caused by:', error.cause)
113
+ * }
114
+ * }
115
+ * ```
116
+ */
117
+ export declare class PropsRPCError extends Error {
118
+ /** Error code for programmatic handling */
119
+ readonly code: PropsRPCErrorCode;
120
+ /** Original error that caused this RPC error */
121
+ readonly originalCause: Error | undefined;
122
+ /** Method that was being called */
123
+ readonly method: string | undefined;
124
+ /** Timestamp when error occurred */
125
+ readonly timestamp: number;
126
+ constructor(message: string, code?: PropsRPCErrorCode, options?: {
127
+ cause?: Error;
128
+ method?: string;
129
+ });
130
+ /**
131
+ * Convert to JSON for logging/serialization
132
+ */
133
+ toJSON(): Record<string, unknown>;
134
+ }
135
+ /**
136
+ * Type guard to check if an error is a PropsRPCError
137
+ */
138
+ export declare function isPropsRPCError(error: unknown): error is PropsRPCError;
139
+ /**
140
+ * Retry backoff strategy
141
+ */
142
+ export type RetryBackoff = 'linear' | 'exponential' | 'fixed';
143
+ /**
144
+ * Configuration for retry behavior
145
+ */
146
+ export interface RetryConfig {
147
+ /** Number of retry attempts (default: 3) */
148
+ attempts?: number;
149
+ /** Backoff strategy (default: 'exponential') */
150
+ backoff?: RetryBackoff;
151
+ /** Initial delay in milliseconds (default: 1000) */
152
+ initialDelay?: number;
153
+ /** Maximum delay in milliseconds (default: 30000) */
154
+ maxDelay?: number;
155
+ /** Multiplier for exponential backoff (default: 2) */
156
+ multiplier?: number;
157
+ /** Error codes to retry on (default: CONNECTION_FAILED, TIMEOUT, NETWORK_ERROR) */
158
+ retryOn?: PropsRPCErrorCode[];
159
+ }
160
+ /**
161
+ * Default retry configuration
162
+ */
163
+ export declare const DEFAULT_RETRY_CONFIG: Required<RetryConfig>;
164
+ /**
165
+ * Calculate delay for retry attempt based on backoff strategy
166
+ */
167
+ export declare function calculateRetryDelay(attempt: number, config: Required<RetryConfig>): number;
168
+ /**
169
+ * Execute a function with retry logic
170
+ *
171
+ * Wraps an async function with configurable retry behavior including
172
+ * exponential backoff, maximum attempts, and error code filtering.
173
+ *
174
+ * @example
175
+ * ```typescript
176
+ * const result = await withRetry(
177
+ * () => service.generate(options),
178
+ * { attempts: 3, backoff: 'exponential' }
179
+ * )
180
+ * ```
181
+ */
182
+ export declare function withRetry<T>(fn: () => Promise<T>, config?: RetryConfig): Promise<T>;
183
+ /**
184
+ * Options for creating a Props RPC client
185
+ */
186
+ export interface PropsClientOptions<Env = unknown> {
187
+ /**
188
+ * The service binding from the worker environment
189
+ *
190
+ * @example
191
+ * ```typescript
192
+ * const client = createPropsClient({ service: env.AI_PROPS })
193
+ * ```
194
+ */
195
+ service: {
196
+ getService(): PropsServiceCoreInterface;
197
+ };
198
+ /**
199
+ * Request timeout in milliseconds (default: 30000)
200
+ */
201
+ timeout?: number;
202
+ /**
203
+ * Retry configuration
204
+ */
205
+ retry?: RetryConfig;
206
+ /**
207
+ * Called before each RPC call
208
+ */
209
+ onRequest?: (method: string, args: unknown[]) => void;
210
+ /**
211
+ * Called after each RPC call
212
+ */
213
+ onResponse?: (method: string, result: unknown, duration: number) => void;
214
+ /**
215
+ * Called when an RPC call fails
216
+ */
217
+ onError?: (method: string, error: Error) => void;
218
+ }
219
+ /**
220
+ * Interface matching PropsServiceCore methods
221
+ * Used for typing the client without importing the class
222
+ */
223
+ export interface PropsServiceCoreInterface {
224
+ generate<T = Record<string, unknown>>(options: GeneratePropsOptions): Promise<GeneratePropsResult<T>>;
225
+ getSync<T = Record<string, unknown>>(schema: PropSchema, context?: Record<string, unknown>): T;
226
+ prefetch(requests: GeneratePropsOptions[]): Promise<void>;
227
+ generateMany<T = Record<string, unknown>>(requests: GeneratePropsOptions[]): Promise<GeneratePropsResult<T>[]>;
228
+ mergeWithGenerated<T extends Record<string, unknown>>(schema: PropSchema, partialProps: Partial<T>, options?: Omit<GeneratePropsOptions, 'schema' | 'context'>): Promise<T>;
229
+ configure(config: Partial<AIPropsConfig>): void;
230
+ getConfig(): AIPropsConfig;
231
+ resetConfig(): void;
232
+ getCached<T>(key: string): PropsCacheEntry<T> | undefined;
233
+ setCached<T>(key: string, props: T): void;
234
+ deleteCached(key: string): boolean;
235
+ clearCache(): void;
236
+ getCacheSize(): number;
237
+ createCacheKey(schema: PropSchema, context?: Record<string, unknown>): string;
238
+ configureCache(ttl: number): void;
239
+ validate(props: Record<string, unknown>, schema: PropSchema): ValidationResult;
240
+ hasRequired(props: Record<string, unknown>, required: string[]): boolean;
241
+ getMissing(props: Record<string, unknown>, schema: PropSchema): string[];
242
+ isComplete(props: Record<string, unknown>, schema: PropSchema): boolean;
243
+ sanitize<T extends Record<string, unknown>>(props: T, schema: PropSchema): Partial<T>;
244
+ mergeDefaults<T extends Record<string, unknown>>(props: Partial<T>, defaults: Partial<T>, schema: PropSchema): Partial<T>;
245
+ }
246
+ import type { PropSchema, GeneratePropsOptions, GeneratePropsResult, AIPropsConfig, PropsCacheEntry, ValidationResult } from './types.js';
247
+ /**
248
+ * Props client instance with wrapped methods
249
+ */
250
+ export interface PropsClientInstance extends PropsServiceCoreInterface {
251
+ /**
252
+ * Get the underlying service instance
253
+ */
254
+ getUnderlyingService(): PropsServiceCoreInterface;
255
+ }
256
+ /**
257
+ * Create a typed Props RPC client with optional retry and monitoring
258
+ *
259
+ * Wraps the service binding with timeout handling, retry logic, and
260
+ * lifecycle hooks for monitoring.
261
+ *
262
+ * @example
263
+ * ```typescript
264
+ * // Basic usage
265
+ * const client = createPropsClient({ service: env.AI_PROPS })
266
+ * const result = await client.generate({ schema: { title: 'Page title' } })
267
+ *
268
+ * // With retry and monitoring
269
+ * const client = createPropsClient({
270
+ * service: env.AI_PROPS,
271
+ * timeout: 30000,
272
+ * retry: { attempts: 3, backoff: 'exponential' },
273
+ * onRequest: (method, args) => console.log(`Calling ${method}`),
274
+ * onResponse: (method, result, duration) =>
275
+ * console.log(`${method} completed in ${duration}ms`),
276
+ * onError: (method, error) => console.error(`${method} failed:`, error)
277
+ * })
278
+ * ```
279
+ */
280
+ export declare function createPropsClient(options: PropsClientOptions): PropsClientInstance;
281
+ /**
282
+ * Extract the service type from an environment binding
283
+ *
284
+ * @example
285
+ * ```typescript
286
+ * interface Env {
287
+ * AI_PROPS: Service<PropsService>
288
+ * }
289
+ *
290
+ * type ServiceType = ExtractService<Env['AI_PROPS']>
291
+ * // ServiceType = PropsService
292
+ * ```
293
+ */
294
+ export type ExtractService<T> = T extends {
295
+ getService(): infer S;
296
+ } ? S : never;
297
+ /**
298
+ * Type for a Service Binding to PropsService
299
+ *
300
+ * Use this in your Env interface for proper typing.
301
+ *
302
+ * @example
303
+ * ```typescript
304
+ * interface Env {
305
+ * AI_PROPS: PropsServiceBinding
306
+ * }
307
+ * ```
308
+ */
309
+ export interface PropsServiceBinding {
310
+ getService(): PropsServiceCoreInterface;
311
+ fetch(request: Request): Promise<Response>;
312
+ }
313
+ //# sourceMappingURL=rpc.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../src/rpc.ts"],"names":[],"mappings":"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"}