@twin.org/engine-types 0.0.3-next.4 → 0.0.3-next.40

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 (590) hide show
  1. package/README.md +1 -1
  2. package/dist/es/components/attestation.js +20 -24
  3. package/dist/es/components/attestation.js.map +1 -1
  4. package/dist/es/components/auditableItemGraph.js +27 -22
  5. package/dist/es/components/auditableItemGraph.js.map +1 -1
  6. package/dist/es/components/auditableItemStream.js +27 -22
  7. package/dist/es/components/auditableItemStream.js.map +1 -1
  8. package/dist/es/components/automation.js +41 -0
  9. package/dist/es/components/automation.js.map +1 -0
  10. package/dist/es/components/automationAction.js +27 -0
  11. package/dist/es/components/automationAction.js.map +1 -0
  12. package/dist/es/components/backgroundTask.js +18 -18
  13. package/dist/es/components/backgroundTask.js.map +1 -1
  14. package/dist/es/components/blobStorage.js +69 -80
  15. package/dist/es/components/blobStorage.js.map +1 -1
  16. package/dist/es/components/contextIdHandler.js +9 -9
  17. package/dist/es/components/contextIdHandler.js.map +1 -1
  18. package/dist/es/components/dataProcessing.js +33 -32
  19. package/dist/es/components/dataProcessing.js.map +1 -1
  20. package/dist/es/components/dataspaceControlPlane.js +57 -0
  21. package/dist/es/components/dataspaceControlPlane.js.map +1 -0
  22. package/dist/es/components/dataspaceDataPlane.js +62 -0
  23. package/dist/es/components/dataspaceDataPlane.js.map +1 -0
  24. package/dist/es/components/documentManagement.js +12 -11
  25. package/dist/es/components/documentManagement.js.map +1 -1
  26. package/dist/es/components/entityStorage.js +48 -47
  27. package/dist/es/components/entityStorage.js.map +1 -1
  28. package/dist/es/components/eventBus.js +19 -27
  29. package/dist/es/components/eventBus.js.map +1 -1
  30. package/dist/es/components/faucet.js +18 -18
  31. package/dist/es/components/faucet.js.map +1 -1
  32. package/dist/es/components/federatedCatalogue.js +17 -18
  33. package/dist/es/components/federatedCatalogue.js.map +1 -1
  34. package/dist/es/components/federatedCatalogueFilter.js +34 -0
  35. package/dist/es/components/federatedCatalogueFilter.js.map +1 -0
  36. package/dist/es/components/health.js +32 -0
  37. package/dist/es/components/health.js.map +1 -0
  38. package/dist/es/components/identity.js +30 -31
  39. package/dist/es/components/identity.js.map +1 -1
  40. package/dist/es/components/identityProfile.js +26 -24
  41. package/dist/es/components/identityProfile.js.map +1 -1
  42. package/dist/es/components/identityResolver.js +36 -40
  43. package/dist/es/components/identityResolver.js.map +1 -1
  44. package/dist/es/components/immutableProof.js +23 -20
  45. package/dist/es/components/immutableProof.js.map +1 -1
  46. package/dist/es/components/logging.js +28 -28
  47. package/dist/es/components/logging.js.map +1 -1
  48. package/dist/es/components/messaging.js +77 -89
  49. package/dist/es/components/messaging.js.map +1 -1
  50. package/dist/es/components/metricsCollector.js +27 -0
  51. package/dist/es/components/metricsCollector.js.map +1 -0
  52. package/dist/es/components/metricsProducer.js +33 -0
  53. package/dist/es/components/metricsProducer.js.map +1 -0
  54. package/dist/es/components/nft.js +32 -33
  55. package/dist/es/components/nft.js.map +1 -1
  56. package/dist/es/components/notarization.js +77 -0
  57. package/dist/es/components/notarization.js.map +1 -0
  58. package/dist/es/components/rightsManagementPap.js +17 -17
  59. package/dist/es/components/rightsManagementPap.js.map +1 -1
  60. package/dist/es/components/rightsManagementPdp.js +11 -26
  61. package/dist/es/components/rightsManagementPdp.js.map +1 -1
  62. package/dist/es/components/rightsManagementPep.js +12 -24
  63. package/dist/es/components/rightsManagementPep.js.map +1 -1
  64. package/dist/es/components/rightsManagementPip.js +9 -25
  65. package/dist/es/components/rightsManagementPip.js.map +1 -1
  66. package/dist/es/components/rightsManagementPmp.js +10 -10
  67. package/dist/es/components/rightsManagementPmp.js.map +1 -1
  68. package/dist/es/components/rightsManagementPnap.js +21 -18
  69. package/dist/es/components/rightsManagementPnap.js.map +1 -1
  70. package/dist/es/components/rightsManagementPnp.js +15 -36
  71. package/dist/es/components/rightsManagementPnp.js.map +1 -1
  72. package/dist/es/components/rightsManagementPolicyArbiter.js +32 -0
  73. package/dist/es/components/rightsManagementPolicyArbiter.js.map +1 -0
  74. package/dist/es/components/rightsManagementPolicyEnforcementProcessor.js +33 -0
  75. package/dist/es/components/rightsManagementPolicyEnforcementProcessor.js.map +1 -0
  76. package/dist/es/components/rightsManagementPolicyExecutionAction.js +25 -0
  77. package/dist/es/components/rightsManagementPolicyExecutionAction.js.map +1 -0
  78. package/dist/es/components/rightsManagementPolicyInformationSource.js +34 -0
  79. package/dist/es/components/rightsManagementPolicyInformationSource.js.map +1 -0
  80. package/dist/es/components/rightsManagementPolicyNegotiator.js +27 -0
  81. package/dist/es/components/rightsManagementPolicyNegotiator.js.map +1 -0
  82. package/dist/es/components/rightsManagementPolicyObligationEnforcer.js +27 -0
  83. package/dist/es/components/rightsManagementPolicyObligationEnforcer.js.map +1 -0
  84. package/dist/es/components/rightsManagementPolicyRequester.js +25 -0
  85. package/dist/es/components/rightsManagementPolicyRequester.js.map +1 -0
  86. package/dist/es/components/rightsManagementPxp.js +9 -25
  87. package/dist/es/components/rightsManagementPxp.js.map +1 -1
  88. package/dist/es/components/synchronisedStorage.js +25 -23
  89. package/dist/es/components/synchronisedStorage.js.map +1 -1
  90. package/dist/es/components/taskScheduler.js +17 -11
  91. package/dist/es/components/taskScheduler.js.map +1 -1
  92. package/dist/es/components/telemetry.js +46 -32
  93. package/dist/es/components/telemetry.js.map +1 -1
  94. package/dist/es/components/tenant.js +12 -11
  95. package/dist/es/components/tenant.js.map +1 -1
  96. package/dist/es/components/trust.js +27 -0
  97. package/dist/es/components/trust.js.map +1 -0
  98. package/dist/es/components/trustGenerator.js +28 -0
  99. package/dist/es/components/trustGenerator.js.map +1 -0
  100. package/dist/es/components/trustVerifier.js +28 -0
  101. package/dist/es/components/trustVerifier.js.map +1 -0
  102. package/dist/es/components/urlTransformer.js +29 -0
  103. package/dist/es/components/urlTransformer.js.map +1 -0
  104. package/dist/es/components/vault.js +15 -12
  105. package/dist/es/components/vault.js.map +1 -1
  106. package/dist/es/components/verifiableStorage.js +32 -34
  107. package/dist/es/components/verifiableStorage.js.map +1 -1
  108. package/dist/es/components/wallet.js +23 -24
  109. package/dist/es/components/wallet.js.map +1 -1
  110. package/dist/es/index.js +64 -14
  111. package/dist/es/index.js.map +1 -1
  112. package/dist/es/models/IEngineConfig.js.map +1 -1
  113. package/dist/es/models/config/automationActionConfig.js +2 -0
  114. package/dist/es/models/config/automationActionConfig.js.map +1 -0
  115. package/dist/es/models/config/automationComponentConfig.js +2 -0
  116. package/dist/es/models/config/automationComponentConfig.js.map +1 -0
  117. package/dist/es/models/config/backgroundTaskComponentConfig.js +2 -0
  118. package/dist/es/models/config/backgroundTaskComponentConfig.js.map +1 -0
  119. package/dist/es/models/config/blobStorageConnectorConfig.js.map +1 -1
  120. package/dist/es/models/config/dataspaceControlPlaneComponentConfig.js +2 -0
  121. package/dist/es/models/config/dataspaceControlPlaneComponentConfig.js.map +1 -0
  122. package/dist/es/models/config/dataspaceDataPlaneComponentConfig.js +2 -0
  123. package/dist/es/models/config/dataspaceDataPlaneComponentConfig.js.map +1 -0
  124. package/dist/es/models/config/federatedCatalogueFilterComponentConfig.js +2 -0
  125. package/dist/es/models/config/federatedCatalogueFilterComponentConfig.js.map +1 -0
  126. package/dist/es/models/config/healthComponentConfig.js +2 -0
  127. package/dist/es/models/config/healthComponentConfig.js.map +1 -0
  128. package/dist/es/models/config/metricsCollectorComponentConfig.js +2 -0
  129. package/dist/es/models/config/metricsCollectorComponentConfig.js.map +1 -0
  130. package/dist/es/models/config/metricsProducerComponentConfig.js +2 -0
  131. package/dist/es/models/config/metricsProducerComponentConfig.js.map +1 -0
  132. package/dist/es/models/config/notarizationComponentConfig.js +2 -0
  133. package/dist/es/models/config/notarizationComponentConfig.js.map +1 -0
  134. package/dist/es/models/config/notarizationConnectorConfig.js +2 -0
  135. package/dist/es/models/config/notarizationConnectorConfig.js.map +1 -0
  136. package/dist/es/models/config/rightsManagementPdpComponentConfig.js.map +1 -1
  137. package/dist/es/models/config/rightsManagementPepComponentConfig.js.map +1 -1
  138. package/dist/es/models/config/rightsManagementPipComponentConfig.js.map +1 -1
  139. package/dist/es/models/config/rightsManagementPnpComponentConfig.js.map +1 -1
  140. package/dist/es/models/config/rightsManagementPolicyArbiterComponentConfig.js +2 -0
  141. package/dist/es/models/config/rightsManagementPolicyArbiterComponentConfig.js.map +1 -0
  142. package/dist/es/models/config/rightsManagementPolicyEnforcementProcessorComponentConfig.js +2 -0
  143. package/dist/es/models/config/rightsManagementPolicyEnforcementProcessorComponentConfig.js.map +1 -0
  144. package/dist/es/models/config/rightsManagementPolicyExecutionActionComponentConfig.js +2 -0
  145. package/dist/es/models/config/rightsManagementPolicyExecutionActionComponentConfig.js.map +1 -0
  146. package/dist/es/models/config/rightsManagementPolicyInformationSourceComponentConfig.js +2 -0
  147. package/dist/es/models/config/rightsManagementPolicyInformationSourceComponentConfig.js.map +1 -0
  148. package/dist/es/models/config/rightsManagementPolicyNegotiatorComponentConfig.js +2 -0
  149. package/dist/es/models/config/rightsManagementPolicyNegotiatorComponentConfig.js.map +1 -0
  150. package/dist/es/models/config/rightsManagementPolicyObligationEnforcerComponentConfig.js +2 -0
  151. package/dist/es/models/config/rightsManagementPolicyObligationEnforcerComponentConfig.js.map +1 -0
  152. package/dist/es/models/config/rightsManagementPolicyRequesterComponentConfig.js +2 -0
  153. package/dist/es/models/config/rightsManagementPolicyRequesterComponentConfig.js.map +1 -0
  154. package/dist/es/models/config/rightsManagementPxpComponentConfig.js.map +1 -1
  155. package/dist/es/models/config/telemetryConnectorConfig.js.map +1 -1
  156. package/dist/es/models/config/trustComponentConfig.js +2 -0
  157. package/dist/es/models/config/trustComponentConfig.js.map +1 -0
  158. package/dist/es/models/config/trustGeneratorComponentConfig.js +2 -0
  159. package/dist/es/models/config/trustGeneratorComponentConfig.js.map +1 -0
  160. package/dist/es/models/config/trustVerifierComponentConfig.js +2 -0
  161. package/dist/es/models/config/trustVerifierComponentConfig.js.map +1 -0
  162. package/dist/es/models/config/urlTransformerComponentConfig.js +2 -0
  163. package/dist/es/models/config/urlTransformerComponentConfig.js.map +1 -0
  164. package/dist/es/models/types/automationActionType.js +13 -0
  165. package/dist/es/models/types/automationActionType.js.map +1 -0
  166. package/dist/es/models/types/{rightsManagementDapComponentType.js → automationComponentType.js} +4 -4
  167. package/dist/es/models/types/automationComponentType.js.map +1 -0
  168. package/dist/es/models/types/{rightsManagementDarpComponentType.js → backgroundTaskComponentType.js} +3 -3
  169. package/dist/es/models/types/backgroundTaskComponentType.js.map +1 -0
  170. package/dist/es/models/types/dataspaceControlPlaneComponentType.js +17 -0
  171. package/dist/es/models/types/dataspaceControlPlaneComponentType.js.map +1 -0
  172. package/dist/es/models/types/{dataSpaceConnectorComponentType.js → dataspaceDataPlaneComponentType.js} +4 -4
  173. package/dist/es/models/types/dataspaceDataPlaneComponentType.js.map +1 -0
  174. package/dist/es/models/types/federatedCatalogueFilterComponentType.js +13 -0
  175. package/dist/es/models/types/federatedCatalogueFilterComponentType.js.map +1 -0
  176. package/dist/es/models/types/healthComponentType.js +17 -0
  177. package/dist/es/models/types/healthComponentType.js.map +1 -0
  178. package/dist/es/models/types/metricsCollectorComponentType.js +13 -0
  179. package/dist/es/models/types/metricsCollectorComponentType.js.map +1 -0
  180. package/dist/es/models/types/metricsProducerComponentType.js +17 -0
  181. package/dist/es/models/types/metricsProducerComponentType.js.map +1 -0
  182. package/dist/es/models/types/notarizationComponentType.js +17 -0
  183. package/dist/es/models/types/notarizationComponentType.js.map +1 -0
  184. package/dist/es/models/types/notarizationConnectorType.js +17 -0
  185. package/dist/es/models/types/notarizationConnectorType.js.map +1 -0
  186. package/dist/es/models/types/rightsManagementPolicyArbiterComponentType.js +17 -0
  187. package/dist/es/models/types/rightsManagementPolicyArbiterComponentType.js.map +1 -0
  188. package/dist/es/models/types/rightsManagementPolicyEnforcementProcessorComponentType.js +17 -0
  189. package/dist/es/models/types/rightsManagementPolicyEnforcementProcessorComponentType.js.map +1 -0
  190. package/dist/es/models/types/rightsManagementPolicyExecutionActionComponentType.js +13 -0
  191. package/dist/es/models/types/rightsManagementPolicyExecutionActionComponentType.js.map +1 -0
  192. package/dist/es/models/types/rightsManagementPolicyInformationSourceComponentType.js +17 -0
  193. package/dist/es/models/types/rightsManagementPolicyInformationSourceComponentType.js.map +1 -0
  194. package/dist/es/models/types/rightsManagementPolicyNegotiatorComponentType.js +13 -0
  195. package/dist/es/models/types/rightsManagementPolicyNegotiatorComponentType.js.map +1 -0
  196. package/dist/es/models/types/rightsManagementPolicyObligationEnforcerComponentType.js +13 -0
  197. package/dist/es/models/types/rightsManagementPolicyObligationEnforcerComponentType.js.map +1 -0
  198. package/dist/es/models/types/rightsManagementPolicyRequesterComponentType.js +13 -0
  199. package/dist/es/models/types/rightsManagementPolicyRequesterComponentType.js.map +1 -0
  200. package/dist/es/models/types/telemetryConnectorType.js +5 -1
  201. package/dist/es/models/types/telemetryConnectorType.js.map +1 -1
  202. package/dist/es/models/types/trustComponentType.js +13 -0
  203. package/dist/es/models/types/trustComponentType.js.map +1 -0
  204. package/dist/es/models/types/trustGeneratorComponentType.js +13 -0
  205. package/dist/es/models/types/trustGeneratorComponentType.js.map +1 -0
  206. package/dist/es/models/types/trustVerifierComponentType.js +13 -0
  207. package/dist/es/models/types/trustVerifierComponentType.js.map +1 -0
  208. package/dist/es/models/types/urlTransformerComponentType.js +13 -0
  209. package/dist/es/models/types/urlTransformerComponentType.js.map +1 -0
  210. package/dist/es/utils/engineTypeHelper.js +19 -1
  211. package/dist/es/utils/engineTypeHelper.js.map +1 -1
  212. package/dist/types/components/attestation.d.ts +5 -13
  213. package/dist/types/components/auditableItemGraph.d.ts +3 -7
  214. package/dist/types/components/auditableItemStream.d.ts +3 -7
  215. package/dist/types/components/automation.d.ts +12 -0
  216. package/dist/types/components/automationAction.d.ts +12 -0
  217. package/dist/types/components/backgroundTask.d.ts +5 -10
  218. package/dist/types/components/blobStorage.d.ts +4 -12
  219. package/dist/types/components/contextIdHandler.d.ts +3 -7
  220. package/dist/types/components/dataProcessing.d.ts +5 -17
  221. package/dist/types/components/dataspaceControlPlane.d.ts +12 -0
  222. package/dist/types/components/dataspaceDataPlane.d.ts +12 -0
  223. package/dist/types/components/documentManagement.d.ts +3 -7
  224. package/dist/types/components/entityStorage.d.ts +4 -9
  225. package/dist/types/components/eventBus.d.ts +4 -12
  226. package/dist/types/components/faucet.d.ts +2 -7
  227. package/dist/types/components/federatedCatalogue.d.ts +3 -7
  228. package/dist/types/components/federatedCatalogueFilter.d.ts +12 -0
  229. package/dist/types/components/health.d.ts +12 -0
  230. package/dist/types/components/identity.d.ts +4 -12
  231. package/dist/types/components/identityProfile.d.ts +4 -12
  232. package/dist/types/components/identityResolver.d.ts +4 -12
  233. package/dist/types/components/immutableProof.d.ts +3 -7
  234. package/dist/types/components/logging.d.ts +4 -12
  235. package/dist/types/components/messaging.d.ts +7 -27
  236. package/dist/types/components/metricsCollector.d.ts +12 -0
  237. package/dist/types/components/metricsProducer.d.ts +12 -0
  238. package/dist/types/components/nft.d.ts +4 -12
  239. package/dist/types/components/notarization.d.ts +22 -0
  240. package/dist/types/components/rightsManagementPap.d.ts +3 -7
  241. package/dist/types/components/rightsManagementPdp.d.ts +3 -7
  242. package/dist/types/components/rightsManagementPep.d.ts +3 -7
  243. package/dist/types/components/rightsManagementPip.d.ts +3 -7
  244. package/dist/types/components/rightsManagementPmp.d.ts +3 -7
  245. package/dist/types/components/rightsManagementPnap.d.ts +3 -7
  246. package/dist/types/components/rightsManagementPnp.d.ts +3 -7
  247. package/dist/types/components/rightsManagementPolicyArbiter.d.ts +12 -0
  248. package/dist/types/components/rightsManagementPolicyEnforcementProcessor.d.ts +12 -0
  249. package/dist/types/components/rightsManagementPolicyExecutionAction.d.ts +12 -0
  250. package/dist/types/components/rightsManagementPolicyInformationSource.d.ts +12 -0
  251. package/dist/types/components/rightsManagementPolicyNegotiator.d.ts +12 -0
  252. package/dist/types/components/rightsManagementPolicyObligationEnforcer.d.ts +12 -0
  253. package/dist/types/components/rightsManagementPolicyRequester.d.ts +12 -0
  254. package/dist/types/components/rightsManagementPxp.d.ts +3 -7
  255. package/dist/types/components/synchronisedStorage.d.ts +3 -7
  256. package/dist/types/components/taskScheduler.d.ts +3 -7
  257. package/dist/types/components/telemetry.d.ts +4 -12
  258. package/dist/types/components/tenant.d.ts +3 -7
  259. package/dist/types/components/trust.d.ts +12 -0
  260. package/dist/types/components/trustGenerator.d.ts +12 -0
  261. package/dist/types/components/trustVerifier.d.ts +12 -0
  262. package/dist/types/components/urlTransformer.d.ts +12 -0
  263. package/dist/types/components/vault.d.ts +2 -7
  264. package/dist/types/components/verifiableStorage.d.ts +4 -12
  265. package/dist/types/components/wallet.d.ts +2 -7
  266. package/dist/types/index.d.ts +64 -14
  267. package/dist/types/models/IEngineConfig.d.ts +100 -15
  268. package/dist/types/models/config/automationActionConfig.d.ts +9 -0
  269. package/dist/types/models/config/automationComponentConfig.d.ts +13 -0
  270. package/dist/types/models/config/backgroundTaskComponentConfig.d.ts +9 -0
  271. package/dist/types/models/config/blobStorageConnectorConfig.d.ts +4 -1
  272. package/dist/types/models/config/dataspaceControlPlaneComponentConfig.d.ts +13 -0
  273. package/dist/types/models/config/dataspaceDataPlaneComponentConfig.d.ts +17 -0
  274. package/dist/types/models/config/federatedCatalogueFilterComponentConfig.d.ts +9 -0
  275. package/dist/types/models/config/healthComponentConfig.d.ts +13 -0
  276. package/dist/types/models/config/metricsCollectorComponentConfig.d.ts +9 -0
  277. package/dist/types/models/config/metricsProducerComponentConfig.d.ts +12 -0
  278. package/dist/types/models/config/notarizationComponentConfig.d.ts +13 -0
  279. package/dist/types/models/config/notarizationConnectorConfig.d.ts +13 -0
  280. package/dist/types/models/config/rightsManagementPdpComponentConfig.d.ts +1 -4
  281. package/dist/types/models/config/rightsManagementPepComponentConfig.d.ts +1 -4
  282. package/dist/types/models/config/rightsManagementPipComponentConfig.d.ts +1 -4
  283. package/dist/types/models/config/rightsManagementPnpComponentConfig.d.ts +1 -5
  284. package/dist/types/models/config/rightsManagementPolicyArbiterComponentConfig.d.ts +12 -0
  285. package/dist/types/models/config/rightsManagementPolicyEnforcementProcessorComponentConfig.d.ts +12 -0
  286. package/dist/types/models/config/rightsManagementPolicyExecutionActionComponentConfig.d.ts +9 -0
  287. package/dist/types/models/config/rightsManagementPolicyInformationSourceComponentConfig.d.ts +12 -0
  288. package/dist/types/models/config/rightsManagementPolicyNegotiatorComponentConfig.d.ts +9 -0
  289. package/dist/types/models/config/rightsManagementPolicyObligationEnforcerComponentConfig.d.ts +9 -0
  290. package/dist/types/models/config/rightsManagementPolicyRequesterComponentConfig.d.ts +9 -0
  291. package/dist/types/models/config/rightsManagementPxpComponentConfig.d.ts +1 -4
  292. package/dist/types/models/config/telemetryConnectorConfig.d.ts +4 -0
  293. package/dist/types/models/config/trustComponentConfig.d.ts +9 -0
  294. package/dist/types/models/config/trustGeneratorComponentConfig.d.ts +9 -0
  295. package/dist/types/models/config/trustVerifierComponentConfig.d.ts +9 -0
  296. package/dist/types/models/config/urlTransformerComponentConfig.d.ts +9 -0
  297. package/dist/types/models/types/automationActionType.d.ts +13 -0
  298. package/dist/types/models/types/automationComponentType.d.ts +17 -0
  299. package/dist/types/models/types/backgroundTaskComponentType.d.ts +13 -0
  300. package/dist/types/models/types/dataspaceControlPlaneComponentType.d.ts +17 -0
  301. package/dist/types/models/types/dataspaceDataPlaneComponentType.d.ts +21 -0
  302. package/dist/types/models/types/federatedCatalogueFilterComponentType.d.ts +13 -0
  303. package/dist/types/models/types/healthComponentType.d.ts +17 -0
  304. package/dist/types/models/types/metricsCollectorComponentType.d.ts +13 -0
  305. package/dist/types/models/types/metricsProducerComponentType.d.ts +17 -0
  306. package/dist/types/models/types/notarizationComponentType.d.ts +17 -0
  307. package/dist/types/models/types/notarizationConnectorType.d.ts +17 -0
  308. package/dist/types/models/types/rightsManagementPolicyArbiterComponentType.d.ts +17 -0
  309. package/dist/types/models/types/rightsManagementPolicyEnforcementProcessorComponentType.d.ts +17 -0
  310. package/dist/types/models/types/rightsManagementPolicyExecutionActionComponentType.d.ts +13 -0
  311. package/dist/types/models/types/rightsManagementPolicyInformationSourceComponentType.d.ts +17 -0
  312. package/dist/types/models/types/rightsManagementPolicyNegotiatorComponentType.d.ts +13 -0
  313. package/dist/types/models/types/rightsManagementPolicyObligationEnforcerComponentType.d.ts +13 -0
  314. package/dist/types/models/types/rightsManagementPolicyRequesterComponentType.d.ts +13 -0
  315. package/dist/types/models/types/telemetryConnectorType.d.ts +4 -0
  316. package/dist/types/models/types/trustComponentType.d.ts +13 -0
  317. package/dist/types/models/types/trustGeneratorComponentType.d.ts +13 -0
  318. package/dist/types/models/types/trustVerifierComponentType.d.ts +13 -0
  319. package/dist/types/models/types/urlTransformerComponentType.d.ts +13 -0
  320. package/dist/types/utils/engineTypeHelper.d.ts +11 -0
  321. package/docs/changelog.md +783 -148
  322. package/docs/examples.md +74 -1
  323. package/docs/reference/classes/EngineTypeHelper.md +57 -4
  324. package/docs/reference/functions/initialiseAttestationComponent.md +2 -2
  325. package/docs/reference/functions/initialiseAttestationConnector.md +3 -3
  326. package/docs/reference/functions/initialiseAuditableItemGraphComponent.md +2 -2
  327. package/docs/reference/functions/initialiseAuditableItemStreamComponent.md +2 -2
  328. package/docs/reference/functions/initialiseAutomationAction.md +31 -0
  329. package/docs/reference/functions/initialiseAutomationComponent.md +31 -0
  330. package/docs/reference/functions/initialiseBackgroundTaskComponent.md +31 -0
  331. package/docs/reference/functions/initialiseBlobStorageComponent.md +2 -2
  332. package/docs/reference/functions/initialiseBlobStorageConnector.md +2 -2
  333. package/docs/reference/functions/initialiseContextIdHandlerComponent.md +2 -2
  334. package/docs/reference/functions/initialiseDataConverterConnector.md +2 -2
  335. package/docs/reference/functions/initialiseDataExtractorConnector.md +2 -2
  336. package/docs/reference/functions/initialiseDataProcessingComponent.md +2 -2
  337. package/docs/reference/functions/initialiseDataspaceControlPlaneComponent.md +31 -0
  338. package/docs/reference/functions/initialiseDataspaceDataPlaneComponent.md +31 -0
  339. package/docs/reference/functions/initialiseDocumentManagementComponent.md +2 -2
  340. package/docs/reference/functions/initialiseEntityStorageComponent.md +2 -2
  341. package/docs/reference/functions/initialiseEntityStorageConnector.md +4 -6
  342. package/docs/reference/functions/initialiseEventBusComponent.md +2 -2
  343. package/docs/reference/functions/initialiseEventBusConnector.md +2 -2
  344. package/docs/reference/functions/initialiseFaucetConnector.md +2 -2
  345. package/docs/reference/functions/initialiseFederatedCatalogueComponent.md +2 -2
  346. package/docs/reference/functions/initialiseFederatedCatalogueFilterComponent.md +31 -0
  347. package/docs/reference/functions/initialiseHealthComponent.md +31 -0
  348. package/docs/reference/functions/initialiseIdentityComponent.md +2 -2
  349. package/docs/reference/functions/initialiseIdentityConnector.md +2 -2
  350. package/docs/reference/functions/initialiseIdentityProfileComponent.md +2 -2
  351. package/docs/reference/functions/initialiseIdentityProfileConnector.md +2 -2
  352. package/docs/reference/functions/initialiseIdentityResolverComponent.md +2 -2
  353. package/docs/reference/functions/initialiseIdentityResolverConnector.md +2 -2
  354. package/docs/reference/functions/initialiseImmutableProofComponent.md +2 -2
  355. package/docs/reference/functions/initialiseLoggingComponent.md +2 -2
  356. package/docs/reference/functions/initialiseLoggingConnector.md +2 -2
  357. package/docs/reference/functions/initialiseMessagingAdminComponent.md +2 -2
  358. package/docs/reference/functions/initialiseMessagingComponent.md +2 -2
  359. package/docs/reference/functions/initialiseMessagingEmailConnector.md +2 -2
  360. package/docs/reference/functions/initialiseMessagingPushNotificationConnector.md +2 -2
  361. package/docs/reference/functions/initialiseMessagingSmsConnector.md +2 -2
  362. package/docs/reference/functions/initialiseMetricsCollectorComponent.md +31 -0
  363. package/docs/reference/functions/initialiseMetricsProducerComponent.md +31 -0
  364. package/docs/reference/functions/initialiseNftComponent.md +2 -2
  365. package/docs/reference/functions/initialiseNftConnector.md +2 -2
  366. package/docs/reference/functions/initialiseNotarizationComponent.md +31 -0
  367. package/docs/reference/functions/initialiseNotarizationConnector.md +31 -0
  368. package/docs/reference/functions/initialiseRightsManagementPapComponent.md +2 -2
  369. package/docs/reference/functions/initialiseRightsManagementPdpComponent.md +2 -2
  370. package/docs/reference/functions/initialiseRightsManagementPepComponent.md +2 -2
  371. package/docs/reference/functions/initialiseRightsManagementPipComponent.md +2 -2
  372. package/docs/reference/functions/initialiseRightsManagementPmpComponent.md +2 -2
  373. package/docs/reference/functions/initialiseRightsManagementPnapComponent.md +2 -2
  374. package/docs/reference/functions/initialiseRightsManagementPnpComponent.md +2 -2
  375. package/docs/reference/functions/initialiseRightsManagementPolicyArbiterComponent.md +31 -0
  376. package/docs/reference/functions/initialiseRightsManagementPolicyEnforcementProcessorComponent.md +31 -0
  377. package/docs/reference/functions/initialiseRightsManagementPolicyExecutionActionComponent.md +31 -0
  378. package/docs/reference/functions/initialiseRightsManagementPolicyInformationSourceComponent.md +31 -0
  379. package/docs/reference/functions/initialiseRightsManagementPolicyNegotiatorComponent.md +31 -0
  380. package/docs/reference/functions/initialiseRightsManagementPolicyObligationEnforcerComponent.md +31 -0
  381. package/docs/reference/functions/initialiseRightsManagementPolicyRequesterComponent.md +31 -0
  382. package/docs/reference/functions/initialiseRightsManagementPxpComponent.md +2 -2
  383. package/docs/reference/functions/initialiseSynchronisedStorageComponent.md +2 -2
  384. package/docs/reference/functions/initialiseTaskSchedulerComponent.md +2 -2
  385. package/docs/reference/functions/initialiseTelemetryComponent.md +2 -2
  386. package/docs/reference/functions/initialiseTelemetryConnector.md +2 -2
  387. package/docs/reference/functions/initialiseTenantAdminComponent.md +2 -2
  388. package/docs/reference/functions/initialiseTrustComponent.md +31 -0
  389. package/docs/reference/functions/initialiseTrustGeneratorComponent.md +31 -0
  390. package/docs/reference/functions/initialiseTrustVerifierComponent.md +31 -0
  391. package/docs/reference/functions/initialiseUrlTransformerComponent.md +31 -0
  392. package/docs/reference/functions/initialiseVaultConnector.md +2 -2
  393. package/docs/reference/functions/initialiseVerifiableStorageComponent.md +2 -2
  394. package/docs/reference/functions/initialiseVerifiableStorageConnector.md +2 -2
  395. package/docs/reference/functions/initialiseWalletConnector.md +2 -2
  396. package/docs/reference/index.md +88 -20
  397. package/docs/reference/interfaces/IEngineConfig.md +206 -68
  398. package/docs/reference/type-aliases/AttestationConnectorConfig.md +3 -3
  399. package/docs/reference/type-aliases/AutomationActionConfig.md +17 -0
  400. package/docs/reference/type-aliases/AutomationActionType.md +5 -0
  401. package/docs/reference/type-aliases/AutomationComponentConfig.md +5 -0
  402. package/docs/reference/type-aliases/AutomationComponentType.md +5 -0
  403. package/docs/reference/type-aliases/BackgroundTaskComponentConfig.md +17 -0
  404. package/docs/reference/type-aliases/BackgroundTaskComponentType.md +5 -0
  405. package/docs/reference/type-aliases/BlobStorageConnectorConfig.md +1 -1
  406. package/docs/reference/type-aliases/DataExtractorConnectorConfig.md +3 -3
  407. package/docs/reference/type-aliases/DataspaceControlPlaneComponentConfig.md +5 -0
  408. package/docs/reference/type-aliases/DataspaceControlPlaneComponentType.md +5 -0
  409. package/docs/reference/type-aliases/DataspaceDataPlaneComponentConfig.md +5 -0
  410. package/docs/reference/type-aliases/DataspaceDataPlaneComponentType.md +5 -0
  411. package/docs/reference/type-aliases/DltConfig.md +4 -4
  412. package/docs/reference/type-aliases/EventBusConnectorConfig.md +3 -3
  413. package/docs/reference/type-aliases/FederatedCatalogueFilterComponentConfig.md +17 -0
  414. package/docs/reference/type-aliases/FederatedCatalogueFilterComponentType.md +5 -0
  415. package/docs/reference/type-aliases/HealthComponentConfig.md +5 -0
  416. package/docs/reference/type-aliases/HealthComponentType.md +5 -0
  417. package/docs/reference/type-aliases/IdentityProfileConnectorConfig.md +3 -3
  418. package/docs/reference/type-aliases/MessagingAdminComponentConfig.md +3 -3
  419. package/docs/reference/type-aliases/MessagingComponentConfig.md +3 -3
  420. package/docs/reference/type-aliases/MetricsCollectorComponentConfig.md +17 -0
  421. package/docs/reference/type-aliases/MetricsCollectorComponentType.md +5 -0
  422. package/docs/reference/type-aliases/MetricsProducerComponentConfig.md +5 -0
  423. package/docs/reference/type-aliases/MetricsProducerComponentType.md +5 -0
  424. package/docs/reference/type-aliases/NotarizationComponentConfig.md +5 -0
  425. package/docs/reference/type-aliases/NotarizationComponentType.md +5 -0
  426. package/docs/reference/type-aliases/NotarizationConnectorConfig.md +5 -0
  427. package/docs/reference/type-aliases/NotarizationConnectorType.md +5 -0
  428. package/docs/reference/type-aliases/RightsManagementPdpComponentConfig.md +3 -9
  429. package/docs/reference/type-aliases/RightsManagementPepComponentConfig.md +3 -9
  430. package/docs/reference/type-aliases/RightsManagementPipComponentConfig.md +3 -9
  431. package/docs/reference/type-aliases/RightsManagementPmpComponentConfig.md +3 -3
  432. package/docs/reference/type-aliases/RightsManagementPnpComponentConfig.md +1 -1
  433. package/docs/reference/type-aliases/RightsManagementPolicyArbiterComponentConfig.md +5 -0
  434. package/docs/reference/type-aliases/RightsManagementPolicyArbiterComponentType.md +5 -0
  435. package/docs/reference/type-aliases/RightsManagementPolicyEnforcementProcessorComponentConfig.md +5 -0
  436. package/docs/reference/type-aliases/RightsManagementPolicyEnforcementProcessorComponentType.md +5 -0
  437. package/docs/reference/type-aliases/RightsManagementPolicyExecutionActionComponentConfig.md +17 -0
  438. package/docs/reference/type-aliases/RightsManagementPolicyExecutionActionComponentType.md +5 -0
  439. package/docs/reference/type-aliases/RightsManagementPolicyInformationSourceComponentConfig.md +5 -0
  440. package/docs/reference/type-aliases/RightsManagementPolicyInformationSourceComponentType.md +5 -0
  441. package/docs/reference/type-aliases/RightsManagementPolicyNegotiatorComponentConfig.md +17 -0
  442. package/docs/reference/type-aliases/RightsManagementPolicyNegotiatorComponentType.md +5 -0
  443. package/docs/reference/type-aliases/RightsManagementPolicyObligationEnforcerComponentConfig.md +17 -0
  444. package/docs/reference/type-aliases/RightsManagementPolicyObligationEnforcerComponentType.md +5 -0
  445. package/docs/reference/type-aliases/RightsManagementPolicyRequesterComponentConfig.md +17 -0
  446. package/docs/reference/type-aliases/RightsManagementPolicyRequesterComponentType.md +5 -0
  447. package/docs/reference/type-aliases/RightsManagementPxpComponentConfig.md +3 -9
  448. package/docs/reference/type-aliases/TaskSchedulerComponentConfig.md +3 -3
  449. package/docs/reference/type-aliases/TelemetryConnectorConfig.md +1 -13
  450. package/docs/reference/type-aliases/TenantAdminComponentConfig.md +3 -3
  451. package/docs/reference/type-aliases/TrustComponentConfig.md +17 -0
  452. package/docs/reference/type-aliases/TrustComponentType.md +5 -0
  453. package/docs/reference/type-aliases/TrustGeneratorComponentConfig.md +17 -0
  454. package/docs/reference/type-aliases/TrustGeneratorComponentType.md +5 -0
  455. package/docs/reference/type-aliases/TrustVerifierComponentConfig.md +17 -0
  456. package/docs/reference/type-aliases/TrustVerifierComponentType.md +5 -0
  457. package/docs/reference/type-aliases/UrlTransformerComponentConfig.md +17 -0
  458. package/docs/reference/type-aliases/UrlTransformerComponentType.md +5 -0
  459. package/docs/reference/variables/AttestationComponentType.md +2 -2
  460. package/docs/reference/variables/AttestationConnectorType.md +1 -1
  461. package/docs/reference/variables/AuditableItemGraphComponentType.md +2 -2
  462. package/docs/reference/variables/AuditableItemStreamComponentType.md +2 -2
  463. package/docs/reference/variables/AutomationActionType.md +13 -0
  464. package/docs/reference/variables/AutomationComponentType.md +19 -0
  465. package/docs/reference/variables/BackgroundTaskComponentType.md +13 -0
  466. package/docs/reference/variables/BlobStorageComponentType.md +2 -2
  467. package/docs/reference/variables/BlobStorageConnectorType.md +6 -6
  468. package/docs/reference/variables/ContextIdHandlerComponentType.md +2 -2
  469. package/docs/reference/variables/DataConverterConnectorType.md +2 -2
  470. package/docs/reference/variables/DataExtractorConnectorType.md +1 -1
  471. package/docs/reference/variables/DataProcessingComponentType.md +2 -2
  472. package/docs/reference/variables/DataspaceControlPlaneComponentType.md +19 -0
  473. package/docs/reference/variables/{DataSpaceConnectorComponentType.md → DataspaceDataPlaneComponentType.md} +6 -6
  474. package/docs/reference/variables/DltConfigType.md +1 -1
  475. package/docs/reference/variables/DocumentManagementComponentType.md +2 -2
  476. package/docs/reference/variables/EntityStorageComponentType.md +2 -2
  477. package/docs/reference/variables/EntityStorageConnectorType.md +10 -10
  478. package/docs/reference/variables/EventBusComponentType.md +2 -2
  479. package/docs/reference/variables/EventBusConnectorType.md +1 -1
  480. package/docs/reference/variables/FaucetConnectorType.md +2 -2
  481. package/docs/reference/variables/FederatedCatalogueComponentType.md +2 -2
  482. package/docs/reference/variables/FederatedCatalogueFilterComponentType.md +13 -0
  483. package/docs/reference/variables/HealthComponentType.md +19 -0
  484. package/docs/reference/variables/IdentityComponentType.md +2 -2
  485. package/docs/reference/variables/IdentityConnectorType.md +2 -2
  486. package/docs/reference/variables/IdentityProfileComponentType.md +2 -2
  487. package/docs/reference/variables/IdentityProfileConnectorType.md +1 -1
  488. package/docs/reference/variables/IdentityResolverComponentType.md +2 -2
  489. package/docs/reference/variables/IdentityResolverConnectorType.md +3 -3
  490. package/docs/reference/variables/ImmutableProofComponentType.md +2 -2
  491. package/docs/reference/variables/LoggingComponentType.md +2 -2
  492. package/docs/reference/variables/LoggingConnectorType.md +3 -3
  493. package/docs/reference/variables/MessagingAdminComponentType.md +1 -1
  494. package/docs/reference/variables/MessagingComponentType.md +1 -1
  495. package/docs/reference/variables/MessagingEmailConnectorType.md +2 -2
  496. package/docs/reference/variables/MessagingPushNotificationConnectorType.md +2 -2
  497. package/docs/reference/variables/MessagingSmsConnectorType.md +2 -2
  498. package/docs/reference/variables/MetricsCollectorComponentType.md +13 -0
  499. package/docs/reference/variables/MetricsProducerComponentType.md +19 -0
  500. package/docs/reference/variables/NftComponentType.md +2 -2
  501. package/docs/reference/variables/NftConnectorType.md +2 -2
  502. package/docs/reference/variables/NotarizationComponentType.md +19 -0
  503. package/docs/reference/variables/NotarizationConnectorType.md +19 -0
  504. package/docs/reference/variables/RightsManagementPapComponentType.md +2 -2
  505. package/docs/reference/variables/RightsManagementPdpComponentType.md +1 -1
  506. package/docs/reference/variables/RightsManagementPepComponentType.md +2 -2
  507. package/docs/reference/variables/RightsManagementPipComponentType.md +1 -1
  508. package/docs/reference/variables/RightsManagementPmpComponentType.md +1 -1
  509. package/docs/reference/variables/RightsManagementPnapComponentType.md +2 -2
  510. package/docs/reference/variables/RightsManagementPnpComponentType.md +2 -2
  511. package/docs/reference/variables/RightsManagementPolicyArbiterComponentType.md +19 -0
  512. package/docs/reference/variables/RightsManagementPolicyEnforcementProcessorComponentType.md +19 -0
  513. package/docs/reference/variables/RightsManagementPolicyExecutionActionComponentType.md +13 -0
  514. package/docs/reference/variables/RightsManagementPolicyInformationSourceComponentType.md +19 -0
  515. package/docs/reference/variables/RightsManagementPolicyNegotiatorComponentType.md +13 -0
  516. package/docs/reference/variables/RightsManagementPolicyObligationEnforcerComponentType.md +13 -0
  517. package/docs/reference/variables/RightsManagementPolicyRequesterComponentType.md +13 -0
  518. package/docs/reference/variables/RightsManagementPxpComponentType.md +1 -1
  519. package/docs/reference/variables/SynchronisedStorageComponentType.md +2 -2
  520. package/docs/reference/variables/TaskSchedulerComponentType.md +1 -1
  521. package/docs/reference/variables/TelemetryComponentType.md +2 -2
  522. package/docs/reference/variables/TelemetryConnectorType.md +7 -1
  523. package/docs/reference/variables/TenantAdminComponentType.md +1 -1
  524. package/docs/reference/variables/TrustComponentType.md +13 -0
  525. package/docs/reference/variables/TrustGeneratorComponentType.md +13 -0
  526. package/docs/reference/variables/TrustVerifierComponentType.md +13 -0
  527. package/docs/reference/variables/UrlTransformerComponentType.md +13 -0
  528. package/docs/reference/variables/VaultConnectorType.md +2 -2
  529. package/docs/reference/variables/VerifiableStorageComponentType.md +2 -2
  530. package/docs/reference/variables/VerifiableStorageConnectorType.md +2 -2
  531. package/docs/reference/variables/WalletConnectorType.md +2 -2
  532. package/package.json +32 -12
  533. package/dist/es/components/authenticationGenerator.js +0 -30
  534. package/dist/es/components/authenticationGenerator.js.map +0 -1
  535. package/dist/es/components/dataSpaceConnector.js +0 -52
  536. package/dist/es/components/dataSpaceConnector.js.map +0 -1
  537. package/dist/es/components/rightsManagementDap.js +0 -38
  538. package/dist/es/components/rightsManagementDap.js.map +0 -1
  539. package/dist/es/components/rightsManagementDarp.js +0 -29
  540. package/dist/es/components/rightsManagementDarp.js.map +0 -1
  541. package/dist/es/models/config/authenticationGeneratorComponentConfig.js +0 -2
  542. package/dist/es/models/config/authenticationGeneratorComponentConfig.js.map +0 -1
  543. package/dist/es/models/config/backgroundTaskConnectorConfig.js +0 -2
  544. package/dist/es/models/config/backgroundTaskConnectorConfig.js.map +0 -1
  545. package/dist/es/models/config/dataSpaceConnectorComponentConfig.js +0 -2
  546. package/dist/es/models/config/dataSpaceConnectorComponentConfig.js.map +0 -1
  547. package/dist/es/models/config/rightsManagementDapComponentConfig.js +0 -2
  548. package/dist/es/models/config/rightsManagementDapComponentConfig.js.map +0 -1
  549. package/dist/es/models/config/rightsManagementDarpComponentConfig.js +0 -2
  550. package/dist/es/models/config/rightsManagementDarpComponentConfig.js.map +0 -1
  551. package/dist/es/models/types/authenticationGeneratorComponentType.js +0 -13
  552. package/dist/es/models/types/authenticationGeneratorComponentType.js.map +0 -1
  553. package/dist/es/models/types/backgroundTaskConnectorType.js +0 -13
  554. package/dist/es/models/types/backgroundTaskConnectorType.js.map +0 -1
  555. package/dist/es/models/types/dataSpaceConnectorComponentType.js.map +0 -1
  556. package/dist/es/models/types/rightsManagementDapComponentType.js.map +0 -1
  557. package/dist/es/models/types/rightsManagementDarpComponentType.js.map +0 -1
  558. package/dist/types/components/authenticationGenerator.d.ts +0 -17
  559. package/dist/types/components/dataSpaceConnector.d.ts +0 -16
  560. package/dist/types/components/rightsManagementDap.d.ts +0 -16
  561. package/dist/types/components/rightsManagementDarp.d.ts +0 -16
  562. package/dist/types/models/config/authenticationGeneratorComponentConfig.d.ts +0 -9
  563. package/dist/types/models/config/backgroundTaskConnectorConfig.d.ts +0 -9
  564. package/dist/types/models/config/dataSpaceConnectorComponentConfig.d.ts +0 -17
  565. package/dist/types/models/config/rightsManagementDapComponentConfig.d.ts +0 -16
  566. package/dist/types/models/config/rightsManagementDarpComponentConfig.d.ts +0 -12
  567. package/dist/types/models/types/authenticationGeneratorComponentType.d.ts +0 -13
  568. package/dist/types/models/types/backgroundTaskConnectorType.d.ts +0 -13
  569. package/dist/types/models/types/dataSpaceConnectorComponentType.d.ts +0 -21
  570. package/dist/types/models/types/rightsManagementDapComponentType.d.ts +0 -17
  571. package/dist/types/models/types/rightsManagementDarpComponentType.d.ts +0 -13
  572. package/docs/reference/functions/initialiseAuthenticationGeneratorComponent.md +0 -31
  573. package/docs/reference/functions/initialiseBackgroundTaskConnector.md +0 -31
  574. package/docs/reference/functions/initialiseDataSpaceConnectorComponent.md +0 -31
  575. package/docs/reference/functions/initialiseRightsManagementDapComponent.md +0 -31
  576. package/docs/reference/functions/initialiseRightsManagementDarpComponent.md +0 -31
  577. package/docs/reference/type-aliases/AuthenticationGeneratorComponentConfig.md +0 -17
  578. package/docs/reference/type-aliases/AuthenticationGeneratorComponentType.md +0 -5
  579. package/docs/reference/type-aliases/BackgroundTaskConnectorConfig.md +0 -17
  580. package/docs/reference/type-aliases/BackgroundTaskConnectorType.md +0 -5
  581. package/docs/reference/type-aliases/DataSpaceConnectorComponentConfig.md +0 -5
  582. package/docs/reference/type-aliases/DataSpaceConnectorComponentType.md +0 -5
  583. package/docs/reference/type-aliases/RightsManagementDapComponentConfig.md +0 -5
  584. package/docs/reference/type-aliases/RightsManagementDapComponentType.md +0 -5
  585. package/docs/reference/type-aliases/RightsManagementDarpComponentConfig.md +0 -23
  586. package/docs/reference/type-aliases/RightsManagementDarpComponentType.md +0 -5
  587. package/docs/reference/variables/AuthenticationGeneratorComponentType.md +0 -13
  588. package/docs/reference/variables/BackgroundTaskConnectorType.md +0 -13
  589. package/docs/reference/variables/RightsManagementDapComponentType.md +0 -19
  590. package/docs/reference/variables/RightsManagementDarpComponentType.md +0 -13
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # TWIN Engine Types
2
2
 
