@twin.org/engine-types 0.0.2-next.9 → 0.0.3-next.10

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 (717) hide show
  1. package/dist/es/components/attestation.js +60 -0
  2. package/dist/es/components/attestation.js.map +1 -0
  3. package/dist/es/components/auditableItemGraph.js +44 -0
  4. package/dist/es/components/auditableItemGraph.js.map +1 -0
  5. package/dist/es/components/auditableItemStream.js +44 -0
  6. package/dist/es/components/auditableItemStream.js.map +1 -0
  7. package/dist/es/components/authenticationGenerator.js +30 -0
  8. package/dist/es/components/authenticationGenerator.js.map +1 -0
  9. package/dist/es/components/backgroundTask.js +31 -0
  10. package/dist/es/components/backgroundTask.js.map +1 -0
  11. package/dist/es/components/blobStorage.js +143 -0
  12. package/dist/es/components/blobStorage.js.map +1 -0
  13. package/dist/es/components/contextIdHandler.js +31 -0
  14. package/dist/es/components/contextIdHandler.js.map +1 -0
  15. package/dist/es/components/dataProcessing.js +89 -0
  16. package/dist/es/components/dataProcessing.js.map +1 -0
  17. package/dist/es/components/dataSpaceConnector.js +51 -0
  18. package/dist/es/components/dataSpaceConnector.js.map +1 -0
  19. package/dist/es/components/documentManagement.js +37 -0
  20. package/dist/es/components/documentManagement.js.map +1 -0
  21. package/dist/es/components/entityStorage.js +226 -0
  22. package/dist/es/components/entityStorage.js.map +1 -0
  23. package/dist/es/components/eventBus.js +63 -0
  24. package/dist/es/components/eventBus.js.map +1 -0
  25. package/dist/es/components/faucet.js +41 -0
  26. package/dist/es/components/faucet.js.map +1 -0
  27. package/dist/es/components/federatedCatalogue.js +38 -0
  28. package/dist/es/components/federatedCatalogue.js.map +1 -0
  29. package/dist/es/components/federatedCatalogueFilter.js +31 -0
  30. package/dist/es/components/federatedCatalogueFilter.js.map +1 -0
  31. package/dist/es/components/identity.js +75 -0
  32. package/dist/es/components/identity.js.map +1 -0
  33. package/dist/es/components/identityProfile.js +64 -0
  34. package/dist/es/components/identityProfile.js.map +1 -0
  35. package/dist/es/components/identityResolver.js +87 -0
  36. package/dist/es/components/identityResolver.js.map +1 -0
  37. package/dist/es/components/immutableProof.js +45 -0
  38. package/dist/es/components/immutableProof.js.map +1 -0
  39. package/dist/es/components/logging.js +73 -0
  40. package/dist/es/components/logging.js.map +1 -0
  41. package/dist/es/components/messaging.js +177 -0
  42. package/dist/es/components/messaging.js.map +1 -0
  43. package/dist/es/components/nft.js +78 -0
  44. package/dist/es/components/nft.js.map +1 -0
  45. package/dist/es/components/rightsManagementDap.js +36 -0
  46. package/dist/es/components/rightsManagementDap.js.map +1 -0
  47. package/dist/es/components/rightsManagementDarp.js +30 -0
  48. package/dist/es/components/rightsManagementDarp.js.map +1 -0
  49. package/dist/es/components/rightsManagementDataAccessHandler.js +27 -0
  50. package/dist/es/components/rightsManagementDataAccessHandler.js.map +1 -0
  51. package/dist/es/components/rightsManagementPap.js +41 -0
  52. package/dist/es/components/rightsManagementPap.js.map +1 -0
  53. package/dist/es/components/rightsManagementPdp.js +32 -0
  54. package/dist/es/components/rightsManagementPdp.js.map +1 -0
  55. package/dist/es/components/rightsManagementPep.js +30 -0
  56. package/dist/es/components/rightsManagementPep.js.map +1 -0
  57. package/dist/es/components/rightsManagementPip.js +29 -0
  58. package/dist/es/components/rightsManagementPip.js.map +1 -0
  59. package/dist/es/components/rightsManagementPmp.js +30 -0
  60. package/dist/es/components/rightsManagementPmp.js.map +1 -0
  61. package/dist/es/components/rightsManagementPnap.js +42 -0
  62. package/dist/es/components/rightsManagementPnap.js.map +1 -0
  63. package/dist/es/components/rightsManagementPnp.js +41 -0
  64. package/dist/es/components/rightsManagementPnp.js.map +1 -0
  65. package/dist/es/components/rightsManagementPolicyArbiter.js +27 -0
  66. package/dist/es/components/rightsManagementPolicyArbiter.js.map +1 -0
  67. package/dist/es/components/rightsManagementPolicyEnforcementProcessor.js +27 -0
  68. package/dist/es/components/rightsManagementPolicyEnforcementProcessor.js.map +1 -0
  69. package/dist/es/components/rightsManagementPolicyExecutionAction.js +27 -0
  70. package/dist/es/components/rightsManagementPolicyExecutionAction.js.map +1 -0
  71. package/dist/es/components/rightsManagementPolicyInformationSource.js +35 -0
  72. package/dist/es/components/rightsManagementPolicyInformationSource.js.map +1 -0
  73. package/dist/es/components/rightsManagementPolicyNegotiator.js +27 -0
  74. package/dist/es/components/rightsManagementPolicyNegotiator.js.map +1 -0
  75. package/dist/es/components/rightsManagementPolicyRequester.js +27 -0
  76. package/dist/es/components/rightsManagementPolicyRequester.js.map +1 -0
  77. package/dist/es/components/rightsManagementPxp.js +29 -0
  78. package/dist/es/components/rightsManagementPxp.js.map +1 -0
  79. package/dist/es/components/synchronisedStorage.js +47 -0
  80. package/dist/es/components/synchronisedStorage.js.map +1 -0
  81. package/dist/es/components/taskScheduler.js +27 -0
  82. package/dist/es/components/taskScheduler.js.map +1 -0
  83. package/dist/es/components/telemetry.js +71 -0
  84. package/dist/es/components/telemetry.js.map +1 -0
  85. package/dist/es/components/tenant.js +32 -0
  86. package/dist/es/components/tenant.js.map +1 -0
  87. package/dist/es/components/trust.js +29 -0
  88. package/dist/es/components/trust.js.map +1 -0
  89. package/dist/es/components/trustGenerator.js +28 -0
  90. package/dist/es/components/trustGenerator.js.map +1 -0
  91. package/dist/es/components/trustVerifier.js +28 -0
  92. package/dist/es/components/trustVerifier.js.map +1 -0
  93. package/dist/es/components/vault.js +33 -0
  94. package/dist/es/components/vault.js.map +1 -0
  95. package/dist/es/components/verifiableStorage.js +79 -0
  96. package/dist/es/components/verifiableStorage.js.map +1 -0
  97. package/dist/es/components/wallet.js +47 -0
  98. package/dist/es/components/wallet.js.map +1 -0
  99. package/dist/es/index.js +188 -0
  100. package/dist/es/index.js.map +1 -0
  101. package/dist/es/models/IEngineConfig.js +2 -0
  102. package/dist/es/models/IEngineConfig.js.map +1 -0
  103. package/dist/es/models/config/attestationComponentConfig.js +2 -0
  104. package/dist/es/models/config/attestationComponentConfig.js.map +1 -0
  105. package/dist/es/models/config/attestationConnectorConfig.js +2 -0
  106. package/dist/es/models/config/attestationConnectorConfig.js.map +1 -0
  107. package/dist/es/models/config/auditableItemGraphComponentConfig.js +2 -0
  108. package/dist/es/models/config/auditableItemGraphComponentConfig.js.map +1 -0
  109. package/dist/es/models/config/auditableItemStreamComponentConfig.js +2 -0
  110. package/dist/es/models/config/auditableItemStreamComponentConfig.js.map +1 -0
  111. package/dist/es/models/config/authenticationGeneratorComponentConfig.js +2 -0
  112. package/dist/es/models/config/authenticationGeneratorComponentConfig.js.map +1 -0
  113. package/dist/es/models/config/backgroundTaskComponentConfig.js +2 -0
  114. package/dist/es/models/config/backgroundTaskComponentConfig.js.map +1 -0
  115. package/dist/es/models/config/blobStorageComponentConfig.js +2 -0
  116. package/dist/es/models/config/blobStorageComponentConfig.js.map +1 -0
  117. package/dist/es/models/config/blobStorageConnectorConfig.js +2 -0
  118. package/dist/es/models/config/blobStorageConnectorConfig.js.map +1 -0
  119. package/dist/es/models/config/contextIdHandlerComponentConfig.js +2 -0
  120. package/dist/es/models/config/contextIdHandlerComponentConfig.js.map +1 -0
  121. package/dist/es/models/config/dataConverterConnectorConfig.js +2 -0
  122. package/dist/es/models/config/dataConverterConnectorConfig.js.map +1 -0
  123. package/dist/es/models/config/dataExtractorConnectorConfig.js +2 -0
  124. package/dist/es/models/config/dataExtractorConnectorConfig.js.map +1 -0
  125. package/dist/es/models/config/dataProcessingComponentConfig.js +2 -0
  126. package/dist/es/models/config/dataProcessingComponentConfig.js.map +1 -0
  127. package/dist/es/models/config/dataSpaceConnectorComponentConfig.js +2 -0
  128. package/dist/es/models/config/dataSpaceConnectorComponentConfig.js.map +1 -0
  129. package/dist/es/models/config/dltConfig.js +2 -0
  130. package/dist/es/models/config/dltConfig.js.map +1 -0
  131. package/dist/es/models/config/documentManagementComponentConfig.js +2 -0
  132. package/dist/es/models/config/documentManagementComponentConfig.js.map +1 -0
  133. package/dist/es/models/config/entityStorageComponentConfig.js +2 -0
  134. package/dist/es/models/config/entityStorageComponentConfig.js.map +1 -0
  135. package/dist/es/models/config/entityStorageConnectorConfig.js +2 -0
  136. package/dist/es/models/config/entityStorageConnectorConfig.js.map +1 -0
  137. package/dist/es/models/config/eventBusComponentConfig.js +2 -0
  138. package/dist/es/models/config/eventBusComponentConfig.js.map +1 -0
  139. package/dist/es/models/config/eventBusConnectorConfig.js +2 -0
  140. package/dist/es/models/config/eventBusConnectorConfig.js.map +1 -0
  141. package/dist/es/models/config/faucetConnectorConfig.js +2 -0
  142. package/dist/es/models/config/faucetConnectorConfig.js.map +1 -0
  143. package/dist/es/models/config/federatedCatalogueComponentConfig.js +2 -0
  144. package/dist/es/models/config/federatedCatalogueComponentConfig.js.map +1 -0
  145. package/dist/es/models/config/federatedCatalogueFilterComponentConfig.js +2 -0
  146. package/dist/es/models/config/federatedCatalogueFilterComponentConfig.js.map +1 -0
  147. package/dist/es/models/config/identityComponentConfig.js +2 -0
  148. package/dist/es/models/config/identityComponentConfig.js.map +1 -0
  149. package/dist/es/models/config/identityConnectorConfig.js +2 -0
  150. package/dist/es/models/config/identityConnectorConfig.js.map +1 -0
  151. package/dist/es/models/config/identityProfileComponentConfig.js +2 -0
  152. package/dist/es/models/config/identityProfileComponentConfig.js.map +1 -0
  153. package/dist/es/models/config/identityProfileConnectorConfig.js +2 -0
  154. package/dist/es/models/config/identityProfileConnectorConfig.js.map +1 -0
  155. package/dist/es/models/config/identityResolverComponentConfig.js +2 -0
  156. package/dist/es/models/config/identityResolverComponentConfig.js.map +1 -0
  157. package/dist/es/models/config/identityResolverConnectorConfig.js +2 -0
  158. package/dist/es/models/config/identityResolverConnectorConfig.js.map +1 -0
  159. package/dist/es/models/config/immutableProofComponentConfig.js +2 -0
  160. package/dist/es/models/config/immutableProofComponentConfig.js.map +1 -0
  161. package/dist/es/models/config/loggingComponentConfig.js +2 -0
  162. package/dist/es/models/config/loggingComponentConfig.js.map +1 -0
  163. package/dist/es/models/config/loggingConnectorConfig.js +2 -0
  164. package/dist/es/models/config/loggingConnectorConfig.js.map +1 -0
  165. package/dist/es/models/config/messagingAdminComponentConfig.js +2 -0
  166. package/dist/es/models/config/messagingAdminComponentConfig.js.map +1 -0
  167. package/dist/es/models/config/messagingComponentConfig.js +2 -0
  168. package/dist/es/models/config/messagingComponentConfig.js.map +1 -0
  169. package/dist/es/models/config/messagingEmailConnectorConfig.js +2 -0
  170. package/dist/es/models/config/messagingEmailConnectorConfig.js.map +1 -0
  171. package/dist/es/models/config/messagingPushNotificationConnectorConfig.js +2 -0
  172. package/dist/es/models/config/messagingPushNotificationConnectorConfig.js.map +1 -0
  173. package/dist/es/models/config/messagingSmsConnectorConfig.js +2 -0
  174. package/dist/es/models/config/messagingSmsConnectorConfig.js.map +1 -0
  175. package/dist/es/models/config/nftComponentConfig.js +2 -0
  176. package/dist/es/models/config/nftComponentConfig.js.map +1 -0
  177. package/dist/es/models/config/nftConnectorConfig.js +2 -0
  178. package/dist/es/models/config/nftConnectorConfig.js.map +1 -0
  179. package/dist/es/models/config/rightsManagementDapComponentConfig.js +2 -0
  180. package/dist/es/models/config/rightsManagementDapComponentConfig.js.map +1 -0
  181. package/dist/es/models/config/rightsManagementDarpComponentConfig.js +2 -0
  182. package/dist/es/models/config/rightsManagementDarpComponentConfig.js.map +1 -0
  183. package/dist/es/models/config/rightsManagementDataAccessHandlerComponentConfig.js +2 -0
  184. package/dist/es/models/config/rightsManagementDataAccessHandlerComponentConfig.js.map +1 -0
  185. package/dist/es/models/config/rightsManagementPapComponentConfig.js +2 -0
  186. package/dist/es/models/config/rightsManagementPapComponentConfig.js.map +1 -0
  187. package/dist/es/models/config/rightsManagementPdpComponentConfig.js +2 -0
  188. package/dist/es/models/config/rightsManagementPdpComponentConfig.js.map +1 -0
  189. package/dist/es/models/config/rightsManagementPepComponentConfig.js +2 -0
  190. package/dist/es/models/config/rightsManagementPepComponentConfig.js.map +1 -0
  191. package/dist/es/models/config/rightsManagementPipComponentConfig.js +2 -0
  192. package/dist/es/models/config/rightsManagementPipComponentConfig.js.map +1 -0
  193. package/dist/es/models/config/rightsManagementPmpComponentConfig.js +2 -0
  194. package/dist/es/models/config/rightsManagementPmpComponentConfig.js.map +1 -0
  195. package/dist/es/models/config/rightsManagementPnapComponentConfig.js +2 -0
  196. package/dist/es/models/config/rightsManagementPnapComponentConfig.js.map +1 -0
  197. package/dist/es/models/config/rightsManagementPnpComponentConfig.js +2 -0
  198. package/dist/es/models/config/rightsManagementPnpComponentConfig.js.map +1 -0
  199. package/dist/es/models/config/rightsManagementPolicyArbiterComponentConfig.js +2 -0
  200. package/dist/es/models/config/rightsManagementPolicyArbiterComponentConfig.js.map +1 -0
  201. package/dist/es/models/config/rightsManagementPolicyEnforcementProcessorComponentConfig.js +2 -0
  202. package/dist/es/models/config/rightsManagementPolicyEnforcementProcessorComponentConfig.js.map +1 -0
  203. package/dist/es/models/config/rightsManagementPolicyExecutionActionComponentConfig.js +2 -0
  204. package/dist/es/models/config/rightsManagementPolicyExecutionActionComponentConfig.js.map +1 -0
  205. package/dist/es/models/config/rightsManagementPolicyInformationSourceComponentConfig.js +2 -0
  206. package/dist/es/models/config/rightsManagementPolicyInformationSourceComponentConfig.js.map +1 -0
  207. package/dist/es/models/config/rightsManagementPolicyNegotiatorComponentConfig.js +2 -0
  208. package/dist/es/models/config/rightsManagementPolicyNegotiatorComponentConfig.js.map +1 -0
  209. package/dist/es/models/config/rightsManagementPolicyRequesterComponentConfig.js +2 -0
  210. package/dist/es/models/config/rightsManagementPolicyRequesterComponentConfig.js.map +1 -0
  211. package/dist/es/models/config/rightsManagementPxpComponentConfig.js +2 -0
  212. package/dist/es/models/config/rightsManagementPxpComponentConfig.js.map +1 -0
  213. package/dist/es/models/config/synchronisedStorageComponentConfig.js +2 -0
  214. package/dist/es/models/config/synchronisedStorageComponentConfig.js.map +1 -0
  215. package/dist/es/models/config/taskSchedulerComponentConfig.js +2 -0
  216. package/dist/es/models/config/taskSchedulerComponentConfig.js.map +1 -0
  217. package/dist/es/models/config/telemetryComponentConfig.js +2 -0
  218. package/dist/es/models/config/telemetryComponentConfig.js.map +1 -0
  219. package/dist/es/models/config/telemetryConnectorConfig.js +2 -0
  220. package/dist/es/models/config/telemetryConnectorConfig.js.map +1 -0
  221. package/dist/es/models/config/tenantAdminComponentConfig.js +2 -0
  222. package/dist/es/models/config/tenantAdminComponentConfig.js.map +1 -0
  223. package/dist/es/models/config/trustComponentConfig.js +2 -0
  224. package/dist/es/models/config/trustComponentConfig.js.map +1 -0
  225. package/dist/es/models/config/trustGeneratorComponentConfig.js +2 -0
  226. package/dist/es/models/config/trustGeneratorComponentConfig.js.map +1 -0
  227. package/dist/es/models/config/trustVerifierComponentConfig.js +2 -0
  228. package/dist/es/models/config/trustVerifierComponentConfig.js.map +1 -0
  229. package/dist/es/models/config/vaultConnectorConfig.js +2 -0
  230. package/dist/es/models/config/vaultConnectorConfig.js.map +1 -0
  231. package/dist/es/models/config/verifiableStorageComponentConfig.js +2 -0
  232. package/dist/es/models/config/verifiableStorageComponentConfig.js.map +1 -0
  233. package/dist/es/models/config/verifiableStorageConnectorConfig.js +2 -0
  234. package/dist/es/models/config/verifiableStorageConnectorConfig.js.map +1 -0
  235. package/dist/es/models/config/walletConnectorConfig.js +2 -0
  236. package/dist/es/models/config/walletConnectorConfig.js.map +1 -0
  237. package/dist/es/models/types/attestationComponentType.js +17 -0
  238. package/dist/es/models/types/attestationComponentType.js.map +1 -0
  239. package/dist/es/models/types/attestationConnectorType.js +13 -0
  240. package/dist/es/models/types/attestationConnectorType.js.map +1 -0
  241. package/dist/es/models/types/auditableItemGraphComponentType.js +17 -0
  242. package/dist/es/models/types/auditableItemGraphComponentType.js.map +1 -0
  243. package/dist/es/models/types/auditableItemStreamComponentType.js +17 -0
  244. package/dist/es/models/types/auditableItemStreamComponentType.js.map +1 -0
  245. package/dist/es/models/types/authenticationGeneratorComponentType.js +13 -0
  246. package/dist/es/models/types/authenticationGeneratorComponentType.js.map +1 -0
  247. package/dist/es/models/types/backgroundTaskComponentType.js +13 -0
  248. package/dist/es/models/types/backgroundTaskComponentType.js.map +1 -0
  249. package/dist/es/models/types/blobStorageComponentType.js +17 -0
  250. package/dist/es/models/types/blobStorageComponentType.js.map +1 -0
  251. package/dist/es/models/types/blobStorageConnectorType.js +33 -0
  252. package/dist/es/models/types/blobStorageConnectorType.js.map +1 -0
  253. package/dist/es/models/types/contextIdHandlerComponentType.js +17 -0
  254. package/dist/es/models/types/contextIdHandlerComponentType.js.map +1 -0
  255. package/dist/es/models/types/dataConverterConnectorType.js +17 -0
  256. package/dist/es/models/types/dataConverterConnectorType.js.map +1 -0
  257. package/dist/es/models/types/dataExtractorConnectorType.js +13 -0
  258. package/dist/es/models/types/dataExtractorConnectorType.js.map +1 -0
  259. package/dist/es/models/types/dataProcessingComponentType.js +17 -0
  260. package/dist/es/models/types/dataProcessingComponentType.js.map +1 -0
  261. package/dist/es/models/types/dataSpaceConnectorComponentType.js +21 -0
  262. package/dist/es/models/types/dataSpaceConnectorComponentType.js.map +1 -0
  263. package/dist/es/models/types/dltConfigType.js +13 -0
  264. package/dist/es/models/types/dltConfigType.js.map +1 -0
  265. package/dist/es/models/types/documentManagementComponentType.js +17 -0
  266. package/dist/es/models/types/documentManagementComponentType.js.map +1 -0
  267. package/dist/es/models/types/entityStorageComponentType.js +17 -0
  268. package/dist/es/models/types/entityStorageComponentType.js.map +1 -0
  269. package/dist/es/models/types/entityStorageConnectorType.js +49 -0
  270. package/dist/es/models/types/entityStorageConnectorType.js.map +1 -0
  271. package/dist/es/models/types/eventBusComponentType.js +17 -0
  272. package/dist/es/models/types/eventBusComponentType.js.map +1 -0
  273. package/dist/es/models/types/eventBusConnectorType.js +13 -0
  274. package/dist/es/models/types/eventBusConnectorType.js.map +1 -0
  275. package/dist/es/models/types/faucetConnectorType.js +17 -0
  276. package/dist/es/models/types/faucetConnectorType.js.map +1 -0
  277. package/dist/es/models/types/federatedCatalogueComponentType.js +17 -0
  278. package/dist/es/models/types/federatedCatalogueComponentType.js.map +1 -0
  279. package/dist/es/models/types/federatedCatalogueFilterComponentType.js +13 -0
  280. package/dist/es/models/types/federatedCatalogueFilterComponentType.js.map +1 -0
  281. package/dist/es/models/types/identityComponentType.js +17 -0
  282. package/dist/es/models/types/identityComponentType.js.map +1 -0
  283. package/dist/es/models/types/identityConnectorType.js +17 -0
  284. package/dist/es/models/types/identityConnectorType.js.map +1 -0
  285. package/dist/es/models/types/identityProfileComponentType.js +17 -0
  286. package/dist/es/models/types/identityProfileComponentType.js.map +1 -0
  287. package/dist/es/models/types/identityProfileConnectorType.js +13 -0
  288. package/dist/es/models/types/identityProfileConnectorType.js.map +1 -0
  289. package/dist/es/models/types/identityResolverComponentType.js +17 -0
  290. package/dist/es/models/types/identityResolverComponentType.js.map +1 -0
  291. package/dist/es/models/types/identityResolverConnectorType.js +21 -0
  292. package/dist/es/models/types/identityResolverConnectorType.js.map +1 -0
  293. package/dist/es/models/types/immutableProofComponentType.js +17 -0
  294. package/dist/es/models/types/immutableProofComponentType.js.map +1 -0
  295. package/dist/es/models/types/loggingComponentType.js +17 -0
  296. package/dist/es/models/types/loggingComponentType.js.map +1 -0
  297. package/dist/es/models/types/loggingConnectorType.js +21 -0
  298. package/dist/es/models/types/loggingConnectorType.js.map +1 -0
  299. package/dist/es/models/types/messagingAdminComponentType.js +13 -0
  300. package/dist/es/models/types/messagingAdminComponentType.js.map +1 -0
  301. package/dist/es/models/types/messagingComponentType.js +13 -0
  302. package/dist/es/models/types/messagingComponentType.js.map +1 -0
  303. package/dist/es/models/types/messagingEmailConnectorType.js +17 -0
  304. package/dist/es/models/types/messagingEmailConnectorType.js.map +1 -0
  305. package/dist/es/models/types/messagingPushNotificationConnectorType.js +17 -0
  306. package/dist/es/models/types/messagingPushNotificationConnectorType.js.map +1 -0
  307. package/dist/es/models/types/messagingSmsConnectorType.js +17 -0
  308. package/dist/es/models/types/messagingSmsConnectorType.js.map +1 -0
  309. package/dist/es/models/types/nftComponentType.js +17 -0
  310. package/dist/es/models/types/nftComponentType.js.map +1 -0
  311. package/dist/es/models/types/nftConnectorType.js +17 -0
  312. package/dist/es/models/types/nftConnectorType.js.map +1 -0
  313. package/dist/es/models/types/rightsManagementDapComponentType.js +17 -0
  314. package/dist/es/models/types/rightsManagementDapComponentType.js.map +1 -0
  315. package/dist/es/models/types/rightsManagementDarpComponentType.js +13 -0
  316. package/dist/es/models/types/rightsManagementDarpComponentType.js.map +1 -0
  317. package/dist/es/models/types/rightsManagementDataAccessHandlerComponentType.js +13 -0
  318. package/dist/es/models/types/rightsManagementDataAccessHandlerComponentType.js.map +1 -0
  319. package/dist/es/models/types/rightsManagementPapComponentType.js +17 -0
  320. package/dist/es/models/types/rightsManagementPapComponentType.js.map +1 -0
  321. package/dist/es/models/types/rightsManagementPdpComponentType.js +13 -0
  322. package/dist/es/models/types/rightsManagementPdpComponentType.js.map +1 -0
  323. package/dist/es/models/types/rightsManagementPepComponentType.js +17 -0
  324. package/dist/es/models/types/rightsManagementPepComponentType.js.map +1 -0
  325. package/dist/es/models/types/rightsManagementPipComponentType.js +13 -0
  326. package/dist/es/models/types/rightsManagementPipComponentType.js.map +1 -0
  327. package/dist/es/models/types/rightsManagementPmpComponentType.js +13 -0
  328. package/dist/es/models/types/rightsManagementPmpComponentType.js.map +1 -0
  329. package/dist/es/models/types/rightsManagementPnapComponentType.js +17 -0
  330. package/dist/es/models/types/rightsManagementPnapComponentType.js.map +1 -0
  331. package/dist/es/models/types/rightsManagementPnpComponentType.js +17 -0
  332. package/dist/es/models/types/rightsManagementPnpComponentType.js.map +1 -0
  333. package/dist/es/models/types/rightsManagementPolicyArbiterComponentType.js +13 -0
  334. package/dist/es/models/types/rightsManagementPolicyArbiterComponentType.js.map +1 -0
  335. package/dist/es/models/types/rightsManagementPolicyEnforcementProcessorComponentType.js +13 -0
  336. package/dist/es/models/types/rightsManagementPolicyEnforcementProcessorComponentType.js.map +1 -0
  337. package/dist/es/models/types/rightsManagementPolicyExecutionActionComponentType.js +13 -0
  338. package/dist/es/models/types/rightsManagementPolicyExecutionActionComponentType.js.map +1 -0
  339. package/dist/es/models/types/rightsManagementPolicyInformationSourceComponentType.js +17 -0
  340. package/dist/es/models/types/rightsManagementPolicyInformationSourceComponentType.js.map +1 -0
  341. package/dist/es/models/types/rightsManagementPolicyNegotiatorComponentType.js +13 -0
  342. package/dist/es/models/types/rightsManagementPolicyNegotiatorComponentType.js.map +1 -0
  343. package/dist/es/models/types/rightsManagementPolicyRequesterComponentType.js +13 -0
  344. package/dist/es/models/types/rightsManagementPolicyRequesterComponentType.js.map +1 -0
  345. package/dist/es/models/types/rightsManagementPxpComponentType.js +13 -0
  346. package/dist/es/models/types/rightsManagementPxpComponentType.js.map +1 -0
  347. package/dist/es/models/types/synchronisedStorageComponentType.js +17 -0
  348. package/dist/es/models/types/synchronisedStorageComponentType.js.map +1 -0
  349. package/dist/es/models/types/taskSchedulerComponentType.js +13 -0
  350. package/dist/es/models/types/taskSchedulerComponentType.js.map +1 -0
  351. package/dist/es/models/types/telemetryComponentType.js +17 -0
  352. package/dist/es/models/types/telemetryComponentType.js.map +1 -0
  353. package/dist/es/models/types/telemetryConnectorType.js +13 -0
  354. package/dist/es/models/types/telemetryConnectorType.js.map +1 -0
  355. package/dist/es/models/types/tenantAdminComponentType.js +13 -0
  356. package/dist/es/models/types/tenantAdminComponentType.js.map +1 -0
  357. package/dist/es/models/types/trustComponentType.js +13 -0
  358. package/dist/es/models/types/trustComponentType.js.map +1 -0
  359. package/dist/es/models/types/trustGeneratorComponentType.js +13 -0
  360. package/dist/es/models/types/trustGeneratorComponentType.js.map +1 -0
  361. package/dist/es/models/types/trustVerifierComponentType.js +13 -0
  362. package/dist/es/models/types/trustVerifierComponentType.js.map +1 -0
  363. package/dist/es/models/types/vaultConnectorType.js +17 -0
  364. package/dist/es/models/types/vaultConnectorType.js.map +1 -0
  365. package/dist/es/models/types/verifiableStorageComponentType.js +17 -0
  366. package/dist/es/models/types/verifiableStorageComponentType.js.map +1 -0
  367. package/dist/es/models/types/verifiableStorageConnectorType.js +17 -0
  368. package/dist/es/models/types/verifiableStorageConnectorType.js.map +1 -0
  369. package/dist/es/models/types/walletConnectorType.js +17 -0
  370. package/dist/es/models/types/walletConnectorType.js.map +1 -0
  371. package/dist/es/utils/engineTypeHelper.js +32 -0
  372. package/dist/es/utils/engineTypeHelper.js.map +1 -0
  373. package/dist/types/components/attestation.d.ts +17 -11
  374. package/dist/types/components/auditableItemGraph.d.ts +9 -6
  375. package/dist/types/components/auditableItemStream.d.ts +9 -6
  376. package/dist/types/components/authenticationGenerator.d.ts +17 -0
  377. package/dist/types/components/backgroundTask.d.ts +10 -7
  378. package/dist/types/components/blobStorage.d.ts +17 -11
  379. package/dist/types/components/contextIdHandler.d.ts +16 -0
  380. package/dist/types/components/dataProcessing.d.ts +24 -16
  381. package/dist/types/components/dataSpaceConnector.d.ts +16 -0
  382. package/dist/types/components/documentManagement.d.ts +9 -6
  383. package/dist/types/components/entityStorage.d.ts +12 -8
  384. package/dist/types/components/eventBus.d.ts +17 -11
  385. package/dist/types/components/faucet.d.ts +10 -6
  386. package/dist/types/components/federatedCatalogue.d.ts +9 -6
  387. package/dist/types/components/federatedCatalogueFilter.d.ts +17 -0
  388. package/dist/types/components/identity.d.ts +17 -11
  389. package/dist/types/components/identityProfile.d.ts +17 -11
  390. package/dist/types/components/identityResolver.d.ts +17 -11
  391. package/dist/types/components/immutableProof.d.ts +9 -6
  392. package/dist/types/components/logging.d.ts +17 -11
  393. package/dist/types/components/messaging.d.ts +44 -21
  394. package/dist/types/components/nft.d.ts +17 -11
  395. package/dist/types/components/rightsManagementDap.d.ts +16 -0
  396. package/dist/types/components/rightsManagementDarp.d.ts +16 -0
  397. package/dist/types/components/rightsManagementDataAccessHandler.d.ts +17 -0
  398. package/dist/types/components/rightsManagementPap.d.ts +9 -6
  399. package/dist/types/components/rightsManagementPdp.d.ts +9 -6
  400. package/dist/types/components/rightsManagementPep.d.ts +9 -6
  401. package/dist/types/components/rightsManagementPip.d.ts +9 -6
  402. package/dist/types/components/rightsManagementPmp.d.ts +9 -6
  403. package/dist/types/components/rightsManagementPnap.d.ts +16 -0
  404. package/dist/types/components/rightsManagementPnp.d.ts +16 -0
  405. package/dist/types/components/rightsManagementPolicyArbiter.d.ts +17 -0
  406. package/dist/types/components/rightsManagementPolicyEnforcementProcessor.d.ts +17 -0
  407. package/dist/types/components/rightsManagementPolicyExecutionAction.d.ts +17 -0
  408. package/dist/types/components/rightsManagementPolicyInformationSource.d.ts +17 -0
  409. package/dist/types/components/rightsManagementPolicyNegotiator.d.ts +17 -0
  410. package/dist/types/components/rightsManagementPolicyRequester.d.ts +17 -0
  411. package/dist/types/components/rightsManagementPxp.d.ts +9 -6
  412. package/dist/types/components/synchronisedStorage.d.ts +9 -6
  413. package/dist/types/components/taskScheduler.d.ts +9 -6
  414. package/dist/types/components/telemetry.d.ts +17 -11
  415. package/dist/types/components/tenant.d.ts +16 -0
  416. package/dist/types/components/trust.d.ts +16 -0
  417. package/dist/types/components/trustGenerator.d.ts +17 -0
  418. package/dist/types/components/trustVerifier.d.ts +17 -0
  419. package/dist/types/components/vault.d.ts +10 -6
  420. package/dist/types/components/verifiableStorage.d.ts +17 -11
  421. package/dist/types/components/wallet.d.ts +10 -16
  422. package/dist/types/index.d.ts +185 -128
  423. package/dist/types/models/IEngineConfig.d.ts +147 -52
  424. package/dist/types/models/config/attestationComponentConfig.d.ts +1 -1
  425. package/dist/types/models/config/attestationConnectorConfig.d.ts +1 -1
  426. package/dist/types/models/config/auditableItemGraphComponentConfig.d.ts +1 -1
  427. package/dist/types/models/config/auditableItemStreamComponentConfig.d.ts +1 -1
  428. package/dist/types/models/config/authenticationGeneratorComponentConfig.d.ts +9 -0
  429. package/dist/types/models/config/backgroundTaskComponentConfig.d.ts +9 -0
  430. package/dist/types/models/config/blobStorageComponentConfig.d.ts +1 -1
  431. package/dist/types/models/config/blobStorageConnectorConfig.d.ts +1 -1
  432. package/dist/types/models/config/contextIdHandlerComponentConfig.d.ts +11 -0
  433. package/dist/types/models/config/dataConverterConnectorConfig.d.ts +1 -1
  434. package/dist/types/models/config/dataExtractorConnectorConfig.d.ts +1 -1
  435. package/dist/types/models/config/dataProcessingComponentConfig.d.ts +1 -1
  436. package/dist/types/models/config/dataSpaceConnectorComponentConfig.d.ts +17 -0
  437. package/dist/types/models/config/dltConfig.d.ts +1 -1
  438. package/dist/types/models/config/documentManagementComponentConfig.d.ts +1 -1
  439. package/dist/types/models/config/entityStorageComponentConfig.d.ts +4 -2
  440. package/dist/types/models/config/entityStorageConnectorConfig.d.ts +1 -1
  441. package/dist/types/models/config/eventBusComponentConfig.d.ts +1 -1
  442. package/dist/types/models/config/eventBusConnectorConfig.d.ts +1 -1
  443. package/dist/types/models/config/faucetConnectorConfig.d.ts +1 -1
  444. package/dist/types/models/config/federatedCatalogueComponentConfig.d.ts +1 -1
  445. package/dist/types/models/config/federatedCatalogueFilterComponentConfig.d.ts +9 -0
  446. package/dist/types/models/config/identityComponentConfig.d.ts +1 -1
  447. package/dist/types/models/config/identityConnectorConfig.d.ts +1 -1
  448. package/dist/types/models/config/identityProfileComponentConfig.d.ts +1 -1
  449. package/dist/types/models/config/identityProfileConnectorConfig.d.ts +1 -1
  450. package/dist/types/models/config/identityResolverComponentConfig.d.ts +1 -1
  451. package/dist/types/models/config/identityResolverConnectorConfig.d.ts +1 -1
  452. package/dist/types/models/config/immutableProofComponentConfig.d.ts +1 -1
  453. package/dist/types/models/config/loggingComponentConfig.d.ts +1 -1
  454. package/dist/types/models/config/loggingConnectorConfig.d.ts +1 -1
  455. package/dist/types/models/config/messagingAdminComponentConfig.d.ts +9 -0
  456. package/dist/types/models/config/messagingComponentConfig.d.ts +1 -1
  457. package/dist/types/models/config/messagingEmailConnectorConfig.d.ts +1 -1
  458. package/dist/types/models/config/messagingPushNotificationConnectorConfig.d.ts +1 -1
  459. package/dist/types/models/config/messagingSmsConnectorConfig.d.ts +1 -1
  460. package/dist/types/models/config/nftComponentConfig.d.ts +1 -1
  461. package/dist/types/models/config/nftConnectorConfig.d.ts +1 -1
  462. package/dist/types/models/config/rightsManagementDapComponentConfig.d.ts +16 -0
  463. package/dist/types/models/config/rightsManagementDarpComponentConfig.d.ts +9 -0
  464. package/dist/types/models/config/rightsManagementDataAccessHandlerComponentConfig.d.ts +9 -0
  465. package/dist/types/models/config/rightsManagementPapComponentConfig.d.ts +7 -3
  466. package/dist/types/models/config/rightsManagementPdpComponentConfig.d.ts +3 -3
  467. package/dist/types/models/config/rightsManagementPepComponentConfig.d.ts +3 -3
  468. package/dist/types/models/config/rightsManagementPipComponentConfig.d.ts +3 -3
  469. package/dist/types/models/config/rightsManagementPmpComponentConfig.d.ts +3 -3
  470. package/dist/types/models/config/rightsManagementPnapComponentConfig.d.ts +13 -0
  471. package/dist/types/models/config/rightsManagementPnpComponentConfig.d.ts +13 -0
  472. package/dist/types/models/config/rightsManagementPolicyArbiterComponentConfig.d.ts +9 -0
  473. package/dist/types/models/config/rightsManagementPolicyEnforcementProcessorComponentConfig.d.ts +9 -0
  474. package/dist/types/models/config/rightsManagementPolicyExecutionActionComponentConfig.d.ts +9 -0
  475. package/dist/types/models/config/rightsManagementPolicyInformationSourceComponentConfig.d.ts +12 -0
  476. package/dist/types/models/config/rightsManagementPolicyNegotiatorComponentConfig.d.ts +9 -0
  477. package/dist/types/models/config/rightsManagementPolicyRequesterComponentConfig.d.ts +9 -0
  478. package/dist/types/models/config/rightsManagementPxpComponentConfig.d.ts +3 -3
  479. package/dist/types/models/config/synchronisedStorageComponentConfig.d.ts +1 -1
  480. package/dist/types/models/config/taskSchedulerComponentConfig.d.ts +1 -1
  481. package/dist/types/models/config/telemetryComponentConfig.d.ts +1 -1
  482. package/dist/types/models/config/telemetryConnectorConfig.d.ts +1 -1
  483. package/dist/types/models/config/tenantAdminComponentConfig.d.ts +9 -0
  484. package/dist/types/models/config/trustComponentConfig.d.ts +9 -0
  485. package/dist/types/models/config/trustGeneratorComponentConfig.d.ts +9 -0
  486. package/dist/types/models/config/trustVerifierComponentConfig.d.ts +9 -0
  487. package/dist/types/models/config/vaultConnectorConfig.d.ts +1 -1
  488. package/dist/types/models/config/verifiableStorageComponentConfig.d.ts +1 -1
  489. package/dist/types/models/config/verifiableStorageConnectorConfig.d.ts +1 -1
  490. package/dist/types/models/config/walletConnectorConfig.d.ts +1 -1
  491. package/dist/types/models/types/authenticationGeneratorComponentType.d.ts +13 -0
  492. package/dist/types/models/types/backgroundTaskComponentType.d.ts +13 -0
  493. package/dist/types/models/types/contextIdHandlerComponentType.d.ts +17 -0
  494. package/dist/types/models/types/dataSpaceConnectorComponentType.d.ts +21 -0
  495. package/dist/types/models/types/federatedCatalogueFilterComponentType.d.ts +13 -0
  496. package/dist/types/models/types/messagingAdminComponentType.d.ts +13 -0
  497. package/dist/types/models/types/rightsManagementDapComponentType.d.ts +17 -0
  498. package/dist/types/models/types/rightsManagementDarpComponentType.d.ts +13 -0
  499. package/dist/types/models/types/rightsManagementDataAccessHandlerComponentType.d.ts +13 -0
  500. package/dist/types/models/types/rightsManagementPapComponentType.d.ts +4 -0
  501. package/dist/types/models/types/rightsManagementPepComponentType.d.ts +4 -0
  502. package/dist/types/models/types/rightsManagementPnapComponentType.d.ts +17 -0
  503. package/dist/types/models/types/rightsManagementPnpComponentType.d.ts +17 -0
  504. package/dist/types/models/types/rightsManagementPolicyArbiterComponentType.d.ts +13 -0
  505. package/dist/types/models/types/rightsManagementPolicyEnforcementProcessorComponentType.d.ts +13 -0
  506. package/dist/types/models/types/rightsManagementPolicyExecutionActionComponentType.d.ts +13 -0
  507. package/dist/types/models/types/rightsManagementPolicyInformationSourceComponentType.d.ts +17 -0
  508. package/dist/types/models/types/rightsManagementPolicyNegotiatorComponentType.d.ts +13 -0
  509. package/dist/types/models/types/rightsManagementPolicyRequesterComponentType.d.ts +13 -0
  510. package/dist/types/models/types/tenantAdminComponentType.d.ts +13 -0
  511. package/dist/types/models/types/trustComponentType.d.ts +13 -0
  512. package/dist/types/models/types/trustGeneratorComponentType.d.ts +13 -0
  513. package/dist/types/models/types/trustVerifierComponentType.d.ts +13 -0
  514. package/dist/types/utils/engineTypeHelper.d.ts +19 -0
  515. package/docs/changelog.md +438 -0
  516. package/docs/reference/classes/EngineTypeHelper.md +61 -0
  517. package/docs/reference/functions/initialiseAttestationComponent.md +3 -13
  518. package/docs/reference/functions/initialiseAttestationConnector.md +3 -13
  519. package/docs/reference/functions/initialiseAuditableItemGraphComponent.md +3 -13
  520. package/docs/reference/functions/initialiseAuditableItemStreamComponent.md +3 -13
  521. package/docs/reference/functions/initialiseAuthenticationGeneratorComponent.md +31 -0
  522. package/docs/reference/functions/initialiseBackgroundTaskComponent.md +31 -0
  523. package/docs/reference/functions/initialiseBlobStorageComponent.md +3 -13
  524. package/docs/reference/functions/initialiseBlobStorageConnector.md +3 -13
  525. package/docs/reference/functions/initialiseContextIdHandlerComponent.md +31 -0
  526. package/docs/reference/functions/initialiseDataConverterConnector.md +3 -13
  527. package/docs/reference/functions/initialiseDataExtractorConnector.md +3 -13
  528. package/docs/reference/functions/initialiseDataProcessingComponent.md +3 -13
  529. package/docs/reference/functions/initialiseDataSpaceConnectorComponent.md +31 -0
  530. package/docs/reference/functions/initialiseDocumentManagementComponent.md +3 -13
  531. package/docs/reference/functions/initialiseEntityStorageComponent.md +3 -13
  532. package/docs/reference/functions/initialiseEntityStorageConnector.md +8 -2
  533. package/docs/reference/functions/initialiseEventBusComponent.md +3 -13
  534. package/docs/reference/functions/initialiseEventBusConnector.md +3 -13
  535. package/docs/reference/functions/initialiseFaucetConnector.md +3 -13
  536. package/docs/reference/functions/initialiseFederatedCatalogueComponent.md +3 -13
  537. package/docs/reference/functions/initialiseFederatedCatalogueFilterComponent.md +31 -0
  538. package/docs/reference/functions/initialiseIdentityComponent.md +3 -13
  539. package/docs/reference/functions/initialiseIdentityConnector.md +3 -13
  540. package/docs/reference/functions/initialiseIdentityProfileComponent.md +3 -13
  541. package/docs/reference/functions/initialiseIdentityProfileConnector.md +3 -13
  542. package/docs/reference/functions/initialiseIdentityResolverComponent.md +3 -13
  543. package/docs/reference/functions/initialiseIdentityResolverConnector.md +3 -13
  544. package/docs/reference/functions/initialiseImmutableProofComponent.md +3 -13
  545. package/docs/reference/functions/initialiseLoggingComponent.md +3 -13
  546. package/docs/reference/functions/initialiseLoggingConnector.md +3 -13
  547. package/docs/reference/functions/initialiseMessagingAdminComponent.md +31 -0
  548. package/docs/reference/functions/initialiseMessagingComponent.md +3 -13
  549. package/docs/reference/functions/initialiseMessagingEmailConnector.md +3 -13
  550. package/docs/reference/functions/initialiseMessagingPushNotificationConnector.md +3 -13
  551. package/docs/reference/functions/initialiseMessagingSmsConnector.md +3 -13
  552. package/docs/reference/functions/initialiseNftComponent.md +3 -13
  553. package/docs/reference/functions/initialiseNftConnector.md +3 -13
  554. package/docs/reference/functions/initialiseRightsManagementDapComponent.md +31 -0
  555. package/docs/reference/functions/initialiseRightsManagementDarpComponent.md +31 -0
  556. package/docs/reference/functions/initialiseRightsManagementDataAccessHandlerComponent.md +31 -0
  557. package/docs/reference/functions/initialiseRightsManagementPapComponent.md +3 -13
  558. package/docs/reference/functions/initialiseRightsManagementPdpComponent.md +3 -13
  559. package/docs/reference/functions/initialiseRightsManagementPepComponent.md +3 -13
  560. package/docs/reference/functions/initialiseRightsManagementPipComponent.md +3 -13
  561. package/docs/reference/functions/initialiseRightsManagementPmpComponent.md +3 -13
  562. package/docs/reference/functions/initialiseRightsManagementPnapComponent.md +31 -0
  563. package/docs/reference/functions/initialiseRightsManagementPnpComponent.md +31 -0
  564. package/docs/reference/functions/initialiseRightsManagementPolicyArbiterComponent.md +31 -0
  565. package/docs/reference/functions/initialiseRightsManagementPolicyEnforcementProcessorComponent.md +31 -0
  566. package/docs/reference/functions/initialiseRightsManagementPolicyExecutionActionComponent.md +31 -0
  567. package/docs/reference/functions/initialiseRightsManagementPolicyInformationSourceComponent.md +31 -0
  568. package/docs/reference/functions/initialiseRightsManagementPolicyNegotiatorComponent.md +31 -0
  569. package/docs/reference/functions/initialiseRightsManagementPolicyRequesterComponent.md +31 -0
  570. package/docs/reference/functions/initialiseRightsManagementPxpComponent.md +3 -13
  571. package/docs/reference/functions/initialiseSynchronisedStorageComponent.md +3 -13
  572. package/docs/reference/functions/initialiseTaskSchedulerComponent.md +3 -13
  573. package/docs/reference/functions/initialiseTelemetryComponent.md +3 -13
  574. package/docs/reference/functions/initialiseTelemetryConnector.md +3 -13
  575. package/docs/reference/functions/initialiseTenantAdminComponent.md +31 -0
  576. package/docs/reference/functions/initialiseTrustComponent.md +31 -0
  577. package/docs/reference/functions/initialiseTrustGeneratorComponent.md +31 -0
  578. package/docs/reference/functions/initialiseTrustVerifierComponent.md +31 -0
  579. package/docs/reference/functions/initialiseVaultConnector.md +3 -13
  580. package/docs/reference/functions/initialiseVerifiableStorageComponent.md +3 -13
  581. package/docs/reference/functions/initialiseVerifiableStorageConnector.md +3 -13
  582. package/docs/reference/functions/initialiseWalletConnector.md +3 -13
  583. package/docs/reference/index.md +88 -9
  584. package/docs/reference/interfaces/IEngineConfig.md +120 -6
  585. package/docs/reference/type-aliases/AuthenticationGeneratorComponentConfig.md +17 -0
  586. package/docs/reference/type-aliases/AuthenticationGeneratorComponentType.md +5 -0
  587. package/docs/reference/type-aliases/BackgroundTaskComponentConfig.md +17 -0
  588. package/docs/reference/type-aliases/BackgroundTaskComponentType.md +5 -0
  589. package/docs/reference/type-aliases/ContextIdHandlerComponentConfig.md +5 -0
  590. package/docs/reference/type-aliases/ContextIdHandlerComponentType.md +5 -0
  591. package/docs/reference/type-aliases/DataSpaceConnectorComponentConfig.md +5 -0
  592. package/docs/reference/type-aliases/DataSpaceConnectorComponentType.md +5 -0
  593. package/docs/reference/type-aliases/EntityStorageComponentConfig.md +1 -1
  594. package/docs/reference/type-aliases/FederatedCatalogueFilterComponentConfig.md +17 -0
  595. package/docs/reference/type-aliases/FederatedCatalogueFilterComponentType.md +5 -0
  596. package/docs/reference/type-aliases/MessagingAdminComponentConfig.md +17 -0
  597. package/docs/reference/type-aliases/MessagingAdminComponentType.md +5 -0
  598. package/docs/reference/type-aliases/RightsManagementDapComponentConfig.md +5 -0
  599. package/docs/reference/type-aliases/RightsManagementDapComponentType.md +5 -0
  600. package/docs/reference/type-aliases/RightsManagementDarpComponentConfig.md +17 -0
  601. package/docs/reference/type-aliases/RightsManagementDarpComponentType.md +5 -0
  602. package/docs/reference/type-aliases/RightsManagementDataAccessHandlerComponentConfig.md +17 -0
  603. package/docs/reference/type-aliases/RightsManagementDataAccessHandlerComponentType.md +5 -0
  604. package/docs/reference/type-aliases/RightsManagementPapComponentConfig.md +1 -13
  605. package/docs/reference/type-aliases/RightsManagementPdpComponentConfig.md +1 -1
  606. package/docs/reference/type-aliases/RightsManagementPepComponentConfig.md +1 -1
  607. package/docs/reference/type-aliases/RightsManagementPipComponentConfig.md +1 -1
  608. package/docs/reference/type-aliases/RightsManagementPmpComponentConfig.md +1 -1
  609. package/docs/reference/type-aliases/RightsManagementPnapComponentConfig.md +5 -0
  610. package/docs/reference/type-aliases/RightsManagementPnapComponentType.md +5 -0
  611. package/docs/reference/type-aliases/RightsManagementPnpComponentConfig.md +5 -0
  612. package/docs/reference/type-aliases/RightsManagementPnpComponentType.md +5 -0
  613. package/docs/reference/type-aliases/RightsManagementPolicyArbiterComponentConfig.md +17 -0
  614. package/docs/reference/type-aliases/RightsManagementPolicyArbiterComponentType.md +5 -0
  615. package/docs/reference/type-aliases/RightsManagementPolicyEnforcementProcessorComponentConfig.md +17 -0
  616. package/docs/reference/type-aliases/RightsManagementPolicyEnforcementProcessorComponentType.md +5 -0
  617. package/docs/reference/type-aliases/RightsManagementPolicyExecutionActionComponentConfig.md +17 -0
  618. package/docs/reference/type-aliases/RightsManagementPolicyExecutionActionComponentType.md +5 -0
  619. package/docs/reference/type-aliases/RightsManagementPolicyInformationSourceComponentConfig.md +5 -0
  620. package/docs/reference/type-aliases/RightsManagementPolicyInformationSourceComponentType.md +5 -0
  621. package/docs/reference/type-aliases/RightsManagementPolicyNegotiatorComponentConfig.md +17 -0
  622. package/docs/reference/type-aliases/RightsManagementPolicyNegotiatorComponentType.md +5 -0
  623. package/docs/reference/type-aliases/RightsManagementPolicyRequesterComponentConfig.md +17 -0
  624. package/docs/reference/type-aliases/RightsManagementPolicyRequesterComponentType.md +5 -0
  625. package/docs/reference/type-aliases/RightsManagementPxpComponentConfig.md +1 -1
  626. package/docs/reference/type-aliases/TenantAdminComponentConfig.md +17 -0
  627. package/docs/reference/type-aliases/TenantAdminComponentType.md +5 -0
  628. package/docs/reference/type-aliases/TrustComponentConfig.md +17 -0
  629. package/docs/reference/type-aliases/TrustComponentType.md +5 -0
  630. package/docs/reference/type-aliases/TrustGeneratorComponentConfig.md +17 -0
  631. package/docs/reference/type-aliases/TrustGeneratorComponentType.md +5 -0
  632. package/docs/reference/type-aliases/TrustVerifierComponentConfig.md +17 -0
  633. package/docs/reference/type-aliases/TrustVerifierComponentType.md +5 -0
  634. package/docs/reference/variables/AttestationComponentType.md +1 -1
  635. package/docs/reference/variables/AttestationConnectorType.md +1 -1
  636. package/docs/reference/variables/AuditableItemGraphComponentType.md +1 -1
  637. package/docs/reference/variables/AuditableItemStreamComponentType.md +1 -1
  638. package/docs/reference/variables/AuthenticationGeneratorComponentType.md +13 -0
  639. package/docs/reference/variables/BackgroundTaskComponentType.md +13 -0
  640. package/docs/reference/variables/BlobStorageComponentType.md +1 -1
  641. package/docs/reference/variables/BlobStorageConnectorType.md +1 -1
  642. package/docs/reference/variables/ContextIdHandlerComponentType.md +19 -0
  643. package/docs/reference/variables/DataConverterConnectorType.md +1 -1
  644. package/docs/reference/variables/DataExtractorConnectorType.md +1 -1
  645. package/docs/reference/variables/DataProcessingComponentType.md +1 -1
  646. package/docs/reference/variables/DataSpaceConnectorComponentType.md +25 -0
  647. package/docs/reference/variables/DltConfigType.md +1 -1
  648. package/docs/reference/variables/DocumentManagementComponentType.md +1 -1
  649. package/docs/reference/variables/EntityStorageComponentType.md +1 -1
  650. package/docs/reference/variables/EntityStorageConnectorType.md +1 -1
  651. package/docs/reference/variables/EventBusComponentType.md +1 -1
  652. package/docs/reference/variables/EventBusConnectorType.md +1 -1
  653. package/docs/reference/variables/FaucetConnectorType.md +1 -1
  654. package/docs/reference/variables/FederatedCatalogueComponentType.md +1 -1
  655. package/docs/reference/variables/FederatedCatalogueFilterComponentType.md +13 -0
  656. package/docs/reference/variables/IdentityComponentType.md +1 -1
  657. package/docs/reference/variables/IdentityConnectorType.md +1 -1
  658. package/docs/reference/variables/IdentityProfileComponentType.md +1 -1
  659. package/docs/reference/variables/IdentityProfileConnectorType.md +1 -1
  660. package/docs/reference/variables/IdentityResolverComponentType.md +1 -1
  661. package/docs/reference/variables/IdentityResolverConnectorType.md +1 -1
  662. package/docs/reference/variables/ImmutableProofComponentType.md +1 -1
  663. package/docs/reference/variables/LoggingComponentType.md +1 -1
  664. package/docs/reference/variables/LoggingConnectorType.md +1 -1
  665. package/docs/reference/variables/MessagingAdminComponentType.md +13 -0
  666. package/docs/reference/variables/MessagingComponentType.md +1 -1
  667. package/docs/reference/variables/MessagingEmailConnectorType.md +1 -1
  668. package/docs/reference/variables/MessagingPushNotificationConnectorType.md +1 -1
  669. package/docs/reference/variables/MessagingSmsConnectorType.md +1 -1
  670. package/docs/reference/variables/NftComponentType.md +1 -1
  671. package/docs/reference/variables/NftConnectorType.md +1 -1
  672. package/docs/reference/variables/{RightsManagementComponentType.md → RightsManagementDapComponentType.md} +4 -4
  673. package/docs/reference/variables/RightsManagementDarpComponentType.md +13 -0
  674. package/docs/reference/variables/RightsManagementDataAccessHandlerComponentType.md +13 -0
  675. package/docs/reference/variables/RightsManagementPapComponentType.md +7 -1
  676. package/docs/reference/variables/RightsManagementPdpComponentType.md +1 -1
  677. package/docs/reference/variables/RightsManagementPepComponentType.md +7 -1
  678. package/docs/reference/variables/RightsManagementPipComponentType.md +1 -1
  679. package/docs/reference/variables/RightsManagementPmpComponentType.md +1 -1
  680. package/docs/reference/variables/RightsManagementPnapComponentType.md +19 -0
  681. package/docs/reference/variables/RightsManagementPnpComponentType.md +19 -0
  682. package/docs/reference/variables/RightsManagementPolicyArbiterComponentType.md +13 -0
  683. package/docs/reference/variables/RightsManagementPolicyEnforcementProcessorComponentType.md +13 -0
  684. package/docs/reference/variables/RightsManagementPolicyExecutionActionComponentType.md +13 -0
  685. package/docs/reference/variables/RightsManagementPolicyInformationSourceComponentType.md +19 -0
  686. package/docs/reference/variables/RightsManagementPolicyNegotiatorComponentType.md +13 -0
  687. package/docs/reference/variables/RightsManagementPolicyRequesterComponentType.md +13 -0
  688. package/docs/reference/variables/RightsManagementPxpComponentType.md +1 -1
  689. package/docs/reference/variables/SynchronisedStorageComponentType.md +1 -1
  690. package/docs/reference/variables/TaskSchedulerComponentType.md +1 -1
  691. package/docs/reference/variables/TelemetryComponentType.md +1 -1
  692. package/docs/reference/variables/TelemetryConnectorType.md +1 -1
  693. package/docs/reference/variables/TenantAdminComponentType.md +13 -0
  694. package/docs/reference/variables/TrustComponentType.md +13 -0
  695. package/docs/reference/variables/TrustGeneratorComponentType.md +13 -0
  696. package/docs/reference/variables/TrustVerifierComponentType.md +13 -0
  697. package/docs/reference/variables/VaultConnectorType.md +1 -1
  698. package/docs/reference/variables/VerifiableStorageComponentType.md +1 -1
  699. package/docs/reference/variables/VerifiableStorageConnectorType.md +1 -1
  700. package/docs/reference/variables/WalletConnectorType.md +1 -1
  701. package/locales/en.json +14 -1
  702. package/package.json +37 -10
  703. package/dist/cjs/index.cjs +0 -3224
  704. package/dist/esm/index.mjs +0 -3127
  705. package/dist/types/components/rightsManagement.d.ts +0 -13
  706. package/dist/types/models/config/backgroundTaskConnectorConfig.d.ts +0 -9
  707. package/dist/types/models/config/rightsManagementComponentConfig.d.ts +0 -13
  708. package/dist/types/models/types/backgroundTaskConnectorType.d.ts +0 -13
  709. package/dist/types/models/types/rightsManagementComponentType.d.ts +0 -17
  710. package/docs/reference/functions/initialiseBackgroundTaskConnector.md +0 -41
  711. package/docs/reference/functions/initialiseRightsManagementComponent.md +0 -41
  712. package/docs/reference/functions/initialiseWalletStorage.md +0 -41
  713. package/docs/reference/type-aliases/BackgroundTaskConnectorConfig.md +0 -17
  714. package/docs/reference/type-aliases/BackgroundTaskConnectorType.md +0 -5
  715. package/docs/reference/type-aliases/RightsManagementComponentConfig.md +0 -5
  716. package/docs/reference/type-aliases/RightsManagementComponentType.md +0 -5
  717. package/docs/reference/variables/BackgroundTaskConnectorType.md +0 -13
