{"version":3,"sources":["jsdelivr-header.js","/npm/group-values-by-key@1.0.1/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,MAAM,EAAI,QAAQ,SASZ,eAAiB,CAAC,EAAQ,IAAY,IAE1C,EAAO,GAAO,EAAE,OAAO,QAAS,EAAE,MAAM,EAAK,GAAS,EAalD,iBAAmB,IACvB,MAAM,EAAO,EAAE,KACb,EAAE,IAAI,EAAE,MACR,EAAE,QACF,EAAE,KAHS,CAIX,GACI,EAAS,EAAE,KAEf,EAAE,QAAQ,EAAE,GAAI,CAAC,GACjB,EAAE,KAAI,IAAM,KAHC,CAIb,GAIF,OAFA,EAAK,QAAQ,eAAe,EAAQ,IAE7B,CAAM,EAGf,OAAO,QAAU","file":"/npm/group-values-by-key@1.0.1/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/group-values-by-key@1.0.1/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","const R = require(\"ramda\");\n\n/** add a group of values inside a given object\n *\n * @param {Object} groups - object to store groups of values\n * @param {Object[]} objects - array of object\n * @param {String} key - key to retreive values\n * @api private\n */\nconst addValuesByKey = (groups, objects) => key => {\n  // eslint-disable-next-line no-param-reassign\n  groups[key] = R.filter(Boolean, R.pluck(key, objects));\n};\n\n/** group values of two objects by their key\n *\n * @param {Object[]} objects - array of object\n * @return {Object} object grouping values\n * @api public\n * @example\n *\n *    groupValuesByKey({a:2}, {a:3, b:1}) //=> { a: [ 2, 3 ], b: [ 1 ] }\n *\n */\nconst groupValuesByKey = objects => {\n  const keys = R.pipe(\n    R.map(R.keys),\n    R.flatten,\n    R.uniq\n  )(objects);\n  const groups = R.pipe(\n    // eslint-disable-next-line no-underscore-dangle\n    R.pickAll(R.__, {}),\n    R.map(() => [])\n  )(keys);\n\n  keys.forEach(addValuesByKey(groups, objects));\n\n  return groups;\n};\n\nmodule.exports = groupValuesByKey;\n"]}