3
- The data types to use in an engine.
3
+ Engine Types contains component and connector type definitions used to compose runtime capabilities. It also includes helpers for retrieving and merging configuration so engine setup remains consistent as integrations grow.
4
4
 
5
5
  ## Installation
6
6
 
@@ -1,5 +1,3 @@
1
- // Copyright 2024 IOTA Stiftung.
2
- // SPDX-License-Identifier: Apache-2.0.
3
1
  import { NftAttestationConnector } from "@twin.org/attestation-connector-nft";
4
2
  import { AttestationConnectorFactory } from "@twin.org/attestation-models";
5
3
  import { AttestationRestClient } from "@twin.org/attestation-rest-client";
@@ -7,27 +5,27 @@ import { AttestationService } from "@twin.org/attestation-service";
7
5
  import { ComponentFactory } from "@twin.org/core";
8
6
  import { AttestationComponentType } from "../models/types/attestationComponentType.js";
9
7
  import { AttestationConnectorType } from "../models/types/attestationConnectorType.js";
8
+ import { EngineTypeHelper } from "../utils/engineTypeHelper.js";
10
9
  /**
11
10
  * Initialise the attestation connector.
12
11
  * @param engineCore The engine core.
13
12
  * @param context The context for the engine.
14
- * @param instanceConfig The instance config.
13
+ * @param instanceConfig The instance config type.
15
14
  * @returns The instance created and the factory for it.
16
15
  */
