@beignet/core
Version:
Core framework primitives for Beignet
21 lines (17 loc) • 489 B
text/typescript
import type { ContractMeta, MergeContractMeta } from "./types.js";
export function mergeContractMeta<
TCurrent extends ContractMeta,
TNext extends ContractMeta,
>(current: TCurrent, next: TNext): MergeContractMeta<TCurrent, TNext> {
const metadata: ContractMeta = {
...current,
...next,
};
if (next.openapi !== undefined) {
metadata.openapi = {
...current.openapi,
...next.openapi,
};
}
return metadata as MergeContractMeta<TCurrent, TNext>;
}