@twin.org/engine-types 0.0.2-next.9 → 0.0.3-next.1
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.
- package/dist/es/components/attestation.js +60 -0
- package/dist/es/components/attestation.js.map +1 -0
- package/dist/es/components/auditableItemGraph.js +44 -0
- package/dist/es/components/auditableItemGraph.js.map +1 -0
- package/dist/es/components/auditableItemStream.js +44 -0
- package/dist/es/components/auditableItemStream.js.map +1 -0
- package/dist/es/components/authenticationGenerator.js +30 -0
- package/dist/es/components/authenticationGenerator.js.map +1 -0
- package/dist/es/components/backgroundTask.js +33 -0
- package/dist/es/components/backgroundTask.js.map +1 -0
- package/dist/es/components/blobStorage.js +143 -0
- package/dist/es/components/blobStorage.js.map +1 -0
- package/dist/es/components/dataProcessing.js +89 -0
- package/dist/es/components/dataProcessing.js.map +1 -0
- package/dist/es/components/dataSpaceConnector.js +52 -0
- package/dist/es/components/dataSpaceConnector.js.map +1 -0
- package/dist/es/components/documentManagement.js +37 -0
- package/dist/es/components/documentManagement.js.map +1 -0
- package/dist/es/components/entityStorage.js +225 -0
- package/dist/es/components/entityStorage.js.map +1 -0
- package/dist/es/components/eventBus.js +63 -0
- package/dist/es/components/eventBus.js.map +1 -0
- package/dist/es/components/faucet.js +41 -0
- package/dist/es/components/faucet.js.map +1 -0
- package/dist/es/components/federatedCatalogue.js +42 -0
- package/dist/es/components/federatedCatalogue.js.map +1 -0
- package/dist/es/components/identity.js +75 -0
- package/dist/es/components/identity.js.map +1 -0
- package/dist/es/components/identityProfile.js +64 -0
- package/dist/es/components/identityProfile.js.map +1 -0
- package/dist/es/components/identityResolver.js +87 -0
- package/dist/es/components/identityResolver.js.map +1 -0
- package/dist/es/components/immutableProof.js +44 -0
- package/dist/es/components/immutableProof.js.map +1 -0
- package/dist/es/components/logging.js +73 -0
- package/dist/es/components/logging.js.map +1 -0
- package/dist/es/components/messaging.js +177 -0
- package/dist/es/components/messaging.js.map +1 -0
- package/dist/es/components/nft.js +78 -0
- package/dist/es/components/nft.js.map +1 -0
- package/dist/es/components/rightsManagementDap.js +38 -0
- package/dist/es/components/rightsManagementDap.js.map +1 -0
- package/dist/es/components/rightsManagementDarp.js +29 -0
- package/dist/es/components/rightsManagementDarp.js.map +1 -0
- package/dist/es/components/rightsManagementPap.js +41 -0
- package/dist/es/components/rightsManagementPap.js.map +1 -0
- package/dist/es/components/rightsManagementPdp.js +46 -0
- package/dist/es/components/rightsManagementPdp.js.map +1 -0
- package/dist/es/components/rightsManagementPep.js +44 -0
- package/dist/es/components/rightsManagementPep.js.map +1 -0
- package/dist/es/components/rightsManagementPip.js +43 -0
- package/dist/es/components/rightsManagementPip.js.map +1 -0
- package/dist/es/components/rightsManagementPmp.js +30 -0
- package/dist/es/components/rightsManagementPmp.js.map +1 -0
- package/dist/es/components/rightsManagementPnap.js +42 -0
- package/dist/es/components/rightsManagementPnap.js.map +1 -0
- package/dist/es/components/rightsManagementPnp.js +61 -0
- package/dist/es/components/rightsManagementPnp.js.map +1 -0
- package/dist/es/components/rightsManagementPxp.js +43 -0
- package/dist/es/components/rightsManagementPxp.js.map +1 -0
- package/dist/es/components/synchronisedStorage.js +47 -0
- package/dist/es/components/synchronisedStorage.js.map +1 -0
- package/dist/es/components/taskScheduler.js +27 -0
- package/dist/es/components/taskScheduler.js.map +1 -0
- package/dist/es/components/telemetry.js +71 -0
- package/dist/es/components/telemetry.js.map +1 -0
- package/dist/es/components/tenant.js +32 -0
- package/dist/es/components/tenant.js.map +1 -0
- package/dist/es/components/vault.js +33 -0
- package/dist/es/components/vault.js.map +1 -0
- package/dist/es/components/verifiableStorage.js +79 -0
- package/dist/es/components/verifiableStorage.js.map +1 -0
- package/dist/es/components/wallet.js +47 -0
- package/dist/es/components/wallet.js.map +1 -0
- package/dist/es/index.js +152 -0
- package/dist/es/index.js.map +1 -0
- package/dist/es/models/IEngineConfig.js +2 -0
- package/dist/es/models/IEngineConfig.js.map +1 -0
- package/dist/es/models/config/attestationComponentConfig.js +2 -0
- package/dist/es/models/config/attestationComponentConfig.js.map +1 -0
- package/dist/es/models/config/attestationConnectorConfig.js +2 -0
- package/dist/es/models/config/attestationConnectorConfig.js.map +1 -0
- package/dist/es/models/config/auditableItemGraphComponentConfig.js +2 -0
- package/dist/es/models/config/auditableItemGraphComponentConfig.js.map +1 -0
- package/dist/es/models/config/auditableItemStreamComponentConfig.js +2 -0
- package/dist/es/models/config/auditableItemStreamComponentConfig.js.map +1 -0
- package/dist/es/models/config/authenticationGeneratorComponentConfig.js +2 -0
- package/dist/es/models/config/authenticationGeneratorComponentConfig.js.map +1 -0
- package/dist/es/models/config/backgroundTaskConnectorConfig.js +2 -0
- package/dist/es/models/config/backgroundTaskConnectorConfig.js.map +1 -0
- package/dist/es/models/config/blobStorageComponentConfig.js +2 -0
- package/dist/es/models/config/blobStorageComponentConfig.js.map +1 -0
- package/dist/es/models/config/blobStorageConnectorConfig.js +2 -0
- package/dist/es/models/config/blobStorageConnectorConfig.js.map +1 -0
- package/dist/es/models/config/dataConverterConnectorConfig.js +2 -0
- package/dist/es/models/config/dataConverterConnectorConfig.js.map +1 -0
- package/dist/es/models/config/dataExtractorConnectorConfig.js +2 -0
- package/dist/es/models/config/dataExtractorConnectorConfig.js.map +1 -0
- package/dist/es/models/config/dataProcessingComponentConfig.js +2 -0
- package/dist/es/models/config/dataProcessingComponentConfig.js.map +1 -0
- package/dist/es/models/config/dataSpaceConnectorComponentConfig.js +2 -0
- package/dist/es/models/config/dataSpaceConnectorComponentConfig.js.map +1 -0
- package/dist/es/models/config/dltConfig.js +2 -0
- package/dist/es/models/config/dltConfig.js.map +1 -0
- package/dist/es/models/config/documentManagementComponentConfig.js +2 -0
- package/dist/es/models/config/documentManagementComponentConfig.js.map +1 -0
- package/dist/es/models/config/entityStorageComponentConfig.js +2 -0
- package/dist/es/models/config/entityStorageComponentConfig.js.map +1 -0
- package/dist/es/models/config/entityStorageConnectorConfig.js +2 -0
- package/dist/es/models/config/entityStorageConnectorConfig.js.map +1 -0
- package/dist/es/models/config/eventBusComponentConfig.js +2 -0
- package/dist/es/models/config/eventBusComponentConfig.js.map +1 -0
- package/dist/es/models/config/eventBusConnectorConfig.js +2 -0
- package/dist/es/models/config/eventBusConnectorConfig.js.map +1 -0
- package/dist/es/models/config/faucetConnectorConfig.js +2 -0
- package/dist/es/models/config/faucetConnectorConfig.js.map +1 -0
- package/dist/es/models/config/federatedCatalogueComponentConfig.js +2 -0
- package/dist/es/models/config/federatedCatalogueComponentConfig.js.map +1 -0
- package/dist/es/models/config/identityComponentConfig.js +2 -0
- package/dist/es/models/config/identityComponentConfig.js.map +1 -0
- package/dist/es/models/config/identityConnectorConfig.js +2 -0
- package/dist/es/models/config/identityConnectorConfig.js.map +1 -0
- package/dist/es/models/config/identityProfileComponentConfig.js +2 -0
- package/dist/es/models/config/identityProfileComponentConfig.js.map +1 -0
- package/dist/es/models/config/identityProfileConnectorConfig.js +2 -0
- package/dist/es/models/config/identityProfileConnectorConfig.js.map +1 -0
- package/dist/es/models/config/identityResolverComponentConfig.js +2 -0
- package/dist/es/models/config/identityResolverComponentConfig.js.map +1 -0
- package/dist/es/models/config/identityResolverConnectorConfig.js +2 -0
- package/dist/es/models/config/identityResolverConnectorConfig.js.map +1 -0
- package/dist/es/models/config/immutableProofComponentConfig.js +2 -0
- package/dist/es/models/config/immutableProofComponentConfig.js.map +1 -0
- package/dist/es/models/config/loggingComponentConfig.js +2 -0
- package/dist/es/models/config/loggingComponentConfig.js.map +1 -0
- package/dist/es/models/config/loggingConnectorConfig.js +2 -0
- package/dist/es/models/config/loggingConnectorConfig.js.map +1 -0
- package/dist/es/models/config/messagingAdminComponentConfig.js +2 -0
- package/dist/es/models/config/messagingAdminComponentConfig.js.map +1 -0
- package/dist/es/models/config/messagingComponentConfig.js +2 -0
- package/dist/es/models/config/messagingComponentConfig.js.map +1 -0
- package/dist/es/models/config/messagingEmailConnectorConfig.js +2 -0
- package/dist/es/models/config/messagingEmailConnectorConfig.js.map +1 -0
- package/dist/es/models/config/messagingPushNotificationConnectorConfig.js +2 -0
- package/dist/es/models/config/messagingPushNotificationConnectorConfig.js.map +1 -0
- package/dist/es/models/config/messagingSmsConnectorConfig.js +2 -0
- package/dist/es/models/config/messagingSmsConnectorConfig.js.map +1 -0
- package/dist/es/models/config/nftComponentConfig.js +2 -0
- package/dist/es/models/config/nftComponentConfig.js.map +1 -0
- package/dist/es/models/config/nftConnectorConfig.js +2 -0
- package/dist/es/models/config/nftConnectorConfig.js.map +1 -0
- package/dist/es/models/config/rightsManagementDapComponentConfig.js +2 -0
- package/dist/es/models/config/rightsManagementDapComponentConfig.js.map +1 -0
- package/dist/es/models/config/rightsManagementDarpComponentConfig.js +2 -0
- package/dist/es/models/config/rightsManagementDarpComponentConfig.js.map +1 -0
- package/dist/es/models/config/rightsManagementPapComponentConfig.js +2 -0
- package/dist/es/models/config/rightsManagementPapComponentConfig.js.map +1 -0
- package/dist/es/models/config/rightsManagementPdpComponentConfig.js +2 -0
- package/dist/es/models/config/rightsManagementPdpComponentConfig.js.map +1 -0
- package/dist/es/models/config/rightsManagementPepComponentConfig.js +2 -0
- package/dist/es/models/config/rightsManagementPepComponentConfig.js.map +1 -0
- package/dist/es/models/config/rightsManagementPipComponentConfig.js +2 -0
- package/dist/es/models/config/rightsManagementPipComponentConfig.js.map +1 -0
- package/dist/es/models/config/rightsManagementPmpComponentConfig.js +2 -0
- package/dist/es/models/config/rightsManagementPmpComponentConfig.js.map +1 -0
- package/dist/es/models/config/rightsManagementPnapComponentConfig.js +2 -0
- package/dist/es/models/config/rightsManagementPnapComponentConfig.js.map +1 -0
- package/dist/es/models/config/rightsManagementPnpComponentConfig.js +2 -0
- package/dist/es/models/config/rightsManagementPnpComponentConfig.js.map +1 -0
- package/dist/es/models/config/rightsManagementPxpComponentConfig.js +2 -0
- package/dist/es/models/config/rightsManagementPxpComponentConfig.js.map +1 -0
- package/dist/es/models/config/synchronisedStorageComponentConfig.js +2 -0
- package/dist/es/models/config/synchronisedStorageComponentConfig.js.map +1 -0
- package/dist/es/models/config/taskSchedulerComponentConfig.js +2 -0
- package/dist/es/models/config/taskSchedulerComponentConfig.js.map +1 -0
- package/dist/es/models/config/telemetryComponentConfig.js +2 -0
- package/dist/es/models/config/telemetryComponentConfig.js.map +1 -0
- package/dist/es/models/config/telemetryConnectorConfig.js +2 -0
- package/dist/es/models/config/telemetryConnectorConfig.js.map +1 -0
- package/dist/es/models/config/tenantAdminComponentConfig.js +2 -0
- package/dist/es/models/config/tenantAdminComponentConfig.js.map +1 -0
- package/dist/es/models/config/vaultConnectorConfig.js +2 -0
- package/dist/es/models/config/vaultConnectorConfig.js.map +1 -0
- package/dist/es/models/config/verifiableStorageComponentConfig.js +2 -0
- package/dist/es/models/config/verifiableStorageComponentConfig.js.map +1 -0
- package/dist/es/models/config/verifiableStorageConnectorConfig.js +2 -0
- package/dist/es/models/config/verifiableStorageConnectorConfig.js.map +1 -0
- package/dist/es/models/config/walletConnectorConfig.js +2 -0
- package/dist/es/models/config/walletConnectorConfig.js.map +1 -0
- package/dist/es/models/types/attestationComponentType.js +17 -0
- package/dist/es/models/types/attestationComponentType.js.map +1 -0
- package/dist/es/models/types/attestationConnectorType.js +13 -0
- package/dist/es/models/types/attestationConnectorType.js.map +1 -0
- package/dist/es/models/types/auditableItemGraphComponentType.js +17 -0
- package/dist/es/models/types/auditableItemGraphComponentType.js.map +1 -0
- package/dist/es/models/types/auditableItemStreamComponentType.js +17 -0
- package/dist/es/models/types/auditableItemStreamComponentType.js.map +1 -0
- package/dist/es/models/types/authenticationGeneratorComponentType.js +13 -0
- package/dist/es/models/types/authenticationGeneratorComponentType.js.map +1 -0
- package/dist/es/models/types/backgroundTaskConnectorType.js +13 -0
- package/dist/es/models/types/backgroundTaskConnectorType.js.map +1 -0
- package/dist/es/models/types/blobStorageComponentType.js +17 -0
- package/dist/es/models/types/blobStorageComponentType.js.map +1 -0
- package/dist/es/models/types/blobStorageConnectorType.js +33 -0
- package/dist/es/models/types/blobStorageConnectorType.js.map +1 -0
- package/dist/es/models/types/dataConverterConnectorType.js +17 -0
- package/dist/es/models/types/dataConverterConnectorType.js.map +1 -0
- package/dist/es/models/types/dataExtractorConnectorType.js +13 -0
- package/dist/es/models/types/dataExtractorConnectorType.js.map +1 -0
- package/dist/es/models/types/dataProcessingComponentType.js +17 -0
- package/dist/es/models/types/dataProcessingComponentType.js.map +1 -0
- package/dist/es/models/types/dataSpaceConnectorComponentType.js +21 -0
- package/dist/es/models/types/dataSpaceConnectorComponentType.js.map +1 -0
- package/dist/es/models/types/dltConfigType.js +13 -0
- package/dist/es/models/types/dltConfigType.js.map +1 -0
- package/dist/es/models/types/documentManagementComponentType.js +17 -0
- package/dist/es/models/types/documentManagementComponentType.js.map +1 -0
- package/dist/es/models/types/entityStorageComponentType.js +17 -0
- package/dist/es/models/types/entityStorageComponentType.js.map +1 -0
- package/dist/es/models/types/entityStorageConnectorType.js +49 -0
- package/dist/es/models/types/entityStorageConnectorType.js.map +1 -0
- package/dist/es/models/types/eventBusComponentType.js +17 -0
- package/dist/es/models/types/eventBusComponentType.js.map +1 -0
- package/dist/es/models/types/eventBusConnectorType.js +13 -0
- package/dist/es/models/types/eventBusConnectorType.js.map +1 -0
- package/dist/es/models/types/faucetConnectorType.js +17 -0
- package/dist/es/models/types/faucetConnectorType.js.map +1 -0
- package/dist/es/models/types/federatedCatalogueComponentType.js +17 -0
- package/dist/es/models/types/federatedCatalogueComponentType.js.map +1 -0
- package/dist/es/models/types/identityComponentType.js +17 -0
- package/dist/es/models/types/identityComponentType.js.map +1 -0
- package/dist/es/models/types/identityConnectorType.js +17 -0
- package/dist/es/models/types/identityConnectorType.js.map +1 -0
- package/dist/es/models/types/identityProfileComponentType.js +17 -0
- package/dist/es/models/types/identityProfileComponentType.js.map +1 -0
- package/dist/es/models/types/identityProfileConnectorType.js +13 -0
- package/dist/es/models/types/identityProfileConnectorType.js.map +1 -0
- package/dist/es/models/types/identityResolverComponentType.js +17 -0
- package/dist/es/models/types/identityResolverComponentType.js.map +1 -0
- package/dist/es/models/types/identityResolverConnectorType.js +21 -0
- package/dist/es/models/types/identityResolverConnectorType.js.map +1 -0
- package/dist/es/models/types/immutableProofComponentType.js +17 -0
- package/dist/es/models/types/immutableProofComponentType.js.map +1 -0
- package/dist/es/models/types/loggingComponentType.js +17 -0
- package/dist/es/models/types/loggingComponentType.js.map +1 -0
- package/dist/es/models/types/loggingConnectorType.js +21 -0
- package/dist/es/models/types/loggingConnectorType.js.map +1 -0
- package/dist/es/models/types/messagingAdminComponentType.js +13 -0
- package/dist/es/models/types/messagingAdminComponentType.js.map +1 -0
- package/dist/es/models/types/messagingComponentType.js +13 -0
- package/dist/es/models/types/messagingComponentType.js.map +1 -0
- package/dist/es/models/types/messagingEmailConnectorType.js +17 -0
- package/dist/es/models/types/messagingEmailConnectorType.js.map +1 -0
- package/dist/es/models/types/messagingPushNotificationConnectorType.js +17 -0
- package/dist/es/models/types/messagingPushNotificationConnectorType.js.map +1 -0
- package/dist/es/models/types/messagingSmsConnectorType.js +17 -0
- package/dist/es/models/types/messagingSmsConnectorType.js.map +1 -0
- package/dist/es/models/types/nftComponentType.js +17 -0
- package/dist/es/models/types/nftComponentType.js.map +1 -0
- package/dist/es/models/types/nftConnectorType.js +17 -0
- package/dist/es/models/types/nftConnectorType.js.map +1 -0
- package/dist/es/models/types/rightsManagementDapComponentType.js +17 -0
- package/dist/es/models/types/rightsManagementDapComponentType.js.map +1 -0
- package/dist/es/models/types/rightsManagementDarpComponentType.js +13 -0
- package/dist/es/models/types/rightsManagementDarpComponentType.js.map +1 -0
- package/dist/es/models/types/rightsManagementPapComponentType.js +17 -0
- package/dist/es/models/types/rightsManagementPapComponentType.js.map +1 -0
- package/dist/es/models/types/rightsManagementPdpComponentType.js +13 -0
- package/dist/es/models/types/rightsManagementPdpComponentType.js.map +1 -0
- package/dist/es/models/types/rightsManagementPepComponentType.js +17 -0
- package/dist/es/models/types/rightsManagementPepComponentType.js.map +1 -0
- package/dist/es/models/types/rightsManagementPipComponentType.js +13 -0
- package/dist/es/models/types/rightsManagementPipComponentType.js.map +1 -0
- package/dist/es/models/types/rightsManagementPmpComponentType.js +13 -0
- package/dist/es/models/types/rightsManagementPmpComponentType.js.map +1 -0
- package/dist/es/models/types/rightsManagementPnapComponentType.js +17 -0
- package/dist/es/models/types/rightsManagementPnapComponentType.js.map +1 -0
- package/dist/es/models/types/rightsManagementPnpComponentType.js +17 -0
- package/dist/es/models/types/rightsManagementPnpComponentType.js.map +1 -0
- package/dist/es/models/types/rightsManagementPxpComponentType.js +13 -0
- package/dist/es/models/types/rightsManagementPxpComponentType.js.map +1 -0
- package/dist/es/models/types/synchronisedStorageComponentType.js +17 -0
- package/dist/es/models/types/synchronisedStorageComponentType.js.map +1 -0
- package/dist/es/models/types/taskSchedulerComponentType.js +13 -0
- package/dist/es/models/types/taskSchedulerComponentType.js.map +1 -0
- package/dist/es/models/types/telemetryComponentType.js +17 -0
- package/dist/es/models/types/telemetryComponentType.js.map +1 -0
- package/dist/es/models/types/telemetryConnectorType.js +13 -0
- package/dist/es/models/types/telemetryConnectorType.js.map +1 -0
- package/dist/es/models/types/tenantAdminComponentType.js +13 -0
- package/dist/es/models/types/tenantAdminComponentType.js.map +1 -0
- package/dist/es/models/types/vaultConnectorType.js +17 -0
- package/dist/es/models/types/vaultConnectorType.js.map +1 -0
- package/dist/es/models/types/verifiableStorageComponentType.js +17 -0
- package/dist/es/models/types/verifiableStorageComponentType.js.map +1 -0
- package/dist/es/models/types/verifiableStorageConnectorType.js +17 -0
- package/dist/es/models/types/verifiableStorageConnectorType.js.map +1 -0
- package/dist/es/models/types/walletConnectorType.js +17 -0
- package/dist/es/models/types/walletConnectorType.js.map +1 -0
- package/dist/es/utils/engineTypeHelper.js +32 -0
- package/dist/es/utils/engineTypeHelper.js.map +1 -0
- package/dist/types/components/attestation.d.ts +17 -11
- package/dist/types/components/auditableItemGraph.d.ts +9 -6
- package/dist/types/components/auditableItemStream.d.ts +9 -6
- package/dist/types/components/authenticationGenerator.d.ts +17 -0
- package/dist/types/components/backgroundTask.d.ts +10 -6
- package/dist/types/components/blobStorage.d.ts +17 -11
- package/dist/types/components/dataProcessing.d.ts +24 -16
- package/dist/types/components/dataSpaceConnector.d.ts +16 -0
- package/dist/types/components/documentManagement.d.ts +9 -6
- package/dist/types/components/entityStorage.d.ts +12 -8
- package/dist/types/components/eventBus.d.ts +17 -11
- package/dist/types/components/faucet.d.ts +10 -6
- package/dist/types/components/federatedCatalogue.d.ts +9 -6
- package/dist/types/components/identity.d.ts +17 -11
- package/dist/types/components/identityProfile.d.ts +17 -11
- package/dist/types/components/identityResolver.d.ts +17 -11
- package/dist/types/components/immutableProof.d.ts +9 -6
- package/dist/types/components/logging.d.ts +17 -11
- package/dist/types/components/messaging.d.ts +44 -21
- package/dist/types/components/nft.d.ts +17 -11
- package/dist/types/components/rightsManagementDap.d.ts +16 -0
- package/dist/types/components/rightsManagementDarp.d.ts +16 -0
- package/dist/types/components/rightsManagementPap.d.ts +9 -6
- package/dist/types/components/rightsManagementPdp.d.ts +9 -6
- package/dist/types/components/rightsManagementPep.d.ts +9 -6
- package/dist/types/components/rightsManagementPip.d.ts +9 -6
- package/dist/types/components/rightsManagementPmp.d.ts +9 -6
- package/dist/types/components/rightsManagementPnap.d.ts +16 -0
- package/dist/types/components/rightsManagementPnp.d.ts +16 -0
- package/dist/types/components/rightsManagementPxp.d.ts +9 -6
- package/dist/types/components/synchronisedStorage.d.ts +9 -6
- package/dist/types/components/taskScheduler.d.ts +9 -6
- package/dist/types/components/telemetry.d.ts +17 -11
- package/dist/types/components/tenant.d.ts +16 -0
- package/dist/types/components/vault.d.ts +10 -6
- package/dist/types/components/verifiableStorage.d.ts +17 -11
- package/dist/types/components/wallet.d.ts +10 -16
- package/dist/types/index.d.ts +149 -128
- package/dist/types/models/IEngineConfig.d.ts +85 -50
- package/dist/types/models/config/attestationComponentConfig.d.ts +1 -1
- package/dist/types/models/config/attestationConnectorConfig.d.ts +1 -1
- package/dist/types/models/config/auditableItemGraphComponentConfig.d.ts +1 -1
- package/dist/types/models/config/auditableItemStreamComponentConfig.d.ts +1 -1
- package/dist/types/models/config/authenticationGeneratorComponentConfig.d.ts +9 -0
- package/dist/types/models/config/backgroundTaskConnectorConfig.d.ts +1 -1
- package/dist/types/models/config/blobStorageComponentConfig.d.ts +1 -1
- package/dist/types/models/config/blobStorageConnectorConfig.d.ts +1 -1
- package/dist/types/models/config/dataConverterConnectorConfig.d.ts +1 -1
- package/dist/types/models/config/dataExtractorConnectorConfig.d.ts +1 -1
- package/dist/types/models/config/dataProcessingComponentConfig.d.ts +1 -1
- package/dist/types/models/config/dataSpaceConnectorComponentConfig.d.ts +17 -0
- package/dist/types/models/config/dltConfig.d.ts +1 -1
- package/dist/types/models/config/documentManagementComponentConfig.d.ts +1 -1
- package/dist/types/models/config/entityStorageComponentConfig.d.ts +4 -2
- package/dist/types/models/config/entityStorageConnectorConfig.d.ts +1 -1
- package/dist/types/models/config/eventBusComponentConfig.d.ts +1 -1
- package/dist/types/models/config/eventBusConnectorConfig.d.ts +1 -1
- package/dist/types/models/config/faucetConnectorConfig.d.ts +1 -1
- package/dist/types/models/config/federatedCatalogueComponentConfig.d.ts +1 -1
- package/dist/types/models/config/identityComponentConfig.d.ts +1 -1
- package/dist/types/models/config/identityConnectorConfig.d.ts +1 -1
- package/dist/types/models/config/identityProfileComponentConfig.d.ts +1 -1
- package/dist/types/models/config/identityProfileConnectorConfig.d.ts +1 -1
- package/dist/types/models/config/identityResolverComponentConfig.d.ts +1 -1
- package/dist/types/models/config/identityResolverConnectorConfig.d.ts +1 -1
- package/dist/types/models/config/immutableProofComponentConfig.d.ts +1 -1
- package/dist/types/models/config/loggingComponentConfig.d.ts +1 -1
- package/dist/types/models/config/loggingConnectorConfig.d.ts +1 -1
- package/dist/types/models/config/messagingAdminComponentConfig.d.ts +9 -0
- package/dist/types/models/config/messagingComponentConfig.d.ts +1 -1
- package/dist/types/models/config/messagingEmailConnectorConfig.d.ts +1 -1
- package/dist/types/models/config/messagingPushNotificationConnectorConfig.d.ts +1 -1
- package/dist/types/models/config/messagingSmsConnectorConfig.d.ts +1 -1
- package/dist/types/models/config/nftComponentConfig.d.ts +1 -1
- package/dist/types/models/config/nftConnectorConfig.d.ts +1 -1
- package/dist/types/models/config/rightsManagementDapComponentConfig.d.ts +16 -0
- package/dist/types/models/config/rightsManagementDarpComponentConfig.d.ts +12 -0
- package/dist/types/models/config/rightsManagementPapComponentConfig.d.ts +7 -3
- package/dist/types/models/config/rightsManagementPdpComponentConfig.d.ts +6 -3
- package/dist/types/models/config/rightsManagementPepComponentConfig.d.ts +6 -3
- package/dist/types/models/config/rightsManagementPipComponentConfig.d.ts +6 -3
- package/dist/types/models/config/rightsManagementPmpComponentConfig.d.ts +3 -3
- package/dist/types/models/config/rightsManagementPnapComponentConfig.d.ts +13 -0
- package/dist/types/models/config/rightsManagementPnpComponentConfig.d.ts +17 -0
- package/dist/types/models/config/rightsManagementPxpComponentConfig.d.ts +6 -3
- package/dist/types/models/config/synchronisedStorageComponentConfig.d.ts +1 -1
- package/dist/types/models/config/taskSchedulerComponentConfig.d.ts +1 -1
- package/dist/types/models/config/telemetryComponentConfig.d.ts +1 -1
- package/dist/types/models/config/telemetryConnectorConfig.d.ts +1 -1
- package/dist/types/models/config/tenantAdminComponentConfig.d.ts +9 -0
- package/dist/types/models/config/vaultConnectorConfig.d.ts +1 -1
- package/dist/types/models/config/verifiableStorageComponentConfig.d.ts +1 -1
- package/dist/types/models/config/verifiableStorageConnectorConfig.d.ts +1 -1
- package/dist/types/models/config/walletConnectorConfig.d.ts +1 -1
- package/dist/types/models/types/authenticationGeneratorComponentType.d.ts +13 -0
- package/dist/types/models/types/dataSpaceConnectorComponentType.d.ts +21 -0
- package/dist/types/models/types/messagingAdminComponentType.d.ts +13 -0
- package/dist/types/models/types/rightsManagementDapComponentType.d.ts +17 -0
- package/dist/types/models/types/rightsManagementDarpComponentType.d.ts +13 -0
- package/dist/types/models/types/rightsManagementPapComponentType.d.ts +4 -0
- package/dist/types/models/types/rightsManagementPepComponentType.d.ts +4 -0
- package/dist/types/models/types/rightsManagementPnapComponentType.d.ts +17 -0
- package/dist/types/models/types/rightsManagementPnpComponentType.d.ts +17 -0
- package/dist/types/models/types/tenantAdminComponentType.d.ts +13 -0
- package/dist/types/utils/engineTypeHelper.d.ts +19 -0
- package/docs/changelog.md +298 -0
- package/docs/reference/classes/EngineTypeHelper.md +61 -0
- package/docs/reference/functions/initialiseAttestationComponent.md +3 -13
- package/docs/reference/functions/initialiseAttestationConnector.md +3 -13
- package/docs/reference/functions/initialiseAuditableItemGraphComponent.md +3 -13
- package/docs/reference/functions/initialiseAuditableItemStreamComponent.md +3 -13
- package/docs/reference/functions/initialiseAuthenticationGeneratorComponent.md +31 -0
- package/docs/reference/functions/initialiseBackgroundTaskConnector.md +3 -13
- package/docs/reference/functions/initialiseBlobStorageComponent.md +3 -13
- package/docs/reference/functions/initialiseBlobStorageConnector.md +3 -13
- package/docs/reference/functions/initialiseDataConverterConnector.md +3 -13
- package/docs/reference/functions/initialiseDataExtractorConnector.md +3 -13
- package/docs/reference/functions/initialiseDataProcessingComponent.md +3 -13
- package/docs/reference/functions/initialiseDataSpaceConnectorComponent.md +31 -0
- package/docs/reference/functions/initialiseDocumentManagementComponent.md +3 -13
- package/docs/reference/functions/initialiseEntityStorageComponent.md +3 -13
- package/docs/reference/functions/initialiseEntityStorageConnector.md +8 -2
- package/docs/reference/functions/initialiseEventBusComponent.md +3 -13
- package/docs/reference/functions/initialiseEventBusConnector.md +3 -13
- package/docs/reference/functions/initialiseFaucetConnector.md +3 -13
- package/docs/reference/functions/initialiseFederatedCatalogueComponent.md +3 -13
- package/docs/reference/functions/initialiseIdentityComponent.md +3 -13
- package/docs/reference/functions/initialiseIdentityConnector.md +3 -13
- package/docs/reference/functions/initialiseIdentityProfileComponent.md +3 -13
- package/docs/reference/functions/initialiseIdentityProfileConnector.md +3 -13
- package/docs/reference/functions/initialiseIdentityResolverComponent.md +3 -13
- package/docs/reference/functions/initialiseIdentityResolverConnector.md +3 -13
- package/docs/reference/functions/initialiseImmutableProofComponent.md +3 -13
- package/docs/reference/functions/initialiseLoggingComponent.md +3 -13
- package/docs/reference/functions/initialiseLoggingConnector.md +3 -13
- package/docs/reference/functions/initialiseMessagingAdminComponent.md +31 -0
- package/docs/reference/functions/initialiseMessagingComponent.md +3 -13
- package/docs/reference/functions/initialiseMessagingEmailConnector.md +3 -13
- package/docs/reference/functions/initialiseMessagingPushNotificationConnector.md +3 -13
- package/docs/reference/functions/initialiseMessagingSmsConnector.md +3 -13
- package/docs/reference/functions/initialiseNftComponent.md +3 -13
- package/docs/reference/functions/initialiseNftConnector.md +3 -13
- package/docs/reference/functions/initialiseRightsManagementDapComponent.md +31 -0
- package/docs/reference/functions/initialiseRightsManagementDarpComponent.md +31 -0
- package/docs/reference/functions/initialiseRightsManagementPapComponent.md +3 -13
- package/docs/reference/functions/initialiseRightsManagementPdpComponent.md +3 -13
- package/docs/reference/functions/initialiseRightsManagementPepComponent.md +3 -13
- package/docs/reference/functions/initialiseRightsManagementPipComponent.md +3 -13
- package/docs/reference/functions/initialiseRightsManagementPmpComponent.md +3 -13
- package/docs/reference/functions/initialiseRightsManagementPnapComponent.md +31 -0
- package/docs/reference/functions/initialiseRightsManagementPnpComponent.md +31 -0
- package/docs/reference/functions/initialiseRightsManagementPxpComponent.md +3 -13
- package/docs/reference/functions/initialiseSynchronisedStorageComponent.md +3 -13
- package/docs/reference/functions/initialiseTaskSchedulerComponent.md +3 -13
- package/docs/reference/functions/initialiseTelemetryComponent.md +3 -13
- package/docs/reference/functions/initialiseTelemetryConnector.md +3 -13
- package/docs/reference/functions/initialiseTenantAdminComponent.md +31 -0
- package/docs/reference/functions/initialiseVaultConnector.md +3 -13
- package/docs/reference/functions/initialiseVerifiableStorageComponent.md +3 -13
- package/docs/reference/functions/initialiseVerifiableStorageConnector.md +3 -13
- package/docs/reference/functions/initialiseWalletConnector.md +3 -13
- package/docs/reference/index.md +36 -5
- package/docs/reference/interfaces/IEngineConfig.md +45 -3
- package/docs/reference/type-aliases/AuthenticationGeneratorComponentConfig.md +17 -0
- package/docs/reference/type-aliases/AuthenticationGeneratorComponentType.md +5 -0
- package/docs/reference/type-aliases/DataSpaceConnectorComponentConfig.md +5 -0
- package/docs/reference/type-aliases/DataSpaceConnectorComponentType.md +5 -0
- package/docs/reference/type-aliases/EntityStorageComponentConfig.md +1 -1
- package/docs/reference/type-aliases/MessagingAdminComponentConfig.md +17 -0
- package/docs/reference/type-aliases/MessagingAdminComponentType.md +5 -0
- package/docs/reference/type-aliases/RightsManagementDapComponentConfig.md +5 -0
- package/docs/reference/type-aliases/RightsManagementDapComponentType.md +5 -0
- package/docs/reference/type-aliases/RightsManagementDarpComponentConfig.md +23 -0
- package/docs/reference/type-aliases/RightsManagementDarpComponentType.md +5 -0
- package/docs/reference/type-aliases/RightsManagementPapComponentConfig.md +1 -13
- package/docs/reference/type-aliases/RightsManagementPdpComponentConfig.md +7 -1
- package/docs/reference/type-aliases/RightsManagementPepComponentConfig.md +7 -1
- package/docs/reference/type-aliases/RightsManagementPipComponentConfig.md +7 -1
- package/docs/reference/type-aliases/RightsManagementPmpComponentConfig.md +1 -1
- package/docs/reference/type-aliases/RightsManagementPnapComponentConfig.md +5 -0
- package/docs/reference/type-aliases/RightsManagementPnapComponentType.md +5 -0
- package/docs/reference/type-aliases/RightsManagementPnpComponentConfig.md +5 -0
- package/docs/reference/type-aliases/RightsManagementPnpComponentType.md +5 -0
- package/docs/reference/type-aliases/RightsManagementPxpComponentConfig.md +7 -1
- package/docs/reference/type-aliases/TenantAdminComponentConfig.md +17 -0
- package/docs/reference/type-aliases/TenantAdminComponentType.md +5 -0
- package/docs/reference/variables/AttestationComponentType.md +1 -1
- package/docs/reference/variables/AttestationConnectorType.md +1 -1
- package/docs/reference/variables/AuditableItemGraphComponentType.md +1 -1
- package/docs/reference/variables/AuditableItemStreamComponentType.md +1 -1
- package/docs/reference/variables/AuthenticationGeneratorComponentType.md +13 -0
- package/docs/reference/variables/BackgroundTaskConnectorType.md +1 -1
- package/docs/reference/variables/BlobStorageComponentType.md +1 -1
- package/docs/reference/variables/BlobStorageConnectorType.md +1 -1
- package/docs/reference/variables/DataConverterConnectorType.md +1 -1
- package/docs/reference/variables/DataExtractorConnectorType.md +1 -1
- package/docs/reference/variables/DataProcessingComponentType.md +1 -1
- package/docs/reference/variables/DataSpaceConnectorComponentType.md +25 -0
- package/docs/reference/variables/DltConfigType.md +1 -1
- package/docs/reference/variables/DocumentManagementComponentType.md +1 -1
- package/docs/reference/variables/EntityStorageComponentType.md +1 -1
- package/docs/reference/variables/EntityStorageConnectorType.md +1 -1
- package/docs/reference/variables/EventBusComponentType.md +1 -1
- package/docs/reference/variables/EventBusConnectorType.md +1 -1
- package/docs/reference/variables/FaucetConnectorType.md +1 -1
- package/docs/reference/variables/FederatedCatalogueComponentType.md +1 -1
- package/docs/reference/variables/IdentityComponentType.md +1 -1
- package/docs/reference/variables/IdentityConnectorType.md +1 -1
- package/docs/reference/variables/IdentityProfileComponentType.md +1 -1
- package/docs/reference/variables/IdentityProfileConnectorType.md +1 -1
- package/docs/reference/variables/IdentityResolverComponentType.md +1 -1
- package/docs/reference/variables/IdentityResolverConnectorType.md +1 -1
- package/docs/reference/variables/ImmutableProofComponentType.md +1 -1
- package/docs/reference/variables/LoggingComponentType.md +1 -1
- package/docs/reference/variables/LoggingConnectorType.md +1 -1
- package/docs/reference/variables/MessagingAdminComponentType.md +13 -0
- package/docs/reference/variables/MessagingComponentType.md +1 -1
- package/docs/reference/variables/MessagingEmailConnectorType.md +1 -1
- package/docs/reference/variables/MessagingPushNotificationConnectorType.md +1 -1
- package/docs/reference/variables/MessagingSmsConnectorType.md +1 -1
- package/docs/reference/variables/NftComponentType.md +1 -1
- package/docs/reference/variables/NftConnectorType.md +1 -1
- package/docs/reference/variables/{RightsManagementComponentType.md → RightsManagementDapComponentType.md} +4 -4
- package/docs/reference/variables/RightsManagementDarpComponentType.md +13 -0
- package/docs/reference/variables/RightsManagementPapComponentType.md +7 -1
- package/docs/reference/variables/RightsManagementPdpComponentType.md +1 -1
- package/docs/reference/variables/RightsManagementPepComponentType.md +7 -1
- package/docs/reference/variables/RightsManagementPipComponentType.md +1 -1
- package/docs/reference/variables/RightsManagementPmpComponentType.md +1 -1
- package/docs/reference/variables/RightsManagementPnapComponentType.md +19 -0
- package/docs/reference/variables/RightsManagementPnpComponentType.md +19 -0
- package/docs/reference/variables/RightsManagementPxpComponentType.md +1 -1
- package/docs/reference/variables/SynchronisedStorageComponentType.md +1 -1
- package/docs/reference/variables/TaskSchedulerComponentType.md +1 -1
- package/docs/reference/variables/TelemetryComponentType.md +1 -1
- package/docs/reference/variables/TelemetryConnectorType.md +1 -1
- package/docs/reference/variables/TenantAdminComponentType.md +13 -0
- package/docs/reference/variables/VaultConnectorType.md +1 -1
- package/docs/reference/variables/VerifiableStorageComponentType.md +1 -1
- package/docs/reference/variables/VerifiableStorageConnectorType.md +1 -1
- package/docs/reference/variables/WalletConnectorType.md +1 -1
- package/locales/en.json +14 -1
- package/package.json +30 -9
- package/dist/cjs/index.cjs +0 -3224
- package/dist/esm/index.mjs +0 -3127
- package/dist/types/components/rightsManagement.d.ts +0 -13
- package/dist/types/models/config/rightsManagementComponentConfig.d.ts +0 -13
- package/dist/types/models/types/rightsManagementComponentType.d.ts +0 -17
- package/docs/reference/functions/initialiseRightsManagementComponent.md +0 -41
- package/docs/reference/functions/initialiseWalletStorage.md +0 -41
- package/docs/reference/type-aliases/RightsManagementComponentConfig.md +0 -5
- package/docs/reference/type-aliases/RightsManagementComponentType.md +0 -5
|
@@ -0,0 +1,64 @@
|
|
|
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 { EntityStorageIdentityProfileConnector, initSchema as initSchemaIdentityStorage } from "@twin.org/identity-connector-entity-storage";
|
|
6
|
+
import { IdentityProfileConnectorFactory } from "@twin.org/identity-models";
|
|
7
|
+
import { IdentityProfileRestClient } from "@twin.org/identity-rest-client";
|
|
8
|
+
import { IdentityProfileService } from "@twin.org/identity-service";
|
|
9
|
+
import { initialiseEntityStorageConnector } from "./entityStorage.js";
|
|
10
|
+
import { IdentityProfileComponentType } from "../models/types/identityProfileComponentType.js";
|
|
11
|
+
import { IdentityProfileConnectorType } from "../models/types/identityProfileConnectorType.js";
|
|
12
|
+
/**
|
|
13
|
+
* Initialise the identity profile connector.
|
|
14
|
+
* @param engineCore The engine core.
|
|
15
|
+
* @param context The context for the engine.
|
|
16
|
+
* @param instanceConfig The instance config.
|
|
17
|
+
* @returns The instance created and the factory for it.
|
|
18
|
+
*/
|
|
19
|
+
export async function initialiseIdentityProfileConnector(engineCore, context, instanceConfig) {
|
|
20
|
+
let connector;
|
|
21
|
+
let instanceType;
|
|
22
|
+
if (instanceConfig.type === IdentityProfileConnectorType.EntityStorage) {
|
|
23
|
+
initSchemaIdentityStorage({ includeDocument: false });
|
|
24
|
+
initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.profileEntityStorageType, "IdentityProfile", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
|
|
25
|
+
ContextIdKeys.Node,
|
|
26
|
+
ContextIdKeys.Tenant
|
|
27
|
+
]));
|
|
28
|
+
connector = new EntityStorageIdentityProfileConnector(instanceConfig.options);
|
|
29
|
+
instanceType = EntityStorageIdentityProfileConnector.NAMESPACE;
|
|
30
|
+
}
|
|
31
|
+
return {
|
|
32
|
+
component: connector,
|
|
33
|
+
instanceType,
|
|
34
|
+
factory: IdentityProfileConnectorFactory
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Initialise the identity profile component.
|
|
39
|
+
* @param engineCore The engine core.
|
|
40
|
+
* @param context The context for the engine.
|
|
41
|
+
* @param instanceConfig The instance config.
|
|
42
|
+
* @returns The instance created and the factory for it.
|
|
43
|
+
*/
|
|
44
|
+
export async function initialiseIdentityProfileComponent(engineCore, context, instanceConfig) {
|
|
45
|
+
let component;
|
|
46
|
+
let instanceType;
|
|
47
|
+
if (instanceConfig.type === IdentityProfileComponentType.Service) {
|
|
48
|
+
component = new IdentityProfileService({
|
|
49
|
+
profileEntityConnectorType: engineCore.getRegisteredInstanceType("identityProfileConnector"),
|
|
50
|
+
...instanceConfig.options
|
|
51
|
+
});
|
|
52
|
+
instanceType = "identity-profile-service";
|
|
53
|
+
}
|
|
54
|
+
else if (instanceConfig.type === IdentityProfileComponentType.RestClient) {
|
|
55
|
+
component = new IdentityProfileRestClient(instanceConfig.options);
|
|
56
|
+
instanceType = "identity-profile-rest-client";
|
|
57
|
+
}
|
|
58
|
+
return {
|
|
59
|
+
component,
|
|
60
|
+
instanceType,
|
|
61
|
+
factory: ComponentFactory
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=identityProfile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identityProfile.js","sourceRoot":"","sources":["../../../src/components/identityProfile.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,EACN,qCAAqC,EACrC,UAAU,IAAI,yBAAyB,EAEvC,MAAM,6CAA6C,CAAC;AACrD,OAAO,EACN,+BAA+B,EAG/B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAItE,OAAO,EAAE,4BAA4B,EAAE,MAAM,iDAAiD,CAAC;AAC/F,OAAO,EAAE,4BAA4B,EAAE,MAAM,iDAAiD,CAAC;AAE/F;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,kCAAkC,CACvD,UAAsC,EACtC,OAA0C,EAC1C,cAA8C;IAM9C,IAAI,SAAgD,CAAC;IACrD,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,4BAA4B,CAAC,aAAa,EAAE,CAAC;QACxE,yBAAyB,CAAC,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,CAAC;QACtD,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,cAAc,CAAC,OAAO,EAAE,wBAAwB,qBAEhD,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE;YACpE,aAAa,CAAC,IAAI;YAClB,aAAa,CAAC,MAAM;SACpB,CAAC,CACF,CAAC;QACF,SAAS,GAAG,IAAI,qCAAqC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC9E,YAAY,GAAG,qCAAqC,CAAC,SAAS,CAAC;IAChE,CAAC;IAED,OAAO;QACN,SAAS,EAAE,SAAS;QACpB,YAAY;QACZ,OAAO,EAAE,+BAA+B;KACxC,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,kCAAkC,CACvD,UAAsC,EACtC,OAA0C,EAC1C,cAA8C;IAM9C,IAAI,SAAgD,CAAC;IACrD,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,4BAA4B,CAAC,OAAO,EAAE,CAAC;QAClE,SAAS,GAAG,IAAI,sBAAsB,CAAC;YACtC,0BAA0B,EAAE,UAAU,CAAC,yBAAyB,CAAC,0BAA0B,CAAC;YAC5F,GAAG,cAAc,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,YAAY,6BAA0C,CAAC;IACxD,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,4BAA4B,CAAC,UAAU,EAAE,CAAC;QAC5E,SAAS,GAAG,IAAI,yBAAyB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAClE,YAAY,iCAA6C,CAAC;IAC3D,CAAC;IAED,OAAO;QACN,SAAS;QACT,YAAY;QACZ,OAAO,EAAE,gBAAgB;KACzB,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { ContextIdHelper, ContextIdKeys } from \"@twin.org/context\";\nimport { ComponentFactory, type IComponent } from \"@twin.org/core\";\nimport type { IEngineCore, IEngineCoreContext } from \"@twin.org/engine-models\";\nimport {\n\tEntityStorageIdentityProfileConnector,\n\tinitSchema as initSchemaIdentityStorage,\n\ttype IdentityProfile\n} from \"@twin.org/identity-connector-entity-storage\";\nimport {\n\tIdentityProfileConnectorFactory,\n\ttype IIdentityProfileComponent,\n\ttype IIdentityProfileConnector\n} from \"@twin.org/identity-models\";\nimport { IdentityProfileRestClient } from \"@twin.org/identity-rest-client\";\nimport { IdentityProfileService } from \"@twin.org/identity-service\";\nimport { nameof, nameofKebabCase } from \"@twin.org/nameof\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { IdentityProfileComponentConfig } from \"../models/config/identityProfileComponentConfig.js\";\nimport type { IdentityProfileConnectorConfig } from \"../models/config/identityProfileConnectorConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { IdentityProfileComponentType } from \"../models/types/identityProfileComponentType.js\";\nimport { IdentityProfileConnectorType } from \"../models/types/identityProfileConnectorType.js\";\n\n/**\n * Initialise the identity profile 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 initialiseIdentityProfileConnector(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: IdentityProfileConnectorConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof IdentityProfileConnectorFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet connector: IIdentityProfileConnector | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === IdentityProfileConnectorType.EntityStorage) {\n\t\tinitSchemaIdentityStorage({ includeDocument: false });\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.profileEntityStorageType,\n\t\t\tnameof<IdentityProfile>(),\n\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [\n\t\t\t\tContextIdKeys.Node,\n\t\t\t\tContextIdKeys.Tenant\n\t\t\t])\n\t\t);\n\t\tconnector = new EntityStorageIdentityProfileConnector(instanceConfig.options);\n\t\tinstanceType = EntityStorageIdentityProfileConnector.NAMESPACE;\n\t}\n\n\treturn {\n\t\tcomponent: connector,\n\t\tinstanceType,\n\t\tfactory: IdentityProfileConnectorFactory\n\t};\n}\n\n/**\n * Initialise the identity profile 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 initialiseIdentityProfileComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: IdentityProfileComponentConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof ComponentFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: IIdentityProfileComponent | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === IdentityProfileComponentType.Service) {\n\t\tcomponent = new IdentityProfileService({\n\t\t\tprofileEntityConnectorType: engineCore.getRegisteredInstanceType(\"identityProfileConnector\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = nameofKebabCase(IdentityProfileService);\n\t} else if (instanceConfig.type === IdentityProfileComponentType.RestClient) {\n\t\tcomponent = new IdentityProfileRestClient(instanceConfig.options);\n\t\tinstanceType = nameofKebabCase(IdentityProfileRestClient);\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
// Copyright 2024 IOTA Stiftung.
|
|
2
|
+
// SPDX-License-Identifier: Apache-2.0.
|
|
3
|
+
import { ComponentFactory } from "@twin.org/core";
|
|
4
|
+
import { EntityStorageIdentityResolverConnector, initSchema as initSchemaIdentityStorage } from "@twin.org/identity-connector-entity-storage";
|
|
5
|
+
import { IotaIdentityResolverConnector } from "@twin.org/identity-connector-iota";
|
|
6
|
+
import { UniversalResolverConnector } from "@twin.org/identity-connector-universal";
|
|
7
|
+
import { IdentityResolverConnectorFactory } from "@twin.org/identity-models";
|
|
8
|
+
import { IdentityResolverRestClient } from "@twin.org/identity-rest-client";
|
|
9
|
+
import { IdentityResolverService } from "@twin.org/identity-service";
|
|
10
|
+
import { initialiseEntityStorageConnector } from "./entityStorage.js";
|
|
11
|
+
import { DltConfigType } from "../models/types/dltConfigType.js";
|
|
12
|
+
import { IdentityResolverComponentType } from "../models/types/identityResolverComponentType.js";
|
|
13
|
+
import { IdentityResolverConnectorType } from "../models/types/identityResolverConnectorType.js";
|
|
14
|
+
import { EngineTypeHelper } from "../utils/engineTypeHelper.js";
|
|
15
|
+
/**
|
|
16
|
+
* Initialise the identity resolver connector.
|
|
17
|
+
* @param engineCore The engine core.
|
|
18
|
+
* @param context The context for the engine.
|
|
19
|
+
* @param instanceConfig The instance config.
|
|
20
|
+
* @returns The instance created and the factory for it.
|
|
21
|
+
*/
|
|
22
|
+
export async function initialiseIdentityResolverConnector(engineCore, context, instanceConfig) {
|
|
23
|
+
let component;
|
|
24
|
+
let instanceType;
|
|
25
|
+
if (instanceConfig.type === IdentityResolverConnectorType.Iota) {
|
|
26
|
+
const dltConfig = EngineTypeHelper.getConfigOfType(engineCore.getConfig(), "dltConfig", DltConfigType.Iota);
|
|
27
|
+
component = new IotaIdentityResolverConnector({
|
|
28
|
+
...instanceConfig.options,
|
|
29
|
+
config: {
|
|
30
|
+
...dltConfig?.options?.config,
|
|
31
|
+
...instanceConfig.options.config
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
instanceType = IotaIdentityResolverConnector.NAMESPACE;
|
|
35
|
+
}
|
|
36
|
+
else if (instanceConfig.type === IdentityResolverConnectorType.EntityStorage) {
|
|
37
|
+
initSchemaIdentityStorage({ includeProfile: false });
|
|
38
|
+
initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.didDocumentEntityStorageType, "IdentityDocument", []);
|
|
39
|
+
component = new EntityStorageIdentityResolverConnector({
|
|
40
|
+
vaultConnectorType: engineCore.getRegisteredInstanceType("vaultConnector"),
|
|
41
|
+
...instanceConfig.options
|
|
42
|
+
});
|
|
43
|
+
instanceType = EntityStorageIdentityResolverConnector.NAMESPACE;
|
|
44
|
+
}
|
|
45
|
+
else if (instanceConfig.type === IdentityResolverConnectorType.Universal) {
|
|
46
|
+
component = new UniversalResolverConnector({
|
|
47
|
+
...instanceConfig.options
|
|
48
|
+
});
|
|
49
|
+
instanceType = UniversalResolverConnector.NAMESPACE;
|
|
50
|
+
}
|
|
51
|
+
return {
|
|
52
|
+
component,
|
|
53
|
+
instanceType,
|
|
54
|
+
factory: IdentityResolverConnectorFactory
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Initialise the identity resolver component.
|
|
59
|
+
* @param engineCore The engine core.
|
|
60
|
+
* @param context The context for the engine.
|
|
61
|
+
* @param instanceConfig The instance config.
|
|
62
|
+
* @returns The instance created and the factory for it.
|
|
63
|
+
*/
|
|
64
|
+
export async function initialiseIdentityResolverComponent(engineCore, context, instanceConfig) {
|
|
65
|
+
let component;
|
|
66
|
+
let instanceType;
|
|
67
|
+
if (instanceConfig.type === IdentityResolverComponentType.Service) {
|
|
68
|
+
const defaultIdentityResolverType = engineCore.getRegisteredInstanceType("identityResolverConnector");
|
|
69
|
+
component = new IdentityResolverService({
|
|
70
|
+
fallbackResolverConnectorType: defaultIdentityResolverType !== IdentityResolverConnectorType.Universal
|
|
71
|
+
? IdentityResolverConnectorType.Universal
|
|
72
|
+
: undefined,
|
|
73
|
+
...instanceConfig.options
|
|
74
|
+
});
|
|
75
|
+
instanceType = "identity-resolver-service";
|
|
76
|
+
}
|
|
77
|
+
else if (instanceConfig.type === IdentityResolverComponentType.RestClient) {
|
|
78
|
+
component = new IdentityResolverRestClient(instanceConfig.options);
|
|
79
|
+
instanceType = "identity-resolver-rest-client";
|
|
80
|
+
}
|
|
81
|
+
return {
|
|
82
|
+
component,
|
|
83
|
+
instanceType,
|
|
84
|
+
factory: ComponentFactory
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=identityResolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identityResolver.js","sourceRoot":"","sources":["../../../src/components/identityResolver.ts"],"names":[],"mappings":"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","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 {\n\tEntityStorageIdentityResolverConnector,\n\tinitSchema as initSchemaIdentityStorage,\n\ttype IdentityDocument\n} from \"@twin.org/identity-connector-entity-storage\";\nimport { IotaIdentityResolverConnector } from \"@twin.org/identity-connector-iota\";\nimport { UniversalResolverConnector } from \"@twin.org/identity-connector-universal\";\nimport {\n\tIdentityResolverConnectorFactory,\n\ttype IIdentityResolverComponent,\n\ttype IIdentityResolverConnector\n} from \"@twin.org/identity-models\";\nimport { IdentityResolverRestClient } from \"@twin.org/identity-rest-client\";\nimport { IdentityResolverService } from \"@twin.org/identity-service\";\nimport { nameof, nameofKebabCase } from \"@twin.org/nameof\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { DltConfig } from \"../models/config/dltConfig.js\";\nimport type { IdentityResolverComponentConfig } from \"../models/config/identityResolverComponentConfig.js\";\nimport type { IdentityResolverConnectorConfig } from \"../models/config/identityResolverConnectorConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { DltConfigType } from \"../models/types/dltConfigType.js\";\nimport { IdentityResolverComponentType } from \"../models/types/identityResolverComponentType.js\";\nimport { IdentityResolverConnectorType } from \"../models/types/identityResolverConnectorType.js\";\nimport { EngineTypeHelper } from \"../utils/engineTypeHelper.js\";\n\n/**\n * Initialise the identity resolver 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 initialiseIdentityResolverConnector(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: IdentityResolverConnectorConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof IdentityResolverConnectorFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: IIdentityResolverConnector | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === IdentityResolverConnectorType.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 IotaIdentityResolverConnector({\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 = IotaIdentityResolverConnector.NAMESPACE;\n\t} else if (instanceConfig.type === IdentityResolverConnectorType.EntityStorage) {\n\t\tinitSchemaIdentityStorage({ includeProfile: false });\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.didDocumentEntityStorageType,\n\t\t\tnameof<IdentityDocument>(),\n\t\t\t[]\n\t\t);\n\t\tcomponent = new EntityStorageIdentityResolverConnector({\n\t\t\tvaultConnectorType: engineCore.getRegisteredInstanceType(\"vaultConnector\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = EntityStorageIdentityResolverConnector.NAMESPACE;\n\t} else if (instanceConfig.type === IdentityResolverConnectorType.Universal) {\n\t\tcomponent = new UniversalResolverConnector({\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = UniversalResolverConnector.NAMESPACE;\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: IdentityResolverConnectorFactory\n\t};\n}\n\n/**\n * Initialise the identity resolver 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 initialiseIdentityResolverComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: IdentityResolverComponentConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof ComponentFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: IIdentityResolverComponent | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === IdentityResolverComponentType.Service) {\n\t\tconst defaultIdentityResolverType = engineCore.getRegisteredInstanceType(\n\t\t\t\"identityResolverConnector\"\n\t\t);\n\n\t\tcomponent = new IdentityResolverService({\n\t\t\tfallbackResolverConnectorType:\n\t\t\t\tdefaultIdentityResolverType !== IdentityResolverConnectorType.Universal\n\t\t\t\t\t? IdentityResolverConnectorType.Universal\n\t\t\t\t\t: undefined,\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = nameofKebabCase(IdentityResolverService);\n\t} else if (instanceConfig.type === IdentityResolverComponentType.RestClient) {\n\t\tcomponent = new IdentityResolverRestClient(instanceConfig.options);\n\t\tinstanceType = nameofKebabCase(IdentityResolverRestClient);\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
|
|
@@ -0,0 +1,44 @@
|
|
|
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 { ImmutableProofRestClient } from "@twin.org/immutable-proof-rest-client";
|
|
6
|
+
import { ImmutableProofService, initSchema as initSchemaImmutableProof } from "@twin.org/immutable-proof-service";
|
|
7
|
+
import { initialiseEntityStorageConnector } from "./entityStorage.js";
|
|
8
|
+
import { ImmutableProofComponentType } from "../models/types/immutableProofComponentType.js";
|
|
9
|
+
/**
|
|
10
|
+
* Initialise the immutable proof 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 initialiseImmutableProofComponent(engineCore, context, instanceConfig) {
|
|
17
|
+
let component;
|
|
18
|
+
let instanceType;
|
|
19
|
+
if (instanceConfig.type === ImmutableProofComponentType.Service) {
|
|
20
|
+
initSchemaImmutableProof();
|
|
21
|
+
initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.immutableProofEntityStorageType, "ImmutableProof", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
|
|
22
|
+
ContextIdKeys.Node,
|
|
23
|
+
ContextIdKeys.Tenant
|
|
24
|
+
]));
|
|
25
|
+
component = new ImmutableProofService({
|
|
26
|
+
verifiableStorageType: engineCore.getRegisteredInstanceType("verifiableStorageConnector"),
|
|
27
|
+
identityConnectorType: engineCore.getRegisteredInstanceType("identityConnector"),
|
|
28
|
+
backgroundTaskConnectorType: engineCore.getRegisteredInstanceType("backgroundTaskConnector"),
|
|
29
|
+
eventBusComponentType: engineCore.getRegisteredInstanceTypeOptional("eventBusComponent"),
|
|
30
|
+
...instanceConfig.options
|
|
31
|
+
});
|
|
32
|
+
instanceType = "immutable-proof-service";
|
|
33
|
+
}
|
|
34
|
+
else if (instanceConfig.type === ImmutableProofComponentType.RestClient) {
|
|
35
|
+
component = new ImmutableProofRestClient(instanceConfig.options);
|
|
36
|
+
instanceType = "immutable-proof-rest-client";
|
|
37
|
+
}
|
|
38
|
+
return {
|
|
39
|
+
component,
|
|
40
|
+
instanceType,
|
|
41
|
+
factory: ComponentFactory
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=immutableProof.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"immutableProof.js","sourceRoot":"","sources":["../../../src/components/immutableProof.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,wBAAwB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,EAEN,qBAAqB,EACrB,UAAU,IAAI,wBAAwB,EACtC,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAGtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAE7F;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,iCAAiC,CACtD,UAAsC,EACtC,OAA0C,EAC1C,cAA6C;IAM7C,IAAI,SAA+C,CAAC;IACpD,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,2BAA2B,CAAC,OAAO,EAAE,CAAC;QACjE,wBAAwB,EAAE,CAAC;QAE3B,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,cAAc,CAAC,OAAO,EAAE,+BAA+B,oBAEvD,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE;YACpE,aAAa,CAAC,IAAI;YAClB,aAAa,CAAC,MAAM;SACpB,CAAC,CACF,CAAC;QAEF,SAAS,GAAG,IAAI,qBAAqB,CAAC;YACrC,qBAAqB,EAAE,UAAU,CAAC,yBAAyB,CAAC,4BAA4B,CAAC;YACzF,qBAAqB,EAAE,UAAU,CAAC,yBAAyB,CAAC,mBAAmB,CAAC;YAChF,2BAA2B,EAAE,UAAU,CAAC,yBAAyB,CAAC,yBAAyB,CAAC;YAC5F,qBAAqB,EAAE,UAAU,CAAC,iCAAiC,CAAC,mBAAmB,CAAC;YACxF,GAAG,cAAc,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,YAAY,4BAAyC,CAAC;IACvD,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,2BAA2B,CAAC,UAAU,EAAE,CAAC;QAC3E,SAAS,GAAG,IAAI,wBAAwB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACjE,YAAY,gCAA4C,CAAC;IAC1D,CAAC;IAED,OAAO;QACN,SAAS;QACT,YAAY;QACZ,OAAO,EAAE,gBAAgB;KACzB,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { ContextIdHelper, ContextIdKeys } from \"@twin.org/context\";\nimport { ComponentFactory, type IComponent } from \"@twin.org/core\";\nimport type { IEngineCore, IEngineCoreContext } from \"@twin.org/engine-models\";\nimport type { IImmutableProofComponent } from \"@twin.org/immutable-proof-models\";\nimport { ImmutableProofRestClient } from \"@twin.org/immutable-proof-rest-client\";\nimport {\n\ttype ImmutableProof,\n\tImmutableProofService,\n\tinitSchema as initSchemaImmutableProof\n} from \"@twin.org/immutable-proof-service\";\nimport { nameof, nameofKebabCase } from \"@twin.org/nameof\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { ImmutableProofComponentConfig } from \"../models/config/immutableProofComponentConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { ImmutableProofComponentType } from \"../models/types/immutableProofComponentType.js\";\n\n/**\n * Initialise the immutable proof 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 initialiseImmutableProofComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: ImmutableProofComponentConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof ComponentFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: IImmutableProofComponent | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === ImmutableProofComponentType.Service) {\n\t\tinitSchemaImmutableProof();\n\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.immutableProofEntityStorageType,\n\t\t\tnameof<ImmutableProof>(),\n\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [\n\t\t\t\tContextIdKeys.Node,\n\t\t\t\tContextIdKeys.Tenant\n\t\t\t])\n\t\t);\n\n\t\tcomponent = new ImmutableProofService({\n\t\t\tverifiableStorageType: engineCore.getRegisteredInstanceType(\"verifiableStorageConnector\"),\n\t\t\tidentityConnectorType: engineCore.getRegisteredInstanceType(\"identityConnector\"),\n\t\t\tbackgroundTaskConnectorType: engineCore.getRegisteredInstanceType(\"backgroundTaskConnector\"),\n\t\t\teventBusComponentType: engineCore.getRegisteredInstanceTypeOptional(\"eventBusComponent\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = nameofKebabCase(ImmutableProofService);\n\t} else if (instanceConfig.type === ImmutableProofComponentType.RestClient) {\n\t\tcomponent = new ImmutableProofRestClient(instanceConfig.options);\n\t\tinstanceType = nameofKebabCase(ImmutableProofRestClient);\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
|
|
@@ -0,0 +1,73 @@
|
|
|
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 { ConsoleLoggingConnector } from "@twin.org/logging-connector-console";
|
|
6
|
+
import { EntityStorageLoggingConnector, initSchema as initSchemaLogging } from "@twin.org/logging-connector-entity-storage";
|
|
7
|
+
import { LoggingConnectorFactory, MultiLoggingConnector } from "@twin.org/logging-models";
|
|
8
|
+
import { LoggingRestClient } from "@twin.org/logging-rest-client";
|
|
9
|
+
import { LoggingService } from "@twin.org/logging-service";
|
|
10
|
+
import { initialiseEntityStorageConnector } from "./entityStorage.js";
|
|
11
|
+
import { LoggingComponentType } from "../models/types/loggingComponentType.js";
|
|
12
|
+
import { LoggingConnectorType } from "../models/types/loggingConnectorType.js";
|
|
13
|
+
/**
|
|
14
|
+
* Initialise the logging connector.
|
|
15
|
+
* @param engineCore The engine core.
|
|
16
|
+
* @param context The engine core context.
|
|
17
|
+
* @param instanceConfig The instance config.
|
|
18
|
+
* @returns The instance created and the factory for it.
|
|
19
|
+
*/
|
|
20
|
+
export async function initialiseLoggingConnector(engineCore, context, instanceConfig) {
|
|
21
|
+
let component;
|
|
22
|
+
let instanceType;
|
|
23
|
+
if (instanceConfig.type === LoggingConnectorType.Console) {
|
|
24
|
+
component = new ConsoleLoggingConnector(instanceConfig.options);
|
|
25
|
+
instanceType = ConsoleLoggingConnector.NAMESPACE;
|
|
26
|
+
}
|
|
27
|
+
else if (instanceConfig.type === LoggingConnectorType.EntityStorage) {
|
|
28
|
+
initSchemaLogging();
|
|
29
|
+
initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.logEntryStorageConnectorType, "LogEntry", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
|
|
30
|
+
ContextIdKeys.Node,
|
|
31
|
+
ContextIdKeys.Tenant
|
|
32
|
+
]));
|
|
33
|
+
component = new EntityStorageLoggingConnector(instanceConfig.options);
|
|
34
|
+
instanceType = EntityStorageLoggingConnector.NAMESPACE;
|
|
35
|
+
}
|
|
36
|
+
else if (instanceConfig.type === LoggingConnectorType.Multi) {
|
|
37
|
+
component = new MultiLoggingConnector(instanceConfig.options);
|
|
38
|
+
instanceType = MultiLoggingConnector.NAMESPACE;
|
|
39
|
+
}
|
|
40
|
+
return {
|
|
41
|
+
component,
|
|
42
|
+
instanceType,
|
|
43
|
+
factory: LoggingConnectorFactory
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Initialise the logging component.
|
|
48
|
+
* @param engineCore The engine core.
|
|
49
|
+
* @param context The context for the engine.
|
|
50
|
+
* @param instanceConfig The instance config.
|
|
51
|
+
* @returns The instance created and the factory for it.
|
|
52
|
+
*/
|
|
53
|
+
export async function initialiseLoggingComponent(engineCore, context, instanceConfig) {
|
|
54
|
+
let component;
|
|
55
|
+
let instanceType;
|
|
56
|
+
if (instanceConfig.type === LoggingComponentType.Service) {
|
|
57
|
+
component = new LoggingService({
|
|
58
|
+
loggingConnectorType: engineCore.getRegisteredInstanceType("loggingConnector"),
|
|
59
|
+
...instanceConfig.options
|
|
60
|
+
});
|
|
61
|
+
instanceType = "logging-service";
|
|
62
|
+
}
|
|
63
|
+
else if (instanceConfig.type === LoggingComponentType.RestClient) {
|
|
64
|
+
component = new LoggingRestClient(instanceConfig.options);
|
|
65
|
+
instanceType = "logging-rest-client";
|
|
66
|
+
}
|
|
67
|
+
return {
|
|
68
|
+
component,
|
|
69
|
+
instanceType,
|
|
70
|
+
factory: ComponentFactory
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=logging.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logging.js","sourceRoot":"","sources":["../../../src/components/logging.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,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EACN,6BAA6B,EAC7B,UAAU,IAAI,iBAAiB,EAE/B,MAAM,4CAA4C,CAAC;AACpD,OAAO,EACN,uBAAuB,EACvB,qBAAqB,EAGrB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AAItE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAE/E;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC/C,UAAsC,EACtC,OAA0C,EAC1C,cAAsC;IAMtC,IAAI,SAAwC,CAAC;IAC7C,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,oBAAoB,CAAC,OAAO,EAAE,CAAC;QAC1D,SAAS,GAAG,IAAI,uBAAuB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAChE,YAAY,GAAG,uBAAuB,CAAC,SAAS,CAAC;IAClD,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,oBAAoB,CAAC,aAAa,EAAE,CAAC;QACvE,iBAAiB,EAAE,CAAC;QACpB,gCAAgC,CAC/B,UAAU,EACV,OAAO,EACP,cAAc,CAAC,OAAO,EAAE,4BAA4B,cAEpD,eAAe,CAAC,qBAAqB,CAAC,UAAU,CAAC,gBAAgB,EAAE,EAAE;YACpE,aAAa,CAAC,IAAI;YAClB,aAAa,CAAC,MAAM;SACpB,CAAC,CACF,CAAC;QACF,SAAS,GAAG,IAAI,6BAA6B,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QACtE,YAAY,GAAG,6BAA6B,CAAC,SAAS,CAAC;IACxD,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,oBAAoB,CAAC,KAAK,EAAE,CAAC;QAC/D,SAAS,GAAG,IAAI,qBAAqB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC9D,YAAY,GAAG,qBAAqB,CAAC,SAAS,CAAC;IAChD,CAAC;IAED,OAAO;QACN,SAAS;QACT,YAAY;QACZ,OAAO,EAAE,uBAAuB;KAChC,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC/C,UAAsC,EACtC,OAA0C,EAC1C,cAAsC;IAMtC,IAAI,SAAwC,CAAC;IAC7C,IAAI,YAAgC,CAAC;IAErC,IAAI,cAAc,CAAC,IAAI,KAAK,oBAAoB,CAAC,OAAO,EAAE,CAAC;QAC1D,SAAS,GAAG,IAAI,cAAc,CAAC;YAC9B,oBAAoB,EAAE,UAAU,CAAC,yBAAyB,CAAC,kBAAkB,CAAC;YAC9E,GAAG,cAAc,CAAC,OAAO;SACzB,CAAC,CAAC;QACH,YAAY,oBAAkC,CAAC;IAChD,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,KAAK,oBAAoB,CAAC,UAAU,EAAE,CAAC;QACpE,SAAS,GAAG,IAAI,iBAAiB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC1D,YAAY,wBAAqC,CAAC;IACnD,CAAC;IAED,OAAO;QACN,SAAS;QACT,YAAY;QACZ,OAAO,EAAE,gBAAgB;KACzB,CAAC;AACH,CAAC","sourcesContent":["// Copyright 2024 IOTA Stiftung.\n// SPDX-License-Identifier: Apache-2.0.\nimport { ContextIdHelper, ContextIdKeys } from \"@twin.org/context\";\nimport { ComponentFactory, type IComponent } from \"@twin.org/core\";\nimport type { IEngineCore, IEngineCoreContext } from \"@twin.org/engine-models\";\nimport { ConsoleLoggingConnector } from \"@twin.org/logging-connector-console\";\nimport {\n\tEntityStorageLoggingConnector,\n\tinitSchema as initSchemaLogging,\n\ttype LogEntry\n} from \"@twin.org/logging-connector-entity-storage\";\nimport {\n\tLoggingConnectorFactory,\n\tMultiLoggingConnector,\n\ttype ILoggingComponent,\n\ttype ILoggingConnector\n} from \"@twin.org/logging-models\";\nimport { LoggingRestClient } from \"@twin.org/logging-rest-client\";\nimport { LoggingService } from \"@twin.org/logging-service\";\nimport { nameof, nameofKebabCase } from \"@twin.org/nameof\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { LoggingComponentConfig } from \"../models/config/loggingComponentConfig.js\";\nimport type { LoggingConnectorConfig } from \"../models/config/loggingConnectorConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { LoggingComponentType } from \"../models/types/loggingComponentType.js\";\nimport { LoggingConnectorType } from \"../models/types/loggingConnectorType.js\";\n\n/**\n * Initialise the logging connector.\n * @param engineCore The engine core.\n * @param context The engine core context.\n * @param instanceConfig The instance config.\n * @returns The instance created and the factory for it.\n */\nexport async function initialiseLoggingConnector(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: LoggingConnectorConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof LoggingConnectorFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: ILoggingConnector | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === LoggingConnectorType.Console) {\n\t\tcomponent = new ConsoleLoggingConnector(instanceConfig.options);\n\t\tinstanceType = ConsoleLoggingConnector.NAMESPACE;\n\t} else if (instanceConfig.type === LoggingConnectorType.EntityStorage) {\n\t\tinitSchemaLogging();\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.logEntryStorageConnectorType,\n\t\t\tnameof<LogEntry>(),\n\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [\n\t\t\t\tContextIdKeys.Node,\n\t\t\t\tContextIdKeys.Tenant\n\t\t\t])\n\t\t);\n\t\tcomponent = new EntityStorageLoggingConnector(instanceConfig.options);\n\t\tinstanceType = EntityStorageLoggingConnector.NAMESPACE;\n\t} else if (instanceConfig.type === LoggingConnectorType.Multi) {\n\t\tcomponent = new MultiLoggingConnector(instanceConfig.options);\n\t\tinstanceType = MultiLoggingConnector.NAMESPACE;\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: LoggingConnectorFactory\n\t};\n}\n\n/**\n * Initialise the logging 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 initialiseLoggingComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: LoggingComponentConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof ComponentFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: ILoggingComponent | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === LoggingComponentType.Service) {\n\t\tcomponent = new LoggingService({\n\t\t\tloggingConnectorType: engineCore.getRegisteredInstanceType(\"loggingConnector\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = nameofKebabCase(LoggingService);\n\t} else if (instanceConfig.type === LoggingComponentType.RestClient) {\n\t\tcomponent = new LoggingRestClient(instanceConfig.options);\n\t\tinstanceType = nameofKebabCase(LoggingRestClient);\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
|
|
@@ -0,0 +1,177 @@
|
|
|
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 { AwsMessagingEmailConnector, AwsMessagingPushNotificationConnector, AwsMessagingSmsConnector } from "@twin.org/messaging-connector-aws";
|
|
6
|
+
import { EntityStorageMessagingEmailConnector, EntityStorageMessagingPushNotificationConnector, EntityStorageMessagingSmsConnector, initSchema } from "@twin.org/messaging-connector-entity-storage";
|
|
7
|
+
import { MessagingEmailConnectorFactory, MessagingPushNotificationsConnectorFactory, MessagingSmsConnectorFactory } from "@twin.org/messaging-models";
|
|
8
|
+
import { initSchema as initSchemaMessagingService, MessagingAdminService, MessagingService } from "@twin.org/messaging-service";
|
|
9
|
+
import { initialiseEntityStorageConnector } from "./entityStorage.js";
|
|
10
|
+
import { MessagingAdminComponentType } from "../models/types/messagingAdminComponentType.js";
|
|
11
|
+
import { MessagingComponentType } from "../models/types/messagingComponentType.js";
|
|
12
|
+
import { MessagingEmailConnectorType } from "../models/types/messagingEmailConnectorType.js";
|
|
13
|
+
import { MessagingPushNotificationConnectorType } from "../models/types/messagingPushNotificationConnectorType.js";
|
|
14
|
+
import { MessagingSmsConnectorType } from "../models/types/messagingSmsConnectorType.js";
|
|
15
|
+
/**
|
|
16
|
+
* Initialise a messaging email connector.
|
|
17
|
+
* @param engineCore The engine core.
|
|
18
|
+
* @param context The context for the engine.
|
|
19
|
+
* @param instanceConfig The instance config.
|
|
20
|
+
* @returns The instance created and the factory for it.
|
|
21
|
+
*/
|
|
22
|
+
export async function initialiseMessagingEmailConnector(engineCore, context, instanceConfig) {
|
|
23
|
+
let component;
|
|
24
|
+
let instanceType;
|
|
25
|
+
if (instanceConfig.type === MessagingEmailConnectorType.EntityStorage) {
|
|
26
|
+
initSchema({ email: true, sms: false, pushNotification: false });
|
|
27
|
+
initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.messagingEmailEntryStorageConnectorType, "EmailEntry", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
|
|
28
|
+
ContextIdKeys.Node,
|
|
29
|
+
ContextIdKeys.Tenant
|
|
30
|
+
]));
|
|
31
|
+
component = new EntityStorageMessagingEmailConnector({
|
|
32
|
+
loggingComponentType: engineCore.getRegisteredInstanceType("loggingComponent"),
|
|
33
|
+
...instanceConfig.options
|
|
34
|
+
});
|
|
35
|
+
instanceType = EntityStorageMessagingEmailConnector.NAMESPACE;
|
|
36
|
+
}
|
|
37
|
+
else if (instanceConfig.type === MessagingEmailConnectorType.Aws) {
|
|
38
|
+
component = new AwsMessagingEmailConnector({
|
|
39
|
+
loggingComponentType: engineCore.getRegisteredInstanceType("loggingComponent"),
|
|
40
|
+
...instanceConfig.options
|
|
41
|
+
});
|
|
42
|
+
instanceType = AwsMessagingEmailConnector.NAMESPACE;
|
|
43
|
+
}
|
|
44
|
+
return {
|
|
45
|
+
component,
|
|
46
|
+
instanceType,
|
|
47
|
+
factory: MessagingEmailConnectorFactory
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Initialise a messaging sms connector.
|
|
52
|
+
* @param engineCore The engine core.
|
|
53
|
+
* @param context The context for the engine.
|
|
54
|
+
* @param instanceConfig The instance config.
|
|
55
|
+
* @returns The instance created and the factory for it.
|
|
56
|
+
*/
|
|
57
|
+
export async function initialiseMessagingSmsConnector(engineCore, context, instanceConfig) {
|
|
58
|
+
let connector;
|
|
59
|
+
let instanceType;
|
|
60
|
+
if (instanceConfig.type === MessagingSmsConnectorType.EntityStorage) {
|
|
61
|
+
initSchema({ email: false, sms: true, pushNotification: false });
|
|
62
|
+
initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.messagingSmsEntryStorageConnectorType, "SmsEntry", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
|
|
63
|
+
ContextIdKeys.Node,
|
|
64
|
+
ContextIdKeys.Tenant
|
|
65
|
+
]));
|
|
66
|
+
connector = new EntityStorageMessagingSmsConnector({
|
|
67
|
+
loggingComponentType: engineCore.getRegisteredInstanceType("loggingComponent"),
|
|
68
|
+
...instanceConfig.options
|
|
69
|
+
});
|
|
70
|
+
instanceType = EntityStorageMessagingSmsConnector.NAMESPACE;
|
|
71
|
+
}
|
|
72
|
+
else if (instanceConfig.type === MessagingSmsConnectorType.Aws) {
|
|
73
|
+
connector = new AwsMessagingSmsConnector({
|
|
74
|
+
loggingComponentType: engineCore.getRegisteredInstanceType("loggingComponent"),
|
|
75
|
+
...instanceConfig.options
|
|
76
|
+
});
|
|
77
|
+
instanceType = AwsMessagingSmsConnector.NAMESPACE;
|
|
78
|
+
}
|
|
79
|
+
return {
|
|
80
|
+
instanceType,
|
|
81
|
+
factory: MessagingSmsConnectorFactory,
|
|
82
|
+
component: connector
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Initialise a messaging push notification connector.
|
|
87
|
+
* @param engineCore The engine core.
|
|
88
|
+
* @param context The context for the engine.
|
|
89
|
+
* @param instanceConfig The instance config.
|
|
90
|
+
* @returns The instance created and the factory for it.
|
|
91
|
+
*/
|
|
92
|
+
export async function initialiseMessagingPushNotificationConnector(engineCore, context, instanceConfig) {
|
|
93
|
+
let component;
|
|
94
|
+
let instanceType;
|
|
95
|
+
if (instanceConfig.type === MessagingPushNotificationConnectorType.EntityStorage) {
|
|
96
|
+
initSchema({ email: false, sms: false, pushNotification: true });
|
|
97
|
+
initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.messagingDeviceEntryStorageConnectorType, "PushNotificationDeviceEntry", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
|
|
98
|
+
ContextIdKeys.Node,
|
|
99
|
+
ContextIdKeys.Tenant
|
|
100
|
+
]));
|
|
101
|
+
initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.messagingMessageEntryStorageConnectorType, "PushNotificationMessageEntry", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
|
|
102
|
+
ContextIdKeys.Node,
|
|
103
|
+
ContextIdKeys.Tenant
|
|
104
|
+
]));
|
|
105
|
+
component = new EntityStorageMessagingPushNotificationConnector({
|
|
106
|
+
loggingComponentType: engineCore.getRegisteredInstanceType("loggingComponent"),
|
|
107
|
+
...instanceConfig.options
|
|
108
|
+
});
|
|
109
|
+
instanceType = EntityStorageMessagingPushNotificationConnector.NAMESPACE;
|
|
110
|
+
}
|
|
111
|
+
else if (instanceConfig.type === MessagingPushNotificationConnectorType.Aws) {
|
|
112
|
+
component = new AwsMessagingPushNotificationConnector({
|
|
113
|
+
loggingComponentType: engineCore.getRegisteredInstanceType("loggingComponent"),
|
|
114
|
+
...instanceConfig.options
|
|
115
|
+
});
|
|
116
|
+
instanceType = AwsMessagingPushNotificationConnector.NAMESPACE;
|
|
117
|
+
}
|
|
118
|
+
return {
|
|
119
|
+
component,
|
|
120
|
+
instanceType,
|
|
121
|
+
factory: MessagingPushNotificationsConnectorFactory
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Initialise the messaging component.
|
|
126
|
+
* @param engineCore The engine core.
|
|
127
|
+
* @param context The context for the engine.
|
|
128
|
+
* @param instanceConfig The instance config.
|
|
129
|
+
* @returns The instance created and the factory for it.
|
|
130
|
+
*/
|
|
131
|
+
export async function initialiseMessagingComponent(engineCore, context, instanceConfig) {
|
|
132
|
+
let component;
|
|
133
|
+
let instanceType;
|
|
134
|
+
if (instanceConfig.type === MessagingComponentType.Service) {
|
|
135
|
+
component = new MessagingService({
|
|
136
|
+
messagingEmailConnectorType: engineCore.getRegisteredInstanceTypeOptional("messagingEmailConnector"),
|
|
137
|
+
messagingSmsConnectorType: engineCore.getRegisteredInstanceTypeOptional("messagingSmsConnector"),
|
|
138
|
+
messagingPushNotificationConnectorType: engineCore.getRegisteredInstanceTypeOptional("messagingNotificationConnector"),
|
|
139
|
+
messagingAdminComponentType: engineCore.getRegisteredInstanceTypeOptional("messagingAdminComponent"),
|
|
140
|
+
...instanceConfig.options
|
|
141
|
+
});
|
|
142
|
+
instanceType = "messaging-service";
|
|
143
|
+
}
|
|
144
|
+
return {
|
|
145
|
+
component,
|
|
146
|
+
instanceType,
|
|
147
|
+
factory: ComponentFactory
|
|
148
|
+
};
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Initialise the messaging admin component.
|
|
152
|
+
* @param engineCore The engine core.
|
|
153
|
+
* @param context The context for the engine.
|
|
154
|
+
* @param instanceConfig The instance config.
|
|
155
|
+
* @returns The instance created and the factory for it.
|
|
156
|
+
*/
|
|
157
|
+
export async function initialiseMessagingAdminComponent(engineCore, context, instanceConfig) {
|
|
158
|
+
let component;
|
|
159
|
+
let instanceType;
|
|
160
|
+
if (instanceConfig.type === MessagingAdminComponentType.Service) {
|
|
161
|
+
initSchemaMessagingService();
|
|
162
|
+
initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.templateEntryStorageConnectorType, "TemplateEntry", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
|
|
163
|
+
ContextIdKeys.Node,
|
|
164
|
+
ContextIdKeys.Tenant
|
|
165
|
+
]));
|
|
166
|
+
component = new MessagingAdminService({
|
|
167
|
+
...instanceConfig.options
|
|
168
|
+
});
|
|
169
|
+
instanceType = "messaging-admin-service";
|
|
170
|
+
}
|
|
171
|
+
return {
|
|
172
|
+
component,
|
|
173
|
+
instanceType,
|
|
174
|
+
factory: ComponentFactory
|
|
175
|
+
};
|
|
176
|
+
}
|
|
177
|
+
//# sourceMappingURL=messaging.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messaging.js","sourceRoot":"","sources":["../../../src/components/messaging.ts"],"names":[],"mappings":"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","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 {\n\tAwsMessagingEmailConnector,\n\tAwsMessagingPushNotificationConnector,\n\tAwsMessagingSmsConnector\n} from \"@twin.org/messaging-connector-aws\";\nimport {\n\ttype EmailEntry,\n\tEntityStorageMessagingEmailConnector,\n\tEntityStorageMessagingPushNotificationConnector,\n\tEntityStorageMessagingSmsConnector,\n\tinitSchema,\n\ttype PushNotificationDeviceEntry,\n\ttype PushNotificationMessageEntry,\n\ttype SmsEntry\n} from \"@twin.org/messaging-connector-entity-storage\";\nimport {\n\ttype IMessagingAdminComponent,\n\ttype IMessagingComponent,\n\ttype IMessagingEmailConnector,\n\ttype IMessagingPushNotificationsConnector,\n\ttype IMessagingSmsConnector,\n\tMessagingEmailConnectorFactory,\n\tMessagingPushNotificationsConnectorFactory,\n\tMessagingSmsConnectorFactory\n} from \"@twin.org/messaging-models\";\nimport {\n\tinitSchema as initSchemaMessagingService,\n\tMessagingAdminService,\n\tMessagingService,\n\ttype TemplateEntry\n} from \"@twin.org/messaging-service\";\nimport { nameof, nameofKebabCase } from \"@twin.org/nameof\";\nimport { initialiseEntityStorageConnector } from \"./entityStorage.js\";\nimport type { MessagingAdminComponentConfig } from \"../models/config/messagingAdminComponentConfig.js\";\nimport type { MessagingComponentConfig } from \"../models/config/messagingComponentConfig.js\";\nimport type { MessagingEmailConnectorConfig } from \"../models/config/messagingEmailConnectorConfig.js\";\nimport type { MessagingPushNotificationConnectorConfig } from \"../models/config/messagingPushNotificationConnectorConfig.js\";\nimport type { MessagingSmsConnectorConfig } from \"../models/config/messagingSmsConnectorConfig.js\";\nimport type { IEngineConfig } from \"../models/IEngineConfig.js\";\nimport { MessagingAdminComponentType } from \"../models/types/messagingAdminComponentType.js\";\nimport { MessagingComponentType } from \"../models/types/messagingComponentType.js\";\nimport { MessagingEmailConnectorType } from \"../models/types/messagingEmailConnectorType.js\";\nimport { MessagingPushNotificationConnectorType } from \"../models/types/messagingPushNotificationConnectorType.js\";\nimport { MessagingSmsConnectorType } from \"../models/types/messagingSmsConnectorType.js\";\n\n/**\n * Initialise a messaging email 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 initialiseMessagingEmailConnector(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: MessagingEmailConnectorConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof MessagingEmailConnectorFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: IMessagingEmailConnector | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === MessagingEmailConnectorType.EntityStorage) {\n\t\tinitSchema({ email: true, sms: false, pushNotification: false });\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.messagingEmailEntryStorageConnectorType,\n\t\t\tnameof<EmailEntry>(),\n\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [\n\t\t\t\tContextIdKeys.Node,\n\t\t\t\tContextIdKeys.Tenant\n\t\t\t])\n\t\t);\n\t\tcomponent = new EntityStorageMessagingEmailConnector({\n\t\t\tloggingComponentType: engineCore.getRegisteredInstanceType(\"loggingComponent\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = EntityStorageMessagingEmailConnector.NAMESPACE;\n\t} else if (instanceConfig.type === MessagingEmailConnectorType.Aws) {\n\t\tcomponent = new AwsMessagingEmailConnector({\n\t\t\tloggingComponentType: engineCore.getRegisteredInstanceType(\"loggingComponent\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = AwsMessagingEmailConnector.NAMESPACE;\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: MessagingEmailConnectorFactory\n\t};\n}\n\n/**\n * Initialise a messaging sms 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 initialiseMessagingSmsConnector(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: MessagingSmsConnectorConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof MessagingSmsConnectorFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet connector: IMessagingSmsConnector | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === MessagingSmsConnectorType.EntityStorage) {\n\t\tinitSchema({ email: false, sms: true, pushNotification: false });\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.messagingSmsEntryStorageConnectorType,\n\t\t\tnameof<SmsEntry>(),\n\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [\n\t\t\t\tContextIdKeys.Node,\n\t\t\t\tContextIdKeys.Tenant\n\t\t\t])\n\t\t);\n\t\tconnector = new EntityStorageMessagingSmsConnector({\n\t\t\tloggingComponentType: engineCore.getRegisteredInstanceType(\"loggingComponent\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = EntityStorageMessagingSmsConnector.NAMESPACE;\n\t} else if (instanceConfig.type === MessagingSmsConnectorType.Aws) {\n\t\tconnector = new AwsMessagingSmsConnector({\n\t\t\tloggingComponentType: engineCore.getRegisteredInstanceType(\"loggingComponent\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = AwsMessagingSmsConnector.NAMESPACE;\n\t}\n\n\treturn {\n\t\tinstanceType,\n\t\tfactory: MessagingSmsConnectorFactory,\n\t\tcomponent: connector\n\t};\n}\n\n/**\n * Initialise a messaging push notification 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 initialiseMessagingPushNotificationConnector(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: MessagingPushNotificationConnectorConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof MessagingPushNotificationsConnectorFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: IMessagingPushNotificationsConnector | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === MessagingPushNotificationConnectorType.EntityStorage) {\n\t\tinitSchema({ email: false, sms: false, pushNotification: true });\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.messagingDeviceEntryStorageConnectorType,\n\t\t\tnameof<PushNotificationDeviceEntry>(),\n\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [\n\t\t\t\tContextIdKeys.Node,\n\t\t\t\tContextIdKeys.Tenant\n\t\t\t])\n\t\t);\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.messagingMessageEntryStorageConnectorType,\n\t\t\tnameof<PushNotificationMessageEntry>(),\n\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [\n\t\t\t\tContextIdKeys.Node,\n\t\t\t\tContextIdKeys.Tenant\n\t\t\t])\n\t\t);\n\t\tcomponent = new EntityStorageMessagingPushNotificationConnector({\n\t\t\tloggingComponentType: engineCore.getRegisteredInstanceType(\"loggingComponent\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = EntityStorageMessagingPushNotificationConnector.NAMESPACE;\n\t} else if (instanceConfig.type === MessagingPushNotificationConnectorType.Aws) {\n\t\tcomponent = new AwsMessagingPushNotificationConnector({\n\t\t\tloggingComponentType: engineCore.getRegisteredInstanceType(\"loggingComponent\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = AwsMessagingPushNotificationConnector.NAMESPACE;\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: MessagingPushNotificationsConnectorFactory\n\t};\n}\n\n/**\n * Initialise the messaging 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 initialiseMessagingComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: MessagingComponentConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof ComponentFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: IMessagingComponent | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === MessagingComponentType.Service) {\n\t\tcomponent = new MessagingService({\n\t\t\tmessagingEmailConnectorType:\n\t\t\t\tengineCore.getRegisteredInstanceTypeOptional(\"messagingEmailConnector\"),\n\t\t\tmessagingSmsConnectorType:\n\t\t\t\tengineCore.getRegisteredInstanceTypeOptional(\"messagingSmsConnector\"),\n\t\t\tmessagingPushNotificationConnectorType: engineCore.getRegisteredInstanceTypeOptional(\n\t\t\t\t\"messagingNotificationConnector\"\n\t\t\t),\n\t\t\tmessagingAdminComponentType:\n\t\t\t\tengineCore.getRegisteredInstanceTypeOptional(\"messagingAdminComponent\"),\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = nameofKebabCase(MessagingService);\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: ComponentFactory\n\t};\n}\n\n/**\n * Initialise the messaging admin component.\n * @param engineCore The engine core.\n * @param context The context for the engine.\n * @param instanceConfig The instance config.\n * @returns The instance created and the factory for it.\n */\nexport async function initialiseMessagingAdminComponent(\n\tengineCore: IEngineCore<IEngineConfig>,\n\tcontext: IEngineCoreContext<IEngineConfig>,\n\tinstanceConfig: MessagingAdminComponentConfig\n): Promise<{\n\tinstanceType?: string;\n\tfactory?: typeof ComponentFactory;\n\tcomponent?: IComponent;\n}> {\n\tlet component: IMessagingAdminComponent | undefined;\n\tlet instanceType: string | undefined;\n\n\tif (instanceConfig.type === MessagingAdminComponentType.Service) {\n\t\tinitSchemaMessagingService();\n\n\t\tinitialiseEntityStorageConnector(\n\t\t\tengineCore,\n\t\t\tcontext,\n\t\t\tinstanceConfig.options?.templateEntryStorageConnectorType,\n\t\t\tnameof<TemplateEntry>(),\n\t\t\tContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [\n\t\t\t\tContextIdKeys.Node,\n\t\t\t\tContextIdKeys.Tenant\n\t\t\t])\n\t\t);\n\n\t\tcomponent = new MessagingAdminService({\n\t\t\t...instanceConfig.options\n\t\t});\n\t\tinstanceType = nameofKebabCase(MessagingAdminService);\n\t}\n\n\treturn {\n\t\tcomponent,\n\t\tinstanceType,\n\t\tfactory: ComponentFactory\n\t};\n}\n"]}
|
|
@@ -0,0 +1,78 @@
|
|
|
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 { EntityStorageNftConnector, initSchema } from "@twin.org/nft-connector-entity-storage";
|
|
6
|
+
import { IotaNftConnector } from "@twin.org/nft-connector-iota";
|
|
7
|
+
import { NftConnectorFactory } from "@twin.org/nft-models";
|
|
8
|
+
import { NftRestClient } from "@twin.org/nft-rest-client";
|
|
9
|
+
import { NftService } from "@twin.org/nft-service";
|
|
10
|
+
import { initialiseEntityStorageConnector } from "./entityStorage.js";
|
|
11
|
+
import { DltConfigType } from "../models/types/dltConfigType.js";
|
|
12
|
+
import { NftComponentType } from "../models/types/nftComponentType.js";
|
|
13
|
+
import { NftConnectorType } from "../models/types/nftConnectorType.js";
|
|
14
|
+
import { EngineTypeHelper } from "../utils/engineTypeHelper.js";
|
|
15
|
+
/**
|
|
16
|
+
* Initialise the NFT connector.
|
|
17
|
+
* @param engineCore The engine core.
|
|
18
|
+
* @param context The context for the engine.
|
|
19
|
+
* @param instanceConfig The instance config.
|
|
20
|
+
* @returns The instance created and the factory for it.
|
|
21
|
+
*/
|
|
22
|
+
export async function initialiseNftConnector(engineCore, context, instanceConfig) {
|
|
23
|
+
let component;
|
|
24
|
+
let instanceType;
|
|
25
|
+
if (instanceConfig.type === NftConnectorType.EntityStorage) {
|
|
26
|
+
initSchema();
|
|
27
|
+
initialiseEntityStorageConnector(engineCore, context, instanceConfig.options?.nftEntityStorageType, "Nft", ContextIdHelper.pickKeysFromAvailable(engineCore.getContextIdKeys(), [
|
|
28
|
+
ContextIdKeys.Node,
|
|
29
|
+
ContextIdKeys.Tenant
|
|
30
|
+
]));
|
|
31
|
+
component = new EntityStorageNftConnector(instanceConfig.options);
|
|
32
|
+
instanceType = EntityStorageNftConnector.NAMESPACE;
|
|
33
|
+
}
|
|
34
|
+
else if (instanceConfig.type === NftConnectorType.Iota) {
|
|
35
|
+
const dltConfig = EngineTypeHelper.getConfigOfType(engineCore.getConfig(), "dltConfig", DltConfigType.Iota);
|
|
36
|
+
component = new IotaNftConnector({
|
|
37
|
+
vaultConnectorType: engineCore.getRegisteredInstanceType("vaultConnector"),
|
|
38
|
+
walletConnectorType: engineCore.getRegisteredInstanceType("walletConnector"),
|
|
39
|
+
loggingComponentType: engineCore.getRegisteredInstanceTypeOptional("loggingComponent"),
|
|
40
|
+
...instanceConfig.options,
|
|
41
|
+
config: {
|
|
42
|
+
...dltConfig?.options?.config,
|
|
43
|
+
...instanceConfig.options.config
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
instanceType = IotaNftConnector.NAMESPACE;
|
|
47
|
+
}
|
|
48
|
+
return {
|
|
49
|
+
component,
|
|
50
|
+
instanceType,
|
|
51
|
+
factory: NftConnectorFactory
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Initialise the NFT component.
|
|
56
|
+
* @param engineCore The engine core.
|
|
57
|
+
* @param context The context for the engine.
|
|
58
|
+
* @param instanceConfig The instance config.
|
|
59
|
+
* @returns The instance created and the factory for it.
|
|
60
|
+
*/
|
|
61
|
+
export async function initialiseNftComponent(engineCore, context, instanceConfig) {
|
|
62
|
+
let component;
|
|
63
|
+
let instanceType;
|
|
64
|
+
if (instanceConfig.type === NftComponentType.Service) {
|
|
65
|
+
component = new NftService(instanceConfig.options);
|
|
66
|
+
instanceType = "nft-service";
|
|
67
|
+
}
|
|
68
|
+
else if (instanceConfig.type === NftComponentType.RestClient) {
|
|
69
|
+
component = new NftRestClient(instanceConfig.options);
|
|
70
|
+
instanceType = "nft-rest-client";
|
|
71
|
+
}
|
|
72
|
+
return {
|
|
73
|
+
component,
|
|
74
|
+
instanceType,
|
|
75
|
+
factory: ComponentFactory
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=nft.js.map
|