17
- export async function initialiseAttestationConnector(engineCore, context, instanceConfig) {
18
- let component;
19
- let instanceType;
16
+ export function initialiseAttestationConnector(engineCore, context, instanceConfig) {
17
+ let createComponent;
18
+ let instanceTypeName;
20
19
  if (instanceConfig.type === AttestationConnectorType.Nft) {
21
- component = new NftAttestationConnector({
20
+ createComponent = (createConfig) => new NftAttestationConnector(EngineTypeHelper.mergeConfig({
22
21
  identityConnectorType: engineCore.getRegisteredInstanceType("identityConnector"),
23
- nftConnectorType: engineCore.getRegisteredInstanceType("nftConnector"),
24
- ...instanceConfig.options
25
- });
26
- instanceType = NftAttestationConnector.NAMESPACE;
22
+ nftConnectorType: engineCore.getRegisteredInstanceType("nftConnector")
23
+ }, createConfig.options));
24
+ instanceTypeName = NftAttestationConnector.NAMESPACE;
27
25
  }
28
26
  return {
29
- component,
30
- instanceType,
27
+ createComponent,
28
+ instanceTypeName,
31
29
  factory: AttestationConnectorFactory
32
30
  };
33
31
  }
@@ -38,22 +36,20 @@ export async function initialiseAttestationConnector(engineCore, context, instan
38
36
  * @param instanceConfig The instance config.
39
37
  * @returns The instance created and the factory for it.
40
38
  */
41
- export async function initialiseAttestationComponent(engineCore, context, instanceConfig) {
42
- let component;
43
- let instanceType;
39
+ export function initialiseAttestationComponent(engineCore, context, instanceConfig) {
40
+ let createComponent;
41
+ let instanceTypeName;
44
42
  if (instanceConfig.type === AttestationComponentType.Service) {
45
- component = new AttestationService({
46
- ...instanceConfig.options
47
- });
48
- instanceType = "attestation-service";
43
+ createComponent = (createConfig) => new AttestationService(EngineTypeHelper.mergeConfig(createConfig.options));
44
+ instanceTypeName = "attestation-service";
49
45
  }
50
46
  else if (instanceConfig.type === AttestationComponentType.RestClient) {
51
- component = new AttestationRestClient(instanceConfig.options);
52
- instanceType = "attestation-rest-client";
47
+ createComponent = (createConfig) => new AttestationRestClient(EngineTypeHelper.mergeConfig(createConfig.options));
48
+ instanceTypeName = "attestation-rest-client";
53
49
  }
54
50
  return {
55
- component,
56
- instanceType,
51
+ createComponent: createComponent,
52
+ instanceTypeName,
57
53
  factory: ComponentFactory
58
54
  };
59
55
  }
@@ -1 +1 @@
1
- {"version":3,"file":"attestation.js","sourceRoot":"","sources":["../../../src/components/attestation.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EACN,2BAA2B,EAG3B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAmB,MAAM,gBAAgB,CAAC;AAMnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AACvF,OAAO,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AAEvF;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,8BAA8B,CACnD,UAAsC,EACtC,OAA0C,EAC1C,cAA0C;IAM1C,IAAI,SAA4C,CAAC;IACjD,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,wBAAwB,CAAC,GAAG,EAAE,CAAC;QAC1D,SAAS,GAAG,IAAI,uBAAuB,CAAC;YACvC,qBAAqB,EAAE,UAAU,CAAC,yBAAyB,CAAC,mBAAmB,CAAC;YAChF,gBAAgB,EAAE,UAAU,CAAC,yBAAyB,CAAC,cAAc,CAAC;YACtE,GAAG,cAAc,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,YAAY,GAAG,uBAAuB,CAAC,SAAS,CAAC;IAClD,CAAC;IAED,OAAO;QACN,SAAS;QACT,YAAY;QACZ,OAAO,EAAE,2BAA2B;KACpC,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,8BAA8B,CACnD,UAAsC,EACtC,OAA0C,EAC1C,cAA0C;IAE1C,IAAI,SAA4C,CAAC;IACjD,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,wBAAwB,CAAC,OAAO,EAAE,CAAC;QAC9D,SAAS,GAAG,IAAI,kBAAkB,CAAC;YAClC,GAAG,cAAc,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,YAAY,wBAAsC,CAAC;IACpD,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,wBAAwB,CAAC,UAAU,EAAE,CAAC;QACxE,SAAS,GAAG,IAAI,qBAAqB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC9D,YAAY,4BAAyC,CAAC;IACvD,CAAC;IAED,OAAO;QACN,SAAS;QACT,YAAY;QACZ,OAAO,EAAE,gBAAgB;KACzB,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { NftAttestationConnector } from \"@twin.org/attestation-connector-nft\";\nimport {\n\tAttestationConnectorFactory,\n\ttype IAttestationComponent,\n\ttype IAttestationConnector\n} from \"@twin.org/attestation-models\";\nimport { AttestationRestClient } from \"@twin.org/attestation-rest-client\";\nimport { AttestationService } from \"@twin.org/attestation-service\";\nimport { ComponentFactory, type IComponent } from \"@twin.org/core\";\nimport type { IEngineCore, IEngineCoreContext } from \"@twin.org/engine-models\";\nimport { nameofKebabCase } from \"@twin.org/nameof\";\nimport type { AttestationComponentConfig } from \"../models/config/attestationComponentConfig.js\";\nimport type { AttestationConnectorConfig } from \"../models/config/attestationConnectorConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { AttestationComponentType } from \"../models/types/attestationComponentType.js\";\nimport { AttestationConnectorType } from \"../models/types/attestationConnectorType.js\";\n\n/**\n * Initialise the attestation connector.\n * @param engineCore The engine core.\n * @param context The context for the engine.\n * @param instanceConfig The instance config.\n * @returns The instance created and the factory for it.\n */\nexport async function initialiseAttestationConnector(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: AttestationConnectorConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof AttestationConnectorFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: IAttestationConnector | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === AttestationConnectorType.Nft) {\n\t\tcomponent = new NftAttestationConnector({\n\t\t\tidentityConnectorType: engineCore.getRegisteredInstanceType(\"identityConnector\"),\n\t\t\tnftConnectorType: engineCore.getRegisteredInstanceType(\"nftConnector\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = NftAttestationConnector.NAMESPACE;\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: AttestationConnectorFactory\n\t};\n}\n\n/**\n * Initialise the attestation component.\n * @param engineCore The engine core.\n * @param context The context for the engine.\n * @param instanceConfig The instance config.\n * @returns The instance created and the factory for it.\n */\nexport async function initialiseAttestationComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: AttestationComponentConfig\n): Promise<{ instanceType?: string; factory?: typeof ComponentFactory; component?: IComponent }> {\n\tlet component: IAttestationComponent | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === AttestationComponentType.Service) {\n\t\tcomponent = new AttestationService({\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = nameofKebabCase(AttestationService);\n\t} else if (instanceConfig.type === AttestationComponentType.RestClient) {\n\t\tcomponent = new AttestationRestClient(instanceConfig.options);\n\t\tinstanceType = nameofKebabCase(AttestationRestClient);\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
1
+ {"version":3,"file":"attestation.js","sourceRoot":"","sources":["../../../src/components/attestation.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAmB,MAAM,gBAAgB,CAAC;AAUnE,OAAO,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AACvF,OAAO,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,UAAU,8BAA8B,CAC7C,UAAsC,EACtC,OAA0C,EAC1C,cAA0C;IAE1C,IAAI,eAAe,CAAC;IACpB,IAAI,gBAAgB,CAAC;IAErB,IAAI,cAAc,CAAC,IAAI,KAAK,wBAAwB,CAAC,GAAG,EAAE,CAAC;QAC1D,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE,CACzD,IAAI,uBAAuB,CAC1B,gBAAgB,CAAC,WAAW,CAC3B;YACC,qBAAqB,EAAE,UAAU,CAAC,yBAAyB,CAAC,mBAAmB,CAAC;YAChF,gBAAgB,EAAE,UAAU,CAAC,yBAAyB,CAAC,cAAc,CAAC;SACtE,EACD,YAAY,CAAC,OAAO,CACpB,CACD,CAAC;QACH,gBAAgB,GAAG,uBAAuB,CAAC,SAAS,CAAC;IACtD,CAAC;IAED,OAAO;QACN,eAAe;QACf,gBAAgB;QAChB,OAAO,EAAE,2BAA2B;KACpC,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,8BAA8B,CAC7C,UAAsC,EACtC,OAA0C,EAC1C,cAA0C;IAE1C,IAAI,eAAe,CAAC;IACpB,IAAI,gBAAgB,CAAC;IAErB,IAAI,cAAc,CAAC,IAAI,KAAK,wBAAwB,CAAC,OAAO,EAAE,CAAC;QAC9D,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE,CACzD,IAAI,kBAAkB,CACrB,gBAAgB,CAAC,WAAW,CAAqC,YAAY,CAAC,OAAO,CAAC,CACtF,CAAC;QACH,gBAAgB,wBAAsC,CAAC;IACxD,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,wBAAwB,CAAC,UAAU,EAAE,CAAC;QACxE,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE,CACzD,IAAI,qBAAqB,CACxB,gBAAgB,CAAC,WAAW,CAAqC,YAAY,CAAC,OAAO,CAAC,CACtF,CAAC;QACH,gBAAgB,4BAAyC,CAAC;IAC3D,CAAC;IAED,OAAO;QACN,eAAe,EAAE,eAAsE;QACvF,gBAAgB;QAChB,OAAO,EAAE,gBAAgB;KACzB,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { INftAttestationConnectorConstructorOptions } from \"@twin.org/attestation-connector-nft\";\nimport { NftAttestationConnector } from \"@twin.org/attestation-connector-nft\";\nimport { AttestationConnectorFactory } from \"@twin.org/attestation-models\";\nimport { AttestationRestClient } from \"@twin.org/attestation-rest-client\";\nimport { AttestationService } from \"@twin.org/attestation-service\";\nimport { ComponentFactory, type IComponent } from \"@twin.org/core\";\nimport type {\n\tEngineTypeInitialiserReturn,\n\tIEngineCore,\n\tIEngineCoreContext\n} from \"@twin.org/engine-models\";\nimport { nameofKebabCase } from \"@twin.org/nameof\";\nimport type { AttestationComponentConfig } from \"../models/config/attestationComponentConfig.js\";\nimport type { AttestationConnectorConfig } from \"../models/config/attestationConnectorConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { AttestationComponentType } from \"../models/types/attestationComponentType.js\";\nimport { AttestationConnectorType } from \"../models/types/attestationConnectorType.js\";\nimport { EngineTypeHelper } from \"../utils/engineTypeHelper.js\";\n\n/**\n * Initialise the attestation connector.\n * @param engineCore The engine core.\n * @param context The context for the engine.\n * @param instanceConfig The instance config type.\n * @returns The instance created and the factory for it.\n */\nexport function initialiseAttestationConnector(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: AttestationConnectorConfig\n): EngineTypeInitialiserReturn<typeof instanceConfig, typeof AttestationConnectorFactory> {\n\tlet createComponent;\n\tlet instanceTypeName;\n\n\tif (instanceConfig.type === AttestationConnectorType.Nft) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) =>\n\t\t\tnew NftAttestationConnector(\n\t\t\t\tEngineTypeHelper.mergeConfig<INftAttestationConnectorConstructorOptions>(\n\t\t\t\t\t{\n\t\t\t\t\t\tidentityConnectorType: engineCore.getRegisteredInstanceType(\"identityConnector\"),\n\t\t\t\t\t\tnftConnectorType: engineCore.getRegisteredInstanceType(\"nftConnector\")\n\t\t\t\t\t},\n\t\t\t\t\tcreateConfig.options\n\t\t\t\t)\n\t\t\t);\n\t\tinstanceTypeName = NftAttestationConnector.NAMESPACE;\n\t}\n\n\treturn {\n\t\tcreateComponent,\n\t\tinstanceTypeName,\n\t\tfactory: AttestationConnectorFactory\n\t};\n}\n\n/**\n * Initialise the attestation component.\n * @param engineCore The engine core.\n * @param context The context for the engine.\n * @param instanceConfig The instance config.\n * @returns The instance created and the factory for it.\n */\nexport function initialiseAttestationComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: AttestationComponentConfig\n): EngineTypeInitialiserReturn<typeof instanceConfig, typeof ComponentFactory> {\n\tlet createComponent;\n\tlet instanceTypeName;\n\n\tif (instanceConfig.type === AttestationComponentType.Service) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) =>\n\t\t\tnew AttestationService(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(createConfig.options)\n\t\t\t);\n\t\tinstanceTypeName = nameofKebabCase(AttestationService);\n\t} else if (instanceConfig.type === AttestationComponentType.RestClient) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) =>\n\t\t\tnew AttestationRestClient(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(createConfig.options)\n\t\t\t);\n\t\tinstanceTypeName = nameofKebabCase(AttestationRestClient);\n\t}\n\n\treturn {\n\t\tcreateComponent: createComponent as (createConfig: typeof instanceConfig) => IComponent,\n\t\tinstanceTypeName,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
@@ -1,9 +1,12 @@
1
+ // Copyright 2024 IOTA Stiftung.
2
+ // SPDX-License-Identifier: Apache-2.0.
1
3
  import { AuditableItemGraphRestClient } from "@twin.org/auditable-item-graph-rest-client";
2
4
  import { AuditableItemGraphService, initSchema as initSchemaAuditableItemGraph } from "@twin.org/auditable-item-graph-service";
3
5
  import { ContextIdHelper, ContextIdKeys } from "@twin.org/context";
4
6
  import { ComponentFactory } from "@twin.org/core";
5
7
  import { initialiseEntityStorageConnector } from "./entityStorage.js";
6
8
  import { AuditableItemGraphComponentType } from "../models/types/auditableItemGraphComponentType.js";
9
+ import { EngineTypeHelper } from "../utils/engineTypeHelper.js";
7
10
  /**
8
11
  * Initialise the auditable item graph component.
9
12
  * @param engineCore The engine core.
@@ -11,33 +14,35 @@ import { AuditableItemGraphComponentType } from "../models/types/auditableItemGr
11
14
  * @param instanceConfig The instance config.
12
15
  * @returns The instance created and the factory for it.
13
16
  */
14
- export async function initialiseAuditableItemGraphComponent(engineCore, context, instanceConfig) {
15
- let component;
16
- let instanceType;
17
+ export function initialiseAuditableItemGraphComponent(engineCore, context, instanceConfig) {
18
+ let createComponent;
19
+ let instanceTypeName;
17
20
  if (instanceConfig.type === AuditableItemGraphComponentType.Service) {
18
- initSchemaAuditableItemGraph();
19
- initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.vertexEntityStorageType, "AuditableItemGraphVertex", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
20
- ContextIdKeys.Node,
21
- ContextIdKeys.Tenant
22
- ]));
23
- initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.changesetEntityStorageType, "AuditableItemGraphChangeset", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
24
- ContextIdKeys.Node,
25
- ContextIdKeys.Tenant
26
- ]));
27
- component = new AuditableItemGraphService({
28
- immutableProofComponentType: engineCore.getRegisteredInstanceType("immutableProofComponent"),
29
- eventBusComponentType: engineCore.getRegisteredInstanceTypeOptional("eventBusComponent"),
30
- ...instanceConfig.options
31
- });
32
- instanceType = "auditable-item-graph-service";
21
+ createComponent = (createConfig) => {
22
+ initSchemaAuditableItemGraph();
23
+ initialiseEntityStorageConnector(engineCore, context, createConfig.options?.vertexEntityStorageType, "AuditableItemGraphVertex", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
24
+ ContextIdKeys.Node,
25
+ ContextIdKeys.Tenant
26
+ ]));
27
+ initialiseEntityStorageConnector(engineCore, context, createConfig.options?.changesetEntityStorageType, "AuditableItemGraphChangeset", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
28
+ ContextIdKeys.Node,
29
+ ContextIdKeys.Tenant
30
+ ]));
31
+ return new AuditableItemGraphService(EngineTypeHelper.mergeConfig({
32
+ immutableProofComponentType: engineCore.getRegisteredInstanceType("immutableProofComponent"),
33
+ eventBusComponentType: engineCore.getRegisteredInstanceTypeOptional("eventBusComponent"),
34
+ telemetryComponentType: engineCore.getRegisteredInstanceTypeOptional("telemetryComponent")
35
+ }, createConfig.options));
36
+ };
37
+ instanceTypeName = "auditable-item-graph-service";
33
38
  }
