Socket
Socket
Sign inDemoInstall

lunr

Package Overview
Dependencies
0
Maintainers
1
Versions
64
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 2.3.0 to 2.3.1

3

.eslintrc.json

@@ -28,3 +28,4 @@ {

"serializable", "tis", "twas", "int", "args", "unshift", "plugins", "upsert",
"upserting", "readonly", "baz", "tokenization", "lunrjs", "com"
"upserting", "readonly", "baz", "tokenization", "lunrjs", "com", "olivernn",
"github", "js"
]

@@ -31,0 +32,0 @@ }

# Changelog
## 2.3.1
* Add workaround for inconsistent browser behaviour [#279](https://github.com/olivernn/lunr.js/issues/279), thanks [Luca Ongaro](https://github.com/lucaong).
* Fix bug in intersect/union of `lunr.Set` [#360](https://github.com/olivernn/lunr.js/issues/360), thanks [Brandon Bethke](https://github.com/brandon-bethke-neudesic) for reporting.
## 2.3.0

@@ -4,0 +9,0 @@

@@ -88,2 +88,10 @@ /*!

if (other === lunr.Set.complete) {
return this
}
if (other === lunr.Set.empty) {
return other
}
if (this.length < other.length) {

@@ -117,3 +125,11 @@ a = this

lunr.Set.prototype.union = function (other) {
if (other === lunr.Set.complete) {
return lunr.Set.complete
}
if (other === lunr.Set.empty) {
return this
}
return new lunr.Set(Object.keys(this.elements).concat(Object.keys(other.elements)))
}

@@ -302,2 +302,7 @@ /*!

if (frame.node.final) {
/* In Safari, at this point the prefix is sometimes corrupted, see:
* https://github.com/olivernn/lunr.js/issues/279 Calling any
* String.prototype method forces Safari to "cast" this string to what
* it's supposed to be, fixing the bug. */
frame.prefix.charAt(0)
words.push(frame.prefix)

@@ -304,0 +309,0 @@ }

{
"name": "lunr",
"description": "Simple full-text search in your browser.",
"version": "2.3.0",
"version": "2.3.1",
"author": "Oliver Nightingale",

@@ -6,0 +6,0 @@ "keywords": ["search"],

@@ -1033,2 +1033,29 @@ suite('search', function () {

})
suite('different fields one without match', function () {
var assertions = function () {
test('no matches', function () {
assert.lengthOf(this.results, 0)
})
}
suite('#search', function () {
setup(function () {
this.results = this.idx.search('+title:plant +body:qwertyuiop')
})
assertions()
})
suite('#query', function () {
setup(function () {
this.results = this.idx.query(function (q) {
q.term('plant', { fields: ['title'], presence: lunr.Query.presence.REQUIRED })
q.term('qwertyuiop', { fields: ['body'], presence: lunr.Query.presence.REQUIRED })
})
})
assertions()
})
})
})

@@ -1035,0 +1062,0 @@

@@ -50,10 +50,33 @@ suite('lunr.Set', function () {

suite('populated set', function () {
test('contains both elements', function () {
var target = new lunr.Set (['bar'])
var result = target.union(this.set)
suite('with other populated set', function () {
test('contains both elements', function () {
var target = new lunr.Set (['bar'])
var result = target.union(this.set)
assert.isOk(result.contains('foo'))
assert.isOk(result.contains('bar'))
assert.isNotOk(result.contains('baz'))
assert.isOk(result.contains('foo'))
assert.isOk(result.contains('bar'))
assert.isNotOk(result.contains('baz'))
})
})
suite('with empty set', function () {
test('contains all elements', function () {
var target = new lunr.Set (['bar'])
var result = target.union(lunr.Set.empty)
assert.isOk(result.contains('bar'))
assert.isNotOk(result.contains('baz'))
})
})
suite('with complete set', function () {
test('contains all elements', function () {
var target = new lunr.Set (['bar'])
var result = target.union(lunr.Set.complete)
assert.isOk(result.contains('foo'))
assert.isOk(result.contains('bar'))
assert.isOk(result.contains('baz'))
})
})
})

@@ -101,4 +124,22 @@ })

})
suite('with empty set', function () {
test('returns empty set', function () {
var target = new lunr.Set(['foo']),
result = target.intersect(lunr.Set.empty)
assert.isNotOk(result.contains('foo'))
})
})
suite('with complete set', function () {
test('returns populated set', function () {
var target = new lunr.Set(['foo']),
result = target.intersect(lunr.Set.complete)
assert.isOk(result.contains('foo'))
})
})
})
})
})

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc