Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
const getDefaults = (options, pkg) => {
options = extend({}, pkg.rollup, options)
options = pkg.rollupConfig ? extend(options, pkg.rollupConfig) : options
options = pkg.config && pkg.config.rollup ? extend(options, pkg.config.rollup) : options
options.onwarn = typeof options.onwarn === 'function'
? options.onwarn
: (er) => {}
// smart resolving for plugins
options.plugins = arrayify(options.plugins).map((plugin) => {
if (typeof plugin === 'string') {
return require('rollup-plugin-' + plugin)()
}
if (Array.isArray(plugin)) {
const fn = typeof plugin[0] === 'function'
? plugin[0]
: require('rollup-plugin-' + plugin[0])
const getDefaults = (options, pkg) => {
options = extend({}, pkg.rollup, options)
options = pkg.rollupConfig ? extend(options, pkg.rollupConfig) : options
options = pkg.config && pkg.config.rollup ? extend(options, pkg.config.rollup) : options
options.onwarn = typeof options.onwarn === 'function'
? options.onwarn
: (er) => {}
// smart resolving for plugins
options.plugins = arrayify(options.plugins).map((plugin) => {
if (typeof plugin === 'string') {
return require('rollup-plugin-' + plugin)()
}
if (Array.isArray(plugin)) {
const fn = typeof plugin[0] === 'function'
? plugin[0]
: require('rollup-plugin-' + plugin[0])
return fn(plugin[1])
}
export function defaultOptions(options = {}) {
const cfg = { ...options };
const types = defaultTypes(cfg.extendTypes);
const opts = extend(
{
fields: false,
files: false,
multipart: true,
textLimit: false,
formLimit: false,
jsonLimit: false,
jsonStrict: true,
detectJSON: false,
bufferLimit: false,
buffer: false,
strict: true,
// query string `parse` options
delimiter: '&',
decodeURIComponent: querystring.unescape,
// plugin for `ongenerate` and `onwrite` hooks
options.plugins.push({
name: 'rolldown-hooks',
onwrite: (opts) => (
typeof options.onwrite === 'function' && options.onwrite(opts)
),
ongenerate: (opts) => (
typeof options.ongenerate === 'function' && options.ongenerate(opts)
)
})
// prevent rollup from throwing
// if unknown options is passed
// such as `options.ongenerate`
// and `options.onwrite`
const opts = extend({}, options)
delete opts['ongenerate']
delete opts['onwrite']
return opts
}
const getDefaults = (options, pkg) => {
options = extend({}, pkg.rollup, options)
options = pkg.rollupConfig ? extend(options, pkg.rollupConfig) : options
options = pkg.config && pkg.config.rollup ? extend(options, pkg.config.rollup) : options
options.onwarn = typeof options.onwarn === 'function'
? options.onwarn
: (er) => {}
// smart resolving for plugins
options.plugins = arrayify(options.plugins).map((plugin) => {
if (typeof plugin === 'string') {
return require('rollup-plugin-' + plugin)()
}
if (Array.isArray(plugin)) {
const fn = typeof plugin[0] === 'function'
? plugin[0]
: require('rollup-plugin-' + plugin[0])
return fn(plugin[1])
throw new Error("Source does not have required property '_order' as an array.");
}
if (!isObj(insert) || !insert.hasOwnProperty("_order") || !Array.isArray(insert._order)) {
throw new Error("insert does not have required property '_order' as an array");
}
source._order = diff(source._order, Object.keys(insert));
let index = source._order.indexOf(before);
source._order.splice(index, 0, ...insert._order);
delete insert._order;
return extendShallow(source, insert);
}
export function defaultTypes(types = {}) {
const allTypes = { ...types };
return extend(
{
multipart: ['multipart/form-data'],
text: ['text/*'],
form: ['application/x-www-form-urlencoded'],
json: [
'application/json',
'application/json-patch+json',
'application/vnd.api+json',
'application/csp-report',
],
buffer: ['text/*'],
},
allTypes,
);
}
export function defaultTypes(types = {}) {
const allTypes = { ...types
};
return extend({
multipart: ['multipart/form-data'],
text: ['text/*'],
form: ['application/x-www-form-urlencoded'],
json: ['application/json', 'application/json-patch+json', 'application/vnd.api+json', 'application/csp-report'],
buffer: ['text/*']
}, allTypes);
}
export function isValid(method) {
export function extend(source, ext) {
let { _order: srcOrder } = source,
{ _order: extOrder, ...props } = ext,
extKeys = Object.keys(props);
let newTokens = diff(extKeys, srcOrder);
let def = clone(source);
return extendShallow(def, ext, {
_order: srcOrder.concat(newTokens)
});
}
export function defaultOptions(options = {}) {
const cfg = { ...options
};
const types = defaultTypes(cfg.extendTypes);
const opts = extend({
fields: false,
files: false,
multipart: true,
textLimit: false,
formLimit: false,
jsonLimit: false,
jsonStrict: true,
detectJSON: false,
bufferLimit: false,
buffer: false,
strict: true,
delimiter: '&',
decodeURIComponent: querystring.unescape,
maxKeys: 1000
}, cfg);
opts.delimiter = opts.sep || opts.delimiter;