34
39
  else if (instanceConfig.type === AuditableItemGraphComponentType.RestClient) {
35
- component = new AuditableItemGraphRestClient(instanceConfig.options);
36
- instanceType = "auditable-item-graph-rest-client";
40
+ createComponent = (createConfig) => new AuditableItemGraphRestClient(EngineTypeHelper.mergeConfig(createConfig.options));
41
+ instanceTypeName = "auditable-item-graph-rest-client";
37
42
  }
38
43
  return {
39
- component,
40
- instanceType,
44
+ createComponent: createComponent,
45
+ instanceTypeName,
41
46
  factory: ComponentFactory
42
47
  };
43
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"auditableItemGraph.js","sourceRoot":"","sources":["../../../src/components/auditableItemGraph.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,4BAA4B,EAAE,MAAM,4CAA4C,CAAC;AAC1F,OAAO,EAEN,yBAAyB,EAEzB,UAAU,IAAI,4BAA4B,EAC1C,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAmB,MAAM,gBAAgB,CAAC;AAGnE,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAGtE,OAAO,EAAE,+BAA+B,EAAE,MAAM,oDAAoD,CAAC;AAErG;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,qCAAqC,CAC1D,UAAsC,EACtC,OAA0C,EAC1C,cAAiD;IAEjD,IAAI,SAAmD,CAAC;IACxD,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,+BAA+B,CAAC,OAAO,EAAE,CAAC;QACrE,4BAA4B,EAAE,CAAC;QAE/B,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,cAAc,CAAC,OAAO,EAAE,uBAAuB,8BAE/C,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE;YACpE,aAAa,CAAC,IAAI;YAClB,aAAa,CAAC,MAAM;SACpB,CAAC,CACF,CAAC;QACF,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,cAAc,CAAC,OAAO,EAAE,0BAA0B,iCAElD,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE;YACpE,aAAa,CAAC,IAAI;YAClB,aAAa,CAAC,MAAM;SACpB,CAAC,CACF,CAAC;QAEF,SAAS,GAAG,IAAI,yBAAyB,CAAC;YACzC,2BAA2B,EAAE,UAAU,CAAC,yBAAyB,CAAC,yBAAyB,CAAC;YAC5F,qBAAqB,EAAE,UAAU,CAAC,iCAAiC,CAAC,mBAAmB,CAAC;YACxF,GAAG,cAAc,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,YAAY,iCAA6C,CAAC;IAC3D,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,+BAA+B,CAAC,UAAU,EAAE,CAAC;QAC/E,SAAS,GAAG,IAAI,4BAA4B,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACrE,YAAY,qCAAgD,CAAC;IAC9D,CAAC;IAED,OAAO;QACN,SAAS;QACT,YAAY;QACZ,OAAO,EAAE,gBAAgB;KACzB,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IAuditableItemGraphComponent } from \"@twin.org/auditable-item-graph-models\";\nimport { AuditableItemGraphRestClient } from \"@twin.org/auditable-item-graph-rest-client\";\nimport {\n\ttype AuditableItemGraphChangeset,\n\tAuditableItemGraphService,\n\ttype AuditableItemGraphVertex,\n\tinitSchema as initSchemaAuditableItemGraph\n} from \"@twin.org/auditable-item-graph-service\";\nimport { ContextIdHelper, ContextIdKeys } from \"@twin.org/context\";\nimport { ComponentFactory, type IComponent } from \"@twin.org/core\";\nimport type { IEngineCore, IEngineCoreContext } from \"@twin.org/engine-models\";\nimport { nameof, nameofKebabCase } from \"@twin.org/nameof\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { AuditableItemGraphComponentConfig } from \"../models/config/auditableItemGraphComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { AuditableItemGraphComponentType } from \"../models/types/auditableItemGraphComponentType.js\";\n\n/**\n * Initialise the auditable item graph component.\n * @param engineCore The engine core.\n * @param context The context for the engine.\n * @param instanceConfig The instance config.\n * @returns The instance created and the factory for it.\n */\nexport async function initialiseAuditableItemGraphComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: AuditableItemGraphComponentConfig\n): Promise<{ instanceType?: string; factory?: typeof ComponentFactory; component?: IComponent }> {\n\tlet component: IAuditableItemGraphComponent | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === AuditableItemGraphComponentType.Service) {\n\t\tinitSchemaAuditableItemGraph();\n\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.vertexEntityStorageType,\n\t\t\tnameof<AuditableItemGraphVertex>(),\n\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [\n\t\t\t\tContextIdKeys.Node,\n\t\t\t\tContextIdKeys.Tenant\n\t\t\t])\n\t\t);\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.changesetEntityStorageType,\n\t\t\tnameof<AuditableItemGraphChangeset>(),\n\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [\n\t\t\t\tContextIdKeys.Node,\n\t\t\t\tContextIdKeys.Tenant\n\t\t\t])\n\t\t);\n\n\t\tcomponent = new AuditableItemGraphService({\n\t\t\timmutableProofComponentType: engineCore.getRegisteredInstanceType(\"immutableProofComponent\"),\n\t\t\teventBusComponentType: engineCore.getRegisteredInstanceTypeOptional(\"eventBusComponent\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = nameofKebabCase(AuditableItemGraphService);\n\t} else if (instanceConfig.type === AuditableItemGraphComponentType.RestClient) {\n\t\tcomponent = new AuditableItemGraphRestClient(instanceConfig.options);\n\t\tinstanceType = nameofKebabCase(AuditableItemGraphRestClient);\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
1
+ {"version":3,"file":"auditableItemGraph.js","sourceRoot":"","sources":["../../../src/components/auditableItemGraph.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,4BAA4B,EAAE,MAAM,4CAA4C,CAAC;AAC1F,OAAO,EAEN,yBAAyB,EAEzB,UAAU,IAAI,4BAA4B,EAC1C,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAmB,MAAM,gBAAgB,CAAC;AAOnE,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAGtE,OAAO,EAAE,+BAA+B,EAAE,MAAM,oDAAoD,CAAC;AACrG,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,UAAU,qCAAqC,CACpD,UAAsC,EACtC,OAA0C,EAC1C,cAAiD;IAEjD,IAAI,eAAe,CAAC;IACpB,IAAI,gBAAgB,CAAC;IAErB,IAAI,cAAc,CAAC,IAAI,KAAK,+BAA+B,CAAC,OAAO,EAAE,CAAC;QACrE,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE;YACzD,4BAA4B,EAAE,CAAC;YAE/B,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,YAAY,CAAC,OAAO,EAAE,uBAAuB,8BAE7C,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE;gBACpE,aAAa,CAAC,IAAI;gBAClB,aAAa,CAAC,MAAM;aACpB,CAAC,CACF,CAAC;YACF,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,YAAY,CAAC,OAAO,EAAE,0BAA0B,iCAEhD,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE;gBACpE,aAAa,CAAC,IAAI;gBAClB,aAAa,CAAC,MAAM;aACpB,CAAC,CACF,CAAC;YAEF,OAAO,IAAI,yBAAyB,CACnC,gBAAgB,CAAC,WAAW,CAC3B;gBACC,2BAA2B,EAC1B,UAAU,CAAC,yBAAyB,CAAC,yBAAyB,CAAC;gBAChE,qBAAqB,EACpB,UAAU,CAAC,iCAAiC,CAAC,mBAAmB,CAAC;gBAClE,sBAAsB,EACrB,UAAU,CAAC,iCAAiC,CAAC,oBAAoB,CAAC;aACnE,EACD,YAAY,CAAC,OAAO,CACpB,CACD,CAAC;QACH,CAAC,CAAC;QACF,gBAAgB,iCAA6C,CAAC;IAC/D,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,+BAA+B,CAAC,UAAU,EAAE,CAAC;QAC/E,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE,CACzD,IAAI,4BAA4B,CAC/B,gBAAgB,CAAC,WAAW,CAAqC,YAAY,CAAC,OAAO,CAAC,CACtF,CAAC;QACH,gBAAgB,qCAAgD,CAAC;IAClE,CAAC;IAED,OAAO;QACN,eAAe,EAAE,eAAsE;QACvF,gBAAgB;QAChB,OAAO,EAAE,gBAAgB;KACzB,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { AuditableItemGraphRestClient } from \"@twin.org/auditable-item-graph-rest-client\";\nimport {\n\ttype AuditableItemGraphChangeset,\n\tAuditableItemGraphService,\n\ttype AuditableItemGraphVertex,\n\tinitSchema as initSchemaAuditableItemGraph\n} from \"@twin.org/auditable-item-graph-service\";\nimport { ContextIdHelper, ContextIdKeys } from \"@twin.org/context\";\nimport { ComponentFactory, type IComponent } from \"@twin.org/core\";\nimport type {\n\tEngineTypeInitialiserReturn,\n\tIEngineCore,\n\tIEngineCoreContext\n} from \"@twin.org/engine-models\";\nimport { nameof, nameofKebabCase } from \"@twin.org/nameof\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { AuditableItemGraphComponentConfig } from \"../models/config/auditableItemGraphComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { AuditableItemGraphComponentType } from \"../models/types/auditableItemGraphComponentType.js\";\nimport { EngineTypeHelper } from \"../utils/engineTypeHelper.js\";\n\n/**\n * Initialise the auditable item graph component.\n * @param engineCore The engine core.\n * @param context The context for the engine.\n * @param instanceConfig The instance config.\n * @returns The instance created and the factory for it.\n */\nexport function initialiseAuditableItemGraphComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: AuditableItemGraphComponentConfig\n): EngineTypeInitialiserReturn<typeof instanceConfig, typeof ComponentFactory> {\n\tlet createComponent;\n\tlet instanceTypeName;\n\n\tif (instanceConfig.type === AuditableItemGraphComponentType.Service) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) => {\n\t\t\tinitSchemaAuditableItemGraph();\n\n\t\t\tinitialiseEntityStorageConnector(\n\t\t\t\tengineCore,\n\t\t\t\tcontext,\n\t\t\t\tcreateConfig.options?.vertexEntityStorageType,\n\t\t\t\tnameof<AuditableItemGraphVertex>(),\n\t\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [\n\t\t\t\t\tContextIdKeys.Node,\n\t\t\t\t\tContextIdKeys.Tenant\n\t\t\t\t])\n\t\t\t);\n\t\t\tinitialiseEntityStorageConnector(\n\t\t\t\tengineCore,\n\t\t\t\tcontext,\n\t\t\t\tcreateConfig.options?.changesetEntityStorageType,\n\t\t\t\tnameof<AuditableItemGraphChangeset>(),\n\t\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [\n\t\t\t\t\tContextIdKeys.Node,\n\t\t\t\t\tContextIdKeys.Tenant\n\t\t\t\t])\n\t\t\t);\n\n\t\t\treturn new AuditableItemGraphService(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(\n\t\t\t\t\t{\n\t\t\t\t\t\timmutableProofComponentType:\n\t\t\t\t\t\t\tengineCore.getRegisteredInstanceType(\"immutableProofComponent\"),\n\t\t\t\t\t\teventBusComponentType:\n\t\t\t\t\t\t\tengineCore.getRegisteredInstanceTypeOptional(\"eventBusComponent\"),\n\t\t\t\t\t\ttelemetryComponentType:\n\t\t\t\t\t\t\tengineCore.getRegisteredInstanceTypeOptional(\"telemetryComponent\")\n\t\t\t\t\t},\n\t\t\t\t\tcreateConfig.options\n\t\t\t\t)\n\t\t\t);\n\t\t};\n\t\tinstanceTypeName = nameofKebabCase(AuditableItemGraphService);\n\t} else if (instanceConfig.type === AuditableItemGraphComponentType.RestClient) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) =>\n\t\t\tnew AuditableItemGraphRestClient(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(createConfig.options)\n\t\t\t);\n\t\tinstanceTypeName = nameofKebabCase(AuditableItemGraphRestClient);\n\t}\n\n\treturn {\n\t\tcreateComponent: createComponent as (createConfig: typeof instanceConfig) => IComponent,\n\t\tinstanceTypeName,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
@@ -1,9 +1,12 @@
1
+ // Copyright 2024 IOTA Stiftung.
2
+ // SPDX-License-Identifier: Apache-2.0.
1
3
  import { AuditableItemStreamRestClient } from "@twin.org/auditable-item-stream-rest-client";
2
4
  import { AuditableItemStreamService, initSchema as initSchemaAuditableItemStream } from "@twin.org/auditable-item-stream-service";
3
5
  import { ContextIdHelper, ContextIdKeys } from "@twin.org/context";
4
6
  import { ComponentFactory } from "@twin.org/core";
5
7
  import { initialiseEntityStorageConnector } from "./entityStorage.js";
6
8
  import { AuditableItemStreamComponentType } from "../models/types/auditableItemStreamComponentType.js";
9
+ import { EngineTypeHelper } from "../utils/engineTypeHelper.js";
7
10
  /**
8
11
  * Initialise the auditable item stream component.
9
12
  * @param engineCore The engine core.
@@ -11,33 +14,35 @@ import { AuditableItemStreamComponentType } from "../models/types/auditableItemS
11
14
  * @param instanceConfig The instance config.
12
15
  * @returns The instance created and the factory for it.
13
16
  */
14
- export async function initialiseAuditableItemStreamComponent(engineCore, context, instanceConfig) {
15
- let component;
16
- let instanceType;
17
+ export function initialiseAuditableItemStreamComponent(engineCore, context, instanceConfig) {
18
+ let createComponent;
19
+ let instanceTypeName;
17
20
  if (instanceConfig.type === AuditableItemStreamComponentType.Service) {
18
- initSchemaAuditableItemStream();
19
- initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.streamEntityStorageType, "AuditableItemStream", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
20
- ContextIdKeys.Node,
21
- ContextIdKeys.Tenant
22
- ]));
23
- initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.streamEntryEntityStorageType, "AuditableItemStreamEntry", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
24
- ContextIdKeys.Node,
25
- ContextIdKeys.Tenant
26
- ]));
27
- component = new AuditableItemStreamService({
28
- immutableProofComponentType: engineCore.getRegisteredInstanceType("immutableProofComponent"),
29
- eventBusComponentType: engineCore.getRegisteredInstanceTypeOptional("eventBusComponent"),
30
- ...instanceConfig.options
31
- });
32
- instanceType = "auditable-item-stream-service";
21
+ createComponent = (createConfig) => {
22
+ initSchemaAuditableItemStream();
23
+ initialiseEntityStorageConnector(engineCore, context, createConfig.options?.streamEntityStorageType, "AuditableItemStream", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
24
+ ContextIdKeys.Node,
25
+ ContextIdKeys.Tenant
26
+ ]));
27
+ initialiseEntityStorageConnector(engineCore, context, createConfig.options?.streamEntryEntityStorageType, "AuditableItemStreamEntry", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
28
+ ContextIdKeys.Node,
29
+ ContextIdKeys.Tenant
30
+ ]));
31
+ return new AuditableItemStreamService(EngineTypeHelper.mergeConfig({
32
+ immutableProofComponentType: engineCore.getRegisteredInstanceType("immutableProofComponent"),
33
+ eventBusComponentType: engineCore.getRegisteredInstanceTypeOptional("eventBusComponent"),
34
+ telemetryComponentType: engineCore.getRegisteredInstanceTypeOptional("telemetryComponent")
35
+ }, createConfig.options));
36
+ };
37
+ instanceTypeName = "auditable-item-stream-service";
33
38
  }
