@twin.org/engine-types 0.0.3-next.5 → 0.0.3-next.50

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 (629) 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 +43 -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 +20 -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 +59 -0
  21. package/dist/es/components/dataspaceControlPlane.js.map +1 -0
  22. package/dist/es/components/dataspaceDataPlane.js +65 -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 +46 -63
  27. package/dist/es/components/entityStorage.js.map +1 -1
  28. package/dist/es/components/eventBus.js +23 -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 +32 -28
  47. package/dist/es/components/logging.js.map +1 -1
  48. package/dist/es/components/messaging.js +89 -89
  49. package/dist/es/components/messaging.js.map +1 -1
  50. package/dist/es/components/metricsCollector.js +29 -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/platform.js +34 -0
  59. package/dist/es/components/platform.js.map +1 -0
  60. package/dist/es/components/rightsManagementPap.js +19 -17
  61. package/dist/es/components/rightsManagementPap.js.map +1 -1
  62. package/dist/es/components/rightsManagementPdp.js +12 -27
  63. package/dist/es/components/rightsManagementPdp.js.map +1 -1
  64. package/dist/es/components/rightsManagementPep.js +13 -25
  65. package/dist/es/components/rightsManagementPep.js.map +1 -1
  66. package/dist/es/components/rightsManagementPip.js +11 -25
  67. package/dist/es/components/rightsManagementPip.js.map +1 -1
  68. package/dist/es/components/rightsManagementPmp.js +11 -11
  69. package/dist/es/components/rightsManagementPmp.js.map +1 -1
  70. package/dist/es/components/rightsManagementPnap.js +20 -18
  71. package/dist/es/components/rightsManagementPnap.js.map +1 -1
  72. package/dist/es/components/rightsManagementPnp.js +15 -37
  73. package/dist/es/components/rightsManagementPnp.js.map +1 -1
  74. package/dist/es/components/rightsManagementPolicyArbiter.js +34 -0
  75. package/dist/es/components/rightsManagementPolicyArbiter.js.map +1 -0
  76. package/dist/es/components/rightsManagementPolicyEnforcementProcessor.js +33 -0
  77. package/dist/es/components/rightsManagementPolicyEnforcementProcessor.js.map +1 -0
  78. package/dist/es/components/rightsManagementPolicyExecutionAction.js +27 -0
  79. package/dist/es/components/rightsManagementPolicyExecutionAction.js.map +1 -0
  80. package/dist/es/components/rightsManagementPolicyInformationSource.js +34 -0
  81. package/dist/es/components/rightsManagementPolicyInformationSource.js.map +1 -0
  82. package/dist/es/components/rightsManagementPolicyNegotiator.js +27 -0
  83. package/dist/es/components/rightsManagementPolicyNegotiator.js.map +1 -0
  84. package/dist/es/components/rightsManagementPolicyObligationEnforcer.js +27 -0
  85. package/dist/es/components/rightsManagementPolicyObligationEnforcer.js.map +1 -0
  86. package/dist/es/components/rightsManagementPolicyRequester.js +27 -0
  87. package/dist/es/components/rightsManagementPolicyRequester.js.map +1 -0
  88. package/dist/es/components/rightsManagementPxp.js +11 -25
  89. package/dist/es/components/rightsManagementPxp.js.map +1 -1
  90. package/dist/es/components/schemaVersionMigration.js +35 -0
  91. package/dist/es/components/schemaVersionMigration.js.map +1 -0
  92. package/dist/es/components/taskScheduler.js +19 -11
  93. package/dist/es/components/taskScheduler.js.map +1 -1
  94. package/dist/es/components/telemetry.js +52 -31
  95. package/dist/es/components/telemetry.js.map +1 -1
  96. package/dist/es/components/tenant.js +12 -11
  97. package/dist/es/components/tenant.js.map +1 -1
  98. package/dist/es/components/trust.js +29 -0
  99. package/dist/es/components/trust.js.map +1 -0
  100. package/dist/es/components/trustGenerator.js +28 -0
  101. package/dist/es/components/trustGenerator.js.map +1 -0
  102. package/dist/es/components/trustVerifier.js +31 -0
  103. package/dist/es/components/trustVerifier.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/wallet.js +23 -24
  107. package/dist/es/components/wallet.js.map +1 -1
  108. package/dist/es/index.js +67 -22
  109. package/dist/es/index.js.map +1 -1
  110. package/dist/es/models/IEngineConfig.js.map +1 -1
  111. package/dist/es/models/config/automationActionConfig.js +2 -0
  112. package/dist/es/models/config/automationActionConfig.js.map +1 -0
  113. package/dist/es/models/config/automationComponentConfig.js +2 -0
  114. package/dist/es/models/config/automationComponentConfig.js.map +1 -0
  115. package/dist/es/models/config/backgroundTaskComponentConfig.js +2 -0
  116. package/dist/es/models/config/backgroundTaskComponentConfig.js.map +1 -0
  117. package/dist/es/models/config/blobStorageConnectorConfig.js.map +1 -1
  118. package/dist/es/models/config/dataspaceControlPlaneComponentConfig.js +2 -0
  119. package/dist/es/models/config/dataspaceControlPlaneComponentConfig.js.map +1 -0
  120. package/dist/es/models/config/dataspaceDataPlaneComponentConfig.js +2 -0
  121. package/dist/es/models/config/dataspaceDataPlaneComponentConfig.js.map +1 -0
  122. package/dist/es/models/config/entityStorageConnectorConfig.js.map +1 -1
  123. package/dist/es/models/config/federatedCatalogueFilterComponentConfig.js +2 -0
  124. package/dist/es/models/config/federatedCatalogueFilterComponentConfig.js.map +1 -0
  125. package/dist/es/models/config/healthComponentConfig.js +2 -0
  126. package/dist/es/models/config/healthComponentConfig.js.map +1 -0
  127. package/dist/es/models/config/metricsCollectorComponentConfig.js +2 -0
  128. package/dist/es/models/config/metricsCollectorComponentConfig.js.map +1 -0
  129. package/dist/es/models/config/metricsProducerComponentConfig.js +2 -0
  130. package/dist/es/models/config/metricsProducerComponentConfig.js.map +1 -0
  131. package/dist/es/models/config/notarizationComponentConfig.js +2 -0
  132. package/dist/es/models/config/notarizationComponentConfig.js.map +1 -0
  133. package/dist/es/models/config/notarizationConnectorConfig.js +2 -0
  134. package/dist/es/models/config/notarizationConnectorConfig.js.map +1 -0
  135. package/dist/es/models/config/platformComponentConfig.js +2 -0
  136. package/dist/es/models/config/platformComponentConfig.js.map +1 -0
  137. package/dist/es/models/config/rightsManagementPdpComponentConfig.js.map +1 -1
  138. package/dist/es/models/config/rightsManagementPepComponentConfig.js.map +1 -1
  139. package/dist/es/models/config/rightsManagementPipComponentConfig.js.map +1 -1
  140. package/dist/es/models/config/rightsManagementPnpComponentConfig.js.map +1 -1
  141. package/dist/es/models/config/rightsManagementPolicyArbiterComponentConfig.js +2 -0
  142. package/dist/es/models/config/rightsManagementPolicyArbiterComponentConfig.js.map +1 -0
  143. package/dist/es/models/config/rightsManagementPolicyEnforcementProcessorComponentConfig.js +2 -0
  144. package/dist/es/models/config/rightsManagementPolicyEnforcementProcessorComponentConfig.js.map +1 -0
  145. package/dist/es/models/config/rightsManagementPolicyExecutionActionComponentConfig.js +2 -0
  146. package/dist/es/models/config/rightsManagementPolicyExecutionActionComponentConfig.js.map +1 -0
  147. package/dist/es/models/config/rightsManagementPolicyInformationSourceComponentConfig.js +2 -0
  148. package/dist/es/models/config/rightsManagementPolicyInformationSourceComponentConfig.js.map +1 -0
  149. package/dist/es/models/config/rightsManagementPolicyNegotiatorComponentConfig.js +2 -0
  150. package/dist/es/models/config/rightsManagementPolicyNegotiatorComponentConfig.js.map +1 -0
  151. package/dist/es/models/config/rightsManagementPolicyObligationEnforcerComponentConfig.js +2 -0
  152. package/dist/es/models/config/rightsManagementPolicyObligationEnforcerComponentConfig.js.map +1 -0
  153. package/dist/es/models/config/rightsManagementPolicyRequesterComponentConfig.js +2 -0
  154. package/dist/es/models/config/rightsManagementPolicyRequesterComponentConfig.js.map +1 -0
  155. package/dist/es/models/config/rightsManagementPxpComponentConfig.js.map +1 -1
  156. package/dist/es/models/config/schemaVersionMigrationComponentConfig.js +2 -0
  157. package/dist/es/models/config/schemaVersionMigrationComponentConfig.js.map +1 -0
  158. package/dist/es/models/config/telemetryConnectorConfig.js.map +1 -1
  159. package/dist/es/models/config/trustComponentConfig.js +2 -0
  160. package/dist/es/models/config/trustComponentConfig.js.map +1 -0
  161. package/dist/es/models/config/trustGeneratorComponentConfig.js +2 -0
  162. package/dist/es/models/config/trustGeneratorComponentConfig.js.map +1 -0
  163. package/dist/es/models/config/trustVerifierComponentConfig.js +2 -0
  164. package/dist/es/models/config/trustVerifierComponentConfig.js.map +1 -0
  165. package/dist/es/models/types/automationActionType.js +13 -0
  166. package/dist/es/models/types/automationActionType.js.map +1 -0
  167. package/dist/es/models/types/{verifiableStorageComponentType.js → automationComponentType.js} +4 -4
  168. package/dist/es/models/types/automationComponentType.js.map +1 -0
  169. package/dist/es/models/types/{rightsManagementDarpComponentType.js → backgroundTaskComponentType.js} +3 -3
  170. package/dist/es/models/types/backgroundTaskComponentType.js.map +1 -0
  171. package/dist/es/models/types/dataspaceControlPlaneComponentType.js +17 -0
  172. package/dist/es/models/types/dataspaceControlPlaneComponentType.js.map +1 -0
  173. package/dist/es/models/types/{dataSpaceConnectorComponentType.js → dataspaceDataPlaneComponentType.js} +4 -4
  174. package/dist/es/models/types/dataspaceDataPlaneComponentType.js.map +1 -0
  175. package/dist/es/models/types/entityStorageConnectorType.js +1 -5
  176. package/dist/es/models/types/entityStorageConnectorType.js.map +1 -1
  177. package/dist/es/models/types/federatedCatalogueFilterComponentType.js +13 -0
  178. package/dist/es/models/types/federatedCatalogueFilterComponentType.js.map +1 -0
  179. package/dist/es/models/types/{synchronisedStorageComponentType.js → healthComponentType.js} +4 -4
  180. package/dist/es/models/types/healthComponentType.js.map +1 -0
  181. package/dist/es/models/types/metricsCollectorComponentType.js +13 -0
  182. package/dist/es/models/types/metricsCollectorComponentType.js.map +1 -0
  183. package/dist/es/models/types/metricsProducerComponentType.js +17 -0
  184. package/dist/es/models/types/metricsProducerComponentType.js.map +1 -0
  185. package/dist/es/models/types/{rightsManagementDapComponentType.js → notarizationComponentType.js} +4 -4
  186. package/dist/es/models/types/notarizationComponentType.js.map +1 -0
  187. package/dist/es/models/types/{verifiableStorageConnectorType.js → notarizationConnectorType.js} +4 -4
  188. package/dist/es/models/types/notarizationConnectorType.js.map +1 -0
  189. package/dist/es/models/types/platformComponentType.js +13 -0
  190. package/dist/es/models/types/platformComponentType.js.map +1 -0
  191. package/dist/es/models/types/rightsManagementPolicyArbiterComponentType.js +17 -0
  192. package/dist/es/models/types/rightsManagementPolicyArbiterComponentType.js.map +1 -0
  193. package/dist/es/models/types/rightsManagementPolicyEnforcementProcessorComponentType.js +17 -0
  194. package/dist/es/models/types/rightsManagementPolicyEnforcementProcessorComponentType.js.map +1 -0
  195. package/dist/es/models/types/rightsManagementPolicyExecutionActionComponentType.js +13 -0
  196. package/dist/es/models/types/rightsManagementPolicyExecutionActionComponentType.js.map +1 -0
  197. package/dist/es/models/types/rightsManagementPolicyInformationSourceComponentType.js +17 -0
  198. package/dist/es/models/types/rightsManagementPolicyInformationSourceComponentType.js.map +1 -0
  199. package/dist/es/models/types/rightsManagementPolicyNegotiatorComponentType.js +13 -0
  200. package/dist/es/models/types/rightsManagementPolicyNegotiatorComponentType.js.map +1 -0
  201. package/dist/es/models/types/rightsManagementPolicyObligationEnforcerComponentType.js +13 -0
  202. package/dist/es/models/types/rightsManagementPolicyObligationEnforcerComponentType.js.map +1 -0
  203. package/dist/es/models/types/rightsManagementPolicyRequesterComponentType.js +13 -0
  204. package/dist/es/models/types/rightsManagementPolicyRequesterComponentType.js.map +1 -0
  205. package/dist/es/models/types/schemaVersionMigrationComponentType.js +13 -0
  206. package/dist/es/models/types/schemaVersionMigrationComponentType.js.map +1 -0
  207. package/dist/es/models/types/telemetryConnectorType.js +5 -1
  208. package/dist/es/models/types/telemetryConnectorType.js.map +1 -1
  209. package/dist/es/models/types/trustComponentType.js +13 -0
  210. package/dist/es/models/types/trustComponentType.js.map +1 -0
  211. package/dist/es/models/types/trustGeneratorComponentType.js +13 -0
  212. package/dist/es/models/types/trustGeneratorComponentType.js.map +1 -0
  213. package/dist/es/models/types/trustVerifierComponentType.js +17 -0
  214. package/dist/es/models/types/trustVerifierComponentType.js.map +1 -0
  215. package/dist/es/utils/engineTypeHelper.js +19 -1
  216. package/dist/es/utils/engineTypeHelper.js.map +1 -1
  217. package/dist/types/components/attestation.d.ts +5 -13
  218. package/dist/types/components/auditableItemGraph.d.ts +3 -7
  219. package/dist/types/components/auditableItemStream.d.ts +3 -7
  220. package/dist/types/components/automation.d.ts +12 -0
  221. package/dist/types/components/automationAction.d.ts +12 -0
  222. package/dist/types/components/backgroundTask.d.ts +5 -10
  223. package/dist/types/components/blobStorage.d.ts +4 -12
  224. package/dist/types/components/contextIdHandler.d.ts +3 -7
  225. package/dist/types/components/dataProcessing.d.ts +5 -17
  226. package/dist/types/components/dataspaceControlPlane.d.ts +12 -0
  227. package/dist/types/components/dataspaceDataPlane.d.ts +12 -0
  228. package/dist/types/components/documentManagement.d.ts +3 -7
  229. package/dist/types/components/entityStorage.d.ts +4 -9
  230. package/dist/types/components/eventBus.d.ts +4 -12
  231. package/dist/types/components/faucet.d.ts +2 -7
  232. package/dist/types/components/federatedCatalogue.d.ts +3 -7
  233. package/dist/types/components/federatedCatalogueFilter.d.ts +12 -0
  234. package/dist/types/components/health.d.ts +12 -0
  235. package/dist/types/components/identity.d.ts +4 -12
  236. package/dist/types/components/identityProfile.d.ts +4 -12
  237. package/dist/types/components/identityResolver.d.ts +4 -12
  238. package/dist/types/components/immutableProof.d.ts +3 -7
  239. package/dist/types/components/logging.d.ts +4 -12
  240. package/dist/types/components/messaging.d.ts +7 -27
  241. package/dist/types/components/metricsCollector.d.ts +12 -0
  242. package/dist/types/components/metricsProducer.d.ts +12 -0
  243. package/dist/types/components/nft.d.ts +4 -12
  244. package/dist/types/components/notarization.d.ts +22 -0
  245. package/dist/types/components/platform.d.ts +12 -0
  246. package/dist/types/components/rightsManagementPap.d.ts +3 -7
  247. package/dist/types/components/rightsManagementPdp.d.ts +3 -7
  248. package/dist/types/components/rightsManagementPep.d.ts +3 -7
  249. package/dist/types/components/rightsManagementPip.d.ts +3 -7
  250. package/dist/types/components/rightsManagementPmp.d.ts +3 -7
  251. package/dist/types/components/rightsManagementPnap.d.ts +3 -7
  252. package/dist/types/components/rightsManagementPnp.d.ts +3 -7
  253. package/dist/types/components/rightsManagementPolicyArbiter.d.ts +12 -0
  254. package/dist/types/components/rightsManagementPolicyEnforcementProcessor.d.ts +12 -0
  255. package/dist/types/components/rightsManagementPolicyExecutionAction.d.ts +12 -0
  256. package/dist/types/components/rightsManagementPolicyInformationSource.d.ts +12 -0
  257. package/dist/types/components/rightsManagementPolicyNegotiator.d.ts +12 -0
  258. package/dist/types/components/rightsManagementPolicyObligationEnforcer.d.ts +12 -0
  259. package/dist/types/components/rightsManagementPolicyRequester.d.ts +12 -0
  260. package/dist/types/components/rightsManagementPxp.d.ts +3 -7
  261. package/dist/types/components/schemaVersionMigration.d.ts +12 -0
  262. package/dist/types/components/taskScheduler.d.ts +3 -7
  263. package/dist/types/components/telemetry.d.ts +4 -12
  264. package/dist/types/components/tenant.d.ts +3 -7
  265. package/dist/types/components/trust.d.ts +12 -0
  266. package/dist/types/components/trustGenerator.d.ts +12 -0
  267. package/dist/types/components/trustVerifier.d.ts +12 -0
  268. package/dist/types/components/vault.d.ts +2 -7
  269. package/dist/types/components/wallet.d.ts +2 -7
  270. package/dist/types/index.d.ts +67 -22
  271. package/dist/types/models/IEngineConfig.d.ts +103 -28
  272. package/dist/types/models/config/automationActionConfig.d.ts +9 -0
  273. package/dist/types/models/config/automationComponentConfig.d.ts +13 -0
  274. package/dist/types/models/config/backgroundTaskComponentConfig.d.ts +9 -0
  275. package/dist/types/models/config/blobStorageConnectorConfig.d.ts +4 -1
  276. package/dist/types/models/config/dataspaceControlPlaneComponentConfig.d.ts +13 -0
  277. package/dist/types/models/config/dataspaceDataPlaneComponentConfig.d.ts +17 -0
  278. package/dist/types/models/config/entityStorageConnectorConfig.d.ts +0 -4
  279. package/dist/types/models/config/federatedCatalogueFilterComponentConfig.d.ts +9 -0
  280. package/dist/types/models/config/healthComponentConfig.d.ts +13 -0
  281. package/dist/types/models/config/metricsCollectorComponentConfig.d.ts +9 -0
  282. package/dist/types/models/config/metricsProducerComponentConfig.d.ts +12 -0
  283. package/dist/types/models/config/notarizationComponentConfig.d.ts +13 -0
  284. package/dist/types/models/config/notarizationConnectorConfig.d.ts +13 -0
  285. package/dist/types/models/config/platformComponentConfig.d.ts +9 -0
  286. package/dist/types/models/config/rightsManagementPdpComponentConfig.d.ts +1 -4
  287. package/dist/types/models/config/rightsManagementPepComponentConfig.d.ts +1 -4
  288. package/dist/types/models/config/rightsManagementPipComponentConfig.d.ts +1 -4
  289. package/dist/types/models/config/rightsManagementPnpComponentConfig.d.ts +1 -5
  290. package/dist/types/models/config/rightsManagementPolicyArbiterComponentConfig.d.ts +12 -0
  291. package/dist/types/models/config/rightsManagementPolicyEnforcementProcessorComponentConfig.d.ts +12 -0
  292. package/dist/types/models/config/rightsManagementPolicyExecutionActionComponentConfig.d.ts +9 -0
  293. package/dist/types/models/config/rightsManagementPolicyInformationSourceComponentConfig.d.ts +12 -0
  294. package/dist/types/models/config/rightsManagementPolicyNegotiatorComponentConfig.d.ts +9 -0
  295. package/dist/types/models/config/rightsManagementPolicyObligationEnforcerComponentConfig.d.ts +9 -0
  296. package/dist/types/models/config/rightsManagementPolicyRequesterComponentConfig.d.ts +9 -0
  297. package/dist/types/models/config/rightsManagementPxpComponentConfig.d.ts +1 -4
  298. package/dist/types/models/config/schemaVersionMigrationComponentConfig.d.ts +9 -0
  299. package/dist/types/models/config/telemetryConnectorConfig.d.ts +4 -0
  300. package/dist/types/models/config/trustComponentConfig.d.ts +9 -0
  301. package/dist/types/models/config/trustGeneratorComponentConfig.d.ts +9 -0
  302. package/dist/types/models/config/trustVerifierComponentConfig.d.ts +12 -0
  303. package/dist/types/models/types/automationActionType.d.ts +13 -0
  304. package/dist/types/models/types/automationComponentType.d.ts +17 -0
  305. package/dist/types/models/types/backgroundTaskComponentType.d.ts +13 -0
  306. package/dist/types/models/types/dataspaceControlPlaneComponentType.d.ts +17 -0
  307. package/dist/types/models/types/dataspaceDataPlaneComponentType.d.ts +21 -0
  308. package/dist/types/models/types/entityStorageConnectorType.d.ts +0 -4
  309. package/dist/types/models/types/federatedCatalogueFilterComponentType.d.ts +13 -0
  310. package/dist/types/models/types/healthComponentType.d.ts +17 -0
  311. package/dist/types/models/types/metricsCollectorComponentType.d.ts +13 -0
  312. package/dist/types/models/types/metricsProducerComponentType.d.ts +17 -0
  313. package/dist/types/models/types/notarizationComponentType.d.ts +17 -0
  314. package/dist/types/models/types/notarizationConnectorType.d.ts +17 -0
  315. package/dist/types/models/types/platformComponentType.d.ts +13 -0
  316. package/dist/types/models/types/rightsManagementPolicyArbiterComponentType.d.ts +17 -0
  317. package/dist/types/models/types/rightsManagementPolicyEnforcementProcessorComponentType.d.ts +17 -0
  318. package/dist/types/models/types/rightsManagementPolicyExecutionActionComponentType.d.ts +13 -0
  319. package/dist/types/models/types/rightsManagementPolicyInformationSourceComponentType.d.ts +17 -0
  320. package/dist/types/models/types/rightsManagementPolicyNegotiatorComponentType.d.ts +13 -0
  321. package/dist/types/models/types/rightsManagementPolicyObligationEnforcerComponentType.d.ts +13 -0
  322. package/dist/types/models/types/rightsManagementPolicyRequesterComponentType.d.ts +13 -0
  323. package/dist/types/models/types/schemaVersionMigrationComponentType.d.ts +13 -0
  324. package/dist/types/models/types/telemetryConnectorType.d.ts +4 -0
  325. package/dist/types/models/types/trustComponentType.d.ts +13 -0
  326. package/dist/types/models/types/trustGeneratorComponentType.d.ts +13 -0
  327. package/dist/types/models/types/trustVerifierComponentType.d.ts +17 -0
  328. package/dist/types/utils/engineTypeHelper.d.ts +11 -0
  329. package/docs/changelog.md +986 -149
  330. package/docs/examples.md +74 -1
  331. package/docs/reference/classes/EngineTypeHelper.md +57 -4
  332. package/docs/reference/functions/initialiseAttestationComponent.md +2 -2
  333. package/docs/reference/functions/initialiseAttestationConnector.md +3 -3
  334. package/docs/reference/functions/initialiseAuditableItemGraphComponent.md +2 -2
  335. package/docs/reference/functions/initialiseAuditableItemStreamComponent.md +2 -2
  336. package/docs/reference/functions/initialiseAutomationAction.md +31 -0
  337. package/docs/reference/functions/initialiseAutomationComponent.md +31 -0
  338. package/docs/reference/functions/initialiseBackgroundTaskComponent.md +31 -0
  339. package/docs/reference/functions/initialiseBlobStorageComponent.md +2 -2
  340. package/docs/reference/functions/initialiseBlobStorageConnector.md +2 -2
  341. package/docs/reference/functions/initialiseContextIdHandlerComponent.md +2 -2
  342. package/docs/reference/functions/initialiseDataConverterConnector.md +2 -2
  343. package/docs/reference/functions/initialiseDataExtractorConnector.md +2 -2
  344. package/docs/reference/functions/initialiseDataProcessingComponent.md +2 -2
  345. package/docs/reference/functions/initialiseDataspaceControlPlaneComponent.md +31 -0
  346. package/docs/reference/functions/initialiseDataspaceDataPlaneComponent.md +31 -0
  347. package/docs/reference/functions/initialiseDocumentManagementComponent.md +2 -2
  348. package/docs/reference/functions/initialiseEntityStorageComponent.md +2 -2
  349. package/docs/reference/functions/initialiseEntityStorageConnector.md +4 -6
  350. package/docs/reference/functions/initialiseEventBusComponent.md +2 -2
  351. package/docs/reference/functions/initialiseEventBusConnector.md +2 -2
  352. package/docs/reference/functions/initialiseFaucetConnector.md +2 -2
  353. package/docs/reference/functions/initialiseFederatedCatalogueComponent.md +2 -2
  354. package/docs/reference/functions/initialiseFederatedCatalogueFilterComponent.md +31 -0
  355. package/docs/reference/functions/initialiseHealthComponent.md +31 -0
  356. package/docs/reference/functions/initialiseIdentityComponent.md +2 -2
  357. package/docs/reference/functions/initialiseIdentityConnector.md +2 -2
  358. package/docs/reference/functions/initialiseIdentityProfileComponent.md +2 -2
  359. package/docs/reference/functions/initialiseIdentityProfileConnector.md +2 -2
  360. package/docs/reference/functions/initialiseIdentityResolverComponent.md +2 -2
  361. package/docs/reference/functions/initialiseIdentityResolverConnector.md +2 -2
  362. package/docs/reference/functions/initialiseImmutableProofComponent.md +2 -2
  363. package/docs/reference/functions/initialiseLoggingComponent.md +2 -2
  364. package/docs/reference/functions/initialiseLoggingConnector.md +2 -2
  365. package/docs/reference/functions/initialiseMessagingAdminComponent.md +2 -2
  366. package/docs/reference/functions/initialiseMessagingComponent.md +2 -2
  367. package/docs/reference/functions/initialiseMessagingEmailConnector.md +2 -2
  368. package/docs/reference/functions/initialiseMessagingPushNotificationConnector.md +2 -2
  369. package/docs/reference/functions/initialiseMessagingSmsConnector.md +2 -2
  370. package/docs/reference/functions/initialiseMetricsCollectorComponent.md +31 -0
  371. package/docs/reference/functions/initialiseMetricsProducerComponent.md +31 -0
  372. package/docs/reference/functions/initialiseNftComponent.md +2 -2
  373. package/docs/reference/functions/initialiseNftConnector.md +2 -2
  374. package/docs/reference/functions/initialiseNotarizationComponent.md +31 -0
  375. package/docs/reference/functions/initialiseNotarizationConnector.md +31 -0
  376. package/docs/reference/functions/initialisePlatformComponent.md +31 -0
  377. package/docs/reference/functions/initialiseRightsManagementPapComponent.md +2 -2
  378. package/docs/reference/functions/initialiseRightsManagementPdpComponent.md +2 -2
  379. package/docs/reference/functions/initialiseRightsManagementPepComponent.md +2 -2
  380. package/docs/reference/functions/initialiseRightsManagementPipComponent.md +2 -2
  381. package/docs/reference/functions/initialiseRightsManagementPmpComponent.md +2 -2
  382. package/docs/reference/functions/initialiseRightsManagementPnapComponent.md +2 -2
  383. package/docs/reference/functions/initialiseRightsManagementPnpComponent.md +2 -2
  384. package/docs/reference/functions/initialiseRightsManagementPolicyArbiterComponent.md +31 -0
  385. package/docs/reference/functions/initialiseRightsManagementPolicyEnforcementProcessorComponent.md +31 -0
  386. package/docs/reference/functions/initialiseRightsManagementPolicyExecutionActionComponent.md +31 -0
  387. package/docs/reference/functions/initialiseRightsManagementPolicyInformationSourceComponent.md +31 -0
  388. package/docs/reference/functions/initialiseRightsManagementPolicyNegotiatorComponent.md +31 -0
  389. package/docs/reference/functions/initialiseRightsManagementPolicyObligationEnforcerComponent.md +31 -0
  390. package/docs/reference/functions/initialiseRightsManagementPolicyRequesterComponent.md +31 -0
  391. package/docs/reference/functions/initialiseRightsManagementPxpComponent.md +2 -2
  392. package/docs/reference/functions/initialiseSchemaVersionMigrationComponent.md +31 -0
  393. package/docs/reference/functions/initialiseTaskSchedulerComponent.md +2 -2
  394. package/docs/reference/functions/initialiseTelemetryComponent.md +2 -2
  395. package/docs/reference/functions/initialiseTelemetryConnector.md +2 -2
  396. package/docs/reference/functions/initialiseTenantAdminComponent.md +2 -2
  397. package/docs/reference/functions/initialiseTrustComponent.md +31 -0
  398. package/docs/reference/functions/initialiseTrustGeneratorComponent.md +31 -0
  399. package/docs/reference/functions/initialiseTrustVerifierComponent.md +31 -0
  400. package/docs/reference/functions/initialiseVaultConnector.md +2 -2
  401. package/docs/reference/functions/initialiseWalletConnector.md +2 -2
  402. package/docs/reference/index.md +92 -32
  403. package/docs/reference/interfaces/IEngineConfig.md +218 -80
  404. package/docs/reference/type-aliases/AttestationConnectorConfig.md +3 -3
  405. package/docs/reference/type-aliases/AutomationActionConfig.md +17 -0
  406. package/docs/reference/type-aliases/AutomationActionType.md +5 -0
  407. package/docs/reference/type-aliases/AutomationComponentConfig.md +5 -0
  408. package/docs/reference/type-aliases/AutomationComponentType.md +5 -0
  409. package/docs/reference/type-aliases/BackgroundTaskComponentConfig.md +17 -0
  410. package/docs/reference/type-aliases/BackgroundTaskComponentType.md +5 -0
  411. package/docs/reference/type-aliases/BlobStorageConnectorConfig.md +1 -1
  412. package/docs/reference/type-aliases/DataExtractorConnectorConfig.md +3 -3
  413. package/docs/reference/type-aliases/DataspaceControlPlaneComponentConfig.md +5 -0
  414. package/docs/reference/type-aliases/DataspaceControlPlaneComponentType.md +5 -0
  415. package/docs/reference/type-aliases/DataspaceDataPlaneComponentConfig.md +5 -0
  416. package/docs/reference/type-aliases/DataspaceDataPlaneComponentType.md +5 -0
  417. package/docs/reference/type-aliases/DltConfig.md +4 -4
  418. package/docs/reference/type-aliases/EntityStorageConnectorConfig.md +1 -1
  419. package/docs/reference/type-aliases/EventBusConnectorConfig.md +3 -3
  420. package/docs/reference/type-aliases/FederatedCatalogueFilterComponentConfig.md +17 -0
  421. package/docs/reference/type-aliases/FederatedCatalogueFilterComponentType.md +5 -0
  422. package/docs/reference/type-aliases/HealthComponentConfig.md +5 -0
  423. package/docs/reference/type-aliases/HealthComponentType.md +5 -0
  424. package/docs/reference/type-aliases/IdentityProfileConnectorConfig.md +3 -3
  425. package/docs/reference/type-aliases/MessagingAdminComponentConfig.md +3 -3
  426. package/docs/reference/type-aliases/MessagingComponentConfig.md +3 -3
  427. package/docs/reference/type-aliases/MetricsCollectorComponentConfig.md +17 -0
  428. package/docs/reference/type-aliases/MetricsCollectorComponentType.md +5 -0
  429. package/docs/reference/type-aliases/MetricsProducerComponentConfig.md +5 -0
  430. package/docs/reference/type-aliases/MetricsProducerComponentType.md +5 -0
  431. package/docs/reference/type-aliases/NotarizationComponentConfig.md +5 -0
  432. package/docs/reference/type-aliases/NotarizationComponentType.md +5 -0
  433. package/docs/reference/type-aliases/NotarizationConnectorConfig.md +5 -0
  434. package/docs/reference/type-aliases/NotarizationConnectorType.md +5 -0
  435. package/docs/reference/type-aliases/PlatformComponentConfig.md +17 -0
  436. package/docs/reference/type-aliases/PlatformComponentType.md +5 -0
  437. package/docs/reference/type-aliases/RightsManagementPdpComponentConfig.md +3 -9
  438. package/docs/reference/type-aliases/RightsManagementPepComponentConfig.md +3 -9
  439. package/docs/reference/type-aliases/RightsManagementPipComponentConfig.md +3 -9
  440. package/docs/reference/type-aliases/RightsManagementPmpComponentConfig.md +3 -3
  441. package/docs/reference/type-aliases/RightsManagementPnpComponentConfig.md +1 -1
  442. package/docs/reference/type-aliases/RightsManagementPolicyArbiterComponentConfig.md +5 -0
  443. package/docs/reference/type-aliases/RightsManagementPolicyArbiterComponentType.md +5 -0
  444. package/docs/reference/type-aliases/RightsManagementPolicyEnforcementProcessorComponentConfig.md +5 -0
  445. package/docs/reference/type-aliases/RightsManagementPolicyEnforcementProcessorComponentType.md +5 -0
  446. package/docs/reference/type-aliases/RightsManagementPolicyExecutionActionComponentConfig.md +17 -0
  447. package/docs/reference/type-aliases/RightsManagementPolicyExecutionActionComponentType.md +5 -0
  448. package/docs/reference/type-aliases/RightsManagementPolicyInformationSourceComponentConfig.md +5 -0
  449. package/docs/reference/type-aliases/RightsManagementPolicyInformationSourceComponentType.md +5 -0
  450. package/docs/reference/type-aliases/RightsManagementPolicyNegotiatorComponentConfig.md +17 -0
  451. package/docs/reference/type-aliases/RightsManagementPolicyNegotiatorComponentType.md +5 -0
  452. package/docs/reference/type-aliases/RightsManagementPolicyObligationEnforcerComponentConfig.md +17 -0
  453. package/docs/reference/type-aliases/RightsManagementPolicyObligationEnforcerComponentType.md +5 -0
  454. package/docs/reference/type-aliases/RightsManagementPolicyRequesterComponentConfig.md +17 -0
  455. package/docs/reference/type-aliases/RightsManagementPolicyRequesterComponentType.md +5 -0
  456. package/docs/reference/type-aliases/RightsManagementPxpComponentConfig.md +3 -9
  457. package/docs/reference/type-aliases/SchemaVersionMigrationComponentConfig.md +17 -0
  458. package/docs/reference/type-aliases/SchemaVersionMigrationComponentType.md +5 -0
  459. package/docs/reference/type-aliases/TaskSchedulerComponentConfig.md +3 -3
  460. package/docs/reference/type-aliases/TelemetryConnectorConfig.md +1 -13
  461. package/docs/reference/type-aliases/TenantAdminComponentConfig.md +3 -3
  462. package/docs/reference/type-aliases/TrustComponentConfig.md +17 -0
  463. package/docs/reference/type-aliases/TrustComponentType.md +5 -0
  464. package/docs/reference/type-aliases/TrustGeneratorComponentConfig.md +17 -0
  465. package/docs/reference/type-aliases/TrustGeneratorComponentType.md +5 -0
  466. package/docs/reference/type-aliases/TrustVerifierComponentConfig.md +5 -0
  467. package/docs/reference/type-aliases/TrustVerifierComponentType.md +5 -0
  468. package/docs/reference/variables/AttestationComponentType.md +2 -2
  469. package/docs/reference/variables/AttestationConnectorType.md +1 -1
  470. package/docs/reference/variables/AuditableItemGraphComponentType.md +2 -2
  471. package/docs/reference/variables/AuditableItemStreamComponentType.md +2 -2
  472. package/docs/reference/variables/AutomationActionType.md +13 -0
  473. package/docs/reference/variables/AutomationComponentType.md +19 -0
  474. package/docs/reference/variables/BackgroundTaskComponentType.md +13 -0
  475. package/docs/reference/variables/BlobStorageComponentType.md +2 -2
  476. package/docs/reference/variables/BlobStorageConnectorType.md +6 -6
  477. package/docs/reference/variables/ContextIdHandlerComponentType.md +2 -2
  478. package/docs/reference/variables/DataConverterConnectorType.md +2 -2
  479. package/docs/reference/variables/DataExtractorConnectorType.md +1 -1
  480. package/docs/reference/variables/DataProcessingComponentType.md +2 -2
  481. package/docs/reference/variables/DataspaceControlPlaneComponentType.md +19 -0
  482. package/docs/reference/variables/{DataSpaceConnectorComponentType.md → DataspaceDataPlaneComponentType.md} +6 -6
  483. package/docs/reference/variables/DltConfigType.md +1 -1
  484. package/docs/reference/variables/DocumentManagementComponentType.md +2 -2
  485. package/docs/reference/variables/EntityStorageComponentType.md +2 -2
  486. package/docs/reference/variables/EntityStorageConnectorType.md +9 -15
  487. package/docs/reference/variables/EventBusComponentType.md +2 -2
  488. package/docs/reference/variables/EventBusConnectorType.md +1 -1
  489. package/docs/reference/variables/FaucetConnectorType.md +2 -2
  490. package/docs/reference/variables/FederatedCatalogueComponentType.md +2 -2
  491. package/docs/reference/variables/FederatedCatalogueFilterComponentType.md +13 -0
  492. package/docs/reference/variables/{VerifiableStorageComponentType.md → HealthComponentType.md} +5 -5
  493. package/docs/reference/variables/IdentityComponentType.md +2 -2
  494. package/docs/reference/variables/IdentityConnectorType.md +2 -2
  495. package/docs/reference/variables/IdentityProfileComponentType.md +2 -2
  496. package/docs/reference/variables/IdentityProfileConnectorType.md +1 -1
  497. package/docs/reference/variables/IdentityResolverComponentType.md +2 -2
  498. package/docs/reference/variables/IdentityResolverConnectorType.md +3 -3
  499. package/docs/reference/variables/ImmutableProofComponentType.md +2 -2
  500. package/docs/reference/variables/LoggingComponentType.md +2 -2
  501. package/docs/reference/variables/LoggingConnectorType.md +3 -3
  502. package/docs/reference/variables/MessagingAdminComponentType.md +1 -1
  503. package/docs/reference/variables/MessagingComponentType.md +1 -1
  504. package/docs/reference/variables/MessagingEmailConnectorType.md +2 -2
  505. package/docs/reference/variables/MessagingPushNotificationConnectorType.md +2 -2
  506. package/docs/reference/variables/MessagingSmsConnectorType.md +2 -2
  507. package/docs/reference/variables/MetricsCollectorComponentType.md +13 -0
  508. package/docs/reference/variables/MetricsProducerComponentType.md +19 -0
  509. package/docs/reference/variables/NftComponentType.md +2 -2
  510. package/docs/reference/variables/NftConnectorType.md +2 -2
  511. package/docs/reference/variables/NotarizationComponentType.md +19 -0
  512. package/docs/reference/variables/NotarizationConnectorType.md +19 -0
  513. package/docs/reference/variables/PlatformComponentType.md +13 -0
  514. package/docs/reference/variables/RightsManagementPapComponentType.md +2 -2
  515. package/docs/reference/variables/RightsManagementPdpComponentType.md +1 -1
  516. package/docs/reference/variables/RightsManagementPepComponentType.md +2 -2
  517. package/docs/reference/variables/RightsManagementPipComponentType.md +1 -1
  518. package/docs/reference/variables/RightsManagementPmpComponentType.md +1 -1
  519. package/docs/reference/variables/RightsManagementPnapComponentType.md +2 -2
  520. package/docs/reference/variables/RightsManagementPnpComponentType.md +2 -2
  521. package/docs/reference/variables/RightsManagementPolicyArbiterComponentType.md +19 -0
  522. package/docs/reference/variables/RightsManagementPolicyEnforcementProcessorComponentType.md +19 -0
  523. package/docs/reference/variables/RightsManagementPolicyExecutionActionComponentType.md +13 -0
  524. package/docs/reference/variables/RightsManagementPolicyInformationSourceComponentType.md +19 -0
  525. package/docs/reference/variables/RightsManagementPolicyNegotiatorComponentType.md +13 -0
  526. package/docs/reference/variables/RightsManagementPolicyObligationEnforcerComponentType.md +13 -0
  527. package/docs/reference/variables/RightsManagementPolicyRequesterComponentType.md +13 -0
  528. package/docs/reference/variables/RightsManagementPxpComponentType.md +1 -1
  529. package/docs/reference/variables/SchemaVersionMigrationComponentType.md +13 -0
  530. package/docs/reference/variables/TaskSchedulerComponentType.md +1 -1
  531. package/docs/reference/variables/TelemetryComponentType.md +2 -2
  532. package/docs/reference/variables/TelemetryConnectorType.md +7 -1
  533. package/docs/reference/variables/TenantAdminComponentType.md +1 -1
  534. package/docs/reference/variables/TrustComponentType.md +13 -0
  535. package/docs/reference/variables/TrustGeneratorComponentType.md +13 -0
  536. package/docs/reference/variables/TrustVerifierComponentType.md +19 -0
  537. package/docs/reference/variables/VaultConnectorType.md +2 -2
  538. package/docs/reference/variables/WalletConnectorType.md +2 -2
  539. package/package.json +32 -21
  540. package/dist/es/components/authenticationGenerator.js +0 -30
  541. package/dist/es/components/authenticationGenerator.js.map +0 -1
  542. package/dist/es/components/dataSpaceConnector.js +0 -52
  543. package/dist/es/components/dataSpaceConnector.js.map +0 -1
  544. package/dist/es/components/rightsManagementDap.js +0 -38
  545. package/dist/es/components/rightsManagementDap.js.map +0 -1
  546. package/dist/es/components/rightsManagementDarp.js +0 -29
  547. package/dist/es/components/rightsManagementDarp.js.map +0 -1
  548. package/dist/es/components/synchronisedStorage.js +0 -47
  549. package/dist/es/components/synchronisedStorage.js.map +0 -1
  550. package/dist/es/components/verifiableStorage.js +0 -79
  551. package/dist/es/components/verifiableStorage.js.map +0 -1
  552. package/dist/es/models/config/authenticationGeneratorComponentConfig.js +0 -2
  553. package/dist/es/models/config/authenticationGeneratorComponentConfig.js.map +0 -1
  554. package/dist/es/models/config/backgroundTaskConnectorConfig.js +0 -2
  555. package/dist/es/models/config/backgroundTaskConnectorConfig.js.map +0 -1
  556. package/dist/es/models/config/dataSpaceConnectorComponentConfig.js +0 -2
  557. package/dist/es/models/config/dataSpaceConnectorComponentConfig.js.map +0 -1
  558. package/dist/es/models/config/rightsManagementDapComponentConfig.js +0 -2
  559. package/dist/es/models/config/rightsManagementDapComponentConfig.js.map +0 -1
  560. package/dist/es/models/config/rightsManagementDarpComponentConfig.js +0 -2
  561. package/dist/es/models/config/rightsManagementDarpComponentConfig.js.map +0 -1
  562. package/dist/es/models/config/synchronisedStorageComponentConfig.js +0 -2
  563. package/dist/es/models/config/synchronisedStorageComponentConfig.js.map +0 -1
  564. package/dist/es/models/config/verifiableStorageComponentConfig.js +0 -2
  565. package/dist/es/models/config/verifiableStorageComponentConfig.js.map +0 -1
  566. package/dist/es/models/config/verifiableStorageConnectorConfig.js +0 -2
  567. package/dist/es/models/config/verifiableStorageConnectorConfig.js.map +0 -1
  568. package/dist/es/models/types/authenticationGeneratorComponentType.js +0 -13
  569. package/dist/es/models/types/authenticationGeneratorComponentType.js.map +0 -1
  570. package/dist/es/models/types/backgroundTaskConnectorType.js +0 -13
  571. package/dist/es/models/types/backgroundTaskConnectorType.js.map +0 -1
  572. package/dist/es/models/types/dataSpaceConnectorComponentType.js.map +0 -1
  573. package/dist/es/models/types/rightsManagementDapComponentType.js.map +0 -1
  574. package/dist/es/models/types/rightsManagementDarpComponentType.js.map +0 -1
  575. package/dist/es/models/types/synchronisedStorageComponentType.js.map +0 -1
  576. package/dist/es/models/types/verifiableStorageComponentType.js.map +0 -1
  577. package/dist/es/models/types/verifiableStorageConnectorType.js.map +0 -1
  578. package/dist/types/components/authenticationGenerator.d.ts +0 -17
  579. package/dist/types/components/dataSpaceConnector.d.ts +0 -16
  580. package/dist/types/components/rightsManagementDap.d.ts +0 -16
  581. package/dist/types/components/rightsManagementDarp.d.ts +0 -16
  582. package/dist/types/components/synchronisedStorage.d.ts +0 -16
  583. package/dist/types/components/verifiableStorage.d.ts +0 -30
  584. package/dist/types/models/config/authenticationGeneratorComponentConfig.d.ts +0 -9
  585. package/dist/types/models/config/backgroundTaskConnectorConfig.d.ts +0 -9
  586. package/dist/types/models/config/dataSpaceConnectorComponentConfig.d.ts +0 -17
  587. package/dist/types/models/config/rightsManagementDapComponentConfig.d.ts +0 -16
  588. package/dist/types/models/config/rightsManagementDarpComponentConfig.d.ts +0 -12
  589. package/dist/types/models/config/synchronisedStorageComponentConfig.d.ts +0 -13
  590. package/dist/types/models/config/verifiableStorageComponentConfig.d.ts +0 -13
  591. package/dist/types/models/config/verifiableStorageConnectorConfig.d.ts +0 -13
  592. package/dist/types/models/types/authenticationGeneratorComponentType.d.ts +0 -13
  593. package/dist/types/models/types/backgroundTaskConnectorType.d.ts +0 -13
  594. package/dist/types/models/types/dataSpaceConnectorComponentType.d.ts +0 -21
  595. package/dist/types/models/types/rightsManagementDapComponentType.d.ts +0 -17
  596. package/dist/types/models/types/rightsManagementDarpComponentType.d.ts +0 -13
  597. package/dist/types/models/types/synchronisedStorageComponentType.d.ts +0 -17
  598. package/dist/types/models/types/verifiableStorageComponentType.d.ts +0 -17
  599. package/dist/types/models/types/verifiableStorageConnectorType.d.ts +0 -17
  600. package/docs/reference/functions/initialiseAuthenticationGeneratorComponent.md +0 -31
  601. package/docs/reference/functions/initialiseBackgroundTaskConnector.md +0 -31
  602. package/docs/reference/functions/initialiseDataSpaceConnectorComponent.md +0 -31
  603. package/docs/reference/functions/initialiseRightsManagementDapComponent.md +0 -31
  604. package/docs/reference/functions/initialiseRightsManagementDarpComponent.md +0 -31
  605. package/docs/reference/functions/initialiseSynchronisedStorageComponent.md +0 -31
  606. package/docs/reference/functions/initialiseVerifiableStorageComponent.md +0 -31
  607. package/docs/reference/functions/initialiseVerifiableStorageConnector.md +0 -31
  608. package/docs/reference/type-aliases/AuthenticationGeneratorComponentConfig.md +0 -17
  609. package/docs/reference/type-aliases/AuthenticationGeneratorComponentType.md +0 -5
  610. package/docs/reference/type-aliases/BackgroundTaskConnectorConfig.md +0 -17
  611. package/docs/reference/type-aliases/BackgroundTaskConnectorType.md +0 -5
  612. package/docs/reference/type-aliases/DataSpaceConnectorComponentConfig.md +0 -5
  613. package/docs/reference/type-aliases/DataSpaceConnectorComponentType.md +0 -5
  614. package/docs/reference/type-aliases/IVerifiableStorageComponentType.md +0 -5
  615. package/docs/reference/type-aliases/RightsManagementDapComponentConfig.md +0 -5
  616. package/docs/reference/type-aliases/RightsManagementDapComponentType.md +0 -5
  617. package/docs/reference/type-aliases/RightsManagementDarpComponentConfig.md +0 -23
  618. package/docs/reference/type-aliases/RightsManagementDarpComponentType.md +0 -5
  619. package/docs/reference/type-aliases/SynchronisedStorageComponentConfig.md +0 -5
  620. package/docs/reference/type-aliases/SynchronisedStorageComponentType.md +0 -5
  621. package/docs/reference/type-aliases/VerifiableStorageComponentConfig.md +0 -5
  622. package/docs/reference/type-aliases/VerifiableStorageConnectorConfig.md +0 -5
  623. package/docs/reference/type-aliases/VerifiableStorageConnectorType.md +0 -5
  624. package/docs/reference/variables/AuthenticationGeneratorComponentType.md +0 -13
  625. package/docs/reference/variables/BackgroundTaskConnectorType.md +0 -13
  626. package/docs/reference/variables/RightsManagementDapComponentType.md +0 -19
  627. package/docs/reference/variables/RightsManagementDarpComponentType.md +0 -13
  628. package/docs/reference/variables/SynchronisedStorageComponentType.md +0 -19
  629. package/docs/reference/variables/VerifiableStorageConnectorType.md +0 -19
