react-obsidian 0.0.6 → 0.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/.eslintrc.json +3 -2
  2. package/README.md +7 -0
  3. package/dist/src/Obsidian.d.ts +2 -2
  4. package/dist/src/Obsidian.d.ts.map +1 -1
  5. package/dist/src/ProvidedPropertiesStore.d.ts +1 -1
  6. package/dist/src/ProvidedPropertiesStore.d.ts.map +1 -1
  7. package/dist/src/decorators/Graph.d.ts +2 -2
  8. package/dist/src/decorators/Graph.d.ts.map +1 -1
  9. package/dist/src/decorators/Graph.js +2 -1
  10. package/dist/src/decorators/Graph.js.map +1 -1
  11. package/dist/src/decorators/Memoize.d.ts +3 -0
  12. package/dist/src/decorators/Memoize.d.ts.map +1 -0
  13. package/dist/src/decorators/Memoize.js +21 -0
  14. package/dist/src/decorators/Memoize.js.map +1 -0
  15. package/dist/src/decorators/injectClass.d.ts +1 -1
  16. package/dist/src/decorators/injectClass.d.ts.map +1 -1
  17. package/dist/src/decorators/provides/MemoizeDescriptor.d.ts +2 -0
  18. package/dist/src/decorators/provides/MemoizeDescriptor.d.ts.map +1 -0
  19. package/dist/src/decorators/provides/MemoizeDescriptor.js +23 -0
  20. package/dist/src/decorators/provides/MemoizeDescriptor.js.map +1 -0
  21. package/dist/src/decorators/provides/Provides.d.ts +3 -3
  22. package/dist/src/decorators/provides/Provides.d.ts.map +1 -1
  23. package/dist/src/decorators/provides/Provides.js +4 -3
  24. package/dist/src/decorators/provides/Provides.js.map +1 -1
  25. package/dist/src/graph/Graph.d.ts +1 -2
  26. package/dist/src/graph/Graph.d.ts.map +1 -1
  27. package/dist/src/graph/ObjectGraph.d.ts +4 -4
  28. package/dist/src/graph/ObjectGraph.d.ts.map +1 -1
  29. package/dist/src/graph/ObjectGraph.js +23 -5
  30. package/dist/src/graph/ObjectGraph.js.map +1 -1
  31. package/dist/src/graph/PropertyRetriever.d.ts +1 -1
  32. package/dist/src/graph/PropertyRetriever.d.ts.map +1 -1
  33. package/dist/src/graph/registry/DefaultGraphResolver.d.ts +5 -4
  34. package/dist/src/graph/registry/DefaultGraphResolver.d.ts.map +1 -1
  35. package/dist/src/graph/registry/DefaultGraphResolver.js +2 -2
  36. package/dist/src/graph/registry/DefaultGraphResolver.js.map +1 -1
  37. package/dist/src/graph/registry/GraphMiddleware.d.ts +4 -10
  38. package/dist/src/graph/registry/GraphMiddleware.d.ts.map +1 -1
  39. package/dist/src/graph/registry/GraphMiddleware.js +20 -17
  40. package/dist/src/graph/registry/GraphMiddleware.js.map +1 -1
  41. package/dist/src/graph/registry/GraphMiddlewareChain.d.ts +6 -6
  42. package/dist/src/graph/registry/GraphMiddlewareChain.d.ts.map +1 -1
  43. package/dist/src/graph/registry/GraphMiddlewareChain.js.map +1 -1
  44. package/dist/src/graph/registry/GraphRegistry.d.ts +3 -3
  45. package/dist/src/graph/registry/GraphRegistry.d.ts.map +1 -1
  46. package/dist/src/graph/registry/GraphRegistry.js.map +1 -1
  47. package/dist/src/graph/registry/GraphResolveChain.d.ts +4 -0
  48. package/dist/src/graph/registry/GraphResolveChain.d.ts.map +1 -0
  49. package/dist/src/graph/registry/GraphResolveChain.js +3 -0
  50. package/dist/src/graph/registry/GraphResolveChain.js.map +1 -0
  51. package/dist/src/graph/registry/Middleware.d.ts +10 -0
  52. package/dist/src/graph/registry/Middleware.d.ts.map +1 -0
  53. package/dist/src/graph/registry/Middleware.js +25 -0
  54. package/dist/src/graph/registry/Middleware.js.map +1 -0
  55. package/dist/src/graph/registry/ResolveChain.d.ts +5 -0
  56. package/dist/src/graph/registry/ResolveChain.d.ts.map +1 -0
  57. package/dist/src/graph/registry/ResolveChain.js +3 -0
  58. package/dist/src/graph/registry/ResolveChain.js.map +1 -0
  59. package/dist/src/index.d.ts +13 -13
  60. package/dist/src/index.d.ts.map +1 -1
  61. package/dist/src/index.js +15 -12
  62. package/dist/src/index.js.map +1 -1
  63. package/dist/src/injectors/components/ComponentInjector.d.ts +1 -1
  64. package/dist/src/injectors/components/ComponentInjector.d.ts.map +1 -1
  65. package/dist/src/injectors/components/PropsInjector.d.ts +1 -1
  66. package/dist/src/injectors/components/PropsInjector.d.ts.map +1 -1
  67. package/dist/src/injectors/components/useGraph.d.ts +1 -1
  68. package/dist/src/injectors/components/useGraph.d.ts.map +1 -1
  69. package/dist/src/injectors/hooks/HookInjector.d.ts +1 -1
  70. package/dist/src/injectors/hooks/HookInjector.d.ts.map +1 -1
  71. package/dist/src/utils/autobind.d.ts +2 -0
  72. package/dist/src/utils/autobind.d.ts.map +1 -0
  73. package/dist/src/utils/autobind.js +19 -0
  74. package/dist/src/utils/autobind.js.map +1 -0
  75. package/dist/test/integration/fixtures/Subgraph.d.ts +1 -0
  76. package/dist/test/integration/fixtures/Subgraph.d.ts.map +1 -1
  77. package/dist/test/integration/fixtures/Subgraph.js +11 -1
  78. package/dist/test/integration/fixtures/Subgraph.js.map +1 -1
  79. package/dist/testkit/index.d.ts +1 -2
  80. package/dist/testkit/index.d.ts.map +1 -1
  81. package/dist/testkit/index.js +1 -2
  82. package/dist/testkit/index.js.map +1 -1
  83. package/package.json +1 -1
  84. package/src/Obsidian.ts +2 -2
  85. package/src/ProvidedPropertiesStore.ts +1 -1
  86. package/src/decorators/Graph.ts +2 -2
  87. package/src/decorators/Memoize.ts +18 -0
  88. package/src/decorators/injectClass.ts +1 -1
  89. package/src/decorators/provides/MemoizeDescriptor.ts +14 -0
  90. package/src/decorators/provides/Provides.ts +4 -5
  91. package/src/graph/Graph.ts +1 -3
  92. package/src/graph/ObjectGraph.ts +11 -5
  93. package/src/graph/PropertyRetriever.ts +1 -1
  94. package/src/graph/registry/DefaultGraphResolver.ts +5 -4
  95. package/src/graph/registry/GraphMiddleware.ts +4 -23
  96. package/src/graph/registry/GraphMiddlewareChain.ts +7 -7
  97. package/src/graph/registry/GraphRegistry.ts +4 -4
  98. package/src/graph/registry/GraphResolveChain.ts +4 -0
  99. package/src/graph/registry/Middleware.ts +21 -0
  100. package/src/graph/registry/ResolveChain.ts +5 -0
  101. package/src/index.ts +16 -16
  102. package/src/injectors/components/ComponentInjector.tsx +1 -1
  103. package/src/injectors/components/PropsInjector.ts +1 -1
  104. package/src/injectors/components/useGraph.ts +1 -1
  105. package/src/injectors/hooks/HookInjector.ts +2 -2
  106. package/src/utils/autobind.ts +12 -0
  107. package/testkit/index.ts +9 -5
  108. package/dist/src/decorators/provides/PropertyDescriptorToSingleton.d.ts +0 -2
  109. package/dist/src/decorators/provides/PropertyDescriptorToSingleton.d.ts.map +0 -1
  110. package/dist/src/decorators/provides/PropertyDescriptorToSingleton.js +0 -20
  111. package/dist/src/decorators/provides/PropertyDescriptorToSingleton.js.map +0 -1
  112. package/src/decorators/provides/PropertyDescriptorToSingleton.ts +0 -11