34
39
  else if (instanceConfig.type === AuditableItemStreamComponentType.RestClient) {
35
- component = new AuditableItemStreamRestClient(instanceConfig.options);
36
- instanceType = "auditable-item-stream-rest-client";
40
+ createComponent = (createConfig) => new AuditableItemStreamRestClient(EngineTypeHelper.mergeConfig(createConfig.options));
41
+ instanceTypeName = "auditable-item-stream-rest-client";
37
42
  }
38
43
  return {
39
- component,
40
- instanceType,
44
+ createComponent: createComponent,
45
+ instanceTypeName,
41
46
  factory: ComponentFactory
42
47
  };
43
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"auditableItemStream.js","sourceRoot":"","sources":["../../../src/components/auditableItemStream.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,6BAA6B,EAAE,MAAM,6CAA6C,CAAC;AAC5F,OAAO,EAGN,0BAA0B,EAC1B,UAAU,IAAI,6BAA6B,EAC3C,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAmB,MAAM,gBAAgB,CAAC;AAGnE,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAGtE,OAAO,EAAE,gCAAgC,EAAE,MAAM,qDAAqD,CAAC;AAEvG;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,sCAAsC,CAC3D,UAAsC,EACtC,OAA0C,EAC1C,cAAkD;IAElD,IAAI,SAAoD,CAAC;IACzD,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,gCAAgC,CAAC,OAAO,EAAE,CAAC;QACtE,6BAA6B,EAAE,CAAC;QAEhC,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,cAAc,CAAC,OAAO,EAAE,uBAAuB,yBAE/C,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE;YACpE,aAAa,CAAC,IAAI;YAClB,aAAa,CAAC,MAAM;SACpB,CAAC,CACF,CAAC;QACF,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,cAAc,CAAC,OAAO,EAAE,4BAA4B,8BAEpD,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE;YACpE,aAAa,CAAC,IAAI;YAClB,aAAa,CAAC,MAAM;SACpB,CAAC,CACF,CAAC;QAEF,SAAS,GAAG,IAAI,0BAA0B,CAAC;YAC1C,2BAA2B,EAAE,UAAU,CAAC,yBAAyB,CAAC,yBAAyB,CAAC;YAC5F,qBAAqB,EAAE,UAAU,CAAC,iCAAiC,CAAC,mBAAmB,CAAC;YACxF,GAAG,cAAc,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,YAAY,kCAA8C,CAAC;IAC5D,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,gCAAgC,CAAC,UAAU,EAAE,CAAC;QAChF,SAAS,GAAG,IAAI,6BAA6B,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACtE,YAAY,sCAAiD,CAAC;IAC/D,CAAC;IAED,OAAO;QACN,SAAS;QACT,YAAY;QACZ,OAAO,EAAE,gBAAgB;KACzB,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IAuditableItemStreamComponent } from \"@twin.org/auditable-item-stream-models\";\nimport { AuditableItemStreamRestClient } from \"@twin.org/auditable-item-stream-rest-client\";\nimport {\n\ttype AuditableItemStream,\n\ttype AuditableItemStreamEntry,\n\tAuditableItemStreamService,\n\tinitSchema as initSchemaAuditableItemStream\n} from \"@twin.org/auditable-item-stream-service\";\nimport { ContextIdHelper, ContextIdKeys } from \"@twin.org/context\";\nimport { ComponentFactory, type IComponent } from \"@twin.org/core\";\nimport type { IEngineCore, IEngineCoreContext } from \"@twin.org/engine-models\";\nimport { nameof, nameofKebabCase } from \"@twin.org/nameof\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { AuditableItemStreamComponentConfig } from \"../models/config/auditableItemStreamComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { AuditableItemStreamComponentType } from \"../models/types/auditableItemStreamComponentType.js\";\n\n/**\n * Initialise the auditable item stream component.\n * @param engineCore The engine core.\n * @param context The context for the engine.\n * @param instanceConfig The instance config.\n * @returns The instance created and the factory for it.\n */\nexport async function initialiseAuditableItemStreamComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: AuditableItemStreamComponentConfig\n): Promise<{ instanceType?: string; factory?: typeof ComponentFactory; component?: IComponent }> {\n\tlet component: IAuditableItemStreamComponent | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === AuditableItemStreamComponentType.Service) {\n\t\tinitSchemaAuditableItemStream();\n\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.streamEntityStorageType,\n\t\t\tnameof<AuditableItemStream>(),\n\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [\n\t\t\t\tContextIdKeys.Node,\n\t\t\t\tContextIdKeys.Tenant\n\t\t\t])\n\t\t);\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.streamEntryEntityStorageType,\n\t\t\tnameof<AuditableItemStreamEntry>(),\n\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [\n\t\t\t\tContextIdKeys.Node,\n\t\t\t\tContextIdKeys.Tenant\n\t\t\t])\n\t\t);\n\n\t\tcomponent = new AuditableItemStreamService({\n\t\t\timmutableProofComponentType: engineCore.getRegisteredInstanceType(\"immutableProofComponent\"),\n\t\t\teventBusComponentType: engineCore.getRegisteredInstanceTypeOptional(\"eventBusComponent\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = nameofKebabCase(AuditableItemStreamService);\n\t} else if (instanceConfig.type === AuditableItemStreamComponentType.RestClient) {\n\t\tcomponent = new AuditableItemStreamRestClient(instanceConfig.options);\n\t\tinstanceType = nameofKebabCase(AuditableItemStreamRestClient);\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
1
+ {"version":3,"file":"auditableItemStream.js","sourceRoot":"","sources":["../../../src/components/auditableItemStream.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,6BAA6B,EAAE,MAAM,6CAA6C,CAAC;AAC5F,OAAO,EAGN,0BAA0B,EAC1B,UAAU,IAAI,6BAA6B,EAC3C,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAmB,MAAM,gBAAgB,CAAC;AAOnE,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAGtE,OAAO,EAAE,gCAAgC,EAAE,MAAM,qDAAqD,CAAC;AACvG,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,UAAU,sCAAsC,CACrD,UAAsC,EACtC,OAA0C,EAC1C,cAAkD;IAElD,IAAI,eAAe,CAAC;IACpB,IAAI,gBAAgB,CAAC;IAErB,IAAI,cAAc,CAAC,IAAI,KAAK,gCAAgC,CAAC,OAAO,EAAE,CAAC;QACtE,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE;YACzD,6BAA6B,EAAE,CAAC;YAEhC,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,YAAY,CAAC,OAAO,EAAE,uBAAuB,yBAE7C,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE;gBACpE,aAAa,CAAC,IAAI;gBAClB,aAAa,CAAC,MAAM;aACpB,CAAC,CACF,CAAC;YACF,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,YAAY,CAAC,OAAO,EAAE,4BAA4B,8BAElD,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE;gBACpE,aAAa,CAAC,IAAI;gBAClB,aAAa,CAAC,MAAM;aACpB,CAAC,CACF,CAAC;YAEF,OAAO,IAAI,0BAA0B,CACpC,gBAAgB,CAAC,WAAW,CAC3B;gBACC,2BAA2B,EAC1B,UAAU,CAAC,yBAAyB,CAAC,yBAAyB,CAAC;gBAChE,qBAAqB,EACpB,UAAU,CAAC,iCAAiC,CAAC,mBAAmB,CAAC;gBAClE,sBAAsB,EACrB,UAAU,CAAC,iCAAiC,CAAC,oBAAoB,CAAC;aACnE,EACD,YAAY,CAAC,OAAO,CACpB,CACD,CAAC;QACH,CAAC,CAAC;QACF,gBAAgB,kCAA8C,CAAC;IAChE,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,gCAAgC,CAAC,UAAU,EAAE,CAAC;QAChF,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE,CACzD,IAAI,6BAA6B,CAChC,gBAAgB,CAAC,WAAW,CAAqC,YAAY,CAAC,OAAO,CAAC,CACtF,CAAC;QACH,gBAAgB,sCAAiD,CAAC;IACnE,CAAC;IAED,OAAO;QACN,eAAe,EAAE,eAAsE;QACvF,gBAAgB;QAChB,OAAO,EAAE,gBAAgB;KACzB,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { AuditableItemStreamRestClient } from \"@twin.org/auditable-item-stream-rest-client\";\nimport {\n\ttype AuditableItemStream,\n\ttype AuditableItemStreamEntry,\n\tAuditableItemStreamService,\n\tinitSchema as initSchemaAuditableItemStream\n} from \"@twin.org/auditable-item-stream-service\";\nimport { ContextIdHelper, ContextIdKeys } from \"@twin.org/context\";\nimport { ComponentFactory, type IComponent } from \"@twin.org/core\";\nimport type {\n\tEngineTypeInitialiserReturn,\n\tIEngineCore,\n\tIEngineCoreContext\n} from \"@twin.org/engine-models\";\nimport { nameof, nameofKebabCase } from \"@twin.org/nameof\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { AuditableItemStreamComponentConfig } from \"../models/config/auditableItemStreamComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { AuditableItemStreamComponentType } from \"../models/types/auditableItemStreamComponentType.js\";\nimport { EngineTypeHelper } from \"../utils/engineTypeHelper.js\";\n\n/**\n * Initialise the auditable item stream component.\n * @param engineCore The engine core.\n * @param context The context for the engine.\n * @param instanceConfig The instance config.\n * @returns The instance created and the factory for it.\n */\nexport function initialiseAuditableItemStreamComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: AuditableItemStreamComponentConfig\n): EngineTypeInitialiserReturn<typeof instanceConfig, typeof ComponentFactory> {\n\tlet createComponent;\n\tlet instanceTypeName;\n\n\tif (instanceConfig.type === AuditableItemStreamComponentType.Service) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) => {\n\t\t\tinitSchemaAuditableItemStream();\n\n\t\t\tinitialiseEntityStorageConnector(\n\t\t\t\tengineCore,\n\t\t\t\tcontext,\n\t\t\t\tcreateConfig.options?.streamEntityStorageType,\n\t\t\t\tnameof<AuditableItemStream>(),\n\t\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [\n\t\t\t\t\tContextIdKeys.Node,\n\t\t\t\t\tContextIdKeys.Tenant\n\t\t\t\t])\n\t\t\t);\n\t\t\tinitialiseEntityStorageConnector(\n\t\t\t\tengineCore,\n\t\t\t\tcontext,\n\t\t\t\tcreateConfig.options?.streamEntryEntityStorageType,\n\t\t\t\tnameof<AuditableItemStreamEntry>(),\n\t\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [\n\t\t\t\t\tContextIdKeys.Node,\n\t\t\t\t\tContextIdKeys.Tenant\n\t\t\t\t])\n\t\t\t);\n\n\t\t\treturn new AuditableItemStreamService(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(\n\t\t\t\t\t{\n\t\t\t\t\t\timmutableProofComponentType:\n\t\t\t\t\t\t\tengineCore.getRegisteredInstanceType(\"immutableProofComponent\"),\n\t\t\t\t\t\teventBusComponentType:\n\t\t\t\t\t\t\tengineCore.getRegisteredInstanceTypeOptional(\"eventBusComponent\"),\n\t\t\t\t\t\ttelemetryComponentType:\n\t\t\t\t\t\t\tengineCore.getRegisteredInstanceTypeOptional(\"telemetryComponent\")\n\t\t\t\t\t},\n\t\t\t\t\tcreateConfig.options\n\t\t\t\t)\n\t\t\t);\n\t\t};\n\t\tinstanceTypeName = nameofKebabCase(AuditableItemStreamService);\n\t} else if (instanceConfig.type === AuditableItemStreamComponentType.RestClient) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) =>\n\t\t\tnew AuditableItemStreamRestClient(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(createConfig.options)\n\t\t\t);\n\t\tinstanceTypeName = nameofKebabCase(AuditableItemStreamRestClient);\n\t}\n\n\treturn {\n\t\tcreateComponent: createComponent as (createConfig: typeof instanceConfig) => IComponent,\n\t\tinstanceTypeName,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
@@ -0,0 +1,41 @@
1
+ // Copyright 2026 IOTA Stiftung.
2
+ // SPDX-License-Identifier: Apache-2.0.
3
+ import { AutomationRestClient } from "@twin.org/automation-rest-client";
4
+ import { AutomationService, initSchema } from "@twin.org/automation-service";
5
+ import { ContextIdHelper, ContextIdKeys } from "@twin.org/context";
6
+ import { ComponentFactory } from "@twin.org/core";
7
+ import { initialiseEntityStorageConnector } from "./entityStorage.js";
8
+ import { AutomationComponentType } from "../models/types/automationComponentType.js";
9
+ import { EngineTypeHelper } from "../utils/engineTypeHelper.js";
10
+ /**
11
+ * Initialise the automation component.
12
+ * @param engineCore The engine core.
13
+ * @param context The context for the engine.
14
+ * @param instanceConfig The instance config.
15
+ * @returns The instance created and the factory for it.
16
+ */
17
+ export function initialiseAutomationComponent(engineCore, context, instanceConfig) {
18
+ let createComponent;
19
+ let instanceTypeName;
20
+ if (instanceConfig.type === AutomationComponentType.Service) {
21
+ createComponent = (createConfig) => {
22
+ initSchema();
23
+ initialiseEntityStorageConnector(engineCore, context, createConfig.options?.automationActionEntryStorageType, "AutomationActionEntry", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
24
+ ContextIdKeys.Node,
25
+ ContextIdKeys.Tenant
26
+ ]));
27
+ return new AutomationService(EngineTypeHelper.mergeConfig({ loggingComponentType: engineCore.getRegisteredInstanceType("loggingComponent") }, createConfig.options));
28
+ };
29
+ instanceTypeName = "automation-service";
30
+ }
31
+ else if (instanceConfig.type === AutomationComponentType.RestClient) {
32
+ createComponent = (createConfig) => new AutomationRestClient(EngineTypeHelper.mergeConfig(createConfig.options));
33
+ instanceTypeName = "automation-rest-client";
34
+ }
35
+ return {
36
+ createComponent: createComponent,
37
+ instanceTypeName,
38
+ factory: ComponentFactory
39
+ };
40
+ }
41
+ //# sourceMappingURL=automation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"automation.js","sourceRoot":"","sources":["../../../src/components/automation.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAEN,iBAAiB,EACjB,UAAU,EACV,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAOlD,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAGtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AACrF,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,UAAU,6BAA6B,CAC5C,UAAsC,EACtC,OAA0C,EAC1C,cAAyC;IAEzC,IAAI,eAAe,CAAC;IACpB,IAAI,gBAAgB,CAAC;IAErB,IAAI,cAAc,CAAC,IAAI,KAAK,uBAAuB,CAAC,OAAO,EAAE,CAAC;QAC7D,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE;YACzD,UAAU,EAAE,CAAC;YACb,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,YAAY,CAAC,OAAO,EAAE,gCAAgC,2BAEtD,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE;gBACpE,aAAa,CAAC,IAAI;gBAClB,aAAa,CAAC,MAAM;aACpB,CAAC,CACF,CAAC;YACF,OAAO,IAAI,iBAAiB,CAC3B,gBAAgB,CAAC,WAAW,CAC3B,EAAE,oBAAoB,EAAE,UAAU,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,EAAE,EAClF,YAAY,CAAC,OAAO,CACpB,CACD,CAAC;QACH,CAAC,CAAC;QACF,gBAAgB,uBAAqC,CAAC;IACvD,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,uBAAuB,CAAC,UAAU,EAAE,CAAC;QACvE,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE,CACzD,IAAI,oBAAoB,CACvB,gBAAgB,CAAC,WAAW,CAAqC,YAAY,CAAC,OAAO,CAAC,CACtF,CAAC;QACH,gBAAgB,2BAAwC,CAAC;IAC1D,CAAC;IAED,OAAO;QACN,eAAe,EAAE,eAAsE;QACvF,gBAAgB;QAChB,OAAO,EAAE,gBAAgB;KACzB,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2026 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { AutomationRestClient } from \"@twin.org/automation-rest-client\";\nimport {\n\ttype AutomationActionEntry,\n\tAutomationService,\n\tinitSchema\n} from \"@twin.org/automation-service\";\nimport { ContextIdHelper, ContextIdKeys } from \"@twin.org/context\";\nimport type { IComponent } from \"@twin.org/core\";\nimport { ComponentFactory } from \"@twin.org/core\";\nimport type {\n\tEngineTypeInitialiserReturn,\n\tIEngineCore,\n\tIEngineCoreContext\n} from \"@twin.org/engine-models\";\nimport { nameof, nameofKebabCase } from \"@twin.org/nameof\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { AutomationComponentConfig } from \"../models/config/automationComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { AutomationComponentType } from \"../models/types/automationComponentType.js\";\nimport { EngineTypeHelper } from \"../utils/engineTypeHelper.js\";\n\n/**\n * Initialise the automation component.\n * @param engineCore The engine core.\n * @param context The context for the engine.\n * @param instanceConfig The instance config.\n * @returns The instance created and the factory for it.\n */\nexport function initialiseAutomationComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: AutomationComponentConfig\n): EngineTypeInitialiserReturn<typeof instanceConfig, typeof ComponentFactory> {\n\tlet createComponent;\n\tlet instanceTypeName;\n\n\tif (instanceConfig.type === AutomationComponentType.Service) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) => {\n\t\t\tinitSchema();\n\t\t\tinitialiseEntityStorageConnector(\n\t\t\t\tengineCore,\n\t\t\t\tcontext,\n\t\t\t\tcreateConfig.options?.automationActionEntryStorageType,\n\t\t\t\tnameof<AutomationActionEntry>(),\n\t\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [\n\t\t\t\t\tContextIdKeys.Node,\n\t\t\t\t\tContextIdKeys.Tenant\n\t\t\t\t])\n\t\t\t);\n\t\t\treturn new AutomationService(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(\n\t\t\t\t\t{ loggingComponentType: engineCore.getRegisteredInstanceType(\"loggingComponent\") },\n\t\t\t\t\tcreateConfig.options\n\t\t\t\t)\n\t\t\t);\n\t\t};\n\t\tinstanceTypeName = nameofKebabCase(AutomationService);\n\t} else if (instanceConfig.type === AutomationComponentType.RestClient) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) =>\n\t\t\tnew AutomationRestClient(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(createConfig.options)\n\t\t\t);\n\t\tinstanceTypeName = nameofKebabCase(AutomationRestClient);\n\t}\n\n\treturn {\n\t\tcreateComponent: createComponent as (createConfig: typeof instanceConfig) => IComponent,\n\t\tinstanceTypeName,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
@@ -0,0 +1,27 @@
1
+ // Copyright 2026 IOTA Stiftung.
2
+ // SPDX-License-Identifier: Apache-2.0.
3
+ import { FetchAction } from "@twin.org/automation-actions";
4
+ import { AutomationActionFactory } from "@twin.org/automation-models";
5
+ import { AutomationActionType } from "../models/types/automationActionType.js";
6
+ import { EngineTypeHelper } from "../utils/engineTypeHelper.js";
7
+ /**
8
+ * Initialise the automation actions.
9
+ * @param engineCore The engine core.
10
+ * @param context The context for the engine.
11
+ * @param instanceConfig The instance config.
12
+ * @returns The instance created and the factory for it.
13
+ */
14
+ export function initialiseAutomationAction(engineCore, context, instanceConfig) {
15
+ let createComponent;
16
+ let instanceTypeName;
17
+ if (instanceConfig.type === AutomationActionType.Fetch) {
18
+ createComponent = (createConfig) => new FetchAction(EngineTypeHelper.mergeConfig(createConfig.options));
19
+ instanceTypeName = "fetch-action";
20
+ }
21
+ return {
22
+ createComponent,
23
+ instanceTypeName,
24
+ factory: AutomationActionFactory
25
+ };
26
+ }
27
+ //# sourceMappingURL=automationAction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"automationAction.js","sourceRoot":"","sources":["../../../src/components/automationAction.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAStE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,UAAU,0BAA0B,CACzC,UAAsC,EACtC,OAA0C,EAC1C,cAAsC;IAEtC,IAAI,eAAe,CAAC;IACpB,IAAI,gBAAgB,CAAC;IAErB,IAAI,cAAc,CAAC,IAAI,KAAK,oBAAoB,CAAC,KAAK,EAAE,CAAC;QACxD,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE,CACzD,IAAI,WAAW,CACd,gBAAgB,CAAC,WAAW,CAAqC,YAAY,CAAC,OAAO,CAAC,CACtF,CAAC;QACH,gBAAgB,iBAA+B,CAAC;IACjD,CAAC;IAED,OAAO;QACN,eAAe;QACf,gBAAgB;QAChB,OAAO,EAAE,uBAAuB;KAChC,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2026 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { FetchAction } from \"@twin.org/automation-actions\";\nimport { AutomationActionFactory } from \"@twin.org/automation-models\";\nimport type {\n\tEngineTypeInitialiserReturn,\n\tIEngineCore,\n\tIEngineCoreContext\n} from \"@twin.org/engine-models\";\nimport { nameofKebabCase } from \"@twin.org/nameof\";\nimport type { AutomationActionConfig } from \"../models/config/automationActionConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { AutomationActionType } from \"../models/types/automationActionType.js\";\nimport { EngineTypeHelper } from \"../utils/engineTypeHelper.js\";\n\n/**\n * Initialise the automation actions.\n * @param engineCore The engine core.\n * @param context The context for the engine.\n * @param instanceConfig The instance config.\n * @returns The instance created and the factory for it.\n */\nexport function initialiseAutomationAction(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: AutomationActionConfig\n): EngineTypeInitialiserReturn<typeof instanceConfig, typeof AutomationActionFactory> {\n\tlet createComponent;\n\tlet instanceTypeName;\n\n\tif (instanceConfig.type === AutomationActionType.Fetch) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) =>\n\t\t\tnew FetchAction(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(createConfig.options)\n\t\t\t);\n\t\tinstanceTypeName = nameofKebabCase(FetchAction);\n\t}\n\n\treturn {\n\t\tcreateComponent,\n\t\tinstanceTypeName,\n\t\tfactory: AutomationActionFactory\n\t};\n}\n"]}
@@ -1,33 +1,33 @@
1
1
  // Copyright 2024 IOTA Stiftung.
2
2
  // SPDX-License-Identifier: Apache-2.0.
3
- import { EntityStorageBackgroundTaskConnector, initSchema } from "@twin.org/background-task-connector-entity-storage";
4
- import { BackgroundTaskConnectorFactory } from "@twin.org/background-task-models";
3
+ import { BackgroundTaskService, initSchema } from "@twin.org/background-task-service";
5
4
  import { ContextIdHelper, ContextIdKeys } from "@twin.org/context";
5
+ import { ComponentFactory } from "@twin.org/core";
6
6
  import { initialiseEntityStorageConnector } from "./entityStorage.js";
7
- import { BackgroundTaskConnectorType } from "../models/types/backgroundTaskConnectorType.js";
7
+ import { BackgroundTaskComponentType } from "../models/types/backgroundTaskComponentType.js";
8
+ import { EngineTypeHelper } from "../utils/engineTypeHelper.js";
8
9
  /**
9
- * Initialise a background task connector.
10
+ * Initialise a background task component.
10
11
  * @param engineCore The engine core.
11
12
  * @param context The context for the engine.
12
13
  * @param instanceConfig The instance config.
13
14
  * @returns The instance created and the factory for it.
14
15
  */
15
- export async function initialiseBackgroundTaskConnector(engineCore, context, instanceConfig) {
16
- let component;
17
- let instanceType;
18
- if (instanceConfig.type === BackgroundTaskConnectorType.EntityStorage) {
19
- initSchema();
20
- initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.backgroundTaskEntityStorageType, "BackgroundTask", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [ContextIdKeys.Node]));
21
- component = new EntityStorageBackgroundTaskConnector({
22
- loggingComponentType: engineCore.getRegisteredInstanceType("loggingComponent"),
23
- ...instanceConfig.options
24
- });
25
- instanceType = EntityStorageBackgroundTaskConnector.NAMESPACE;
16
+ export function initialiseBackgroundTaskComponent(engineCore, context, instanceConfig) {
17
+ let createComponent;
18
+ let instanceTypeName;
19
+ if (instanceConfig.type === BackgroundTaskComponentType.Service) {
20
+ createComponent = (createConfig) => {
21
+ initSchema();
22
+ initialiseEntityStorageConnector(engineCore, context, createConfig.options?.backgroundTaskEntityStorageType, "BackgroundTask", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [ContextIdKeys.Node]));
23
+ return new BackgroundTaskService(EngineTypeHelper.mergeConfig({ loggingComponentType: engineCore.getRegisteredInstanceType("loggingComponent") }, createConfig.options));
24
+ };
25
+ instanceTypeName = "background-task-service";
26
26
  }
27
27
  return {
28
- component,
29
- instanceType,
30
- factory: BackgroundTaskConnectorFactory
28
+ createComponent,
29
+ instanceTypeName,
30
+ factory: ComponentFactory
31
31
  };
32
32
  }
