@wirestate/core 0.6.0

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 (183) hide show
  1. package/CHANGELOG.md +51 -0
  2. package/LICENSE +21 -0
  3. package/README.md +319 -0
  4. package/cjs/development/index.js +301 -0
  5. package/cjs/development/index.js.map +1 -0
  6. package/cjs/development/lib.js +1007 -0
  7. package/cjs/development/lib.js.map +1 -0
  8. package/cjs/development/test-utils.js +128 -0
  9. package/cjs/development/test-utils.js.map +1 -0
  10. package/cjs/production/index.js +1 -0
  11. package/cjs/production/index.js.map +1 -0
  12. package/cjs/production/lib.js +1 -0
  13. package/cjs/production/lib.js.map +1 -0
  14. package/cjs/production/test-utils.js +1 -0
  15. package/cjs/production/test-utils.js.map +1 -0
  16. package/esm/development/alias.js +9 -0
  17. package/esm/development/alias.js.map +1 -0
  18. package/esm/development/bind/bind-constant.js +19 -0
  19. package/esm/development/bind/bind-constant.js.map +1 -0
  20. package/esm/development/bind/bind-dynamic-value.js +28 -0
  21. package/esm/development/bind/bind-dynamic-value.js.map +1 -0
  22. package/esm/development/bind/bind-entry.js +39 -0
  23. package/esm/development/bind/bind-entry.js.map +1 -0
  24. package/esm/development/bind/bind-service.js +253 -0
  25. package/esm/development/bind/bind-service.js.map +1 -0
  26. package/esm/development/bind/get-entry-token.js +14 -0
  27. package/esm/development/bind/get-entry-token.js.map +1 -0
  28. package/esm/development/commands/command-bus.js +112 -0
  29. package/esm/development/commands/command-bus.js.map +1 -0
  30. package/esm/development/commands/command-optional.js +16 -0
  31. package/esm/development/commands/command-optional.js.map +1 -0
  32. package/esm/development/commands/command.js +16 -0
  33. package/esm/development/commands/command.js.map +1 -0
  34. package/esm/development/commands/get-command-handler-metadata.js +27 -0
  35. package/esm/development/commands/get-command-handler-metadata.js.map +1 -0
  36. package/esm/development/commands/on-command.js +26 -0
  37. package/esm/development/commands/on-command.js.map +1 -0
  38. package/esm/development/container/create-ioc-container.js +35 -0
  39. package/esm/development/container/create-ioc-container.js.map +1 -0
  40. package/esm/development/container/wire-scope.js +151 -0
  41. package/esm/development/container/wire-scope.js.map +1 -0
  42. package/esm/development/error/error-code.js +10 -0
  43. package/esm/development/error/error-code.js.map +1 -0
  44. package/esm/development/error/wirestate-error.js +29 -0
  45. package/esm/development/error/wirestate-error.js.map +1 -0
  46. package/esm/development/events/build-event-dispatcher.js +39 -0
  47. package/esm/development/events/build-event-dispatcher.js.map +1 -0
  48. package/esm/development/events/emit-event.js +20 -0
  49. package/esm/development/events/emit-event.js.map +1 -0
  50. package/esm/development/events/event-bus.js +52 -0
  51. package/esm/development/events/event-bus.js.map +1 -0
  52. package/esm/development/events/get-event-handler-metadata.js +27 -0
  53. package/esm/development/events/get-event-handler-metadata.js.map +1 -0
  54. package/esm/development/events/on-event.js +29 -0
  55. package/esm/development/events/on-event.js.map +1 -0
  56. package/esm/development/index.js +28 -0
  57. package/esm/development/index.js.map +1 -0
  58. package/esm/development/queries/get-query-handler-metadata.js +27 -0
  59. package/esm/development/queries/get-query-handler-metadata.js.map +1 -0
  60. package/esm/development/queries/on-query.js +26 -0
  61. package/esm/development/queries/on-query.js.map +1 -0
  62. package/esm/development/queries/query-bus.js +99 -0
  63. package/esm/development/queries/query-bus.js.map +1 -0
  64. package/esm/development/queries/query-optional.js +16 -0
  65. package/esm/development/queries/query-optional.js.map +1 -0
  66. package/esm/development/queries/query.js +16 -0
  67. package/esm/development/queries/query.js.map +1 -0
  68. package/esm/development/registry.js +56 -0
  69. package/esm/development/registry.js.map +1 -0
  70. package/esm/development/seeds/apply-seeds.js +21 -0
  71. package/esm/development/seeds/apply-seeds.js.map +1 -0
  72. package/esm/development/seeds/apply-shared-seed.js +14 -0
  73. package/esm/development/seeds/apply-shared-seed.js.map +1 -0
  74. package/esm/development/seeds/unapply-seeds.js +19 -0
  75. package/esm/development/seeds/unapply-seeds.js.map +1 -0
  76. package/esm/development/service/get-activated-handler-metadata.js +27 -0
  77. package/esm/development/service/get-activated-handler-metadata.js.map +1 -0
  78. package/esm/development/service/get-deactivation-handler-metadata.js +27 -0
  79. package/esm/development/service/get-deactivation-handler-metadata.js.map +1 -0
  80. package/esm/development/service/on-activated.js +21 -0
  81. package/esm/development/service/on-activated.js.map +1 -0
  82. package/esm/development/service/on-deactivation.js +21 -0
  83. package/esm/development/service/on-deactivation.js.map +1 -0
  84. package/esm/development/test-utils/mock-bind-entry.js +24 -0
  85. package/esm/development/test-utils/mock-bind-entry.js.map +1 -0
  86. package/esm/development/test-utils/mock-bind-service.js +24 -0
  87. package/esm/development/test-utils/mock-bind-service.js.map +1 -0
  88. package/esm/development/test-utils/mock-container.js +52 -0
  89. package/esm/development/test-utils/mock-container.js.map +1 -0
  90. package/esm/development/test-utils/mock-service.js +26 -0
  91. package/esm/development/test-utils/mock-service.js.map +1 -0
  92. package/esm/development/test-utils/mock-unbind-service.js +13 -0
  93. package/esm/development/test-utils/mock-unbind-service.js.map +1 -0
  94. package/esm/development/test-utils.js +6 -0
  95. package/esm/development/test-utils.js.map +1 -0
  96. package/esm/development/types/commands.js +12 -0
  97. package/esm/development/types/commands.js.map +1 -0
  98. package/esm/production/alias.js +1 -0
  99. package/esm/production/alias.js.map +1 -0
  100. package/esm/production/bind/bind-constant.js +1 -0
  101. package/esm/production/bind/bind-constant.js.map +1 -0
  102. package/esm/production/bind/bind-dynamic-value.js +1 -0
  103. package/esm/production/bind/bind-dynamic-value.js.map +1 -0
  104. package/esm/production/bind/bind-entry.js +1 -0
  105. package/esm/production/bind/bind-entry.js.map +1 -0
  106. package/esm/production/bind/bind-service.js +1 -0
  107. package/esm/production/bind/bind-service.js.map +1 -0
  108. package/esm/production/bind/get-entry-token.js +1 -0
  109. package/esm/production/bind/get-entry-token.js.map +1 -0
  110. package/esm/production/commands/command-bus.js +1 -0
  111. package/esm/production/commands/command-bus.js.map +1 -0
  112. package/esm/production/commands/command-optional.js +1 -0
  113. package/esm/production/commands/command-optional.js.map +1 -0
  114. package/esm/production/commands/command.js +1 -0
  115. package/esm/production/commands/command.js.map +1 -0
  116. package/esm/production/commands/get-command-handler-metadata.js +1 -0
  117. package/esm/production/commands/get-command-handler-metadata.js.map +1 -0
  118. package/esm/production/commands/on-command.js +1 -0
  119. package/esm/production/commands/on-command.js.map +1 -0
  120. package/esm/production/container/create-ioc-container.js +1 -0
  121. package/esm/production/container/create-ioc-container.js.map +1 -0
  122. package/esm/production/container/wire-scope.js +1 -0
  123. package/esm/production/container/wire-scope.js.map +1 -0
  124. package/esm/production/error/error-code.js +1 -0
  125. package/esm/production/error/error-code.js.map +1 -0
  126. package/esm/production/error/wirestate-error.js +1 -0
  127. package/esm/production/error/wirestate-error.js.map +1 -0
  128. package/esm/production/events/build-event-dispatcher.js +1 -0
  129. package/esm/production/events/build-event-dispatcher.js.map +1 -0
  130. package/esm/production/events/emit-event.js +1 -0
  131. package/esm/production/events/emit-event.js.map +1 -0
  132. package/esm/production/events/event-bus.js +1 -0
  133. package/esm/production/events/event-bus.js.map +1 -0
  134. package/esm/production/events/get-event-handler-metadata.js +1 -0
  135. package/esm/production/events/get-event-handler-metadata.js.map +1 -0
  136. package/esm/production/events/on-event.js +1 -0
  137. package/esm/production/events/on-event.js.map +1 -0
  138. package/esm/production/index.js +1 -0
  139. package/esm/production/index.js.map +1 -0
  140. package/esm/production/queries/get-query-handler-metadata.js +1 -0
  141. package/esm/production/queries/get-query-handler-metadata.js.map +1 -0
  142. package/esm/production/queries/on-query.js +1 -0
  143. package/esm/production/queries/on-query.js.map +1 -0
  144. package/esm/production/queries/query-bus.js +1 -0
  145. package/esm/production/queries/query-bus.js.map +1 -0
  146. package/esm/production/queries/query-optional.js +1 -0
  147. package/esm/production/queries/query-optional.js.map +1 -0
  148. package/esm/production/queries/query.js +1 -0
  149. package/esm/production/queries/query.js.map +1 -0
  150. package/esm/production/registry.js +1 -0
  151. package/esm/production/registry.js.map +1 -0
  152. package/esm/production/seeds/apply-seeds.js +1 -0
  153. package/esm/production/seeds/apply-seeds.js.map +1 -0
  154. package/esm/production/seeds/apply-shared-seed.js +1 -0
  155. package/esm/production/seeds/apply-shared-seed.js.map +1 -0
  156. package/esm/production/seeds/unapply-seeds.js +1 -0
  157. package/esm/production/seeds/unapply-seeds.js.map +1 -0
  158. package/esm/production/service/get-activated-handler-metadata.js +1 -0
  159. package/esm/production/service/get-activated-handler-metadata.js.map +1 -0
  160. package/esm/production/service/get-deactivation-handler-metadata.js +1 -0
  161. package/esm/production/service/get-deactivation-handler-metadata.js.map +1 -0
  162. package/esm/production/service/on-activated.js +1 -0
  163. package/esm/production/service/on-activated.js.map +1 -0
  164. package/esm/production/service/on-deactivation.js +1 -0
  165. package/esm/production/service/on-deactivation.js.map +1 -0
  166. package/esm/production/test-utils/mock-bind-entry.js +1 -0
  167. package/esm/production/test-utils/mock-bind-entry.js.map +1 -0
  168. package/esm/production/test-utils/mock-bind-service.js +1 -0
  169. package/esm/production/test-utils/mock-bind-service.js.map +1 -0
  170. package/esm/production/test-utils/mock-container.js +1 -0
  171. package/esm/production/test-utils/mock-container.js.map +1 -0
  172. package/esm/production/test-utils/mock-service.js +1 -0
  173. package/esm/production/test-utils/mock-service.js.map +1 -0
  174. package/esm/production/test-utils/mock-unbind-service.js +1 -0
  175. package/esm/production/test-utils/mock-unbind-service.js.map +1 -0
  176. package/esm/production/test-utils.js +1 -0
  177. package/esm/production/test-utils.js.map +1 -0
  178. package/esm/production/types/commands.js +1 -0
  179. package/esm/production/types/commands.js.map +1 -0
  180. package/index.d.ts +566 -0
  181. package/lib.d.ts +17 -0
  182. package/package.json +61 -0
  183. package/test-utils.d.ts +108 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lib.js","sources":["../../../../../../../src/wirestate-core/error/error-code.ts","../../../../../../../src/wirestate-core/error/wirestate-error.ts","../../../../../../../src/wirestate-core/bind/bind-constant.ts","../../../../../../../src/wirestate-core/bind/bind-dynamic-value.ts","../../../../../../../src/wirestate-core/types/commands.ts","../../../../../../../src/wirestate-core/commands/command-bus.ts","../../../../../../../src/wirestate-core/registry.ts","../../../../../../../src/wirestate-core/commands/get-command-handler-metadata.ts","../../../../../../../src/wirestate-core/events/event-bus.ts","../../../../../../../src/wirestate-core/queries/query-bus.ts","../../../../../../../src/wirestate-core/container/wire-scope.ts","../../../../../../../src/wirestate-core/events/get-event-handler-metadata.ts","../../../../../../../src/wirestate-core/events/build-event-dispatcher.ts","../../../../../../../src/wirestate-core/queries/get-query-handler-metadata.ts","../../../../../../../src/wirestate-core/service/get-activated-handler-metadata.ts","../../../../../../../src/wirestate-core/service/get-deactivation-handler-metadata.ts","../../../../../../../src/wirestate-core/bind/bind-service.ts","../../../../../../../src/wirestate-core/bind/bind-entry.ts","../../../../../../../src/wirestate-core/bind/get-entry-token.ts","../../../../../../../src/wirestate-core/container/create-ioc-container.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["ERROR_CODE_GENERIC","ERROR_CODE_INVALID_ARGUMENTS","ERROR_CODE_BINDING_SCOPE","ERROR_CODE_FAILED_TO_RESOLVE_QUERY_HANDLER","ERROR_CODE_FAILED_TO_RESOLVE_COMMAND_HANDLER","ERROR_CODE_ACCESS_BEFORE_ACTIVATION","ERROR_CODE_ACCESS_AFTER_DISPOSAL","WirestateError","_super","__extends","code","detail","_this","name","message","Error","bindConstant","container","entry","scopeBindingType","ScopeBindingType","Singleton","bind","id","toConstantValue","value","bindDynamicValue","binding","toDynamicValue","factory","bindingScopeValues","Transient","inTransientScope","Request","inRequestScope","inSingletonScope","ECommandStatus","CommandBus","handlers","Map","prototype","register","type","handler","stack","get","set","push","current","index","indexOf","splice","length","delete","command","data","concat","String","descriptor","task","status","PENDING","Promise","resolve","then","result","SETTLED","catch","error","ERROR","commandOptional","has","Boolean","_a","clear","SEEDS_TOKEN","Symbol","SEED_TOKEN","QUERY_HANDLER_METADATA","WeakMap","COMMAND_HANDLER_METADATA","ACTIVATED_HANDLER_METADATA","DEACTIVATION_HANDLER_METADATA","EVENT_HANDLER_METADATA","CONTAINER_REFS_BY_SERVICE","WIRE_SCOPES_BY_SERVICE","EVENT_UNSUBSCRIBERS_BY_SERVICE","QUERY_UNREGISTERS_BY_SERVICE","COMMAND_UNREGISTERS_BY_SERVICE","getCommandHandlerMetadata","instance","constructor","chain","Object","Function","own","getPrototypeOf","reverse","flat","EventBus","Set","emit","event","snapshot","Array","from","_i","snapshot_1","console","subscribe","add","QueryBus","query","queryOptional","WireScope","isDisposed","getContainer","injectionId","resolveOptional","isBound","emitEvent","payload","undefined","queryData","queryOptionalData","executeCommand","executeOptionalCommand","getSeed","seed","__decorate","injectable","getEventHandlerMetadata","buildEventDispatcher","entries","meta","method","methodName","types","entries_1","includes","getQueryHandlerMetadata","getActivatedHandlerMetadata","getDeactivationHandlerMetadata","bindService","options","whenBind","to","onActivation","context","IS_DISPOSED","attachWireScopes","dispatcher","attachEventsSubscription","queryBus","unregister","attachQueryUnregister","commandBus","_b","_c","attachCommandUnregister","isWithIgnoreLifecycle","call","_d","_e","onDeactivation","detachWireScopes","detachCommandUnregister","detachQueryUnregister","detachEventSubscription","service","bus","unsubscribe","list","list_1","list_2","Service","paramTypes","Reflect","getMetadata","some","scopes","getOwnPropertyNames","key","scopes_1","scope","bindEntry","bindingType","bindingTypeValues","ConstantValue","DynamicValue","getEntryToken","createIocContainer","Container","defaultScope","parent","toResolvedValue"],"mappings":"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"}
