react-obsidian 0.0.14 → 0.0.15

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 (71) hide show
  1. package/README.md +23 -3
  2. package/babel.config.js +1 -1
  3. package/dist/src/Obsidian.d.ts +1 -0
  4. package/dist/src/Obsidian.d.ts.map +1 -1
  5. package/dist/src/Obsidian.js +4 -0
  6. package/dist/src/Obsidian.js.map +1 -1
  7. package/dist/src/decorators/inject/Inject.d.ts +1 -1
  8. package/dist/src/decorators/inject/Inject.d.ts.map +1 -1
  9. package/dist/src/decorators/inject/Inject.js +3 -3
  10. package/dist/src/decorators/inject/Inject.js.map +1 -1
  11. package/dist/src/decorators/inject/LazyInject.d.ts +2 -0
  12. package/dist/src/decorators/inject/LazyInject.d.ts.map +1 -0
  13. package/dist/src/decorators/inject/LazyInject.js +15 -0
  14. package/dist/src/decorators/inject/LazyInject.js.map +1 -0
  15. package/dist/src/graph/ProviderBinder.d.ts.map +1 -1
  16. package/dist/src/graph/ProviderBinder.js +2 -3
  17. package/dist/src/graph/ProviderBinder.js.map +1 -1
  18. package/dist/src/graph/registry/GraphRegistry.d.ts +2 -0
  19. package/dist/src/graph/registry/GraphRegistry.d.ts.map +1 -1
  20. package/dist/src/graph/registry/GraphRegistry.js +6 -0
  21. package/dist/src/graph/registry/GraphRegistry.js.map +1 -1
  22. package/dist/src/index.d.ts +1 -0
  23. package/dist/src/index.d.ts.map +1 -1
  24. package/dist/src/index.js +3 -1
  25. package/dist/src/index.js.map +1 -1
  26. package/dist/src/injectors/class/ClassInjector.d.ts.map +1 -1
  27. package/dist/src/injectors/class/ClassInjector.js +2 -0
  28. package/dist/src/injectors/class/ClassInjector.js.map +1 -1
  29. package/dist/src/injectors/class/InjectionMetadata.d.ts +5 -0
  30. package/dist/src/injectors/class/InjectionMetadata.d.ts.map +1 -1
  31. package/dist/src/injectors/class/InjectionMetadata.js +16 -3
  32. package/dist/src/injectors/class/InjectionMetadata.js.map +1 -1
  33. package/dist/src/injectors/class/LazyInjector.d.ts +8 -0
  34. package/dist/src/injectors/class/LazyInjector.d.ts.map +1 -0
  35. package/dist/src/injectors/class/LazyInjector.js +28 -0
  36. package/dist/src/injectors/class/LazyInjector.js.map +1 -0
  37. package/dist/transformers/babel-plugin-obsidian/helpers/index.d.ts +3 -2
  38. package/dist/transformers/babel-plugin-obsidian/helpers/index.d.ts.map +1 -1
  39. package/dist/transformers/babel-plugin-obsidian/helpers/index.js +8 -2
  40. package/dist/transformers/babel-plugin-obsidian/helpers/index.js.map +1 -1
  41. package/dist/transformers/babel-plugin-obsidian/index.d.ts.map +1 -1
  42. package/dist/transformers/babel-plugin-obsidian/index.js +14 -34
  43. package/dist/transformers/babel-plugin-obsidian/index.js.map +1 -1
  44. package/dist/transformers/babel-plugin-obsidian/unmagler/index.d.ts +10 -0
  45. package/dist/transformers/babel-plugin-obsidian/unmagler/index.d.ts.map +1 -0
  46. package/dist/transformers/babel-plugin-obsidian/unmagler/index.js +14 -0
  47. package/dist/transformers/babel-plugin-obsidian/unmagler/index.js.map +1 -0
  48. package/dist/transformers/babel-plugin-obsidian/unmagler/method.d.ts +4 -0
  49. package/dist/transformers/babel-plugin-obsidian/unmagler/method.d.ts.map +1 -0
  50. package/dist/transformers/babel-plugin-obsidian/unmagler/method.js +26 -0
  51. package/dist/transformers/babel-plugin-obsidian/unmagler/method.js.map +1 -0
  52. package/dist/transformers/babel-plugin-obsidian/unmagler/property.d.ts +4 -0
  53. package/dist/transformers/babel-plugin-obsidian/unmagler/property.d.ts.map +1 -0
  54. package/dist/transformers/babel-plugin-obsidian/unmagler/property.js +14 -0
  55. package/dist/transformers/babel-plugin-obsidian/unmagler/property.js.map +1 -0
  56. package/example/babel.config.js +1 -1
  57. package/package.json +1 -1
  58. package/src/Obsidian.ts +5 -0
  59. package/src/decorators/inject/Inject.ts +3 -3
  60. package/src/decorators/inject/LazyInject.ts +8 -0
  61. package/src/graph/ProviderBinder.ts +2 -3
  62. package/src/graph/registry/GraphRegistry.ts +7 -0
  63. package/src/index.ts +1 -0
  64. package/src/injectors/class/ClassInjector.ts +2 -2
  65. package/src/injectors/class/InjectionMetadata.ts +27 -2
  66. package/src/injectors/class/LazyInjector.ts +22 -0
  67. package/transformers/babel-plugin-obsidian/helpers/index.ts +15 -3
  68. package/transformers/babel-plugin-obsidian/index.ts +11 -46
  69. package/transformers/babel-plugin-obsidian/unmagler/index.ts +9 -0
  70. package/transformers/babel-plugin-obsidian/unmagler/method.ts +31 -0
  71. package/transformers/babel-plugin-obsidian/unmagler/property.ts +21 -0
package/README.md CHANGED
@@ -1,7 +1,9 @@
1
1
  # react-obsidian
2
-
3
2
  > Dependency injection framework for React and React Native applications
4
3
 
4
+ <h5>🏗 <b>This library is still under active development.</b>
5
+ <br>⚠️ <b>Until we hit v1, Obsidian is not semver-compliant and all APIs are subject to change.</b></h5>
6
+
5
7
  ## Introduction
6
8
  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
9
 
@@ -9,6 +11,25 @@ React Obsidian is a dependency injection framework for React and React Native ap
9
11
 
10
12
  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
13
 
