{"version":3,"sources":["https://lively-kernel.org/voices/BP2019RH1-report/content/topic5/tests/utils.js"],"names":["getMax","arrayOfNumbers","max","forEach","number","removeUnneededData","data","unusableData","individual","consent_withdrawn","push","splice","indexOf","index","id","themes","languages","recently_displaced","end_date","start_date","getHexStringWithTwoCharacters","result","toString","createAgeGroups","groups","element","bucket","getAgeBucketKey","age"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAO,eAASA,MAAT,CAAgBC,cAAhB,EAAgC;AACrC,YAAIC,MAAM,CAAC,CAAX;;AAEAD,uBAAeE,OAAf,CAAuBC,UAAU;AAC/B,cAAIA,SAASF,GAAb,EAAkBA,MAAME,MAAN;AACnB,SAFD;;AAIA,eAAOF,GAAP;AACD;;;;AAEM,eAASG,kBAAT,CAA4BC,IAA5B,EAAkC;AACvC,YAAIC,eAAe,EAAnB;AACAD,aAAKH,OAAL,CAAaK,cAAc;AACzB,cAAIA,WAAWC,iBAAX,KAAiC,MAArC,EAA6C;AAC3CF,yBAAaG,IAAb,CAAkBF,UAAlB;AACD;AACF,SAJD;;AAMAD,qBAAaJ,OAAb,CAAqBK,cAAc;AACjCF,eAAKK,MAAL,CAAYL,KAAKM,OAAL,CAAaJ,UAAb,CAAZ,EAAsC,CAAtC;AACD,SAFD;;AAIAF,aAAKH,OAAL,CAAa,CAACK,UAAD,EAAaK,KAAb,KAAuB;AAClCL,qBAAWM,EAAX,GAAgBD,KAAhB;AACA,iBAAOL,WAAWO,MAAlB;AACA,iBAAOP,WAAWQ,SAAlB;AACA,iBAAOR,WAAWC,iBAAlB;AACA,iBAAOD,WAAWS,kBAAlB;AACA,iBAAOT,WAAWU,QAAlB;AACA,iBAAOV,WAAWW,UAAlB;AACD,SARD;AASD;;;;AAEM,eAASC,6BAAT,CAAuChB,MAAvC,EAA+C;AACpD,YAAIA,UAAU,CAAd,EAAiB;AACf,iBAAO,IAAP;AACD;;AAED,YAAIiB,SAAS,EAAb;AACA,YAAIjB,SAAS,EAAb,EAAiB;AACfiB,oBAAU,GAAV;AACD;;AAED,eAAOA,SAASjB,OAAOkB,QAAP,CAAgB,EAAhB,CAAhB;AACD;;;;AAEM,eAASC,eAAT,CAAyBjB,IAAzB,EAA+B;AACpC,YAAIkB,SAAS,EAAb;;AAEAlB,aAAKH,OAAL,CAAasB,WAAW;AACtB,cAAIC,SAASC,gBAAgBF,QAAQG,GAAxB,CAAb;AACA,cAAI,CAACJ,OAAOE,MAAP,CAAL,EAAqB;AACnBF,mBAAOE,MAAP,IAAiB,EAAC,QAAQ,EAAT,EAAjB;AACD;AACDF,iBAAOE,MAAP,EAAepB,IAAf,CAAoBI,IAApB,CAAyBe,OAAzB;AACD,SAND;;AAQA,eAAOD,MAAP;AACD;;;;AAEM,eAASG,eAAT,CAAyBC,GAAzB,EAA8B;AACnC,gBAAO,IAAP;AACE,eAAKA,MAAM,EAAX;AACE,mBAAO,KAAP;AACF,eAAKA,MAAM,EAAX;AACE,mBAAO,OAAP;AACF,eAAKA,MAAM,EAAX;AACE,mBAAO,OAAP;AACF,eAAKA,MAAM,EAAX;AACE,mBAAO,OAAP;AACF,eAAKA,MAAM,EAAX;AACE,mBAAO,OAAP;AACF,eAAKA,QAAQ,SAAb;AACE,mBAAO,SAAP;AACF;AACE,mBAAO,SAAP;AAdJ;AAgBD","file":"utils.js","sourcesContent":["export function getMax(arrayOfNumbers) {\n  let max = -1\n  \n  arrayOfNumbers.forEach(number => {\n    if (number > max) max = number\n  })\n  \n  return max\n}\n\nexport function removeUnneededData(data) {\n  let unusableData = []\n  data.forEach(individual => {\n    if (individual.consent_withdrawn === \"TRUE\") {\n      unusableData.push(individual)\n    }\n  })\n  \n  unusableData.forEach(individual => {\n    data.splice(data.indexOf(individual), 1)\n  })\n\n  data.forEach((individual, index) => {\n    individual.id = index\n    delete individual.themes\n    delete individual.languages\n    delete individual.consent_withdrawn\n    delete individual.recently_displaced\n    delete individual.end_date\n    delete individual.start_date\n  })\n}\n\nexport function getHexStringWithTwoCharacters(number) {\n  if (number == 0) {\n    return \"00\"\n  } \n\n  let result = \"\"\n  if (number < 16) {\n    result += \"0\"\n  }\n\n  return result + number.toString(16)\n}\n\nexport function createAgeGroups(data) {  \n  let groups = {}\n  \n  data.forEach(element => {\n    let bucket = getAgeBucketKey(element.age)\n    if (!groups[bucket]) {\n      groups[bucket] = {\"data\": []}\n    }\n    groups[bucket].data.push(element)\n  })\n  \n  return groups\n}\n\nexport function getAgeBucketKey(age) {\n  switch(true) {\n    case age < 10:\n      return \"<10\"\n    case age < 15:\n      return \"10-14\"\n    case age < 18:\n      return \"15-17\"\n    case age < 36:\n      return \"18-35\"\n    case age < 55:\n      return \"36-54\"\n    case age === \"missing\":\n      return \"missing\"\n    default:\n      return \"over 55\"\n  }\n}"]}