@@ -1 +1 @@
1
- {"version":3,"file":"rightsManagementPxp.js","sourceRoot":"","sources":["../../../src/components/rightsManagementPxp.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,gBAAgB,EAAE,EAAE,EAAmB,MAAM,gBAAgB,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAO3D,OAAO,EAAE,2BAA2B,EAAE,MAAM,yCAAyC,CAAC;AAGtF,OAAO,EAAE,gCAAgC,EAAE,MAAM,qDAAqD,CAAC;AAEvG;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,sCAAsC,CAC3D,UAAsC,EACtC,OAA0C,EAC1C,cAAkD;IAMlD,IAAI,SAAqD,CAAC;IAC1D,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,gCAAgC,CAAC,OAAO,EAAE,CAAC;QACtE,MAAM,OAAO,GAA2D,EAAE,CAAC;QAC3E,IAAI,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,OAAO,EAAE,mBAAmB,CAAC,EAAE,CAAC;YAChE,KAAK,MAAM,YAAY,IAAI,cAAc,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;gBACvE,OAAO,CAAC,IAAI,CAAC;oBACZ,QAAQ,EAAE,YAAY,CAAC,EAAE;oBACzB,MAAM,EAAE,MAAM,kBAAkB,CAAC,aAAa,CAAC,UAAU,EAAE,YAAY,CAAC;iBACxE,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;QAED,SAAS,GAAG,IAAI,2BAA2B,CAAC;YAC3C,oBAAoB,EAAE,UAAU,CAAC,yBAAyB,CAAC,kBAAkB,CAAC;YAC9E,GAAG,cAAc,CAAC,OAAO;YACzB,MAAM,EAAE;gBACP,GAAG,cAAc,CAAC,OAAO,EAAE,MAAM;gBACjC,OAAO,EAAE,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,IAAI,OAAO;aAC3D;SACD,CAAC,CAAC;QACH,YAAY,mCAA+C,CAAC;IAC7D,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 { ComponentFactory, Is, type IComponent } from \"@twin.org/core\";\nimport { EngineModuleHelper } from \"@twin.org/engine-core\";\nimport type { IEngineCore, IEngineCoreContext } from \"@twin.org/engine-models\";\nimport { nameofKebabCase } from \"@twin.org/nameof\";\nimport type {\n\tIPolicyExecutionAction,\n\tIPolicyExecutionPointComponent\n} from \"@twin.org/rights-management-models\";\nimport { PolicyExecutionPointService } from \"@twin.org/rights-management-pxp-service\";\nimport type { RightsManagementPxpComponentConfig } from \"../models/config/rightsManagementPxpComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { RightsManagementPxpComponentType } from \"../models/types/rightsManagementPxpComponentType.js\";\n\n/**\n * Initialise the rights management PXP 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 initialiseRightsManagementPxpComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: RightsManagementPxpComponentConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof ComponentFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: IPolicyExecutionPointComponent | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === RightsManagementPxpComponentType.Service) {\n\t\tconst modules: { actionId: string; action: IPolicyExecutionAction }[] = [];\n\t\tif (Is.arrayValue(instanceConfig.options?.actionModulesConfig)) {\n\t\t\tfor (const moduleConfig of instanceConfig.options.actionModulesConfig) {\n\t\t\t\tmodules.push({\n\t\t\t\t\tactionId: moduleConfig.id,\n\t\t\t\t\taction: await EngineModuleHelper.loadComponent(engineCore, moduleConfig)\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\tcomponent = new PolicyExecutionPointService({\n\t\t\tloggingComponentType: engineCore.getRegisteredInstanceType(\"loggingComponent\"),\n\t\t\t...instanceConfig.options,\n\t\t\tconfig: {\n\t\t\t\t...instanceConfig.options?.config,\n\t\t\t\tactions: instanceConfig.options?.config?.actions ?? modules\n\t\t\t}\n\t\t});\n\t\tinstanceType = nameofKebabCase(PolicyExecutionPointService);\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
1
+ {"version":3,"file":"rightsManagementPxp.js","sourceRoot":"","sources":["../../../src/components/rightsManagementPxp.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAOlD,OAAO,EAAE,2BAA2B,EAAE,MAAM,yCAAyC,CAAC;AAGtF,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,CACzD,IAAI,2BAA2B,CAC9B,gBAAgB,CAAC,WAAW,CAC3B;YACC,oBAAoB,EAAE,UAAU,CAAC,uBAAuB,+BAEvD;SACD,EACD,YAAY,CAAC,OAAO,CACpB,CACD,CAAC;QACH,gBAAgB,mCAA+C,CAAC;IACjE,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 { 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 { PolicyExecutionPointService } from \"@twin.org/rights-management-pxp-service\";\nimport type { RightsManagementPxpComponentConfig } from \"../models/config/rightsManagementPxpComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { RightsManagementPxpComponentType } from \"../models/types/rightsManagementPxpComponentType.js\";\nimport { EngineTypeHelper } from \"../utils/engineTypeHelper.js\";\n\n/**\n * Initialise the rights management PXP 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 initialiseRightsManagementPxpComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: RightsManagementPxpComponentConfig\n): EngineTypeInitialiserReturn<typeof instanceConfig, typeof ComponentFactory> {\n\tlet createComponent;\n\tlet instanceTypeName;\n\n\tif (instanceConfig.type === RightsManagementPxpComponentType.Service) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) =>\n\t\t\tnew PolicyExecutionPointService(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(\n\t\t\t\t\t{\n\t\t\t\t\t\tloggingComponentType: engineCore.getRegisteredLoggerType(\n\t\t\t\t\t\t\tnameof(PolicyExecutionPointService)\n\t\t\t\t\t\t)\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 = nameofKebabCase(PolicyExecutionPointService);\n\t}\n\n\treturn {\n\t\tcreateComponent,\n\t\tinstanceTypeName,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
@@ -0,0 +1,35 @@
1
+ // Copyright 2026 IOTA Stiftung.
2
+ // SPDX-License-Identifier: Apache-2.0.
3
+ import { ComponentFactory } from "@twin.org/core";
4
+ import { SchemaVersionService, initSchema } from "@twin.org/entity-storage-service";
5
+ import { initialiseEntityStorageConnector } from "./entityStorage.js";
6
+ import { SchemaVersionMigrationComponentType } from "../models/types/schemaVersionMigrationComponentType.js";
7
+ import { EngineTypeHelper } from "../utils/engineTypeHelper.js";
8
+ /**
9
+ * Initialise the schema version migration component.
10
+ * @param engineCore The engine core.
11
+ * @param context The context for the engine.
12
+ * @param instanceConfig The instance config.
13
+ * @returns The instance created and the factory for it.
14
+ */
15
+ export function initialiseSchemaVersionMigrationComponent(engineCore, context, instanceConfig) {
16
+ let createComponent;
17
+ let instanceTypeName;
18
+ if (instanceConfig.type === SchemaVersionMigrationComponentType.Service) {
19
+ createComponent = (createConfig) => {
20
+ initSchema();
21
+ // No partition keys ([] not [Node]) schema versions track
22
+ // entity type structure globally — there is no per-context versioning and no scenario
23
+ // where migrations should read from a different connector than the rest of entity storage.
24
+ initialiseEntityStorageConnector(engineCore, context, createConfig.options?.schemaVersionStorageType, "SchemaVersion", []);
25
+ return new SchemaVersionService(EngineTypeHelper.mergeConfig(createConfig.options));
26
+ };
27
+ instanceTypeName = "schema-version-service";
28
+ }
29
+ return {
30
+ createComponent,
31
+ instanceTypeName,
32
+ factory: ComponentFactory
33
+ };
34
+ }
35
+ //# sourceMappingURL=schemaVersionMigration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemaVersionMigration.js","sourceRoot":"","sources":["../../../src/components/schemaVersionMigration.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAMlD,OAAO,EAEN,oBAAoB,EACpB,UAAU,EACV,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAGtE,OAAO,EAAE,mCAAmC,EAAE,MAAM,wDAAwD,CAAC;AAC7G,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,UAAU,yCAAyC,CACxD,UAAsC,EACtC,OAA0C,EAC1C,cAAqD;IAErD,IAAI,eAAe,CAAC;IACpB,IAAI,gBAAgB,CAAC;IAErB,IAAI,cAAc,CAAC,IAAI,KAAK,mCAAmC,CAAC,OAAO,EAAE,CAAC;QACzE,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE;YACzD,UAAU,EAAE,CAAC;YAEb,0DAA0D;YAC1D,sFAAsF;YACtF,2FAA2F;YAC3F,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,YAAY,CAAC,OAAO,EAAE,wBAAwB,mBAE9C,EAAE,CACF,CAAC;YACF,OAAO,IAAI,oBAAoB,CAC9B,gBAAgB,CAAC,WAAW,CAAqC,YAAY,CAAC,OAAO,CAAC,CACtF,CAAC;QACH,CAAC,CAAC;QACF,gBAAgB,2BAAwC,CAAC;IAC1D,CAAC;IAED,OAAO;QACN,eAAe;QACf,gBAAgB;QAChB,OAAO,EAAE,gBAAgB;KACzB,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2026 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { ComponentFactory } from \"@twin.org/core\";\nimport type {\n\tEngineTypeInitialiserReturn,\n\tIEngineCore,\n\tIEngineCoreContext\n} from \"@twin.org/engine-models\";\nimport {\n\ttype SchemaVersion,\n\tSchemaVersionService,\n\tinitSchema\n} from \"@twin.org/entity-storage-service\";\nimport { nameof, nameofKebabCase } from \"@twin.org/nameof\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { SchemaVersionMigrationComponentConfig } from \"../models/config/schemaVersionMigrationComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { SchemaVersionMigrationComponentType } from \"../models/types/schemaVersionMigrationComponentType.js\";\nimport { EngineTypeHelper } from \"../utils/engineTypeHelper.js\";\n\n/**\n * Initialise the schema version migration 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 initialiseSchemaVersionMigrationComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: SchemaVersionMigrationComponentConfig\n): EngineTypeInitialiserReturn<typeof instanceConfig, typeof ComponentFactory> {\n\tlet createComponent;\n\tlet instanceTypeName;\n\n\tif (instanceConfig.type === SchemaVersionMigrationComponentType.Service) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) => {\n\t\t\tinitSchema();\n\n\t\t\t// No partition keys ([] not [Node]) schema versions track\n\t\t\t// entity type structure globally — there is no per-context versioning and no scenario\n\t\t\t// where migrations should read from a different connector than the rest of entity storage.\n\t\t\tinitialiseEntityStorageConnector(\n\t\t\t\tengineCore,\n\t\t\t\tcontext,\n\t\t\t\tcreateConfig.options?.schemaVersionStorageType,\n\t\t\t\tnameof<SchemaVersion>(),\n\t\t\t\t[]\n\t\t\t);\n\t\t\treturn new SchemaVersionService(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(createConfig.options)\n\t\t\t);\n\t\t};\n\t\tinstanceTypeName = nameofKebabCase(SchemaVersionService);\n\t}\n\n\treturn {\n\t\tcreateComponent,\n\t\tinstanceTypeName,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
@@ -1,6 +1,11 @@
1
- import { TaskSchedulerService } from "@twin.org/background-task-scheduler";
1
+ // Copyright 2024 IOTA Stiftung.
2
+ // SPDX-License-Identifier: Apache-2.0.
3
+ import { initSchema, TaskSchedulerService } from "@twin.org/background-task-scheduler";
4
+ import { ContextIdHelper, ContextIdKeys } from "@twin.org/context";
2
5
  import { ComponentFactory } from "@twin.org/core";
6
+ import { initialiseEntityStorageConnector } from "./entityStorage.js";
3
7
  import { TaskSchedulerComponentType } from "../models/types/taskSchedulerComponentType.js";
8
+ import { EngineTypeHelper } from "../utils/engineTypeHelper.js";
4
9
  /**
5
10
  * Initialise a task scheduler.
6
11
  * @param engineCore The engine core.
@@ -8,19 +13,22 @@ import { TaskSchedulerComponentType } from "../models/types/taskSchedulerCompone
8
13
  * @param instanceConfig The instance config.
9
14
  * @returns The instance created and the factory for it.
10
15
  */
11
- export async function initialiseTaskSchedulerComponent(engineCore, context, instanceConfig) {
12
- let component;
13
- let instanceType;
16
+ export function initialiseTaskSchedulerComponent(engineCore, context, instanceConfig) {
17
+ let createComponent;
18
+ let instanceTypeName;
14
19
  if (instanceConfig.type === TaskSchedulerComponentType.Service) {
15
- component = new TaskSchedulerService({
16
- loggingComponentType: engineCore.getRegisteredInstanceType("loggingComponent"),
17
- ...instanceConfig.options
18
- });
19
- instanceType = "task-scheduler-service";
20
+ createComponent = (createConfig) => {
21
+ initSchema();
22
+ initialiseEntityStorageConnector(engineCore, context, createConfig.options?.scheduledTaskEntityStorageType, "ScheduledTask", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [ContextIdKeys.Node]));
23
+ return new TaskSchedulerService(EngineTypeHelper.mergeConfig({
24
+ loggingComponentType: engineCore.getRegisteredLoggerType("TaskSchedulerService")
25
+ }, createConfig.options));
26
+ };
27
+ instanceTypeName = "task-scheduler-service";
20
28
  }
21
29
  return {
22
- component,
23
- instanceType,
30
+ createComponent,
31
+ instanceTypeName,
24
32
  factory: ComponentFactory
25
33
  };
26
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"taskScheduler.js","sourceRoot":"","sources":["../../../src/components/taskScheduler.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAmB,MAAM,gBAAgB,CAAC;AAKnE,OAAO,EAAE,0BAA0B,EAAE,MAAM,+CAA+C,CAAC;AAE3F;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,gCAAgC,CACrD,UAAsC,EACtC,OAA0C,EAC1C,cAA4C;IAM5C,IAAI,SAA8C,CAAC;IACnD,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,0BAA0B,CAAC,OAAO,EAAE,CAAC;QAChE,SAAS,GAAG,IAAI,oBAAoB,CAAC;YACpC,oBAAoB,EAAE,UAAU,CAAC,yBAAyB,CAAC,kBAAkB,CAAC;YAC9E,GAAG,cAAc,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,YAAY,2BAAwC,CAAC;IACtD,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 { ITaskSchedulerComponent } from \"@twin.org/background-task-models\";\nimport { TaskSchedulerService } from \"@twin.org/background-task-scheduler\";\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 { TaskSchedulerComponentConfig } from \"../models/config/taskSchedulerComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { TaskSchedulerComponentType } from \"../models/types/taskSchedulerComponentType.js\";\n\n/**\n * Initialise a task scheduler.\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 initialiseTaskSchedulerComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: TaskSchedulerComponentConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof ComponentFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: ITaskSchedulerComponent | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === TaskSchedulerComponentType.Service) {\n\t\tcomponent = new TaskSchedulerService({\n\t\t\tloggingComponentType: engineCore.getRegisteredInstanceType(\"loggingComponent\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = nameofKebabCase(TaskSchedulerService);\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
1
+ {"version":3,"file":"taskScheduler.js","sourceRoot":"","sources":["../../../src/components/taskScheduler.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EACN,UAAU,EACV,oBAAoB,EAEpB,MAAM,qCAAqC,CAAC;AAC7C,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,0BAA0B,EAAE,MAAM,+CAA+C,CAAC;AAC3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,UAAU,gCAAgC,CAC/C,UAAsC,EACtC,OAA0C,EAC1C,cAA4C;IAE5C,IAAI,eAAe,CAAC;IACpB,IAAI,gBAAgB,CAAC;IAErB,IAAI,cAAc,CAAC,IAAI,KAAK,0BAA0B,CAAC,OAAO,EAAE,CAAC;QAChE,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE;YACzD,UAAU,EAAE,CAAC;YACb,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,YAAY,CAAC,OAAO,EAAE,8BAA8B,mBAEpD,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAC1F,CAAC;YAEF,OAAO,IAAI,oBAAoB,CAC9B,gBAAgB,CAAC,WAAW,CAC3B;gBACC,oBAAoB,EAAE,UAAU,CAAC,uBAAuB,wBAA8B;aACtF,EACD,YAAY,CAAC,OAAO,CACpB,CACD,CAAC;QACH,CAAC,CAAC;QACF,gBAAgB,2BAAwC,CAAC;IAC1D,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\tinitSchema,\n\tTaskSchedulerService,\n\ttype ScheduledTask\n} from \"@twin.org/background-task-scheduler\";\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 { TaskSchedulerComponentConfig } from \"../models/config/taskSchedulerComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { TaskSchedulerComponentType } from \"../models/types/taskSchedulerComponentType.js\";\nimport { EngineTypeHelper } from \"../utils/engineTypeHelper.js\";\n\n/**\n * Initialise a task scheduler.\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 initialiseTaskSchedulerComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: TaskSchedulerComponentConfig\n): EngineTypeInitialiserReturn<typeof instanceConfig, typeof ComponentFactory> {\n\tlet createComponent;\n\tlet instanceTypeName;\n\n\tif (instanceConfig.type === TaskSchedulerComponentType.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?.scheduledTaskEntityStorageType,\n\t\t\t\tnameof<ScheduledTask>(),\n\t\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [ContextIdKeys.Node])\n\t\t\t);\n\n\t\t\treturn new TaskSchedulerService(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(\n\t\t\t\t\t{\n\t\t\t\t\t\tloggingComponentType: engineCore.getRegisteredLoggerType(nameof(TaskSchedulerService))\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(TaskSchedulerService);\n\t}\n\n\treturn {\n\t\tcreateComponent,\n\t\tinstanceTypeName,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
@@ -3,12 +3,14 @@
3
3
  import { ContextIdHelper, ContextIdKeys } from "@twin.org/context";
4
4
  import { ComponentFactory } from "@twin.org/core";
5
5
  import { EntityStorageTelemetryConnector, initSchema } from "@twin.org/telemetry-connector-entity-storage";
6
+ import { OpenTelemetryTelemetryConnector } from "@twin.org/telemetry-connector-opentelemetry";
6
7
  import { TelemetryConnectorFactory } from "@twin.org/telemetry-models";
7
8
  import { TelemetryRestClient } from "@twin.org/telemetry-rest-client";
8
9
  import { TelemetryService } from "@twin.org/telemetry-service";
9
10
  import { initialiseEntityStorageConnector } from "./entityStorage.js";
10
11
  import { TelemetryComponentType } from "../models/types/telemetryComponentType.js";
11
12
  import { TelemetryConnectorType } from "../models/types/telemetryConnectorType.js";
13
+ import { EngineTypeHelper } from "../utils/engineTypeHelper.js";
12
14
  /**
13
15
  * Initialise a telemetry connector.
14
16
  * @param engineCore The engine core.
@@ -16,29 +18,48 @@ import { TelemetryConnectorType } from "../models/types/telemetryConnectorType.j
16
18
  * @param instanceConfig The instance config.
17
19
  * @returns The instance created and the factory for it.
18
20
  */
19
- export async function initialiseTelemetryConnector(engineCore, context, instanceConfig) {
20
- let component;
21
- let instanceType;
21
+ export function initialiseTelemetryConnector(engineCore, context, instanceConfig) {
22
+ let createComponent;
23
+ let instanceTypeName;
22
24
  if (instanceConfig.type === TelemetryConnectorType.EntityStorage) {
23
- initSchema();
24
- initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.telemetryMetricStorageConnectorType, "TelemetryMetric", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
25
- ContextIdKeys.Node,
26
- ContextIdKeys.Tenant
27
- ]));
28
- initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.telemetryMetricValueStorageConnectorType, "TelemetryMetricValue", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
29
- ContextIdKeys.Node,
30
- ContextIdKeys.Tenant
31
- ]));
32
- component = new EntityStorageTelemetryConnector({
33
- loggingComponentType: engineCore.getRegisteredInstanceType("loggingComponent"),
34
- ...instanceConfig.options
35
- });
36
- instanceType = EntityStorageTelemetryConnector.NAMESPACE;
25
+ createComponent = (createConfig) => {
26
+ initSchema();
27
+ initialiseEntityStorageConnector(engineCore, context, createConfig.options?.telemetryMetricStorageConnectorType, "TelemetryMetric", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
28
+ ContextIdKeys.Node,
29
+ ContextIdKeys.Tenant
30
+ ]));
31
+ initialiseEntityStorageConnector(engineCore, context, createConfig.options?.telemetryMetricValueStorageConnectorType, "TelemetryMetricValue", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
32
+ ContextIdKeys.Node,
33
+ ContextIdKeys.Tenant
34
+ ]));
35
+ return new EntityStorageTelemetryConnector(EngineTypeHelper.mergeConfig({
36
+ loggingComponentType: engineCore.getRegisteredLoggerType("EntityStorageTelemetryConnector")
37
+ }, createConfig.options));
38
+ };
39
+ instanceTypeName = EntityStorageTelemetryConnector.NAMESPACE;
40
+ }
41
+ else if (instanceConfig.type === TelemetryConnectorType.OpenTelemetry) {
42
+ createComponent = (createConfig) => {
43
+ initSchema();
44
+ // OpenTelemetry connector uses the entity storage internally so we need to initialise it here as well
45
+ initialiseEntityStorageConnector(engineCore, context, createConfig.options?.telemetryMetricStorageConnectorType, "TelemetryMetric", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
46
+ ContextIdKeys.Node,
47
+ ContextIdKeys.Tenant
48
+ ]));
49
+ initialiseEntityStorageConnector(engineCore, context, createConfig.options?.telemetryMetricValueStorageConnectorType, "TelemetryMetricValue", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
50
+ ContextIdKeys.Node,
51
+ ContextIdKeys.Tenant
52
+ ]));
53
+ return new OpenTelemetryTelemetryConnector(EngineTypeHelper.mergeConfig({
54
+ loggingComponentType: engineCore.getRegisteredLoggerType("OpenTelemetryTelemetryConnector")
55
+ }, createConfig.options));
56
+ };
57
+ instanceTypeName = OpenTelemetryTelemetryConnector.NAMESPACE;
37
58
  }
