Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
@skava/graphql / src / models / Loyalty.graphql.ts
Size: Mime:
import { gql } from 'apollo-server'

export default gql`
  type Points {
    adjustedPoints: String
    balancedPoints: String
    date: String
    earnedPoints: String
    redeemedPoints: String
    startPoints: String
    transactionDate: String
  }

  type BuyInfoLoyalty {
    loyaltypoints: String
    points: [NameValue]
  }

  type LoyaltyBuyInfo {
    loyalty: BuyInfoLoyalty
  }

  type LoyaltyItemInfo {
    additionalinfo: [LabelValue]
    flags: [LabelValue]
    itemid: String
  }

  type LoyaltyState {
    additionalinfo: [LabelValue]
    count: String
    expirytime: String
    starttime: String
    status: String
  }

  type LoyaltyCartInfo {
    total: String
  }

  # this should be transformed top level...
  type LoyaltyStoreInfo {
    identifier: String
  }

  type TransactionDetails {
    transactiondetails: [NameValue]
  }

  # we should not need this, it's extra data and we already have user?
  type LoyaltyUserInfo {
    additionalinfo: [LabelValue]
    preferences: [LabelValue]
    startdate: String
    userid: String
  }

  type LoyaltyProperties {
    buyinfo: LoyaltyBuyInfo
    cartInfo: LoyaltyCartInfo
    iteminfo: LoyaltyItemInfo
    state: LoyaltyState
    storeinfo: [LoyaltyStoreInfo]
    transactioninfo: [TransactionDetails]
    userinfo: [LoyaltyUserInfo]
  }

  type LoyaltyPackage {
    # should be ID! ?
    identifier: String
    properties: LoyaltyProperties
  }

  type TransactionList {
    type: String
    count: Int
    transactionList: [Points]
    earnedloyaltypoints: [Points]
    loyaltypackages: [LoyaltyPackage]
  }

  type LoyaltyPoints {
    type: String
    status: String
    count: String
    points: [LabelValue]
    currentpoints: LabelValue
    earnedpoints: LabelValue
    testpoints: String
  }

  type Loyalty {
    transaction: TransactionList
    loyaltyPoints: LoyaltyPoints
  }
`