{"version":3,"file":"js/ReviewToolbar-3e440fa7c5d5c58cd708.js","mappings":"6NAQA,MAAMA,EAAUC,EAAAA,GAAOC,IAAG,6DAAVD,CAAU,6JAapBE,EAAQF,EAAAA,GAAOC,IAAG,2DAAVD,CAAU,yMAOpBG,EAAAA,GAAMC,MAAO;;;KAMXC,EAAQL,EAAAA,GAAOC,IAAG,2DAAVD,CAAU,6GASlBM,EAAUN,EAAAA,GAAOO,QAAO,6DAAdP,CAAc,4FAQxBQ,EAAYR,EAAAA,GAAOC,IAAG,+DAAVD,CAAU,6DAO5B,MAAMS,UAAyBC,EAAAA,UAC7BC,SACE,MAAM,EAEFC,KAAKC,MADPC,EAAK,EAALA,MAAOC,EAAK,EAALA,MAAOC,EAAS,EAATA,UAAWC,EAAS,EAATA,UAG3B,OACE,gBAAClB,EAAO,KACN,gBAACG,EAAK,KACJ,gBAACG,EAAK,KAAES,GACR,gBAACR,EAAO,KACLY,IAAIC,KAAKC,MAAML,IAASM,GACvB,qBAAGC,IAAKD,GAAOA,MAGnB,gBAACb,EAAS,KACR,gBAACe,EAAA,EAAG,CACFC,KAAK,SACLC,UAAQ,EACRJ,KAAK,eACLK,QAASV,IAEX,gBAACO,EAAA,EAAG,CAACC,KAAK,SAASH,KAAK,qBAAqBK,QAAST,MAKhE,EAUFR,EAAiBkB,aAAe,CAC9Bb,MAAO,GACPC,MAAO,GACPC,UAAW,OACXC,UAAW,QAGb,U,0BCtGO,MAAMW,EAAmB,KAC9BC,SAASC,KAAKC,UAAUC,IAAI,gBAAgB,EAGjCC,EAAgB,KAC3BJ,SAASC,KAAKC,UAAUG,OAAO,gBAAgB,E,0dCUjD,MAAMC,UAAoCzB,EAAAA,UACxC0B,YAAYvB,GACVwB,MAAMxB,GAAO,+BAWSyB,IACtBA,EAAKC,UACLN,GAAe,IAChB,8BAEqB,KACpB,MAAQO,EAAa5B,KAAKC,MAAlB2B,SACRX,SAASY,SAASC,KAAQ,gBAAeF,aAAoB,IAC9D,8BAEqB,KACpB,MAAMG,EAAOd,SAASe,eAAe,oCAC/B,EAAkDhC,KAAKC,MAArDgC,EAAqB,EAArBA,sBAAuBC,EAAoB,EAApBA,qBAC/BlB,IAEA,MAAMU,GAAOS,EAAAA,EAAAA,GAAWJ,GACxBL,EAAK3B,OACH,gBAAC,EAAqB,CACpBG,MAAO+B,EACP9B,MAAO+B,EACP9B,UAAW,IAAMJ,KAAKoC,qBAAqBV,GAC3CrB,UAAWL,KAAKqC,sBAEnB,IACF,+BAEuBX,IACtBA,EAAKC,SAAS,IACf,8BAEqB,KACpB,MAAM,EAAyC3B,KAAKC,MAA5CqC,EAAQ,EAARA,SAAUC,EAAQ,EAARA,SAAUC,EAAc,EAAdA,eACtBT,EAAOd,SAASwB,uBACnB,+BAA8BH,KAC/B,GAEIZ,GAAOS,EAAAA,EAAAA,GAAWJ,GACxBL,EAAK3B,OACH,gBAAC2C,EAAA,EAAe,CACdJ,SAAUA,EACVC,SAAUA,EACVI,QAAS,IAAM3C,KAAK4C,qBAAqBlB,GACzCc,eAAgBA,IAEnB,IACF,wBAEe,KACWxC,KAAK6C,MAAtBC,aAGN9C,KAAK+C,SAAS,CACZC,gBAAgB,IAGlBhD,KAAKiD,qBACP,IACD,yBAEiBC,IAChBlD,KAAK+C,SAAS,CACZC,gBAAgB,EAChBG,WAAYD,GACZ,IACH,4BAEoBxB,IACnBA,EAAKC,UACLyB,EAAAA,EAAOC,aAAaC,aAAe,KACnCjC,GAAe,IAChB,2BAEkB,KACjB,MAAM,EAAyCrB,KAAKC,MAA5CqC,EAAQ,EAARA,SAAUC,EAAQ,EAARA,SAAUC,EAAc,EAAdA,eACtBT,EAAOd,SAASe,eAAe,gCACrChB,IAEA,MAAMU,GAAOS,EAAAA,EAAAA,GAAWJ,GACxBL,EAAK3B,OACH,gBAACwD,EAAA,EAAY,CAACjB,SAAUA,EAAUK,QAAS,IAAM3C,KAAKwD,kBAAkB9B,GAAOa,SAAUA,EAAUC,eAAgBA,IACpH,IACF,qBAEY,KACX,MAAM,EAAyBxC,KAAKC,MAA5BqC,EAAQ,EAARA,SAAUC,EAAQ,EAARA,SACVY,EAAenD,KAAK6C,MAApBM,WAKRC,EAAAA,EAAOC,aAAaH,OAClB,CACEO,GAAInB,EACJY,OAAQC,GAPQ,CAClBO,UAAW,QASXnB,GAEFvC,KAAK+C,SAAS,CACZC,gBAAgB,GAChB,IA9GF,MAAQF,EAA0B7C,EAA1B6C,aAAca,EAAY1D,EAAZ0D,QACtB3D,KAAK6C,MAAQ,CACXC,aAAcvC,KAAKC,MAAMsC,GACzBa,QAASpD,KAAKC,MAAMmD,GACpBX,gBAAgB,EAChBG,WAAY,GAEhB,CA0GAS,oBACE5D,KAAK6D,WACP,CAEA9D,SACE,MAAM,EAEFC,KAAKC,MADPqC,EAAQ,EAARA,SAAUwB,EAAS,EAATA,UAAWtB,EAAc,EAAdA,eAAgBD,EAAQ,EAARA,SAEjC,EAAyBa,EAAAA,EAAOC,aAA9BU,EAAO,EAAPA,QAASC,EAAS,EAATA,UACX,EAA0ChE,KAAK6C,MAA7CG,EAAc,EAAdA,eAAgBW,EAAO,EAAPA,QAASR,EAAU,EAAVA,WAMjC,OAJAnD,KAAK6D,UAAY,KACf7D,KAAK+C,SAAS,CAAEI,WAAYY,EAAQzB,IAAY,EAIhD,gCACE,gBAAC2B,EAAA,EAAiB,CAChB3B,SAAUA,EACVY,OAAQa,EAAQzB,GAChB4B,eAAgBH,EAAQzB,GACxB6B,cAAenE,KAAKmE,cACpBC,cAAepB,EACfqB,gBAAiBV,IAAYW,IAAIP,EAASzB,KAAc/B,KAAKC,MAAMsD,KAAed,EAClFuB,gBAAiBZ,IAAYX,EAC7BwB,eAAiBC,GAAMzE,KAAK+C,SAAS,CAAEI,WAAYsB,EAAEC,OAAOC,QAC5DC,YAAazB,EACb0B,eAAgB7E,KAAK8E,WACrBC,eAAgB,IAAM/E,KAAKgF,eAAejB,EAAQzB,IAClD2C,gBAAiBjB,EACjBkB,iBAAkBlF,KAAKkF,iBACvBC,oBAAqBnF,KAAKmF,oBAC1B3C,eAAgBA,EAChBD,SAAUA,IAIlB,EAeFhB,EAA4BR,aAAe,CACzCuB,SAAU,KACVQ,cAAc,EACda,SAAS,EACT1B,sBAAuB,GACvBC,qBAAsB,GACtB4B,UAAW,GACXvB,UAAU,EACVX,SAAU,GACVY,gBAAgB,GAGlB,MAAMyB,GAAgBmB,EAAAA,EAAAA,IAAS7D,GAE/BN,SAASoE,iBAAiB,oBAAoB,KAC5BpE,SAASqE,iBAAiB,kCAElCC,SAASC,IACf,MAAMtC,EAASsC,EAAOC,aAAa,eAC7BhC,EAAK+B,EAAOC,aAAa,kBAE3BvC,GAAUO,GACZL,EAAAA,EAAOC,aAAaQ,UAAUJ,EAAIP,IAEvBf,EAAAA,EAAAA,GAAWqD,GACnBzF,OACH,gBAAC,EAAa,CACZuC,SAAUmB,EACVK,UAAW0B,EAAOC,aAAa,mBAC/B3C,aAAc0C,EAAOC,aAAa,sBAClC9B,QAAS6B,EAAOC,aAAa,gBAC7BxD,sBAAuBuD,EAAOC,aAAa,yBAC3CvD,qBAAsBsD,EAAOC,aAAa,wBAC1ClD,SAAUiD,EAAOE,aAAa,kBAC9B9D,SAAU4D,EAAOC,aAAa,kBAC9BjD,eAAiE,KAAjDgD,EAAOC,aAAa,0BAAkClF,KAAKC,MAAMgF,EAAOC,aAAa,4BAExG,GACD,G,YC5NJE,EAAOC,QAAyB,iBAARC,KAAmBA,KAAKC,SAAWC,OAAOD,Q,wBCDlE,QAYME,EAoCAC,EAWAC,EAMAC,EAOAC,EAEAC,EAGAC,EAGAC,EAGAC,EAGAC,EAGAC,EAKAC,EAOAC,EAYAC,EArGAb,EAAe,SAASc,EAASC,EAAKC,GACxC,IAAIV,EAAUS,IAAQP,EAAQO,IAAQN,EAAUM,IAAQL,EAAWK,IAAQV,EAAYU,GACrF,OAAOA,EAGT,IAAIE,EACAC,EAAI,EACJC,EAAI,EAER,GAAGZ,EAASQ,GAEV,IADAE,EAAS,GACLE,EAAEJ,EAAIK,OAAQF,EAAEC,EAAGD,IACrBD,EAAOI,KAAKrB,EAAac,EAASC,EAAIG,GAAIF,SAK5C,IAAI,IAAItG,KADRuG,EAAS,CAAC,EACKF,EACVO,OAAOC,UAAUC,eAAeC,KAAKV,EAAKrG,KAC3CuG,EAAOH,EAAQpG,EAAKsG,IAAYhB,EAAac,EAASC,EAAIrG,GAAMsG,IAItE,OAAOC,CACT,EAYIhB,EAAW,SAASyB,GACtB,OAAIf,EAAae,GACRA,GAETA,EAASA,EAAOC,QAAQ,iBAAiB,SAASC,EAAOC,GACvD,OAAOA,EAAMA,EAAIC,cAAgB,EACnC,KAEcC,OAAO,EAAG,GAAGC,cAAgBN,EAAOK,OAAO,EAC3D,EAEI7B,EAAY,SAASwB,GACvB,IAAIO,EAAYhC,EAASyB,GAEzB,OAAOO,EAAUF,OAAO,EAAG,GAAGD,cAAgBG,EAAUF,OAAO,EACjE,EAEI5B,EAAa,SAASuB,EAAQV,GAChC,OA1BkB,SAASU,EAAQV,GAEnC,IAAIkB,GADJlB,EAAUA,GAAW,CAAC,GACEkB,WAAa,IACjCC,EAAQnB,EAAQmB,OAAS,YAE7B,OAAOT,EAAOS,MAAMA,GAAOC,KAAKF,EAClC,CAoBSG,CAAcX,EAAQV,GAASgB,aACxC,EAKI5B,EAAWkB,OAAOC,UAAUnB,SAE5BC,EAAc,SAASU,GACzB,MAAuB,oBAAV,CACf,EACIT,EAAY,SAASS,GACvB,OAAOA,IAAQO,OAAOP,EACxB,EACIR,EAAW,SAASQ,GACtB,MAA6B,kBAAtBX,EAASqB,KAAKV,EACvB,EACIP,EAAU,SAASO,GACrB,MAA6B,iBAAtBX,EAASqB,KAAKV,EACvB,EACIN,EAAY,SAASM,GACvB,MAA6B,mBAAtBX,EAASqB,KAAKV,EACvB,EACIL,EAAa,SAASK,GACxB,MAA6B,oBAAtBX,EAASqB,KAAKV,EACvB,EAGIJ,EAAe,SAASI,GAE1B,OADAA,GAAY,KACGA,CACjB,EAIIH,EAAa,SAASE,EAASE,GACjC,IAAIsB,EAAWtB,GAAW,YAAaA,EAAUA,EAAQuB,QAAUvB,EAEnE,MAAwB,oBAAf,EACAF,EAGF,SAASY,EAAQV,GACtB,OAAOsB,EAASZ,EAAQZ,EAASE,EACnC,CACF,EAEIH,EAAQ,CACVZ,SAAUA,EACVE,WAAYA,EACZD,UAAWA,EACXsC,YAAarC,EACbsC,aAAc,SAASC,EAAQ1B,GAC7B,OAAOhB,EAAaY,EAAWX,EAAUe,GAAU0B,EACrD,EACAC,eAAgB,SAASD,EAAQ1B,GAC/B,OAAOhB,EAAaY,EAAWT,EAAYa,GAAU0B,EAAQ1B,EAC/D,EACA4B,cAAe,SAASF,EAAQ1B,GAC9B,OAAOhB,EAAaY,EAAWV,EAAWc,GAAU0B,EACtD,EACAG,gBAAiB,WACf,OAAO7I,KAAK2I,eAAeG,MAAM9I,KAAM+I,UACzC,QAIY,2BAAZ,KAAY,iC,+BCpIhB,IAAIzI,EAIA0I,E,iBAHJ,IACE1I,EAAM2I,GACM,CAAZ,MAAOC,GAAK,CAId,IACEF,EAAMG,GACM,CAAZ,MAAOD,GAAK,CAEd,SAASE,EAAWC,EAAKC,EAAWC,GAElC,IAAKF,GAAsB,kBAARA,GAAmC,oBAARA,EAC5C,OAAOA,EAIT,GAAIA,EAAIG,UAAY,cAAeH,EACjC,OAAOA,EAAII,WAAU,GAIvB,GAAIJ,aAAeK,KACjB,OAAO,IAAIA,KAAKL,EAAIM,WAItB,GAAIN,aAAeO,OACjB,OAAO,IAAIA,OAAOP,GAIpB,GAAIQ,MAAMC,QAAQT,GAChB,OAAOA,EAAI/I,IAAIyJ,GAIjB,GAAIzJ,GAAO+I,aAAe/I,EACxB,OAAO,IAAI2I,IAAIY,MAAMG,KAAKX,EAAIY,YAIhC,GAAIjB,GAAOK,aAAeL,EACxB,OAAO,IAAIG,IAAIU,MAAMG,KAAKX,EAAIa,WAIhC,GAAIb,aAAe/B,OAAQ,CACzBgC,EAAUjC,KAAKgC,GACf,IAAItC,EAAMO,OAAO6C,OAAOd,GAExB,IAAK,IAAI3I,KADT6I,EAAOlC,KAAKN,GACIsC,EAAK,CACnB,IAAIe,EAAMd,EAAUe,WAAU,SAAUnD,GACtC,OAAOA,IAAMmC,EAAI3I,EACnB,IACAqG,EAAIrG,GAAO0J,GAAO,EAAIb,EAAOa,GAAOhB,EAAUC,EAAI3I,GAAM4I,EAAWC,EACrE,CACA,OAAOxC,CACT,CAGA,OAAOsC,CACT,CAEe,SAASU,EAAOV,GAC7B,OAAOD,EAAUC,EAAK,GAAI,GAC5B,C,8BC3DA,IAAIiB,EAAuB,EAAQ,MAEnC,SAASC,IAAiB,CAC1B,SAASC,IAA0B,CACnCA,EAAuBC,kBAAoBF,EAE3C5E,EAAOC,QAAU,WACf,SAAS8E,EAAKzK,EAAO0K,EAAUC,EAAe/I,EAAUgJ,EAAcC,GACpE,GAAIA,IAAWR,EAAf,CAIA,IAAIS,EAAM,IAAIC,MACZ,mLAKF,MADAD,EAAIE,KAAO,sBACLF,CAPN,CAQF,CAEA,SAASG,IACP,OAAOR,CACT,CAHAA,EAAKS,WAAaT,EAMlB,IAAIU,EAAiB,CACnBC,MAAOX,EACPY,OAAQZ,EACRa,KAAMb,EACNc,KAAMd,EACNe,OAAQf,EACRhC,OAAQgC,EACRhD,OAAQgD,EACRgB,OAAQhB,EAERiB,IAAKjB,EACLkB,QAASV,EACTW,QAASnB,EACToB,YAAapB,EACbqB,WAAYb,EACZnJ,KAAM2I,EACNsB,SAAUd,EACVe,MAAOf,EACPgB,UAAWhB,EACXiB,MAAOjB,EACPkB,MAAOlB,EAEPmB,eAAgB7B,EAChBC,kBAAmBF,GAKrB,OAFAa,EAAekB,UAAYlB,EAEpBA,CACT,C,iBC/CEzF,EAAOC,QAAU,EAAQ,KAAR,E,wBCNnBD,EAAOC,QAFoB,8C,yBCJ3B,SAAS2G,EAAMC,GACbxM,KAAKyM,SAAWD,EAChBxM,KAAK0M,OACP,CACAH,EAAMhF,UAAUmF,MAAQ,WACtB1M,KAAK2M,MAAQ,EACb3M,KAAK4M,QAAUtF,OAAO6C,OAAO,KAC/B,EACAoC,EAAMhF,UAAUsF,IAAM,SAAUnM,GAC9B,OAAOV,KAAK4M,QAAQlM,EACtB,EACA6L,EAAMhF,UAAUyB,IAAM,SAAUtI,EAAKiE,GAInC,OAHA3E,KAAK2M,OAAS3M,KAAKyM,UAAYzM,KAAK0M,QAC9BhM,KAAOV,KAAK4M,SAAU5M,KAAK2M,QAEzB3M,KAAK4M,QAAQlM,GAAOiE,CAC9B,EAEA,IAAImI,EAAc,4BAChBC,EAAc,QACdC,EAAmB,MACnBC,EAAkB,yCAClBC,EAAqB,2BAGnBC,EAAY,IAAIZ,EAFD,KAGjBa,EAAW,IAAIb,EAHE,KAIjBc,EAAW,IAAId,EAJE,KA0EnB,SAASe,EAAcC,GACrB,OACEJ,EAAUN,IAAIU,IACdJ,EAAUnE,IACRuE,EACApF,EAAMoF,GAAMjN,KAAI,SAAUkN,GACxB,OAAOA,EAAK7F,QAAQuF,EAAoB,KAC1C,IAGN,CAEA,SAAS/E,EAAMoF,GACb,OAAOA,EAAK3F,MAAMkF,IAAgB,CAAC,GACrC,CAyBA,SAASW,EAASC,GAChB,MACiB,kBAARA,GAAoBA,IAA8C,IAAvC,CAAC,IAAK,KAAKC,QAAQD,EAAIE,OAAO,GAEpE,CAUA,SAASC,EAAeL,GACtB,OAAQC,EAASD,KATnB,SAA0BA,GACxB,OAAOA,EAAK5F,MAAMoF,KAAsBQ,EAAK5F,MAAMmF,EACrD,CAO6Be,CAAiBN,IAL9C,SAAyBA,GACvB,OAAOP,EAAgBc,KAAKP,EAC9B,CAGuDQ,CAAgBR,GACvE,CAzHA7H,EAAOC,QAAU,CACf2G,MAAOA,EAEPpE,MAAOA,EAEPmF,cAAeA,EAEfW,OAAQ,SAAUV,GAChB,IAAIW,EAAQZ,EAAcC,GAE1B,OACEH,EAASP,IAAIU,IACbH,EAASpE,IAAIuE,GAAM,SAAgBxG,EAAKpC,GAKtC,IAJA,IAAIwJ,EAAQ,EACRC,EAAMF,EAAM9G,OACZiH,EAAOtH,EAEJoH,EAAQC,EAAM,GAAG,CACtB,IAAIZ,EAAOU,EAAMC,GACjB,GACW,cAATX,GACS,gBAATA,GACS,cAATA,EAEA,OAAOzG,EAGTsH,EAAOA,EAAKH,EAAMC,KACpB,CACAE,EAAKH,EAAMC,IAAUxJ,CACvB,GAEJ,EAEA2J,OAAQ,SAAUf,EAAMgB,GACtB,IAAIL,EAAQZ,EAAcC,GAC1B,OACEF,EAASR,IAAIU,IACbF,EAASrE,IAAIuE,GAAM,SAAgBc,GAGjC,IAFA,IAAIF,EAAQ,EACVC,EAAMF,EAAM9G,OACP+G,EAAQC,GAAK,CAClB,GAAY,MAARC,GAAiBE,EAChB,OADsBF,EAAOA,EAAKH,EAAMC,KAE/C,CACA,OAAOE,CACT,GAEJ,EAEAjG,KAAM,SAAUoG,GACd,OAAOA,EAASC,QAAO,SAAUlB,EAAMC,GACrC,OACED,GACCE,EAASD,IAAST,EAAYgB,KAAKP,GAChC,IAAMA,EAAO,KACZD,EAAO,IAAM,IAAMC,EAE5B,GAAG,GACL,EAEAjI,QAAS,SAAUgI,EAAMmB,EAAIC,IAqB/B,SAAiBT,EAAOU,EAAMD,GAC5B,IACEnB,EACApD,EACAN,EACA+E,EAJET,EAAMF,EAAM9G,OAMhB,IAAKgD,EAAM,EAAGA,EAAMgE,EAAKhE,KACvBoD,EAAOU,EAAM9D,MAGPyD,EAAeL,KACjBA,EAAO,IAAMA,EAAO,KAItB1D,IADA+E,EAAYpB,EAASD,KACG,QAAQO,KAAKP,GAErCoB,EAAKnH,KAAKkH,EAASnB,EAAMqB,EAAW/E,EAASM,EAAK8D,GAGxD,CAzCI3I,CAAQsE,MAAMC,QAAQyD,GAAQA,EAAOpF,EAAMoF,GAAOmB,EAAIC,EACxD,E,yBCjGF,IAAI7E,EAAUD,MAAMC,QAChBgF,EAAUxH,OAAOyH,KACjBC,EAAU1H,OAAOC,UAAUC,eAC3ByH,EAAoC,qBAAZC,QAE5B,SAASC,EAAMC,EAAGC,GAEhB,GAAID,IAAMC,EAAG,OAAO,EAEpB,GAAID,GAAKC,GAAiB,iBAALD,GAA6B,iBAALC,EAAe,CAC1D,IAEInI,EACAE,EACA1G,EAJA4O,EAAOxF,EAAQsF,GACfG,EAAOzF,EAAQuF,GAKnB,GAAIC,GAAQC,EAAM,CAEhB,IADAnI,EAASgI,EAAEhI,SACGiI,EAAEjI,OAAQ,OAAO,EAC/B,IAAKF,EAAIE,EAAgB,IAARF,KACf,IAAKiI,EAAMC,EAAElI,GAAImI,EAAEnI,IAAK,OAAO,EACjC,OAAO,CACT,CAEA,GAAIoI,GAAQC,EAAM,OAAO,EAEzB,IAAIC,EAAQJ,aAAa1F,KACrB+F,EAAQJ,aAAa3F,KACzB,GAAI8F,GAASC,EAAO,OAAO,EAC3B,GAAID,GAASC,EAAO,OAAOL,EAAEzF,WAAa0F,EAAE1F,UAE5C,IAAI+F,EAAUN,aAAaxF,OACvB+F,EAAUN,aAAazF,OAC3B,GAAI8F,GAAWC,EAAS,OAAO,EAC/B,GAAID,GAAWC,EAAS,OAAOP,EAAEhJ,YAAciJ,EAAEjJ,WAEjD,IAAI2I,EAAOD,EAAQM,GAGnB,IAFAhI,EAAS2H,EAAK3H,UAEC0H,EAAQO,GAAGjI,OACxB,OAAO,EAET,IAAKF,EAAIE,EAAgB,IAARF,KACf,IAAK8H,EAAQvH,KAAK4H,EAAGN,EAAK7H,IAAK,OAAO,EAKxC,GAAI+H,GAAkBG,aAAaF,SAAWG,aAAaH,QACzD,OAAOE,IAAMC,EAGf,IAAKnI,EAAIE,EAAgB,IAARF,KAEf,IAAY,YADZxG,EAAMqO,EAAK7H,MACakI,EAAEQ,YAQnBT,EAAMC,EAAE1O,GAAM2O,EAAE3O,IAAO,OAAO,EAMvC,OAAO,CACT,CAEA,OAAO0O,IAAMA,GAAKC,IAAMA,CAC1B,CAGA1J,EAAOC,QAAU,SAAuBwJ,EAAGC,GACzC,IACE,OAAOF,EAAMC,EAAGC,EAalB,CAZE,MAAOQ,GACP,GAAKA,EAAMC,SAAWD,EAAMC,QAAQlI,MAAM,sBAA2C,aAAlBiI,EAAMpE,OAOvE,OADAsE,QAAQC,KAAK,mEAAoEH,EAAM5E,KAAM4E,EAAMC,UAC5F,EAGT,MAAMD,CACR,CACF,C,gDC1EA,QAlBA,SAAiBI,EAAWH,GAgB5B,C,YCHA,SAASI,EAASC,EAAOC,GACvB,IAAIC,EAASF,EAAM/I,OACfkJ,EAAS,IAAIzG,MAAMwG,GACnBE,EAAU,CAAC,EACXrJ,EAAImJ,EAEJG,EA4DN,SAA2BC,GAEzB,IADA,IAAIL,EAAQ,IAAInH,IACP/B,EAAI,EAAGkH,EAAMqC,EAAIrJ,OAAQF,EAAIkH,EAAKlH,IAAK,CAC9C,IAAIwJ,EAAOD,EAAIvJ,GACVkJ,EAAM9L,IAAIoM,EAAK,KAAKN,EAAMpH,IAAI0H,EAAK,GAAI,IAAIvH,KAC3CiH,EAAM9L,IAAIoM,EAAK,KAAKN,EAAMpH,IAAI0H,EAAK,GAAI,IAAIvH,KAChDiH,EAAMvD,IAAI6D,EAAK,IAAItP,IAAIsP,EAAK,GAC9B,CACA,OAAON,CACT,CArEsBO,CAAkBP,GAClCQ,EAsEN,SAAuBH,GAErB,IADA,IAAII,EAAM,IAAI5H,IACL/B,EAAI,EAAGkH,EAAMqC,EAAIrJ,OAAQF,EAAIkH,EAAKlH,IACzC2J,EAAI7H,IAAIyH,EAAIvJ,GAAIA,GAElB,OAAO2J,CACT,CA5EkBC,CAAcX,GAS9B,IANAC,EAAM7K,SAAQ,SAASmL,GACrB,IAAKE,EAAUtM,IAAIoM,EAAK,MAAQE,EAAUtM,IAAIoM,EAAK,IACjD,MAAM,IAAI1F,MAAM,gEAEpB,IAEO9D,KACAqJ,EAAQrJ,IAAI6J,EAAMZ,EAAMjJ,GAAIA,EAAG,IAAIiC,KAG1C,OAAOmH,EAEP,SAASS,EAAMhP,EAAMmF,EAAG8J,GACtB,GAAGA,EAAa1M,IAAIvC,GAAO,CACzB,IAAIkP,EACJ,IACEA,EAAU,cAAgB1Q,KAAK2Q,UAAUnP,EAG3C,CAFE,MAAM0C,GACNwM,EAAU,EACZ,CACA,MAAM,IAAIjG,MAAM,oBAAsBiG,EACxC,CAEA,IAAKL,EAAUtM,IAAIvC,GACjB,MAAM,IAAIiJ,MAAM,+EAA+EzK,KAAK2Q,UAAUnP,IAGhH,IAAIwO,EAAQrJ,GAAZ,CACAqJ,EAAQrJ,IAAK,EAEb,IAAIiK,EAAWX,EAAc3D,IAAI9K,IAAS,IAAIoH,IAG9C,GAAIjC,GAFJiK,EAAWtH,MAAMG,KAAKmH,IAEL/J,OAAQ,CACvB4J,EAAa5P,IAAIW,GACjB,EAAG,CACD,IAAIqP,EAAQD,IAAWjK,GACvB6J,EAAMK,EAAOR,EAAU/D,IAAIuE,GAAQJ,EACrC,OAAS9J,GACT8J,EAAaK,OAAOtP,EACtB,CAEAuO,IAASD,GAAUtO,CAfG,CAgBxB,CACF,CA5DA4D,EAAOC,QAAU,SAASwK,GACxB,OAAOF,EA6DT,SAAqBO,GAEnB,IADA,IAAII,EAAM,IAAI1H,IACLjC,EAAI,EAAGkH,EAAMqC,EAAIrJ,OAAQF,EAAIkH,EAAKlH,IAAK,CAC9C,IAAIwJ,EAAOD,EAAIvJ,GACf2J,EAAIzP,IAAIsP,EAAK,IACbG,EAAIzP,IAAIsP,EAAK,GACf,CACA,OAAO7G,MAAMG,KAAK6G,EACpB,CArEkBS,CAAYlB,GAAQA,EACtC,EAEAzK,EAAOC,QAAQyF,MAAQ6E,C","sources":["webpack:///./app/javascript/main-app/components/window/NonpremiumSchool.jsx","webpack:///./app/javascript/main-app/utils/documentHelper.js","webpack:///./app/javascript/packs/ReviewToolbar.jsx","webpack:///./node_modules/form-data/lib/browser.js","webpack:///./node_modules/humps/humps.js","webpack:///./node_modules/nanoclone/src/index.js","webpack:///./node_modules/prop-types/factoryWithThrowingShims.js","webpack:///./node_modules/prop-types/index.js","webpack:///./node_modules/prop-types/lib/ReactPropTypesSecret.js","webpack:///./node_modules/property-expr/index.js","webpack:///./node_modules/react-fast-compare/index.js","webpack:///./node_modules/tiny-warning/dist/tiny-warning.esm.js","webpack:///./node_modules/toposort/index.js"],"sourcesContent":["import React, { Component } from 'react';\nimport styled from 'styled-components';\nimport PropTypes from 'prop-types';\nimport map from 'lodash/map';\nimport media from '../../utils/mediaQueries';\n\nimport Btn from '../buttons/Btn';\n\nconst Overlay = styled.div`\n position: fixed;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n background-color: rgba(0, 0, 0, 0.4);\n z-index: 999999999;\n`;\n\nconst Modal = styled.div`\n border-radius: 12px;\n box-shadow: 0 -1px 1px 0 rgba(0, 0, 0, 0.02),\n 0 2px 4px 0 rgba(155, 132, 135, 0.06), 0 4px 12px 0 rgba(119, 94, 98, 0.05);\n background-color: #ffffff;\n max-width: 500px;\n padding: 20px 24px 24px;\n ${media.mobile`\n width: 100%;\n margin: 10px;\n `}\n`;\n\nconst Title = styled.div`\n font-size: 18px;\n font-weight: bold;\n line-height: 1.33;\n letter-spacing: 0.2px;\n color: #354354;\n margin-bottom: 16px;\n`;\n\nconst Content = styled.section`\n font-size: 18px;\n line-height: 1.33;\n letter-spacing: 0.2px;\n color: #354354;\n margin-bottom: 16px;\n`;\n\nconst BottomBar = styled.div`\n display: flex;\n & > button:first-child {\n margin-right: 24px;\n }\n`;\n\nclass NonpremiumSchool extends Component {\n render() {\n const {\n title, texts, onDismiss, onConfirm,\n } = this.props;\n\n return (\n \n \n {title}\n \n {map(JSON.parse(texts), (text) => (\n

{text}

\n ))}\n
\n \n \n \n \n
\n
\n );\n }\n}\n\nNonpremiumSchool.propTypes = {\n title: PropTypes.string,\n texts: PropTypes.array,\n onDismiss: PropTypes.func,\n onConfirm: PropTypes.func,\n};\n\nNonpremiumSchool.defaultProps = {\n title: '',\n texts: [],\n onDismiss: () => {},\n onConfirm: () => {},\n};\n\nexport default NonpremiumSchool;\n","export const removeBodyScroll = () => {\n document.body.classList.add('vv-modal-open');\n};\n\nexport const addBodyScroll = () => {\n document.body.classList.remove('vv-modal-open');\n};\n","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { createRoot } from 'react-dom/client';\nimport { observer } from 'mobx-react';\nimport has from 'lodash/get';\n\nimport { ReviewToolbar as ReviewToolbarView } from '@shared/ReviewToolbar';\nimport NonpremiumSchoolModal from '../main-app/components/window/NonpremiumSchool';\nimport ReportWindow from '../main-app/components/window/Report';\nimport ShareLinkWindow from '../main-app/components/window/ShareLink';\n\nimport { addBodyScroll, removeBodyScroll } from '../main-app/utils/documentHelper';\n\nimport stores from '../main-app/stores';\n\nclass ReviewToolbarClassComponent extends Component {\n constructor(props) {\n super(props);\n const { isSubscribed, isOwner } = props;\n this.state = {\n isSubscribed: JSON.parse(isSubscribed),\n isOwner: JSON.parse(isOwner),\n showAnswerForm: false,\n answerText: '',\n };\n }\n\n // eslint-disable-next-line react/sort-comp\n closeNonpremiumModal = (root) => {\n root.unmount();\n addBodyScroll();\n };\n\n jumpToSubscribePage = () => {\n const { schoolId } = this.props;\n document.location.href = `/pro/schools/${schoolId}/subscribe`;\n };\n\n showNonpremiumModal = () => {\n const node = document.getElementById('vv-rating-box__nonpremium-window');\n const { nonPremiumSchoolTitle, nonPremiumSchoolText } = this.props;\n removeBodyScroll();\n\n const root = createRoot(node);\n root.render(\n this.closeNonpremiumModal(root)}\n onConfirm={this.jumpToSubscribePage}\n />,\n );\n };\n\n closeShareLinkWindow = (root) => {\n root.unmount();\n };\n\n showShareLinkWindow = () => {\n const { reviewId, isSchool, isAvisSolution } = this.props;\n const node = document.getElementsByClassName(\n `vv-rating-box__share-window-${reviewId}`,\n )[0];\n\n const root = createRoot(node);\n root.render(\n this.closeShareLinkWindow(root)}\n isAvisSolution={isAvisSolution}\n />,\n );\n };\n\n onAnswerClick = () => {\n const { isSubscribed } = this.state;\n\n if (isSubscribed) {\n this.setState({\n showAnswerForm: true,\n });\n } else {\n this.showNonpremiumModal();\n }\n };\n\n hideAnswerForm = (answer) => {\n this.setState({\n showAnswerForm: false,\n answerText: answer,\n });\n };\n\n closeReportWindow = (root) => {\n root.unmount();\n stores.reviewsStore.reportResult = null;\n addBodyScroll();\n };\n\n showReportWindow = () => {\n const { reviewId, isSchool, isAvisSolution } = this.props;\n const node = document.getElementById('vv-rating-box__report-window');\n removeBodyScroll();\n\n const root = createRoot(node);\n root.render(\n this.closeReportWindow(root)} isSchool={isSchool} isAvisSolution={isAvisSolution} />,\n );\n };\n\n sendAnswer = () => {\n const { reviewId, isSchool } = this.props;\n const { answerText } = this.state;\n const callbackObj = {\n setErrors: () => {},\n };\n\n stores.reviewsStore.answer(\n {\n id: reviewId,\n answer: answerText,\n },\n callbackObj,\n isSchool,\n );\n this.setState({\n showAnswerForm: false,\n });\n };\n\n componentDidMount() {\n this.setAnswer();\n }\n\n render() {\n const {\n reviewId, hasAnswer, isAvisSolution, isSchool,\n } = this.props;\n const { answers, isSending } = stores.reviewsStore;\n const { showAnswerForm, isOwner, answerText } = this.state;\n\n this.setAnswer = () => {\n this.setState({ answerText: answers[reviewId] });\n };\n\n return (\n <>\n this.setState({ answerText: e.target.value })}\n answerValue={answerText}\n onAnswerSubmit={this.sendAnswer}\n onAnswerCancel={() => this.hideAnswerForm(answers[reviewId])}\n isAnswerSending={isSending}\n showReportWindow={this.showReportWindow}\n showShareLinkWindow={this.showShareLinkWindow}\n isAvisSolution={isAvisSolution}\n isSchool={isSchool}\n />\n \n );\n }\n}\n\nReviewToolbarClassComponent.propTypes = {\n reviewId: PropTypes.string,\n isSubscribed: PropTypes.bool,\n isOwner: PropTypes.bool,\n nonPremiumSchoolTitle: PropTypes.string,\n nonPremiumSchoolText: PropTypes.string,\n hasAnswer: PropTypes.string,\n isSchool: PropTypes.bool,\n schoolId: PropTypes.string,\n isAvisSolution: PropTypes.bool,\n};\n\nReviewToolbarClassComponent.defaultProps = {\n reviewId: null,\n isSubscribed: false,\n isOwner: false,\n nonPremiumSchoolTitle: '',\n nonPremiumSchoolText: '',\n hasAnswer: '',\n isSchool: true,\n schoolId: '',\n isAvisSolution: false,\n};\n\nconst ReviewToolbar = observer(ReviewToolbarClassComponent);\n\ndocument.addEventListener('DOMContentLoaded', () => {\n const reviews = document.querySelectorAll('.vv-rating-box__bottom-toolbar');\n\n reviews.forEach((review) => {\n const answer = review.getAttribute('data-answer');\n const id = review.getAttribute('data-review-id');\n\n if (answer && id) {\n stores.reviewsStore.setAnswer(id, answer);\n }\n const root = createRoot(review);\n root.render(\n ,\n );\n });\n});\n\nexport { ReviewToolbarClassComponent };\n","/* eslint-env browser */\nmodule.exports = typeof self == 'object' ? self.FormData : window.FormData;\n","// =========\n// = humps =\n// =========\n// Underscore-to-camelCase converter (and vice versa)\n// for strings and object keys\n\n// humps is copyright © 2012+ Dom Christie\n// Released under the MIT license.\n\n\n;(function(global) {\n\n var _processKeys = function(convert, obj, options) {\n if(!_isObject(obj) || _isDate(obj) || _isRegExp(obj) || _isBoolean(obj) || _isFunction(obj)) {\n return obj;\n }\n\n var output,\n i = 0,\n l = 0;\n\n if(_isArray(obj)) {\n output = [];\n for(l=obj.length; i -1 ? clones[idx] : baseClone(src[key], circulars, clones)\n }\n return obj\n }\n\n // ???\n return src\n}\n\nexport default function clone (src) {\n return baseClone(src, [], [])\n}\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","/**\n * Based on Kendo UI Core expression code \n */\n'use strict'\n\nfunction Cache(maxSize) {\n this._maxSize = maxSize\n this.clear()\n}\nCache.prototype.clear = function () {\n this._size = 0\n this._values = Object.create(null)\n}\nCache.prototype.get = function (key) {\n return this._values[key]\n}\nCache.prototype.set = function (key, value) {\n this._size >= this._maxSize && this.clear()\n if (!(key in this._values)) this._size++\n\n return (this._values[key] = value)\n}\n\nvar SPLIT_REGEX = /[^.^\\]^[]+|(?=\\[\\]|\\.\\.)/g,\n DIGIT_REGEX = /^\\d+$/,\n LEAD_DIGIT_REGEX = /^\\d/,\n SPEC_CHAR_REGEX = /[~`!#$%\\^&*+=\\-\\[\\]\\\\';,/{}|\\\\\":<>\\?]/g,\n CLEAN_QUOTES_REGEX = /^\\s*(['\"]?)(.*?)(\\1)\\s*$/,\n MAX_CACHE_SIZE = 512\n\nvar pathCache = new Cache(MAX_CACHE_SIZE),\n setCache = new Cache(MAX_CACHE_SIZE),\n getCache = new Cache(MAX_CACHE_SIZE)\n\nvar config\n\nmodule.exports = {\n Cache: Cache,\n\n split: split,\n\n normalizePath: normalizePath,\n\n setter: function (path) {\n var parts = normalizePath(path)\n\n return (\n setCache.get(path) ||\n setCache.set(path, function setter(obj, value) {\n var index = 0\n var len = parts.length\n var data = obj\n\n while (index < len - 1) {\n var part = parts[index]\n if (\n part === '__proto__' ||\n part === 'constructor' ||\n part === 'prototype'\n ) {\n return obj\n }\n\n data = data[parts[index++]]\n }\n data[parts[index]] = value\n })\n )\n },\n\n getter: function (path, safe) {\n var parts = normalizePath(path)\n return (\n getCache.get(path) ||\n getCache.set(path, function getter(data) {\n var index = 0,\n len = parts.length\n while (index < len) {\n if (data != null || !safe) data = data[parts[index++]]\n else return\n }\n return data\n })\n )\n },\n\n join: function (segments) {\n return segments.reduce(function (path, part) {\n return (\n path +\n (isQuoted(part) || DIGIT_REGEX.test(part)\n ? '[' + part + ']'\n : (path ? '.' : '') + part)\n )\n }, '')\n },\n\n forEach: function (path, cb, thisArg) {\n forEach(Array.isArray(path) ? path : split(path), cb, thisArg)\n },\n}\n\nfunction normalizePath(path) {\n return (\n pathCache.get(path) ||\n pathCache.set(\n path,\n split(path).map(function (part) {\n return part.replace(CLEAN_QUOTES_REGEX, '$2')\n })\n )\n )\n}\n\nfunction split(path) {\n return path.match(SPLIT_REGEX) || ['']\n}\n\nfunction forEach(parts, iter, thisArg) {\n var len = parts.length,\n part,\n idx,\n isArray,\n isBracket\n\n for (idx = 0; idx < len; idx++) {\n part = parts[idx]\n\n if (part) {\n if (shouldBeQuoted(part)) {\n part = '\"' + part + '\"'\n }\n\n isBracket = isQuoted(part)\n isArray = !isBracket && /^\\d+$/.test(part)\n\n iter.call(thisArg, part, isBracket, isArray, idx, parts)\n }\n }\n}\n\nfunction isQuoted(str) {\n return (\n typeof str === 'string' && str && [\"'\", '\"'].indexOf(str.charAt(0)) !== -1\n )\n}\n\nfunction hasLeadingNumber(part) {\n return part.match(LEAD_DIGIT_REGEX) && !part.match(DIGIT_REGEX)\n}\n\nfunction hasSpecialChars(part) {\n return SPEC_CHAR_REGEX.test(part)\n}\n\nfunction shouldBeQuoted(part) {\n return !isQuoted(part) && (hasLeadingNumber(part) || hasSpecialChars(part))\n}\n","'use strict';\n\nvar isArray = Array.isArray;\nvar keyList = Object.keys;\nvar hasProp = Object.prototype.hasOwnProperty;\nvar hasElementType = typeof Element !== 'undefined';\n\nfunction equal(a, b) {\n // fast-deep-equal index.js 2.0.1\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n var arrA = isArray(a)\n , arrB = isArray(b)\n , i\n , length\n , key;\n\n if (arrA && arrB) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n if (arrA != arrB) return false;\n\n var dateA = a instanceof Date\n , dateB = b instanceof Date;\n if (dateA != dateB) return false;\n if (dateA && dateB) return a.getTime() == b.getTime();\n\n var regexpA = a instanceof RegExp\n , regexpB = b instanceof RegExp;\n if (regexpA != regexpB) return false;\n if (regexpA && regexpB) return a.toString() == b.toString();\n\n var keys = keyList(a);\n length = keys.length;\n\n if (length !== keyList(b).length)\n return false;\n\n for (i = length; i-- !== 0;)\n if (!hasProp.call(b, keys[i])) return false;\n // end fast-deep-equal\n\n // start react-fast-compare\n // custom handling for DOM elements\n if (hasElementType && a instanceof Element && b instanceof Element)\n return a === b;\n\n // custom handling for React\n for (i = length; i-- !== 0;) {\n key = keys[i];\n if (key === '_owner' && a.$$typeof) {\n // React-specific: avoid traversing React elements' _owner.\n // _owner contains circular references\n // and is not needed when comparing the actual elements (and not their owners)\n // .$$typeof and ._store on just reasonable markers of a react element\n continue;\n } else {\n // all other properties should be traversed as usual\n if (!equal(a[key], b[key])) return false;\n }\n }\n // end react-fast-compare\n\n // fast-deep-equal index.js 2.0.1\n return true;\n }\n\n return a !== a && b !== b;\n}\n// end fast-deep-equal\n\nmodule.exports = function exportedEqual(a, b) {\n try {\n return equal(a, b);\n } catch (error) {\n if ((error.message && error.message.match(/stack|recursion/i)) || (error.number === -2146828260)) {\n // warn on circular references, don't crash\n // browsers give this different errors name and messages:\n // chrome/safari: \"RangeError\", \"Maximum call stack size exceeded\"\n // firefox: \"InternalError\", too much recursion\"\n // edge: \"Error\", \"Out of stack space\"\n console.warn('Warning: react-fast-compare does not handle circular references.', error.name, error.message);\n return false;\n }\n // some other error. we should definitely know about these\n throw error;\n }\n};\n","var isProduction = process.env.NODE_ENV === 'production';\nfunction warning(condition, message) {\n if (!isProduction) {\n if (condition) {\n return;\n }\n\n var text = \"Warning: \" + message;\n\n if (typeof console !== 'undefined') {\n console.warn(text);\n }\n\n try {\n throw Error(text);\n } catch (x) {}\n }\n}\n\nexport default warning;\n","\n/**\n * Topological sorting function\n *\n * @param {Array} edges\n * @returns {Array}\n */\n\nmodule.exports = function(edges) {\n return toposort(uniqueNodes(edges), edges)\n}\n\nmodule.exports.array = toposort\n\nfunction toposort(nodes, edges) {\n var cursor = nodes.length\n , sorted = new Array(cursor)\n , visited = {}\n , i = cursor\n // Better data structures make algorithm much faster.\n , outgoingEdges = makeOutgoingEdges(edges)\n , nodesHash = makeNodesHash(nodes)\n\n // check for unknown nodes\n edges.forEach(function(edge) {\n if (!nodesHash.has(edge[0]) || !nodesHash.has(edge[1])) {\n throw new Error('Unknown node. There is an unknown node in the supplied edges.')\n }\n })\n\n while (i--) {\n if (!visited[i]) visit(nodes[i], i, new Set())\n }\n\n return sorted\n\n function visit(node, i, predecessors) {\n if(predecessors.has(node)) {\n var nodeRep\n try {\n nodeRep = \", node was:\" + JSON.stringify(node)\n } catch(e) {\n nodeRep = \"\"\n }\n throw new Error('Cyclic dependency' + nodeRep)\n }\n\n if (!nodesHash.has(node)) {\n throw new Error('Found unknown node. Make sure to provided all involved nodes. Unknown node: '+JSON.stringify(node))\n }\n\n if (visited[i]) return;\n visited[i] = true\n\n var outgoing = outgoingEdges.get(node) || new Set()\n outgoing = Array.from(outgoing)\n\n if (i = outgoing.length) {\n predecessors.add(node)\n do {\n var child = outgoing[--i]\n visit(child, nodesHash.get(child), predecessors)\n } while (i)\n predecessors.delete(node)\n }\n\n sorted[--cursor] = node\n }\n}\n\nfunction uniqueNodes(arr){\n var res = new Set()\n for (var i = 0, len = arr.length; i < len; i++) {\n var edge = arr[i]\n res.add(edge[0])\n res.add(edge[1])\n }\n return Array.from(res)\n}\n\nfunction makeOutgoingEdges(arr){\n var edges = new Map()\n for (var i = 0, len = arr.length; i < len; i++) {\n var edge = arr[i]\n if (!edges.has(edge[0])) edges.set(edge[0], new Set())\n if (!edges.has(edge[1])) edges.set(edge[1], new Set())\n edges.get(edge[0]).add(edge[1])\n }\n return edges\n}\n\nfunction makeNodesHash(arr){\n var res = new Map()\n for (var i = 0, len = arr.length; i < len; i++) {\n res.set(arr[i], i)\n }\n return res\n}\n"],"names":["Overlay","styled","div","Modal","media","mobile","Title","Content","section","BottomBar","NonpremiumSchool","Component","render","this","props","title","texts","onDismiss","onConfirm","map","JSON","parse","text","key","Btn","type","outlined","onClick","defaultProps","removeBodyScroll","document","body","classList","add","addBodyScroll","remove","ReviewToolbarClassComponent","constructor","super","root","unmount","schoolId","location","href","node","getElementById","nonPremiumSchoolTitle","nonPremiumSchoolText","createRoot","closeNonpremiumModal","jumpToSubscribePage","reviewId","isSchool","isAvisSolution","getElementsByClassName","ShareLink","onClose","closeShareLinkWindow","state","isSubscribed","setState","showAnswerForm","showNonpremiumModal","answer","answerText","stores","reviewsStore","reportResult","Report","closeReportWindow","id","setErrors","isOwner","componentDidMount","setAnswer","hasAnswer","answers","isSending","ReviewToolbar","isModifyView","onAnswerClick","hasAnswerForm","hasAnswerButton","has","hasUpdateButton","onAnswerChange","e","target","value","answerValue","onAnswerSubmit","sendAnswer","onAnswerCancel","hideAnswerForm","isAnswerSending","showReportWindow","showShareLinkWindow","observer","addEventListener","querySelectorAll","forEach","review","getAttribute","hasAttribute","module","exports","self","FormData","window","_processKeys","camelize","pascalize","decamelize","toString","_isFunction","_isObject","_isArray","_isDate","_isRegExp","_isBoolean","_isNumerical","_processor","humps","convert","obj","options","output","i","l","length","push","Object","prototype","hasOwnProperty","call","string","replace","match","chr","toUpperCase","substr","toLowerCase","camelized","separator","split","join","separateWords","callback","process","depascalize","camelizeKeys","object","decamelizeKeys","pascalizeKeys","depascalizeKeys","apply","arguments","set","Map","_","Set","baseClone","src","circulars","clones","nodeType","cloneNode","Date","getTime","RegExp","Array","isArray","clone","from","entries","values","create","idx","findIndex","ReactPropTypesSecret","emptyFunction","emptyFunctionWithReset","resetWarningCache","shim","propName","componentName","propFullName","secret","err","Error","name","getShim","isRequired","ReactPropTypes","array","bigint","bool","func","number","symbol","any","arrayOf","element","elementType","instanceOf","objectOf","oneOf","oneOfType","shape","exact","checkPropTypes","PropTypes","Cache","maxSize","_maxSize","clear","_size","_values","get","SPLIT_REGEX","DIGIT_REGEX","LEAD_DIGIT_REGEX","SPEC_CHAR_REGEX","CLEAN_QUOTES_REGEX","pathCache","setCache","getCache","normalizePath","path","part","isQuoted","str","indexOf","charAt","shouldBeQuoted","hasLeadingNumber","test","hasSpecialChars","setter","parts","index","len","data","getter","safe","segments","reduce","cb","thisArg","iter","isBracket","keyList","keys","hasProp","hasElementType","Element","equal","a","b","arrA","arrB","dateA","dateB","regexpA","regexpB","$$typeof","error","message","console","warn","condition","toposort","nodes","edges","cursor","sorted","visited","outgoingEdges","arr","edge","makeOutgoingEdges","nodesHash","res","makeNodesHash","visit","predecessors","nodeRep","stringify","outgoing","child","delete","uniqueNodes"],"sourceRoot":""}