38
59
  return {
39
- instanceType,
40
- factory: TelemetryConnectorFactory,
41
- component
60
+ createComponent: createComponent,
61
+ instanceTypeName,
62
+ factory: TelemetryConnectorFactory
42
63
  };
43
64
  }
44
65
  /**
@@ -48,23 +69,23 @@ export async function initialiseTelemetryConnector(engineCore, context, instance
48
69
  * @param instanceConfig The instance config.
49
70
  * @returns The instance created and the factory for it.
50
71
  */
51
- export async function initialiseTelemetryComponent(engineCore, context, instanceConfig) {
52
- let component;
53
- let instanceType;
72
+ export function initialiseTelemetryComponent(engineCore, context, instanceConfig) {
73
+ let createComponent;
74
+ let instanceTypeName;
54
75
  if (instanceConfig.type === TelemetryComponentType.Service) {
55
- component = new TelemetryService({
76
+ createComponent = (createConfig) => new TelemetryService(EngineTypeHelper.mergeConfig({
56
77
  telemetryConnectorType: engineCore.getRegisteredInstanceType("telemetryConnector"),
57
- ...instanceConfig.options
58
- });
59
- instanceType = "telemetry-service";
78
+ platformComponentType: engineCore.getRegisteredInstanceType("platformComponent")
79
+ }, createConfig.options));
80
+ instanceTypeName = "telemetry-service";
60
81
  }
61
82
  else if (instanceConfig.type === TelemetryComponentType.RestClient) {
62
- component = new TelemetryRestClient(instanceConfig.options);
63
- instanceType = "telemetry-rest-client";
83
+ createComponent = (createConfig) => new TelemetryRestClient(EngineTypeHelper.mergeConfig(createConfig.options));
84
+ instanceTypeName = "telemetry-rest-client";
64
85
  }
65
86
  return {
66
- component,
67
- instanceType,
87
+ createComponent: createComponent,
88
+ instanceTypeName,
68
89
  factory: ComponentFactory
69
90
  };
70
91
  }
@@ -1 +1 @@
1
- {"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../../src/components/telemetry.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAmB,MAAM,gBAAgB,CAAC;AAGnE,OAAO,EACN,+BAA+B,EAC/B,UAAU,EAGV,MAAM,8CAA8C,CAAC;AACtD,OAAO,EACN,yBAAyB,EAGzB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAItE,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AAEnF;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CACjD,UAAsC,EACtC,OAA0C,EAC1C,cAAwC;IAMxC,IAAI,SAA0C,CAAC;IAC/C,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,sBAAsB,CAAC,aAAa,EAAE,CAAC;QAClE,UAAU,EAAE,CAAC;QACb,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,cAAc,CAAC,OAAO,EAAE,mCAAmC,qBAE3D,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,wCAAwC,0BAEhE,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE;YACpE,aAAa,CAAC,IAAI;YAClB,aAAa,CAAC,MAAM;SACpB,CAAC,CACF,CAAC;QACF,SAAS,GAAG,IAAI,+BAA+B,CAAC;YAC/C,oBAAoB,EAAE,UAAU,CAAC,yBAAyB,CAAC,kBAAkB,CAAC;YAC9E,GAAG,cAAc,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,YAAY,GAAG,+BAA+B,CAAC,SAAS,CAAC;IAC1D,CAAC;IAED,OAAO;QACN,YAAY;QACZ,OAAO,EAAE,yBAAyB;QAClC,SAAS;KACT,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CACjD,UAAsC,EACtC,OAA0C,EAC1C,cAAwC;IAMxC,IAAI,SAA0C,CAAC;IAC/C,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,sBAAsB,CAAC,OAAO,EAAE,CAAC;QAC5D,SAAS,GAAG,IAAI,gBAAgB,CAAC;YAChC,sBAAsB,EAAE,UAAU,CAAC,yBAAyB,CAAC,oBAAoB,CAAC;YAClF,GAAG,cAAc,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,YAAY,sBAAoC,CAAC;IAClD,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,sBAAsB,CAAC,UAAU,EAAE,CAAC;QACtE,SAAS,GAAG,IAAI,mBAAmB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC5D,YAAY,0BAAuC,CAAC;IACrD,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 { 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 {\n\tEntityStorageTelemetryConnector,\n\tinitSchema,\n\ttype TelemetryMetric,\n\ttype TelemetryMetricValue\n} from \"@twin.org/telemetry-connector-entity-storage\";\nimport {\n\tTelemetryConnectorFactory,\n\ttype ITelemetryComponent,\n\ttype ITelemetryConnector\n} from \"@twin.org/telemetry-models\";\nimport { TelemetryRestClient } from \"@twin.org/telemetry-rest-client\";\nimport { TelemetryService } from \"@twin.org/telemetry-service\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { TelemetryComponentConfig } from \"../models/config/telemetryComponentConfig.js\";\nimport type { TelemetryConnectorConfig } from \"../models/config/telemetryConnectorConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { TelemetryComponentType } from \"../models/types/telemetryComponentType.js\";\nimport { TelemetryConnectorType } from \"../models/types/telemetryConnectorType.js\";\n\n/**\n * Initialise a telemetry 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 initialiseTelemetryConnector(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: TelemetryConnectorConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof TelemetryConnectorFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: ITelemetryConnector | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === TelemetryConnectorType.EntityStorage) {\n\t\tinitSchema();\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.telemetryMetricStorageConnectorType,\n\t\t\tnameof<TelemetryMetric>(),\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?.telemetryMetricValueStorageConnectorType,\n\t\t\tnameof<TelemetryMetricValue>(),\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\tcomponent = new EntityStorageTelemetryConnector({\n\t\t\tloggingComponentType: engineCore.getRegisteredInstanceType(\"loggingComponent\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = EntityStorageTelemetryConnector.NAMESPACE;\n\t}\n\n\treturn {\n\t\tinstanceType,\n\t\tfactory: TelemetryConnectorFactory,\n\t\tcomponent\n\t};\n}\n\n/**\n * Initialise the telemetry 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 initialiseTelemetryComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: TelemetryComponentConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof ComponentFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: ITelemetryComponent | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === TelemetryComponentType.Service) {\n\t\tcomponent = new TelemetryService({\n\t\t\ttelemetryConnectorType: engineCore.getRegisteredInstanceType(\"telemetryConnector\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = nameofKebabCase(TelemetryService);\n\t} else if (instanceConfig.type === TelemetryComponentType.RestClient) {\n\t\tcomponent = new TelemetryRestClient(instanceConfig.options);\n\t\tinstanceType = nameofKebabCase(TelemetryRestClient);\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
1
+ {"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../../../src/components/telemetry.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAmB,MAAM,gBAAgB,CAAC;AAOnE,OAAO,EACN,+BAA+B,EAC/B,UAAU,EAGV,MAAM,8CAA8C,CAAC;AACtD,OAAO,EAAE,+BAA+B,EAAE,MAAM,6CAA6C,CAAC;AAC9F,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAItE,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,UAAU,4BAA4B,CAC3C,UAAsC,EACtC,OAA0C,EAC1C,cAAwC;IAExC,IAAI,eAAe,CAAC;IACpB,IAAI,gBAAgB,CAAC;IAErB,IAAI,cAAc,CAAC,IAAI,KAAK,sBAAsB,CAAC,aAAa,EAAE,CAAC;QAClE,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE;YACzD,UAAU,EAAE,CAAC;YACb,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,YAAY,CAAC,OAAO,EAAE,mCAAmC,qBAEzD,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,wCAAwC,0BAE9D,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE;gBACpE,aAAa,CAAC,IAAI;gBAClB,aAAa,CAAC,MAAM;aACpB,CAAC,CACF,CAAC;YACF,OAAO,IAAI,+BAA+B,CACzC,gBAAgB,CAAC,WAAW,CAC3B;gBACC,oBAAoB,EAAE,UAAU,CAAC,uBAAuB,mCAEvD;aACD,EACD,YAAY,CAAC,OAAO,CACpB,CACD,CAAC;QACH,CAAC,CAAC;QACF,gBAAgB,GAAG,+BAA+B,CAAC,SAAS,CAAC;IAC9D,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,sBAAsB,CAAC,aAAa,EAAE,CAAC;QACzE,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE;YACzD,UAAU,EAAE,CAAC;YACb,sGAAsG;YACtG,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,YAAY,CAAC,OAAO,EAAE,mCAAmC,qBAEzD,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,wCAAwC,0BAE9D,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE;gBACpE,aAAa,CAAC,IAAI;gBAClB,aAAa,CAAC,MAAM;aACpB,CAAC,CACF,CAAC;YACF,OAAO,IAAI,+BAA+B,CACzC,gBAAgB,CAAC,WAAW,CAC3B;gBACC,oBAAoB,EAAE,UAAU,CAAC,uBAAuB,mCAEvD;aACD,EACD,YAAY,CAAC,OAAO,CACpB,CACD,CAAC;QACH,CAAC,CAAC;QACF,gBAAgB,GAAG,+BAA+B,CAAC,SAAS,CAAC;IAC9D,CAAC;IAED,OAAO;QACN,eAAe,EAAE,eAAsE;QACvF,gBAAgB;QAChB,OAAO,EAAE,yBAAyB;KAClC,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,4BAA4B,CAC3C,UAAsC,EACtC,OAA0C,EAC1C,cAAwC;IAExC,IAAI,eAAe,CAAC;IACpB,IAAI,gBAAgB,CAAC;IAErB,IAAI,cAAc,CAAC,IAAI,KAAK,sBAAsB,CAAC,OAAO,EAAE,CAAC;QAC5D,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE,CACzD,IAAI,gBAAgB,CACnB,gBAAgB,CAAC,WAAW,CAC3B;YACC,sBAAsB,EAAE,UAAU,CAAC,yBAAyB,CAAC,oBAAoB,CAAC;YAClF,qBAAqB,EAAE,UAAU,CAAC,yBAAyB,CAAC,mBAAmB,CAAC;SAChF,EACD,YAAY,CAAC,OAAO,CACpB,CACD,CAAC;QACH,gBAAgB,sBAAoC,CAAC;IACtD,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,sBAAsB,CAAC,UAAU,EAAE,CAAC;QACtE,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE,CACzD,IAAI,mBAAmB,CACtB,gBAAgB,CAAC,WAAW,CAAqC,YAAY,CAAC,OAAO,CAAC,CACtF,CAAC;QACH,gBAAgB,0BAAuC,CAAC;IACzD,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 { 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 {\n\tEntityStorageTelemetryConnector,\n\tinitSchema,\n\ttype TelemetryMetric,\n\ttype TelemetryMetricValue\n} from \"@twin.org/telemetry-connector-entity-storage\";\nimport { OpenTelemetryTelemetryConnector } from \"@twin.org/telemetry-connector-opentelemetry\";\nimport { TelemetryConnectorFactory } from \"@twin.org/telemetry-models\";\nimport { TelemetryRestClient } from \"@twin.org/telemetry-rest-client\";\nimport { TelemetryService } from \"@twin.org/telemetry-service\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { TelemetryComponentConfig } from \"../models/config/telemetryComponentConfig.js\";\nimport type { TelemetryConnectorConfig } from \"../models/config/telemetryConnectorConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { TelemetryComponentType } from \"../models/types/telemetryComponentType.js\";\nimport { TelemetryConnectorType } from \"../models/types/telemetryConnectorType.js\";\nimport { EngineTypeHelper } from \"../utils/engineTypeHelper.js\";\n\n/**\n * Initialise a telemetry 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 function initialiseTelemetryConnector(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: TelemetryConnectorConfig\n): EngineTypeInitialiserReturn<typeof instanceConfig, typeof TelemetryConnectorFactory> {\n\tlet createComponent;\n\tlet instanceTypeName;\n\n\tif (instanceConfig.type === TelemetryConnectorType.EntityStorage) {\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?.telemetryMetricStorageConnectorType,\n\t\t\t\tnameof<TelemetryMetric>(),\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?.telemetryMetricValueStorageConnectorType,\n\t\t\t\tnameof<TelemetryMetricValue>(),\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 EntityStorageTelemetryConnector(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(\n\t\t\t\t\t{\n\t\t\t\t\t\tloggingComponentType: engineCore.getRegisteredLoggerType(\n\t\t\t\t\t\t\tnameof(EntityStorageTelemetryConnector)\n\t\t\t\t\t\t)\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 = EntityStorageTelemetryConnector.NAMESPACE;\n\t} else if (instanceConfig.type === TelemetryConnectorType.OpenTelemetry) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) => {\n\t\t\tinitSchema();\n\t\t\t// OpenTelemetry connector uses the entity storage internally so we need to initialise it here as well\n\t\t\tinitialiseEntityStorageConnector(\n\t\t\t\tengineCore,\n\t\t\t\tcontext,\n\t\t\t\tcreateConfig.options?.telemetryMetricStorageConnectorType,\n\t\t\t\tnameof<TelemetryMetric>(),\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?.telemetryMetricValueStorageConnectorType,\n\t\t\t\tnameof<TelemetryMetricValue>(),\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 OpenTelemetryTelemetryConnector(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(\n\t\t\t\t\t{\n\t\t\t\t\t\tloggingComponentType: engineCore.getRegisteredLoggerType(\n\t\t\t\t\t\t\tnameof(OpenTelemetryTelemetryConnector)\n\t\t\t\t\t\t)\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 = OpenTelemetryTelemetryConnector.NAMESPACE;\n\t}\n\n\treturn {\n\t\tcreateComponent: createComponent as (createConfig: typeof instanceConfig) => IComponent,\n\t\tinstanceTypeName,\n\t\tfactory: TelemetryConnectorFactory\n\t};\n}\n\n/**\n * Initialise the telemetry 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 initialiseTelemetryComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: TelemetryComponentConfig\n): EngineTypeInitialiserReturn<typeof instanceConfig, typeof ComponentFactory> {\n\tlet createComponent;\n\tlet instanceTypeName;\n\n\tif (instanceConfig.type === TelemetryComponentType.Service) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) =>\n\t\t\tnew TelemetryService(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(\n\t\t\t\t\t{\n\t\t\t\t\t\ttelemetryConnectorType: engineCore.getRegisteredInstanceType(\"telemetryConnector\"),\n\t\t\t\t\t\tplatformComponentType: engineCore.getRegisteredInstanceType(\"platformComponent\")\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 = nameofKebabCase(TelemetryService);\n\t} else if (instanceConfig.type === TelemetryComponentType.RestClient) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) =>\n\t\t\tnew TelemetryRestClient(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(createConfig.options)\n\t\t\t);\n\t\tinstanceTypeName = nameofKebabCase(TelemetryRestClient);\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"]}
@@ -5,6 +5,7 @@ import { ContextIdHelper, ContextIdKeys } from "@twin.org/context";
5
5
  import { ComponentFactory } from "@twin.org/core";
6
6
  import { initialiseEntityStorageConnector } from "./entityStorage.js";
7
7
  import { TenantAdminComponentType } from "../models/types/tenantAdminComponentType.js";
8
+ import { EngineTypeHelper } from "../utils/engineTypeHelper.js";
8
9
  /**
9
10
  * Initialise the tenant admin component.
10
11
  * @param engineCore The engine core.
@@ -12,20 +13,20 @@ import { TenantAdminComponentType } from "../models/types/tenantAdminComponentTy
12
13
  * @param instanceConfig The instance config.
13
14
  * @returns The instance created and the factory for it.
14
15
  */
15
- export async function initialiseTenantAdminComponent(engineCore, context, instanceConfig) {
16
- let component;
17
- let instanceType;
16
+ export function initialiseTenantAdminComponent(engineCore, context, instanceConfig) {
17
+ let createComponent;
18
+ let instanceTypeName;
18
19
  if (instanceConfig.type === TenantAdminComponentType.Service) {
19
- initSchemaTenant();
20
- initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.tenantEntityStorageType, "Tenant", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [ContextIdKeys.Node]));
21
- component = new TenantAdminService({
22
- ...instanceConfig.options
23
- });
24
- instanceType = "tenant-admin-service";
20
+ createComponent = (createConfig) => {
21
+ initSchemaTenant();
22
+ initialiseEntityStorageConnector(engineCore, context, createConfig.options?.tenantEntityStorageType, "Tenant", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [ContextIdKeys.Node]));
23
+ return new TenantAdminService(EngineTypeHelper.mergeConfig(createConfig.options));
24
+ };
25
+ instanceTypeName = "tenant-admin-service";
25
26
  }
