schemantic 0.1.0 → 0.2.1

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 (49) hide show
  1. package/CHANGELOG.md +70 -3
  2. package/README.md +17 -14
  3. package/dist/cli/index.d.ts.map +1 -1
  4. package/dist/cli/index.js +24 -14
  5. package/dist/cli/index.js.map +1 -1
  6. package/dist/core/schemantic.d.ts.map +1 -1
  7. package/dist/core/schemantic.js +61 -13
  8. package/dist/core/schemantic.js.map +1 -1
  9. package/dist/generators/api-client-generator.d.ts.map +1 -1
  10. package/dist/generators/api-client-generator.js +24 -4
  11. package/dist/generators/api-client-generator.js.map +1 -1
  12. package/dist/generators/hook-generator.d.ts.map +1 -1
  13. package/dist/generators/hook-generator.js +56 -6
  14. package/dist/generators/hook-generator.js.map +1 -1
  15. package/dist/lib/api/api-client.d.ts +71 -0
  16. package/dist/lib/api/api-client.d.ts.map +1 -0
  17. package/dist/lib/api/api-client.js +238 -0
  18. package/dist/lib/api/api-client.js.map +1 -0
  19. package/dist/lib/api/barrel.d.ts +4 -0
  20. package/dist/lib/api/barrel.d.ts.map +1 -0
  21. package/dist/lib/api/barrel.js +26 -0
  22. package/dist/lib/api/barrel.js.map +1 -0
  23. package/dist/lib/api/hooks.d.ts +36 -0
  24. package/dist/lib/api/hooks.d.ts.map +1 -0
  25. package/dist/lib/api/hooks.js +120 -0
  26. package/dist/lib/api/hooks.js.map +1 -0
  27. package/dist/lib/api/index.d.ts +4 -0
  28. package/dist/lib/api/index.d.ts.map +1 -0
  29. package/dist/lib/api/index.js +8 -0
  30. package/dist/lib/api/index.js.map +1 -0
  31. package/dist/lib/api/types.d.ts +366 -0
  32. package/dist/lib/api/types.d.ts.map +1 -0
  33. package/dist/lib/api/types.js +315 -0
  34. package/dist/lib/api/types.js.map +1 -0
  35. package/dist/plugins/branded-types.js +1 -1
  36. package/dist/plugins/builtin.d.ts.map +1 -1
  37. package/dist/plugins/builtin.js +13 -6
  38. package/dist/plugins/builtin.js.map +1 -1
  39. package/dist/plugins/performance-monitoring.js +1 -1
  40. package/dist/plugins/request-deduplication.js +1 -1
  41. package/dist/plugins/zod-validation.d.ts +2 -1
  42. package/dist/plugins/zod-validation.d.ts.map +1 -1
  43. package/dist/plugins/zod-validation.js +66 -30
  44. package/dist/plugins/zod-validation.js.map +1 -1
  45. package/docs/CONFIGURATION.md +4 -4
  46. package/docs/FASTAPI_TUTORIAL.md +1497 -1497
  47. package/docs/PLUGINS.md +4 -0
  48. package/docs/PLUGIN_DEVELOPMENT.md +720 -720
  49. package/package.json +11 -6
