prod/service-worker-28ddbc7ef7a575da0539a0f05f4bfdae.js
function filterInclusiveStart(rows, targetValue, index) {
  var indexFields = index.def.fields;
  for (var i = 0, len = rows.length; i < len; i++) {
    var row = rows[i];

    // shave off any docs at the beginning that are <= the
    // target value

    var docKey = getKeyFromDoc(row.doc, index);
    if (indexFields.length === 1) {
      docKey = docKey[0]; // only one field, not multi-field
    } else { // more than one field in index
      // in the case where e.g. the user is searching {$gt: {a: 1}}
      // but the index is [a, b], then we need to shorten the doc key
      while (docKey.length > targetValue.length) {
        docKey.pop();
      }
    }
    //ABS as we just looking for values that don't match
    if (Math.abs(collate.collate(docKey, targetValue)) > 0) {
      // no need to filter any further; we're past the key
      break;
    }
  }
  return i > 0 ? rows.slice(i) : rows;
}
function filterInclusiveStart(rows, targetValue, index) {
  var indexFields = index.def.fields;
  for (var i = 0, len = rows.length; i < len; i++) {
    var row = rows[i];

    // shave off any docs at the beginning that are <= the
    // target value

    var docKey = getKeyFromDoc(row.doc, index);
    if (indexFields.length === 1) {
      docKey = docKey[0]; // only one field, not multi-field
    } else { // more than one field in index
      // in the case where e.g. the user is searching {$gt: {a: 1}}
      // but the index is [a, b], then we need to shorten the doc key
      while (docKey.length > targetValue.length) {
        docKey.pop();
      }
    }
    //ABS as we just looking for values that don't match
    if (Math.abs(collate.collate(docKey, targetValue)) > 0) {
      // no need to filter any further; we're past the key
      break;
    }
  }
  return i > 0 ? rows.slice(i) : rows;
}
function filterInclusiveStart ( rows , targetValue , index ) { var indexFields = index . def . fields ; for ( var i = 0 , len = rows . length ; i < len ; i ++ ) { var row = rows [ i ] ; // shave off any docs at the beginning that are <= the // target value var docKey = getKeyFromDoc ( row . doc , index ) ; if ( indexFields . length === 1 ) { docKey = docKey [ 0 ] ; // only one field, not multi-field } else { // more than one field in index // in the case where e.g. the user is searching {$gt: {a: 1}} // but the index is [a, b], then we need to shorten the doc key while ( docKey . length > targetValue . length ) { docKey . pop ( ) ; } } //ABS as we just looking for values that don't match if ( Math . abs ( collate . collate ( docKey , targetValue ) ) > 0 ) { // no need to filter any further; we're past the key break ; } } return i > 0 ? rows . slice ( i ) : rows ; }
have to do this manually because REASONS. I don't know why CouchDB didn't implement inclusive_start
have to do this manually because REASONS . I don t know why CouchDB didn t implement inclusive_start