package/.eslintrc.json CHANGED
@@ -79,10 +79,11 @@
79
79
  "react/button-has-type": "off",
80
80
  "react/jsx-one-expression-per-line": ["off"],
81
81
  "arrow-body-style": ["off"],
82
- "quotes": ["error", "single", {"avoidEscape": true, "allowTemplateLiterals": true}],
82
+ "@typescript-eslint/quotes": ["error", "single", {"avoidEscape": true, "allowTemplateLiterals": true}],
83
83
  "@typescript-eslint/lines-between-class-members": "off",
84
84
  "@typescript-eslint/no-explicit-any": "off",
85
- "@typescript-eslint/no-unused-vars": "error"
85
+ "@typescript-eslint/no-unused-vars": "error",
86
+ "import/prefer-default-export": "off"
86
87
  },
87
88
  "settings": {
88
89
  "import/resolver": {
package/README.md CHANGED
@@ -2,6 +2,13 @@
2
2
 
3
3
  > Dependency injection framework for React and React Native applications
4
4
 
5
+ ## Introduction
6
+ Applications are made of objects that communicate with each other. An object can depend on other objects so it can perform its responsibilities. For an object to function properly, its dependencies must be fulfilled when the object is constructed.
7
+
8
+ React Obsidian is a dependency injection framework for React and React Native applications. It allows you to inject dependencies effortlessly into hooks, components or classes. Separating the construction and consumption of dependencies is crucial to maintaining a readable and testable codebase.
9
+
10
+ React Obsidian is guided by the principles of the Dependency Injection pattern, but does not strictly follow it. We allowed ourselves a degree of freedom when designing the library in order to reduce boilerplate code and reduce library footprint.
11
+
5
12
  ## Installation
6
13
 
7
14
  ``` shell
@@ -1,6 +1,6 @@
1
- import ObjectGraph from './graph/ObjectGraph';
2
- import { GraphMiddleware } from './graph/registry/GraphMiddleware';
1
+ import { ObjectGraph } from './graph/ObjectGraph';
3
2
  import { Constructable, GraphInternals, ServiceLocator } from './types';
3
+ import { GraphMiddleware } from './graph/registry/GraphMiddleware';
4
4
  export default class Obsidian {
5
5
  obtain<T extends ObjectGraph<P>, P = any>(Graph: Constructable<T>, props?: P): ServiceLocator<Omit<T, GraphInternals>>;
6
6
  addGraphMiddleware(middleware: GraphMiddleware): void;
@@ -1 +1 @@
1
- {"version":3,"file":"Obsidian.d.ts","sourceRoot":"","sources":["../../src/Obsidian.ts"],"names":[],"mappings":"AACA,OAAO,WAAW,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAExE,MAAM,CAAC,OAAO,OAAO,QAAQ;IAC3B,MAAM,CAAC,CAAC,SAAS,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,EACtC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EACvB,KAAK,CAAC,EAAE,CAAC,GACR,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;IAI1C,kBAAkB,CAAC,UAAU,EAAE,eAAe;IAI9C,qBAAqB;CAGtB"}
1
+ {"version":3,"file":"Obsidian.d.ts","sourceRoot":"","sources":["../../src/Obsidian.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAEnE,MAAM,CAAC,OAAO,OAAO,QAAQ;IAC3B,MAAM,CAAC,CAAC,SAAS,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,EACtC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EACvB,KAAK,CAAC,EAAE,CAAC,GACR,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;IAI1C,kBAAkB,CAAC,UAAU,EAAE,eAAe;IAI9C,qBAAqB;CAGtB"}
@@ -1,4 +1,4 @@
1
- import Graph from './graph/Graph';
1
+ import { Graph } from './graph/Graph';
2
2
  declare class ProvidedPropertiesStore {
3
3
  private readonly providedPropertiesForGraph;
4
4
  getMangledProperty(graph: Graph, unmangledProp: string): string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"ProvidedPropertiesStore.d.ts","sourceRoot":"","sources":["../../src/ProvidedPropertiesStore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,eAAe,CAAC;AAElC,cAAM,uBAAuB;IAC3B,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAA2C;IAEtF,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI3E,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM;IAMpE,KAAK,CAAC,KAAK,EAAE,KAAK;CAGnB;;AAED,wBAA6C"}
1
+ {"version":3,"file":"ProvidedPropertiesStore.d.ts","sourceRoot":"","sources":["../../src/ProvidedPropertiesStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAEtC,cAAM,uBAAuB;IAC3B,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAA2C;IAEtF,kBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAI3E,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM;IAMpE,KAAK,CAAC,KAAK,EAAE,KAAK;CAGnB;;AAED,wBAA6C"}
@@ -1,10 +1,10 @@
1
1
  import { Constructable, Scope } from '../types';
2
2
  import 'reflect-metadata';
3
- import ObjectGraph from '../graph/ObjectGraph';
3
+ import { ObjectGraph } from '../graph/ObjectGraph';
4
4
  interface GraphParams {
5
5
  scope: Scope | undefined;
6
6
  subgraphs: Constructable<ObjectGraph>[];
7
7
  }
8
- export default function Graph({ scope, subgraphs, }?: Partial<GraphParams>): <T extends ObjectGraph<unknown>>(constructor: Constructable<T>) => Constructable<T>;
8
+ export declare function Graph({ scope, subgraphs, }?: Partial<GraphParams>): <T extends ObjectGraph<unknown>>(constructor: Constructable<T>) => Constructable<T>;
9
9
  export {};
10
10
  //# sourceMappingURL=Graph.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Graph.d.ts","sourceRoot":"","sources":["../../../src/decorators/Graph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,kBAAkB,CAAC;AAE1B,OAAO,WAAW,MAAM,sBAAsB,CAAC;AAE/C,UAAU,WAAW;IACnB,KAAK,EAAE,KAAK,GAAG,SAAS,CAAC;IACzB,SAAS,EAAE,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC;CACzC;AAED,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,EAC5B,KAAK,EACL,SAAc,GACf,GAAE,OAAO,CAAC,WAAW,CAAM,uFAM3B"}
1
+ {"version":3,"file":"Graph.d.ts","sourceRoot":"","sources":["../../../src/decorators/Graph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,kBAAkB,CAAC;AAE1B,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,UAAU,WAAW;IACnB,KAAK,EAAE,KAAK,GAAG,SAAS,CAAC;IACzB,SAAS,EAAE,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC;CACzC;AAED,wBAAgB,KAAK,CAAC,EACpB,KAAK,EACL,SAAc,GACf,GAAE,OAAO,CAAC,WAAW,CAAM,uFAM3B"}
@@ -3,6 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Graph = void 0;
6
7
  require("reflect-metadata");
7
8
  var GraphRegistry_1 = __importDefault(require("../graph/registry/GraphRegistry"));
8
9
  function Graph(_a) {
@@ -13,5 +14,5 @@ function Graph(_a) {
13
14
  return constructor;
14
15
  };
15
16
  }
16
- exports.default = Graph;
17
+ exports.Graph = Graph;
17
18
  //# sourceMappingURL=Graph.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Graph.js","sourceRoot":"","sources":["../../../src/decorators/Graph.ts"],"names":[],"mappings":";;;;;AACA,4BAA0B;AAC1B,kFAA4D;AAQ5D,SAAwB,KAAK,CAAC,EAGF;QAHE,qBAGJ,EAAE,KAAA,EAF1B,KAAK,WAAA,EACL,iBAAc,EAAd,SAAS,mBAAG,EAAE,KAAA;IAEd,OAAO,UAAwB,WAA6B;QAC1D,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;QACpD,uBAAa,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;QACtD,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC;AACJ,CAAC;AATD,wBASC"}
1
+ {"version":3,"file":"Graph.js","sourceRoot":"","sources":["../../../src/decorators/Graph.ts"],"names":[],"mappings":";;;;;;AACA,4BAA0B;AAC1B,kFAA4D;AAQ5D,SAAgB,KAAK,CAAC,EAGM;QAHN,qBAGI,EAAE,KAAA,EAF1B,KAAK,WAAA,EACL,iBAAc,EAAd,SAAS,mBAAG,EAAE,KAAA;IAEd,OAAO,UAAwB,WAA6B;QAC1D,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;QACpD,uBAAa,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;QACtD,OAAO,WAAW,CAAC;IACrB,CAAC,CAAC;AACJ,CAAC;AATD,sBASC"}
@@ -0,0 +1,3 @@
1
+ import 'reflect-metadata';
2
+ export default function Memoize(): (_Clazz: any, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
3
+ //# sourceMappingURL=Memoize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Memoize.d.ts","sourceRoot":"","sources":["../../../src/decorators/Memoize.ts"],"names":[],"mappings":"AACA,OAAO,kBAAkB,CAAC;AAE1B,MAAM,CAAC,OAAO,UAAU,OAAO,aACG,GAAG,eAAe,MAAM,cAAc,kBAAkB,wBAazF"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ /* eslint-disable no-param-reassign */
4
+ require("reflect-metadata");
5
+ function Memoize() {
6
+ return function provide(_Clazz, propertyKey, descriptor) {
7
+ var originalGet = descriptor.get;
8
+ descriptor.get = function get() {
9
+ var key = "memoized".concat(propertyKey);
10
+ if (Reflect.hasMetadata(key, this)) {
11
+ return Reflect.getMetadata(key, this);
12
+ }
13
+ var value = originalGet.call(this);
14
+ Reflect.defineMetadata(key, value, this);
15
+ return value;
16
+ };
17
+ return descriptor;
18
+ };
19
+ }
20
+ exports.default = Memoize;
21
+ //# sourceMappingURL=Memoize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Memoize.js","sourceRoot":"","sources":["../../../src/decorators/Memoize.ts"],"names":[],"mappings":";;AAAA,sCAAsC;AACtC,4BAA0B;AAE1B,SAAwB,OAAO;IAC7B,OAAO,SAAS,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,UAA8B;QACtF,IAAM,WAAW,GAAG,UAAU,CAAC,GAAI,CAAC;QACpC,UAAU,CAAC,GAAG,GAAG,SAAS,GAAG;YAC3B,IAAM,GAAG,GAAG,kBAAW,WAAW,CAAE,CAAC;YACrC,IAAI,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE;gBAClC,OAAO,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;aACvC;YACD,IAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrC,OAAO,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACzC,OAAO,KAAK,CAAC;QACf,CAAC,CAAC;QACF,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAdD,0BAcC"}
@@ -1,5 +1,5 @@
1
1
  import { Constructable } from '../types';
2
- import ObjectGraph from '../graph/ObjectGraph';
2
+ import { ObjectGraph } from '../graph/ObjectGraph';
3
3
  export declare function Injectable<T extends {
4
4
  new (...args: any[]): any;
5
5
  }>(Graph: Constructable<ObjectGraph>): any;
@@ -1 +1 @@
1
- {"version":3,"file":"injectClass.d.ts","sourceRoot":"","sources":["../../../src/decorators/injectClass.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,WAAW,MAAM,sBAAsB,CAAC;AAI/C,wBAAgB,UAAU,CAAC,CAAC,SAAS;IAAE,KAAI,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,CAAA;CAAE,EAAE,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,GAAG,GAAG,CAgBzG;AAED,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,QAGzD"}
1
+ {"version":3,"file":"injectClass.d.ts","sourceRoot":"","sources":["../../../src/decorators/injectClass.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAInD,wBAAgB,UAAU,CAAC,CAAC,SAAS;IAAE,KAAI,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,GAAG,CAAA;CAAE,EAAE,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,GAAG,GAAG,CAgBzG;AAED,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,QAGzD"}
@@ -0,0 +1,2 @@
1
+ export declare function memoizeDescriptor(propertyKey: string, descriptor: PropertyDescriptor): PropertyDescriptor;
2
+ //# sourceMappingURL=MemoizeDescriptor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemoizeDescriptor.d.ts","sourceRoot":"","sources":["../../../../src/decorators/provides/MemoizeDescriptor.ts"],"names":[],"mappings":"AACA,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,kBAAkB,GAAG,kBAAkB,CAYzG"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.memoizeDescriptor = void 0;
4
+ /* eslint-disable no-param-reassign */
5
+ function memoizeDescriptor(propertyKey, descriptor) {
6
+ var originalValue = descriptor.value;
7
+ descriptor.value = function value() {
8
+ var args = [];
9
+ for (var _i = 0; _i < arguments.length; _i++) {
10
+ args[_i] = arguments[_i];
11
+ }
12
+ var key = "memoized".concat(propertyKey);
13
+ if (Reflect.hasMetadata(key, this)) {
14
+ return Reflect.getMetadata(key, this);
15
+ }
16
+ var result = originalValue.apply(this, args);
17
+ Reflect.defineMetadata(key, result, this);
18
+ return result;
19
+ };
20
+ return descriptor;
21
+ }
22
+ exports.memoizeDescriptor = memoizeDescriptor;
23
+ //# sourceMappingURL=MemoizeDescriptor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MemoizeDescriptor.js","sourceRoot":"","sources":["../../../../src/decorators/provides/MemoizeDescriptor.ts"],"names":[],"mappings":";;;AAAA,sCAAsC;AACtC,SAAgB,iBAAiB,CAAC,WAAmB,EAAE,UAA8B;IACnF,IAAM,aAAa,GAAG,UAAU,CAAC,KAAK,CAAC;IACvC,UAAU,CAAC,KAAK,GAAG,SAAS,KAAK;QAAC,cAAc;aAAd,UAAc,EAAd,qBAAc,EAAd,IAAc;YAAd,yBAAc;;QAC9C,IAAM,GAAG,GAAG,kBAAW,WAAW,CAAE,CAAC;QACrC,IAAI,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE;YAClC,OAAO,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;SACvC;QACD,IAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC/C,OAAO,CAAC,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;QAC1C,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IACF,OAAO,UAAU,CAAC;AACpB,CAAC;AAZD,8CAYC"}
@@ -1,9 +1,9 @@
1
1
  import { Scope } from '../../types';
2
- import Graph from '../../graph/Graph';
2
+ import { Graph } from '../../graph/Graph';
3
3
  interface ProvidesParams {
4
4
  scope?: Scope;
5
5
  name: string;
6
6
  }
7
- declare function Provides({ name }?: Partial<ProvidesParams>): (graph: Graph, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
8
- export default Provides;
7
+ export declare function Provides({ name }?: Partial<ProvidesParams>): (graph: Graph, propertyKey: string, descriptor: PropertyDescriptor) => PropertyDescriptor;
8
+ export {};
9
9
  //# sourceMappingURL=Provides.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Provides.d.ts","sourceRoot":"","sources":["../../../../src/decorators/provides/Provides.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,KAAK,MAAM,mBAAmB,CAAC;AAItC,UAAU,cAAc;IACtB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAED,iBAAS,QAAQ,CAAC,EAAE,IAAI,EAAE,GAAE,OAAO,CAAC,cAAc,CAAM,WACvB,KAAK,eAAe,MAAM,cAAc,kBAAkB,wBAI1F;AACD,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"Provides.d.ts","sourceRoot":"","sources":["../../../../src/decorators/provides/Provides.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAI1C,UAAU,cAAc;IACtB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,QAAQ,CAAC,EAAE,IAAI,EAAE,GAAE,OAAO,CAAC,cAAc,CAAM,WAC9B,KAAK,eAAe,MAAM,cAAc,kBAAkB,wBAI1F"}
@@ -3,14 +3,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Provides = void 0;
6
7
  var ProvidedPropertiesStore_1 = __importDefault(require("../../ProvidedPropertiesStore"));
7
- var PropertyDescriptorToSingleton_1 = __importDefault(require("./PropertyDescriptorToSingleton"));
8
+ var MemoizeDescriptor_1 = require("./MemoizeDescriptor");
8
9
  function Provides(_a) {
9
10
  var _b = _a === void 0 ? {} : _a, name = _b.name;
10
11
  return function provide(graph, propertyKey, descriptor) {
11
12
  ProvidedPropertiesStore_1.default.set(graph, propertyKey, name);
12
- return (0, PropertyDescriptorToSingleton_1.default)(descriptor);
13
+ return (0, MemoizeDescriptor_1.memoizeDescriptor)(propertyKey, descriptor);
13
14
  };
14
15
  }
15
- exports.default = Provides;
16
+ exports.Provides = Provides;
16
17
  //# sourceMappingURL=Provides.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Provides.js","sourceRoot":"","sources":["../../../../src/decorators/provides/Provides.ts"],"names":[],"mappings":";;;;;AAEA,0FAAoE;AACpE,kGAA4D;AAO5D,SAAS,QAAQ,CAAC,EAAsC;QAAtC,qBAAoC,EAAE,KAAA,EAApC,IAAI,UAAA;IACtB,OAAO,SAAS,OAAO,CAAC,KAAY,EAAE,WAAmB,EAAE,UAA8B;QACvF,iCAAuB,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,IAAK,CAAC,CAAC;QACvD,OAAO,IAAA,uCAAa,EAAC,UAAU,CAAC,CAAC;IACnC,CAAC,CAAC;AACJ,CAAC;AACD,kBAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"Provides.js","sourceRoot":"","sources":["../../../../src/decorators/provides/Provides.ts"],"names":[],"mappings":";;;;;;AAEA,0FAAoE;AACpE,yDAAwD;AAOxD,SAAgB,QAAQ,CAAC,EAAsC;QAAtC,qBAAoC,EAAE,KAAA,EAApC,IAAI,UAAA;IAC7B,OAAO,SAAS,OAAO,CAAC,KAAY,EAAE,WAAmB,EAAE,UAA8B;QACvF,iCAAuB,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,EAAE,IAAK,CAAC,CAAC;QACvD,OAAO,IAAA,qCAAiB,EAAC,WAAW,EAAE,UAAU,CAAC,CAAC;IACpD,CAAC,CAAC;AACJ,CAAC;AALD,4BAKC"}
@@ -1,6 +1,5 @@
1
1
  import PropertyRetrieverDelegate from './PropertyRetrieverDelegate';
2
- interface Graph extends PropertyRetrieverDelegate {
2
+ export interface Graph extends PropertyRetrieverDelegate {
3
3
  get name(): string;
4
4
  }
5
- export default Graph;
6
5
  //# sourceMappingURL=Graph.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Graph.d.ts","sourceRoot":"","sources":["../../../src/graph/Graph.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,MAAM,6BAA6B,CAAC;AAEpE,UAAU,KAAM,SAAQ,yBAAyB;IAC/C,IAAI,IAAI,IAAI,MAAM,CAAC;CACpB;AAED,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"Graph.d.ts","sourceRoot":"","sources":["../../../src/graph/Graph.ts"],"names":[],"mappings":"AAAA,OAAO,yBAAyB,MAAM,6BAA6B,CAAC;AAEpE,MAAM,WAAW,KAAM,SAAQ,yBAAyB;IACtD,IAAI,IAAI,IAAI,MAAM,CAAC;CACpB"}
@@ -1,11 +1,11 @@
1
1
  import { Scope } from '../types';
2
- import Graph from './Graph';
3
- export default abstract class ObjectGraph<T = unknown> implements Graph {
4
- protected props?: T | undefined;
2
+ import { Graph } from './Graph';
3
+ export declare abstract class ObjectGraph<T = unknown> implements Graph {
4
+ protected _props?: T | undefined;
5
5
  scope: Scope;
6
6
  private propertyRetriever;
7
7
  get name(): string;
8
- constructor(props?: T | undefined);
8
+ constructor(_props?: T | undefined);
9
9
  retrieve<Dependency>(property: string, receiver?: unknown): Dependency | undefined;
10
10
  }
11
11
  //# sourceMappingURL=ObjectGraph.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ObjectGraph.d.ts","sourceRoot":"","sources":["../../../src/graph/ObjectGraph.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,KAAK,MAAM,SAAS,CAAC;AAG5B,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,WAAW,CAAC,CAAC,GAAG,OAAO,CAAE,YAAW,KAAK;IASzD,SAAS,CAAC,KAAK,CAAC;IAPrB,KAAK,EAAG,KAAK,CAAC;IACrB,OAAO,CAAC,iBAAiB,CAA+B;IACxD,IAAI,IAAI,IAAI,MAAM,CAEjB;gBAGqB,KAAK,CAAC,eAAG;IAE/B,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,SAAS;CAGnF"}
1
+ {"version":3,"file":"ObjectGraph.d.ts","sourceRoot":"","sources":["../../../src/graph/ObjectGraph.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGhC,8BAAsB,WAAW,CAAC,CAAC,GAAG,OAAO,CAAE,YAAW,KAAK;IAUjD,SAAS,CAAC,MAAM,CAAC;IARtB,KAAK,EAAG,KAAK,CAAC;IACrB,OAAO,CAAC,iBAAiB,CAA+B;IAExD,IACI,IAAI,IAAI,MAAM,CAEjB;gBAEqB,MAAM,CAAC,eAAG;IAIhC,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,SAAS;CAGnF"}
@@ -1,18 +1,31 @@
1
1
  "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
2
11
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
13
  };
5
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.ObjectGraph = void 0;
16
+ var lodash_1 = require("lodash");
17
+ var Memoize_1 = __importDefault(require("../decorators/Memoize"));
18
+ var autobind_1 = require("../utils/autobind");
6
19
  var PropertyRetriever_1 = __importDefault(require("./PropertyRetriever"));
7
20
  var ObjectGraph = /** @class */ (function () {
8
- // eslint-disable-next-line no-useless-constructor, no-unused-vars, no-empty-function
9
- function ObjectGraph(props) {
10
- this.props = props;
21
+ function ObjectGraph(_props) {
22
+ this._props = _props;
11
23
  this.propertyRetriever = new PropertyRetriever_1.default(this);
24
+ (0, autobind_1.autobind)(this);
12
25
  }
13
26
  Object.defineProperty(ObjectGraph.prototype, "name", {
14
27
  get: function () {
15
- return this.constructor.name;
28
+ return (0, lodash_1.uniqueId)(this.constructor.name);
16
29
  },
17
30
  enumerable: false,
18
31
  configurable: true
@@ -20,7 +33,12 @@ var ObjectGraph = /** @class */ (function () {
20
33
  ObjectGraph.prototype.retrieve = function (property, receiver) {
21
34
  return this.propertyRetriever.retrieve(property, receiver);
22
35
  };
36
+ __decorate([
37
+ (0, Memoize_1.default)(),
38
+ __metadata("design:type", String),
39
+ __metadata("design:paramtypes", [])
40
+ ], ObjectGraph.prototype, "name", null);
23
41
  return ObjectGraph;
24
42
  }());
25
- exports.default = ObjectGraph;
43
+ exports.ObjectGraph = ObjectGraph;
26
44
  //# sourceMappingURL=ObjectGraph.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ObjectGraph.js","sourceRoot":"","sources":["../../../src/graph/ObjectGraph.ts"],"names":[],"mappings":";;;;;AAEA,0EAAoD;AAEpD;IAQE,qFAAqF;IACrF,qBAAsB,KAAS;QAAT,UAAK,GAAL,KAAK,CAAI;QANvB,sBAAiB,GAAG,IAAI,2BAAiB,CAAC,IAAI,CAAC,CAAC;IAMtB,CAAC;IALnC,sBAAI,6BAAI;aAAR;YACE,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAC/B,CAAC;;;OAAA;IAKD,8BAAQ,GAAR,UAAqB,QAAgB,EAAE,QAAkB;QACvD,OAAO,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAA2B,CAAC;IACvF,CAAC;IACH,kBAAC;AAAD,CAAC,AAdD,IAcC"}
1
+ {"version":3,"file":"ObjectGraph.js","sourceRoot":"","sources":["../../../src/graph/ObjectGraph.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,iCAAkC;AAClC,kEAA4C;AAE5C,8CAA6C;AAE7C,0EAAoD;AAEpD;IAUE,qBAAsB,MAAU;QAAV,WAAM,GAAN,MAAM,CAAI;QAPxB,sBAAiB,GAAG,IAAI,2BAAiB,CAAC,IAAI,CAAC,CAAC;QAQtD,IAAA,mBAAQ,EAAC,IAAI,CAAC,CAAC;IACjB,CAAC;IAND,sBAAI,6BAAI;aAAR;YACE,OAAO,IAAA,iBAAQ,EAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC;;;OAAA;IAMD,8BAAQ,GAAR,UAAqB,QAAgB,EAAE,QAAkB;QACvD,OAAO,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAA2B,CAAC;IACvF,CAAC;IAVD;QADC,IAAA,iBAAO,GAAE;;;2CAGT;IASH,kBAAC;CAAA,AAjBD,IAiBC;AAjBqB,kCAAW"}
@@ -1,4 +1,4 @@
1
- import Graph from './Graph';
1
+ import { Graph } from './Graph';
2
2
  export default class PropertyRetriever {
3
3
  private graph;
4
4
  constructor(graph: Graph);
@@ -1 +1 @@
1
- {"version":3,"file":"PropertyRetriever.d.ts","sourceRoot":"","sources":["../../../src/graph/PropertyRetriever.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,SAAS,CAAC;AAG5B,MAAM,CAAC,OAAO,OAAO,iBAAiB;IACxB,OAAO,CAAC,KAAK;gBAAL,KAAK,EAAE,KAAK;IAEhC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS;IAsBnE,OAAO,CAAC,gBAAgB;CAMzB"}
1
+ {"version":3,"file":"PropertyRetriever.d.ts","sourceRoot":"","sources":["../../../src/graph/PropertyRetriever.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGhC,MAAM,CAAC,OAAO,OAAO,iBAAiB;IACxB,OAAO,CAAC,KAAK;gBAAL,KAAK,EAAE,KAAK;IAEhC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS;IAsBnE,OAAO,CAAC,gBAAgB;CAMzB"}
@@ -1,7 +1,8 @@
1
1
  import { Constructable } from '../../types';
2
- import Graph from '../Graph';
3
- import { GraphMiddleware, ResolveChain } from './GraphMiddleware';
4
- export default class DefaultGraphMiddleware extends GraphMiddleware {
5
- resolve<T extends Graph, Props>(_resolveChain: ResolveChain, Graph: Constructable<T>, props?: Props): T;
2
+ import { Graph } from '../Graph';
3
+ import { Middleware } from './Middleware';
4
+ import { ResolveChain } from './ResolveChain';
5
+ export default class DefaultGraphMiddleware<T extends Graph> extends Middleware<T> {
6
+ resolve(_resolveChain: ResolveChain<T>, Graph: Constructable<T>, props?: any): T;
6
7
  }
7
8
  //# sourceMappingURL=DefaultGraphResolver.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultGraphResolver.d.ts","sourceRoot":"","sources":["../../../../src/graph/registry/DefaultGraphResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,MAAM,UAAU,CAAC;AAC7B,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAElE,MAAM,CAAC,OAAO,OAAO,sBAAuB,SAAQ,eAAe;IACjE,OAAO,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,CAAC;CAGxG"}
1
+ {"version":3,"file":"DefaultGraphResolver.d.ts","sourceRoot":"","sources":["../../../../src/graph/registry/DefaultGraphResolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,CAAC,OAAO,OAAO,sBAAsB,CAAC,CAAC,SAAS,KAAK,CAAE,SAAQ,UAAU,CAAC,CAAC,CAAC;IAChF,OAAO,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,GAAG,CAAC;CAGjF"}
@@ -15,7 +15,7 @@ var __extends = (this && this.__extends) || (function () {
15
15
  };
16
16
  })();
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- var GraphMiddleware_1 = require("./GraphMiddleware");
18
+ var Middleware_1 = require("./Middleware");
19
19
  var DefaultGraphMiddleware = /** @class */ (function (_super) {
20
20
  __extends(DefaultGraphMiddleware, _super);
21
21
  function DefaultGraphMiddleware() {
@@ -25,6 +25,6 @@ var DefaultGraphMiddleware = /** @class */ (function (_super) {
25
25
  return new Graph(props);
26
26
  };
27
27
  return DefaultGraphMiddleware;
28
- }(GraphMiddleware_1.GraphMiddleware));
28
+ }(Middleware_1.Middleware));
29
29
  exports.default = DefaultGraphMiddleware;
30
30
  //# sourceMappingURL=DefaultGraphResolver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DefaultGraphResolver.js","sourceRoot":"","sources":["../../../../src/graph/registry/DefaultGraphResolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAEA,qDAAkE;AAElE;IAAoD,0CAAe;IAAnE;;IAIA,CAAC;IAHC,wCAAO,GAAP,UAAgC,aAA2B,EAAE,KAAuB,EAAE,KAAa;QACjG,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;IACH,6BAAC;AAAD,CAAC,AAJD,CAAoD,iCAAe,GAIlE"}
1
+ {"version":3,"file":"DefaultGraphResolver.js","sourceRoot":"","sources":["../../../../src/graph/registry/DefaultGraphResolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAEA,2CAA0C;AAG1C;IAAqE,0CAAa;IAAlF;;IAIA,CAAC;IAHC,wCAAO,GAAP,UAAQ,aAA8B,EAAE,KAAuB,EAAE,KAAW;QAC1E,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;IACH,6BAAC;AAAD,CAAC,AAJD,CAAqE,uBAAU,GAI9E"}
@@ -1,12 +1,6 @@
1
- import { Constructable } from '../../types';
2
- import Graph from '../Graph';
3
- export declare abstract class GraphMiddleware {
4
- private next;
5
- setNext(next: GraphMiddleware): void;
6
- get resolveChain(): ResolveChain;
7
- abstract resolve<T extends Graph, Props>(resolveChain: ResolveChain, Graph: Constructable<T>, props?: Props): T;
8
- }
9
- export interface ResolveChain {
10
- proceed<T extends Graph, Props>(Graph: Constructable<T>, props?: Props): T;
1
+ import { ObjectGraph } from '../ObjectGraph';
2
+ import { GraphResolveChain } from './GraphResolveChain';
3
+ import { Middleware } from './Middleware';
4
+ export declare abstract class GraphMiddleware extends Middleware<ObjectGraph, GraphResolveChain> {
11
5
  }
12
6
  //# sourceMappingURL=GraphMiddleware.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"GraphMiddleware.d.ts","sourceRoot":"","sources":["../../../../src/graph/registry/GraphMiddleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,MAAM,UAAU,CAAC;AAE7B,8BAAsB,eAAe;IACnC,OAAO,CAAC,IAAI,CAAmB;IAExB,OAAO,CAAC,IAAI,EAAE,eAAe;IAIpC,IAAW,YAAY,IAAI,YAAY,CAMtC;IAED,QAAQ,CAAC,OAAO,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,CAAC;CAChH;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC;CAC5E"}
1
+ {"version":3,"file":"GraphMiddleware.d.ts","sourceRoot":"","sources":["../../../../src/graph/registry/GraphMiddleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,8BAAsB,eAAgB,SAAQ,UAAU,CAAC,WAAW,EAAE,iBAAiB,CAAC;CAAI"}
@@ -1,25 +1,28 @@
1
1
  "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
2
17
  Object.defineProperty(exports, "__esModule", { value: true });
3
18
  exports.GraphMiddleware = void 0;
4
- var GraphMiddleware = /** @class */ (function () {
19
+ var Middleware_1 = require("./Middleware");
20
+ var GraphMiddleware = /** @class */ (function (_super) {
21
+ __extends(GraphMiddleware, _super);
5
22
  function GraphMiddleware() {
23
+ return _super !== null && _super.apply(this, arguments) || this;
6
24
  }
7
- GraphMiddleware.prototype.setNext = function (next) {
8
- this.next = next;
9
- };
10
- Object.defineProperty(GraphMiddleware.prototype, "resolveChain", {
11
- get: function () {
12
- var _this = this;
13
- return {
14
- proceed: function (Graph, props) {
15
- return _this.next.resolve(_this.next.resolveChain, Graph, props);
16
- },
17
- };
18
- },
19
- enumerable: false,
20
- configurable: true
21
- });
22
25
  return GraphMiddleware;
23
- }());
26
+ }(Middleware_1.Middleware));
24
27
  exports.GraphMiddleware = GraphMiddleware;
25
28
  //# sourceMappingURL=GraphMiddleware.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GraphMiddleware.js","sourceRoot":"","sources":["../../../../src/graph/registry/GraphMiddleware.ts"],"names":[],"mappings":";;;AAGA;IAAA;IAgBA,CAAC;IAbQ,iCAAO,GAAd,UAAe,IAAqB;QAClC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,sBAAW,yCAAY;aAAvB;YAAA,iBAMC;YALC,OAAO;gBACL,OAAO,EAAE,UAAyB,KAAuB,EAAE,KAAa;oBACtE,OAAO,KAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAI,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;gBACjE,CAAC;aACF,CAAC;QACJ,CAAC;;;OAAA;IAGH,sBAAC;AAAD,CAAC,AAhBD,IAgBC;AAhBqB,0CAAe"}
1
+ {"version":3,"file":"GraphMiddleware.js","sourceRoot":"","sources":["../../../../src/graph/registry/GraphMiddleware.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAEA,2CAA0C;AAE1C;IAA8C,mCAA0C;IAAxF;;IAA2F,CAAC;IAAD,sBAAC;AAAD,CAAC,AAA5F,CAA8C,uBAAU,GAAoC;AAAtE,0CAAe"}
@@ -1,11 +1,11 @@
1
1
  import { Constructable } from '../../types';
2
- import Graph from '../Graph';
3
- import { GraphMiddleware } from './GraphMiddleware';
4
- export default class GraphMiddlewareChain {
2
+ import { Graph } from '../Graph';
3
+ import { Middleware } from './Middleware';
4
+ export default class GraphMiddlewareChain<T extends Graph> {
5
5
  private middlewares;
6
- constructor(defaultMiddleware?: GraphMiddleware);
7
- resolve<T extends Graph>(Graph: Constructable<T>, props?: any): T;
8
- add(middleware: GraphMiddleware): void;
6
+ constructor(defaultMiddleware?: Middleware<T>);
7
+ resolve(Graph: Constructable<T>, props?: any): T;
8
+ add(middleware: Middleware<T>): void;
9
9
  private updateResolveChain;
10
10
  clear(): void;
11
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GraphMiddlewareChain.d.ts","sourceRoot":"","sources":["../../../../src/graph/registry/GraphMiddlewareChain.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,MAAM,UAAU,CAAC;AAE7B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,MAAM,CAAC,OAAO,OAAO,oBAAoB;IACvC,OAAO,CAAC,WAAW,CAAoB;gBAE3B,iBAAiB,GAAE,eAA8C;IAI7E,OAAO,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,GAAG,CAAC;IAIjE,GAAG,CAAC,UAAU,EAAE,eAAe;IAK/B,OAAO,CAAC,kBAAkB;IAM1B,KAAK;CAGN"}
1
+ {"version":3,"file":"GraphMiddlewareChain.d.ts","sourceRoot":"","sources":["../../../../src/graph/registry/GraphMiddlewareChain.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAEjC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,MAAM,CAAC,OAAO,OAAO,oBAAoB,CAAC,CAAC,SAAS,KAAK;IACvD,OAAO,CAAC,WAAW,CAAkB;gBAEzB,iBAAiB,GAAE,UAAU,CAAC,CAAC,CAAgC;IAI3E,OAAO,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,GAAG,CAAC;IAIhD,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC;IAK7B,OAAO,CAAC,kBAAkB;IAM1B,KAAK;CAGN"}
@@ -1 +1 @@
1
- {"version":3,"file":"GraphMiddlewareChain.js","sourceRoot":"","sources":["../../../../src/graph/registry/GraphMiddlewareChain.ts"],"names":[],"mappings":";;;;;AAEA,gFAA4D;AAG5D;IAGE,8BAAY,iBAAiE;QAAjE,kCAAA,EAAA,wBAAyC,8BAAsB,EAAE;QAC3E,IAAI,CAAC,WAAW,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACzC,CAAC;IAED,sCAAO,GAAP,UAAyB,KAAuB,EAAE,KAAW;QAC3D,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACrF,CAAC;IAED,kCAAG,GAAH,UAAI,UAA2B;QAC7B,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACrC,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAEO,iDAAkB,GAA1B;QACE,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/B,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;SAClD;IACH,CAAC;IAED,oCAAK,GAAL;QACE,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,8BAAsB,EAAE,CAAC,CAAC;IACpD,CAAC;IACH,2BAAC;AAAD,CAAC,AAzBD,IAyBC"}
1
+ {"version":3,"file":"GraphMiddlewareChain.js","sourceRoot":"","sources":["../../../../src/graph/registry/GraphMiddlewareChain.ts"],"names":[],"mappings":";;;;;AAEA,gFAA4D;AAG5D;IAGE,8BAAY,iBAA+D;QAA/D,kCAAA,EAAA,wBAAuC,8BAAsB,EAAE;QACzE,IAAI,CAAC,WAAW,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACzC,CAAC;IAED,sCAAO,GAAP,UAAQ,KAAuB,EAAE,KAAW;QAC1C,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACrF,CAAC;IAED,kCAAG,GAAH,UAAI,UAAyB;QAC3B,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACrC,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAEO,iDAAkB,GAA1B;QACE,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/B,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;SAClD;IACH,CAAC;IAED,oCAAK,GAAL;QACE,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,8BAAsB,EAAE,CAAC,CAAC;IACpD,CAAC;IACH,2BAAC;AAAD,CAAC,AAzBD,IAyBC"}
@@ -1,6 +1,6 @@
1
1
  import { Constructable, Scope } from '../../types';
2
- import Graph from '../Graph';
3
- import { GraphMiddleware } from './GraphMiddleware';
2
+ import { Graph } from '../Graph';
3
+ import { Middleware } from './Middleware';
4
4
  declare class GraphRegistry {
5
5
  private readonly scopedGraphs;
6
6
  private readonly constructorToInstance;
@@ -14,7 +14,7 @@ declare class GraphRegistry {
14
14
  getSubgraphs(graph: Graph): Graph[];
15
15
  resolve<T extends Graph>(Graph: Constructable<T>, props?: any): T;
16
16
  clear(graph: Graph): void;
17
- addGraphMiddleware(middleware: GraphMiddleware): void;
17
+ addGraphMiddleware(middleware: Middleware<Graph>): void;
18
18
  clearGraphMiddlewares(): void;
19
19
  }
20
20
  declare const _default: GraphRegistry;
@@ -1 +1 @@
1
- {"version":3,"file":"GraphRegistry.d.ts","sourceRoot":"","sources":["../../../../src/graph/registry/GraphRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,KAAK,MAAM,UAAU,CAAC;AAC7B,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,cAAM,aAAa;IACjB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA2C;IACxE,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA0C;IAChF,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA0C;IAChF,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA8D;IAC/F,OAAO,CAAC,gBAAgB,CAA8B;IAEtD,QAAQ,CACN,WAAW,EAAE,aAAa,CAAC,KAAK,CAAC,EACjC,KAAK,GAAE,KAAK,GAAG,SAAqB,EACpC,SAAS,GAAE,aAAa,CAAC,KAAK,CAAC,EAAO;IAMxC,GAAG,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC;IAI/B,GAAG,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC;IAIhD,GAAG,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,KAAK;IAK7C,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,EAAE;IAMnC,OAAO,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,GAAG,CAAC;IAcjE,KAAK,CAAC,KAAK,EAAE,KAAK;IAMlB,kBAAkB,CAAC,UAAU,EAAE,eAAe;IAI9C,qBAAqB;CAGtB;;AAED,wBAAmC"}
1
+ {"version":3,"file":"GraphRegistry.d.ts","sourceRoot":"","sources":["../../../../src/graph/registry/GraphRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1C,cAAM,aAAa;IACjB,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA2C;IACxE,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA0C;IAChF,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA0C;IAChF,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA8D;IAC/F,OAAO,CAAC,gBAAgB,CAA8B;IAEtD,QAAQ,CACN,WAAW,EAAE,aAAa,CAAC,KAAK,CAAC,EACjC,KAAK,GAAE,KAAK,GAAG,SAAqB,EACpC,SAAS,GAAE,aAAa,CAAC,KAAK,CAAC,EAAO;IAMxC,GAAG,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC;IAI/B,GAAG,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC;IAIhD,GAAG,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,KAAK;IAK7C,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,EAAE;IAMnC,OAAO,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,GAAG,CAAC;IAcjE,KAAK,CAAC,KAAK,EAAE,KAAK;IAMlB,kBAAkB,CAAC,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC;IAIhD,qBAAqB;CAGtB;;AAED,wBAAmC"}
@@ -1 +1 @@
1
- {"version":3,"file":"GraphRegistry.js","sourceRoot":"","sources":["../../../../src/graph/registry/GraphRegistry.ts"],"names":[],"mappings":";;;;;AAGA,gFAA0D;AAE1D;IAAA;QACmB,iBAAY,GAAwC,EAAE,CAAC;QACvD,0BAAqB,GAAG,IAAI,GAAG,EAA+B,CAAC;QAC/D,0BAAqB,GAAG,IAAI,GAAG,EAA+B,CAAC;QAC/D,qBAAgB,GAAG,IAAI,GAAG,EAAmD,CAAC;QACvF,qBAAgB,GAAG,IAAI,8BAAoB,EAAE,CAAC;IAyDxD,CAAC;IAvDC,gCAAQ,GAAR,UACE,WAAiC,EACjC,KAAoC,EACpC,SAAsC;QADtC,sBAAA,EAAA,iBAAoC;QACpC,0BAAA,EAAA,cAAsC;QAEtC,IAAI,KAAK;YAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC;QAClD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,2BAAG,GAAH,UAAI,KAA2B;QAC7B,OAAO,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED,2BAAG,GAAH,UAAqB,KAAuB;QAC1C,OAAO,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAkB,CAAC;IAChE,CAAC;IAED,2BAAG,GAAH,UAAI,KAA2B,EAAE,KAAY;QAC3C,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED,oCAAY,GAAZ,UAAa,KAAY;QAAzB,iBAIC;;QAHC,IAAM,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC;QACrD,IAAM,SAAS,GAAG,MAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,mCAAI,IAAI,GAAG,EAAE,CAAC;QAChE,OAAO,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAf,CAAe,CAAC,CAAC;IAC3D,CAAC;IAED,+BAAO,GAAP,UAAyB,KAAuB,EAAE,KAAW;QAC3D,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YACnB,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACvB,oCAAoC;YACpC,qDAAqD;YACrD,2BAA2B;YAE3B,qCAAqC;SACtC;QACD,IAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC1D,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACvB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,6BAAK,GAAL,UAAM,KAAY;QAChB,IAAM,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC;QACrD,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED,0CAAkB,GAAlB,UAAmB,UAA2B;QAC5C,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACxC,CAAC;IAED,6CAAqB,GAArB;QACE,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;IAChC,CAAC;IACH,oBAAC;AAAD,CAAC,AA9DD,IA8DC;AAED,kBAAe,IAAI,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"GraphRegistry.js","sourceRoot":"","sources":["../../../../src/graph/registry/GraphRegistry.ts"],"names":[],"mappings":";;;;;AAGA,gFAA0D;AAE1D;IAAA;QACmB,iBAAY,GAAwC,EAAE,CAAC;QACvD,0BAAqB,GAAG,IAAI,GAAG,EAA+B,CAAC;QAC/D,0BAAqB,GAAG,IAAI,GAAG,EAA+B,CAAC;QAC/D,qBAAgB,GAAG,IAAI,GAAG,EAAmD,CAAC;QACvF,qBAAgB,GAAG,IAAI,8BAAoB,EAAE,CAAC;IAyDxD,CAAC;IAvDC,gCAAQ,GAAR,UACE,WAAiC,EACjC,KAAoC,EACpC,SAAsC;QADtC,sBAAA,EAAA,iBAAoC;QACpC,0BAAA,EAAA,cAAsC;QAEtC,IAAI,KAAK;YAAE,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC;QAClD,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,2BAAG,GAAH,UAAI,KAA2B;QAC7B,OAAO,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED,2BAAG,GAAH,UAAqB,KAAuB;QAC1C,OAAO,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAkB,CAAC;IAChE,CAAC;IAED,2BAAG,GAAH,UAAI,KAA2B,EAAE,KAAY;QAC3C,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC7C,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED,oCAAY,GAAZ,UAAa,KAAY;QAAzB,iBAIC;;QAHC,IAAM,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC;QACrD,IAAM,SAAS,GAAG,MAAA,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,mCAAI,IAAI,GAAG,EAAE,CAAC;QAChE,OAAO,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,KAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAf,CAAe,CAAC,CAAC;IAC3D,CAAC;IAED,+BAAO,GAAP,UAAyB,KAAuB,EAAE,KAAW;QAC3D,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YACnB,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACvB,oCAAoC;YACpC,qDAAqD;YACrD,2BAA2B;YAE3B,qCAAqC;SACtC;QACD,IAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAC1D,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACvB,OAAO,KAAU,CAAC;IACpB,CAAC;IAED,6BAAK,GAAL,UAAM,KAAY;QAChB,IAAM,KAAK,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC;QACrD,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED,0CAAkB,GAAlB,UAAmB,UAA6B;QAC9C,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACxC,CAAC;IAED,6CAAqB,GAArB;QACE,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;IAChC,CAAC;IACH,oBAAC;AAAD,CAAC,AA9DD,IA8DC;AAED,kBAAe,IAAI,aAAa,EAAE,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { ObjectGraph } from '../ObjectGraph';
2
+ import { ResolveChain } from './ResolveChain';
3
+ export declare type GraphResolveChain = ResolveChain<ObjectGraph>;
4
+ //# sourceMappingURL=GraphResolveChain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GraphResolveChain.d.ts","sourceRoot":"","sources":["../../../../src/graph/registry/GraphResolveChain.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,oBAAY,iBAAiB,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=GraphResolveChain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GraphResolveChain.js","sourceRoot":"","sources":["../../../../src/graph/registry/GraphResolveChain.ts"],"names":[],"mappings":""}
@@ -0,0 +1,10 @@
1
+ import { Constructable } from '../../types';
2
+ import { Graph } from '../Graph';
3
+ import { ResolveChain } from './ResolveChain';
4
+ export declare abstract class Middleware<T = Graph, RC = ResolveChain<T>> {
5
+ private next;
6
+ setNext(next: Middleware<T, ResolveChain<T>>): void;
7
+ get resolveChain(): ResolveChain<T>;
8
+ abstract resolve<Props = any>(resolveChain: RC, Graph: Constructable<T>, props?: Props): T;
9
+ }
10
+ //# sourceMappingURL=Middleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Middleware.d.ts","sourceRoot":"","sources":["../../../../src/graph/registry/Middleware.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,8BAAsB,UAAU,CAAC,CAAC,GAAG,KAAK,EAAE,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC;IAC9D,OAAO,CAAC,IAAI,CAAkC;IAEvC,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IAInD,IAAW,YAAY,IAAI,YAAY,CAAC,CAAC,CAAC,CAMzC;IAED,QAAQ,CAAC,OAAO,CAAC,KAAK,GAAG,GAAG,EAAE,YAAY,EAAE,EAAE,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,CAAC;CAC3F"}