{"version":3,"sources":["../../ts/src/in-page/ItemListView.ts"],"names":["ItemListView","props","setItems","indexes","indexIdentifier","updated","each","idx","identifier","items","observableArray","result","activeIndex","subscribe","index"],"mappings":";;MASaA,Y,GAKT,sBAAYC,KAAZ,EAA0B;AAAA;;AAAA;;AAAA,SAU1BC,QAV0B,GAUf,UAACC,OAAD,EAAyBC,eAAzB,EAAqD;AAC5D,UAAIC,OAAO,GAAG,KAAd;;AAEA,kBAAEC,IAAF,CAAOH,OAAP,EAAgB,UAAAI,GAAG,EAAI;AACnB,YAAIA,GAAG,CAACC,UAAJ,KAAmBJ,eAAvB,EAAwC;AACpC,UAAA,KAAI,CAACK,KAAL,CAAWF,GAAG,CAACE,KAAf;;AACAJ,UAAAA,OAAO,GAAG,IAAV;AACH;AACJ,OALD;;AAOA,OAACA,OAAD,IAAY,KAAI,CAACI,KAAL,CAAW,EAAX,CAAZ;AACH,KArByB;;AACtB,SAAKR,KAAL,GAAaA,KAAb;AACA,SAAKQ,KAAL,GAAa,UAAGC,eAAH,CAAmB,EAAnB,CAAb;AAEA,SAAKR,QAAL,CAAcD,KAAK,CAACU,MAAN,GAAeR,OAA7B,EAAsCF,KAAK,CAACW,WAAN,EAAtC;AAEAX,IAAAA,KAAK,CAACU,MAAN,CAAaE,SAAb,CAAuB,UAAAF,MAAM;AAAA,aAAI,KAAI,CAACT,QAAL,CAAcS,MAAM,CAACR,OAArB,EAA8BF,KAAK,CAACW,WAAN,EAA9B,CAAJ;AAAA,KAA7B;AACAX,IAAAA,KAAK,CAACW,WAAN,CAAkBC,SAAlB,CAA4B,UAAAC,KAAK;AAAA,aAAI,KAAI,CAACZ,QAAL,CAAcD,KAAK,CAACU,MAAN,GAAeR,OAA7B,EAAsCW,KAAtC,CAAJ;AAAA,KAAjC;AACH,G","sourcesContent":["import { IndexResult, Result } from \"../types\"\nimport _ from \"underscore\"\nimport ko from \"knockout\"\n\ninterface Props {\n result: KnockoutObservable\n activeIndex: KnockoutObservable\n}\n\nexport class ItemListView {\n props: Props\n\n items: KnockoutObservableArray\n\n constructor(props: Props) {\n this.props = props\n this.items = ko.observableArray([])\n\n this.setItems(props.result().indexes, props.activeIndex())\n\n props.result.subscribe(result => this.setItems(result.indexes, props.activeIndex()))\n props.activeIndex.subscribe(index => this.setItems(props.result().indexes, index))\n }\n\n setItems = (indexes: IndexResult[], indexIdentifier: string) => {\n let updated = false\n\n _.each(indexes, idx => {\n if (idx.identifier === indexIdentifier) {\n this.items(idx.items)\n updated = true\n }\n })\n\n !updated && this.items([])\n }\n}\n"],"file":"ItemListView.js"}