ns-loyalty-web

1.0.0 • Public • Published

ns-loyalty-web

This library handles the interaction with the service layer for retrieving information about the loyalty program and the user's loyalty information.

Installing

All that is needed for adding this to your project is including the library in your package.json like so:

npm i @nuskin/ns-loyalty-web

or

yarn add @nuskin/ns-loyalty-web

How to use in your project.

Once you have imported the library into your project, you can use it like you see here:

import webLoyalty from '@nuskin/ns-loyalty-web'

webLoyalty.getAllLoyaltyInfo().then(response => {
    .
    .
    .
});

Please note: all functions are asynchronous, so make sure you handle the expected response appropriately.

Now you have a loyalty object which can be used for making one of the following requests:

  • getLoyaltyRewardsPoints
  • loyaltyCanOptIn
  • loyaltyOptIn
  • loyaltyOptOut
  • getViewedTandC
  • setUserViewedTandC

getLoyaltyRewardsPoints

Gets the loyalty rewards points.

Returns a Loyalty data in the following form:

{
    "buckets": {
        "withinSeven": [],
        "withinThirty": 0,
        "longTerm": 0
    },
    "optInStatus": true,
    "soonestExpiring": {
        "pointsToExpire": 0,
        "expirationDate": ""
    },
    "user": {
        "adrParticipant": "NO",
        "entityType": "DIST",
        "titleParticipant": "NO"
    },
    "userTier": {
        "name": "T1",
        "purchaseIncrement": 2500,
        "minSpend": 2500,
        "purchaseRatio": 0.05,
        "redemptionLimit": 0.6,
        "daysToExpire": 90,
        "spendWithinPeriod": null,
        "tierThreshold": null
    },
    "wallet": {
        "available": 0,
        "spent": 0,
        "spentInPeriod": 0,
        "expired": 0,
        "lifetimePointsEarned": 0
    }
}

loyaltyCanOptIn

Check if the user is eligible to opt-in.

Accepts an optional object value with the following optional property:

possiblyDistributorSignup
Boolean value indicating if the user is going through the distributor signup process.

Returns a true/false value indicating if the user can opt-in to the Loyalty program.

loyaltyOptIn

Opt in the user.

Returns an object with the following properties:

success
Boolean value indicating if the opt-in process was successful (this does not indicate if the user was opted-in).
optInStatus
Boolean value indicating if the user was opted-in.
message (only when success is false)
String value with an error message.

loyaltyOptOut

Opt out the user.

Returns an object with the following properties:

success
Boolean value indicating if the opt-out process was successful (this does not indicate if the user was opted-out).
optInStatus
Boolean value indicating if the user was opted-out.
message (only when success is false)
String value with an error message.

getViewedTandC

Check if user has viewed the terms and conditions.

Returns an object with the following properties:

viewed_tc
Boolean value indicating if the user has viewed the terms and conditions.

setUserViewedTandC

Sets that the user has viewed the terms and conditions.

Returns an object with the following properties:

success
Boolean value indicating if the user has viewed the terms and conditions.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

Readme

Keywords

none

Package Sidebar

Install

npm i ns-loyalty-web

Weekly Downloads

0

Version

1.0.0

License

ISC

Unpacked Size

40.1 kB

Total Files

19

Last publish

Collaborators

  • nuskin-cws