all files / lib/ parse-options.js

100% Statements 13/13
100% Branches 10/10
100% Functions 1/1
100% Lines 12/12
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 133× 133× 47×   86×   133× 52×   81× 81×       133×     133×    
module.exports = function parseOptions (url, options, callback) {
  var opts = {}
  if (typeof url === 'string') {
    opts.url = url
  } else {
    opts = Object.assign(opts, url)
  }
  if (typeof options === 'function') {
    opts.success = options
  } else {
    if (typeof callback === 'function') opts.success = callback
    opts = Object.assign(opts, options)
  }
 
  // support legacy jquery options.type
  if (!opts.method && opts.type) {
    opts.method = opts.type
  }
 
  return opts
}