33
33
  //# sourceMappingURL=backgroundTask.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"backgroundTask.js","sourceRoot":"","sources":["../../../src/components/backgroundTask.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EACN,oCAAoC,EACpC,UAAU,EAEV,MAAM,oDAAoD,CAAC;AAC5D,OAAO,EACN,8BAA8B,EAE9B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAInE,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAGtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAE7F;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,iCAAiC,CACtD,UAAsC,EACtC,OAA0C,EAC1C,cAA6C;IAM7C,IAAI,SAA+C,CAAC;IACpD,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,2BAA2B,CAAC,aAAa,EAAE,CAAC;QACvE,UAAU,EAAE,CAAC;QACb,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,cAAc,CAAC,OAAO,EAAE,+BAA+B,oBAEvD,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAC1F,CAAC;QACF,SAAS,GAAG,IAAI,oCAAoC,CAAC;YACpD,oBAAoB,EAAE,UAAU,CAAC,yBAAyB,CAAC,kBAAkB,CAAC;YAC9E,GAAG,cAAc,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,YAAY,GAAG,oCAAoC,CAAC,SAAS,CAAC;IAC/D,CAAC;IAED,OAAO;QACN,SAAS;QACT,YAAY;QACZ,OAAO,EAAE,8BAA8B;KACvC,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport {\n\tEntityStorageBackgroundTaskConnector,\n\tinitSchema,\n\ttype BackgroundTask\n} from \"@twin.org/background-task-connector-entity-storage\";\nimport {\n\tBackgroundTaskConnectorFactory,\n\ttype IBackgroundTaskConnector\n} from \"@twin.org/background-task-models\";\nimport { ContextIdHelper, ContextIdKeys } from \"@twin.org/context\";\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IEngineCore, IEngineCoreContext } from \"@twin.org/engine-models\";\nimport { nameof } from \"@twin.org/nameof\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { BackgroundTaskConnectorConfig } from \"../models/config/backgroundTaskConnectorConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { BackgroundTaskConnectorType } from \"../models/types/backgroundTaskConnectorType.js\";\n\n/**\n * Initialise a background task connector.\n * @param engineCore The engine core.\n * @param context The context for the engine.\n * @param instanceConfig The instance config.\n * @returns The instance created and the factory for it.\n */\nexport async function initialiseBackgroundTaskConnector(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: BackgroundTaskConnectorConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof BackgroundTaskConnectorFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: IBackgroundTaskConnector | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === BackgroundTaskConnectorType.EntityStorage) {\n\t\tinitSchema();\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.backgroundTaskEntityStorageType,\n\t\t\tnameof<BackgroundTask>(),\n\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [ContextIdKeys.Node])\n\t\t);\n\t\tcomponent = new EntityStorageBackgroundTaskConnector({\n\t\t\tloggingComponentType: engineCore.getRegisteredInstanceType(\"loggingComponent\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = EntityStorageBackgroundTaskConnector.NAMESPACE;\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: BackgroundTaskConnectorFactory\n\t};\n}\n"]}
