Git Product home page Git Product logo

checkout-graphql's People

Contributors

afmejia23 avatar allcontributors[bot] avatar athoscouto avatar brunoabreu avatar brunorodmoreira avatar danzanzini avatar darlenedms avatar emersonlaurentino avatar filafb avatar gabeluan avatar geonizeli avatar gvc avatar iago1501 avatar icazevedo avatar jeffersontuc avatar kaisermann avatar klzns avatar leoworkinggood avatar lucasecdb avatar lucis avatar marcoskwkm avatar matcastro avatar mmartyn avatar omninando avatar pedromtec avatar silviasfon avatar tlgimenes avatar victorhmp avatar viniagostini avatar wdsrocha avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

checkout-graphql's Issues

Pontos de extensão

Carrinho

Extensões de carrinho

  • Milhares de itens
  • Brinde
  • Simulação de frete
  • Cupom
  • Ordenação de itens

Extensões de Item

  • Exibir Taxa
  • Exibir Attachments
  • Assembly Options -- Attachment
  • Assembly Options -- Bundle Item
  • Assembly Options -- Bundle Item + Attachment
  • Assembly Options -- Subscription
  • Preço manual

Identificação

Extensões de identificação

  • Identificação por outros metódos -- Celular
  • Identificação por outros metódos -- CPF
  • Identificação por outros metódos -- Fingerprint

Profile

Settings

  • Exibir "Salvar dados do perfil" por default ou não (GDPR)

Extensões de profile

  • Telefone internacional
  • Campo adicional de dados pessoais pra preencher no VBase

Shipping

Settings

  • Exibir opções de entrega extensa
  • Chave de geolocation
  • Exibir mapa de pickup

Payment

Extensões de pagamento

  • Vale presente
  • Nova forma de pagamento -- Apple Pay
  • Nova forma de pagamento -- Customer Credit
  • Nova forma de pagamento outras

Resumo

Extensões do resumo

  • Dados adicionais de perfil
  • Dados adicionais de item
  • Dados adicionais de pagamento
  • Dados adicionais de totalizadores

GraphQL Schema

type Cart {
  id: ID
  profile: Profile
  items: [Item]
  shipping: Shipping
  payment: Payment
  coupon: Coupon
  totalizers: Totalizers
  userAuth: UserAuth
}

type Shipping {
  addresses: Addresses
  options: ShippingOptions
  parcels: [Parcel]
}

type Addresses {
  selected: Address
  saved: [Address]
}

type ShippingOptions {
  delivery: DeliveryOptions
  pickups: [Pickup]
}

type DeliveryOptions {
  cheapest: DeliveryOption
  fastest: DeliveryOption
  scheduled: DeliveryOption
  all: ExtendedDeliveryOption
}

scalar ItemIndex
scalar Date

type Price {
  value: Int
  currencyCode: String
}

type Estimate {
  type: EstimateType
  value: Int
}

type TimeFrame {
  start: Date
  end: Date
  price: Price
  tax: Price
}

enum EstimateType {
  MINUTE
  HOUR
  DAY
  BUSINESS_DAY
}

interface ShippingOption {
  price: Price
  estimate: Estimate
  timeFrames: [TimeFrame]
  selectedTimeFrame: TimeFrame
}

type DeliveryOption implements ShippingOption {
  numberOfParcels: Int
  price: Price
  estimate: Estimate
  timeFrames: [TimeFrame]
  selectedTimeFrame: TimeFrame
}

type ExtendedDeliveryOption implements ShippingOption {
  id: ID
  items: [ItemIndex]
  price: Price
  estimate: Estimate
  timeFrames: [TimeFrame]
  selectedTimeFrame: TimeFrame
}

type PickupOption implements ShippingOption {
  id: ID
  price: Price
  estimate: Estimate
  timeFrames: [TimeFrame]
  selectedTimeFrame: TimeFrame
}

type Pickup {
  id: ID
  name: String
  additionalInfo: String
  address: Address
  distance: Int
  pickupOptions: [PickupOption]
}

union SelectedOption = DeliveryOption | ExtendedDeliveryOption | PickupOption

type Parcel {
  price: Price
  selectedTimeFrame: TimeFrame
  selectedOption: SelectedOption
  pickupName: String
  items: [Item]
  seller: Seller
  address: Address
}

type Address {
  id: ID
  addressType: AddressType
  city: String
  complement: String
  country: String
  geoCoordinates: [Int]
  neighborhood: String
  number: String
  postalCode: String
  receiverName: String
  reference: String
  state: String
  street: String
}

enum AddressType {
  RESIDENTIAL
  COMMERCIAL
  INSTORE
  GIFT_REGISTRY
  PICKUP
  SEARCH
}

Mutations

updateAddress(address: Address)
selectAddress(address: Address)
selectDeliveryOption(option: Option)
selectPickupOption(pickupId: ID, pcikupOptionId: ID)

// Modo verboso
seletDeliveryOptions(options: [DeliveryOption])

use of the app

this app allows me to indicate the delivery method of the orderform using a specific pickup point?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.