UNPKG

react-obsidian

Version:

Dependency injection framework for React and React Native applications

36 lines 1.37 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.isGraph = exports.ObjectGraph = void 0; const uniqueId_1 = require("../utils/uniqueId"); const ProviderBinder_1 = require("./ProviderBinder"); const PropertyRetriever_1 = __importDefault(require("./PropertyRetriever")); class ObjectGraph { get name() { if (Reflect.hasMetadata('memoizedName', this)) { return Reflect.getMetadata('memoizedName', this); } const name = (0, uniqueId_1.uniqueId)(this.constructor.name); Reflect.defineMetadata('memoizedName', name, this); return name; } constructor(_props) { this._props = _props; this.propertyRetriever = new PropertyRetriever_1.default(this); (0, ProviderBinder_1.bindProviders)(this); } retrieve(property, receiver, detector) { return this.propertyRetriever.retrieve(property, receiver, detector); } onBind(_target) { } } exports.ObjectGraph = ObjectGraph; Reflect.set(ObjectGraph, 'typeDiscriminator', 'ObjectGraph'); function isGraph(object) { return Reflect.get(object, 'typeDiscriminator') === 'ObjectGraph'; } exports.isGraph = isGraph; //# sourceMappingURL=ObjectGraph.js.map