Framework updates
🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
68
node_modules/axios/lib/helpers/toFormData.js
generated
vendored
68
node_modules/axios/lib/helpers/toFormData.js
generated
vendored
@@ -38,11 +38,14 @@ function removeBrackets(key) {
|
||||
*/
|
||||
function renderKey(path, key, dots) {
|
||||
if (!path) return key;
|
||||
return path.concat(key).map(function each(token, i) {
|
||||
// eslint-disable-next-line no-param-reassign
|
||||
token = removeBrackets(token);
|
||||
return !dots && i ? '[' + token + ']' : token;
|
||||
}).join(dots ? '.' : '');
|
||||
return path
|
||||
.concat(key)
|
||||
.map(function each(token, i) {
|
||||
// eslint-disable-next-line no-param-reassign
|
||||
token = removeBrackets(token);
|
||||
return !dots && i ? '[' + token + ']' : token;
|
||||
})
|
||||
.join(dots ? '.' : '');
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -92,21 +95,26 @@ function toFormData(obj, formData, options) {
|
||||
formData = formData || new (PlatformFormData || FormData)();
|
||||
|
||||
// eslint-disable-next-line no-param-reassign
|
||||
options = utils.toFlatObject(options, {
|
||||
metaTokens: true,
|
||||
dots: false,
|
||||
indexes: false
|
||||
}, false, function defined(option, source) {
|
||||
// eslint-disable-next-line no-eq-null,eqeqeq
|
||||
return !utils.isUndefined(source[option]);
|
||||
});
|
||||
options = utils.toFlatObject(
|
||||
options,
|
||||
{
|
||||
metaTokens: true,
|
||||
dots: false,
|
||||
indexes: false,
|
||||
},
|
||||
false,
|
||||
function defined(option, source) {
|
||||
// eslint-disable-next-line no-eq-null,eqeqeq
|
||||
return !utils.isUndefined(source[option]);
|
||||
}
|
||||
);
|
||||
|
||||
const metaTokens = options.metaTokens;
|
||||
// eslint-disable-next-line no-use-before-define
|
||||
const visitor = options.visitor || defaultVisitor;
|
||||
const dots = options.dots;
|
||||
const indexes = options.indexes;
|
||||
const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;
|
||||
const _Blob = options.Blob || (typeof Blob !== 'undefined' && Blob);
|
||||
const useBlob = _Blob && utils.isSpecCompliantForm(formData);
|
||||
|
||||
if (!utils.isFunction(visitor)) {
|
||||
@@ -148,6 +156,11 @@ function toFormData(obj, formData, options) {
|
||||
function defaultVisitor(value, key, path) {
|
||||
let arr = value;
|
||||
|
||||
if (utils.isReactNative(formData) && utils.isReactNativeBlob(value)) {
|
||||
formData.append(renderKey(path, key, dots), convertValue(value));
|
||||
return false;
|
||||
}
|
||||
|
||||
if (value && !path && typeof value === 'object') {
|
||||
if (utils.endsWith(key, '{}')) {
|
||||
// eslint-disable-next-line no-param-reassign
|
||||
@@ -156,17 +169,22 @@ function toFormData(obj, formData, options) {
|
||||
value = JSON.stringify(value);
|
||||
} else if (
|
||||
(utils.isArray(value) && isFlatArray(value)) ||
|
||||
((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value))
|
||||
)) {
|
||||
((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value)))
|
||||
) {
|
||||
// eslint-disable-next-line no-param-reassign
|
||||
key = removeBrackets(key);
|
||||
|
||||
arr.forEach(function each(el, index) {
|
||||
!(utils.isUndefined(el) || el === null) && formData.append(
|
||||
// eslint-disable-next-line no-nested-ternary
|
||||
indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),
|
||||
convertValue(el)
|
||||
);
|
||||
!(utils.isUndefined(el) || el === null) &&
|
||||
formData.append(
|
||||
// eslint-disable-next-line no-nested-ternary
|
||||
indexes === true
|
||||
? renderKey([key], index, dots)
|
||||
: indexes === null
|
||||
? key
|
||||
: key + '[]',
|
||||
convertValue(el)
|
||||
);
|
||||
});
|
||||
return false;
|
||||
}
|
||||
@@ -186,7 +204,7 @@ function toFormData(obj, formData, options) {
|
||||
const exposedHelpers = Object.assign(predicates, {
|
||||
defaultVisitor,
|
||||
convertValue,
|
||||
isVisitable
|
||||
isVisitable,
|
||||
});
|
||||
|
||||
function build(value, path) {
|
||||
@@ -199,9 +217,9 @@ function toFormData(obj, formData, options) {
|
||||
stack.push(value);
|
||||
|
||||
utils.forEach(value, function each(el, key) {
|
||||
const result = !(utils.isUndefined(el) || el === null) && visitor.call(
|
||||
formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers
|
||||
);
|
||||
const result =
|
||||
!(utils.isUndefined(el) || el === null) &&
|
||||
visitor.call(formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers);
|
||||
|
||||
if (result === true) {
|
||||
build(el, path ? path.concat(key) : [key]);
|
||||
|
||||
Reference in New Issue
Block a user