2.1.1 • Published 4 years ago

demand-bloc-quotes v2.1.1

Weekly downloads
3
License
BSD-2-Clause
Repository
github
Last release
4 years ago

BLoC to work with Karhoo Quotes API

License

⚠️ This package is work in progress and can not be used as an independent package.

Installation

npm i @karhoo/demand-bloc-quotes

Usage

import { getApi } from '@karhoo/demand-api'
import { QuotesBloc } from '@karhoo/demand-bloc-quotes'

const api = getApi({
  url: 'api',
  defaultRequestOptionsGetter: () => ({
    headers: {
      identifier: 'XXXX',
      referrer: 'https://example-referer.com/'
    }
  })
})

const quotesSearchParams = {
  originPlaceId: "ChIJpwBVsLIadkgRE767cq0HnXQ",
  destinationPlaceId: "ChIJmdRFlbIadkgRhYudNQm2yOc",
  localTimeOfPickup: "2020-05-20T12:00"
}

const quotesBloc = new QuotesBloc(api.quotesService)

quotesBloc.filters = {
  numOfLuggage: 2,
  numOfPassengers: 2,
}

quotesBloc.matchingQuotes.subscribe((data) => {
  // quotes that accepts 2 passengers and 2 bags
  console.log('Matching quotes', data)
})

quotesBloc.otherAvailibleQuotes.subscribe((data) => {
  // all other quotes that did not match filters
  console.log('Other quotes', data)
})

quotesBloc.loading.subscribe(isLoading => {
  console.log('isLoading', isLoading)
})

quotesBloc.quotesExpired.subscribe(() => {
  console.log('Quotes Expired')

  quotesBloc.refreshQuotes() // requests quotes with same search params
})

quotesBloc.requestQuotes(quotesSearchParams)
2.1.1

4 years ago

2.1.0

4 years ago

2.0.0

4 years ago