@@ -0,0 +1,51 @@
1
+ // Copyright 2024 IOTA Stiftung.
2
+ // SPDX-License-Identifier: Apache-2.0.
3
+ import { ContextIdHelper, ContextIdKeys } from "@twin.org/context";
4
+ import { ComponentFactory } from "@twin.org/core";
5
+ import { DataSpaceConnectorRestClient } from "@twin.org/data-space-connector-rest-client";
6
+ import { DataSpaceConnectorService, initSchema as initSchemaDataSpaceConnector } from "@twin.org/data-space-connector-service";
7
+ import { DataSpaceConnectorSocketClient } from "@twin.org/data-space-connector-socket-client";
8
+ import { initialiseEntityStorageConnector } from "./entityStorage.js";
9
+ import { DataSpaceConnectorComponentType } from "../models/types/dataSpaceConnectorComponentType.js";
10
+ /**
11
+ * Initialise the data space connector component.
12
+ * @param engineCore The engine core.
13
+ * @param context The context for the engine.
14
+ * @param instanceConfig The instance config.
15
+ * @returns The instance created and the factory for it.
16
+ */
17
+ export async function initialiseDataSpaceConnectorComponent(engineCore, context, instanceConfig) {
18
+ let component;
19
+ let instanceType;
20
+ if (instanceConfig.type === DataSpaceConnectorComponentType.Service) {
21
+ initSchemaDataSpaceConnector();
22
+ const partitionContextIds = ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [ContextIdKeys.Node, ContextIdKeys.Tenant]);
23
+ initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.activityLogEntityStorageType, "ActivityLogDetails", partitionContextIds);
24
+ initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.activityTaskEntityStorageType, "ActivityTask", partitionContextIds);
25
+ component = new DataSpaceConnectorService({
26
+ loggingComponentType: engineCore.getRegisteredInstanceType("loggingComponent"),
27
+ backgroundTaskComponentType: engineCore.getRegisteredInstanceType("backgroundTaskComponent"),
28
+ taskSchedulerComponentType: engineCore.getRegisteredInstanceType("taskSchedulerComponent"),
29
+ partitionContextIds,
30
+ ...instanceConfig.options
31
+ });
32
+ instanceType = "data-space-connector-service";
33
+ }
34
+ else if (instanceConfig.type === DataSpaceConnectorComponentType.RestClient) {
35
+ component = new DataSpaceConnectorRestClient(instanceConfig.options);
36
+ instanceType = "data-space-connector-rest-client";
37
+ }
38
+ else if (instanceConfig.type === DataSpaceConnectorComponentType.SocketClient) {
39
+ component = new DataSpaceConnectorSocketClient({
40
+ loggingComponentType: engineCore.getRegisteredInstanceType("loggingComponent"),
41
+ ...instanceConfig.options
42
+ });
43
+ instanceType = "data-space-connector-socket-client";
44
+ }
45
+ return {
46
+ component,
47
+ instanceType,
48
+ factory: ComponentFactory
49
+ };
50
+ }
51
+ //# sourceMappingURL=dataSpaceConnector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dataSpaceConnector.js","sourceRoot":"","sources":["../../../src/components/dataSpaceConnector.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;AAEnE,OAAO,EAAE,4BAA4B,EAAE,MAAM,4CAA4C,CAAC;AAC1F,OAAO,EAGN,yBAAyB,EACzB,UAAU,IAAI,4BAA4B,EAC1C,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAE,8BAA8B,EAAE,MAAM,8CAA8C,CAAC;AAG9F,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAGtE,OAAO,EAAE,+BAA+B,EAAE,MAAM,oDAAoD,CAAC;AAErG;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,qCAAqC,CAC1D,UAAsC,EACtC,OAA0C,EAC1C,cAAiD;IAMjD,IAAI,SAA0C,CAAC;IAC/C,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,+BAA+B,CAAC,OAAO,EAAE,CAAC;QACrE,4BAA4B,EAAE,CAAC;QAE/B,MAAM,mBAAmB,GAAG,eAAe,CAAC,qBAAqB,CAChE,UAAU,CAAC,gBAAgB,EAAE,EAC7B,CAAC,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,CAC1C,CAAC;QAEF,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,cAAc,CAAC,OAAO,EAAE,4BAA4B,wBAEpD,mBAAmB,CACnB,CAAC;QACF,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,cAAc,CAAC,OAAO,EAAE,6BAA6B,kBAErD,mBAAmB,CACnB,CAAC;QACF,SAAS,GAAG,IAAI,yBAAyB,CAAC;YACzC,oBAAoB,EAAE,UAAU,CAAC,yBAAyB,CAAC,kBAAkB,CAAC;YAC9E,2BAA2B,EAAE,UAAU,CAAC,yBAAyB,CAAC,yBAAyB,CAAC;YAC5F,0BAA0B,EAAE,UAAU,CAAC,yBAAyB,CAAC,wBAAwB,CAAC;YAC1F,mBAAmB;YACnB,GAAG,cAAc,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,YAAY,iCAA6C,CAAC;IAC3D,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,+BAA+B,CAAC,UAAU,EAAE,CAAC;QAC/E,SAAS,GAAG,IAAI,4BAA4B,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACrE,YAAY,qCAAgD,CAAC;IAC9D,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,+BAA+B,CAAC,YAAY,EAAE,CAAC;QACjF,SAAS,GAAG,IAAI,8BAA8B,CAAC;YAC9C,oBAAoB,EAAE,UAAU,CAAC,yBAAyB,CAAC,kBAAkB,CAAC;YAC9E,GAAG,cAAc,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,YAAY,uCAAkD,CAAC;IAChE,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 { IDataSpaceConnector } from \"@twin.org/data-space-connector-models\";\nimport { DataSpaceConnectorRestClient } from \"@twin.org/data-space-connector-rest-client\";\nimport {\n\ttype ActivityLogDetails,\n\ttype ActivityTask,\n\tDataSpaceConnectorService,\n\tinitSchema as initSchemaDataSpaceConnector\n} from \"@twin.org/data-space-connector-service\";\nimport { DataSpaceConnectorSocketClient } from \"@twin.org/data-space-connector-socket-client\";\nimport type { IEngineCore, IEngineCoreContext } from \"@twin.org/engine-models\";\nimport { nameof, nameofKebabCase } from \"@twin.org/nameof\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { DataSpaceConnectorComponentConfig } from \"../models/config/dataSpaceConnectorComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { DataSpaceConnectorComponentType } from \"../models/types/dataSpaceConnectorComponentType.js\";\n\n/**\n * Initialise the data space connector 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 initialiseDataSpaceConnectorComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: DataSpaceConnectorComponentConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof ComponentFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: IDataSpaceConnector | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === DataSpaceConnectorComponentType.Service) {\n\t\tinitSchemaDataSpaceConnector();\n\n\t\tconst partitionContextIds = ContextIdHelper.pickKeysFromAvailable(\n\t\t\tengineCore.getContextIdKeys(),\n\t\t\t[ContextIdKeys.Node, ContextIdKeys.Tenant]\n\t\t);\n\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.activityLogEntityStorageType,\n\t\t\tnameof<ActivityLogDetails>(),\n\t\t\tpartitionContextIds\n\t\t);\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.activityTaskEntityStorageType,\n\t\t\tnameof<ActivityTask>(),\n\t\t\tpartitionContextIds\n\t\t);\n\t\tcomponent = new DataSpaceConnectorService({\n\t\t\tloggingComponentType: engineCore.getRegisteredInstanceType(\"loggingComponent\"),\n\t\t\tbackgroundTaskComponentType: engineCore.getRegisteredInstanceType(\"backgroundTaskComponent\"),\n\t\t\ttaskSchedulerComponentType: engineCore.getRegisteredInstanceType(\"taskSchedulerComponent\"),\n\t\t\tpartitionContextIds,\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = nameofKebabCase(DataSpaceConnectorService);\n\t} else if (instanceConfig.type === DataSpaceConnectorComponentType.RestClient) {\n\t\tcomponent = new DataSpaceConnectorRestClient(instanceConfig.options);\n\t\tinstanceType = nameofKebabCase(DataSpaceConnectorRestClient);\n\t} else if (instanceConfig.type === DataSpaceConnectorComponentType.SocketClient) {\n\t\tcomponent = new DataSpaceConnectorSocketClient({\n\t\t\tloggingComponentType: engineCore.getRegisteredInstanceType(\"loggingComponent\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = nameofKebabCase(DataSpaceConnectorSocketClient);\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
@@ -0,0 +1,37 @@
1
+ // Copyright 2024 IOTA Stiftung.
2
+ // SPDX-License-Identifier: Apache-2.0.
3
+ import { ComponentFactory } from "@twin.org/core";
4
+ import { DocumentManagementRestClient } from "@twin.org/document-management-rest-client";
5
+ import { DocumentManagementService } from "@twin.org/document-management-service";
6
+ import { DocumentManagementComponentType } from "../models/types/documentManagementComponentType.js";
7
+ /**
8
+ * Initialise the document management 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 async function initialiseDocumentManagementComponent(engineCore, context, instanceConfig) {
15
+ let component;
16
+ let instanceType;
17
+ if (instanceConfig.type === DocumentManagementComponentType.Service) {
18
+ component = new DocumentManagementService({
19
+ auditableItemGraphComponentType: engineCore.getRegisteredInstanceType("auditableItemGraphComponent"),
20
+ blobStorageComponentType: engineCore.getRegisteredInstanceType("blobStorageComponent"),
21
+ attestationComponentType: engineCore.getRegisteredInstanceType("attestationComponent"),
22
+ dataProcessingComponentType: engineCore.getRegisteredInstanceType("dataProcessingComponent"),
23
+ ...instanceConfig.options
24
+ });
25
+ instanceType = "document-management-service";
26
+ }
27
+ else if (instanceConfig.type === DocumentManagementComponentType.RestClient) {
28
+ component = new DocumentManagementRestClient(instanceConfig.options);
29
+ instanceType = "document-management-rest-client";
30
+ }
31
+ return {
32
+ component,
33
+ instanceType,
34
+ factory: ComponentFactory
35
+ };
36
+ }
37
+ //# sourceMappingURL=documentManagement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentManagement.js","sourceRoot":"","sources":["../../../src/components/documentManagement.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,gBAAgB,EAAmB,MAAM,gBAAgB,CAAC;AAEnE,OAAO,EAAE,4BAA4B,EAAE,MAAM,2CAA2C,CAAC;AACzF,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAKlF,OAAO,EAAE,+BAA+B,EAAE,MAAM,oDAAoD,CAAC;AAErG;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,qCAAqC,CAC1D,UAAsC,EACtC,OAA0C,EAC1C,cAAiD;IAMjD,IAAI,SAAmD,CAAC;IACxD,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,+BAA+B,CAAC,OAAO,EAAE,CAAC;QACrE,SAAS,GAAG,IAAI,yBAAyB,CAAC;YACzC,+BAA+B,EAAE,UAAU,CAAC,yBAAyB,CACpE,6BAA6B,CAC7B;YACD,wBAAwB,EAAE,UAAU,CAAC,yBAAyB,CAAC,sBAAsB,CAAC;YACtF,wBAAwB,EAAE,UAAU,CAAC,yBAAyB,CAAC,sBAAsB,CAAC;YACtF,2BAA2B,EAAE,UAAU,CAAC,yBAAyB,CAAC,yBAAyB,CAAC;YAC5F,GAAG,cAAc,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,YAAY,gCAA6C,CAAC;IAC3D,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,+BAA+B,CAAC,UAAU,EAAE,CAAC;QAC/E,SAAS,GAAG,IAAI,4BAA4B,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACrE,YAAY,oCAAgD,CAAC;IAC9D,CAAC;IAED,OAAO;QACN,SAAS;QACT,YAAY;QACZ,OAAO,EAAE,gBAAgB;KACzB,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { ComponentFactory, type IComponent } from \"@twin.org/core\";\nimport type { IDocumentManagementComponent } from \"@twin.org/document-management-models\";\nimport { DocumentManagementRestClient } from \"@twin.org/document-management-rest-client\";\nimport { DocumentManagementService } from \"@twin.org/document-management-service\";\nimport type { IEngineCore, IEngineCoreContext } from \"@twin.org/engine-models\";\nimport { nameofKebabCase } from \"@twin.org/nameof\";\nimport type { DocumentManagementComponentConfig } from \"../models/config/documentManagementComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { DocumentManagementComponentType } from \"../models/types/documentManagementComponentType.js\";\n\n/**\n * Initialise the document management 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 initialiseDocumentManagementComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: DocumentManagementComponentConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof ComponentFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: IDocumentManagementComponent | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === DocumentManagementComponentType.Service) {\n\t\tcomponent = new DocumentManagementService({\n\t\t\tauditableItemGraphComponentType: engineCore.getRegisteredInstanceType(\n\t\t\t\t\"auditableItemGraphComponent\"\n\t\t\t),\n\t\t\tblobStorageComponentType: engineCore.getRegisteredInstanceType(\"blobStorageComponent\"),\n\t\t\tattestationComponentType: engineCore.getRegisteredInstanceType(\"attestationComponent\"),\n\t\t\tdataProcessingComponentType: engineCore.getRegisteredInstanceType(\"dataProcessingComponent\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = nameofKebabCase(DocumentManagementService);\n\t} else if (instanceConfig.type === DocumentManagementComponentType.RestClient) {\n\t\tcomponent = new DocumentManagementRestClient(instanceConfig.options);\n\t\tinstanceType = nameofKebabCase(DocumentManagementRestClient);\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
@@ -0,0 +1,226 @@
1
+ // Copyright 2024 IOTA Stiftung.
2
+ // SPDX-License-Identifier: Apache-2.0.
3
+ import path from "node:path";
4
+ import { ComponentFactory, GeneralError, I18n, Is, StringHelper } from "@twin.org/core";
5
+ import { CosmosDbEntityStorageConnector } from "@twin.org/entity-storage-connector-cosmosdb";
6
+ import { DynamoDbEntityStorageConnector } from "@twin.org/entity-storage-connector-dynamodb";
7
+ import { FileEntityStorageConnector } from "@twin.org/entity-storage-connector-file";
8
+ import { FirestoreEntityStorageConnector } from "@twin.org/entity-storage-connector-gcp-firestore";
9
+ import { MemoryEntityStorageConnector } from "@twin.org/entity-storage-connector-memory";
10
+ import { MongoDbEntityStorageConnector } from "@twin.org/entity-storage-connector-mongodb";
11
+ import { MySqlEntityStorageConnector } from "@twin.org/entity-storage-connector-mysql";
12
+ import { PostgreSqlEntityStorageConnector } from "@twin.org/entity-storage-connector-postgresql";
13
+ import { ScyllaDBTableConnector } from "@twin.org/entity-storage-connector-scylladb";
14
+ import { SynchronisedEntityStorageConnector } from "@twin.org/entity-storage-connector-synchronised";
15
+ import { EntityStorageConnectorFactory } from "@twin.org/entity-storage-models";
16
+ import { EntityStorageRestClient } from "@twin.org/entity-storage-rest-client";
17
+ import { EntityStorageService } from "@twin.org/entity-storage-service";
18
+ import { EntityStorageComponentType } from "../models/types/entityStorageComponentType.js";
19
+ import { EntityStorageConnectorType } from "../models/types/entityStorageConnectorType.js";
20
+ /**
21
+ * Initialise the entity storage connector.
22
+ * @param engineCore The engine core.
23
+ * @param context The context for the engine.
24
+ * @param typeCustom Override the type of connector to use instead of default configuration.
25
+ * @param schema The schema for the entity storage.
26
+ * @param partitionContextIds The context IDs to use for partitioning the data.
27
+ * @returns The name of the instance type that was created.
28
+ * @throws GeneralError when the configuration is invalid.
29
+ */
30
+ export function initialiseEntityStorageConnector(engineCore, context, typeCustom, schema, partitionContextIds) {
31
+ const instanceName = StringHelper.kebabCase(schema);
32
+ if (!EntityStorageConnectorFactory.hasName(instanceName)) {
33
+ let entityStorageConfig;
34
+ if (Is.stringValue(typeCustom)) {
35
+ // A custom type has been specified, so look it up
36
+ entityStorageConfig = context.config.types.entityStorageConnector?.find(c => c.type === typeCustom || c.overrideInstanceType === typeCustom);
37
+ if (Is.empty(entityStorageConfig)) {
38
+ throw new GeneralError("engineTypes", "entityStorageCustomMissing", {
39
+ typeCustom,
40
+ storageName: instanceName
41
+ });
42
+ }
43
+ }
44
+ else {
45
+ // The default entity storage method is either the one with the isDefault flag set
46
+ // or pick the first one if no default is set.
47
+ entityStorageConfig =
48
+ context.config.types.entityStorageConnector?.find(c => c.isDefault ?? false) ??
49
+ context.config.types.entityStorageConnector?.[0];
50
+ if (Is.empty(entityStorageConfig)) {
51
+ throw new GeneralError("engineTypes", "entityStorageMissing", {
52
+ storageName: instanceName
53
+ });
54
+ }
55
+ }
56
+ const type = entityStorageConfig.type;
57
+ let entityStorageConnector;
58
+ engineCore.logInfo(I18n.formatMessage("info.engineTypes.configuringEntityStorage", {
59
+ element: "Entity Storage",
60
+ storageName: instanceName,
61
+ storageType: type
62
+ }));
63
+ if (type === EntityStorageConnectorType.Memory) {
64
+ entityStorageConnector = new MemoryEntityStorageConnector({
65
+ entitySchema: schema,
66
+ partitionContextIds
67
+ });
68
+ }
69
+ else if (type === EntityStorageConnectorType.File) {
70
+ entityStorageConnector = new FileEntityStorageConnector({
71
+ entitySchema: schema,
72
+ partitionContextIds,
73
+ ...entityStorageConfig.options,
74
+ config: {
75
+ ...entityStorageConfig.options.config,
76
+ directory: path.join(entityStorageConfig.options.config.directory, `${entityStorageConfig.options.folderPrefix ?? ""}${instanceName}`)
77
+ }
78
+ });
79
+ }
80
+ else if (type === EntityStorageConnectorType.AwsDynamoDb) {
81
+ entityStorageConnector = new DynamoDbEntityStorageConnector({
82
+ entitySchema: schema,
83
+ partitionContextIds,
84
+ ...entityStorageConfig.options,
85
+ config: {
86
+ ...entityStorageConfig.options.config,
87
+ tableName: `${entityStorageConfig.options.tablePrefix ?? ""}${instanceName}`
88
+ }
89
+ });
90
+ }
91
+ else if (type === EntityStorageConnectorType.AzureCosmosDb) {
92
+ entityStorageConnector = new CosmosDbEntityStorageConnector({
93
+ entitySchema: schema,
94
+ partitionContextIds,
95
+ ...entityStorageConfig.options,
96
+ config: {
97
+ ...entityStorageConfig.options.config,
98
+ containerId: `${entityStorageConfig.options.tablePrefix ?? ""}${instanceName}`
99
+ }
100
+ });
101
+ }
102
+ else if (type === EntityStorageConnectorType.GcpFirestoreDb) {
103
+ entityStorageConnector = new FirestoreEntityStorageConnector({
104
+ entitySchema: schema,
105
+ partitionContextIds,
106
+ ...entityStorageConfig.options,
107
+ config: {
108
+ ...entityStorageConfig.options.config,
109
+ collectionName: `${entityStorageConfig.options.tablePrefix ?? ""}${instanceName}`
110
+ }
111
+ });
112
+ }
113
+ else if (type === EntityStorageConnectorType.ScyllaDb) {
114
+ entityStorageConnector = new ScyllaDBTableConnector({
115
+ entitySchema: schema,
116
+ partitionContextIds,
117
+ ...entityStorageConfig.options,
118
+ config: {
119
+ ...entityStorageConfig.options.config,
120
+ tableName: `${entityStorageConfig.options.tablePrefix ?? ""}${instanceName}`
121
+ }
122
+ });
123
+ }
124
+ else if (type === EntityStorageConnectorType.MySqlDb) {
125
+ entityStorageConnector = new MySqlEntityStorageConnector({
126
+ entitySchema: schema,
127
+ partitionContextIds,
128
+ ...entityStorageConfig.options,
129
+ config: {
130
+ ...entityStorageConfig.options.config,
131
+ tableName: `${entityStorageConfig.options.tablePrefix ?? ""}${instanceName}`
132
+ }
133
+ });
134
+ }
135
+ else if (type === EntityStorageConnectorType.MongoDb) {
136
+ entityStorageConnector = new MongoDbEntityStorageConnector({
137
+ entitySchema: schema,
138
+ partitionContextIds,
139
+ ...entityStorageConfig.options,
140
+ config: {
141
+ ...entityStorageConfig.options.config,
142
+ collection: `${entityStorageConfig.options.tablePrefix ?? ""}${instanceName}`
143
+ }
144
+ });
145
+ }
146
+ else if (type === EntityStorageConnectorType.PostgreSql) {
147
+ entityStorageConnector = new PostgreSqlEntityStorageConnector({
148
+ entitySchema: schema,
149
+ partitionContextIds,
150
+ ...entityStorageConfig.options,
151
+ config: {
152
+ ...entityStorageConfig.options.config,
153
+ tableName: `${entityStorageConfig.options.tablePrefix ?? ""}${instanceName}`
154
+ }
155
+ });
156
+ }
157
+ else if (type === EntityStorageConnectorType.Synchronised) {
158
+ // Create the entity storage that is wrapped by the synchronised connector
159
+ // by removing the custom type it will default to the standard storage
160
+ // mechanism for entity storage
161
+ const wrappedInstanceName = initialiseEntityStorageConnector(engineCore, context, undefined, schema, partitionContextIds);
162
+ // Use the wrapped instance name as the entity storage connector type
163
+ // for the synchronised connector
164
+ entityStorageConnector = new SynchronisedEntityStorageConnector({
165
+ entitySchema: schema,
166
+ ...entityStorageConfig.options,
167
+ entityStorageConnectorType: wrappedInstanceName,
168
+ eventBusComponentType: engineCore.getRegisteredInstanceType("eventBusComponent"),
169
+ config: {
170
+ ...entityStorageConfig.options.config
171
+ }
172
+ });
173
+ }
174
+ else {
175
+ throw new GeneralError("engineTypes", "connectorUnknownType", {
176
+ type,
177
+ connectorType: "entityStorageConnector"
178
+ });
179
+ }
180
+ context.componentInstances.push({
181
+ instanceType: instanceName,
182
+ component: entityStorageConnector,
183
+ initialised: false
184
+ });
185
+ EntityStorageConnectorFactory.register(instanceName, () => entityStorageConnector);
186
+ }
187
+ return instanceName;
188
+ }
189
+ /**
190
+ * Initialise the entity storage connector.
191
+ * @param engineCore The engine core.
192
+ * @param context The context for the engine.
193
+ * @param instanceConfig The instance config.
194
+ * @returns The instance created and the factory for it.
195
+ */
196
+ export async function initialiseEntityStorageComponent(engineCore, context, instanceConfig) {
197
+ let component;
198
+ let instanceType;
199
+ if (instanceConfig.type === EntityStorageComponentType.Service) {
200
+ const kebabName = StringHelper.kebabCase(instanceConfig.options.entityStorageType);
201
+ // See if there is a custom entity storage for this type, otherwise just use the default one.
202
+ const hasCustom = context.config.types.entityStorageConnector?.some(c => c.type === kebabName || c.overrideInstanceType === kebabName);
203
+ initialiseEntityStorageConnector(engineCore, context, hasCustom ? kebabName : undefined, instanceConfig.options.entityStorageType, instanceConfig.options.partitionContextIds);
204
+ component = new EntityStorageService({
205
+ entityStorageType: kebabName,
206
+ config: {
207
+ ...instanceConfig.options.config
208
+ }
209
+ });
210
+ instanceType = StringHelper.kebabCase(instanceConfig.options.entityStorageType);
211
+ }
212
+ else if (instanceConfig.type === EntityStorageComponentType.RestClient) {
213
+ const kebabName = StringHelper.kebabCase(instanceConfig.options.entityStorageType);
214
+ component = new EntityStorageRestClient({
215
+ pathPrefix: kebabName,
216
+ ...instanceConfig.options
217
+ });
218
+ instanceType = `${"entity-storage-rest-client"}-${kebabName}`;
219
+ }
220
+ return {
221
+ component,
222
+ instanceType,
223
+ factory: ComponentFactory
224
+ };
225
+ }
226
+ //# sourceMappingURL=entityStorage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entityStorage.js","sourceRoot":"","sources":["../../../src/components/entityStorage.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport path from \"node:path\";\nimport {\n\tComponentFactory,\n\tGeneralError,\n\tI18n,\n\tIs,\n\tStringHelper,\n\ttype IComponent\n} from \"@twin.org/core\";\nimport type { IEngineCore, IEngineCoreContext } from \"@twin.org/engine-models\";\nimport { CosmosDbEntityStorageConnector } from \"@twin.org/entity-storage-connector-cosmosdb\";\nimport { DynamoDbEntityStorageConnector } from \"@twin.org/entity-storage-connector-dynamodb\";\nimport { FileEntityStorageConnector } from \"@twin.org/entity-storage-connector-file\";\nimport { FirestoreEntityStorageConnector } from \"@twin.org/entity-storage-connector-gcp-firestore\";\nimport { MemoryEntityStorageConnector } from \"@twin.org/entity-storage-connector-memory\";\nimport { MongoDbEntityStorageConnector } from \"@twin.org/entity-storage-connector-mongodb\";\nimport { MySqlEntityStorageConnector } from \"@twin.org/entity-storage-connector-mysql\";\nimport { PostgreSqlEntityStorageConnector } from \"@twin.org/entity-storage-connector-postgresql\";\nimport { ScyllaDBTableConnector } from \"@twin.org/entity-storage-connector-scylladb\";\nimport { SynchronisedEntityStorageConnector } from \"@twin.org/entity-storage-connector-synchronised\";\nimport {\n\tEntityStorageConnectorFactory,\n\ttype IEntityStorageComponent,\n\ttype IEntityStorageConnector\n} from \"@twin.org/entity-storage-models\";\nimport { EntityStorageRestClient } from \"@twin.org/entity-storage-rest-client\";\nimport { EntityStorageService } from \"@twin.org/entity-storage-service\";\nimport { nameofKebabCase } from \"@twin.org/nameof\";\nimport type { EntityStorageComponentConfig } from \"../models/config/entityStorageComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { EntityStorageComponentType } from \"../models/types/entityStorageComponentType.js\";\nimport { EntityStorageConnectorType } from \"../models/types/entityStorageConnectorType.js\";\n\n/**\n * Initialise the entity storage connector.\n * @param engineCore The engine core.\n * @param context The context for the engine.\n * @param typeCustom Override the type of connector to use instead of default configuration.\n * @param schema The schema for the entity storage.\n * @param partitionContextIds The context IDs to use for partitioning the data.\n * @returns The name of the instance type that was created.\n * @throws GeneralError when the configuration is invalid.\n */\nexport function initialiseEntityStorageConnector(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\ttypeCustom: string | undefined,\n\tschema: string,\n\tpartitionContextIds: string[]\n): string {\n\tconst instanceName = StringHelper.kebabCase(schema);\n\n\tif (!EntityStorageConnectorFactory.hasName(instanceName)) {\n\t\tlet entityStorageConfig;\n\n\t\tif (Is.stringValue(typeCustom)) {\n\t\t\t// A custom type has been specified, so look it up\n\t\t\tentityStorageConfig = context.config.types.entityStorageConnector?.find(\n\t\t\t\tc => c.type === typeCustom || c.overrideInstanceType === typeCustom\n\t\t\t);\n\t\t\tif (Is.empty(entityStorageConfig)) {\n\t\t\t\tthrow new GeneralError(\"engineTypes\", \"entityStorageCustomMissing\", {\n\t\t\t\t\ttypeCustom,\n\t\t\t\t\tstorageName: instanceName\n\t\t\t\t});\n\t\t\t}\n\t\t} else {\n\t\t\t// The default entity storage method is either the one with the isDefault flag set\n\t\t\t// or pick the first one if no default is set.\n\t\t\tentityStorageConfig =\n\t\t\t\tcontext.config.types.entityStorageConnector?.find(c => c.isDefault ?? false) ??\n\t\t\t\tcontext.config.types.entityStorageConnector?.[0];\n\t\t\tif (Is.empty(entityStorageConfig)) {\n\t\t\t\tthrow new GeneralError(\"engineTypes\", \"entityStorageMissing\", {\n\t\t\t\t\tstorageName: instanceName\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\tconst type = entityStorageConfig.type;\n\t\tlet entityStorageConnector: IEntityStorageConnector;\n\n\t\tengineCore.logInfo(\n\t\t\tI18n.formatMessage(\"info.engineTypes.configuringEntityStorage\", {\n\t\t\t\telement: \"Entity Storage\",\n\t\t\t\tstorageName: instanceName,\n\t\t\t\tstorageType: type\n\t\t\t})\n\t\t);\n\n\t\tif (type === EntityStorageConnectorType.Memory) {\n\t\t\tentityStorageConnector = new MemoryEntityStorageConnector({\n\t\t\t\tentitySchema: schema,\n\t\t\t\tpartitionContextIds\n\t\t\t});\n\t\t} else if (type === EntityStorageConnectorType.File) {\n\t\t\tentityStorageConnector = new FileEntityStorageConnector({\n\t\t\t\tentitySchema: schema,\n\t\t\t\tpartitionContextIds,\n\t\t\t\t...entityStorageConfig.options,\n\t\t\t\tconfig: {\n\t\t\t\t\t...entityStorageConfig.options.config,\n\t\t\t\t\tdirectory: path.join(\n\t\t\t\t\t\tentityStorageConfig.options.config.directory,\n\t\t\t\t\t\t`${entityStorageConfig.options.folderPrefix ?? \"\"}${instanceName}`\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t});\n\t\t} else if (type === EntityStorageConnectorType.AwsDynamoDb) {\n\t\t\tentityStorageConnector = new DynamoDbEntityStorageConnector({\n\t\t\t\tentitySchema: schema,\n\t\t\t\tpartitionContextIds,\n\t\t\t\t...entityStorageConfig.options,\n\t\t\t\tconfig: {\n\t\t\t\t\t...entityStorageConfig.options.config,\n\t\t\t\t\ttableName: `${entityStorageConfig.options.tablePrefix ?? \"\"}${instanceName}`\n\t\t\t\t}\n\t\t\t});\n\t\t} else if (type === EntityStorageConnectorType.AzureCosmosDb) {\n\t\t\tentityStorageConnector = new CosmosDbEntityStorageConnector({\n\t\t\t\tentitySchema: schema,\n\t\t\t\tpartitionContextIds,\n\t\t\t\t...entityStorageConfig.options,\n\t\t\t\tconfig: {\n\t\t\t\t\t...entityStorageConfig.options.config,\n\t\t\t\t\tcontainerId: `${entityStorageConfig.options.tablePrefix ?? \"\"}${instanceName}`\n\t\t\t\t}\n\t\t\t});\n\t\t} else if (type === EntityStorageConnectorType.GcpFirestoreDb) {\n\t\t\tentityStorageConnector = new FirestoreEntityStorageConnector({\n\t\t\t\tentitySchema: schema,\n\t\t\t\tpartitionContextIds,\n\t\t\t\t...entityStorageConfig.options,\n\t\t\t\tconfig: {\n\t\t\t\t\t...entityStorageConfig.options.config,\n\t\t\t\t\tcollectionName: `${entityStorageConfig.options.tablePrefix ?? \"\"}${instanceName}`\n\t\t\t\t}\n\t\t\t});\n\t\t} else if (type === EntityStorageConnectorType.ScyllaDb) {\n\t\t\tentityStorageConnector = new ScyllaDBTableConnector({\n\t\t\t\tentitySchema: schema,\n\t\t\t\tpartitionContextIds,\n\t\t\t\t...entityStorageConfig.options,\n\t\t\t\tconfig: {\n\t\t\t\t\t...entityStorageConfig.options.config,\n\t\t\t\t\ttableName: `${entityStorageConfig.options.tablePrefix ?? \"\"}${instanceName}`\n\t\t\t\t}\n\t\t\t});\n\t\t} else if (type === EntityStorageConnectorType.MySqlDb) {\n\t\t\tentityStorageConnector = new MySqlEntityStorageConnector({\n\t\t\t\tentitySchema: schema,\n\t\t\t\tpartitionContextIds,\n\t\t\t\t...entityStorageConfig.options,\n\t\t\t\tconfig: {\n\t\t\t\t\t...entityStorageConfig.options.config,\n\t\t\t\t\ttableName: `${entityStorageConfig.options.tablePrefix ?? \"\"}${instanceName}`\n\t\t\t\t}\n\t\t\t});\n\t\t} else if (type === EntityStorageConnectorType.MongoDb) {\n\t\t\tentityStorageConnector = new MongoDbEntityStorageConnector({\n\t\t\t\tentitySchema: schema,\n\t\t\t\tpartitionContextIds,\n\t\t\t\t...entityStorageConfig.options,\n\t\t\t\tconfig: {\n\t\t\t\t\t...entityStorageConfig.options.config,\n\t\t\t\t\tcollection: `${entityStorageConfig.options.tablePrefix ?? \"\"}${instanceName}`\n\t\t\t\t}\n\t\t\t});\n\t\t} else if (type === EntityStorageConnectorType.PostgreSql) {\n\t\t\tentityStorageConnector = new PostgreSqlEntityStorageConnector({\n\t\t\t\tentitySchema: schema,\n\t\t\t\tpartitionContextIds,\n\t\t\t\t...entityStorageConfig.options,\n\t\t\t\tconfig: {\n\t\t\t\t\t...entityStorageConfig.options.config,\n\t\t\t\t\ttableName: `${entityStorageConfig.options.tablePrefix ?? \"\"}${instanceName}`\n\t\t\t\t}\n\t\t\t});\n\t\t} else if (type === EntityStorageConnectorType.Synchronised) {\n\t\t\t// Create the entity storage that is wrapped by the synchronised connector\n\t\t\t// by removing the custom type it will default to the standard storage\n\t\t\t// mechanism for entity storage\n\t\t\tconst wrappedInstanceName = initialiseEntityStorageConnector(\n\t\t\t\tengineCore,\n\t\t\t\tcontext,\n\t\t\t\tundefined,\n\t\t\t\tschema,\n\t\t\t\tpartitionContextIds\n\t\t\t);\n\n\t\t\t// Use the wrapped instance name as the entity storage connector type\n\t\t\t// for the synchronised connector\n\t\t\tentityStorageConnector = new SynchronisedEntityStorageConnector({\n\t\t\t\tentitySchema: schema,\n\t\t\t\t...entityStorageConfig.options,\n\t\t\t\tentityStorageConnectorType: wrappedInstanceName,\n\t\t\t\teventBusComponentType: engineCore.getRegisteredInstanceType(\"eventBusComponent\"),\n\t\t\t\tconfig: {\n\t\t\t\t\t...entityStorageConfig.options.config\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tthrow new GeneralError(\"engineTypes\", \"connectorUnknownType\", {\n\t\t\t\ttype,\n\t\t\t\tconnectorType: \"entityStorageConnector\"\n\t\t\t});\n\t\t}\n\n\t\tcontext.componentInstances.push({\n\t\t\tinstanceType: instanceName,\n\t\t\tcomponent: entityStorageConnector,\n\t\t\tinitialised: false\n\t\t});\n\t\tEntityStorageConnectorFactory.register(instanceName, () => entityStorageConnector);\n\t}\n\n\treturn instanceName;\n}\n\n/**\n * Initialise the entity storage 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 initialiseEntityStorageComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: EntityStorageComponentConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof ComponentFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: IEntityStorageComponent | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === EntityStorageComponentType.Service) {\n\t\tconst kebabName = StringHelper.kebabCase(instanceConfig.options.entityStorageType);\n\n\t\t// See if there is a custom entity storage for this type, otherwise just use the default one.\n\t\tconst hasCustom = context.config.types.entityStorageConnector?.some(\n\t\t\tc => c.type === kebabName || c.overrideInstanceType === kebabName\n\t\t);\n\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\thasCustom ? kebabName : undefined,\n\t\t\tinstanceConfig.options.entityStorageType,\n\t\t\tinstanceConfig.options.partitionContextIds\n\t\t);\n\t\tcomponent = new EntityStorageService({\n\t\t\tentityStorageType: kebabName,\n\t\t\tconfig: {\n\t\t\t\t...instanceConfig.options.config\n\t\t\t}\n\t\t});\n\t\tinstanceType = StringHelper.kebabCase(instanceConfig.options.entityStorageType);\n\t} else if (instanceConfig.type === EntityStorageComponentType.RestClient) {\n\t\tconst kebabName = StringHelper.kebabCase(instanceConfig.options.entityStorageType);\n\t\tcomponent = new EntityStorageRestClient({\n\t\t\tpathPrefix: kebabName,\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = `${nameofKebabCase(EntityStorageRestClient)}-${kebabName}`;\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
@@ -0,0 +1,63 @@
1
+ // Copyright 2024 IOTA Stiftung.
2
+ // SPDX-License-Identifier: Apache-2.0.
3
+ import { ComponentFactory } from "@twin.org/core";
4
+ import { LocalEventBusConnector } from "@twin.org/event-bus-connector-local";
5
+ import { EventBusConnectorFactory } from "@twin.org/event-bus-models";
6
+ import { EventBusService } from "@twin.org/event-bus-service";
7
+ import { EventBusSocketClient } from "@twin.org/event-bus-socket-client";
8
+ import { EventBusComponentType } from "../models/types/eventBusComponentType.js";
9
+ import { EventBusConnectorType } from "../models/types/eventBusConnectorType.js";
10
+ /**
11
+ * Initialise a event bus connector.
12
+ * @param engineCore The engine core.
13
+ * @param context The context for the engine.
14
+ * @param instanceConfig The instance config.
15
+ * @returns The instance created and the factory for it.
16
+ */
17
+ export async function initialiseEventBusConnector(engineCore, context, instanceConfig) {
18
+ let connector;
19
+ let instanceType;
20
+ if (instanceConfig.type === EventBusConnectorType.Local) {
21
+ connector = new LocalEventBusConnector({
22
+ loggingComponentType: engineCore.getRegisteredInstanceType("loggingComponent"),
23
+ ...instanceConfig.options
24
+ });
25
+ instanceType = LocalEventBusConnector.NAMESPACE;
26
+ }
27
+ return {
28
+ instanceType,
29
+ factory: EventBusConnectorFactory,
30
+ component: connector
31
+ };
32
+ }
33
+ /**
34
+ * Initialise the event bus component.
35
+ * @param engineCore The engine core.
36
+ * @param context The context for the engine.
37
+ * @param instanceConfig The instance config.
38
+ * @returns The instance created and the factory for it.
39
+ */
40
+ export async function initialiseEventBusComponent(engineCore, context, instanceConfig) {
41
+ let component;
42
+ let instanceType;
43
+ if (instanceConfig.type === EventBusComponentType.Service) {
44
+ component = new EventBusService({
45
+ eventBusConnectorType: engineCore.getRegisteredInstanceType("eventBusConnector"),
46
+ ...instanceConfig.options
47
+ });
48
+ instanceType = "event-bus-service";
49
+ }
50
+ else if (instanceConfig.type === EventBusComponentType.SocketClient) {
51
+ component = new EventBusSocketClient({
52
+ loggingComponentType: engineCore.getRegisteredInstanceType("loggingComponent"),
53
+ ...instanceConfig.options
54
+ });
55
+ instanceType = "event-bus-socket-client";
56
+ }
57
+ return {
58
+ instanceType,
59
+ factory: ComponentFactory,
60
+ component
61
+ };
62
+ }
63
+ //# sourceMappingURL=eventBus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eventBus.js","sourceRoot":"","sources":["../../../src/components/eventBus.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,gBAAgB,EAAmB,MAAM,gBAAgB,CAAC;AAEnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAC7E,OAAO,EACN,wBAAwB,EAGxB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAKzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAEjF;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAChD,UAAsC,EACtC,OAA0C,EAC1C,cAAuC;IAMvC,IAAI,SAAyC,CAAC;IAC9C,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,qBAAqB,CAAC,KAAK,EAAE,CAAC;QACzD,SAAS,GAAG,IAAI,sBAAsB,CAAC;YACtC,oBAAoB,EAAE,UAAU,CAAC,yBAAyB,CAAC,kBAAkB,CAAC;YAC9E,GAAG,cAAc,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,YAAY,GAAG,sBAAsB,CAAC,SAAS,CAAC;IACjD,CAAC;IAED,OAAO;QACN,YAAY;QACZ,OAAO,EAAE,wBAAwB;QACjC,SAAS,EAAE,SAAS;KACpB,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAChD,UAAsC,EACtC,OAA0C,EAC1C,cAAuC;IAMvC,IAAI,SAAyC,CAAC;IAC9C,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,qBAAqB,CAAC,OAAO,EAAE,CAAC;QAC3D,SAAS,GAAG,IAAI,eAAe,CAAC;YAC/B,qBAAqB,EAAE,UAAU,CAAC,yBAAyB,CAAC,mBAAmB,CAAC;YAChF,GAAG,cAAc,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,YAAY,sBAAmC,CAAC;IACjD,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,qBAAqB,CAAC,YAAY,EAAE,CAAC;QACvE,SAAS,GAAG,IAAI,oBAAoB,CAAC;YACpC,oBAAoB,EAAE,UAAU,CAAC,yBAAyB,CAAC,kBAAkB,CAAC;YAC9E,GAAG,cAAc,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,YAAY,4BAAwC,CAAC;IACtD,CAAC;IAED,OAAO;QACN,YAAY;QACZ,OAAO,EAAE,gBAAgB;QACzB,SAAS;KACT,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { ComponentFactory, type IComponent } from \"@twin.org/core\";\nimport type { IEngineCore, IEngineCoreContext } from \"@twin.org/engine-models\";\nimport { LocalEventBusConnector } from \"@twin.org/event-bus-connector-local\";\nimport {\n\tEventBusConnectorFactory,\n\ttype IEventBusComponent,\n\ttype IEventBusConnector\n} from \"@twin.org/event-bus-models\";\nimport { EventBusService } from \"@twin.org/event-bus-service\";\nimport { EventBusSocketClient } from \"@twin.org/event-bus-socket-client\";\nimport { nameofKebabCase } from \"@twin.org/nameof\";\nimport type { EventBusComponentConfig } from \"../models/config/eventBusComponentConfig.js\";\nimport type { EventBusConnectorConfig } from \"../models/config/eventBusConnectorConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { EventBusComponentType } from \"../models/types/eventBusComponentType.js\";\nimport { EventBusConnectorType } from \"../models/types/eventBusConnectorType.js\";\n\n/**\n * Initialise a event bus 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 initialiseEventBusConnector(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: EventBusConnectorConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof EventBusConnectorFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet connector: IEventBusConnector | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === EventBusConnectorType.Local) {\n\t\tconnector = new LocalEventBusConnector({\n\t\t\tloggingComponentType: engineCore.getRegisteredInstanceType(\"loggingComponent\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = LocalEventBusConnector.NAMESPACE;\n\t}\n\n\treturn {\n\t\tinstanceType,\n\t\tfactory: EventBusConnectorFactory,\n\t\tcomponent: connector\n\t};\n}\n\n/**\n * Initialise the event bus 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 initialiseEventBusComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: EventBusComponentConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof ComponentFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: IEventBusComponent | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === EventBusComponentType.Service) {\n\t\tcomponent = new EventBusService({\n\t\t\teventBusConnectorType: engineCore.getRegisteredInstanceType(\"eventBusConnector\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = nameofKebabCase(EventBusService);\n\t} else if (instanceConfig.type === EventBusComponentType.SocketClient) {\n\t\tcomponent = new EventBusSocketClient({\n\t\t\tloggingComponentType: engineCore.getRegisteredInstanceType(\"loggingComponent\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = nameofKebabCase(EventBusSocketClient);\n\t}\n\n\treturn {\n\t\tinstanceType,\n\t\tfactory: ComponentFactory,\n\t\tcomponent\n\t};\n}\n"]}
@@ -0,0 +1,41 @@
1
+ import { EntityStorageFaucetConnector, initSchema as initSchemaWallet } from "@twin.org/wallet-connector-entity-storage";
2
+ import { IotaFaucetConnector } from "@twin.org/wallet-connector-iota";
3
+ import { FaucetConnectorFactory } from "@twin.org/wallet-models";
4
+ import { initialiseEntityStorageConnector } from "./entityStorage.js";
5
+ import { DltConfigType } from "../models/types/dltConfigType.js";
6
+ import { FaucetConnectorType } from "../models/types/faucetConnectorType.js";
7
+ import { EngineTypeHelper } from "../utils/engineTypeHelper.js";
8
+ /**
9
+ * Initialise a faucet connector.
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 async function initialiseFaucetConnector(engineCore, context, instanceConfig) {
16
+ let component;
17
+ let instanceType;
18
+ if (instanceConfig.type === FaucetConnectorType.Iota) {
19
+ const dltConfig = EngineTypeHelper.getConfigOfType(engineCore.getConfig(), "dltConfig", DltConfigType.Iota);
20
+ component = new IotaFaucetConnector({
21
+ ...instanceConfig.options,
22
+ config: {
23
+ ...dltConfig?.options?.config,
24
+ ...instanceConfig.options.config
25
+ }
26
+ });
27
+ instanceType = IotaFaucetConnector.NAMESPACE;
28
+ }
29
+ else if (instanceConfig.type === FaucetConnectorType.EntityStorage) {
30
+ initSchemaWallet();
31
+ initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.walletAddressEntityStorageType, "WalletAddress", []);
32
+ component = new EntityStorageFaucetConnector(instanceConfig.options);
33
+ instanceType = EntityStorageFaucetConnector.NAMESPACE;
34
+ }
35
+ return {
36
+ component,
37
+ instanceType,
38
+ factory: FaucetConnectorFactory
39
+ };
40
+ }
41
+ //# sourceMappingURL=faucet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"faucet.js","sourceRoot":"","sources":["../../../src/components/faucet.ts"],"names":[],"mappings":"AAKA,OAAO,EACN,4BAA4B,EAC5B,UAAU,IAAI,gBAAgB,EAE9B,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAyB,MAAM,yBAAyB,CAAC;AACxF,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAItE,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC9C,UAAsC,EACtC,OAA0C,EAC1C,cAAqC;IAMrC,IAAI,SAAuC,CAAC;IAC5C,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,mBAAmB,CAAC,IAAI,EAAE,CAAC;QACtD,MAAM,SAAS,GAAG,gBAAgB,CAAC,eAAe,CACjD,UAAU,CAAC,SAAS,EAAE,EACtB,WAAW,EACX,aAAa,CAAC,IAAI,CAClB,CAAC;QACF,SAAS,GAAG,IAAI,mBAAmB,CAAC;YACnC,GAAG,cAAc,CAAC,OAAO;YACzB,MAAM,EAAE;gBACP,GAAG,SAAS,EAAE,OAAO,EAAE,MAAM;gBAC7B,GAAG,cAAc,CAAC,OAAO,CAAC,MAAM;aAChC;SACD,CAAC,CAAC;QACH,YAAY,GAAG,mBAAmB,CAAC,SAAS,CAAC;IAC9C,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,mBAAmB,CAAC,aAAa,EAAE,CAAC;QACtE,gBAAgB,EAAE,CAAC;QACnB,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,cAAc,CAAC,OAAO,EAAE,8BAA8B,mBAEtD,EAAE,CACF,CAAC;QAEF,SAAS,GAAG,IAAI,4BAA4B,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACrE,YAAY,GAAG,4BAA4B,CAAC,SAAS,CAAC;IACvD,CAAC;IAED,OAAO;QACN,SAAS;QACT,YAAY;QACZ,OAAO,EAAE,sBAAsB;KAC/B,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\tEntityStorageFaucetConnector,\n\tinitSchema as initSchemaWallet,\n\ttype WalletAddress\n} from \"@twin.org/wallet-connector-entity-storage\";\nimport { IotaFaucetConnector } from \"@twin.org/wallet-connector-iota\";\nimport { FaucetConnectorFactory, type IFaucetConnector } from \"@twin.org/wallet-models\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { DltConfig } from \"../models/config/dltConfig.js\";\nimport type { FaucetConnectorConfig } from \"../models/config/faucetConnectorConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { DltConfigType } from \"../models/types/dltConfigType.js\";\nimport { FaucetConnectorType } from \"../models/types/faucetConnectorType.js\";\nimport { EngineTypeHelper } from \"../utils/engineTypeHelper.js\";\n\n/**\n * Initialise a faucet 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 initialiseFaucetConnector(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: FaucetConnectorConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof FaucetConnectorFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: IFaucetConnector | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === FaucetConnectorType.Iota) {\n\t\tconst dltConfig = EngineTypeHelper.getConfigOfType<DltConfig>(\n\t\t\tengineCore.getConfig(),\n\t\t\t\"dltConfig\",\n\t\t\tDltConfigType.Iota\n\t\t);\n\t\tcomponent = new IotaFaucetConnector({\n\t\t\t...instanceConfig.options,\n\t\t\tconfig: {\n\t\t\t\t...dltConfig?.options?.config,\n\t\t\t\t...instanceConfig.options.config\n\t\t\t}\n\t\t});\n\t\tinstanceType = IotaFaucetConnector.NAMESPACE;\n\t} else if (instanceConfig.type === FaucetConnectorType.EntityStorage) {\n\t\tinitSchemaWallet();\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.walletAddressEntityStorageType,\n\t\t\tnameof<WalletAddress>(),\n\t\t\t[]\n\t\t);\n\n\t\tcomponent = new EntityStorageFaucetConnector(instanceConfig.options);\n\t\tinstanceType = EntityStorageFaucetConnector.NAMESPACE;\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: FaucetConnectorFactory\n\t};\n}\n"]}
@@ -0,0 +1,38 @@
1
+ // Copyright 2024 IOTA Stiftung.
2
+ // SPDX-License-Identifier: Apache-2.0.
3
+ import { ContextIdHelper, ContextIdKeys } from "@twin.org/context";
4
+ import { ComponentFactory } from "@twin.org/core";
5
+ import { FederatedCatalogueRestClient } from "@twin.org/federated-catalogue-rest-client";
6
+ import { FederatedCatalogueService, initSchema as initSchemaFederatedCatalogue } from "@twin.org/federated-catalogue-service";
7
+ import { initialiseEntityStorageConnector } from "./entityStorage.js";
8
+ import { FederatedCatalogueComponentType } from "../models/types/federatedCatalogueComponentType.js";
9
+ /**
10
+ * Initialise the federated catalogue component.
11
+ * @param engineCore The engine core.
12
+ * @param context The context for the engine.
13
+ * @param instanceConfig The instance config.
14
+ * @returns The instance created and the factory for it.
15
+ */
16
+ export async function initialiseFederatedCatalogueComponent(engineCore, context, instanceConfig) {
17
+ let component;
18
+ let instanceType;
19
+ if (instanceConfig.type === FederatedCatalogueComponentType.Service) {
20
+ initSchemaFederatedCatalogue();
21
+ initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.datasetStorageConnectorType, "Dataset", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [ContextIdKeys.Node]));
22
+ component = new FederatedCatalogueService({
23
+ loggingComponentType: engineCore.getRegisteredInstanceType("loggingComponent"),
24
+ ...instanceConfig.options
25
+ });
26
+ instanceType = "federated-catalogue-service";
27
+ }
28
+ else if (instanceConfig.type === FederatedCatalogueComponentType.RestClient) {
29
+ component = new FederatedCatalogueRestClient(instanceConfig.options);
30
+ instanceType = "federated-catalogue-rest-client";
31
+ }
32
+ return {
33
+ component,
34
+ instanceType,
35
+ factory: ComponentFactory
36
+ };
37
+ }
38
+ //# sourceMappingURL=federatedCatalogue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"federatedCatalogue.js","sourceRoot":"","sources":["../../../src/components/federatedCatalogue.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,EAAE,4BAA4B,EAAE,MAAM,2CAA2C,CAAC;AACzF,OAAO,EAEN,yBAAyB,EACzB,UAAU,IAAI,4BAA4B,EAC1C,MAAM,uCAAuC,CAAC;AAE/C,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAGtE,OAAO,EAAE,+BAA+B,EAAE,MAAM,oDAAoD,CAAC;AAErG;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,qCAAqC,CAC1D,UAAsC,EACtC,OAA0C,EAC1C,cAAiD;IAMjD,IAAI,SAAmD,CAAC;IACxD,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,+BAA+B,CAAC,OAAO,EAAE,CAAC;QACrE,4BAA4B,EAAE,CAAC;QAE/B,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,cAAc,CAAC,OAAO,EAAE,2BAA2B,aAEnD,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAC1F,CAAC;QAEF,SAAS,GAAG,IAAI,yBAAyB,CAAC;YACzC,oBAAoB,EAAE,UAAU,CAAC,yBAAyB,CAAC,kBAAkB,CAAC;YAC9E,GAAG,cAAc,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,YAAY,gCAA6C,CAAC;IAC3D,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,+BAA+B,CAAC,UAAU,EAAE,CAAC;QAC/E,SAAS,GAAG,IAAI,4BAA4B,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACrE,YAAY,oCAAgD,CAAC;IAC9D,CAAC;IAED,OAAO;QACN,SAAS;QACT,YAAY;QAEZ,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 type { IFederatedCatalogueComponent } from \"@twin.org/federated-catalogue-models\";\nimport { FederatedCatalogueRestClient } from \"@twin.org/federated-catalogue-rest-client\";\nimport {\n\ttype Dataset,\n\tFederatedCatalogueService,\n\tinitSchema as initSchemaFederatedCatalogue\n} from \"@twin.org/federated-catalogue-service\";\nimport { nameof, nameofKebabCase } from \"@twin.org/nameof\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { FederatedCatalogueComponentConfig } from \"../models/config/federatedCatalogueComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { FederatedCatalogueComponentType } from \"../models/types/federatedCatalogueComponentType.js\";\n\n/**\n * Initialise the federated catalogue 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 initialiseFederatedCatalogueComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: FederatedCatalogueComponentConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof ComponentFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: IFederatedCatalogueComponent | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === FederatedCatalogueComponentType.Service) {\n\t\tinitSchemaFederatedCatalogue();\n\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.datasetStorageConnectorType,\n\t\t\tnameof<Dataset>(),\n\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [ContextIdKeys.Node])\n\t\t);\n\n\t\tcomponent = new FederatedCatalogueService({\n\t\t\tloggingComponentType: engineCore.getRegisteredInstanceType(\"loggingComponent\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = nameofKebabCase(FederatedCatalogueService);\n\t} else if (instanceConfig.type === FederatedCatalogueComponentType.RestClient) {\n\t\tcomponent = new FederatedCatalogueRestClient(instanceConfig.options);\n\t\tinstanceType = nameofKebabCase(FederatedCatalogueRestClient);\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
@@ -0,0 +1,31 @@
1
+ // Copyright 2024 IOTA Stiftung.
2
+ // SPDX-License-Identifier: Apache-2.0.
3
+ import { ContextIdHelper, ContextIdKeys } from "@twin.org/context";
4
+ import { FilterByExample } from "@twin.org/federated-catalogue-filters";
5
+ import { FederatedCatalogueFilterFactory } from "@twin.org/federated-catalogue-models";
6
+ import { initSchema as initSchemaFederatedCatalogue } from "@twin.org/federated-catalogue-service";
7
+ import { initialiseEntityStorageConnector } from "./entityStorage.js";
8
+ import { FederatedCatalogueFilterComponentType } from "../models/types/federatedCatalogueFilterComponentType.js";
9
+ /**
10
+ * Initialise the federated catalogue filter component.
11
+ * @param engineCore The engine core.
12
+ * @param context The context for the engine.
13
+ * @param instanceConfig The instance config.
14
+ * @returns The instance created and the factory for it.
15
+ */
16
+ export async function initialiseFederatedCatalogueFilterComponent(engineCore, context, instanceConfig) {
17
+ let component;
18
+ let instanceType;
19
+ if (instanceConfig.type === FederatedCatalogueFilterComponentType.FilterByExample) {
20
+ initSchemaFederatedCatalogue();
21
+ initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.datasetStorageConnectorType, "Dataset", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [ContextIdKeys.Node]));
22
+ component = new FilterByExample(instanceConfig.options);
23
+ instanceType = "FilterByExample";
24
+ }
25
+ return {
26
+ component,
27
+ instanceType,
28
+ factory: FederatedCatalogueFilterFactory
29
+ };
30
+ }
31
+ //# sourceMappingURL=federatedCatalogueFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"federatedCatalogueFilter.js","sourceRoot":"","sources":["../../../src/components/federatedCatalogueFilter.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,uCAAuC;AACvC,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGnE,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EACN,+BAA+B,EAE/B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAEN,UAAU,IAAI,4BAA4B,EAC1C,MAAM,uCAAuC,CAAC;AAE/C,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAGtE,OAAO,EAAE,qCAAqC,EAAE,MAAM,0DAA0D,CAAC;AAEjH;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,2CAA2C,CAChE,UAAsC,EACtC,OAA0C,EAC1C,cAAuD;IAMvD,IAAI,SAAgD,CAAC;IACrD,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,qCAAqC,CAAC,eAAe,EAAE,CAAC;QACnF,4BAA4B,EAAE,CAAC;QAE/B,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,cAAc,CAAC,OAAO,EAAE,2BAA2B,aAEnD,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAC1F,CAAC;QAEF,SAAS,GAAG,IAAI,eAAe,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACxD,YAAY,oBAA0B,CAAC;IACxC,CAAC;IAED,OAAO;QACN,SAAS;QACT,YAAY;QACZ,OAAO,EAAE,+BAA+B;KACxC,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { ContextIdHelper, ContextIdKeys } from \"@twin.org/context\";\nimport type { IComponent } from \"@twin.org/core\";\nimport type { IEngineCore, IEngineCoreContext } from \"@twin.org/engine-models\";\nimport { FilterByExample } from \"@twin.org/federated-catalogue-filters\";\nimport {\n\tFederatedCatalogueFilterFactory,\n\ttype IFederatedCatalogueFilter\n} from \"@twin.org/federated-catalogue-models\";\nimport {\n\ttype Dataset,\n\tinitSchema as initSchemaFederatedCatalogue\n} from \"@twin.org/federated-catalogue-service\";\nimport { nameof } from \"@twin.org/nameof\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { FederatedCatalogueFilterComponentConfig } from \"../models/config/federatedCatalogueFilterComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { FederatedCatalogueFilterComponentType } from \"../models/types/federatedCatalogueFilterComponentType.js\";\n\n/**\n * Initialise the federated catalogue filter 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 initialiseFederatedCatalogueFilterComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: FederatedCatalogueFilterComponentConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof FederatedCatalogueFilterFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: IFederatedCatalogueFilter | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === FederatedCatalogueFilterComponentType.FilterByExample) {\n\t\tinitSchemaFederatedCatalogue();\n\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.datasetStorageConnectorType,\n\t\t\tnameof<Dataset>(),\n\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [ContextIdKeys.Node])\n\t\t);\n\n\t\tcomponent = new FilterByExample(instanceConfig.options);\n\t\tinstanceType = nameof(FilterByExample);\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: FederatedCatalogueFilterFactory\n\t};\n}\n"]}