Server IP : 162.213.251.212 / Your IP : 18.218.88.176 [ Web Server : LiteSpeed System : Linux business55.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64 User : allssztx ( 535) PHP Version : 8.1.31 Disable Function : NONE Domains : 1 Domains MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/allssztx/nodevenv/needapair.com/20/lib/node_modules/append-field/lib/ |
Upload File : |
function valueType (value) { if (value === undefined) return 'undefined' if (Array.isArray(value)) return 'array' if (typeof value === 'object') return 'object' return 'scalar' } function setLastValue (context, step, currentValue, entryValue) { switch (valueType(currentValue)) { case 'undefined': if (step.append) { context[step.key] = [entryValue] } else { context[step.key] = entryValue } break case 'array': context[step.key].push(entryValue) break case 'object': return setLastValue(currentValue, { type: 'object', key: '', last: true }, currentValue[''], entryValue) case 'scalar': context[step.key] = [context[step.key], entryValue] break } return context } function setValue (context, step, currentValue, entryValue) { if (step.last) return setLastValue(context, step, currentValue, entryValue) var obj switch (valueType(currentValue)) { case 'undefined': if (step.nextType === 'array') { context[step.key] = [] } else { context[step.key] = Object.create(null) } return context[step.key] case 'object': return context[step.key] case 'array': if (step.nextType === 'array') { return currentValue } obj = Object.create(null) context[step.key] = obj currentValue.forEach(function (item, i) { if (item !== undefined) obj['' + i] = item }) return obj case 'scalar': obj = Object.create(null) obj[''] = currentValue context[step.key] = obj return obj } } module.exports = setValue