{"version":3,"sources":["https://lively-kernel.org/voices/parsing-data/avf-parser.js"],"names":["AVFParser","loadKeysWithPrefixesFromUrls","urlsWithPrefixes","keys","forEach","urlWithPrefix","keySet","loadKeysFromUrl","push","apply","url","codePrefix","rawKeys","fetch","then","json","code","storeKeysToFile","themeKeySetName","basicKeySetName","basicKeys","text","keyString","key","replace","lively","files","saveFile","rebuildAndLoadCompressedIndividualsRaw","name","path","getDataObject","rebuildAndLoadCompressedIndividualsWithKeysFromFile","rebuildAndLoadCompressedIndividualsAnsweredThemes","rebuildAndLoadCompressedIndividualsGroupedThemes","rebuildAndLoadCompressedIndividualsGroupedAndAnsweredThemes","loadCompressedIndividualsRaw","loadCompressedIndividualsWithKeysFromFile","loadCompressedIndividualsAnsweredThemes","loadCompressedIndividualsGroupedThemes","loadCompressedIndividualsGroupedAndAnsweredThemes","rawData","ea","console","log","data","split","result","JSON","parse","loadMockData","size","baseValues","slice","length","shuffleArray","array","i","j","Math","floor","random","temp","loadCovidData","date","rebuildAndLoadCovidData","loadInferredCovidData","rebuildAndLoadInferredCovidData","loadCovidDataFlatThemes","rebuildAndLoadCovidDataFlatThemes","loadCovidDataMessageThemes","rebuildAndLoadCovidDataMessageThemes","rebuildAndLoadCovidSomDataMessageThemes","loadCovidSomDataMessageThemes","loadDistanceMatrix","all_attributes","getCoronaColorMap","getColorMap","getOchaColorMap","rawColorMap","colorMap"],"mappings":"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","file":"avf-parser.js","sourcesContent":["export class AVFParser {\n  \n  static async loadKeysWithPrefixesFromUrls (urlsWithPrefixes) {\n    let keys = [];\n    urlsWithPrefixes.forEach(async (urlWithPrefix) => {\n      let keySet = await this.loadKeysFromUrl(urlWithPrefix[\"url\"], urlWithPrefix[\"prefix\"])\n      keys.push.apply(keys, keySet)\n    })\n    return keys\n  }\n  \n  static async loadKeysFromUrl(url, codePrefix) {\n    let keys = []\n    let rawKeys = await fetch(url).then((keys) => keys.json())\n    rawKeys[\"Codes\"].forEach((code) => {\n      keys.push(codePrefix + code[\"StringValue\"])\n    })\n    return keys\n  }\n  \n  static async storeKeysToFile(keys, themeKeySetName=\"BASIC\", basicKeySetName=\"basicKeys\") {\n    \n    let basicKeys = await fetch(\"https://lively-kernel.org/voices/BP2019RH1-data/keys/\" + basicKeySetName + \".txt\").then((keys) => keys.text())\n    \n    let keyString = basicKeys;\n    keyString += \"\\n---themes\\n\"\n    keys.forEach((key) => {\n      keyString += key\n      keyString += \"\\n\"\n    })\n    keyString = keyString.replace(/\\n$/, \"\")\n    lively.files.saveFile(\"https://lively-kernel.org/voices/BP2019RH1-data/keys/\" + themeKeySetName + \".txt\", keyString)\n  }\n  \n  static async rebuildAndLoadCompressedIndividualsRaw(name=\"BASIC\") {\n    let path = \"https://lively-kernel.org/voices2/_vq/compressedIndividuals/\" + name + \"/rebuildRaw\"\n    return await AVFParser.getDataObject(path)\n  }\n  \n  static async rebuildAndLoadCompressedIndividualsWithKeysFromFile(name=\"BASIC\") {\n    let path = \"https://lively-kernel.org/voices2/_vq/compressedIndividuals/\" + name + \"/rebuildThemeObjectRaw\"\n    return await AVFParser.getDataObject(path)\n  }\n  \n  static async rebuildAndLoadCompressedIndividualsAnsweredThemes(name=\"BASIC\") {\n    let path = \"https://lively-kernel.org/voices2/_vq/compressedIndividuals/\" + name + \"/rebuildThemeObjectAnswered\"\n    return await AVFParser.getDataObject(path)\n  }\n  \n  static async rebuildAndLoadCompressedIndividualsGroupedThemes(name=\"BASIC\") {\n    let path = \"https://lively-kernel.org/voices2/_vq/compressedIndividuals/\" + name + \"/rebuildThemeObjectGroupedRaw\"\n    return await AVFParser.getDataObject(path)\n  }\n  \n  static async rebuildAndLoadCompressedIndividualsGroupedAndAnsweredThemes(name=\"BASIC\") {\n    let path = \"https://lively-kernel.org/voices2/_vq/compressedIndividuals/\" + name + \"/rebuildThemeObjectGroupedAnswered\"\n    return await AVFParser.getDataObject(path)\n  }\n  \n  static async loadCompressedIndividualsRaw(name=\"BASIC\") {\n    let path = \"https://lively-kernel.org/voices2/_vq/compressedIndividuals/\" + name + \"/loadRaw\"\n    return await AVFParser.getDataObject(path)\n  }\n  \n  static async loadCompressedIndividualsWithKeysFromFile(name=\"BASIC\") {\n    let path = \"https://lively-kernel.org/voices2/_vq/compressedIndividuals/\" + name + \"/loadThemeObjectRaw\"\n    return await AVFParser.getDataObject(path)\n  }\n  \n  static async loadCompressedIndividualsAnsweredThemes(name=\"BASIC\") {\n    let path = \"https://lively-kernel.org/voices2/_vq/compressedIndividuals/\" + name + \"/loadThemeObjectAnswered\"\n    return await AVFParser.getDataObject(path)\n  }\n  \n  static async loadCompressedIndividualsGroupedThemes(name=\"BASIC\") {\n    let path = \"https://lively-kernel.org/voices2/_vq/compressedIndividuals/\" + name + \"/loadThemeObjectGroupedRaw\"\n    return await AVFParser.getDataObject(path)\n  }\n  \n  static async loadCompressedIndividualsGroupedAndAnsweredThemes(name=\"BASIC\") {\n    let path = \"https://lively-kernel.org/voices2/_vq/compressedIndividuals/\" + name + \"/loadThemeObjectGroupedAnswered\"\n    return await AVFParser.getDataObject(path)\n  }\n  \n  static async getDataObject(path) {\n    let rawData = await fetch(path).then((ea) => ea.text())\n    console.log(rawData)\n    let data = rawData.split(\"\\n\")\n    let result = JSON.parse(data)\n    return result;\n  }\n  \n  static async loadMockData(size, name=\"BASIC\") {\n    let baseValues = await AVFParser.loadCompressedIndividualsWithKeysFromFile(name)\n    let result = baseValues.slice()\n    while (size > result.length) {\n      result.push.apply(result, baseValues)\n    }\n    AVFParser.shuffleArray(result)\n    return result.slice(0, size)   \n  }\n  \n  static shuffleArray(array) {\n    for (let i = array.length - 1; i > 0; i--) {\n      let j = Math.floor(Math.random() * (i + 1));\n      let temp = array[i];\n      array[i] = array[j];\n      array[j] = temp;\n    }\n  }\n  \n  static async loadCovidData(date=\"2020-03-24\") {\n    let path = \"https://lively-kernel.org/voices2/_vq/CoVid19-Kenya/\" + date + \"/loadHierarchicalThemes\"\n    return await AVFParser.getDataObject(path)\n  }\n  \n  static async rebuildAndLoadCovidData(date=\"2020-03-24\") {\n    let path = \"https://lively-kernel.org/voices2/_vq/CoVid19-Kenya/\" + date + \"/rebuildHierarchicalThemes\"\n    return await AVFParser.getDataObject(path)\n  }\n  \n    static async loadInferredCovidData(date=\"2020-03-24\") {\n    let path = \"https://lively-kernel.org/voices2/_vq/CoVid19-Kenya/\" + date + \"/loadHierarchicalInferredThemes\"\n    return await AVFParser.getDataObject(path)  \n  }\n  \n  static async rebuildAndLoadInferredCovidData(date=\"2020-03-24\") {\n    let path = \"https://lively-kernel.org/voices2/_vq/CoVid19-Kenya/\" + date + \"/rebuildHierarchicalInferredThemes\"\n    return await AVFParser.getDataObject(path)\n  }\n  \n  static async loadCovidDataFlatThemes(date=\"2020-03-24\") {\n    let path = \"https://lively-kernel.org/voices2/_vq/CoVid19-Kenya/\" + date + \"/loadFlatThemes\"\n    return await AVFParser.getDataObject(path)\n  }\n  \n  static async rebuildAndLoadCovidDataFlatThemes(date=\"2020-03-24\") {\n    let path = \"https://lively-kernel.org/voices2/_vq/CoVid19-Kenya/\" + date + \"/rebuildFlatThemes\"\n    return await AVFParser.getDataObject(path)\n  }\n  \n  static async loadCovidDataMessageThemes(date=\"2020-04-20\") {\n    let path = \"https://lively-kernel.org/voices2/_vq/CoVid19-Kenya/\" + date + \"/loadMessageThemes\"\n    return await AVFParser.getDataObject(path)\n  }\n  \n  static async rebuildAndLoadCovidDataMessageThemes(date=\"2020-04-20\") {\n    let path = \"https://lively-kernel.org/voices2/_vq/CoVid19-Kenya/\" + date + \"/rebuildMessageThemes\"\n    return await AVFParser.getDataObject(path)\n  }\n\n  static async rebuildAndLoadCovidSomDataMessageThemes(date=\"2020-05-06\") {\n    let path = \"https://lively-kernel.org/voices2/_vq/CoVid19-Som/\" + date + \"/rebuildMessageThemes\"\n    return await AVFParser.getDataObject(path)\n  }\n  \n  static async loadCovidSomDataMessageThemes(date=\"2020-05-06\") {\n    let path = \"https://lively-kernel.org/voices2/_vq/CoVid19-Som/\" + date + \"/loadMessageThemes\"\n    return await AVFParser.getDataObject(path)\n  }\n  \n  static async loadDistanceMatrix(date=\"2020-03-24\") {\n    let all_attributes = [\"age\", \"county\", \"themes\", \"gender\", \"constituency\", \"languages\"]\n    let path = \"https://lively-kernel.org/voices2/_vq/CoVid19/\" + date + \"/\" + \"2\" + \"/loadDistanceMatrix\"\n    return await AVFParser.getDataObject(path)\n  }\n  \n  static async getCoronaColorMap() {\n    let path = \"https://lively-kernel.org/voices/CoVid19-Kenya/color-map.json\"\n    return await this.getColorMap(path)\n  }\n  \n  static async getOchaColorMap() {\n    let path = \"https://lively-kernel.org/voices/voices-replaced/color-map.json\"\n    return await this.getColorMap(path)\n  }\n  \n  static async getColorMap(path) {\n    let rawColorMap = await fetch(path).then(result => result.text())\n    let colorMap = JSON.parse(rawColorMap)\n    return colorMap\n  }\n}\n"]}