1
+ {"version":3,"file":"backgroundTask.js","sourceRoot":"","sources":["../../../src/components/backgroundTask.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EACN,qBAAqB,EACrB,UAAU,EAEV,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAOlD,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAGtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAC7F,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,UAAU,iCAAiC,CAChD,UAAsC,EACtC,OAA0C,EAC1C,cAA6C;IAE7C,IAAI,eAAe,CAAC;IACpB,IAAI,gBAAgB,CAAC;IAErB,IAAI,cAAc,CAAC,IAAI,KAAK,2BAA2B,CAAC,OAAO,EAAE,CAAC;QACjE,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE;YACzD,UAAU,EAAE,CAAC;YACb,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,YAAY,CAAC,OAAO,EAAE,+BAA+B,oBAErD,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAC1F,CAAC;YACF,OAAO,IAAI,qBAAqB,CAC/B,gBAAgB,CAAC,WAAW,CAC3B,EAAE,oBAAoB,EAAE,UAAU,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,EAAE,EAClF,YAAY,CAAC,OAAO,CACpB,CACD,CAAC;QACH,CAAC,CAAC;QACF,gBAAgB,4BAAyC,CAAC;IAC3D,CAAC;IAED,OAAO;QACN,eAAe;QACf,gBAAgB;QAChB,OAAO,EAAE,gBAAgB;KACzB,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport {\n\tBackgroundTaskService,\n\tinitSchema,\n\ttype BackgroundTask\n} from \"@twin.org/background-task-service\";\nimport { ContextIdHelper, ContextIdKeys } from \"@twin.org/context\";\nimport { ComponentFactory } from \"@twin.org/core\";\nimport type {\n\tEngineTypeInitialiserReturn,\n\tIEngineCore,\n\tIEngineCoreContext\n} from \"@twin.org/engine-models\";\nimport { nameof, nameofKebabCase } from \"@twin.org/nameof\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { BackgroundTaskComponentConfig } from \"../models/config/backgroundTaskComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { BackgroundTaskComponentType } from \"../models/types/backgroundTaskComponentType.js\";\nimport { EngineTypeHelper } from \"../utils/engineTypeHelper.js\";\n\n/**\n * Initialise a background task component.\n * @param engineCore The engine core.\n * @param context The context for the engine.\n * @param instanceConfig The instance config.\n * @returns The instance created and the factory for it.\n */\nexport function initialiseBackgroundTaskComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: BackgroundTaskComponentConfig\n): EngineTypeInitialiserReturn<typeof instanceConfig, typeof ComponentFactory> {\n\tlet createComponent;\n\tlet instanceTypeName;\n\n\tif (instanceConfig.type === BackgroundTaskComponentType.Service) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) => {\n\t\t\tinitSchema();\n\t\t\tinitialiseEntityStorageConnector(\n\t\t\t\tengineCore,\n\t\t\t\tcontext,\n\t\t\t\tcreateConfig.options?.backgroundTaskEntityStorageType,\n\t\t\t\tnameof<BackgroundTask>(),\n\t\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [ContextIdKeys.Node])\n\t\t\t);\n\t\t\treturn new BackgroundTaskService(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(\n\t\t\t\t\t{ loggingComponentType: engineCore.getRegisteredInstanceType(\"loggingComponent\") },\n\t\t\t\t\tcreateConfig.options\n\t\t\t\t)\n\t\t\t);\n\t\t};\n\t\tinstanceTypeName = nameofKebabCase(BackgroundTaskService);\n\t}\n\n\treturn {\n\t\tcreateComponent,\n\t\tinstanceTypeName,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}