@nevis-security/nevis-mobile-authentication-sdk-react
Version:
React Native plugin for Nevis Mobile Authentication SDK. Supports only mobile.
63 lines (58 loc) • 1.97 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.MetaDataImpl = exports.MetaData = void 0;
var _AndroidMetaData = require("./AndroidMetaData");
var _IOSMetaData = require("./IOSMetaData");
/**
* Copyright © 2024 Nevis Security AG. All rights reserved.
*/
/**
* The object containing information about the Nevis Mobile Authentication SDK.
*/
class MetaData {
/**
* The object containing information about the native iOS SDK.
*/
/**
* The object containing information about the native Android SDK.
*/
/**
* Default constructor for {@link MetaData}.
*
* @param iosMetaData the object containing information about the native iOS SDK.
* @param androidMetaData The object containing information about the native Android SDK.
* @returns a {@link MetaData} instance.
*/
static create(iosMetaData, androidMetaData) {
return new MetaDataImpl(iosMetaData, androidMetaData);
}
/**
* Alternate constructor that creates a {@link MetaData} from a json.
*
* @param json contains the source for instance creation.
* @returns a {@link MetaData} instance.
*/
static fromJson(json) {
return MetaDataImpl.fromJson(json);
}
}
exports.MetaData = MetaData;
class MetaDataImpl extends MetaData {
constructor(iosMetaData, androidMetaData) {
super();
this.iosMetaData = iosMetaData;
this.androidMetaData = androidMetaData;
}
static fromJson(json) {
const iosMetaData = json.iosMetaData && _IOSMetaData.IOSMetaData.fromJson(json.iosMetaData);
const androidMetaData = json.androidMetaData && _AndroidMetaData.AndroidMetaData.fromJson(json.androidMetaData);
if (iosMetaData === undefined && androidMetaData === undefined) {
throw new Error('Unknown MetaData; No iOS and Android metaData present');
}
return new MetaDataImpl(iosMetaData, androidMetaData);
}
}
exports.MetaDataImpl = MetaDataImpl;
//# sourceMappingURL=MetaData.js.map
;