gramene-search 1.2.30 → 1.2.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;C,U;A,M,C,c,C,c,G,U;I,K,E,I;;A,M,C,c,C,c,G,O;I,U,E,I;I,G,W,G,G,C;e,8B,E,O;I,C;;A,M,C,c,C,c,G,U;I,U,E,I;I,G,W,G,G,C;e,iC,E,O;I,C;;A,M,C,c,C,c,G,a;I,U,E,I;I,G,W,G,G,C;e,oC,E,O;I,C;;A,M,C,c,C,c,G,W;I,U,E,I;I,G,W,G,G,C;e,kC,E,O;I,C;;A,M,C,c,C,c,G,M;I,U,E,I;I,G,W,G,G,C;e,gC;I,C;;A,M,C,c,C,c,G,O;I,U,E,I;I,G,W,G,G,C;e,iC;I,C;;A,M,C,c,C,c,G,O;I,U,E,I;I,G,W,G,G,C;e,iC;I,C;;A,M,C,c,C,c,G,K;I,U,E,I;I,G,W,G,G,C;e,+B;I,C;;;C,U;A,M,C,c,C,c,G,U;I,K,E,I;;A,c,E,O,U,C;;ACAA,GAAA,CAAA,0BAAA,GAAA,4CAAA,CAAA,wBAAA;;AACA,GAAA,CAAA,8BAAA,GAAA,4CAAA,CAAA,wBAAA;;AACA,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,wBAAA;;AACA,GAAA,CAAA,2BAAA,GAAA,4CAAA,CAAA,wBAAA;;AACA,GAAA,CAAA,8BAAA,GAAA,4CAAA,CAAA,wBAAA;S,4C,C,G,E,C;W,G,I,G,C,U,G,G;S,O,G,G;;A,C;S,wC,C,G,E,C;W,wC,C,G,K,sC,C,G,K,iD,C,G,K,wC;A,C;S,wC,G,C;I,K,C,G,C,S,E,oI;A,C;S,iD,C,C,E,M,E,C;I,E,G,C;I,E,S,C,M,M,U,uC,C,C,E,M;I,G,C,C,G,M,C,S,C,Q,C,I,C,C,E,K,C,C,E,E;I,E,E,C,M,M,K,C,C,W,E,C,G,C,C,W,C,I;I,E,E,C,M,G,K,C,M,G,U,K,C,I,C,C;I,E,E,C,M,S,gD,I,C,C,U,uC,C,C,E,M;A,C;S,sC,C,I,E,C;I,E,S,M,M,S,K,I,C,M,C,Q,K,I,I,I,E,U,M,I,S,K,C,I,C,I;A,C;S,wC,C,G,E,C;I,E,E,K,C,O,C,G,U,uC,C,G;A,C;S,uC,C,G,E,G,E,C;I,E,E,G,I,I,I,G,G,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;AA8De,GAAA,CAAA,8BAAA,GAAA,gCAAA,EACb,wBADa,IAEb,sBAFa,IAGb,kBAHa,IAIb,yBAJa,GAKbuP,iCALa;A,c,E,O,K,8B;;;;;AT9Ef,GAAA,CAAA,kCAAA,GAAA,4CAAA,CAAA,wBAAA;;C,U;A,M,C,c,C,yB,G,U;I,K,E,I;;A,yB,C,K,G,yB,C,O,G,yB,C,O,G,yB,C,M,Q,C;;AUHA,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,YAAA;;;;;;C,U;S,6B,C,G,E,C;I,E,S,M,M,Q,Y,M,C,Q,M,M,G,6B,Y,O,C,I,E,C;sB,I;I,C;S,6B,Y,Q,C,I,E,C;e,I,W,M,M,Q,K,I,C,W,K,M,I,I,K,M,C,S,I,M,W,I;I,C;W,6B,C,G;A,C;A,M,C,c,C,c,G,U;I,K,E,I;;A,c,E,O,U,C;;ACAA,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,YAAA;;AACA,GAAA,CAAA,8BAAA,GAAA,4CAAA,CAAA,cAAA;;;;AAGA,GAAA,CAAA,iCAAA,GAAA,4CAAA,CAAA,wBAAA;;AACA,GAAA,CAAA,+BAAA,GAAA,4CAAA,CAAA,wBAAA;;AACA,GAAA,CAAA,+BAAA,GAAA,4CAAA,CAAA,wBAAA;;AACA,GAAA,CAAA,+BAAA,GAAA,4CAAA,CAAA,wBAAA;;AACA,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,wBAAA;;;S,4C,C,G,E,C;W,G,I,G,C,U,G,G;S,O,G,G;;A,C;S,qC,C,Q,E,W,E,C;I,E,I,Q,Y,W,G,K,C,G,C,S,E,iC;A,C;S,uC,C,M,E,K,E,C;Q,G,C,C,G,C,E,C,G,K,C,M,E,C,G,C;Q,G,C,U,G,K,C,C;Q,U,C,U,G,U,C,U,I,K;Q,U,C,Y,G,I;Q,E,G,K,K,U,E,U,C,Q,G,I;Q,M,C,c,C,M,E,U,C,G,E,U;I,C;A,C;S,kC,C,W,E,U,E,W,E,C;I,E,E,U,E,uC,C,W,C,S,E,U;I,E,E,W,E,uC,C,W,E,W;W,W;A,C;S,+B,C,Q,E,U,E,C;I,E,S,U,M,Q,K,U,K,I,E,K,C,G,C,S,E,kD;I,Q,C,S,G,M,C,M,C,U,I,U,C,S;Q,W;Y,K,E,Q;Y,Q,E,I;Y,Y,E,I;;;I,E,E,U,E,qC,C,Q,E,U;A,C;S,qC,C,C,E,C,E,C;I,qC,G,M,C,c,a,e,C,E,E,E,E,C;Q,E,C,S,G,E;e,E;I,C;W,qC,C,C,E,C;A,C;S,kC,C,O,E,C;I,G,C,yB,G,+C;oB,oB,G,C;Q,G,C,K,G,qC,C,O,G,M;Q,E,E,yB,E,C;Y,G,C,S,G,qC,O,W;Y,M,G,O,C,S,C,K,E,S,E,S;Q,C,M,M,G,K,C,K,O,S;e,gD,O,M;I,C;A,C;S,gD,C,I,E,I,E,C;I,E,E,I,K,6B,C,I,O,M,Y,I,M,Q,W,I;S,E,E,I,U,C,E,K,C,G,C,S,E,wD;W,4C,C,I;A,C;S,4C,C,I,E,C;I,E,E,I,U,C,E,K,C,G,C,c,E,yD;W,I;A,C;S,+C,G,C;I,E,S,O,M,S,M,O,C,S,S,K;I,E,E,O,C,S,C,I,S,K;I,E,S,K,M,Q,U,I;Q,C;Q,O,C,S,C,O,C,I,C,O,C,S,C,O,iB,C;Q,C;e,I;I,C,Q,C,E,C;e,K;I,C;A,C;S,qC,C,C,E,C;I,qC,G,M,C,c,G,M,C,c,Y,e,C,E,E,C;e,E,C,S,I,M,C,c,C,E;I,C;W,qC,C,C;A,C;AAIA,GAAA,CAAIuD,8BAAQ,GAAA,EAAG,AAAH,SAAG,AAAH,EAAG,CAAA,4BAAf,EAAA,OAAA,GAAA,aAAA,EAAA,KAAA;IAAsB,KAAK,GAAC,4CAAN;IAAP,CAAA,GAAA,EAA6D,AAA7D,SAA6D,AAA7D,EAA6D,CAAA,4BAA7D,EAAA,OAAA,GAAA,aAAA,EAAA,CAAA;IAAgE,SAAS,GAAC,mBAAV;;AAE/E,GAAA,CAAI7C,+BAAS;IACX8C,QAAQ,EAAEC,+BAAAA,EAAAA,OAAAA;IACVC,UAAU,EAAEC,iCAAAA,EAAAA,OAAAA;IACZC,QAAQ,EAAEC,+BAAAA,EAAAA,OAAAA;IACVtH,QAAQ,EAAE6B,+BAAAA,EAAAA,OAAAA;IACV0F,KAAK,EAAEC,4BAAPD,EAAAA,OAAAA;;SAGOE,uCAAT,CAA2BC,YAA3B,EAAyC,CAAzC;IACE,GAAA,CAAMC,OAAO,GAAGD,YAAY,CAACC,OAA7B;IACA,EAAA,EAAGA,OAAO,IAAID,YAAY,CAACvT,QAAb,KAA0B,IAAxC,SACE,EACE,AAD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,EAAE+L,MAAR;OAA/C,EACE,AADF,SACE,AADF,EACE,CAAA,4BAAA,EAAA,OAAA,GAAA,aAAA,EAAA,CAAA,GAAA,IAAA,GAAA,+BAAA;AAGL,CATD;AAWe,GAAA,CAAA,8BAAA,GAAA,gCAAA,CAAQD,4BAAR;A,c,E,O,K,8B;;;;;C,U;S,6B,C,G,E,C;I,E,S,M,M,Q,Y,M,C,Q,M,M,G,6B,Y,O,C,I,E,C;sB,I;I,C;S,6B,Y,Q,C,I,E,C;e,I,W,M,M,Q,K,I,C,W,K,M,I,I,K,M,C,S,I,M,W,I;I,C;W,6B,C,G;A,C;A,M,C,c,C,c,G,U;I,K,E,I;;A,c,E,O,U,C;;AChBf,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,YAAA;;AACA,GAAA,CAAA,6BAAA,GAAA,4CAAA,CAAA,aAAA;;;AAEA,GAAA,CAAA,yCAAA,GAAA,4CAAA,CAAA,yBAAA;;AACA,GAAA,CAAA,yCAAA,GAAA,4CAAA,CAAA,yBAAA;;;;;;S,4C,C,G,E,C;W,G,I,G,C,U,G,G;S,O,G,G;;A,C;S,qC,C,Q,E,W,E,C;I,E,I,Q,Y,W,G,K,C,G,C,S,E,iC;A,C;S,uC,C,M,E,K,E,C;Q,G,C,C,G,C,E,C,G,K,C,M,E,C,G,C;Q,G,C,U,G,K,C,C;Q,U,C,U,G,U,C,U,I,K;Q,U,C,Y,G,I;Q,E,G,K,K,U,E,U,C,Q,G,I;Q,M,C,c,C,M,E,U,C,G,E,U;I,C;A,C;S,kC,C,W,E,U,E,W,E,C;I,E,E,U,E,uC,C,W,C,S,E,U;I,E,E,W,E,uC,C,W,E,W;W,W;A,C;S,+B,C,Q,E,U,E,C;I,E,S,U,M,Q,K,U,K,I,E,K,C,G,C,S,E,kD;I,Q,C,S,G,M,C,M,C,U,I,U,C,S;Q,W;Y,K,E,Q;Y,Q,E,I;Y,Y,E,I;;;I,E,E,U,E,qC,C,Q,E,U;A,C;S,qC,C,C,E,C,E,C;I,qC,G,M,C,c,a,e,C,E,E,E,E,C;Q,E,C,S,G,E;e,E;I,C;W,qC,C,C,E,C;A,C;S,kC,C,O,E,C;I,G,C,yB,G,+C;oB,oB,G,C;Q,G,C,K,G,qC,C,O,G,M;Q,E,E,yB,E,C;Y,G,C,S,G,qC,O,W;Y,M,G,O,C,S,C,K,E,S,E,S;Q,C,M,M,G,K,C,K,O,S;e,gD,O,M;I,C;A,C;S,gD,C,I,E,I,E,C;I,E,E,I,K,6B,C,I,O,M,Y,I,M,Q,W,I;S,E,E,I,U,C,E,K,C,G,C,S,E,wD;W,4C,C,I;A,C;S,4C,C,I,E,C;I,E,E,I,U,C,E,K,C,G,C,c,E,yD;W,I;A,C;S,+C,G,C;I,E,S,O,M,S,M,O,C,S,S,K;I,E,E,O,C,S,C,I,S,K;I,E,S,K,M,Q,U,I;Q,C;Q,O,C,S,C,O,C,I,C,O,C,S,C,O,iB,C;Q,C;e,I;I,C,Q,C,E,C;e,K;I,C;A,C;S,qC,C,C,E,C;I,qC,G,M,C,c,G,M,C,c,Y,e,C,E,E,C;e,E,C,S,I,M,C,c,C,E;I,C;W,qC,C,C;A,C;SAMSE,yCAAT,CAA6B7N,UAA7B,EAAyC,CAAzC;;QAEInI,MAAM,GAAE,IADH;QAEL6B,IAAI,EAAE,EAFD;QAGLwE,SAAS,GAAE,GAHN;QAILC,MAAM,EAAE,KAJH;QAKLZ,OAAO,EAAE,CALJ;QAMLG,QAAQ,EAAE,CANL;QAOLzE,QAAQ;;gBAEJgG,QAAQ,EAAEe,UAAU,CAACf,QADvB;gBAEEC,QAAQ,EAAEc,UAAU,CAACd,QAFvB;gBAGE/J,IAAI,EAAE6K,UAAU,CAAC7K,IAHnB;gBAIEoB,QAAQ,EAAEyJ,UAAU,CAACzJ,QAJvB;gBAKEgH,OAAO,EAAE,CALX;gBAMEG,QAAQ,EAAE,CANZ;gBAOES,MAAM,EAAE,KAPV;gBAQEJ,MAAM,EAAE,KAARA;;;;AAIP,CAAA;AAEKmM,GAAAA,CAAAA,8B,GAAAA,EAAAA,AAAAA,SAAAA,AAAAA,EAAAA,UAAAA,gBAAAA,EAAAA,CAAAA;I,+B,C,Q,E,gB;I,G,C,M,G,kC,C,Q;aACJ,QAAA,CAAY5D,KAAZ,EAAmB,CAAnB;QAAmB,GAAA,CAAA,KAAA;QAAA,qCAAA,OAAA,QAAA;QACjB,KAAA,GAAA,MAAA,CAAA,IAAA,OAAMA,KAAN;QACA,EAAA,GAAKA,KAAK,CAACyF,QAAN,CAAelT,cAAf,CAA8ByN,KAAK,CAACgE,YAAN,CAAmBtT,EAAjD,GACHsP,KAAK,CAAC0F,WAAN,CAAkB1F,KAAK,CAACgE,YAAN,CAAmBtT,EAAr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;Y,G,C,C,G,C,E,C,G,S,C,M,E,C,G,C;Y,G,C,M,G,S,C,C;gB,G,C,G,I,M,C,E,E,M,C,S,C,c,C,I,C,M,E,G,G,M,C,G,I,M,C,G;Q,C;e,M;I,C;W,8B,C,K,O,S;A,C;S,qC,C,Q,E,W,E,C;I,E,I,Q,Y,W,G,K,C,G,C,S,E,iC;A,C;S,uC,C,M,E,K,E,C;Q,G,C,C,G,C,E,C,G,K,C,M,E,C,G,C;Q,G,C,U,G,K,C,C;Q,U,C,U,G,U,C,U,I,K;Q,U,C,Y,G,I;Q,E,G,K,K,U,E,U,C,Q,G,I;Q,M,C,c,C,M,E,U,C,G,E,U;I,C;A,C;S,kC,C,W,E,U,E,W,E,C;I,E,E,U,E,uC,C,W,C,S,E,U;I,E,E,W,E,uC,C,W,E,W;W,W;A,C;S,+B,C,Q,E,U,E,C;I,E,S,U,M,Q,K,U,K,I,E,K,C,G,C,S,E,kD;I,Q,C,S,G,M,C,M,C,U,I,U,C,S;Q,W;Y,K,E,Q;Y,Q,E,I;Y,Y,E,I;;;I,E,E,U,E,qC,C,Q,E,U;A,C;S,qC,C,C,E,C,E,C;I,qC,G,M,C,c,a,e,C,E,E,E,E,C;Q,E,C,S,G,E;e,E;I,C;W,qC,C,C,E,C;A,C;S,kC,C,O,E,C;I,G,C,yB,G,+C;oB,oB,G,C;Q,G,C,K,G,qC,C,O,G,M;Q,E,E,yB,E,C;Y,G,C,S,G,qC,O,W;Y,M,G,O,C,S,C,K,E,S,E,S;Q,C,M,M,G,K,C,K,O,S;e,gD,O,M;I,C;A,C;S,gD,C,I,E,I,E,C;I,E,E,I,K,6B,C,I,O,M,Y,I,M,Q,W,I;S,E,E,I,U,C,E,K,C,G,C,S,E,wD;W,4C,C,I;A,C;S,4C,C,I,E,C;I,E,E,I,U,C,E,K,C,G,C,c,E,yD;W,I;A,C;S,+C,G,C;I,E,S,O,M,S,M,O,C,S,S,K;I,E,E,O,C,S,C,I,S,K;I,E,S,K,M,Q,U,I;Q,C;Q,O,C,S,C,O,C,I,C,O,C,S,C,O,iB,C;Q,C;e,I;I,C,Q,C,E,C;e,K;I,C;A,C;S,qC,C,C,E,C;I,qC,G,M,C,c,G,M,C,c,Y,e,C,E,E,C;e,E,C,S,I,M,C,c,C,E;I,C;W,qC,C,C;A,C;AAMMjF,GAAAA,CAAAA,8B,GAAAA,EAAAA,AAAAA,SAAAA,AAAAA,EAA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,GAAnB,GAAA,qBAAA,CAAmBA,GAAnB;qBACKkB,gBAAL,CAAsBhB,GAAtB,EAA2BvG,KAA3B,EAAkCqG,GAAlC;YACD,CAAA;;;Y,G,G,iB;YAED,KAAA,WAAA,iBAAA,GAAoB,CAApB;gBAAoB,GAAA,CAAA,MAAA;gBAClB,EAAA,AAAA,sEAAA;uBACA,EACE,AADF,SACE,AADF,EACE,CAAA,4BAAA,EAAA,OAAA,GAAA,aAAA,CAAC,4BAAD;oBACE,IAAI,GAAC,EADP;oBAEE,OAAO,GAAC,YAFV;oBAGE,OAAO,WAAP,OAAA,GAAA,CAAA;+BAAe,MAAI,CAACmB,iBAAL;oBAAN,CAAA;oBAHX,KAAA;YAOH,CAAA;;;W,S;AAtNoB3I,CAAAA,CAAAA,4BAAAA,EAAAA,OAAAA,GAAMwD,S;AAyNd,GAAA,CAAA,8BAAA,GAAA,gCAAA,EAAQ,sBAAR,GAAiChD,8BAAjC;A,c,E,O,K,8B;;;;C,U;S,6B,C,G,E,C;I,E,S,M,M,Q,Y,M,C,Q,M,M,G,6B,Y,O,C,I,E,C;sB,I;I,C;S,6B,Y,Q,C,I,E,C;e,I,W,M,M,Q,K,I,C,W,K,M,I,I,K,M,C,S,I,M,W,I;I,C;W,6B,C,G;A,C;A,M,C,c,C,c,G,U;I,K,E,I;;A,c,E,O,U,C;;ACnOf,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,YAAA;;AACA,GAAA,CAAA,uCAAA,GAAA,4CAAA,CAAA,wBAAA;S,4C,C,G,E,C;W,G,I,G,C,U,G,G;S,O,G,G;;A,C;S,8B,G,C;I,8B,G,M,C,M,a,M,E,C;Y,G,C,C,G,C,E,C,G,S,C,M,E,C,G,C;Y,G,C,M,G,S,C,C;gB,G,C,G,I,M,C,E,E,M,C,S,C,c,C,I,C,M,E,G,G,M,C,G,I,M,C,G;Q,C;e,M;I,C;W,8B,C,K,O,S;A,C;S,qC,C,Q,E,W,E,C;I,E,I,Q,Y,W,G,K,C,G,C,S,E,iC;A,C;S,uC,C,M,E,K,E,C;Q,G,C,C,G,C,E,C,G,K,C,M,E,C,G,C;Q,G,C,U,G,K,C,C;Q,U,C,U,G,U,C,U,I,K;Q,U,C,Y,G,I;Q,E,G,K,K,U,E,U,C,Q,G,I;Q,M,C,c,C,M,E,U,C,G,E,U;I,C;A,C;S,kC,C,W,E,U,E,W,E,C;I,E,E,U,E,uC,C,W,C,S,E,U;I,E,E,W,E,uC,C,W,E,W;W,W;A,C;S,+B,C,Q,E,U,E,C;I,E,S,U,M,Q,K,U,K,I,E,K,C,G,C,S,E,kD;I,Q,C,S,G,M,C,M,C,U,I,U,C,S;Q,W;Y,K,E,Q;Y,Q,E,I;Y,Y,E,I;;;I,E,E,U,E,qC,C,Q,E,U;A,C;S,qC,C,C,E,C,E,C;I,qC,G,M,C,c,a,e,C,E,E,E,E,C;Q,E,C,S,G,E;e,E;I,C;W,qC,C,C,E,C;A,C;S,kC,C,O,E,C;I,G,C,yB,G,+C;oB,oB,G,C;Q,G,C,K,G,qC,C,O,G,M;Q,E,E,yB,E,C;Y,G,C,S,G,qC,O,W;Y,M,G,O,C,S,C,K,E,S,E,S;Q,C,M,M,G,K,C,K,O,S;e,gD,O,M;I,C;A,C;S,gD,C,I,E,I,E,C;I,E,E,I,K,6B,C,I,O,M,Y,I,M,Q,W,I;S,E,E,I,U,C,E,K,C,G,C,S,E,wD;W,4C,C,I;A,C;S,4C,C,I,E,C;I,E,E,I,U,C,E,K,C,G,C,c,E,yD;W,I;A,C;S,+C,G,C;I,E,S,O,M,S,M,O,C,S,S,K;I,E,E,O,C,S,C,I,S,K;I,E,S,K,M,Q,U,I;Q,C;Q,O,C,S,C,O,C,I,C,O,C,S,C,O,iB,C;Q,C;e,I;I,C,Q,C,E,C;e,K;I,C;A,C;S,qC,C,C,E,C;I,qC,G,M,C,c,G,M,C,c,Y,e,C,E,E,C;e,E,C,S,I,M,C,c,C,E;I,C;W,qC,C,C;A,C;AAEqBoI,GAAAA,CAAAA,6B,GAAAA,EAAAA,AAAAA,SAAAA,AAAAA,EAAAA,UAAAA,gBAAAA,EAAAA,CAAAA;I,+B,C,O,E,gB;I,G,C,M,G,kC,C,O;aACnB,OAAA,CAAY5L,KAAZ,EAAmB,CAAnB;QAAmB,qCAAA,OAAA,OAAA;eAAA,MAAA,CAAA,IAAA,OACXA,KADW;IAElB,CAAA;I,kC,C,O;;Y,G,G,M;YAED,KAAA,WAAA,MAAA,GAAS,CAAT;uBACE,EACE,AADF,SACE,AADF,EACE,CAAA,4BADF,EAAA,OAAA,GAAA,aAAA,EAAA,GAAA;oBACO,SAAS,GAAC,gBAAV;mBAAL,EACE,AADF,SACE,AADF,EACE,CAAA,4BAAA,EAAA,OAAA,GAAA,aAAA,CAAC,uCAAA,EAAA,OAAA,IAAD,8BAAA;wBAA2BA,KAA3B;oBAAkC,QAAQ,SAASA,KAAL,CAAWmL,UAAvB;;YAGvC,CAAA;;;W,O;AAXkCnI,CAAAA,CAAAA,4BAAAA,EAAAA,OAAAA,GAAMwD,S,EAe3C,CAfqCxD,AAerC,EAfqCA,AAerC,sBAfqCA;AAgBrC,EAAA,AAAA,2CAAA;AACA,EAAA,AAAA,kCAAA;AACA,EAAA,AAAA,mDAAA;AACA,EAAA,AAAA,gDAAA;AACA,EAAA,AAAA,GAAA;A,c,E,O,K,6B;;;;C,U;S,6B,C,G,E,C;I,E,S,M,M,Q,Y,M,C,Q,M,M,G,6B,Y,O,C,I,E,C;sB,I;I,C;S,6B,Y,Q,C,I,E,C;e,I,W,M,M,Q,K,I,C,W,K,M,I,I,K,M,C,S,I,M,W,I;I,C;W,6B,C,G;A,C;A,M,C,c,C,c,G,U;I,K,E,I;;A,c,E,O,U,C;;ACvBA,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,YAAA;;AACA,GAAA,CAAA,8BAAA,GAAA,4CAAA,CAAA,oBAAA;S,4C,C,G,E,C;W,G,I,G,C,U,G,G;S,O,G,G;;A,C;S,qC,C,Q,E,W,E,C;I,E,I,Q,Y,W,G,K,C,G,C,S,E,iC;A,C;S,uC,C,M,E,K,E,C;Q,G,C,C,G,C,E,C,G,K,C,M,E,C,G,C;Q,G,C,U,G,K,C,C;Q,U,C,U,G,U,C,U,I,K;Q,U,C,Y,G,I;Q,E,G,K,K,U,E,U,C,Q,G,I;Q,M,C,c,C,M,E,U,C,G,E,U;I,C;A,C;S,kC,C,W,E,U,E,W,E,C;I,E,E,U,E,uC,C,W,C,S,E,U;I,E,E,W,E,uC,C,W,E,W;W,W;A,C;S,+B,C,Q,E,U,E,C;I,E,S,U,M,Q,K,U,K,I,E,K,C,G,C,S,E,kD;I,Q,C,S,G,M,C,M,C,U,I,U,C,S;Q,W;Y,K,E,Q;Y,Q,E,I;Y,Y,E,I;;;I,E,E,U,E,qC,C,Q,E,U;A,C;S,qC,C,C,E,C,E,C;I,qC,G,M,C,c,a,e,C,E,E,E,E,C;Q,E,C,S,G,E;e,E;I,C;W,qC,C,C,E,C;A,C;S,kC,C,O,E,C;I,G,C,yB,G,+C;oB,oB,G,C;Q,G,C,K,G,qC,C,O,G,M;Q,E,E,yB,E,C;Y,G,C,S,G,qC,O,W;Y,M,G,O,C,S,C,K,E,S,E,S;Q,C,M,M,G,K,C,K,O,S;e,gD,O,M;I,C;A,C;S,gD,C,I,E,I,E,C;I,E,E,I,K,6B,C,I,O,M,Y,I,M,Q,W,I;S,E,E,I,U,C,E,K,C,G,C,S,E,wD;W,4C,C,I;A,C;S,4C,C,I,E,C;I,E,E,I,U,C,E,K,C,G,C,c,E,yD;W,I;A,C;S,+C,G,C;I,E,S,O,M,S,M,O,C,S,S,K;I,E,E,O,C,S,C,I,S,K;I,E,S,K,M,Q,U,I;Q,C;Q,O,C,S,C,O,C,I,C,O,C,S,C,O,iB,C;Q,C;e,I;I,C,Q,C,E,C;e,K;I,C;A,C;S,qC,C,C,E,C;I,qC,G,M,C,c,G,M,C,c,Y,e,C,E,E,C;e,E,C,S,I,M,C,c,C,E;I,C;W,qC,C,C;A,C;AACA,EAAA,AAAA,8EAAA;AACA,EAAA,AAAA,wDAAA;AACA,EAAA,AAAA,6DAAA;AACA,EAAA,AAAA,+DAAA;AACA,EAAA,AAAA,gEAAA;AAEA,EAAA,AAAA,qBAAA;AACA,GAAA,CAAMkE,4BAAM,IAAIC,cAAM,CAAC5D,QAAP,GAAkB4D,cAAM,CAAC5D,QAAP,CAAgB6D,MAAhB,GAAyBD,cAAM,CAAC5D,QAAP,CAAgB7H,QAAzC,IAAoD,CAAtE,WACZ,yBADJ;AAGqBmQ,GAAAA,CAAAA,sC,GAAAA,EAAAA,AAAAA,SAAAA,AAAAA,EAAAA,UAAAA,gBAAAA,EAAAA,CAAAA;I,+B,C,gB,E,gB;I,G,C,M,G,kC,C,gB;aAEnB,gBAAA,CAAY7L,KAAZ,EAAmB,CAAnB;QAAmB,GAAA,CAAA,KAAA;QAAA,qCAAA,OAAA,gBAAA;QACjB,KAAA,GAAA,MAAA,CAAA,IAAA,OAAMA,KAAN;QACA,KAAA,CAAK8L,mBAAL,GAA2B9L,KAAK,CAACoK,YAAjC;eAFiB,KAAA;IAGlB,CAAA;I,kC,C,gB;;Y,G,G,qB;YAED,KAAA,WAAA,qBAAA,CAAsB2B,QAAtB,EAAgC,CAAhC;gBACE,EAAA,AAAA,2CAAA;gBACA,EAAA,EAAG,8BAAA,EAAA,OAAA,GAAQA,QAAQ,CAAC3B,YAAjB,OAAoC0B,mBAApC,QACI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BADF,EAAA,OAAA,GAAA,aAAA,EAAA,GAAA;oBACO,EAAE,OAAOlC,qBAAL;;YAEZ,CAAA;;;W,gB;AAzG2CnJ,CAAAA,CAAAA,4BAAAA,EAAAA,OAAAA,GAAMwD,S,EA4GpD,CA5G8CxD,AA4G9C,EA5G8CA,AA4G9C,+BA5G8CA;AA6G9C,EAAA,AAAA,2CAAA;AACA,EAAA,AAAA,mDAAA;AACA,EAAA,AAAA,kCAAA;AACA,EAAA,AAAA,gDAAA;AACA,EAAA,AAAA,GAAA;A,c,E,O,K,sC;;;;;;;C,U;S,6B,C,G,E,C;I,E,S,M,M,Q,Y,M,C,Q,M,M,G,6B,Y,O,C,I,E,C;sB,I;I,C;S,6B,Y,Q,C,I,E,C;e,I,W,M,M,Q,K,I,C,W,K,M,I,I,K,M,C,S,I,M,W,I;I,C;W,6B,C,G;A,C;A,M,C,c,C,c,G,U;I,K,E,I;;A,c,E,O,U,C;;AC7HA,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,YAAA;;;AAEA,GAAA,CAAA,mCAAA,GAAA,4CAAA,CAAA,mBAAA;;;;AAEA,GAAA,CAAA,yCAAA,GAAA,4CAAA,CAAA,yBAAA;;;;AAGA,GAAA,CAAA,6BAAA,GAAA,4CAAA,CAAA,aAAA;;S,4C,C,G,E,C;W,G,I,G,C,U,G,G;S,O,G,G;;A,C;S,oC,C,G,E,C,E,C;W,qC,C,G,K,2C,C,G,E,C,K,iD,C,G,E,C,K,sC;A,C;S,sC,G,C;I,K,C,G,C,S,E,yI;A,C;S,iD,C,C,E,M,E,C;I,E,G,C;I,E,S,C,M,M,U,uC,C,C,E,M;I,G,C,C,G,M,C,S,C,Q,C,I,C,C,E,K,C,C,E,E;I,E,E,C,M,M,K,C,C,W,E,C,G,C,C,W,C,I;I,E,E,C,M,G,K,C,M,G,U,K,C,I,C,C;I,E,E,C,M,S,gD,I,C,C,U,uC,C,C,E,M;A,C;S,uC,C,G,E,G,E,C;I,E,E,G,I,I,I,G,G,G,C,M,E,G,G,G,C,M;Q,G,C,C,G,C,E,I,G,G,C,K,C,G,G,C,G,G,E,C,G,I,C,C,I,G,C,C;W,I;A,C;S,2C,C,G,E,C,E,C;I,G,C,E,G,G,I,I,G,I,U,M,M,S,K,G,C,M,C,Q,K,G,E,U;I,E,E,E,I,I;I,G,C,I;I,G,C,E,G,I;I,G,C,E,G,K;I,G,C,E,E,E;Q,C;Y,E,G,E,C,I,C,G,K,E,I,E,G,E,C,I,I,I,G,E,G,I,C,C;Y,I,C,I,C,E,C,K;Y,E,E,C,I,I,C,M,K,C;Q,C;I,C,Q,G,E,C;Q,E,G,I;Q,E,G,G;I,C,Q,C;Y,C;Y,E,G,E,I,E,E,M,M,I,E,E,E,M;Q,C,Q,C;Y,E,E,E,E,K,C,E;Q,C;I,C;W,I;A,C;S,qC,C,G,E,C;I,E,E,K,C,O,C,G,U,G;A,C;S,qC,C,Q,E,W,E,C;I,E,I,Q,Y,W,G,K,C,G,C,S,E,iC;A,C;S,uC,C,M,E,K,E,C;Q,G,C,C,G,C,E,C,G,K,C,M,E,C,G,C;Q,G,C,U,G,K,C,C;Q,U,C,U,G,U,C,U,I,K;Q,U,C,Y,G,I;Q,E,G,K,K,U,E,U,C,Q,G,I;Q,M,C,c,C,M,E,U,C,G,E,U;I,C;A,C;S,kC,C,W,E,U,E,W,E,C;I,E,E,U,E,uC,C,W,C,S,E,U;I,E,E,W,E,uC,C,W,E,W;W,W;A,C;S,+B,C,Q,E,U,E,C;I,E,S,U,M,Q,K,U,K,I,E,K,C,G,C,S,E,kD;I,Q,C,S,G,M,C,M,C,U,I,U,C,S;Q,W;Y,K,E,Q;Y,Q,E,I;Y,Y,E,I;;;I,E,E,U,E,qC,C,Q,E,U;A,C;S,qC,C,C,E,C,E,C;I,qC,G,M,C,c,a,e,C,E,E,E,E,C;Q,E,C,S,G,E;e,E;I,C;W,qC,C,C,E,C;A,C;S,kC,C,O,E,C;I,G,C,yB,G,+C;oB,oB,G,C;Q,G,C,K,G,qC,C,O,G,M;Q,E,E,yB,E,C;Y,G,C,S,G,qC,O,W;Y,M,G,O,C,S,C,K,E,S,E,S;Q,C,M,M,G,K,C,K,O,S;e,gD,O,M;I,C;A,C;S,gD,C,I,E,I,E,C;I,E,E,I,K,6B,C,I,O,M,Y,I,M,Q,W,I;S,E,E,I,U,C,E,K,C,G,C,S,E,wD;W,4C,C,I;A,C;S,4C,C,I,E,C;I,E,E,I,U,C,E,K,C,G,C,c,E,yD;W,I;A,C;S,+C,G,C;I,E,S,O,M,S,M,O,C,S,S,K;I,E,E,O,C,S,C,I,S,K;I,E,S,K,M,Q,U,I;Q,C;Q,O,C,S,C,O,C,I,C,O,C,S,C,O,iB,C;Q,C;e,I;I,C,Q,C,E,C;e,K;I,C;A,C;S,qC,C,C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AADF,SACE,AADF,EACE,CAAA,4BADF,EAAA,OAAA,GAAA,aAAA,EAAA,GAAA;oBACO,GAAG,WAAE,GAAA,CAACya,GAAD,EAAS,CAAd;wBAAe,MAAI,CAAC5D,UAAL,GAAkB4D,GAAlB;oBAAuB,CAAA;mBAA3C,EACE,AADF,SACE,AADF,EACE,CAAA,4BADF,EAAA,OAAA,GAAA,aAAA,EAAA,GAAA;oBACO,KAAK;wBAAG7D,KAAK,EAAC,GAAP;wBAAY1H,MAAM,EAAE,GAApB;wBAAyBwL,QAAQ,GAAC,MAAlC;yBAA4C,KAAA,IAAM,IAAN;;wBAAqBC,eAAL,KAD1E,EAEE,AAFF,SAEE,AAFF,EAEE,CAAA,4BADA,EAAA,OAAA,GAAA,aAAA,EAAA,GAAA;oBACK,EAAE,OAAOtE,QAAT;oBACJiE,YAHH,EAIGD,YAJH;YAOH,CAAA;;;W,Q;AAjPoBzP,CAAAA,CAAAA,4BAAAA,EAAAA,OAAAA,GAAMwD,S;AAoPd,GAAA,CAAA,8BAAA,GAAA,gCAAA,EACb,qBADa,IAEb,qBAFa,IAGb,wBAHa,IAIb,yBAJa,GAKbrI,8BALa;A,c,E,O,K,8B;;;;;C,U;S,6B,C,G,E,C;I,E,S,M,M,Q,Y,M,C,Q,M,M,G,6B,Y,O,C,I,E,C;sB,I;I,C;S,6B,Y,Q,C,I,E,C;e,I,W,M,M,Q,K,I,C,W,K,M,I,I,K,M,C,S,I,M,W,I;I,C;W,6B,C,G;A,C;A,M,C,c,C,c,G,U;I,K,E,I;;A,c,E,O,U,C;;AChQf,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,YAAA;;AACA,GAAA,CAAA,8BAAA,GAAA,4CAAA,CAAA,cAAA;;AAEA,GAAA,CAAA,6BAAA,GAAA,4CAAA,CAAA,aAAA;;AACA,GAAA,CAAA,qCAAA,GAAA,4CAAA,CAAA,qBAAA;;;S,4C,C,G,E,C;W,G,I,G,C,U,G,G;S,O,G,G;;A,C;S,qC,C,Q,E,W,E,C;I,E,I,Q,Y,W,G,K,C,G,C,S,E,iC;A,C;S,uC,C,M,E,K,E,C;Q,G,C,C,G,C,E,C,G,K,C,M,E,C,G,C;Q,G,C,U,G,K,C,C;Q,U,C,U,G,U,C,U,I,K;Q,U,C,Y,G,I;Q,E,G,K,K,U,E,U,C,Q,G,I;Q,M,C,c,C,M,E,U,C,G,E,U;I,C;A,C;S,kC,C,W,E,U,E,W,E,C;I,E,E,U,E,uC,C,W,C,S,E,U;I,E,E,W,E,uC,C,W,E,W;W,W;A,C;S,+B,C,Q,E,U,E,C;I,E,S,U,M,Q,K,U,K,I,E,K,C,G,C,S,E,kD;I,Q,C,S,G,M,C,M,C,U,I,U,C,S;Q,W;Y,K,E,Q;Y,Q,E,I;Y,Y,E,I;;;I,E,E,U,E,qC,C,Q,E,U;A,C;S,qC,C,C,E,C,E,C;I,qC,G,M,C,c,a,e,C,E,E,E,E,C;Q,E,C,S,G,E;e,E;I,C;W,qC,C,C,E,C;A,C;S,kC,C,O,E,C;I,G,C,yB,G,+C;oB,oB,G,C;Q,G,C,K,G,qC,C,O,G,M;Q,E,E,yB,E,C;Y,G,C,S,G,qC,O,W;Y,M,G,O,C,S,C,K,E,S,E,S;Q,C,M,M,G,K,C,K,O,S;e,gD,O,M;I,C;A,C;S,gD,C,I,E,I,E,C;I,E,E,I,K,6B,C,I,O,M,Y,I,M,Q,W,I;S,E,E,I,U,C,E,K,C,G,C,S,E,wD;W,4C,C,I;A,C;S,4C,C,I,E,C;I,E,E,I,U,C,E,K,C,G,C,c,E,yD;W,I;A,C;S,+C,G,C;I,E,S,O,M,S,M,O,C,S,S,K;I,E,E,O,C,S,C,I,S,K;I,E,S,K,M,Q,U,I;Q,C;Q,O,C,S,C,O,C,I,C,O,C,S,C,O,iB,C;Q,C;e,I;I,C,Q,C,E,C;e,K;I,C;A,C;S,qC,C,C,E,C;I,qC,G,M,C,c,G,M,C,c,Y,e,C,E,E,C;e,E,C,S,I,M,C,c,C,E;I,C;W,qC,C,C;A,C;AAGA,GAAA,CAAM6U,iDAA2B,GAAG,EAApC;AAEMC,GAAAA,CAAAA,0B,GAAAA,EAAAA,AAAAA,SAAAA,AAAAA,EAAAA,UAAAA,gBAAAA,EAAAA,CAAAA;I,+B,C,I,E,gB;I,G,C,M,G,kC,C,I;aACJ,IAAA,CAAYjT,KAAZ,EAAmB,CAAnB;QAAmB,GAAA,CAAA,KAAA;QAAA,qCAAA,OAAA,IAAA;QACjB,KAAA,GAAA,MAAA,CAAA,IAAA,OAAMA,KAAN;QACA,KAAA,CAAKnL,KAAL;YAAcqe,OAAO,EAAE,KAATA;;eAFG,KAAA;IAGlB,CAAA;I,kC,C,I;;Y,G,G,a;YAED,KAAA,WAAA,aAAA,GAAgB,CAAhB;qBACO1N,QAAL;oBAAe0N,OAAO,QAAQre,KAAL,CAAWqe,OAArBA;;YAChB,CAAA;;;Y,G,G,oB;YAED,KAAA,WAAA,oBAAA,CAAqBC,IAArB,EAA2B,CAA3B;gBACE,GAAA,CAAIC,QAAJ,EAAcC,YAAd,EAA4BC,aAA5B;gBAEA,EAAA,EAAIH,IAAI,CAACpjB,MAAL,GAAcijB,iDAAlB,EAA+C,CAA/C;oBACE,EAAA,OAASne,KAAL,CAAWqe,OAAf,EAAwB,CAAxB;wBACEG,YAAY,IAAG,aAAA,IAAkBL,iDAAjC;wBACAM,aAAa,IAAG,SAAhB;oBACD,CAHD,MAIK,CADJ;wBAECD,YAAY,IAAG,cAAA,KAAkBF,IAAI,CAACpjB,MAAL,GAAcijB,iDAAhC,KAA+D,MAA9E;wBACAM,aAAa,IAAG,SAAhB;wBACAH,IAAI,GAAGA,IAAI,CAACpY,KAAL,CAAW,CAAX,EAAciY,iDAAd;oBACR,CAAA;oBAEDI,QAAQ,GAAA,EACN,AADM,SACN,AADM,EACN,CAAA,4BADFA,EAAAA,OAAAA,GAAAA,aAAAA,EAAAA,EAAAA;wBACM,GAAG,GAAC,QAAR;wBAAmB,SAAS,GAAC,OAAV;uBAAnB,EACE,AADF,SACE,AADF,EACE,CAAA,4BADF,EAAA,OAAA,GAAA,aAAA,EAAA,CAAA;wBACK,KAAK,EAAEE,aAAV;wBAAyB,OAAO,OAAOC,aAAL,CAAmBlL,IAAnB;uBAAgCgL,YAAlE;oBAIJF,IAAI,CAACvgB,IAAL,CAAUwgB,QAAV;gBACD,CAAA;uBAEMD,IAAP;YACD,CAAA;;;Y,G,G,M;YAED,KAAA,WAAA,MAAA,GAAS,CAAT;gBACE,GAAA,CAAIK,OAAJ,EAAaL,IAAb,EAAmBM,EAAnB;gBACAA,EAAE,QAAQzT,KAAL,CAAW7L,WAAhB;gBAEAqf,OAAO,QAAQxT,KAAL,CAAWwT,OAArB;gBAEAL,IAAI,GAAG,6BAAA,EAAA,OAAA,GAAEK,OAAF,EACJte,GADI,UACUwe,CAAV,EAAa,CADpBP;2BAEWO,CAAC,CAACC,GAAT;gBACD,CAHI,EAIJ3L,OAJI,CAII,IAJJ,EAKJxT,IALI,GAMJoG,IANI,CAMC,IAND,CAMO,CAHX,AAGW,EAHX,AAGW,0CAHX;iBAIA1F,GAPI,UAOU0e,IAAV,EAAgBjjB,GAAhB,EAAqB,CAPrB;oBAQH,GAAA,CAAI4K,GAAG,GAAGiY,OAAO,CAAC,CAAD,EAAIjY,GAAX,CAAeqY,IAAf,GACRC,OAAO,GAAGljB,GAAG,GAAGqiB,iDAAN,IAAoC,OAApC,KAAgD,KAD5D;oBAEA,GAAA,CAAI1P,QAAQ,GAAA,EAAG,AAAH,SAAG,AAAH,EAAG,CAAA,4BAAf,EAAA,OAAA,GAAA,aAAA,EAAA,KAAA;wBAAsB,KAAK,GAAC,4CAAN;wBAAP,CAAA,GAAA,EAA6D,AAA7D,SAA6D,AAA7D,EAA6D,CAAA,4BAA7D,EAAA,OAAA,GAAA,aAAA,EAAA,CAAA;wBAAgE,SAAS,GAAC,mBAAV;;2BAC/E,EACE,AADF,SACE,AADF,EACE,CAAA,4BADF,EAAA,OAAA,GAAA,aAAA,EAAA,EAAA;wBACM,GAAG,EAAE3S,GAAT;wBAAc,SAAS,EAAEkjB,OAAX;uBAAd,EACE,AADF,SACE,AADF,EACE,CAAA,4BAAA,EAAA,OAAA,GAAA,aAAA,CAAC,8BAAA,EAAA,OAAA,GAAQ,YAAT;wBACE,UAAU,EAAEJ,EADd;wBAEE,EAAE,EAAElY,GAFN;wBAGE,MAAM,GAAC,MAAP;uBAECqY,IALH,EAKStQ,QALT;gBASL,CAtBI,EAuBJ2E,KAvBI;gBAyBPkL,IAAI,QAAQW,oBAAL,CAA0BX,IAA1B;uBAEP,EACE,AADF,SACE,AADF,EACE,CAAA,4BAAA,EAAA,OAAA,GAAA,aAAA,EAAA,EAAA,GAAA,IAAA,EAAA,EACE,AADF,SACE,AADF,EACE,CAAA,4BAFJ,EAAA,OAAA,GAAA,aAAA,EAAA,EAAA;oBAEQ,SAAS,GAAC,aAAV;wBAAgCnT,KAAL,CAAW7L,WAA1C,GADF,EAEE,AAFF,SAEE,AAFF,EAEE,CAAA,4BADA,EAAA,OAAA,GAAA,aAAA,EAAA,EAAA;oBACI,SAAS,GAAC,cAAV;mBAAJ,EACE,AADF,SACE,AADF,EACE,CAAA,4BADF,EAAA,OAAA,GAAA,aAAA,EAAA,EAAA;oBACM,SAAS,GAAC,YAAV;mBAA0Bgf,IAA9B;YAIP,CAAA;;;W,I;AA7EgBnQ,CAAAA,CAAAA,4BAAAA,EAAAA,OAAAA,GAAMwD,S;SAgFhBuN,wCAAT,CAA4BxW,IAA5B,EAAkC,CAAlC;IACE,EAAA,GAAIA,IAAD,KAAUnL,6BAAAA,EAAAA,OAAAA,GAAE4hB,OAAF,CAAUzW,IAAI,CAACsG,KAAf,GACX,KAAA,CAAM,GAAA,CAAI0G,KAAJ,EAAU,aAAA,IAAkBnY,6BAAAA,EAAAA,OAAAA,GAAEsV,GAAF,CAAMnK,IAAI,CAACjL,GAAX;WAE7B,6BAAA,EAAA,OAAA,GAAEiL,IAAI,CAACsG,KAAP,EACJxR,KADI,EACE,EADF,GAEJuV,MAFI,UAEY+L,GAAT,EAAc9kB,IAAd,EAAoB,CAF9B;eAGWolB,qCAAAA,EAAAA,OAAAA,GAAQC,OAAR,CAAgBrlB,IAAhB;IACR,CAJI,EAKJqG,GALI,UAKSye,GAAT,EAAc9kB,IAAd,EAAoB,CADxB;QAEC,GAAA,CAAIslB,IAAI,GAAGF,qCAAAA,EAAAA,OAAAA,GAAQ3kB,KAAR,CAAcT,IAAd;;YACH0M,GAAG,EAAE4Y,IAAI,CAAC5Y,GAAX;YAAgB6J,KAAK,EAAE+O,IAAI,CAAC/O,KAA5B;YAAmCuO,GAAG,EAAEA,GAAG,CAAChZ,GAATgZ;;IAC3C,CARI,EASJS,OATI,EASI,KATJ,GAUJlf,GAVI,UAUSse,OAAT,EAAkBrf,WAAlB,EAA+B,CAFnC;eAGC,EACE,AADF,SACE,AADF,EACE,CAAA,4BAAA,EAAA,OAAA,GAAA,aAAA,CAAC,0BAAD;YAAM,GAAG,EAAEA,WAAX;YAAwB,WAAW,EAAEA,WAArC;YAAkD,OAAO,EAAEqf,OAAT;;IAErD,CAdI,EAeJvL,KAfI;AAgBR,CAAA;AAED,GAAA,CAAMnE,2BAAK,YAALA,KAAQ,CAAd,IAAA,EAAA,CAAA;IAAc,GAAA,CAAEE,YAAF,GAAA,IAAA,CAAEA,YAAF,EAAgByB,QAAhB,GAAA,IAAA,CAAgBA,QAAhB;WAAA,EACZ,AADY,SACZ,AADY,EACZ,CAAA,4BAAA,EAAA,OAAA,GAAA,aAAA,CAAC,aAAD,EAAA,IAAA,EAAA,EACE,AADF,SACE,AADF,EACE,CAAA,4BAAA,EAAA,OAAA,GAAA,aAAA,CAAC,YAAD;QAAO,GAAG,GAAC,KAAJ;QAAP,gBAAA,IADF,EAEE,AAFF,SAEE,AAFF,EAEE,CAAA,4BAAA,EAAA,OAAA,GAAA,aAAA,CAAC,kBAAD;QAAa,GAAG,GAAC,WAAJ;QAAb,2CAAA,IAFF,EAGE,AAHF,SAGE,AAHF,EAGE,CAAA,4BAAA,EAAA,OAAA,GAAA,aAAA,CAAC,cAAD;QAAS,GAAG,GAAC,OAAJ;OAAT,EACE,AADF,SACE,AADF,EACE,CAAA,4BADF,EAAA,OAAA,GAAA,aAAA,EAAA,KAAA;QACS,SAAS,GAAC,WAAV;OAAP,EACE,AADF,SACE,AADF,EACE,CAAA,4BAAA,EAAA,OAAA,GAAA,aAAA,EAAA,KAAA,GAAA,IAAA,EAAA,EACA,AADA,SACA,AADA,EACA,CAAA,4BAAA,EAAA,OAAA,GAAA,aAAA,EAAA,EAAA,GAAA,IAAA,EAAA,EACE,AADF,SACE,AADF,EACE,CAAA,4BAHJ,EAAA,OAAA,GAAA,aAAA,EAAA,EAAA;QAGQ,SAAS,GAAC,aAAV;QAAJ,QAAA,IADF,EAEE,AAFF,SAEE,AAFF,EAEE,CAAA,4BADA,EAAA,OAAA,GAAA,aAAA,EAAA,EAAA;QACI,SAAS,GAAC,cAAV;QAAJ,aAAA,MAJJ,EAOE,AAPF,SAOE,AAPF,EAOE,CAAA,4BAAA,EAAA,OAAA,GAAA,aAAA,EAAA,KAAA,GAAA,IAAA,EACCsO,wCAAkB,CAACtO,QAAQ,CAACzB,YAAY,CAACtT,EAAd;AAbtB,CAAd;AAoBeoT,GAAAA,CAAAA,8BAAAA,GAAAA,2B;A,c,E,O,K,8B;;;;;;AT9Hf,GAAA,CAAA,+BAAA,GAAA,4CAAA,CAAA,wBAAA;;C,U;S,6B,C,G,E,C;I,E,S,M,M,Q,Y,M,C,Q,M,M,G,6B,Y,O,C,I,E,C;sB,I;I,C;S,6B,Y,Q,C,I,E,C;e,I,W,M,M,Q,K,I,C,W,K,M,I,I,K,M,C,S,I,M,W,I;I,C;W,6B,C,G;A,C;A,M,C,c,C,c,G,U;I,K,E,I;;A,c,E,O,U,C;;AULA,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,YAAA;;;;AAGA,GAAA,CAAA,gCAAA,GAAA,4CAAA,CAAA,wBAAA;;S,4C,C,G,E,C;W,G,I,G,C,U,G,G;S,O,G,G;;A,C;S,qC,C,Q,E,W,E,C;I,E,I,Q,Y,W,G,K,C,G,C,S,E,iC;A,C;S,uC,C,M,E,K,E,C;Q,G,C,C,G,C,E,C,G,K,C,M,E,C,G,C;Q,G,C,U,G,K,C,C;Q,U,C,U,G,U,C,U,I,K;Q,U,C,Y,G,I;Q,E,G,K,K,U,E,U,C,Q,G,I;Q,M,C,c,C,M,E,U,C,G,E,U;I,C;A,C;S,kC,C,W,E,U,E,W,E,C;I,E,E,U,E,uC,C,W,C,S,E,U;I,E,E,W,E,uC,C,W,E,W;W,W;A,C;S,+B,C,Q,E,U,E,C;I,E,S,U,M,Q,K,U,K,I,E,K,C,G,C,S,E,kD;I,Q,C,S,G,M,C,M,C,U,I,U,C,S;Q,W;Y,K,E,Q;Y,Q,E,I;Y,Y,E,I;;;I,E,E,U,E,qC,C,Q,E,U;A,C;S,qC,C,C,E,C,E,C;I,qC,G,M,C,c,a,e,C,E,E,E,E,C;Q,E,C,S,G,E;e,E;I,C;W,qC,C,C,E,C;A,C;S,kC,C,O,E,C;I,G,C,yB,G,+C;oB,oB,G,C;Q,G,C,K,G,qC,C,O,G,M;Q,E,E,yB,E,C;Y,G,C,S,G,qC,O,W;Y,M,G,O,C,S,C,K,E,S,E,S;Q,C,M,M,G,K,C,K,O,S;e,gD,O,M;I,C;A,C;S,gD,C,I,E,I,E,C;I,E,E,I,K,6B,C,I,O,M,Y,I,M,Q,W,I;S,E,E,I,U,C,E,K,C,G,C,S,E,wD;W,4C,C,I;A,C;S,4C,C,I,E,C;I,E,E,I,U,C,E,K,C,G,C,c,E,yD;W,I;A,C;S,+C,G,C;I,E,S,O,M,S,M,O,C,S,S,K;I,E,E,O,C,S,C,I,S,K;I,E,S,K,M,Q,U,I;Q,C;Q,O,C,S,C,O,C,I,C,O,C,S,C,O,iB,C;Q,C;e,I;I,C,Q,C,E,C;e,K;I,C;A,C;S,qC,C,C,E,C;I,qC,G,M,C,c,G,M,C,c,Y,e,C,E,E,C;e,E,C,S,I,M,C,c,C,E;I,C;W,qC,C,C;A,C;AAGMhD,GAAAA,CAAAA,6B,GAAAA,EAAAA,AAAAA,SAAAA,AAAAA,EAAAA,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aAAA,EAAA,EAAA,GAAA,IAAA,EACG2H,8BAAQ,CAACxe,MAAT,UAAgB0F,CAAC,EAZhB,CAAA;iBAYsBA,CAAC,CAAC+Y,OAAF,CAAU5P,aAAa,CAACtW,EAAxB;IAAN,CAAjB,EAAoDwE,GAApD,UAAyD2I,CAAD,EAAGlN,GAAH,EAAvC,CAAA;eAAuC,EACvD,AADuD,SACvD,AADuD,EACvD,CAAA,4BADuD,EAAA,OAAA,GAAA,aAAA,EAAA,EAAA;YACnD,GAAG,EAAEA,GAAL;WAAJ,EAAc,AAAd,SAAc,AAAd,EAAc,CAAA,4BAAd,EAAA,OAAA,GAAA,aAAA,EAAA,CAAA;YAAiB,OAAO,WAAP,OAAA,GAAA,CAAA;uBAAeqJ,uBAAuB,CAAC6D,CAAC,CAACzF,OAAH;YAA7B,CAAA;WAA2CyF,CAAC,CAAC4B,IAAzD;IADyC,CAAxD;AArCM,CAAjB;AA8Ce,GAAA,CAAA,8BAAA,GAAA,gCAAA,EACb,mBADa,IAEb,uBAFa,GAGbkB,8BAHa;A,c,E,O,K,8B;;;;;AZxHf,GAAA,CAAA,+BAAA,GAAA,4CAAA,CAAA,wBAAA;;C,U;S,6B,C,G,E,C;I,E,S,M,M,Q,Y,M,C,Q,M,M,G,6B,Y,O,C,I,E,C;sB,I;I,C;S,6B,Y,Q,C,I,E,C;e,I,W,M,M,Q,K,I,C,W,K,M,I,I,K,M,C,S,I,M,W,I;I,C;W,6B,C,G;A,C;A,M,C,c,C,c,G,U;I,K,E,I;;A,c,E,O,U,C;;AaPA,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,YAAA;;;S,4C,C,G,E,C;W,G,I,G,C,U,G,G;S,O,G,G;;A,C;S,qC,C,Q,E,W,E,C;I,E,I,Q,Y,W,G,K,C,G,C,S,E,iC;A,C;S,uC,C,M,E,K,E,C;Q,G,C,C,G,C,E,C,G,K,C,M,E,C,G,C;Q,G,C,U,G,K,C,C;Q,U,C,U,G,U,C,U,I,K;Q,U,C,Y,G,I;Q,E,G,K,K,U,E,U,C,Q,G,I;Q,M,C,c,C,M,E,U,C,G,E,U;I,C;A,C;S,kC,C,W,E,U,E,W,E,C;I,E,E,U,E,uC,C,W,C,S,E,U;I,E,E,W,E,uC,C,W,E,W;W,W;A,C;S,+B,C,Q,E,U,E,C;I,E,S,U,M,Q,K,U,K,I,E,K,C,G,C,S,E,kD;I,Q,C,S,G,M,C,M,C,U,I,U,C,S;Q,W;Y,K,E,Q;Y,Q,E,I;Y,Y,E,I;;;I,E,E,U,E,qC,C,Q,E,U;A,C;S,qC,C,C,E,C,E,C;I,qC,G,M,C,c,a,e,C,E,E,E,E,C;Q,E,C,S,G,E;e,E;I,C;W,qC,C,C,E,C;A,C;S,kC,C,O,E,C;I,G,C,yB,G,+C;oB,oB,G,C;Q,G,C,K,G,qC,C,O,G,M;Q,E,E,yB,E,C;Y,G,C,S,G,qC,O,W;Y,M,G,O,C,S,C,K,E,S,E,S;Q,C,M,M,G,K,C,K,O,S;e,gD,O,M;I,C;A,C;S,gD,C,I,E,I,E,C;I,E,E,I,K,6B,C,I,O,M,Y,I,M,Q,W,I;S,E,E,I,U,C,E,K,C,G,C,S,E,wD;W,4C,C,I;A,C;S,4C,C,I,E,C;I,E,E,I,U,C,E,K,C,G,C,c,E,yD;W,I;A,C;S,+C,G,C;I,E,S,O,M,S,M,O,C,S,S,K;I,E,E,O,C,S,C,I,S,K;I,E,S,K,M,Q,U,I;Q,C;Q,O,C,S,C,O,C,I,C,O,C,S,C,O,iB,C;Q,C;e,I;I,C,Q,C,E,C;e,K;I,C;A,C;S,qC,C,C,E,C;I,qC,G,M,C,c,G,M,C,c,Y,e,C,E,E,C;e,E,C,S,I,M,C,c,C,E;I,C;W,qC,C,C;A,C;AAIMsW,GAAAA,CAAAA,mC,GAAAA,EAAAA,AAAAA,SAAAA,AAAAA,EAAAA,UAAAA,gBAAAA,EAAAA,CAAAA;I,+B,C,a,E,gB;I,G,C,M,G,kC,C,a;aACJ,aAAA,CAAYjX,KAAZ,EAAmB,CAAnB;QAAmB,GAAA,CAAA,KAAA;QAAA,qCAAA,OAAA,aAAA;QACjB,KAAA,GAAA,MAAA,CAAA,IAAA,OAAMA,KAAN;QACA,KAAA,CAAKnL,KAAL;YACEqG,OAAO,EAAGtL,MAAM,CAACgG,MAAP,CAAcoK,KAAK,CAAClN,WAApB,EAAiC0B,IAAjC,UAAuCP,CAAD,EAAGQ,CAAH,EAAhDyG,CAAAA;uBAAyDjH,CAAC,CAACijB,UAAF,GAAeziB,CAAC,CAACyiB,UAA1B;YAAA,CAAtC;;QAEZ,EAAA,EAAItnB,MAAM,CAACC,IAAP,CAAYmQ,KAAK,CAAC/C,cAAN,CAAqBnN,MAAjC,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","sources":["src/index.js","src/bundles/index.js","src/bundles/api.js","src/bundles/filters.js","src/bundles/views.js","src/bundles/docs.js","src/bundles/genomes.js","src/components/resultList.js","src/components/resultSummary.js","src/components/suggestions.js","src/components/geneSearchUI.js","src/components/results/GeneList.js","src/components/results/details/Expression.js","src/components/results/details/Homology.js","src/components/results/details/generic.js","src/components/results/details/Location.js","src/components/results/details/location/browser.js","src/components/results/details/location/dallianceBrowser.js","src/components/results/details/Pathways.js","src/components/results/details/Xrefs.js","src/components/results/TaxDist.js","src/components/results/selection.js","src/components/results/HelpDemo.js","src/components/TaxonomyModal.js"],"sourcesContent":["import bundles from './bundles';\nimport resultList from './components/resultList';\nimport resultSummary from './components/resultSummary';\nimport suggestions from './components/suggestions';\nimport {Status, Filters, Results, Views} from './components/geneSearchUI';\n\nexport { bundles, resultList, resultSummary, suggestions, Status, Filters, Results, Views };\n","import apiBundles from './api'\nimport filterBundle from './filters'\nimport viewsBundle from './views'\nimport docsBundle from './docs'\nimport genomesBundle from './genomes'\n\nexport default [...apiBundles, docsBundle, filterBundle, viewsBundle, genomesBundle];","import { createAsyncResourceBundle, createSelector } from 'redux-bundler'\nimport _ from 'lodash'\nimport binsClient from \"gramene-bins-client\";\nimport treesClient from \"gramene-trees-client\";\nimport {build} from \"gramene-taxonomy-with-genomes\";\n\nconst facets = [\n \"{!facet.limit='200' facet.mincount='1' key='taxon_id'}taxon_id\",\n \"{!facet.limit='100' facet.mincount='1' key='genetree'}gene_tree\",\n \"{!facet.limit='100' facet.mincount='1' key='pathways'}pathways__ancestors\",\n \"{!facet.limit='100' facet.mincount='1' key='domains'}domain_roots\",\n \"{!facet.limit='-1' facet.mincount='1' key='fixed_1000__bin'}fixed_1000__bin\"\n];\nconst genomesOfInterest = '(taxon_id:2769) OR (taxon_id:3055) OR (taxon_id:3218) OR (taxon_id:3702) OR (taxon_id:3847) OR (taxon_id:4555) OR (taxon_id:4558) OR (taxon_id:4577) OR (taxon_id:13333) OR (taxon_id:15368) OR (taxon_id:29760) OR (taxon_id:39947) OR (taxon_id:55577) OR (taxon_id:88036) OR (taxon_id:214687)';\n\nconst grameneSuggestions = createAsyncResourceBundle( {\n name: 'grameneSuggestions',\n actionBaseType: 'GRAMENE_SUGGESTIONS',\n persist: false,\n getPromise: ({store}) => {\n const t = store.selectSuggestionsQuery();\n const g = store.selectGrameneGenomes();\n return fetch(`${store.selectGrameneAPI()}/suggest?q={!boost b=relevance}name:${t}^3 id:${t}^5 synonym:${t}^2 text:${t}*^1`)\n .then(res => res.json())\n .then(suggestions => {\n if (Object.keys(g.active).length > 0) {\n suggestions.grouped.category.groups.forEach(group => {\n group.doclist.docs.forEach(sugg => {\n sugg.num_genes = 0;\n sugg.taxon_id.forEach((id,idx) => {\n if (g.active[id]) {\n sugg.num_genes += sugg.taxon_freq[idx]\n }\n })\n })\n })\n }\n return suggestions\n })\n }\n});\n\ngrameneSuggestions.reactGrameneSuggestions = createSelector(\n 'selectGrameneSuggestionsShouldUpdate',\n 'selectSuggestionsQuery',\n (shouldUpdate, queryString) => {\n if (shouldUpdate && queryString) {\n return { actionCreator: 'doFetchGrameneSuggestions' }\n }\n }\n);\n\ngrameneSuggestions.selectGrameneSuggestionsStatus = createSelector(\n 'selectGrameneSuggestionsShouldUpdate',\n 'selectGrameneSuggestionsIsLoading',\n 'selectGrameneSuggestionsRaw',\n 'selectSuggestionsQuery',\n (shouldUpdate, isLoading, suggestionsRaw, queryString) => {\n if (!queryString) return '';\n if (shouldUpdate) return 'update needed';\n if (isLoading) return 'loading';\n if (suggestionsRaw) return suggestionsRaw.data.grouped.category.matches + ' terms';\n return 'error';\n }\n);\n\ngrameneSuggestions.selectGrameneSuggestionsReady = createSelector(\n 'selectGrameneSuggestionsStatus',\n (status) => {\n const regex = RegExp('terms$');\n return regex.test(status);\n }\n);\n\ngrameneSuggestions.doFocusFirstGrameneSuggestion = arg => ({dispatch, getState}) => {\n console.log('inside doFocusFirstGrameneSuggestion');\n};\n\nconst grameneTaxonomy = createAsyncResourceBundle({\n name: 'grameneTaxonomy',\n actionBaseType: 'GRAMENE_TAXONOMY',\n persist: true,\n getPromise: ({store}) => {\n return fetch(`${store.selectGrameneAPI()}/taxonomy?subset=gramene&rows=-1`)\n .then(res => res.json())\n .then(taxNodes => {\n let taxonomy = _.keyBy(taxNodes, '_id');\n taxNodes.forEach(t => {\n t._id = +t._id; // ensure taxonomy id is a number\n if (t.hasOwnProperty(\"is_a\")) {\n t.is_a.forEach(p_id => {\n const p = taxonomy[p_id];\n if (!p.hasOwnProperty('children')) p.children = [];\n p.children.push(t._id)\n })\n }\n });\n return taxonomy\n })\n }\n});\ngrameneTaxonomy.reactGrameneTaxonomy = createSelector(\n 'selectGrameneTaxonomyShouldUpdate',\n (shouldUpdate) => {\n if (shouldUpdate) {\n return { actionCreator: 'doFetchGrameneTaxonomy' }\n }\n }\n);\nconst grameneMaps = createAsyncResourceBundle({\n name: 'grameneMaps',\n actionBaseType: 'GRAMENE_MAPS',\n persist: true,\n getPromise: ({store}) => {\n return fetch(`${store.selectGrameneAPI()}/maps?rows=-1`)\n .then(res => res.json())\n .then(maps => _.keyBy(maps, 'taxon_id'))\n }\n});\ngrameneMaps.reactGrameneMaps = createSelector(\n 'selectGrameneMapsShouldUpdate',\n (shouldUpdate) => {\n if (shouldUpdate) {\n return { actionCreator: 'doFetchGrameneMaps' }\n }\n }\n);\n\nconst grameneSearch = createAsyncResourceBundle({\n name: 'grameneSearch',\n actionBaseType: 'GRAMENE_SEARCH',\n persist: false,\n getPromise: ({store}) => {\n const offset = store.selectGrameneSearchOffset();\n const rows = store.selectGrameneSearchRows();\n const g = store.selectGrameneGenomes();\n const taxa = Object.keys(g.active);\n let fq='';\n if (taxa.length) {\n console.log('search add a fq for ',taxa);\n fq = `&fq=taxon_id:(${taxa.join(' OR ')})`;\n }\n return fetch(`${store.selectGrameneAPI()}/search?q=${store.selectGrameneFiltersQueryString()}&facet.field=${facets}&rows=${rows}&start=${offset}${fq}`)\n .then(res => res.json())\n .then(res => {\n res.response.docs.forEach(d => {\n d.can_show = {};\n d.capabilities.forEach(c => {\n d.can_show[c]=true;\n })\n });\n return res;\n })\n }\n});\ngrameneSearch.reactGrameneSearch = createSelector(\n 'selectGrameneSearchShouldUpdate',\n 'selectGrameneFiltersStatus',\n (shouldUpdate, status) => {\n if (shouldUpdate && status === 'search') {\n return { actionCreator: 'doFetchGrameneSearch' }\n }\n }\n);\n\nfunction formatFacetCountsForViz(a) {\n let res = {\n count: a.length/2,\n displayName: \"fixed_1000__bin\",\n data: {},\n sorted: []\n };\n let counts = [];\n for(let i=0;i<a.length;i+=2) {\n const fc = {\n id: +a[i],\n count: +a[i+1]\n };\n res.data[a[i]] = fc;\n counts.push(fc);\n }\n res.sorted = counts.sort((a,b) => a.id - b.id);\n return res;\n}\n\n// bundle to prepare data for the TaxDist component\nconst grameneTaxDist = {\n name: 'grameneTaxDist',\n getReducer: () => {\n const initialState = {};\n return (state = initialState, {type, payload}) => {\n return state;\n }\n },\n selectGrameneTaxDist: createSelector(\n 'selectGrameneSearch',\n 'selectGrameneTaxonomy',\n 'selectGrameneMaps',\n (grameneSearch,grameneTaxonomy,grameneMaps) => {\n if (grameneSearch && grameneTaxonomy && grameneMaps) {\n _.forIn(grameneMaps, (map, tid) => {\n grameneTaxonomy[tid].name = map.display_name;\n });\n const binnedResults = formatFacetCountsForViz(grameneSearch.facet_counts.facet_fields.fixed_1000__bin);\n let speciesTree = treesClient.taxonomy.tree(Object.values(grameneTaxonomy));\n let binMapper = binsClient.bins(grameneMaps);\n let taxDist = build(binMapper, speciesTree);\n taxDist.setBinType('fixed',1000);\n taxDist.setResults(binnedResults);\n return taxDist;\n }\n return null;\n }\n )\n};\n\n// this query will give the sorghum orthologs of AT1G01260\n// want to provide these on non-sorghum genes if available\n// http://data.gramene.org/search?q=homology__all_orthologs:AT1G01260&fq=taxon_id:4558&fl=id\nconst grameneOrthologs = {\n name: 'grameneOrthologs',\n getReducer: () => {\n const initialState = {};\n return (state = initialState, {type, payload}) => {\n let newState;\n switch (type) {\n case 'GRAMENE_ORTHOLOGS_REQUESTED':\n if (!state.hasOwnProperty(payload)) {\n newState = Object.assign({}, state);\n newState[payload] = [];\n return newState;\n }\n break;\n case 'GRAMENE_ORTHOLOGS_RECEIVED':\n return Object.assign({}, state, payload);\n }\n return state;\n }\n },\n doRequestOrthologs: geneId => ({dispatch, store}) => {\n const orthologs = store.selectGrameneOrthologs();\n if (!orthologs.hasOwnProperty(geneId)) {\n dispatch({type: 'GRAMENE_ORTHOLOGS_REQUESTED', payload: geneId});\n const API = store.selectGrameneAPI();\n const taxonId = store.selectTargetTaxonId();\n fetch(`${API}/search?q=homology__all_orthologs:${geneId}&fq=taxon_id:${taxonId}&fl=id`)\n .then(res => res.json())\n .then(res => {\n let newOrthologs = {};\n newOrthologs[geneId] = res.response.docs.map(d => d.id);\n dispatch({type: 'GRAMENE_ORTHOLOGS_RECEIVED', payload: newOrthologs})\n })\n }\n },\n selectGrameneOrthologs: state => state.grameneOrthologs\n};\n\n\n// function selectFacetIDs(store, field) {\n// const path = `grameneGenes.data.facet_counts.facet_fields.${field}`;\n// if (_.has(store,path)) {\n// const flat_facets = _.get(store,path);\n// let idList = [];\n// if (isNaN(+flat_facets[0])) {\n// for (let i = 0; i < flat_facets.length; i += 2) {\n// idList.push(flat_facets[i])\n// }\n// }\n// else {\n// for (let i = 0; i < flat_facets.length; i += 2) {\n// idList.push(+flat_facets[i])\n// }\n// if (idList.length === 1) idList.push(0);\n// }\n// return idList;\n// }\n// }\n//\n// grameneGenes.selectDomainFacets = store => selectFacetIDs(store, 'domains');\n// grameneGenes.selectPathwayFacets = store => selectFacetIDs(store, 'pathways');\n// grameneGenes.selectTaxonomyFacets = store => selectFacetIDs(store, 'taxon_id');\n//\n// const grameneDomains = createAsyncResourceBundle({\n// name: 'grameneDomains',\n// actionBaseType: 'GRAMENE_DOMAINS',\n// persist: false,\n// getPromise: ({store}) =>\n// fetch(`${store.selectGrameneAPI()}/domains?rows=-1&idList=${store.selectDomainFacets().join(',')}`)\n// .then(res => res.json())\n// .then(docs => {return {domains: docs, numFound: docs.length}})\n// });\n//\n// const gramenePathways = createAsyncResourceBundle({\n// name: 'gramenePathways',\n// actionBaseType: 'GRAMENE_PATHWAYS',\n// persist: false,\n// getPromise: ({store}) =>\n// fetch(`${store.selectGrameneAPI()}/pathways?rows=-1&idList=${store.selectPathwayFacets().join(',')}`)\n// .then(res => res.json())\n// .then(docs => {return {pathways: docs, numFound: docs.length}})\n// });\n//\n// const grameneTaxonomy = createAsyncResourceBundle({\n// name: 'grameneTaxonomy',\n// actionBaseType: 'GRAMENE_TAXONOMY',\n// persist: false,\n// getPromise: ({store}) =>\n// fetch(`${store.selectGrameneAPI()}/taxonomy?rows=-1&idList=${store.selectTaxonomyFacets().join(',')}`)\n// .then(res => res.json())\n// .then(docs => {return {taxonomy: docs, numFound: docs.length}})\n// });\n\n\nexport default [grameneSuggestions, grameneSearch, grameneMaps, grameneTaxonomy, grameneTaxDist, grameneOrthologs];\n","import {createSelector} from \"redux-bundler\";\nimport _ from 'lodash';\nconst MAX_IDLIST_LENGTH = 20;\n\nfunction findNodeWithLeftIdx(node, idx) {\n if (node.leftIdx === idx) {\n return node;\n }\n let result=null;\n if (node.leftIdx < idx && node.hasOwnProperty('children')) {\n node.children.forEach(child => {\n if (child.rightIdx > idx) {\n child.parentIdx = node.leftIdx;\n const res = findNodeWithLeftIdx(child, idx);\n if (res) result = res;\n }\n })\n }\n return result;\n}\n\nfunction markSubtree(node, source, invert) {\n node.marked = (node.leftIdx >= source.leftIdx && node.rightIdx <= source.rightIdx);\n if (invert) node.marked = !node.marked;\n if (node.hasOwnProperty('children')) {\n node.children.forEach(child => {\n markSubtree(child, source, invert);\n })\n }\n}\n\nfunction reindexTree(node, idx) {\n node.leftIdx = idx;\n idx++;\n if (node.hasOwnProperty('children')) {\n node.children.forEach(child => {\n idx = reindexTree(child, idx);\n });\n }\n node.rightIdx = idx;\n idx++;\n return idx;\n}\n\nconst grameneFilters = {\n name: 'grameneFilters',\n getReducer: () => {\n const initialState = {\n status: 'init', // others include 'search', 'waiting' and 'ready'\n operation: 'AND',\n negate: false,\n marked: false,\n leftIdx: 0,\n rightIdx: 1,\n children: [],\n showMarked: false,\n showMenu: false,\n moveCopyMode: '',\n searchOffset: 0,\n rows: 20\n };\n return (state = initialState, {type, payload}) => {\n let newState;\n switch (type) {\n case 'GRAMENE_FILTERS_CLEARED': {\n newState = Object.assign({}, initialState, {\n status: 'search',\n children: []\n });\n return newState;\n }\n case 'GRAMENE_FILTER_ADDED': {\n const idx = state.rightIdx;\n newState = Object.assign({}, state, {\n status: 'search',\n showMarked: true,\n rightIdx: idx + 2,\n searchOffset: 0\n });\n let child = _.pick(payload, ['fq_field', 'fq_value', 'name', 'category']);\n child.leftIdx = idx;\n child.rightIdx = idx + 1;\n child.negate = false;\n child.showMenu = false;\n newState.children.push(child);\n markSubtree(newState, child, false);\n return newState;\n }\n case 'GRAMENE_FILTER_TREE_ADDED': {\n newState = Object.assign({}, state, {\n status: 'search',\n showMarked: true,\n rightIdx: payload.rightIdx + 1,\n searchOffset: 0\n });\n newState.children.push(payload);\n markSubtree(newState, payload, false);\n return newState;\n }\n case 'GRAMENE_FILTER_SET_ADDED': {\n // create a filter with the payload.operation and children payload.filters\n let filter = {\n leftIdx: state.rightIdx,\n rightIdx: state.rightIdx + (payload.filters.length) * 2 + 1,\n operation: payload.operation,\n negate: false,\n showMenu: false,\n children: payload.filters\n };\n if (payload.warning) {\n filter.warning = payload.warning\n }\n let nextIdx = filter.leftIdx+1;\n payload.filters.forEach(f => {\n f.leftIdx = nextIdx++;\n f.rightIdx = nextIdx++;\n f.negate = false;\n f.showMenu = false;\n });\n newState = Object.assign({}, state, {\n status: 'search',\n showMarked: true,\n searchOffset: 0,\n rightIdx: filter.rightIdx + 1\n });\n newState.children.push(filter);\n markSubtree(newState, filter, false);\n return newState;\n }\n case 'GRAMENE_FILTER_NEGATED': {\n newState = Object.assign({}, state, {\n status: 'search',\n showMarked: true,\n searchOffset: 0\n });\n let node = findNodeWithLeftIdx(newState, payload.leftIdx);\n if (node) {\n node.negate = !node.negate;\n markSubtree(newState, node, false);\n return newState;\n }\n break;\n }\n case 'GRAMENE_FILTER_DELETED': {\n newState = Object.assign({}, state, {\n status: 'search',\n showMarked: true,\n searchOffset: 0\n });\n let node = findNodeWithLeftIdx(newState, payload.leftIdx);\n if (node) {\n let parent = findNodeWithLeftIdx(newState, node.parentIdx);\n parent.children = parent.children.filter(child => child.leftIdx !== node.leftIdx);\n reindexTree(newState, 0);\n markSubtree(newState, parent, false);\n return newState;\n }\n break;\n }\n case 'GRAMENE_FILTER_OPERATION_CHANGED': {\n if (payload.hasOwnProperty('operation')) {\n newState = Object.assign({}, state, {\n status: 'search',\n showMarked: true,\n searchOffset: 0\n });\n let node = findNodeWithLeftIdx(newState, payload.leftIdx);\n node.operation = node.operation === 'AND' ? 'OR' : 'AND';\n markSubtree(newState, node, false);\n return newState;\n }\n break;\n }\n case 'GRAMENE_FILTER_MOVED': {\n newState = Object.assign({}, state, {\n status: 'search',\n showMarked: true,\n moveCopyMode: '',\n searchOffset: 0\n });\n let source = findNodeWithLeftIdx(newState, payload.source.leftIdx);\n let target = findNodeWithLeftIdx(newState, payload.target.leftIdx);\n if (source && target) {\n source.showMenu = false;\n let parent = findNodeWithLeftIdx(newState, source.parentIdx);\n parent.children = parent.children.filter(child => child.leftIdx !== source.leftIdx);\n target.showMenu = false;\n if (!target.hasOwnProperty('children')) {\n let targetCopy = Object.assign({}, target);\n target.children = [targetCopy];\n target.operation = 'OR';\n target.negate = false;\n delete target.fq_field;\n delete target.fq_value;\n delete target.name;\n delete target.category;\n }\n target.children.push(source);\n reindexTree(newState, 0);\n markSubtree(newState, target, false);\n return newState;\n }\n break;\n }\n case 'GRAMENE_FILTER_COPIED': {\n newState = Object.assign({}, state, {\n status: 'search',\n showMarked: true,\n moveCopyMode: '',\n searchOffset: 0\n });\n let source = findNodeWithLeftIdx(newState, payload.source.leftIdx);\n let target = findNodeWithLeftIdx(newState, payload.target.leftIdx);\n if (source && target) {\n source.showMenu = false;\n if (!target.hasOwnProperty('children')) {\n let targetCopy = Object.assign({}, target);\n target.children = [targetCopy];\n target.operation = 'OR';\n target.negate = false;\n delete target.fq_field;\n delete target.fq_value;\n delete target.name;\n delete target.category;\n }\n let sourceCopy = Object.assign({}, source);\n target.children.push(sourceCopy);\n reindexTree(newState, 0);\n markSubtree(newState, target, false);\n return newState;\n }\n break;\n }\n case 'GRAMENE_FILTER_TARGETS_MARKED':\n newState = Object.assign({}, state, {\n showMarked: true,\n moveCopyMode: payload.mode,\n moveCopySource: payload.source\n });\n markSubtree(newState, payload.source, true);\n return newState;\n case 'GRAMENE_FILTER_TARGETS_UNMARKED':\n newState = Object.assign({}, state, {\n showMarked: false\n });\n return newState;\n case 'GRAMENE_FILTERS_REPLACED':\n payload.status = 'search';\n payload.searchOffset = 0;\n return payload;\n case 'GRAMENE_FILTERS_STATUS_CHANGED':\n if (!(state.status === 'ready' && payload === 'waiting')) {\n return Object.assign({}, state, {status: payload})\n }\n break;\n case 'GRAMENE_FILTERS_SET_SHOW_MARKED':\n return Object.assign({}, state, {showMarked: payload});\n case 'GRAMENE_FILTER_MENU_TOGGLED':\n payload.showMenu = !payload.showMenu;\n return Object.assign({}, state);\n case 'GRAMENE_SEARCH_PAGE_REQUESTED':\n return Object.assign({}, state, {status: 'search', searchOffset: payload * state.rows});\n case 'GRAMENE_SEARCH_FETCH_STARTED':\n return Object.assign({}, state, {status: 'loading'});\n case 'GRAMENE_SEARCH_FETCH_FINISHED':\n return Object.assign({}, state, {status: 'finished'});\n case 'GRAMENE_GENOMES_UPDATED':\n return Object.assign({}, state, {status: 'search'});\n case 'URL_UPDATED':\n if (state.status === 'ready') {\n return Object.assign({}, initialState, {children:[]})\n }\n break;\n case 'APP_IDLE':\n if (state.showMarked) {\n return Object.assign({}, state, {showMarked: false})\n }\n }\n return state;\n }\n },\n doNegateGrameneFilter: filter => ({dispatch, getState}) => {\n dispatch({\n type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_FILTER_NEGATED', payload: filter}\n ]\n })\n },\n doDeleteGrameneFilter: filter => ({dispatch}) => {\n dispatch({\n type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_TAXONOMY_CLEARED'},\n {type: 'GRAMENE_FILTER_DELETED', payload: filter}\n ]\n })\n },\n doChangeGrameneFilterOperation: filter => ({dispatch}) => {\n dispatch({\n type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_FILTER_OPERATION_CHANGED', payload: filter}\n ]\n })\n },\n doMoveOrCopyGrameneFilter: (target) => ({dispatch, getState}) => {\n const state = getState();\n if (state.grameneFilters.moveCopyMode) {\n const source = state.grameneFilters.moveCopySource;\n dispatch({\n type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: `GRAMENE_FILTER_${state.grameneFilters.moveCopyMode.toUpperCase()}D`, payload: {source, target}}\n ]\n })\n }\n },\n doCopyGrameneFilter: (source, target) => ({dispatch, getState}) => {\n dispatch({\n type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_FILTER_COPIED', payload: {source, target}}\n ]\n })\n },\n doMarkGrameneFilterTargets: (source, mode) => ({dispatch}) => {\n dispatch({type: 'GRAMENE_FILTER_TARGETS_MARKED', payload: {source:source, mode:mode}})\n },\n doUnmarkGrameneFilterTargets: () => ({dispatch}) => {\n dispatch({type: 'GRAMENE_FILTER_TARGETS_UNMARKED'})\n },\n doAcceptGrameneSuggestion: suggestion => ({dispatch, getState}) => {\n if (!suggestion.name) {\n suggestion.name = suggestion.display_name;\n }\n dispatch({\n type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_FILTER_ADDED', payload: suggestion}\n ]\n })\n },\n doAddGrameneRangeQuery: terms => ({dispatch}) => {\n dispatch({\n type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_FILTER_SET_ADDED', payload: {operation: 'AND', filters: terms}}\n ]\n })\n },\n doToggleGrameneFilterMenu: node => ({dispatch}) => {\n dispatch({type: 'GRAMENE_FILTER_MENU_TOGGLED', payload: node})\n },\n doRequestResultsPage: page => ({dispatch}) => {\n dispatch(\n {type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_SEARCH_PAGE_REQUESTED', payload: page}\n ]\n })\n },\n doReplaceGrameneFilters: filters => ({dispatch}) => {\n dispatch({\n type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_FILTERS_REPLACED', payload: filters}\n ]\n })\n },\n doClearGrameneFilters: () => ({dispatch}) => {\n dispatch({\n type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_FILTERS_CLEARED'}\n ]\n })\n },\n selectGrameneFilters: state => state.grameneFilters,\n selectGrameneFiltersStatus: state => state.grameneFilters.status,\n selectGrameneFiltersQueryString: state => {\n const hasSpaces = new RegExp(/^[^\\[\\(].*\\s/);\n const isQuery = new RegExp(/\\([a-zA-Z0-9_]+:[a-zA-Z0-9_]+\\s/);\n const idWithColon = new RegExp(/^[a-zA-Z0-9_]+:[a-zA-Z0-9_]+$/);\n function getQuery(node) {\n const negate = node.negate ? 'NOT ' : '';\n if (node.hasOwnProperty('children')) {\n // do some recursion\n return `${negate}(${node.children.map(c => getQuery(c)).sort().join(` ${node.operation} `)})`\n }\n else {\n // this node is a suggestion\n if (isQuery.test(node.fq_value))\n return `${negate}${node.fq_value.replace(/:/g,'\\\\:')}`;\n if (hasSpaces.test(node.fq_value))\n return `${negate}${node.fq_field}:\"${node.fq_value}\"`;\n else if (idWithColon.test(node.fq_value))\n return `${negate}${node.fq_field}:${node.fq_value.replace(/:/g,'\\\\:')}`;\n else\n return `${negate}${node.fq_field}:${node.fq_value}`\n }\n }\n if (state.grameneFilters.rightIdx === 1) {\n return '*:*';\n }\n return `*:* AND (${getQuery(state.grameneFilters)})`;\n },\n selectGrameneSearchOffset: state => state.grameneFilters.searchOffset,\n selectGrameneSearchRows: state => state.grameneFilters.rows\n};\n\nconst handleIdList = (queryObject) => {\n let actions = [{type: 'GRAMENE_SEARCH_CLEARED'}];\n let ids = _.uniq(queryObject.idList.split(','));\n let warning = null;\n if (ids.length > MAX_IDLIST_LENGTH) {\n ids = _.slice(ids, 0, MAX_IDLIST_LENGTH);\n warning = `The idList query parameter is limited to ${MAX_IDLIST_LENGTH} genes`\n }\n let filters = ids.map((id,idx) => {\n return {\n category: 'Gene',\n name: id,\n fq_field: 'id',\n fq_value: id\n }\n });\n if (filters.length === 1) {\n actions.push({type: 'GRAMENE_FILTER_ADDED', payload: filters[0]})\n }\n else {\n let action = {type: 'GRAMENE_FILTER_SET_ADDED', payload: {operation: 'OR', filters:filters}};\n if (warning) {\n action.payload.warning = warning\n }\n actions.push(action)\n }\n return { type: 'BATCH_ACTIONS', actions: actions };\n};\n\ngrameneFilters.reactGrameneFilters = createSelector(\n 'selectQueryObject',\n 'selectGrameneFilters',\n 'selectActiveGenomes',\n 'selectUrlObject',\n (queryObject, filters, genomes, myUrl) => {\n if (filters.status === 'init') {\n if (queryObject.filters) {\n const newFilters = JSON.parse(queryObject.filters);\n let actions = [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_FILTERS_REPLACED', payload: newFilters}\n ];\n if (queryObject.genomes) {\n let active={};\n queryObject.genomes.split(',').forEach(t => {\n active[t]=true\n });\n actions.push({type: 'GRAMENE_GENOMES_UPDATED', payload: active});\n }\n return { type: 'BATCH_ACTIONS', actions: actions };\n }\n if (queryObject.hasOwnProperty('suggestion')) {\n return {\n type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_FILTER_ADDED', payload: JSON.parse(queryObject.suggestion)}\n ]\n };\n }\n if (queryObject.hasOwnProperty('idList')) {\n return handleIdList(queryObject);\n }\n const url = new URL(myUrl.href);\n if (url.pathname === '/genes') {\n return {type: 'GRAMENE_FILTERS_CLEARED'}\n }\n }\n if (filters.status === 'finished') {\n const url = new URL(myUrl.href);\n url.search = `filters=${JSON.stringify(Object.assign({}, filters, {status: 'init'}))}&genomes=${genomes.join(',')}`;\n return {\n type: 'BATCH_ACTIONS', actions: [\n {type: 'URL_UPDATED', payload: {url: url.href, replace:false}},\n {type: 'GRAMENE_FILTERS_STATUS_CHANGED', payload: 'ready'}\n ]\n }\n }\n }\n);\n\nexport default grameneFilters;","const grameneViews = {\n name: 'grameneViews',\n getReducer: () => {\n const initialState = {\n options: [\n // {\n // id: 'help',\n // name: 'Help / Demo',\n // show: 'off'\n // },\n {\n id: 'taxonomy',\n name: 'Taxonomic distribution',\n show: 'on'\n },\n {\n id: 'list',\n name: 'Gene list',\n show: 'on'\n }\n // {\n // id: 'pathways',\n // name: 'Pathways',\n // show: 'disabled'\n // },\n // {\n // id: 'domains',\n // name: 'Domains',\n // show: 'disabled'\n // },\n // {\n // id: 'go',\n // name: 'GO terms',\n // show: 'disabled'\n // }\n ]\n };\n return (state = initialState, {type, payload}) => {\n let newState;\n switch (type) {\n case 'GRAMENE_VIEW_TOGGLED':\n newState = Object.assign({},state);\n newState.options[payload].show = newState.options[payload].show === 'on' ? 'off' : 'on';\n return newState;\n default:\n return state;\n }\n }\n },\n doToggleGrameneView: idx => ({dispatch, getState}) => {\n dispatch({type: 'GRAMENE_VIEW_TOGGLED', payload: idx})\n },\n selectGrameneViews: state => state.grameneViews,\n};\n\nexport default grameneViews;","const grameneDocs = {\n name: 'grameneDocs',\n getReducer: () => {\n const initialState = {\n genes: {},\n trees: {},\n domains: {},\n pathways: {}\n };\n return (state = initialState, {type, payload}) => {\n let newState;\n switch (type) {\n case 'GRAMENE_GENE_REQUESTED':\n if (!state.genes.hasOwnProperty(payload)) {\n newState = Object.assign({}, state);\n newState.genes[payload] = {};\n return newState;\n }\n break;\n case 'GRAMENE_GENE_RECEIVED':\n newState = Object.assign({}, state);\n newState.genes = Object.assign({}, state.genes, payload);\n return newState;\n case 'GRAMENE_TREE_REQUESTED':\n if (!state.trees.hasOwnProperty(payload)) {\n newState = Object.assign({}, state);\n newState.trees[payload] = {};\n return newState;\n }\n break;\n case 'GRAMENE_TREE_RECEIVED':\n newState = Object.assign({}, state);\n newState.trees = Object.assign({}, state.trees, payload);\n return newState;\n // case 'GRAMENE_PATHWAYS_REQUESTED':\n // newState = Object.assign({}, state);\n // payload.forEach(id => {\n // if (!state.pathways.hasOwnProperty(id)) {\n // newState.pathways[id] = {};\n // }\n // });\n // return newState;\n case 'GRAMENE_PATHWAYS_RECEIVED':\n newState = Object.assign({}, state);\n newState.pathways = Object.assign({}, state.pathways, payload);\n return newState;\n }\n return state;\n }\n },\n doRequestGrameneGene: id => ({dispatch, store}) => {\n const genes = store.selectGrameneGenes();\n if (!genes.hasOwnProperty(id)) {\n dispatch({type: 'GRAMENE_GENE_REQUESTED', payload: id});\n fetch(`${store.selectGrameneAPI()}/genes?idList=${id}`)\n .then(res => res.json())\n .then(res => {\n let genes = {};\n res.forEach(g => {\n genes[g._id] = g;\n });\n dispatch({type: 'GRAMENE_GENE_RECEIVED', payload: genes})\n })\n }\n },\n doRequestGrameneTree: id => ({dispatch, store}) => {\n const trees = store.selectGrameneTrees();\n const maps = store.selectGrameneMaps();\n if (!trees.hasOwnProperty(id)) {\n dispatch({type: 'GRAMENE_TREE_REQUESTED', payload: id});\n fetch(`${store.selectGrameneAPI()}/genetrees?idList=${id}`)\n .then(res => res.json())\n .then(res => {\n let trees = {};\n res.forEach(t => {\n function update_taxon_name(node) {\n if (maps.hasOwnProperty(node.taxon_id)) {\n node.taxon_name = maps[node.taxon_id].display_name\n }\n else if (node.taxon_id === 1100004558) {\n node.taxon_name = \"Sorghum bicolor\"\n }\n if (node.taxon_id === 45770001 && node.hasOwnProperty('children')) {\n node.taxon_name = \"Zea mays\"\n }\n if (node.taxon_id === 297600009 && node.hasOwnProperty('children')) {\n node.taxon_name = \"Vitis vinifera\"\n }\n if (node.hasOwnProperty('children')) {\n node.children.forEach(c => update_taxon_name(c))\n }\n }\n update_taxon_name(t);\n trees[t._id] = t;\n });\n dispatch({type: 'GRAMENE_TREE_RECEIVED', payload: trees})\n })\n }\n },\n doRequestGramenePathways: ids => ({dispatch, store}) => {\n const pathways = store.selectGramenePathways();\n let newIds = ids.filter(id => !pathways.hasOwnProperty(id));\n if (newIds) {\n dispatch({type: 'GRAMENE_PATHWAYS_REQUESTED', payload: newIds});\n fetch(`${store.selectGrameneAPI()}/pathways?idList=${newIds.join(',')}`)\n .then(res => res.json())\n .then(res => {\n let pathways = {};\n res.forEach(p => {\n pathways[p._id] = p;\n });\n dispatch({type: 'GRAMENE_PATHWAYS_RECEIVED', payload: pathways})\n })\n }\n },\n selectGrameneGenes: state => state.grameneDocs.genes,\n selectGrameneTrees: state => state.grameneDocs.trees,\n selectGramenePathways: state => state.grameneDocs.pathways\n};\n\nexport default grameneDocs;\n","import {createSelector} from \"redux-bundler\";\nconst grameneGenomes = {\n name: 'grameneGenomes',\n getReducer: () => {\n const initialState = {\n show: false,\n active: {}\n };\n return (state = initialState, {type, payload}) => {\n let newState;\n switch (type) {\n case 'GRAMENE_GENOMES_TOGGLED':\n newState = Object.assign({},state);\n newState.show = !newState.show;\n return newState;\n case 'GRAMENE_GENOMES_UPDATED':\n newState = Object.assign({}, state);\n newState.active = payload;\n return newState;\n default:\n return state;\n }\n }\n },\n doShowGrameneGenomes: () => ({dispatch, getState}) => {\n dispatch({type: 'GRAMENE_GENOMES_TOGGLED'})\n },\n doUpdateGrameneGenomes: genomes => ({dispatch, getState}) => {\n dispatch({type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_GENOMES_TOGGLED'},\n {type: 'GRAMENE_GENOMES_UPDATED', payload: genomes}]})\n },\n selectGrameneGenomes: state => state.grameneGenomes,\n selectActiveGenomes: state => {\n return Object.keys(state.grameneGenomes.active)\n },\n selectActiveGenomeCount: createSelector(\n 'selectGrameneMaps',\n 'selectGrameneGenomes',\n (maps,genomes) => {\n if (maps && genomes) {\n return Object.keys(genomes.active).length || Object.keys(maps).length;\n }\n return 0;\n }\n )\n};\n\nexport default grameneGenomes;","import {connect} from 'redux-bundler-react'\nimport React from 'react'\n\nconst Gene = ({gene}) => {\n return <div className=\"row\">{gene.id}</div>\n};\n\nconst Genes = (results, rows, doChangeQuantity) => {\n if (results && results.numFound > 0) {\n const moreButton = (results.numFound > rows)\n ? <button onClick={e => doChangeQuantity('Genes',20)}>more</button>\n : '';\n const fewerButton = (rows > 20)\n ? <button onClick={e => doChangeQuantity('Genes',-20)}>fewer</button>\n : '';\n const docsToShow = results.response.docs.slice(0,rows);\n return (\n <div id=\"Genes\" className=\"container mb40 anchor\">\n <div className=\"fancy-title mb40\">\n <h4>Genes</h4>\n </div>\n {docsToShow.map((doc,idx) => <Gene key={idx} gene={doc}/>)}\n {fewerButton}{moreButton}\n </div>\n );\n }\n};\n\nconst Pathway = ({pathway}) => {\n return <div className=\"row\">{pathway.name}</div>\n};\nconst Pathways = results => {\n if (results && results.numFound > 0) {\n return (\n <div id=\"Pathways\" className=\"container mb40 anchor\">\n <div className=\"fancy-title\">\n <h4>Pathways</h4>\n </div>\n {results.pathways.map((doc,idx) => (<Pathway key={idx} pathway={doc}/>))}\n </div>\n );\n }\n};\n\nconst Domain = ({domain}) => {\n return <div className=\"row\">{domain.id}</div>\n};\nconst Domains = results => {\n if (results && results.numFound > 0) {\n return (\n <div id=\"Domains\" className=\"container mb40 anchor\">\n <div className=\"fancy-title mb40\">\n <h4>Domains</h4>\n </div>\n {results.domains.map((doc,idx) => (<Domain key={idx} domain={doc}/>))}\n </div>\n );\n }\n};\n\nconst Taxon = ({taxon}) => {\n return <div className=\"row\">{taxon.id}</div>\n};\nconst Species = results => {\n if (results && results.numFound > 0) {\n return (\n <div id=\"Species\" className=\"container mb40 anchor\">\n <div className=\"fancy-title mb40\">\n <h4>Species</h4>\n </div>\n {results.taxonomy.map((doc,idx) => (<Taxon key={idx} taxon={doc}/>))}\n </div>\n );\n }\n};\n\nconst ResultList = ({grameneGenes, grameneDomains, gramenePathways, grameneTaxonomy, searchUI, searchUpdated, doChangeQuantity}) => {\n if (searchUI.Gramene) {\n return (\n <div id=\"gramene\" className=\"row\">\n <div className=\"fancy-title pt50\">\n <h3>Gramene search results</h3>\n </div>\n {searchUI.Genes && Genes(grameneGenes, searchUI.rows.Genes, doChangeQuantity)}\n {searchUI.Domains && Domains(grameneDomains)}\n {searchUI.Pathways && Pathways(gramenePathways)}\n {searchUI.Species && Species(grameneTaxonomy)}\n </div>\n )\n }\n else {\n return null;\n }\n};\n\nexport default connect(\n 'selectGrameneGenes',\n 'selectGrameneDomains',\n 'selectGramenePathways',\n 'selectGrameneTaxonomy',\n 'selectSearchUI',\n 'selectSearchUpdated',\n 'doChangeQuantity',\n ResultList\n);\n","import {connect} from 'redux-bundler-react'\nimport React from 'react'\n\nconst getStatus = (cat, results, isChecked, toggle) => {\n const tally = results ? results.numFound : <img src=\"/static/images/dna_spinner.svg\"/>;\n return (\n <li className='category-leaf'>\n <input type=\"checkbox\" checked={isChecked} onChange={e => toggle(cat)}/>\n <a data-scroll href={`#${cat}`} className=\"nav-link active\">{cat}<span style={{float:\"right\"}}>{tally}</span></a>\n </li>\n )\n};\n\nconst ResultSummary = ({grameneGenes, gramenePathways, grameneDomains, grameneTaxonomy, searchUI, searchUpdated, doToggleCategory}) => {\n const status = grameneGenes ?\n grameneGenes.numFound:\n<img src=\"/static/images/dna_spinner.svg\"/>;\n if (searchUI.Gramene) return (\n <li className=\"active category-expanded\">\n <a onClick={e => doToggleCategory('Gramene')}>\n Gramene Search<span style={{float:\"right\"}}>{status}</span>\n </a>\n <ul className=\"list-unstyled\">\n {getStatus('Genes', grameneGenes, searchUI.Genes, doToggleCategory)}\n {getStatus('Domains', grameneDomains, searchUI.Domains, doToggleCategory)}\n {getStatus('Pathways', gramenePathways, searchUI.Pathways, doToggleCategory)}\n {getStatus('Species', grameneTaxonomy, searchUI.Species, doToggleCategory)}\n</ul>\n </li>\n);\nelse return (\n <li className=\"active category-collapsed\">\n <a onClick={e => doToggleCategory('Gramene')}>\n Gramene Search<span\n style={{float:\"right\"}}>{status}</span>\n </a>\n </li>\n);\n};\n\nexport default connect(\n 'selectGrameneGenes',\n 'selectGramenePathways',\n 'selectGrameneDomains',\n 'selectGrameneTaxonomy',\n 'selectSearchUI',\n 'selectSearchUpdated',\n 'doToggleCategory',\n ResultSummary\n);\n","import {connect} from 'redux-bundler-react'\nimport React from 'react'\nimport { Button, Badge, Alert } from 'react-bootstrap'\nimport './styles.css'\n\nfunction showMatches(text, x) {\n let re = new RegExp(`(${x})`, 'ig');\n let match = text.split(re);\n console.log('showMatches',text, x, match);\n return <span>\n {match.map((str, idx) => {\n if (idx % 2 === 1) {\n return <span key={idx} style={{fontWeight:'bolder'}}>{str}</span>\n }\n return <span key={idx}>{str}</span>\n })}\n </span>\n}\n\nconst Suggestions = props => {\n let suggestions = props.grameneSuggestions;\n if (suggestions && suggestions.grouped) {\n if (suggestions.grouped.category.matches === 0) {\n let sugg1 = {\n fq_field: 'text',\n fq_value: props.suggestionsQuery,\n name: `Genes containing \"${props.suggestionsQuery}\"`,\n category: 'Gene',\n };\n let sugg2 = {\n fq_field: 'text',\n fq_value: `${props.suggestionsQuery}*`,\n name: `Genes matching \"${props.suggestionsQuery}*\"`,\n category: 'Gene',\n };\n return (\n <div style={{margin: '10px', maxWidth: '820px'}}>\n <Alert variant={'info'}><em>No suggestions found.</em> You may still attempt a full text search, though it is unlikely to find any genes for you.</Alert>\n <Button id={'word'}\n size={'sm'}\n variant={'outline-secondary'}\n onClick={() => {props.doAcceptSuggestion(sugg1); props.doAcceptGrameneSuggestion(sugg1)}}>\n {`All genes that contain the word \"${props.suggestionsQuery}\"`}\n </Button>\n <Button id={'word'}\n size={'sm'}\n variant={'outline-secondary'}\n onClick={() => {props.doAcceptSuggestion(sugg2); props.doAcceptGrameneSuggestion(sugg2)}}>\n {`All genes that contain a word that starts with \"${props.suggestionsQuery}\"`}\n </Button>\n </div>\n );\n }\n else {\n return (\n <div style={{margin: '10px'}}>\n {suggestions.grouped.category.groups.map((g,idx) => {\n return <div key={idx} id='gramene-suggestion'>\n <h4 className=\"mt10\">{g.groupValue}</h4>\n {g.doclist.docs.map((sugg,jdx) =>\n <Button id={`${idx}-${jdx}`}\n key={jdx}\n disabled={sugg.num_genes === 0}\n size='sm'\n variant=\"outline-secondary\"\n onClick={() => {props.doAcceptSuggestion(sugg); props.doAcceptGrameneSuggestion(sugg)}}>\n {showMatches(sugg.display_name,props.suggestionsQuery)}{' '}\n <Badge variant=\"secondary\">{sugg.num_genes}</Badge>\n </Button>\n )}\n </div>\n })}\n </div>\n );\n }\n }\n else {\n return <div></div>\n }\n}\n\nexport default connect(\n 'selectGrameneSuggestions',\n 'selectSuggestionsQuery',\n 'doAcceptSuggestion',\n 'doAcceptGrameneSuggestion',\n Suggestions\n);\n","import React from 'react'\nimport { connect } from 'redux-bundler-react'\nimport { Alert, OverlayTrigger, Popover, Modal } from 'react-bootstrap'\nimport { IoAlertCircle } from 'react-icons/io5'\nimport { BsGearFill,BsTrash } from 'react-icons/bs'\nimport GeneList from './results/GeneList'\nimport TaxDist from './results/TaxDist'\nimport HelpDemo from './results/HelpDemo'\nimport TaxonomyModal from './TaxonomyModal'\nimport './styles.css';\n\nconst inventory = {\n help: HelpDemo,\n list: GeneList,\n taxonomy: TaxDist\n};\n\nconst StatusCmp = props => {\n let content = props.grameneFiltersStatus;\n // if (props.grameneFiltersStatus === 'init') {\n // props.doClearGrameneFilters();\n // }\n if (props.grameneFiltersStatus === 'ready') {\n let tally = <span>Ready</span>;\n if (props.grameneSearch) {\n let genes = props.grameneSearch.response.numFound;\n let genomes = props.grameneSearch.facet_counts.facet_fields.taxon_id.length / 2;\n tally = <span><b>{genes}</b> genes in <b>{genomes}</b> genomes</span>;\n }\n const popover = (\n <Popover>\n <Popover.Title as=\"h3\">Genomes Filter</Popover.Title>\n <Popover.Content>Searching {props.activeGenomeCount} genomes</Popover.Content>\n </Popover>\n );\n\n content = <span>\n {tally}\n <OverlayTrigger placement=\"auto\" overlay={popover}>\n <span style={{float:'right', cursor:'pointer'}} onClick={props.doShowGrameneGenomes}><BsGearFill/></span>\n </OverlayTrigger>\n <TaxonomyModal/>\n </span>;\n }\n return <div style={{padding:'5px', backgroundColor:'dimgray', color:'cornsilk', fontSize:'small'}}>{content}</div>\n};\n\nconst Status = connect(\n 'selectGrameneSearch',\n 'selectGrameneFiltersStatus',\n 'selectActiveGenomeCount',\n 'doShowGrameneGenomes',\n 'doClearGrameneFilters',\n StatusCmp\n);\n\nconst handleClick = (e, moveCopyMode, showMarked, node, actions) => {\n if (!e) e = window.event;\n e.cancelBubble = true;\n if (e.stopPropagation) e.stopPropagation();\n\n if (showMarked && moveCopyMode) {\n if (node.marked) {\n actions.selectTarget(node);\n }\n else {\n actions.unmarkTargets()\n }\n }\n console.log(node, showMarked);\n};\n\nconst Filter = ({node,moveCopyMode,showMarked,actions}) => {\n let classes = 'gramene-filter gramene-filter';\n if (node.operation) {\n classes = `${classes}-${node.operation}`\n }\n if (node.negate) {\n classes = `${classes} gramene-filter-NOT`\n }\n if (showMarked && node.marked) {\n classes = `${classes} gramene-filter-marked`\n }\n let content = '';\n let menu = '';\n let children = [];\n\n if (node.showMenu) {\n let key=1;\n let menuItems = [];\n if (node.hasOwnProperty('operation')) {\n menuItems.push(<li key={key++} onClick={()=>actions.changeOperation(node)}>convert to <i>{node.operation === 'AND' ? 'OR' : 'AND'}</i></li>);\n }\n if (node.leftIdx > 0) {\n menuItems.push(<li key={key++} onClick={()=>actions.deleteNode(node)}>delete</li>);\n menuItems.push(<li key={key++} onClick={()=>actions.markTargets(node,'move')}>move{node.isSource && ' select destination'}</li>);\n menuItems.push(<li key={key++} onClick={()=>actions.markTargets(node,'copy')}>copy{node.isSource && ' select destination'}</li>)\n }\n menuItems.push(<li key={key++} onClick={()=>actions.negate(node)}>negate</li>);\n menu = <div className='gramene-filter-menu'><ul>{menuItems}</ul></div>;\n }\n let warning;\n if (node.warning) {\n const popover = (\n <Popover>\n <Popover.Title as=\"h3\">Warning</Popover.Title>\n <Popover.Content>{node.warning}</Popover.Content>\n </Popover>\n );\n warning = (\n <OverlayTrigger placement=\"auto\" overlay={popover}><span style={{float:'right', color:'red', cursor:'pointer'}}><IoAlertCircle/></span></OverlayTrigger>\n )\n }\n if (node.operation) {\n children = node.children.map((child,idx) => <Filter key={idx} moveCopyMode={moveCopyMode} node={child} showMarked={showMarked} actions={actions}/>);\n content = (\n <div>\n <span className='gramene-filter-operation'\n onClick={()=>actions.toggleMenu(node)}>{node.operation}</span>\n {warning}\n </div>\n );\n }\n else {\n content = <span className='gramene-filter-text'\n onClick={()=>actions.toggleMenu(node)}>{node.category} |&nbsp;{node.name}</span>;\n }\n return (\n <div key={node.leftIdx} className={classes} onClick={(e)=>handleClick(e,moveCopyMode, showMarked,node,actions)}>\n {content}{menu}{children}\n </div>\n )\n};\n\nconst FiltersCmp = props => {\n const actions = {\n negate: props.doNegateGrameneFilter,\n deleteNode: props.doDeleteGrameneFilter,\n changeOperation: props.doChangeGrameneFilterOperation,\n selectTarget: props.doMoveOrCopyGrameneFilter,\n markTargets: props.doMarkGrameneFilterTargets,\n unmarkTargets: props.doUnmarkGrameneFilterTargets,\n toggleMenu: props.doToggleGrameneFilterMenu\n };\n if (props.grameneFilters.rightIdx > 1) {\n return <div className='gramene-filter-container'>\n <b>Filters</b>\n <span style={{float:'right', cursor:'pointer'}} onClick={props.doClearGrameneFilters}><BsTrash/></span>\n <Filter node={props.grameneFilters}\n moveCopyMode={props.grameneFilters.moveCopyMode}\n showMarked={props.grameneFilters.showMarked}\n actions={actions}/>\n </div>\n }\n else {\n return <div className='gramene-filter-container'>\n <b>Filters</b>\n <div className='gramene-filter gramene-filter-AND'>No filters defined</div>\n </div>\n }\n};\n\nconst Filters = connect(\n 'selectGrameneFilters',\n 'doNegateGrameneFilter',\n 'doDeleteGrameneFilter',\n 'doChangeGrameneFilterOperation',\n 'doMoveOrCopyGrameneFilter',\n 'doMarkGrameneFilterTargets',\n 'doUnmarkGrameneFilterTargets',\n 'doToggleGrameneFilterMenu',\n 'doClearGrameneFilters',\n FiltersCmp\n);\n\nconst ResultsCmp = props => {\n let activeViews = props.grameneViews.options.filter((v,idx) => {\n v.idx = idx;\n return v.show === 'on'\n });\n // if (props.grameneFilters.rightIdx === 1 || activeViews.length === 0) {\n // return <HelpDemo/>\n // }\n return props.grameneFilters.rightIdx > 1 ? (\n <div style={{padding:'10px'}}>\n {activeViews.map(v => {\n let p = Object.assign({}, props);\n p.key = v.idx;\n return (\n <div key={v.idx}>\n {/*<Alert variant=\"primary\" onClose={() => props.doToggleGrameneView(v.idx)} dismissible>*/}\n {/* {v.name}*/}\n {/*</Alert>*/}\n {React.createElement(inventory[v.id], p)}\n </div>\n )\n })}\n </div>\n ) : null;\n};\n\nconst Results = connect(\n 'selectGrameneFilters',\n 'selectGrameneViews',\n 'doToggleGrameneView',\n ResultsCmp\n);\n\nconst ViewsCmp = props => (\n <div className={'gramene-view-container'}>\n <b>Views</b>\n <ul className={'gramene-view'}>\n {props.grameneViews.options.map((view,idx) => (\n <li key={idx} className={`gramene-view-${view.show}`}\n onClick={(e) => {\n if (view.show !== 'disabled') {\n props.doToggleGrameneView(idx)\n }\n }}\n >{view.name}</li>\n ))}\n </ul>\n {/*<div>*/}\n {/* &nbsp;Key:*/}\n {/* <ul className={'gramene-view'}>*/}\n {/* <li className='gramene-view-on'>On</li>*/}\n {/* <li className='gramene-view-off'>Off</li>*/}\n {/* <li className='gramene-view-disabled'>Disabled</li>*/}\n {/* </ul>*/}\n {/*</div>*/}\n &nbsp;\n </div>\n);\n\nconst Views = connect(\n 'selectGrameneViews',\n 'doToggleGrameneView',\n ViewsCmp\n);\n\nexport {Status, Filters, Results, Views};","import React from 'react'\nimport ReactGA from 'react-ga'\nimport { connect } from 'redux-bundler-react'\nimport './genes.css'\nimport Expression from './details/Expression'\nimport Homology from './details/Homology'\nimport Location from './details/Location'\nimport Pathways from \"./details/Pathways\"\nimport Xrefs from \"./details/Xrefs\"\nimport {GrFormPrevious, GrFormNextLink, GrFormNext, GrHpe} from 'react-icons/gr'\nimport { Badge } from 'react-bootstrap'\n\nlet external = <small title=\"This link opens a page from an external site\"> <i className=\"fa fa-external-link\"/></small>;\n\nlet inventory = {\n location: Location,\n expression: Expression,\n homology: Homology,\n pathways: Pathways,\n xrefs: Xrefs\n};\n\nfunction renderTairSummary(searchResult) {\n const summary = searchResult.summary;\n if(summary && searchResult.taxon_id === 3702) {\n return (\n <div className=\"gene-summary-tair\">\n {trimSummary(summary)}\n </div>\n )\n }\n}\n\nfunction trimSummary(summary) {\n if(summary.length > 160) {\n const start = summary.substr(0, 150);\n const rest = summary.substr(150);\n return <p>{start}<span className=\"ellipsis\">…</span><span className=\"rest\">{rest}</span></p>\n }\n else {\n return <p>{summary}</p>\n }\n}\n\nconst ClosestOrtholog = ({gene}) =>\n{\n let name, desc, species;\n\n if (gene.model_rep_id) {\n name = gene.model_rep_name || gene.model_rep_id;\n desc = gene.model_rep_description;\n species = gene.model_rep_species_name;\n }\n\n else if (gene.closest_rep_id) {\n name = gene.closest_rep_name || gene.closest_rep_id;\n desc = gene.closest_rep_description;\n species = gene.closest_rep_species_name;\n }\n\n return (\n <div className=\"closest-ortholog\">\n <h4>\n <span className=\"gene-id\">{name}</span>\n <small className=\"species-name\"> {species}</small>\n </h4>\n <p>{desc}</p>\n </div>\n );\n};\n\nfunction renderClosestOrtholog(gene) {\n\n if (shouldShowClosestOrtholog(gene)) {\n\n // we used to not add the closest ortholog to the DOM if the homology detail was visible.\n // however, that could cause the height of the result to change. Instead we set visibility:hidden\n // so that the renderer takes into account the height of the ortholog even if not shown.\n return (\n <ClosestOrtholog gene={gene}/>\n );\n }\n}\n\n// show closest ortholog prominently if we have data to show:-\n// a. either there's a closest ortholog (determined by traversing the gene tree until an id or description looks\n// curated) b. or there's a model ortholog (traverse tree to find an ortholog in arabidopsis)\nfunction shouldShowClosestOrtholog(searchResult) {\n return (\n searchResult.closest_rep_id || (\n searchResult.model_rep_id &&\n searchResult.model_rep_id !== searchResult.id\n )\n );\n}\n\nclass Gene extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n details: [\n {\n id: 'location',\n label: 'Location',\n available: false\n },\n {\n id: 'expression',\n label: 'Expression',\n available: false\n },\n {\n id: 'homology',\n label: 'Homology',\n available: false\n },\n {\n id: 'pathways',\n label: 'Pathways',\n available: false\n },\n // {\n // id: 'pubs',\n // label: 'Publications',\n // available: false\n // },\n {\n id: 'xrefs',\n label: 'Xrefs',\n available: false\n }\n ],\n expandedDetail: props.expandedDetail\n };\n let hasData = {};\n props.searchResult.capabilities.forEach(c => hasData[c]=true);\n this.state.details.forEach(d => d.available = hasData.hasOwnProperty(d.id));\n }\n getDetailStatus(d) {\n if (this.state.expandedDetail === d.id) return 'expanded';\n return d.available ? 'closed' : 'disabled';\n }\n setExpanded(d) {\n if (d.available) {\n if (this.state.expandedDetail === d.id) {\n this.setState({expandedDetail: null})\n }\n else {\n const geneId = this.props.searchResult.id;\n if (!(this.props.geneDocs && this.props.geneDocs.hasOwnProperty(geneId))) {\n this.props.requestGene(geneId)\n }\n this.setState({expandedDetail: d.id})\n }\n }\n }\n ensureGene(id) {\n if (!(this.props.geneDocs && this.props.geneDocs.hasOwnProperty(id))) {\n this.props.requestGene(id);\n return false;\n }\n return this.props.geneDocs[id].hasOwnProperty('taxon_id')\n }\n renderMetadata() {\n let gene = this.props.searchResult;\n if (gene.model_rep_taxon_id) {\n gene.model_rep_species_name = this.props.taxLut[gene.model_rep_taxon_id].name;\n }\n if (gene.closest_rep_taxon_id) {\n gene.closest_rep_species_name = this.props.taxLut[gene.closest_rep_taxon_id].name;\n }\n return renderTairSummary(gene) || renderClosestOrtholog(gene);\n }\n render() {\n const ensemblURL = this.props.ensemblURL;\n const searchResult = this.props.searchResult;\n const taxName = this.props.taxName;\n // let orthologs='';\n // if (this.props.orthologs && this.props.orthologs.hasOwnProperty(searchResult.id)) {\n // orthologs = this.props.orthologs[searchResult.id].join(', ');\n // }\n const numWordsInDescription = searchResult.description.split(' ').length;\n return (\n <div className=\"result-gene\">\n <div className=\"result-gene-summary\">\n <div className=\"result-gene-title-body\">\n <h3 className=\"gene-title\">\n <span className=\"gene-name\">{searchResult.name}</span>\n {searchResult.id !== searchResult.name && <small className=\"gene-id\">{' '}{searchResult.id}</small>}\n <ReactGA.OutboundLink\n eventLabel={searchResult.system_name}\n to={`${ensemblURL}/${searchResult.system_name}/Info/Index`}\n className=\"external-link\"\n >\n <small className=\"gene-species\">{taxName}</small>\n </ReactGA.OutboundLink>\n </h3>\n {searchResult.synonyms && <small className=\"gene-synonyms\">{searchResult.synonyms.join(', ')}</small>}\n {numWordsInDescription > 1 && <p className=\"gene-description\">{searchResult.description}</p>}\n </div>\n {this.renderMetadata()}\n </div>\n <div className=\"gene-detail-tabs\">\n {this.state.details.map((d,idx) => (\n <div key={idx}\n className={`col-md-1 text-center gene-detail-tab-${this.getDetailStatus(d)}`}\n onClick={()=>this.setExpanded(d)}\n >{d.label}</div>\n ))}\n </div>\n {this.state.expandedDetail && this.ensureGene(searchResult.id) && <div className=\"visible-detail\">{React.createElement(inventory[this.state.expandedDetail], this.props)}</div>}\n </div>\n )\n }\n}\n\nconst GeneList = props => {\n if (props.grameneSearch && props.grameneSearch.response && props.grameneTaxonomy) {\n let prev,page,next;\n const numFound = props.grameneSearch.response.numFound;\n if (numFound > props.grameneSearchRows) {\n const pageNum = props.grameneSearchOffset/props.grameneSearchRows;\n page = <span style={{padding:'10px'}}>page <b>{pageNum + 1}</b> of <b>{Math.ceil(numFound/props.grameneSearchRows)}</b></span>;\n prev = <GrHpe/>;\n if (pageNum > 0) {\n prev = <Badge onClick={()=>props.doRequestResultsPage(pageNum - 1)}><GrFormPrevious/></Badge>\n }\n next = <GrHpe/>;\n if (numFound > props.grameneSearchOffset + props.grameneSearchRows) {\n next = <Badge onClick={()=>props.doRequestResultsPage(pageNum + 1)}><GrFormNext/></Badge>\n }\n }\n return <div>\n <div>{prev}{page}{next}</div>\n {props.grameneSearch.response.docs.map((g,idx) => (\n <Gene key={idx}\n searchResult={g}\n ensemblURL={props.configuration.ensemblURL}\n ensemblRest={props.configuration.ensemblRest}\n taxName={props.grameneTaxonomy[g.taxon_id].name}\n geneDocs={props.grameneGenes}\n requestGene={props.doRequestGrameneGene}\n requestOrthologs={props.doRequestOrthologs}\n orthologs={props.grameneOrthologs}\n taxLut={props.grameneTaxonomy}\n expandedDetail={props.grameneSearch.response.numFound === 1 && g.can_show.homology ? 'homology' : null}\n />\n ))}\n {prev}{page}{next}\n </div>\n }\n return null;\n};\n\nexport default connect(\n 'selectConfiguration',\n 'selectGrameneSearch',\n 'selectGrameneTaxonomy',\n 'selectGrameneGenes',\n 'selectGrameneOrthologs',\n 'selectGrameneSearchOffset',\n 'selectGrameneSearchRows',\n 'doRequestGrameneGene',\n 'doRequestOrthologs',\n 'doRequestResultsPage',\n GeneList);\n","import React from 'react'\nimport {connect} from \"redux-bundler-react\";\n\nconst PREFIX = (global.location ? global.location.origin + global.location.pathname + '/' : '');\n\nconst Detail = props => {\n const gene = props.geneDocs[props.searchResult.id];\n const url = `${PREFIX}static/atlasWidget.html?${gene.taxon_id === 112509 ? gene.synonyms[0] : gene._id}`;\n const height = '500px';\n return (\n <iframe src={url} frameBorder=\"0\" width=\"100%\" height={height}>\n <p>browser doesn't support iframes</p>\n </iframe>\n );\n};\n\nexport default connect(Detail);\n\n","import React from 'react'\nimport _ from 'lodash';\nimport {connect} from \"redux-bundler-react\";\nimport TreeVis from \"gramene-genetree-vis\";\nimport treesClient from \"gramene-trees-client\";\nimport {Detail, Title, Description, Content, Explore, Links} from \"./generic\";\nimport {Spinner} from \"react-bootstrap\";\nimport '../../../../node_modules/gramene-genetree-vis/src/styles/msa.less';\nimport '../../../../node_modules/gramene-genetree-vis/src/styles/tree.less';\n\nfunction suggestionToFilters(suggestion) {\n return {\n status: 'init',\n rows: 20,\n operation: 'AND',\n negate: false,\n leftIdx: 0,\n rightIdx: 3,\n children: [\n {\n fq_field: suggestion.fq_field,\n fq_value: suggestion.fq_value,\n name: suggestion.name,\n category: suggestion.category,\n leftIdx: 1,\n rightIdx: 2,\n negate: false,\n marked: false\n }\n ]\n }\n}\n\nclass Homology extends React.Component {\n constructor(props) {\n super(props);\n if (!props.geneDocs.hasOwnProperty(props.searchResult.id)) {\n props.requestGene(props.searchResult.id)\n }\n this.taxonomy = treesClient.taxonomy.tree(Object.values(props.grameneTaxonomy))\n }\n renderTreeVis() {\n return (\n <div className=\"gene-genetree\">\n <TreeVis genetree={this.tree}\n initialGeneOfInterest={this.gene}\n genomesOfInterest={this.props.grameneGenomes.active}\n taxonomy={this.taxonomy}\n allowGeneSelection={true}\n pivotTree={true}\n enableCuration={false}\n enablePhyloview={true}\n numberOfNeighbors={10}\n ensemblUrl={this.props.configuration.ensemblURL}/>\n </div>\n )\n }\n filterAllHomologs() {\n this.props.doReplaceGrameneFilters(suggestionToFilters({\n category: 'Gene Tree',\n fq_field: 'gene_tree',\n fq_value: this.tree._id,\n name: `Homologs of ${this.gene.name}`\n }))\n }\n filterOrthologs() {\n this.props.doReplaceGrameneFilters(suggestionToFilters({\n category: 'Gene Tree',\n fq_field: 'homology__all_orthologs',\n fq_value: this.gene._id,\n name: `Orthologs of ${this.gene.name}`\n }))\n }\n filterParalogs() {\n this.props.doReplaceGrameneFilters(suggestionToFilters({\n category: 'Gene Tree',\n fq_field: 'homology__within_species_paralog',\n fq_value: this.gene._id,\n name: `Paralogs of ${this.gene.name}`\n }))\n }\n orthologList() {\n return this.orthoParaList('ortholog');\n }\n\n paralogList() {\n return this.orthoParaList('within_species_paralog');\n }\n\n orthoParaList(type) {\n var homology, thisGeneId;\n homology = _.get(this.gene, 'homology.homologous_genes');\n thisGeneId = this.gene._id;\n\n if (homology) {\n var homologs = _(homology)\n .pickBy(function filterCategories(thing, name) {\n return name.indexOf(type) === 0;\n })\n .values()\n .flatten()\n .value();\n\n if (!_.isEmpty(homologs)) {\n homologs.push(thisGeneId);\n return homologs; // only return something if we have something. We're testing for truthiness later.\n }\n }\n }\n explorations() {\n let x = [{\n name: 'Homologs',\n category: 'Gene Tree',\n count: this.tree.geneCount,\n handleClick: this.filterAllHomologs.bind(this)\n }];\n if (this.orthologs) {\n x.push({\n name: 'Orthologs',\n category: 'Gene Tree',\n count: this.orthologs.length,\n handleClick: this.filterOrthologs.bind(this)\n });\n }\n if (this.paralogs) {\n x.push({\n name: 'Paralogs',\n category: 'Gene Tree',\n count: this.paralogs.length,\n handleClick: this.filterParalogs.bind(this)\n });\n }\n return x;\n }\n links() {\n let links = [\n {\n name: 'Ensembl Gene Tree view',\n url: `${this.props.configuration.ensemblURL}/${this.gene.system_name}/Gene/Compara_Tree?g=${this.gene._id}`\n }\n ];\n if (this.props.curation && this.props.curation.taxa.hasOwnProperty(this.gene.taxon_id)) {\n links.push({\n name: 'Curate',\n url: this.props.curation.url + this.gene._id\n })\n }\n return links;\n }\n render() {\n if (!this.props.geneDocs.hasOwnProperty(this.props.searchResult.id)) {\n return <Spinner/>\n }\n this.gene = this.props.geneDocs[this.props.searchResult.id];\n const treeId = this.gene.homology.gene_tree.id;\n if (! this.props.grameneTrees.hasOwnProperty(treeId)) {\n this.props.doRequestGrameneTree(treeId);\n }\n else {\n const tree = this.props.grameneTrees[treeId];\n if (tree.hasOwnProperty('taxon_id')) {\n this.tree = treesClient.genetree.tree([this.props.grameneTrees[treeId]]);\n this.orthologs = this.orthologList();\n this.paralogs = this.paralogList();\n }\n }\n return (\n <Detail>\n <Title key=\"title\">Compara Gene Tree</Title>\n <Description key=\"description\">\n This phylogram shows the relationships between this gene and others similar to it, as determined by Ensembl Compara.\n </Description>\n {this.tree && <Content key=\"content\">{this.renderTreeVis()}</Content>}\n {this.tree && <Explore key=\"explore\" explorations={this.explorations()}/>}\n <Links key=\"links\" links={this.links()}/>\n </Detail>\n )\n }\n}\n\nexport default connect(\n 'selectGrameneTaxonomy',\n 'selectGrameneTrees',\n 'selectGrameneGenomes',\n 'selectConfiguration',\n 'selectCuration',\n 'doRequestGrameneTree',\n 'doAcceptGrameneSuggestion',\n 'doReplaceGrameneFilters',\n Homology\n);\n\n","import React from 'react';\nimport keyBy from 'lodash/keyBy';\nimport _ from \"lodash\";\nimport ReactGA from \"react-ga\";\nimport { BiLinkExternal } from \"react-icons/bi\";\nimport { Button, Badge } from \"react-bootstrap\";\n\nexport const Detail = props => {\n let subComponents = keyBy(props.children, 'key');\n return (\n <div className=\"detail\">\n <div className=\"intro\">\n {subComponents.title}\n {subComponents.description}\n </div>\n <div className=\"content-wrapper\">\n {subComponents.content}\n </div>\n <div className=\"actions\">\n <div className=\"action-wrapper\" xs={12} sm={5}>\n {subComponents.explore}\n </div>\n <div className=\"action-wrapper\" xs={12} sm={7}>\n {subComponents.links}\n </div>\n </div>\n </div>\n )\n};\n\nexport const Title = props => <h4>{props.children}</h4>;\nexport const Description = props => <p className=\"description\">{props.children}</p>;\nexport const Content = props => <div className=\"content\">{props.children}</div>;\n\nconst QueryTerm = props => {\n let category, name, badge;\n name = props.name;\n if (props.category) {\n category = props.category + ' | ';\n }\n if (_.isNumber(props.count)) {\n badge = <Badge style={{marginLeft: \"0.5rem\"}} variant='dark'>{props.count}</Badge>\n }\n return (\n <Button variant='outline-dark' onClick={props.handleClick}>\n {category}{name}{badge}\n </Button>\n )\n};\n\nfunction renderExplorations(explorations) {\n return explorations.map(\n (exploration, idx) =>\n <QueryTerm key={idx} {...exploration} />\n );\n}\nexport const Explore = props => (\n <div className=\"explore\">\n <h5>Search Filters</h5>\n <div>\n {renderExplorations(props.explorations)}\n </div>\n </div>\n);\n\nfunction renderLinks(links) {\n let external = <small title=\"This link opens a page from an external site\"> <BiLinkExternal/></small>;\n return links.map((link, idx) =>\n <li key={idx}>\n <ReactGA.OutboundLink\n eventLabel={link.name}\n to={link.url}\n target=\"_blank\"\n className=\"external-link\"\n >\n {link.name}{external}\n </ReactGA.OutboundLink>\n </li>\n )\n}\n\nexport const Links = props => (\n <div className=\"links\">\n <h5>Links to other resources</h5>\n <ul>\n {renderLinks(props.links)}\n </ul>\n </div>\n);\n","import React from 'react'\nimport getProp from 'lodash/get';\nimport isEqual from 'lodash/isEqual';\nimport {Button} from \"react-bootstrap\";\nimport Browser from \"./location/browser\";\nimport {connect} from \"redux-bundler-react\";\nimport {Detail, Title, Description, Content, Explore, Links} from \"./generic\";\nimport '../../../../node_modules/gramene-genetree-vis/src/styles/msa.less';\nimport '../../../../node_modules/gramene-genetree-vis/src/styles/tree.less';\n\nclass Location extends React.Component {\n constructor(props) {\n super(props);\n this.gene = this.props.geneDocs[this.props.searchResult.id];\n this.initRegion();\n this.state = {\n visibleRange: this.initVisibleRange()\n };\n }\n\n initVisibleRange() {\n var location, span, padding, result;\n location = this.gene.location;\n if(!location) {\n throw new Error(`Could not find the location of the gene in props.`);\n }\n\n span = location.end - location.start + 1;\n padding = Math.floor(.1 * span);\n\n result = {\n chr: location.region,\n start: location.start - padding,\n end: location.end + padding\n };\n\n result.displayName = `${result.chr}:${result.start}-${result.end}`;\n\n return result;\n }\n\n initRegion() {\n var region, isChromosome, regionType, regionName;\n region = this.gene.location.region;\n if (region) {\n isChromosome = /^\\d+$/.test(region);\n if (isChromosome) {\n regionType = 'chromosome';\n regionName = 'Chromosome ' + region;\n }\n else {\n regionType = 'scaffold';\n regionName = region;\n }\n this.region = {\n isChromsome: isChromosome,\n name: regionName,\n type: regionType\n };\n }\n }\n\n\n handleViewChange(chr, start, end) {\n var visibleRange = {\n chr: chr,\n start: start,\n end: end,\n displayName: `${chr}:${start}-${end}`\n };\n\n if(!isEqual(visibleRange, this.state.visibleRange)) {\n this.setState({\n visibleRange: visibleRange\n });\n }\n }\n\n updateQuery(restrictToVisibleRange) {\n var location, geneName, visibleRange, filter, filterDisplayName, fq;\n location = this.gene.location;\n geneName = this.gene.name;\n // category: 'Gene Tree',\n // fq_field: 'gene_tree',\n // fq_value: this.tree._id,\n // name: `Homologs of ${this.gene.name}`\n\n let terms = [\n {\n category: \"Map\",\n name: location.map,\n fq_field: 'map',\n fq_value: location.map\n },\n {\n category: \"Region\",\n name: location.region,\n fq_field: 'region',\n fq_value: location.region\n }\n ];\n fq = `map:${location.map} AND region:${location.region}`;\n\n if (restrictToVisibleRange) {\n visibleRange = this.state.visibleRange;\n\n terms.push({\n category: \"Interval\",\n name: `${visibleRange.start}-${visibleRange.end}`,\n fq_field: 'start',\n fq_value: `[${visibleRange.start} TO ${visibleRange.end}]`\n });\n fq += ` AND (start:[${visibleRange.start} TO ${visibleRange.end}]`\n + ` OR end:[${visibleRange.start} TO ${visibleRange.end}])`;\n\n filterDisplayName = visibleRange.displayName;\n } else {\n filterDisplayName = \"Shares \" + this.region.type + \" with \" + geneName;\n }\n\n console.log(\"User asked to filter by location\");\n filter = {\n category: 'Location',\n id: fq,\n fq: fq,\n display_name: filterDisplayName\n };\n\n // QueryActions.removeAllFilters();\n // QueryActions.setFilter(filter);\n this.props.doAddGrameneRangeQuery(terms);\n if (this.props.closeModal) this.props.closeModal();\n }\n\n explorations() {\n var visible, result;\n visible = this.state.visibleRange;\n result = [\n {\n name: `All on ${this.region.name}`,\n handleClick: ()=>this.updateQuery(false)\n }\n ];\n if (visible) {\n result.push({\n name: `All within ${getProp(visible, 'displayName')}`,\n handleClick: ()=>this.updateQuery(true)\n });\n }\n return result;\n }\n\n links() {\n function jgiify(id) {\n return id.replace('SORBI_3','Sobic.').replace(/\\.v[0-9]\\.[0-9]$/,'');\n }\n var gene = this.gene;\n let links = [\n {name: 'Ensembl Browser', url: `${this.props.ensemblURL}/${gene.system_name}/Gene/Summary?g=${gene._id}`},\n {name: 'PhytoMine', url: `https://phytozome.jgi.doe.gov/phytomine/keywordSearchResults.do?searchTerm=${jgiify(gene._id)}&searchSubmit=Search`},\n ];\n if (gene.taxon_id === 3702)\n links.push({name: 'Thalemine', url: `https://bar.utoronto.ca/thalemine/keywordSearchResults.do?searchTerm=${gene._id}&searchSubmit=search`});\n if (gene.taxon_id === 4577)\n links.push({name: 'MaizeGDB', url: `http://www.maizegdb.org/gene_center/gene/${gene._id}`});\n return links;\n }\n\n render() {\n return (\n <Detail>\n {/*<Title key=\"title\">Genome location: {this.renderGenePosition()}</Title>*/}\n <Description key=\"description\">Currently viewing: {this.renderLocation()}&nbsp;{this.renderResetButton()}</Description>\n <Content key=\"content\">\n {this.renderBrowser()}\n </Content>\n <Explore key=\"explore\" explorations={this.explorations()}/>\n <Links key=\"links\" links={this.links()}/>\n </Detail>\n );\n }\n\n\n renderBrowser() {\n return (\n <Browser gene={this.gene} {...this.props} {...this.state} onViewChange={ this.handleViewChange.bind(this) }/>\n );\n }\n\n renderGenePosition() {\n var location = this.gene.location;\n return (\n <span className=\"location\">\n <span className=\"region\">{this.region.name}</span>:<span className=\"start\">{location.start}</span>-<span\n className=\"end\">{location.end}</span>\n </span>\n );\n }\n\n renderLocation() {\n var location = this.state.visibleRange;\n return (\n <span className=\"location\">\n <span className=\"region\">{location.chr}</span>:<span className=\"start\">{location.start}</span>-<span\n className=\"end\">{location.end}</span>\n </span>\n );\n }\n\n resetVisibleRange() {\n const {chr, start, end} = this.initVisibleRange();\n this.handleViewChange(chr, start, end);\n }\n\n renderResetButton() {\n // let active=isEqual(this.props.visibleRange, this.state.visibleRange);\n return (\n <Button\n size=\"sm\"\n variant=\"outline-dark\"\n onClick={() => this.resetVisibleRange()}>\n Reset\n </Button>\n )\n }\n}\n\nexport default connect('doAddGrameneRangeQuery',Location);\n\n","import React from \"react\";\nimport DallianceBrowser from \"./dallianceBrowser.js\";\n\nexport default class Browser extends React.Component {\n constructor(props) {\n super(props);\n }\n\n render() {\n return (\n <div className=\"location-browser\">\n <DallianceBrowser {...this.props} expanded={!!this.props.closeModal} />\n </div>\n )\n }\n\n}\n\n// Browser.propTypes = {\n// gene: React.PropTypes.object.isRequired,\n// expanded: React.PropTypes.bool,\n// visibleRange: React.PropTypes.object.isRequired,\n// onViewChange: React.PropTypes.func.isRequired\n// };","import React from \"react\";\nimport isEqual from \"lodash/isEqual\";\n// var ensemblREST = require('../../../../../package.json').gramene.ensemblREST;\n//const ensemblREST = 'http://data.gramene.org/ensembl63';\n// const ensemblREST = 'https://data.sorghumbase.org/ensembl2';\n// const ensemblREST = 'https://data.gramene.org/vitis-ensembl1';\n// const ensemblREST = 'https://data.gramene.org/pansite-ensembl';\n\n// calculate this once.\nconst PREFIX = (global.location ? global.location.origin + global.location.pathname + '/' : '')\n + 'static/gramene-dalliance/';\n\nexport default class DallianceBrowser extends React.Component {\n\n constructor(props) {\n super(props);\n this.initialVisibleRange = props.visibleRange;\n }\n\n shouldComponentUpdate(newProps) {\n // should we reset the view to initial state?\n if(isEqual(newProps.visibleRange, this.initialVisibleRange)) {\n this.browser.setLocation(newProps.visibleRange.chr, newProps.visibleRange.start, newProps.visibleRange.end);\n }\n\n return false;\n }\n\n biodallianceElementId() {\n return this.props.gene._id + 'Browser';\n }\n\n browser() {\n var g, view, start, end, browser;\n g = this.props.gene;\n view = this.props.visibleRange;\n start = view.start;\n end = view.end;\n\n this.browser = browser = new Browser(\n {\n pageName: this.biodallianceElementId(),\n chr: g.location.region,\n viewStart: start,\n viewEnd: end,\n cookieKey: g._id + 'BrowserCookie',\n prefix: PREFIX,\n\n coordSystem: {\n speciesName: g.system_name,\n taxon: g.taxon_id,\n auth: 'Gramene',\n version: '3',\n ucscName: 'IRGSP-1.0'\n },\n\n sources: [\n {\n name: 'DNA',\n ensemblURI: this.props.ensemblRest,\n species: g.system_name,\n tier_type: 'sequence'\n },\n {\n name: 'Genes',\n uri: this.props.ensemblRest,\n tier_type: 'ensembl',\n species: g.system_name,\n type: ['gene', 'transcript', 'exon', 'cds']\n }\n ],\n\n // hubs: ['/Track_Hubs/DRP000315/hub.txt'],\n disablePoweredBy: true,\n setDocumentTitle: false,\n noDefaultLabels: true,//!this.props.expanded,\n noPersist: true,\n noPersistView: true,\n maxWorkers: 2,\n noTitle: true,\n noLocationField: false,\n noLeapButtons: true,//!this.props.expanded,\n noZoomSlider: false, //!this.props.expanded,\n noTrackAdder: true,//!this.props.expanded,\n noTrackEditor: true,//!this.props.expanded,\n noExport: true,//!this.props.expanded,\n noOptions: true,//!this.props.expanded,\n noHelp: true,\n maxViewWidth: 1000000\n }\n );\n \n browser.addViewListener(this.props.onViewChange);\n }\n\n cancel() {\n if (typeof this.timeoutID == \"number\") {\n window.clearTimeout(this.timeoutID);\n delete this.timeoutID;\n }\n }\n\n componentDidMount() {\n // this.browser();\n this.cancel();\n var self = this;\n this.timeoutID = window.setTimeout(function () {self.browser();}, 0);\n }\n\n componentWillUnmount() {\n this.cancel();\n }\n\n render() {\n return (\n <div id={this.biodallianceElementId()}/>\n );\n }\n}\n\n// DallianceBrowser.propTypes = {\n// gene: React.PropTypes.object.isRequired,\n// visibleRange: React.PropTypes.object.isRequired,\n// expanded: React.PropTypes.bool,\n// onViewChange: React.PropTypes.func.isRequired\n// };","import React from 'react'\nimport {connect} from \"redux-bundler-react\";\nimport FlatToNested from 'flat-to-nested';\nimport {Explore, Links} from \"./generic\";\nimport treesClient from \"gramene-trees-client\";\nimport {TreeMenu} from \"react-tree-menu\";\nimport {Spinner} from \"react-bootstrap\";\nimport _ from 'lodash'\nimport \"./tree-view.css\"\n\nvar reactomeURL = \"https://plantreactome.gramene.org\";\n\nclass Pathways extends React.Component {\n constructor(props) {\n super(props);\n this.taxonomy = treesClient.taxonomy.tree(Object.values(props.grameneTaxonomy))\n this.gene = props.geneDocs[props.searchResult.id];\n this.holderId = 'displayHolder' + this.gene._id;\n this.state = {};\n }\n\n initDiagram() {\n this.diagram = Reactome.Diagram.create({\n proxyPrefix: reactomeURL, //'//plantreactome.gramene.org', //'//plantreactomedev.oicr.on.ca', ////cord3084-pc7.science.oregonstate.edu', // reactomedev.oicr.on.ca\n placeHolder: this.holderId,\n width: this.divWrapper.clientWidth - 350 - 1,\n height: 500\n });\n }\n\n stableId(dbId) {\n let prefix = this.taxonomy.indices.id[this.gene.taxon_id].model.reactomePrefix || 'OSA';\n return `R-${prefix}-${dbId}`;\n }\n\n loadDiagram(pathwayId, reactionId) {\n if (!this.diagram) this.initDiagram();\n this.diagram.loadDiagram(pathwayId);\n\n this.diagram.onDiagramLoaded(function (loaded) {\n this.loadedDiagram = loaded;\n if (reactionId) {\n this.diagram.selectItem(reactionId);\n }\n // var xref = _.find(this.props.gene.xrefs,{db : 'Gramene_Plant_Reactome'}).ids[0];\n this.diagram.flagItems(this.gene._id);\n }.bind(this));\n }\n\n componentDidMount() {\n if (Reactome && Reactome.Diagram) {\n // this.initDiagram();\n }\n else {\n window.addEventListener('launchDiagram', function (e) {\n // this.initDiagram()\n }.bind(this));\n }\n }\n\n componentDidUpdate(prevProps, prevState) {\n if (this.state.hierarchy && ! this.state.selectedNode) {\n let node = this.state.hierarchy[0];\n let path = [0];\n let parent = node;\n while (node.children) {\n path.push(0);\n parent = node;\n node = node.children[0];\n }\n console.log(parent,node,path);\n this.loadNodes(path);\n }\n if (!this.state.hierarchy && this.pathwayIds) {\n const haveDocs = this.pathwayIds.filter(id => this.props.gramenePathways.hasOwnProperty(id));\n if (haveDocs.length === this.pathwayIds.length) {\n const docs = this.pathwayIds.map(id => this.props.gramenePathways[id]);\n this.getHierarchy(this.makeTaxonSpecific(docs,this.gene.taxon_id));\n }\n }\n }\n\n componentWillMount() {\n var pathways, reactionId, ancestorIds;\n pathways = this.gene.annotations.pathways;\n if(!pathways) {\n throw new Error(\"No pathway annotation present for \" + this.gene._id);\n }\n\n this.pathwayIds = _.clone(pathways.ancestors);\n pathways.entries.forEach(function(reaction) {\n let [r,speciesCode,id] = reaction.id.split('-');\n\n this.pathwayIds.push(+id);\n }.bind(this));\n\n this.props.doRequestGramenePathways(this.pathwayIds);\n\n // DocActions.needDocs('pathways', this.pathwayIds, (docs) => { return this.makeTaxonSpecific(docs,this.props.gene.taxon_id)}, this.getHierarchy);\n }\n\n makeTaxonSpecific(docs,taxon_id) {\n let lineageField = 'lineage_'+taxon_id;\n let tsDocs = docs.map(function(doc) {\n let tsDoc = _.pick(doc,['_id','name','type']);\n tsDoc.lineage = doc[lineageField];\n return tsDoc;\n });\n console.log(tsDocs);\n return tsDocs;\n }\n\n componentWillUnmount() {\n // DocActions.noLongerNeedDocs('pathways', this.pathwayIds);\n if (this.diagram) this.diagram.detach();\n }\n\n getHierarchy(docs) {\n let pathways = _.keyBy(docs,'_id');\n let nodes = [];\n this.pathwayIds.forEach(function (pwyId) {\n if (pathways[pwyId]) {\n let pwy = pathways[pwyId];\n pwy.lineage.forEach(function(line) {\n let parentOffset = line.length - 2;\n nodes.push({\n id: pwyId,\n label: pwy.name,\n type: pwy.type,\n checkbox: false,\n selected: false,\n parent: parentOffset >=0 ? line[parentOffset] : undefined\n });\n });\n }\n });\n\n let nested = new FlatToNested().convert(nodes);\n\n this.setState({hierarchy: [nested], selectedNode: undefined});\n }\n\n loadNodes(nodes) {\n let hierarchy = this.state.hierarchy;\n let selectedNode = this.state.selectedNode;\n let offset = nodes.shift();\n let nodeRef = hierarchy[offset];\n let lineage = [nodeRef];\n nodes.forEach(function(n) {\n nodeRef = nodeRef.children[n];\n lineage.unshift(nodeRef);\n });\n if (lineage[0].id !== 2894885) {\n let pathway = this.stableId(lineage[0].id);\n let reaction = undefined;\n if (lineage[0].type === \"Reaction\") {\n reaction = pathway;\n pathway = this.stableId(lineage[1].id);\n }\n if (lineage[0].selected) {\n selectedNode = undefined;\n lineage[0].selected = false;\n if (this.loadedDiagram === pathway) {\n this.diagram.resetSelection();\n }\n else {\n if (this.diagram) this.diagram.resetSelection();\n this.loadDiagram(pathway);\n }\n }\n else {\n if (selectedNode) {\n selectedNode.selected = false;\n }\n selectedNode = lineage[0];\n lineage[0].selected = true;\n if (this.loadedDiagram === pathway) {\n if (reaction) {\n this.diagram.selectItem(reaction);\n }\n else {\n this.diagram.resetSelection();\n }\n }\n else {\n if (this.diagram) this.diagram.resetSelection();\n if (reaction) {\n this.loadDiagram(pathway, reaction);\n }\n else {\n this.loadDiagram(pathway);\n }\n }\n }\n this.setState({hierarchy: hierarchy, selectedNode: selectedNode});\n }\n }\n\n renderHierarchy() {\n if (this.state.hierarchy) {\n return (\n <TreeMenu\n data={this.state.hierarchy}\n expandIconClass=\"fa fa-chevron-right\"\n collapseIconClass=\"fa fa-chevron-down\"\n stateful={true}\n collapsible={true}\n onTreeNodeClick={this.loadNodes.bind(this)}\n />\n );\n }\n return <Spinner/>\n }\n\n updateQuery() {\n console.log(\"User asked to filter by \"+ this.state.selectedNode.type);\n\n this.props.doAcceptGrameneSuggestion({\n category: 'Plant Reactome',\n fq_field: 'pathways__ancestors',\n fq_value: this.state.selectedNode.id,\n name: this.state.selectedNode.label\n })\n }\n\n render() {\n let reactomeLink,searchFilter;\n\n if (this.state.selectedNode) {\n let xrefLUT = _.keyBy(this.gene.xrefs,'db');\n let links = [\n {name: 'Plant Reactome '+this.state.selectedNode.type, url: `${reactomeURL}/content/detail/${this.stableId(this.state.selectedNode.id)}`}\n ];\n if (xrefLUT.hasOwnProperty('notGramene_Plant_Reactome')) {\n links.push({name: 'Plant Reactome Gene', url: `${reactomeURL}/content/detail/${xrefLUT.notGramene_Plant_Reactome.ids[0]}`});\n }\n reactomeLink = <Links key=\"links\" links={links}/>;\n let filters = [\n {\n name: `All genes in this ${this.state.selectedNode.type}`,\n handleClick: ()=>this.updateQuery()\n }\n ];\n searchFilter = <Explore key=\"explore\" explorations={filters}/>;\n }\n return (\n <div ref={(div) => {this.divWrapper = div;}}>\n <div style={{width:350, height: 500, overflow:'scroll', float:'left'}}>{this.renderHierarchy()}</div>\n <div id={this.holderId}/>\n {searchFilter}\n {reactomeLink}\n </div>\n );\n }\n}\n\nexport default connect(\n 'selectGrameneTaxonomy',\n 'selectGramenePathways',\n 'doRequestGramenePathways',\n 'doAcceptGrameneSuggestion',\n Pathways\n);\n","import React from 'react'\nimport ReactGA from 'react-ga'\n// import {connect} from \"redux-bundler-react\";\nimport _ from 'lodash'\nimport dbxrefs from 'gramene-dbxrefs';\nimport {Detail, Title, Description, Content} from \"./generic\";\n\nconst HOW_MANY_TO_SHOW_BY_DEFAULT = 10;\n\nclass Xref extends React.Component {\n constructor(props) {\n super(props);\n this.state = {showAll: false};\n }\n\n toggleShowAll() {\n this.setState({showAll: !this.state.showAll});\n }\n\n possiblyTruncateList(vals) {\n var ellipsis, ellipsisChar, ellipsisTitle;\n\n if (vals.length > HOW_MANY_TO_SHOW_BY_DEFAULT) {\n if (this.state.showAll) {\n ellipsisChar = '^ show first ' + HOW_MANY_TO_SHOW_BY_DEFAULT;\n ellipsisTitle = 'Show less';\n }\n else {\n ellipsisChar = '… show all (' + (vals.length - HOW_MANY_TO_SHOW_BY_DEFAULT) + ' more)';\n ellipsisTitle = 'Show more';\n vals = vals.slice(0, HOW_MANY_TO_SHOW_BY_DEFAULT);\n }\n\n ellipsis = (\n <li key=\"showMore\" className=\"showAll\">\n <a title={ellipsisTitle} onClick={this.toggleShowAll.bind(this)}>{ellipsisChar}</a>\n </li>\n );\n\n vals.push(ellipsis);\n }\n\n return vals;\n }\n\n render() {\n var members, vals, db;\n db = this.props.displayName;\n\n members = this.props.members;\n\n vals = _(members)\n .map(function (m) {\n return m.val;\n })\n .flatten(true)\n .sort()\n .uniq(true) // TODO figure out why there are duplicates.\n .map(function (item, idx) {\n var url = members[0].url(item),\n liClass = idx < HOW_MANY_TO_SHOW_BY_DEFAULT ? \"default\" : \"extra\";\n let external = <small title=\"This link opens a page from an external site\"> <i className=\"fa fa-external-link\"/></small>;\n return (\n <li key={idx} className={liClass}>\n <ReactGA.OutboundLink\n eventLabel={db}\n to={url}\n target=\"_blank\"\n >\n {item}{external}\n </ReactGA.OutboundLink>\n </li>\n )\n })\n .value();\n\n vals = this.possiblyTruncateList(vals);\n\n return (\n <tr>\n <td className=\"xref-name-col\">{this.props.displayName}</td>\n <td className=\"xref-value-col\">\n <ol className=\"xref-id-list\">{vals}</ol>\n </td>\n </tr>\n );\n }\n}\n\nfunction formatXrefsForGene(gene) {\n if(!gene || !_.isArray(gene.xrefs)) {\n throw new Error(\"No xrefs for \" + _.get(gene._id));\n }\n return _(gene.xrefs)\n .keyBy('db')\n .pickBy(function(val, name) {\n return dbxrefs.isKnown(name);\n })\n .map(function(val, name) {\n var xref = dbxrefs.fetch(name);\n return {url: xref.url, label: xref.label, val: val.ids};\n })\n .groupBy('label')\n .map(function(members, displayName) {\n return (\n <Xref key={displayName} displayName={displayName} members={members} />\n )\n })\n .value();\n}\n\nconst Xrefs = ({searchResult, geneDocs}) => (\n <Detail>\n <Title key=\"title\">Cross-references</Title>\n <Description key=\"description\">References to this gene in other databases:</Description>\n <Content key=\"content\">\n <table className=\"xrefs table\">\n <thead>\n <tr>\n <th className=\"xref-name-col\">Database</th>\n <th className=\"xref-value-col\">IDs and links</th>\n </tr>\n </thead>\n <tbody>\n {formatXrefsForGene(geneDocs[searchResult.id])}\n </tbody>\n </table>\n </Content>\n </Detail>\n);\n\nexport default Xrefs;\n\n","import React from 'react'\nimport { connect } from 'redux-bundler-react'\nimport { Vis } from \"gramene-search-vis\"\nimport Selection from './selection.js'\nimport '../../../node_modules/gramene-search-vis/styles/main.less';\n\nclass TaxDist extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n collapseEmpties: true\n };\n }\n handleSelection(selections) {\n this.setState({selections})\n }\n handleHighlight(highlight) {\n this.setState({highlight})\n }\n handleFilter() {\n this.setState({selections:null})\n }\n toggleEmpties() {\n this.setState({collapseEmpties: !this.state.collapseEmpties})\n }\n render() {\n let selectedTaxa = {};\n if (this.props.grameneSearch && this.state.collapseEmpties) {\n this.props.grameneSearch.facet_counts.facet_fields.taxon_id.filter((tid,idx) => idx % 2 === 0).forEach(tid => {\n selectedTaxa[tid] = true;\n })\n }\n else {\n selectedTaxa = this.props.grameneGenomes.active;\n }\n return (\n <div className=\"results-vis big-vis\">\n <button type=\"button\" className=\"btn btn-primary btn-sm\" onClick={this.toggleEmpties.bind(this)}>{this.state.collapseEmpties ? 'Expand' : 'Collapse'} empty branches</button>\n {this.props.grameneTaxDist && <Vis taxonomy={this.props.grameneTaxDist}\n selectedTaxa={selectedTaxa}\n onSelection={this.handleSelection.bind(this)}\n onHighlight={this.handleHighlight.bind(this)}\n />}\n {this.renderSelection()}\n </div>\n );\n }\n renderSelection() {\n if (this.state.selections && this.props.grameneTaxDist) {\n return <Selection taxonomy={this.props.grameneTaxDist}\n selectedTaxa={{}}\n selections={this.state.selections}\n onFilter={this.handleFilter.bind(this)}/>\n }\n }\n}\n\nexport default connect(\n 'selectGrameneTaxDist',\n 'selectGrameneGenomes',\n 'selectGrameneSearch',\n TaxDist\n);\n","import React from 'react';\nimport numeral from 'numeral';\nimport _ from \"lodash\";\n\nimport {Table, Button, Badge} from 'react-bootstrap';\nimport {connect} from \"redux-bundler-react\";\n\nfunction selectionStats(selections, taxonomy) {\n const selectionData = getSelectionData(selections, taxonomy);\n const totalGeneResults = taxonomy.model.results.count;\n const fq = fqFromSelections(selections);\n\n return {\n selectedGenes: selectionData.resultsCount,\n totalGeneResults,\n fq,\n numSelectedBins: selectionData.binsCount,\n proportionGenesSelected: selectionData.resultsCount / totalGeneResults\n }\n}\n\nfunction getSelectionData(selection, taxonomy) {\n return _.reduce(selection, (countAcc, sel) => {\n const bins = taxonomy.getBins(sel.binFrom.idx, sel.binTo.idx);\n countAcc.binsCount += bins.length;\n countAcc.resultsCount += _.reduce(bins, (acc, bin) => acc + bin.results.count, 0);\n return countAcc;\n }, {resultsCount: 0, binsCount: 0});\n}\n\nconst selectionToSolrRange = (sel)=>`[${sel.binFrom.idx} TO ${sel.binTo.idx}]`;\n\nfunction fqFromSelections(selections) {\n const rangeStrings = selections.map(selectionToSolrRange);\n return `fixed_1000__bin:(${rangeStrings.join(' ')})`;\n}\n\nconst Selections = ({selections, taxonomy, doAcceptGrameneSuggestion, onFilter}) => {\n const stats = selectionStats(selections, taxonomy);\n\n const setFilter = () => {\n doAcceptGrameneSuggestion({\n category: 'Selections',\n fq_field: 'fixed_1000__bin',\n fq_value: `(${selections.map(selectionToSolrRange).join(' ')})`,\n name: `${selections.length} region${selections.length === 1 ? '':'s'}`\n });\n onFilter();\n };\n\n const formatProportion = (prop) => '(' + (_.isFinite(prop) ? numeral(prop).format('0.0%') : undefined) + ')';\n\n return (\n <div>\n <Table>\n <tbody>\n <tr>\n <th>Number of selected genes</th>\n <td>{stats.selectedGenes} {formatProportion(stats.proportionGenesSelected)}</td>\n <td><Button size='sm' onClick={setFilter}>selections&nbsp;|<Badge>{stats.selectedGenes}</Badge></Button>\n </td>\n </tr>\n </tbody>\n </Table>\n </div>\n )\n};\n\nexport default connect(\n 'doAcceptGrameneSuggestion',\n Selections\n);\n","import React from 'react'\nimport {connect} from \"redux-bundler-react\";\nimport {Alert, Container, Row, Card, CardDeck} from 'react-bootstrap'\nimport './genes.css'\n\nconst examples = [\n {\n subsite: {\n maize:1,\n sorghum:1,\n main:1,\n },\n text: \"What are the orthologs of Arabidopsis thaliana's PAD4 gene in Andropogoneae?\",\n filters: {\n status: 'init',\n rows: 20,\n operation: 'AND',\n negate: false,\n leftIdx: 0,\n rightIdx: 5,\n children: [\n {\n fq_field: 'homology__all_orthologs',\n fq_value: 'AT3G52430',\n name: 'Orthologs of PAD4',\n category: 'Gene Tree',\n leftIdx:1,\n rightIdx:2,\n negate: false,\n marked: false\n },\n {\n fq_field: 'taxonomy__ancestors',\n fq_value: 147429,\n name: 'Andropogoneae',\n category: 'Taxonomy',\n leftIdx:3,\n rightIdx:4,\n negate: false,\n marked: false\n }\n ]\n }\n },\n {\n subsite: {\n grapevine:1\n },\n text: \"What are the orthologs of Arabidopsis thaliana's PAD4 gene in rosids?\",\n filters: {\n status: 'init',\n rows: 20,\n operation: 'AND',\n negate: false,\n leftIdx: 0,\n rightIdx: 5,\n children: [\n {\n fq_field: 'homology__all_orthologs',\n fq_value: 'AT3G52430',\n name: 'Orthologs of PAD4',\n category: 'Gene Tree',\n leftIdx:1,\n rightIdx:2,\n negate: false,\n marked: false\n },\n {\n fq_field: 'taxonomy__ancestors',\n fq_value: 71275,\n name: 'rosids',\n category: 'Taxonomy',\n leftIdx:3,\n rightIdx:4,\n negate: false,\n marked: false\n }\n ]\n }\n }\n];\nconst HelpDemo = ({configuration,doReplaceGrameneFilters}) => (\n <Container fluid style={{padding: '40px'}}>\n <Row>\n <h3>Search Features</h3>\n </Row>\n <Row>\n <CardDeck style={{width:'80%'}}>\n <Card style={{'backgroundColor':'#f3f6f5', 'borderColor':'#DDE5E3'}}>\n <Card.Body>\n <Card.Title>Suggestions</Card.Title>\n <Card.Text>Matching terms are provided as you type:</Card.Text>\n <div className='gene-search-pic-sugg'/>\n </Card.Body>\n </Card>\n <Card style={{'backgroundColor':'#f3f6f5', 'borderColor':'#DDE5E3'}}>\n <Card.Body>\n <Card.Title>Visualization</Card.Title>\n <Card.Text>See the distribution of results across all genomes:</Card.Text>\n <div className='gene-search-pic-results'/>\n </Card.Body>\n </Card>\n <Card style={{'backgroundColor':'#f3f6f5', 'borderColor':'#DDE5E3'}}>\n <Card.Body>\n <Card.Title>Gene tree view</Card.Title>\n <Card.Text>Explore evolutionary history of a gene family:</Card.Text>\n <div className='gene-search-pic-genetree'/>\n </Card.Body>\n </Card>\n </CardDeck>\n </Row>\n <Row>\n <h4>For Example</h4>\n </Row>\n <Row>\n <small>\n You can ask sophisticated questions about the genes:<br/>\n <ul>\n {examples.filter(e => !!e.subsite[configuration.id]).map((e,idx) => (\n <li key={idx}><a onClick={() => doReplaceGrameneFilters(e.filters)}>{e.text}</a></li>\n ))}\n </ul>\n </small>\n </Row>\n </Container>\n);\n\nexport default connect(\n 'selectConfiguration',\n 'doReplaceGrameneFilters',\n HelpDemo\n);\n\n","import React from \"react\";\nimport { connect } from 'redux-bundler-react'\nimport { Modal, Button } from \"react-bootstrap\";\n\nclass TaxonomyModal extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n genomes : Object.values(props.grameneMaps).sort((a,b) => a.left_index - b.left_index)\n };\n if (Object.keys(props.grameneGenomes.active).length === 0) {\n this.state.genomes.forEach(g => {\n g.selected = true;\n })\n }\n else {\n this.state.genomes.forEach(g => {\n g.selected = props.grameneGenomes.active[g.taxon_id];\n })\n }\n }\n getSelectedGenomes() {\n let selected = {};\n let notAll = false;\n this.state.genomes.forEach(g => {\n if (g.selected) {\n selected[g.taxon_id] = true;\n }\n else {\n notAll = true;\n }\n });\n return notAll ? selected : {};\n }\n handleChange(e) {\n const idx = +e.target.value;\n let newState = Object.assign({},this.state);\n newState.genomes[idx].selected = !newState.genomes[idx].selected;\n this.setState(newState);\n }\n handleClose() {\n this.props.doUpdateGrameneGenomes(this.getSelectedGenomes())\n }\n selectAll() {\n const genomes = this.state.genomes.map(g => {g.selected = true; return g});\n this.setState({genomes});\n }\n selectNone() {\n const genomes = this.state.genomes.map(g => {g.selected = false; return g});\n this.setState({genomes});\n }\n renderGenomes() {\n return (\n <div>\n {this.state.genomes.map((m,idx) => {\n return (\n <div key={idx}>\n <input checked={m.selected}\n onChange={this.handleChange.bind(this)}\n type=\"checkbox\"\n value={idx}\n />\n {' '}{m.display_name}\n </div>\n )\n })}\n <Button onClick={this.handleClose.bind(this)}>Submit</Button>\n </div>\n )\n }\n render() {\n return (\n <Modal\n show={this.props.grameneGenomes.show}\n onHide={this.handleClose.bind(this)}\n size='lg'\n >\n <Modal.Header closeButton>\n <Modal.Title>Select Genomes of Interest</Modal.Title>\n </Modal.Header>\n <Modal.Body>\n <Button variant=\"outline-secondary\" onClick={this.selectAll.bind(this)}>All</Button>{' '}\n <Button variant=\"outline-secondary\" onClick={this.selectNone.bind(this)}>None</Button>\n {this.renderGenomes()}\n </Modal.Body>\n </Modal>\n )\n }\n};\n\nexport default connect(\n 'selectGrameneGenomes',\n 'selectGrameneMaps',\n 'doUpdateGrameneGenomes',\n TaxonomyModal\n)\n"],"names":["apiBundles","docsBundle","filterBundle","viewsBundle","genomesBundle","facets","genomesOfInterest","grameneSuggestions","name","actionBaseType","persist","getPromise","store","t","selectSuggestionsQuery","g","selectGrameneGenomes","fetch","selectGrameneAPI","then","res","json","suggestions","Object","keys","active","length","grouped","category","groups","forEach","group","doclist","docs","sugg","num_genes","taxon_id","id","idx","taxon_freq","reactGrameneSuggestions","shouldUpdate","queryString","actionCreator","selectGrameneSuggestionsStatus","isLoading","suggestionsRaw","data","matches","selectGrameneSuggestionsReady","status","regex","RegExp","test","doFocusFirstGrameneSuggestion","arg","dispatch","getState","console","log","grameneTaxonomy","taxNodes","taxonomy","_","keyBy","_id","hasOwnProperty","is_a","p_id","p","children","push","reactGrameneTaxonomy","grameneMaps","maps","reactGrameneMaps","grameneSearch","offset","selectGrameneSearchOffset","rows","selectGrameneSearchRows","taxa","fq","join","selectGrameneFiltersQueryString","response","d","can_show","capabilities","c","reactGrameneSearch","formatFacetCountsForViz","a","count","displayName","sorted","counts","i","fc","sort","b","grameneTaxDist","getReducer","initialState","state","type","payload","selectGrameneTaxDist","forIn","map","tid","display_name","binnedResults","facet_counts","facet_fields","fixed_1000__bin","speciesTree","treesClient","tree","values","binMapper","binsClient","bins","taxDist","setBinType","setResults","grameneOrthologs","newState","assign","doRequestOrthologs","geneId","orthologs","selectGrameneOrthologs","API","taxonId","selectTargetTaxonId","newOrthologs","MAX_IDLIST_LENGTH","findNodeWithLeftIdx","node","leftIdx","result","child","rightIdx","parentIdx","markSubtree","source","invert","marked","reindexTree","grameneFilters","operation","negate","showMarked","showMenu","moveCopyMode","searchOffset","pick","filter","filters","warning","nextIdx","f","parent","target","targetCopy","fq_field","fq_value","sourceCopy","mode","moveCopySource","doNegateGrameneFilter","actions","doDeleteGrameneFilter","doChangeGrameneFilterOperation","doMoveOrCopyGrameneFilter","toUpperCase","doCopyGrameneFilter","doMarkGrameneFilterTargets","doUnmarkGrameneFilterTargets","doAcceptGrameneSuggestion","suggestion","doAddGrameneRangeQuery","terms","doToggleGrameneFilterMenu","doRequestResultsPage","page","doReplaceGrameneFilters","doClearGrameneFilters","selectGrameneFilters","selectGrameneFiltersStatus","hasSpaces","isQuery","idWithColon","getQuery","replace","handleIdList","queryObject","ids","uniq","idList","split","slice","action","reactGrameneFilters","genomes","myUrl","newFilters","JSON","parse","url","URL","href","pathname","search","stringify","grameneViews","options","show","doToggleGrameneView","selectGrameneViews","grameneDocs","genes","trees","domains","pathways","doRequestGrameneGene","selectGrameneGenes","doRequestGrameneTree","selectGrameneTrees","selectGrameneMaps","update_taxon_name","taxon_name","doRequestGramenePathways","selectGramenePathways","newIds","grameneGenomes","doShowGrameneGenomes","doUpdateGrameneGenomes","selectActiveGenomes","selectActiveGenomeCount","Gene","gene","Genes","results","doChangeQuantity","numFound","moreButton","e","fewerButton","docsToShow","doc","Pathway","pathway","Pathways","Domain","domain","Domains","Taxon","taxon","Species","ResultList","grameneGenes","grameneDomains","gramenePathways","searchUI","searchUpdated","Gramene","getStatus","cat","isChecked","toggle","tally","ResultSummary","doToggleCategory","showMatches","text","x","re","match","str","fontWeight","Suggestions","props","sugg1","suggestionsQuery","sugg2","margin","maxWidth","doAcceptSuggestion","groupValue","jdx","inventory","help","HelpDemo","list","GeneList","TaxDist","StatusCmp","content","grameneFiltersStatus","popover","activeGenomeCount","cursor","padding","backgroundColor","color","fontSize","Status","handleClick","window","event","cancelBubble","stopPropagation","selectTarget","unmarkTargets","Filter","classes","menu","key","menuItems","changeOperation","deleteNode","markTargets","isSource","toggleMenu","FiltersCmp","Filters","ResultsCmp","activeViews","v","React","createElement","Results","ViewsCmp","view","Views","external","location","Location","expression","Expression","homology","Homology","xrefs","Xrefs","renderTairSummary","searchResult","summary","trimSummary","start","substr","rest","ClosestOrtholog","desc","species","model_rep_id","model_rep_name","model_rep_description","model_rep_species_name","closest_rep_id","closest_rep_name","closest_rep_description","closest_rep_species_name","renderClosestOrtholog","shouldShowClosestOrtholog","details","label","available","expandedDetail","hasData","setState","geneDocs","requestGene","model_rep_taxon_id","taxLut","closest_rep_taxon_id","ensemblURL","taxName","numWordsInDescription","description","system_name","synonyms","renderMetadata","getDetailStatus","setExpanded","ensureGene","Component","prev","next","grameneSearchRows","pageNum","grameneSearchOffset","Math","ceil","configuration","ensemblRest","PREFIX","global","origin","Detail","height","suggestionToFilters","orthoParaList","thisGeneId","get","homologs","pickBy","filterCategories","thing","indexOf","flatten","value","isEmpty","geneCount","filterAllHomologs","bind","filterOrthologs","paralogs","filterParalogs","links","curation","treeId","gene_tree","grameneTrees","genetree","orthologList","paralogList","renderTreeVis","explorations","subComponents","title","explore","Title","Description","Content","QueryTerm","badge","isNumber","marginLeft","renderExplorations","exploration","Explore","renderLinks","link","Links","initRegion","visibleRange","initVisibleRange","span","Error","end","floor","chr","region","isChromosome","regionType","regionName","isChromsome","restrictToVisibleRange","geneName","filterDisplayName","closeModal","visible","updateQuery","jgiify","renderLocation","renderResetButton","renderBrowser","handleViewChange","resetVisibleRange","Browser","DallianceBrowser","initialVisibleRange","newProps","browser","setLocation","pageName","biodallianceElementId","viewStart","viewEnd","cookieKey","prefix","coordSystem","speciesName","auth","version","ucscName","sources","ensemblURI","tier_type","uri","disablePoweredBy","setDocumentTitle","noDefaultLabels","noPersist","noPersistView","maxWorkers","noTitle","noLocationField","noLeapButtons","noZoomSlider","noTrackAdder","noTrackEditor","noExport","noOptions","noHelp","maxViewWidth","addViewListener","onViewChange","timeoutID","clearTimeout","cancel","self","setTimeout","reactomeURL","holderId","diagram","Reactome","Diagram","create","proxyPrefix","placeHolder","width","divWrapper","clientWidth","dbId","indices","model","reactomePrefix","pathwayId","reactionId","initDiagram","loadDiagram","onDiagramLoaded","loaded","loadedDiagram","selectItem","flagItems","addEventListener","prevProps","prevState","hierarchy","selectedNode","path","loadNodes","pathwayIds","haveDocs","getHierarchy","makeTaxonSpecific","ancestorIds","annotations","clone","ancestors","entries","reaction","r","speciesCode","lineageField","tsDocs","tsDoc","lineage","detach","nodes","pwyId","pwy","line","parentOffset","checkbox","selected","undefined","nested","FlatToNested","convert","shift","nodeRef","n","unshift","stableId","resetSelection","reactomeLink","searchFilter","xrefLUT","notGramene_Plant_Reactome","div","overflow","renderHierarchy","HOW_MANY_TO_SHOW_BY_DEFAULT","Xref","showAll","vals","ellipsis","ellipsisChar","ellipsisTitle","toggleShowAll","members","db","m","val","item","liClass","possiblyTruncateList","formatXrefsForGene","isArray","dbxrefs","isKnown","xref","groupBy","collapseEmpties","selections","highlight","selectedTaxa","toggleEmpties","handleSelection","handleHighlight","renderSelection","handleFilter","selectionStats","selectionData","getSelectionData","totalGeneResults","fqFromSelections","selectedGenes","resultsCount","numSelectedBins","binsCount","proportionGenesSelected","selection","reduce","countAcc","sel","getBins","binFrom","binTo","acc","bin","selectionToSolrRange","rangeStrings","Selections","onFilter","stats","setFilter","formatProportion","prop","isFinite","format","examples","subsite","maize","sorghum","main","grapevine","TaxonomyModal","left_index","notAll","getSelectedGenomes","handleChange","handleClose","selectAll","selectNone","renderGenomes"],"version":3,"file":"index.js.map"}
1
+ {"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;C,U;A,M,C,c,C,c,G,U;I,K,E,I;;A,M,C,c,C,c,G,O;I,U,E,I;I,G,W,G,G,C;e,8B,E,O;I,C;;A,M,C,c,C,c,G,U;I,U,E,I;I,G,W,G,G,C;e,iC,E,O;I,C;;A,M,C,c,C,c,G,a;I,U,E,I;I,G,W,G,G,C;e,oC,E,O;I,C;;A,M,C,c,C,c,G,W;I,U,E,I;I,G,W,G,G,C;e,kC,E,O;I,C;;A,M,C,c,C,c,G,M;I,U,E,I;I,G,W,G,G,C;e,gC;I,C;;A,M,C,c,C,c,G,O;I,U,E,I;I,G,W,G,G,C;e,iC;I,C;;A,M,C,c,C,c,G,O;I,U,E,I;I,G,W,G,G,C;e,iC;I,C;;A,M,C,c,C,c,G,K;I,U,E,I;I,G,W,G,G,C;e,+B;I,C;;;C,U;A,M,C,c,C,c,G,U;I,K,E,I;;A,c,E,O,U,C;;ACAA,GAAA,CAAA,0BAAA,GAAA,4CAAA,CAAA,wBAAA;;AACA,GAAA,CAAA,8BAAA,GAAA,4CAAA,CAAA,wBAAA;;AACA,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,wBAAA;;AACA,GAAA,CAAA,2BAAA,GAAA,4CAAA,CAAA,wBAAA;;AACA,GAAA,CAAA,8BAAA,GAAA,4CAAA,CAAA,wBAAA;S,4C,C,G,E,C;W,G,I,G,C,U,G,G;S,O,G,G;;A,C;S,wC,C,G,E,C;W,wC,C,G,K,sC,C,G,K,iD,C,G,K,wC;A,C;S,wC,G,C;I,K,C,G,C,S,E,oI;A,C;S,iD,C,C,E,M,E,C;I,E,G,C;I,E,S,C,M,M,U,uC,C,C,E,M;I,G,C,C,G,M,C,S,C,Q,C,I,C,C,E,K,C,C,E,E;I,E,E,C,M,M,K,C,C,W,E,C,G,C,C,W,C,I;I,E,E,C,M,G,K,C,M,G,U,K,C,I,C,C;I,E,E,C,M,S,gD,I,C,C,U,uC,C,C,E,M;A,C;S,sC,C,I,E,C;I,E,S,M,M,S,K,I,C,M,C,Q,K,I,I,I,E,U,M,I,S,K,C,I,C,I;A,C;S,wC,C,G,E,C;I,E,E,K,C,O,C,G,U,uC,C,G;A,C;S,uC,C,G,E,G,E,C;I,E,E,G,I,I,I,G,G,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;AA8De,GAAA,CAAA,8BAAA,GAAA,gCAAA,EACb,wBADa,IAEb,sBAFa,IAGb,kBAHa,IAIb,yBAJa,GAKbuP,iCALa;A,c,E,O,K,8B;;;;;AT9Ef,GAAA,CAAA,kCAAA,GAAA,4CAAA,CAAA,wBAAA;;C,U;A,M,C,c,C,yB,G,U;I,K,E,I;;A,yB,C,K,G,yB,C,O,G,yB,C,O,G,yB,C,M,Q,C;;AUHA,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,YAAA;;;;;;C,U;S,6B,C,G,E,C;I,E,S,M,M,Q,Y,M,C,Q,M,M,G,6B,Y,O,C,I,E,C;sB,I;I,C;S,6B,Y,Q,C,I,E,C;e,I,W,M,M,Q,K,I,C,W,K,M,I,I,K,M,C,S,I,M,W,I;I,C;W,6B,C,G;A,C;A,M,C,c,C,c,G,U;I,K,E,I;;A,c,E,O,U,C;;ACAA,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,YAAA;;AACA,GAAA,CAAA,8BAAA,GAAA,4CAAA,CAAA,cAAA;;;;AAGA,GAAA,CAAA,iCAAA,GAAA,4CAAA,CAAA,wBAAA;;AACA,GAAA,CAAA,+BAAA,GAAA,4CAAA,CAAA,wBAAA;;AACA,GAAA,CAAA,+BAAA,GAAA,4CAAA,CAAA,wBAAA;;AACA,GAAA,CAAA,+BAAA,GAAA,4CAAA,CAAA,wBAAA;;AACA,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,wBAAA;;;S,4C,C,G,E,C;W,G,I,G,C,U,G,G;S,O,G,G;;A,C;S,qC,C,Q,E,W,E,C;I,E,I,Q,Y,W,G,K,C,G,C,S,E,iC;A,C;S,uC,C,M,E,K,E,C;Q,G,C,C,G,C,E,C,G,K,C,M,E,C,G,C;Q,G,C,U,G,K,C,C;Q,U,C,U,G,U,C,U,I,K;Q,U,C,Y,G,I;Q,E,G,K,K,U,E,U,C,Q,G,I;Q,M,C,c,C,M,E,U,C,G,E,U;I,C;A,C;S,kC,C,W,E,U,E,W,E,C;I,E,E,U,E,uC,C,W,C,S,E,U;I,E,E,W,E,uC,C,W,E,W;W,W;A,C;S,+B,C,Q,E,U,E,C;I,E,S,U,M,Q,K,U,K,I,E,K,C,G,C,S,E,kD;I,Q,C,S,G,M,C,M,C,U,I,U,C,S;Q,W;Y,K,E,Q;Y,Q,E,I;Y,Y,E,I;;;I,E,E,U,E,qC,C,Q,E,U;A,C;S,qC,C,C,E,C,E,C;I,qC,G,M,C,c,a,e,C,E,E,E,E,C;Q,E,C,S,G,E;e,E;I,C;W,qC,C,C,E,C;A,C;S,kC,C,O,E,C;I,G,C,yB,G,+C;oB,oB,G,C;Q,G,C,K,G,qC,C,O,G,M;Q,E,E,yB,E,C;Y,G,C,S,G,qC,O,W;Y,M,G,O,C,S,C,K,E,S,E,S;Q,C,M,M,G,K,C,K,O,S;e,gD,O,M;I,C;A,C;S,gD,C,I,E,I,E,C;I,E,E,I,K,6B,C,I,O,M,Y,I,M,Q,W,I;S,E,E,I,U,C,E,K,C,G,C,S,E,wD;W,4C,C,I;A,C;S,4C,C,I,E,C;I,E,E,I,U,C,E,K,C,G,C,c,E,yD;W,I;A,C;S,+C,G,C;I,E,S,O,M,S,M,O,C,S,S,K;I,E,E,O,C,S,C,I,S,K;I,E,S,K,M,Q,U,I;Q,C;Q,O,C,S,C,O,C,I,C,O,C,S,C,O,iB,C;Q,C;e,I;I,C,Q,C,E,C;e,K;I,C;A,C;S,qC,C,C,E,C;I,qC,G,M,C,c,G,M,C,c,Y,e,C,E,E,C;e,E,C,S,I,M,C,c,C,E;I,C;W,qC,C,C;A,C;AAIA,GAAA,CAAIuD,8BAAQ,GAAA,EAAG,AAAH,SAAG,AAAH,EAAG,CAAA,4BAAf,EAAA,OAAA,GAAA,aAAA,EAAA,KAAA;IAAsB,KAAK,GAAC,4CAAN;IAAP,CAAA,GAAA,EAA6D,AAA7D,SAA6D,AAA7D,EAA6D,CAAA,4BAA7D,EAAA,OAAA,GAAA,aAAA,EAAA,CAAA;IAAgE,SAAS,GAAC,mBAAV;;AAE/E,GAAA,CAAI7C,+BAAS;IACX8C,QAAQ,EAAEC,+BAAAA,EAAAA,OAAAA;IACVC,UAAU,EAAEC,iCAAAA,EAAAA,OAAAA;IACZC,QAAQ,EAAEC,+BAAAA,EAAAA,OAAAA;IACVtH,QAAQ,EAAE6B,+BAAAA,EAAAA,OAAAA;IACV0F,KAAK,EAAEC,4BAAPD,EAAAA,OAAAA;;SAGOE,uCAAT,CAA2BC,YAA3B,EAAyC,CAAzC;IACE,GAAA,CAAMC,OAAO,GAAGD,YAAY,CAACC,OAA7B;IACA,EAAA,EAAGA,OAAO,IAAID,YAAY,CAACvT,QAAb,KAA0B,IAAxC,SACE,EACE,AAD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,AADF,SACE,AADF,EACE,CAAA,4BAAA,EAAA,OAAA,GAAA,aAAA,EAAA,CAAA,GAAA,IAAA,GAAA,+BAAA;AAGL,CATD;AAWe,GAAA,CAAA,8BAAA,GAAA,gCAAA,CAAQD,4BAAR;A,c,E,O,K,8B;;;;;C,U;S,6B,C,G,E,C;I,E,S,M,M,Q,Y,M,C,Q,M,M,G,6B,Y,O,C,I,E,C;sB,I;I,C;S,6B,Y,Q,C,I,E,C;e,I,W,M,M,Q,K,I,C,W,K,M,I,I,K,M,C,S,I,M,W,I;I,C;W,6B,C,G;A,C;A,M,C,c,C,c,G,U;I,K,E,I;;A,c,E,O,U,C;;AChBf,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,YAAA;;AACA,GAAA,CAAA,6BAAA,GAAA,4CAAA,CAAA,aAAA;;;AAEA,GAAA,CAAA,yCAAA,GAAA,4CAAA,CAAA,yBAAA;;AACA,GAAA,CAAA,yCAAA,GAAA,4CAAA,CAAA,yBAAA;;;;;;S,4C,C,G,E,C;W,G,I,G,C,U,G,G;S,O,G,G;;A,C;S,qC,C,Q,E,W,E,C;I,E,I,Q,Y,W,G,K,C,G,C,S,E,iC;A,C;S,uC,C,M,E,K,E,C;Q,G,C,C,G,C,E,C,G,K,C,M,E,C,G,C;Q,G,C,U,G,K,C,C;Q,U,C,U,G,U,C,U,I,K;Q,U,C,Y,G,I;Q,E,G,K,K,U,E,U,C,Q,G,I;Q,M,C,c,C,M,E,U,C,G,E,U;I,C;A,C;S,kC,C,W,E,U,E,W,E,C;I,E,E,U,E,uC,C,W,C,S,E,U;I,E,E,W,E,uC,C,W,E,W;W,W;A,C;S,+B,C,Q,E,U,E,C;I,E,S,U,M,Q,K,U,K,I,E,K,C,G,C,S,E,kD;I,Q,C,S,G,M,C,M,C,U,I,U,C,S;Q,W;Y,K,E,Q;Y,Q,E,I;Y,Y,E,I;;;I,E,E,U,E,qC,C,Q,E,U;A,C;S,qC,C,C,E,C,E,C;I,qC,G,M,C,c,a,e,C,E,E,E,E,C;Q,E,C,S,G,E;e,E;I,C;W,qC,C,C,E,C;A,C;S,kC,C,O,E,C;I,G,C,yB,G,+C;oB,oB,G,C;Q,G,C,K,G,qC,C,O,G,M;Q,E,E,yB,E,C;Y,G,C,S,G,qC,O,W;Y,M,G,O,C,S,C,K,E,S,E,S;Q,C,M,M,G,K,C,K,O,S;e,gD,O,M;I,C;A,C;S,gD,C,I,E,I,E,C;I,E,E,I,K,6B,C,I,O,M,Y,I,M,Q,W,I;S,E,E,I,U,C,E,K,C,G,C,S,E,wD;W,4C,C,I;A,C;S,4C,C,I,E,C;I,E,E,I,U,C,E,K,C,G,C,c,E,yD;W,I;A,C;S,+C,G,C;I,E,S,O,M,S,M,O,C,S,S,K;I,E,E,O,C,S,C,I,S,K;I,E,S,K,M,Q,U,I;Q,C;Q,O,C,S,C,O,C,I,C,O,C,S,C,O,iB,C;Q,C;e,I;I,C,Q,C,E,C;e,K;I,C;A,C;S,qC,C,C,E,C;I,qC,G,M,C,c,G,M,C,c,Y,e,C,E,E,C;e,E,C,S,I,M,C,c,C,E;I,C;W,qC,C,C;A,C;SAMSE,yCAAT,CAA6B7N,UAA7B,EAAyC,CAAzC;;QAEInI,MAAM,GAAE,IADH;QAEL6B,IAAI,EAAE,EAFD;QAGLwE,SAAS,GAAE,GAHN;QAILC,MAAM,EAAE,KAJH;QAKLZ,OAAO,EAAE,CALJ;QAMLG,QAAQ,EAAE,CANL;QAOLzE,QAAQ;;gBAEJgG,QAAQ,EAAEe,UAAU,CAACf,QADvB;gBAEEC,QAAQ,EAAEc,UAAU,CAACd,QAFvB;gBAGE/J,IAAI,EAAE6K,UAAU,CAAC7K,IAHnB;gBAIEoB,QAAQ,EAAEyJ,UAAU,CAACzJ,QAJvB;gBAKEgH,OAAO,EAAE,CALX;gBAMEG,QAAQ,EAAE,CANZ;gBAOES,MAAM,EAAE,KAPV;gBAQEJ,MAAM,EAAE,KAARA;;;;AAIP,CAAA;AAEKmM,GAAAA,CAAAA,8B,GAAAA,EAAAA,AAAAA,SAAAA,AAAAA,EAAAA,UAAAA,gBAAAA,EAAAA,CAAAA;I,+B,C,Q,E,gB;I,G,C,M,G,kC,C,Q;aACJ,QAAA,CAAY5D,KAAZ,EAAmB,CAAnB;QAAmB,GAAA,CAAA,KAAA;QAAA,qCAAA,OAAA,QAAA;QACjB,KAAA,GAAA,MAAA,CAAA,IAAA,OAAMA,KAAN;QACA,EAAA,GAAKA,KAAK,CAACyF,QAAN,CAAelT,cAAf,CAA8ByN,KAAK,CAACgE,YAAN,CAAmBtT,EAAjD,GACHsP,KAAK,CAAC0F,WAAN,CAAkB1F,KAAK,CAACgE,YAAN,CAAmBtT,EAArC;QAEF,KAAA,CAAKyB,QAAL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M,E,C,G,C;Y,G,C,M,G,S,C,C;gB,G,C,G,I,M,C,E,E,M,C,S,C,c,C,I,C,M,E,G,G,M,C,G,I,M,C,G;Q,C;e,M;I,C;W,8B,C,K,O,S;A,C;S,qC,C,Q,E,W,E,C;I,E,I,Q,Y,W,G,K,C,G,C,S,E,iC;A,C;S,uC,C,M,E,K,E,C;Q,G,C,C,G,C,E,C,G,K,C,M,E,C,G,C;Q,G,C,U,G,K,C,C;Q,U,C,U,G,U,C,U,I,K;Q,U,C,Y,G,I;Q,E,G,K,K,U,E,U,C,Q,G,I;Q,M,C,c,C,M,E,U,C,G,E,U;I,C;A,C;S,kC,C,W,E,U,E,W,E,C;I,E,E,U,E,uC,C,W,C,S,E,U;I,E,E,W,E,uC,C,W,E,W;W,W;A,C;S,+B,C,Q,E,U,E,C;I,E,S,U,M,Q,K,U,K,I,E,K,C,G,C,S,E,kD;I,Q,C,S,G,M,C,M,C,U,I,U,C,S;Q,W;Y,K,E,Q;Y,Q,E,I;Y,Y,E,I;;;I,E,E,U,E,qC,C,Q,E,U;A,C;S,qC,C,C,E,C,E,C;I,qC,G,M,C,c,a,e,C,E,E,E,E,C;Q,E,C,S,G,E;e,E;I,C;W,qC,C,C,E,C;A,C;S,kC,C,O,E,C;I,G,C,yB,G,+C;oB,oB,G,C;Q,G,C,K,G,qC,C,O,G,M;Q,E,E,yB,E,C;Y,G,C,S,G,qC,O,W;Y,M,G,O,C,S,C,K,E,S,E,S;Q,C,M,M,G,K,C,K,O,S;e,gD,O,M;I,C;A,C;S,gD,C,I,E,I,E,C;I,E,E,I,K,6B,C,I,O,M,Y,I,M,Q,W,I;S,E,E,I,U,C,E,K,C,G,C,S,E,wD;W,4C,C,I;A,C;S,4C,C,I,E,C;I,E,E,I,U,C,E,K,C,G,C,c,E,yD;W,I;A,C;S,+C,G,C;I,E,S,O,M,S,M,O,C,S,S,K;I,E,E,O,C,S,C,I,S,K;I,E,S,K,M,Q,U,I;Q,C;Q,O,C,S,C,O,C,I,C,O,C,S,C,O,iB,C;Q,C;e,I;I,C,Q,C,E,C;e,K;I,C;A,C;S,qC,C,C,E,C;I,qC,G,M,C,c,G,M,C,c,Y,e,C,E,E,C;e,E,C,S,I,M,C,c,C,E;I,C;W,qC,C,C;A,C;AAMMjF,GAAAA,CAAAA,8B,GAAAA,EAAAA,AAAAA,SAAAA,AAAAA,EAAAA,UAAAA,gBAAAA,EAAAA,C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A,GAAnB;qBACKkB,gBAAL,CAAsBhB,GAAtB,EAA2BvG,KAA3B,EAAkCqG,GAAlC;YACD,CAAA;;;Y,G,G,iB;YAED,KAAA,WAAA,iBAAA,GAAoB,CAApB;gBAAoB,GAAA,CAAA,MAAA;gBAClB,EAAA,AAAA,sEAAA;uBACA,EACE,AADF,SACE,AADF,EACE,CAAA,4BAAA,EAAA,OAAA,GAAA,aAAA,CAAC,4BAAD;oBACE,IAAI,GAAC,EADP;oBAEE,OAAO,GAAC,YAFV;oBAGE,OAAO,WAAP,OAAA,GAAA,CAAA;+BAAe,MAAI,CAACmB,iBAAL;oBAAN,CAAA;oBAHX,KAAA;YAOH,CAAA;;;W,S;AAtNoB3I,CAAAA,CAAAA,4BAAAA,EAAAA,OAAAA,GAAMwD,S;AAyNd,GAAA,CAAA,8BAAA,GAAA,gCAAA,EAAQ,sBAAR,GAAiChD,8BAAjC;A,c,E,O,K,8B;;;;C,U;S,6B,C,G,E,C;I,E,S,M,M,Q,Y,M,C,Q,M,M,G,6B,Y,O,C,I,E,C;sB,I;I,C;S,6B,Y,Q,C,I,E,C;e,I,W,M,M,Q,K,I,C,W,K,M,I,I,K,M,C,S,I,M,W,I;I,C;W,6B,C,G;A,C;A,M,C,c,C,c,G,U;I,K,E,I;;A,c,E,O,U,C;;ACnOf,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,YAAA;;AACA,GAAA,CAAA,uCAAA,GAAA,4CAAA,CAAA,wBAAA;S,4C,C,G,E,C;W,G,I,G,C,U,G,G;S,O,G,G;;A,C;S,8B,G,C;I,8B,G,M,C,M,a,M,E,C;Y,G,C,C,G,C,E,C,G,S,C,M,E,C,G,C;Y,G,C,M,G,S,C,C;gB,G,C,G,I,M,C,E,E,M,C,S,C,c,C,I,C,M,E,G,G,M,C,G,I,M,C,G;Q,C;e,M;I,C;W,8B,C,K,O,S;A,C;S,qC,C,Q,E,W,E,C;I,E,I,Q,Y,W,G,K,C,G,C,S,E,iC;A,C;S,uC,C,M,E,K,E,C;Q,G,C,C,G,C,E,C,G,K,C,M,E,C,G,C;Q,G,C,U,G,K,C,C;Q,U,C,U,G,U,C,U,I,K;Q,U,C,Y,G,I;Q,E,G,K,K,U,E,U,C,Q,G,I;Q,M,C,c,C,M,E,U,C,G,E,U;I,C;A,C;S,kC,C,W,E,U,E,W,E,C;I,E,E,U,E,uC,C,W,C,S,E,U;I,E,E,W,E,uC,C,W,E,W;W,W;A,C;S,+B,C,Q,E,U,E,C;I,E,S,U,M,Q,K,U,K,I,E,K,C,G,C,S,E,kD;I,Q,C,S,G,M,C,M,C,U,I,U,C,S;Q,W;Y,K,E,Q;Y,Q,E,I;Y,Y,E,I;;;I,E,E,U,E,qC,C,Q,E,U;A,C;S,qC,C,C,E,C,E,C;I,qC,G,M,C,c,a,e,C,E,E,E,E,C;Q,E,C,S,G,E;e,E;I,C;W,qC,C,C,E,C;A,C;S,kC,C,O,E,C;I,G,C,yB,G,+C;oB,oB,G,C;Q,G,C,K,G,qC,C,O,G,M;Q,E,E,yB,E,C;Y,G,C,S,G,qC,O,W;Y,M,G,O,C,S,C,K,E,S,E,S;Q,C,M,M,G,K,C,K,O,S;e,gD,O,M;I,C;A,C;S,gD,C,I,E,I,E,C;I,E,E,I,K,6B,C,I,O,M,Y,I,M,Q,W,I;S,E,E,I,U,C,E,K,C,G,C,S,E,wD;W,4C,C,I;A,C;S,4C,C,I,E,C;I,E,E,I,U,C,E,K,C,G,C,c,E,yD;W,I;A,C;S,+C,G,C;I,E,S,O,M,S,M,O,C,S,S,K;I,E,E,O,C,S,C,I,S,K;I,E,S,K,M,Q,U,I;Q,C;Q,O,C,S,C,O,C,I,C,O,C,S,C,O,iB,C;Q,C;e,I;I,C,Q,C,E,C;e,K;I,C;A,C;S,qC,C,C,E,C;I,qC,G,M,C,c,G,M,C,c,Y,e,C,E,E,C;e,E,C,S,I,M,C,c,C,E;I,C;W,qC,C,C;A,C;AAEqBoI,GAAAA,CAAAA,6B,GAAAA,EAAAA,AAAAA,SAAAA,AAAAA,EAAAA,UAAAA,gBAAAA,EAAAA,CAAAA;I,+B,C,O,E,gB;I,G,C,M,G,kC,C,O;aACnB,OAAA,CAAY5L,KAAZ,EAAmB,CAAnB;QAAmB,qCAAA,OAAA,OAAA;eAAA,MAAA,CAAA,IAAA,OACXA,KADW;IAElB,CAAA;I,kC,C,O;;Y,G,G,M;YAED,KAAA,WAAA,MAAA,GAAS,CAAT;uBACE,EACE,AADF,SACE,AADF,EACE,CAAA,4BADF,EAAA,OAAA,GAAA,aAAA,EAAA,GAAA;oBACO,SAAS,GAAC,gBAAV;mBAAL,EACE,AADF,SACE,AADF,EACE,CAAA,4BAAA,EAAA,OAAA,GAAA,aAAA,CAAC,uCAAA,EAAA,OAAA,IAAD,8BAAA;wBAA2BA,KAA3B;oBAAkC,QAAQ,SAASA,KAAL,CAAWmL,UAAvB;;YAGvC,CAAA;;;W,O;AAXkCnI,CAAAA,CAAAA,4BAAAA,EAAAA,OAAAA,GAAMwD,S,EAe3C,CAfqCxD,AAerC,EAfqCA,AAerC,sBAfqCA;AAgBrC,EAAA,AAAA,2CAAA;AACA,EAAA,AAAA,kCAAA;AACA,EAAA,AAAA,mDAAA;AACA,EAAA,AAAA,gDAAA;AACA,EAAA,AAAA,GAAA;A,c,E,O,K,6B;;;;C,U;S,6B,C,G,E,C;I,E,S,M,M,Q,Y,M,C,Q,M,M,G,6B,Y,O,C,I,E,C;sB,I;I,C;S,6B,Y,Q,C,I,E,C;e,I,W,M,M,Q,K,I,C,W,K,M,I,I,K,M,C,S,I,M,W,I;I,C;W,6B,C,G;A,C;A,M,C,c,C,c,G,U;I,K,E,I;;A,c,E,O,U,C;;ACvBA,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,YAAA;;AACA,GAAA,CAAA,8BAAA,GAAA,4CAAA,CAAA,oBAAA;S,4C,C,G,E,C;W,G,I,G,C,U,G,G;S,O,G,G;;A,C;S,qC,C,Q,E,W,E,C;I,E,I,Q,Y,W,G,K,C,G,C,S,E,iC;A,C;S,uC,C,M,E,K,E,C;Q,G,C,C,G,C,E,C,G,K,C,M,E,C,G,C;Q,G,C,U,G,K,C,C;Q,U,C,U,G,U,C,U,I,K;Q,U,C,Y,G,I;Q,E,G,K,K,U,E,U,C,Q,G,I;Q,M,C,c,C,M,E,U,C,G,E,U;I,C;A,C;S,kC,C,W,E,U,E,W,E,C;I,E,E,U,E,uC,C,W,C,S,E,U;I,E,E,W,E,uC,C,W,E,W;W,W;A,C;S,+B,C,Q,E,U,E,C;I,E,S,U,M,Q,K,U,K,I,E,K,C,G,C,S,E,kD;I,Q,C,S,G,M,C,M,C,U,I,U,C,S;Q,W;Y,K,E,Q;Y,Q,E,I;Y,Y,E,I;;;I,E,E,U,E,qC,C,Q,E,U;A,C;S,qC,C,C,E,C,E,C;I,qC,G,M,C,c,a,e,C,E,E,E,E,C;Q,E,C,S,G,E;e,E;I,C;W,qC,C,C,E,C;A,C;S,kC,C,O,E,C;I,G,C,yB,G,+C;oB,oB,G,C;Q,G,C,K,G,qC,C,O,G,M;Q,E,E,yB,E,C;Y,G,C,S,G,qC,O,W;Y,M,G,O,C,S,C,K,E,S,E,S;Q,C,M,M,G,K,C,K,O,S;e,gD,O,M;I,C;A,C;S,gD,C,I,E,I,E,C;I,E,E,I,K,6B,C,I,O,M,Y,I,M,Q,W,I;S,E,E,I,U,C,E,K,C,G,C,S,E,wD;W,4C,C,I;A,C;S,4C,C,I,E,C;I,E,E,I,U,C,E,K,C,G,C,c,E,yD;W,I;A,C;S,+C,G,C;I,E,S,O,M,S,M,O,C,S,S,K;I,E,E,O,C,S,C,I,S,K;I,E,S,K,M,Q,U,I;Q,C;Q,O,C,S,C,O,C,I,C,O,C,S,C,O,iB,C;Q,C;e,I;I,C,Q,C,E,C;e,K;I,C;A,C;S,qC,C,C,E,C;I,qC,G,M,C,c,G,M,C,c,Y,e,C,E,E,C;e,E,C,S,I,M,C,c,C,E;I,C;W,qC,C,C;A,C;AACA,EAAA,AAAA,8EAAA;AACA,EAAA,AAAA,wDAAA;AACA,EAAA,AAAA,6DAAA;AACA,EAAA,AAAA,+DAAA;AACA,EAAA,AAAA,gEAAA;AAEA,EAAA,AAAA,qBAAA;AACA,GAAA,CAAMkE,4BAAM,IAAG,0BAAf;AAEqB2E,GAAAA,CAAAA,sC,GAAAA,EAAAA,AAAAA,SAAAA,AAAAA,EAAAA,UAAAA,gBAAAA,EAAAA,CAAAA;I,+B,C,gB,E,gB;I,G,C,M,G,kC,C,gB;aAEnB,gBAAA,CAAY7L,KAAZ,EAAmB,CAAnB;QAAmB,GAAA,CAAA,KAAA;QAAA,qCAAA,OAAA,gBAAA;QACjB,KAAA,GAAA,MAAA,CAAA,IAAA,OAAMA,KAAN;QACA,KAAA,CAAK8L,mBAAL,GAA2B9L,KAAK,CAACoK,YAAjC;eAFiB,KAAA;IAGlB,CAAA;I,kC,C,gB;;Y,G,G,qB;YAED,KAAA,WAAA,qBAAA,CAAsB2B,QAAtB,EAAgC,CAAhC;gBACE,EAAA,AAAA,2CAAA;gBACA,EAAA,EAAG,8BAAA,EAAA,OAAA,GAAQA,QAAQ,CAAC3B,YAAjB,OAAoC0B,mBAApC,QACIE,OAAL,CAAaC,WAAb,CAAyBF,QAAQ,CAAC3B,YAAT,CAAsBM,GAA/C,EAAoDqB,QAAQ,CAAC3B,YAAT,CAAsBjG,KAA1E,EAAiF4H,QAAQ,CAAC3B,YAAT,CAAsBI,GAAvG;uBA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5G8CxD,AA4G9C,EA5G8CA,AA4G9C,+BA5G8CA;AA6G9C,EAAA,AAAA,2CAAA;AACA,EAAA,AAAA,mDAAA;AACA,EAAA,AAAA,kCAAA;AACA,EAAA,AAAA,gDAAA;AACA,EAAA,AAAA,GAAA;A,c,E,O,K,sC;;;;;;;C,U;S,6B,C,G,E,C;I,E,S,M,M,Q,Y,M,C,Q,M,M,G,6B,Y,O,C,I,E,C;sB,I;I,C;S,6B,Y,Q,C,I,E,C;e,I,W,M,M,Q,K,I,C,W,K,M,I,I,K,M,C,S,I,M,W,I;I,C;W,6B,C,G;A,C;A,M,C,c,C,c,G,U;I,K,E,I;;A,c,E,O,U,C;;AC5HA,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,YAAA;;;AAEA,GAAA,CAAA,mCAAA,GAAA,4CAAA,CAAA,mBAAA;;;;AAEA,GAAA,CAAA,yCAAA,GAAA,4CAAA,CAAA,yBAAA;;;;AAGA,GAAA,CAAA,6BAAA,GAAA,4CAAA,CAAA,aAAA;;S,4C,C,G,E,C;W,G,I,G,C,U,G,G;S,O,G,G;;A,C;S,oC,C,G,E,C,E,C;W,qC,C,G,K,2C,C,G,E,C,K,iD,C,G,E,C,K,sC;A,C;S,sC,G,C;I,K,C,G,C,S,E,yI;A,C;S,iD,C,C,E,M,E,C;I,E,G,C;I,E,S,C,M,M,U,uC,C,C,E,M;I,G,C,C,G,M,C,S,C,Q,C,I,C,C,E,K,C,C,E,E;I,E,E,C,M,M,K,C,C,W,E,C,G,C,C,W,C,I;I,E,E,C,M,G,K,C,M,G,U,K,C,I,C,C;I,E,E,C,M,S,gD,I,C,C,U,uC,C,C,E,M;A,C;S,uC,C,G,E,G,E,C;I,E,E,G,I,I,I,G,G,G,C,M,E,G,G,G,C,M;Q,G,C,C,G,C,E,I,G,G,C,K,C,G,G,C,G,G,E,C,G,I,C,C,I,G,C,C;W,I;A,C;S,2C,C,G,E,C,E,C;I,G,C,E,G,G,I,I,G,I,U,M,M,S,K,G,C,M,C,Q,K,G,E,U;I,E,E,E,I,I;I,G,C,I;I,G,C,E,G,I;I,G,C,E,G,K;I,G,C,E,E,E;Q,C;Y,E,G,E,C,I,C,G,K,E,I,E,G,E,C,I,I,I,G,E,G,I,C,C;Y,I,C,I,C,E,C,K;Y,E,E,C,I,I,C,M,K,C;Q,C;I,C,Q,G,E,C;Q,E,G,I;Q,E,G,G;I,C,Q,C;Y,C;Y,E,G,E,I,E,E,M,M,I,E,E,E,M;Q,C,Q,C;Y,E,E,E,E,K,C,E;Q,C;I,C;W,I;A,C;S,qC,C,G,E,C;I,E,E,K,C,O,C,G,U,G;A,C;S,qC,C,Q,E,W,E,C;I,E,I,Q,Y,W,G,K,C,G,C,S,E,iC;A,C;S,uC,C,M,E,K,E,C;Q,G,C,C,G,C,E,C,G,K,C,M,E,C,G,C;Q,G,C,U,G,K,C,C;Q,U,C,U,G,U,C,U,I,K;Q,U,C,Y,G,I;Q,E,G,K,K,U,E,U,C,Q,G,I;Q,M,C,c,C,M,E,U,C,G,E,U;I,C;A,C;S,kC,C,W,E,U,E,W,E,C;I,E,E,U,E,uC,C,W,C,S,E,U;I,E,E,W,E,uC,C,W,E,W;W,W;A,C;S,+B,C,Q,E,U,E,C;I,E,S,U,M,Q,K,U,K,I,E,K,C,G,C,S,E,kD;I,Q,C,S,G,M,C,M,C,U,I,U,C,S;Q,W;Y,K,E,Q;Y,Q,E,I;Y,Y,E,I;;;I,E,E,U,E,qC,C,Q,E,U;A,C;S,qC,C,C,E,C,E,C;I,qC,G,M,C,c,a,e,C,E,E,E,E,C;Q,E,C,S,G,E;e,E;I,C;W,qC,C,C,E,C;A,C;S,kC,C,O,E,C;I,G,C,yB,G,+C;oB,oB,G,C;Q,G,C,K,G,qC,C,O,G,M;Q,E,E,yB,E,C;Y,G,C,S,G,qC,O,W;Y,M,G,O,C,S,C,K,E,S,E,S;Q,C,M,M,G,K,C,K,O,S;e,gD,O,M;I,C;A,C;S,gD,C,I,E,I,E,C;I,E,E,I,K,6B,C,I,O,M,Y,I,M,Q,W,I;S,E,E,I,U,C,E,K,C,G,C,S,E,wD;W,4C,C,I;A,C;S,4C,C,I,E,C;I,E,E,I,U,C,E,K,C,G,C,c,E,yD;W,I;A,C;S,+C,G,C;I,E,S,O,M,S,M,O,C,S,S,K;I,E,E,O,C,S,C,I,S,K;I,E,S,K,M,Q,U,I;Q,C;Q,O,C,S,C,O,C,I,C,O,C,S,C,O,iB,C;Q,C;e,I;I,C,Q,C,E,C;e,K;I,C;A,C;S,qC,C,C,E,C;I,qC,G,M,C,c,G,M,C,c,Y,e,C,E,E,C;e,E,C,S,I,M,C,c,C,E;I,C;W,qC,C,C;A,C;AAGA,GAAA,CAAIwL,iCAAW,IAAG,iCAAlB;AAEMrQ,GAAAA,CAAAA,8B,GAA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GAAlB;oBAAuB,CAAA;mBAA3C,EACE,AADF,SACE,AADF,EACE,CAAA,4BADF,EAAA,OAAA,GAAA,aAAA,EAAA,GAAA;oBACO,KAAK;wBAAG7D,KAAK,EAAC,GAAP;wBAAY1H,MAAM,EAAE,GAApB;wBAAyBwL,QAAQ,GAAC,MAAlC;yBAA4C,KAAA,IAAM,IAAN;;wBAAqBC,eAAL,KAD1E,EAEE,AAFF,SAEE,AAFF,EAEE,CAAA,4BADA,EAAA,OAAA,GAAA,aAAA,EAAA,GAAA;oBACK,EAAE,OAAOtE,QAAT;oBACJiE,YAHH,EAIGD,YAJH;YAOH,CAAA;;;W,Q;AAjPoBzP,CAAAA,CAAAA,4BAAAA,EAAAA,OAAAA,GAAMwD,S;AAoPd,GAAA,CAAA,8BAAA,GAAA,gCAAA,EACb,qBADa,IAEb,qBAFa,IAGb,wBAHa,IAIb,yBAJa,GAKbrI,8BALa;A,c,E,O,K,8B;;;;;C,U;S,6B,C,G,E,C;I,E,S,M,M,Q,Y,M,C,Q,M,M,G,6B,Y,O,C,I,E,C;sB,I;I,C;S,6B,Y,Q,C,I,E,C;e,I,W,M,M,Q,K,I,C,W,K,M,I,I,K,M,C,S,I,M,W,I;I,C;W,6B,C,G;A,C;A,M,C,c,C,c,G,U;I,K,E,I;;A,c,E,O,U,C;;AChQf,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,YAAA;;AACA,GAAA,CAAA,8BAAA,GAAA,4CAAA,CAAA,cAAA;;AAEA,GAAA,CAAA,6BAAA,GAAA,4CAAA,CAAA,aAAA;;AACA,GAAA,CAAA,qCAAA,GAAA,4CAAA,CAAA,qBAAA;;;S,4C,C,G,E,C;W,G,I,G,C,U,G,G;S,O,G,G;;A,C;S,qC,C,Q,E,W,E,C;I,E,I,Q,Y,W,G,K,C,G,C,S,E,iC;A,C;S,uC,C,M,E,K,E,C;Q,G,C,C,G,C,E,C,G,K,C,M,E,C,G,C;Q,G,C,U,G,K,C,C;Q,U,C,U,G,U,C,U,I,K;Q,U,C,Y,G,I;Q,E,G,K,K,U,E,U,C,Q,G,I;Q,M,C,c,C,M,E,U,C,G,E,U;I,C;A,C;S,kC,C,W,E,U,E,W,E,C;I,E,E,U,E,uC,C,W,C,S,E,U;I,E,E,W,E,uC,C,W,E,W;W,W;A,C;S,+B,C,Q,E,U,E,C;I,E,S,U,M,Q,K,U,K,I,E,K,C,G,C,S,E,kD;I,Q,C,S,G,M,C,M,C,U,I,U,C,S;Q,W;Y,K,E,Q;Y,Q,E,I;Y,Y,E,I;;;I,E,E,U,E,qC,C,Q,E,U;A,C;S,qC,C,C,E,C,E,C;I,qC,G,M,C,c,a,e,C,E,E,E,E,C;Q,E,C,S,G,E;e,E;I,C;W,qC,C,C,E,C;A,C;S,kC,C,O,E,C;I,G,C,yB,G,+C;oB,oB,G,C;Q,G,C,K,G,qC,C,O,G,M;Q,E,E,yB,E,C;Y,G,C,S,G,qC,O,W;Y,M,G,O,C,S,C,K,E,S,E,S;Q,C,M,M,G,K,C,K,O,S;e,gD,O,M;I,C;A,C;S,gD,C,I,E,I,E,C;I,E,E,I,K,6B,C,I,O,M,Y,I,M,Q,W,I;S,E,E,I,U,C,E,K,C,G,C,S,E,wD;W,4C,C,I;A,C;S,4C,C,I,E,C;I,E,E,I,U,C,E,K,C,G,C,c,E,yD;W,I;A,C;S,+C,G,C;I,E,S,O,M,S,M,O,C,S,S,K;I,E,E,O,C,S,C,I,S,K;I,E,S,K,M,Q,U,I;Q,C;Q,O,C,S,C,O,C,I,C,O,C,S,C,O,iB,C;Q,C;e,I;I,C,Q,C,E,C;e,K;I,C;A,C;S,qC,C,C,E,C;I,qC,G,M,C,c,G,M,C,c,Y,e,C,E,E,C;e,E,C,S,I,M,C,c,C,E;I,C;W,qC,C,C;A,C;AAGA,GAAA,CAAM6U,iDAA2B,GAAG,EAApC;AAEMC,GAAAA,CAAAA,0B,GAAAA,EAAAA,AAAAA,SAAAA,AAAAA,EAAAA,UAAAA,gBAAAA,EAAAA,CAAAA;I,+B,C,I,E,gB;I,G,C,M,G,kC,C,I;aACJ,IAAA,CAAYjT,KAAZ,EAAmB,CAAnB;QAAmB,GAAA,CAAA,KAAA;QAAA,qCAAA,OAAA,IAAA;QACjB,KAAA,GAAA,MAAA,CAAA,IAAA,OAAMA,KAAN;QACA,KAAA,CAAKnL,KAAL;YAAcqe,OAAO,EAAE,KAATA;;eAFG,KAAA;IAGlB,CAAA;I,kC,C,I;;Y,G,G,a;YAED,KAAA,WAAA,aAAA,GAAgB,CAAhB;qBACO1N,QAAL;oBAAe0N,OAAO,QAAQre,KAAL,CAAWqe,OAArBA;;YAChB,CAAA;;;Y,G,G,oB;YAED,KAAA,WAAA,oBAAA,CAAqBC,IAA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C,C,Q,E,W,E,C;I,E,I,Q,Y,W,G,K,C,G,C,S,E,iC;A,C;S,uC,C,M,E,K,E,C;Q,G,C,C,G,C,E,C,G,K,C,M,E,C,G,C;Q,G,C,U,G,K,C,C;Q,U,C,U,G,U,C,U,I,K;Q,U,C,Y,G,I;Q,E,G,K,K,U,E,U,C,Q,G,I;Q,M,C,c,C,M,E,U,C,G,E,U;I,C;A,C;S,kC,C,W,E,U,E,W,E,C;I,E,E,U,E,uC,C,W,C,S,E,U;I,E,E,W,E,uC,C,W,E,W;W,W;A,C;S,+B,C,Q,E,U,E,C;I,E,S,U,M,Q,K,U,K,I,E,K,C,G,C,S,E,kD;I,Q,C,S,G,M,C,M,C,U,I,U,C,S;Q,W;Y,K,E,Q;Y,Q,E,I;Y,Y,E,I;;;I,E,E,U,E,qC,C,Q,E,U;A,C;S,qC,C,C,E,C,E,C;I,qC,G,M,C,c,a,e,C,E,E,E,E,C;Q,E,C,S,G,E;e,E;I,C;W,qC,C,C,E,C;A,C;S,kC,C,O,E,C;I,G,C,yB,G,+C;oB,oB,G,C;Q,G,C,K,G,qC,C,O,G,M;Q,E,E,yB,E,C;Y,G,C,S,G,qC,O,W;Y,M,G,O,C,S,C,K,E,S,E,S;Q,C,M,M,G,K,C,K,O,S;e,gD,O,M;I,C;A,C;S,gD,C,I,E,I,E,C;I,E,E,I,K,6B,C,I,O,M,Y,I,M,Q,W,I;S,E,E,I,U,C,E,K,C,G,C,S,E,wD;W,4C,C,I;A,C;S,4C,C,I,E,C;I,E,E,I,U,C,E,K,C,G,C,c,E,yD;W,I;A,C;S,+C,G,C;I,E,S,O,M,S,M,O,C,S,S,K;I,E,E,O,C,S,C,I,S,K;I,E,S,K,M,Q,U,I;Q,C;Q,O,C,S,C,O,C,I,C,O,C,S,C,O,iB,C;Q,C;e,I;I,C,Q,C,E,C;e,K;I,C;A,C;S,qC,C,C,E,C;I,qC,G,M,C,c,G,M,C,c,Y,e,C,E,E,C;e,E,C,S,I,M,C,c,C,E;I,C;W,qC,C,C;A,C;AAGMhD,GAAAA,CAAAA,6B,GAAAA,EAAAA,AAAAA,SAAAA,AAAAA,EAAAA,UAAAA,gBAAAA,EAAAA,CAAAA;I,+B,C,O,E,gB;I,G,C,M,G,kC,C,O;aACJ,OAAA,CAAYd,KAAZ,EAAmB,CAAnB;QAAmB,GAAA,CAAA,KAAA;QAAA,qCAAA,OAAA,OAAA;QACj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EAAoDwE,GAApD,UAAyD2I,CAAD,EAAGlN,GAAH,EAAvC,CAAA;eAAuC,EACvD,AADuD,SACvD,AADuD,EACvD,CAAA,4BADuD,EAAA,OAAA,GAAA,aAAA,EAAA,EAAA;YACnD,GAAG,EAAEA,GAAL;WAAJ,EAAc,AAAd,SAAc,AAAd,EAAc,CAAA,4BAAd,EAAA,OAAA,GAAA,aAAA,EAAA,CAAA;YAAiB,OAAO,WAAP,OAAA,GAAA,CAAA;uBAAeqJ,uBAAuB,CAAC6D,CAAC,CAACzF,OAAH;YAA7B,CAAA;WAA2CyF,CAAC,CAAC4B,IAAzD;IADyC,CAAxD;AArCM,CAAjB;AA8Ce,GAAA,CAAA,8BAAA,GAAA,gCAAA,EACb,mBADa,IAEb,uBAFa,GAGbkB,8BAHa;A,c,E,O,K,8B;;;;;AZxHf,GAAA,CAAA,+BAAA,GAAA,4CAAA,CAAA,wBAAA;;C,U;S,6B,C,G,E,C;I,E,S,M,M,Q,Y,M,C,Q,M,M,G,6B,Y,O,C,I,E,C;sB,I;I,C;S,6B,Y,Q,C,I,E,C;e,I,W,M,M,Q,K,I,C,W,K,M,I,I,K,M,C,S,I,M,W,I;I,C;W,6B,C,G;A,C;A,M,C,c,C,c,G,U;I,K,E,I;;A,c,E,O,U,C;;AaPA,GAAA,CAAA,4BAAA,GAAA,4CAAA,CAAA,YAAA;;;S,4C,C,G,E,C;W,G,I,G,C,U,G,G;S,O,G,G;;A,C;S,qC,C,Q,E,W,E,C;I,E,I,Q,Y,W,G,K,C,G,C,S,E,iC;A,C;S,uC,C,M,E,K,E,C;Q,G,C,C,G,C,E,C,G,K,C,M,E,C,G,C;Q,G,C,U,G,K,C,C;Q,U,C,U,G,U,C,U,I,K;Q,U,C,Y,G,I;Q,E,G,K,K,U,E,U,C,Q,G,I;Q,M,C,c,C,M,E,U,C,G,E,U;I,C;A,C;S,kC,C,W,E,U,E,W,E,C;I,E,E,U,E,uC,C,W,C,S,E,U;I,E,E,W,E,uC,C,W,E,W;W,W;A,C;S,+B,C,Q,E,U,E,C;I,E,S,U,M,Q,K,U,K,I,E,K,C,G,C,S,E,kD;I,Q,C,S,G,M,C,M,C,U,I,U,C,S;Q,W;Y,K,E,Q;Y,Q,E,I;Y,Y,E,I;;;I,E,E,U,E,qC,C,Q,E,U;A,C;S,qC,C,C,E,C,E,C;I,qC,G,M,C,c,a,e,C,E,E,E,E,C;Q,E,C,S,G,E;e,E;I,C;W,qC,C,C,E,C;A,C;S,kC,C,O,E,C;I,G,C,yB,G,+C;oB,oB,G,C;Q,G,C,K,G,qC,C,O,G,M;Q,E,E,yB,E,C;Y,G,C,S,G,qC,O,W;Y,M,G,O,C,S,C,K,E,S,E,S;Q,C,M,M,G,K,C,K,O,S;e,gD,O,M;I,C;A,C;S,gD,C,I,E,I,E,C;I,E,E,I,K,6B,C,I,O,M,Y,I,M,Q,W,I;S,E,E,I,U,C,E,K,C,G,C,S,E,wD;W,4C,C,I;A,C;S,4C,C,I,E,C;I,E,E,I,U,C,E,K,C,G,C,c,E,yD;W,I;A,C;S,+C,G,C;I,E,S,O,M,S,M,O,C,S,S,K;I,E,E,O,C,S,C,I,S,K;I,E,S,K,M,Q,U,I;Q,C;Q,O,C,S,C,O,C,I,C,O,C,S,C,O,iB,C;Q,C;e,I;I,C,Q,C,E,C;e,K;I,C;A,C;S,qC,C,C,E,C;I,qC,G,M,C,c,G,M,C,c,Y,e,C,E,E,C;e,E,C,S,I,M,C,c,C,E;I,C;W,qC,C,C;A,C;AAIMsW,GAAAA,CAAAA,mC,GAAAA,EAAAA,AAAAA,SAAAA,AAAAA,EAAAA,UAAAA,gBAAAA,EAAAA,CAAAA;I,+B,C,a,E,gB;I,G,C,M,G,kC,C,a;aACJ,aAAA,CAAYjX,KAAZ,EAAmB,CAAnB;QAAmB,GAAA,CAAA,KAAA;QAAA,qCAAA,OAAA,aAAA;QACjB,KAAA,GAAA,MAAA,CAAA,IAAA,OAAMA,KAAN;QACA,KAAA,CAAKnL,KAAL;YACEqG,OAAO,EAAGtL,MAAM,CAACgG,MAAP,CAAcoK,KAAK,CAAClN,WAApB,EAAiC0B,IAAjC,UAAuCP,CAAD,EAAGQ,CAAH,EAAhDyG,CAAAA;uBAAyDjH,CAAC,CAACijB,UAAF,GAAeziB,CAAC,CAACyiB,UAA1B;YAAA,CAAtC;;QAEZ,EAAA,EAAItnB,MAAM,CAACC,IAAP,CAAYmQ,KAAK,CAAC/C,cAAN,CAAqBnN,MAAjC,EAAyCC,MAAzC,KAAoD,CAAxD,EACE,KAAA,CAAK8E,KAAL,CAAWqG,OAAX,CAAmB/K,OAAnB,UAA2Bf,CAAC,EAAI,CAAhC;YACEA,CAAC,CAAC0iB,QAAF,GAAa,IAAb;QACD,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","sources":["src/index.js","src/bundles/index.js","src/bundles/api.js","src/bundles/filters.js","src/bundles/views.js","src/bundles/docs.js","src/bundles/genomes.js","src/components/resultList.js","src/components/resultSummary.js","src/components/suggestions.js","src/components/geneSearchUI.js","src/components/results/GeneList.js","src/components/results/details/Expression.js","src/components/results/details/Homology.js","src/components/results/details/generic.js","src/components/results/details/Location.js","src/components/results/details/location/browser.js","src/components/results/details/location/dallianceBrowser.js","src/components/results/details/Pathways.js","src/components/results/details/Xrefs.js","src/components/results/TaxDist.js","src/components/results/selection.js","src/components/results/HelpDemo.js","src/components/TaxonomyModal.js"],"sourcesContent":["import bundles from './bundles';\nimport resultList from './components/resultList';\nimport resultSummary from './components/resultSummary';\nimport suggestions from './components/suggestions';\nimport {Status, Filters, Results, Views} from './components/geneSearchUI';\n\nexport { bundles, resultList, resultSummary, suggestions, Status, Filters, Results, Views };\n","import apiBundles from './api'\nimport filterBundle from './filters'\nimport viewsBundle from './views'\nimport docsBundle from './docs'\nimport genomesBundle from './genomes'\n\nexport default [...apiBundles, docsBundle, filterBundle, viewsBundle, genomesBundle];","import { createAsyncResourceBundle, createSelector } from 'redux-bundler'\nimport _ from 'lodash'\nimport binsClient from \"gramene-bins-client\";\nimport treesClient from \"gramene-trees-client\";\nimport {build} from \"gramene-taxonomy-with-genomes\";\n\nconst facets = [\n \"{!facet.limit='200' facet.mincount='1' key='taxon_id'}taxon_id\",\n \"{!facet.limit='100' facet.mincount='1' key='genetree'}gene_tree\",\n \"{!facet.limit='100' facet.mincount='1' key='pathways'}pathways__ancestors\",\n \"{!facet.limit='100' facet.mincount='1' key='domains'}domain_roots\",\n \"{!facet.limit='-1' facet.mincount='1' key='fixed_1000__bin'}fixed_1000__bin\"\n];\nconst genomesOfInterest = '(taxon_id:2769) OR (taxon_id:3055) OR (taxon_id:3218) OR (taxon_id:3702) OR (taxon_id:3847) OR (taxon_id:4555) OR (taxon_id:4558) OR (taxon_id:4577) OR (taxon_id:13333) OR (taxon_id:15368) OR (taxon_id:29760) OR (taxon_id:39947) OR (taxon_id:55577) OR (taxon_id:88036) OR (taxon_id:214687)';\n\nconst grameneSuggestions = createAsyncResourceBundle( {\n name: 'grameneSuggestions',\n actionBaseType: 'GRAMENE_SUGGESTIONS',\n persist: false,\n getPromise: ({store}) => {\n const t = store.selectSuggestionsQuery();\n const g = store.selectGrameneGenomes();\n return fetch(`${store.selectGrameneAPI()}/suggest?q={!boost b=relevance}name:${t}^3 id:${t}^5 synonym:${t}^2 text:${t}*^1`)\n .then(res => res.json())\n .then(suggestions => {\n if (Object.keys(g.active).length > 0) {\n suggestions.grouped.category.groups.forEach(group => {\n group.doclist.docs.forEach(sugg => {\n sugg.num_genes = 0;\n sugg.taxon_id.forEach((id,idx) => {\n if (g.active[id]) {\n sugg.num_genes += sugg.taxon_freq[idx]\n }\n })\n })\n })\n }\n return suggestions\n })\n }\n});\n\ngrameneSuggestions.reactGrameneSuggestions = createSelector(\n 'selectGrameneSuggestionsShouldUpdate',\n 'selectSuggestionsQuery',\n (shouldUpdate, queryString) => {\n if (shouldUpdate && queryString) {\n return { actionCreator: 'doFetchGrameneSuggestions' }\n }\n }\n);\n\ngrameneSuggestions.selectGrameneSuggestionsStatus = createSelector(\n 'selectGrameneSuggestionsShouldUpdate',\n 'selectGrameneSuggestionsIsLoading',\n 'selectGrameneSuggestionsRaw',\n 'selectSuggestionsQuery',\n (shouldUpdate, isLoading, suggestionsRaw, queryString) => {\n if (!queryString) return '';\n if (shouldUpdate) return 'update needed';\n if (isLoading) return 'loading';\n if (suggestionsRaw) return suggestionsRaw.data.grouped.category.matches + ' terms';\n return 'error';\n }\n);\n\ngrameneSuggestions.selectGrameneSuggestionsReady = createSelector(\n 'selectGrameneSuggestionsStatus',\n (status) => {\n const regex = RegExp('terms$');\n return regex.test(status);\n }\n);\n\ngrameneSuggestions.doFocusFirstGrameneSuggestion = arg => ({dispatch, getState}) => {\n console.log('inside doFocusFirstGrameneSuggestion');\n};\n\nconst grameneTaxonomy = createAsyncResourceBundle({\n name: 'grameneTaxonomy',\n actionBaseType: 'GRAMENE_TAXONOMY',\n persist: true,\n getPromise: ({store}) => {\n return fetch(`${store.selectGrameneAPI()}/taxonomy?subset=gramene&rows=-1`)\n .then(res => res.json())\n .then(taxNodes => {\n let taxonomy = _.keyBy(taxNodes, '_id');\n taxNodes.forEach(t => {\n t._id = +t._id; // ensure taxonomy id is a number\n if (t.hasOwnProperty(\"is_a\")) {\n t.is_a.forEach(p_id => {\n const p = taxonomy[p_id];\n if (!p.hasOwnProperty('children')) p.children = [];\n p.children.push(t._id)\n })\n }\n });\n return taxonomy\n })\n }\n});\ngrameneTaxonomy.reactGrameneTaxonomy = createSelector(\n 'selectGrameneTaxonomyShouldUpdate',\n (shouldUpdate) => {\n if (shouldUpdate) {\n return { actionCreator: 'doFetchGrameneTaxonomy' }\n }\n }\n);\nconst grameneMaps = createAsyncResourceBundle({\n name: 'grameneMaps',\n actionBaseType: 'GRAMENE_MAPS',\n persist: true,\n getPromise: ({store}) => {\n return fetch(`${store.selectGrameneAPI()}/maps?rows=-1`)\n .then(res => res.json())\n .then(maps => _.keyBy(maps, 'taxon_id'))\n }\n});\ngrameneMaps.reactGrameneMaps = createSelector(\n 'selectGrameneMapsShouldUpdate',\n (shouldUpdate) => {\n if (shouldUpdate) {\n return { actionCreator: 'doFetchGrameneMaps' }\n }\n }\n);\n\nconst grameneSearch = createAsyncResourceBundle({\n name: 'grameneSearch',\n actionBaseType: 'GRAMENE_SEARCH',\n persist: false,\n getPromise: ({store}) => {\n const offset = store.selectGrameneSearchOffset();\n const rows = store.selectGrameneSearchRows();\n const g = store.selectGrameneGenomes();\n const taxa = Object.keys(g.active);\n let fq='';\n if (taxa.length) {\n console.log('search add a fq for ',taxa);\n fq = `&fq=taxon_id:(${taxa.join(' OR ')})`;\n }\n return fetch(`${store.selectGrameneAPI()}/search?q=${store.selectGrameneFiltersQueryString()}&facet.field=${facets}&rows=${rows}&start=${offset}${fq}`)\n .then(res => res.json())\n .then(res => {\n res.response.docs.forEach(d => {\n d.can_show = {};\n d.capabilities.forEach(c => {\n d.can_show[c]=true;\n })\n });\n return res;\n })\n }\n});\ngrameneSearch.reactGrameneSearch = createSelector(\n 'selectGrameneSearchShouldUpdate',\n 'selectGrameneFiltersStatus',\n (shouldUpdate, status) => {\n if (shouldUpdate && status === 'search') {\n return { actionCreator: 'doFetchGrameneSearch' }\n }\n }\n);\n\nfunction formatFacetCountsForViz(a) {\n let res = {\n count: a.length/2,\n displayName: \"fixed_1000__bin\",\n data: {},\n sorted: []\n };\n let counts = [];\n for(let i=0;i<a.length;i+=2) {\n const fc = {\n id: +a[i],\n count: +a[i+1]\n };\n res.data[a[i]] = fc;\n counts.push(fc);\n }\n res.sorted = counts.sort((a,b) => a.id - b.id);\n return res;\n}\n\n// bundle to prepare data for the TaxDist component\nconst grameneTaxDist = {\n name: 'grameneTaxDist',\n getReducer: () => {\n const initialState = {};\n return (state = initialState, {type, payload}) => {\n return state;\n }\n },\n selectGrameneTaxDist: createSelector(\n 'selectGrameneSearch',\n 'selectGrameneTaxonomy',\n 'selectGrameneMaps',\n (grameneSearch,grameneTaxonomy,grameneMaps) => {\n if (grameneSearch && grameneTaxonomy && grameneMaps) {\n _.forIn(grameneMaps, (map, tid) => {\n grameneTaxonomy[tid].name = map.display_name;\n });\n const binnedResults = formatFacetCountsForViz(grameneSearch.facet_counts.facet_fields.fixed_1000__bin);\n let speciesTree = treesClient.taxonomy.tree(Object.values(grameneTaxonomy));\n let binMapper = binsClient.bins(grameneMaps);\n let taxDist = build(binMapper, speciesTree);\n taxDist.setBinType('fixed',1000);\n taxDist.setResults(binnedResults);\n return taxDist;\n }\n return null;\n }\n )\n};\n\n// this query will give the sorghum orthologs of AT1G01260\n// want to provide these on non-sorghum genes if available\n// http://data.gramene.org/search?q=homology__all_orthologs:AT1G01260&fq=taxon_id:4558&fl=id\nconst grameneOrthologs = {\n name: 'grameneOrthologs',\n getReducer: () => {\n const initialState = {};\n return (state = initialState, {type, payload}) => {\n let newState;\n switch (type) {\n case 'GRAMENE_ORTHOLOGS_REQUESTED':\n if (!state.hasOwnProperty(payload)) {\n newState = Object.assign({}, state);\n newState[payload] = [];\n return newState;\n }\n break;\n case 'GRAMENE_ORTHOLOGS_RECEIVED':\n return Object.assign({}, state, payload);\n }\n return state;\n }\n },\n doRequestOrthologs: geneId => ({dispatch, store}) => {\n const orthologs = store.selectGrameneOrthologs();\n if (!orthologs.hasOwnProperty(geneId)) {\n dispatch({type: 'GRAMENE_ORTHOLOGS_REQUESTED', payload: geneId});\n const API = store.selectGrameneAPI();\n const taxonId = store.selectTargetTaxonId();\n fetch(`${API}/search?q=homology__all_orthologs:${geneId}&fq=taxon_id:${taxonId}&fl=id`)\n .then(res => res.json())\n .then(res => {\n let newOrthologs = {};\n newOrthologs[geneId] = res.response.docs.map(d => d.id);\n dispatch({type: 'GRAMENE_ORTHOLOGS_RECEIVED', payload: newOrthologs})\n })\n }\n },\n selectGrameneOrthologs: state => state.grameneOrthologs\n};\n\n\n// function selectFacetIDs(store, field) {\n// const path = `grameneGenes.data.facet_counts.facet_fields.${field}`;\n// if (_.has(store,path)) {\n// const flat_facets = _.get(store,path);\n// let idList = [];\n// if (isNaN(+flat_facets[0])) {\n// for (let i = 0; i < flat_facets.length; i += 2) {\n// idList.push(flat_facets[i])\n// }\n// }\n// else {\n// for (let i = 0; i < flat_facets.length; i += 2) {\n// idList.push(+flat_facets[i])\n// }\n// if (idList.length === 1) idList.push(0);\n// }\n// return idList;\n// }\n// }\n//\n// grameneGenes.selectDomainFacets = store => selectFacetIDs(store, 'domains');\n// grameneGenes.selectPathwayFacets = store => selectFacetIDs(store, 'pathways');\n// grameneGenes.selectTaxonomyFacets = store => selectFacetIDs(store, 'taxon_id');\n//\n// const grameneDomains = createAsyncResourceBundle({\n// name: 'grameneDomains',\n// actionBaseType: 'GRAMENE_DOMAINS',\n// persist: false,\n// getPromise: ({store}) =>\n// fetch(`${store.selectGrameneAPI()}/domains?rows=-1&idList=${store.selectDomainFacets().join(',')}`)\n// .then(res => res.json())\n// .then(docs => {return {domains: docs, numFound: docs.length}})\n// });\n//\n// const gramenePathways = createAsyncResourceBundle({\n// name: 'gramenePathways',\n// actionBaseType: 'GRAMENE_PATHWAYS',\n// persist: false,\n// getPromise: ({store}) =>\n// fetch(`${store.selectGrameneAPI()}/pathways?rows=-1&idList=${store.selectPathwayFacets().join(',')}`)\n// .then(res => res.json())\n// .then(docs => {return {pathways: docs, numFound: docs.length}})\n// });\n//\n// const grameneTaxonomy = createAsyncResourceBundle({\n// name: 'grameneTaxonomy',\n// actionBaseType: 'GRAMENE_TAXONOMY',\n// persist: false,\n// getPromise: ({store}) =>\n// fetch(`${store.selectGrameneAPI()}/taxonomy?rows=-1&idList=${store.selectTaxonomyFacets().join(',')}`)\n// .then(res => res.json())\n// .then(docs => {return {taxonomy: docs, numFound: docs.length}})\n// });\n\n\nexport default [grameneSuggestions, grameneSearch, grameneMaps, grameneTaxonomy, grameneTaxDist, grameneOrthologs];\n","import {createSelector} from \"redux-bundler\";\nimport _ from 'lodash';\nconst MAX_IDLIST_LENGTH = 20;\n\nfunction findNodeWithLeftIdx(node, idx) {\n if (node.leftIdx === idx) {\n return node;\n }\n let result=null;\n if (node.leftIdx < idx && node.hasOwnProperty('children')) {\n node.children.forEach(child => {\n if (child.rightIdx > idx) {\n child.parentIdx = node.leftIdx;\n const res = findNodeWithLeftIdx(child, idx);\n if (res) result = res;\n }\n })\n }\n return result;\n}\n\nfunction markSubtree(node, source, invert) {\n node.marked = (node.leftIdx >= source.leftIdx && node.rightIdx <= source.rightIdx);\n if (invert) node.marked = !node.marked;\n if (node.hasOwnProperty('children')) {\n node.children.forEach(child => {\n markSubtree(child, source, invert);\n })\n }\n}\n\nfunction reindexTree(node, idx) {\n node.leftIdx = idx;\n idx++;\n if (node.hasOwnProperty('children')) {\n node.children.forEach(child => {\n idx = reindexTree(child, idx);\n });\n }\n node.rightIdx = idx;\n idx++;\n return idx;\n}\n\nconst grameneFilters = {\n name: 'grameneFilters',\n getReducer: () => {\n const initialState = {\n status: 'init', // others include 'search', 'waiting' and 'ready'\n operation: 'AND',\n negate: false,\n marked: false,\n leftIdx: 0,\n rightIdx: 1,\n children: [],\n showMarked: false,\n showMenu: false,\n moveCopyMode: '',\n searchOffset: 0,\n rows: 20\n };\n return (state = initialState, {type, payload}) => {\n let newState;\n switch (type) {\n case 'GRAMENE_FILTERS_CLEARED': {\n newState = Object.assign({}, initialState, {\n status: 'search',\n children: []\n });\n return newState;\n }\n case 'GRAMENE_FILTER_ADDED': {\n const idx = state.rightIdx;\n newState = Object.assign({}, state, {\n status: 'search',\n showMarked: true,\n rightIdx: idx + 2,\n searchOffset: 0\n });\n let child = _.pick(payload, ['fq_field', 'fq_value', 'name', 'category']);\n child.leftIdx = idx;\n child.rightIdx = idx + 1;\n child.negate = false;\n child.showMenu = false;\n newState.children.push(child);\n markSubtree(newState, child, false);\n return newState;\n }\n case 'GRAMENE_FILTER_TREE_ADDED': {\n newState = Object.assign({}, state, {\n status: 'search',\n showMarked: true,\n rightIdx: payload.rightIdx + 1,\n searchOffset: 0\n });\n newState.children.push(payload);\n markSubtree(newState, payload, false);\n return newState;\n }\n case 'GRAMENE_FILTER_SET_ADDED': {\n // create a filter with the payload.operation and children payload.filters\n let filter = {\n leftIdx: state.rightIdx,\n rightIdx: state.rightIdx + (payload.filters.length) * 2 + 1,\n operation: payload.operation,\n negate: false,\n showMenu: false,\n children: payload.filters\n };\n if (payload.warning) {\n filter.warning = payload.warning\n }\n let nextIdx = filter.leftIdx+1;\n payload.filters.forEach(f => {\n f.leftIdx = nextIdx++;\n f.rightIdx = nextIdx++;\n f.negate = false;\n f.showMenu = false;\n });\n newState = Object.assign({}, state, {\n status: 'search',\n showMarked: true,\n searchOffset: 0,\n rightIdx: filter.rightIdx + 1\n });\n newState.children.push(filter);\n markSubtree(newState, filter, false);\n return newState;\n }\n case 'GRAMENE_FILTER_NEGATED': {\n newState = Object.assign({}, state, {\n status: 'search',\n showMarked: true,\n searchOffset: 0\n });\n let node = findNodeWithLeftIdx(newState, payload.leftIdx);\n if (node) {\n node.negate = !node.negate;\n markSubtree(newState, node, false);\n return newState;\n }\n break;\n }\n case 'GRAMENE_FILTER_DELETED': {\n newState = Object.assign({}, state, {\n status: 'search',\n showMarked: true,\n searchOffset: 0\n });\n let node = findNodeWithLeftIdx(newState, payload.leftIdx);\n if (node) {\n let parent = findNodeWithLeftIdx(newState, node.parentIdx);\n parent.children = parent.children.filter(child => child.leftIdx !== node.leftIdx);\n reindexTree(newState, 0);\n markSubtree(newState, parent, false);\n return newState;\n }\n break;\n }\n case 'GRAMENE_FILTER_OPERATION_CHANGED': {\n if (payload.hasOwnProperty('operation')) {\n newState = Object.assign({}, state, {\n status: 'search',\n showMarked: true,\n searchOffset: 0\n });\n let node = findNodeWithLeftIdx(newState, payload.leftIdx);\n node.operation = node.operation === 'AND' ? 'OR' : 'AND';\n markSubtree(newState, node, false);\n return newState;\n }\n break;\n }\n case 'GRAMENE_FILTER_MOVED': {\n newState = Object.assign({}, state, {\n status: 'search',\n showMarked: true,\n moveCopyMode: '',\n searchOffset: 0\n });\n let source = findNodeWithLeftIdx(newState, payload.source.leftIdx);\n let target = findNodeWithLeftIdx(newState, payload.target.leftIdx);\n if (source && target) {\n source.showMenu = false;\n let parent = findNodeWithLeftIdx(newState, source.parentIdx);\n parent.children = parent.children.filter(child => child.leftIdx !== source.leftIdx);\n target.showMenu = false;\n if (!target.hasOwnProperty('children')) {\n let targetCopy = Object.assign({}, target);\n target.children = [targetCopy];\n target.operation = 'OR';\n target.negate = false;\n delete target.fq_field;\n delete target.fq_value;\n delete target.name;\n delete target.category;\n }\n target.children.push(source);\n reindexTree(newState, 0);\n markSubtree(newState, target, false);\n return newState;\n }\n break;\n }\n case 'GRAMENE_FILTER_COPIED': {\n newState = Object.assign({}, state, {\n status: 'search',\n showMarked: true,\n moveCopyMode: '',\n searchOffset: 0\n });\n let source = findNodeWithLeftIdx(newState, payload.source.leftIdx);\n let target = findNodeWithLeftIdx(newState, payload.target.leftIdx);\n if (source && target) {\n source.showMenu = false;\n if (!target.hasOwnProperty('children')) {\n let targetCopy = Object.assign({}, target);\n target.children = [targetCopy];\n target.operation = 'OR';\n target.negate = false;\n delete target.fq_field;\n delete target.fq_value;\n delete target.name;\n delete target.category;\n }\n let sourceCopy = Object.assign({}, source);\n target.children.push(sourceCopy);\n reindexTree(newState, 0);\n markSubtree(newState, target, false);\n return newState;\n }\n break;\n }\n case 'GRAMENE_FILTER_TARGETS_MARKED':\n newState = Object.assign({}, state, {\n showMarked: true,\n moveCopyMode: payload.mode,\n moveCopySource: payload.source\n });\n markSubtree(newState, payload.source, true);\n return newState;\n case 'GRAMENE_FILTER_TARGETS_UNMARKED':\n newState = Object.assign({}, state, {\n showMarked: false\n });\n return newState;\n case 'GRAMENE_FILTERS_REPLACED':\n payload.status = 'search';\n payload.searchOffset = 0;\n return payload;\n case 'GRAMENE_FILTERS_STATUS_CHANGED':\n if (!(state.status === 'ready' && payload === 'waiting')) {\n return Object.assign({}, state, {status: payload})\n }\n break;\n case 'GRAMENE_FILTERS_SET_SHOW_MARKED':\n return Object.assign({}, state, {showMarked: payload});\n case 'GRAMENE_FILTER_MENU_TOGGLED':\n payload.showMenu = !payload.showMenu;\n return Object.assign({}, state);\n case 'GRAMENE_SEARCH_PAGE_REQUESTED':\n return Object.assign({}, state, {status: 'search', searchOffset: payload * state.rows});\n case 'GRAMENE_SEARCH_FETCH_STARTED':\n return Object.assign({}, state, {status: 'loading'});\n case 'GRAMENE_SEARCH_FETCH_FINISHED':\n return Object.assign({}, state, {status: 'finished'});\n case 'GRAMENE_GENOMES_UPDATED':\n return Object.assign({}, state, {status: 'search'});\n case 'URL_UPDATED':\n if (state.status === 'ready') {\n return Object.assign({}, initialState, {children:[]})\n }\n break;\n case 'APP_IDLE':\n if (state.showMarked) {\n return Object.assign({}, state, {showMarked: false})\n }\n }\n return state;\n }\n },\n doNegateGrameneFilter: filter => ({dispatch, getState}) => {\n dispatch({\n type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_FILTER_NEGATED', payload: filter}\n ]\n })\n },\n doDeleteGrameneFilter: filter => ({dispatch}) => {\n dispatch({\n type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_TAXONOMY_CLEARED'},\n {type: 'GRAMENE_FILTER_DELETED', payload: filter}\n ]\n })\n },\n doChangeGrameneFilterOperation: filter => ({dispatch}) => {\n dispatch({\n type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_FILTER_OPERATION_CHANGED', payload: filter}\n ]\n })\n },\n doMoveOrCopyGrameneFilter: (target) => ({dispatch, getState}) => {\n const state = getState();\n if (state.grameneFilters.moveCopyMode) {\n const source = state.grameneFilters.moveCopySource;\n dispatch({\n type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: `GRAMENE_FILTER_${state.grameneFilters.moveCopyMode.toUpperCase()}D`, payload: {source, target}}\n ]\n })\n }\n },\n doCopyGrameneFilter: (source, target) => ({dispatch, getState}) => {\n dispatch({\n type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_FILTER_COPIED', payload: {source, target}}\n ]\n })\n },\n doMarkGrameneFilterTargets: (source, mode) => ({dispatch}) => {\n dispatch({type: 'GRAMENE_FILTER_TARGETS_MARKED', payload: {source:source, mode:mode}})\n },\n doUnmarkGrameneFilterTargets: () => ({dispatch}) => {\n dispatch({type: 'GRAMENE_FILTER_TARGETS_UNMARKED'})\n },\n doAcceptGrameneSuggestion: suggestion => ({dispatch, getState}) => {\n if (!suggestion.name) {\n suggestion.name = suggestion.display_name;\n }\n dispatch({\n type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_FILTER_ADDED', payload: suggestion}\n ]\n })\n },\n doAddGrameneRangeQuery: terms => ({dispatch}) => {\n dispatch({\n type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_FILTER_SET_ADDED', payload: {operation: 'AND', filters: terms}}\n ]\n })\n },\n doToggleGrameneFilterMenu: node => ({dispatch}) => {\n dispatch({type: 'GRAMENE_FILTER_MENU_TOGGLED', payload: node})\n },\n doRequestResultsPage: page => ({dispatch}) => {\n dispatch(\n {type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_SEARCH_PAGE_REQUESTED', payload: page}\n ]\n })\n },\n doReplaceGrameneFilters: filters => ({dispatch}) => {\n dispatch({\n type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_FILTERS_REPLACED', payload: filters}\n ]\n })\n },\n doClearGrameneFilters: () => ({dispatch}) => {\n dispatch({\n type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_FILTERS_CLEARED'}\n ]\n })\n },\n selectGrameneFilters: state => state.grameneFilters,\n selectGrameneFiltersStatus: state => state.grameneFilters.status,\n selectGrameneFiltersQueryString: state => {\n const hasSpaces = new RegExp(/^[^\\[\\(].*\\s/);\n const isQuery = new RegExp(/\\([a-zA-Z0-9_]+:[a-zA-Z0-9_]+\\s/);\n const idWithColon = new RegExp(/^[a-zA-Z0-9_]+:[a-zA-Z0-9_]+$/);\n function getQuery(node) {\n const negate = node.negate ? 'NOT ' : '';\n if (node.hasOwnProperty('children')) {\n // do some recursion\n return `${negate}(${node.children.map(c => getQuery(c)).sort().join(` ${node.operation} `)})`\n }\n else {\n // this node is a suggestion\n if (isQuery.test(node.fq_value))\n return `${negate}${node.fq_value.replace(/:/g,'\\\\:')}`;\n if (hasSpaces.test(node.fq_value))\n return `${negate}${node.fq_field}:\"${node.fq_value}\"`;\n else if (idWithColon.test(node.fq_value))\n return `${negate}${node.fq_field}:${node.fq_value.replace(/:/g,'\\\\:')}`;\n else\n return `${negate}${node.fq_field}:${node.fq_value}`\n }\n }\n if (state.grameneFilters.rightIdx === 1) {\n return '*:*';\n }\n return `*:* AND (${getQuery(state.grameneFilters)})`;\n },\n selectGrameneSearchOffset: state => state.grameneFilters.searchOffset,\n selectGrameneSearchRows: state => state.grameneFilters.rows\n};\n\nconst handleIdList = (queryObject) => {\n let actions = [{type: 'GRAMENE_SEARCH_CLEARED'}];\n let ids = _.uniq(queryObject.idList.split(','));\n let warning = null;\n if (ids.length > MAX_IDLIST_LENGTH) {\n ids = _.slice(ids, 0, MAX_IDLIST_LENGTH);\n warning = `The idList query parameter is limited to ${MAX_IDLIST_LENGTH} genes`\n }\n let filters = ids.map((id,idx) => {\n return {\n category: 'Gene',\n name: id,\n fq_field: 'id',\n fq_value: id\n }\n });\n if (filters.length === 1) {\n actions.push({type: 'GRAMENE_FILTER_ADDED', payload: filters[0]})\n }\n else {\n let action = {type: 'GRAMENE_FILTER_SET_ADDED', payload: {operation: 'OR', filters:filters}};\n if (warning) {\n action.payload.warning = warning\n }\n actions.push(action)\n }\n return { type: 'BATCH_ACTIONS', actions: actions };\n};\n\ngrameneFilters.reactGrameneFilters = createSelector(\n 'selectQueryObject',\n 'selectGrameneFilters',\n 'selectActiveGenomes',\n 'selectUrlObject',\n (queryObject, filters, genomes, myUrl) => {\n if (filters.status === 'init') {\n if (queryObject.filters) {\n const newFilters = JSON.parse(queryObject.filters);\n let actions = [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_FILTERS_REPLACED', payload: newFilters}\n ];\n if (queryObject.genomes) {\n let active={};\n queryObject.genomes.split(',').forEach(t => {\n active[t]=true\n });\n actions.push({type: 'GRAMENE_GENOMES_UPDATED', payload: active});\n }\n return { type: 'BATCH_ACTIONS', actions: actions };\n }\n if (queryObject.hasOwnProperty('suggestion')) {\n return {\n type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_FILTER_ADDED', payload: JSON.parse(queryObject.suggestion)}\n ]\n };\n }\n if (queryObject.hasOwnProperty('idList')) {\n return handleIdList(queryObject);\n }\n const url = new URL(myUrl.href);\n if (url.pathname === '/genes') {\n return {type: 'GRAMENE_FILTERS_CLEARED'}\n }\n }\n if (filters.status === 'finished') {\n const url = new URL(myUrl.href);\n url.search = `filters=${JSON.stringify(Object.assign({}, filters, {status: 'init'}))}&genomes=${genomes.join(',')}`;\n return {\n type: 'BATCH_ACTIONS', actions: [\n {type: 'URL_UPDATED', payload: {url: url.href, replace:false}},\n {type: 'GRAMENE_FILTERS_STATUS_CHANGED', payload: 'ready'}\n ]\n }\n }\n }\n);\n\nexport default grameneFilters;","const grameneViews = {\n name: 'grameneViews',\n getReducer: () => {\n const initialState = {\n options: [\n // {\n // id: 'help',\n // name: 'Help / Demo',\n // show: 'off'\n // },\n {\n id: 'taxonomy',\n name: 'Taxonomic distribution',\n show: 'on'\n },\n {\n id: 'list',\n name: 'Gene list',\n show: 'on'\n }\n // {\n // id: 'pathways',\n // name: 'Pathways',\n // show: 'disabled'\n // },\n // {\n // id: 'domains',\n // name: 'Domains',\n // show: 'disabled'\n // },\n // {\n // id: 'go',\n // name: 'GO terms',\n // show: 'disabled'\n // }\n ]\n };\n return (state = initialState, {type, payload}) => {\n let newState;\n switch (type) {\n case 'GRAMENE_VIEW_TOGGLED':\n newState = Object.assign({},state);\n newState.options[payload].show = newState.options[payload].show === 'on' ? 'off' : 'on';\n return newState;\n default:\n return state;\n }\n }\n },\n doToggleGrameneView: idx => ({dispatch, getState}) => {\n dispatch({type: 'GRAMENE_VIEW_TOGGLED', payload: idx})\n },\n selectGrameneViews: state => state.grameneViews,\n};\n\nexport default grameneViews;","const grameneDocs = {\n name: 'grameneDocs',\n getReducer: () => {\n const initialState = {\n genes: {},\n trees: {},\n domains: {},\n pathways: {}\n };\n return (state = initialState, {type, payload}) => {\n let newState;\n switch (type) {\n case 'GRAMENE_GENE_REQUESTED':\n if (!state.genes.hasOwnProperty(payload)) {\n newState = Object.assign({}, state);\n newState.genes[payload] = {};\n return newState;\n }\n break;\n case 'GRAMENE_GENE_RECEIVED':\n newState = Object.assign({}, state);\n newState.genes = Object.assign({}, state.genes, payload);\n return newState;\n case 'GRAMENE_TREE_REQUESTED':\n if (!state.trees.hasOwnProperty(payload)) {\n newState = Object.assign({}, state);\n newState.trees[payload] = {};\n return newState;\n }\n break;\n case 'GRAMENE_TREE_RECEIVED':\n newState = Object.assign({}, state);\n newState.trees = Object.assign({}, state.trees, payload);\n return newState;\n // case 'GRAMENE_PATHWAYS_REQUESTED':\n // newState = Object.assign({}, state);\n // payload.forEach(id => {\n // if (!state.pathways.hasOwnProperty(id)) {\n // newState.pathways[id] = {};\n // }\n // });\n // return newState;\n case 'GRAMENE_PATHWAYS_RECEIVED':\n newState = Object.assign({}, state);\n newState.pathways = Object.assign({}, state.pathways, payload);\n return newState;\n }\n return state;\n }\n },\n doRequestGrameneGene: id => ({dispatch, store}) => {\n const genes = store.selectGrameneGenes();\n if (!genes.hasOwnProperty(id)) {\n dispatch({type: 'GRAMENE_GENE_REQUESTED', payload: id});\n fetch(`${store.selectGrameneAPI()}/genes?idList=${id}`)\n .then(res => res.json())\n .then(res => {\n let genes = {};\n res.forEach(g => {\n genes[g._id] = g;\n });\n dispatch({type: 'GRAMENE_GENE_RECEIVED', payload: genes})\n })\n }\n },\n doRequestGrameneTree: id => ({dispatch, store}) => {\n const trees = store.selectGrameneTrees();\n const maps = store.selectGrameneMaps();\n if (!trees.hasOwnProperty(id)) {\n dispatch({type: 'GRAMENE_TREE_REQUESTED', payload: id});\n fetch(`${store.selectGrameneAPI()}/genetrees?idList=${id}`)\n .then(res => res.json())\n .then(res => {\n let trees = {};\n res.forEach(t => {\n function update_taxon_name(node) {\n if (maps.hasOwnProperty(node.taxon_id)) {\n node.taxon_name = maps[node.taxon_id].display_name\n }\n else if (node.taxon_id === 1100004558) {\n node.taxon_name = \"Sorghum bicolor\"\n }\n if (node.taxon_id === 45770001 && node.hasOwnProperty('children')) {\n node.taxon_name = \"Zea mays\"\n }\n if (node.taxon_id === 297600009 && node.hasOwnProperty('children')) {\n node.taxon_name = \"Vitis vinifera\"\n }\n if (node.hasOwnProperty('children')) {\n node.children.forEach(c => update_taxon_name(c))\n }\n }\n update_taxon_name(t);\n trees[t._id] = t;\n });\n dispatch({type: 'GRAMENE_TREE_RECEIVED', payload: trees})\n })\n }\n },\n doRequestGramenePathways: ids => ({dispatch, store}) => {\n const pathways = store.selectGramenePathways();\n let newIds = ids.filter(id => !pathways.hasOwnProperty(id));\n if (newIds) {\n dispatch({type: 'GRAMENE_PATHWAYS_REQUESTED', payload: newIds});\n fetch(`${store.selectGrameneAPI()}/pathways?idList=${newIds.join(',')}`)\n .then(res => res.json())\n .then(res => {\n let pathways = {};\n res.forEach(p => {\n pathways[p._id] = p;\n });\n dispatch({type: 'GRAMENE_PATHWAYS_RECEIVED', payload: pathways})\n })\n }\n },\n selectGrameneGenes: state => state.grameneDocs.genes,\n selectGrameneTrees: state => state.grameneDocs.trees,\n selectGramenePathways: state => state.grameneDocs.pathways\n};\n\nexport default grameneDocs;\n","import {createSelector} from \"redux-bundler\";\nconst grameneGenomes = {\n name: 'grameneGenomes',\n getReducer: () => {\n const initialState = {\n show: false,\n active: {}\n };\n return (state = initialState, {type, payload}) => {\n let newState;\n switch (type) {\n case 'GRAMENE_GENOMES_TOGGLED':\n newState = Object.assign({},state);\n newState.show = !newState.show;\n return newState;\n case 'GRAMENE_GENOMES_UPDATED':\n newState = Object.assign({}, state);\n newState.active = payload;\n return newState;\n default:\n return state;\n }\n }\n },\n doShowGrameneGenomes: () => ({dispatch, getState}) => {\n dispatch({type: 'GRAMENE_GENOMES_TOGGLED'})\n },\n doUpdateGrameneGenomes: genomes => ({dispatch, getState}) => {\n dispatch({type: 'BATCH_ACTIONS', actions: [\n {type: 'GRAMENE_SEARCH_CLEARED'},\n {type: 'GRAMENE_GENOMES_TOGGLED'},\n {type: 'GRAMENE_GENOMES_UPDATED', payload: genomes}]})\n },\n selectGrameneGenomes: state => state.grameneGenomes,\n selectActiveGenomes: state => {\n return Object.keys(state.grameneGenomes.active)\n },\n selectActiveGenomeCount: createSelector(\n 'selectGrameneMaps',\n 'selectGrameneGenomes',\n (maps,genomes) => {\n if (maps && genomes) {\n return Object.keys(genomes.active).length || Object.keys(maps).length;\n }\n return 0;\n }\n )\n};\n\nexport default grameneGenomes;","import {connect} from 'redux-bundler-react'\nimport React from 'react'\n\nconst Gene = ({gene}) => {\n return <div className=\"row\">{gene.id}</div>\n};\n\nconst Genes = (results, rows, doChangeQuantity) => {\n if (results && results.numFound > 0) {\n const moreButton = (results.numFound > rows)\n ? <button onClick={e => doChangeQuantity('Genes',20)}>more</button>\n : '';\n const fewerButton = (rows > 20)\n ? <button onClick={e => doChangeQuantity('Genes',-20)}>fewer</button>\n : '';\n const docsToShow = results.response.docs.slice(0,rows);\n return (\n <div id=\"Genes\" className=\"container mb40 anchor\">\n <div className=\"fancy-title mb40\">\n <h4>Genes</h4>\n </div>\n {docsToShow.map((doc,idx) => <Gene key={idx} gene={doc}/>)}\n {fewerButton}{moreButton}\n </div>\n );\n }\n};\n\nconst Pathway = ({pathway}) => {\n return <div className=\"row\">{pathway.name}</div>\n};\nconst Pathways = results => {\n if (results && results.numFound > 0) {\n return (\n <div id=\"Pathways\" className=\"container mb40 anchor\">\n <div className=\"fancy-title\">\n <h4>Pathways</h4>\n </div>\n {results.pathways.map((doc,idx) => (<Pathway key={idx} pathway={doc}/>))}\n </div>\n );\n }\n};\n\nconst Domain = ({domain}) => {\n return <div className=\"row\">{domain.id}</div>\n};\nconst Domains = results => {\n if (results && results.numFound > 0) {\n return (\n <div id=\"Domains\" className=\"container mb40 anchor\">\n <div className=\"fancy-title mb40\">\n <h4>Domains</h4>\n </div>\n {results.domains.map((doc,idx) => (<Domain key={idx} domain={doc}/>))}\n </div>\n );\n }\n};\n\nconst Taxon = ({taxon}) => {\n return <div className=\"row\">{taxon.id}</div>\n};\nconst Species = results => {\n if (results && results.numFound > 0) {\n return (\n <div id=\"Species\" className=\"container mb40 anchor\">\n <div className=\"fancy-title mb40\">\n <h4>Species</h4>\n </div>\n {results.taxonomy.map((doc,idx) => (<Taxon key={idx} taxon={doc}/>))}\n </div>\n );\n }\n};\n\nconst ResultList = ({grameneGenes, grameneDomains, gramenePathways, grameneTaxonomy, searchUI, searchUpdated, doChangeQuantity}) => {\n if (searchUI.Gramene) {\n return (\n <div id=\"gramene\" className=\"row\">\n <div className=\"fancy-title pt50\">\n <h3>Gramene search results</h3>\n </div>\n {searchUI.Genes && Genes(grameneGenes, searchUI.rows.Genes, doChangeQuantity)}\n {searchUI.Domains && Domains(grameneDomains)}\n {searchUI.Pathways && Pathways(gramenePathways)}\n {searchUI.Species && Species(grameneTaxonomy)}\n </div>\n )\n }\n else {\n return null;\n }\n};\n\nexport default connect(\n 'selectGrameneGenes',\n 'selectGrameneDomains',\n 'selectGramenePathways',\n 'selectGrameneTaxonomy',\n 'selectSearchUI',\n 'selectSearchUpdated',\n 'doChangeQuantity',\n ResultList\n);\n","import {connect} from 'redux-bundler-react'\nimport React from 'react'\n\nconst getStatus = (cat, results, isChecked, toggle) => {\n const tally = results ? results.numFound : <img src=\"/static/images/dna_spinner.svg\"/>;\n return (\n <li className='category-leaf'>\n <input type=\"checkbox\" checked={isChecked} onChange={e => toggle(cat)}/>\n <a data-scroll href={`#${cat}`} className=\"nav-link active\">{cat}<span style={{float:\"right\"}}>{tally}</span></a>\n </li>\n )\n};\n\nconst ResultSummary = ({grameneGenes, gramenePathways, grameneDomains, grameneTaxonomy, searchUI, searchUpdated, doToggleCategory}) => {\n const status = grameneGenes ?\n grameneGenes.numFound:\n<img src=\"/static/images/dna_spinner.svg\"/>;\n if (searchUI.Gramene) return (\n <li className=\"active category-expanded\">\n <a onClick={e => doToggleCategory('Gramene')}>\n Gramene Search<span style={{float:\"right\"}}>{status}</span>\n </a>\n <ul className=\"list-unstyled\">\n {getStatus('Genes', grameneGenes, searchUI.Genes, doToggleCategory)}\n {getStatus('Domains', grameneDomains, searchUI.Domains, doToggleCategory)}\n {getStatus('Pathways', gramenePathways, searchUI.Pathways, doToggleCategory)}\n {getStatus('Species', grameneTaxonomy, searchUI.Species, doToggleCategory)}\n</ul>\n </li>\n);\nelse return (\n <li className=\"active category-collapsed\">\n <a onClick={e => doToggleCategory('Gramene')}>\n Gramene Search<span\n style={{float:\"right\"}}>{status}</span>\n </a>\n </li>\n);\n};\n\nexport default connect(\n 'selectGrameneGenes',\n 'selectGramenePathways',\n 'selectGrameneDomains',\n 'selectGrameneTaxonomy',\n 'selectSearchUI',\n 'selectSearchUpdated',\n 'doToggleCategory',\n ResultSummary\n);\n","import {connect} from 'redux-bundler-react'\nimport React from 'react'\nimport { Button, Badge, Alert } from 'react-bootstrap'\nimport './styles.css'\n\nfunction showMatches(text, x) {\n let re = new RegExp(`(${x})`, 'ig');\n let match = text.split(re);\n console.log('showMatches',text, x, match);\n return <span>\n {match.map((str, idx) => {\n if (idx % 2 === 1) {\n return <span key={idx} style={{fontWeight:'bolder'}}>{str}</span>\n }\n return <span key={idx}>{str}</span>\n })}\n </span>\n}\n\nconst Suggestions = props => {\n let suggestions = props.grameneSuggestions;\n if (suggestions && suggestions.grouped) {\n if (suggestions.grouped.category.matches === 0) {\n let sugg1 = {\n fq_field: 'text',\n fq_value: props.suggestionsQuery,\n name: `Genes containing \"${props.suggestionsQuery}\"`,\n category: 'Gene',\n };\n let sugg2 = {\n fq_field: 'text',\n fq_value: `${props.suggestionsQuery}*`,\n name: `Genes matching \"${props.suggestionsQuery}*\"`,\n category: 'Gene',\n };\n return (\n <div style={{margin: '10px', maxWidth: '820px'}}>\n <Alert variant={'info'}><em>No suggestions found.</em> You may still attempt a full text search, though it is unlikely to find any genes for you.</Alert>\n <Button id={'word'}\n size={'sm'}\n variant={'outline-secondary'}\n onClick={() => {props.doAcceptSuggestion(sugg1); props.doAcceptGrameneSuggestion(sugg1)}}>\n {`All genes that contain the word \"${props.suggestionsQuery}\"`}\n </Button>\n <Button id={'word'}\n size={'sm'}\n variant={'outline-secondary'}\n onClick={() => {props.doAcceptSuggestion(sugg2); props.doAcceptGrameneSuggestion(sugg2)}}>\n {`All genes that contain a word that starts with \"${props.suggestionsQuery}\"`}\n </Button>\n </div>\n );\n }\n else {\n return (\n <div style={{margin: '10px'}}>\n {suggestions.grouped.category.groups.map((g,idx) => {\n return <div key={idx} id='gramene-suggestion'>\n <h4 className=\"mt10\">{g.groupValue}</h4>\n {g.doclist.docs.map((sugg,jdx) =>\n <Button id={`${idx}-${jdx}`}\n key={jdx}\n disabled={sugg.num_genes === 0}\n size='sm'\n variant=\"outline-secondary\"\n onClick={() => {props.doAcceptSuggestion(sugg); props.doAcceptGrameneSuggestion(sugg)}}>\n {showMatches(sugg.display_name,props.suggestionsQuery)}{' '}\n <Badge variant=\"secondary\">{sugg.num_genes}</Badge>\n </Button>\n )}\n </div>\n })}\n </div>\n );\n }\n }\n else {\n return <div></div>\n }\n}\n\nexport default connect(\n 'selectGrameneSuggestions',\n 'selectSuggestionsQuery',\n 'doAcceptSuggestion',\n 'doAcceptGrameneSuggestion',\n Suggestions\n);\n","import React from 'react'\nimport { connect } from 'redux-bundler-react'\nimport { Alert, OverlayTrigger, Popover, Modal } from 'react-bootstrap'\nimport { IoAlertCircle } from 'react-icons/io5'\nimport { BsGearFill,BsTrash } from 'react-icons/bs'\nimport GeneList from './results/GeneList'\nimport TaxDist from './results/TaxDist'\nimport HelpDemo from './results/HelpDemo'\nimport TaxonomyModal from './TaxonomyModal'\nimport './styles.css';\n\nconst inventory = {\n help: HelpDemo,\n list: GeneList,\n taxonomy: TaxDist\n};\n\nconst StatusCmp = props => {\n let content = props.grameneFiltersStatus;\n // if (props.grameneFiltersStatus === 'init') {\n // props.doClearGrameneFilters();\n // }\n if (props.grameneFiltersStatus === 'ready') {\n let tally = <span>Ready</span>;\n if (props.grameneSearch) {\n let genes = props.grameneSearch.response.numFound;\n let genomes = props.grameneSearch.facet_counts.facet_fields.taxon_id.length / 2;\n tally = <span><b>{genes}</b> genes in <b>{genomes}</b> genomes</span>;\n }\n const popover = (\n <Popover>\n <Popover.Title as=\"h3\">Genomes Filter</Popover.Title>\n <Popover.Content>Searching {props.activeGenomeCount} genomes</Popover.Content>\n </Popover>\n );\n\n content = <span>\n {tally}\n <OverlayTrigger placement=\"auto\" overlay={popover}>\n <span style={{float:'right', cursor:'pointer'}} onClick={props.doShowGrameneGenomes}><BsGearFill/></span>\n </OverlayTrigger>\n <TaxonomyModal/>\n </span>;\n }\n return <div style={{padding:'5px', backgroundColor:'dimgray', color:'cornsilk', fontSize:'small'}}>{content}</div>\n};\n\nconst Status = connect(\n 'selectGrameneSearch',\n 'selectGrameneFiltersStatus',\n 'selectActiveGenomeCount',\n 'doShowGrameneGenomes',\n 'doClearGrameneFilters',\n StatusCmp\n);\n\nconst handleClick = (e, moveCopyMode, showMarked, node, actions) => {\n if (!e) e = window.event;\n e.cancelBubble = true;\n if (e.stopPropagation) e.stopPropagation();\n\n if (showMarked && moveCopyMode) {\n if (node.marked) {\n actions.selectTarget(node);\n }\n else {\n actions.unmarkTargets()\n }\n }\n console.log(node, showMarked);\n};\n\nconst Filter = ({node,moveCopyMode,showMarked,actions}) => {\n let classes = 'gramene-filter gramene-filter';\n if (node.operation) {\n classes = `${classes}-${node.operation}`\n }\n if (node.negate) {\n classes = `${classes} gramene-filter-NOT`\n }\n if (showMarked && node.marked) {\n classes = `${classes} gramene-filter-marked`\n }\n let content = '';\n let menu = '';\n let children = [];\n\n if (node.showMenu) {\n let key=1;\n let menuItems = [];\n if (node.hasOwnProperty('operation')) {\n menuItems.push(<li key={key++} onClick={()=>actions.changeOperation(node)}>convert to <i>{node.operation === 'AND' ? 'OR' : 'AND'}</i></li>);\n }\n if (node.leftIdx > 0) {\n menuItems.push(<li key={key++} onClick={()=>actions.deleteNode(node)}>delete</li>);\n menuItems.push(<li key={key++} onClick={()=>actions.markTargets(node,'move')}>move{node.isSource && ' select destination'}</li>);\n menuItems.push(<li key={key++} onClick={()=>actions.markTargets(node,'copy')}>copy{node.isSource && ' select destination'}</li>)\n }\n menuItems.push(<li key={key++} onClick={()=>actions.negate(node)}>negate</li>);\n menu = <div className='gramene-filter-menu'><ul>{menuItems}</ul></div>;\n }\n let warning;\n if (node.warning) {\n const popover = (\n <Popover>\n <Popover.Title as=\"h3\">Warning</Popover.Title>\n <Popover.Content>{node.warning}</Popover.Content>\n </Popover>\n );\n warning = (\n <OverlayTrigger placement=\"auto\" overlay={popover}><span style={{float:'right', color:'red', cursor:'pointer'}}><IoAlertCircle/></span></OverlayTrigger>\n )\n }\n if (node.operation) {\n children = node.children.map((child,idx) => <Filter key={idx} moveCopyMode={moveCopyMode} node={child} showMarked={showMarked} actions={actions}/>);\n content = (\n <div>\n <span className='gramene-filter-operation'\n onClick={()=>actions.toggleMenu(node)}>{node.operation}</span>\n {warning}\n </div>\n );\n }\n else {\n content = <span className='gramene-filter-text'\n onClick={()=>actions.toggleMenu(node)}>{node.category} |&nbsp;{node.name}</span>;\n }\n return (\n <div key={node.leftIdx} className={classes} onClick={(e)=>handleClick(e,moveCopyMode, showMarked,node,actions)}>\n {content}{menu}{children}\n </div>\n )\n};\n\nconst FiltersCmp = props => {\n const actions = {\n negate: props.doNegateGrameneFilter,\n deleteNode: props.doDeleteGrameneFilter,\n changeOperation: props.doChangeGrameneFilterOperation,\n selectTarget: props.doMoveOrCopyGrameneFilter,\n markTargets: props.doMarkGrameneFilterTargets,\n unmarkTargets: props.doUnmarkGrameneFilterTargets,\n toggleMenu: props.doToggleGrameneFilterMenu\n };\n if (props.grameneFilters.rightIdx > 1) {\n return <div className='gramene-filter-container'>\n <b>Filters</b>\n <span style={{float:'right', cursor:'pointer'}} onClick={props.doClearGrameneFilters}><BsTrash/></span>\n <Filter node={props.grameneFilters}\n moveCopyMode={props.grameneFilters.moveCopyMode}\n showMarked={props.grameneFilters.showMarked}\n actions={actions}/>\n </div>\n }\n else {\n return <div className='gramene-filter-container'>\n <b>Filters</b>\n <div className='gramene-filter gramene-filter-AND'>No filters defined</div>\n </div>\n }\n};\n\nconst Filters = connect(\n 'selectGrameneFilters',\n 'doNegateGrameneFilter',\n 'doDeleteGrameneFilter',\n 'doChangeGrameneFilterOperation',\n 'doMoveOrCopyGrameneFilter',\n 'doMarkGrameneFilterTargets',\n 'doUnmarkGrameneFilterTargets',\n 'doToggleGrameneFilterMenu',\n 'doClearGrameneFilters',\n FiltersCmp\n);\n\nconst ResultsCmp = props => {\n let activeViews = props.grameneViews.options.filter((v,idx) => {\n v.idx = idx;\n return v.show === 'on'\n });\n // if (props.grameneFilters.rightIdx === 1 || activeViews.length === 0) {\n // return <HelpDemo/>\n // }\n return props.grameneFilters.rightIdx > 1 ? (\n <div style={{padding:'10px'}}>\n {activeViews.map(v => {\n let p = Object.assign({}, props);\n p.key = v.idx;\n return (\n <div key={v.idx}>\n {/*<Alert variant=\"primary\" onClose={() => props.doToggleGrameneView(v.idx)} dismissible>*/}\n {/* {v.name}*/}\n {/*</Alert>*/}\n {React.createElement(inventory[v.id], p)}\n </div>\n )\n })}\n </div>\n ) : null;\n};\n\nconst Results = connect(\n 'selectGrameneFilters',\n 'selectGrameneViews',\n 'doToggleGrameneView',\n ResultsCmp\n);\n\nconst ViewsCmp = props => (\n <div className={'gramene-view-container'}>\n <b>Views</b>\n <ul className={'gramene-view'}>\n {props.grameneViews.options.map((view,idx) => (\n <li key={idx} className={`gramene-view-${view.show}`}\n onClick={(e) => {\n if (view.show !== 'disabled') {\n props.doToggleGrameneView(idx)\n }\n }}\n >{view.name}</li>\n ))}\n </ul>\n {/*<div>*/}\n {/* &nbsp;Key:*/}\n {/* <ul className={'gramene-view'}>*/}\n {/* <li className='gramene-view-on'>On</li>*/}\n {/* <li className='gramene-view-off'>Off</li>*/}\n {/* <li className='gramene-view-disabled'>Disabled</li>*/}\n {/* </ul>*/}\n {/*</div>*/}\n &nbsp;\n </div>\n);\n\nconst Views = connect(\n 'selectGrameneViews',\n 'doToggleGrameneView',\n ViewsCmp\n);\n\nexport {Status, Filters, Results, Views};","import React from 'react'\nimport ReactGA from 'react-ga'\nimport { connect } from 'redux-bundler-react'\nimport './genes.css'\nimport Expression from './details/Expression'\nimport Homology from './details/Homology'\nimport Location from './details/Location'\nimport Pathways from \"./details/Pathways\"\nimport Xrefs from \"./details/Xrefs\"\nimport {GrFormPrevious, GrFormNextLink, GrFormNext, GrHpe} from 'react-icons/gr'\nimport { Badge } from 'react-bootstrap'\n\nlet external = <small title=\"This link opens a page from an external site\"> <i className=\"fa fa-external-link\"/></small>;\n\nlet inventory = {\n location: Location,\n expression: Expression,\n homology: Homology,\n pathways: Pathways,\n xrefs: Xrefs\n};\n\nfunction renderTairSummary(searchResult) {\n const summary = searchResult.summary;\n if(summary && searchResult.taxon_id === 3702) {\n return (\n <div className=\"gene-summary-tair\">\n {trimSummary(summary)}\n </div>\n )\n }\n}\n\nfunction trimSummary(summary) {\n if(summary.length > 160) {\n const start = summary.substr(0, 150);\n const rest = summary.substr(150);\n return <p>{start}<span className=\"ellipsis\">…</span><span className=\"rest\">{rest}</span></p>\n }\n else {\n return <p>{summary}</p>\n }\n}\n\nconst ClosestOrtholog = ({gene}) =>\n{\n let name, desc, species;\n\n if (gene.model_rep_id) {\n name = gene.model_rep_name || gene.model_rep_id;\n desc = gene.model_rep_description;\n species = gene.model_rep_species_name;\n }\n\n else if (gene.closest_rep_id) {\n name = gene.closest_rep_name || gene.closest_rep_id;\n desc = gene.closest_rep_description;\n species = gene.closest_rep_species_name;\n }\n\n return (\n <div className=\"closest-ortholog\">\n <h4>\n <span className=\"gene-id\">{name}</span>\n <small className=\"species-name\"> {species}</small>\n </h4>\n <p>{desc}</p>\n </div>\n );\n};\n\nfunction renderClosestOrtholog(gene) {\n\n if (shouldShowClosestOrtholog(gene)) {\n\n // we used to not add the closest ortholog to the DOM if the homology detail was visible.\n // however, that could cause the height of the result to change. Instead we set visibility:hidden\n // so that the renderer takes into account the height of the ortholog even if not shown.\n return (\n <ClosestOrtholog gene={gene}/>\n );\n }\n}\n\n// show closest ortholog prominently if we have data to show:-\n// a. either there's a closest ortholog (determined by traversing the gene tree until an id or description looks\n// curated) b. or there's a model ortholog (traverse tree to find an ortholog in arabidopsis)\nfunction shouldShowClosestOrtholog(searchResult) {\n return (\n searchResult.closest_rep_id || (\n searchResult.model_rep_id &&\n searchResult.model_rep_id !== searchResult.id\n )\n );\n}\n\nclass Gene extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n details: [\n {\n id: 'location',\n label: 'Location',\n available: false\n },\n {\n id: 'expression',\n label: 'Expression',\n available: false\n },\n {\n id: 'homology',\n label: 'Homology',\n available: false\n },\n {\n id: 'pathways',\n label: 'Pathways',\n available: false\n },\n // {\n // id: 'pubs',\n // label: 'Publications',\n // available: false\n // },\n {\n id: 'xrefs',\n label: 'Xrefs',\n available: false\n }\n ],\n expandedDetail: props.expandedDetail\n };\n let hasData = {};\n props.searchResult.capabilities.forEach(c => hasData[c]=true);\n this.state.details.forEach(d => d.available = hasData.hasOwnProperty(d.id));\n }\n getDetailStatus(d) {\n if (this.state.expandedDetail === d.id) return 'expanded';\n return d.available ? 'closed' : 'disabled';\n }\n setExpanded(d) {\n if (d.available) {\n if (this.state.expandedDetail === d.id) {\n this.setState({expandedDetail: null})\n }\n else {\n const geneId = this.props.searchResult.id;\n if (!(this.props.geneDocs && this.props.geneDocs.hasOwnProperty(geneId))) {\n this.props.requestGene(geneId)\n }\n this.setState({expandedDetail: d.id})\n }\n }\n }\n ensureGene(id) {\n if (!(this.props.geneDocs && this.props.geneDocs.hasOwnProperty(id))) {\n this.props.requestGene(id);\n return false;\n }\n return this.props.geneDocs[id].hasOwnProperty('taxon_id')\n }\n renderMetadata() {\n let gene = this.props.searchResult;\n if (gene.model_rep_taxon_id) {\n gene.model_rep_species_name = this.props.taxLut[gene.model_rep_taxon_id].name;\n }\n if (gene.closest_rep_taxon_id) {\n gene.closest_rep_species_name = this.props.taxLut[gene.closest_rep_taxon_id].name;\n }\n return renderTairSummary(gene) || renderClosestOrtholog(gene);\n }\n render() {\n const ensemblURL = this.props.ensemblURL;\n const searchResult = this.props.searchResult;\n const taxName = this.props.taxName;\n // let orthologs='';\n // if (this.props.orthologs && this.props.orthologs.hasOwnProperty(searchResult.id)) {\n // orthologs = this.props.orthologs[searchResult.id].join(', ');\n // }\n const numWordsInDescription = searchResult.description.split(' ').length;\n return (\n <div className=\"result-gene\">\n <div className=\"result-gene-summary\">\n <div className=\"result-gene-title-body\">\n <h3 className=\"gene-title\">\n <span className=\"gene-name\">{searchResult.name}</span>\n {searchResult.id !== searchResult.name && <small className=\"gene-id\">{' '}{searchResult.id}</small>}\n <ReactGA.OutboundLink\n eventLabel={searchResult.system_name}\n to={`${ensemblURL}/${searchResult.system_name}/Info/Index`}\n className=\"external-link\"\n >\n <small className=\"gene-species\">{taxName}</small>\n </ReactGA.OutboundLink>\n </h3>\n {searchResult.synonyms && <small className=\"gene-synonyms\">{searchResult.synonyms.join(', ')}</small>}\n {numWordsInDescription > 1 && <p className=\"gene-description\">{searchResult.description}</p>}\n </div>\n {this.renderMetadata()}\n </div>\n <div className=\"gene-detail-tabs\">\n {this.state.details.map((d,idx) => (\n <div key={idx}\n className={`col-md-1 text-center gene-detail-tab-${this.getDetailStatus(d)}`}\n onClick={()=>this.setExpanded(d)}\n >{d.label}</div>\n ))}\n </div>\n {this.state.expandedDetail && this.ensureGene(searchResult.id) && <div className=\"visible-detail\">{React.createElement(inventory[this.state.expandedDetail], this.props)}</div>}\n </div>\n )\n }\n}\n\nconst GeneList = props => {\n if (props.grameneSearch && props.grameneSearch.response && props.grameneTaxonomy) {\n let prev,page,next;\n const numFound = props.grameneSearch.response.numFound;\n if (numFound > props.grameneSearchRows) {\n const pageNum = props.grameneSearchOffset/props.grameneSearchRows;\n page = <span style={{padding:'10px'}}>page <b>{pageNum + 1}</b> of <b>{Math.ceil(numFound/props.grameneSearchRows)}</b></span>;\n prev = <GrHpe/>;\n if (pageNum > 0) {\n prev = <Badge onClick={()=>props.doRequestResultsPage(pageNum - 1)}><GrFormPrevious/></Badge>\n }\n next = <GrHpe/>;\n if (numFound > props.grameneSearchOffset + props.grameneSearchRows) {\n next = <Badge onClick={()=>props.doRequestResultsPage(pageNum + 1)}><GrFormNext/></Badge>\n }\n }\n return <div>\n <div>{prev}{page}{next}</div>\n {props.grameneSearch.response.docs.map((g,idx) => (\n <Gene key={idx}\n searchResult={g}\n ensemblURL={props.configuration.ensemblURL}\n ensemblRest={props.configuration.ensemblRest}\n taxName={props.grameneTaxonomy[g.taxon_id].name}\n geneDocs={props.grameneGenes}\n requestGene={props.doRequestGrameneGene}\n requestOrthologs={props.doRequestOrthologs}\n orthologs={props.grameneOrthologs}\n taxLut={props.grameneTaxonomy}\n expandedDetail={props.grameneSearch.response.numFound === 1 && g.can_show.homology ? 'homology' : null}\n />\n ))}\n {prev}{page}{next}\n </div>\n }\n return null;\n};\n\nexport default connect(\n 'selectConfiguration',\n 'selectGrameneSearch',\n 'selectGrameneTaxonomy',\n 'selectGrameneGenes',\n 'selectGrameneOrthologs',\n 'selectGrameneSearchOffset',\n 'selectGrameneSearchRows',\n 'doRequestGrameneGene',\n 'doRequestOrthologs',\n 'doRequestResultsPage',\n GeneList);\n","import React from 'react'\nimport {connect} from \"redux-bundler-react\";\n\nconst PREFIX = (global.location ? global.location.origin + global.location.pathname + '/' : '');\n\nconst Detail = props => {\n const gene = props.geneDocs[props.searchResult.id];\n const url = `/static/atlasWidget.html?${gene.taxon_id === 112509 ? gene.synonyms[0] : gene._id}`;\n const height = '500px';\n return (\n <iframe src={url} frameBorder=\"0\" width=\"100%\" height={height}>\n <p>browser doesn't support iframes</p>\n </iframe>\n );\n};\n\nexport default connect(Detail);\n\n","import React from 'react'\nimport _ from 'lodash';\nimport {connect} from \"redux-bundler-react\";\nimport TreeVis from \"gramene-genetree-vis\";\nimport treesClient from \"gramene-trees-client\";\nimport {Detail, Title, Description, Content, Explore, Links} from \"./generic\";\nimport {Spinner} from \"react-bootstrap\";\nimport '../../../../node_modules/gramene-genetree-vis/src/styles/msa.less';\nimport '../../../../node_modules/gramene-genetree-vis/src/styles/tree.less';\n\nfunction suggestionToFilters(suggestion) {\n return {\n status: 'init',\n rows: 20,\n operation: 'AND',\n negate: false,\n leftIdx: 0,\n rightIdx: 3,\n children: [\n {\n fq_field: suggestion.fq_field,\n fq_value: suggestion.fq_value,\n name: suggestion.name,\n category: suggestion.category,\n leftIdx: 1,\n rightIdx: 2,\n negate: false,\n marked: false\n }\n ]\n }\n}\n\nclass Homology extends React.Component {\n constructor(props) {\n super(props);\n if (!props.geneDocs.hasOwnProperty(props.searchResult.id)) {\n props.requestGene(props.searchResult.id)\n }\n this.taxonomy = treesClient.taxonomy.tree(Object.values(props.grameneTaxonomy))\n }\n renderTreeVis() {\n return (\n <div className=\"gene-genetree\">\n <TreeVis genetree={this.tree}\n initialGeneOfInterest={this.gene}\n genomesOfInterest={this.props.grameneGenomes.active}\n taxonomy={this.taxonomy}\n allowGeneSelection={true}\n pivotTree={true}\n enableCuration={false}\n enablePhyloview={true}\n numberOfNeighbors={10}\n ensemblUrl={this.props.configuration.ensemblURL}/>\n </div>\n )\n }\n filterAllHomologs() {\n this.props.doReplaceGrameneFilters(suggestionToFilters({\n category: 'Gene Tree',\n fq_field: 'gene_tree',\n fq_value: this.tree._id,\n name: `Homologs of ${this.gene.name}`\n }))\n }\n filterOrthologs() {\n this.props.doReplaceGrameneFilters(suggestionToFilters({\n category: 'Gene Tree',\n fq_field: 'homology__all_orthologs',\n fq_value: this.gene._id,\n name: `Orthologs of ${this.gene.name}`\n }))\n }\n filterParalogs() {\n this.props.doReplaceGrameneFilters(suggestionToFilters({\n category: 'Gene Tree',\n fq_field: 'homology__within_species_paralog',\n fq_value: this.gene._id,\n name: `Paralogs of ${this.gene.name}`\n }))\n }\n orthologList() {\n return this.orthoParaList('ortholog');\n }\n\n paralogList() {\n return this.orthoParaList('within_species_paralog');\n }\n\n orthoParaList(type) {\n var homology, thisGeneId;\n homology = _.get(this.gene, 'homology.homologous_genes');\n thisGeneId = this.gene._id;\n\n if (homology) {\n var homologs = _(homology)\n .pickBy(function filterCategories(thing, name) {\n return name.indexOf(type) === 0;\n })\n .values()\n .flatten()\n .value();\n\n if (!_.isEmpty(homologs)) {\n homologs.push(thisGeneId);\n return homologs; // only return something if we have something. We're testing for truthiness later.\n }\n }\n }\n explorations() {\n let x = [{\n name: 'Homologs',\n category: 'Gene Tree',\n count: this.tree.geneCount,\n handleClick: this.filterAllHomologs.bind(this)\n }];\n if (this.orthologs) {\n x.push({\n name: 'Orthologs',\n category: 'Gene Tree',\n count: this.orthologs.length,\n handleClick: this.filterOrthologs.bind(this)\n });\n }\n if (this.paralogs) {\n x.push({\n name: 'Paralogs',\n category: 'Gene Tree',\n count: this.paralogs.length,\n handleClick: this.filterParalogs.bind(this)\n });\n }\n return x;\n }\n links() {\n let links = [\n {\n name: 'Ensembl Gene Tree view',\n url: `${this.props.configuration.ensemblURL}/${this.gene.system_name}/Gene/Compara_Tree?g=${this.gene._id}`\n }\n ];\n if (this.props.curation && this.props.curation.taxa.hasOwnProperty(this.gene.taxon_id)) {\n links.push({\n name: 'Curate',\n url: this.props.curation.url + this.gene._id\n })\n }\n return links;\n }\n render() {\n if (!this.props.geneDocs.hasOwnProperty(this.props.searchResult.id)) {\n return <Spinner/>\n }\n this.gene = this.props.geneDocs[this.props.searchResult.id];\n const treeId = this.gene.homology.gene_tree.id;\n if (! this.props.grameneTrees.hasOwnProperty(treeId)) {\n this.props.doRequestGrameneTree(treeId);\n }\n else {\n const tree = this.props.grameneTrees[treeId];\n if (tree.hasOwnProperty('taxon_id')) {\n this.tree = treesClient.genetree.tree([this.props.grameneTrees[treeId]]);\n this.orthologs = this.orthologList();\n this.paralogs = this.paralogList();\n }\n }\n return (\n <Detail>\n <Title key=\"title\">Compara Gene Tree</Title>\n <Description key=\"description\">\n This phylogram shows the relationships between this gene and others similar to it, as determined by Ensembl Compara.\n </Description>\n {this.tree && <Content key=\"content\">{this.renderTreeVis()}</Content>}\n {this.tree && <Explore key=\"explore\" explorations={this.explorations()}/>}\n <Links key=\"links\" links={this.links()}/>\n </Detail>\n )\n }\n}\n\nexport default connect(\n 'selectGrameneTaxonomy',\n 'selectGrameneTrees',\n 'selectGrameneGenomes',\n 'selectConfiguration',\n 'selectCuration',\n 'doRequestGrameneTree',\n 'doAcceptGrameneSuggestion',\n 'doReplaceGrameneFilters',\n Homology\n);\n\n","import React from 'react';\nimport keyBy from 'lodash/keyBy';\nimport _ from \"lodash\";\nimport ReactGA from \"react-ga\";\nimport { BiLinkExternal } from \"react-icons/bi\";\nimport { Button, Badge } from \"react-bootstrap\";\n\nexport const Detail = props => {\n let subComponents = keyBy(props.children, 'key');\n return (\n <div className=\"detail\">\n <div className=\"intro\">\n {subComponents.title}\n {subComponents.description}\n </div>\n <div className=\"content-wrapper\">\n {subComponents.content}\n </div>\n <div className=\"actions\">\n <div className=\"action-wrapper\" xs={12} sm={5}>\n {subComponents.explore}\n </div>\n <div className=\"action-wrapper\" xs={12} sm={7}>\n {subComponents.links}\n </div>\n </div>\n </div>\n )\n};\n\nexport const Title = props => <h4>{props.children}</h4>;\nexport const Description = props => <p className=\"description\">{props.children}</p>;\nexport const Content = props => <div className=\"content\">{props.children}</div>;\n\nconst QueryTerm = props => {\n let category, name, badge;\n name = props.name;\n if (props.category) {\n category = props.category + ' | ';\n }\n if (_.isNumber(props.count)) {\n badge = <Badge style={{marginLeft: \"0.5rem\"}} variant='dark'>{props.count}</Badge>\n }\n return (\n <Button variant='outline-dark' onClick={props.handleClick}>\n {category}{name}{badge}\n </Button>\n )\n};\n\nfunction renderExplorations(explorations) {\n return explorations.map(\n (exploration, idx) =>\n <QueryTerm key={idx} {...exploration} />\n );\n}\nexport const Explore = props => (\n <div className=\"explore\">\n <h5>Search Filters</h5>\n <div>\n {renderExplorations(props.explorations)}\n </div>\n </div>\n);\n\nfunction renderLinks(links) {\n let external = <small title=\"This link opens a page from an external site\"> <BiLinkExternal/></small>;\n return links.map((link, idx) =>\n <li key={idx}>\n <ReactGA.OutboundLink\n eventLabel={link.name}\n to={link.url}\n target=\"_blank\"\n className=\"external-link\"\n >\n {link.name}{external}\n </ReactGA.OutboundLink>\n </li>\n )\n}\n\nexport const Links = props => (\n <div className=\"links\">\n <h5>Links to other resources</h5>\n <ul>\n {renderLinks(props.links)}\n </ul>\n </div>\n);\n","import React from 'react'\nimport getProp from 'lodash/get';\nimport isEqual from 'lodash/isEqual';\nimport {Button} from \"react-bootstrap\";\nimport Browser from \"./location/browser\";\nimport {connect} from \"redux-bundler-react\";\nimport {Detail, Title, Description, Content, Explore, Links} from \"./generic\";\nimport '../../../../node_modules/gramene-genetree-vis/src/styles/msa.less';\nimport '../../../../node_modules/gramene-genetree-vis/src/styles/tree.less';\n\nclass Location extends React.Component {\n constructor(props) {\n super(props);\n this.gene = this.props.geneDocs[this.props.searchResult.id];\n this.initRegion();\n this.state = {\n visibleRange: this.initVisibleRange()\n };\n }\n\n initVisibleRange() {\n var location, span, padding, result;\n location = this.gene.location;\n if(!location) {\n throw new Error(`Could not find the location of the gene in props.`);\n }\n\n span = location.end - location.start + 1;\n padding = Math.floor(.1 * span);\n\n result = {\n chr: location.region,\n start: location.start - padding,\n end: location.end + padding\n };\n\n result.displayName = `${result.chr}:${result.start}-${result.end}`;\n\n return result;\n }\n\n initRegion() {\n var region, isChromosome, regionType, regionName;\n region = this.gene.location.region;\n if (region) {\n isChromosome = /^\\d+$/.test(region);\n if (isChromosome) {\n regionType = 'chromosome';\n regionName = 'Chromosome ' + region;\n }\n else {\n regionType = 'scaffold';\n regionName = region;\n }\n this.region = {\n isChromsome: isChromosome,\n name: regionName,\n type: regionType\n };\n }\n }\n\n\n handleViewChange(chr, start, end) {\n var visibleRange = {\n chr: chr,\n start: start,\n end: end,\n displayName: `${chr}:${start}-${end}`\n };\n\n if(!isEqual(visibleRange, this.state.visibleRange)) {\n this.setState({\n visibleRange: visibleRange\n });\n }\n }\n\n updateQuery(restrictToVisibleRange) {\n var location, geneName, visibleRange, filter, filterDisplayName, fq;\n location = this.gene.location;\n geneName = this.gene.name;\n // category: 'Gene Tree',\n // fq_field: 'gene_tree',\n // fq_value: this.tree._id,\n // name: `Homologs of ${this.gene.name}`\n\n let terms = [\n {\n category: \"Map\",\n name: location.map,\n fq_field: 'map',\n fq_value: location.map\n },\n {\n category: \"Region\",\n name: location.region,\n fq_field: 'region',\n fq_value: location.region\n }\n ];\n fq = `map:${location.map} AND region:${location.region}`;\n\n if (restrictToVisibleRange) {\n visibleRange = this.state.visibleRange;\n\n terms.push({\n category: \"Interval\",\n name: `${visibleRange.start}-${visibleRange.end}`,\n fq_field: 'start',\n fq_value: `[${visibleRange.start} TO ${visibleRange.end}]`\n });\n fq += ` AND (start:[${visibleRange.start} TO ${visibleRange.end}]`\n + ` OR end:[${visibleRange.start} TO ${visibleRange.end}])`;\n\n filterDisplayName = visibleRange.displayName;\n } else {\n filterDisplayName = \"Shares \" + this.region.type + \" with \" + geneName;\n }\n\n console.log(\"User asked to filter by location\");\n filter = {\n category: 'Location',\n id: fq,\n fq: fq,\n display_name: filterDisplayName\n };\n\n // QueryActions.removeAllFilters();\n // QueryActions.setFilter(filter);\n this.props.doAddGrameneRangeQuery(terms);\n if (this.props.closeModal) this.props.closeModal();\n }\n\n explorations() {\n var visible, result;\n visible = this.state.visibleRange;\n result = [\n {\n name: `All on ${this.region.name}`,\n handleClick: ()=>this.updateQuery(false)\n }\n ];\n if (visible) {\n result.push({\n name: `All within ${getProp(visible, 'displayName')}`,\n handleClick: ()=>this.updateQuery(true)\n });\n }\n return result;\n }\n\n links() {\n function jgiify(id) {\n return id.replace('SORBI_3','Sobic.').replace(/\\.v[0-9]\\.[0-9]$/,'');\n }\n var gene = this.gene;\n let links = [\n {name: 'Ensembl Browser', url: `${this.props.ensemblURL}/${gene.system_name}/Gene/Summary?g=${gene._id}`},\n {name: 'PhytoMine', url: `https://phytozome.jgi.doe.gov/phytomine/keywordSearchResults.do?searchTerm=${jgiify(gene._id)}&searchSubmit=Search`},\n ];\n if (gene.taxon_id === 3702)\n links.push({name: 'Thalemine', url: `https://bar.utoronto.ca/thalemine/keywordSearchResults.do?searchTerm=${gene._id}&searchSubmit=search`});\n if (gene.taxon_id === 4577)\n links.push({name: 'MaizeGDB', url: `http://www.maizegdb.org/gene_center/gene/${gene._id}`});\n return links;\n }\n\n render() {\n return (\n <Detail>\n {/*<Title key=\"title\">Genome location: {this.renderGenePosition()}</Title>*/}\n <Description key=\"description\">Currently viewing: {this.renderLocation()}&nbsp;{this.renderResetButton()}</Description>\n <Content key=\"content\">\n {this.renderBrowser()}\n </Content>\n <Explore key=\"explore\" explorations={this.explorations()}/>\n <Links key=\"links\" links={this.links()}/>\n </Detail>\n );\n }\n\n\n renderBrowser() {\n return (\n <Browser gene={this.gene} {...this.props} {...this.state} onViewChange={ this.handleViewChange.bind(this) }/>\n );\n }\n\n renderGenePosition() {\n var location = this.gene.location;\n return (\n <span className=\"location\">\n <span className=\"region\">{this.region.name}</span>:<span className=\"start\">{location.start}</span>-<span\n className=\"end\">{location.end}</span>\n </span>\n );\n }\n\n renderLocation() {\n var location = this.state.visibleRange;\n return (\n <span className=\"location\">\n <span className=\"region\">{location.chr}</span>:<span className=\"start\">{location.start}</span>-<span\n className=\"end\">{location.end}</span>\n </span>\n );\n }\n\n resetVisibleRange() {\n const {chr, start, end} = this.initVisibleRange();\n this.handleViewChange(chr, start, end);\n }\n\n renderResetButton() {\n // let active=isEqual(this.props.visibleRange, this.state.visibleRange);\n return (\n <Button\n size=\"sm\"\n variant=\"outline-dark\"\n onClick={() => this.resetVisibleRange()}>\n Reset\n </Button>\n )\n }\n}\n\nexport default connect('doAddGrameneRangeQuery',Location);\n\n","import React from \"react\";\nimport DallianceBrowser from \"./dallianceBrowser.js\";\n\nexport default class Browser extends React.Component {\n constructor(props) {\n super(props);\n }\n\n render() {\n return (\n <div className=\"location-browser\">\n <DallianceBrowser {...this.props} expanded={!!this.props.closeModal} />\n </div>\n )\n }\n\n}\n\n// Browser.propTypes = {\n// gene: React.PropTypes.object.isRequired,\n// expanded: React.PropTypes.bool,\n// visibleRange: React.PropTypes.object.isRequired,\n// onViewChange: React.PropTypes.func.isRequired\n// };","import React from \"react\";\nimport isEqual from \"lodash/isEqual\";\n// var ensemblREST = require('../../../../../package.json').gramene.ensemblREST;\n//const ensemblREST = 'http://data.gramene.org/ensembl63';\n// const ensemblREST = 'https://data.sorghumbase.org/ensembl2';\n// const ensemblREST = 'https://data.gramene.org/vitis-ensembl1';\n// const ensemblREST = 'https://data.gramene.org/pansite-ensembl';\n\n// calculate this once.\nconst PREFIX = '/static/gramene-dalliance/';\n\nexport default class DallianceBrowser extends React.Component {\n\n constructor(props) {\n super(props);\n this.initialVisibleRange = props.visibleRange;\n }\n\n shouldComponentUpdate(newProps) {\n // should we reset the view to initial state?\n if(isEqual(newProps.visibleRange, this.initialVisibleRange)) {\n this.browser.setLocation(newProps.visibleRange.chr, newProps.visibleRange.start, newProps.visibleRange.end);\n }\n\n return false;\n }\n\n biodallianceElementId() {\n return this.props.gene._id + 'Browser';\n }\n\n browser() {\n var g, view, start, end, browser;\n g = this.props.gene;\n view = this.props.visibleRange;\n start = view.start;\n end = view.end;\n\n this.browser = browser = new Browser(\n {\n pageName: this.biodallianceElementId(),\n chr: g.location.region,\n viewStart: start,\n viewEnd: end,\n cookieKey: g._id + 'BrowserCookie',\n prefix: PREFIX,\n\n coordSystem: {\n speciesName: g.system_name,\n taxon: g.taxon_id,\n auth: 'Gramene',\n version: '3',\n ucscName: 'IRGSP-1.0'\n },\n\n sources: [\n {\n name: 'DNA',\n ensemblURI: this.props.ensemblRest,\n species: g.system_name,\n tier_type: 'sequence'\n },\n {\n name: 'Genes',\n uri: this.props.ensemblRest,\n tier_type: 'ensembl',\n species: g.system_name,\n type: ['gene', 'transcript', 'exon', 'cds']\n }\n ],\n\n // hubs: ['/Track_Hubs/DRP000315/hub.txt'],\n disablePoweredBy: true,\n setDocumentTitle: false,\n noDefaultLabels: true,//!this.props.expanded,\n noPersist: true,\n noPersistView: true,\n maxWorkers: 2,\n noTitle: true,\n noLocationField: false,\n noLeapButtons: true,//!this.props.expanded,\n noZoomSlider: false, //!this.props.expanded,\n noTrackAdder: true,//!this.props.expanded,\n noTrackEditor: true,//!this.props.expanded,\n noExport: true,//!this.props.expanded,\n noOptions: true,//!this.props.expanded,\n noHelp: true,\n maxViewWidth: 1000000\n }\n );\n \n browser.addViewListener(this.props.onViewChange);\n }\n\n cancel() {\n if (typeof this.timeoutID == \"number\") {\n window.clearTimeout(this.timeoutID);\n delete this.timeoutID;\n }\n }\n\n componentDidMount() {\n // this.browser();\n this.cancel();\n var self = this;\n this.timeoutID = window.setTimeout(function () {self.browser();}, 0);\n }\n\n componentWillUnmount() {\n this.cancel();\n }\n\n render() {\n return (\n <div id={this.biodallianceElementId()}/>\n );\n }\n}\n\n// DallianceBrowser.propTypes = {\n// gene: React.PropTypes.object.isRequired,\n// visibleRange: React.PropTypes.object.isRequired,\n// expanded: React.PropTypes.bool,\n// onViewChange: React.PropTypes.func.isRequired\n// };","import React from 'react'\nimport {connect} from \"redux-bundler-react\";\nimport FlatToNested from 'flat-to-nested';\nimport {Explore, Links} from \"./generic\";\nimport treesClient from \"gramene-trees-client\";\nimport {TreeMenu} from \"react-tree-menu\";\nimport {Spinner} from \"react-bootstrap\";\nimport _ from 'lodash'\nimport \"./tree-view.css\"\n\nvar reactomeURL = \"https://plantreactome.gramene.org\";\n\nclass Pathways extends React.Component {\n constructor(props) {\n super(props);\n this.taxonomy = treesClient.taxonomy.tree(Object.values(props.grameneTaxonomy))\n this.gene = props.geneDocs[props.searchResult.id];\n this.holderId = 'displayHolder' + this.gene._id;\n this.state = {};\n }\n\n initDiagram() {\n this.diagram = Reactome.Diagram.create({\n proxyPrefix: reactomeURL, //'//plantreactome.gramene.org', //'//plantreactomedev.oicr.on.ca', ////cord3084-pc7.science.oregonstate.edu', // reactomedev.oicr.on.ca\n placeHolder: this.holderId,\n width: this.divWrapper.clientWidth - 350 - 1,\n height: 500\n });\n }\n\n stableId(dbId) {\n let prefix = this.taxonomy.indices.id[this.gene.taxon_id].model.reactomePrefix || 'OSA';\n return `R-${prefix}-${dbId}`;\n }\n\n loadDiagram(pathwayId, reactionId) {\n if (!this.diagram) this.initDiagram();\n this.diagram.loadDiagram(pathwayId);\n\n this.diagram.onDiagramLoaded(function (loaded) {\n this.loadedDiagram = loaded;\n if (reactionId) {\n this.diagram.selectItem(reactionId);\n }\n // var xref = _.find(this.props.gene.xrefs,{db : 'Gramene_Plant_Reactome'}).ids[0];\n this.diagram.flagItems(this.gene._id);\n }.bind(this));\n }\n\n componentDidMount() {\n if (Reactome && Reactome.Diagram) {\n // this.initDiagram();\n }\n else {\n window.addEventListener('launchDiagram', function (e) {\n // this.initDiagram()\n }.bind(this));\n }\n }\n\n componentDidUpdate(prevProps, prevState) {\n if (this.state.hierarchy && ! this.state.selectedNode) {\n let node = this.state.hierarchy[0];\n let path = [0];\n let parent = node;\n while (node.children) {\n path.push(0);\n parent = node;\n node = node.children[0];\n }\n console.log(parent,node,path);\n this.loadNodes(path);\n }\n if (!this.state.hierarchy && this.pathwayIds) {\n const haveDocs = this.pathwayIds.filter(id => this.props.gramenePathways.hasOwnProperty(id));\n if (haveDocs.length === this.pathwayIds.length) {\n const docs = this.pathwayIds.map(id => this.props.gramenePathways[id]);\n this.getHierarchy(this.makeTaxonSpecific(docs,this.gene.taxon_id));\n }\n }\n }\n\n componentWillMount() {\n var pathways, reactionId, ancestorIds;\n pathways = this.gene.annotations.pathways;\n if(!pathways) {\n throw new Error(\"No pathway annotation present for \" + this.gene._id);\n }\n\n this.pathwayIds = _.clone(pathways.ancestors);\n pathways.entries.forEach(function(reaction) {\n let [r,speciesCode,id] = reaction.id.split('-');\n\n this.pathwayIds.push(+id);\n }.bind(this));\n\n this.props.doRequestGramenePathways(this.pathwayIds);\n\n // DocActions.needDocs('pathways', this.pathwayIds, (docs) => { return this.makeTaxonSpecific(docs,this.props.gene.taxon_id)}, this.getHierarchy);\n }\n\n makeTaxonSpecific(docs,taxon_id) {\n let lineageField = 'lineage_'+taxon_id;\n let tsDocs = docs.map(function(doc) {\n let tsDoc = _.pick(doc,['_id','name','type']);\n tsDoc.lineage = doc[lineageField];\n return tsDoc;\n });\n console.log(tsDocs);\n return tsDocs;\n }\n\n componentWillUnmount() {\n // DocActions.noLongerNeedDocs('pathways', this.pathwayIds);\n if (this.diagram) this.diagram.detach();\n }\n\n getHierarchy(docs) {\n let pathways = _.keyBy(docs,'_id');\n let nodes = [];\n this.pathwayIds.forEach(function (pwyId) {\n if (pathways[pwyId]) {\n let pwy = pathways[pwyId];\n pwy.lineage.forEach(function(line) {\n let parentOffset = line.length - 2;\n nodes.push({\n id: pwyId,\n label: pwy.name,\n type: pwy.type,\n checkbox: false,\n selected: false,\n parent: parentOffset >=0 ? line[parentOffset] : undefined\n });\n });\n }\n });\n\n let nested = new FlatToNested().convert(nodes);\n\n this.setState({hierarchy: [nested], selectedNode: undefined});\n }\n\n loadNodes(nodes) {\n let hierarchy = this.state.hierarchy;\n let selectedNode = this.state.selectedNode;\n let offset = nodes.shift();\n let nodeRef = hierarchy[offset];\n let lineage = [nodeRef];\n nodes.forEach(function(n) {\n nodeRef = nodeRef.children[n];\n lineage.unshift(nodeRef);\n });\n if (lineage[0].id !== 2894885) {\n let pathway = this.stableId(lineage[0].id);\n let reaction = undefined;\n if (lineage[0].type === \"Reaction\") {\n reaction = pathway;\n pathway = this.stableId(lineage[1].id);\n }\n if (lineage[0].selected) {\n selectedNode = undefined;\n lineage[0].selected = false;\n if (this.loadedDiagram === pathway) {\n this.diagram.resetSelection();\n }\n else {\n if (this.diagram) this.diagram.resetSelection();\n this.loadDiagram(pathway);\n }\n }\n else {\n if (selectedNode) {\n selectedNode.selected = false;\n }\n selectedNode = lineage[0];\n lineage[0].selected = true;\n if (this.loadedDiagram === pathway) {\n if (reaction) {\n this.diagram.selectItem(reaction);\n }\n else {\n this.diagram.resetSelection();\n }\n }\n else {\n if (this.diagram) this.diagram.resetSelection();\n if (reaction) {\n this.loadDiagram(pathway, reaction);\n }\n else {\n this.loadDiagram(pathway);\n }\n }\n }\n this.setState({hierarchy: hierarchy, selectedNode: selectedNode});\n }\n }\n\n renderHierarchy() {\n if (this.state.hierarchy) {\n return (\n <TreeMenu\n data={this.state.hierarchy}\n expandIconClass=\"fa fa-chevron-right\"\n collapseIconClass=\"fa fa-chevron-down\"\n stateful={true}\n collapsible={true}\n onTreeNodeClick={this.loadNodes.bind(this)}\n />\n );\n }\n return <Spinner/>\n }\n\n updateQuery() {\n console.log(\"User asked to filter by \"+ this.state.selectedNode.type);\n\n this.props.doAcceptGrameneSuggestion({\n category: 'Plant Reactome',\n fq_field: 'pathways__ancestors',\n fq_value: this.state.selectedNode.id,\n name: this.state.selectedNode.label\n })\n }\n\n render() {\n let reactomeLink,searchFilter;\n\n if (this.state.selectedNode) {\n let xrefLUT = _.keyBy(this.gene.xrefs,'db');\n let links = [\n {name: 'Plant Reactome '+this.state.selectedNode.type, url: `${reactomeURL}/content/detail/${this.stableId(this.state.selectedNode.id)}`}\n ];\n if (xrefLUT.hasOwnProperty('notGramene_Plant_Reactome')) {\n links.push({name: 'Plant Reactome Gene', url: `${reactomeURL}/content/detail/${xrefLUT.notGramene_Plant_Reactome.ids[0]}`});\n }\n reactomeLink = <Links key=\"links\" links={links}/>;\n let filters = [\n {\n name: `All genes in this ${this.state.selectedNode.type}`,\n handleClick: ()=>this.updateQuery()\n }\n ];\n searchFilter = <Explore key=\"explore\" explorations={filters}/>;\n }\n return (\n <div ref={(div) => {this.divWrapper = div;}}>\n <div style={{width:350, height: 500, overflow:'scroll', float:'left'}}>{this.renderHierarchy()}</div>\n <div id={this.holderId}/>\n {searchFilter}\n {reactomeLink}\n </div>\n );\n }\n}\n\nexport default connect(\n 'selectGrameneTaxonomy',\n 'selectGramenePathways',\n 'doRequestGramenePathways',\n 'doAcceptGrameneSuggestion',\n Pathways\n);\n","import React from 'react'\nimport ReactGA from 'react-ga'\n// import {connect} from \"redux-bundler-react\";\nimport _ from 'lodash'\nimport dbxrefs from 'gramene-dbxrefs';\nimport {Detail, Title, Description, Content} from \"./generic\";\n\nconst HOW_MANY_TO_SHOW_BY_DEFAULT = 10;\n\nclass Xref extends React.Component {\n constructor(props) {\n super(props);\n this.state = {showAll: false};\n }\n\n toggleShowAll() {\n this.setState({showAll: !this.state.showAll});\n }\n\n possiblyTruncateList(vals) {\n var ellipsis, ellipsisChar, ellipsisTitle;\n\n if (vals.length > HOW_MANY_TO_SHOW_BY_DEFAULT) {\n if (this.state.showAll) {\n ellipsisChar = '^ show first ' + HOW_MANY_TO_SHOW_BY_DEFAULT;\n ellipsisTitle = 'Show less';\n }\n else {\n ellipsisChar = '… show all (' + (vals.length - HOW_MANY_TO_SHOW_BY_DEFAULT) + ' more)';\n ellipsisTitle = 'Show more';\n vals = vals.slice(0, HOW_MANY_TO_SHOW_BY_DEFAULT);\n }\n\n ellipsis = (\n <li key=\"showMore\" className=\"showAll\">\n <a title={ellipsisTitle} onClick={this.toggleShowAll.bind(this)}>{ellipsisChar}</a>\n </li>\n );\n\n vals.push(ellipsis);\n }\n\n return vals;\n }\n\n render() {\n var members, vals, db;\n db = this.props.displayName;\n\n members = this.props.members;\n\n vals = _(members)\n .map(function (m) {\n return m.val;\n })\n .flatten(true)\n .sort()\n .uniq(true) // TODO figure out why there are duplicates.\n .map(function (item, idx) {\n var url = members[0].url(item),\n liClass = idx < HOW_MANY_TO_SHOW_BY_DEFAULT ? \"default\" : \"extra\";\n let external = <small title=\"This link opens a page from an external site\"> <i className=\"fa fa-external-link\"/></small>;\n return (\n <li key={idx} className={liClass}>\n <ReactGA.OutboundLink\n eventLabel={db}\n to={url}\n target=\"_blank\"\n >\n {item}{external}\n </ReactGA.OutboundLink>\n </li>\n )\n })\n .value();\n\n vals = this.possiblyTruncateList(vals);\n\n return (\n <tr>\n <td className=\"xref-name-col\">{this.props.displayName}</td>\n <td className=\"xref-value-col\">\n <ol className=\"xref-id-list\">{vals}</ol>\n </td>\n </tr>\n );\n }\n}\n\nfunction formatXrefsForGene(gene) {\n if(!gene || !_.isArray(gene.xrefs)) {\n throw new Error(\"No xrefs for \" + _.get(gene._id));\n }\n return _(gene.xrefs)\n .keyBy('db')\n .pickBy(function(val, name) {\n return dbxrefs.isKnown(name);\n })\n .map(function(val, name) {\n var xref = dbxrefs.fetch(name);\n return {url: xref.url, label: xref.label, val: val.ids};\n })\n .groupBy('label')\n .map(function(members, displayName) {\n return (\n <Xref key={displayName} displayName={displayName} members={members} />\n )\n })\n .value();\n}\n\nconst Xrefs = ({searchResult, geneDocs}) => (\n <Detail>\n <Title key=\"title\">Cross-references</Title>\n <Description key=\"description\">References to this gene in other databases:</Description>\n <Content key=\"content\">\n <table className=\"xrefs table\">\n <thead>\n <tr>\n <th className=\"xref-name-col\">Database</th>\n <th className=\"xref-value-col\">IDs and links</th>\n </tr>\n </thead>\n <tbody>\n {formatXrefsForGene(geneDocs[searchResult.id])}\n </tbody>\n </table>\n </Content>\n </Detail>\n);\n\nexport default Xrefs;\n\n","import React from 'react'\nimport { connect } from 'redux-bundler-react'\nimport { Vis } from \"gramene-search-vis\"\nimport Selection from './selection.js'\nimport '../../../node_modules/gramene-search-vis/styles/main.less';\n\nclass TaxDist extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n collapseEmpties: true\n };\n }\n handleSelection(selections) {\n this.setState({selections})\n }\n handleHighlight(highlight) {\n this.setState({highlight})\n }\n handleFilter() {\n this.setState({selections:null})\n }\n toggleEmpties() {\n this.setState({collapseEmpties: !this.state.collapseEmpties})\n }\n render() {\n let selectedTaxa = {};\n if (this.props.grameneSearch && this.state.collapseEmpties) {\n this.props.grameneSearch.facet_counts.facet_fields.taxon_id.filter((tid,idx) => idx % 2 === 0).forEach(tid => {\n selectedTaxa[tid] = true;\n })\n }\n else {\n selectedTaxa = this.props.grameneGenomes.active;\n }\n return (\n <div className=\"results-vis big-vis\">\n <button type=\"button\" className=\"btn btn-primary btn-sm\" onClick={this.toggleEmpties.bind(this)}>{this.state.collapseEmpties ? 'Expand' : 'Collapse'} empty branches</button>\n {this.props.grameneTaxDist && <Vis taxonomy={this.props.grameneTaxDist}\n selectedTaxa={selectedTaxa}\n onSelection={this.handleSelection.bind(this)}\n onHighlight={this.handleHighlight.bind(this)}\n />}\n {this.renderSelection()}\n </div>\n );\n }\n renderSelection() {\n if (this.state.selections && this.props.grameneTaxDist) {\n return <Selection taxonomy={this.props.grameneTaxDist}\n selectedTaxa={{}}\n selections={this.state.selections}\n onFilter={this.handleFilter.bind(this)}/>\n }\n }\n}\n\nexport default connect(\n 'selectGrameneTaxDist',\n 'selectGrameneGenomes',\n 'selectGrameneSearch',\n TaxDist\n);\n","import React from 'react';\nimport numeral from 'numeral';\nimport _ from \"lodash\";\n\nimport {Table, Button, Badge} from 'react-bootstrap';\nimport {connect} from \"redux-bundler-react\";\n\nfunction selectionStats(selections, taxonomy) {\n const selectionData = getSelectionData(selections, taxonomy);\n const totalGeneResults = taxonomy.model.results.count;\n const fq = fqFromSelections(selections);\n\n return {\n selectedGenes: selectionData.resultsCount,\n totalGeneResults,\n fq,\n numSelectedBins: selectionData.binsCount,\n proportionGenesSelected: selectionData.resultsCount / totalGeneResults\n }\n}\n\nfunction getSelectionData(selection, taxonomy) {\n return _.reduce(selection, (countAcc, sel) => {\n const bins = taxonomy.getBins(sel.binFrom.idx, sel.binTo.idx);\n countAcc.binsCount += bins.length;\n countAcc.resultsCount += _.reduce(bins, (acc, bin) => acc + bin.results.count, 0);\n return countAcc;\n }, {resultsCount: 0, binsCount: 0});\n}\n\nconst selectionToSolrRange = (sel)=>`[${sel.binFrom.idx} TO ${sel.binTo.idx}]`;\n\nfunction fqFromSelections(selections) {\n const rangeStrings = selections.map(selectionToSolrRange);\n return `fixed_1000__bin:(${rangeStrings.join(' ')})`;\n}\n\nconst Selections = ({selections, taxonomy, doAcceptGrameneSuggestion, onFilter}) => {\n const stats = selectionStats(selections, taxonomy);\n\n const setFilter = () => {\n doAcceptGrameneSuggestion({\n category: 'Selections',\n fq_field: 'fixed_1000__bin',\n fq_value: `(${selections.map(selectionToSolrRange).join(' ')})`,\n name: `${selections.length} region${selections.length === 1 ? '':'s'}`\n });\n onFilter();\n };\n\n const formatProportion = (prop) => '(' + (_.isFinite(prop) ? numeral(prop).format('0.0%') : undefined) + ')';\n\n return (\n <div>\n <Table>\n <tbody>\n <tr>\n <th>Number of selected genes</th>\n <td>{stats.selectedGenes} {formatProportion(stats.proportionGenesSelected)}</td>\n <td><Button size='sm' onClick={setFilter}>selections&nbsp;|<Badge>{stats.selectedGenes}</Badge></Button>\n </td>\n </tr>\n </tbody>\n </Table>\n </div>\n )\n};\n\nexport default connect(\n 'doAcceptGrameneSuggestion',\n Selections\n);\n","import React from 'react'\nimport {connect} from \"redux-bundler-react\";\nimport {Alert, Container, Row, Card, CardDeck} from 'react-bootstrap'\nimport './genes.css'\n\nconst examples = [\n {\n subsite: {\n maize:1,\n sorghum:1,\n main:1,\n },\n text: \"What are the orthologs of Arabidopsis thaliana's PAD4 gene in Andropogoneae?\",\n filters: {\n status: 'init',\n rows: 20,\n operation: 'AND',\n negate: false,\n leftIdx: 0,\n rightIdx: 5,\n children: [\n {\n fq_field: 'homology__all_orthologs',\n fq_value: 'AT3G52430',\n name: 'Orthologs of PAD4',\n category: 'Gene Tree',\n leftIdx:1,\n rightIdx:2,\n negate: false,\n marked: false\n },\n {\n fq_field: 'taxonomy__ancestors',\n fq_value: 147429,\n name: 'Andropogoneae',\n category: 'Taxonomy',\n leftIdx:3,\n rightIdx:4,\n negate: false,\n marked: false\n }\n ]\n }\n },\n {\n subsite: {\n grapevine:1\n },\n text: \"What are the orthologs of Arabidopsis thaliana's PAD4 gene in rosids?\",\n filters: {\n status: 'init',\n rows: 20,\n operation: 'AND',\n negate: false,\n leftIdx: 0,\n rightIdx: 5,\n children: [\n {\n fq_field: 'homology__all_orthologs',\n fq_value: 'AT3G52430',\n name: 'Orthologs of PAD4',\n category: 'Gene Tree',\n leftIdx:1,\n rightIdx:2,\n negate: false,\n marked: false\n },\n {\n fq_field: 'taxonomy__ancestors',\n fq_value: 71275,\n name: 'rosids',\n category: 'Taxonomy',\n leftIdx:3,\n rightIdx:4,\n negate: false,\n marked: false\n }\n ]\n }\n }\n];\nconst HelpDemo = ({configuration,doReplaceGrameneFilters}) => (\n <Container fluid style={{padding: '40px'}}>\n <Row>\n <h3>Search Features</h3>\n </Row>\n <Row>\n <CardDeck style={{width:'80%'}}>\n <Card style={{'backgroundColor':'#f3f6f5', 'borderColor':'#DDE5E3'}}>\n <Card.Body>\n <Card.Title>Suggestions</Card.Title>\n <Card.Text>Matching terms are provided as you type:</Card.Text>\n <div className='gene-search-pic-sugg'/>\n </Card.Body>\n </Card>\n <Card style={{'backgroundColor':'#f3f6f5', 'borderColor':'#DDE5E3'}}>\n <Card.Body>\n <Card.Title>Visualization</Card.Title>\n <Card.Text>See the distribution of results across all genomes:</Card.Text>\n <div className='gene-search-pic-results'/>\n </Card.Body>\n </Card>\n <Card style={{'backgroundColor':'#f3f6f5', 'borderColor':'#DDE5E3'}}>\n <Card.Body>\n <Card.Title>Gene tree view</Card.Title>\n <Card.Text>Explore evolutionary history of a gene family:</Card.Text>\n <div className='gene-search-pic-genetree'/>\n </Card.Body>\n </Card>\n </CardDeck>\n </Row>\n <Row>\n <h4>For Example</h4>\n </Row>\n <Row>\n <small>\n You can ask sophisticated questions about the genes:<br/>\n <ul>\n {examples.filter(e => !!e.subsite[configuration.id]).map((e,idx) => (\n <li key={idx}><a onClick={() => doReplaceGrameneFilters(e.filters)}>{e.text}</a></li>\n ))}\n </ul>\n </small>\n </Row>\n </Container>\n);\n\nexport default connect(\n 'selectConfiguration',\n 'doReplaceGrameneFilters',\n HelpDemo\n);\n\n","import React from \"react\";\nimport { connect } from 'redux-bundler-react'\nimport { Modal, Button } from \"react-bootstrap\";\n\nclass TaxonomyModal extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n genomes : Object.values(props.grameneMaps).sort((a,b) => a.left_index - b.left_index)\n };\n if (Object.keys(props.grameneGenomes.active).length === 0) {\n this.state.genomes.forEach(g => {\n g.selected = true;\n })\n }\n else {\n this.state.genomes.forEach(g => {\n g.selected = props.grameneGenomes.active[g.taxon_id];\n })\n }\n }\n getSelectedGenomes() {\n let selected = {};\n let notAll = false;\n this.state.genomes.forEach(g => {\n if (g.selected) {\n selected[g.taxon_id] = true;\n }\n else {\n notAll = true;\n }\n });\n return notAll ? selected : {};\n }\n handleChange(e) {\n const idx = +e.target.value;\n let newState = Object.assign({},this.state);\n newState.genomes[idx].selected = !newState.genomes[idx].selected;\n this.setState(newState);\n }\n handleClose() {\n this.props.doUpdateGrameneGenomes(this.getSelectedGenomes())\n }\n selectAll() {\n const genomes = this.state.genomes.map(g => {g.selected = true; return g});\n this.setState({genomes});\n }\n selectNone() {\n const genomes = this.state.genomes.map(g => {g.selected = false; return g});\n this.setState({genomes});\n }\n renderGenomes() {\n return (\n <div>\n {this.state.genomes.map((m,idx) => {\n return (\n <div key={idx}>\n <input checked={m.selected}\n onChange={this.handleChange.bind(this)}\n type=\"checkbox\"\n value={idx}\n />\n {' '}{m.display_name}\n </div>\n )\n })}\n <Button onClick={this.handleClose.bind(this)}>Submit</Button>\n </div>\n )\n }\n render() {\n return (\n <Modal\n show={this.props.grameneGenomes.show}\n onHide={this.handleClose.bind(this)}\n size='lg'\n >\n <Modal.Header closeButton>\n <Modal.Title>Select Genomes of Interest</Modal.Title>\n </Modal.Header>\n <Modal.Body>\n <Button variant=\"outline-secondary\" onClick={this.selectAll.bind(this)}>All</Button>{' '}\n <Button variant=\"outline-secondary\" onClick={this.selectNone.bind(this)}>None</Button>\n {this.renderGenomes()}\n </Modal.Body>\n </Modal>\n )\n }\n};\n\nexport default connect(\n 'selectGrameneGenomes',\n 'selectGrameneMaps',\n 'doUpdateGrameneGenomes',\n TaxonomyModal\n)\n"],"names":["apiBundles","docsBundle","filterBundle","viewsBundle","genomesBundle","facets","genomesOfInterest","grameneSuggestions","name","actionBaseType","persist","getPromise","store","t","selectSuggestionsQuery","g","selectGrameneGenomes","fetch","selectGrameneAPI","then","res","json","suggestions","Object","keys","active","length","grouped","category","groups","forEach","group","doclist","docs","sugg","num_genes","taxon_id","id","idx","taxon_freq","reactGrameneSuggestions","shouldUpdate","queryString","actionCreator","selectGrameneSuggestionsStatus","isLoading","suggestionsRaw","data","matches","selectGrameneSuggestionsReady","status","regex","RegExp","test","doFocusFirstGrameneSuggestion","arg","dispatch","getState","console","log","grameneTaxonomy","taxNodes","taxonomy","_","keyBy","_id","hasOwnProperty","is_a","p_id","p","children","push","reactGrameneTaxonomy","grameneMaps","maps","reactGrameneMaps","grameneSearch","offset","selectGrameneSearchOffset","rows","selectGrameneSearchRows","taxa","fq","join","selectGrameneFiltersQueryString","response","d","can_show","capabilities","c","reactGrameneSearch","formatFacetCountsForViz","a","count","displayName","sorted","counts","i","fc","sort","b","grameneTaxDist","getReducer","initialState","state","type","payload","selectGrameneTaxDist","forIn","map","tid","display_name","binnedResults","facet_counts","facet_fields","fixed_1000__bin","speciesTree","treesClient","tree","values","binMapper","binsClient","bins","taxDist","setBinType","setResults","grameneOrthologs","newState","assign","doRequestOrthologs","geneId","orthologs","selectGrameneOrthologs","API","taxonId","selectTargetTaxonId","newOrthologs","MAX_IDLIST_LENGTH","findNodeWithLeftIdx","node","leftIdx","result","child","rightIdx","parentIdx","markSubtree","source","invert","marked","reindexTree","grameneFilters","operation","negate","showMarked","showMenu","moveCopyMode","searchOffset","pick","filter","filters","warning","nextIdx","f","parent","target","targetCopy","fq_field","fq_value","sourceCopy","mode","moveCopySource","doNegateGrameneFilter","actions","doDeleteGrameneFilter","doChangeGrameneFilterOperation","doMoveOrCopyGrameneFilter","toUpperCase","doCopyGrameneFilter","doMarkGrameneFilterTargets","doUnmarkGrameneFilterTargets","doAcceptGrameneSuggestion","suggestion","doAddGrameneRangeQuery","terms","doToggleGrameneFilterMenu","doRequestResultsPage","page","doReplaceGrameneFilters","doClearGrameneFilters","selectGrameneFilters","selectGrameneFiltersStatus","hasSpaces","isQuery","idWithColon","getQuery","replace","handleIdList","queryObject","ids","uniq","idList","split","slice","action","reactGrameneFilters","genomes","myUrl","newFilters","JSON","parse","url","URL","href","pathname","search","stringify","grameneViews","options","show","doToggleGrameneView","selectGrameneViews","grameneDocs","genes","trees","domains","pathways","doRequestGrameneGene","selectGrameneGenes","doRequestGrameneTree","selectGrameneTrees","selectGrameneMaps","update_taxon_name","taxon_name","doRequestGramenePathways","selectGramenePathways","newIds","grameneGenomes","doShowGrameneGenomes","doUpdateGrameneGenomes","selectActiveGenomes","selectActiveGenomeCount","Gene","gene","Genes","results","doChangeQuantity","numFound","moreButton","e","fewerButton","docsToShow","doc","Pathway","pathway","Pathways","Domain","domain","Domains","Taxon","taxon","Species","ResultList","grameneGenes","grameneDomains","gramenePathways","searchUI","searchUpdated","Gramene","getStatus","cat","isChecked","toggle","tally","ResultSummary","doToggleCategory","showMatches","text","x","re","match","str","fontWeight","Suggestions","props","sugg1","suggestionsQuery","sugg2","margin","maxWidth","doAcceptSuggestion","groupValue","jdx","inventory","help","HelpDemo","list","GeneList","TaxDist","StatusCmp","content","grameneFiltersStatus","popover","activeGenomeCount","cursor","padding","backgroundColor","color","fontSize","Status","handleClick","window","event","cancelBubble","stopPropagation","selectTarget","unmarkTargets","Filter","classes","menu","key","menuItems","changeOperation","deleteNode","markTargets","isSource","toggleMenu","FiltersCmp","Filters","ResultsCmp","activeViews","v","React","createElement","Results","ViewsCmp","view","Views","external","location","Location","expression","Expression","homology","Homology","xrefs","Xrefs","renderTairSummary","searchResult","summary","trimSummary","start","substr","rest","ClosestOrtholog","desc","species","model_rep_id","model_rep_name","model_rep_description","model_rep_species_name","closest_rep_id","closest_rep_name","closest_rep_description","closest_rep_species_name","renderClosestOrtholog","shouldShowClosestOrtholog","details","label","available","expandedDetail","hasData","setState","geneDocs","requestGene","model_rep_taxon_id","taxLut","closest_rep_taxon_id","ensemblURL","taxName","numWordsInDescription","description","system_name","synonyms","renderMetadata","getDetailStatus","setExpanded","ensureGene","Component","prev","next","grameneSearchRows","pageNum","grameneSearchOffset","Math","ceil","configuration","ensemblRest","PREFIX","global","origin","Detail","height","suggestionToFilters","orthoParaList","thisGeneId","get","homologs","pickBy","filterCategories","thing","indexOf","flatten","value","isEmpty","geneCount","filterAllHomologs","bind","filterOrthologs","paralogs","filterParalogs","links","curation","treeId","gene_tree","grameneTrees","genetree","orthologList","paralogList","renderTreeVis","explorations","subComponents","title","explore","Title","Description","Content","QueryTerm","badge","isNumber","marginLeft","renderExplorations","exploration","Explore","renderLinks","link","Links","initRegion","visibleRange","initVisibleRange","span","Error","end","floor","chr","region","isChromosome","regionType","regionName","isChromsome","restrictToVisibleRange","geneName","filterDisplayName","closeModal","visible","updateQuery","jgiify","renderLocation","renderResetButton","renderBrowser","handleViewChange","resetVisibleRange","Browser","DallianceBrowser","initialVisibleRange","newProps","browser","setLocation","pageName","biodallianceElementId","viewStart","viewEnd","cookieKey","prefix","coordSystem","speciesName","auth","version","ucscName","sources","ensemblURI","tier_type","uri","disablePoweredBy","setDocumentTitle","noDefaultLabels","noPersist","noPersistView","maxWorkers","noTitle","noLocationField","noLeapButtons","noZoomSlider","noTrackAdder","noTrackEditor","noExport","noOptions","noHelp","maxViewWidth","addViewListener","onViewChange","timeoutID","clearTimeout","cancel","self","setTimeout","reactomeURL","holderId","diagram","Reactome","Diagram","create","proxyPrefix","placeHolder","width","divWrapper","clientWidth","dbId","indices","model","reactomePrefix","pathwayId","reactionId","initDiagram","loadDiagram","onDiagramLoaded","loaded","loadedDiagram","selectItem","flagItems","addEventListener","prevProps","prevState","hierarchy","selectedNode","path","loadNodes","pathwayIds","haveDocs","getHierarchy","makeTaxonSpecific","ancestorIds","annotations","clone","ancestors","entries","reaction","r","speciesCode","lineageField","tsDocs","tsDoc","lineage","detach","nodes","pwyId","pwy","line","parentOffset","checkbox","selected","undefined","nested","FlatToNested","convert","shift","nodeRef","n","unshift","stableId","resetSelection","reactomeLink","searchFilter","xrefLUT","notGramene_Plant_Reactome","div","overflow","renderHierarchy","HOW_MANY_TO_SHOW_BY_DEFAULT","Xref","showAll","vals","ellipsis","ellipsisChar","ellipsisTitle","toggleShowAll","members","db","m","val","item","liClass","possiblyTruncateList","formatXrefsForGene","isArray","dbxrefs","isKnown","xref","groupBy","collapseEmpties","selections","highlight","selectedTaxa","toggleEmpties","handleSelection","handleHighlight","renderSelection","handleFilter","selectionStats","selectionData","getSelectionData","totalGeneResults","fqFromSelections","selectedGenes","resultsCount","numSelectedBins","binsCount","proportionGenesSelected","selection","reduce","countAcc","sel","getBins","binFrom","binTo","acc","bin","selectionToSolrRange","rangeStrings","Selections","onFilter","stats","setFilter","formatProportion","prop","isFinite","format","examples","subsite","maize","sorghum","main","grapevine","TaxonomyModal","left_index","notAll","getSelectedGenomes","handleChange","handleClose","selectAll","selectNone","renderGenomes"],"version":3,"file":"index.js.map"}