@@ -51,7 +51,7 @@ function recordPerformanceMetric(operation, duration) {
51
51
  */
52
52
  exports.zodValidationPlugin = {
53
53
  name: "zod-validation",
54
- version: "2.0.0",
54
+ version: "0.1.0",
55
55
  description: "Advanced Zod schema generation with performance optimizations and type safety enhancements",
56
56
  /**
57
57
  * Transform schema to include Zod validation metadata
@@ -148,6 +148,24 @@ exports.zodValidationPlugin = {
148
148
  ]
149
149
  .filter(Boolean)
150
150
  .join("\n\n");
151
+ // Ensure zod import is present; include 'z' only if the content references it
152
+ if (!generatedClient.content.includes("from 'zod'")) {
153
+ const needsZ = generatedClient.content.includes("z.");
154
+ generatedClient.content =
155
+ `import { ${needsZ ? "z, " : ""}ZodType } from 'zod';\n` +
156
+ generatedClient.content;
157
+ }
158
+ else if (!generatedClient.content.includes("ZodType")) {
159
+ generatedClient.content = generatedClient.content.replace(/import\s*\{([^}]*)\}\s*from\s*['"]zod['"];?/, (_m, p1) => {
160
+ const names = p1
161
+ .split(",")
162
+ .map((s) => s.trim())
163
+ .filter(Boolean);
164
+ if (!names.includes("ZodType"))
165
+ names.push("ZodType");
166
+ return `import { ${names.join(", ")} } from 'zod';`;
167
+ });
168
+ }
151
169
  // Update dependencies
152
170
  if (!generatedClient.dependencies.includes("zod")) {
153
171
  generatedClient.dependencies.push("zod");
@@ -257,7 +275,7 @@ function buildZodSchema(schema, options, depth = 0, context) {
257
275
  }
258
276
  }
259
277
  if (typeName) {
260
- const formattedTypeName = formatTypeName(typeName);
278
+ const formattedTypeName = formatTypeNameWithContext(typeName, context);
261
279
  return `${formattedTypeName}Schema`;
262
280
  }
263
281
  }
@@ -291,14 +309,18 @@ function buildZodSchema(schema, options, depth = 0, context) {
291
309
  /**
292
310
  * Helper function to format type names consistently
293
311
  */
294
- function formatTypeName(name) {
295
- // Convert to PascalCase and add API prefix if not present.
296
- // Preserve internal capitalization (e.g., UserRole -> UserRole).
312
+ // (formatTypeName removed - use formatTypeNameWithContext instead)
313
+ /**
314
+ * Format a type name using optional generation context to apply prefix/suffix.
315
+ */
316
+ function formatTypeNameWithContext(name, context) {
297
317
  const tokens = name.split(/[-_\s]+/).filter(Boolean);
298
318
  const pascalCase = tokens
299
319
  .map((word) => (word ? word.charAt(0).toUpperCase() + word.slice(1) : ""))
300
320
  .join("");
301
- return pascalCase.startsWith("API") ? pascalCase : `API${pascalCase}`;
321
+ const prefix = context?.config?.typePrefix ?? "";
322
+ const suffix = context?.config?.typeSuffix ?? "";
323
+ return `${prefix || ""}${pascalCase}${suffix || ""}`;
302
324
  }
303
325
  /**
304
326
  * Build Zod string schema with validation rules
@@ -414,8 +436,10 @@ function buildObjectSchema(schema, options, depth, context) {
414
436
  const strictMode = options.strictMode ? ".strict()" : "";
415
437
  const base = `z.object({\n${properties.join(",\n")}\n})${strictMode}`;
416
438
  if (wantsCamel && transformPairs.length > 0) {
417
- return `${base}.transform((val) => ({\n${transformPairs.join(",\n")}\n}))`;
439
+ // Type the transform parameter to avoid implicit any in generated code
440
+ return `${base}.transform((val: Record<string, unknown>) => ({\n${transformPairs.join(",\n")}\n}))`;
418
441
  }
442
+ // Default: return the base schema when no transform is required
419
443
  return base;
420
444
  }
421
445
  /**
@@ -428,7 +452,7 @@ function buildOneOfSchema(schema, options, context) {
428
452
  "$ref" in variant) {
429
453
  const refPath = variant["$ref"];
430
454
  const name = refPath.split("/").pop() || "Unknown";
431
- return `${formatTypeName(name)}Schema`;
455
+ return `${formatTypeNameWithContext(name, context)}Schema`;
432
456
  }
433
457
  return buildZodSchema(variant, options, 0, context);
434
458
  });
@@ -492,23 +516,29 @@ export const ${typeName}Schema = ${zodSchema};
492
516
  */
493
517
  export function validate${typeName}(data: unknown): { success: true; data: ${typeName} } | { success: false; errors: string[] } {
494
518
  const result = ${typeName}Schema.safeParse(data);
495
-
496
- if (result.success) {
497
- return { success: true, data: result.data };
519
+
520
+ if (!result.success) {
521
+ const issues = result.error?.issues ?? [];
522
+ console.warn('Response validation failed:', issues);
523
+ // Return a structured failure result so consumers can handle errors without requiring a runtime ValidationError class
524
+ return {
525
+ success: false,
526
+ errors: issues.length > 0
527
+ ? issues.map((iss: z.core.$ZodIssue) => (iss.path && iss.path.length > 0 ? iss.path.join('.') + ': ' + iss.message : '(root): ' + iss.message))
528
+ : []
529
+ };
498
530
  }
499
-
500
- return {
501
- success: false,
502
- errors: result.error.errors.map(err => \`\${err.path.join('.')}: \${err.message}\`)
503
- };
531
+
532
+ return { success: true, data: result.data as ${typeName} };
504
533
  }
505
534
 
506
535
  /**
507
536
  * Parse ${typeName} data with exception on validation failure
508
537
  */
509
538
  export function parse${typeName}(data: unknown): ${typeName} {
510
- return ${typeName}Schema.parse(data);
511
- }${brandedType}${typeGuard}`;
539
+ return ${typeName}Schema.parse(data) as ${typeName};
540
+ }
541
+ ${brandedType}${typeGuard}`;
512
542
  }
513
543
  /**
514
544
  * Generate validation middleware for API client
@@ -532,16 +562,22 @@ function generateValidationMiddleware(_generatedClient, _context, options) {
532
562
  });
533
563
  }
534
564
  const strictModeCode = options.strictMode
535
- ? 'throw new ValidationError(result.error.errors.map(err => `${err.path.join(".")}: ${err.message}`), data);'
565
+ ? "throw new ValidationError(result.error?.issues ?? [], data);"
536
566
  : "// In non-strict mode, return data as-is";
537
567
  return `
538
568
  /**
539
569
  * Validation middleware for API requests and responses
540
570
  */
541
571
  export class ValidationError extends Error {
542
- constructor(public errors: string[], public data: unknown) {
543
- super(\`Validation failed: \${errors.join(', ')}\`);
572
+ public issues: readonly z.core.$ZodIssue[];
573
+ constructor(issues: readonly z.core.$ZodIssue[], public data: unknown) {
574
+ const message = issues
575
+ .map((iss) => (iss.path && iss.path.length > 0 ? iss.path.join('.') + ': ' + iss.message : '(root): ' + iss.message))
576
+ .join('; ');
577
+ super('Validation failed: ' + message);
544
578
  this.name = 'ValidationError';
579
+ this.issues = issues;
580
+ Object.setPrototypeOf(this, ValidationError.prototype);
545
581
  }
546
582
  }
547
583
 
@@ -550,14 +586,13 @@ export class ValidationError extends Error {
550
586
  */
551
587
  export function validateRequest<T>(data: unknown, schema: ZodType<T>): T {
552
588
  const result = schema.safeParse(data);
553
-
589
+
554
590
  if (!result.success) {
555
- throw new ValidationError(
556
- result.error.errors.map(err => \`\${err.path.join('.')}: \${err.message}\`),
557
- data
558
- );
591
+ const issues = result.error?.issues ?? [];
592
+ // Use Zod v4 core issue type
593
+ throw new ValidationError(issues as readonly z.core.$ZodIssue[], data);
559
594
  }
560
-
595
+
561
596
  return result.data;
562
597
  }
563
598
 
@@ -566,12 +601,13 @@ export function validateRequest<T>(data: unknown, schema: ZodType<T>): T {
566
601
  */
567
602
  export function validateResponse<T>(data: unknown, schema: ZodType<T>): T {
568
603
  const result = schema.safeParse(data);
569
-
604
+
570
605
  if (!result.success) {
571
- console.warn('Response validation failed:', result.error.errors);
606
+ const issues = result.error?.issues ?? [];
607
+ console.warn('Response validation failed:', issues);
572
608
  ${strictModeCode}
573
609
  }
574
-
610
+
575
611
  return result.data;
576
612
  }`;
577
613
  }
@@ -1 +1 @@
1
- {"version":3,"file":"zod-validation.js","sourceRoot":"","sources":["../../src/plugins/zod-validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zod-validation.js","sourceRoot":"","sources":["../../src/plugins/zod-validation.ts"],"names":[],"mappings":"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"}
@@ -243,10 +243,10 @@ Examples:
243
243
  Prefix to add to generated type names.
244
244
 
245
245
  ```typescript
246
- typePrefix: "Api";
246
+ typePrefix: ""; // empty by default (no prefix)
247
247
  ```
248
248
 
249
- Default prefix is `API`, producing names like `APIUser`, `APIProduct`. Customize if desired.
249
+ By default no prefix is added. Set a value here to add one, e.g. `"MyAPI"` to produce `MyAPIUser`.
250
250
 
251
251
  #### `typeSuffix`
252
252
 
@@ -316,7 +316,7 @@ Array of plugin configurations.
316
316
  plugins: [
317
317
  { name: "jsdoc", enabled: true },
318
318
  { name: "validation", enabled: true },
319
- { name: "react-hooks", enabled: false },
319
+ // { name: "react-hooks", enabled: false }, // temporarily disabled project-wide
320
320
  { name: "custom-plugin", enabled: true, options: { debug: true } },
321
321
  ];
322
322
  ```
@@ -460,7 +460,7 @@ const advancedConfig: SchemanticConfig = {
460
460
  useNullishCoalescing: true,
461
461
 
462
462
  namingConvention: "camelCase",
463
- typePrefix: "Api",
463
+ typePrefix: "",
464
464
  typeSuffix: "Type",
465
465
 
466
466
  customTypeMappings: {