@atomic-ehr/codegen 0.0.1-canary.20250822153920.e501dd0 → 0.0.1-canary.20250827144501.0b93e2e

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/dist/config.d.ts CHANGED
@@ -52,9 +52,18 @@ export interface TypeScriptGeneratorConfig {
52
52
  strictMode?: boolean;
53
53
  includeProfiles?: boolean;
54
54
  includeExtensions?: boolean;
55
- includeValueSets?: boolean;
56
55
  includeCodeSystems?: boolean;
57
56
  includeOperations?: boolean;
57
+ /** Generate individual TypeScript files for value sets (default: false) */
58
+ generateValueSets?: boolean;
59
+ /** Include helper validation functions in value set files (default: false) */
60
+ includeValueSetHelpers?: boolean;
61
+ /** Which binding strengths to generate value sets for (default: ['required']) */
62
+ valueSetStrengths?: ('required' | 'preferred' | 'extensible' | 'example')[];
63
+ /** Directory name for value set files (relative to outputDir) (default: 'valuesets') */
64
+ valueSetDirectory?: string;
65
+ /** Value set generation mode (default: 'required-only') */
66
+ valueSetMode?: 'all' | 'required-only' | 'custom';
58
67
  fhirVersion?: "R4" | "R5";
59
68
  resourceTypes?: string[];
60
69
  maxDepth?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/config.js CHANGED
@@ -42,9 +42,13 @@ export const DEFAULT_CONFIG = {
42
42
  strictMode: true,
43
43
  includeProfiles: true,
44
44
  includeExtensions: false,
45
- includeValueSets: true,
46
45
  includeCodeSystems: false,
47
46
  includeOperations: false,
47
+ generateValueSets: false,
48
+ valueSetDirectory: 'valuesets',
49
+ valueSetMode: 'required-only',
50
+ valueSetStrengths: ['required'],
51
+ includeValueSetHelpers: false,
48
52
  fhirVersion: "R4",
49
53
  resourceTypes: [],
50
54
  maxDepth: 10,
@@ -272,6 +276,10 @@ export class ConfigValidator {
272
276
  "strictMode",
273
277
  "includeProfiles",
274
278
  "includeExtensions",
279
+ "includeCodeSystems",
280
+ "includeOperations",
281
+ "generateValueSets",
282
+ "includeValueSetHelpers",
275
283
  ];
276
284
  for (const field of booleanFields) {
277
285
  if (cfg[field] !== undefined && typeof cfg[field] !== "boolean") {
@@ -1 +1 @@
1
- {"version":3,"file":"binding.d.ts","sourceRoot":"","sources":["../../../src/typeschema/core/binding.ts"],"names":[],"mappings":"AACA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAQrE;;GAEG;AACH,wBAAsB,uBAAuB,CAC5C,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,GAC1C,OAAO,CACT,KAAK,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,SAAS,CACrE,CA8DA;AAED;;GAEG;AACH,wBAAsB,SAAS,CAC9B,OAAO,EAAE,iBAAiB,EAC1B,OAAO,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,GAC1C,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CA4C/B;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAC1C,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE,iBAAiB,EAC1B,OAAO,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,EAC5C,WAAW,CAAC,EAAE,WAAW,GACvB,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC,CA8C3C;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAC1C,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,EAC5C,WAAW,CAAC,EAAE,WAAW,GACvB,OAAO,CAAC,oBAAoB,EAAE,CAAC,CA0DjC"}
1
+ {"version":3,"file":"binding.d.ts","sourceRoot":"","sources":["../../../src/typeschema/core/binding.ts"],"names":[],"mappings":"AACA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAQrE;;GAEG;AACH,wBAAsB,uBAAuB,CAC5C,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,GAC1C,OAAO,CACT,KAAK,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,SAAS,CACrE,CA8DA;AAED;;GAEG;AACH,wBAAsB,SAAS,CAC9B,OAAO,EAAE,iBAAiB,EAC1B,OAAO,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,GAC1C,OAAO,CAAC,MAAM,EAAE,GAAG,SAAS,CAAC,CA8C/B;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAC1C,UAAU,EAAE,UAAU,EACtB,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE,iBAAiB,EAC1B,OAAO,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,EAC5C,WAAW,CAAC,EAAE,WAAW,GACvB,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC,CA8C3C;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAC1C,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,UAAU,CAAC,OAAO,gBAAgB,CAAC,EAC5C,WAAW,CAAC,EAAE,WAAW,GACvB,OAAO,CAAC,oBAAoB,EAAE,CAAC,CA0DjC"}
@@ -84,9 +84,10 @@ export async function buildEnum(element, manager) {
84
84
  // 1. Required bindings (always)
85
85
  // 2. Extensible bindings on code types (for better type safety)
86
86
  // 3. Preferred bindings on code types (for common usage patterns)
87
+ // 4. Extensible bindings on Coding types (broader coverage)
87
88
  const shouldGenerateEnum = strength === "required" ||
88
- (strength === "extensible" && element.type === "code") ||
89
- (strength === "preferred" && element.type === "code");
89
+ (strength === "extensible" && (element.type === "code" || element.type === "Coding")) ||
90
+ (strength === "preferred" && (element.type === "code" || element.type === "Coding"));
90
91
  if (!shouldGenerateEnum) {
91
92
  return undefined;
92
93
  }
@@ -103,7 +104,8 @@ export async function buildEnum(element, manager) {
103
104
  .map((c) => c.code)
104
105
  .filter((code) => code && typeof code === "string" && code.trim().length > 0);
105
106
  // Only return if we have valid codes and not too many (avoid huge enums)
106
- return codes.length > 0 && codes.length <= 50 ? codes : undefined;
107
+ // Increased limit from 50 to 100 for better value set coverage
108
+ return codes.length > 0 && codes.length <= 100 ? codes : undefined;
107
109
  }
108
110
  catch (error) {
109
111
  // Log the error for debugging but don't fail the generation
@@ -1 +1 @@
1
- {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../src/typeschema/generator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACN,KAAK,UAAU,EAGf,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAQrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAE1E;;;;;GAKG;AACH,qBAAa,mBAAmB;IAC/B,OAAO,CAAC,OAAO,CAAsC;IACrD,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,KAAK,CAAgC;IAC7C,OAAO,CAAC,WAAW,CAAC,CAAmB;IACvC,OAAO,CAAC,MAAM,CAAgB;gBAG7B,OAAO,GAAE,0BAA+B,EACxC,WAAW,CAAC,EAAE,gBAAgB;IAkB/B;;OAEG;YACW,eAAe;IAO7B;;OAEG;IACG,mBAAmB,CACxB,WAAW,EAAE,MAAM,EACnB,cAAc,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,UAAU,EAAE,CAAC;IAmGxB;;OAEG;IACG,kBAAkB,CACvB,UAAU,EAAE,UAAU,EACtB,WAAW,CAAC,EAAE,WAAW,GACvB,OAAO,CAAC,UAAU,EAAE,CAAC;IAMxB;;OAEG;IACG,mBAAmB,CACxB,WAAW,EAAE,UAAU,EAAE,EACzB,WAAW,CAAC,EAAE,WAAW,GACvB,OAAO,CAAC,UAAU,EAAE,CAAC;IA8DxB,OAAO,CAAC,gBAAgB;YAqDV,eAAe;YAIf,iBAAiB;YAMjB,gBAAgB;YAIhB,kBAAkB;IAMhC;;;OAGG;IACH,OAAO,CAAC,mCAAmC;IAuG3C;;;OAGG;IACH,OAAO,CAAC,oDAAoD;IAqD5D;;OAEG;IACH,OAAO,CAAC,0BAA0B;CAIlC;AAED;;GAEG;AACH,wBAAsB,6BAA6B,CAClD,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,0BAA+B,GACtC,OAAO,CAAC,UAAU,EAAE,CAAC,CAGvB;AAED;;GAEG;AACH,wBAAsB,6BAA6B,CAClD,WAAW,EAAE,UAAU,EAAE,EACzB,WAAW,CAAC,EAAE,WAAW,EACzB,OAAO,GAAE,0BAA+B,GACtC,OAAO,CAAC,UAAU,EAAE,CAAC,CAGvB;AAED;;GAEG;AACH,wBAAsB,4BAA4B,CACjD,UAAU,EAAE,UAAU,EACtB,WAAW,CAAC,EAAE,WAAW,EACzB,OAAO,GAAE,0BAA+B,GACtC,OAAO,CAAC,UAAU,EAAE,CAAC,CAGvB"}
1
+ {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../src/typeschema/generator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACN,KAAK,UAAU,EAGf,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAQrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAG1E;;;;;GAKG;AACH,qBAAa,mBAAmB;IAC/B,OAAO,CAAC,OAAO,CAAsC;IACrD,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,KAAK,CAAgC;IAC7C,OAAO,CAAC,WAAW,CAAC,CAAmB;IACvC,OAAO,CAAC,MAAM,CAAgB;gBAG7B,OAAO,GAAE,0BAA+B,EACxC,WAAW,CAAC,EAAE,gBAAgB;IAkB/B;;OAEG;YACW,eAAe;IAO7B;;OAEG;IACG,mBAAmB,CACxB,WAAW,EAAE,MAAM,EACnB,cAAc,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,UAAU,EAAE,CAAC;IAqIxB;;OAEG;IACG,kBAAkB,CACvB,UAAU,EAAE,UAAU,EACtB,WAAW,CAAC,EAAE,WAAW,GACvB,OAAO,CAAC,UAAU,EAAE,CAAC;IAMxB;;OAEG;IACG,mBAAmB,CACxB,WAAW,EAAE,UAAU,EAAE,EACzB,WAAW,CAAC,EAAE,WAAW,GACvB,OAAO,CAAC,UAAU,EAAE,CAAC;IA8DxB,OAAO,CAAC,gBAAgB;YAqDV,eAAe;YAIf,iBAAiB;YAMjB,gBAAgB;YAIhB,kBAAkB;IAMhC;;;OAGG;IACH,OAAO,CAAC,mCAAmC;IAuG3C;;;OAGG;IACH,OAAO,CAAC,oDAAoD;IAqD5D;;OAEG;IACH,OAAO,CAAC,0BAA0B;CAIlC;AAED;;GAEG;AACH,wBAAsB,6BAA6B,CAClD,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,0BAA+B,GACtC,OAAO,CAAC,UAAU,EAAE,CAAC,CAGvB;AAED;;GAEG;AACH,wBAAsB,6BAA6B,CAClD,WAAW,EAAE,UAAU,EAAE,EACzB,WAAW,CAAC,EAAE,WAAW,EACzB,OAAO,GAAE,0BAA+B,GACtC,OAAO,CAAC,UAAU,EAAE,CAAC,CAGvB;AAED;;GAEG;AACH,wBAAsB,4BAA4B,CACjD,UAAU,EAAE,UAAU,EACtB,WAAW,CAAC,EAAE,WAAW,EACzB,OAAO,GAAE,0BAA+B,GACtC,OAAO,CAAC,UAAU,EAAE,CAAC,CAGvB"}
@@ -9,6 +9,7 @@ import { translate, } from "@atomic-ehr/fhirschema";
9
9
  import { createLogger } from "../utils/codegen-logger.js";
10
10
  import { TypeSchemaCache } from "./cache.js";
11
11
  import { transformFHIRSchema, transformFHIRSchemas, } from "./core/transformer.js";
12
+ import { transformValueSet } from "./value-set/processor.js";
12
13
  /**
13
14
  * TypeSchema Generator class
14
15
  *
@@ -94,15 +95,39 @@ export class TypeSchemaGenerator {
94
95
  name: packageName,
95
96
  version: packageVersion || "latest",
96
97
  };
98
+ // Process ValueSets separately to add to TypeSchema output
99
+ const valueSetSchemas = [];
100
+ if (valueSets.length > 0) {
101
+ this.logger.progress(`Converting ${valueSets.length} ValueSets to TypeSchema`);
102
+ let valueSetConvertedCount = 0;
103
+ let valueSetFailedCount = 0;
104
+ for (const vs of valueSets) {
105
+ try {
106
+ const valueSetSchema = await transformValueSet(vs, this.manager, packageInfo);
107
+ if (valueSetSchema) {
108
+ valueSetSchemas.push(valueSetSchema);
109
+ valueSetConvertedCount++;
110
+ this.logger.debug(`Converted ValueSet: ${vs.name || vs.id}`);
111
+ }
112
+ }
113
+ catch (error) {
114
+ valueSetFailedCount++;
115
+ this.logger.warn(`Failed to convert ValueSet ${vs.name || vs.id}: ${error instanceof Error ? error.message : String(error)}`);
116
+ }
117
+ }
118
+ this.logger.success(`ValueSet conversion completed: ${valueSetConvertedCount}/${valueSets.length} successful, ${valueSetFailedCount} failed`);
119
+ }
97
120
  const schemas = await this.generateFromSchemas(fhirSchemas, packageInfo);
98
- if (this.cache && schemas.length > 0) {
99
- this.logger.info(`Caching ${schemas.length} generated schemas for package: ${packageName}`);
100
- for (const schema of schemas) {
121
+ // Add the converted ValueSets to the final results
122
+ const allSchemas = [...schemas, ...valueSetSchemas];
123
+ if (this.cache && allSchemas.length > 0) {
124
+ this.logger.info(`Caching ${allSchemas.length} generated schemas for package: ${packageName}`);
125
+ for (const schema of allSchemas) {
101
126
  await this.cache.set(schema);
102
127
  }
103
- this.logger.success(`Cached ${schemas.length} TypeSchemas for package: ${packageName}`);
128
+ this.logger.success(`Cached ${allSchemas.length} TypeSchemas for package: ${packageName}`);
104
129
  }
105
- return schemas;
130
+ return allSchemas;
106
131
  }
107
132
  /**
108
133
  * Generate TypeSchema from individual FHIR schema
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@atomic-ehr/codegen",
3
- "version": "0.0.1-canary.20250822153920.e501dd0",
3
+ "version": "0.0.1-canary.20250827144501.0b93e2e",
4
4
  "description": "Code generation tools for FHIR resources and TypeSchema definitions",
5
5
  "keywords": [
6
6
  "fhir",
@@ -49,7 +49,7 @@
49
49
  "quality": "bun run typecheck && bun run lint && bun run test:unit",
50
50
  "cli": "bun run src/cli/index.ts",
51
51
  "codegen": "bun run src/cli/index.ts",
52
- "codegen:all": "bun run src/cli/index.ts generate typescript"
52
+ "codegen:all": "bun run src/cli/index.ts generate"
53
53
  },
54
54
  "repository": {
55
55
  "type": "git",