nativescript-aws-cognito
by aliyksel | v1.0.8
AWS Cognito Service limited edition
npm i --save nativescript-aws-cognito

nativescript-aws-cognito

This plugin is limited edition to use AWS Cognito services. if you want to buy full edition or other AWS services plugins then you can touch us with this url. www.cerensoftware.co.uk

You can look at sample project : https://github.com/aliyksel/loginproject (branch : cognito)

(Optional) Prerequisites / Requirements

if you get keychain error in iOS you have to install nativescript-custom-entitlements plugin to your project. you add this lines to app.entitlements file.

<dict>
<key>keychain-access-groups</key>
<array>
<string>$(AppIdentifierPrefix)org.nativescript.loginproject</string>
</array>
</dict>

Installation

tns plugin add nativescript-aws-cognito

Usage

import {AwsCognito, CognitoCommonDelegate} from "nativescript-aws-cognito";

create uerpool for a cognito user pool.

  AwsCognito.createUserPool(region, cliendId, secretId, poolId, delegate);
region : region of your pool. for example AWSRegionUSWest1.
delegate : instance of your class is implement from CognitoIdentityInteractiveAuthenticationDelegate.
delegate has startPasswordAuthentication method. this method is called when begin of  Authentication flow.
You must open login page.

you can create a new user.
   AwsCognito.registerUser(userName:, password:, attrubutes:Array<{key:string, value:string}>, delegate);   
    attrubutes : they are user attributes which are you select when define the pool.
    delegate : instance of your class is implement from CognitoCommonDelegate.
    delegate has 2 methods.
       onSuccess : it is called when action seccesfull
       onError :  it is called when action has an error.

After user created, cognito sen a digital code for confirmation to user email. you have to send digitalcode to cognito.
```js
    AwsCognito.confirmSignUp(userName,verifyCode, delegate);
```

delegate : instance of your class is implement from CognitoCommonDelegate.
    delegate has 2 methods.
       onSuccess : it is called when action seccesfull
       onError :  it is called when action has an error.


you can user details. if user signin you get details. if user not signin your class is called which is implement from CognitoIdentityInteractiveAuthenticationDelegate.

```js
    AwsCognito.getUserDetail(delegate:CognitoCommonDelegate);
```
you opened login page and you got username and password from user. you call login method.

```js
    AwsCognito.login(userName:String, password:String, delegate:CognitoCommonDelegate);
```
```js
    AwsCognito.signOut();
```

API

This plugin uses ObjectiveC AWS SDk and Java AWS Sdk.

License

Apache License Version 2.0, January 2004 2004