@redpc/core
Version:
Remoted Procedure Call (RedPC) - A javascript RPC library written with TypeScript
21 lines (16 loc) • 647 B
text/typescript
import { scrapeConventionalSuffixes } from "helpers";
import { StubContext, StubContextMutator } from "../core/StubContext";
import { StubContractConfig } from "../types";
export function StubContract (config?: StubContractConfig): ClassDecorator {
return <TFunction extends Function>(constructor: TFunction) => {
const props = {
path: scrapeConventionalSuffixes(constructor.name),
...config
};
const ctx = StubContext.getContext(props.contextDomain) as StubContextMutator;
return ctx.defineContract(
props,
constructor
);
}
}