Skip to content

Latest commit

 

History

History
47 lines (31 loc) · 1.37 KB

Readme.md

File metadata and controls

47 lines (31 loc) · 1.37 KB

idb-range

MongoDB inspired interface for IDBKeyRange.

Installation

npm install --save idb-range

Example

import range from 'idb-range'

range({ lte: 'a', gt: 'b' }) // IDBKeyRange {lower: "a", upper: "b", lowerOpen: true, upperOpen: true}
range({ gte: 'c' }) // IDBKeyRange {lower: "c", upper: undefined, lowerOpen: false, upperOpen: true}

// it accepts a specific value as a shortcut to IDBKeyRange.only
range('hello') // IDBKeyRange {lower: "hello", upper: "hello", lowerOpen: false, upperOpen: false}
// but it's more explicit to always use object notation
range({ eq: 'hello' })

// IDBKeyRange and no arguments are ignored
range(IDBKeyRange.only('hello')) // ignores IDBKeyRange instances
range() // null

range(opts)

Parse opts to valid IDBKeyRange.

Available options, when opts is an object:

  • gt - greater
  • lt - lighter
  • gte - greater equal
  • lte - lighter equal
  • eq - equal

License

MIT