nativescript-aws-cognito
Version:
AWS Cognito Service limited edition
157 lines • 6.61 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var aws_cognito_common_1 = require("./aws-cognito.common");
var app = require("tns-core-modules/application");
var AwsCognito = (function (_super) {
__extends(AwsCognito, _super);
function AwsCognito() {
return _super !== null && _super.apply(this, arguments) || this;
}
AwsCognito.createUserPool = function (region, clientId, secretId, poolId, delegate) {
var context = app.android.context;
var reg;
switch (region) {
case "AWSRegionUSEast1": {
reg = com.amazonaws.regions.Regions.US_EAST_1;
break;
}
case "AWSRegionUSEast2": {
reg = com.amazonaws.regions.Regions.US_EAST_2;
break;
}
case "AWSRegionUSWest1": {
reg = com.amazonaws.regions.Regions.US_WEST_1;
break;
}
case "AWSRegionUSWest2": {
reg = com.amazonaws.regions.Regions.US_WEST_2;
break;
}
case "AWSRegionEUWest1": {
reg = com.amazonaws.regions.Regions.EU_WEST_1;
break;
}
case "AWSRegionEUWest2": {
reg = com.amazonaws.regions.Regions.EU_WEST_2;
break;
}
case "AWSRegionEUCentral1": {
reg = com.amazonaws.regions.Regions.EU_CENTRAL_1;
break;
}
case "AWSRegionAPSoutheast1": {
reg = com.amazonaws.regions.Regions.AP_SOUTHEAST_1;
break;
}
case "AWSRegionAPNortheast1": {
reg = com.amazonaws.regions.Regions.AP_NORTHEAST_1;
break;
}
case "AWSRegionAPNortheast2": {
reg = com.amazonaws.regions.Regions.AP_NORTHEAST_2;
break;
}
case "AWSRegionAPSoutheast2": {
reg = com.amazonaws.regions.Regions.AP_SOUTHEAST_2;
break;
}
case "AWSRegionAPSouth1": {
reg = com.amazonaws.regions.Regions.AP_SOUTH_1;
break;
}
case "AWSRegionSAEast1": {
reg = com.amazonaws.regions.Regions.SA_EAST_1;
break;
}
case "AWSRegionCNNorth1": {
reg = com.amazonaws.regions.Regions.CN_NORTH_1;
break;
}
case "AWSRegionCACentral1": {
reg = com.amazonaws.regions.Regions.CA_CENTRAL_1;
break;
}
case "AWSRegionUSGovWest1": {
reg = com.amazonaws.regions.Regions.GovCloud;
break;
}
}
this.region = region;
this.clientId = clientId;
this.secretId = secretId;
this.poolId = poolId;
var clientConfiguration = new com.amazonaws.ClientConfiguration();
this.userPool = new com.amazonaws.mobileconnectors.cognitoidentityprovider.CognitoUserPool(context, poolId, clientId, secretId, clientConfiguration, reg);
this.delegate = delegate;
};
AwsCognito.registerUser = function (userName, password, attrubutes, delegate) {
var userAttributes;
userAttributes = new com.amazonaws.mobileconnectors.cognitoidentityprovider.CognitoUserAttributes();
for (var _i = 0, attrubutes_1 = attrubutes; _i < attrubutes_1.length; _i++) {
var temp = attrubutes_1[_i];
userAttributes.addAttribute(temp.key, temp.value);
}
this.userPool.signUpInBackground(userName, password, userAttributes, null, new com.amazonaws.mobileconnectors.cognitoidentityprovider.handlers.SignUpHandler({
onSuccess: function (user, signUpConfirmationState, cognitoUserCodeDeliveryDetails) {
delegate.onSuccess(null);
},
onFailure: function (exception) {
delegate.onError(exception.getMessage());
}
}));
};
AwsCognito.confirmSignUp = function (userName, verifyCode, delegate) {
var user = this.userPool.getUser(userName);
var forcedAliasCreation = false;
user.confirmSignUpInBackground(verifyCode, forcedAliasCreation, new com.amazonaws.mobileconnectors.cognitoidentityprovider.handlers.GenericHandler({
onSuccess: function () {
delegate.onSuccess(null);
},
onFailure: function (exception) {
delegate.onError(exception.getMessage());
}
}));
};
AwsCognito.getUserDetail = function (delegate) {
var user = this.userPool.getCurrentUser();
user.getDetailsInBackground(new com.amazonaws.mobileconnectors.cognitoidentityprovider.handlers.GetDetailsHandler({
onSuccess: function (cognitoUserDetails) {
var count = cognitoUserDetails.getAttributes().getAttributes().keySet().size();
var mapSrc = cognitoUserDetails.getAttributes().getAttributes();
var arr = Array.create(java.lang.String, count);
arr = cognitoUserDetails.getAttributes().getAttributes().keySet().toArray(arr);
var map = new Map();
for (var _i = 0, arr_1 = arr; _i < arr_1.length; _i++) {
var tmp = arr_1[_i];
map.set(tmp, mapSrc.get(tmp));
}
map.set("userName", user.getUserId());
delegate.onSuccess(map);
},
onFailure: function (exception) {
exception.printStackTrace();
AwsCognito.delegate.startPasswordAuthentication();
}
}));
};
;
AwsCognito.login = function (userName, password, delegate) {
var worker = new Worker('./loginworker.js');
worker.postMessage({ userName: userName, password: password, region: this.region, clientId: this.clientId, secretId: this.secretId, poolId: this.poolId });
worker.onmessage = function (msg) {
if (msg.data.success) {
delegate.onSuccess(null);
}
else {
delegate.onError(msg.data.error);
}
};
};
AwsCognito.signOut = function () {
var user = this.userPool.getCurrentUser();
user.signOut();
};
return AwsCognito;
}(aws_cognito_common_1.Common));
exports.AwsCognito = AwsCognito;
//# sourceMappingURL=aws-cognito.android.js.map