{"version":3,"sources":["https://lively-kernel.org/lively4/lively4-jsx/src/client/reactive/components/rewritten/conduit/src/components/main-view-rp19.js"],"names":["articleStore","userStore","ReactiveMorph","YourFeedTab","GlobalFeedTab","TagFilterTab","ArticleList","router","MainView","attachedCallback","isDummy","addAExpr","newTarget","setPredicate","render","routingProps","tab","tag","articleList","articles","loading","totalPagesCount","currentPage","onSetPage","page","tagFilterTab","globalFeedTab","yourFeedTab"],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEOA,kB;;AACAC,e;;AACAC,mB;;AACAC,iB;;AACAC,mB;;AACAC,kB;;AACAC,iB;;AAEEC,Y,wEAAAA,M;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEM,YAAMC,QAAN,SAAuBN,aAAvB,CAAqC;;AAElDO,2BAAmB;AACjB;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA,wBAA8B,MAAM;AAClC,0FAAI,KAAKC,OAAL,EAAJ;AAAoB;AAApB,aADkC;AAElC,iBAAKC,QAAL,mBACE,OAAM;AAAM;AAAN,aAAN;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,cADF,eAEcC;AAAA;AAAa,uNAAaC,YAAb,0FAA0BD,SAA1B;AAAb,aAFd;AAFkC;AAKlC,uHAAaC,YAAb,YAA0B,0FAA1B;AACD,WAND;AAOD;;AAED,cAAMC,MAAN,GAAe;AAAA;;AACb,gBAAMC,eAAe,yGAAY,0FAAZ,YAArB;AACA,cAAI,gGAACA,YAAD,CAAJ;AAAmB;AAAnB,WACA,MAAMC,gHAAMD,YAAN,SAAN;AACA,gBAAME,gHAAMF,YAAN,SAAN;AACA,gBAAMG,cAAc;AAClBC,8HAAUnB,YAAV,cADkB;AAElBoB,6HAASpB,YAAT,eAFkB;AAGlBqB,qIAAiBrB,YAAjB,qBAHkB;AAIlBsB,iIAAatB,YAAb,UAJkB;AAKlBuB,uBAAWC;AAAA;AAAQ,mOAAoBA,IAApB;AAAR;AALO,WAApB;AAOA,gBAAMC,eAAe,EAAER,GAAF,EAArB;AACA,gBAAMS,gBAAgB,EAAEV,GAAF,EAAtB;AACA,gBAAMW,cAAc,EAAEX,GAAF,EAApB;AACA,+JAEe,aAFf,oHAGgB,8BAHhB,+DAKU,iIAAyB,MAAM,qMAAYW,WAAZ,EAA/B,CALV,qDAOU,MAAM,+MAAcD,aAAd,EAPhB,qDASU,sFAAO,MAAM,0MAAaD,YAAb,EAAb,CATV;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,2DAaM,MAAM,qMAAYP,WAAZ,EAbZ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAgBD;;AA3CiD;;AAAA;;yBAA/BV,Q","file":"main-view-rp19.js","sourcesContent":["'enable rp19-jsx';\n\nimport articleStore from 'src/client/reactive/components/rewritten/conduit/src/stores/articleStore.js';\nimport userStore from 'src/client/reactive/components/rewritten/conduit/src/stores/userStore.js';\nimport ReactiveMorph from 'src/client/reactive/components/rewritten/conduit/rpComponents/reactiveMorph.js';\nimport YourFeedTab from 'src/client/reactive/components/rewritten/conduit/src/components/main-view/your-feed-tab-rp19.js';\nimport GlobalFeedTab from 'src/client/reactive/components/rewritten/conduit/src/components/main-view/global-feed-tab-rp19.js';\nimport TagFilterTab from 'src/client/reactive/components/rewritten/conduit/src/components/main-view/tag-filter-tab-rp19.js';\nimport ArticleList from 'src/client/reactive/components/rewritten/conduit/src/components/main-view/article-list-rp19.js';\n\nimport { router } from 'src/client/reactive/components/rewritten/conduit/rpComponents/router-rp19.js';\n\nexport default class MainView extends ReactiveMorph {\n\n  attachedCallback() {\n    super.attachedCallback().then(() => {\n      if (this.isDummy()) return;\n      this.addAExpr(\n        aexpr(() => router().current)\n          .onChange(newTarget => articleStore.setPredicate(newTarget)));\n      articleStore.setPredicate(router().current);\n    });\n  }\n  \n  async render() {\n    const routingProps = router() && router().current;\n    if (!routingProps) return;\n    const tab = routingProps.tab;\n    const tag = routingProps.tag;\n    const articleList = {\n      articles: articleStore.articles,\n      loading: articleStore.isLoading,\n      totalPagesCount: articleStore.totalPagesCount,\n      currentPage: articleStore.page,\n      onSetPage: page => articleStore.page = page\n    };\n    const tagFilterTab = { tag };\n    const globalFeedTab = { tab };\n    const yourFeedTab = { tab };\n    return (\n      <div>\n        <div class='feed-toggle'>\n          <ul class='nav nav-pills outline-active'>\n\n            { userStore.currentUser && await YourFeedTab(yourFeedTab) }\n\n            { await GlobalFeedTab(globalFeedTab) }\n\n            { tag && await TagFilterTab(tagFilterTab) }\n\n          </ul>\n        </div>\n        { await ArticleList(articleList) }\n      </div>\n    );\n  }\n}"]}