26
27
  return {
27
- component,
28
- instanceType,
28
+ createComponent,
29
+ instanceTypeName,
29
30
  factory: ComponentFactory
30
31
  };
31
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tenant.js","sourceRoot":"","sources":["../../../src/components/tenant.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAGN,kBAAkB,EAClB,UAAU,IAAI,gBAAgB,EAC9B,MAAM,gCAAgC,CAAC;AACxC,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,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,OAAO,EAAE,CAAC;QAC9D,gBAAgB,EAAE,CAAC;QAEnB,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,cAAc,CAAC,OAAO,EAAE,uBAAuB,YAE/C,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAC1F,CAAC;QAEF,SAAS,GAAG,IAAI,kBAAkB,CAAC;YAClC,GAAG,cAAc,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,YAAY,yBAAsC,CAAC;IACpD,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 {\n\ttype ITenantAdminComponent,\n\ttype Tenant,\n\tTenantAdminService,\n\tinitSchema as initSchemaTenant\n} from \"@twin.org/api-tenant-processor\";\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 { TenantAdminComponentConfig } from \"../models/config/tenantAdminComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { TenantAdminComponentType } from \"../models/types/tenantAdminComponentType.js\";\n\n/**\n * Initialise the tenant admin 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 initialiseTenantAdminComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: TenantAdminComponentConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof ComponentFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: ITenantAdminComponent | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === TenantAdminComponentType.Service) {\n\t\tinitSchemaTenant();\n\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.tenantEntityStorageType,\n\t\t\tnameof<Tenant>(),\n\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [ContextIdKeys.Node])\n\t\t);\n\n\t\tcomponent = new TenantAdminService({\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = nameofKebabCase(TenantAdminService);\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
1
+ {"version":3,"file":"tenant.js","sourceRoot":"","sources":["../../../src/components/tenant.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAEN,kBAAkB,EAClB,UAAU,IAAI,gBAAgB,EAC9B,MAAM,gCAAgC,CAAC;AACxC,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,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,OAAO,EAAE,CAAC;QAC9D,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE;YACzD,gBAAgB,EAAE,CAAC;YAEnB,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,YAAY,CAAC,OAAO,EAAE,uBAAuB,YAE7C,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAC1F,CAAC;YACF,OAAO,IAAI,kBAAkB,CAC5B,gBAAgB,CAAC,WAAW,CAAqC,YAAY,CAAC,OAAO,CAAC,CACtF,CAAC;QACH,CAAC,CAAC;QACF,gBAAgB,yBAAsC,CAAC;IACxD,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\ttype Tenant,\n\tTenantAdminService,\n\tinitSchema as initSchemaTenant\n} from \"@twin.org/api-tenant-processor\";\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 { TenantAdminComponentConfig } from \"../models/config/tenantAdminComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { TenantAdminComponentType } from \"../models/types/tenantAdminComponentType.js\";\nimport { EngineTypeHelper } from \"../utils/engineTypeHelper.js\";\n\n/**\n * Initialise the tenant admin 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 initialiseTenantAdminComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: TenantAdminComponentConfig\n): EngineTypeInitialiserReturn<typeof instanceConfig, typeof ComponentFactory> {\n\tlet createComponent;\n\tlet instanceTypeName;\n\n\tif (instanceConfig.type === TenantAdminComponentType.Service) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) => {\n\t\t\tinitSchemaTenant();\n\n\t\t\tinitialiseEntityStorageConnector(\n\t\t\t\tengineCore,\n\t\t\t\tcontext,\n\t\t\t\tcreateConfig.options?.tenantEntityStorageType,\n\t\t\t\tnameof<Tenant>(),\n\t\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [ContextIdKeys.Node])\n\t\t\t);\n\t\t\treturn new TenantAdminService(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(createConfig.options)\n\t\t\t);\n\t\t};\n\t\tinstanceTypeName = nameofKebabCase(TenantAdminService);\n\t}\n\n\treturn {\n\t\tcreateComponent,\n\t\tinstanceTypeName,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
@@ -0,0 +1,29 @@
1
+ // Copyright 2024 IOTA Stiftung.
2
+ // SPDX-License-Identifier: Apache-2.0.
3
+ import { ComponentFactory } from "@twin.org/core";
4
+ import { TrustService } from "@twin.org/trust-service";
5
+ import { TrustComponentType } from "../models/types/trustComponentType.js";
6
+ import { EngineTypeHelper } from "../utils/engineTypeHelper.js";
7
+ /**
8
+ * Initialise the trust component.
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 initialiseTrustComponent(engineCore, context, instanceConfig) {
15
+ let createComponent;
16
+ let instanceTypeName;
17
+ if (instanceConfig.type === TrustComponentType.Service) {
18
+ createComponent = (createConfig) => new TrustService(EngineTypeHelper.mergeConfig({
19
+ loggingComponentType: engineCore.getRegisteredLoggerType("TrustService")
20
+ }, createConfig.options));
21
+ instanceTypeName = "trust-service";
22
+ }
23
+ return {
24
+ createComponent,
25
+ instanceTypeName,
26
+ factory: ComponentFactory
27
+ };
28
+ }
29
+ //# sourceMappingURL=trust.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trust.js","sourceRoot":"","sources":["../../../src/components/trust.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAOlD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAGvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,UAAU,wBAAwB,CACvC,UAAsC,EACtC,OAA0C,EAC1C,cAAoC;IAEpC,IAAI,eAAe,CAAC;IACpB,IAAI,gBAAgB,CAAC;IAErB,IAAI,cAAc,CAAC,IAAI,KAAK,kBAAkB,CAAC,OAAO,EAAE,CAAC;QACxD,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE,CACzD,IAAI,YAAY,CACf,gBAAgB,CAAC,WAAW,CAC3B;YACC,oBAAoB,EAAE,UAAU,CAAC,uBAAuB,gBAAsB;SAC9E,EACD,YAAY,CAAC,OAAO,CACpB,CACD,CAAC;QACH,gBAAgB,kBAAgC,CAAC;IAClD,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 { 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 { TrustService } from \"@twin.org/trust-service\";\nimport type { TrustComponentConfig } from \"../models/config/trustComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { TrustComponentType } from \"../models/types/trustComponentType.js\";\nimport { EngineTypeHelper } from \"../utils/engineTypeHelper.js\";\n\n/**\n * Initialise the trust 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 initialiseTrustComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: TrustComponentConfig\n): EngineTypeInitialiserReturn<typeof instanceConfig, typeof ComponentFactory> {\n\tlet createComponent;\n\tlet instanceTypeName;\n\n\tif (instanceConfig.type === TrustComponentType.Service) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) =>\n\t\t\tnew TrustService(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(\n\t\t\t\t\t{\n\t\t\t\t\t\tloggingComponentType: engineCore.getRegisteredLoggerType(nameof(TrustService))\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 = nameofKebabCase(TrustService);\n\t}\n\n\treturn {\n\t\tcreateComponent,\n\t\tinstanceTypeName,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
@@ -0,0 +1,28 @@
1
+ import { JwtVerifiableCredentialGenerator } from "@twin.org/trust-generators";
2
+ import { TrustGeneratorFactory } from "@twin.org/trust-models";
3
+ import { TrustGeneratorComponentType } from "../models/types/trustGeneratorComponentType.js";
4
+ import { EngineTypeHelper } from "../utils/engineTypeHelper.js";
5
+ /**
6
+ * Initialise the trust generator component.
7
+ * @param engineCore The engine core.
8
+ * @param context The context for the engine.
9
+ * @param instanceConfig The instance config.
10
+ * @returns The instance created and the factory for it.
11
+ */
12
+ export function initialiseTrustGeneratorComponent(engineCore, context, instanceConfig) {
13
+ let createComponent;
14
+ let instanceTypeName;
15
+ if (instanceConfig.type === TrustGeneratorComponentType.JwtVerifiableCredential) {
16
+ createComponent = (createConfig) => new JwtVerifiableCredentialGenerator(EngineTypeHelper.mergeConfig({
17
+ loggingComponentType: engineCore.getRegisteredLoggerType("JwtVerifiableCredentialGenerator"),
18
+ identityComponentType: engineCore.getRegisteredInstanceType("identityComponent")
19
+ }, createConfig.options));
20
+ instanceTypeName = "jwt-verifiable-credential-generator";
21
+ }
22
+ return {
23
+ createComponent,
24
+ instanceTypeName,
25
+ factory: TrustGeneratorFactory
26
+ };
27
+ }
28
+ //# sourceMappingURL=trustGenerator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trustGenerator.js","sourceRoot":"","sources":["../../../src/components/trustGenerator.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,gCAAgC,EAAE,MAAM,4BAA4B,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAG/D,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,uBAAuB,EAAE,CAAC;QACjF,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE,CACzD,IAAI,gCAAgC,CACnC,gBAAgB,CAAC,WAAW,CAC3B;YACC,oBAAoB,EAAE,UAAU,CAAC,uBAAuB,oCAEvD;YACD,qBAAqB,EAAE,UAAU,CAAC,yBAAyB,CAAC,mBAAmB,CAAC;SAChF,EACD,YAAY,CAAC,OAAO,CACpB,CACD,CAAC;QACH,gBAAgB,wCAAoD,CAAC;IACtE,CAAC;IAED,OAAO;QACN,eAAe;QACf,gBAAgB;QAChB,OAAO,EAAE,qBAAqB;KAC9B,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type {\n\tEngineTypeInitialiserReturn,\n\tIEngineCore,\n\tIEngineCoreContext\n} from \"@twin.org/engine-models\";\nimport { nameof, nameofKebabCase } from \"@twin.org/nameof\";\nimport { JwtVerifiableCredentialGenerator } from \"@twin.org/trust-generators\";\nimport { TrustGeneratorFactory } from \"@twin.org/trust-models\";\nimport type { TrustGeneratorComponentConfig } from \"../models/config/trustGeneratorComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { TrustGeneratorComponentType } from \"../models/types/trustGeneratorComponentType.js\";\nimport { EngineTypeHelper } from \"../utils/engineTypeHelper.js\";\n\n/**\n * Initialise the trust generator 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 initialiseTrustGeneratorComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: TrustGeneratorComponentConfig\n): EngineTypeInitialiserReturn<typeof instanceConfig, typeof TrustGeneratorFactory> {\n\tlet createComponent;\n\tlet instanceTypeName;\n\n\tif (instanceConfig.type === TrustGeneratorComponentType.JwtVerifiableCredential) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) =>\n\t\t\tnew JwtVerifiableCredentialGenerator(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(\n\t\t\t\t\t{\n\t\t\t\t\t\tloggingComponentType: engineCore.getRegisteredLoggerType(\n\t\t\t\t\t\t\tnameof(JwtVerifiableCredentialGenerator)\n\t\t\t\t\t\t),\n\t\t\t\t\t\tidentityComponentType: engineCore.getRegisteredInstanceType(\"identityComponent\")\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 = nameofKebabCase(JwtVerifiableCredentialGenerator);\n\t}\n\n\treturn {\n\t\tcreateComponent,\n\t\tinstanceTypeName,\n\t\tfactory: TrustGeneratorFactory\n\t};\n}\n"]}
@@ -0,0 +1,31 @@
1
+ import { TrustVerifierFactory } from "@twin.org/trust-models";
2
+ import { IdentityAllowDenyVerifier, JwtVerifiableCredentialVerifier } from "@twin.org/trust-verifiers";
3
+ import { TrustVerifierComponentType } from "../models/types/trustVerifierComponentType.js";
4
+ import { EngineTypeHelper } from "../utils/engineTypeHelper.js";
5
+ /**
6
+ * Initialise the trust verifier component.
7
+ * @param engineCore The engine core.
8
+ * @param context The context for the engine.
9
+ * @param instanceConfig The instance config.
10
+ * @returns The instance created and the factory for it.
11
+ */
12
+ export function initialiseTrustVerifierComponent(engineCore, context, instanceConfig) {
13
+ let createComponent;
14
+ let instanceTypeName;
15
+ if (instanceConfig.type === TrustVerifierComponentType.JwtVerifiableCredential) {
16
+ createComponent = (createConfig) => new JwtVerifiableCredentialVerifier(EngineTypeHelper.mergeConfig({
17
+ identityComponentType: engineCore.getRegisteredInstanceType("identityComponent")
18
+ }, createConfig.options));
19
+ instanceTypeName = "jwt-verifiable-credential-verifier";
20
+ }
21
+ else if (instanceConfig.type === TrustVerifierComponentType.IdentityAllowDeny) {
22
+ createComponent = (createConfig) => new IdentityAllowDenyVerifier(EngineTypeHelper.mergeConfig(createConfig.options));
23
+ instanceTypeName = "identity-allow-deny-verifier";
24
+ }
25
+ return {
26
+ createComponent: createComponent,
27
+ instanceTypeName,
28
+ factory: TrustVerifierFactory
29
+ };
30
+ }
31
+ //# sourceMappingURL=trustVerifier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trustVerifier.js","sourceRoot":"","sources":["../../../src/components/trustVerifier.ts"],"names":[],"mappings":"AAQA,OAAO,EAAuB,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACnF,OAAO,EACN,yBAAyB,EACzB,+BAA+B,EAC/B,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EAAE,0BAA0B,EAAE,MAAM,+CAA+C,CAAC;AAC3F,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,UAAU,gCAAgC,CAC/C,UAAsC,EACtC,OAA0C,EAC1C,cAA4C;IAE5C,IAAI,eAAe,CAAC;IACpB,IAAI,gBAAgB,CAAC;IAErB,IAAI,cAAc,CAAC,IAAI,KAAK,0BAA0B,CAAC,uBAAuB,EAAE,CAAC;QAChF,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE,CACzD,IAAI,+BAA+B,CAClC,gBAAgB,CAAC,WAAW,CAC3B;YACC,qBAAqB,EAAE,UAAU,CAAC,yBAAyB,CAAC,mBAAmB,CAAC;SAChF,EACD,YAAY,CAAC,OAAO,CACpB,CACD,CAAC;QACH,gBAAgB,uCAAmD,CAAC;IACrE,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,0BAA0B,CAAC,iBAAiB,EAAE,CAAC;QACjF,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE,CACzD,IAAI,yBAAyB,CAC5B,gBAAgB,CAAC,WAAW,CAAqC,YAAY,CAAC,OAAO,CAAC,CACtF,CAAC;QACH,gBAAgB,iCAA6C,CAAC;IAC/D,CAAC;IAED,OAAO;QACN,eAAe,EAAE,eAA0E;QAC3F,gBAAgB;QAChB,OAAO,EAAE,oBAAoB;KAC7B,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type {\n\tEngineTypeInitialiserReturn,\n\tIEngineCore,\n\tIEngineCoreContext\n} from \"@twin.org/engine-models\";\nimport { nameofKebabCase } from \"@twin.org/nameof\";\nimport { type ITrustVerifier, TrustVerifierFactory } from \"@twin.org/trust-models\";\nimport {\n\tIdentityAllowDenyVerifier,\n\tJwtVerifiableCredentialVerifier\n} from \"@twin.org/trust-verifiers\";\nimport type { TrustVerifierComponentConfig } from \"../models/config/trustVerifierComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { TrustVerifierComponentType } from \"../models/types/trustVerifierComponentType.js\";\nimport { EngineTypeHelper } from \"../utils/engineTypeHelper.js\";\n\n/**\n * Initialise the trust verifier 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 initialiseTrustVerifierComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: TrustVerifierComponentConfig\n): EngineTypeInitialiserReturn<typeof instanceConfig, typeof TrustVerifierFactory> {\n\tlet createComponent;\n\tlet instanceTypeName;\n\n\tif (instanceConfig.type === TrustVerifierComponentType.JwtVerifiableCredential) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) =>\n\t\t\tnew JwtVerifiableCredentialVerifier(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(\n\t\t\t\t\t{\n\t\t\t\t\t\tidentityComponentType: engineCore.getRegisteredInstanceType(\"identityComponent\")\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 = nameofKebabCase(JwtVerifiableCredentialVerifier);\n\t} else if (instanceConfig.type === TrustVerifierComponentType.IdentityAllowDeny) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) =>\n\t\t\tnew IdentityAllowDenyVerifier(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(createConfig.options)\n\t\t\t);\n\t\tinstanceTypeName = nameofKebabCase(IdentityAllowDenyVerifier);\n\t}\n\n\treturn {\n\t\tcreateComponent: createComponent as (createConfig: typeof instanceConfig) => ITrustVerifier,\n\t\tinstanceTypeName,\n\t\tfactory: TrustVerifierFactory\n\t};\n}\n"]}
@@ -3,6 +3,7 @@ import { HashicorpVaultConnector } from "@twin.org/vault-connector-hashicorp";
3
3
  import { VaultConnectorFactory } from "@twin.org/vault-models";
4
4
  import { initialiseEntityStorageConnector } from "./entityStorage.js";
5
5
  import { VaultConnectorType } from "../models/types/vaultConnectorType.js";
6
+ import { EngineTypeHelper } from "../utils/engineTypeHelper.js";
6
7
  /**
7
8
  * Initialise the vault connector.
8
9
  * @param engineCore The engine core.
@@ -10,23 +11,25 @@ import { VaultConnectorType } from "../models/types/vaultConnectorType.js";
10
11
  * @param instanceConfig The instance config.
11
12
  * @returns The instance created and the factory for it.
12
13
  */
13
- export async function initialiseVaultConnector(engineCore, context, instanceConfig) {
14
- let component;
15
- let instanceType;
14
+ export function initialiseVaultConnector(engineCore, context, instanceConfig) {
15
+ let createComponent;
16
+ let instanceTypeName;
16
17
  if (instanceConfig.type === VaultConnectorType.EntityStorage) {
17
- initSchema();
18
- initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.vaultKeyEntityStorageType, "VaultKey", []);
19
- initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.vaultSecretEntityStorageType, "VaultSecret", []);
20
- component = new EntityStorageVaultConnector(instanceConfig.options);
21
- instanceType = EntityStorageVaultConnector.NAMESPACE;
18
+ createComponent = (createConfig) => {
19
+ initSchema();
20
+ initialiseEntityStorageConnector(engineCore, context, createConfig.options?.vaultKeyEntityStorageType, "VaultKey", []);
21
+ initialiseEntityStorageConnector(engineCore, context, createConfig.options?.vaultSecretEntityStorageType, "VaultSecret", []);
22
+ return new EntityStorageVaultConnector(EngineTypeHelper.mergeConfig(createConfig.options));
23
+ };
24
+ instanceTypeName = EntityStorageVaultConnector.NAMESPACE;
22
25
  }
23
26
  else if (instanceConfig.type === VaultConnectorType.Hashicorp) {
24
- component = new HashicorpVaultConnector(instanceConfig.options);
25
- instanceType = HashicorpVaultConnector.NAMESPACE;
27
+ createComponent = (createConfig) => new HashicorpVaultConnector(EngineTypeHelper.mergeConfig(createConfig.options));
28
+ instanceTypeName = HashicorpVaultConnector.NAMESPACE;
26
29
  }
27
30
  return {
28
- component,
29
- instanceType,
31
+ createComponent: createComponent,
32
+ instanceTypeName,
30
33
  factory: VaultConnectorFactory
31
34
  };
32
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"vault.js","sourceRoot":"","sources":["../../../src/components/vault.ts"],"names":[],"mappings":"AAKA,OAAO,EACN,2BAA2B,EAC3B,UAAU,EAGV,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAwB,MAAM,wBAAwB,CAAC;AACrF,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAGtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAE3E;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC7C,UAAsC,EACtC,OAA0C,EAC1C,cAAoC;IAMpC,IAAI,SAAsC,CAAC;IAC3C,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,kBAAkB,CAAC,aAAa,EAAE,CAAC;QAC9D,UAAU,EAAE,CAAC;QACb,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,cAAc,CAAC,OAAO,EAAE,yBAAyB,cAEjD,EAAE,CACF,CAAC;QACF,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,cAAc,CAAC,OAAO,EAAE,4BAA4B,iBAEpD,EAAE,CACF,CAAC;QACF,SAAS,GAAG,IAAI,2BAA2B,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACpE,YAAY,GAAG,2BAA2B,CAAC,SAAS,CAAC;IACtD,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,kBAAkB,CAAC,SAAS,EAAE,CAAC;QACjE,SAAS,GAAG,IAAI,uBAAuB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAChE,YAAY,GAAG,uBAAuB,CAAC,SAAS,CAAC;IAClD,CAAC;IAED,OAAO;QACN,SAAS;QACT,YAAY;QACZ,OAAO,EAAE,qBAAqB;KAC9B,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IEngineCore, IEngineCoreContext } from \"@twin.org/engine-models\";\nimport { nameof } from \"@twin.org/nameof\";\nimport {\n\tEntityStorageVaultConnector,\n\tinitSchema,\n\ttype VaultKey,\n\ttype VaultSecret\n} from \"@twin.org/vault-connector-entity-storage\";\nimport { HashicorpVaultConnector } from \"@twin.org/vault-connector-hashicorp\";\nimport { VaultConnectorFactory, type IVaultConnector } from \"@twin.org/vault-models\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { VaultConnectorConfig } from \"../models/config/vaultConnectorConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { VaultConnectorType } from \"../models/types/vaultConnectorType.js\";\n\n/**\n * Initialise the vault 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 initialiseVaultConnector(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: VaultConnectorConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof VaultConnectorFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: IVaultConnector | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === VaultConnectorType.EntityStorage) {\n\t\tinitSchema();\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.vaultKeyEntityStorageType,\n\t\t\tnameof<VaultKey>(),\n\t\t\t[]\n\t\t);\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.vaultSecretEntityStorageType,\n\t\t\tnameof<VaultSecret>(),\n\t\t\t[]\n\t\t);\n\t\tcomponent = new EntityStorageVaultConnector(instanceConfig.options);\n\t\tinstanceType = EntityStorageVaultConnector.NAMESPACE;\n\t} else if (instanceConfig.type === VaultConnectorType.Hashicorp) {\n\t\tcomponent = new HashicorpVaultConnector(instanceConfig.options);\n\t\tinstanceType = HashicorpVaultConnector.NAMESPACE;\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: VaultConnectorFactory\n\t};\n}\n"]}
1
+ {"version":3,"file":"vault.js","sourceRoot":"","sources":["../../../src/components/vault.ts"],"names":[],"mappings":"AASA,OAAO,EACN,2BAA2B,EAC3B,UAAU,EAGV,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAGtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,UAAU,wBAAwB,CACvC,UAAsC,EACtC,OAA0C,EAC1C,cAAoC;IAEpC,IAAI,eAAe,CAAC;IACpB,IAAI,gBAAgB,CAAC;IAErB,IAAI,cAAc,CAAC,IAAI,KAAK,kBAAkB,CAAC,aAAa,EAAE,CAAC;QAC9D,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE;YACzD,UAAU,EAAE,CAAC;YACb,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,YAAY,CAAC,OAAO,EAAE,yBAAyB,cAE/C,EAAE,CACF,CAAC;YACF,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,YAAY,CAAC,OAAO,EAAE,4BAA4B,iBAElD,EAAE,CACF,CAAC;YACF,OAAO,IAAI,2BAA2B,CACrC,gBAAgB,CAAC,WAAW,CAAqC,YAAY,CAAC,OAAO,CAAC,CACtF,CAAC;QACH,CAAC,CAAC;QACF,gBAAgB,GAAG,2BAA2B,CAAC,SAAS,CAAC;IAC1D,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,kBAAkB,CAAC,SAAS,EAAE,CAAC;QACjE,eAAe,GAAG,CAAC,YAAmC,EAAE,EAAE,CACzD,IAAI,uBAAuB,CAC1B,gBAAgB,CAAC,WAAW,CAAqC,YAAY,CAAC,OAAO,CAAC,CACtF,CAAC;QACH,gBAAgB,GAAG,uBAAuB,CAAC,SAAS,CAAC;IACtD,CAAC;IAED,OAAO;QACN,eAAe,EAAE,eAAsE;QACvF,gBAAgB;QAChB,OAAO,EAAE,qBAAqB;KAC9B,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport type { IComponent } from \"@twin.org/core\";\nimport type {\n\tEngineTypeInitialiserReturn,\n\tIEngineCore,\n\tIEngineCoreContext\n} from \"@twin.org/engine-models\";\nimport { nameof } from \"@twin.org/nameof\";\nimport {\n\tEntityStorageVaultConnector,\n\tinitSchema,\n\ttype VaultKey,\n\ttype VaultSecret\n} from \"@twin.org/vault-connector-entity-storage\";\nimport { HashicorpVaultConnector } from \"@twin.org/vault-connector-hashicorp\";\nimport { VaultConnectorFactory } from \"@twin.org/vault-models\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { VaultConnectorConfig } from \"../models/config/vaultConnectorConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { VaultConnectorType } from \"../models/types/vaultConnectorType.js\";\nimport { EngineTypeHelper } from \"../utils/engineTypeHelper.js\";\n\n/**\n * Initialise the vault 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 function initialiseVaultConnector(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: VaultConnectorConfig\n): EngineTypeInitialiserReturn<typeof instanceConfig, typeof VaultConnectorFactory> {\n\tlet createComponent;\n\tlet instanceTypeName;\n\n\tif (instanceConfig.type === VaultConnectorType.EntityStorage) {\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?.vaultKeyEntityStorageType,\n\t\t\t\tnameof<VaultKey>(),\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?.vaultSecretEntityStorageType,\n\t\t\t\tnameof<VaultSecret>(),\n\t\t\t\t[]\n\t\t\t);\n\t\t\treturn new EntityStorageVaultConnector(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(createConfig.options)\n\t\t\t);\n\t\t};\n\t\tinstanceTypeName = EntityStorageVaultConnector.NAMESPACE;\n\t} else if (instanceConfig.type === VaultConnectorType.Hashicorp) {\n\t\tcreateComponent = (createConfig: typeof instanceConfig) =>\n\t\t\tnew HashicorpVaultConnector(\n\t\t\t\tEngineTypeHelper.mergeConfig<(typeof instanceConfig)[\"options\"]>(createConfig.options)\n\t\t\t);\n\t\tinstanceTypeName = HashicorpVaultConnector.NAMESPACE;\n\t}\n\n\treturn {\n\t\tcreateComponent: createComponent as (createConfig: typeof instanceConfig) => IComponent,\n\t\tinstanceTypeName,\n\t\tfactory: VaultConnectorFactory\n\t};\n}\n"]}