{"version":3,"sources":["https://lively-kernel.org/lively4/BP2019RH1/src/internal/individuals-as-points/common/data-store.js"],"names":["IndividualsProcessor","constructor","instance","valuesByAttribute","initializeWithIndividualsFromKenia","individuals","getValuesForAttribute","attribute","individualsProcessor"],"mappings":";;;;;;;;AAAA;;;;;;;;;;;AAaA,YAAMA,oBAAN,CAA2B;;AAEzBC,sBAAa;AACZ,cAAG,CAAED,qBAAqBE,QAA1B,EAAmC;AACjC,iBAAKC,iBAAL,GAAyB,EAAzB;AACAH,iCAAqBE,QAArB,GAAgC,IAAhC;AACD;;AAED,iBAAOF,qBAAqBE,QAA5B;AACA;;AAED;AACA;AACA;;AAEAE,2CAAmCC,WAAnC,EAAgD;AAC9C,eAAKF,iBAAL,GAAyB;AACvB,iBAAK,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,CADkB;AAEvB,iBAAK,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb,CAFkB;AAGvB,iBAAK,CAAC,IAAD,EAAO,IAAP,EAAa,IAAb;AAHkB,WAAzB;AAKD;;AAEDG,8BAAsBC,SAAtB,EAAgC;AAC9B,iBAAO,KAAKJ,iBAAL,CAAuBI,SAAvB,CAAP;AACD;;AAED;AACA;AACA;;;AA7ByB;;;;;;;;;;;;;;;AAkC3B,YAAMC,uBAAuB,IAAIR,oBAAJ,EAA7B;;;;;;;;;;;;;;;;yBAEeQ,oB","file":"data-store.js","sourcesContent":["/* \nThis singleton class computes the unique values for the important attributes of the individuals applications. An example internal data structure could look like the following\n\nvaluesByAttributes: {\n  \"age\": [\"18-25\", \"26-40\", ...],\n  \"gender\": [\"male\", \"NC\", ...],\n}\n  \nIt also exposes an api that finds the unique value for an individual if the value string does not match the unique value classes (e.g. age is 19 => 18-25)\n*/\n\n\n\nclass IndividualsProcessor {\n  \n  constructor(){\n   if(! IndividualsProcessor.instance){\n     this.valuesByAttribute = {};\n     IndividualsProcessor.instance = this;\n   }\n\n   return IndividualsProcessor.instance;\n  }\n  \n  // ------------------------------------------\n  // Public Methods\n  // ------------------------------------------\n  \n  initializeWithIndividualsFromKenia(individuals) {\n    this.valuesByAttribute = {\n      \"a\": [\"aa\", \"ab\", \"ac\"],\n      \"b\": [\"ba\", \"bb\", \"bc\"],\n      \"c\": [\"ca\", \"cb\", \"cc\"]\n    }\n  }\n  \n  getValuesForAttribute(attribute){\n    return this.valuesByAttribute[attribute];\n  }\n  \n  // ------------------------------------------\n  // Private Methods\n  // ------------------------------------------\n  \n  \n}\n\nconst individualsProcessor = new IndividualsProcessor();\n\nexport default individualsProcessor;"]}