@tidecloak/js 0.9.11
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/LICENSE +334 -0
- package/README.md +294 -0
- package/dist/cjs/lib/tidecloak.js +1934 -0
- package/dist/cjs/lib/tidecloak.js.map +1 -0
- package/dist/cjs/modules/tide-js/Clients/ClientBase.js +213 -0
- package/dist/cjs/modules/tide-js/Clients/ClientBase.js.map +1 -0
- package/dist/cjs/modules/tide-js/Clients/NetworkClient.js +96 -0
- package/dist/cjs/modules/tide-js/Clients/NetworkClient.js.map +1 -0
- package/dist/cjs/modules/tide-js/Clients/NodeClient.js +491 -0
- package/dist/cjs/modules/tide-js/Clients/NodeClient.js.map +1 -0
- package/dist/cjs/modules/tide-js/Clients/PollingClient.js +87 -0
- package/dist/cjs/modules/tide-js/Clients/PollingClient.js.map +1 -0
- package/dist/cjs/modules/tide-js/Clients/VoucherClient.js +37 -0
- package/dist/cjs/modules/tide-js/Clients/VoucherClient.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/Components/BaseComponent.js +180 -0
- package/dist/cjs/modules/tide-js/Cryptide/Components/BaseComponent.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/Components/ComponentRegistry.js +30 -0
- package/dist/cjs/modules/tide-js/Cryptide/Components/ComponentRegistry.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/Components/Schemes/AES/AESScheme.js +11 -0
- package/dist/cjs/modules/tide-js/Cryptide/Components/Schemes/AES/AESScheme.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/Components/Schemes/BaseScheme.js +13 -0
- package/dist/cjs/modules/tide-js/Cryptide/Components/Schemes/BaseScheme.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Components.js +166 -0
- package/dist/cjs/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Components.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Scheme.js +41 -0
- package/dist/cjs/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Scheme.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/Components/Schemes/SchemeRegistry.js +13 -0
- package/dist/cjs/modules/tide-js/Cryptide/Components/Schemes/SchemeRegistry.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/Ed25519.js +535 -0
- package/dist/cjs/modules/tide-js/Cryptide/Ed25519.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/Encryption/AES.js +109 -0
- package/dist/cjs/modules/tide-js/Cryptide/Encryption/AES.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/Encryption/DH.js +53 -0
- package/dist/cjs/modules/tide-js/Cryptide/Encryption/DH.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/Encryption/ElGamal.js +59 -0
- package/dist/cjs/modules/tide-js/Cryptide/Encryption/ElGamal.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/Hashing/H2P.js +248 -0
- package/dist/cjs/modules/tide-js/Cryptide/Hashing/H2P.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/Hashing/Hash.js +60 -0
- package/dist/cjs/modules/tide-js/Cryptide/Hashing/Hash.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/Interpolation.js +107 -0
- package/dist/cjs/modules/tide-js/Cryptide/Interpolation.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/Math.js +134 -0
- package/dist/cjs/modules/tide-js/Cryptide/Math.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/Serialization.js +680 -0
- package/dist/cjs/modules/tide-js/Cryptide/Serialization.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/Signing/BlindSig.js +56 -0
- package/dist/cjs/modules/tide-js/Cryptide/Signing/BlindSig.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/Signing/EdDSA.js +84 -0
- package/dist/cjs/modules/tide-js/Cryptide/Signing/EdDSA.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/Signing/TideSignature.js +102 -0
- package/dist/cjs/modules/tide-js/Cryptide/Signing/TideSignature.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/TideKey.js +77 -0
- package/dist/cjs/modules/tide-js/Cryptide/TideKey.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/TideMemoryObjects.js +34 -0
- package/dist/cjs/modules/tide-js/Cryptide/TideMemoryObjects.js.map +1 -0
- package/dist/cjs/modules/tide-js/Cryptide/index.js +74 -0
- package/dist/cjs/modules/tide-js/Cryptide/index.js.map +1 -0
- package/dist/cjs/modules/tide-js/Flow/AuthenticationFlows/dCMKAcceptAdminFlow.js +6 -0
- package/dist/cjs/modules/tide-js/Flow/AuthenticationFlows/dCMKAcceptAdminFlow.js.map +1 -0
- package/dist/cjs/modules/tide-js/Flow/AuthenticationFlows/dCMKPasswordFlow.js +138 -0
- package/dist/cjs/modules/tide-js/Flow/AuthenticationFlows/dCMKPasswordFlow.js.map +1 -0
- package/dist/cjs/modules/tide-js/Flow/AuthenticationFlows/dCMKPasswordlessFlow.js +83 -0
- package/dist/cjs/modules/tide-js/Flow/AuthenticationFlows/dCMKPasswordlessFlow.js.map +1 -0
- package/dist/cjs/modules/tide-js/Flow/AuthenticationFlows/dCVKAuthenticationFlow.js +3 -0
- package/dist/cjs/modules/tide-js/Flow/AuthenticationFlows/dCVKAuthenticationFlow.js.map +1 -0
- package/dist/cjs/modules/tide-js/Flow/DecryptionFlows/dVVKDecryptionFlow.js +58 -0
- package/dist/cjs/modules/tide-js/Flow/DecryptionFlows/dVVKDecryptionFlow.js.map +1 -0
- package/dist/cjs/modules/tide-js/Flow/EncryptionFlows/AuthorizedEncryptionFlow.js +180 -0
- package/dist/cjs/modules/tide-js/Flow/EncryptionFlows/AuthorizedEncryptionFlow.js.map +1 -0
- package/dist/cjs/modules/tide-js/Flow/SigningFlows/AuthorizedSigningFlow.js +49 -0
- package/dist/cjs/modules/tide-js/Flow/SigningFlows/AuthorizedSigningFlow.js.map +1 -0
- package/dist/cjs/modules/tide-js/Flow/SigningFlows/dTestVVkSigningFlow.js +70 -0
- package/dist/cjs/modules/tide-js/Flow/SigningFlows/dTestVVkSigningFlow.js.map +1 -0
- package/dist/cjs/modules/tide-js/Flow/SigningFlows/dVVKSigningFlow.js +73 -0
- package/dist/cjs/modules/tide-js/Flow/SigningFlows/dVVKSigningFlow.js.map +1 -0
- package/dist/cjs/modules/tide-js/Flow/SigningFlows/dVVKSigningFlow_DEPRECATED.js +67 -0
- package/dist/cjs/modules/tide-js/Flow/SigningFlows/dVVKSigningFlow_DEPRECATED.js.map +1 -0
- package/dist/cjs/modules/tide-js/Flow/SimulatorFlow.js +57 -0
- package/dist/cjs/modules/tide-js/Flow/SimulatorFlow.js.map +1 -0
- package/dist/cjs/modules/tide-js/Flow/VoucherFlows/VoucherFlow.js +51 -0
- package/dist/cjs/modules/tide-js/Flow/VoucherFlows/VoucherFlow.js.map +1 -0
- package/dist/cjs/modules/tide-js/Flow/dAccountRecoveryFlow.js +95 -0
- package/dist/cjs/modules/tide-js/Flow/dAccountRecoveryFlow.js.map +1 -0
- package/dist/cjs/modules/tide-js/Flow/dKeyGenerationFlow.js +219 -0
- package/dist/cjs/modules/tide-js/Flow/dKeyGenerationFlow.js.map +1 -0
- package/dist/cjs/modules/tide-js/Math/DecryptRequest.js +52 -0
- package/dist/cjs/modules/tide-js/Math/DecryptRequest.js.map +1 -0
- package/dist/cjs/modules/tide-js/Math/EncryptRequest.js +96 -0
- package/dist/cjs/modules/tide-js/Math/EncryptRequest.js.map +1 -0
- package/dist/cjs/modules/tide-js/Math/KeyAuthentication.js +222 -0
- package/dist/cjs/modules/tide-js/Math/KeyAuthentication.js.map +1 -0
- package/dist/cjs/modules/tide-js/Math/KeyDecryption.js +18 -0
- package/dist/cjs/modules/tide-js/Math/KeyDecryption.js.map +1 -0
- package/dist/cjs/modules/tide-js/Math/KeyGeneration.js +148 -0
- package/dist/cjs/modules/tide-js/Math/KeyGeneration.js.map +1 -0
- package/dist/cjs/modules/tide-js/Math/KeySigning.js +24 -0
- package/dist/cjs/modules/tide-js/Math/KeySigning.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/AdminAuthorization.js +83 -0
- package/dist/cjs/modules/tide-js/Models/AdminAuthorization.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/AuthRequest.js +66 -0
- package/dist/cjs/modules/tide-js/Models/AuthRequest.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/AuthorizationBuilder.js +61 -0
- package/dist/cjs/modules/tide-js/Models/AuthorizationBuilder.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/BaseTideRequest.js +106 -0
- package/dist/cjs/modules/tide-js/Models/BaseTideRequest.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Cardano/CardanoTxBody.js +198 -0
- package/dist/cjs/modules/tide-js/Models/Cardano/CardanoTxBody.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Datum.js +41 -0
- package/dist/cjs/modules/tide-js/Models/Datum.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Doken.js +140 -0
- package/dist/cjs/modules/tide-js/Models/Doken.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/EnclaveEntry.js +50 -0
- package/dist/cjs/modules/tide-js/Models/EnclaveEntry.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Infos/KeyInfo.js +49 -0
- package/dist/cjs/modules/tide-js/Models/Infos/KeyInfo.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Infos/OrkInfo.js +53 -0
- package/dist/cjs/modules/tide-js/Models/Infos/OrkInfo.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/InitializationCertificate.js +35 -0
- package/dist/cjs/modules/tide-js/Models/InitializationCertificate.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/ModelRegistry.js +177 -0
- package/dist/cjs/modules/tide-js/Models/ModelRegistry.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyAuth/Authenticate/AuthenticateResponse.js +34 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyAuth/Authenticate/AuthenticateResponse.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyAuth/Convert/CMKConvertResponse.js +36 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyAuth/Convert/CMKConvertResponse.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyAuth/Convert/ConvertRememberedResponse.js +36 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyAuth/Convert/ConvertRememberedResponse.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedCMKConvertResponse.js +34 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedCMKConvertResponse.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedConvertRememberedResponse.js +37 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedConvertRememberedResponse.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedPrismConvertResponse.js +37 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedPrismConvertResponse.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyAuth/Convert/PrismConvertResponse.js +36 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyAuth/Convert/PrismConvertResponse.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyGen/GenShard/DecryptedGenShardResponse.js +49 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyGen/GenShard/DecryptedGenShardResponse.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyGen/GenShard/GenShardResponse.js +34 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyGen/GenShard/GenShardResponse.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyGen/SetShard/DecryptedSetShardResponse.js +39 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyGen/SetShard/DecryptedSetShardResponse.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyGen/SetShard/SetShardResponse.js +31 -0
- package/dist/cjs/modules/tide-js/Models/Responses/KeyGen/SetShard/SetShardResponse.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Responses/Reservation/ReservationConfirmation.js +26 -0
- package/dist/cjs/modules/tide-js/Models/Responses/Reservation/ReservationConfirmation.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Responses/Vendor/VoucherResponse.js +41 -0
- package/dist/cjs/modules/tide-js/Models/Responses/Vendor/VoucherResponse.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Rules/RuleSettingSignRequest.js +81 -0
- package/dist/cjs/modules/tide-js/Models/Rules/RuleSettingSignRequest.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Rules/RuleSettings.js +28 -0
- package/dist/cjs/modules/tide-js/Models/Rules/RuleSettings.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/SerializedField.js +63 -0
- package/dist/cjs/modules/tide-js/Models/SerializedField.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/Transactions/CardanoTxBodySignRequest.js +57 -0
- package/dist/cjs/modules/tide-js/Models/Transactions/CardanoTxBodySignRequest.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/VendorData.js +36 -0
- package/dist/cjs/modules/tide-js/Models/VendorData.js.map +1 -0
- package/dist/cjs/modules/tide-js/Models/VendorSettings.js +26 -0
- package/dist/cjs/modules/tide-js/Models/VendorSettings.js.map +1 -0
- package/dist/cjs/modules/tide-js/RulesEngine/RuleEngineService.js +92 -0
- package/dist/cjs/modules/tide-js/RulesEngine/RuleEngineService.js.map +1 -0
- package/dist/cjs/modules/tide-js/RulesEngine/helperFunctions.js +78 -0
- package/dist/cjs/modules/tide-js/RulesEngine/helperFunctions.js.map +1 -0
- package/dist/cjs/modules/tide-js/RulesEngine/jsonHelpers.js +68 -0
- package/dist/cjs/modules/tide-js/RulesEngine/jsonHelpers.js.map +1 -0
- package/dist/cjs/modules/tide-js/RulesEngine/thresholdRules.js +106 -0
- package/dist/cjs/modules/tide-js/RulesEngine/thresholdRules.js.map +1 -0
- package/dist/cjs/modules/tide-js/Tests/AccountRecovery.js +58 -0
- package/dist/cjs/modules/tide-js/Tests/AccountRecovery.js.map +1 -0
- package/dist/cjs/modules/tide-js/Tests/Components.js +18 -0
- package/dist/cjs/modules/tide-js/Tests/Components.js.map +1 -0
- package/dist/cjs/modules/tide-js/Tests/Encryption.js +172 -0
- package/dist/cjs/modules/tide-js/Tests/Encryption.js.map +1 -0
- package/dist/cjs/modules/tide-js/Tests/KeyAuthentication.js +113 -0
- package/dist/cjs/modules/tide-js/Tests/KeyAuthentication.js.map +1 -0
- package/dist/cjs/modules/tide-js/Tests/KeyGeneration.js +222 -0
- package/dist/cjs/modules/tide-js/Tests/KeyGeneration.js.map +1 -0
- package/dist/cjs/modules/tide-js/Tests/StripeLicensing.js +41 -0
- package/dist/cjs/modules/tide-js/Tests/StripeLicensing.js.map +1 -0
- package/dist/cjs/modules/tide-js/Tests/TideKey.js +17 -0
- package/dist/cjs/modules/tide-js/Tests/TideKey.js.map +1 -0
- package/dist/cjs/modules/tide-js/Tests/Verifier.js +12 -0
- package/dist/cjs/modules/tide-js/Tests/Verifier.js.map +1 -0
- package/dist/cjs/modules/tide-js/Tests/index.js +43 -0
- package/dist/cjs/modules/tide-js/Tests/index.js.map +1 -0
- package/dist/cjs/modules/tide-js/Tools/Utils.js +285 -0
- package/dist/cjs/modules/tide-js/Tools/Utils.js.map +1 -0
- package/dist/cjs/modules/tide-js/index.js +71 -0
- package/dist/cjs/modules/tide-js/index.js.map +1 -0
- package/dist/cjs/src/IAMService.js +278 -0
- package/dist/cjs/src/IAMService.js.map +1 -0
- package/dist/cjs/src/index.js +19 -0
- package/dist/cjs/src/index.js.map +1 -0
- package/dist/esm/lib/tidecloak.js +1923 -0
- package/dist/esm/lib/tidecloak.js.map +1 -0
- package/dist/esm/modules/tide-js/Clients/ClientBase.js +210 -0
- package/dist/esm/modules/tide-js/Clients/ClientBase.js.map +1 -0
- package/dist/esm/modules/tide-js/Clients/NetworkClient.js +90 -0
- package/dist/esm/modules/tide-js/Clients/NetworkClient.js.map +1 -0
- package/dist/esm/modules/tide-js/Clients/NodeClient.js +485 -0
- package/dist/esm/modules/tide-js/Clients/NodeClient.js.map +1 -0
- package/dist/esm/modules/tide-js/Clients/PollingClient.js +81 -0
- package/dist/esm/modules/tide-js/Clients/PollingClient.js.map +1 -0
- package/dist/esm/modules/tide-js/Clients/VoucherClient.js +31 -0
- package/dist/esm/modules/tide-js/Clients/VoucherClient.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/Components/BaseComponent.js +169 -0
- package/dist/esm/modules/tide-js/Cryptide/Components/BaseComponent.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/Components/ComponentRegistry.js +24 -0
- package/dist/esm/modules/tide-js/Cryptide/Components/ComponentRegistry.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/Components/Schemes/AES/AESScheme.js +5 -0
- package/dist/esm/modules/tide-js/Cryptide/Components/Schemes/AES/AESScheme.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/Components/Schemes/BaseScheme.js +11 -0
- package/dist/esm/modules/tide-js/Cryptide/Components/Schemes/BaseScheme.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Components.js +157 -0
- package/dist/esm/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Components.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Scheme.js +36 -0
- package/dist/esm/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Scheme.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/Components/Schemes/SchemeRegistry.js +7 -0
- package/dist/esm/modules/tide-js/Cryptide/Components/Schemes/SchemeRegistry.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/Ed25519.js +523 -0
- package/dist/esm/modules/tide-js/Cryptide/Ed25519.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/Encryption/AES.js +102 -0
- package/dist/esm/modules/tide-js/Cryptide/Encryption/AES.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/Encryption/DH.js +49 -0
- package/dist/esm/modules/tide-js/Cryptide/Encryption/DH.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/Encryption/ElGamal.js +56 -0
- package/dist/esm/modules/tide-js/Cryptide/Encryption/ElGamal.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/Hashing/H2P.js +245 -0
- package/dist/esm/modules/tide-js/Cryptide/Hashing/H2P.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/Hashing/Hash.js +55 -0
- package/dist/esm/modules/tide-js/Cryptide/Hashing/Hash.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/Interpolation.js +97 -0
- package/dist/esm/modules/tide-js/Cryptide/Interpolation.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/Math.js +120 -0
- package/dist/esm/modules/tide-js/Cryptide/Math.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/Serialization.js +642 -0
- package/dist/esm/modules/tide-js/Cryptide/Serialization.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/Signing/BlindSig.js +50 -0
- package/dist/esm/modules/tide-js/Cryptide/Signing/BlindSig.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/Signing/EdDSA.js +79 -0
- package/dist/esm/modules/tide-js/Cryptide/Signing/EdDSA.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/Signing/TideSignature.js +91 -0
- package/dist/esm/modules/tide-js/Cryptide/Signing/TideSignature.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/TideKey.js +71 -0
- package/dist/esm/modules/tide-js/Cryptide/TideKey.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/TideMemoryObjects.js +30 -0
- package/dist/esm/modules/tide-js/Cryptide/TideMemoryObjects.js.map +1 -0
- package/dist/esm/modules/tide-js/Cryptide/index.js +34 -0
- package/dist/esm/modules/tide-js/Cryptide/index.js.map +1 -0
- package/dist/esm/modules/tide-js/Flow/AuthenticationFlows/dCMKAcceptAdminFlow.js +3 -0
- package/dist/esm/modules/tide-js/Flow/AuthenticationFlows/dCMKAcceptAdminFlow.js.map +1 -0
- package/dist/esm/modules/tide-js/Flow/AuthenticationFlows/dCMKPasswordFlow.js +132 -0
- package/dist/esm/modules/tide-js/Flow/AuthenticationFlows/dCMKPasswordFlow.js.map +1 -0
- package/dist/esm/modules/tide-js/Flow/AuthenticationFlows/dCMKPasswordlessFlow.js +77 -0
- package/dist/esm/modules/tide-js/Flow/AuthenticationFlows/dCMKPasswordlessFlow.js.map +1 -0
- package/dist/esm/modules/tide-js/Flow/AuthenticationFlows/dCVKAuthenticationFlow.js +2 -0
- package/dist/esm/modules/tide-js/Flow/AuthenticationFlows/dCVKAuthenticationFlow.js.map +1 -0
- package/dist/esm/modules/tide-js/Flow/DecryptionFlows/dVVKDecryptionFlow.js +52 -0
- package/dist/esm/modules/tide-js/Flow/DecryptionFlows/dVVKDecryptionFlow.js.map +1 -0
- package/dist/esm/modules/tide-js/Flow/EncryptionFlows/AuthorizedEncryptionFlow.js +174 -0
- package/dist/esm/modules/tide-js/Flow/EncryptionFlows/AuthorizedEncryptionFlow.js.map +1 -0
- package/dist/esm/modules/tide-js/Flow/SigningFlows/AuthorizedSigningFlow.js +43 -0
- package/dist/esm/modules/tide-js/Flow/SigningFlows/AuthorizedSigningFlow.js.map +1 -0
- package/dist/esm/modules/tide-js/Flow/SigningFlows/dTestVVkSigningFlow.js +64 -0
- package/dist/esm/modules/tide-js/Flow/SigningFlows/dTestVVkSigningFlow.js.map +1 -0
- package/dist/esm/modules/tide-js/Flow/SigningFlows/dVVKSigningFlow.js +67 -0
- package/dist/esm/modules/tide-js/Flow/SigningFlows/dVVKSigningFlow.js.map +1 -0
- package/dist/esm/modules/tide-js/Flow/SigningFlows/dVVKSigningFlow_DEPRECATED.js +61 -0
- package/dist/esm/modules/tide-js/Flow/SigningFlows/dVVKSigningFlow_DEPRECATED.js.map +1 -0
- package/dist/esm/modules/tide-js/Flow/SimulatorFlow.js +51 -0
- package/dist/esm/modules/tide-js/Flow/SimulatorFlow.js.map +1 -0
- package/dist/esm/modules/tide-js/Flow/VoucherFlows/VoucherFlow.js +45 -0
- package/dist/esm/modules/tide-js/Flow/VoucherFlows/VoucherFlow.js.map +1 -0
- package/dist/esm/modules/tide-js/Flow/dAccountRecoveryFlow.js +89 -0
- package/dist/esm/modules/tide-js/Flow/dAccountRecoveryFlow.js.map +1 -0
- package/dist/esm/modules/tide-js/Flow/dKeyGenerationFlow.js +213 -0
- package/dist/esm/modules/tide-js/Flow/dKeyGenerationFlow.js.map +1 -0
- package/dist/esm/modules/tide-js/Math/DecryptRequest.js +46 -0
- package/dist/esm/modules/tide-js/Math/DecryptRequest.js.map +1 -0
- package/dist/esm/modules/tide-js/Math/EncryptRequest.js +90 -0
- package/dist/esm/modules/tide-js/Math/EncryptRequest.js.map +1 -0
- package/dist/esm/modules/tide-js/Math/KeyAuthentication.js +211 -0
- package/dist/esm/modules/tide-js/Math/KeyAuthentication.js.map +1 -0
- package/dist/esm/modules/tide-js/Math/KeyDecryption.js +15 -0
- package/dist/esm/modules/tide-js/Math/KeyDecryption.js.map +1 -0
- package/dist/esm/modules/tide-js/Math/KeyGeneration.js +141 -0
- package/dist/esm/modules/tide-js/Math/KeyGeneration.js.map +1 -0
- package/dist/esm/modules/tide-js/Math/KeySigning.js +20 -0
- package/dist/esm/modules/tide-js/Math/KeySigning.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/AdminAuthorization.js +79 -0
- package/dist/esm/modules/tide-js/Models/AdminAuthorization.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/AuthRequest.js +63 -0
- package/dist/esm/modules/tide-js/Models/AuthRequest.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/AuthorizationBuilder.js +55 -0
- package/dist/esm/modules/tide-js/Models/AuthorizationBuilder.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/BaseTideRequest.js +103 -0
- package/dist/esm/modules/tide-js/Models/BaseTideRequest.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Cardano/CardanoTxBody.js +195 -0
- package/dist/esm/modules/tide-js/Models/Cardano/CardanoTxBody.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Datum.js +38 -0
- package/dist/esm/modules/tide-js/Models/Datum.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Doken.js +134 -0
- package/dist/esm/modules/tide-js/Models/Doken.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/EnclaveEntry.js +44 -0
- package/dist/esm/modules/tide-js/Models/EnclaveEntry.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Infos/KeyInfo.js +43 -0
- package/dist/esm/modules/tide-js/Models/Infos/KeyInfo.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Infos/OrkInfo.js +50 -0
- package/dist/esm/modules/tide-js/Models/Infos/OrkInfo.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/InitializationCertificate.js +32 -0
- package/dist/esm/modules/tide-js/Models/InitializationCertificate.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/ModelRegistry.js +169 -0
- package/dist/esm/modules/tide-js/Models/ModelRegistry.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyAuth/Authenticate/AuthenticateResponse.js +31 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyAuth/Authenticate/AuthenticateResponse.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyAuth/Convert/CMKConvertResponse.js +33 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyAuth/Convert/CMKConvertResponse.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyAuth/Convert/ConvertRememberedResponse.js +33 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyAuth/Convert/ConvertRememberedResponse.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedCMKConvertResponse.js +31 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedCMKConvertResponse.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedConvertRememberedResponse.js +34 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedConvertRememberedResponse.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedPrismConvertResponse.js +34 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedPrismConvertResponse.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyAuth/Convert/PrismConvertResponse.js +33 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyAuth/Convert/PrismConvertResponse.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyGen/GenShard/DecryptedGenShardResponse.js +46 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyGen/GenShard/DecryptedGenShardResponse.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyGen/GenShard/GenShardResponse.js +31 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyGen/GenShard/GenShardResponse.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyGen/SetShard/DecryptedSetShardResponse.js +36 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyGen/SetShard/DecryptedSetShardResponse.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyGen/SetShard/SetShardResponse.js +28 -0
- package/dist/esm/modules/tide-js/Models/Responses/KeyGen/SetShard/SetShardResponse.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Responses/Reservation/ReservationConfirmation.js +23 -0
- package/dist/esm/modules/tide-js/Models/Responses/Reservation/ReservationConfirmation.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Responses/Vendor/VoucherResponse.js +38 -0
- package/dist/esm/modules/tide-js/Models/Responses/Vendor/VoucherResponse.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Rules/RuleSettingSignRequest.js +75 -0
- package/dist/esm/modules/tide-js/Models/Rules/RuleSettingSignRequest.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Rules/RuleSettings.js +25 -0
- package/dist/esm/modules/tide-js/Models/Rules/RuleSettings.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/SerializedField.js +61 -0
- package/dist/esm/modules/tide-js/Models/SerializedField.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/Transactions/CardanoTxBodySignRequest.js +51 -0
- package/dist/esm/modules/tide-js/Models/Transactions/CardanoTxBodySignRequest.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/VendorData.js +30 -0
- package/dist/esm/modules/tide-js/Models/VendorData.js.map +1 -0
- package/dist/esm/modules/tide-js/Models/VendorSettings.js +23 -0
- package/dist/esm/modules/tide-js/Models/VendorSettings.js.map +1 -0
- package/dist/esm/modules/tide-js/RulesEngine/RuleEngineService.js +89 -0
- package/dist/esm/modules/tide-js/RulesEngine/RuleEngineService.js.map +1 -0
- package/dist/esm/modules/tide-js/RulesEngine/helperFunctions.js +69 -0
- package/dist/esm/modules/tide-js/RulesEngine/helperFunctions.js.map +1 -0
- package/dist/esm/modules/tide-js/RulesEngine/jsonHelpers.js +64 -0
- package/dist/esm/modules/tide-js/RulesEngine/jsonHelpers.js.map +1 -0
- package/dist/esm/modules/tide-js/RulesEngine/thresholdRules.js +100 -0
- package/dist/esm/modules/tide-js/RulesEngine/thresholdRules.js.map +1 -0
- package/dist/esm/modules/tide-js/Tests/AccountRecovery.js +52 -0
- package/dist/esm/modules/tide-js/Tests/AccountRecovery.js.map +1 -0
- package/dist/esm/modules/tide-js/Tests/Components.js +15 -0
- package/dist/esm/modules/tide-js/Tests/Components.js.map +1 -0
- package/dist/esm/modules/tide-js/Tests/Encryption.js +164 -0
- package/dist/esm/modules/tide-js/Tests/Encryption.js.map +1 -0
- package/dist/esm/modules/tide-js/Tests/KeyAuthentication.js +106 -0
- package/dist/esm/modules/tide-js/Tests/KeyAuthentication.js.map +1 -0
- package/dist/esm/modules/tide-js/Tests/KeyGeneration.js +213 -0
- package/dist/esm/modules/tide-js/Tests/KeyGeneration.js.map +1 -0
- package/dist/esm/modules/tide-js/Tests/StripeLicensing.js +34 -0
- package/dist/esm/modules/tide-js/Tests/StripeLicensing.js.map +1 -0
- package/dist/esm/modules/tide-js/Tests/TideKey.js +11 -0
- package/dist/esm/modules/tide-js/Tests/TideKey.js.map +1 -0
- package/dist/esm/modules/tide-js/Tests/Verifier.js +9 -0
- package/dist/esm/modules/tide-js/Tests/Verifier.js.map +1 -0
- package/dist/esm/modules/tide-js/Tests/index.js +37 -0
- package/dist/esm/modules/tide-js/Tests/index.js.map +1 -0
- package/dist/esm/modules/tide-js/Tools/Utils.js +273 -0
- package/dist/esm/modules/tide-js/Tools/Utils.js.map +1 -0
- package/dist/esm/modules/tide-js/index.js +27 -0
- package/dist/esm/modules/tide-js/index.js.map +1 -0
- package/dist/esm/src/IAMService.js +272 -0
- package/dist/esm/src/IAMService.js.map +1 -0
- package/dist/esm/src/index.js +8 -0
- package/dist/esm/src/index.js.map +1 -0
- package/dist/silent-check-sso.html +1 -0
- package/dist/types/lib/tidecloak.d.ts +36 -0
- package/dist/types/modules/tide-js/Clients/ClientBase.d.ts +72 -0
- package/dist/types/modules/tide-js/Clients/NetworkClient.d.ts +23 -0
- package/dist/types/modules/tide-js/Clients/NodeClient.d.ts +187 -0
- package/dist/types/modules/tide-js/Clients/PollingClient.d.ts +22 -0
- package/dist/types/modules/tide-js/Clients/VoucherClient.d.ts +12 -0
- package/dist/types/modules/tide-js/Cryptide/Components/BaseComponent.d.ts +59 -0
- package/dist/types/modules/tide-js/Cryptide/Components/ComponentRegistry.d.ts +19 -0
- package/dist/types/modules/tide-js/Cryptide/Components/Schemes/AES/AESScheme.d.ts +4 -0
- package/dist/types/modules/tide-js/Cryptide/Components/Schemes/BaseScheme.d.ts +10 -0
- package/dist/types/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Components.d.ts +51 -0
- package/dist/types/modules/tide-js/Cryptide/Components/Schemes/Ed25519/Ed25519Scheme.d.ts +10 -0
- package/dist/types/modules/tide-js/Cryptide/Components/Schemes/SchemeRegistry.d.ts +3 -0
- package/dist/types/modules/tide-js/Cryptide/Ed25519.d.ts +114 -0
- package/dist/types/modules/tide-js/Cryptide/Encryption/AES.d.ts +30 -0
- package/dist/types/modules/tide-js/Cryptide/Encryption/DH.d.ts +12 -0
- package/dist/types/modules/tide-js/Cryptide/Encryption/ElGamal.d.ts +20 -0
- package/dist/types/modules/tide-js/Cryptide/Hashing/H2P.d.ts +7 -0
- package/dist/types/modules/tide-js/Cryptide/Hashing/Hash.d.ts +16 -0
- package/dist/types/modules/tide-js/Cryptide/Interpolation.d.ts +47 -0
- package/dist/types/modules/tide-js/Cryptide/Math.d.ts +45 -0
- package/dist/types/modules/tide-js/Cryptide/Serialization.d.ts +195 -0
- package/dist/types/modules/tide-js/Cryptide/Signing/BlindSig.d.ts +32 -0
- package/dist/types/modules/tide-js/Cryptide/Signing/EdDSA.d.ts +24 -0
- package/dist/types/modules/tide-js/Cryptide/Signing/TideSignature.d.ts +50 -0
- package/dist/types/modules/tide-js/Cryptide/TideKey.d.ts +24 -0
- package/dist/types/modules/tide-js/Cryptide/TideMemoryObjects.d.ts +15 -0
- package/dist/types/modules/tide-js/Cryptide/index.d.ts +10 -0
- package/dist/types/modules/tide-js/Flow/AuthenticationFlows/dCMKAcceptAdminFlow.d.ts +2 -0
- package/dist/types/modules/tide-js/Flow/AuthenticationFlows/dCMKPasswordFlow.d.ts +64 -0
- package/dist/types/modules/tide-js/Flow/AuthenticationFlows/dCMKPasswordlessFlow.d.ts +37 -0
- package/dist/types/modules/tide-js/Flow/AuthenticationFlows/dCVKAuthenticationFlow.d.ts +1 -0
- package/dist/types/modules/tide-js/Flow/DecryptionFlows/dVVKDecryptionFlow.d.ts +31 -0
- package/dist/types/modules/tide-js/Flow/EncryptionFlows/AuthorizedEncryptionFlow.d.ts +75 -0
- package/dist/types/modules/tide-js/Flow/SigningFlows/AuthorizedSigningFlow.d.ts +51 -0
- package/dist/types/modules/tide-js/Flow/SigningFlows/dTestVVkSigningFlow.d.ts +25 -0
- package/dist/types/modules/tide-js/Flow/SigningFlows/dVVKSigningFlow.d.ts +32 -0
- package/dist/types/modules/tide-js/Flow/SigningFlows/dVVKSigningFlow_DEPRECATED.d.ts +30 -0
- package/dist/types/modules/tide-js/Flow/SimulatorFlow.d.ts +13 -0
- package/dist/types/modules/tide-js/Flow/VoucherFlows/VoucherFlow.d.ts +23 -0
- package/dist/types/modules/tide-js/Flow/dAccountRecoveryFlow.d.ts +41 -0
- package/dist/types/modules/tide-js/Flow/dKeyGenerationFlow.d.ts +104 -0
- package/dist/types/modules/tide-js/Math/DecryptRequest.d.ts +19 -0
- package/dist/types/modules/tide-js/Math/EncryptRequest.d.ts +57 -0
- package/dist/types/modules/tide-js/Math/KeyAuthentication.d.ts +95 -0
- package/dist/types/modules/tide-js/Math/KeyDecryption.d.ts +7 -0
- package/dist/types/modules/tide-js/Math/KeyGeneration.d.ts +42 -0
- package/dist/types/modules/tide-js/Math/KeySigning.d.ts +10 -0
- package/dist/types/modules/tide-js/Models/AdminAuthorization.d.ts +16 -0
- package/dist/types/modules/tide-js/Models/AuthRequest.d.ts +28 -0
- package/dist/types/modules/tide-js/Models/AuthorizationBuilder.d.ts +17 -0
- package/dist/types/modules/tide-js/Models/BaseTideRequest.d.ts +52 -0
- package/dist/types/modules/tide-js/Models/Cardano/CardanoTxBody.d.ts +16 -0
- package/dist/types/modules/tide-js/Models/Datum.d.ts +14 -0
- package/dist/types/modules/tide-js/Models/Doken.d.ts +52 -0
- package/dist/types/modules/tide-js/Models/EnclaveEntry.d.ts +22 -0
- package/dist/types/modules/tide-js/Models/Infos/KeyInfo.d.ts +30 -0
- package/dist/types/modules/tide-js/Models/Infos/OrkInfo.d.ts +24 -0
- package/dist/types/modules/tide-js/Models/InitializationCertificate.d.ts +21 -0
- package/dist/types/modules/tide-js/Models/ModelRegistry.d.ts +15 -0
- package/dist/types/modules/tide-js/Models/Responses/KeyAuth/Authenticate/AuthenticateResponse.d.ts +9 -0
- package/dist/types/modules/tide-js/Models/Responses/KeyAuth/Convert/CMKConvertResponse.d.ts +11 -0
- package/dist/types/modules/tide-js/Models/Responses/KeyAuth/Convert/ConvertRememberedResponse.d.ts +11 -0
- package/dist/types/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedCMKConvertResponse.d.ts +9 -0
- package/dist/types/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedConvertRememberedResponse.d.ts +11 -0
- package/dist/types/modules/tide-js/Models/Responses/KeyAuth/Convert/DecryptedPrismConvertResponse.d.ts +12 -0
- package/dist/types/modules/tide-js/Models/Responses/KeyAuth/Convert/PrismConvertResponse.d.ts +11 -0
- package/dist/types/modules/tide-js/Models/Responses/KeyGen/GenShard/DecryptedGenShardResponse.d.ts +18 -0
- package/dist/types/modules/tide-js/Models/Responses/KeyGen/GenShard/GenShardResponse.d.ts +10 -0
- package/dist/types/modules/tide-js/Models/Responses/KeyGen/SetShard/DecryptedSetShardResponse.d.ts +10 -0
- package/dist/types/modules/tide-js/Models/Responses/KeyGen/SetShard/SetShardResponse.d.ts +8 -0
- package/dist/types/modules/tide-js/Models/Responses/Reservation/ReservationConfirmation.d.ts +14 -0
- package/dist/types/modules/tide-js/Models/Responses/Vendor/VoucherResponse.d.ts +25 -0
- package/dist/types/modules/tide-js/Models/Rules/RuleSettingSignRequest.d.ts +39 -0
- package/dist/types/modules/tide-js/Models/Rules/RuleSettings.d.ts +12 -0
- package/dist/types/modules/tide-js/Models/SerializedField.d.ts +20 -0
- package/dist/types/modules/tide-js/Models/Transactions/CardanoTxBodySignRequest.d.ts +29 -0
- package/dist/types/modules/tide-js/Models/VendorData.d.ts +17 -0
- package/dist/types/modules/tide-js/Models/VendorSettings.d.ts +14 -0
- package/dist/types/modules/tide-js/RulesEngine/RuleEngineService.d.ts +25 -0
- package/dist/types/modules/tide-js/RulesEngine/helperFunctions.d.ts +7 -0
- package/dist/types/modules/tide-js/RulesEngine/jsonHelpers.d.ts +11 -0
- package/dist/types/modules/tide-js/RulesEngine/thresholdRules.d.ts +17 -0
- package/dist/types/modules/tide-js/Tests/AccountRecovery.d.ts +1 -0
- package/dist/types/modules/tide-js/Tests/Components.d.ts +1 -0
- package/dist/types/modules/tide-js/Tests/Encryption.d.ts +3 -0
- package/dist/types/modules/tide-js/Tests/KeyAuthentication.d.ts +2 -0
- package/dist/types/modules/tide-js/Tests/KeyGeneration.d.ts +4 -0
- package/dist/types/modules/tide-js/Tests/StripeLicensing.d.ts +2 -0
- package/dist/types/modules/tide-js/Tests/TideKey.d.ts +1 -0
- package/dist/types/modules/tide-js/Tests/Verifier.d.ts +1 -0
- package/dist/types/modules/tide-js/Tests/index.d.ts +32 -0
- package/dist/types/modules/tide-js/Tools/Utils.d.ts +34 -0
- package/dist/types/modules/tide-js/index.d.ts +8 -0
- package/dist/types/src/IAMService.d.ts +106 -0
- package/dist/types/src/index.d.ts +4 -0
- package/package.json +48 -0
- package/scripts/postinstall.js +43 -0
|
@@ -0,0 +1,285 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Tide Protocol - Infrastructure for a TRUE Zero-Trust paradigm
|
|
4
|
+
// Copyright (C) 2022 Tide Foundation Ltd
|
|
5
|
+
//
|
|
6
|
+
// This program is free software and is subject to the terms of
|
|
7
|
+
// the Tide Community Open Code License as published by the
|
|
8
|
+
// Tide Foundation Limited. You may modify it and redistribute
|
|
9
|
+
// it in accordance with and subject to the terms of that License.
|
|
10
|
+
// This program is distributed WITHOUT WARRANTY of any kind,
|
|
11
|
+
// including without any implied warranty of MERCHANTABILITY or
|
|
12
|
+
// FITNESS FOR A PARTICULAR PURPOSE.
|
|
13
|
+
// See the Tide Community Open Code License for more details.
|
|
14
|
+
// You should have received a copy of the Tide Community Open
|
|
15
|
+
// Code License along with this program.
|
|
16
|
+
// If not, see https://tide.org/licenses_tcoc2-0-0-en
|
|
17
|
+
//
|
|
18
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
19
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.Max = exports.Threshold = void 0;
|
|
23
|
+
exports.CurrentTime = CurrentTime;
|
|
24
|
+
exports.WaitForNumberofORKs = WaitForNumberofORKs;
|
|
25
|
+
exports.removeRandomElements = removeRandomElements;
|
|
26
|
+
exports.randBetween = randBetween;
|
|
27
|
+
exports.sortORKs = sortORKs;
|
|
28
|
+
exports.randomiseEmails = randomiseEmails;
|
|
29
|
+
const Serialization_js_1 = require("../Cryptide/Serialization.js");
|
|
30
|
+
const OrkInfo_js_1 = __importDefault(require("../Models/Infos/OrkInfo.js"));
|
|
31
|
+
exports.Threshold = 14;
|
|
32
|
+
exports.Max = 20;
|
|
33
|
+
function CurrentTime() {
|
|
34
|
+
return Math.floor(Date.now() / 1000); // this will be affected by the 2038 problem
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* This probably won't work at first
|
|
38
|
+
* @param {Promise[]} promises
|
|
39
|
+
* @param {string} keyType
|
|
40
|
+
* @param {number} amountRequired
|
|
41
|
+
* @param {number} customTimeout
|
|
42
|
+
* @param {function} customPromiseChecker
|
|
43
|
+
* @returns
|
|
44
|
+
*/
|
|
45
|
+
async function PromiseRace(promises, keyType, amountRequired, customTimeout = null, customPromiseChecker = null) {
|
|
46
|
+
let results = [];
|
|
47
|
+
let failed = [];
|
|
48
|
+
let timeoutReached = false;
|
|
49
|
+
let initLength = promises.length;
|
|
50
|
+
// Function to set a timeout promise
|
|
51
|
+
const timeout = (ms, id) => new Promise(resolve => setTimeout(resolve, ms, id));
|
|
52
|
+
// Start the timeout checks
|
|
53
|
+
const oneSecondCheck = timeout(1000, '1s');
|
|
54
|
+
const timeoutLength = customTimeout == null ? 8000 : customTimeout;
|
|
55
|
+
const timeoutCheck = timeout(timeoutLength, 'ts');
|
|
56
|
+
promises.push(oneSecondCheck);
|
|
57
|
+
promises.push(timeoutCheck);
|
|
58
|
+
let oneSecCheckPassed = false;
|
|
59
|
+
let fullyCompletedPromises = 0;
|
|
60
|
+
while (promises.length > 0 && fullyCompletedPromises < initLength) {
|
|
61
|
+
const racePromises = promises.map((p, index) => p.then(result => ({ result, index })).catch(error => ({ error, index })));
|
|
62
|
+
const fastestPromise = await Promise.race(racePromises);
|
|
63
|
+
if (fastestPromise.result === '1s') {
|
|
64
|
+
oneSecCheckPassed = true;
|
|
65
|
+
}
|
|
66
|
+
else if (fastestPromise.result === 'ts') {
|
|
67
|
+
if (fullyCompletedPromises >= amountRequired) {
|
|
68
|
+
break;
|
|
69
|
+
}
|
|
70
|
+
else if (failed.length > 0) {
|
|
71
|
+
console.log("Errors in flow:");
|
|
72
|
+
failed.forEach(f => console.error(f));
|
|
73
|
+
break;
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
timeoutReached = true;
|
|
77
|
+
break;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
else {
|
|
81
|
+
if (!fastestPromise.error) {
|
|
82
|
+
if (customPromiseChecker != null) {
|
|
83
|
+
if (customPromiseChecker(fastestPromise.result)) {
|
|
84
|
+
fullyCompletedPromises++;
|
|
85
|
+
}
|
|
86
|
+
results.push(fastestPromise.result); // Promise resolved successfully
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
fullyCompletedPromises++;
|
|
90
|
+
results.push(fastestPromise.result); // Promise resolved successfully
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
failed.push(fastestPromise.error); // Promise rejected
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
if (oneSecCheckPassed && fullyCompletedPromises >= amountRequired)
|
|
98
|
+
break;
|
|
99
|
+
// Remove the resolved or rejected promise from the list
|
|
100
|
+
promises.splice(fastestPromise.index, 1);
|
|
101
|
+
}
|
|
102
|
+
// Error checking and finalization
|
|
103
|
+
if (fullyCompletedPromises >= amountRequired) {
|
|
104
|
+
return results; // Return results if threshold amount is met
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
if (failed.some(ex => ex === "Too many attempts")) {
|
|
108
|
+
throw Error("enclave.throttled");
|
|
109
|
+
}
|
|
110
|
+
else if (failed.length > 0) {
|
|
111
|
+
throw Error(failed[0]);
|
|
112
|
+
}
|
|
113
|
+
else if (timeoutReached) {
|
|
114
|
+
throw Error("enclave.thresholdTimeoutFailure");
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
throw Error(keyType + " Orks for this account are down");
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
*
|
|
123
|
+
* @param {OrkInfo[]} orkList_Ref List of ORK infos
|
|
124
|
+
* @param {Promise[]} pre_responses Unresolved Promises
|
|
125
|
+
* @param {string} keyType CMK, CVK?
|
|
126
|
+
* @param {number} number Amount of ORKs to wait for
|
|
127
|
+
* @param {number} amountRequired
|
|
128
|
+
* @param {(0 | 1)[]} bitwise_p
|
|
129
|
+
* @param {*[]} optionalArray
|
|
130
|
+
* @param {number} customTimeout
|
|
131
|
+
* @param {function} customPromiseChecker
|
|
132
|
+
* @returns
|
|
133
|
+
*/
|
|
134
|
+
async function WaitForNumberofORKs(orkList_Ref, pre_responses, keyType, amountRequired = exports.Threshold, bitwise_p = null, optionalArray = null, customTimeout = null, customPromiseChecker = null) {
|
|
135
|
+
// See Utils.cs on Midgard Core for how this can be improved
|
|
136
|
+
// Basically, you don't need indexes in the responses, just use .indexOf
|
|
137
|
+
const unsortedResponses = await PromiseRace(pre_responses, keyType, amountRequired, customTimeout, customPromiseChecker);
|
|
138
|
+
const sortedResponses = unsortedResponses.sort((a, b) => a.index - b.index);
|
|
139
|
+
let bitwise = [];
|
|
140
|
+
if (bitwise_p != null) {
|
|
141
|
+
// bitwise provided, this func is being called from a sequential flow
|
|
142
|
+
// ork array will be modified
|
|
143
|
+
// bitwise returned will be new/updated bitwise
|
|
144
|
+
// Get an array of active ork indexs (used to update bitwise)
|
|
145
|
+
let previousActiveOrkIndexes = [];
|
|
146
|
+
bitwise_p.forEach((b, i) => {
|
|
147
|
+
if (b == 1)
|
|
148
|
+
previousActiveOrkIndexes.push(i);
|
|
149
|
+
});
|
|
150
|
+
// This is too confusing to try and explain. Ask chatgpt.
|
|
151
|
+
// Hint: We have to skip existing unavilable orks in the bitwise and
|
|
152
|
+
// take the indexes in the unresponsive list as the nth active bitwise element to switch off
|
|
153
|
+
let currentUnresponsiveOrkIndexs = []; // unresponsive ork indexes from an array that previpusly contained only active orks
|
|
154
|
+
let i = 0, j = 0;
|
|
155
|
+
console.log("total: " + orkList_Ref.length);
|
|
156
|
+
console.log("responded: " + sortedResponses.length);
|
|
157
|
+
while (i < orkList_Ref.length && j < sortedResponses.length) {
|
|
158
|
+
if (i === sortedResponses[j].index) {
|
|
159
|
+
i++;
|
|
160
|
+
j++;
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
currentUnresponsiveOrkIndexs.push(i);
|
|
164
|
+
console.log(orkList_Ref[i].orkID + ":" + orkList_Ref[i].orkURL + " is slow");
|
|
165
|
+
i++;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
// Add any remaining elements from orkLiftRef
|
|
169
|
+
while (i < orkList_Ref.length) {
|
|
170
|
+
currentUnresponsiveOrkIndexs.push(i);
|
|
171
|
+
console.log(orkList_Ref[i].orkID + ":" + orkList_Ref[i].orkURL + " is slow");
|
|
172
|
+
i++;
|
|
173
|
+
}
|
|
174
|
+
console.log("didn't respond: " + currentUnresponsiveOrkIndexs.length);
|
|
175
|
+
// TODO: once this works, shorten the code
|
|
176
|
+
bitwise = bitwise_p.slice();
|
|
177
|
+
let occurrenceCount = 0;
|
|
178
|
+
let indexCount = 0;
|
|
179
|
+
for (let i = 0; i < bitwise.length; i++) {
|
|
180
|
+
if (bitwise[i] === 1) {
|
|
181
|
+
occurrenceCount++;
|
|
182
|
+
if (occurrenceCount === currentUnresponsiveOrkIndexs[indexCount] + 1) { // + 1 as we are converting a index to a counter
|
|
183
|
+
bitwise[i] = 0;
|
|
184
|
+
indexCount++;
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
else {
|
|
190
|
+
bitwise = Array(exports.Max).fill(0).map((_, i) => sortedResponses.every(resp => resp.index != i) ? 0 : 1);
|
|
191
|
+
}
|
|
192
|
+
const newOrkList = orkList_Ref.filter((_, i) => !sortedResponses.every(resp => resp.index != i)); // if ork at index 0 does not include a response with index 0, remove ork
|
|
193
|
+
orkList_Ref.splice(0, orkList_Ref.length);
|
|
194
|
+
newOrkList.forEach(el => orkList_Ref.push(el));
|
|
195
|
+
if (optionalArray != null) {
|
|
196
|
+
const newOptArray = optionalArray.filter((_, i) => !sortedResponses.every(resp => resp.index != i)); // modifies array!
|
|
197
|
+
optionalArray.splice(0, optionalArray.length);
|
|
198
|
+
newOptArray.forEach(el => optionalArray.push(el));
|
|
199
|
+
}
|
|
200
|
+
// remove index field from json, return the OTHER (unknown to us) field
|
|
201
|
+
const cleanedResponses = sortedResponses.map(resp => {
|
|
202
|
+
for (let key in resp) {
|
|
203
|
+
if (resp.hasOwnProperty(key) && key !== "index" && key !== "tag")
|
|
204
|
+
return resp[key];
|
|
205
|
+
}
|
|
206
|
+
throw Error("WaitForThresholdNumberofORKs should only be used on NodeClient responses that return an index in the JSON");
|
|
207
|
+
});
|
|
208
|
+
return { fulfilledResponses: cleanedResponses, bitwise };
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
*
|
|
212
|
+
* @param {any[]} array
|
|
213
|
+
* @param {number} targetArraySize
|
|
214
|
+
* @returns {any[]}
|
|
215
|
+
*/
|
|
216
|
+
function removeRandomElements(array, targetArraySize) {
|
|
217
|
+
let newArray = array.slice();
|
|
218
|
+
// Check if the array size is > n
|
|
219
|
+
if (newArray.length < targetArraySize) {
|
|
220
|
+
throw new Error("Array size must be greater than n.");
|
|
221
|
+
}
|
|
222
|
+
else if (newArray.length == targetArraySize)
|
|
223
|
+
return newArray;
|
|
224
|
+
// Randomly remove elements until the array size is n
|
|
225
|
+
while (newArray.length > targetArraySize) {
|
|
226
|
+
let randomIndex = Math.floor(Math.random() * newArray.length);
|
|
227
|
+
newArray.splice(randomIndex, 1);
|
|
228
|
+
}
|
|
229
|
+
return newArray;
|
|
230
|
+
}
|
|
231
|
+
function randBetween(x, y) {
|
|
232
|
+
// Swapping x and y if x is greater than y
|
|
233
|
+
x = BigInt(x);
|
|
234
|
+
y = BigInt(y);
|
|
235
|
+
if (x > y) {
|
|
236
|
+
const temp = x;
|
|
237
|
+
x = y;
|
|
238
|
+
y = temp;
|
|
239
|
+
}
|
|
240
|
+
// Generating random BigInt between x and y
|
|
241
|
+
const range = y - x + BigInt(1);
|
|
242
|
+
const rand = BigInt(Math.floor(Math.random() * Number(range)));
|
|
243
|
+
return rand + x;
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* @param {OrkInfo[]} orks
|
|
247
|
+
*/
|
|
248
|
+
function sortORKs(orks) {
|
|
249
|
+
const orkRef = orks.slice(); // don't modify original
|
|
250
|
+
return orkRef.sort((a, b) => {
|
|
251
|
+
if (BigInt(a.orkID) < BigInt(b.orkID))
|
|
252
|
+
return -1;
|
|
253
|
+
if (BigInt(a.orkID) > BigInt(b.orkID))
|
|
254
|
+
return 1;
|
|
255
|
+
return 0;
|
|
256
|
+
});
|
|
257
|
+
}
|
|
258
|
+
function randomiseEmails(arr) {
|
|
259
|
+
// Thanks ChatGPT
|
|
260
|
+
// Validation
|
|
261
|
+
if (arr == null) {
|
|
262
|
+
return Array(exports.Max).fill(null);
|
|
263
|
+
}
|
|
264
|
+
// Prepare the output array
|
|
265
|
+
let output = [];
|
|
266
|
+
const repetitions = Math.floor(exports.Max / arr.length); // Base number of repetitions for each element
|
|
267
|
+
let remainingSpaces = exports.Max % arr.length; // Additional repetitions needed
|
|
268
|
+
// Fill the output array
|
|
269
|
+
arr.forEach(item => {
|
|
270
|
+
for (let i = 0; i < repetitions; i++) {
|
|
271
|
+
output.push(item);
|
|
272
|
+
}
|
|
273
|
+
if (remainingSpaces > 0) {
|
|
274
|
+
output.push(item);
|
|
275
|
+
remainingSpaces--;
|
|
276
|
+
}
|
|
277
|
+
});
|
|
278
|
+
// Shuffle the output array (Fisher-Yates shuffle)
|
|
279
|
+
for (let i = output.length - 1; i > 0; i--) {
|
|
280
|
+
const j = Math.floor(Math.random() * (i + 1));
|
|
281
|
+
[output[i], output[j]] = [output[j], output[i]]; // Swap elements
|
|
282
|
+
}
|
|
283
|
+
return output;
|
|
284
|
+
}
|
|
285
|
+
//# sourceMappingURL=Utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Utils.js","sourceRoot":"","sources":["../../../../../modules/tide-js/Tools/Utils.js"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Tide Protocol - Infrastructure for a TRUE Zero-Trust paradigm
|
|
4
|
+
// Copyright (C) 2022 Tide Foundation Ltd
|
|
5
|
+
//
|
|
6
|
+
// This program is free software and is subject to the terms of
|
|
7
|
+
// the Tide Community Open Code License as published by the
|
|
8
|
+
// Tide Foundation Limited. You may modify it and redistribute
|
|
9
|
+
// it in accordance with and subject to the terms of that License.
|
|
10
|
+
// This program is distributed WITHOUT WARRANTY of any kind,
|
|
11
|
+
// including without any implied warranty of MERCHANTABILITY or
|
|
12
|
+
// FITNESS FOR A PARTICULAR PURPOSE.
|
|
13
|
+
// See the Tide Community Open Code License for more details.
|
|
14
|
+
// You should have received a copy of the Tide Community Open
|
|
15
|
+
// Code License along with this program.
|
|
16
|
+
// If not, see https://tide.org/licenses_tcoc2-0-0-en
|
|
17
|
+
//
|
|
18
|
+
// discord - @mpz
|
|
19
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
20
|
+
if (k2 === undefined) k2 = k;
|
|
21
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
22
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
23
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
24
|
+
}
|
|
25
|
+
Object.defineProperty(o, k2, desc);
|
|
26
|
+
}) : (function(o, m, k, k2) {
|
|
27
|
+
if (k2 === undefined) k2 = k;
|
|
28
|
+
o[k2] = m[k];
|
|
29
|
+
}));
|
|
30
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
31
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
32
|
+
}) : function(o, v) {
|
|
33
|
+
o["default"] = v;
|
|
34
|
+
});
|
|
35
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
36
|
+
var ownKeys = function(o) {
|
|
37
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
38
|
+
var ar = [];
|
|
39
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
40
|
+
return ar;
|
|
41
|
+
};
|
|
42
|
+
return ownKeys(o);
|
|
43
|
+
};
|
|
44
|
+
return function (mod) {
|
|
45
|
+
if (mod && mod.__esModule) return mod;
|
|
46
|
+
var result = {};
|
|
47
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
48
|
+
__setModuleDefault(result, mod);
|
|
49
|
+
return result;
|
|
50
|
+
};
|
|
51
|
+
})();
|
|
52
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
53
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
54
|
+
};
|
|
55
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
56
|
+
exports.TideJSVersion = exports.Utils = exports.dKeyGenerationFlow = exports.OrkInfo = exports.SimulatorFlow = exports.SimClient = exports.NodeClient = void 0;
|
|
57
|
+
var NodeClient_js_1 = require("./Clients/NodeClient.js");
|
|
58
|
+
Object.defineProperty(exports, "NodeClient", { enumerable: true, get: function () { return __importDefault(NodeClient_js_1).default; } });
|
|
59
|
+
var NetworkClient_js_1 = require("./Clients/NetworkClient.js");
|
|
60
|
+
Object.defineProperty(exports, "SimClient", { enumerable: true, get: function () { return __importDefault(NetworkClient_js_1).default; } });
|
|
61
|
+
var SimulatorFlow_js_1 = require("./Flow/SimulatorFlow.js");
|
|
62
|
+
Object.defineProperty(exports, "SimulatorFlow", { enumerable: true, get: function () { return __importDefault(SimulatorFlow_js_1).default; } });
|
|
63
|
+
var OrkInfo_js_1 = require("./Models/Infos/OrkInfo.js");
|
|
64
|
+
Object.defineProperty(exports, "OrkInfo", { enumerable: true, get: function () { return __importDefault(OrkInfo_js_1).default; } });
|
|
65
|
+
var dKeyGenerationFlow_js_1 = require("./Flow/dKeyGenerationFlow.js");
|
|
66
|
+
Object.defineProperty(exports, "dKeyGenerationFlow", { enumerable: true, get: function () { return __importDefault(dKeyGenerationFlow_js_1).default; } });
|
|
67
|
+
const Utils = __importStar(require("./Tools/Utils.js"));
|
|
68
|
+
exports.Utils = Utils;
|
|
69
|
+
const TideJSVersion = "0.0.1";
|
|
70
|
+
exports.TideJSVersion = TideJSVersion;
|
|
71
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../modules/tide-js/index.js"],"names":[],"mappings":";AAAA,GAAG;AACH,gEAAgE;AAChE,yCAAyC;AACzC,GAAG;AACH,gEAAgE;AAChE,4DAA4D;AAC5D,+DAA+D;AAC/D,kEAAkE;AAClE,6DAA6D;AAC7D,gEAAgE;AAChE,oCAAoC;AACpC,6DAA6D;AAC7D,8DAA8D;AAC9D,wCAAwC;AACxC,qDAAqD;AACrD,EAAE;AACF,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjB,yDAA+D;AAAtD,4HAAA,OAAO,OAAc;AAC9B,+DAAiE;AAAxD,8HAAA,OAAO,OAAa;AAC7B,4DAAmE;AAA1D,kIAAA,OAAO,OAAiB;AACjC,wDAA8D;AAArD,sHAAA,OAAO,OAAW;AAC3B,sEAA4E;AAAnE,4IAAA,OAAO,OAAsB;AAEtC,wDAA0C;AACjC,sBAAK;AAEd,MAAM,aAAa,GAAG,OAAO,CAAC;AACrB,sCAAa"}
|
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.IAMService = void 0;
|
|
7
|
+
const tidecloak_1 = __importDefault(require("../lib/tidecloak"));
|
|
8
|
+
/**
|
|
9
|
+
* Singleton IAMService wrapping the TideCloak client.
|
|
10
|
+
*
|
|
11
|
+
* Usage A: pass an onReady callback directly
|
|
12
|
+
* ```js
|
|
13
|
+
* import { IAMService } from 'tidecloak-js';
|
|
14
|
+
* import config from './tidecloak.config.json';
|
|
15
|
+
*
|
|
16
|
+
* IAMService.initIAM(config, authenticated => {
|
|
17
|
+
* if (!authenticated) IAMService.doLogin();
|
|
18
|
+
* }).catch(console.error);
|
|
19
|
+
* ```
|
|
20
|
+
*
|
|
21
|
+
* Usage B: attach multiple listeners, then init
|
|
22
|
+
* ```js
|
|
23
|
+
* IAMService
|
|
24
|
+
* .on('ready', auth => console.log('ready', auth))
|
|
25
|
+
* .on('authError', err => console.error('Auth failed', err));
|
|
26
|
+
*
|
|
27
|
+
* await IAMService.initIAM(config);
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
class IAMService {
|
|
31
|
+
constructor() {
|
|
32
|
+
this._tc = null;
|
|
33
|
+
this._config = null;
|
|
34
|
+
this._listeners = {};
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Register an event listener.
|
|
38
|
+
* @param {'ready'|'initError'|'authSuccess'|'authError'|'authRefreshSuccess'|'authRefreshError'|'logout'|'tokenExpired'} event
|
|
39
|
+
* @param {Function} handler
|
|
40
|
+
* @returns {this}
|
|
41
|
+
*/
|
|
42
|
+
on(event, handler) {
|
|
43
|
+
if (!this._listeners[event])
|
|
44
|
+
this._listeners[event] = [];
|
|
45
|
+
this._listeners[event].push(handler);
|
|
46
|
+
return this;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Unregister an event listener.
|
|
50
|
+
* @param {string} event
|
|
51
|
+
* @param {Function} handler
|
|
52
|
+
* @returns {this}
|
|
53
|
+
*/
|
|
54
|
+
off(event, handler) {
|
|
55
|
+
if (this._listeners[event]) {
|
|
56
|
+
this._listeners[event] = this._listeners[event].filter(fn => fn !== handler);
|
|
57
|
+
}
|
|
58
|
+
return this;
|
|
59
|
+
}
|
|
60
|
+
/** @private */
|
|
61
|
+
_emit(event, ...args) {
|
|
62
|
+
(this._listeners[event] || []).forEach(fn => {
|
|
63
|
+
try {
|
|
64
|
+
fn(event, ...args);
|
|
65
|
+
}
|
|
66
|
+
catch (e) {
|
|
67
|
+
console.error(`Error in "${event}" handler:`, e);
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Load TideCloak configuration and instantiate the client once.
|
|
73
|
+
* @param {Object} config - TideCloak configuration object.
|
|
74
|
+
* @returns {Promise<Object|null>} The loaded config, or null on failure.
|
|
75
|
+
*/
|
|
76
|
+
async loadConfig(config) {
|
|
77
|
+
if (this._tc)
|
|
78
|
+
return this._config;
|
|
79
|
+
if (!config || Object.keys(config).length === 0) {
|
|
80
|
+
console.warn("[loadConfig] empty config");
|
|
81
|
+
return null;
|
|
82
|
+
}
|
|
83
|
+
this._config = config;
|
|
84
|
+
try {
|
|
85
|
+
this._tc = new tidecloak_1.default({
|
|
86
|
+
url: config["auth-server-url"],
|
|
87
|
+
realm: config.realm,
|
|
88
|
+
clientId: config.resource,
|
|
89
|
+
vendorId: config.vendorId,
|
|
90
|
+
homeOrkUrl: config.homeOrkUrl,
|
|
91
|
+
clientOriginAuth: config['client-origin-auth-' + window.location.origin]
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
catch (err) {
|
|
95
|
+
console.error("[loadConfig] Failed to initialize TideCloak client:", err);
|
|
96
|
+
return null;
|
|
97
|
+
}
|
|
98
|
+
// wire Keycloak callbacks → our emitter
|
|
99
|
+
this._tc.onReady = auth => this._emit("ready", auth);
|
|
100
|
+
this._tc.onAuthSuccess = () => this._emit("authSuccess");
|
|
101
|
+
this._tc.onAuthError = err => this._emit("authError", err);
|
|
102
|
+
this._tc.onAuthRefreshSuccess = () => this._emit("authRefreshSuccess");
|
|
103
|
+
this._tc.onAuthRefreshError = err => this._emit("authRefreshError", err);
|
|
104
|
+
this._tc.onAuthLogout = () => this._emit("logout");
|
|
105
|
+
this._tc.onTokenExpired = () => this._emit("tokenExpired");
|
|
106
|
+
return this._config;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Initialize the TideCloak SSO client with silent SSO check.
|
|
110
|
+
* @param {Object} config - TideCloak configuration object.
|
|
111
|
+
* @param {Function} [onReady] - Optional callback for the 'ready' event.
|
|
112
|
+
* @returns {Promise<boolean>} true if authenticated, else false.
|
|
113
|
+
*/
|
|
114
|
+
async initIAM(config, onReady) {
|
|
115
|
+
console.debug("[IAMService] Initializing IAM...");
|
|
116
|
+
// register callback on "ready" if provided
|
|
117
|
+
if (typeof onReady === "function") {
|
|
118
|
+
this.on("ready", onReady);
|
|
119
|
+
}
|
|
120
|
+
// no-op on server
|
|
121
|
+
if (typeof window === "undefined") {
|
|
122
|
+
this._emit("initError", new Error("SSR context: cannot initIAM on server"));
|
|
123
|
+
return false;
|
|
124
|
+
}
|
|
125
|
+
// load IAM config
|
|
126
|
+
const loaded = await this.loadConfig(config);
|
|
127
|
+
if (!loaded) {
|
|
128
|
+
this._emit("initError", new Error("Failed to load config"));
|
|
129
|
+
return false;
|
|
130
|
+
}
|
|
131
|
+
if (!this._tc) {
|
|
132
|
+
const err = new Error("TideCloak client not available");
|
|
133
|
+
this._emit("initError", err);
|
|
134
|
+
return false;
|
|
135
|
+
}
|
|
136
|
+
if (this._tc.didInitialize) {
|
|
137
|
+
console.debug("[IAMService] IAM Already initialized once.");
|
|
138
|
+
return this._tc.isLoggedIn();
|
|
139
|
+
}
|
|
140
|
+
let authenticated = false;
|
|
141
|
+
try {
|
|
142
|
+
authenticated = await this._tc.init({
|
|
143
|
+
onLoad: "check-sso",
|
|
144
|
+
silentCheckSsoRedirectUri: `${window.location.origin}/silent-check-sso.html`,
|
|
145
|
+
pkceMethod: "S256",
|
|
146
|
+
});
|
|
147
|
+
// if successful, store token for middleware
|
|
148
|
+
if (authenticated && this._tc.token) {
|
|
149
|
+
document.cookie = `kcToken=${this._tc.token}; path=/;`;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
catch (err) {
|
|
153
|
+
console.error("[IAMService] TideCloak init error:", err);
|
|
154
|
+
this._emit("initError", err);
|
|
155
|
+
}
|
|
156
|
+
this._emit("ready", authenticated);
|
|
157
|
+
return authenticated;
|
|
158
|
+
}
|
|
159
|
+
/** @private */
|
|
160
|
+
getTideCloakClient() {
|
|
161
|
+
if (!this._tc) {
|
|
162
|
+
throw new Error("TideCloak client not initialized — call initIAM() first");
|
|
163
|
+
}
|
|
164
|
+
return this._tc;
|
|
165
|
+
}
|
|
166
|
+
/** @returns {Object} Loaded config */
|
|
167
|
+
getConfig() {
|
|
168
|
+
if (!this._config) {
|
|
169
|
+
throw new Error("Config not loaded — call initIAM() first");
|
|
170
|
+
}
|
|
171
|
+
return this._config;
|
|
172
|
+
}
|
|
173
|
+
/** @returns {boolean} Whether there's a valid token */
|
|
174
|
+
isLoggedIn() {
|
|
175
|
+
return !!this.getTideCloakClient().token;
|
|
176
|
+
}
|
|
177
|
+
/** @returns {Promise<string>} Valid token (refreshing if needed) */
|
|
178
|
+
async getToken() {
|
|
179
|
+
const exp = this.getTokenExp();
|
|
180
|
+
if (exp < 3)
|
|
181
|
+
await this.updateIAMToken();
|
|
182
|
+
return this.getTideCloakClient().token;
|
|
183
|
+
}
|
|
184
|
+
/** Seconds until token expiry */
|
|
185
|
+
getTokenExp() {
|
|
186
|
+
const kc = this.getTideCloakClient();
|
|
187
|
+
return Math.round(kc.tokenParsed.exp + kc.timeSkew - Date.now() / 1000);
|
|
188
|
+
}
|
|
189
|
+
/** @returns {string} ID token */
|
|
190
|
+
getIDToken() {
|
|
191
|
+
return this.getTideCloakClient().idToken;
|
|
192
|
+
}
|
|
193
|
+
/** @returns {string} Username (preferred_username claim) */
|
|
194
|
+
getName() {
|
|
195
|
+
return this.getTideCloakClient().tokenParsed.preferred_username;
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* @param {string} role - the name of the role to check
|
|
199
|
+
* @returns {boolean} Whether the user has a given realm role */
|
|
200
|
+
hasRealmRole(role) {
|
|
201
|
+
return this.getTideCloakClient().hasRealmRole(role);
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* @param {string} role - the name of the role to check
|
|
205
|
+
* @param {string} [client] - optional client-ID (defaults to the configured adapter resource)
|
|
206
|
+
* @returns {boolean} - whether the user has that role
|
|
207
|
+
*/
|
|
208
|
+
hasClientRole(role, client) {
|
|
209
|
+
return this.getTideCloakClient().hasResourceRole(role, client);
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* @param {string} key - The name of the claim to retrieve from the Access token's payload.
|
|
213
|
+
* @returns {*} Custom claim from access token */
|
|
214
|
+
getValueFromToken(key) {
|
|
215
|
+
var _a;
|
|
216
|
+
return (_a = this.getTideCloakClient().tokenParsed[key]) !== null && _a !== void 0 ? _a : null;
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* @param {string} key - The name of the claim to retrieve from the ID token's payload.
|
|
220
|
+
* @returns {*} Custom claim from access token */
|
|
221
|
+
getValueFromIDToken(key) {
|
|
222
|
+
var _a;
|
|
223
|
+
return (_a = this.getTideCloakClient().idTokenParsed[key]) !== null && _a !== void 0 ? _a : null;
|
|
224
|
+
}
|
|
225
|
+
/** Refreshes token if expired or about to expire */
|
|
226
|
+
async updateIAMToken() {
|
|
227
|
+
const kc = this.getTideCloakClient();
|
|
228
|
+
const refreshed = await kc.updateToken();
|
|
229
|
+
const expiresIn = this.getTokenExp();
|
|
230
|
+
console.debug(refreshed
|
|
231
|
+
? `[updateIAMToken] Refreshed: ${expiresIn}s`
|
|
232
|
+
: `[updateIAMToken] Still valid: ${expiresIn}s`);
|
|
233
|
+
document.cookie = `kcToken=${kc.token}; path=/;`;
|
|
234
|
+
return refreshed;
|
|
235
|
+
}
|
|
236
|
+
/** Force immediate refresh (min validity = -1) */
|
|
237
|
+
async forceUpdateToken() {
|
|
238
|
+
document.cookie = 'kcToken=; path=/; expires=Thu, 01 Jan 1970 00:00:00 GMT';
|
|
239
|
+
const kc = this.getTideCloakClient();
|
|
240
|
+
const refreshed = await kc.updateToken(-1);
|
|
241
|
+
const expiresIn = this.getTokenExp();
|
|
242
|
+
console.debug(refreshed
|
|
243
|
+
? `[updateToken] Immediately refreshed: ${expiresIn}s`
|
|
244
|
+
: `[updateToken] No refresh needed: ${expiresIn}s`);
|
|
245
|
+
document.cookie = `kcToken=${kc.token}; path=/;`;
|
|
246
|
+
return refreshed;
|
|
247
|
+
}
|
|
248
|
+
/** Start login redirect */
|
|
249
|
+
doLogin() {
|
|
250
|
+
this.getTideCloakClient().login({
|
|
251
|
+
redirectUri: `${window.location.origin}/auth/redirect`
|
|
252
|
+
});
|
|
253
|
+
}
|
|
254
|
+
/** Encrypt data via adapter */
|
|
255
|
+
async doEncrypt(data) {
|
|
256
|
+
return this.getTideCloakClient().encrypt(data);
|
|
257
|
+
}
|
|
258
|
+
/** Decrypt data via adapter */
|
|
259
|
+
async doDecrypt(data) {
|
|
260
|
+
return this.getTideCloakClient().decrypt(data);
|
|
261
|
+
}
|
|
262
|
+
/** Logout, clear cookie, then redirect */
|
|
263
|
+
doLogout() {
|
|
264
|
+
document.cookie = 'kcToken=; path=/; expires=Thu, 01 Jan 1970 00:00:00 GMT';
|
|
265
|
+
this.getTideCloakClient().logout({
|
|
266
|
+
redirectUri: `${window.location.origin}/auth/redirect`
|
|
267
|
+
});
|
|
268
|
+
}
|
|
269
|
+
/** Base URL for Keycloak realm (no trailing slash) */
|
|
270
|
+
getBaseUrl() {
|
|
271
|
+
var _a, _b;
|
|
272
|
+
return ((_b = (_a = this._config) === null || _a === void 0 ? void 0 : _a["auth-server-url"]) === null || _b === void 0 ? void 0 : _b.replace(/\/$/, "")) || "";
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
const IAMServiceInstance = new IAMService();
|
|
276
|
+
exports.IAMService = IAMServiceInstance;
|
|
277
|
+
exports.default = IAMServiceInstance;
|
|
278
|
+
//# sourceMappingURL=IAMService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IAMService.js","sourceRoot":"","sources":["../../../src/IAMService.js"],"names":[],"mappings":"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"}
|