@@ -15,7 +15,7 @@ import { mkTypeSchemaIndex, type TreeShake, type TypeSchemaIndex, treeShake } fr
1515import { generateTypeSchemas } from "@typeschema/index" ;
1616import { extractNameFromCanonical , packageMetaToFhir , packageMetaToNpm , type TypeSchema } from "@typeschema/types" ;
1717import type { TypeSchemaConfig } from "../config" ;
18- import { CodegenLogger , createLogger } from "../utils/codegen-logger" ;
18+ import { CodegenLogger , createLogger , type LogLevel } from "../utils/codegen-logger" ;
1919import { TypeScript , type TypeScriptOptions } from "./writer-generator/typescript" ;
2020import type { FileBuffer , FileSystemWriter , WriterOptions } from "./writer-generator/writer" ;
2121
@@ -24,7 +24,6 @@ import type { FileBuffer, FileSystemWriter, WriterOptions } from "./writer-gener
2424 */
2525export interface APIBuilderOptions {
2626 outputDir ?: string ;
27- verbose ?: boolean ;
2827 overwrite ?: boolean ; // FIXME: remove
2928 cache ?: boolean ; // FIXME: remove
3029 cleanOutput ?: boolean ;
@@ -35,6 +34,8 @@ export interface APIBuilderOptions {
3534 throwException ?: boolean ;
3635 exportTypeTree ?: string ;
3736 treeShake ?: TreeShake ;
37+ /** Log level for the logger. Default: INFO */
38+ logLevel ?: LogLevel ;
3839}
3940
4041/**
@@ -70,7 +71,7 @@ export type PartialBy<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
7071
7172type APIBuilderConfig = PartialBy <
7273 Required < APIBuilderOptions > ,
73- "logger" | "typeSchemaConfig" | "typeSchemaOutputDir" | "exportTypeTree" | "treeShake"
74+ "logger" | "typeSchemaConfig" | "typeSchemaOutputDir" | "exportTypeTree" | "treeShake" | "logLevel"
7475> & {
7576 cleanOutput : boolean ;
7677} ;
@@ -188,7 +189,6 @@ export class APIBuilder {
188189 constructor ( options : APIBuilderOptions = { } ) {
189190 this . options = {
190191 outputDir : options . outputDir || "./generated" ,
191- verbose : options . verbose ?? false ,
192192 overwrite : options . overwrite ?? true ,
193193 cache : options . cache ?? true ,
194194 cleanOutput : options . cleanOutput ?? true ,
@@ -206,8 +206,8 @@ export class APIBuilder {
206206 this . logger =
207207 options . logger ||
208208 createLogger ( {
209- verbose : this . options . verbose ,
210209 prefix : "API" ,
210+ level : options . logLevel ,
211211 } ) ;
212212 }
213213
@@ -259,7 +259,6 @@ export class APIBuilder {
259259 logger : new CodegenLogger ( {
260260 prefix : "C#" ,
261261 timestamp : true ,
262- verbose : true ,
263262 suppressLoggingLevel : [ ] ,
264263 } ) ,
265264 } ) ;
@@ -291,9 +290,8 @@ export class APIBuilder {
291290 return this ;
292291 }
293292
294- verbose ( enabled = true ) : APIBuilder {
295- this . options . verbose = enabled ;
296- this . logger ?. configure ( { verbose : enabled } ) ;
293+ setLogLevel ( level : LogLevel ) : APIBuilder {
294+ this . logger ?. setLevel ( level ) ;
297295 return this ;
298296 }
299297
0 commit comments