All Downloads are FREE. Search and download functionalities are using the official Maven repository.

web-interface.assets.325e2d4b-449.63071ef6111f8ed989ca.js.map Maven / Gradle / Ivy

There is a newer version: 6.0.1
Show newest version
{"version":3,"file":"325e2d4b-449.63071ef6111f8ed989ca.js","mappings":"iQA2BA,MAAMA,GAAYC,EAAAA,EAAAA,SAAOC,EAAAA,IAAV,gFAAGD,CAAH,yBAITE,GAAeF,EAAAA,EAAAA,SAAOG,EAAAA,IAAV,mFAAGH,EAAe,QAAC,MAAEI,GAAH,SAAeC,EAAAA,EAAAA,KAAd,CAAD,2IACnBD,EAAME,MAAMC,OAAOC,WACrBJ,EAAME,MAAMG,KAAKD,WAGnBJ,EAAMM,OAAOC,QAAQC,OAAOC,SAOjCC,EAAAA,EAAAA,IAAqBV,GAIdA,EAAMM,OAAOK,OAAOC,aAE3BC,EAAAA,EAAAA,IAAsBb,IAGpBa,EAAAA,EAAAA,IAAsBb,GArBI,IA2BpCF,EAAagB,YAAc,SAmB3B,MAsBA,EAtBuB,QAAC,MAAEC,GAAH,SACrB,gBAACpB,EAAD,KACGoB,EAAMC,KAAI,IAAkD,IAAjD,KAAEC,EAAF,MAAQC,EAAR,YAAeC,EAAf,eAA4BC,GAAqB,EAC3D,OAAKH,EAKH,gBAAC,KAAD,CAAaE,YAAaA,QAAAA,EAAe,GAAIE,IAAKJ,GAChD,gBAAC,IAAD,CAAeK,GAAIL,EAAMM,gBAAiBH,GACxC,gBAACtB,EAAD,CAAc0B,QAAQ,QACpB,gBAAC,KAAD,KACGN,MARF,IAGT,IAPiB,C,0GCvDvB,MAAMO,EAAY,CAChB,CAAEP,MAAO,WAAYD,KAAMS,EAAAA,GAAAA,OAAAA,SAAAA,SAAiCN,gBAAgB,GAC5E,CAAEF,MAAO,iBAAkBD,KAAMS,EAAAA,GAAAA,OAAAA,SAAAA,gBACjC,CAAER,MAAO,gBAAiBD,KAAMS,EAAAA,GAAAA,OAAAA,SAAAA,gBASlC,EAN+B,IAC7B,gBAAC,KAAD,KACE,gBAAC,IAAD,CAAgBX,MAAOU,I,0ECV3B,MA2GA,GACEE,QA5GaC,EAAAA,EAAAA,GAAgB,CAC7BC,OAAQC,EAAAA,EAAAA,OACRC,QAAUC,IAAD,CACPC,QAAU,SAAQD,aAAT,EAASA,EAAME,cAAcF,aAA7B,EAA6BA,EAAMG,wCAE9CC,MAAO,CAACA,EAAOJ,KAAR,CACLC,QAAU,kBAAiBD,aAAlB,EAAkBA,EAAME,cAAcF,aAAtC,EAAsCA,EAAMG,kCAAkCC,QAuGzFC,MAnGWT,EAAAA,EAAAA,GAAgB,CAC3BC,OAAQC,EAAAA,EAAAA,KACRM,MAAO,CAACA,EAAOE,KAAR,CACLL,QAAU,yBAAwBK,0BAA+BF,MAEnEG,kBAAkB,IA+FlBC,gBA5FqBZ,EAAAA,EAAAA,GAAgB,CACrCC,OAAQC,EAAAA,EAAAA,eACRM,MAAO,CAACA,EAAOK,KAAR,CACLR,QAAU,+BAA8BQ,0BAAiCL,MAE3EG,kBAAkB,IAwFlBG,QArFad,EAAAA,EAAAA,GAAgB,CAC7BC,OAAQC,EAAAA,EAAAA,OACRC,QAAS,CAACY,EAASC,EAAUC,KAApB,CACPZ,QAAU,SAAQY,gCAEpBT,MAAO,CAACA,EAAOO,EAASC,EAAUC,KAA3B,CACLZ,QAAU,kBAAiBY,0BAAiCT,QAgF9DU,QA5EmBlB,EAAAA,EAAAA,GAAgB,CACnCC,OAAQC,EAAAA,EAAAA,OACRC,QAAS,CAACY,EAASE,KAAV,CACPZ,QAAU,SAAQY,gCAEpBT,MAAO,CAACA,EAAOO,EAASE,KAAjB,CACLZ,QAAU,kBAAiBY,0BAAiCT,QAuE9DW,gBAnEqBnB,EAAAA,EAAAA,GAAgB,CACrCC,OAAQC,EAAAA,EAAAA,eACRC,QAAS,KAAM,CACbE,QAAS,uCAEXG,MAAO,CAACA,EAAOE,KAAR,CACLL,QAAU,uCAAsCK,0BAA+BF,QA8DjFY,aA1DkBpB,EAAAA,EAAAA,GAAgB,CAClCC,OAAQC,EAAAA,EAAAA,YACRC,QAAS,CAACY,EAASM,KAAV,CACPhB,QAAU,UAASgB,4BAErBb,MAAO,CAACA,EAAOE,EAAQW,KAAhB,CACLhB,QAAU,mBAAkBgB,wBAAgCX,0BAA+BF,QAqD7Fc,YAjDiBtB,EAAAA,EAAAA,GAAgB,CACjCC,OAAQC,EAAAA,EAAAA,WACRM,MAAO,CAACA,EAAOE,KAAR,CACLL,QAAU,oCAAmCK,0BAA+BF,QA+C9Ee,aA3CkBvB,EAAAA,EAAAA,GAAgB,CAClCC,OAAQC,EAAAA,EAAAA,YACRC,QAAS,CAACY,EAASS,EAAUH,KAApB,CACPhB,QAAU,UAASgB,4BAErBb,MAAO,CAACA,EAAOE,EAAQc,EAAUH,KAA1B,CACLhB,QAAU,mBAAkBgB,wBAAgCX,0BAA+BF,QAsC7FiB,WAlCgBzB,EAAAA,EAAAA,GAAgB,CAChCC,OAAQC,EAAAA,EAAAA,UACRM,MAAQA,IAAD,CACLH,QAAU,qCAAoCG,QAgChDkB,oBA5ByB1B,EAAAA,EAAAA,GAAgB,CACzCC,OAAQC,EAAAA,EAAAA,mBACRM,MAAQA,IAAD,CACLH,QAAU,qCAAoCG,QA0BhDmB,WAtBgB3B,EAAAA,EAAAA,GAAgB,CAChCC,OAAQC,EAAAA,EAAAA,UACRC,QAAS,CAACO,EAAQkB,KAAT,CACPvB,QAAU,SAAQK,iBAAsBkB,MAE1CpB,MAAO,CAACA,EAAOE,EAAQkB,KAAhB,CACLvB,QAAU,mBAAkBK,UAAekB,yBAAqCpB,Q,4DCpErE,MAAMqB,EAGnBC,YACEC,EACAlB,EACAI,EACAe,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAb,GAEAc,KAAKC,OAAS,CACZZ,KACAlB,WACAI,WACAe,QACAC,QACAC,WACAC,WACAC,gBACAC,gBACAC,eACAC,UACAC,gBACAC,iBACAb,gBAEH,CAEGG,SACF,OAAOW,KAAKC,OAAOZ,EACpB,CAEGlB,eACF,OAAO6B,KAAKC,OAAO9B,QACpB,CAEG+B,WACF,OAAOF,KAAKC,OAAO9B,QACpB,CAEGI,eACF,OAAOyB,KAAKC,OAAO1B,QACpB,CAEG4B,kBACF,OAAOH,KAAKC,OAAO1B,QACpB,CAEGe,YACF,OAAOU,KAAKC,OAAOX,KACpB,CAEGC,YACF,OAAOS,KAAKC,OAAOV,KACpB,CAEGC,eACF,OAAOQ,KAAKC,OAAOT,QACpB,CAEGC,eACF,OAAOO,KAAKC,OAAOR,QACpB,CAEGC,oBACF,OAAOM,KAAKC,OAAOP,aACpB,CAEGC,oBACF,OAAOK,KAAKC,OAAON,aACpB,CAEGC,mBACF,OAAOI,KAAKC,OAAOL,YACpB,CAEGC,cACF,OAAOG,KAAKC,OAAOJ,OACpB,CAEGC,oBACF,OAAOE,KAAKC,OAAOH,aACpB,CAEGC,qBACF,OAAOC,KAAKC,OAAOF,cACpB,CAEGb,oBACF,OAAOc,KAAKC,OAAOf,aACpB,CAEDkB,YACE,MAAM,GACJf,EADI,SAEJlB,EAFI,SAGJI,EAHI,MAIJe,EAJI,MAKJC,EALI,SAMJC,EANI,SAOJC,EAPI,cAQJC,EARI,cASJC,EATI,aAUJC,EAVI,QAWJC,EAXI,cAYJC,EAZI,eAaJC,EAbI,cAcJb,GACEc,KAAKC,OAGT,OAAO,IAAII,EAAQC,EAAAA,IAAc,CAC/BjB,KACAlB,WACAI,WACAe,QACAC,QACAC,WACAC,WACAC,gBACAC,gBACAC,eACAC,UACAC,gBACAC,iBACAb,kBAEH,CAEY,cACXG,EACAlB,EACAI,EACAe,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAb,GAEA,OAAO,IAAIC,EACTE,EACAlB,EACAI,EACAe,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAb,EAEH,CAEDqB,SACE,MAAM,GACJlB,EADI,SAEJlB,EAFI,SAGJI,EAHI,MAIJe,EAJI,MAKJC,EALI,SAMJC,EANI,SAOJC,EAPI,cAQJC,EARI,cASJC,EATI,aAUJC,EAVI,QAWJC,EAXI,cAYJC,EAZI,eAaJC,EAbI,cAcJb,GACEc,KAAKC,OAET,MAAO,CACLZ,KACAlB,WACAqC,UAAWjC,EACXe,QACAC,MAAOA,EAAMkB,UACbC,UAAWlB,EACXmB,cAAelB,EACfmB,eAAgBlB,EAChBmB,eAAgBlB,EAChBmB,cAAelB,EACfC,UACAkB,gBAAiBjB,EACjBkB,iBAAkBjB,EAClBkB,eAAgB/B,EAEnB,CAEc,gBAACgC,GACd,MAAM,GACJ7B,EADI,SAEJlB,EACAqC,UAAWjC,EAHP,MAIJe,EAJI,MAKJC,EACAmB,UAAWlB,EACXmB,cAAelB,EACfmB,eAAgBlB,EAChBmB,eAAgBlB,EAChBmB,cAAelB,EAVX,QAWJC,EACAkB,gBAAiBjB,EACjBkB,iBAAkBjB,EAClBkB,eAAgB/B,GACdgC,EAEJ,OAAO/B,EAAa9B,OAAOgC,EACzBlB,EACAI,EACAe,EACAgB,EAAAA,IAAcf,GACdC,SAAAA,EACAC,SAAAA,EACAC,SAAAA,EACAC,EACAC,EACAC,EACAC,EACAC,EACAb,EACH,CAGa,iBAEZ,OAAO,IAAImB,CACZ,EAKH,MAAMA,EAGJjB,cAAmD,IAAvC8B,EAAuC,uDAAjBZ,EAAAA,MAChCN,KAAKkB,MAAQA,CACd,CAED7B,GAAG6B,GACD,OAAO,IAAIb,EAAQL,KAAKkB,MAAMC,IAAI,KAAMD,GACzC,CAED/C,SAAS+C,GACP,OAAO,IAAIb,EAAQL,KAAKkB,MAAMC,IAAI,WAAYD,GAC/C,CAED3C,SAAS2C,GACP,OAAO,IAAIb,EAAQL,KAAKkB,MAAMC,IAAI,WAAYD,GAC/C,CAED5B,MAAM4B,GACJ,OAAO,IAAIb,EAAQL,KAAKkB,MAAMC,IAAI,QAASD,GAC5C,CAED3B,MAAM2B,GACJ,OAAO,IAAIb,EAAQL,KAAKkB,MAAMC,IAAI,QAASD,GAC5C,CAED1B,SAAS0B,GACP,OAAO,IAAIb,EAAQL,KAAKkB,MAAMC,IAAI,WAAYD,GAC/C,CAEDzB,SAASyB,GACP,OAAO,IAAIb,EAAQL,KAAKkB,MAAMC,IAAI,WAAYD,GAC/C,CAEDxB,cAAcwB,GACZ,OAAO,IAAIb,EAAQL,KAAKkB,MAAMC,IAAI,gBAAiBD,GACpD,CAEDvB,cAAcuB,GACZ,OAAO,IAAIb,EAAQL,KAAKkB,MAAMC,IAAI,gBAAiBD,GACpD,CAEDtB,aAAasB,GACX,OAAO,IAAIb,EAAQL,KAAKkB,MAAMC,IAAI,eAAgBD,GACnD,CAEDrB,QAAQqB,GACN,OAAO,IAAIb,EAAQL,KAAKkB,MAAMC,IAAI,UAAWD,GAC9C,CAEDpB,cAAcoB,GACZ,OAAO,IAAIb,EAAQL,KAAKkB,MAAMC,IAAI,gBAAiBD,GACpD,CAEDnB,eAAemB,GACb,OAAO,IAAIb,EAAQL,KAAKkB,MAAMC,IAAI,iBAAkBD,GACrD,CAEDhC,cAAcgC,GACZ,OAAO,IAAIb,EAAQL,KAAKkB,MAAMC,IAAI,gBAAiBD,GACpD,CAEDE,QACE,MAAM,GACJ/B,EADI,SAEJlB,EAFI,SAGJI,EAHI,MAIJe,EAJI,MAKJC,EALI,SAMJC,EANI,SAOJC,EAPI,cAQJC,EARI,cASJC,EATI,aAUJC,EAVI,QAWJC,EAXI,cAYJC,EAZI,eAaJC,EAbI,cAcJb,GACEc,KAAKkB,MAAMG,WAEf,OAAO,IAAIlC,EACTE,EACAlB,EACAI,EACAe,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAb,EAEH,E,2hBCxYCoC,EAAU,CAAC,EAEfA,EAAQC,kBAAoB,IAC5BD,EAAQE,cAAgB,IAElBF,EAAQG,OAAS,SAAc,KAAM,QAE3CH,EAAQI,OAAS,IACjBJ,EAAQK,mBAAqB,IAEhB,IAAI,IAASL,GAKnB,QAAe,KAAW,WAAiB,gBAAiBM,ECInE,MAAMC,EAAYvG,EAAAA,QAAAA,GAAAA,WAAH,gEAAGA,EAAU,QAAC,SAAEwG,EAAF,MAAYpG,GAAb,SAAyBC,EAAAA,EAAAA,KAAxB,CAAD,6FACjBmG,EAAWpG,EAAMqG,MAAMC,iBAAiBtG,EAAMM,OAAOiG,MAAMC,WAAY,MAAQ,eAC7EJ,EAAW,GAAM,EAGjBA,EAAWpG,EAAMqG,MAAMC,iBAAiBtG,EAAMM,OAAOiG,MAAME,cAAe,MAAQ,eAI7EL,EAAW,SAAW,SATZ,IAa5B,MAAMM,UAAmBC,EAAAA,UAKvBjD,YAAYkD,GACVC,MAAMD,GAENtC,KAAKwC,MAAQ,CACXC,kBAAkB,EAErB,CAEDC,SACE,MAAM,iBAAED,GAAqBzC,KAAKwC,OAC5B,QAAEG,GAAY3C,KAAKsC,MACnBM,EAAaD,EAAQE,OAAS,GAAK,cACzC,IAAIC,EAAgB,CAAEC,OAAQ,KAAMpF,QAAS,KAAM0B,GAAI,MAUvD,OARIsD,EAAQK,aAAaD,QAAUE,EAAAA,EAAAA,kBAAoCN,EAAQK,aAAaD,OAAOA,UACjGD,EAAgB,CACdC,OAAQJ,EAAQK,aAAaD,OAAOA,OACpCpF,QAASgF,EAAQK,aAAaD,OAAOpF,QACrC0B,GAAIsD,EAAQO,UAKd,gBAACrB,EAAD,CAAWC,UAAWa,EAAQE,QAC5B,sBAAIM,UAAWC,EAAAA,aACZT,EAAQE,OAEL,gBAAC,IAAD,CAAM7F,GAAII,EAAAA,GAAAA,OAAAA,SAAAA,OAA8BuF,EAAQO,UAC7CP,EAAQU,WAGXV,EAAQU,WAEd,0BACE,gBAACC,EAAA,EAAD,CAAiBP,OAAQD,EAAcC,OACtBpF,QAASmF,EAAcnF,QACvB0B,GAAIyD,EAAczD,GAClBkE,SAAUZ,EAAQa,aAErC,0BACE,gBAACC,EAAA,EAAD,CAAqBC,gBAAiBf,EAAQK,aAAaW,mBAD7D,IAEGhB,EAAQK,aAAaW,kBAExB,0BACGlB,EACG,gBAAC,KAAD,CAAcmB,SAAUjB,EAAQa,YAChC,gBAAC,KAAD,CAAWI,SAAUjB,EAAQa,aAEnC,0BACGb,EAAQO,QACRN,GAEH,0BACGD,EAAQkB,iBAEX,0BACE,gBAAC,KAAD,KACE,gBAAC,IAAD,CAAe7G,GAAK,GAAEI,EAAAA,GAAAA,OAAAA,SAAAA,0BAAiDuF,EAAQO,WAC7E,gBAAC,KAAD,CAAQY,OAAO,SAAS5G,QAAQ,QAAhC,mBAEF,gBAAC,IAAD,CAAeF,GAAII,EAAAA,GAAAA,kBAA0B,wBAAuBuF,EAAQO,UAAW,WAAY,CAAEa,SAAU,UAC7G,gBAAC,KAAD,CAAQD,OAAO,SAAS5G,QAAQ,QAAhC,oBAMX,E,YAxEGkF,E,EAAAA,Y,EACe,CACjBO,QAASqB,IAAAA,OAAAA,Y,6FAyEb,U,oBC3GI,EAAU,CAAC,EAEf,EAAQzC,kBAAoB,IAC5B,EAAQC,cAAgB,IAElB,EAAQC,OAAS,SAAc,KAAM,QAE3C,EAAQC,OAAS,IACjB,EAAQC,mBAAqB,IAEhB,IAAI,IAAS,GAKnB,QAAe,KAAW,WAAiB,gBAAiBC,E,wHCCnE,MAAMqC,GAAe3I,EAAAA,EAAAA,SAAO4I,EAAAA,IAAV,+EAAG5I,CAAH,mDAQZ6I,EAAa7I,EAAAA,QAAAA,GAAAA,WAAH,kEAAGA,CAAH,yEAGZ2I,GACe3B,GAAWA,EAAM8B,OAAS,UAAY,UAInDH,GAMOI,EAAa,CAAC,GAAI,GAAI,GAAI,KAEvC,MAAMC,UAAoBjC,EAAAA,UAAgB,oEAabkC,IACzB,MAAM,KAAEC,GAASxE,KAAKsC,MAMtB,OAAQkC,EAAKD,QAAUA,EALN,CACfE,IAAK,mBACLC,KAAM,kBAGgCF,EAAKG,OAAS,MAAtD,IApBsC,4BAuBnBC,IACnB,MAAM,aAAEC,EAAF,KAAgBL,GAASxE,KAAKsC,MAC9BwC,EAAoB,CACxBzB,UAAW,OACX,6BAA8B,SAC9B,gCAAiC,mBACjCG,UAAW,YACXN,QAAS,UACTW,gBAAiB,mBAGnB,OACE,gBAAC,KAAD,CAAOkB,SAAO,EAACC,YAAU,EAAC7B,UAAWC,EAAAA,aACnC,6BACE,0BACG6B,OAAOC,KAAKJ,GAAmBpI,KAAKiG,GACnC,gBAACwB,EAAD,CAAYgB,QAASN,EAAalC,GAAUyB,OAAQI,EAAKD,QAAU5B,EAAS5F,IAAK4F,GAC9EmC,EAAkBnC,GADrB,IAC+B,gBAACsB,EAAD,CAAc/D,KAAMF,KAAKoF,wBAAwBzC,QAGlF,sBAAIQ,UAAWC,EAAAA,SAAf,OAGJ,6BACGwB,GAbP,IAlCsC,+BAqDjB,KACrB,MAAM,WAAES,GAAerF,KAAKsC,MACtBgD,EAAoBD,EAAa,+CAAiD,KAExF,OAAO,gBAAC,KAAD,uEAAuEC,EAAvE,IAAP,GAzDsC,CA4DxC5C,SACE,MAAM,SAAEkC,EAAF,WAAYS,EAAZ,WAAwBE,EAAxB,MAAoCC,EAApC,cAA2CC,EAA3C,aAA0DC,EAA1D,mBAAwEC,GAAuB3F,KAAKsC,MACpGsD,EAAchB,EAASlI,KAAKiG,GAAY,gBAAC,EAAD,CAAY5F,IAAK4F,EAAQO,QAASP,QAASA,MACnFkD,EAAsBR,EAAa,UAAY,OAC/CS,EAAeF,EAAYG,OAAS,EAAI/F,KAAKgG,kBAAkBJ,GAAe5F,KAAKiG,uBAEzF,OACE,2BACE,uBAAK9C,UAAWC,EAAAA,gBACd,gBAAC8C,EAAA,EAAD,CAAmBV,MAAOA,EACPW,SAAUV,EACVW,QAASX,GAC1B,gBAAC,KAAD,CAAQvI,QAAQ,UACRiI,QAASQ,EACTxC,UAAWC,EAAAA,wBAChByC,EAHH,wBAQJ,gBAAC,KAAD,CAAeQ,UAAWhC,EACXiC,WAAYf,EAAWgB,MACvBC,SAAUd,GACvB,gBAAC,KAAD,KACE,gBAAC,KAAD,CAAKe,GAAI,IACNX,KAMZ,E,EA3FGxB,EAAAA,YACe,CACjBM,SAAUZ,IAAAA,MAAAA,WACVqB,WAAYrB,IAAAA,KAAAA,WACZuB,WAAYvB,IAAAA,OAAAA,WACZwB,MAAOxB,IAAAA,OAAAA,WACPQ,KAAMR,IAAAA,OAAAA,WACN0B,aAAc1B,IAAAA,KAAAA,WACdyB,cAAezB,IAAAA,KAAAA,WACfa,aAAcb,IAAAA,KAAAA,WACd2B,mBAAoB3B,IAAAA,KAAAA,aAoFxB,WCrHM0C,GAAuBC,IAAiB,oCAE5CC,UAAW,CACTC,yBAA0B7C,IAAAA,OAAAA,YAG5B8C,OAAQ,CAACC,IAAAA,QAAeC,EAAAA,IAExBC,oBACEjH,KAAKkH,gBAAgB,CAAC,GACtBlH,KAAKmH,SAAWC,aAAY,IAAMpH,KAAKkH,gBAAgB,CAAC,IAAIlH,KAAKqH,qBAClE,EAEDC,uBACMtH,KAAKmH,UACPI,cAAcvH,KAAKmH,SAEtB,EAEDK,iBAAiBjD,GACf,MAAO,KACLvE,KAAKkH,gBAAgB,CACnBO,UAAWlD,EAEXI,MAAQ3E,KAAKwC,MAAMgC,KAAKD,QAAUA,GAAmC,QAA1BvE,KAAKwC,MAAMgC,KAAKG,MAAkB,OAAkB,OAHjG,CAMH,EAED+C,iBAAiBC,EAAMC,GACrB5H,KAAKkH,gBAAgB,CAAES,KAAMA,EAAMC,SAAUA,GAC9C,EAEDC,oBAAmD,IAAjCrC,EAAiC,uDAAzB,GAAIsC,EAAqB,uDAAV,OACvC,MAAM,UAAEC,GAAc/H,KAAKsC,MAAMuE,yBAEjCkB,IAEA/H,KAAKkH,gBAAgB,CAAE1B,MAAOA,IAASwC,QAAQF,EAChD,EAEDnC,qBACE,MAAM,UAAEoC,GAAc/H,KAAKsC,MAAMuE,yBAEjCkB,IAEA/H,KAAKkH,gBAAgB,CAAE7B,YAAarF,KAAKwC,MAAM6C,YAChD,EAED6B,gBAAgB,GAAyD,IAAzD,MAAE1B,EAAF,KAASmC,EAAT,SAAeC,EAAf,WAAyBvC,EAAzB,UAAqCoC,EAArC,MAAgD9C,GAAS,EACvE,MAEMrD,EAAU,CACdkE,WAH+B5D,IAAV4D,EAAsBxF,KAAKwC,MAAMgD,MAAQA,EAI9DH,WAAY,QAGVrF,KAAKwC,MAAMgC,OACblD,EAAQmG,UAAYA,GAAazH,KAAKwC,MAAMgC,KAAKD,MACjDjD,EAAQqD,MAAQA,GAAS3E,KAAKwC,MAAMgC,KAAKG,OAG3C,MAAM,yBAAEkC,GAA6B7G,KAAKsC,MAE1ChB,EAAQsG,SAAWA,GAAYf,EAAyBe,SACxDtG,EAAQ+D,gBAA4BzD,IAAfyD,EAA2BrF,KAAKwC,MAAM6C,WAAaA,EAKxE,IAAI4C,EAAgB,EAQpB,OAXuB3G,EAAQsG,WAAaf,EAAyBe,UAChEtG,EAAQ+D,aAAerF,KAAKwC,MAAM6C,YAClC/D,EAAQkE,QAAUxF,KAAKwC,MAAMgD,QAIhCyC,EAAgBN,GAAQd,EAAyBc,MAGnDrG,EAAQqG,KAAOM,EAERC,EAAAA,EAAAA,cAA8B5G,EACtC,EAED+F,qBAAsB,IAEtB3E,SACE,MAAM,SAAEkC,EAAF,WAAYS,EAAZ,WAAwBE,EAAxB,MAAoCC,EAApC,KAA2ChB,GAASxE,KAAKwC,MAI/D,OAFmBoC,EAGV,gBAAC,KAAD,MAIP,gBAAC,GAAD,CAAaA,SAAUA,EACVS,WAAYA,EACZE,WAAYA,EACZC,MAAOA,EACPhB,KAAMA,EACNkB,aAAc1F,KAAK0H,iBACnBjC,cAAezF,KAAK6H,kBACpBhD,aAAc7E,KAAKwH,iBACnB7B,mBAAoB3F,KAAK2F,oBAEzC,IAGH,IAAewC,EAAAA,EAAAA,GAA6BzB,GAAsB,CAAEL,UAAWhC,I,sCCxG/E,MA4CA,GA5CqB,KACnB,MAAO+D,EAAaC,IAAkBC,EAAAA,EAAAA,YAChCC,GAAcC,EAAAA,EAAAA,KACdC,GAA6BC,EAAAA,EAAAA,IAAYH,aAAD,EAACA,EAAa1L,YAAa,CAAC,oCAQ1E,OANA8L,EAAAA,EAAAA,YAAU,KACJF,GACFG,EAAAA,EAAAA,eAA2B,mBAAmBC,KAAKR,EACpD,GACA,CAACI,IAGF,gBAAC,KAAD,CAAe7L,MAAM,YACnB,gBAACkM,GAAA,EAAD,MACA,gBAAC,KAAD,CAAYlM,MAAM,oBACNmM,kBAAmB,CACjBnM,MAAO,wBACPD,KAAMqM,GAAAA,EAAAA,MAAAA,oBAElB,qIAEGP,IACCL,EACE,4BACE,2BADF,2CAGE,gBAAC,IAAD,CAAMpL,GAAII,EAAAA,GAAAA,OAAAA,MAAAA,OAAAA,KAAgCgL,EAAY/I,KAAtD,mCACkC,6CADlC,UAIA,gBAAC,KAAD,SAKV,gBAAC,KAAD,CAAK8D,UAAU,WACb,gBAAC,KAAD,CAAKsD,GAAI,IACP,gBAAC,GAAD,QA1BR,C,8NCyDF,MAQajJ,GAAeyL,EAAAA,EAAAA,IAC1B,cACA,IAAMlC,IAAAA,cAAkC,CACtC1J,OAAQ,CAAE6L,aAAa,GACvBnL,KAAM,CAAEmL,aAAa,GACrBhL,eAAgB,CAAEgL,aAAa,GAC/B9K,OAAQ,CAAE8K,aAAa,GACvB1K,OAAQ,CAAE0K,aAAa,GACvBzK,eAAgB,CAAEyK,aAAa,GAC/BxK,YAAa,CAAEwK,aAAa,GAC5BtK,WAAY,CAAEsK,aAAa,GAC3BrK,YAAa,CAAEqK,aAAa,GAC5BlK,mBAAoB,CAAEkK,aAAa,GACnCnK,UAAW,CAAEmK,aAAa,GAC1BjK,UAAW,CAAEiK,aAAa,QAIJC,EAAAA,EAAAA,IAAe,cAAc,IAAMpC,IAAAA,YAAmB,CAC9EqC,YAAa,CAAC5L,GAEdH,OAAOK,GACL,MAAM2L,GAAMC,EAAAA,EAAAA,IAAWC,EAAAA,EAAAA,mBAAAA,SAAsCF,KACvDG,GAAUC,EAAAA,EAAAA,IAAM,OAAQJ,EAAK3L,GAGnC,OAFAF,EAAaH,OAAOmM,QAAQA,GAErBA,CACR,EAEDzL,KAAKsB,GACH,MAAMgK,GAAMC,EAAAA,EAAAA,IAAWC,EAAAA,EAAAA,mBAAAA,KAAkCG,mBAAmBrK,IAAKgK,KAC3EG,GAAUC,EAAAA,EAAAA,IAAM,MAAOJ,GAAKR,KAAKc,EAAAA,EAAAA,UAIvC,OAFAnM,EAAaO,KAAKyL,QAAQA,GAEnBA,CACR,EAEDtL,eAAeF,GACb,MAAMqL,GAAMC,EAAAA,EAAAA,IAAWC,EAAAA,EAAAA,mBAAAA,eAA4CG,mBAAmB1L,IAASqL,KACzFG,GAAUC,EAAAA,EAAAA,IAAM,MAAOJ,GAAKR,KAAKc,EAAAA,EAAAA,UAIvC,OAFAnM,EAAaU,eAAesL,QAAQA,GAE7BA,CACR,EAEDpL,OAAOJ,EAAgBN,GACrB,MAAM2L,GAAMC,EAAAA,EAAAA,IAAWC,EAAAA,EAAAA,mBAAAA,OAAoCG,mBAAmB1L,IAASqL,KACjFG,GAAUC,EAAAA,EAAAA,IAAM,MAAOJ,EAAK3L,GAGlC,OAFAF,EAAaY,OAAOoL,QAAQA,GAErBA,CACR,EAEDhL,OAAOR,GACL,MAAMqL,GAAMC,EAAAA,EAAAA,IAAWC,EAAAA,EAAAA,mBAAAA,OAAoCG,mBAAmB1L,IAASqL,KACjFG,GAAUC,EAAAA,EAAAA,IAAM,SAAUJ,GAIhC,OAFA7L,EAAagB,OAAOgL,QAAQA,GAErBA,CACR,EAED/K,eAAeT,EAAgB4L,GAC7B,MAAMP,GAAMC,EAAAA,EAAAA,IAAWC,EAAAA,EAAAA,mBAAAA,eAA4CG,mBAAmB1L,IAASqL,KACzFG,GAAUC,EAAAA,EAAAA,IAAM,MAAOJ,EAAKO,GAGlC,OAFApM,EAAaiB,eAAe+K,QAAQA,GAE7BA,CACR,EAED9K,YAAYV,EAAgBW,GAC1B,MAAM0K,GAAMC,EAAAA,EAAAA,IAAWC,EAAAA,EAAAA,mBAAAA,aAA0CG,mBAAmB1L,GAAS0L,mBAAmB/K,IAAY0K,KACtHG,GAAUC,EAAAA,EAAAA,IAAM,OAAQJ,GAG9B,OAFA7L,EAAakB,YAAY8K,QAAQA,GAE1BA,CACR,EAED5K,WAAWZ,GACT,MAAMqL,GAAMC,EAAAA,EAAAA,IAAWC,EAAAA,EAAAA,mBAAAA,YAAyCG,mBAAmB1L,IAASqL,KACtFG,GAAUC,EAAAA,EAAAA,IAAM,MAAOJ,GAAKR,MAAMgB,GAAaA,EAASC,SAG9D,OAFAtM,EAAaoB,WAAW4K,QAAQA,GAEzBA,CACR,EAED3K,YAAYb,EAAgB+L,GAC1B,MAAMV,GAAMC,EAAAA,EAAAA,IAAWC,EAAAA,EAAAA,mBAAAA,aAA0CG,mBAAmB1L,GAAS0L,mBAAmBK,IAAUV,KACpHG,GAAUC,EAAAA,EAAAA,IAAM,SAAUJ,GAGhC,OAFA7L,EAAaqB,YAAY2K,QAAQA,GAE1BA,CACR,EAEDzK,YAA4D,IAAlDyG,EAAkD,uDAAnC,CAAC,EACxB,MAAM6D,EAzGO,KAA8B,IAA7B,IAAEA,EAAM,GAAR,MAAY7D,EAAQ,CAAC,GAAQ,EAC7C,MAAMwE,EAAM,IAAIC,IAAJ,CAAQZ,GAIpB,OAFAW,EAAIxE,MAAMA,IAEH8D,EAAAA,EAAAA,IAAWU,EAAIE,WAAtB,EAoGcC,CAAS,CAAEd,IAAKE,EAAAA,EAAAA,mBAAAA,OAAoCF,IAAK7D,UAC/DgE,GAAUC,EAAAA,EAAAA,IAAM,MAAOJ,GAAKR,MAAK,QAAC,MACtCuB,GADqC,SAEjC9J,EAAAA,KAAe8J,EAAM1N,KAAKgB,GAASyB,EAAAA,EAAAA,SAAsBzB,KAFxB,IAKvC,OAFAF,EAAauB,UAAUyK,QAAQA,GAExBA,CACR,EAEDxK,mBAAmB,GAIqB,IAJrB,KACjB2I,EADiB,QAEjB0C,EAFiB,MAGjB7E,GACsC,EACtC,MAAM6D,GAAMiB,EAAAA,EAAAA,GAAcf,EAAAA,EAAAA,mBAAAA,YAAyCF,IAAK1B,EAAM0C,EAAS7E,GAEjFgE,GAAUC,EAAAA,EAAAA,IAAM,OAAOH,EAAAA,EAAAA,IAAWD,IAAMR,MAAMgB,IAAD,CACjDU,UAAWV,EAASW,QAAQC,WAAatL,EAAAA,EAAAA,SAAsB0K,EAASW,QAAQC,iBAAc7I,EAC9F8I,KAAMpK,EAAAA,KAAeuJ,EAASO,MAAM1N,KAAKgB,GAASyB,EAAAA,EAAAA,SAAsBzB,MACxE6H,WAAY,CACVoC,KAAMkC,EAASlC,KACf0C,QAASR,EAASc,SAClBnF,MAAOqE,EAASrE,MAChBoF,MAAOf,EAASe,MAChBrE,MAAOsD,EAAStD,WAMpB,OAFA/I,EAAawB,mBAAmBwK,QAAQA,GAEjCA,CACR,EAEDvK,UAAUjB,EAAgBkB,GACxB,MAAMmK,GAAMC,EAAAA,EAAAA,IAAWC,EAAAA,EAAAA,mBAAAA,UAAuCvL,EAAQkB,GAAemK,KAC/EG,GAAUC,EAAAA,EAAAA,IAAM,MAAOJ,GAG7B,OAFA7L,EAAayB,UAAUuK,QAAQA,GAExBA,CACR,K,qFC/OCqB,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAO1L,GAAI,mQAAoQ,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,gEAAgE,MAAQ,GAAG,SAAW,sHAAsH,eAAiB,CAAC,0QAA0Q,WAAa,MAE7zBwL,EAAwBG,OAAS,CAChC,YAAe,uBACf,eAAkB,uBAClB,QAAW,uBACX,uBAA0B,wBAE3B,S,mFCVIH,E,MAA0B,GAA4B,KAE1DA,EAAwBC,KAAK,CAACC,EAAO1L,GAAI,2DAA4D,GAAG,CAAC,QAAU,EAAE,QAAU,CAAC,+DAA+D,MAAQ,GAAG,SAAW,yBAAyB,eAAiB,CAAC,2DAA2D,WAAa,MAExUwL,EAAwBG,OAAS,CAChC,YAAe,wBAEhB,S","sources":["webpack://graylog-web-interface/./src/components/common/PageNavigation.tsx","webpack://graylog-web-interface/./src/components/sidecars/common/SidecarsPageNavigation.tsx","webpack://graylog-web-interface/./src/domainActions/users/UsersDomain.ts","webpack://graylog-web-interface/./src/logic/users/UserOverview.ts","webpack://graylog-web-interface/./src/components/sidecars/sidecars/SidecarRow.css?988e","webpack://graylog-web-interface/./src/components/sidecars/sidecars/SidecarRow.jsx","webpack://graylog-web-interface/./src/components/sidecars/sidecars/SidecarList.css?fbbc","webpack://graylog-web-interface/./src/components/sidecars/sidecars/SidecarList.jsx","webpack://graylog-web-interface/./src/components/sidecars/sidecars/SidecarListContainer.jsx","webpack://graylog-web-interface/./src/pages/SidecarsPage.jsx","webpack://graylog-web-interface/./src/stores/users/UsersStore.ts","webpack://graylog-web-interface/./src/components/sidecars/sidecars/SidecarList.css","webpack://graylog-web-interface/./src/components/sidecars/sidecars/SidecarRow.css"],"sourcesContent":["/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport * as React from 'react';\nimport styled, { css } from 'styled-components';\n\nimport { Button, ButtonToolbar } from 'components/bootstrap';\nimport { LinkContainer } from 'components/common/router';\nimport { IfPermitted } from 'components/common';\nimport NavItemStateIndicator, {\n  hoverIndicatorStyles,\n  activeIndicatorStyles,\n} from 'components/common/NavItemStateIndicator';\n\nconst Container = styled(ButtonToolbar)`\n  margin-bottom: 10px;\n`;\n\nconst StyledButton = styled(Button)(({ theme }) => css`\n  font-family: ${theme.fonts.family.navigation};\n  font-size: ${theme.fonts.size.navigation};\n\n  &&&& {\n    color: ${theme.colors.variant.darker.default};\n    \n    :hover, :focus {\n      text-decoration: none;  \n    }\n\n    :hover {\n      ${hoverIndicatorStyles(theme)}\n    }\n\n    &.active {\n      color: ${theme.colors.global.textDefault};\n\n      ${activeIndicatorStyles(theme)}\n\n      :hover, :focus {\n        ${activeIndicatorStyles(theme)}\n      }\n    }\n  }\n`);\n\nStyledButton.displayName = 'Button';\n\ntype Props = {\n  /**\n   * List of nav items. Define permissions, if the item should only be displayed for users with specific permissions.\n   * By default, an item is active if the current URL starts with the item URL.\n   * If you only want to display an item as active only when its path matches exactly, set `exactPathMatch` to true.\n   */\n  items: Array<{\n    title: string,\n    path: string,\n    permissions?: string | Array\n    exactPathMatch?: boolean,\n  }>\n}\n\n/**\n * Simple tab navigation to allow navigating to subareas of a page.\n */\nconst PageNavigation = ({ items }: Props) => (\n  \n    {items.map(({ path, title, permissions, exactPathMatch }) => {\n      if (!path) {\n        return null;\n      }\n\n      return (\n        \n          \n            \n              \n                {title}\n              \n            \n          \n        \n      );\n    })}\n  \n);\n\nexport default PageNavigation;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport * as React from 'react';\n\nimport PageNavigation from 'components/common/PageNavigation';\nimport Routes from 'routing/Routes';\nimport { Row } from 'components/bootstrap';\n\nconst NAV_ITEMS = [\n  { title: 'Overview', path: Routes.SYSTEM.SIDECARS.OVERVIEW, exactPathMatch: true },\n  { title: 'Administration', path: Routes.SYSTEM.SIDECARS.ADMINISTRATION },\n  { title: 'Configuration', path: Routes.SYSTEM.SIDECARS.CONFIGURATION },\n];\n\nconst SidecarsPageNavigation = () => (\n  \n    \n  \n);\n\nexport default SidecarsPageNavigation;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport { UsersActions } from 'stores/users/UsersStore';\n\nimport notifyingAction from '../notifyingAction';\n\nconst create = notifyingAction({\n  action: UsersActions.create,\n  success: (user) => ({\n    message: `User \"${user?.first_name} ${user?.last_name}\" was created successfully`,\n  }),\n  error: (error, user) => ({\n    message: `Creating user \"${user?.first_name} ${user?.last_name}\" failed with status: ${error}`,\n  }),\n});\n\nconst load = notifyingAction({\n  action: UsersActions.load,\n  error: (error, userId) => ({\n    message: `Loading user with id \"${userId}\" failed with status: ${error}`,\n  }),\n  notFoundRedirect: true,\n});\n\nconst loadByUsername = notifyingAction({\n  action: UsersActions.loadByUsername,\n  error: (error, username) => ({\n    message: `Loading user with username \"${username}\" failed with status: ${error}`,\n  }),\n  notFoundRedirect: true,\n});\n\nconst update = notifyingAction({\n  action: UsersActions.update,\n  success: (_userId, _payload, fullName) => ({\n    message: `User \"${fullName}\" was updated successfully`,\n  }),\n  error: (error, _userId, _payload, fullName) => ({\n    message: `Updating user \"${fullName}\" failed with status: ${error}`,\n  }),\n});\n\nconst deleteAction = notifyingAction({\n  action: UsersActions.delete,\n  success: (_userId, fullName) => ({\n    message: `User \"${fullName}\" was deleted successfully`,\n  }),\n  error: (error, _userId, fullName) => ({\n    message: `Deleting user \"${fullName}\" failed with status: ${error}`,\n  }),\n});\n\nconst changePassword = notifyingAction({\n  action: UsersActions.changePassword,\n  success: () => ({\n    message: 'Password was changed successfully ',\n  }),\n  error: (error, userId) => ({\n    message: `Changing password for user with id \"${userId}\" failed with status: ${error}`,\n  }),\n});\n\nconst createToken = notifyingAction({\n  action: UsersActions.createToken,\n  success: (_userId, tokenName) => ({\n    message: `Token \"${tokenName}\" created successfully`,\n  }),\n  error: (error, userId, tokenName) => ({\n    message: `Creating token \"${tokenName}\" for user with id \"${userId}\" failed with status: ${error}`,\n  }),\n});\n\nconst loadTokens = notifyingAction({\n  action: UsersActions.loadTokens,\n  error: (error, userId) => ({\n    message: `Loading tokens for user with id \"${userId}\" failed with status: ${error}`,\n  }),\n});\n\nconst deleteToken = notifyingAction({\n  action: UsersActions.deleteToken,\n  success: (_userId, _tokenId, tokenName) => ({\n    message: `Token \"${tokenName}\" deleted successfully`,\n  }),\n  error: (error, userId, _tokenId, tokenName) => ({\n    message: `Deleting token \"${tokenName}\" for user with id \"${userId}\" failed with status: ${error}`,\n  }),\n});\n\nconst loadUsers = notifyingAction({\n  action: UsersActions.loadUsers,\n  error: (error) => ({\n    message: `Loading users failed with status: ${error}`,\n  }),\n});\n\nconst loadUsersPaginated = notifyingAction({\n  action: UsersActions.loadUsersPaginated,\n  error: (error) => ({\n    message: `Loading users failed with status: ${error}`,\n  }),\n});\n\nconst setStatus = notifyingAction({\n  action: UsersActions.setStatus,\n  success: (userId, accountStatus) => ({\n    message: `User \"${userId}\" was set to ${accountStatus}`,\n  }),\n  error: (error, userId, accountStatus) => ({\n    message: `Updating user (\"${userId}\") to ${accountStatus} failed with status: ${error}`,\n  }),\n});\n\nexport default {\n  create,\n  load,\n  loadByUsername,\n  update,\n  delete: deleteAction,\n  changePassword,\n  createToken,\n  loadTokens,\n  deleteToken,\n  loadUsers,\n  loadUsersPaginated,\n  setStatus,\n};\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport type { $PropertyType } from 'utility-types';\nimport * as Immutable from 'immutable';\n\nexport type AccountStatus = 'enabled' | 'disabled' | 'deleted';\n\nexport type UserOverviewJSON = {\n  id: string;\n  username: string;\n  full_name: string;\n  email: string;\n  external_user: boolean | null | undefined;\n  roles: Array;\n  read_only: boolean | null | undefined;\n  session_active: boolean | null | undefined;\n  client_address: string;\n  last_activity: string | null | undefined;\n  enabled: boolean;\n  auth_service_id: string;\n  auth_service_uid: string;\n  account_status: AccountStatus;\n};\n\ntype InternalState = {\n  id: string;\n  username: string;\n  fullName: string;\n  email: string;\n  roles: Immutable.Set;\n  readOnly: boolean;\n  external: boolean;\n  sessionActive: boolean;\n  clientAddress: string;\n  lastActivity: string | null | undefined;\n  enabled: boolean;\n  authServiceId: string;\n  authServiceUid: string;\n  accountStatus: AccountStatus;\n};\n\nexport default class UserOverview {\n  _value: InternalState;\n\n  constructor(\n    id: $PropertyType,\n    username: $PropertyType,\n    fullName: $PropertyType,\n    email: $PropertyType,\n    roles: $PropertyType,\n    readOnly: $PropertyType,\n    external: $PropertyType,\n    sessionActive: $PropertyType,\n    clientAddress: $PropertyType,\n    lastActivity: $PropertyType,\n    enabled: $PropertyType,\n    authServiceId: $PropertyType,\n    authServiceUid: $PropertyType,\n    accountStatus: $PropertyType,\n  ) {\n    this._value = {\n      id,\n      username,\n      fullName,\n      email,\n      roles,\n      readOnly,\n      external,\n      sessionActive,\n      clientAddress,\n      lastActivity,\n      enabled,\n      authServiceId,\n      authServiceUid,\n      accountStatus,\n    };\n  }\n\n  get id() {\n    return this._value.id;\n  }\n\n  get username() {\n    return this._value.username;\n  }\n\n  get name() {\n    return this._value.username;\n  }\n\n  get fullName() {\n    return this._value.fullName;\n  }\n\n  get description() {\n    return this._value.fullName;\n  }\n\n  get email() {\n    return this._value.email;\n  }\n\n  get roles() {\n    return this._value.roles;\n  }\n\n  get readOnly() {\n    return this._value.readOnly;\n  }\n\n  get external() {\n    return this._value.external;\n  }\n\n  get sessionActive() {\n    return this._value.sessionActive;\n  }\n\n  get clientAddress() {\n    return this._value.clientAddress;\n  }\n\n  get lastActivity() {\n    return this._value.lastActivity;\n  }\n\n  get enabled() {\n    return this._value.enabled;\n  }\n\n  get authServiceId() {\n    return this._value.authServiceId;\n  }\n\n  get authServiceUid() {\n    return this._value.authServiceUid;\n  }\n\n  get accountStatus() {\n    return this._value.accountStatus;\n  }\n\n  toBuilder() {\n    const {\n      id,\n      username,\n      fullName,\n      email,\n      roles,\n      readOnly,\n      external,\n      sessionActive,\n      clientAddress,\n      lastActivity,\n      enabled,\n      authServiceId,\n      authServiceUid,\n      accountStatus,\n    } = this._value;\n\n    // eslint-disable-next-line @typescript-eslint/no-use-before-define\n    return new Builder(Immutable.Map({\n      id,\n      username,\n      fullName,\n      email,\n      roles,\n      readOnly,\n      external,\n      sessionActive,\n      clientAddress,\n      lastActivity,\n      enabled,\n      authServiceId,\n      authServiceUid,\n      accountStatus,\n    }));\n  }\n\n  static create(\n    id: $PropertyType,\n    username: $PropertyType,\n    fullName: $PropertyType,\n    email: $PropertyType,\n    roles: $PropertyType,\n    readOnly: $PropertyType,\n    external: $PropertyType,\n    sessionActive: $PropertyType,\n    clientAddress: $PropertyType,\n    lastActivity: $PropertyType,\n    enabled: $PropertyType,\n    authServiceId: $PropertyType,\n    authServiceUid: $PropertyType,\n    accountStatus: $PropertyType,\n  ) {\n    return new UserOverview(\n      id,\n      username,\n      fullName,\n      email,\n      roles,\n      readOnly,\n      external,\n      sessionActive,\n      clientAddress,\n      lastActivity,\n      enabled,\n      authServiceId,\n      authServiceUid,\n      accountStatus,\n    );\n  }\n\n  toJSON(): UserOverviewJSON {\n    const {\n      id,\n      username,\n      fullName,\n      email,\n      roles,\n      readOnly,\n      external,\n      sessionActive,\n      clientAddress,\n      lastActivity,\n      enabled,\n      authServiceId,\n      authServiceUid,\n      accountStatus,\n    } = this._value;\n\n    return {\n      id,\n      username,\n      full_name: fullName,\n      email,\n      roles: roles.toArray(),\n      read_only: readOnly,\n      external_user: external,\n      session_active: sessionActive,\n      client_address: clientAddress,\n      last_activity: lastActivity,\n      enabled,\n      auth_service_id: authServiceId,\n      auth_service_uid: authServiceUid,\n      account_status: accountStatus,\n    };\n  }\n\n  static fromJSON(value: UserOverviewJSON) {\n    const {\n      id,\n      username,\n      full_name: fullName,\n      email,\n      roles,\n      read_only: readOnly,\n      external_user: external,\n      session_active: sessionActive,\n      client_address: clientAddress,\n      last_activity: lastActivity,\n      enabled,\n      auth_service_id: authServiceId,\n      auth_service_uid: authServiceUid,\n      account_status: accountStatus,\n    } = value;\n\n    return UserOverview.create(id,\n      username,\n      fullName,\n      email,\n      Immutable.Set(roles),\n      readOnly ?? false,\n      external ?? false,\n      sessionActive ?? false,\n      clientAddress,\n      lastActivity,\n      enabled,\n      authServiceId,\n      authServiceUid,\n      accountStatus);\n  }\n\n  // eslint-disable-next-line @typescript-eslint/no-use-before-define\n  static builder(): Builder {\n    // eslint-disable-next-line @typescript-eslint/no-use-before-define\n    return new Builder();\n  }\n}\n\ntype BuilderState = Immutable.Map;\n\nclass Builder {\n  value: BuilderState;\n\n  constructor(value: BuilderState = Immutable.Map()) {\n    this.value = value;\n  }\n\n  id(value: $PropertyType) {\n    return new Builder(this.value.set('id', value));\n  }\n\n  username(value: $PropertyType) {\n    return new Builder(this.value.set('username', value));\n  }\n\n  fullName(value: $PropertyType) {\n    return new Builder(this.value.set('fullName', value));\n  }\n\n  email(value: $PropertyType) {\n    return new Builder(this.value.set('email', value));\n  }\n\n  roles(value: $PropertyType) {\n    return new Builder(this.value.set('roles', value));\n  }\n\n  readOnly(value: $PropertyType) {\n    return new Builder(this.value.set('readOnly', value));\n  }\n\n  external(value: $PropertyType) {\n    return new Builder(this.value.set('external', value));\n  }\n\n  sessionActive(value: $PropertyType) {\n    return new Builder(this.value.set('sessionActive', value));\n  }\n\n  clientAddress(value: $PropertyType) {\n    return new Builder(this.value.set('clientAddress', value));\n  }\n\n  lastActivity(value: $PropertyType) {\n    return new Builder(this.value.set('lastActivity', value));\n  }\n\n  enabled(value: $PropertyType) {\n    return new Builder(this.value.set('enabled', value));\n  }\n\n  authServiceId(value: $PropertyType) {\n    return new Builder(this.value.set('authServiceId', value));\n  }\n\n  authServiceUid(value: $PropertyType) {\n    return new Builder(this.value.set('authServiceUid', value));\n  }\n\n  accountStatus(value: $PropertyType) {\n    return new Builder(this.value.set('accountStatus', value));\n  }\n\n  build() {\n    const {\n      id,\n      username,\n      fullName,\n      email,\n      roles,\n      readOnly,\n      external,\n      sessionActive,\n      clientAddress,\n      lastActivity,\n      enabled,\n      authServiceId,\n      authServiceUid,\n      accountStatus,\n    } = this.value.toObject();\n\n    return new UserOverview(\n      id,\n      username,\n      fullName,\n      email,\n      roles,\n      readOnly,\n      external,\n      sessionActive,\n      clientAddress,\n      lastActivity,\n      enabled,\n      authServiceId,\n      authServiceUid,\n      accountStatus,\n    );\n  }\n}\n","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[6].use[1]!./SidecarRow.css\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[6].use[1]!./SidecarRow.css\";\n       export default content && content.locals ? content.locals : undefined;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport styled, { css } from 'styled-components';\n\nimport { Link, LinkContainer } from 'components/common/router';\nimport { Button, ButtonToolbar } from 'components/bootstrap';\nimport { RelativeTime, Timestamp } from 'components/common';\nimport Routes from 'routing/Routes';\nimport OperatingSystemIcon from 'components/sidecars/common/OperatingSystemIcon';\nimport StatusIndicator from 'components/sidecars/common/StatusIndicator';\nimport SidecarStatusEnum from 'logic/sidecar/SidecarStatusEnum';\n\nimport style from './SidecarRow.css';\n\nconst SidecarTR = styled.tr(({ inactive, theme }) => css`\n  color: ${inactive ? theme.utils.contrastingColor(theme.colors.table.background, 'AA') : 'currentColor'};\n  opacity: ${inactive ? 0.9 : 1};\n\n  &:nth-of-type(2n+1) {\n    color: ${inactive ? theme.utils.contrastingColor(theme.colors.table.backgroundAlt, 'AA') : 'currentColor'};\n  }\n\n  td:not(:last-child) {\n    font-style: ${inactive ? 'italic' : 'normal'};\n  }\n`);\n\nclass SidecarRow extends React.Component {\n  static propTypes = {\n    sidecar: PropTypes.object.isRequired,\n  };\n\n  constructor(props) {\n    super(props);\n\n    this.state = {\n      showRelativeTime: true,\n    };\n  }\n\n  render() {\n    const { showRelativeTime } = this.state;\n    const { sidecar } = this.props;\n    const annotation = sidecar.active ? '' : ' (inactive)';\n    let sidecarStatus = { status: null, message: null, id: null };\n\n    if (sidecar.node_details.status && SidecarStatusEnum.isValidStatusCode(sidecar.node_details.status.status)) {\n      sidecarStatus = {\n        status: sidecar.node_details.status.status,\n        message: sidecar.node_details.status.message,\n        id: sidecar.node_id,\n      };\n    }\n\n    return (\n      \n        \n          {sidecar.active\n            ? (\n              \n                {sidecar.node_name}\n              \n            )\n            : sidecar.node_name}\n        \n        \n          \n        \n        \n           \n          {sidecar.node_details.operating_system}\n        \n        \n          {showRelativeTime\n            ? \n            : }\n        \n        \n          {sidecar.node_id}\n          {annotation}\n        \n        \n          {sidecar.sidecar_version}\n        \n        \n          \n            \n              \n            \n            \n              \n            \n          \n        \n      \n    );\n  }\n}\n\nexport default SidecarRow;\n","\n      import API from \"!../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n      import domAPI from \"!../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n      import insertFn from \"!../../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n      import setAttributes from \"!../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n      import insertStyleElement from \"!../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n      import styleTagTransformFn from \"!../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n      import content, * as namedExport from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[6].use[1]!./SidecarList.css\";\n      \n      \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n      options.insert = insertFn.bind(null, \"head\");\n    \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[6].use[1]!./SidecarList.css\";\n       export default content && content.locals ? content.locals : undefined;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport styled from 'styled-components';\n\nimport { Button, Alert, Col, Row, Table } from 'components/bootstrap';\nimport { Icon, PaginatedList } from 'components/common';\nimport SidecarSearchForm from 'components/sidecars/common/SidecarSearchForm';\n\nimport SidecarRow from './SidecarRow';\nimport style from './SidecarList.css';\n\nconst SortableIcon = styled(Icon)`\n  && {\n    width: 12px;\n    margin-left: 5px;\n    line-height: 1;\n  }\n`;\n\nconst SortableTH = styled.th`\n  cursor: pointer;\n\n  ${SortableIcon} {\n    visibility: ${(props) => (props.sorted ? 'visible' : 'hidden')};\n  }\n\n  &:hover {\n    ${SortableIcon} {\n      visibility: visible;\n    }\n  }\n`;\n\nexport const PAGE_SIZES = [10, 25, 50, 100];\n\nclass SidecarList extends React.Component {\n  static propTypes = {\n    sidecars: PropTypes.array.isRequired,\n    onlyActive: PropTypes.bool.isRequired,\n    pagination: PropTypes.object.isRequired,\n    query: PropTypes.string.isRequired,\n    sort: PropTypes.object.isRequired,\n    onPageChange: PropTypes.func.isRequired,\n    onQueryChange: PropTypes.func.isRequired,\n    onSortChange: PropTypes.func.isRequired,\n    toggleShowInactive: PropTypes.func.isRequired,\n  };\n\n  _getTableHeaderSortIcon = (field) => {\n    const { sort } = this.props;\n    const iconSort = {\n      asc: 'sort-amount-down',\n      desc: 'sort-amount-up',\n    };\n\n    return (sort.field === field ? iconSort[sort.order] : 'sort');\n  };\n\n  formatSidecarList = (sidecars) => {\n    const { onSortChange, sort } = this.props;\n    const sidecarCollection = {\n      node_name: 'Name',\n      'node_details.status.status': 'Status',\n      'node_details.operating_system': 'Operating System',\n      last_seen: 'Last Seen',\n      node_id: 'Node Id',\n      sidecar_version: 'Sidecar Version',\n    };\n\n    return (\n      \n        \n          \n            {Object.keys(sidecarCollection).map((sidecar) => (\n              \n                {sidecarCollection[sidecar]} \n              \n            ))}\n            \n          \n        \n        \n          {sidecars}\n        \n      
 
\n );\n };\n\n formatEmptyListAlert = () => {\n const { onlyActive } = this.props;\n const showInactiveHint = (onlyActive ? ' and/or click on \"Include inactive sidecars\"' : null);\n\n return There are no sidecars to show. Try adjusting your search filter{showInactiveHint}.;\n };\n\n render() {\n const { sidecars, onlyActive, pagination, query, onQueryChange, onPageChange, toggleShowInactive } = this.props;\n const sidecarRows = sidecars.map((sidecar) => );\n const showOrHideInactive = (onlyActive ? 'Include' : 'Hide');\n const sidecarList = (sidecarRows.length > 0 ? this.formatSidecarList(sidecarRows) : this.formatEmptyListAlert());\n\n return (\n
\n
\n \n \n \n
\n\n \n \n \n {sidecarList}\n \n \n \n
\n );\n }\n}\n\nexport default SidecarList;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport React from 'react';\nimport PropTypes from 'prop-types';\n// eslint-disable-next-line no-restricted-imports\nimport createReactClass from 'create-react-class';\nimport Reflux from 'reflux';\n\nimport { Spinner } from 'components/common';\nimport withPaginationQueryParameter from 'components/common/withPaginationQueryParameter';\nimport { SidecarsActions, SidecarsStore } from 'stores/sidecars/SidecarsStore';\n\nimport SidecarList, { PAGE_SIZES } from './SidecarList';\n\nconst SidecarListContainer = createReactClass({\n // eslint-disable-next-line react/no-unused-class-component-methods\n propTypes: {\n paginationQueryParameter: PropTypes.object.isRequired,\n },\n\n mixins: [Reflux.connect(SidecarsStore)],\n\n componentDidMount() {\n this._reloadSidecars({});\n this.interval = setInterval(() => this._reloadSidecars({}), this.SIDECAR_DATA_REFRESH);\n },\n\n componentWillUnmount() {\n if (this.interval) {\n clearInterval(this.interval);\n }\n },\n\n handleSortChange(field) {\n return () => {\n this._reloadSidecars({\n sortField: field,\n // eslint-disable-next-line no-nested-ternary\n order: (this.state.sort.field === field ? (this.state.sort.order === 'asc' ? 'desc' : 'asc') : 'asc'),\n });\n };\n },\n\n handlePageChange(page, pageSize) {\n this._reloadSidecars({ page: page, pageSize: pageSize });\n },\n\n handleQueryChange(query = '', callback = () => {}) {\n const { resetPage } = this.props.paginationQueryParameter;\n\n resetPage();\n\n this._reloadSidecars({ query: query }).finally(callback);\n },\n\n toggleShowInactive() {\n const { resetPage } = this.props.paginationQueryParameter;\n\n resetPage();\n\n this._reloadSidecars({ onlyActive: !this.state.onlyActive });\n },\n\n _reloadSidecars({ query, page, pageSize, onlyActive, sortField, order }) {\n const effectiveQuery = query === undefined ? this.state.query : query;\n\n const options = {\n query: effectiveQuery,\n onlyActive: 'true',\n };\n\n if (this.state.sort) {\n options.sortField = sortField || this.state.sort.field;\n options.order = order || this.state.sort.order;\n }\n\n const { paginationQueryParameter } = this.props;\n\n options.pageSize = pageSize || paginationQueryParameter.pageSize;\n options.onlyActive = onlyActive === undefined ? this.state.onlyActive : onlyActive; // Avoid || to handle false values\n\n const shouldKeepPage = options.pageSize === paginationQueryParameter.pageSize\n && options.onlyActive === this.state.onlyActive\n && options.query === this.state.query; // Only keep page number when other parameters don't change\n let effectivePage = 1;\n\n if (shouldKeepPage) {\n effectivePage = page || paginationQueryParameter.page;\n }\n\n options.page = effectivePage;\n\n return SidecarsActions.listPaginated(options);\n },\n\n SIDECAR_DATA_REFRESH: 5 * 1000,\n\n render() {\n const { sidecars, onlyActive, pagination, query, sort } = this.state;\n\n const isLoading = !sidecars;\n\n if (isLoading) {\n return ;\n }\n\n return (\n \n );\n },\n});\n\nexport default withPaginationQueryParameter(SidecarListContainer, { pageSizes: PAGE_SIZES });\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport * as React from 'react';\nimport { useEffect, useState } from 'react';\n\nimport { Link } from 'components/common/router';\nimport { Col, Row } from 'components/bootstrap';\nimport { DocumentTitle, PageHeader, Spinner } from 'components/common';\nimport { isPermitted } from 'util/PermissionsMixin';\nimport useCurrentUser from 'hooks/useCurrentUser';\nimport UsersDomain from 'domainActions/users/UsersDomain';\nimport SidecarListContainer from 'components/sidecars/sidecars/SidecarListContainer';\nimport Routes from 'routing/Routes';\nimport DocsHelper from 'util/DocsHelper';\nimport SidecarsPageNavigation from 'components/sidecars/common/SidecarsPageNavigation';\n\nconst SidecarsPage = () => {\n const [sidecarUser, setSidecarUser] = useState();\n const currentUser = useCurrentUser();\n const canCreateSidecarUserTokens = isPermitted(currentUser?.permissions, ['users:tokenlist:graylog-sidecar']);\n\n useEffect(() => {\n if (canCreateSidecarUserTokens) {\n UsersDomain.loadByUsername('graylog-sidecar').then(setSidecarUser);\n }\n }, [canCreateSidecarUserTokens]);\n\n return (\n \n \n \n \n The Graylog sidecars can reliably forward contents of log files or Windows EventLog from your servers.\n {canCreateSidecarUserTokens && (\n sidecarUser ? (\n \n
\n Do you need an API token for a sidecar? \n \n Create or reuse a token for the graylog-sidecar user\n \n
\n ) : \n )}\n
\n
\n\n \n \n \n \n \n
\n );\n};\n\nexport default SidecarsPage;\n","/*\n * Copyright (C) 2020 Graylog, Inc.\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the Server Side Public License, version 1,\n * as published by MongoDB, Inc.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * Server Side Public License for more details.\n *\n * You should have received a copy of the Server Side Public License\n * along with this program. If not, see\n * .\n */\nimport Reflux from 'reflux';\nimport * as Immutable from 'immutable';\nimport type { $PropertyType, $Shape } from 'utility-types';\nimport URI from 'urijs';\n\nimport type { UserOverviewJSON, AccountStatus } from 'logic/users/UserOverview';\nimport UserOverview from 'logic/users/UserOverview';\nimport fetch from 'logic/rest/FetchProvider';\nimport ApiRoutes from 'routing/ApiRoutes';\nimport { singletonStore, singletonActions } from 'logic/singleton';\nimport { qualifyUrl } from 'util/URLUtils';\nimport PaginationURL from 'util/PaginationURL';\nimport type { UserJSON } from 'logic/users/User';\nimport User from 'logic/users/User';\nimport type { PaginatedListJSON, Pagination, PaginatedList } from 'stores/PaginationTypes';\n\nexport type PaginatedUsersResponse = PaginatedListJSON & {\n users: Array;\n context: {\n admin_user: UserOverviewJSON;\n };\n};\n\nexport type UserCreate = {\n email: $PropertyType;\n full_name: $PropertyType;\n first_name: $PropertyType;\n last_name: $PropertyType;\n password: string;\n permissions: $PropertyType;\n roles: $PropertyType;\n session_timeout_ms: $PropertyType;\n timezone: $PropertyType;\n username: $PropertyType;\n};\n\nexport type UserUpdate = $Shape;\n\nexport type Token = {\n id: string;\n name: string;\n token: string;\n last_access: string;\n};\n\nexport type TokenSummary = {\n id: string,\n name: string,\n last_access: string,\n};\n\nexport type ChangePasswordRequest = {\n old_password: string;\n password: string;\n};\n\nexport type PaginatedUsers = PaginatedList & {\n adminUser: UserOverview | null | undefined,\n};\n\nexport type Query = {\n include_permissions?: boolean;\n include_sessions?: boolean;\n};\n\nexport type ActionsType = {\n create: (user: UserCreate) => Promise;\n load: (userId: string) => Promise;\n loadByUsername: (username: string) => Promise;\n update: (userId: string, request: UserUpdate, fullName: string) => Promise;\n delete: (userId: string, fullName: string) => Promise;\n changePassword: (userId: string, request: ChangePasswordRequest) => Promise;\n createToken: (userId: string, tokenName: string) => Promise;\n loadTokens: (userId: string) => Promise;\n deleteToken: (userId: string, tokenId: string, tokenName: string) => Promise;\n loadUsers: (query?: Query) => Promise>;\n loadUsersPaginated: (pagination: Pagination) => Promise;\n setStatus: (userId: string, newStatus: AccountStatus) => Promise;\n};\n\nconst usersUrl = ({ url = '', query = {} }) => {\n const uri = new URI(url);\n\n uri.query(query);\n\n return qualifyUrl(uri.resource());\n};\n\nexport const UsersActions = singletonActions(\n 'core.Users',\n () => Reflux.createActions({\n create: { asyncResult: true },\n load: { asyncResult: true },\n loadByUsername: { asyncResult: true },\n update: { asyncResult: true },\n delete: { asyncResult: true },\n changePassword: { asyncResult: true },\n createToken: { asyncResult: true },\n loadTokens: { asyncResult: true },\n deleteToken: { asyncResult: true },\n loadUsersPaginated: { asyncResult: true },\n loadUsers: { asyncResult: true },\n setStatus: { asyncResult: true },\n }),\n);\n\nexport const UsersStore = singletonStore('core.Users', () => Reflux.createStore({\n listenables: [UsersActions],\n\n create(user: UserCreate): Promise {\n const url = qualifyUrl(ApiRoutes.UsersApiController.create().url);\n const promise = fetch('POST', url, user);\n UsersActions.create.promise(promise);\n\n return promise;\n },\n\n load(id: string): Promise {\n const url = qualifyUrl(ApiRoutes.UsersApiController.load(encodeURIComponent(id)).url);\n const promise = fetch('GET', url).then(User.fromJSON);\n\n UsersActions.load.promise(promise);\n\n return promise;\n },\n\n loadByUsername(userId: string): Promise {\n const url = qualifyUrl(ApiRoutes.UsersApiController.loadByUsername(encodeURIComponent(userId)).url);\n const promise = fetch('GET', url).then(User.fromJSON);\n\n UsersActions.loadByUsername.promise(promise);\n\n return promise;\n },\n\n update(userId: string, user: UserUpdate): Promise {\n const url = qualifyUrl(ApiRoutes.UsersApiController.update(encodeURIComponent(userId)).url);\n const promise = fetch('PUT', url, user);\n UsersActions.update.promise(promise);\n\n return promise;\n },\n\n delete(userId: string): Promise {\n const url = qualifyUrl(ApiRoutes.UsersApiController.delete(encodeURIComponent(userId)).url);\n const promise = fetch('DELETE', url);\n\n UsersActions.delete.promise(promise);\n\n return promise;\n },\n\n changePassword(userId: string, request: ChangePasswordRequest): Promise {\n const url = qualifyUrl(ApiRoutes.UsersApiController.changePassword(encodeURIComponent(userId)).url);\n const promise = fetch('PUT', url, request);\n UsersActions.changePassword.promise(promise);\n\n return promise;\n },\n\n createToken(userId: string, tokenName: string): Promise {\n const url = qualifyUrl(ApiRoutes.UsersApiController.create_token(encodeURIComponent(userId), encodeURIComponent(tokenName)).url);\n const promise = fetch('POST', url);\n UsersActions.createToken.promise(promise);\n\n return promise;\n },\n\n loadTokens(userId: string): Promise {\n const url = qualifyUrl(ApiRoutes.UsersApiController.list_tokens(encodeURIComponent(userId)).url);\n const promise = fetch('GET', url).then((response) => response.tokens);\n UsersActions.loadTokens.promise(promise);\n\n return promise;\n },\n\n deleteToken(userId: string, tokenId: string): Promise {\n const url = qualifyUrl(ApiRoutes.UsersApiController.delete_token(encodeURIComponent(userId), encodeURIComponent(tokenId)).url);\n const promise = fetch('DELETE', url);\n UsersActions.deleteToken.promise(promise);\n\n return promise;\n },\n\n loadUsers(query: Query = {}): Promise> {\n const url = usersUrl({ url: ApiRoutes.UsersApiController.list().url, query });\n const promise = fetch('GET', url).then(({\n users,\n }) => Immutable.List(users.map((user) => UserOverview.fromJSON(user))));\n UsersActions.loadUsers.promise(promise);\n\n return promise;\n },\n\n loadUsersPaginated({\n page,\n perPage,\n query,\n }: Pagination): Promise {\n const url = PaginationURL(ApiRoutes.UsersApiController.paginated().url, page, perPage, query);\n\n const promise = fetch('GET', qualifyUrl(url)).then((response: PaginatedUsersResponse) => ({\n adminUser: response.context.admin_user ? UserOverview.fromJSON(response.context.admin_user) : undefined,\n list: Immutable.List(response.users.map((user) => UserOverview.fromJSON(user))),\n pagination: {\n page: response.page,\n perPage: response.per_page,\n query: response.query,\n count: response.count,\n total: response.total,\n },\n }));\n\n UsersActions.loadUsersPaginated.promise(promise);\n\n return promise;\n },\n\n setStatus(userId: string, accountStatus: AccountStatus): Promise {\n const url = qualifyUrl(ApiRoutes.UsersApiController.setStatus(userId, accountStatus).url);\n const promise = fetch('PUT', url);\n UsersActions.setStatus.promise(promise);\n\n return promise;\n },\n}));\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".HhN_MIs88hGyrJ9d3fGo {\\n margin-top: 15px;\\n margin-bottom: 0;\\n}\\n\\n.X3aV_WfTsy4PgoEPh7qV {\\n margin-top: 5px;\\n display: inline-block;\\n}\\n\\n.XxLkD37ugJdsOziizyQC {\\n width: 230px;\\n}\\n\\n.fn84_KNI34D5Bb61NCwy {\\n margin-left: 5px;\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/sidecars/sidecars/SidecarList.css\"],\"names\":[],\"mappings\":\"AAAA;IACI,gBAAgB;IAChB,gBAAgB;AACpB;;AAEA;IACI,eAAe;IACf,qBAAqB;AACzB;;AAEA;IACI,YAAY;AAChB;;AAEA;IACI,gBAAgB;AACpB\",\"sourcesContent\":[\":local(.sidecarList) {\\n margin-top: 15px;\\n margin-bottom: 0;\\n}\\n\\n:local(.sidecarsFilter) {\\n margin-top: 5px;\\n display: inline-block;\\n}\\n\\n:local(.actions) {\\n width: 230px;\\n}\\n\\n:local(.inactiveSidecarsButton) {\\n margin-left: 5px;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"sidecarList\": \"HhN_MIs88hGyrJ9d3fGo\",\n\t\"sidecarsFilter\": \"X3aV_WfTsy4PgoEPh7qV\",\n\t\"actions\": \"XxLkD37ugJdsOziizyQC\",\n\t\"inactiveSidecarsButton\": \"fn84_KNI34D5Bb61NCwy\"\n};\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".iYXK7cmO8Zc91rNID2zz {\\n word-break: break-all;\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/components/sidecars/sidecars/SidecarRow.css\"],\"names\":[],\"mappings\":\"AAAA;IACI,qBAAqB;AACzB\",\"sourcesContent\":[\":local(.sidecarName) {\\n word-break: break-all;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\n___CSS_LOADER_EXPORT___.locals = {\n\t\"sidecarName\": \"iYXK7cmO8Zc91rNID2zz\"\n};\nexport default ___CSS_LOADER_EXPORT___;\n"],"names":["Container","styled","ButtonToolbar","StyledButton","Button","theme","css","fonts","family","navigation","size","colors","variant","darker","default","hoverIndicatorStyles","global","textDefault","activeIndicatorStyles","displayName","items","map","path","title","permissions","exactPathMatch","key","to","relativeActive","bsStyle","NAV_ITEMS","Routes","create","notifyingAction","action","UsersActions","success","user","message","first_name","last_name","error","load","userId","notFoundRedirect","loadByUsername","username","update","_userId","_payload","fullName","delete","changePassword","createToken","tokenName","loadTokens","deleteToken","_tokenId","loadUsers","loadUsersPaginated","setStatus","accountStatus","UserOverview","constructor","id","email","roles","readOnly","external","sessionActive","clientAddress","lastActivity","enabled","authServiceId","authServiceUid","this","_value","name","description","toBuilder","Builder","Immutable","toJSON","full_name","toArray","read_only","external_user","session_active","client_address","last_activity","auth_service_id","auth_service_uid","account_status","value","set","build","toObject","options","styleTagTransform","setAttributes","insert","domAPI","insertStyleElement","undefined","SidecarTR","inactive","utils","contrastingColor","table","background","backgroundAlt","SidecarRow","React","props","super","state","showRelativeTime","render","sidecar","annotation","active","sidecarStatus","status","node_details","SidecarStatusEnum","node_id","className","style","node_name","StatusIndicator","lastSeen","last_seen","OperatingSystemIcon","operatingSystem","operating_system","dateTime","sidecar_version","bsSize","relative","PropTypes","SortableIcon","Icon","SortableTH","sorted","PAGE_SIZES","SidecarList","field","sort","asc","desc","order","sidecars","onSortChange","sidecarCollection","striped","responsive","Object","keys","onClick","_getTableHeaderSortIcon","onlyActive","showInactiveHint","pagination","query","onQueryChange","onPageChange","toggleShowInactive","sidecarRows","showOrHideInactive","sidecarList","length","formatSidecarList","formatEmptyListAlert","SidecarSearchForm","onSearch","onReset","pageSizes","totalItems","total","onChange","md","SidecarListContainer","createReactClass","propTypes","paginationQueryParameter","mixins","Reflux","SidecarsStore","componentDidMount","_reloadSidecars","interval","setInterval","SIDECAR_DATA_REFRESH","componentWillUnmount","clearInterval","handleSortChange","sortField","handlePageChange","page","pageSize","handleQueryChange","callback","resetPage","finally","effectivePage","SidecarsActions","withPaginationQueryParameter","sidecarUser","setSidecarUser","useState","currentUser","useCurrentUser","canCreateSidecarUserTokens","isPermitted","useEffect","UsersDomain","then","SidecarsPageNavigation","documentationLink","DocsHelper","singletonActions","asyncResult","singletonStore","listenables","url","qualifyUrl","ApiRoutes","promise","fetch","encodeURIComponent","User","request","response","tokens","tokenId","uri","URI","resource","usersUrl","users","perPage","PaginationURL","adminUser","context","admin_user","list","per_page","count","___CSS_LOADER_EXPORT___","push","module","locals"],"sourceRoot":""}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy