@carlonicora/nextjs-jsonapi 1.49.0 → 1.50.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 (20) hide show
  1. package/dist/scripts/generate-web-module/generator.d.ts.map +1 -1
  2. package/dist/scripts/generate-web-module/generator.js +42 -33
  3. package/dist/scripts/generate-web-module/generator.js.map +1 -1
  4. package/dist/scripts/generate-web-module/transformers/relationship-resolver.d.ts.map +1 -1
  5. package/dist/scripts/generate-web-module/transformers/relationship-resolver.js +8 -6
  6. package/dist/scripts/generate-web-module/transformers/relationship-resolver.js.map +1 -1
  7. package/dist/scripts/generate-web-module/types/json-schema.interface.d.ts +2 -0
  8. package/dist/scripts/generate-web-module/types/json-schema.interface.d.ts.map +1 -1
  9. package/dist/scripts/generate-web-module/types/template-data.interface.d.ts +2 -0
  10. package/dist/scripts/generate-web-module/types/template-data.interface.d.ts.map +1 -1
  11. package/dist/scripts/generate-web-module/validators/json-schema-validator.d.ts +1 -1
  12. package/dist/scripts/generate-web-module/validators/json-schema-validator.d.ts.map +1 -1
  13. package/dist/scripts/generate-web-module/validators/json-schema-validator.js +74 -25
  14. package/dist/scripts/generate-web-module/validators/json-schema-validator.js.map +1 -1
  15. package/package.json +1 -1
  16. package/scripts/generate-web-module/generator.ts +48 -37
  17. package/scripts/generate-web-module/transformers/relationship-resolver.ts +8 -6
  18. package/scripts/generate-web-module/types/json-schema.interface.ts +2 -0
  19. package/scripts/generate-web-module/types/template-data.interface.ts +2 -0
  20. package/scripts/generate-web-module/validators/json-schema-validator.ts +79 -27
