You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							66 lines
						
					
					
						
							1.4 KiB
						
					
					
				
			
		
		
	
	
							66 lines
						
					
					
						
							1.4 KiB
						
					
					
				'use strict' | 
						|
 | 
						|
var jsonSafeStringify = require('json-stringify-safe') | 
						|
var crypto = require('crypto') | 
						|
var Buffer = require('safe-buffer').Buffer | 
						|
 | 
						|
var defer = typeof setImmediate === 'undefined' | 
						|
  ? process.nextTick | 
						|
  : setImmediate | 
						|
 | 
						|
function paramsHaveRequestBody (params) { | 
						|
  return ( | 
						|
    params.body || | 
						|
    params.requestBodyStream || | 
						|
    (params.json && typeof params.json !== 'boolean') || | 
						|
    params.multipart | 
						|
  ) | 
						|
} | 
						|
 | 
						|
function safeStringify (obj, replacer) { | 
						|
  var ret | 
						|
  try { | 
						|
    ret = JSON.stringify(obj, replacer) | 
						|
  } catch (e) { | 
						|
    ret = jsonSafeStringify(obj, replacer) | 
						|
  } | 
						|
  return ret | 
						|
} | 
						|
 | 
						|
function md5 (str) { | 
						|
  return crypto.createHash('md5').update(str).digest('hex') | 
						|
} | 
						|
 | 
						|
function isReadStream (rs) { | 
						|
  return rs.readable && rs.path && rs.mode | 
						|
} | 
						|
 | 
						|
function toBase64 (str) { | 
						|
  return Buffer.from(str || '', 'utf8').toString('base64') | 
						|
} | 
						|
 | 
						|
function copy (obj) { | 
						|
  var o = {} | 
						|
  Object.keys(obj).forEach(function (i) { | 
						|
    o[i] = obj[i] | 
						|
  }) | 
						|
  return o | 
						|
} | 
						|
 | 
						|
function version () { | 
						|
  var numbers = process.version.replace('v', '').split('.') | 
						|
  return { | 
						|
    major: parseInt(numbers[0], 10), | 
						|
    minor: parseInt(numbers[1], 10), | 
						|
    patch: parseInt(numbers[2], 10) | 
						|
  } | 
						|
} | 
						|
 | 
						|
exports.paramsHaveRequestBody = paramsHaveRequestBody | 
						|
exports.safeStringify = safeStringify | 
						|
exports.md5 = md5 | 
						|
exports.isReadStream = isReadStream | 
						|
exports.toBase64 = toBase64 | 
						|
exports.copy = copy | 
						|
exports.version = version | 
						|
exports.defer = defer
 | 
						|
 |