UNPKG

@nevis-security/nevis-mobile-authentication-sdk-react

Version:

React Native plugin for Nevis Mobile Authentication SDK. Supports only mobile.

73 lines (70 loc) 2.6 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.MetaData = void 0; var _reactNativeUuid = _interopRequireDefault(require("react-native-uuid")); var _MobileAuthenticationSdk = _interopRequireDefault(require("../MobileAuthenticationSdk")); var _MetaDataInMessage = require("../model/messages/in/MetaDataInMessage"); var _OperationIdMessage = require("../model/messages/out/OperationIdMessage"); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; } /** * Copyright © 2024 Nevis Security AG. All rights reserved. */ /** * The object containing information about the Nevis Mobile Authentication SDK. * * Usage example: * ```ts * import { Platform } from 'react-native'; * * async function getSdkVersion(): Promise<string> { * return Platform.select({ * android: async () => { * const metaData = await MetaData.androidMetaData(); * return formatted(metaData?.mobileAuthenticationVersion); * }, * ios: async () => { * const metaData = await MetaData.iosMetaData(); * return formatted(metaData?.mobileAuthenticationVersion); * }, * default: () => { * return Promise.any('Unknown'); * }, * })(); * } * * function formatted(version?: Version): string { * if (version === undefined) { * return 'Unknown'; * } * return `${version.major}.${version.minor}.${version.patch}.${version.buildNumber}`; * } * ``` */ class MetaData { /** * The object containing information about Nevis Mobile Authentication SDK for Android. */ static async androidMetaData() { const operationId = _reactNativeUuid.default.v4(); const message = new _OperationIdMessage.OperationIdMessage(operationId); return _MobileAuthenticationSdk.default.metaData(message).then(json => { const resultMessage = _MetaDataInMessage.MetaDataInMessage.fromJson(json); return resultMessage.androidMetaData; }); } /** * The object containing information about Nevis Mobile Authentication SDK for iOS. */ static async iosMetaData() { const operationId = _reactNativeUuid.default.v4(); const message = new _OperationIdMessage.OperationIdMessage(operationId); return _MobileAuthenticationSdk.default.metaData(message).then(json => { const resultMessage = _MetaDataInMessage.MetaDataInMessage.fromJson(json); return resultMessage.iosMetaData; }); } } exports.MetaData = MetaData; //# sourceMappingURL=MetaData.js.map