Вход Регистрация
Файл: error-kitty/node_modules/express/node_modules/accepts/node_modules/negotiator/lib/encoding.js
Строк: 130
<?php
module
.exports preferredEncodings;
preferredEncodings.preferredEncodings preferredEncodings;

function 
parseAcceptEncoding(accept) {
  var 
acceptableEncodings;

  if (
accept) {
    
acceptableEncodings accept.split(',').map(function(ei) {
      return 
parseEncoding(e.trim(), i);
    });
  } else {
    
acceptableEncodings = [];
  }

  if (!
acceptableEncodings.some(function(e) {
    return 
&& specify('identity'e);
  })) {
    
/*
     * If identity doesn't explicitly appear in the accept-encoding header,
     * it's added to the list of acceptable encoding with the lowest q
     *
     */
    
var lowestQ 1;

    for(var 
0acceptableEncodings.lengthi++){
      var 
acceptableEncodings[i];
      if(
&& e.lowestQ){
        
lowestQ e.q;
      }
    }
    
acceptableEncodings.push({
      
encoding'identity',
      
qlowestQ 2,
    });
  }

  return 
acceptableEncodings.filter(function(e) {
    return 
e;
  });
}

function 
parseEncoding(si) {
  var 
match s.match(/^s*(S+?)s*(?:;(.*))?$/);

  if (!
match) return null;

  var 
encoding match[1];
  var 
1;
  if (
match[2]) {
    var 
params match[2].split(';');
    for (var 
0params.length++) {
      var 
params[i].trim().split('=');
      if (
p[0] === 'q') {
        
parseFloat(p[1]);
        break;
      }
    }
  }

  return {
    
encodingencoding,
    
qq,
    
ii
  
};
}

function 
getEncodingPriority(encodingaccepted) {
  return (
accepted.map(function(a) {
    return 
specify(encodinga);
  }).
filter(Boolean).sort(function (ab) {
    if(
a.== b.s) {
      return 
a.b.? -1;
    } else {
      return 
a.b.? -1;
    }
  })[
0] || {s0q0});
}

function 
specify(encodingspec) {
  var 
0;
  if(
spec.encoding.toLowerCase() === encoding.toLowerCase()){
    
|= 1;
  } else if (
spec.encoding !== '*' ) {
    return 
null
  
}

  return {
    
ss,
    
qspec.q,
  }
};

function 
preferredEncodings(acceptprovided) {
  
accept parseAcceptEncoding(accept || '');
  if (
provided) {
    return 
provided.map(function(type) {
      return [
typegetEncodingPriority(typeaccept)];
    }).
filter(function(pair) {
      return 
pair[1].0;
    }).
sort(function(ab) {
      var 
pa a[1];
      var 
pb b[1];
      return (
pb.pa.q) || (pb.pa.s) || (pa.pb.i);
    }).
map(function(pair) {
      return 
pair[0];
    });
  } else {
    return 
accept.sort(function (ab) {
      
// revsort
      
return (b.a.q) || (a.b.i);
    }).
filter(function(type){
      return 
type.0;
    }).
map(function(type) {
      return 
type.encoding;
    });
  }
}
?>
Онлайн: 3
Реклама