@@ -1 +1 @@
1
- {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../scripts/generate-web-module/generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA8BH,OAAO,EAAuC,wBAAwB,EAAwB,MAAM,SAAS,CAAC;AAI9G;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,OAAO,CAAC,CA+E3F;AAkPD,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../scripts/generate-web-module/generator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA8BH,OAAO,EAAuC,wBAAwB,EAAwB,MAAM,SAAS,CAAC;AAI9G;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,OAAO,CAAC,CA0F3F;AAkPD,eAAe,iBAAiB,CAAC"}
@@ -75,47 +75,56 @@ async function generateWebModule(options) {
75
75
  console.info("\n⚠️ Validation warnings (non-blocking):");
76
76
  validation.warnings.forEach((w) => console.info(` - ${w}`));
77
77
  }
78
- const schema = validation.data;
79
- console.info(` ✅ Schema valid: ${schema.moduleName}`);
80
- // Step 2: Build template data
81
- console.info("\n🔨 Building template data...");
82
- const templateData = buildTemplateData(schema);
83
- console.info(` Module: ${templateData.names.pascalCase}`);
84
- console.info(` Target: ${templateData.targetDir}`);
85
- console.info(` Extends Content: ${templateData.extendsContent}`);
86
- console.info(` Fields: ${templateData.fields.length}`);
87
- console.info(` Relationships: ${templateData.relationships.length}`);
88
- // Step 3: Generate all files
89
- console.info("\n📝 Generating files...");
90
- const files = generateAllFiles(templateData, schema);
91
- console.info(` Generated ${files.length} file templates`);
92
- // Step 4: Determine web base path
78
+ const schemas = validation.data;
79
+ const total = schemas.length;
80
+ console.info(` ✅ ${total} schema(s) valid`);
81
+ // Determine web base path once
93
82
  const webBasePath = findWebBasePath(jsonPath);
94
83
  if (!webBasePath) {
95
84
  console.error("\n❌ Could not determine web app base path");
96
85
  return false;
97
86
  }
98
87
  console.info(` Web base path: ${webBasePath}`);
99
- // Step 5: Write files
100
- console.info("\n💾 Writing files...");
101
- const results = (0, utils_1.writeFiles)(files, { dryRun, force });
102
- (0, utils_1.printResults)(results);
103
- // Step 6: Update Bootstrapper (unless --no-register)
104
- if (!noRegister) {
105
- console.info("\n🔧 Updating Bootstrapper.ts...");
106
- const bootstrapResult = (0, utils_1.updateBootstrapper)(templateData, webBasePath, dryRun);
107
- console.info(` ${bootstrapResult.success ? "✅" : "❌"} ${bootstrapResult.message}`);
108
- }
109
- // Step 7: Update i18n for all languages (unless --no-register)
110
- if (!noRegister) {
111
- const languages = schema.languages || ["en"];
112
- console.info(`\n🌐 Updating i18n for ${languages.length} language(s)...`);
113
- for (const language of languages) {
114
- const i18nResult = (0, utils_1.updateI18n)(templateData, webBasePath, language, dryRun);
115
- console.info(` ${i18nResult.success ? "✅" : "❌"} ${i18nResult.message}`);
88
+ for (let i = 0; i < total; i++) {
89
+ const schema = schemas[i];
90
+ console.info(`\n📦 Processing module ${i + 1}/${total}: ${schema.moduleName}`);
91
+ console.info(`${"─".repeat(50)}`);
92
+ // Step 2: Build template data
93
+ console.info("🔨 Building template data...");
94
+ const templateData = buildTemplateData(schema);
95
+ console.info(` Module: ${templateData.names.pascalCase}`);
96
+ console.info(` Target: ${templateData.targetDir}`);
97
+ console.info(` Extends Content: ${templateData.extendsContent}`);
98
+ console.info(` Fields: ${templateData.fields.length}`);
99
+ console.info(` Relationships: ${templateData.relationships.length}`);
100
+ // Step 3: Generate all files
101
+ console.info("\n📝 Generating files...");
102
+ const files = generateAllFiles(templateData, schema);
103
+ console.info(` Generated ${files.length} file templates`);
104
+ // Step 5: Write files
105
+ console.info("\n💾 Writing files...");
106
+ const results = (0, utils_1.writeFiles)(files, { dryRun, force });
107
+ (0, utils_1.printResults)(results);
108
+ // Step 6: Update Bootstrapper (unless --no-register)
109
+ if (!noRegister) {
110
+ console.info("\n🔧 Updating Bootstrapper.ts...");
111
+ const bootstrapResult = (0, utils_1.updateBootstrapper)(templateData, webBasePath, dryRun);
112
+ console.info(` ${bootstrapResult.success ? "✅" : "❌"} ${bootstrapResult.message}`);
113
+ }
114
+ // Step 7: Update i18n for all languages (unless --no-register)
115
+ if (!noRegister) {
116
+ const languages = schema.languages || ["en"];
117
+ console.info(`\n🌐 Updating i18n for ${languages.length} language(s)...`);
118
+ for (const language of languages) {
119
+ const i18nResult = (0, utils_1.updateI18n)(templateData, webBasePath, language, dryRun);
120
+ console.info(` ${i18nResult.success ? "✅" : "❌"} ${i18nResult.message}`);
121
+ }
116
122
  }
123
+ console.info(`\n✅ ${schema.moduleName} generation complete!`);
117
124
  }
118
- console.info("\n✅ Generation complete!");
125
+ // Final summary
126
+ console.info(`\n${"═".repeat(50)}`);
127
+ console.info(`✅ All done! ${total} module(s) generated successfully.`);
119
128
  if (dryRun) {
120
129
  console.info("\n📝 This was a dry run. No files were actually written.");
121
130
  console.info(" Remove --dry-run to generate files.");
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../scripts/generate-web-module/generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../scripts/generate-web-module/generator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"relationship-resolver.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-web-module/transformers/relationship-resolver.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAiB,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAKlH;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,2CAA2C,CAAC;AACtF,eAAO,MAAM,uBAAuB,qCAAqC,CAAC;AAE1E;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAE7D;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,0BAA0B,GAAG,oBAAoB,CAsFzF;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,0BAA0B,EAAE,GAAG,oBAAoB,EAAE,CAExG;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAO/D;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,oBAAoB,EAAE,GAAG,yBAAyB,EAAE,CAUzG;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,oBAAoB,EAAE,GAAG,MAAM,EAAE,CAalF;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAyB5F;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAoBjG;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,oBAAoB,GAAG,MAAM,CAMnE"}
1
+ {"version":3,"file":"relationship-resolver.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-web-module/transformers/relationship-resolver.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAiB,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAKlH;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,2CAA2C,CAAC;AACtF,eAAO,MAAM,uBAAuB,qCAAqC,CAAC;AAE1E;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAE7D;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,0BAA0B,GAAG,oBAAoB,CAwFzF;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,0BAA0B,EAAE,GAAG,oBAAoB,EAAE,CAExG;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAO/D;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,oBAAoB,EAAE,GAAG,yBAAyB,EAAE,CAUzG;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,oBAAoB,EAAE,GAAG,MAAM,EAAE,CAalF;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAyB5F;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAoBjG;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,oBAAoB,GAAG,MAAM,CAMnE"}
@@ -43,7 +43,7 @@ function isFoundationImport(directory) {
43
43
  */
44
44
  function resolveRelationship(rel) {
45
45
  const isAuthor = rel.variant === field_mapping_types_1.AUTHOR_VARIANT;
46
- const effectiveName = rel.variant || rel.name;
46
+ const effectiveName = rel.alias || rel.variant || rel.name;
47
47
  const effectiveNameLower = (0, name_transformer_1.toCamelCase)(effectiveName);
48
48
  const modelKebab = (0, name_transformer_1.toKebabCase)(rel.name);
49
49
  // Form field ID
@@ -60,13 +60,14 @@ function resolveRelationship(rel) {
60
60
  // Selector component name
61
61
  // Foundation components use MultiSelect, generated modules use MultiSelector
62
62
  let selectorComponent;
63
+ const selectorBaseName = rel.alias || rel.name;
63
64
  if (rel.single) {
64
- selectorComponent = `${rel.name}Selector`;
65
+ selectorComponent = `${selectorBaseName}Selector`;
65
66
  }
66
67
  else {
67
68
  selectorComponent = isFoundationImport(rel.directory)
68
- ? `${rel.name}MultiSelect`
69
- : `${rel.name}MultiSelector`;
69
+ ? `${selectorBaseName}MultiSelect`
70
+ : `${selectorBaseName}MultiSelector`;
70
71
  }
71
72
  // Zod schema
72
73
  let zodSchema;
@@ -108,6 +109,7 @@ function resolveRelationship(rel) {
108
109
  return {
109
110
  name: rel.name,
110
111
  variant: rel.variant,
112
+ alias: rel.alias,
111
113
  directory: rel.directory,
112
114
  single: rel.single,
113
115
  nullable: rel.nullable,
@@ -157,7 +159,7 @@ function mapDirectoryToWebPath(directory) {
157
159
  */
158
160
  function generateServiceMethods(relationships) {
159
161
  return relationships.map((rel) => {
160
- const effectiveName = rel.variant || rel.name;
162
+ const effectiveName = rel.alias || rel.variant || rel.name;
161
163
  return {
162
164
  methodName: `findManyBy${(0, name_transformer_1.toPascalCase)(effectiveName)}`,
163
165
  paramName: `${(0, name_transformer_1.toCamelCase)(effectiveName)}Id`,
@@ -226,7 +228,7 @@ function getRelationshipFormJsx(rel, moduleName) {
226
228
  * @returns Expression for default value
227
229
  */
228
230
  function getDefaultValueExpression(rel, modelVarName) {
229
- const propertyName = rel.variant ? (0, name_transformer_1.toCamelCase)(rel.variant) : (0, name_transformer_1.toCamelCase)(rel.name);
231
+ const propertyName = rel.alias ? (0, name_transformer_1.toCamelCase)(rel.alias) : rel.variant ? (0, name_transformer_1.toCamelCase)(rel.variant) : (0, name_transformer_1.toCamelCase)(rel.name);
230
232
  const pluralPropertyName = (0, name_transformer_1.pluralize)(propertyName);
231
233
  if (rel.single) {
232
234
  if (rel.variant === field_mapping_types_1.AUTHOR_VARIANT) {
@@ -1 +1 @@
1
- {"version":3,"file":"relationship-resolver.js","sourceRoot":"","sources":["../../../../scripts/generate-web-module/transformers/relationship-resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"relationship-resolver.js","sourceRoot":"","sources":["../../../../scripts/generate-web-module/transformers/relationship-resolver.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,8 @@ export interface JsonFieldDefinition {
19
19
  export interface JsonRelationshipDefinition {
20
20
  name: string;
21
21
  variant?: string;
22
+ /** PascalCase alias for disambiguation when multiple relationships target the same entity (e.g., "DestinedPerson") */
23
+ alias?: string;
22
24
  directory: string;
23
25
  single: boolean;
24
26
  relationshipName: string;
@@ -1 +1 @@
1
- {"version":3,"file":"json-schema.interface.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-web-module/types/json-schema.interface.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,mBAAmB,EAAE,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAC9B,aAAa,EAAE,0BAA0B,EAAE,CAAC;IAC5C,oGAAoG;IACpG,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B"}
1
+ {"version":3,"file":"json-schema.interface.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-web-module/types/json-schema.interface.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sHAAsH;IACtH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,mBAAmB,EAAE,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAC9B,aAAa,EAAE,0BAA0B,EAAE,CAAC;IAC5C,oGAAoG;IACpG,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B"}
@@ -39,6 +39,8 @@ export type FormComponentType = "FormInput" | "FormTextarea" | "BlockNoteEditor"
39
39
  export interface FrontendRelationship {
40
40
  name: string;
41
41
  variant?: string;
42
+ /** PascalCase alias for disambiguation when multiple relationships target the same entity */
43
+ alias?: string;
42
44
  directory: string;
43
45
  single: boolean;
44
46
  nullable: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"template-data.interface.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-web-module/types/template-data.interface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"template-data.interface.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-web-module/types/template-data.interface.ts"],"names":[],"mappings":"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"}
@@ -28,7 +28,7 @@ export declare function formatValidationErrors(errors: ValidationError[]): strin
28
28
  * Validation result interface
29
29
  */
30
30
  export interface ValidationResult {
31
- data: JsonModuleDefinition | null;
31
+ data: JsonModuleDefinition[] | null;
32
32
  errors: string[];
33
33
  warnings: string[];
34
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"json-schema-validator.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-web-module/validators/json-schema-validator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAEtE,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,GAAG,GAAG,eAAe,EAAE,CAmKjE;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,CA6BxE;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAClC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CA+DnE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAElE"}
1
+ {"version":3,"file":"json-schema-validator.d.ts","sourceRoot":"","sources":["../../../../scripts/generate-web-module/validators/json-schema-validator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AAEtE,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,GAAG,GAAG,eAAe,EAAE,CAoNjE;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,CA6BxE;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,oBAAoB,EAAE,GAAG,IAAI,CAAC;IACpC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CAkEnE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAElE"}
@@ -160,6 +160,51 @@ function validateJsonSchema(schema) {
160
160
  severity: "warning",
161
161
  });
162
162
  }
163
+ // Validate alias format if provided (must be PascalCase)
164
+ if (rel.alias && !/^[A-Z][a-zA-Z0-9]*$/.test(rel.alias)) {
165
+ errors.push({
166
+ field: `relationships[${index}].alias`,
167
+ message: 'Alias must be PascalCase (e.g., "DestinedTo", "ReceivedBy")',
168
+ severity: "error",
169
+ });
170
+ }
171
+ });
172
+ // Check for duplicate relationship targets without alias
173
+ const nameCount = new Map();
174
+ schema.relationships.forEach((rel, index) => {
175
+ const name = rel.name;
176
+ if (!nameCount.has(name)) {
177
+ nameCount.set(name, []);
178
+ }
179
+ nameCount.get(name).push(index);
180
+ });
181
+ for (const [name, indices] of nameCount.entries()) {
182
+ if (indices.length > 1) {
183
+ for (const idx of indices) {
184
+ const rel = schema.relationships[idx];
185
+ if (!rel.alias) {
186
+ errors.push({
187
+ field: `relationships[${idx}].alias`,
188
+ message: `Relationship to "${name}" appears ${indices.length} times. All instances must have an "alias" field to avoid key collisions. Example: "alias": "DestinedTo"`,
189
+ severity: "error",
190
+ });
191
+ }
192
+ }
193
+ }
194
+ }
195
+ // Check for duplicate aliases
196
+ const aliasSet = new Set();
197
+ schema.relationships.forEach((rel, index) => {
198
+ if (rel.alias) {
199
+ if (aliasSet.has(rel.alias)) {
200
+ errors.push({
201
+ field: `relationships[${index}].alias`,
202
+ message: `Duplicate alias "${rel.alias}". Each alias must be unique.`,
203
+ severity: "error",
204
+ });
205
+ }
206
+ aliasSet.add(rel.alias);
207
+ }
163
208
  });
164
209
  }
165
210
  return errors;
@@ -230,32 +275,36 @@ function parseAndValidate(filePath) {
230
275
  result.errors.push(`Invalid JSON: ${e.message}`);
231
276
  return result;
232
277
  }
233
- // Handle array format (for bulk import compatibility)
234
- if (Array.isArray(schema)) {
235
- if (schema.length === 0) {
236
- result.errors.push("JSON array is empty");
237
- return result;
238
- }
239
- if (schema.length > 1) {
240
- result.warnings.push(`JSON file contains ${schema.length} definitions. Only processing the first one.`);
241
- }
242
- schema = schema[0];
278
+ // Normalize to array
279
+ const schemas = Array.isArray(schema) ? schema : [schema];
280
+ if (schemas.length === 0) {
281
+ result.errors.push("JSON array is empty");
282
+ return result;
243
283
  }
244
- // Validate
245
- const validationErrors = validateJsonSchema(schema);
246
- // Separate errors and warnings
247
- validationErrors.forEach((ve) => {
248
- const msg = `${ve.field}: ${ve.message}`;
249
- if (ve.severity === "error") {
250
- result.errors.push(msg);
251
- }
252
- else {
253
- result.warnings.push(msg);
284
+ // Validate each definition
285
+ const validSchemas = [];
286
+ for (let i = 0; i < schemas.length; i++) {
287
+ const item = schemas[i];
288
+ const prefix = schemas.length > 1 ? `[${i}] ` : "";
289
+ const validationErrors = validateJsonSchema(item);
290
+ let hasErrors = false;
291
+ validationErrors.forEach((ve) => {
292
+ const msg = `${prefix}${ve.field}: ${ve.message}`;
293
+ if (ve.severity === "error") {
294
+ result.errors.push(msg);
295
+ hasErrors = true;
296
+ }
297
+ else {
298
+ result.warnings.push(msg);
299
+ }
300
+ });
301
+ if (!hasErrors) {
302
+ validSchemas.push(item);
254
303
  }
255
- });
256
- // Only set data if validation passed
257
- if (result.errors.length === 0) {
258
- result.data = schema;
304
+ }
305
+ // Only set data if at least one schema passed validation
306
+ if (result.errors.length === 0 && validSchemas.length > 0) {
307
+ result.data = validSchemas;
259
308
  }
260
309
  return result;
261
310
  }
@@ -263,6 +312,6 @@ function parseAndValidate(filePath) {
263
312
  * Check if validation result passed (no errors)
264
313
  */
265
314
  function validationPassed(result) {
266
- return result.errors.length === 0 && result.data !== null;
315
+ return result.errors.length === 0 && result.data !== null && result.data.length > 0;
267
316
  }
268
317
  //# sourceMappingURL=json-schema-validator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"json-schema-validator.js","sourceRoot":"","sources":["../../../../scripts/generate-web-module/validators/json-schema-validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"json-schema-validator.js","sourceRoot":"","sources":["../../../../scripts/generate-web-module/validators/json-schema-validator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@carlonicora/nextjs-jsonapi",
3
- "version": "1.49.0",
3
+ "version": "1.50.0",
4
4
  "description": "Next.js JSON:API client with server/client support and caching",
5
5
  "author": "Carlo Nicora",
6
6
  "license": "GPL-3.0-or-later",
@@ -66,24 +66,11 @@ export async function generateWebModule(options: GenerateWebModuleOptions): Prom
66
66
  validation.warnings.forEach((w) => console.info(` - ${w}`));
67
67
  }
68
68
 
69
- const schema = validation.data!;
70
- console.info(` ✅ Schema valid: ${schema.moduleName}`);
71
-
72
- // Step 2: Build template data
73
- console.info("\n🔨 Building template data...");
74
- const templateData = buildTemplateData(schema);
75
- console.info(` Module: ${templateData.names.pascalCase}`);
76
- console.info(` Target: ${templateData.targetDir}`);
77
- console.info(` Extends Content: ${templateData.extendsContent}`);
78
- console.info(` Fields: ${templateData.fields.length}`);
79
- console.info(` Relationships: ${templateData.relationships.length}`);
80
-
81
- // Step 3: Generate all files
82
- console.info("\n📝 Generating files...");
83
- const files = generateAllFiles(templateData, schema);
84
- console.info(` Generated ${files.length} file templates`);
85
-
86
- // Step 4: Determine web base path
69
+ const schemas = validation.data!;
70
+ const total = schemas.length;
71
+ console.info(` ✅ ${total} schema(s) valid`);
72
+
73
+ // Determine web base path once
87
74
  const webBasePath = findWebBasePath(jsonPath);
88
75
  if (!webBasePath) {
89
76
  console.error("\n❌ Could not determine web app base path");
@@ -91,29 +78,53 @@ export async function generateWebModule(options: GenerateWebModuleOptions): Prom
91
78
  }
92
79
  console.info(` Web base path: ${webBasePath}`);
93
80
 
94
- // Step 5: Write files
95
- console.info("\n💾 Writing files...");
96
- const results = writeFiles(files, { dryRun, force });
97
- printResults(results);
98
-
99
- // Step 6: Update Bootstrapper (unless --no-register)
100
- if (!noRegister) {
101
- console.info("\n🔧 Updating Bootstrapper.ts...");
102
- const bootstrapResult = updateBootstrapper(templateData, webBasePath, dryRun);
103
- console.info(` ${bootstrapResult.success ? "✅" : "❌"} ${bootstrapResult.message}`);
104
- }
81
+ for (let i = 0; i < total; i++) {
82
+ const schema = schemas[i];
83
+ console.info(`\n📦 Processing module ${i + 1}/${total}: ${schema.moduleName}`);
84
+ console.info(`${"─".repeat(50)}`);
85
+
86
+ // Step 2: Build template data
87
+ console.info("🔨 Building template data...");
88
+ const templateData = buildTemplateData(schema);
89
+ console.info(` Module: ${templateData.names.pascalCase}`);
90
+ console.info(` Target: ${templateData.targetDir}`);
91
+ console.info(` Extends Content: ${templateData.extendsContent}`);
92
+ console.info(` Fields: ${templateData.fields.length}`);
93
+ console.info(` Relationships: ${templateData.relationships.length}`);
94
+
95
+ // Step 3: Generate all files
96
+ console.info("\n📝 Generating files...");
97
+ const files = generateAllFiles(templateData, schema);
98
+ console.info(` Generated ${files.length} file templates`);
99
+
100
+ // Step 5: Write files
101
+ console.info("\n💾 Writing files...");
102
+ const results = writeFiles(files, { dryRun, force });
103
+ printResults(results);
104
+
105
+ // Step 6: Update Bootstrapper (unless --no-register)
106
+ if (!noRegister) {
107
+ console.info("\n🔧 Updating Bootstrapper.ts...");
108
+ const bootstrapResult = updateBootstrapper(templateData, webBasePath, dryRun);
109
+ console.info(` ${bootstrapResult.success ? "✅" : "❌"} ${bootstrapResult.message}`);
110
+ }
105
111
 
106
- // Step 7: Update i18n for all languages (unless --no-register)
107
- if (!noRegister) {
108
- const languages = schema.languages || ["en"];
109
- console.info(`\n🌐 Updating i18n for ${languages.length} language(s)...`);
110
- for (const language of languages) {
111
- const i18nResult = updateI18n(templateData, webBasePath, language, dryRun);
112
- console.info(` ${i18nResult.success ? "✅" : "❌"} ${i18nResult.message}`);
112
+ // Step 7: Update i18n for all languages (unless --no-register)
113
+ if (!noRegister) {
114
+ const languages = schema.languages || ["en"];
115
+ console.info(`\n🌐 Updating i18n for ${languages.length} language(s)...`);
116
+ for (const language of languages) {
117
+ const i18nResult = updateI18n(templateData, webBasePath, language, dryRun);
118
+ console.info(` ${i18nResult.success ? "✅" : "❌"} ${i18nResult.message}`);
119
+ }
113
120
  }
121
+
122
+ console.info(`\n✅ ${schema.moduleName} generation complete!`);
114
123
  }
115
124
 
116
- console.info("\n✅ Generation complete!");
125
+ // Final summary
126
+ console.info(`\n${"═".repeat(50)}`);
127
+ console.info(`✅ All done! ${total} module(s) generated successfully.`);
117
128
 
118
129
  if (dryRun) {
119
130
  console.info("\n📝 This was a dry run. No files were actually written.");
@@ -37,7 +37,7 @@ export function isFoundationImport(directory: string): boolean {
37
37
  */
38
38
  export function resolveRelationship(rel: JsonRelationshipDefinition): FrontendRelationship {
39
39
  const isAuthor = rel.variant === AUTHOR_VARIANT;
40
- const effectiveName = rel.variant || rel.name;
40
+ const effectiveName = rel.alias || rel.variant || rel.name;
41
41
  const effectiveNameLower = toCamelCase(effectiveName);
42
42
  const modelKebab = toKebabCase(rel.name);
43
43
 
@@ -56,12 +56,13 @@ export function resolveRelationship(rel: JsonRelationshipDefinition): FrontendRe
56
56
  // Selector component name
57
57
  // Foundation components use MultiSelect, generated modules use MultiSelector
58
58
  let selectorComponent: string;
59
+ const selectorBaseName = rel.alias || rel.name;
59
60
  if (rel.single) {
60
- selectorComponent = `${rel.name}Selector`;
61
+ selectorComponent = `${selectorBaseName}Selector`;
61
62
  } else {
62
63
  selectorComponent = isFoundationImport(rel.directory)
63
- ? `${rel.name}MultiSelect`
64
- : `${rel.name}MultiSelector`;
64
+ ? `${selectorBaseName}MultiSelect`
65
+ : `${selectorBaseName}MultiSelector`;
65
66
  }
66
67
 
67
68
  // Zod schema
@@ -105,6 +106,7 @@ export function resolveRelationship(rel: JsonRelationshipDefinition): FrontendRe
105
106
  return {
106
107
  name: rel.name,
107
108
  variant: rel.variant,
109
+ alias: rel.alias,
108
110
  directory: rel.directory,
109
111
  single: rel.single,
110
112
  nullable: rel.nullable,
@@ -157,7 +159,7 @@ export function mapDirectoryToWebPath(directory: string): string {
157
159
  */
158
160
  export function generateServiceMethods(relationships: FrontendRelationship[]): RelationshipServiceMethod[] {
159
161
  return relationships.map((rel) => {
160
- const effectiveName = rel.variant || rel.name;
162
+ const effectiveName = rel.alias || rel.variant || rel.name;
161
163
  return {
162
164
  methodName: `findManyBy${toPascalCase(effectiveName)}`,
163
165
  paramName: `${toCamelCase(effectiveName)}Id`,
@@ -230,7 +232,7 @@ export function getRelationshipFormJsx(rel: FrontendRelationship, moduleName: st
230
232
  * @returns Expression for default value
231
233
  */
232
234
  export function getDefaultValueExpression(rel: FrontendRelationship, modelVarName: string): string {
233
- const propertyName = rel.variant ? toCamelCase(rel.variant) : toCamelCase(rel.name);
235
+ const propertyName = rel.alias ? toCamelCase(rel.alias) : rel.variant ? toCamelCase(rel.variant) : toCamelCase(rel.name);
234
236
  const pluralPropertyName = pluralize(propertyName);
235
237
 
236
238
  if (rel.single) {
@@ -21,6 +21,8 @@ export interface JsonFieldDefinition {
21
21
  export interface JsonRelationshipDefinition {
22
22
  name: string;
23
23
  variant?: string;
24
+ /** PascalCase alias for disambiguation when multiple relationships target the same entity (e.g., "DestinedPerson") */
25
+ alias?: string;
24
26
  directory: string;
25
27
  single: boolean;
26
28
  relationshipName: string; // Backend-specific, ignored in frontend
@@ -49,6 +49,8 @@ export type FormComponentType =
49
49
  export interface FrontendRelationship {
50
50
  name: string; // e.g., "User"
51
51
  variant?: string; // e.g., "Author"
52
+ /** PascalCase alias for disambiguation when multiple relationships target the same entity */
53
+ alias?: string;
52
54
  directory: string; // e.g., "foundations"
53
55
  single: boolean;
54
56
  nullable: boolean;
@@ -178,6 +178,55 @@ export function validateJsonSchema(schema: any): ValidationError[] {
178
178
  severity: "warning",
179
179
  });
180
180
  }
181
+
182
+ // Validate alias format if provided (must be PascalCase)
183
+ if (rel.alias && !/^[A-Z][a-zA-Z0-9]*$/.test(rel.alias)) {
184
+ errors.push({
185
+ field: `relationships[${index}].alias`,
186
+ message: 'Alias must be PascalCase (e.g., "DestinedTo", "ReceivedBy")',
187
+ severity: "error",
188
+ });
189
+ }
190
+ });
191
+
192
+ // Check for duplicate relationship targets without alias
193
+ const nameCount = new Map<string, number[]>();
194
+ schema.relationships.forEach((rel: any, index: number) => {
195
+ const name = rel.name;
196
+ if (!nameCount.has(name)) {
197
+ nameCount.set(name, []);
198
+ }
199
+ nameCount.get(name)!.push(index);
200
+ });
201
+
202
+ for (const [name, indices] of nameCount.entries()) {
203
+ if (indices.length > 1) {
204
+ for (const idx of indices) {
205
+ const rel = schema.relationships[idx];
206
+ if (!rel.alias) {
207
+ errors.push({
208
+ field: `relationships[${idx}].alias`,
209
+ message: `Relationship to "${name}" appears ${indices.length} times. All instances must have an "alias" field to avoid key collisions. Example: "alias": "DestinedTo"`,
210
+ severity: "error",
211
+ });
212
+ }
213
+ }
214
+ }
215
+ }
216
+
217
+ // Check for duplicate aliases
218
+ const aliasSet = new Set<string>();
219
+ schema.relationships.forEach((rel: any, index: number) => {
220
+ if (rel.alias) {
221
+ if (aliasSet.has(rel.alias)) {
222
+ errors.push({
223
+ field: `relationships[${index}].alias`,
224
+ message: `Duplicate alias "${rel.alias}". Each alias must be unique.`,
225
+ severity: "error",
226
+ });
227
+ }
228
+ aliasSet.add(rel.alias);
229
+ }
181
230
  });
182
231
  }
183
232
 
@@ -225,7 +274,7 @@ export function formatValidationErrors(errors: ValidationError[]): string {
225
274
  * Validation result interface
226
275
  */
227
276
  export interface ValidationResult {
228
- data: JsonModuleDefinition | null;
277
+ data: JsonModuleDefinition[] | null;
229
278
  errors: string[];
230
279
  warnings: string[];
231
280
  }
@@ -266,36 +315,39 @@ export function parseAndValidate(filePath: string): ValidationResult {
266
315
  return result;
267
316
  }
268
317
 
269
- // Handle array format (for bulk import compatibility)
270
- if (Array.isArray(schema)) {
271
- if (schema.length === 0) {
272
- result.errors.push("JSON array is empty");
273
- return result;
274
- }
275
- if (schema.length > 1) {
276
- result.warnings.push(
277
- `JSON file contains ${schema.length} definitions. Only processing the first one.`
278
- );
279
- }
280
- schema = schema[0];
318
+ // Normalize to array
319
+ const schemas: any[] = Array.isArray(schema) ? schema : [schema];
320
+ if (schemas.length === 0) {
321
+ result.errors.push("JSON array is empty");
322
+ return result;
281
323
  }
282
324
 
283
- // Validate
284
- const validationErrors = validateJsonSchema(schema);
325
+ // Validate each definition
326
+ const validSchemas: JsonModuleDefinition[] = [];
327
+ for (let i = 0; i < schemas.length; i++) {
328
+ const item = schemas[i];
329
+ const prefix = schemas.length > 1 ? `[${i}] ` : "";
330
+ const validationErrors = validateJsonSchema(item);
331
+
332
+ let hasErrors = false;
333
+ validationErrors.forEach((ve) => {
334
+ const msg = `${prefix}${ve.field}: ${ve.message}`;
335
+ if (ve.severity === "error") {
336
+ result.errors.push(msg);
337
+ hasErrors = true;
338
+ } else {
339
+ result.warnings.push(msg);
340
+ }
341
+ });
285
342
 
286
- // Separate errors and warnings
287
- validationErrors.forEach((ve) => {
288
- const msg = `${ve.field}: ${ve.message}`;
289
- if (ve.severity === "error") {
290
- result.errors.push(msg);
291
- } else {
292
- result.warnings.push(msg);
343
+ if (!hasErrors) {
344
+ validSchemas.push(item as JsonModuleDefinition);
293
345
  }
294
- });
346
+ }
295
347
 
296
- // Only set data if validation passed
297
- if (result.errors.length === 0) {
298
- result.data = schema as JsonModuleDefinition;
348
+ // Only set data if at least one schema passed validation
349
+ if (result.errors.length === 0 && validSchemas.length > 0) {
350
+ result.data = validSchemas;
299
351
  }
300
352
 
301
353
  return result;
@@ -305,5 +357,5 @@ export function parseAndValidate(filePath: string): ValidationResult {
305
357
  * Check if validation result passed (no errors)
306
358
  */
307
359
  export function validationPassed(result: ValidationResult): boolean {
308
- return result.errors.length === 0 && result.data !== null;
360
+ return result.errors.length === 0 && result.data !== null && result.data.length > 0;
309
361
  }