UNPKG

@kubernetes-models/crd-generate

Version:
29 lines 1.13 kB
import { transformSchema, compileSchemas, } from "@kubernetes-models/generate"; import { getSchemaPath } from "../utils.js"; import { trimSuffix } from "@kubernetes-models/string-util"; const generateSchemas = async (definitions) => { const files = []; const tasks = definitions.map((def) => ({ schema: { ...transformSchema(def.schema), $id: def.schemaId }, refs: { "io.k8s.apimachinery.pkg.apis.meta.v1.ObjectMeta": "@kubernetes-models/apimachinery/_schemas/IoK8sApimachineryPkgApisMetaV1ObjectMeta", }, })); const schemas = await compileSchemas(tasks); for (let i = 0; i < definitions.length; i++) { const def = definitions[i]; const path = getSchemaPath(def.schemaId); files.push({ path, content: schemas[i], }, // TODO: Move this to @kubernetes-models/generate { path: trimSuffix(path, ".js") + ".d.ts", content: `export function validate(data: unknown): boolean;`, }); } return files; }; export default generateSchemas; //# sourceMappingURL=schema.js.map