@typespec/json-schema
Version:
TypeSpec library for emitting TypeSpec to JSON Schema and converting JSON Schema to TypeSpec
20 lines • 758 B
JavaScript
import { isTemplateDeclaration, } from "@typespec/compiler";
import { useStateMap } from "@typespec/compiler/utils";
export function createDataDecorator(key, validate) {
const [getData, setData] = useStateMap(key);
const decorator = (...args) => {
if (validate && !validate(...args)) {
return;
}
const [context, target, value] = args;
setData(context.program, target, value);
};
return [getData, setData, decorator];
}
export function includeDerivedModel(model) {
return (!isTemplateDeclaration(model) &&
(model.templateMapper?.args === undefined ||
model.templateMapper.args?.length === 0 ||
model.derivedModels.length > 0));
}
//# sourceMappingURL=utils.js.map