| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 | /*! * compressible * Copyright(c) 2013 Jonathan Ong * Copyright(c) 2014 Jeremiah Senkpiel * Copyright(c) 2015 Douglas Christopher Wilson * MIT Licensed */'use strict'/** * Module dependencies. * @private */var db = require('mime-db')/** * Module variables. * @private */var COMPRESSIBLE_TYPE_REGEXP = /^text\/|\+(?:json|text|xml)$/ivar EXTRACT_TYPE_REGEXP = /^\s*([^;\s]*)(?:;|\s|$)//** * Module exports. * @public */module.exports = compressible/** * Checks if a type is compressible. * * @param {string} type * @return {Boolean} compressible * @public */function compressible (type) {  if (!type || typeof type !== 'string') {    return false  }  // strip parameters  var match = EXTRACT_TYPE_REGEXP.exec(type)  var mime = match && match[1].toLowerCase()  var data = db[mime]  // return database information  if (data && data.compressible !== undefined) {    return data.compressible  }  // fallback to regexp or unknown  return COMPRESSIBLE_TYPE_REGEXP.test(mime) || undefined}
 |