@typespec/json-schema
Version:
TypeSpec library for emitting TypeSpec to JSON Schema and converting JSON Schema to TypeSpec
21 lines • 779 B
JavaScript
import { createAssetEmitter } from "@typespec/asset-emitter";
import { getJsonSchemaTypes } from "./decorators.js";
import { JsonSchemaEmitter } from "./json-schema-emitter.js";
export { $flags, $lib, EmitterOptionsSchema } from "./lib.js";
export const namespace = "TypeSpec.JsonSchema";
/**
* Internal: TypeSpec emitter entry point
*/
export async function $onEmit(context) {
const emitter = createAssetEmitter(context.program, JsonSchemaEmitter, context);
if (emitter.getOptions().emitAllModels) {
emitter.emitProgram({ emitTypeSpecNamespace: false });
}
else {
for (const item of getJsonSchemaTypes(context.program)) {
emitter.emitType(item);
}
}
await emitter.writeOutput();
}
//# sourceMappingURL=on-emit.js.map