14
+ * [Installation](https://github.com/wix-incubator/react-obsidian#installation)
15
+ * [Prerequisites](https://github.com/wix-incubator/react-obsidian#prerequisites)
16
+ * [Usage](https://github.com/wix-incubator/react-obsidian#usage)
17
+ * [Declare an object graph](https://github.com/wix-incubator/react-obsidian#declare-an-object-graph)
18
+ * [Component injection](https://github.com/wix-incubator/react-obsidian#component-injection)
19
+ * [Hooks injection](https://github.com/wix-incubator/react-obsidian#hooks-injection)
20
+ * [Class injection](https://github.com/wix-incubator/react-obsidian#class-injection)
21
+ * [Injecting properties](https://github.com/wix-incubator/react-obsidian#injecting-properties)
22
+ * [Injecting constructor arguments](https://github.com/wix-incubator/react-obsidian#injecting-constructor-arguments)
23
+ * [Obtaining dependencies from a graph](https://github.com/wix-incubator/react-obsidian#obtaining-dependencies-from-a-graph)
24
+ * [Advance usage](https://github.com/wix-incubator/react-obsidian#advance-usage)
25
+ * [Accessing props in graphs](https://github.com/wix-incubator/react-obsidian#accessing-props-in-graphs)
26
+ * [Singleton graphs and providers](https://github.com/wix-incubator/react-obsidian#singleton-graphs-and-providers)
27
+ * [Graph middlewares](https://github.com/wix-incubator/react-obsidian#graph-middlewares)
28
+
29
+
30
+
31
+
32
+
12
33
  ## Installation
13
34
 
14
35
  ``` shell
@@ -53,7 +74,6 @@ interface InjectedComponentProps {
53
74
  biLogger: BiLogger;
54
75
  }
55
76
 
56
- // When injecting components - we must use destructuring in order for Obsidian to know which dependencies to inject.
57
77
  const InjectedComponent = ({ biLogger }: InjectedComponentProps) => (
58
78
  <>
59
79
  <button onclick={biLogger.logButtonClick}>Click Me</button>
@@ -103,7 +123,7 @@ Obsidian supports injecting both class properties and constructor arguments.
103
123
  ```typescript
104
124
  @Injectable(ApplicationGraph)
105
125
  class ButtonController {
106
- @Inject biLogger!: BiLogger;
126
+ @Inject() biLogger!: BiLogger;
107
127
 
108
128
  onClick() {
109
129
  this.biLogger.logButtonClick();
package/babel.config.js CHANGED
@@ -7,7 +7,7 @@ module.exports = {
7
7
  plugins: [
8
8
  `${__dirname}/dist/transformers/babel-plugin-obsidian`,
9
9
  ['@babel/plugin-proposal-decorators', { legacy: true }],
10
- ['@babel/plugin-proposal-class-properties', { legacy: true }],
10
+ ['@babel/plugin-proposal-class-properties', { loose: true }],
11
11
  'babel-plugin-parameter-decorator'
12
12
  ],
13
13
  };
@@ -3,6 +3,7 @@ import { Constructable, GraphInternals, ServiceLocator } from './types';
3
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
+ inject<T extends object>(target: T): object;
6
7
  addGraphMiddleware(middleware: GraphMiddleware): void;
7
8
  clearGraphMiddlewares(): void;
8
9
  }
@@ -1 +1 @@
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
+ {"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;AAGnE,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,MAAM,CAAC,CAAC,SAAS,MAAM,EAAE,MAAM,EAAE,CAAC;IAIlC,kBAAkB,CAAC,UAAU,EAAE,eAAe;IAI9C,qBAAqB;CAGtB"}
@@ -4,12 +4,16 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  var GraphRegistry_1 = __importDefault(require("./graph/registry/GraphRegistry"));
7
+ var LazyInjector_1 = __importDefault(require("./injectors/class/LazyInjector"));
7
8
  var Obsidian = /** @class */ (function () {
8
9
  function Obsidian() {
9
10
  }
10
11
  Obsidian.prototype.obtain = function (Graph, props) {
11
12
  return GraphRegistry_1.default.resolve(Graph, props);
12
13
  };
14
+ Obsidian.prototype.inject = function (target) {
15
+ return LazyInjector_1.default.inject(target);
16
+ };
13
17
  Obsidian.prototype.addGraphMiddleware = function (middleware) {
14
18
  GraphRegistry_1.default.addGraphMiddleware(middleware);
15
19
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Obsidian.js","sourceRoot":"","sources":["../../src/Obsidian.ts"],"names":[],"mappings":";;;;;AAAA,iFAA2D;AAK3D;IAAA;IAeA,CAAC;IAdC,yBAAM,GAAN,UACE,KAAuB,EACvB,KAAS;QAET,OAAO,uBAAa,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAiC,CAAC;IAC7E,CAAC;IAED,qCAAkB,GAAlB,UAAmB,UAA2B;QAC5C,uBAAa,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAC/C,CAAC;IAED,wCAAqB,GAArB;QACE,uBAAa,CAAC,qBAAqB,EAAE,CAAC;IACxC,CAAC;IACH,eAAC;AAAD,CAAC,AAfD,IAeC"}
1
+ {"version":3,"file":"Obsidian.js","sourceRoot":"","sources":["../../src/Obsidian.ts"],"names":[],"mappings":";;;;;AAAA,iFAA2D;AAI3D,gFAA0D;AAE1D;IAAA;IAmBA,CAAC;IAlBC,yBAAM,GAAN,UACE,KAAuB,EACvB,KAAS;QAET,OAAO,uBAAa,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAiC,CAAC;IAC7E,CAAC;IAED,yBAAM,GAAN,UAAyB,MAAS;QAChC,OAAO,sBAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;IAED,qCAAkB,GAAlB,UAAmB,UAA2B;QAC5C,uBAAa,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;IAC/C,CAAC;IAED,wCAAqB,GAArB;QACE,uBAAa,CAAC,qBAAqB,EAAE,CAAC;IACxC,CAAC;IACH,eAAC;AAAD,CAAC,AAnBD,IAmBC"}
@@ -1,2 +1,2 @@
1
- export declare function Inject(name?: string): (target: Object | any, propertyKey?: string | undefined, indexOrPropertyDescriptor?: number | PropertyDescriptor | undefined) => void;
1
+ export declare function Inject(name?: string): (target: Object | any, _propertyKey?: string | undefined, indexOrPropertyDescriptor?: number | PropertyDescriptor | undefined) => void;
2
2
  //# sourceMappingURL=Inject.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Inject.d.ts","sourceRoot":"","sources":["../../../../src/decorators/inject/Inject.ts"],"names":[],"mappings":"AAGA,wBAAgB,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,YAExB,MAAM,GAAG,GAAG,iHAWvB"}
1
+ {"version":3,"file":"Inject.d.ts","sourceRoot":"","sources":["../../../../src/decorators/inject/Inject.ts"],"names":[],"mappings":"AAGA,wBAAgB,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,YAExB,MAAM,GAAG,GAAG,kHAWvB"}
@@ -7,13 +7,13 @@ exports.Inject = void 0;
7
7
  var lodash_1 = require("lodash");
8
8
  var InjectionMetadata_1 = __importDefault(require("../../injectors/class/InjectionMetadata"));
9
9
  function Inject(name) {
10
- return function (target, propertyKey, indexOrPropertyDescriptor) {
10
+ return function (target, _propertyKey, indexOrPropertyDescriptor) {
11
11
  var metadata = new InjectionMetadata_1.default();
12
- if (name && (0, lodash_1.isNumber)(indexOrPropertyDescriptor)) {
12
+ if ((0, lodash_1.isNumber)(indexOrPropertyDescriptor)) {
13
13
  metadata.saveConstructorParamMetadata(target, name, indexOrPropertyDescriptor);
14
14
  }
15
15
  else {
16
- metadata.savePropertyMetadata(target.constructor, propertyKey);
16
+ metadata.savePropertyMetadata(target.constructor, name);
17
17
  }
18
18
  };
19
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Inject.js","sourceRoot":"","sources":["../../../../src/decorators/inject/Inject.ts"],"names":[],"mappings":";;;;;;AAAA,iCAAkC;AAClC,8FAAwE;AAExE,SAAgB,MAAM,CAAC,IAAa;IAClC,OAAO,UACL,MAAoB,EACpB,WAAoB,EACpB,yBAAuD;QAEvD,IAAM,QAAQ,GAAG,IAAI,2BAAiB,EAAE,CAAC;QACzC,IAAI,IAAI,IAAI,IAAA,iBAAQ,EAAC,yBAAyB,CAAC,EAAE;YAC/C,QAAQ,CAAC,4BAA4B,CAAC,MAAM,EAAE,IAAK,EAAE,yBAAyB,CAAC,CAAC;SACjF;aAAM;YACL,QAAQ,CAAC,oBAAoB,CAAC,MAAM,CAAC,WAAW,EAAE,WAAY,CAAC,CAAC;SACjE;IACH,CAAC,CAAC;AACJ,CAAC;AAbD,wBAaC"}
1
+ {"version":3,"file":"Inject.js","sourceRoot":"","sources":["../../../../src/decorators/inject/Inject.ts"],"names":[],"mappings":";;;;;;AAAA,iCAAkC;AAClC,8FAAwE;AAExE,SAAgB,MAAM,CAAC,IAAa;IAClC,OAAO,UACL,MAAoB,EACpB,YAAqB,EACrB,yBAAuD;QAEvD,IAAM,QAAQ,GAAG,IAAI,2BAAiB,EAAE,CAAC;QACzC,IAAI,IAAA,iBAAQ,EAAC,yBAAyB,CAAC,EAAE;YACvC,QAAQ,CAAC,4BAA4B,CAAC,MAAM,EAAE,IAAK,EAAE,yBAAyB,CAAC,CAAC;SACjF;aAAM;YACL,QAAQ,CAAC,oBAAoB,CAAC,MAAM,CAAC,WAAW,EAAE,IAAK,CAAC,CAAC;SAC1D;IACH,CAAC,CAAC;AACJ,CAAC;AAbD,wBAaC"}
@@ -0,0 +1,2 @@
1
+ export declare function LazyInject(name?: string): any;
2
+ //# sourceMappingURL=LazyInject.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LazyInject.d.ts","sourceRoot":"","sources":["../../../../src/decorators/inject/LazyInject.ts"],"names":[],"mappings":"AAEA,wBAAgB,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,GAAG,CAK7C"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.LazyInject = void 0;
7
+ var InjectionMetadata_1 = __importDefault(require("../../injectors/class/InjectionMetadata"));
8
+ function LazyInject(name) {
9
+ return function (target) {
10
+ var metadata = new InjectionMetadata_1.default();
11
+ metadata.saveLazyPropertyMetadata(target.constructor, name);
12
+ };
13
+ }
14
+ exports.LazyInject = LazyInject;
15
+ //# sourceMappingURL=LazyInject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LazyInject.js","sourceRoot":"","sources":["../../../../src/decorators/inject/LazyInject.ts"],"names":[],"mappings":";;;;;;AAAA,8FAAwE;AAExE,SAAgB,UAAU,CAAC,IAAa;IACtC,OAAO,UAAC,MAAc;QACpB,IAAM,QAAQ,GAAG,IAAI,2BAAiB,EAAE,CAAC;QACzC,QAAQ,CAAC,wBAAwB,CAAC,MAAM,CAAC,WAAW,EAAE,IAAK,CAAC,CAAC;IAC/D,CAAC,CAAC;AACJ,CAAC;AALD,gCAKC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ProviderBinder.d.ts","sourceRoot":"","sources":["../../../src/graph/ProviderBinder.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,QAO/D"}
1
+ {"version":3,"file":"ProviderBinder.d.ts","sourceRoot":"","sources":["../../../src/graph/ProviderBinder.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,wBAAgB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,QAM/D"}
@@ -8,10 +8,9 @@ exports.bindProviders = void 0;
8
8
  var ProvidedPropertiesStore_1 = __importDefault(require("../ProvidedPropertiesStore"));
9
9
  function bindProviders(graph) {
10
10
  ProvidedPropertiesStore_1.default.getMangledProperties(graph)
11
+ .filter(function (method) { return graph[method]; })
11
12
  .forEach(function (method) {
12
- if (graph[method] !== undefined) {
13
- graph[method] = graph[method].bind(graph);
14
- }
13
+ graph[method] = graph[method].bind(graph);
15
14
  });
16
15
  }
17
16
  exports.bindProviders = bindProviders;
@@ -1 +1 @@
1
- {"version":3,"file":"ProviderBinder.js","sourceRoot":"","sources":["../../../src/graph/ProviderBinder.ts"],"names":[],"mappings":";;;;;;AAAA,sCAAsC;AACtC,uFAAiE;AAGjE,SAAgB,aAAa,CAAC,KAAkC;IAC9D,iCAAuB,CAAC,oBAAoB,CAAC,KAAK,CAAC;SAChD,OAAO,CAAC,UAAC,MAAM;QACd,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,SAAS,EAAE;YAC/B,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAC3C;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAPD,sCAOC"}
1
+ {"version":3,"file":"ProviderBinder.js","sourceRoot":"","sources":["../../../src/graph/ProviderBinder.ts"],"names":[],"mappings":";;;;;;AAAA,sCAAsC;AACtC,uFAAiE;AAGjE,SAAgB,aAAa,CAAC,KAAkC;IAC9D,iCAAuB,CAAC,oBAAoB,CAAC,KAAK,CAAC;SAChD,MAAM,CAAC,UAAC,MAAM,IAAK,OAAA,KAAK,CAAC,MAAM,CAAC,EAAb,CAAa,CAAC;SACjC,OAAO,CAAC,UAAC,MAAM;QACd,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;AACP,CAAC;AAND,sCAMC"}
@@ -4,10 +4,12 @@ import { Middleware } from './Middleware';
4
4
  export declare class GraphRegistry {
5
5
  private readonly constructorToInstance;
6
6
  private readonly instanceToConstructor;
7
+ private readonly nameToInstance;
7
8
  private readonly graphToSubgraphs;
8
9
  private readonly graphMiddlewares;
9
10
  register(constructor: Constructable<Graph>, subgraphs?: Constructable<Graph>[]): void;
10
11
  getSubgraphs(graph: Graph): Graph[];
12
+ getGraphInstance(name: string): Graph;
11
13
  resolve<T extends Graph>(Graph: Constructable<T>, props?: any): T;
12
14
  private has;
13
15
  private getFirst;
@@ -1 +1 @@
1
- {"version":3,"file":"GraphRegistry.d.ts","sourceRoot":"","sources":["../../../../src/graph/registry/GraphRegistry.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;AAG1C,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA+C;IACrF,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA0C;IAChF,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA8D;IAC/F,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA8B;IAE/D,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,KAAK,CAAC,EAAE,SAAS,GAAE,aAAa,CAAC,KAAK,CAAC,EAAO;IAIlF,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;IASjE,OAAO,CAAC,GAAG;IAIX,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,GAAG;IAOX,OAAO,CAAC,WAAW;IAInB,KAAK,CAAC,KAAK,EAAE,KAAK;IAMlB,kBAAkB,CAAC,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC;IAIhD,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,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG1C,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA+C;IACrF,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA0C;IAChF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA4B;IAC3D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA8D;IAC/F,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA8B;IAE/D,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,KAAK,CAAC,EAAE,SAAS,GAAE,aAAa,CAAC,KAAK,CAAC,EAAO;IAIlF,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,EAAE;IAMnC,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK;IAIrC,OAAO,CAAC,CAAC,SAAS,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,GAAG,CAAC;IASjE,OAAO,CAAC,GAAG;IAIX,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,GAAG;IAQX,OAAO,CAAC,WAAW;IAInB,KAAK,CAAC,KAAK,EAAE,KAAK;IAOlB,kBAAkB,CAAC,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC;IAIhD,qBAAqB;CAGtB;;AAED,wBAAmC"}
@@ -9,6 +9,7 @@ var GraphRegistry = /** @class */ (function () {
9
9
  function GraphRegistry() {
10
10
  this.constructorToInstance = new Map();
11
11
  this.instanceToConstructor = new Map();
12
+ this.nameToInstance = new Map();
12
13
  this.graphToSubgraphs = new Map();
13
14
  this.graphMiddlewares = new GraphMiddlewareChain_1.default();
14
15
  }
@@ -23,6 +24,9 @@ var GraphRegistry = /** @class */ (function () {
23
24
  var subgraphs = (_a = this.graphToSubgraphs.get(Graph)) !== null && _a !== void 0 ? _a : new Set();
24
25
  return Array.from(subgraphs).map(function (G) { return _this.resolve(G); });
25
26
  };
27
+ GraphRegistry.prototype.getGraphInstance = function (name) {
28
+ return this.nameToInstance.get(name);
29
+ };
26
30
  GraphRegistry.prototype.resolve = function (Graph, props) {
27
31
  if (this.isSingleton(Graph) && this.has(Graph)) {
28
32
  return this.getFirst(Graph);
@@ -43,6 +47,7 @@ var GraphRegistry = /** @class */ (function () {
43
47
  graphs.add(graph);
44
48
  this.constructorToInstance.set(Graph, graphs);
45
49
  this.instanceToConstructor.set(graph, Graph);
50
+ this.nameToInstance.set(graph.name, graph);
46
51
  };
47
52
  GraphRegistry.prototype.isSingleton = function (Graph) {
48
53
  var _a;
@@ -52,6 +57,7 @@ var GraphRegistry = /** @class */ (function () {
52
57
  var Graph = this.instanceToConstructor.get(graph);
53
58
  this.instanceToConstructor.delete(graph);
54
59
  this.constructorToInstance.get(Graph).delete(graph);
60
+ this.nameToInstance.delete(graph.name);
55
61
  };
56
62
  GraphRegistry.prototype.addGraphMiddleware = function (middleware) {
57
63
  this.graphMiddlewares.add(middleware);
@@ -1 +1 @@
1
- {"version":3,"file":"GraphRegistry.js","sourceRoot":"","sources":["../../../../src/graph/registry/GraphRegistry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GraphRegistry.js","sourceRoot":"","sources":["../../../../src/graph/registry/GraphRegistry.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ export { Graph as IGraph } from './graph/Graph';
10
10
  export { Provides } from './decorators/provides/Provides';
11
11
  export { Injectable } from './decorators/inject/Injectable';
12
12
  export { Inject } from './decorators/inject/Inject';
13
+ export { LazyInject } from './decorators/inject/LazyInject';
13
14
  export { GraphMiddleware } from './graph/registry/GraphMiddleware';
14
15
  export { GraphResolveChain as ResolveChain } from './graph/registry/GraphResolveChain';
15
16
  export declare const Obsidian: _Obsidian;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,WAAW,IAAI,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAElE,OAAO,SAAS,MAAM,YAAY,CAAC;AAEnC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,cAAc,SAAS,CAAC;AAExB,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,KAAK,IAAI,MAAM,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,iBAAiB,IAAI,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvF,eAAO,MAAM,QAAQ,WAAkB,CAAC;AAGxC,eAAO,MAAM,eAAe,iDAEnB,cAAc,YAAY,CAAC,wCACQ,CAAC;AAG7C,eAAO,MAAM,UAAU,sDAEd,cAAc,YAAY,CAAC,iDACC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,WAAW,IAAI,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAElE,OAAO,SAAS,MAAM,YAAY,CAAC;AAEnC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAExC,cAAc,SAAS,CAAC;AAExB,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,KAAK,IAAI,MAAM,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,iBAAiB,IAAI,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvF,eAAO,MAAM,QAAQ,WAAkB,CAAC;AAGxC,eAAO,MAAM,eAAe,iDAEnB,cAAc,YAAY,CAAC,wCACQ,CAAC;AAG7C,eAAO,MAAM,UAAU,sDAEd,cAAc,YAAY,CAAC,iDACC,CAAC"}
package/dist/src/index.js CHANGED
@@ -13,7 +13,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
13
13
  return (mod && mod.__esModule) ? mod : { "default": mod };
14
14
  };
15
15
  Object.defineProperty(exports, "__esModule", { value: true });
16
- exports.injectHook = exports.injectComponent = exports.Obsidian = exports.GraphMiddleware = exports.Inject = exports.Injectable = exports.Provides = exports.ObjectGraph = exports.Singleton = exports.Graph = void 0;
16
+ exports.injectHook = exports.injectComponent = exports.Obsidian = exports.GraphMiddleware = exports.LazyInject = exports.Inject = exports.Injectable = exports.Provides = exports.ObjectGraph = exports.Singleton = exports.Graph = void 0;
17
17
  var ComponentInjector_1 = __importDefault(require("./injectors/components/ComponentInjector"));
18
18
  var Obsidian_1 = __importDefault(require("./Obsidian"));
19
19
  var HookInjector_1 = __importDefault(require("./injectors/hooks/HookInjector"));
@@ -30,6 +30,8 @@ var Injectable_1 = require("./decorators/inject/Injectable");
30
30
  Object.defineProperty(exports, "Injectable", { enumerable: true, get: function () { return Injectable_1.Injectable; } });
31
31
  var Inject_1 = require("./decorators/inject/Inject");
32
32
  Object.defineProperty(exports, "Inject", { enumerable: true, get: function () { return Inject_1.Inject; } });
33
+ var LazyInject_1 = require("./decorators/inject/LazyInject");
34
+ Object.defineProperty(exports, "LazyInject", { enumerable: true, get: function () { return LazyInject_1.LazyInject; } });
33
35
  var GraphMiddleware_1 = require("./graph/registry/GraphMiddleware");
34
36
  Object.defineProperty(exports, "GraphMiddleware", { enumerable: true, get: function () { return GraphMiddleware_1.GraphMiddleware; } });
35
37
  exports.Obsidian = new Obsidian_1.default();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAEA,+FAAyE;AACzE,wDAAmC;AACnC,gFAA0D;AAG1D,0CAAwB;AAExB,4CAA2C;AAAlC,8FAAA,KAAK,OAAA;AACd,oDAAmD;AAA1C,sGAAA,SAAS,OAAA;AAClB,mDAAkD;AAAzC,0GAAA,WAAW,OAAA;AAEpB,2DAA0D;AAAjD,oGAAA,QAAQ,OAAA;AACjB,6DAA4D;AAAnD,wGAAA,UAAU,OAAA;AACnB,qDAAoD;AAA3C,gGAAA,MAAM,OAAA;AACf,oEAAmE;AAA1D,kHAAA,eAAe,OAAA;AAEX,QAAA,QAAQ,GAAG,IAAI,kBAAS,EAAE,CAAC;AAExC,IAAM,iBAAiB,GAAG,IAAI,2BAAiB,EAAE,CAAC;AAC3C,IAAM,eAAe,GAAG,UAC7B,MAAkC,EAClC,KAAkC,IAC/B,OAAA,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAAvC,CAAuC,CAAC;AAHhC,QAAA,eAAe,mBAGiB;AAE7C,IAAM,YAAY,GAAG,IAAI,sBAAY,EAAE,CAAC;AACjC,IAAM,UAAU,GAAG,UACxB,IAA4B,EAC5B,KAAkC,IAC/B,OAAA,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,EAAhC,CAAgC,CAAC;AAHzB,QAAA,UAAU,cAGe"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAEA,+FAAyE;AACzE,wDAAmC;AACnC,gFAA0D;AAG1D,0CAAwB;AAExB,4CAA2C;AAAlC,8FAAA,KAAK,OAAA;AACd,oDAAmD;AAA1C,sGAAA,SAAS,OAAA;AAClB,mDAAkD;AAAzC,0GAAA,WAAW,OAAA;AAEpB,2DAA0D;AAAjD,oGAAA,QAAQ,OAAA;AACjB,6DAA4D;AAAnD,wGAAA,UAAU,OAAA;AACnB,qDAAoD;AAA3C,gGAAA,MAAM,OAAA;AACf,6DAA4D;AAAnD,wGAAA,UAAU,OAAA;AACnB,oEAAmE;AAA1D,kHAAA,eAAe,OAAA;AAEX,QAAA,QAAQ,GAAG,IAAI,kBAAS,EAAE,CAAC;AAExC,IAAM,iBAAiB,GAAG,IAAI,2BAAiB,EAAE,CAAC;AAC3C,IAAM,eAAe,GAAG,UAC7B,MAAkC,EAClC,KAAkC,IAC/B,OAAA,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAAvC,CAAuC,CAAC;AAHhC,QAAA,eAAe,mBAGiB;AAE7C,IAAM,YAAY,GAAG,IAAI,sBAAY,EAAE,CAAC;AACjC,IAAM,UAAU,GAAG,UACxB,IAA4B,EAC5B,KAAkC,IAC/B,OAAA,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,EAAhC,CAAgC,CAAC;AAHzB,QAAA,UAAU,cAGe"}
@@ -1 +1 @@
1
- {"version":3,"file":"ClassInjector.d.ts","sourceRoot":"","sources":["../../../../src/injectors/class/ClassInjector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AAEpD,MAAM,CAAC,OAAO,OAAO,aAAa;IAE9B,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,iBAAiB;gBADjB,aAAa,EAAE,aAAa,EAC5B,iBAAiB,GAAE,iBAA2C;IAGxE,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,YAChB,cAAc,GAAG,CAAC;IAKpC,OAAO,CAAC,kBAAkB;CA+B3B"}
1
+ {"version":3,"file":"ClassInjector.d.ts","sourceRoot":"","sources":["../../../../src/injectors/class/ClassInjector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC1C,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AAGpD,MAAM,CAAC,OAAO,OAAO,aAAa;IAE9B,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,iBAAiB;gBADjB,aAAa,EAAE,aAAa,EAC5B,iBAAiB,GAAE,iBAA2C;IAGxE,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,YAChB,cAAc,GAAG,CAAC;IAKpC,OAAO,CAAC,kBAAkB;CA8B3B"}
@@ -13,6 +13,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  var InjectionMetadata_1 = __importDefault(require("./InjectionMetadata"));
16
+ var LazyInjector_1 = require("./LazyInjector");
16
17
  var ClassInjector = /** @class */ (function () {
17
18
  function ClassInjector(graphRegistry, injectionMetadata) {
18
19
  if (injectionMetadata === void 0) { injectionMetadata = new InjectionMetadata_1.default(); }
@@ -31,6 +32,7 @@ var ClassInjector = /** @class */ (function () {
31
32
  }
32
33
  Handler.prototype.construct = function (target, args, newTarget) {
33
34
  var graph = graphRegistry.resolve(Graph);
35
+ Reflect.defineMetadata(LazyInjector_1.GRAPH_INSTANCE_NAME_KEY, graph.name, target);
34
36
  var argsToInject = this.injectConstructorArgs(args, graph, target);
35
37
  var createdObject = Reflect.construct(target, argsToInject, newTarget);
36
38
  this.injectProperties(target, createdObject, graph);
@@ -1 +1 @@
1
- {"version":3,"file":"ClassInjector.js","sourceRoot":"","sources":["../../../../src/injectors/class/ClassInjector.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAGA,0EAAoD;AAEpD;IACE,uBACU,aAA4B,EAC5B,iBAA8D;QAA9D,kCAAA,EAAA,wBAA2C,2BAAiB,EAAE;QAD9D,kBAAa,GAAb,aAAa,CAAe;QAC5B,sBAAiB,GAAjB,iBAAiB,CAA6C;IACrE,CAAC;IAEJ,8BAAM,GAAN,UAAO,KAA2B;QAAlC,iBAIC;QAHC,OAAO,UAAC,MAA0B;YAChC,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE,KAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAI,CAAC,aAAa,EAAE,KAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACvG,CAAC,CAAC;IACJ,CAAC;IAEO,0CAAkB,GAA1B,UACE,KAA2B,EAC3B,aAA4B,EAC5B,iBAAoC;QAEpC,OAAO;YAAI;YAwBX,CAAC;YAvBC,2BAAS,GAAT,UAAU,MAAW,EAAE,IAAW,EAAE,SAAmB;gBACrD,IAAM,KAAK,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAE3C,IAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;gBACrE,IAAM,aAAa,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;gBACzE,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;gBAEpD,OAAO,aAAa,CAAC;YACvB,CAAC;YAEO,uCAAqB,GAA7B,UAA8B,IAAW,EAAE,KAAY,EAAE,MAAW;gBAClE,IAAM,YAAY,GAAG,iBAAiB,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;gBAC1E,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE;oBAAE,OAAO,IAAI,CAAC;gBACzC,OAAO,gCAAI,IAAI,SAAK,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,QAAE,GAAG,CAAC,UAAC,KAAK,EAAE,GAAG;oBACzF,OAAO,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;gBAChE,CAAC,CAAC,CAAC;YACL,CAAC;YAEO,kCAAgB,GAAxB,UAAyB,MAAW,EAAE,aAAkB,EAAE,KAAY;gBACpE,iBAAiB,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAC,GAAG;oBAC1D,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;gBACvD,CAAC,CAAC,CAAC;YACL,CAAC;YACH,cAAC;QAAD,CAAC,AAxBU,KAwBR,CAAC;IACN,CAAC;IACH,oBAAC;AAAD,CAAC,AA3CD,IA2CC"}
1
+ {"version":3,"file":"ClassInjector.js","sourceRoot":"","sources":["../../../../src/injectors/class/ClassInjector.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAGA,0EAAoD;AACpD,+CAAyD;AAEzD;IACE,uBACU,aAA4B,EAC5B,iBAA8D;QAA9D,kCAAA,EAAA,wBAA2C,2BAAiB,EAAE;QAD9D,kBAAa,GAAb,aAAa,CAAe;QAC5B,sBAAiB,GAAjB,iBAAiB,CAA6C;IACrE,CAAC;IAEJ,8BAAM,GAAN,UAAO,KAA2B;QAAlC,iBAIC;QAHC,OAAO,UAAC,MAA0B;YAChC,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE,KAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,KAAI,CAAC,aAAa,EAAE,KAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;QACvG,CAAC,CAAC;IACJ,CAAC;IAEO,0CAAkB,GAA1B,UACE,KAA2B,EAC3B,aAA4B,EAC5B,iBAAoC;QAEpC,OAAO;YAAI;YAuBX,CAAC;YAtBC,2BAAS,GAAT,UAAU,MAAW,EAAE,IAAW,EAAE,SAAmB;gBACrD,IAAM,KAAK,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC3C,OAAO,CAAC,cAAc,CAAC,sCAAuB,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBACpE,IAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;gBACrE,IAAM,aAAa,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;gBACzE,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;gBACpD,OAAO,aAAa,CAAC;YACvB,CAAC;YAEO,uCAAqB,GAA7B,UAA8B,IAAW,EAAE,KAAY,EAAE,MAAW;gBAClE,IAAM,YAAY,GAAG,iBAAiB,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;gBAC1E,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE;oBAAE,OAAO,IAAI,CAAC;gBACzC,OAAO,gCAAI,IAAI,SAAK,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,QAAE,GAAG,CAAC,UAAC,KAAK,EAAE,GAAG;oBACzF,OAAO,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;gBAChE,CAAC,CAAC,CAAC;YACL,CAAC;YAEO,kCAAgB,GAAxB,UAAyB,MAAW,EAAE,aAAkB,EAAE,KAAY;gBACpE,iBAAiB,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAC,GAAG;oBAC1D,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;gBACvD,CAAC,CAAC,CAAC;YACL,CAAC;YACH,cAAC;QAAD,CAAC,AAvBU,KAuBR,CAAC;IACN,CAAC;IACH,oBAAC;AAAD,CAAC,AA1CD,IA0CC"}
@@ -2,9 +2,14 @@ import { ConstructorArgs } from './ConstructorArgs';
2
2
  export default class InjectionMetadata {
3
3
  private readonly injectionMetadataKey;
4
4
  private readonly injectedConstructorArgsKey;
5
+ private readonly lazyInjectionMetadataKey;
5
6
  getConstructorArgsToInject(target: any): ConstructorArgs;
6
7
  getPropertiesToInject(target: any): Set<string>;
8
+ getLazyPropertiesToInject(target: any): Set<string>;
7
9
  saveConstructorParamMetadata(target: any, paramName: string, index: number): void;
8
10
  savePropertyMetadata(target: any, property: string): void;
11
+ saveLazyPropertyMetadata(target: any, property: string): void;
12
+ private saveProperties;
13
+ private getProperties;
9
14
  }
10
15
  //# sourceMappingURL=InjectionMetadata.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"InjectionMetadata.d.ts","sourceRoot":"","sources":["../../../../src/injectors/class/InjectionMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,MAAM,CAAC,OAAO,OAAO,iBAAiB;IACpC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAuB;IAC5D,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAgC;IAE3E,0BAA0B,CAAC,MAAM,EAAE,GAAG,GAAG,eAAe;IAIxD,qBAAqB,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC;IAI/C,4BAA4B,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAU1E,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM;CAOnD"}
1
+ {"version":3,"file":"InjectionMetadata.d.ts","sourceRoot":"","sources":["../../../../src/injectors/class/InjectionMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,MAAM,CAAC,OAAO,OAAO,iBAAiB;IACpC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAuB;IAC5D,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAgC;IAC3E,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAA8B;IAEvE,0BAA0B,CAAC,MAAM,EAAE,GAAG,GAAG,eAAe;IAIxD,qBAAqB,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC;IAI/C,yBAAyB,CAAC,MAAM,EAAE,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC;IAInD,4BAA4B,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAU1E,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM;IAQlD,wBAAwB,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM;IAQtD,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,aAAa;CAGtB"}
@@ -5,14 +5,17 @@ var InjectionMetadata = /** @class */ (function () {
5
5
  function InjectionMetadata() {
6
6
  this.injectionMetadataKey = 'injectionMetadata';
7
7
  this.injectedConstructorArgsKey = 'injectedConstructorArgsKey';
8
+ this.lazyInjectionMetadataKey = 'lazyInjectionMetadataKey';
8
9
  }
9
10
  InjectionMetadata.prototype.getConstructorArgsToInject = function (target) {
10
11
  var _a;
11
12
  return (_a = Reflect.getMetadata(this.injectedConstructorArgsKey, target)) !== null && _a !== void 0 ? _a : new ConstructorArgs_1.ConstructorArgs();
12
13
  };
13
14
  InjectionMetadata.prototype.getPropertiesToInject = function (target) {
14
- var _a;
15
- return (_a = Reflect.getMetadata(this.injectionMetadataKey, target)) !== null && _a !== void 0 ? _a : new Set();
15
+ return this.getProperties(this.injectionMetadataKey, target);
16
+ };
17
+ InjectionMetadata.prototype.getLazyPropertiesToInject = function (target) {
18
+ return this.getProperties(this.lazyInjectionMetadataKey, target);
16
19
  };
17
20
  InjectionMetadata.prototype.saveConstructorParamMetadata = function (target, paramName, index) {
18
21
  var argsToInject = this.getConstructorArgsToInject(target);
@@ -20,7 +23,17 @@ var InjectionMetadata = /** @class */ (function () {
20
23
  Reflect.defineMetadata(this.injectedConstructorArgsKey, argsToInject, target);
21
24
  };
22
25
  InjectionMetadata.prototype.savePropertyMetadata = function (target, property) {
23
- Reflect.defineMetadata(this.injectionMetadataKey, this.getPropertiesToInject(target).add(property), target);
26
+ this.saveProperties(this.injectionMetadataKey, this.getPropertiesToInject(target).add(property), target);
27
+ };
28
+ InjectionMetadata.prototype.saveLazyPropertyMetadata = function (target, property) {
29
+ this.saveProperties(this.lazyInjectionMetadataKey, this.getLazyPropertiesToInject(target).add(property), target);
30
+ };
31
+ InjectionMetadata.prototype.saveProperties = function (key, properties, target) {
32
+ Reflect.defineMetadata(key, properties, target);
33
+ };
34
+ InjectionMetadata.prototype.getProperties = function (key, target) {
35
+ var _a;
36
+ return (_a = Reflect.getMetadata(key, target)) !== null && _a !== void 0 ? _a : new Set();
24
37
  };
25
38
  return InjectionMetadata;
26
39
  }());
@@ -1 +1 @@
1
- {"version":3,"file":"InjectionMetadata.js","sourceRoot":"","sources":["../../../../src/injectors/class/InjectionMetadata.ts"],"names":[],"mappings":";;AAAA,qDAAoD;AAEpD;IAAA;QACmB,yBAAoB,GAAG,mBAAmB,CAAC;QAC3C,+BAA0B,GAAG,4BAA4B,CAAC;IA2B7E,CAAC;IAzBC,sDAA0B,GAA1B,UAA2B,MAAW;;QACpC,OAAO,MAAA,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,0BAA0B,EAAE,MAAM,CAAC,mCAAI,IAAI,iCAAe,EAAE,CAAC;IAC/F,CAAC;IAED,iDAAqB,GAArB,UAAsB,MAAW;;QAC/B,OAAO,MAAA,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,oBAAoB,EAAE,MAAM,CAAC,mCAAI,IAAI,GAAG,EAAE,CAAC;IAC7E,CAAC;IAED,wDAA4B,GAA5B,UAA6B,MAAW,EAAE,SAAiB,EAAE,KAAa;QACxE,IAAM,YAAY,GAAG,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;QAC7D,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACnC,OAAO,CAAC,cAAc,CACpB,IAAI,CAAC,0BAA0B,EAC/B,YAAY,EACZ,MAAM,CACP,CAAC;IACJ,CAAC;IAED,gDAAoB,GAApB,UAAqB,MAAW,EAAE,QAAgB;QAChD,OAAO,CAAC,cAAc,CACpB,IAAI,CAAC,oBAAoB,EACzB,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAChD,MAAM,CACP,CAAC;IACJ,CAAC;IACH,wBAAC;AAAD,CAAC,AA7BD,IA6BC"}
1
+ {"version":3,"file":"InjectionMetadata.js","sourceRoot":"","sources":["../../../../src/injectors/class/InjectionMetadata.ts"],"names":[],"mappings":";;AAAA,qDAAoD;AAEpD;IAAA;QACmB,yBAAoB,GAAG,mBAAmB,CAAC;QAC3C,+BAA0B,GAAG,4BAA4B,CAAC;QAC1D,6BAAwB,GAAG,0BAA0B,CAAC;IAmDzE,CAAC;IAjDC,sDAA0B,GAA1B,UAA2B,MAAW;;QACpC,OAAO,MAAA,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,0BAA0B,EAAE,MAAM,CAAC,mCAAI,IAAI,iCAAe,EAAE,CAAC;IAC/F,CAAC;IAED,iDAAqB,GAArB,UAAsB,MAAW;QAC/B,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;IAED,qDAAyB,GAAzB,UAA0B,MAAW;QACnC,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,wBAAwB,EAAE,MAAM,CAAC,CAAC;IACnE,CAAC;IAED,wDAA4B,GAA5B,UAA6B,MAAW,EAAE,SAAiB,EAAE,KAAa;QACxE,IAAM,YAAY,GAAG,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;QAC7D,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QACnC,OAAO,CAAC,cAAc,CACpB,IAAI,CAAC,0BAA0B,EAC/B,YAAY,EACZ,MAAM,CACP,CAAC;IACJ,CAAC;IAED,gDAAoB,GAApB,UAAqB,MAAW,EAAE,QAAgB;QAChD,IAAI,CAAC,cAAc,CACjB,IAAI,CAAC,oBAAoB,EACzB,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EAChD,MAAM,CACP,CAAC;IACJ,CAAC;IAED,oDAAwB,GAAxB,UAAyB,MAAW,EAAE,QAAgB;QACpD,IAAI,CAAC,cAAc,CACjB,IAAI,CAAC,wBAAwB,EAC7B,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,EACpD,MAAM,CACP,CAAC;IACJ,CAAC;IAEO,0CAAc,GAAtB,UAAuB,GAAW,EAAE,UAAuB,EAAE,MAAW;QACtE,OAAO,CAAC,cAAc,CACpB,GAAG,EACH,UAAU,EACV,MAAM,CACP,CAAC;IACJ,CAAC;IAEO,yCAAa,GAArB,UAAsB,GAAW,EAAE,MAAW;;QAC5C,OAAO,MAAA,OAAO,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,mCAAI,IAAI,GAAG,EAAE,CAAC;IACvD,CAAC;IACH,wBAAC;AAAD,CAAC,AAtDD,IAsDC"}
@@ -0,0 +1,8 @@
1
+ export declare const GRAPH_INSTANCE_NAME_KEY = "GRAPH_INSTANCE_NAME";
2
+ declare class LazyInjector<T extends object> {
3
+ inject(target: T): T;
4
+ private getGraphInstance;
5
+ }
6
+ declare const _default: LazyInjector<object>;
7
+ export default _default;
8
+ //# sourceMappingURL=LazyInjector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LazyInjector.d.ts","sourceRoot":"","sources":["../../../../src/injectors/class/LazyInjector.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,uBAAuB,wBAAwB,CAAC;AAE7D,cAAM,YAAY,CAAC,CAAC,SAAS,MAAM;IACjC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC;IASpB,OAAO,CAAC,gBAAgB;CAIzB;;AAED,wBAAkC"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.GRAPH_INSTANCE_NAME_KEY = void 0;
7
+ var GraphRegistry_1 = __importDefault(require("../../graph/registry/GraphRegistry"));
8
+ var InjectionMetadata_1 = __importDefault(require("./InjectionMetadata"));
9
+ exports.GRAPH_INSTANCE_NAME_KEY = 'GRAPH_INSTANCE_NAME';
10
+ var LazyInjector = /** @class */ (function () {
11
+ function LazyInjector() {
12
+ }
13
+ LazyInjector.prototype.inject = function (target) {
14
+ var injectionMetadata = new InjectionMetadata_1.default();
15
+ var graph = this.getGraphInstance(target);
16
+ injectionMetadata.getLazyPropertiesToInject(target.constructor).forEach(function (key) {
17
+ Reflect.set(target, key, graph.retrieve(key));
18
+ });
19
+ return target;
20
+ };
21
+ LazyInjector.prototype.getGraphInstance = function (target) {
22
+ var graphInstanceName = Reflect.getMetadata(exports.GRAPH_INSTANCE_NAME_KEY, target.constructor);
23
+ return GraphRegistry_1.default.getGraphInstance(graphInstanceName);
24
+ };
25
+ return LazyInjector;
26
+ }());
27
+ exports.default = new LazyInjector();
28
+ //# sourceMappingURL=LazyInjector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LazyInjector.js","sourceRoot":"","sources":["../../../../src/injectors/class/LazyInjector.ts"],"names":[],"mappings":";;;;;;AAAA,qFAA+D;AAC/D,0EAAoD;AAEvC,QAAA,uBAAuB,GAAG,qBAAqB,CAAC;AAE7D;IAAA;IAcA,CAAC;IAbC,6BAAM,GAAN,UAAO,MAAS;QACd,IAAM,iBAAiB,GAAG,IAAI,2BAAiB,EAAE,CAAC;QAClD,IAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAC5C,iBAAiB,CAAC,yBAAyB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,UAAC,GAAG;YAC1E,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,uCAAgB,GAAxB,UAAyB,MAAS;QAChC,IAAM,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,+BAAuB,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QAC3F,OAAO,uBAAa,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;IAC3D,CAAC;IACH,mBAAC;AAAD,CAAC,AAdD,IAcC;AAED,kBAAe,IAAI,YAAY,EAAE,CAAC"}
@@ -1,4 +1,5 @@
1
- import { ClassMethod, Decorator, Identifier, ObjectExpression, ObjectPattern, TSParameterProperty } from '@babel/types';
1
+ import { ClassMethod, ClassProperty, Decorator, Identifier, ObjectExpression, ObjectPattern, TSParameterProperty } from '@babel/types';
2
+ export declare type AcceptedNodeType = Identifier | TSParameterProperty | ClassProperty;
2
3
  export declare function providerIsNotNamed(decorator: Decorator): boolean;
3
4
  export declare function addNameToProviderArguments(node: ClassMethod, decorator: Decorator): void;
4
5
  export declare function getDecoratorArgument(decorator: Decorator): ObjectExpression | undefined;
@@ -6,5 +7,5 @@ export declare function getMethodName(node: ClassMethod): string;
6
7
  export declare function getDecoratorByName(decorators: Array<Decorator> | undefined | null, decoratorName: string): Decorator | undefined;
7
8
  export declare function getDecoratorName(decorator?: Decorator): string | undefined;
8
9
  export declare function paramsToDestructuringAssignment(params: (Identifier | any)[]): ObjectPattern;
9
- export declare function passParamNameAsInjectArgument(node: Identifier | TSParameterProperty, decorator: Decorator): void;
10
+ export declare function passParamNameAsInjectArgument(node: AcceptedNodeType, decorator: Decorator): void;
10
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../transformers/babel-plugin-obsidian/helpers/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,WAAW,EACX,SAAS,EACT,UAAU,EACV,gBAAgB,EAChB,aAAa,EACb,mBAAmB,EACpB,MAAM,cAAc,CAAC;AAKtB,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAWhE;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,QAOjF;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,SAAS,GAAG,gBAAgB,GAAG,SAAS,CAKvF;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAGvD;AAED,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,SAAS,GAAG,IAAI,EAC/C,aAAa,EAAE,MAAM,GACpB,SAAS,GAAG,SAAS,CAEvB;AAED,wBAAgB,gBAAgB,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAE1E;AAED,wBAAgB,+BAA+B,CAAC,MAAM,EAAE,CAAC,UAAU,GAAG,GAAG,CAAC,EAAE,GAAG,aAAa,CAI3F;AAED,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,UAAU,GAAG,mBAAmB,EAAE,SAAS,EAAE,SAAS,QAMzG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../transformers/babel-plugin-obsidian/helpers/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,WAAW,EACX,aAAa,EACb,SAAS,EACT,UAAU,EACV,gBAAgB,EAChB,aAAa,EACb,mBAAmB,EACpB,MAAM,cAAc,CAAC;AAKtB,oBAAY,gBAAgB,GAAG,UAAU,GAAG,mBAAmB,GAAG,aAAa,CAAC;AAEhF,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAWhE;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,QAOjF;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,SAAS,GAAG,gBAAgB,GAAG,SAAS,CAKvF;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,CAGvD;AAED,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,SAAS,GAAG,IAAI,EAC/C,aAAa,EAAE,MAAM,GACpB,SAAS,GAAG,SAAS,CAEvB;AAED,wBAAgB,gBAAgB,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAE1E;AAED,wBAAgB,+BAA+B,CAAC,MAAM,EAAE,CAAC,UAAU,GAAG,GAAG,CAAC,EAAE,GAAG,aAAa,CAI3F;AAED,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,gBAAgB,EACtB,SAAS,EAAE,SAAS,QAOrB"}
@@ -55,18 +55,24 @@ exports.paramsToDestructuringAssignment = paramsToDestructuringAssignment;
55
55
  function passParamNameAsInjectArgument(node, decorator) {
56
56
  if (core_1.types.isCallExpression(decorator.expression)) {
57
57
  decorator.expression.arguments = [
58
- core_1.types.stringLiteral(getIdentifierOrParamName(node)),
58
+ core_1.types.stringLiteral(getNodeName(node)),
59
59
  ];
60
60
  }
61
61
  }
62
62
  exports.passParamNameAsInjectArgument = passParamNameAsInjectArgument;
63
- function getIdentifierOrParamName(node) {
63
+ function getNodeName(node) {
64
64
  if (core_1.types.isTSParameterProperty(node)) {
65
65
  if (core_1.types.isIdentifier(node.parameter)) {
66
66
  return node.parameter.name;
67
67
  }
68
68
  return never;
69
69
  }
70
+ if (core_1.types.isClassProperty(node)) {
71
+ if (core_1.types.isIdentifier(node.key)) {
72
+ return node.key.name;
73
+ }
74
+ return never;
75
+ }
70
76
  return node.name;
71
77
  }
72
78
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../transformers/babel-plugin-obsidian/helpers/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../transformers/babel-plugin-obsidian/helpers/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../transformers/babel-plugin-obsidian/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAY,SAAS,EAAE,MAAM,aAAa,CAAC;AAsElD,MAAM,CAAC,OAAO,UAAU,MAAM,gDAE7B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../transformers/babel-plugin-obsidian/index.ts"],"names":[],"mappings":"AAQA,OAAO,EAAY,SAAS,EAAE,MAAM,aAAa,CAAC;AAmClD,MAAM,CAAC,OAAO,UAAU,MAAM,gDAE7B"}