form-urlencoded
Advanced tools
Comparing version 4.0.0 to 4.0.1
@@ -19,2 +19,3 @@ 'use strict'; | ||
ignorenull = Boolean(opts.ignorenull), | ||
skipBracket = Boolean(opts.skipBracket), | ||
encode = function encode(value) { | ||
@@ -40,5 +41,6 @@ return String(value).replace(/(?:[\0-\x1F"-&\+-\}\x7F-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/g, encodeURIComponent).replace(/ /g, '+').replace(/[!'()~\*]/g, function (ch) { | ||
arrnest = function arrnest(name, arr) { | ||
var brackets = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : skipBracket ? '' : '[]'; | ||
return arr.length ? filterjoin(arr.map(function (elem, index) { | ||
return skipIndex ? nest(name + '[]', elem) : nest(name + '[' + index + ']', elem); | ||
})) : encode(name + '[]'); | ||
return skipIndex ? nest(name + brackets, elem) : nest(name + '[' + index + ']', elem); | ||
})) : encode(name + brackets); | ||
}, | ||
@@ -45,0 +47,0 @@ nest = function nest(name, value) { |
@@ -9,2 +9,3 @@ // Filename: formurlencoded.js | ||
ignorenull = Boolean(opts.ignorenull), | ||
skipBracket = Boolean(opts.skipBracket), | ||
@@ -26,7 +27,7 @@ encode = value => String(value) | ||
arrnest = (name, arr) => arr.length | ||
arrnest = (name, arr, brackets = skipBracket ? '' : '[]') => arr.length | ||
? filterjoin(arr.map((elem, index) => skipIndex | ||
? nest(name + '[]', elem) | ||
? nest(name + brackets, elem) | ||
: nest(name + '[' + index + ']', elem))) | ||
: encode(name + '[]'), | ||
: encode(name + brackets), | ||
@@ -33,0 +34,0 @@ nest = (name, value, type = typeof value, f = null) => { |
@@ -6,3 +6,3 @@ { | ||
"module": "form-urlencoded", | ||
"version": "4.0.0", | ||
"version": "4.0.1", | ||
"description": "Return an object as an 'x-www-form-urlencoded' string", | ||
@@ -9,0 +9,0 @@ "author": "Chris <chris@bumblehead.com>", |
@@ -193,2 +193,9 @@ // Filename: form-urlencoded.spec.js | ||
it("should return array name without brackets (when skipBracket is true)", () => | ||
expect( | ||
formurlencoded({ | ||
key: ['val1'] | ||
}, { skipIndex: true, skipBracket: true }) | ||
).toBe('key=val1')); | ||
it("should return encoded urls with unicode characters", () => | ||
@@ -195,0 +202,0 @@ expect( |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
17598
294