UNPKG

react-obsidian

Version:

Dependency injection framework for React and React Native applications

15 lines (12 loc) 500 B
import { Graph } from '../../graph/Graph'; import providedPropertiesStore from '../../ProvidedPropertiesStore'; import { memoizeDescriptor } from './MemoizeDescriptor'; interface ProvidesParams { name: string; } export function Provides({ name }: Partial<ProvidesParams> = {}) { return function provide(graph: Graph, propertyKey: string, descriptor: PropertyDescriptor) { providedPropertiesStore.set(graph, propertyKey, name!); return memoizeDescriptor(propertyKey, descriptor); }; }