@sudoplatform/sudo-common 7.1.2 → 8.0.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/cjs/configurationManager/defaultConfigurationManager.js +122 -0
- package/cjs/configurationManager/defaultConfigurationManager.js.map +1 -0
- package/cjs/errors/error.js +442 -0
- package/cjs/errors/error.js.map +1 -0
- package/cjs/index.js +13 -0
- package/cjs/index.js.map +1 -0
- package/cjs/logging/bunyanLogger.js +36 -0
- package/cjs/logging/bunyanLogger.js.map +1 -0
- package/cjs/logging/logger.js +77 -0
- package/cjs/logging/logger.js.map +1 -0
- package/cjs/sudoKeyArchive/index.js +8 -0
- package/cjs/sudoKeyArchive/index.js.map +1 -0
- package/cjs/sudoKeyArchive/keyArchive.js +84 -0
- package/cjs/sudoKeyArchive/keyArchive.js.map +1 -0
- package/cjs/sudoKeyArchive/keyInfo.js +17 -0
- package/cjs/sudoKeyArchive/keyInfo.js.map +1 -0
- package/cjs/sudoKeyArchive/keyType.js +39 -0
- package/cjs/sudoKeyArchive/keyType.js.map +1 -0
- package/cjs/sudoKeyArchive/sudoKeyArchive.js +373 -0
- package/cjs/sudoKeyArchive/sudoKeyArchive.js.map +1 -0
- package/cjs/sudoKeyManager/index.js +8 -0
- package/cjs/sudoKeyManager/index.js.map +1 -0
- package/cjs/sudoKeyManager/keyData.js +46 -0
- package/cjs/sudoKeyManager/keyData.js.map +1 -0
- package/cjs/sudoKeyManager/publicKey.js +9 -0
- package/cjs/sudoKeyManager/publicKey.js.map +1 -0
- package/cjs/sudoKeyManager/sudoCryptoProvider.js +12 -0
- package/cjs/sudoKeyManager/sudoCryptoProvider.js.map +1 -0
- package/cjs/sudoKeyManager/sudoKeyManager.js +140 -0
- package/cjs/sudoKeyManager/sudoKeyManager.js.map +1 -0
- package/cjs/types/types.js +45 -0
- package/cjs/types/types.js.map +1 -0
- package/cjs/utils/base64.js +71 -0
- package/cjs/utils/base64.js.map +1 -0
- package/cjs/utils/buffer.js +37 -0
- package/cjs/utils/buffer.js.map +1 -0
- package/cjs/utils/stream.js +70 -0
- package/cjs/utils/stream.js.map +1 -0
- package/lib/configurationManager/defaultConfigurationManager.js +106 -158
- package/lib/configurationManager/defaultConfigurationManager.js.map +1 -0
- package/lib/errors/error.js +226 -438
- package/lib/errors/error.js.map +1 -0
- package/lib/index.js +10 -109
- package/lib/index.js.map +1 -0
- package/lib/logging/bunyanLogger.js +29 -41
- package/lib/logging/bunyanLogger.js.map +1 -0
- package/lib/logging/logger.js +66 -92
- package/lib/logging/logger.js.map +1 -0
- package/lib/sudoKeyArchive/index.js +5 -57
- package/lib/sudoKeyArchive/index.js.map +1 -0
- package/lib/sudoKeyArchive/keyArchive.js +69 -96
- package/lib/sudoKeyArchive/keyArchive.js.map +1 -0
- package/lib/sudoKeyArchive/keyInfo.js +11 -49
- package/lib/sudoKeyArchive/keyInfo.js.map +1 -0
- package/lib/sudoKeyArchive/keyType.js +27 -37
- package/lib/sudoKeyArchive/keyType.js.map +1 -0
- package/lib/sudoKeyArchive/sudoKeyArchive.js +351 -444
- package/lib/sudoKeyArchive/sudoKeyArchive.js.map +1 -0
- package/lib/sudoKeyManager/index.js +5 -57
- package/lib/sudoKeyManager/index.js.map +1 -0
- package/lib/sudoKeyManager/keyData.js +38 -33
- package/lib/sudoKeyManager/keyData.js.map +1 -0
- package/lib/sudoKeyManager/publicKey.js +5 -12
- package/lib/sudoKeyManager/publicKey.js.map +1 -0
- package/lib/sudoKeyManager/sudoCryptoProvider.js +8 -26
- package/lib/sudoKeyManager/sudoCryptoProvider.js.map +1 -0
- package/lib/sudoKeyManager/sudoKeyManager.js +135 -173
- package/lib/sudoKeyManager/sudoKeyManager.js.map +1 -0
- package/lib/types/types.js +27 -33
- package/lib/types/types.js.map +1 -0
- package/lib/utils/base64.js +63 -93
- package/lib/utils/base64.js.map +1 -0
- package/lib/utils/buffer.js +28 -46
- package/lib/utils/buffer.js.map +1 -0
- package/lib/utils/stream.js +63 -0
- package/lib/utils/stream.js.map +1 -0
- package/package.json +44 -28
- package/{lib → types}/configurationManager/defaultConfigurationManager.d.ts +0 -0
- package/{lib → types}/errors/error.d.ts +0 -0
- package/{lib → types}/index.d.ts +1 -0
- package/{lib → types}/logging/bunyanLogger.d.ts +0 -0
- package/{lib → types}/logging/logger.d.ts +0 -0
- package/{lib → types}/sudoKeyArchive/index.d.ts +0 -0
- package/{lib → types}/sudoKeyArchive/keyArchive.d.ts +8 -8
- package/{lib → types}/sudoKeyArchive/keyInfo.d.ts +0 -0
- package/{lib → types}/sudoKeyArchive/keyType.d.ts +0 -0
- package/{lib → types}/sudoKeyArchive/sudoKeyArchive.d.ts +0 -0
- package/{lib → types}/sudoKeyManager/index.d.ts +0 -0
- package/{lib → types}/sudoKeyManager/keyData.d.ts +0 -0
- package/{lib → types}/sudoKeyManager/publicKey.d.ts +0 -0
- package/{lib → types}/sudoKeyManager/sudoCryptoProvider.d.ts +0 -0
- package/{lib → types}/sudoKeyManager/sudoKeyManager.d.ts +0 -0
- package/{lib → types}/types/types.d.ts +0 -0
- package/{lib → types}/utils/base64.d.ts +0 -0
- package/{lib → types}/utils/buffer.d.ts +0 -0
- package/types/utils/stream.d.ts +6 -0
- package/.babelrc +0 -10
- package/.eslintrc.js +0 -91
- package/.gitignore +0 -14
- package/.gitlab-ci.yml +0 -101
- package/.npmignore +0 -1
- package/.prettierignore +0 -3
- package/.prettierrc.js +0 -7
- package/.publisher.json +0 -7
- package/.vscode/settings.json +0 -5
- package/.yarn/releases/yarn-1.22.19.cjs +0 -147529
- package/.yarnrc +0 -5
- package/dependencies-report.json +0 -640
- package/docs/.nojekyll +0 -1
- package/docs/assets/highlight.css +0 -57
- package/docs/assets/main.js +0 -54
- package/docs/assets/search.js +0 -1
- package/docs/assets/style.css +0 -1224
- package/docs/assets/widgets.png +0 -0
- package/docs/assets/widgets@2x.png +0 -0
- package/docs/classes/AccountLockedError.html +0 -163
- package/docs/classes/AuthenticationError.html +0 -169
- package/docs/classes/Base64.html +0 -245
- package/docs/classes/Buffer.html +0 -158
- package/docs/classes/ConfigurationNotSetError.html +0 -164
- package/docs/classes/ConfigurationSetNotFoundError.html +0 -168
- package/docs/classes/DecodeError.html +0 -168
- package/docs/classes/DefaultConfigurationManager.html +0 -213
- package/docs/classes/DefaultLogger.html +0 -291
- package/docs/classes/DefaultSudoKeyArchive.html +0 -363
- package/docs/classes/DefaultSudoKeyManager.html +0 -814
- package/docs/classes/FatalError.html +0 -169
- package/docs/classes/IllegalArgumentError.html +0 -168
- package/docs/classes/IllegalStateError.html +0 -169
- package/docs/classes/InsufficientEntitlementsError.html +0 -164
- package/docs/classes/InvalidOwnershipProofError.html +0 -163
- package/docs/classes/InvalidTokenError.html +0 -163
- package/docs/classes/KeyArchiveDecodingError.html +0 -168
- package/docs/classes/KeyArchiveIncorrectPasswordError.html +0 -168
- package/docs/classes/KeyArchiveMissingError.html +0 -168
- package/docs/classes/KeyArchiveNoPasswordRequiredError.html +0 -168
- package/docs/classes/KeyArchivePasswordRequiredError.html +0 -168
- package/docs/classes/KeyArchiveTypeError.html +0 -168
- package/docs/classes/KeyArchiveUnknownKeyTypeError.html +0 -168
- package/docs/classes/KeyArchiveVersionError.html +0 -168
- package/docs/classes/KeyNotFoundError.html +0 -168
- package/docs/classes/KeyStoreNotExportableError.html +0 -168
- package/docs/classes/LimitExceededError.html +0 -164
- package/docs/classes/NoEntitlementsError.html +0 -163
- package/docs/classes/NotAuthorizedError.html +0 -169
- package/docs/classes/NotRegisteredError.html +0 -168
- package/docs/classes/NotSignedInError.html +0 -164
- package/docs/classes/OperationNotImplementedError.html +0 -168
- package/docs/classes/RegisterError.html +0 -169
- package/docs/classes/RequestFailedError.html +0 -189
- package/docs/classes/ServiceError.html +0 -170
- package/docs/classes/SignOutError.html +0 -168
- package/docs/classes/SudoCryptoProviderDefaults.html +0 -106
- package/docs/classes/UnknownGraphQLError.html +0 -169
- package/docs/classes/UnrecognizedAlgorithmError.html +0 -168
- package/docs/classes/UserNotConfirmedError.html +0 -164
- package/docs/classes/VersionMismatchError.html +0 -166
- package/docs/enums/CachePolicy.html +0 -72
- package/docs/enums/EncryptionAlgorithm.html +0 -80
- package/docs/enums/KeyArchiveKeyType.html +0 -86
- package/docs/enums/KeyDataKeyFormat.html +0 -92
- package/docs/enums/KeyDataKeyType.html +0 -85
- package/docs/enums/ListOperationResultStatus.html +0 -85
- package/docs/enums/PublicKeyFormat.html +0 -68
- package/docs/functions/isAppSyncNetworkError.html +0 -147
- package/docs/functions/isInsecureKeyArchive.html +0 -147
- package/docs/functions/isSecureKeyArchive.html +0 -147
- package/docs/functions/isUnrecognizedKeyArchive.html +0 -147
- package/docs/functions/keyArchiveInfoFromKeyData.html +0 -147
- package/docs/functions/keyArchiveKeyTypeFromKeyDataKeyType.html +0 -147
- package/docs/functions/mapGraphQLToClientError.html +0 -154
- package/docs/functions/mapNetworkErrorToClientError.html +0 -154
- package/docs/index.html +0 -146
- package/docs/interfaces/AsymmetricEncryptionOptions.html +0 -68
- package/docs/interfaces/BooleanFilter.html +0 -75
- package/docs/interfaces/ConfigurationManager.html +0 -200
- package/docs/interfaces/KeyData.html +0 -106
- package/docs/interfaces/ListOperationFailureResult.html +0 -76
- package/docs/interfaces/ListOperationPartialResult.html +0 -102
- package/docs/interfaces/ListOperationSuccessResult.html +0 -90
- package/docs/interfaces/ListOutput.html +0 -80
- package/docs/interfaces/Logger.html +0 -251
- package/docs/interfaces/Owner.html +0 -72
- package/docs/interfaces/PublicKey.html +0 -72
- package/docs/interfaces/ServiceCompatibilityInfo.html +0 -110
- package/docs/interfaces/StringFilter.html +0 -82
- package/docs/interfaces/SudoCryptoProvider.html +0 -865
- package/docs/interfaces/SudoKeyArchive.html +0 -257
- package/docs/interfaces/SudoKeyManager.html +0 -848
- package/docs/interfaces/SymmetricEncryptionOptions.html +0 -75
- package/docs/interfaces/ValidationResult.html +0 -83
- package/docs/modules.html +0 -248
- package/docs/types/AppSyncError.html +0 -138
- package/docs/types/AppSyncNetworkError.html +0 -138
- package/docs/types/InsecureKeyArchive.html +0 -138
- package/docs/types/KeyArchive.html +0 -138
- package/docs/types/KeyArchiveKeyInfo.html +0 -154
- package/docs/types/KeyArchiveKeyInfoDecoded.html +0 -138
- package/docs/types/ListOperationResult.html +0 -148
- package/docs/types/SecureKeyArchive.html +0 -138
- package/docs/types/Subset.html +0 -144
- package/docs/types/UnrecognizedKeyArchive.html +0 -138
- package/docs/variables/CURRENT_ARCHIVE_VERSION.html +0 -138
- package/docs/variables/InsecureKeyArchiveCodec.html +0 -138
- package/docs/variables/InsecureKeyArchiveType.html +0 -138
- package/docs/variables/KeyArchiveCodec.html +0 -138
- package/docs/variables/KeyArchiveKeyInfoArrayCodec.html +0 -138
- package/docs/variables/KeyArchiveKeyInfoCodec.html +0 -138
- package/docs/variables/KeyArchiveKeyTypeCodec.html +0 -138
- package/docs/variables/SecureKeyArchiveCodec.html +0 -138
- package/docs/variables/SecureKeyArchiveType.html +0 -138
- package/docs/variables/UnrecognizedKeyArchiveCodec.html +0 -138
- package/github/.babelrc +0 -10
- package/github/.eslintrc.js +0 -91
- package/github/.gitignore +0 -14
- package/github/.gitlab-ci.yml +0 -101
- package/github/.npmignore +0 -1
- package/github/.prettierignore +0 -3
- package/github/.prettierrc.js +0 -7
- package/github/.publisher.json +0 -7
- package/github/.vscode/settings.json +0 -5
- package/github/.yarn/releases/yarn-1.22.19.cjs +0 -147529
- package/github/.yarnrc +0 -5
- package/github/CHANGELOG.md +0 -51
- package/github/README.md +0 -8
- package/github/bin/outdated-with-suppression.sh +0 -203
- package/github/bin/suppress-audit.sh +0 -15
- package/github/bin/suppress-outdated.sh +0 -60
- package/github/bin/yarn-audit-with-suppression.sh +0 -19
- package/github/docs/.nojekyll +0 -1
- package/github/docs/assets/highlight.css +0 -57
- package/github/docs/assets/main.js +0 -54
- package/github/docs/assets/search.js +0 -1
- package/github/docs/assets/style.css +0 -1224
- package/github/docs/assets/widgets.png +0 -0
- package/github/docs/assets/widgets@2x.png +0 -0
- package/github/docs/classes/AccountLockedError.html +0 -163
- package/github/docs/classes/AuthenticationError.html +0 -169
- package/github/docs/classes/Base64.html +0 -245
- package/github/docs/classes/Buffer.html +0 -158
- package/github/docs/classes/ConfigurationNotSetError.html +0 -164
- package/github/docs/classes/ConfigurationSetNotFoundError.html +0 -168
- package/github/docs/classes/DecodeError.html +0 -168
- package/github/docs/classes/DefaultConfigurationManager.html +0 -213
- package/github/docs/classes/DefaultLogger.html +0 -291
- package/github/docs/classes/DefaultSudoKeyArchive.html +0 -363
- package/github/docs/classes/DefaultSudoKeyManager.html +0 -814
- package/github/docs/classes/FatalError.html +0 -169
- package/github/docs/classes/IllegalArgumentError.html +0 -168
- package/github/docs/classes/IllegalStateError.html +0 -169
- package/github/docs/classes/InsufficientEntitlementsError.html +0 -164
- package/github/docs/classes/InvalidOwnershipProofError.html +0 -163
- package/github/docs/classes/InvalidTokenError.html +0 -163
- package/github/docs/classes/KeyArchiveDecodingError.html +0 -168
- package/github/docs/classes/KeyArchiveIncorrectPasswordError.html +0 -168
- package/github/docs/classes/KeyArchiveMissingError.html +0 -168
- package/github/docs/classes/KeyArchiveNoPasswordRequiredError.html +0 -168
- package/github/docs/classes/KeyArchivePasswordRequiredError.html +0 -168
- package/github/docs/classes/KeyArchiveTypeError.html +0 -168
- package/github/docs/classes/KeyArchiveUnknownKeyTypeError.html +0 -168
- package/github/docs/classes/KeyArchiveVersionError.html +0 -168
- package/github/docs/classes/KeyNotFoundError.html +0 -168
- package/github/docs/classes/KeyStoreNotExportableError.html +0 -168
- package/github/docs/classes/LimitExceededError.html +0 -164
- package/github/docs/classes/NoEntitlementsError.html +0 -163
- package/github/docs/classes/NotAuthorizedError.html +0 -169
- package/github/docs/classes/NotRegisteredError.html +0 -168
- package/github/docs/classes/NotSignedInError.html +0 -164
- package/github/docs/classes/OperationNotImplementedError.html +0 -168
- package/github/docs/classes/RegisterError.html +0 -169
- package/github/docs/classes/RequestFailedError.html +0 -189
- package/github/docs/classes/ServiceError.html +0 -170
- package/github/docs/classes/SignOutError.html +0 -168
- package/github/docs/classes/SudoCryptoProviderDefaults.html +0 -106
- package/github/docs/classes/UnknownGraphQLError.html +0 -169
- package/github/docs/classes/UnrecognizedAlgorithmError.html +0 -168
- package/github/docs/classes/UserNotConfirmedError.html +0 -164
- package/github/docs/classes/VersionMismatchError.html +0 -166
- package/github/docs/enums/CachePolicy.html +0 -72
- package/github/docs/enums/EncryptionAlgorithm.html +0 -80
- package/github/docs/enums/KeyArchiveKeyType.html +0 -86
- package/github/docs/enums/KeyDataKeyFormat.html +0 -92
- package/github/docs/enums/KeyDataKeyType.html +0 -85
- package/github/docs/enums/ListOperationResultStatus.html +0 -85
- package/github/docs/enums/PublicKeyFormat.html +0 -68
- package/github/docs/functions/isAppSyncNetworkError.html +0 -147
- package/github/docs/functions/isInsecureKeyArchive.html +0 -147
- package/github/docs/functions/isSecureKeyArchive.html +0 -147
- package/github/docs/functions/isUnrecognizedKeyArchive.html +0 -147
- package/github/docs/functions/keyArchiveInfoFromKeyData.html +0 -147
- package/github/docs/functions/keyArchiveKeyTypeFromKeyDataKeyType.html +0 -147
- package/github/docs/functions/mapGraphQLToClientError.html +0 -154
- package/github/docs/functions/mapNetworkErrorToClientError.html +0 -154
- package/github/docs/index.html +0 -146
- package/github/docs/interfaces/AsymmetricEncryptionOptions.html +0 -68
- package/github/docs/interfaces/BooleanFilter.html +0 -75
- package/github/docs/interfaces/ConfigurationManager.html +0 -200
- package/github/docs/interfaces/KeyData.html +0 -106
- package/github/docs/interfaces/ListOperationFailureResult.html +0 -76
- package/github/docs/interfaces/ListOperationPartialResult.html +0 -102
- package/github/docs/interfaces/ListOperationSuccessResult.html +0 -90
- package/github/docs/interfaces/ListOutput.html +0 -80
- package/github/docs/interfaces/Logger.html +0 -251
- package/github/docs/interfaces/Owner.html +0 -72
- package/github/docs/interfaces/PublicKey.html +0 -72
- package/github/docs/interfaces/ServiceCompatibilityInfo.html +0 -110
- package/github/docs/interfaces/StringFilter.html +0 -82
- package/github/docs/interfaces/SudoCryptoProvider.html +0 -865
- package/github/docs/interfaces/SudoKeyArchive.html +0 -257
- package/github/docs/interfaces/SudoKeyManager.html +0 -848
- package/github/docs/interfaces/SymmetricEncryptionOptions.html +0 -75
- package/github/docs/interfaces/ValidationResult.html +0 -83
- package/github/docs/modules.html +0 -248
- package/github/docs/types/AppSyncError.html +0 -138
- package/github/docs/types/AppSyncNetworkError.html +0 -138
- package/github/docs/types/InsecureKeyArchive.html +0 -138
- package/github/docs/types/KeyArchive.html +0 -138
- package/github/docs/types/KeyArchiveKeyInfo.html +0 -154
- package/github/docs/types/KeyArchiveKeyInfoDecoded.html +0 -138
- package/github/docs/types/ListOperationResult.html +0 -148
- package/github/docs/types/SecureKeyArchive.html +0 -138
- package/github/docs/types/Subset.html +0 -144
- package/github/docs/types/UnrecognizedKeyArchive.html +0 -138
- package/github/docs/variables/CURRENT_ARCHIVE_VERSION.html +0 -138
- package/github/docs/variables/InsecureKeyArchiveCodec.html +0 -138
- package/github/docs/variables/InsecureKeyArchiveType.html +0 -138
- package/github/docs/variables/KeyArchiveCodec.html +0 -138
- package/github/docs/variables/KeyArchiveKeyInfoArrayCodec.html +0 -138
- package/github/docs/variables/KeyArchiveKeyInfoCodec.html +0 -138
- package/github/docs/variables/KeyArchiveKeyTypeCodec.html +0 -138
- package/github/docs/variables/SecureKeyArchiveCodec.html +0 -138
- package/github/docs/variables/SecureKeyArchiveType.html +0 -138
- package/github/docs/variables/UnrecognizedKeyArchiveCodec.html +0 -138
- package/github/jest.config.json +0 -14
- package/github/package.json +0 -91
- package/github/src/configurationManager/defaultConfigurationManager.ts +0 -281
- package/github/src/errors/error.ts +0 -469
- package/github/src/index.ts +0 -8
- package/github/src/logging/bunyanLogger.ts +0 -47
- package/github/src/logging/logger.ts +0 -164
- package/github/src/sudoKeyArchive/index.ts +0 -4
- package/github/src/sudoKeyArchive/keyArchive.ts +0 -120
- package/github/src/sudoKeyArchive/keyInfo.ts +0 -47
- package/github/src/sudoKeyArchive/keyType.ts +0 -50
- package/github/src/sudoKeyArchive/sudoKeyArchive.ts +0 -591
- package/github/src/sudoKeyManager/index.ts +0 -4
- package/github/src/sudoKeyManager/keyData.ts +0 -60
- package/github/src/sudoKeyManager/publicKey.ts +0 -9
- package/github/src/sudoKeyManager/sudoCryptoProvider.ts +0 -416
- package/github/src/sudoKeyManager/sudoKeyManager.ts +0 -609
- package/github/src/types/types.ts +0 -129
- package/github/src/utils/base64.ts +0 -75
- package/github/src/utils/buffer.ts +0 -39
- package/github/test/integration/defaultConfigurationManager.spec.ts +0 -85
- package/github/test/matchers.ts +0 -122
- package/github/test/unit/configurationManager/defaultConfigurationManager.spec.ts +0 -506
- package/github/test/unit/errors/error.spec.ts +0 -115
- package/github/test/unit/keyType.spec.ts +0 -54
- package/github/test/unit/logging/logger.spec.ts +0 -182
- package/github/test/unit/sudoKeyArchive.spec.ts +0 -1609
- package/github/test/unit/sudoKeyManager.spec.ts +0 -1045
- package/github/test/unit/utils/base64.spec.ts +0 -45
- package/github/test/unit/utils/buffer.spec.ts +0 -45
- package/github/test/unit/utils/listOperationResult.spec.ts +0 -84
- package/github/tsconfig.json +0 -20
- package/github/tsconfig.test.json +0 -7
- package/github/yarn.lock +0 -5922
- package/jest.config.json +0 -14
- package/src/configurationManager/defaultConfigurationManager.ts +0 -281
- package/src/errors/error.ts +0 -469
- package/src/index.ts +0 -8
- package/src/logging/bunyanLogger.ts +0 -47
- package/src/logging/logger.ts +0 -164
- package/src/sudoKeyArchive/index.ts +0 -4
- package/src/sudoKeyArchive/keyArchive.ts +0 -120
- package/src/sudoKeyArchive/keyInfo.ts +0 -47
- package/src/sudoKeyArchive/keyType.ts +0 -50
- package/src/sudoKeyArchive/sudoKeyArchive.ts +0 -591
- package/src/sudoKeyManager/index.ts +0 -4
- package/src/sudoKeyManager/keyData.ts +0 -60
- package/src/sudoKeyManager/publicKey.ts +0 -9
- package/src/sudoKeyManager/sudoCryptoProvider.ts +0 -416
- package/src/sudoKeyManager/sudoKeyManager.ts +0 -609
- package/src/types/types.ts +0 -129
- package/src/utils/base64.ts +0 -75
- package/src/utils/buffer.ts +0 -39
- package/test/integration/defaultConfigurationManager.spec.ts +0 -85
- package/test/matchers.ts +0 -122
- package/test/unit/configurationManager/defaultConfigurationManager.spec.ts +0 -506
- package/test/unit/errors/error.spec.ts +0 -115
- package/test/unit/keyType.spec.ts +0 -54
- package/test/unit/logging/logger.spec.ts +0 -182
- package/test/unit/sudoKeyArchive.spec.ts +0 -1609
- package/test/unit/sudoKeyManager.spec.ts +0 -1045
- package/test/unit/utils/base64.spec.ts +0 -45
- package/test/unit/utils/buffer.spec.ts +0 -45
- package/test/unit/utils/listOperationResult.spec.ts +0 -84
- package/tsconfig.json +0 -20
- package/tsconfig.test.json +0 -7
- package/yarn.lock +0 -5922
package/src/errors/error.ts
DELETED
|
@@ -1,469 +0,0 @@
|
|
|
1
|
-
import { GraphQLError } from 'graphql'
|
|
2
|
-
import { ApolloError } from 'apollo-client'
|
|
3
|
-
|
|
4
|
-
export type AppSyncError = GraphQLError & {
|
|
5
|
-
errorType?: string | null
|
|
6
|
-
}
|
|
7
|
-
export type AppSyncNetworkError = Error & {
|
|
8
|
-
networkError: Error & {
|
|
9
|
-
statusCode?: number
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export function isAppSyncNetworkError(u: Error): u is AppSyncNetworkError {
|
|
14
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
15
|
-
return !!(u as ApolloError).networkError
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* Indicates the GraphQL API returned an error that's not recognized by
|
|
20
|
-
* the client.
|
|
21
|
-
*/
|
|
22
|
-
export class UnknownGraphQLError extends Error {
|
|
23
|
-
constructor(cause: unknown) {
|
|
24
|
-
const maybeAppSyncError = cause as AppSyncError
|
|
25
|
-
let message: string
|
|
26
|
-
if (maybeAppSyncError?.errorType) {
|
|
27
|
-
message = `type: ${maybeAppSyncError.errorType}, message: ${maybeAppSyncError.message}`
|
|
28
|
-
} else if (maybeAppSyncError?.message) {
|
|
29
|
-
message = maybeAppSyncError?.message
|
|
30
|
-
} else if (maybeAppSyncError?.name) {
|
|
31
|
-
message = maybeAppSyncError.name
|
|
32
|
-
} else {
|
|
33
|
-
message = 'unknown cause'
|
|
34
|
-
}
|
|
35
|
-
super(message)
|
|
36
|
-
|
|
37
|
-
this.name = 'UnknownGraphQLError'
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
/**
|
|
42
|
-
* The configuration set was not found by the given key
|
|
43
|
-
*/
|
|
44
|
-
export class ConfigurationSetNotFoundError extends Error {
|
|
45
|
-
constructor(key?: string) {
|
|
46
|
-
super('Configuration set not found.')
|
|
47
|
-
if (key) {
|
|
48
|
-
this.message += ` Key: ${key}`
|
|
49
|
-
}
|
|
50
|
-
this.name = 'ConfigurationSetNotFoundError'
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
/**
|
|
55
|
-
* The configuration has not been set on the ConfigurationManager
|
|
56
|
-
* before trying operations that need it
|
|
57
|
-
*/
|
|
58
|
-
export class ConfigurationNotSetError extends Error {
|
|
59
|
-
constructor() {
|
|
60
|
-
super('Configuration has not been set.')
|
|
61
|
-
this.name = 'ConfigurationNotSetError'
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
/**
|
|
66
|
-
* A decode error message
|
|
67
|
-
*/
|
|
68
|
-
export class DecodeError extends Error {
|
|
69
|
-
constructor(message?: string) {
|
|
70
|
-
super(message)
|
|
71
|
-
this.name = 'DecodeError'
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
/**
|
|
76
|
-
* An error occurred during the authentication process. This may be due to invalid credentials
|
|
77
|
-
* being supplied, or authentication tokens not able to be retrieved from storage.
|
|
78
|
-
*/
|
|
79
|
-
export class AuthenticationError extends Error {
|
|
80
|
-
constructor(message: string) {
|
|
81
|
-
super(message)
|
|
82
|
-
this.name = 'AuthenticationError'
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
/**
|
|
87
|
-
* An error occurred during the sign out process.
|
|
88
|
-
*/
|
|
89
|
-
export class SignOutError extends Error {
|
|
90
|
-
constructor(message: string) {
|
|
91
|
-
super(message)
|
|
92
|
-
this.name = 'SignOutError'
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
/**
|
|
97
|
-
* An error occurred during the registration process.
|
|
98
|
-
* This may be due to the client already being registered.
|
|
99
|
-
*/
|
|
100
|
-
export class RegisterError extends Error {
|
|
101
|
-
constructor(message: string) {
|
|
102
|
-
super(message)
|
|
103
|
-
this.name = 'RegisterError'
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
/**
|
|
108
|
-
* An error occurred indicating that the user is not registered.
|
|
109
|
-
*/
|
|
110
|
-
export class NotRegisteredError extends Error {
|
|
111
|
-
constructor(message?: string) {
|
|
112
|
-
super(message ?? 'User is not registered.')
|
|
113
|
-
this.name = 'NotRegisteredError'
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
/**
|
|
118
|
-
* The user is not authorized to perform the requested operation. This maybe
|
|
119
|
-
* due to specifying the wrong key deriving key or password.
|
|
120
|
-
*/
|
|
121
|
-
export class NotAuthorizedError extends Error {
|
|
122
|
-
constructor(message?: string) {
|
|
123
|
-
super(message ?? 'User is not authorized perform the requested operation.')
|
|
124
|
-
this.name = 'NotAuthorizedError'
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
/**
|
|
129
|
-
* Indicates the operation requires the user to be signed in but the user is
|
|
130
|
-
* currently not signed in.
|
|
131
|
-
*/
|
|
132
|
-
export class NotSignedInError extends Error {
|
|
133
|
-
constructor() {
|
|
134
|
-
super('Not signed in.')
|
|
135
|
-
this.name = 'NotSignedInError'
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
/**
|
|
140
|
-
* Indicates that the user was registered but is not confirmed due to not
|
|
141
|
-
* passing all the required validation.
|
|
142
|
-
*/
|
|
143
|
-
export class UserNotConfirmedError extends Error {
|
|
144
|
-
constructor() {
|
|
145
|
-
super('User not confirmed.')
|
|
146
|
-
this.name = 'UserNotConfirmedError'
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
/**
|
|
151
|
-
* The version of the vault that's being updated does not match the version
|
|
152
|
-
* stored in the backed. It is likely that another client updated the vault
|
|
153
|
-
* first so the caller should reconcile the changes before attempting to
|
|
154
|
-
* update the vault.
|
|
155
|
-
*/
|
|
156
|
-
export class VersionMismatchError extends Error {
|
|
157
|
-
constructor() {
|
|
158
|
-
super('Expected object version does not match the actual object version.')
|
|
159
|
-
this.name = 'VersionMismatchError'
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
/**
|
|
164
|
-
* Indicates that the ownership proof was invalid.
|
|
165
|
-
*/
|
|
166
|
-
export class InvalidOwnershipProofError extends Error {
|
|
167
|
-
constructor() {
|
|
168
|
-
super('Ownership proof was invalid.')
|
|
169
|
-
this.name = 'InvalidOwnershipProofError'
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
/**
|
|
174
|
-
* Indicates that the user does not have sufficient entitlements to perform
|
|
175
|
-
* the requested operation.
|
|
176
|
-
*/
|
|
177
|
-
export class InsufficientEntitlementsError extends Error {
|
|
178
|
-
constructor() {
|
|
179
|
-
super(
|
|
180
|
-
'The user does not have sufficient entitlements to perform the requested operation.',
|
|
181
|
-
)
|
|
182
|
-
this.name = 'InsufficientEntitlementsError'
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
/**
|
|
187
|
-
* Indicates the requested operation failed because the user account is locked.
|
|
188
|
-
*/
|
|
189
|
-
export class AccountLockedError extends Error {
|
|
190
|
-
constructor() {
|
|
191
|
-
super('The requested operation failed because the user account is locked.')
|
|
192
|
-
this.name = 'AccountLockedError'
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
/**
|
|
197
|
-
* Indicates that an internal server error caused the operation to fail. The error
|
|
198
|
-
* is possibly transient and retrying at a later time may cause the operation to
|
|
199
|
-
* complete successfully.
|
|
200
|
-
*/
|
|
201
|
-
export class ServiceError extends Error {
|
|
202
|
-
constructor(message: string) {
|
|
203
|
-
super(message)
|
|
204
|
-
this.name = 'ServiceError'
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
/**
|
|
209
|
-
* Error when expected arguments are missing or invalid
|
|
210
|
-
*/
|
|
211
|
-
export class IllegalArgumentError extends Error {
|
|
212
|
-
constructor(message?: string) {
|
|
213
|
-
super(message ?? 'Invalid arguments were specified')
|
|
214
|
-
this.name = 'IllegalArgumentError'
|
|
215
|
-
}
|
|
216
|
-
}
|
|
217
|
-
|
|
218
|
-
/**
|
|
219
|
-
* Error when the state of the program is expecting a value to
|
|
220
|
-
* be set or available and it is not.
|
|
221
|
-
*/
|
|
222
|
-
export class IllegalStateError extends Error {
|
|
223
|
-
constructor(message: string) {
|
|
224
|
-
super(message)
|
|
225
|
-
this.name = 'IllegalStateError'
|
|
226
|
-
}
|
|
227
|
-
}
|
|
228
|
-
|
|
229
|
-
/**
|
|
230
|
-
* Operation failed due to it exceeding some limits imposed for the API. For example,
|
|
231
|
-
* this error can occur if the resource size exceeds the database record size limit.
|
|
232
|
-
*/
|
|
233
|
-
export class LimitExceededError extends Error {
|
|
234
|
-
constructor() {
|
|
235
|
-
super('API limit exceeded.')
|
|
236
|
-
this.name = 'LimitExceededError'
|
|
237
|
-
}
|
|
238
|
-
}
|
|
239
|
-
|
|
240
|
-
/**
|
|
241
|
-
* API request failed due to network error or unexpected server error.
|
|
242
|
-
*/
|
|
243
|
-
export class RequestFailedError extends Error {
|
|
244
|
-
/**
|
|
245
|
-
* Underlying error that cause the request to fail.
|
|
246
|
-
*/
|
|
247
|
-
public cause?: Error
|
|
248
|
-
/**
|
|
249
|
-
* HTTP status code if a valid response was received with unexpected
|
|
250
|
-
* status code.
|
|
251
|
-
*/
|
|
252
|
-
public statusCode?: number
|
|
253
|
-
|
|
254
|
-
constructor(cause?: Error, statusCode?: number) {
|
|
255
|
-
super(
|
|
256
|
-
`API request failed. cause: ${cause?.message ?? '<none>'}, statusCode: ${
|
|
257
|
-
statusCode ?? '<none>'
|
|
258
|
-
}`,
|
|
259
|
-
)
|
|
260
|
-
this.name = 'RequestFailedError'
|
|
261
|
-
this.cause = cause
|
|
262
|
-
this.statusCode = statusCode
|
|
263
|
-
}
|
|
264
|
-
}
|
|
265
|
-
|
|
266
|
-
/**
|
|
267
|
-
* An unexpected error was encountered. This may result from programmatic error
|
|
268
|
-
* and is unlikley to be user recoverable.
|
|
269
|
-
*/
|
|
270
|
-
export class FatalError extends Error {
|
|
271
|
-
constructor(message: string) {
|
|
272
|
-
super(message)
|
|
273
|
-
this.name = 'FatalError'
|
|
274
|
-
}
|
|
275
|
-
}
|
|
276
|
-
|
|
277
|
-
/**
|
|
278
|
-
* No entitlements assigned to user.
|
|
279
|
-
*/
|
|
280
|
-
export class NoEntitlementsError extends Error {
|
|
281
|
-
constructor() {
|
|
282
|
-
super('No entitlements assigned to user.')
|
|
283
|
-
this.name = 'NoEntitlementsError'
|
|
284
|
-
}
|
|
285
|
-
}
|
|
286
|
-
|
|
287
|
-
/**
|
|
288
|
-
* Token presented was not valid for the purpose.
|
|
289
|
-
*/
|
|
290
|
-
export class InvalidTokenError extends Error {
|
|
291
|
-
constructor() {
|
|
292
|
-
super('Invalid token.')
|
|
293
|
-
this.name = 'InvalidTokenError'
|
|
294
|
-
}
|
|
295
|
-
}
|
|
296
|
-
|
|
297
|
-
/**
|
|
298
|
-
* Key not found from store when using cryptoProvider
|
|
299
|
-
*/
|
|
300
|
-
export class KeyNotFoundError extends Error {
|
|
301
|
-
constructor(message?: string) {
|
|
302
|
-
super(message ?? 'Key not found.')
|
|
303
|
-
this.name = 'KeyNotFoundError'
|
|
304
|
-
}
|
|
305
|
-
}
|
|
306
|
-
|
|
307
|
-
/**
|
|
308
|
-
* Underlying secure key store does not support key export
|
|
309
|
-
*/
|
|
310
|
-
export class KeyStoreNotExportableError extends Error {
|
|
311
|
-
constructor(message?: string) {
|
|
312
|
-
super(message ?? 'Key store not exportable.')
|
|
313
|
-
this.name = 'KeyStoreNotExportableError'
|
|
314
|
-
}
|
|
315
|
-
}
|
|
316
|
-
|
|
317
|
-
/**
|
|
318
|
-
* No key archive provided prior to unarchiving
|
|
319
|
-
*/
|
|
320
|
-
export class KeyArchiveMissingError extends Error {
|
|
321
|
-
constructor(message?: string) {
|
|
322
|
-
super(message ?? 'No key archive provided prior to unarchiving')
|
|
323
|
-
this.name = 'KeyArchiveMissingError'
|
|
324
|
-
}
|
|
325
|
-
}
|
|
326
|
-
|
|
327
|
-
/**
|
|
328
|
-
* No password provided to unarchive secure archive
|
|
329
|
-
*/
|
|
330
|
-
export class KeyArchivePasswordRequiredError extends Error {
|
|
331
|
-
constructor(message?: string) {
|
|
332
|
-
super(message ?? 'No password provided to unarchive secure archive')
|
|
333
|
-
this.name = 'KeyArchivePasswordRequiredError'
|
|
334
|
-
}
|
|
335
|
-
}
|
|
336
|
-
|
|
337
|
-
/**
|
|
338
|
-
* No password required to unarchive insecure archive
|
|
339
|
-
*/
|
|
340
|
-
export class KeyArchiveNoPasswordRequiredError extends Error {
|
|
341
|
-
constructor(message?: string) {
|
|
342
|
-
super(message ?? 'No password required to unarchive insecure archive')
|
|
343
|
-
this.name = 'KeyArchiveNoPasswordRequiredError'
|
|
344
|
-
}
|
|
345
|
-
}
|
|
346
|
-
|
|
347
|
-
/**
|
|
348
|
-
* Key archive data could not be decoded as expected
|
|
349
|
-
*/
|
|
350
|
-
export class KeyArchiveDecodingError extends Error {
|
|
351
|
-
constructor(message?: string) {
|
|
352
|
-
super(message ?? 'Key archive data could not be decoded as expected')
|
|
353
|
-
this.name = 'KeyArchiveDecodingError'
|
|
354
|
-
}
|
|
355
|
-
}
|
|
356
|
-
|
|
357
|
-
/**
|
|
358
|
-
* Key archive was unable to be decrypted using the provided password
|
|
359
|
-
*/
|
|
360
|
-
export class KeyArchiveIncorrectPasswordError extends Error {
|
|
361
|
-
constructor(message?: string) {
|
|
362
|
-
super(
|
|
363
|
-
message ??
|
|
364
|
-
'Key archive was unable to be decrypted using the provided password',
|
|
365
|
-
)
|
|
366
|
-
this.name = 'KeyArchiveIncorrectPasswordError'
|
|
367
|
-
}
|
|
368
|
-
}
|
|
369
|
-
|
|
370
|
-
/**
|
|
371
|
-
* Key archive type is not supported
|
|
372
|
-
*/
|
|
373
|
-
export class KeyArchiveTypeError extends Error {
|
|
374
|
-
constructor(keyArchiveType: string) {
|
|
375
|
-
super(`Key archive type ${keyArchiveType} is not supported`)
|
|
376
|
-
this.name = 'KeyArchiveTypeError'
|
|
377
|
-
}
|
|
378
|
-
}
|
|
379
|
-
|
|
380
|
-
/**
|
|
381
|
-
* Key archive version is not supported
|
|
382
|
-
*/
|
|
383
|
-
export class KeyArchiveVersionError extends Error {
|
|
384
|
-
constructor(version: number) {
|
|
385
|
-
super(`Key archive version ${version} is not supported`)
|
|
386
|
-
this.name = 'KeyArchiveVersionError'
|
|
387
|
-
}
|
|
388
|
-
}
|
|
389
|
-
|
|
390
|
-
/**
|
|
391
|
-
* Key archive key type is not recognized
|
|
392
|
-
*/
|
|
393
|
-
export class KeyArchiveUnknownKeyTypeError extends Error {
|
|
394
|
-
constructor(message?: string) {
|
|
395
|
-
super(message ?? 'Key type is not recognized')
|
|
396
|
-
this.name = 'KeyArchiveUnknownKeyTypeError'
|
|
397
|
-
}
|
|
398
|
-
}
|
|
399
|
-
|
|
400
|
-
/**
|
|
401
|
-
* Operation not implemented
|
|
402
|
-
*/
|
|
403
|
-
export class OperationNotImplementedError extends Error {
|
|
404
|
-
constructor(message?: string) {
|
|
405
|
-
super(message ?? 'Operation is not implemented')
|
|
406
|
-
this.name = 'OperationNotImplementedError'
|
|
407
|
-
}
|
|
408
|
-
}
|
|
409
|
-
|
|
410
|
-
/**
|
|
411
|
-
* Encryption algorithm is not recognized
|
|
412
|
-
*/
|
|
413
|
-
export class UnrecognizedAlgorithmError extends Error {
|
|
414
|
-
constructor(message?: string) {
|
|
415
|
-
super(message ?? 'Unrecognized encryption algorithm name.')
|
|
416
|
-
this.name = 'UnrecognizedAlgorithmError'
|
|
417
|
-
}
|
|
418
|
-
}
|
|
419
|
-
|
|
420
|
-
/**
|
|
421
|
-
* Helper method for mapping an App Sync error to common errors.
|
|
422
|
-
*
|
|
423
|
-
* For consumption by other Sudo Platform SDKs
|
|
424
|
-
*
|
|
425
|
-
* @param error The App Sync error to map
|
|
426
|
-
* @returns The mapped error
|
|
427
|
-
*/
|
|
428
|
-
export function mapGraphQLToClientError(
|
|
429
|
-
error: Pick<AppSyncError, 'errorType' | 'message'>,
|
|
430
|
-
): Error {
|
|
431
|
-
switch (error.errorType) {
|
|
432
|
-
case 'sudoplatform.AccountLockedError':
|
|
433
|
-
return new AccountLockedError()
|
|
434
|
-
case 'sudoplatform.InsufficientEntitlementsError':
|
|
435
|
-
return new InsufficientEntitlementsError()
|
|
436
|
-
case 'sudoplatform.InvalidTokenError':
|
|
437
|
-
return new InvalidTokenError()
|
|
438
|
-
case 'sudoplatform.InvalidArgumentError':
|
|
439
|
-
return new IllegalArgumentError()
|
|
440
|
-
case 'sudoplatform.LimitExceededError':
|
|
441
|
-
return new LimitExceededError()
|
|
442
|
-
case 'sudoplatform.NoEntitlementsError':
|
|
443
|
-
return new NoEntitlementsError()
|
|
444
|
-
case 'sudoplatform.ServiceError':
|
|
445
|
-
return new ServiceError(error.message)
|
|
446
|
-
default:
|
|
447
|
-
return new UnknownGraphQLError(error)
|
|
448
|
-
}
|
|
449
|
-
}
|
|
450
|
-
|
|
451
|
-
/**
|
|
452
|
-
* Call this in error handling when testing with isAppSyncNetworkError on
|
|
453
|
-
* a caught error from an AppSync operation returns true.
|
|
454
|
-
*
|
|
455
|
-
* @param error AppSyncNetworkError to map
|
|
456
|
-
*
|
|
457
|
-
* @returns Mapped error
|
|
458
|
-
*/
|
|
459
|
-
export function mapNetworkErrorToClientError(
|
|
460
|
-
error: AppSyncNetworkError,
|
|
461
|
-
): Error {
|
|
462
|
-
const networkError = error.networkError
|
|
463
|
-
switch (networkError.statusCode) {
|
|
464
|
-
case 401:
|
|
465
|
-
return new NotAuthorizedError()
|
|
466
|
-
default:
|
|
467
|
-
return new RequestFailedError(networkError, networkError.statusCode)
|
|
468
|
-
}
|
|
469
|
-
}
|
package/src/index.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export * from './configurationManager/defaultConfigurationManager'
|
|
2
|
-
export * from './sudoKeyArchive'
|
|
3
|
-
export * from './sudoKeyManager'
|
|
4
|
-
export * from './utils/base64'
|
|
5
|
-
export * from './utils/buffer'
|
|
6
|
-
export * from './errors/error'
|
|
7
|
-
export * from './logging/logger'
|
|
8
|
-
export * from './types/types'
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { createLogger, stdSerializers } from 'browser-bunyan'
|
|
2
|
-
import { ConsolePlainStream } from '@browser-bunyan/console-plain-stream'
|
|
3
|
-
import * as t from 'io-ts'
|
|
4
|
-
import { pipe } from 'fp-ts/lib/pipeable'
|
|
5
|
-
import { fold } from 'fp-ts/lib/Either'
|
|
6
|
-
|
|
7
|
-
const Level = t.union([
|
|
8
|
-
t.literal('trace'),
|
|
9
|
-
t.literal('debug'),
|
|
10
|
-
t.literal('info'),
|
|
11
|
-
t.literal('warn'),
|
|
12
|
-
t.literal('error'),
|
|
13
|
-
t.literal('fatal'),
|
|
14
|
-
])
|
|
15
|
-
|
|
16
|
-
type Level = t.TypeOf<typeof Level>
|
|
17
|
-
|
|
18
|
-
export function getLogLevel(level: string | undefined): Level | undefined {
|
|
19
|
-
if (!level) {
|
|
20
|
-
return undefined
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
return pipe(
|
|
24
|
-
Level.decode(level),
|
|
25
|
-
fold(
|
|
26
|
-
() => undefined,
|
|
27
|
-
(v) => v,
|
|
28
|
-
),
|
|
29
|
-
)
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
export function createBunyanLogger(
|
|
33
|
-
identifier?: string,
|
|
34
|
-
logLevel?: string,
|
|
35
|
-
): BunyanLogger {
|
|
36
|
-
const level =
|
|
37
|
-
getLogLevel(process.env.LOG_LEVEL) || getLogLevel(logLevel) || 'info'
|
|
38
|
-
const log = createLogger({
|
|
39
|
-
name: process.env.PROJECT_NAME || identifier || 'rootLogger',
|
|
40
|
-
level,
|
|
41
|
-
serializers: stdSerializers,
|
|
42
|
-
stream: new ConsolePlainStream(),
|
|
43
|
-
})
|
|
44
|
-
return log
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
export type BunyanLogger = ReturnType<typeof createLogger>
|
package/src/logging/logger.ts
DELETED
|
@@ -1,164 +0,0 @@
|
|
|
1
|
-
import { BunyanLogger, createBunyanLogger } from './bunyanLogger'
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Interface encapsulating logger functions.
|
|
5
|
-
*/
|
|
6
|
-
export interface Logger {
|
|
7
|
-
/**
|
|
8
|
-
* @returns Whether or not trace level logging is enabled
|
|
9
|
-
*/
|
|
10
|
-
trace(): boolean
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* Will log the given message with the logger implementation using the TRACE level
|
|
14
|
-
* @param message the message to be logged
|
|
15
|
-
* @param fields optional fields that represent an object
|
|
16
|
-
*/
|
|
17
|
-
trace(message: string, fields?: Record<string, unknown>): void
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* @returns Whether or not debug level logging is enabled
|
|
21
|
-
*/
|
|
22
|
-
debug(): boolean
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* Will log the given message with the logger implementation using the DEBUG level
|
|
26
|
-
* @param message the message to be logged
|
|
27
|
-
* @param fields optional fields that represent an object
|
|
28
|
-
*/
|
|
29
|
-
debug(message: string, fields?: Record<string, unknown>): void
|
|
30
|
-
|
|
31
|
-
/**
|
|
32
|
-
* @returns Whether or not info level logging is enabled
|
|
33
|
-
*/
|
|
34
|
-
info(): boolean
|
|
35
|
-
|
|
36
|
-
/**
|
|
37
|
-
* Will log the given message with the logger implementation using the INFO level
|
|
38
|
-
* @param message the message to be logged
|
|
39
|
-
* @param fields optional fields that represent an object
|
|
40
|
-
*/
|
|
41
|
-
info(message: string, fields?: Record<string, unknown>): void
|
|
42
|
-
|
|
43
|
-
/**
|
|
44
|
-
* @returns Whether or not warn level logging is enabled
|
|
45
|
-
*/
|
|
46
|
-
warn(): boolean
|
|
47
|
-
|
|
48
|
-
/**
|
|
49
|
-
* Will log the given message with the logger implementation using the WARN level
|
|
50
|
-
* @param message the message to be logged
|
|
51
|
-
* @param fields optional fields that represent an object
|
|
52
|
-
*/
|
|
53
|
-
warn(message: string, fields?: Record<string, unknown>): void
|
|
54
|
-
|
|
55
|
-
/**
|
|
56
|
-
* @returns Whether or not error level logging is enabled
|
|
57
|
-
*/
|
|
58
|
-
error(): boolean
|
|
59
|
-
|
|
60
|
-
/**
|
|
61
|
-
* Will log the given message with the logger implementation using the ERROR level
|
|
62
|
-
* @param message the message to be logged
|
|
63
|
-
* @param fields optional fields that represent an object
|
|
64
|
-
*/
|
|
65
|
-
error(message: string, fields?: Record<string, unknown>): void
|
|
66
|
-
|
|
67
|
-
/**
|
|
68
|
-
* @returns Whether or not fatal level logging is enabled
|
|
69
|
-
*/
|
|
70
|
-
fatal(): boolean
|
|
71
|
-
|
|
72
|
-
/**
|
|
73
|
-
* Will log the given message with the logger implementation using the FATAL level
|
|
74
|
-
* @param message the message to be logged
|
|
75
|
-
* @param fields optional fields that represent an object
|
|
76
|
-
*/
|
|
77
|
-
fatal(message: string, fields?: Record<string, unknown>): void
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
export class DefaultLogger implements Logger {
|
|
81
|
-
private logger: BunyanLogger
|
|
82
|
-
|
|
83
|
-
/**
|
|
84
|
-
* The default logger implementation which wraps browser-bunyan
|
|
85
|
-
*
|
|
86
|
-
* @param identifier the name of the module
|
|
87
|
-
* @param logLevel the log level for the module
|
|
88
|
-
*/
|
|
89
|
-
constructor(identifier?: string, logLevel?: string) {
|
|
90
|
-
this.logger = createBunyanLogger(identifier, logLevel)
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
trace(): boolean
|
|
94
|
-
trace(message: string, fields?: Record<string, unknown>): void
|
|
95
|
-
trace(message?: string, fields?: Record<string, unknown>): boolean | void {
|
|
96
|
-
if (message === undefined) return this.logger.trace()
|
|
97
|
-
|
|
98
|
-
if (fields) {
|
|
99
|
-
this.logger.trace({ obj: fields }, message)
|
|
100
|
-
} else {
|
|
101
|
-
this.logger.trace(message)
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
debug(): boolean
|
|
106
|
-
debug(message: string, fields?: Record<string, unknown>): void
|
|
107
|
-
debug(message?: string, fields?: Record<string, unknown>): boolean | void {
|
|
108
|
-
if (message === undefined) return this.logger.debug()
|
|
109
|
-
|
|
110
|
-
if (fields) {
|
|
111
|
-
this.logger.debug({ obj: fields }, message)
|
|
112
|
-
} else {
|
|
113
|
-
this.logger.debug(message)
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
info(): boolean
|
|
118
|
-
info(message: string, fields?: Record<string, unknown>): void
|
|
119
|
-
info(message?: string, fields?: Record<string, unknown>): boolean | void {
|
|
120
|
-
if (message === undefined) return this.logger.info()
|
|
121
|
-
|
|
122
|
-
if (fields) {
|
|
123
|
-
this.logger.info({ obj: fields }, message)
|
|
124
|
-
} else {
|
|
125
|
-
this.logger.info(message)
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
warn(): boolean
|
|
130
|
-
warn(message: string, fields?: Record<string, unknown>): void
|
|
131
|
-
warn(message?: string, fields?: Record<string, unknown>): boolean | void {
|
|
132
|
-
if (message === undefined) return this.logger.warn()
|
|
133
|
-
|
|
134
|
-
if (fields) {
|
|
135
|
-
this.logger.warn({ obj: fields }, message)
|
|
136
|
-
} else {
|
|
137
|
-
this.logger.warn(message)
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
error(): boolean
|
|
142
|
-
error(message: string, fields?: Record<string, unknown>): void
|
|
143
|
-
error(message?: string, fields?: Record<string, unknown>): boolean | void {
|
|
144
|
-
if (message === undefined) return this.logger.error()
|
|
145
|
-
|
|
146
|
-
if (fields) {
|
|
147
|
-
this.logger.error({ obj: fields }, message)
|
|
148
|
-
} else {
|
|
149
|
-
this.logger.error(message)
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
fatal(): boolean
|
|
154
|
-
fatal(message: string, fields?: Record<string, unknown>): void
|
|
155
|
-
fatal(message?: string, fields?: Record<string, unknown>): boolean | void {
|
|
156
|
-
if (message === undefined) return this.logger.fatal()
|
|
157
|
-
|
|
158
|
-
if (fields) {
|
|
159
|
-
this.logger.fatal({ obj: fields }, message)
|
|
160
|
-
} else {
|
|
161
|
-
this.logger.fatal(message)
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
}
|