@@ -0,0 +1,128 @@
1
+ 'use strict';
2
+
3
+ var createIocContainer = require('./lib.js');
4
+ require('inversify');
5
+ require('tslib');
6
+
7
+ /**
8
+ * Binds a service class to the IoC container for testing purposes.
9
+ * This utility uses {@link bindService} internally to ensure the service is correctly registered
10
+ * with the appropriate scope and metadata.
11
+ *
12
+ * @param container - the IoC container to bind the service to
13
+ * @param ServiceClass - the service class to bind
14
+ * @param options - optional binding configuration
15
+ * @returns void
16
+ */
17
+ function mockBindService(container, ServiceClass, options) {
18
+ if (options === void 0) {
19
+ options = {};
20
+ }
21
+ var skipLifecycle = options.skipLifecycle;
22
+ return createIocContainer.bindService(container, ServiceClass, {
23
+ isWithIgnoreLifecycle: skipLifecycle
24
+ });
25
+ }
26
+
27
+ /**
28
+ * Binds a service entry to the IoC container for testing purposes.
29
+ * This utility uses {@link bindEntry} internally.
30
+ * It supports both service classes and injectable descriptors (constants, dynamic values, etc.).
31
+ *
32
+ * @param container - the IoC container to bind the entry to
33
+ * @param entry - the service class or injectable descriptor to bind
34
+ * @param options - optional binding configuration
35
+ * @returns void
36
+ */
37
+ function mockBindEntry(container, entry, options) {
38
+ if (options === void 0) {
39
+ options = {};
40
+ }
41
+ var skipLifecycle = options.skipLifecycle;
42
+ return createIocContainer.bindEntry(container, entry, {
43
+ isWithIgnoreLifecycle: skipLifecycle
44
+ });
45
+ }
46
+
47
+ /**
48
+ * Unbinds a service from the IoC container.
49
+ * This is useful in tests to reset or override specific service registrations.
50
+ *
51
+ * @param container - the IoC container to unbind the service from
52
+ * @param ServiceClass - the service class to unbind
53
+ */
54
+ function mockUnbindService(container, ServiceClass) {
55
+ container.unbind(ServiceClass);
56
+ }
57
+
58
+ /**
59
+ * Creates and configures a mock IoC container for testing.
60
+ * This utility initializes a new container and binds the provided services or descriptors using {@link mockBindEntry}.
61
+ * It also supports optional immediate activation of services.
62
+ *
63
+ * @param options - configuration options for the mock container
64
+ * @returns a configured InversifyJS {@link Container}
65
+ *
66
+ * @throws {WirestateError} if an identifier in `activate` is not found in `services`
67
+ */
68
+ function mockContainer(options) {
69
+ if (options === void 0) {
70
+ options = {};
71
+ }
72
+ var _a = options.activate,
73
+ activate = _a === void 0 ? [] : _a,
74
+ _b = options.entries,
75
+ entries = _b === void 0 ? [] : _b,
76
+ skipLifecycle = options.skipLifecycle;
77
+ if (activate.length) {
78
+ var serviceTokens = entries.map(function (s) {
79
+ return createIocContainer.getEntryToken(s);
80
+ });
81
+ for (var _i = 0, activate_1 = activate; _i < activate_1.length; _i++) {
82
+ var token = activate_1[_i];
83
+ if (!serviceTokens.includes(token)) {
84
+ throw new createIocContainer.WirestateError(createIocContainer.ERROR_CODE_INVALID_ARGUMENTS, "Provided services for activation not matching list of services to bind.");
85
+ }
86
+ }
87
+ }
88
+ var container = createIocContainer.createIocContainer();
89
+ for (var _c = 0, entries_1 = entries; _c < entries_1.length; _c++) {
90
+ var it_1 = entries_1[_c];
91
+ mockBindEntry(container, it_1, {
92
+ skipLifecycle: skipLifecycle
93
+ });
94
+ }
95
+ for (var _d = 0, activate_2 = activate; _d < activate_2.length; _d++) {
96
+ var it_2 = activate_2[_d];
97
+ container.get(it_2);
98
+ }
99
+ return container;
100
+ }
101
+
102
+ /**
103
+ * Mocks a service by binding it to an IoC container and returning its instance.
104
+ *
105
+ * @param service - the service class to mock
106
+ * @param container - the IoC container to use, defaults to a new {@link mockContainer}
107
+ * @param options - additional options for mocking
108
+ * @returns the instantiated service instance
109
+ */
110
+ function mockService(service, container, options) {
111
+ if (container === void 0) {
112
+ container = mockContainer();
113
+ }
114
+ if (options === void 0) {
115
+ options = {};
116
+ }
117
+ mockBindService(container, service, {
118
+ skipLifecycle: options.skipLifecycle
119
+ });
120
+ return container.get(service);
121
+ }
122
+
123
+ exports.mockBindEntry = mockBindEntry;
124
+ exports.mockBindService = mockBindService;
125
+ exports.mockContainer = mockContainer;
126
+ exports.mockService = mockService;
127
+ exports.mockUnbindService = mockUnbindService;
128
+ //# sourceMappingURL=test-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-utils.js","sources":["../../../../../../../src/wirestate-core/test-utils/mock-bind-service.ts","../../../../../../../src/wirestate-core/test-utils/mock-bind-entry.ts","../../../../../../../src/wirestate-core/test-utils/mock-unbind-service.ts","../../../../../../../src/wirestate-core/test-utils/mock-container.ts","../../../../../../../src/wirestate-core/test-utils/mock-service.ts"],"sourcesContent":[null,null,null,null,null],"names":["mockBindService","container","ServiceClass","options","skipLifecycle","bindService","isWithIgnoreLifecycle","mockBindEntry","entry","bindEntry","mockUnbindService","unbind","mockContainer","_a","activate","_b","entries","length","serviceTokens","map","s","getEntryToken","_i","activate_1","token","includes","WirestateError","ERROR_CODE_INVALID_ARGUMENTS","createIocContainer","_c","entries_1","it_1","_d","activate_2","it_2","get","mockService","service"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ "use strict";var e=require("inversify"),t=require("./lib.js"),r=require("tslib");Object.defineProperty(exports,"BindingType",{enumerable:!0,get:function(){return e.bindingTypeValues}}),Object.defineProperty(exports,"Container",{enumerable:!0,get:function(){return e.Container}}),Object.defineProperty(exports,"ContainerModule",{enumerable:!0,get:function(){return e.ContainerModule}}),Object.defineProperty(exports,"Inject",{enumerable:!0,get:function(){return e.inject}}),Object.defineProperty(exports,"Injectable",{enumerable:!0,get:function(){return e.injectable}}),Object.defineProperty(exports,"LazyServiceIdentifier",{enumerable:!0,get:function(){return e.LazyServiceIdentifier}}),Object.defineProperty(exports,"MultiInject",{enumerable:!0,get:function(){return e.multiInject}}),Object.defineProperty(exports,"Named",{enumerable:!0,get:function(){return e.named}}),Object.defineProperty(exports,"Optional",{enumerable:!0,get:function(){return e.optional}}),Object.defineProperty(exports,"PostConstruct",{enumerable:!0,get:function(){return e.postConstruct}}),Object.defineProperty(exports,"PreDestroy",{enumerable:!0,get:function(){return e.preDestroy}}),Object.defineProperty(exports,"ScopeBindingType",{enumerable:!0,get:function(){return e.bindingScopeValues}}),Object.defineProperty(exports,"Tagged",{enumerable:!0,get:function(){return e.tagged}}),exports.CommandBus=t.C,Object.defineProperty(exports,"CommandStatus",{enumerable:!0,get:function(){return t.e}}),exports.EventBus=t.E,exports.QueryBus=t.Q,exports.SEED=t.d,exports.SEEDS=t.S,exports.WireScope=t.W,exports.WirestateError=t.f,exports.bindConstant=t.g,exports.bindEntry=t.h,exports.bindService=t.i,exports.createIocContainer=t.j,exports.getEntryToken=t.k,exports.OnActivated=function(){return function(e,r){var n=e.constructor,o=t.A.get(n);o||(o=[],t.A.set(n,o)),o.push(r)}},exports.OnCommand=function(e){return function(r,n){var o=r.constructor,u=t.a.get(o);u||(u=[],t.a.set(o,u)),u.push({methodName:n,type:e})}},exports.OnDeactivation=function(){return function(e,r){var n=e.constructor,o=t.D.get(n);o||(o=[],t.D.set(n,o)),o.push(r)}},exports.OnEvent=function(e){var n=void 0===e?null:Array.isArray(e)?r.__spreadArray([],e,!0):[e];return function(e,r){var o=e.constructor,u=t.b.get(o);u||(u=[],t.b.set(o,u)),u.push({methodName:r,types:n})}},exports.OnQuery=function(e){return function(r,n){var o=r.constructor,u=t.c.get(o);u||(u=[],t.c.set(o,u)),u.push({methodName:n,type:e})}},exports.applySeeds=function(e,r){for(var n=e.get(t.S),o=0,u=r;o<u.length;o++){var i=u[o],p=i[0],c=i[1];n.set(p,c)}},exports.applySharedSeed=function(e,r){e.rebind(t.d).toConstantValue(r)},exports.command=function(e,r,n){return e.get(t.C).command(r,n)},exports.commandOptional=function(e,r,n){return e.get(t.C).commandOptional(r,n)},exports.emitEvent=function(e,r,n,o){e.get(t.E).emit({type:r,payload:n,from:o})},exports.forwardRef=function(t){return new e.LazyServiceIdentifier(t)},exports.query=function(e,r,n){return e.get(t.Q).query(r,n)},exports.queryOptional=function(e,r,n){return e.get(t.Q).queryOptional(r,n)},exports.unapplySeeds=function(e,r){for(var n=e.get(t.S),o=0,u=r;o<u.length;o++){var i=u[o][0];n.delete(i)}};//# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../../../../../src/wirestate-core/service/on-deactivation.ts","../../../../../../../src/wirestate-core/service/on-activated.ts","../../../../../../../src/wirestate-core/commands/on-command.ts","../../../../../../../src/wirestate-core/events/on-event.ts","../../../../../../../src/wirestate-core/queries/on-query.ts","../../../../../../../src/wirestate-core/seeds/apply-seeds.ts","../../../../../../../src/wirestate-core/seeds/apply-shared-seed.ts","../../../../../../../src/wirestate-core/commands/command.ts","../../../../../../../src/wirestate-core/commands/command-optional.ts","../../../../../../../src/wirestate-core/events/emit-event.ts","../../../../../../../src/wirestate-core/alias.ts","../../../../../../../src/wirestate-core/queries/query.ts","../../../../../../../src/wirestate-core/queries/query-optional.ts","../../../../../../../src/wirestate-core/seeds/unapply-seeds.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["Object","defineProperty","exports","enumerable","get","inversify","bindingTypeValues","Container","ContainerModule","inject","injectable","LazyServiceIdentifier","multiInject","named","optional","postConstruct","preDestroy","bindingScopeValues","tagged","CommandBus","createIocContainer","C","e","EventBus","E","QueryBus","Q","SEED","d","SEEDS","S","WireScope","W","WirestateError","f","bindConstant","g","bindEntry","h","bindService","i","j","getEntryToken","k","OnActivated","target","propertyKey","constructor","list","ACTIVATED_HANDLER_METADATA","set","push","OnCommand","type","COMMAND_HANDLER_METADATA","methodName","OnDeactivation","DEACTIVATION_HANDLER_METADATA","OnEvent","types","normalized","undefined","Array","isArray","__spreadArray","EVENT_HANDLER_METADATA","OnQuery","QUERY_HANDLER_METADATA","applySeeds","container","seeds","existing","SEEDS_TOKEN","_i","seeds_1","_a","key","state","applySharedSeed","seed","rebind","SEED_TOKEN","toConstantValue","command","data","commandOptional","emitEvent","payload","from","emit","forwardRef","forward","query","queryOptional","unapplySeeds","delete"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ "use strict";var e,t=require("inversify"),n=require("tslib"),r=52,o=function(e){function t(t,n){void 0===t&&(t=1);var r=e.call(this)||this;return r.name="WirestateError",r.code=t,r.message=n||"Wirestate error.",r}return n.__extends(t,e),t}(Error);function i(e,n){if(n.scopeBindingType&&n.scopeBindingType!==t.bindingScopeValues.Singleton)throw new o(r,"Provided unexpected binding scope for constant value.");e.bind(n.id).toConstantValue(n.value)}exports.e=void 0,(e=exports.e||(exports.e={})).PENDING="pending",e.SETTLED="settled",e.ERROR="error";var a=function(){function e(){this.handlers=new Map}return e.prototype.register=function(e,t){var n=this,r=this.handlers.get(e);return r||(r=[],this.handlers.set(e,r)),r.push(t),function(){var r=n.handlers.get(e);if(r){var o=r.indexOf(t);o>=0&&r.splice(o,1),0===r.length&&n.handlers.delete(e)}}},e.prototype.command=function(e,t){var n=this.handlers.get(e);if(!(null==n?void 0:n.length))throw new o(102,"No command handler registered in container for type: '".concat(String(e),"'."));var r=n[n.length-1],i={task:null,status:exports.e.PENDING};return i.task=Promise.resolve().then((function(){return r(t)})).then((function(e){return i.status=exports.e.SETTLED,e})).catch((function(e){throw i.status=exports.e.ERROR,e})),i},e.prototype.commandOptional=function(e,t){var n=this.handlers.get(e);return(null==n?void 0:n.length)?this.command(e,t):null},e.prototype.has=function(e){var t;return Boolean(null===(t=this.handlers.get(e))||void 0===t?void 0:t.length)},e.prototype.clear=function(){this.handlers.clear()},e}(),s=Symbol("@wirestate/seeds"),u=Symbol("@wirestate/seed"),c=new WeakMap,p=new WeakMap,l=new WeakMap,f=new WeakMap,d=new WeakMap,h=new WeakMap,g=new WeakMap,v=new WeakMap,y=new WeakMap,b=new WeakMap;var m=function(){function e(){this.handlers=new Set}return e.prototype.emit=function(e){for(var t=0,n=Array.from(this.handlers);t<n.length;t++){var r=n[t];try{r(e)}catch(e){console.error("[wirestate] Event handler threw:",e)}}},e.prototype.subscribe=function(e){var t=this;return this.handlers.add(e),function(){t.handlers.delete(e)}},e.prototype.clear=function(){this.handlers.clear()},e}(),w=function(){function e(){this.handlers=new Map}return e.prototype.register=function(e,t){var n=this,r=this.handlers.get(e);return r||(r=[],this.handlers.set(e,r)),r.push(t),function(){var r=n.handlers.get(e);if(r){var o=r.indexOf(t);o>=0&&r.splice(o,1),0===r.length&&n.handlers.delete(e)}}},e.prototype.query=function(e,t){var n=this.handlers.get(e);if(null==n?void 0:n.length)return n[n.length-1](t);throw new o(101,"No query handler registered in container for type: '".concat(String(e),"'."))},e.prototype.queryOptional=function(e,t){var n=this.handlers.get(e);return(null==n?void 0:n.length)?n[n.length-1](t):null},e.prototype.has=function(e){var t=this.handlers.get(e);return Boolean(t&&t.length)},e.prototype.clear=function(){this.handlers.clear()},e}(),O=function(){function e(e){this.container=e,this.isDisposed=!1}return e.prototype.getContainer=function(){if(this.container)return this.container;throw this.isDisposed?new o(201,"WireScope::container accessed after deactivation. Ensure service is properly disposed."):new o(200,"WireScope::container accessed before activation. Ensure service is bound to container and is properly resolved.")},e.prototype.resolve=function(e){return this.getContainer().get(e)},e.prototype.resolveOptional=function(e){var t=this.getContainer();return t.isBound(e)?t.get(e):null},e.prototype.emitEvent=function(e,t,n){this.getContainer().get(m).emit({type:e,payload:t,from:void 0===n?this:n})},e.prototype.queryData=function(e,t){return this.getContainer().get(w).query(e,t)},e.prototype.queryOptionalData=function(e,t){return this.getContainer().get(w).queryOptional(e,t)},e.prototype.executeCommand=function(e,t){return this.getContainer().get(a).command(e,t)},e.prototype.executeOptionalCommand=function(e,t){return this.getContainer().get(a).commandOptional(e,t)},e.prototype.getSeed=function(e){return e?this.getContainer().get(s).get(e)||null:this.getContainer().get(u)},e=n.__decorate([t.injectable(),n.__metadata("design:paramtypes",[Object])],e)}();function S(e){for(var t=[],n=0,r=function(e){for(var t=e.constructor,n=[];"function"==typeof t&&t!==Object&&t!==Function.prototype;){var r=d.get(t);r&&r.length>0&&n.push(r),t=Object.getPrototypeOf(t)}return n.reverse().flat()}(e);n<r.length;n++){var o=r[n],i=e[o.methodName];"function"==typeof i&&t.push({types:o.types,handler:i.bind(e)})}return t.length?function(e){for(var n=0,r=t;n<r.length;n++){var o=r[n];(null===o.types||o.types.includes(e.type))&&o.handler(e)}}:null}function x(e,t,n){var r=e.bind(t).to(t).inSingletonScope();r.onActivation((function(r,o){o.IS_DISPOSED=!1,h.set(o,e),function(e,t){var n=Reflect.getMetadata("design:paramtypes",t);if(!(null==n?void 0:n.some((function(e){return e===O}))))return;for(var r=[],o=0,i=Object.getOwnPropertyNames(e);o<i.length;o++){var a=e[i[o]];(null==a?void 0:a.constructor)===O&&r.push(a)}r.length>0&&g.set(e,r)}(o,t);var i=S(o);i&&function(e,t){var n,r=null===(n=h.get(e))||void 0===n?void 0:n.get(m);r&&v.set(e,r.subscribe(t))}(o,i);for(var s=e.get(w),u=0,f=function(e){for(var t=e.constructor,n=[];"function"==typeof t&&t!==Object&&t!==Function.prototype;){var r=c.get(t);r&&r.length>0&&n.push(r),t=Object.getPrototypeOf(t)}return n.reverse().flat()}(o);u<f.length;u++){var d=f[u];if("function"==typeof(T=o[d.methodName])){var y=s.register(d.type,T.bind(o));C(o,y)}}for(var b=e.get(a),x=0,E=function(e){for(var t=e.constructor,n=[];"function"==typeof t&&t!==Object&&t!==Function.prototype;){var r=p.get(t);r&&r.length>0&&n.push(r),t=Object.getPrototypeOf(t)}return n.reverse().flat()}(o);x<E.length;x++){var T;d=E[x];if("function"==typeof(T=o[d.methodName])){y=b.register(d.type,T.bind(o));D(o,y)}}if(null==n?void 0:n.isWithIgnoreLifecycle);else for(var W=function(e){var n=o[e];if("function"!=typeof n)return"continue";var r=n.call(o);r&&"function"==typeof r.then&&r.catch((function(n){console.error("[wirestate] @OnActivated rejected for:",t.name,String(e),n)}))},j=0,V=function(e){for(var t=e.constructor,n=[];"function"==typeof t&&t!==Object&&t!==Function.prototype;){var r=l.get(t);r&&r.length>0&&n.push(r),t=Object.getPrototypeOf(t)}return n.reverse().flat()}(o);j<V.length;j++){W(V[j])}return o})),r.onDeactivation((function(e){if(null==n?void 0:n.isWithIgnoreLifecycle);else for(var t=0,r=function(e){for(var t=e.constructor,n=[];"function"==typeof t&&t!==Object&&t!==Function.prototype;){var r=f.get(t);r&&r.length>0&&n.push(r),t=Object.getPrototypeOf(t)}return n.reverse().flat()}(e);t<r.length;t++){var o=e[r[t]];"function"==typeof o&&o.call(e)}var i,a;e.IS_DISPOSED=!0,function(e){var t=g.get(e);if(!t)return;for(var n=0,r=t;n<r.length;n++){var o=r[n];o.isDisposed=!0,o.container=null}g.delete(e)}(e),function(e){var t=b.get(e);if(!t)return;for(var n=0,r=t;n<r.length;n++){(0,r[n])()}b.delete(e)}(e),function(e){var t=y.get(e);if(!t)return;for(var n=0,r=t;n<r.length;n++){(0,r[n])()}y.delete(e)}(e),i=e,(a=v.get(i))&&(a(),v.delete(i)),h.delete(e)}))}function C(e,t){var n=y.get(e);n||(n=[],y.set(e,n)),n.push(t)}function D(e,t){var n=b.get(e);n||(n=[],b.set(e,n)),n.push(t)}exports.A=l,exports.C=a,exports.D=f,exports.E=m,exports.Q=w,exports.S=s,exports.W=O,exports.a=p,exports.b=d,exports.c=c,exports.d=u,exports.f=o,exports.g=i,exports.h=function(e,n,r){return void 0===r&&(r={}),"function"==typeof n?x(e,n,r):n.bindingType&&n.bindingType!==t.bindingTypeValues.ConstantValue?n.bindingType===t.bindingTypeValues.DynamicValue?function(e,n){var r=e.bind(n.id).toDynamicValue((function(){return n.factory?n.factory():n.value}));n.scopeBindingType&&(n.scopeBindingType===t.bindingScopeValues.Transient?r.inTransientScope():n.scopeBindingType===t.bindingScopeValues.Request?r.inRequestScope():r.inSingletonScope())}(e,n):x(e,n.value,r):i(e,n)},exports.i=x,exports.j=function(e){var n;void 0===e&&(e={});var r=new t.Container({defaultScope:"Singleton",parent:e.parent});return r.bind(m).toConstantValue(new m),r.bind(w).toConstantValue(new w),r.bind(a).toConstantValue(new a),r.bind(s).toConstantValue(new Map),r.bind(u).toConstantValue(null!==(n=e.seed)&&void 0!==n?n:{}),r.bind(O).toResolvedValue((function(){return new O(r)})).inTransientScope(),r},exports.k=function(e){return"function"==typeof e?e:e.id},exports.l=51;//# sourceMappingURL=lib.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lib.js","sources":["../../../../../../../src/wirestate-core/types/commands.ts","../../../../../../../src/wirestate-core/error/error-code.ts","../../../../../../../src/wirestate-core/error/wirestate-error.ts","../../../../../../../src/wirestate-core/bind/bind-constant.ts","../../../../../../../src/wirestate-core/commands/command-bus.ts","../../../../../../../src/wirestate-core/registry.ts","../../../../../../../src/wirestate-core/events/event-bus.ts","../../../../../../../src/wirestate-core/queries/query-bus.ts","../../../../../../../src/wirestate-core/container/wire-scope.ts","../../../../../../../src/wirestate-core/events/build-event-dispatcher.ts","../../../../../../../src/wirestate-core/events/get-event-handler-metadata.ts","../../../../../../../src/wirestate-core/bind/bind-service.ts","../../../../../../../src/wirestate-core/queries/get-query-handler-metadata.ts","../../../../../../../src/wirestate-core/commands/get-command-handler-metadata.ts","../../../../../../../src/wirestate-core/service/get-activated-handler-metadata.ts","../../../../../../../src/wirestate-core/service/get-deactivation-handler-metadata.ts","../../../../../../../src/wirestate-core/container/create-ioc-container.ts","../../../../../../../src/wirestate-core/bind/bind-entry.ts","../../../../../../../src/wirestate-core/bind/bind-dynamic-value.ts","../../../../../../../src/wirestate-core/bind/get-entry-token.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["ECommandStatus","ERROR_CODE_BINDING_SCOPE","WirestateError","_super","code","detail","_this","this","name","message","__extends","Error","bindConstant","container","entry","scopeBindingType","ScopeBindingType","Singleton","bind","id","toConstantValue","value","CommandBus","handlers","Map","prototype","register","type","handler","stack","get","set","push","current","index","indexOf","splice","length","delete","command","data","concat","String","descriptor","task","status","PENDING","Promise","resolve","then","result","SETTLED","catch","error","ERROR","commandOptional","has","Boolean","_a","clear","SEEDS_TOKEN","Symbol","SEED_TOKEN","QUERY_HANDLER_METADATA","WeakMap","COMMAND_HANDLER_METADATA","ACTIVATED_HANDLER_METADATA","DEACTIVATION_HANDLER_METADATA","EVENT_HANDLER_METADATA","CONTAINER_REFS_BY_SERVICE","WIRE_SCOPES_BY_SERVICE","EVENT_UNSUBSCRIBERS_BY_SERVICE","QUERY_UNREGISTERS_BY_SERVICE","COMMAND_UNREGISTERS_BY_SERVICE","EventBus","Set","emit","event","_i","snapshot_1","Array","from","console","subscribe","add","QueryBus","query","queryOptional","WireScope","isDisposed","getContainer","injectionId","resolveOptional","isBound","emitEvent","payload","undefined","queryData","queryOptionalData","executeCommand","executeOptionalCommand","getSeed","seed","__decorate","injectable","buildEventDispatcher","instance","entries","constructor","chain","Object","Function","own","getPrototypeOf","reverse","flat","getEventHandlerMetadata","meta","method","methodName","types","entries_1","includes","bindService","options","whenBind","to","inSingletonScope","onActivation","context","IS_DISPOSED","service","Service","paramTypes","Reflect","getMetadata","some","scopes","getOwnPropertyNames","attachWireScopes","dispatcher","bus","attachEventsSubscription","queryBus","getQueryHandlerMetadata","unregister","attachQueryUnregister","commandBus","_b","_c","getCommandHandlerMetadata","attachCommandUnregister","isWithIgnoreLifecycle","call","_d","_e","getActivatedHandlerMetadata","onDeactivation","getDeactivationHandlerMetadata","unsubscribe","scopes_1","scope","detachWireScopes","list","list_2","detachCommandUnregister","list_1","detachQueryUnregister","exports","A","C","D","E","Q","S","W","a","b","c","d","f","g","h","bindingType","bindingTypeValues","ConstantValue","DynamicValue","binding","toDynamicValue","factory","bindingScopeValues","Transient","inTransientScope","Request","inRequestScope","bindDynamicValue","i","j","Container","defaultScope","parent","toResolvedValue","k","l"],"mappings":"iBA8CYA,4CC1CCC,EAAmC,GCIhDC,EAAA,SAAAC,GAcE,SAAAD,EAAmBE,EAAmCC,QAAnC,IAAAD,IAAAA,EDtBqB,GCuBtC,IAAAE,EAAAH,cAAOI,YAXOD,EAAAE,KAAe,iBAa7BF,EAAKF,KAAOA,EACZE,EAAKG,QAAUJ,GAAU,oBAC3B,CACF,OApBoCK,EAAAA,UAAAR,EAAAC,GAoBpCD,CAAA,CApBA,CAAoCS,OCQ9B,SAAUC,EAAgBC,EAAsBC,GAQpD,GAAIA,EAAMC,kBAAoBD,EAAMC,mBAAqBC,EAAAA,mBAAiBC,UACxE,MAAM,IAAIf,EAAeD,EAA0B,yDAGrDY,EAAUK,KAAQJ,EAAMK,IAA4BC,gBAAgBN,EAAMO,MAC5E,CHiBYrB,QAAAA,OAAAA,GAAAA,EAAAA,YAAAA,QAAAA,EAAc,CAAA,IACxB,QAAA,UACAA,EAAA,QAAA,UACAA,EAAA,MAAA,QI7BF,IAAAsB,EAAA,WAAA,SAAAA,IAKmBf,KAAAgB,SAAsD,IAAIC,GA4H7E,CAAA,OAlHSF,EAAAG,UAAAC,SAAP,SAA0CC,EAAoBC,GAA9D,IAAAtB,EAAAC,KAOMsB,EAAuCtB,KAAKgB,SAASO,IAAIH,GAS7D,OAPKE,IACHA,EAAQ,GACRtB,KAAKgB,SAASQ,IAAIJ,EAAME,IAG1BA,EAAMG,KAAKJ,GAEJ,WAOL,IAAMK,EAAyC3B,EAAKiB,SAASO,IAAIH,GAEjE,GAAKM,EAAL,CAIA,IAAMC,EAAgBD,EAAQE,QAAQP,GAElCM,GAAS,GACXD,EAAQG,OAAOF,EAAO,GAID,IAAnBD,EAAQI,QACV/B,EAAKiB,SAASe,OAAOX,EAVvB,CAYF,CACF,EAYOL,EAAAG,UAAAc,QAAP,SAAyCZ,EAAoBa,GAC3D,IAAMX,EAAuCtB,KAAKgB,SAASO,IAAIH,GAE/D,KAAKE,aAAK,EAALA,EAAOQ,QACV,MAAM,IAAInC,EHnFoD,IGqF5D,yDAAAuC,OAAyDC,OAAOf,GAAK,OAIzE,IAAMC,EAAUC,EAAMA,EAAMQ,OAAS,GAE/BM,EAAoC,CACxCC,KAAM,KACNC,OAAQ7C,QAAAA,EAAe8C,SAgBzB,OAbCH,EAAoCC,KAAOG,QAAQC,UACjDC,MAAK,WAAM,OAAArB,EAAQY,EAAR,IACXS,MAAK,SAACC,GAGL,OAFCP,EAA0CE,OAAS7C,QAAAA,EAAemD,QAE5DD,CACT,IACCE,OAAM,SAACC,GAGN,MAFCV,EAA0CE,OAAS7C,QAAAA,EAAesD,MAE7DD,CACR,IAEKV,CACT,EASOrB,EAAAG,UAAA8B,gBAAP,SAAiD5B,EAAoBa,GACnE,IAAMX,EAAuCtB,KAAKgB,SAASO,IAAIH,GAE/D,OAAOE,eAAAA,EAAOQ,QAAS9B,KAAKgC,QAAcZ,EAAMa,GAAQ,IAC1D,EAQOlB,EAAAG,UAAA+B,IAAP,SAAW7B,SACT,OAAO8B,QAA+B,QAAvBC,EAAAnD,KAAKgB,SAASO,IAAIH,UAAK,IAAA+B,OAAA,EAAAA,EAAErB,OAC1C,EAKOf,EAAAG,UAAAkC,MAAP,WACEpD,KAAKgB,SAASoC,OAChB,EACFrC,CAAA,CAjIA,GCVasC,EAA6BC,OAAO,oBAKpCC,EAA4BD,OAAO,mBAMnCE,EAAwE,IAAIC,QAM5EC,EAA4E,IAAID,QAMhFE,EAAsE,IAAIF,QAM1EG,EAAyE,IAAIH,QAM7EI,EAAwE,IAAIJ,QAK5EK,EAAwD,IAAIL,QAK5DM,EAA4D,IAAIN,QAKhEO,EAAsE,IAAIP,QAK1EQ,EAAyE,IAAIR,QAK7ES,EAA6E,IAAIT,QC9D9F,IAAAU,EAAA,WAAA,SAAAA,IACmBnE,KAAAgB,SAA+B,IAAIoD,GAsDtD,CAAA,OA/CSD,EAAAjD,UAAAmD,KAAP,SAAyEC,GAIvE,IAFA,IAEsBC,EAAA,EAAAC,EAFiBC,MAAMC,KAAK1E,KAAKgB,UAEjCuD,WAAAA,IAAU,CAA3B,IAAMlD,EAAOmD,EAAAD,GAChB,IACElD,EAAQiD,EACV,CAAE,MAAOxB,GAEP6B,QAAQ7B,MAAM,mCAAoCA,EACpD,CACF,CACF,EASOqB,EAAAjD,UAAA0D,UAAP,SAAiBvD,GAAjB,IAAAtB,EAAAC,KAQE,OAFAA,KAAKgB,SAAS6D,IAAIxD,GAEX,WAMLtB,EAAKiB,SAASe,OAAOV,EACvB,CACF,EAOO8C,EAAAjD,UAAAkC,MAAP,WACEpD,KAAKgB,SAASoC,OAChB,EACFe,CAAA,CAvDA,GCGAW,EAAA,WAAA,SAAAA,IAKmB9E,KAAAgB,SAAkD,IAAIC,GAmHzE,CAAA,OAzGS6D,EAAA5D,UAAAC,SAAP,SAA0CC,EAAkBC,GAA5D,IAAAtB,EAAAC,KAOMsB,EAAqCtB,KAAKgB,SAASO,IAAIH,GAS3D,OAPKE,IACHA,EAAQ,GACRtB,KAAKgB,SAASQ,IAAIJ,EAAME,IAG1BA,EAAMG,KAAKJ,GAEJ,WAOL,IAAMK,EAAuC3B,EAAKiB,SAASO,IAAIH,GAE/D,GAAKM,EAAL,CAIA,IAAMC,EAAgBD,EAAQE,QAAQP,GAElCM,GAAS,GACXD,EAAQG,OAAOF,EAAO,GAID,IAAnBD,EAAQI,QACV/B,EAAKiB,SAASe,OAAOX,EAVvB,CAYF,CACF,EAWO0D,EAAA5D,UAAA6D,MAAP,SAA0E3D,EAASa,GACjF,IAAMX,EAAqCtB,KAAKgB,SAASO,IAAIH,GAG7D,GAAIE,aAAK,EAALA,EAAOQ,OACT,OAAQR,EAAMA,EAAMQ,OAAS,GAA2BG,GAG1D,MAAM,IAAItC,EN9EoD,IMgF5D,uDAAAuC,OAAuDC,OAAOf,GAAK,MAEvE,EASO0D,EAAA5D,UAAA8D,cAAP,SACE5D,EACAa,GAEA,IAAMX,EAAqCtB,KAAKgB,SAASO,IAAIH,GAE7D,OAAIE,aAAK,EAALA,EAAOQ,QACDR,EAAMA,EAAMQ,OAAS,GAA2BG,GAGnD,IACT,EAQO6C,EAAA5D,UAAA+B,IAAP,SAAW7B,GACT,IAAME,EAAqCtB,KAAKgB,SAASO,IAAIH,GAE7D,OAAO8B,QAAQ5B,GAASA,EAAMQ,OAChC,EAOOgD,EAAA5D,UAAAkC,MAAP,WACEpD,KAAKgB,SAASoC,OAChB,EACF0B,CAAA,CAxHA,GCeAG,EAAA,WAME,SAAAA,EAAoC3E,GAAAN,KAAAM,UAAAA,EAFpBN,KAAAkF,YAAsB,CAE+B,CA0LvE,OAhLSD,EAAA/D,UAAAiE,aAAP,WACE,GAAInF,KAAKM,UACP,OAAON,KAAKM,UAGd,MAAIN,KAAKkF,WACD,IAAIvF,EPrCwC,IOuChD,0FAGI,IAAIA,EP3C2C,IO6CnD,kHAIN,EAYOsF,EAAA/D,UAAAuB,QAAP,SAAkB2C,GAMhB,OAAOpF,KAAKmF,eAAe5D,IAAO6D,EACpC,EAYOH,EAAA/D,UAAAmE,gBAAP,SAA0BD,GAMxB,IAAM9E,EAAuBN,KAAKmF,eAElC,OAAO7E,EAAUgF,QAAQF,GAAe9E,EAAUiB,IAAO6D,GAAe,IAC1E,EAYOH,EAAA/D,UAAAqE,UAAP,SAAuDnE,EAASoE,EAAad,GAO3E1E,KAAKmF,eACF5D,IAAI4C,GACJE,KAAK,CACJjD,KAAIA,EACJoE,QAAOA,EACPd,UAAee,IAATf,EAAqB1E,KAAO0E,GAExC,EAYOO,EAAA/D,UAAAwE,UAAP,SAA8EtE,EAASa,GAGrF,OAAOjC,KAAKmF,eAAe5D,IAAIuD,GAAUC,MAAY3D,EAAMa,EAC7D,EAUOgD,EAAA/D,UAAAyE,kBAAP,SACEvE,EACAa,GAIA,OAAOjC,KAAKmF,eAAe5D,IAAIuD,GAAUE,cAAoB5D,EAAMa,EACrE,EAYOgD,EAAA/D,UAAA0E,eAAP,SACExE,EACAa,GAIA,OAAOjC,KAAKmF,eAAe5D,IAAIR,GAAYiB,QAAcZ,EAAMa,EACjE,EAUOgD,EAAA/D,UAAA2E,uBAAP,SACEzE,EACAa,GAIA,OAAOjC,KAAKmF,eAAe5D,IAAIR,GAAYiC,gBAAsB5B,EAAMa,EACzE,EAeOgD,EAAA/D,UAAA4E,QAAP,SAAqCC,GAKnC,OAAOA,EACF/F,KAAKmF,eAAe5D,IAAe8B,GAAa9B,IAAIwE,IAAe,KACpE/F,KAAKmF,eAAe5D,IAAOgC,EACjC,EA/LW0B,EAASe,EAAAA,WAAA,CADrBC,EAAAA,yDACYhB,EAgMZ,CAhMD,GCZM,SAAUiB,EAAuCC,GAMrD,IAHA,IAAMC,EAAsC,GAGzB7B,EAAA,EAAApB,ECLf,SAAkCgD,GAQtC,IALA,IAAIE,EAAuBF,EAASE,YAE9BC,EAA6C,GAGrB,mBAAhBD,GAA8BA,IAAgBE,QAAUF,IAAgBG,SAAStF,WAAW,CACxG,IAAMuF,EAA2C5C,EAAuBtC,IAAI8E,GAExEI,GAAOA,EAAI3E,OAAS,GACtBwE,EAAM7E,KAAKgF,GAGbJ,EAAcE,OAAOG,eAAeL,EACtC,CASA,OAAOC,EAAMK,UAAUC,MACzB,CDrBqBC,CAAwBV,GAAxB5B,EAAApB,EAAArB,OAAAyC,IAAmC,CAAjD,IAAMuC,EAAI3D,EAAAoB,GACPwC,EAAUZ,EAAyDW,EAAKE,YAExD,mBAAXD,GACTX,EAAQ3E,KAAK,CACXwF,MAAOH,EAAKG,MACZ5F,QAAU0F,EAAyBpG,KAAKwF,IAG9C,CAEA,OAAIC,EAAQtE,OAOH,SAACwC,GAEN,IAAoB,IAAAC,EAAA,EAAA2C,EAAAd,EAAA7B,WAAAA,IAAS,CAAxB,IAAMhE,EAAK2G,EAAA3C,IACM,OAAhBhE,EAAM0G,OAAkB1G,EAAM0G,MAAME,SAAS7C,EAAMlD,QACrDb,EAAMc,QAAQiD,EAElB,CACF,EAQO,IAEX,UEjBgB8C,EACd9G,EACAC,EACA8G,GAaA,IAAMC,EAAsChH,EAAUK,KAAQJ,GAAOgH,GAAGhH,GAAOiH,mBAE/EF,EAASG,cAAa,SAACC,EAASvB,GAW7BA,EAAsCwB,aAAc,EAErD7D,EAA0BtC,IAAI2E,EAAU7F,GA4O5C,SAA4CsH,EAAYC,GACtD,IAAMC,EAAaC,QAAQC,YAAY,oBAAqBH,GAE5D,KAAKC,aAAU,EAAVA,EAAYG,MAAK,SAAC7G,GAAS,OAAAA,IAAS6D,CAAT,KAC9B,OAKF,IAFA,IAAMiD,EAA2B,GAEf3D,EAAA,EAAApB,EAAAoD,OAAO4B,oBAAoBP,GAA3BrD,EAAApB,EAAArB,OAAAyC,IAAqC,CAAlD,IACGzD,EAAS8G,EADHzE,EAAAoB,KAGPzD,aAAK,EAALA,EAA4BuF,eAAgBpB,GAC/CiD,EAAOzG,KAAKX,EAEhB,CAEIoH,EAAOpG,OAAS,GAClBiC,EAAuBvC,IAAIoG,EAASM,EAExC,CA/PIE,CAAiBjC,EAAU5F,GAI3B,IAAM8H,EAAsCnC,EAAqBC,GAE7DkC,GAuHR,SAAoDT,EAAYvG,SACxDiH,EAA6D,QAAtCnF,EAAAW,EAA0BvC,IAAIqG,UAAQ,IAAAzE,OAAA,EAAAA,EAAE5B,IAAI4C,GAErEmE,GACFtE,EAA+BxC,IAAIoG,EAASU,EAAI1D,UAAUvD,GAE9D,CA5HMkH,CAAyBpC,EAAUkC,GAQrC,IAFA,IAAMG,EAAqBlI,EAAUiB,IAAIuD,GAEtBP,EAAA,EAAApB,ECtEjB,SAAkCgD,GAQtC,IALA,IAAIE,EAAuBF,EAASE,YAE9BC,EAA6C,GAGrB,mBAAhBD,GAA8BA,IAAgBE,QAAUF,IAAgBG,SAAStF,WAAW,CACxG,IAAMuF,EAA2CjD,EAAuBjC,IAAI8E,GAExEI,GAAOA,EAAI3E,OAAS,GACtBwE,EAAM7E,KAAKgF,GAGbJ,EAAcE,OAAOG,eAAeL,EACtC,CASA,OAAOC,EAAMK,UAAUC,MACzB,CD4CuB6B,CAAwBtC,GAAxB5B,EAAApB,EAAArB,OAAAyC,IAAmC,CAAjD,IAAMuC,EAAI3D,EAAAoB,GAGb,GAAsB,mBAFhBwC,EAAUZ,EAAyDW,EAAKE,aAE9E,CAIA,IAAM0B,EAA+BF,EAASrH,SAAS2F,EAAK1F,KAAO2F,EAAyBpG,KAAKwF,IAEjGwC,EAAsBxC,EAAUuC,EAJhC,CAKF,CAOA,IAFA,IAAME,EAAyBtI,EAAUiB,IAAIR,GAE1B8H,EAAA,EAAAC,EEvFjB,SAAoC3C,GAWxC,IALA,IAAIE,EAAuBF,EAASE,YAE9BC,EAA+C,GAGvB,mBAAhBD,GAA8BA,IAAgBE,QAAUF,IAAgBG,SAAStF,WAAW,CACxG,IAAMuF,EAA6C/C,EAAyBnC,IAAI8E,GAE5EI,GAAOA,EAAI3E,OAAS,GACtBwE,EAAM7E,KAAKgF,GAGbJ,EAAcE,OAAOG,eAAeL,EACtC,CASA,OAAOC,EAAMK,UAAUC,MACzB,CF0DuBmC,CAA0B5C,GAA1B0C,EAAAC,EAAAhH,OAAA+G,IAAqC,CAAnD,IACG9B,EADGD,EAAIgC,EAAAD,GAGb,GAAsB,mBAFhB9B,EAAmBZ,EAAyDW,EAAKE,aAEvF,CAIM0B,EAAiCE,EAAWzH,SAAS2F,EAAK1F,KAAO2F,EAA2BpG,KAAKwF,IAEvG6C,EAAwB7C,EAAUuC,EAJlC,CAKF,CAEA,GAAIrB,aAAO,EAAPA,EAAS4B,4BAaX,mBAAWjC,GACT,IAAMD,EAAUZ,EAAyDa,GAEzE,GAAsB,mBAAXD,mBAIX,IAAMpE,EAA8BoE,EAAoCmC,KAAK/C,GAEzExD,GAAoD,mBAAlCA,EAAyBD,MAC5CC,EAAyBE,OAAM,SAACC,GAC/B6B,QAAQ7B,MAAM,yCAA0CvC,EAAMN,KAAMkC,OAAO6E,GAAalE,EAC1F,KAZqBqG,EAAA,EAAAC,EGjHzB,SAAsCjD,GAQ1C,IALA,IAAIE,EAAuBF,EAASE,YAE9BC,EAAuC,GAGf,mBAAhBD,GAA8BA,IAAgBE,QAAUF,IAAgBG,SAAStF,WAAW,CACxG,IAAMuF,EAAqC9C,EAA2BpC,IAAI8E,GAEtEI,GAAOA,EAAI3E,OAAS,GACtBwE,EAAM7E,KAAKgF,GAGbJ,EAAcE,OAAOG,eAAeL,EACtC,CAKA,OAAOC,EAAMK,UAAUC,MACzB,CH2F+ByC,CAA4BlD,GAA5BgD,EAAAC,EAAAtH,OAAAqH,IAAqC,GAAzCC,EAAAD,GAcpB,CAGH,OAAOhD,CACT,IAEAmB,EAASgC,gBAAe,SAACnD,GAOvB,GAAIkB,aAAO,EAAPA,EAAS4B,4BAUX,IAAyB,IAAA1E,EAAA,EAAApB,EItJzB,SAAyCgD,GAQ7C,IALA,IAAIE,EAAuBF,EAASE,YAE9BC,EAAuC,GAGf,mBAAhBD,GAA8BA,IAAgBE,QAAUF,IAAgBG,SAAStF,WAAW,CACxG,IAAMuF,EAAqC7C,EAA8BrC,IAAI8E,GAEzEI,GAAOA,EAAI3E,OAAS,GACtBwE,EAAM7E,KAAKgF,GAGbJ,EAAcE,OAAOG,eAAeL,EACtC,CASA,OAAOC,EAAMK,UAAUC,MACzB,CJ4H+B2C,CAA+BpD,GAA/B5B,EAAApB,EAAArB,OAAAyC,IAA0C,CAA9D,IACGwC,EAAmBZ,EADNhD,EAAAoB,IAGG,mBAAXwC,GACRA,EAAsBmC,KAAK/C,EAEhC,CAuCN,IAAmDyB,EAC3C4B,EAjCHrD,EAAsCwB,aAAc,EA+JzD,SAA4CC,GAC1C,IAAMM,EAAkCnE,EAAuBxC,IAAIqG,GAEnE,IAAKM,EACH,OAGF,IAAoB,IAAA3D,EAAA,EAAAkF,EAAAvB,EAAA3D,WAAAA,IAAQ,CAAvB,IAAMmF,EAAKD,EAAAlF,GACbmF,EAAkCxE,YAAa,EAC/CwE,EAAwDpJ,UAAY,IACvE,CAEAyD,EAAuBhC,OAAO6F,EAChC,CA1KI+B,CAAiBxD,GAqGrB,SAAmDyB,GACjD,IAAMgC,EAAyC1F,EAA+B3C,IAAIqG,GAElF,IAAKgC,EACH,OAGF,IAAyB,IAAArF,EAAA,EAAAsF,EAAAD,EAAArF,WAAAA,IAAM,EAC7BmE,EADmBmB,EAAAtF,KAErB,CAEAL,EAA+BnC,OAAO6F,EACxC,CAhHIkC,CAAwB3D,GA8D5B,SAAiDyB,GAC/C,IAAMgC,EAAuC3F,EAA6B1C,IAAIqG,GAE9E,IAAKgC,EACH,OAGF,IAAyB,IAAArF,EAAA,EAAAwF,EAAAH,EAAArF,WAAAA,IAAM,EAC7BmE,EADmBqB,EAAAxF,KAErB,CAEAN,EAA6BlC,OAAO6F,EACtC,CAzEIoC,CAAsB7D,GA4ByByB,EA3BvBzB,GA4BpBqD,EAAyCxF,EAA+BzC,IAAIqG,MAGhF4B,IACAxF,EAA+BjC,OAAO6F,IA9BtC9D,EAA0B/B,OAAOoE,EACnC,GACF,CAuCA,SAASwC,EAAwCf,EAAYc,GAC3D,IAAIkB,EAAuC3F,EAA6B1C,IAAIqG,GAEvEgC,IACHA,EAAO,GACP3F,EAA6BzC,IAAIoG,EAASgC,IAG5CA,EAAKnI,KAAKiH,EACZ,CA6BA,SAASM,EAA0CpB,EAAYc,GAC7D,IAAIkB,EAAyC1F,EAA+B3C,IAAIqG,GAE3EgC,IACHA,EAAO,GACP1F,EAA+B1C,IAAIoG,EAASgC,IAG9CA,EAAKnI,KAAKiH,EACZ,CK5NAuB,QAAAC,EAAAvG,EAAAsG,QAAAE,EAAApJ,EAAAkJ,QAAAG,EAAAxG,EAAAqG,QAAAI,EAAAlG,EAAA8F,QAAAK,EAAAxF,EAAAmF,QAAAM,EAAAlH,EAAA4G,QAAAO,EAAAvF,EAAAgF,QAAAQ,EAAA/G,EAAAuG,QAAAS,EAAA7G,EAAAoG,QAAAU,EAAAnH,EAAAyG,QAAAW,EAAArH,EAAA0G,QAAAY,EAAAlL,EAAAsK,QAAAa,EAAAzK,EAAA4J,QAAAc,WCnBEzK,EACAC,EACA8G,GAEA,YAFA,IAAAA,IAAAA,EAAA,CAAA,GAEqB,mBAAV9G,EACF6G,EAAY9G,EAAWC,EAAO8G,GAGlC9G,EAAMyK,aAAezK,EAAMyK,cAAgBC,EAAAA,kBAAkBC,cAI9D3K,EAAMyK,cAAgBC,EAAAA,kBAAkBE,aChCxC,SAA2B7K,EAAsBC,GAMrD,IAAM6K,EAA6C9K,EAAUK,KAAKJ,EAAMK,IAAIyK,gBAAe,WACzF,OAAI9K,EAAM+K,QACD/K,EAAM+K,UAGR/K,EAAMO,KACf,IAEKP,EAAMC,mBAEAD,EAAMC,mBAAqB+K,EAAAA,mBAAmBC,UACvDJ,EAAQK,mBACClL,EAAMC,mBAAqB+K,EAAAA,mBAAmBG,QACvDN,EAAQO,iBAERP,EAAQ5D,mBAEZ,CDeWoE,CAAiBtL,EAAWC,GAS9B6G,EAAY9G,EAAWC,EAAMO,MAAgCuG,GAlB3DhH,EAAaC,EAAWC,EAmBnC,EDTA0J,QAAA4B,EAAAzE,EAAA6C,QAAA6B,EAtBM,SAA6BzE,cAAA,IAAAA,IAAAA,EAAA,CAAA,GAGjC,IAAM/G,EAAuB,IAAIyL,YAAU,CACzCC,aAAc,YACdC,OAAQ5E,EAAQ4E,SAgBlB,OAbA3L,EAAUK,KAAKwD,GAAUtD,gBAAgB,IAAIsD,GAC7C7D,EAAUK,KAAKmE,GAAUjE,gBAAgB,IAAIiE,GAC7CxE,EAAUK,KAAKI,GAAYF,gBAAgB,IAAIE,GAC/CT,EAAUK,KAAK0C,GAAaxC,gBAAgB,IAAII,KAChDX,EAAUK,KAAK4C,GAAY1C,gBAA4B,QAAZsC,EAAAkE,EAAQtB,YAAI,IAAA5C,EAAAA,EAAI,CAAA,GAE3D7C,EACGK,KAAKsE,GACLiH,iBAAgB,WAAiB,OAAA,IAAIjH,EAAU3E,EAAd,IACjCmL,mBAIInL,CACT,EAAA2J,QAAAkC,EGxCM,SAAmD5L,GACvD,MAAwB,mBAAVA,EAAuBA,EAAQA,EAAMK,EACrD,EHsCAqJ,QAAAmC,EfjDoD"}
@@ -0,0 +1 @@
1
+ "use strict";var i=require("./lib.js");function e(e,r,n){void 0===n&&(n={});var t=n.skipLifecycle;return i.i(e,r,{isWithIgnoreLifecycle:t})}function r(e,r,n){void 0===n&&(n={});var t=n.skipLifecycle;return i.h(e,r,{isWithIgnoreLifecycle:t})}function n(e){void 0===e&&(e={});var n=e.activate,t=void 0===n?[]:n,c=e.entries,o=void 0===c?[]:c,s=e.skipLifecycle;if(t.length)for(var v=o.map((function(e){return i.k(e)})),f=0,l=t;f<l.length;f++){var u=l[f];if(!v.includes(u))throw new i.f(i.l,"Provided services for activation not matching list of services to bind.")}for(var a=i.j(),d=0,k=o;d<k.length;d++){r(a,k[d],{skipLifecycle:s})}for(var p=0,y=t;p<y.length;p++){var g=y[p];a.get(g)}return a}require("inversify"),require("tslib"),exports.mockBindEntry=r,exports.mockBindService=e,exports.mockContainer=n,exports.mockService=function(i,r,t){return void 0===r&&(r=n()),void 0===t&&(t={}),e(r,i,{skipLifecycle:t.skipLifecycle}),r.get(i)},exports.mockUnbindService=function(i,e){i.unbind(e)};//# sourceMappingURL=test-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-utils.js","sources":["../../../../../../../src/wirestate-core/test-utils/mock-bind-service.ts","../../../../../../../src/wirestate-core/test-utils/mock-bind-entry.ts","../../../../../../../src/wirestate-core/test-utils/mock-container.ts","../../../../../../../src/wirestate-core/test-utils/mock-service.ts","../../../../../../../src/wirestate-core/test-utils/mock-unbind-service.ts"],"sourcesContent":[null,null,null,null,null],"names":["createIocContainer","require","mockBindService","container","ServiceClass","options","skipLifecycle","bindService","isWithIgnoreLifecycle","mockBindEntry","entry","bindEntry","mockContainer","_a","activate","_b","entries","length","serviceTokens","map","s","getEntryToken","_i","activate_1","token","includes","WirestateError","ERROR_CODE_INVALID_ARGUMENTS","_c","entries_1","_d","activate_2","it_2","get","exports","mockService","service","mockUnbindService","unbind"],"mappings":"AAeA,aAAA,IAAAA,EAAAC,QAAA,qBAUgBC,EACdC,EACAC,EACAC,QAAA,IAAAA,IAAAA,EAAA,CAAA,GAEQ,IAAAC,EAAkBD,EAAOC,cAEjC,OAAOC,EAAAA,EAAYJ,EAAWC,EAAc,CAC1CI,sBAAuBF,GAE3B,UCRgBG,EACdN,EACAO,EACAL,QAAA,IAAAA,IAAAA,EAAA,CAAA,GAEQ,IAAAC,EAAkBD,EAAOC,cAEjC,OAAOK,EAAAA,EAAUR,EAAWO,EAAO,CACjCF,sBAAuBF,GAE3B,CCEM,SAAUM,EAAcP,QAAA,IAAAA,IAAAA,EAAA,CAAA,GACpB,IAAAQ,EAA+CR,EAAOS,SAAtDA,OAAQ,IAAAD,EAAG,GAAEA,EAAEE,EAAgCV,UAAhCW,aAAU,GAAED,EAAET,EAAkBD,EAAOC,cAE9D,GAAIQ,EAASG,OAGX,IAFA,IAAMC,EAA0CF,EAAQG,KAAI,SAACC,GAAM,OAAAC,EAAAA,EAAcD,EAAd,IAE/CE,EAAA,EAAAC,EAAAT,EAAAQ,WAAAA,IAAU,CAAzB,IAAME,EAAKD,EAAAD,GACd,IAAKJ,EAAcO,SAASD,GAC1B,MAAM,IAAIE,EAAAA,EACRC,EAAAA,EACA,0EAGN,CAKF,IAFA,IAAMxB,EAAuBH,EAAAA,IAEZ4B,EAAA,EAAAC,EAAAb,EAAAY,WAAAA,IAAS,CACxBnB,EAAcN,EADH0B,EAAAD,GACkB,CAAEtB,cAAeA,GAChD,CAEA,IAAiB,IAAAwB,EAAA,EAAAC,EAAAjB,EAAAgB,WAAAA,IAAU,CAAtB,IAAME,EAAED,EAAAD,GACX3B,EAAU8B,IAAID,EAChB,CAEA,OAAO7B,CACT,CFnDAF,QAAA,aAAAA,QAAA,SGkBAiC,QAAAzB,cAAAA,EAAAyB,QAAAhC,gBAAAA,EAAAgC,QAAAtB,cAAAA,EAAAsB,QAAAC,qBATEC,EACAjC,EACAE,GAMA,YAPA,IAAAF,IAAAA,EAAYS,UACZ,IAAAP,IAAAA,EAAA,CAAA,GAEAH,EAAgBC,EAAWiC,EAAS,CAClC9B,cAAeD,EAAQC,gBAGlBH,EAAU8B,IAAIG,EACvB,EAAAF,QAAAG,kBCxBM,SAA8ClC,EAAsBC,GACxED,EAAUmC,OAAOlC,EACnB"}
@@ -0,0 +1,9 @@
1
+ import { LazyServiceIdentifier } from 'inversify';
2
+ export { bindingTypeValues as BindingType, Container, ContainerModule, inject as Inject, injectable as Injectable, LazyServiceIdentifier, multiInject as MultiInject, named as Named, optional as Optional, postConstruct as PostConstruct, preDestroy as PreDestroy, bindingScopeValues as ScopeBindingType, tagged as Tagged } from 'inversify';
3
+
4
+ function forwardRef(forward) {
5
+ return new LazyServiceIdentifier(forward);
6
+ }
7
+
8
+ export { forwardRef };
9
+ //# sourceMappingURL=alias.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alias.js","sources":["../../../../../../../src/wirestate-core/alias.ts"],"sourcesContent":[null],"names":["forwardRef","forward","LazyServiceIdentifier"],"mappings":";;;AAoBM,SAAUA,UAAUA,CACxBC,OAA2C,EAAA;AAE3C,EAAA,OAAO,IAAIC,qBAAqB,CAACD,OAAO,CAAC;AAC3C;;;;"}
@@ -0,0 +1,19 @@
1
+ import { bindingScopeValues } from 'inversify';
2
+ import { ERROR_CODE_BINDING_SCOPE } from '../error/error-code.js';
3
+ import { WirestateError } from '../error/wirestate-error.js';
4
+
5
+ /**
6
+ * Binds a constant value to a token in the container.
7
+ *
8
+ * @param container - target Inversify container
9
+ * @param entry - entry descriptor to bind
10
+ */
11
+ function bindConstant(container, entry) {
12
+ if (entry.scopeBindingType && entry.scopeBindingType !== bindingScopeValues.Singleton) {
13
+ throw new WirestateError(ERROR_CODE_BINDING_SCOPE, "Provided unexpected binding scope for constant value.");
14
+ }
15
+ container.bind(entry.id).toConstantValue(entry.value);
16
+ }
17
+
18
+ export { bindConstant };
19
+ //# sourceMappingURL=bind-constant.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bind-constant.js","sources":["../../../../../../../../src/wirestate-core/bind/bind-constant.ts"],"sourcesContent":[null],"names":["bindConstant","container","entry","scopeBindingType","ScopeBindingType","Singleton","WirestateError","ERROR_CODE_BINDING_SCOPE","bind","id","toConstantValue","value"],"mappings":";;;;AAUA;;;;;AAKG;AACG,SAAUA,YAAYA,CAAIC,SAAoB,EAAEC,KAA4B,EAAA;EAQhF,IAAIA,KAAK,CAACC,gBAAgB,IAAID,KAAK,CAACC,gBAAgB,KAAKC,kBAAgB,CAACC,SAAS,EAAE;AACnF,IAAA,MAAM,IAAIC,cAAc,CAACC,wBAAwB,EAAE,uDAAuD,CAAC;AAC7G,EAAA;AAEAN,EAAAA,SAAS,CAACO,IAAI,CAAIN,KAAK,CAACO,EAA0B,CAAC,CAACC,eAAe,CAACR,KAAK,CAACS,KAAU,CAAC;AACvF;;;;"}
@@ -0,0 +1,28 @@
1
+ import { bindingScopeValues } from 'inversify';
2
+
3
+ /**
4
+ * Binds a constant value to a token in the container.
5
+ *
6
+ * @param container - target Inversify container
7
+ * @param entry - descriptor of entry to bind
8
+ */
9
+ function bindDynamicValue(container, entry) {
10
+ var binding = container.bind(entry.id).toDynamicValue(function () {
11
+ if (entry.factory) {
12
+ return entry.factory();
13
+ }
14
+ return entry.value;
15
+ });
16
+ if (!entry.scopeBindingType) {
17
+ return;
18
+ } else if (entry.scopeBindingType === bindingScopeValues.Transient) {
19
+ binding.inTransientScope();
20
+ } else if (entry.scopeBindingType === bindingScopeValues.Request) {
21
+ binding.inRequestScope();
22
+ } else {
23
+ binding.inSingletonScope();
24
+ }
25
+ }
26
+
27
+ export { bindDynamicValue };
28
+ //# sourceMappingURL=bind-dynamic-value.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bind-dynamic-value.js","sources":["../../../../../../../../src/wirestate-core/bind/bind-dynamic-value.ts"],"sourcesContent":[null],"names":["bindDynamicValue","container","entry","binding","bind","id","toDynamicValue","factory","value","scopeBindingType","bindingScopeValues","Transient","inTransientScope","Request","inRequestScope","inSingletonScope"],"mappings":";;AAOA;;;;;AAKG;AACG,SAAUA,gBAAgBA,CAACC,SAAoB,EAAEC,KAA4B,EAAA;AAMjF,EAAA,IAAMC,OAAO,GAAsCF,SAAS,CAACG,IAAI,CAACF,KAAK,CAACG,EAAE,CAAC,CAACC,cAAc,CAAC,YAAA;IACzF,IAAIJ,KAAK,CAACK,OAAO,EAAE;AACjB,MAAA,OAAOL,KAAK,CAACK,OAAO,EAAE;AACxB,IAAA;IAEA,OAAOL,KAAK,CAACM,KAAK;AACpB,EAAA,CAAC,CAAC;AAEF,EAAA,IAAI,CAACN,KAAK,CAACO,gBAAgB,EAAE;AAC3B,IAAA;EACF,CAAC,MAAM,IAAIP,KAAK,CAACO,gBAAgB,KAAKC,kBAAkB,CAACC,SAAS,EAAE;IAClER,OAAO,CAACS,gBAAgB,EAAE;EAC5B,CAAC,MAAM,IAAIV,KAAK,CAACO,gBAAgB,KAAKC,kBAAkB,CAACG,OAAO,EAAE;IAChEV,OAAO,CAACW,cAAc,EAAE;AAC1B,EAAA,CAAC,MAAM;IACLX,OAAO,CAACY,gBAAgB,EAAE;AAC5B,EAAA;AACF;;;;"}
@@ -0,0 +1,39 @@
1
+ import { bindingTypeValues } from 'inversify';
2
+ import { bindConstant } from './bind-constant.js';
3
+ import { bindDynamicValue } from './bind-dynamic-value.js';
4
+ import { bindService } from './bind-service.js';
5
+
6
+ /**
7
+ * Binds a single service entry to the container, dispatching to the
8
+ * correct binding strategy based on the descriptor's `type` field.
9
+ *
10
+ * Supports:
11
+ * - Service classes (function entries) - bound as singleton
12
+ * - Constant values - bound via `bindConstant`
13
+ * - Dynamic values - bound via `toDynamicValue` with optional scope
14
+ * - Instance bindings - bound as generic singleton service
15
+ *
16
+ * @param container - target IOC container to bind into
17
+ * @param entry - entry descriptor to bind
18
+ * @param options - optional binding configuration
19
+ * @returns void
20
+ */
21
+ function bindEntry(container, entry, options) {
22
+ if (options === void 0) {
23
+ options = {};
24
+ }
25
+ if (typeof entry === "function") {
26
+ return bindService(container, entry, options);
27
+ }
28
+ if (!entry.bindingType || entry.bindingType === bindingTypeValues.ConstantValue) {
29
+ return bindConstant(container, entry);
30
+ }
31
+ if (entry.bindingType === bindingTypeValues.DynamicValue) {
32
+ return bindDynamicValue(container, entry);
33
+ }
34
+ // Default: treat as class descriptor (Instance binding).
35
+ return bindService(container, entry.value, options);
36
+ }
37
+
38
+ export { bindEntry };
39
+ //# sourceMappingURL=bind-entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bind-entry.js","sources":["../../../../../../../../src/wirestate-core/bind/bind-entry.ts"],"sourcesContent":[null],"names":["bindEntry","container","entry","options","bindService","bindingType","bindingTypeValues","ConstantValue","bindConstant","DynamicValue","bindDynamicValue","value"],"mappings":";;;;;AAiBA;;;;;;;;;;;;;;AAcG;SACaA,SAASA,CACvBC,SAAoB,EACpBC,KAAyC,EACzCC,OAA+B,EAAA;AAA/B,EAAA,IAAAA,OAAA,KAAA,MAAA,EAAA;IAAAA,OAAA,GAAA,EAA+B;AAAA,EAAA;AAE/B,EAAA,IAAI,OAAOD,KAAK,KAAK,UAAU,EAAE;AAC/B,IAAA,OAAOE,WAAW,CAACH,SAAS,EAAEC,KAAK,EAAEC,OAAO,CAAC;AAC/C,EAAA;AAEA,EAAA,IAAI,CAACD,KAAK,CAACG,WAAW,IAAIH,KAAK,CAACG,WAAW,KAAKC,iBAAiB,CAACC,aAAa,EAAE;AAC/E,IAAA,OAAOC,YAAY,CAACP,SAAS,EAAEC,KAAK,CAAC;AACvC,EAAA;AAEA,EAAA,IAAIA,KAAK,CAACG,WAAW,KAAKC,iBAAiB,CAACG,YAAY,EAAE;AAMxD,IAAA,OAAOC,gBAAgB,CAACT,SAAS,EAAEC,KAAK,CAAC;AAC3C,EAAA;AAOA;EACA,OAAOE,WAAW,CAACH,SAAS,EAAEC,KAAK,CAACS,KAA8B,EAAER,OAAO,CAAC;AAC9E;;;;"}