{"version":3,"file":"static/chunks/1362-e96325418e4d3275.js","mappings":"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d,KAAM,YACNkd,KAAM,OACR,EACA,CACEJ,UAAW,GACXC,OAAQ,CACN,CACEC,QAAS,GACTC,aAAc,SACdjd,KAAM,UACNkd,KAAM,QACR,EACA,CACEF,QAAS,GACTC,aAAc,UACdjd,KAAM,SACNkd,KAAM,SACR,EACD,CACDld,KAAM,cACNkd,KAAM,OACR,EACA,CACEJ,UAAW,GACXC,OAAQ,CACN,CACEC,QAAS,GACTC,aAAc,SACdjd,KAAM,UACNkd,KAAM,QACR,EACA,CACEF,QAAS,GACTC,aAAc,UACdjd,KAAM,SACNkd,KAAM,SACR,EACD,CACDld,KAAM,WACNkd,KAAM,OACR,EACA,CACEJ,UAAW,GACXC,OAAQ,CACN,CACEC,QAAS,GACTC,aAAc,SACdjd,KAAM,YACNkd,KAAM,QACR,EACA,CACEF,QAAS,GACTC,aAAc,UACdjd,KAAM,QACNkd,KAAM,SACR,EACD,CACDld,KAAM,cACNkd,KAAM,OACR,EACA,CACEJ,UAAW,GACXC,OAAQ,CACN,CACEC,QAAS,GACTC,aAAc,SACdjd,KAAM,YACNkd,KAAM,QACR,EACA,CACEF,QAAS,GACTC,aAAc,SACdjd,KAAM,UACNkd,KAAM,QACR,EACA,CACEF,QAAS,GACTC,aAAc,UACdjd,KAAM,QACNkd,KAAM,SACR,EACD,CACDld,KAAM,sBACNkd,KAAM,OACR,EACA,CACEJ,UAAW,GACXC,OAAQ,CACN,CACEC,QAAS,GACTC,aAAc,SACdjd,KAAM,YACNkd,KAAM,QACR,EACA,CACEF,QAAS,GACTC,aAAc,UACdjd,KAAM,SACNkd,KAAM,SACR,EACA,CACEF,QAAS,GACTC,aAAc,UACdjd,KAAM,SACNkd,KAAM,SACR,EACA,CACEF,QAAS,GACTC,aAAc,SACdjd,KAAM,UACNkd,KAAM,QACR,EACD,CACDld,KAAM,mBACNkd,KAAM,OACR,EACA,CACEJ,UAAW,GACXC,OAAQ,CACN,CACEC,QAAS,GACTC,aAAc,SACdjd,KAAM,YACNkd,KAAM,QACR,EACA,CACEF,QAAS,GACTC,aAAc,UACdjd,KAAM,QACNkd,KAAM,SACR,EACA,CACEF,QAAS,GACTC,aAAc,UACdjd,KAAM,MACNkd,KAAM,SACR,EACA,CACEF,QAAS,GACTC,aAAc,UACdjd,KAAM,MACNkd,KAAM,SACR,EACD,CACDld,KAAM,YACNkd,KAAM,OACR,EACA,CACEJ,UAAW,GACXC,OAAQ,CACN,CACEC,QAAS,GACTC,aAAc,SACdjd,KAAM,YACNkd,KAAM,QACR,EACA,CACEF,QAAS,GACTC,aAAc,UACdjd,KAAM,QACNkd,KAAM,SACR,EACA,CACEF,QAAS,GACTC,aAAc,UACdjd,KAAM,MACNkd,KAAM,SACR,EACA,CACEF,QAAS,GACTC,aAAc,UACdjd,KAAM,MACNkd,KAAM,SACR,EACA,CACEF,QAAS,GACTC,aAAc,UACdjd,KAAM,UACNkd,KAAM,SACR,EACD,CACDld,KAAM,qBACNkd,KAAM,OACR,EACA,CACEJ,UAAW,GACXC,OAAQ,CACN,CACEC,QAAS,GACTC,aAAc,SACdjd,KAAM,YACNkd,KAAM,QACR,EACA,CACEF,QAAS,GACTC,aAAc,UACdjd,KAAM,QACNkd,KAAM,SACR,EACA,CACEF,QAAS,GACTC,aAAc,OACdjd,KAAM,MACNkd,KAAM,MACR,EACA,CACEF,QAAS,GACTC,aAAc,UACdjd,KAAM,aACNkd,KAAM,SACR,EACA,CACEF,QAAS,GACTC,aAAc,QACdjd,KAAM,aACNkd,KAAM,OACR,EACD,CACDld,KAAM,QACNkd,KAAM,OACR,EACA,CACEH,OAAQ,CACN,CACEE,aAAc,UACdjd,KAAM,MACNkd,KAAM,SACR,EACD,CACDld,KAAM,gBACNmd,QAAS,CACP,CACEpb,WAAY,CACV,CACEkb,aAAc,SACdjd,KAAM,UACNkd,KAAM,QACR,EACA,CACED,aAAc,UACdjd,KAAM,SACNkd,KAAM,SACR,EACD,CACDD,aAAc,sCACdjd,KAAM,GACNkd,KAAM,SACR,EACD,CACDE,gBAAiB,OACjBF,KAAM,UACR,EACA,CACEH,OAAQ,CACN,CACEE,aAAc,SACdjd,KAAM,UACNkd,KAAM,QACR,EACA,CACED,aAAc,UACdjd,KAAM,iBACNkd,KAAM,SACR,EACA,CACED,aAAc,mCACdjd,KAAM,aACNkd,KAAM,OACR,EACA,CACED,aAAc,UACdjd,KAAM,SACNkd,KAAM,SACR,EACD,CACDld,KAAM,WACNmd,QAAS,EAAE,CACXC,gBAAiB,aACjBF,KAAM,UACR,EACA,CACEH,OAAQ,CACN,CACEE,aAAc,UACdjd,KAAM,SACNkd,KAAM,SACR,EACA,CACED,aAAc,SACdjd,KAAM,UACNkd,KAAM,QACR,EACA,CACED,aAAc,SACdjd,KAAM,YACNkd,KAAM,QACR,EACD,CACDld,KAAM,kBACNmd,QAAS,EAAE,CACXC,gBAAiB,aACjBF,KAAM,UACR,EACA,CACEH,OAAQ,CACN,CACEE,aAAc,SACdjd,KAAM,YACNkd,KAAM,QACR,EACD,CACDld,KAAM,aACNmd,QAAS,EAAE,CACXC,gBAAiB,aACjBF,KAAM,UACR,EACA,CACEH,OAAQ,CACN,CACEE,aAAc,SACdjd,KAAM,YACNkd,KAAM,QACR,EACA,CACED,aAAc,SACdjd,KAAM,UACNkd,KAAM,QACR,EACD,CACDld,KAAM,qBACNmd,QAAS,EAAE,CACXC,gBAAiB,aACjBF,KAAM,UACR,EACA,CACEH,OAAQ,CACN,CACEE,aAAc,SACdjd,KAAM,UACNkd,KAAM,QACR,EACD,CACDld,KAAM,aACNmd,QAAS,EAAE,CACXC,gBAAiB,aACjBF,KAAM,UACR,EACA,CACEH,OAAQ,CACN,CACEE,aAAc,SACdjd,KAAM,UACNkd,KAAM,QACR,EACA,CACED,aAAc,UACdjd,KAAM,SACNkd,KAAM,SACR,EACD,CACDld,KAAM,SACNmd,QAAS,EAAE,CACXC,gBAAiB,aACjBF,KAAM,UACR,EACA,CACEH,OAAQ,CACN,CACEE,aAAc,SACdjd,KAAM,YACNkd,KAAM,QACR,EACA,CACED,aAAc,UACdjd,KAAM,aACNkd,KAAM,SACR,EACA,CACED,aAAc,mCACdjd,KAAM,aACNkd,KAAM,OACR,EACD,CACDld,KAAM,SACNmd,QAAS,EAAE,CACXC,gBAAiB,aACjBF,KAAM,UACR,EACA,CACEH,OAAQ,CACN,CACEE,aAAc,SACdjd,KAAM,YACNkd,KAAM,QACR,EACA,CACED,aAAc,UACdjd,KAAM,MACNkd,KAAM,SACR,EACA,CACED,aAAc,UACdjd,KAAM,MACNkd,KAAM,SACR,EACD,CACDld,KAAM,YACNmd,QAAS,EAAE,CACXC,gBAAiB,aACjBF,KAAM,UACR,EACA,CACEH,OAAQ,CACN,CACEE,aAAc,SACdjd,KAAM,YACNkd,KAAM,QACR,EACA,CACED,aAAc,UACdjd,KAAM,MACNkd,KAAM,SACR,EACA,CACED,aAAc,UACdjd,KAAM,MACNkd,KAAM,SACR,EACA,CACED,aAAc,UACdjd,KAAM,UACNkd,KAAM,SACR,EACD,CACDld,KAAM,mBACNmd,QAAS,EAAE,CACXC,gBAAiB,aACjBF,KAAM,UACR,EACA,CACEH,OAAQ,CACN,CACEE,aAAc,SACdjd,KAAM,YACNkd,KAAM,QACR,EACA,CACED,aAAc,UACdjd,KAAM,aACNkd,KAAM,SACR,EACA,CACED,aAAc,mCACdjd,KAAM,aACNkd,KAAM,OACR,EACD,CACDld,KAAM,UACNmd,QAAS,EAAE,CACXC,gBAAiB,aACjBF,KAAM,UACR,EACA,CACEH,OAAQ,CACN,CACEE,aAAc,UACdjd,KAAM,MACNkd,KAAM,SACR,EACA,CACED,aAAc,SACdjd,KAAM,UACNkd,KAAM,QACR,EACD,CACDld,KAAM,YACNmd,QAAS,CACP,CACEpb,WAAY,CACV,CACEkb,aAAc,OACdjd,KAAM,YACNkd,KAAM,MACR,EACA,CACED,aAAc,OACdjd,KAAM,eACNkd,KAAM,MACR,EACA,CACEnb,WAAY,CACV,CACEA,WAAY,CACV,CACEkb,aAAc,SACdjd,KAAM,YACNkd,KAAM,QACR,EACA,CACEnb,WAAY,CACV,CACEkb,aAAc,OACdjd,KAAM,aACNkd,KAAM,MACR,EACA,CACED,aAAc,OACdjd,KAAM,UACNkd,KAAM,MACR,EACA,CACED,aAAc,OACdjd,KAAM,iBACNkd,KAAM,MACR,EACA,CACEnb,WAAY,CACV,CACEA,WAAY,CACV,CACEkb,aAAc,OACdjd,KAAM,MACNkd,KAAM,MACR,EACA,CACED,aACE,mCACFjd,KAAM,aACNkd,KAAM,OACR,EACD,CACDD,aAAc,+BACdjd,KAAM,OACNkd,KAAM,OACR,EACA,CACED,aAAc,UACdjd,KAAM,UACNkd,KAAM,SACR,EACD,CACDD,aAAc,uCACdjd,KAAM,WACNkd,KAAM,OACR,EACA,CACEnb,WAAY,CACV,CACEkb,aAAc,UACdjd,KAAM,MACNkd,KAAM,SACR,EACA,CACED,aAAc,UACdjd,KAAM,MACNkd,KAAM,SACR,EACD,CACDD,aAAc,oCACdjd,KAAM,QACNkd,KAAM,OACR,EACA,CACEnb,WAAY,CACV,CACEkb,aAAc,UACdjd,KAAM,MACNkd,KAAM,SACR,EACA,CACED,aAAc,UACdjd,KAAM,MACNkd,KAAM,SACR,EACA,CACED,aAAc,UACdjd,KAAM,UACNkd,KAAM,SACR,EACD,CACDD,aACE,2CACFjd,KAAM,eACNkd,KAAM,OACR,EACD,CACDD,aAAc,sCACdjd,KAAM,cACNkd,KAAM,OACR,EACD,CACDD,aAAc,4CACdjd,KAAM,QACNkd,KAAM,SACR,EACA,CACEnb,WAAY,CACV,CACEkb,aAAc,UACdjd,KAAM,QACNkd,KAAM,SACR,EACA,CACED,aAAc,UACdjd,KAAM,UACNkd,KAAM,SACR,EACD,CACDD,aAAc,sCACdjd,KAAM,cACNkd,KAAM,OACR,EACA,CACEnb,WAAY,CACV,CACEkb,aAAc,UACdjd,KAAM,UACNkd,KAAM,SACR,EACD,CACDD,aAAc,oCACdjd,KAAM,QACNkd,KAAM,OACR,EACD,CACDD,aAAc,kCACdjd,KAAM,UACNkd,KAAM,OACR,EACA,CACEnb,WAAY,CACV,CACEkb,aAAc,UACdjd,KAAM,UACNkd,KAAM,SACR,EACA,CACED,aAAc,UACdjd,KAAM,SACNkd,KAAM,SACR,EACA,CACED,aAAc,mCACdjd,KAAM,aACNkd,KAAM,OACR,EACA,CACEnb,WAAY,CACV,CACEkb,aAAc,UACdjd,KAAM,QACNkd,KAAM,SACR,EACA,CACED,aAAc,UACdjd,KAAM,UACNkd,KAAM,SACR,EACD,CACDD,aAAc,sCACdjd,KAAM,cACNkd,KAAM,OACR,EACA,CACEnb,WAAY,CACV,CACEkb,aAAc,UACdjd,KAAM,UACNkd,KAAM,SACR,EACD,CACDD,aAAc,oCACdjd,KAAM,QACNkd,KAAM,OACR,EACD,CACDD,aAAc,qCACdjd,KAAM,aACNkd,KAAM,OACR,EACD,CACDD,aAAc,oCACdjd,KAAM,GACNkd,KAAM,OACR,EACD,CACDE,gBAAiB,OACjBF,KAAM,UACR,EACD,gGEltBWnmB,EAOAsG,iBAPAtG,EAAAA,GAAAA,CAAAA,EAAAA,CAAAA,CAAAA,cACCsmB,EAAAA,EAAyBA,CAACrmB,QAAQ,yBACnCqmB,EAAAA,EAAyBA,CAACvhB,OAAO,2BAC9BuhB,EAAAA,EAAyBA,CAACthB,UAAU,gCAClCshB,EAAAA,EAAyBA,CAACrhB,YAAY,kBAG3CqB,EAAAA,GAAAA,CAAAA,EAAAA,CAAAA,CAAAA,geCaL,IAAMmf,EAAqB,GAGhC,EAAec,UAAU,CAChBjgB,EAAAA,CAAeA,CAACkgB,EAAE,CAGvBhmB,EAAWimB,UAAU,CAChBngB,EAAAA,CAAeA,CAACogB,EAAE,CAGvBlmB,EAAWmmB,UAAU,CAChBrgB,EAAAA,CAAeA,CAACsgB,EAAE,CAGvBpmB,EAAWqmB,UAAU,CAChBvgB,EAAAA,CAAeA,CAACwgB,EAAE,CAGvBtmB,EAAWumB,UAAU,CAChBzgB,EAAAA,CAAeA,CAAC0gB,EAAE,CAGvBxmB,EAAWymB,UAAU,CAChB3gB,EAAAA,CAAeA,CAAC4gB,EAAE,CAGpB5gB,EAAAA,CAAeA,CAACK,IAAI,CAGhBwB,EAAyB,GAG7BvM,GAAcA,EAAW0a,MAAM,CAG3BzU,EAAsB,GAO1B,EACLH,WAAY,CAAC1B,EAAAA,CAAaA,CAACC,QAAQ,CAAED,EAAAA,CAAaA,CAAC+E,OAAO,CAAC,CAACyf,QAAQ,CAClE3kB,GAEF8B,QAAS9B,IAAiBG,EAAAA,CAAaA,CAACgF,UAAU,CAClDpD,UAAW/B,IAAiBG,EAAAA,CAAaA,CAACiF,YAAY,CACxD,EAGWzC,EAAwB,CACnC3C,EACAK,EACAE,EACAE,EACAE,KAEA,GAAM,CAAEkB,WAAAA,CAAU,CAAEC,QAAAA,CAAO,CAAEC,UAAAA,CAAS,CAAE,CAAGC,EAAoBhC,GAE/D,OAAO6B,EACH,CAAC,CAACxB,GAAU,CAAC,CAACM,EACdmB,EACE,CAAC,CAACvB,GAAa,CAAC,CAACE,EACjBsB,EAAAA,GACE,CAAC,CAAC1B,CAEZ,EAEO,SAASyD,EACdX,CAAgC,CAChC9C,CAAc,CACdE,CAAiB,CACjBE,CAAiB,CACjBE,CAAkB,CAClBX,CAA2B,EAE3B,GAAM,CAAE6B,WAAAA,CAAU,CAAEC,QAAAA,CAAO,CAAEC,UAAAA,CAAS,CAAE,CAAGC,EAAoBhC,GAc/D,MAAO,CAACmD,KAZKtB,EACT,CAACylB,CAAAA,EAAAA,EAAAA,CAAAA,EAAWjnB,GAAU,KAAM,CAACM,EAAW,CACxCmB,EACE,CAACwlB,CAAAA,EAAAA,EAAAA,CAAAA,EAAW/mB,GAAa,KAAM+mB,CAAAA,EAAAA,EAAAA,CAAAA,EAAW7mB,GAAa,KAAK,CAC5DsB,EACE,CACEulB,CAAAA,EAAAA,EAAAA,CAAAA,EAAW/mB,GAAa,KACxB+mB,CAAAA,EAAAA,EAAAA,CAAAA,EAAW7mB,GAAa,KACxB6mB,CAAAA,EAAAA,EAAAA,CAAAA,EAAWjnB,GAAU,KACtB,CACD,EAAE,CAEoB,CAGzB,SAASknB,EACdC,CAA4C,CAC5CC,CAA4C,CAC5CC,CAAkB,CAClBC,CAAkD,CAClDxJ,CAA+B,EAE/B,IAAMyJ,EAA4B,CAAC,EAEnC,IAAK,IAAMC,KAASL,EAAqB,CACvC,IAAMM,EAAiBN,CAAmB,CAACK,EAAM,CAACtpB,KAAK,CACjDwpB,EAAaP,CAAmB,CAACK,EAAM,CAACE,UAAU,CAClDC,EAAQR,CAAmB,CAACK,EAAM,CAACG,KAAK,CACxCC,EAAeN,MAAAA,EAAAA,KAAAA,EAAAA,CAAoB,CAACE,EAAM,CAEhD,GAAI,CAAC1J,GAAe,CAAC8J,GAAgB,CAACH,EACpC,SAGF,IAAMvpB,EAAQupB,EAAeI,MAAM,CAAS,CAACC,EAAOzG,KAClD,IAAM0G,EAAiBX,CAAa,CAAC/F,EAAKve,YAAY,CAAC,CAEnDklB,EAAoBD,MAAAA,EAAAA,KAAAA,EAAAA,EAAgBE,QAAQ,CAMhD,MAJI,CAACF,CAAAA,MAAAA,EAAAA,KAAAA,EAAAA,EAAgBG,OAAO,GAAIF,GAAqB3G,EAAK/gB,UAAU,EAClE0nB,CAAAA,GAAqBX,EAAa,GAAMhG,CAAAA,EAAK/gB,UAAU,CAAG,IAGrD,IAAIwnB,EAAO,CAAE,GAAGzG,CAAI,CAAE4G,SAAUD,CAAkB,EAAE,EAC1D,EAAE,EACC,CAAEG,gBAAAA,CAAe,CAAEC,iBAAAA,CAAgB,CAAE,CAAGC,SAwBhDC,CAAkB,CAClBV,CAAoB,CACpBF,CAAkC,CAClC5J,CAAmB,CACnB6J,CAAwB,EAExB,IAAIY,EAAoBZ,CAAAA,MAAAA,EAAAA,KAAAA,EAAAA,EAAO3nB,MAAM,GAAI,CAAE,EAErCwoB,EAA4BF,EAAWrW,MAAM,CAAC,IAClD,GAAI,CAACoP,EAAK4G,QAAQ,EAAIQ,EAAAA,EAAcA,CAACnnB,QAAQ,IAAMwc,EACjD,MAAO,GAITyK,EACElH,EAAKiE,OAAO,CAAGiD,EAAoBlH,EAAKiE,OAAO,CAAGiD,CACtD,GASA,OAPIb,GACFa,CAAAA,EACEb,EAAWpC,OAAO,CAAGiD,EACjBb,EAAWpC,OAAO,CAClBiD,CAAAA,EAGD,CACLJ,gBAAiBK,EACjBJ,iBAAkBR,EAAeW,CACnC,CACF,EApDMrqB,EACA0pB,EACAF,EACA5J,EACA6J,GAGIe,EAA2B,CAC/Bd,aAAAA,EACA1pB,MAAAA,EACAwpB,WAAAA,EACAS,gBAAAA,EACAC,iBAAAA,EACAT,MAAAA,CACF,CAEAJ,CAAAA,CAAa,CAACC,EAAM,CAAGkB,CACzB,CAEA,OAAOnB,CACT,CAkCO,SAASoB,EACdC,CAA0B,CAC1BC,CAAU,EAEV,OAAOD,EACH,IAAIA,EAAOziB,MAAM,GAAG,CAAC2iB,IAAI,CAAC,GAAWtB,EAAMqB,EAAE,GAAKA,GAClDpgB,KAAAA,CACN,CA0BO,SAASsgB,EAA6BhuB,CAMT,KANS,CAC3Ca,EAAAA,CAAC,CACDylB,KAAAA,CAAI,CACJvD,YAAAA,CAAW,CACXtI,SAAAA,CAAQ,CACRK,OAAAA,CAAM,CAC4B,CANS9a,EAOrC,CAAEktB,SAAAA,CAAQ,CAAEnlB,aAAAA,CAAY,CAAEwiB,QAAAA,CAAO,CAAE,CAAGjE,EAEtCrhB,EAAS,GAAmC6V,MAAAA,CAAhCF,CAAAA,EAAAA,EAAAA,EAAAA,EAAU2P,EAAS9P,GAAU,KAAU5Q,MAAA,CAAPiR,UAElD,KAlCoBpN,IAkCFwf,EACTrsB,EAAE,4BAA6B,CACpCoE,OAAAA,EACA8C,aAAAA,CACF,GAGF,GAAkBgb,GArCoBmK,GAqCpBnK,EACTliB,EAAE,4BAA6B,CACpCoE,OAAAA,EACAioB,SAAAA,EACAnlB,aAAAA,CACF,GAEOlH,EAAE,wCAAyC,CAChDoE,OAAAA,EACA8C,aAAAA,CACF,EAEJ,CAEO,SAASkmB,EAAmCjuB,CAKT,KALS,CACjDa,EAAAA,CAAC,CACD4Z,SAAAA,CAAQ,CACRK,OAAAA,CAAM,CACN6R,WAAAA,CAAU,CAC8B,CALS3sB,EAMjD,OAAOa,EAAE,oCAAqC,CAC5CoE,OAAQ,GAA8C6V,MAAAA,CAA3CF,CAAAA,EAAAA,EAAAA,EAAAA,EAAU+R,EAAWpC,OAAO,CAAE9P,GAAU,KAAU5Q,MAAA,CAAPiR,EACxD,EACF,CAEO,SAASoT,EACdzkB,CAAyC,SAEzC,EAEO0B,OAAOC,MAAM,CAAC3B,GAAMqjB,MAAM,CAAW,CAACqB,EAAAA,QAAK,CAAEhrB,MAAAA,CAAK,CAAE,CAAAnD,EACnDouB,EAAgBjrB,EAAMmI,GAAG,CAAC,GAAUgb,EAAKve,YAAY,GAAK,EAAE,CAElE,OAAOomB,EAAItkB,MAAM,CAACukB,EACpB,EAAG,EAAE,EANa,EAAE,CASf,SAASC,EACdC,CAAkD,EAKlD,GAAIA,EAAYC,UAAU,CAAE,CAC1B,GAAM,CAAEhE,QAAAA,CAAO,CAAEjE,KAAAA,CAAI,CAAE,CAAGgI,EAAYE,UAAU,CAEhD,MAAO,CACLjE,QAASA,EAAQrJ,QAAQ,GACzB3b,WAAY+gB,EAAK/gB,UAAU,CAACoD,KAAK,CAErC,CAEA,GAAI2lB,EAAY5nB,OAAO,CAAE,CACvB,GAAM,CAAEtD,IAAAA,CAAG,CAAEE,IAAAA,CAAG,CAAE,CAAGgrB,EAAYG,OAAO,CAExC,MAAO,CACLlE,QAASnnB,EAAI8d,QAAQ,GAAK5d,EAAI4d,QAAQ,GACtC3b,WAAY,CACd,CACF,CAEA,GAAI+oB,EAAYI,cAAc,CAAE,CAC9B,GAAM,CAAEC,QAAAA,CAAO,CAAEvrB,IAAAA,CAAG,CAAEE,IAAAA,CAAG,CAAE,CAAGgrB,EAAYM,cAAc,CAExD,MAAO,CACLrE,QAASnnB,EAAI8d,QAAQ,GAAK5d,EAAI4d,QAAQ,GAAKyN,EAAQzN,QAAQ,GAC3D3b,WAAY,CACd,CACF,CAEA,MAAO,CAAEglB,QAAS,CAAE,EAAEhlB,WAAY,CAAE,CACtC,CAEO,SAASspB,EACdC,CAAiB,CACjB/L,CAAoB,EAEpB,OAAO5X,OAAOqM,IAAI,CAACsX,GAAO5X,MAAM,CAC9B,QACE4X,EACCA,EAECA,QAHFA,CAAAA,OAAAA,CAAAA,EAAAA,CAAK,CAACrC,EAAM,GAAZqC,KAAAA,IAAAA,EAAAA,KAAAA,EAAAA,EAAczB,gBAAgB,EAAG,CAAE,GAClCyB,CAAAA,OAAAA,CAAAA,EAAAA,CAAK,CAACrC,EAAM,CAACG,KAAK,GAAlBkC,KAAAA,IAAAA,EAAAA,KAAAA,EAAAA,EAAoBC,iBAAiB,GACpChM,GACA+L,CAAAA,OAAAA,CAAAA,EAAAA,CAAK,CAACrC,EAAM,CAACG,KAAK,GAAlBkC,KAAAA,IAAAA,EAAAA,KAAAA,EAAAA,EAAoBC,iBAAiB,EAAGhM,GAEhD,CAuDO,SAASiM,EAAyBhvB,CAcxC,KAdwC,CACvC8uB,MAAAA,CAAK,CACLjB,OAAAA,CAAM,CACNpT,SAAAA,CAAQ,CACRK,OAAAA,CAAM,CACNja,EAAAA,CAAC,CACDkiB,YAAAA,CAAW,CAQZ,CAdwC/iB,EAejCivB,EAAmB,EAAE,CAErBC,EAAwBC,SArE9BtB,CAA0B,CAC1BiB,CAAiB,CACjBjuB,CAAY,EAGZ,IAAMuuB,EAAmBC,EAD8BP,GAEpDxjB,GAAG,CAAC,GAAWsiB,EAAoBC,EAAQ/I,OAAO2H,KAClDvV,MAAM,CAAC,GAAW,CAAC,CAACuV,GAEvB,GAAI,CAAC2C,EAAiB3gB,MAAM,CAC1B,OAAO,KAGT,IAAM6gB,EAAgBF,EACnB9jB,GAAG,CAAC,GAAWzK,EAAE4rB,EAAMze,IAAI,GAC3BuhB,IAAI,CAAC,MAER,OAAO1uB,EAAE,kCAAmC,CAAEyuB,cAAAA,CAAc,EAC9D,EAmD4DzB,EAAQiB,EAAOjuB,GAMzE,IAAK,IAAM2D,KAJP0qB,GACFD,EAAiBO,IAAI,CAACN,GAGFJ,EAAO,CAC3B,IAAMW,EAAmBC,SAvD3BlrB,CAAe,CACfsqB,CAAiB,CACjBjB,CAA0B,CAC1BpT,CAAgB,CAChBK,CAAc,CACdja,CAAY,CACZkiB,CAA+B,MAEjB+L,EAAd,IAAMlC,EAAAA,OAAQkC,CAAAA,EAAAA,CAAK,CAACtqB,EAAQ,GAAdsqB,KAAAA,IAAAA,EAAAA,KAAAA,EAAAA,EAAgBlC,KAAK,CAC7BH,EAAQmB,EAAoBC,EAAQ/I,OAAOtgB,IAEjD,GAAI,CAACooB,GAAS,CAACH,EACb,OAAO,KAGT,IAAMkD,EACJ/C,EAAMmC,iBAAiB,EACvBhM,GACA6J,EAAMmC,iBAAiB,CAAGhM,EAEtB9d,EAAS,GAAwC6V,MAAAA,CAArCF,CAAAA,EAAAA,EAAAA,EAAAA,EAAUgS,EAAM3nB,MAAM,CAAEwV,GAAU,KAAU5Q,MAAA,CAAPiR,GACjD8U,EAAY/uB,EAAE4rB,EAAMze,IAAI,EACxB+gB,EAAoBnC,EAAMmC,iBAAiB,QAEjD,EACSluB,EAAE,qBAAsB,CAAEoE,OAAAA,EAAQ2qB,UAAAA,CAAU,GAG9C/uB,EAAE,0BAA2B,CAAEoE,OAAAA,EAAQ2qB,UAAAA,EAAWb,kBAAAA,CAAkB,EAC7E,EA2BMvqB,EACAsqB,EACAjB,EACApT,EACAK,EACAja,EACAkiB,GAGE0M,GACFR,EAAiBO,IAAI,CAACC,EAE1B,CAEA,OAAOR,CACT,6FChbO,IAAMnb,EACX,qEAEK,SAAS+b,EAAcC,CAAsB,EAElD,GAAsB,UAAlB,OAAOA,GAAuBA,KAAAA,EAAOrhB,MAAM,EAK3C,CAACqhB,EAAOC,UAAU,CAAC,MAJrB,MAAO,GAUT,IAAMC,EAAUF,EAAOG,SAAS,CAAC,GAEjC,MAAO,CAAC,CAACC,iBAAWC,IAAI,CAACH,EAC3B,uECnBO,IAAMlI,EAA2B,uBCCxCsI,EAAAC,OAAA,EAAkB","sources":["webpack://_N_E/./components/NoRecordsFound/NoRecordsFound.tsx","webpack://_N_E/./components/NoRecordsFound/index.ts","webpack://_N_E/./components/PassingOrFailingLabel/PassingOrFailingLabel.tsx","webpack://_N_E/./components/PassingOrFailingLabel/index.ts","webpack://_N_E/./components/VotesProgressBar/VotesProgressBar.tsx","webpack://_N_E/./components/VotesProgressBar/index.ts","webpack://_N_E/./lib/hooks/contracts/voting/useVoteAction.ts","webpack://_N_E/./lib/hooks/queries/staking/useVoteLockingPeriod.ts","webpack://_N_E/./lib/hooks/useMaxAmountVoting.ts","webpack://_N_E/./components/pages/referendum/VotingModal/VotingModal.tsx","webpack://_N_E/./components/pages/referendum/VotingModal/index.ts","webpack://_N_E/./components/pages/referendum/VoteButton/VoteButton.tsx","webpack://_N_E/./components/pages/referendum/VoteButton/index.ts","webpack://_N_E/./components/pages/referendum/VoteInfo/VoteFunctionIcon.tsx","webpack://_N_E/./lib/utils/html.ts","webpack://_N_E/./components/HtmlPresenter/HtmlPresenter.tsx","webpack://_N_E/./components/HtmlPresenter/index.ts","webpack://_N_E/./components/Markdown/Markdown.tsx","webpack://_N_E/./components/Markdown/index.ts","webpack://_N_E/./components/pages/referendum/ProposalEditForm/RichEditor.tsx","webpack://_N_E/./components/pages/referendum/ProposalEditForm/DescriptionEditor.tsx","webpack://_N_E/./lib/hooks/notifications/useTrpcNotifications.tsx","webpack://_N_E/./lib/schema/common.ts","webpack://_N_E/./lib/utils/wallet.ts","webpack://_N_E/./components/pages/referendum/ProposalEditForm/ProposalEditForm.tsx","webpack://_N_E/./components/pages/referendum/Description/Description.tsx","webpack://_N_E/./components/pages/referendum/Description/index.ts","webpack://_N_E/./components/pages/referendum/Metadata/Metadata.tsx","webpack://_N_E/./components/pages/referendum/Metadata/index.ts","webpack://_N_E/./components/pages/referendum/StatusBadge/StatusBadge.tsx","webpack://_N_E/./components/pages/referendum/StatusBadge/index.tsx","webpack://_N_E/./components/pages/referendum/Timeline/TimelineElement.tsx","webpack://_N_E/./lib/utils/referendaStatus.ts","webpack://_N_E/./components/pages/referendum/Timeline/Timeline.tsx","webpack://_N_E/./components/pages/referendum/Timeline/index.ts","webpack://_N_E/./components/pages/referendum/Votes/SupportProgressBar.tsx","webpack://_N_E/./lib/hooks/queries/useIssuance.ts","webpack://_N_E/./components/pages/referendum/Votes/GeneralStats.tsx","webpack://_N_E/./components/pages/referendum/Votes/ThresholdCharts/Chart.tsx","webpack://_N_E/./components/pages/referendum/Votes/ThresholdCharts/ThresholdCharts.tsx","webpack://_N_E/./components/pages/referendum/Votes/ThresholdCharts/index.ts","webpack://_N_E/./components/pages/referendum/Votes/VotesHeader.tsx","webpack://_N_E/./components/pages/referendum/Votes/DelegateIcon.tsx","webpack://_N_E/./lib/hooks/queries/open-gov/useVotes.ts","webpack://_N_E/./components/pages/referendum/Votes/VoteRow.tsx","webpack://_N_E/./components/pages/referendum/Votes/VotesList.tsx","webpack://_N_E/./components/pages/referendum/Votes/VotesResults.tsx","webpack://_N_E/./components/pages/referendum/Votes/Votes.tsx","webpack://_N_E/./components/pages/referendum/Votes/index.ts","webpack://_N_E/./components/pages/referendum/index.ts","webpack://_N_E/./lib/hooks/queries/open-gov/useDelegatingVotesInfo.ts","webpack://_N_E/./lib/hooks/useProgressBarData.ts","webpack://_N_E/./lib/services/contracts/ConvictionVoting/ConvictionVotingABI.ts","webpack://_N_E/./lib/services/contracts/ConvictionVoting/constants.ts","webpack://_N_E/./lib/types/governance/voting.ts","webpack://_N_E/./lib/utils/governance.ts","webpack://_N_E/./lib/utils/validation/validation.ts","webpack://_N_E/./server/api/trpc.constants.ts","webpack://_N_E/./components/pages/referendum/Timeline/Timeline.module.css","webpack://_N_E/ignored|/codebuild/output/src440127642/src/moonbeam-apps-v2/node_modules/postcss/lib|./terminal-highlight","webpack://_N_E/ignored|/codebuild/output/src440127642/src/moonbeam-apps-v2/node_modules/postcss/lib|fs","webpack://_N_E/ignored|/codebuild/output/src440127642/src/moonbeam-apps-v2/node_modules/postcss/lib|path","webpack://_N_E/ignored|/codebuild/output/src440127642/src/moonbeam-apps-v2/node_modules/postcss/lib|source-map-js"],"sourcesContent":["import { Stack, StackProps, Text } from '@mantine/core';\nimport { BsFolderX } from 'react-icons/bs';\n\ninterface Props extends StackProps {\n label: string;\n}\n\nexport const NoRecordsFound = ({ label, ...others }: Props) => {\n return (\n \n \n {label}\n \n );\n};\n","export * from './NoRecordsFound';\n","import { Badge, Tooltip } from '@mantine/core';\n\nimport { useBlockRemainingTime } from 'hooks/useBlockTime';\nimport { useTranslation } from 'next-i18next';\nimport { ReferendumFailingReason } from 'types/governance';\nimport { ProposalInformation } from 'types/governance/proposalInformation';\n\ninterface Props {\n referendum?: ProposalInformation;\n isCompact?: boolean;\n}\n\nexport const PassingOrFailingLabel = ({\n referendum,\n isCompact = false,\n}: Props) => {\n const { t } = useTranslation('governance');\n\n const passingStatus = referendum?.passingStatus;\n const isPassing = passingStatus?.isPassing;\n const timeToEnd = useBlockRemainingTime(passingStatus?.whenBlock);\n\n if (!passingStatus) return undefined;\n\n return (\n \n \n {!isCompact && t(isPassing ? 'passing' : 'failing')}\n {isCompact && t(isPassing ? 'P' : 'F')}\n \n \n );\n};\n","export * from './PassingOrFailingLabel';\n","import {\n Progress,\n ProgressRootProps,\n Tooltip,\n useMantineTheme,\n} from '@mantine/core';\nimport { useThemeColors } from 'hooks/useThemeColors';\nimport { useTranslation } from 'next-i18next';\nimport { ProposalInformation } from 'types/governance/proposalInformation';\n\ninterface Props extends Omit {\n referendum?: ProposalInformation;\n showTooltip?: boolean;\n}\n\nexport const VotesProgressBar = ({\n referendum,\n showTooltip = false,\n ...progressProps\n}: Props) => {\n const theme = useMantineTheme();\n const {\n other: { colors },\n } = theme;\n const { themeColors } = useThemeColors();\n const { t } = useTranslation('governance');\n\n const ayesPercentage = referendum?.ayes?.percentage || 0;\n const naysPercentage = referendum?.nays?.percentage || 0;\n\n const buffer =\n referendum && ayesPercentage < 1\n ? ayesPercentage\n : ayesPercentage === 100\n ? 0\n : 1;\n\n return (\n \n \n \n {/* transparent buffer */}\n \n \n \n \n );\n};\n","export * from './VotesProgressBar';\n","import {\n UseWriteContractAndConfirmReturnType,\n useWriteContractAndConfirm,\n} from 'hooks/contracts/useWriteContractAndConfirm';\nimport { TransactionAction } from 'hooks/notifications/useWalletNotifications';\nimport {\n CONVICTION_VOTING_CONTRACT_ADDRESS,\n ConvictionVotingContractABI,\n} from 'services/contracts/ConvictionVoting/constants';\nimport { VoteFunctions } from 'types/governance/voting';\nimport { extractVoteActionArgs } from 'utils/governance';\n\ninterface UseVoteActionParams {\n amount: string;\n ayeAmount: string;\n nayAmount: string;\n referendumId: number | undefined;\n conviction: string;\n voteFunction: VoteFunctions;\n onSuccess?: () => void;\n}\n\nconst action = TransactionAction.VOTE;\n\nexport function useVoteAction({\n referendumId,\n amount,\n ayeAmount,\n nayAmount,\n conviction,\n voteFunction,\n onSuccess,\n}: UseVoteActionParams): UseWriteContractAndConfirmReturnType {\n return useWriteContractAndConfirm({\n action,\n allowProxy: true,\n contractAddress: CONVICTION_VOTING_CONTRACT_ADDRESS,\n contractAbi: ConvictionVotingContractABI,\n functionName: voteFunction,\n onConfirmed: onSuccess,\n args: extractVoteActionArgs(\n referendumId,\n amount,\n ayeAmount,\n nayAmount,\n conviction,\n voteFunction,\n ),\n });\n}\n","import { u32 } from '@polkadot/types';\nimport { useApi } from 'hooks/useApi';\nimport { useMoonChain } from 'hooks/useMoonChainConfig';\nimport { useMemo } from 'react';\n\nfunction useVoteLockingPeriodInBlocks(): number {\n const api = useApi();\n\n return useMemo(\n () => (api?.consts.convictionVoting.voteLockingPeriod as u32)?.toNumber(),\n [api],\n );\n}\n\nexport function useVoteLockingPeriodInDays(): number {\n const lockingPeriodInBlocks = useVoteLockingPeriodInBlocks();\n\n const { blockTime } = useMoonChain();\n\n return (lockingPeriodInBlocks * blockTime) / 86400;\n}\n","import { useMoonBalances } from 'hooks/queries/balances/useMoonChainBalances';\nimport { useMaxAmount } from 'hooks/useMaxAmount';\nimport { useProxiedOrAddress } from 'hooks/useProxiedOrAddress';\n\nexport const useMaxAmountVoting = (): {\n maxAmount: bigint | undefined;\n maxInput: string | undefined;\n} => {\n const address = useProxiedOrAddress();\n const balances = useMoonBalances(address);\n\n return useMaxAmount(balances?.availableForVoting);\n};\n","import {\n Group,\n Modal,\n SegmentedControl,\n Select,\n Stack,\n Text,\n} from '@mantine/core';\nimport Big from 'big.js';\nimport { ActionButton } from 'components/ActionButton';\nimport { ActionCallButton } from 'components/ActionCallButton';\nimport { AssetAmountInput } from 'components/AssetAmountInput';\nimport { InfoBlock, InfoLine } from 'components/InfoBlock';\nimport { InputError } from 'components/InputError';\nimport { MoonTokenAmount } from 'components/TokenAmount';\nimport { VoteFunctionIcon } from 'components/pages/referendum/VoteInfo/VoteFunctionIcon';\nimport { useVoteAction } from 'hooks/contracts/voting/useVoteAction';\nimport { useMoonBalances } from 'hooks/queries/balances/useMoonChainBalances';\nimport { useDelegatingVotesInfo } from 'hooks/queries/open-gov/useDelegatingVotesInfo';\nimport { useVoteLockingPeriodInDays } from 'hooks/queries/staking/useVoteLockingPeriod';\nimport { useIdentity } from 'hooks/queries/useIdentities';\nimport { useMaxAmountVoting } from 'hooks/useMaxAmountVoting';\nimport { useMoonChain } from 'hooks/useMoonChainConfig';\nimport { useMoonChainToDecimals } from 'hooks/useToDecimal';\nimport { useValidateMoonChainAmount } from 'hooks/validation/useValidateAmount';\nimport { useTranslation } from 'next-i18next';\nimport { useState } from 'react';\nimport { IoAlertCircleOutline } from 'react-icons/io5';\nimport { MdOutlineHowToVote } from 'react-icons/md';\nimport { useProxiedAddress } from 'recoil/proxiedAddress';\nimport { ProposalInformation } from 'types/governance/proposalInformation';\nimport { ConvictionLabel, VoteFunctions } from 'types/governance/voting';\nimport { getVotingActionType, isVotingInputComplete } from 'utils/governance';\nimport { candidateDisplay } from 'utils/text';\nimport { useAccount } from 'wagmi';\n\ninterface Props {\n referendum: ProposalInformation | undefined;\n isOpen: boolean;\n onClose: () => void;\n}\n\nexport const VotingModal = ({ referendum, isOpen, onClose }: Props) => {\n const { t } = useTranslation('governance');\n const { isConnected } = useAccount();\n const delegatinVotes = useDelegatingVotesInfo(referendum?.trackId);\n const delegatingToAddress = delegatinVotes?.address;\n const voteDelegateIdentity = useIdentity(delegatingToAddress);\n\n const [voteFunction, setVoteFunction] = useState(\n VoteFunctions.VOTE_YES,\n );\n const [amount, setAmount] = useState('');\n const [ayeAmount, setAyeAmount] = useState('');\n const [nayAmount, setNayAmount] = useState('');\n const [conviction, setConviction] = useState('0');\n const { nativeAsset } = useMoonChain();\n const { proxiedAddress } = useProxiedAddress();\n const balances = useMoonBalances(proxiedAddress);\n const voteLockingPeriod = useVoteLockingPeriodInDays();\n\n const { isAyeOrNay, isSplit, isAbstain } = getVotingActionType(voteFunction);\n\n const { maxAmount } = useMaxAmountVoting();\n\n const [validatedAmount, amountError] = useValidateMoonChainAmount({\n amount,\n maxAmount,\n aggregatedAmounts: [ayeAmount, nayAmount],\n });\n const [validatedAyeAmount, ayeAmountError] = useValidateMoonChainAmount({\n amount: ayeAmount,\n maxAmount,\n aggregatedAmounts: [nayAmount, amount],\n });\n const [validatedNayAmount, nayAmountError] = useValidateMoonChainAmount({\n amount: nayAmount,\n maxAmount,\n aggregatedAmounts: [ayeAmount, amount],\n });\n\n const isInputComplete = isVotingInputComplete(\n voteFunction,\n validatedAmount,\n validatedAyeAmount,\n validatedNayAmount,\n conviction,\n );\n\n const maxInput = useMoonChainToDecimals(maxAmount, 2, true, Big.roundDown);\n\n const { writeContract, isPending } = useVoteAction({\n amount: validatedAmount,\n ayeAmount: validatedAyeAmount,\n nayAmount: validatedNayAmount,\n referendumId: referendum?.index,\n conviction,\n voteFunction,\n onSuccess: () => {\n onClose();\n clean();\n },\n });\n\n const clean = () => {\n setAmount('');\n setAyeAmount('');\n setNayAmount('');\n setConviction('0');\n };\n\n const isDisabled = isPending || !isInputComplete || !isConnected;\n\n const buttonName = t(proxiedAddress ? 'voteAsProxy' : 'vote');\n\n return (\n \n \n {\n clean();\n setVoteFunction(index as VoteFunctions);\n }}\n disabled={isPending}\n data={[\n {\n label: (\n \n \n {t(`voteDecision.${VoteFunctions.VOTE_YES}`)}\n \n ),\n value: VoteFunctions.VOTE_YES,\n },\n {\n label: (\n \n \n {t(`voteDecision.${VoteFunctions.VOTE_NO}`)}\n \n ),\n value: VoteFunctions.VOTE_NO,\n },\n {\n label: (\n \n \n {t(`voteDecision.${VoteFunctions.VOTE_SPLIT}`)}\n \n ),\n value: VoteFunctions.VOTE_SPLIT,\n },\n {\n label: (\n \n \n {t(`voteDecision.${VoteFunctions.VOTE_ABSTAIN}`)}\n \n ),\n value: VoteFunctions.VOTE_ABSTAIN,\n },\n ]}\n />\n {isAyeOrNay && (\n <>\n \n setAmount(e.currentTarget.value)}\n />\n }\n info={\n maxInput && setAmount(maxInput)}\n isLoading={isPending}\n />\n }\n />\n {!isPending && }\n \n ({\n value: index.toString(),\n label: t('convictionSelectorLabel', {\n balanceLocking: conviction,\n lockedFor: t(\n conviction === ConvictionLabel.NONE\n ? 'noLockupPeriod'\n : 'lockedForDuration',\n { duration: voteLockingPeriod * 2 ** (index - 1) },\n ),\n }),\n }))}\n value={conviction}\n onChange={(value: string | null) =>\n setConviction(value as string)\n }\n disabled={isPending}\n />\n \n )}\n {isAbstain && (\n \n {t('common:amount')}}\n asset={nativeAsset}\n value={amount}\n onChange={(event) => setAmount(event.target.value)}\n disabled={isPending}\n />\n {!isPending && }\n \n )}\n {(isSplit || isAbstain) && (\n <>\n \n {t('ayeAmount')}}\n asset={nativeAsset}\n value={ayeAmount}\n onChange={(event) => setAyeAmount(event.target.value)}\n disabled={isPending}\n />\n {!isPending && }\n \n \n {t('nayAmount')}}\n asset={nativeAsset}\n value={nayAmount}\n onChange={(event) => setNayAmount(event.target.value)}\n disabled={isPending}\n />\n {!isPending && }\n \n \n )}\n \n \n {t('balanceAvailableForVoting')}\n \n \n \n {!!delegatingToAddress && (\n \n \n \n {t('userAlreadyDelegatingVoteWarning', {\n delegated: candidateDisplay(\n voteDelegateIdentity,\n delegatingToAddress,\n ),\n origin: t(referendum?.origin || ''),\n })}\n \n \n )}\n \n \n {t('common:cancel')}\n \n writeContract()}\n disabled={isDisabled}\n leftSection={}\n loading={isPending}\n >\n {buttonName}\n \n \n \n \n );\n};\n","export * from './VotingModal';\n","import { ActionCallButton } from 'components/ActionCallButton';\nimport { VotingModal } from 'components/pages/referendum/VotingModal';\nimport { useTranslation } from 'next-i18next';\nimport { useState } from 'react';\nimport { ProposalInformation } from 'types/governance/proposalInformation';\nimport { canReferendumBeVotedOn } from 'utils/governance';\n\ninterface Props {\n referendum?: ProposalInformation;\n label?: string;\n}\n\nexport const VoteButton = ({ referendum, label }: Props) => {\n const { t } = useTranslation('governance');\n const [isVotingModalOpen, setIsVotingModalOpen] = useState(false);\n\n return (\n <>\n setIsVotingModalOpen(false)}\n />\n {canReferendumBeVotedOn(referendum) && (\n setIsVotingModalOpen(true)}\n >\n {t(label || 'vote')}\n \n )}\n \n );\n};\n","export * from './VoteButton';\n","import { useMantineTheme } from '@mantine/core';\nimport { IoThumbsDownSharp, IoThumbsUpSharp } from 'react-icons/io5';\nimport { MdOutlineCallSplit } from 'react-icons/md';\nimport { TbHandStop } from 'react-icons/tb';\nimport { VoteFunctions } from 'types/governance/voting';\n\ninterface Props {\n voteFunction: VoteFunctions | undefined;\n}\n\nexport const VoteFunctionIcon = ({ voteFunction }: Props) => {\n const {\n other: { colors },\n } = useMantineTheme();\n\n return voteFunction === VoteFunctions.VOTE_YES ? (\n \n ) : voteFunction === VoteFunctions.VOTE_NO ? (\n \n ) : voteFunction === VoteFunctions.VOTE_SPLIT ? (\n \n ) : voteFunction === VoteFunctions.VOTE_ABSTAIN ? (\n \n ) : undefined;\n};\n","import sanitize from 'sanitize-html';\n\nexport function sanitizeHtml(dirty: string): string {\n return sanitize(dirty, {\n allowedTags: [\n 'b',\n 'i',\n 'em',\n 'strong',\n 'a',\n 'p',\n 'ul',\n 'ol',\n 'li',\n 'blockquote',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'hr',\n 'code',\n ],\n allowedAttributes: {\n a: ['href'],\n },\n allowedIframeHostnames: [''],\n });\n}\n","import { Box, Code, TypographyStylesProvider } from '@mantine/core';\nimport { OffsiteLink } from 'components/OffsiteLink';\nimport htmlParser, {\n DOMNode,\n Element,\n HTMLReactParserOptions,\n Text,\n} from 'html-react-parser';\nimport { sanitizeHtml } from 'utils/html';\n\nconst options: HTMLReactParserOptions = {\n replace: (domNode: DOMNode) => {\n if (domNode instanceof Element && domNode.name === 'a') {\n const linkText = domNode.firstChild\n ? (domNode.firstChild as Text).data\n : '';\n\n return (\n \n );\n }\n\n if (domNode instanceof Element && domNode.name === 'code') {\n const codeText = domNode.firstChild\n ? (domNode.firstChild as Text).data\n : '';\n\n if (codeText.length < 81) {\n return {codeText};\n }\n\n return {codeText};\n }\n },\n};\n\nconst createHtmlWithOffsiteLinks = (htmlString: string) => {\n return htmlParser(sanitizeHtml(htmlString), options);\n};\n\ntype Props = {\n htmlString: string;\n};\n\nexport const HtmlPresenter = ({ htmlString }: Props): JSX.Element => {\n return (\n \n \n {createHtmlWithOffsiteLinks(htmlString)}\n \n \n );\n};\n","export * from './HtmlPresenter';\n","import { Code } from '@mantine/core';\nimport { OffsiteLink } from 'components/OffsiteLink';\nimport ReactMarkdown from 'react-markdown';\nimport rehypeHighlight from 'rehype-highlight';\nimport remarkGfm from 'remark-gfm';\n\ntype Props = {\n markdown: string;\n};\n\nexport const Markdown = ({ markdown }: Props): JSX.Element => {\n return (\n \n );\n },\n code: ({ children }) => {\n if (String(children).length < 81) {\n return {children};\n }\n\n return {children};\n },\n }}\n >\n {markdown}\n \n );\n};\n","export * from './Markdown';\n","import { Link, RichTextEditor } from '@mantine/tiptap';\nimport Highlight from '@tiptap/extension-highlight';\nimport SubScript from '@tiptap/extension-subscript';\nimport Superscript from '@tiptap/extension-superscript';\nimport TextAlign from '@tiptap/extension-text-align';\nimport Underline from '@tiptap/extension-underline';\nimport { useEditor } from '@tiptap/react';\nimport StarterKit from '@tiptap/starter-kit';\nimport { useEffect } from 'react';\nimport { Markdown } from 'tiptap-markdown';\n\ninterface Props {\n text: string;\n onChange: (description: string) => void;\n}\n\nexport const RichEditor = ({ text, onChange }: Props) => {\n const editor = useEditor({\n extensions: [\n StarterKit,\n Underline,\n Link,\n Superscript,\n SubScript,\n Highlight,\n TextAlign.configure({ types: ['heading', 'paragraph'] }),\n Markdown,\n ],\n content: '',\n onBlur({ editor }) {\n const htmlStr = editor.getHTML();\n\n onChange(htmlStr);\n },\n });\n\n useEffect(() => {\n editor?.commands.setContent(text);\n }, [text, editor]);\n\n return (\n \n \n \n \n \n \n \n \n \n\n \n \n \n \n \n \n\n \n \n \n \n \n \n\n \n \n \n \n \n\n \n \n );\n};\n","import { Tabs } from '@mantine/core';\nimport { HtmlPresenter } from 'components/HtmlPresenter';\nimport { Markdown } from 'components/Markdown';\nimport { RichEditor } from 'components/pages/referendum/ProposalEditForm/RichEditor';\nimport { useTranslation } from 'next-i18next';\n\ntype Props = {\n description: string;\n isHtml?: boolean;\n setDescription: (description: string) => void;\n};\n\nexport const DescriptionEditor = ({\n description,\n isHtml = false,\n setDescription,\n}: Props): JSX.Element => {\n const { t } = useTranslation('governance');\n\n return (\n \n \n {t('descriptionTab')}\n {t('previewTab')}\n \n \n \n \n \n {isHtml ? (\n \n ) : (\n \n )}\n \n \n );\n};\n","import { showNotification } from '@mantine/notifications';\nimport { autoClose } from 'hooks/notifications/notifications.constants';\nimport { useTranslation } from 'next-i18next';\nimport { useMemo } from 'react';\n\nexport const useTrpcNotifications = () => {\n const { t } = useTranslation('trpc');\n\n const title = t('notifications.mutateFailed.title');\n\n return useMemo(() => {\n return {\n mutateFailed: (message: string) =>\n showNotification({\n title: title,\n message: t('notifications.mutateFailed.message', {\n error: message,\n }),\n color: 'red',\n autoClose,\n }),\n };\n }, [t, title]);\n};\n","import { forumLinkRegex } from 'utils/validation/validation';\nimport { z } from 'zod';\n\nexport const forumUrlSchema = z.string().trim().url().regex(forumLinkRegex, {\n message: 'ForumLinkInvalid',\n});\n\nexport const linksSchema = z.array(\n z.string().url().optional().or(z.literal('')),\n);\n","import { u8aToString } from '@polkadot/util';\nimport { base64Decode, base64Encode } from '@polkadot/util-crypto';\nimport { parse, stringify } from 'superjson';\n\nexport function createSigningPayload(\n address: string,\n payload: Record,\n): string {\n const stringified = stringify({\n address,\n payload,\n createdAt: new Date(),\n });\n\n return base64Encode(stringified);\n}\n\nexport function decodePayload(encoded: string): T {\n const decoded = u8aToString(base64Decode(encoded));\n\n return parse(decoded);\n}\n","import {\n Box,\n Button,\n Card,\n Divider,\n Group,\n Input,\n Stack,\n Text,\n TextInput,\n Tooltip,\n} from '@mantine/core';\nimport { ActionCallButton } from 'components/ActionCallButton';\n\nimport { Trans, useTranslation } from 'next-i18next';\nimport { useCallback, useEffect, useMemo } from 'react';\nimport { IoLinkOutline } from 'react-icons/io5';\n\nimport { useForm, zodResolver } from '@mantine/form';\nimport { UrlInputError } from 'components/InputError';\nimport { OffsiteLink } from 'components/OffsiteLink';\nimport { DescriptionEditor } from 'components/pages/referendum/ProposalEditForm/DescriptionEditor';\nimport { openGovForumURL } from 'configs/urls';\nimport { useTrpcNotifications } from 'hooks/notifications/useTrpcNotifications';\nimport {\n TransactionAction,\n useWalletNotifications,\n} from 'hooks/notifications/useWalletNotifications';\nimport { useAddress } from 'hooks/useAddress';\nimport { useThemeColors } from 'hooks/useThemeColors';\nimport { forumUrlSchema, linksSchema } from 'lib/schema/common';\nimport { api } from 'lib/trpc/react';\nimport { TreasuryProposal } from 'models/open-gov/treasuryProposal/TreasuryProposal';\nimport { PiMinusBold, PiPlusBold } from 'react-icons/pi';\nimport { ProposalInformation } from 'types/governance/proposalInformation';\nimport { createSigningPayload } from 'utils/wallet';\nimport { useSignMessage } from 'wagmi';\nimport { z } from 'zod';\n\nconst formSchema = z.object({\n title: z.string(),\n forumLink: forumUrlSchema,\n links: linksSchema,\n description: z.string().min(100),\n});\n\ninterface Props {\n referendum?: ProposalInformation | TreasuryProposal;\n closeForm: () => void;\n isHtml?: boolean;\n}\n\nexport const ProposalEditForm = ({\n referendum,\n closeForm,\n isHtml,\n}: Props): JSX.Element => {\n const { t } = useTranslation();\n const trpcUtils = api.useUtils();\n const { mutateFailed } = useTrpcNotifications();\n const address = useAddress();\n const { notifyTransactionError } = useWalletNotifications(\n TransactionAction.SIGN,\n );\n const { themeColors } = useThemeColors();\n\n const form = useForm({\n validate: zodResolver(formSchema),\n initialValues: {\n title: referendum?.title || '',\n forumLink: referendum?.forumLink || '',\n links: referendum?.links || [],\n description: referendum?.description || '',\n },\n validateInputOnChange: true,\n });\n\n const linksNotMax = form.getInputProps('links').value?.length < 4;\n\n const addMoreLinks = useCallback(() => {\n if (linksNotMax) {\n form.insertListItem('links', '');\n }\n }, [form, linksNotMax]);\n\n const {\n data: signedMsg,\n error: signError,\n isPending: isSigning,\n signMessage,\n variables,\n reset,\n } = useSignMessage();\n\n const { mutate, error, isPending } =\n api.openGov.updateTitleAndDescription.useMutation({\n async onSuccess() {\n closeForm();\n reset();\n await trpcUtils.invalidate();\n },\n async onError(error) {\n console.error(error);\n mutateFailed(error.message);\n closeForm();\n reset();\n },\n });\n\n const submitEdit = useCallback(() => {\n if (address && referendum?.index && form.getInputProps('title').value) {\n const message = createSigningPayload(address, {\n origin: referendum?.origin,\n title: form.getInputProps('title').value,\n description: form.getInputProps('description').value,\n referendumId: referendum?.index,\n forumLink: form.getInputProps('forumLink').value,\n links: form\n .getInputProps('links')\n .value?.filter((link: string) => link !== ''),\n });\n\n signMessage({ message });\n }\n }, [address, form, referendum, signMessage]);\n\n useEffect(() => {\n if (signError) {\n notifyTransactionError(signError);\n }\n }, [signError, notifyTransactionError]);\n\n // biome-ignore lint/correctness/useExhaustiveDependencies: \n useEffect(() => {\n if (signedMsg && variables && !signError && !isPending) {\n mutate({\n moonChainKey: referendum?.moonChainKey as string,\n referendumId: referendum?.index as number,\n signature: signedMsg as string,\n message: variables?.message as string,\n });\n }\n }, [signedMsg, variables, referendum, error, isPending, signError, mutate]);\n\n const submitButtonDisabled = isPending || isSigning || !form.isValid();\n\n const errorsTooltip = useMemo(() => {\n if (!form.isValid()) {\n return Object.keys(form.errors).map((key) => {\n return (\n \n {key}\n {': '}\n {form.errors[key]}\n \n );\n });\n }\n }, [form]);\n\n return (\n <>\n \n \n form.setFieldValue('description', description)\n }\n />\n \n \n \n \n {t('linksAndDocuments', { ns: 'governance' })}\n \n \n }\n style={{ width: '70%' }}\n placeholder={'https://forum.moonbeam.network/t/...'}\n aria-label={t('forumLink', { ns: 'governance' })}\n {...form.getInputProps('forumLink')}\n error={undefined}\n />\n {form.getInputProps('forumLink').error && (\n \n \n {t(`errors.${UrlInputError.ForumLinkInvalid}.issue`)}\n \n \n ,\n ]}\n />\n \n \n )}\n \n {form\n .getInputProps('links')\n .value?.map((_: string, index: number) => (\n \n }\n style={{ width: '70%' }}\n {...form.getInputProps(`links.${index}`)}\n error={\n form.getInputProps(`links.${index}`).error\n ? t(`errors.${UrlInputError.InvalidURL}.issue`)\n : undefined\n }\n />\n {\n form.removeListItem('links', index);\n form.validate();\n }}\n >\n \n \n \n ))}\n \n {linksNotMax && (\n \n \n \n )}\n \n \n \n {t('cancel')}\n \n \n \n \n {t('saveProposal', { ns: 'governance' })}\n \n \n \n \n \n );\n};\n","import {\n Box,\n Card,\n Divider,\n Group,\n Skeleton,\n Stack,\n Text,\n useMantineTheme,\n} from '@mantine/core';\nimport { toDecimal } from '@moonbeam-network/xcm-utils';\nimport { ActionCallButton } from 'components/ActionCallButton';\nimport { Avatar } from 'components/Avatar';\nimport { HtmlPresenter } from 'components/HtmlPresenter';\nimport { Markdown } from 'components/Markdown';\nimport { OffsiteLink } from 'components/OffsiteLink';\nimport { StatusBadge } from 'components/pages/referendum';\nimport { ProposalEditForm } from 'components/pages/referendum/ProposalEditForm/ProposalEditForm';\nimport { useIsValidGovProxy } from 'hooks/queries/proxy/useIsValidPorxy';\nimport { useIdentity } from 'hooks/queries/useIdentities';\nimport { useAddress } from 'hooks/useAddress';\nimport { useBlockTimestampElapsedTime } from 'hooks/useBlockTime';\nimport { useMoonChain } from 'hooks/useMoonChainConfig';\nimport { TreasuryProposal } from 'models/open-gov/treasuryProposal/TreasuryProposal';\nimport { useTranslation } from 'next-i18next';\nimport { useMemo, useState } from 'react';\nimport { IoAlertCircleOutline } from 'react-icons/io5';\nimport { ProposalInformation } from 'types/governance/proposalInformation';\nimport { candidateDisplay, isAddressEqual, isHtmlString } from 'utils/text';\nimport { getUrlDomainFromString } from 'utils/url';\n\ninterface Props {\n proposal?: ProposalInformation | TreasuryProposal;\n}\n\nexport const Description = ({ proposal }: Props) => {\n const { t } = useTranslation('governance');\n const [isEditing, setIsEditing] = useState(false);\n const proposedTime = useBlockTimestampElapsedTime(proposal?.proposeTime, 1);\n const referendumId = proposal?.index;\n const proposerAddress = proposal?.proposer?.address;\n\n const { subscanUrl, polkassemblyUrl } = useMoonChain();\n const { other } = useMantineTheme();\n const identity = useIdentity(proposerAddress);\n const address = useAddress();\n const isValidProxy = useIsValidGovProxy(proposerAddress);\n const isTreasury = TreasuryProposal.isInstance(proposal);\n const { decimals, nativeAsset } = useMoonChain();\n\n const description = useMemo(() => {\n if (isTreasury) {\n return (\n proposal.description ||\n proposal.subscanDescription ||\n t('placeHolderDescriptionTreasury', {\n amount: proposal.reward\n ? toDecimal(proposal.reward, decimals, 6)\n : '0',\n address: proposal.beneficiary.address,\n symbol: nativeAsset.originSymbol,\n })\n );\n }\n\n return (\n proposal?.description ||\n t('placeHolderDescription', {\n address: proposerAddress,\n })\n );\n }, [proposal, isTreasury, t, proposerAddress, decimals, nativeAsset]);\n\n const originText = useMemo(() => {\n if (isTreasury) {\n return t('treasury', { ns: 'common' });\n }\n\n return `${t(proposal?.origin || '')} [${proposal?.trackId}]`;\n }, [isTreasury, proposal, t]);\n\n const subscanProposalUrl = useMemo(() => {\n if (isTreasury) {\n return `${subscanUrl}/treasury/${referendumId}`;\n }\n return `${subscanUrl}/referenda_v2/${referendumId}`;\n }, [isTreasury, referendumId, subscanUrl]);\n\n const isHtml = useMemo(() => {\n return isHtmlString(description);\n }, [description]);\n\n const shouldShowEditButtons = useMemo(() => {\n return (\n (isAddressEqual(proposerAddress, address) || isValidProxy) &&\n proposal?.active === true\n );\n }, [proposal?.active, isValidProxy, proposerAddress, address]);\n\n const showEditingButtons = () => {\n if (!isEditing) {\n return (\n \n setIsEditing(true)} mt={'md'}>\n {t('editProposal')}\n \n \n );\n }\n };\n\n return (\n <>\n \n \n \n );\n};\n","export * from './Description';\n","import {\n ActionIcon,\n Box,\n Card,\n Divider,\n Grid,\n Group,\n Skeleton,\n Stack,\n Text,\n Title,\n} from '@mantine/core';\nimport { Avatar } from 'components/Avatar';\nimport { useIdentity } from 'hooks/queries/useIdentities';\nimport { useClipboard } from 'hooks/useClipboard';\nimport { useIsTablet } from 'hooks/useMedia';\nimport { useTranslation } from 'next-i18next';\nimport { IoCopy, IoCopyOutline } from 'react-icons/io5';\nimport { PreImage } from 'services/subscan';\nimport { candidateDisplay } from 'utils/text';\n\ninterface Props {\n metadata?: PreImage;\n}\n\nexport const Metadata = ({ metadata }: Props) => {\n const { t } = useTranslation('governance');\n const clipboard = useClipboard();\n const isTablet = useIsTablet();\n const identity = useIdentity(metadata?.author?.address);\n\n return (\n \n {/* TODO expand with more info */}\n \n {t('metadata(Preimage)')}\n \n \n \n \n {metadata?.author && (\n \n \n {t('author')}\n \n \n \n \n {candidateDisplay(identity, metadata?.author.address)}\n \n \n \n )}\n \n \n \n \n );\n};\n","export * from './Metadata';\n","import { Badge } from '@mantine/core';\nimport { TreasuryProposalStatus } from 'models/open-gov/treasuryProposal/TreasuryProposal';\nimport { useTranslation } from 'next-i18next';\nimport { ReferendumStatus } from 'types/governance';\nimport { getReferendumStatusColor } from 'utils/theme';\n\ninterface Props {\n status?: ReferendumStatus | TreasuryProposalStatus;\n}\n\nexport const StatusBadge = ({ status }: Props) => {\n const { t } = useTranslation('governance');\n\n return status ? (\n {t(status)}\n ) : (\n <>\n );\n};\n","export * from './StatusBadge';\n","import { Group, Progress, Stack, Text } from '@mantine/core';\nimport { MoonTokenAmount } from 'components/TokenAmount';\n\nimport { useProgressBarData } from 'hooks/useProgressBarData';\nimport { useTranslation } from 'next-i18next';\nimport { useRouter } from 'next/router';\nimport { TimelineItem } from 'types/governance/proposalInformation';\nimport { getDateByAnyTimestamp } from 'utils/datetime';\n\ninterface Props {\n item: TimelineItem;\n isFinished: boolean;\n}\n\nexport const TimelineElement = ({ item, isFinished }: Props) => {\n const { t } = useTranslation();\n const { locale = 'en' } = useRouter();\n\n const { percentage, remainingTime } = useProgressBarData({\n initialBlock: item.startBlock,\n finalBlock: item.totalBlocks,\n });\n\n const showProgressBar = !isFinished && percentage && percentage < 100;\n const showRemainingTime = !isFinished && remainingTime;\n\n return (\n \n \n \n {getDateByAnyTimestamp(item.time).toLocaleString(locale)}\n \n {item.amount ? : <>}\n {showRemainingTime && t('remainingTimeWithParam', { remainingTime })}\n \n {showProgressBar ? (\n \n ) : (\n <>\n )}\n \n );\n};\n","import {\n TreasuryProposal,\n TreasuryProposalStatus,\n} from 'models/open-gov/treasuryProposal/TreasuryProposal';\nimport { ReferendumStatus } from 'types/governance';\n\nexport function isPendingStatus(\n status: ReferendumStatus | undefined,\n): status is\n | ReferendumStatus.SUBMITTED\n | ReferendumStatus.DECIDING\n | ReferendumStatus.CONFIRMING {\n return (\n status === ReferendumStatus.SUBMITTED ||\n status === ReferendumStatus.DECIDING ||\n status === ReferendumStatus.CONFIRMING\n );\n}\n\nexport function isTreasuryPendingStatus(\n status: TreasuryProposal['status'] | undefined,\n): status is TreasuryProposalStatus.Proposed | TreasuryProposalStatus.Approved {\n return (\n status === TreasuryProposalStatus.Approved ||\n status === TreasuryProposalStatus.Proposed\n );\n}\n","import {\n Badge,\n Box,\n Card,\n Timeline as MantineTimeline,\n Skeleton,\n Title,\n} from '@mantine/core';\nimport { TimelineElement } from 'components/pages/referendum/Timeline/TimelineElement';\nimport { TreasuryProposal } from 'models/open-gov/treasuryProposal/TreasuryProposal';\nimport { useTranslation } from 'next-i18next';\nimport { useMemo } from 'react';\nimport { ReferendumStatus } from 'types/governance';\nimport { TimelineItem } from 'types/governance/proposalInformation';\nimport { getJsTimestamp } from 'utils/datetime';\nimport {\n isPendingStatus,\n isTreasuryPendingStatus,\n} from 'utils/referendaStatus';\nimport classes from './Timeline.module.css';\n\ninterface Props {\n timeline?: TimelineItem[] | TreasuryProposal['timeline'];\n status?: ReferendumStatus | TreasuryProposal['status'];\n}\n\nexport const Timeline = ({ timeline, status }: Props) => {\n const { t } = useTranslation('governance');\n\n const isFinished =\n !isPendingStatus(status as ReferendumStatus) &&\n !isTreasuryPendingStatus(status as TreasuryProposal['status']);\n\n const sortedTimeLine = useMemo(() => {\n return timeline?.sort((a, b) => {\n return getJsTimestamp(a.time) - getJsTimestamp(b.time);\n });\n }, [timeline]);\n\n return (\n \n \n {t('timeline')}\n \n \n \n \n {sortedTimeLine?.map((item, index) => {\n const status = 'status' in item ? item.status : item.step;\n\n return (\n \n ) : undefined\n }\n >\n \n \n );\n })}\n \n \n \n \n );\n};\n","export * from './Timeline';\n","import { Progress, Tooltip, useMantineTheme } from '@mantine/core';\nimport { useMoonChainToDecimals } from 'hooks/useToDecimal';\nimport { useTranslation } from 'next-i18next';\nimport { useRouter } from 'next/router';\nimport { ProposalInformation } from 'types/governance/proposalInformation';\nimport { calcProgressValue } from 'utils/calc';\nimport { compactNumber } from 'utils/text';\n\ninterface Props {\n referendum: ProposalInformation;\n}\n\nexport const SupportProgressBar = ({ referendum }: Props) => {\n const { t } = useTranslation('governance');\n const { locale = 'en' } = useRouter();\n const {\n other: { colors },\n } = useMantineTheme();\n\n const supportStillNeeded =\n (referendum?.minimumSupport || 0n) - (referendum?.support || 0n);\n const supportStillNeededDecimal = useMoonChainToDecimals(\n supportStillNeeded,\n undefined,\n true,\n );\n\n const hasEnoughSupport = supportStillNeeded <= 0n;\n\n return (\n \n \n \n );\n};\n","import { u128 } from '@polkadot/types';\nimport { useApi } from 'hooks/useApi';\n\nimport { useApiCall } from 'hooks/useApiCall';\n\nfunction transformIssuance(data: u128): bigint {\n return data.toBigInt();\n}\n\nexport function useIssuance(): bigint | undefined {\n const api = useApi();\n\n return useApiCall(api?.query.balances.totalIssuance, [], transformIssuance);\n}\n","import { Box, Card, Center, Group, Stack, Text, Tooltip } from '@mantine/core';\nimport { Avatar } from 'components/Avatar';\nimport { MoonTokenAmount } from 'components/TokenAmount';\nimport { SupportProgressBar } from 'components/pages/referendum/Votes/SupportProgressBar';\nimport { useIdentity } from 'hooks/queries/useIdentities';\nimport { useIssuance } from 'hooks/queries/useIssuance';\nimport { useTranslation } from 'next-i18next';\nimport {\n IoClipboardOutline,\n IoInformationCircleOutline,\n IoPeopleOutline,\n IoStarOutline,\n} from 'react-icons/io5';\nimport { ProposalInformation } from 'types/governance/proposalInformation';\nimport { candidateDisplay, capitalize } from 'utils/text';\n\ninterface Props {\n referendum?: ProposalInformation;\n isExpandedView?: boolean;\n}\n\nexport const GeneralStats = ({ referendum, isExpandedView }: Props) => {\n const { t } = useTranslation('governance');\n const identity = useIdentity(referendum?.proposer?.address);\n const issuance = useIssuance();\n\n const hasMinimumSupport = !!referendum?.minimumSupport && referendum.active;\n\n return (\n
\n \n \n {isExpandedView && (\n \n \n \n \n {t('proposer')}\n \n \n \n \n {candidateDisplay(identity, referendum?.proposer?.address)}\n \n \n )}\n {hasMinimumSupport && }\n \n \n \n \n {capitalize(t('support'))}\n \n \n \n \n {hasMinimumSupport && (\n \n \n \n \n \n \n \n \n {t('supportNeeded')}\n \n \n \n \n )}\n \n \n \n \n {t('issuance')}\n \n \n \n \n \n \n
\n );\n};\n","import { useMantineTheme } from '@mantine/core';\nimport {\n CategoryScale,\n ChartData,\n Chart as ChartJS,\n ChartOptions,\n Legend,\n LineElement,\n LinearScale,\n PointElement,\n Title,\n Tooltip,\n} from 'chart.js';\nimport { useLatestBlock } from 'hooks/queries/useLatestBlock';\nimport { useMoonChain } from 'hooks/useMoonChainConfig';\nimport { useThemeColors } from 'hooks/useThemeColors';\nimport { useTranslation } from 'next-i18next';\nimport { useMemo } from 'react';\nimport { Line } from 'react-chartjs-2';\nimport { ProposalInformation } from 'types/governance/proposalInformation';\nimport { getCurrentBlockInTime } from 'utils/charts';\nimport { capitalize } from 'utils/text';\n\nChartJS.register(\n CategoryScale,\n LinearScale,\n PointElement,\n LineElement,\n Title,\n Tooltip,\n Legend,\n);\n\ninterface Props {\n referendum: ProposalInformation;\n label: 'approval' | 'support';\n constantValue: number;\n variableData: number[];\n xAxisTimeline: number[];\n}\n\nexport const Chart = ({\n referendum,\n constantValue,\n variableData,\n label,\n xAxisTimeline,\n}: Props) => {\n const { t } = useTranslation('governance');\n const latestBlock = useLatestBlock();\n const { blockTime } = useMoonChain();\n const {\n other: { colors },\n } = useMantineTheme();\n const { themeColors } = useThemeColors();\n\n const requirementCurveColor = label === 'approval' ? '#5b76f8' : '#dbdb21';\n const currentIndex = useMemo(\n () => getCurrentBlockInTime(latestBlock, referendum, xAxisTimeline),\n [latestBlock, referendum, xAxisTimeline],\n );\n\n const data = useMemo(\n (): ChartData<'line'> => ({\n labels: xAxisTimeline.map((relBlock) =>\n referendum?.latestBlock\n ? `#${relBlock + referendum?.latestBlock}`\n : undefined,\n ),\n datasets: [\n {\n label: t(`minimum${label}`),\n data: variableData,\n backgroundColor: requirementCurveColor,\n borderColor: requirementCurveColor,\n borderWidth: 3,\n pointRadius: (context) =>\n context.dataIndex === currentIndex ? 3 : 0,\n },\n {\n label: t(`current${label}`),\n data: Array(500).fill(constantValue),\n borderColor: (context) => {\n const index = context.dataIndex;\n const approval = variableData[index];\n\n return (context.raw as number) < approval\n ? colors.votes.nay\n : colors.votes.aye;\n },\n borderWidth: 3,\n pointStyle: 'line',\n },\n ],\n }),\n [\n xAxisTimeline,\n t,\n label,\n variableData,\n requirementCurveColor,\n constantValue,\n referendum.latestBlock,\n currentIndex,\n colors.votes.nay,\n colors.votes.aye,\n ],\n );\n\n const options = useMemo(\n (): ChartOptions<'line'> => ({\n responsive: true,\n plugins: {\n legend: {\n display: false,\n },\n title: {\n display: true,\n text: `${capitalize(t(label))} / ${constantValue.toFixed(2)}%`,\n position: 'top',\n },\n },\n interaction: {\n mode: 'index',\n },\n scales: {\n x: {\n display: true,\n\n ticks: {\n color: themeColors.texts,\n maxTicksLimit: 14,\n callback: (_, index) => {\n const element = xAxisTimeline[index];\n const days = Number(((element * blockTime) / 86400).toFixed(0));\n\n return days !== 0\n ? t('daysLabel', {\n count: days,\n })\n : '';\n },\n },\n },\n y: {\n ticks: {\n color: themeColors.texts,\n },\n },\n },\n }),\n [blockTime, themeColors.texts, constantValue, label, t, xAxisTimeline],\n );\n\n return (\n
\n \n
\n );\n};\n","import { Box, Card, Stack, Transition } from '@mantine/core';\nimport { useTimeout } from '@mantine/hooks';\nimport { useTrack } from 'hooks/queries/useTracks';\nimport { useIsWideTablet } from 'hooks/useMedia';\nimport { CSSProperties, useState } from 'react';\nimport { ProposalInformation } from 'types/governance/proposalInformation';\nimport { Chart } from './Chart';\n\ninterface Props {\n referendum: ProposalInformation;\n}\n\nexport const ThresholdCharts = ({ referendum }: Props) => {\n const referendumTrack = useTrack(referendum?.origin);\n const [mounted, setMounted] = useState(false);\n const isTablet = useIsWideTablet();\n\n useTimeout(() => setMounted(true), 500, {\n autoInvoke: true,\n });\n\n const renderComponent = (styles?: CSSProperties) => {\n return (\n \n \n {referendumTrack && (\n \n \n \n \n )}\n \n \n );\n };\n\n return isTablet ? (\n renderComponent()\n ) : (\n \n {(styles) => renderComponent(styles)}\n \n );\n};\n","export * from './ThresholdCharts';\n","import { Box, Group, Text } from '@mantine/core';\nimport { PassingOrFailingLabel } from 'components/PassingOrFailingLabel';\nimport { StatusBadge } from 'components/pages/referendum';\nimport { useThemeColors } from 'hooks/useThemeColors';\nimport { useTranslation } from 'next-i18next';\nimport { ProposalInformation } from 'types/governance/proposalInformation';\n\ninterface Props {\n referendum?: ProposalInformation;\n isExpandedView?: boolean;\n}\n\nexport const VotesHeader = ({ referendum, isExpandedView }: Props) => {\n const { t } = useTranslation('governance');\n const { themeColors } = useThemeColors();\n\n return (\n \n \n \n {t('votes')}\n \n {!isExpandedView && }\n \n \n \n {t('referendumNumber', {\n number: referendum?.index,\n })}\n \n {isExpandedView && (\n \n \n \n \n )}\n \n \n );\n};\n","import { Box, Group, Text, Tooltip } from '@mantine/core';\nimport { VoteInfo } from 'hooks/queries/open-gov/useVotes';\nimport { useIdentity } from 'hooks/queries/useIdentities';\nimport { useTranslation } from 'next-i18next';\nimport { BsFillPersonCheckFill } from 'react-icons/bs';\nimport { candidateDisplay } from 'utils/text';\n\ninterface Props {\n vote: VoteInfo;\n}\n\nexport const DelegateAccountIcon = ({ vote }: Props): JSX.Element | null => {\n const identity = useIdentity(vote?.delegateAccount?.address);\n const { t } = useTranslation('governance');\n\n if (!vote.delegateAccount?.address) {\n return null;\n }\n\n const label = (\n <>\n \n \n {t('delegating') + ': '}\n {candidateDisplay(identity, vote.delegateAccount.address, 4, 6)}\n \n \n \n );\n\n return (\n <>\n \n \n \n \n \n \n );\n};\n","import { useMoonChainKeyParam } from 'hooks/useMoonChainParam';\nimport { api } from 'lib/trpc/react';\nimport { useMemo } from 'react';\nimport { FIVE_MIN_IN_MILLISECONDS } from 'server/api/trpc.constants';\nimport {\n SubscanAccount,\n SubscanVoteStatus,\n SubscanVotes,\n} from 'services/subscan';\nimport { ConvictionLabel } from 'types/governance/voting';\n\nexport enum VoteDecision {\n AYE = 'Aye',\n NAY = 'Nay',\n ABSTAIN = 'Abstain',\n}\n\nconst voteDecisionMap: Record = {\n [SubscanVoteStatus.AYE]: VoteDecision.AYE,\n [SubscanVoteStatus.NAY]: VoteDecision.NAY,\n [SubscanVoteStatus.ABSTAIN]: VoteDecision.ABSTAIN,\n};\n\nexport interface VoteInfo {\n voter: SubscanAccount;\n conviction: ConvictionLabel;\n amount: bigint;\n decision: VoteDecision;\n delegateAccount?: SubscanAccount | null;\n}\n\ninterface VotesResponse {\n votes?: VoteInfo[];\n hasFailed: boolean;\n isLoading: boolean;\n error: string | null;\n}\n\nfunction transformVotes(data: SubscanVotes[]): VoteInfo[] {\n return data.map((vote) => ({\n voter: vote.account,\n conviction: `${vote.conviction}x` as ConvictionLabel,\n decision: voteDecisionMap[vote.status],\n amount: BigInt(vote.amount),\n delegateAccount: vote.delegate_account,\n }));\n}\n\nexport function useVotes(referendumId: number): VotesResponse {\n const moonChainKey = useMoonChainKeyParam();\n\n const { data, isLoading, error, isError } =\n api.openGov.proposalVotesByChainAndID.useQuery(\n {\n moonChainKey,\n referendumId,\n },\n { enabled: !!moonChainKey, staleTime: FIVE_MIN_IN_MILLISECONDS },\n );\n\n const votes = useMemo(() => {\n return data ? transformVotes(data) : undefined;\n }, [data]);\n\n return {\n votes: votes,\n hasFailed: isError,\n isLoading,\n error: error?.message ?? null,\n };\n}\n","import { Box, Group, Table, Text, useMantineTheme } from '@mantine/core';\nimport { Avatar } from 'components/Avatar';\nimport { MoonTokenAmount } from 'components/TokenAmount';\nimport { DelegateAccountIcon } from 'components/pages/referendum/Votes/DelegateIcon';\nimport { VoteDecision, VoteInfo } from 'hooks/queries/open-gov/useVotes';\nimport { useIdentity } from 'hooks/queries/useIdentities';\nimport {\n IoRemoveCircle,\n IoThumbsDownSharp,\n IoThumbsUpSharp,\n} from 'react-icons/io5';\nimport { candidateDisplay } from 'utils/text';\n\ninterface Props {\n vote: VoteInfo;\n}\n\nexport const VoteRow = ({ vote }: Props) => {\n const identity = useIdentity(vote.voter.address);\n const {\n other: { colors },\n } = useMantineTheme();\n\n return (\n \n \n {vote.decision === VoteDecision.NAY ? (\n \n ) : vote.decision === VoteDecision.AYE ? (\n \n ) : (\n \n )}\n \n \n \n \n \n \n {candidateDisplay(identity, vote.voter.address, 4)}\n \n \n \n \n \n \n \n {vote.conviction}\n \n \n \n \n );\n};\n","import {\n Card,\n Center,\n Chip,\n Group,\n Loader,\n ScrollArea,\n Table,\n useMantineTheme,\n} from '@mantine/core';\nimport { NoRecordsFound } from 'components/NoRecordsFound';\nimport { VoteRow } from 'components/pages/referendum/Votes/VoteRow';\nimport {\n VoteDecision,\n VoteInfo,\n useVotes,\n} from 'hooks/queries/open-gov/useVotes';\nimport { useTranslation } from 'next-i18next';\nimport { useEffect, useState } from 'react';\nimport { IoThumbsDownSharp, IoThumbsUpSharp } from 'react-icons/io5';\n\ntype VoteFilter = VoteDecision | 'all';\n\ninterface Props {\n referendumId: number;\n}\n\nexport const VotesList = ({ referendumId }: Props) => {\n const { t } = useTranslation('governance');\n const { votes } = useVotes(referendumId);\n const [filter, setFilter] = useState('all');\n const [filteredVotes, setFilteredVotes] = useState();\n const {\n other: { colors },\n } = useMantineTheme();\n\n useEffect(() => {\n setFilteredVotes(\n filter === 'all'\n ? votes\n : votes?.filter((vote) => vote.decision === filter),\n );\n }, [votes, filter]);\n\n return (\n \n
\n \n setFilter(value as VoteFilter)}\n >\n \n \n {t('all')}\n \n \n \n \n {VoteDecision.AYE}\n \n \n \n \n \n {VoteDecision.NAY}\n \n \n \n \n \n
\n {!votes ? (\n
\n \n
\n ) : !votes.length ? (\n \n ) : (\n \n \n \n \n \n {t('voter')}\n \n {t('conviction')}\n {t('amount')}\n \n \n \n {filteredVotes?.map((vote, index) => (\n \n ))}\n \n
\n
\n )}\n
\n );\n};\n","import { Group, Text, useMantineTheme } from '@mantine/core';\nimport { MoonTokenAmount } from 'components/TokenAmount';\nimport { VotesProgressBar } from 'components/VotesProgressBar';\nimport { useThemeColors } from 'hooks/useThemeColors';\nimport { useTranslation } from 'next-i18next';\nimport { IoThumbsDownSharp, IoThumbsUpSharp } from 'react-icons/io5';\nimport { ProposalInformation } from 'types/governance/proposalInformation';\n\ninterface Props {\n referendum?: ProposalInformation;\n}\n\nexport const VotesResults = ({ referendum }: Props) => {\n const {\n other: { colors },\n } = useMantineTheme();\n const { themeColors } = useThemeColors();\n const { t } = useTranslation('governance');\n\n return (\n <>\n \n \n \n \n {t('aye')}\n {referendum && (\n {`${referendum?.ayes?.percentage.toFixed(2)}%`}\n )}\n \n \n {t('nay')}\n {referendum && (\n {`${referendum?.nays?.percentage.toFixed(2)}%`}\n )}\n \n \n \n \n \n \n \n \n );\n};\n","import {\n Button,\n Card,\n Grid,\n Group,\n Modal,\n Text,\n UnstyledButton,\n useMantineTheme,\n} from '@mantine/core';\nimport { useDisclosure } from '@mantine/hooks';\nimport { VoteButton } from 'components/pages/referendum/VoteButton';\nimport { GeneralStats } from 'components/pages/referendum/Votes/GeneralStats';\nimport { ThresholdCharts } from 'components/pages/referendum/Votes/ThresholdCharts';\nimport { VotesHeader } from 'components/pages/referendum/Votes/VotesHeader';\nimport { VotesList } from 'components/pages/referendum/Votes/VotesList';\nimport { VotesResults } from 'components/pages/referendum/Votes/VotesResults';\nimport { useIsWideTablet } from 'hooks/useMedia';\nimport { useThemeColors } from 'hooks/useThemeColors';\nimport { useTranslation } from 'next-i18next';\nimport { useState } from 'react';\nimport {\n IoArrowBackOutline,\n IoArrowDownOutline,\n IoArrowForwardOutline,\n IoArrowUpOutline,\n} from 'react-icons/io5';\nimport { ReferendumStatus } from 'types/governance';\nimport { ProposalInformation } from 'types/governance/proposalInformation';\n\ninterface Props {\n referendum?: ProposalInformation;\n}\n\nexport const Votes = ({ referendum }: Props) => {\n const { t } = useTranslation('governance');\n const [opened, { open, close }] = useDisclosure(false);\n const [showChart, setShowChart] = useState(false);\n const detailsButtonLabel = showChart ? 'hideChart' : 'showChart';\n const {\n other: { colors },\n } = useMantineTheme();\n const { themeColors } = useThemeColors();\n const isTablet = useIsWideTablet();\n\n const displayCharts =\n referendum &&\n [ReferendumStatus.DECIDING, ReferendumStatus.CONFIRMING].includes(\n referendum?.status as ReferendumStatus,\n );\n\n const arrowSize = !isTablet ? 25 : 22;\n\n const arrowOpen = !isTablet ? (\n \n ) : (\n \n );\n const arrowClose = !isTablet ? (\n \n ) : (\n \n );\n\n const onClose = () => {\n close();\n setShowChart(false);\n };\n\n const size = showChart || isTablet ? '100%' : '70%';\n\n return (\n <>\n }\n >\n \n \n {displayCharts && (\n <>\n \n setShowChart(!showChart)}\n aria-label={detailsButtonLabel}\n >\n \n {t(detailsButtonLabel)}\n {showChart ? arrowClose : arrowOpen}\n \n \n \n {isTablet && showChart && referendum && (\n \n )}\n \n )}\n \n \n {referendum && }\n \n {!isTablet && showChart && (\n \n {referendum && }\n \n )}\n \n \n \n \n \n \n \n \n {t('checkAllVotes')}\n \n \n \n \n \n );\n};\n","export * from './Votes';\n","export * from './Description';\nexport * from './Metadata';\nexport * from './StatusBadge';\nexport * from './Timeline';\nexport * from './Votes';\n","import { PalletConvictionVotingVoteVoting } from '@polkadot/types/lookup';\nimport { useApi } from 'hooks/useApi';\nimport { useApiCall } from 'hooks/useApiCall';\nimport { useProxiedOrAddress } from 'hooks/useProxiedOrAddress';\nimport { ConvictionLabel } from 'types/governance/voting';\nimport { getConvictionLabel } from 'utils/governance';\n\nexport interface DelegatingVotesInfo {\n address: string;\n amount: bigint;\n conviction: ConvictionLabel;\n}\n\nfunction transformDelegatingVotes(\n data: PalletConvictionVotingVoteVoting,\n): DelegatingVotesInfo | undefined {\n if (data.isDelegating) {\n const info = data.asDelegating;\n\n return {\n address: info.target.toString(),\n amount: info.balance.toBigInt(),\n conviction: getConvictionLabel(info.conviction),\n };\n }\n\n return undefined;\n}\n\nexport function useDelegatingVotesInfo(\n trackId: number | undefined,\n): DelegatingVotesInfo | undefined {\n const api = useApi();\n const address = useProxiedOrAddress();\n\n return useApiCall(\n api?.query.convictionVoting.votingFor,\n [address, trackId],\n transformDelegatingVotes,\n );\n}\n","import { useLatestBlock } from 'hooks/queries/useLatestBlock';\nimport { useBlockTime } from 'hooks/useBlockTime';\nimport { useMemo } from 'react';\nimport { calcBlockProgressPercentage, calcRemainingBlocks } from 'utils/calc';\n\ninterface Props {\n initialBlock?: number;\n finalBlock?: number;\n}\n\ninterface ProgressBarData {\n percentage: number;\n remainingTime: string | undefined;\n}\n\nexport function useProgressBarData({\n initialBlock,\n finalBlock,\n}: Props): ProgressBarData {\n const latestBlock = useLatestBlock();\n\n const percentage = useMemo(\n () =>\n calcBlockProgressPercentage(initialBlock, latestBlock, finalBlock) || 0,\n [initialBlock, latestBlock, finalBlock],\n );\n\n const remainingBlocks = useMemo(\n () => calcRemainingBlocks(initialBlock, latestBlock, finalBlock),\n [initialBlock, latestBlock, finalBlock],\n );\n const remainingTime = useBlockTime(remainingBlocks);\n\n return {\n percentage,\n remainingTime,\n };\n}\n","export const ABI = [\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'uint16',\n name: 'trackId',\n type: 'uint16',\n },\n {\n indexed: false,\n internalType: 'address',\n name: 'from',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'address',\n name: 'to',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'delegatedAmount',\n type: 'uint256',\n },\n {\n indexed: false,\n internalType: 'uint8',\n name: 'conviction',\n type: 'uint8',\n },\n ],\n name: 'Delegated',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'uint16',\n name: 'trackId',\n type: 'uint16',\n },\n {\n indexed: false,\n internalType: 'address',\n name: 'caller',\n type: 'address',\n },\n ],\n name: 'Undelegated',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'uint16',\n name: 'trackId',\n type: 'uint16',\n },\n {\n indexed: false,\n internalType: 'address',\n name: 'caller',\n type: 'address',\n },\n ],\n name: 'Unlocked',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'uint32',\n name: 'pollIndex',\n type: 'uint32',\n },\n {\n indexed: false,\n internalType: 'address',\n name: 'voter',\n type: 'address',\n },\n ],\n name: 'VoteRemoved',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'uint32',\n name: 'pollIndex',\n type: 'uint32',\n },\n {\n indexed: false,\n internalType: 'uint16',\n name: 'trackId',\n type: 'uint16',\n },\n {\n indexed: false,\n internalType: 'address',\n name: 'voter',\n type: 'address',\n },\n ],\n name: 'VoteRemovedForTrack',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'uint32',\n name: 'pollIndex',\n type: 'uint32',\n },\n {\n indexed: false,\n internalType: 'address',\n name: 'caller',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'address',\n name: 'target',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'uint16',\n name: 'trackId',\n type: 'uint16',\n },\n ],\n name: 'VoteRemovedOther',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'uint32',\n name: 'pollIndex',\n type: 'uint32',\n },\n {\n indexed: false,\n internalType: 'address',\n name: 'voter',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'aye',\n type: 'uint256',\n },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'nay',\n type: 'uint256',\n },\n ],\n name: 'VoteSplit',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'uint32',\n name: 'pollIndex',\n type: 'uint32',\n },\n {\n indexed: false,\n internalType: 'address',\n name: 'voter',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'aye',\n type: 'uint256',\n },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'nay',\n type: 'uint256',\n },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'abstain',\n type: 'uint256',\n },\n ],\n name: 'VoteSplitAbstained',\n type: 'event',\n },\n {\n anonymous: false,\n inputs: [\n {\n indexed: true,\n internalType: 'uint32',\n name: 'pollIndex',\n type: 'uint32',\n },\n {\n indexed: false,\n internalType: 'address',\n name: 'voter',\n type: 'address',\n },\n {\n indexed: false,\n internalType: 'bool',\n name: 'aye',\n type: 'bool',\n },\n {\n indexed: false,\n internalType: 'uint256',\n name: 'voteAmount',\n type: 'uint256',\n },\n {\n indexed: false,\n internalType: 'uint8',\n name: 'conviction',\n type: 'uint8',\n },\n ],\n name: 'Voted',\n type: 'event',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'who',\n type: 'address',\n },\n ],\n name: 'classLocksFor',\n outputs: [\n {\n components: [\n {\n internalType: 'uint16',\n name: 'trackId',\n type: 'uint16',\n },\n {\n internalType: 'uint256',\n name: 'amount',\n type: 'uint256',\n },\n ],\n internalType: 'struct ConvictionVoting.ClassLock[]',\n name: '',\n type: 'tuple[]',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'uint16',\n name: 'trackId',\n type: 'uint16',\n },\n {\n internalType: 'address',\n name: 'representative',\n type: 'address',\n },\n {\n internalType: 'enum ConvictionVoting.Conviction',\n name: 'conviction',\n type: 'uint8',\n },\n {\n internalType: 'uint256',\n name: 'amount',\n type: 'uint256',\n },\n ],\n name: 'delegate',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'target',\n type: 'address',\n },\n {\n internalType: 'uint16',\n name: 'trackId',\n type: 'uint16',\n },\n {\n internalType: 'uint32',\n name: 'pollIndex',\n type: 'uint32',\n },\n ],\n name: 'removeOtherVote',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'uint32',\n name: 'pollIndex',\n type: 'uint32',\n },\n ],\n name: 'removeVote',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'uint32',\n name: 'pollIndex',\n type: 'uint32',\n },\n {\n internalType: 'uint16',\n name: 'trackId',\n type: 'uint16',\n },\n ],\n name: 'removeVoteForTrack',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'uint16',\n name: 'trackId',\n type: 'uint16',\n },\n ],\n name: 'undelegate',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'uint16',\n name: 'trackId',\n type: 'uint16',\n },\n {\n internalType: 'address',\n name: 'target',\n type: 'address',\n },\n ],\n name: 'unlock',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'uint32',\n name: 'pollIndex',\n type: 'uint32',\n },\n {\n internalType: 'uint256',\n name: 'voteAmount',\n type: 'uint256',\n },\n {\n internalType: 'enum ConvictionVoting.Conviction',\n name: 'conviction',\n type: 'uint8',\n },\n ],\n name: 'voteNo',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'uint32',\n name: 'pollIndex',\n type: 'uint32',\n },\n {\n internalType: 'uint256',\n name: 'aye',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'nay',\n type: 'uint256',\n },\n ],\n name: 'voteSplit',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'uint32',\n name: 'pollIndex',\n type: 'uint32',\n },\n {\n internalType: 'uint256',\n name: 'aye',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'nay',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'abstain',\n type: 'uint256',\n },\n ],\n name: 'voteSplitAbstain',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'uint32',\n name: 'pollIndex',\n type: 'uint32',\n },\n {\n internalType: 'uint256',\n name: 'voteAmount',\n type: 'uint256',\n },\n {\n internalType: 'enum ConvictionVoting.Conviction',\n name: 'conviction',\n type: 'uint8',\n },\n ],\n name: 'voteYes',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'who',\n type: 'address',\n },\n {\n internalType: 'uint16',\n name: 'trackId',\n type: 'uint16',\n },\n ],\n name: 'votingFor',\n outputs: [\n {\n components: [\n {\n internalType: 'bool',\n name: 'isCasting',\n type: 'bool',\n },\n {\n internalType: 'bool',\n name: 'isDelegating',\n type: 'bool',\n },\n {\n components: [\n {\n components: [\n {\n internalType: 'uint32',\n name: 'pollIndex',\n type: 'uint32',\n },\n {\n components: [\n {\n internalType: 'bool',\n name: 'isStandard',\n type: 'bool',\n },\n {\n internalType: 'bool',\n name: 'isSplit',\n type: 'bool',\n },\n {\n internalType: 'bool',\n name: 'isSplitAbstain',\n type: 'bool',\n },\n {\n components: [\n {\n components: [\n {\n internalType: 'bool',\n name: 'aye',\n type: 'bool',\n },\n {\n internalType:\n 'enum ConvictionVoting.Conviction',\n name: 'conviction',\n type: 'uint8',\n },\n ],\n internalType: 'struct ConvictionVoting.Vote',\n name: 'vote',\n type: 'tuple',\n },\n {\n internalType: 'uint256',\n name: 'balance',\n type: 'uint256',\n },\n ],\n internalType: 'struct ConvictionVoting.StandardVote',\n name: 'standard',\n type: 'tuple',\n },\n {\n components: [\n {\n internalType: 'uint256',\n name: 'aye',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'nay',\n type: 'uint256',\n },\n ],\n internalType: 'struct ConvictionVoting.SplitVote',\n name: 'split',\n type: 'tuple',\n },\n {\n components: [\n {\n internalType: 'uint256',\n name: 'aye',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'nay',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'abstain',\n type: 'uint256',\n },\n ],\n internalType:\n 'struct ConvictionVoting.SplitAbstainVote',\n name: 'splitAbstain',\n type: 'tuple',\n },\n ],\n internalType: 'struct ConvictionVoting.AccountVote',\n name: 'accountVote',\n type: 'tuple',\n },\n ],\n internalType: 'struct ConvictionVoting.PollAccountVote[]',\n name: 'votes',\n type: 'tuple[]',\n },\n {\n components: [\n {\n internalType: 'uint256',\n name: 'votes',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'capital',\n type: 'uint256',\n },\n ],\n internalType: 'struct ConvictionVoting.Delegations',\n name: 'delegations',\n type: 'tuple',\n },\n {\n components: [\n {\n internalType: 'uint256',\n name: 'balance',\n type: 'uint256',\n },\n ],\n internalType: 'struct ConvictionVoting.PriorLock',\n name: 'prior',\n type: 'tuple',\n },\n ],\n internalType: 'struct ConvictionVoting.Casting',\n name: 'casting',\n type: 'tuple',\n },\n {\n components: [\n {\n internalType: 'uint256',\n name: 'balance',\n type: 'uint256',\n },\n {\n internalType: 'address',\n name: 'target',\n type: 'address',\n },\n {\n internalType: 'enum ConvictionVoting.Conviction',\n name: 'conviction',\n type: 'uint8',\n },\n {\n components: [\n {\n internalType: 'uint256',\n name: 'votes',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'capital',\n type: 'uint256',\n },\n ],\n internalType: 'struct ConvictionVoting.Delegations',\n name: 'delegations',\n type: 'tuple',\n },\n {\n components: [\n {\n internalType: 'uint256',\n name: 'balance',\n type: 'uint256',\n },\n ],\n internalType: 'struct ConvictionVoting.PriorLock',\n name: 'prior',\n type: 'tuple',\n },\n ],\n internalType: 'struct ConvictionVoting.Delegating',\n name: 'delegating',\n type: 'tuple',\n },\n ],\n internalType: 'struct ConvictionVoting.VotingFor',\n name: '',\n type: 'tuple',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n] as const;\n","import { ABI } from './ConvictionVotingABI';\n\nexport const CONVICTION_VOTING_CONTRACT_ADDRESS =\n '0x0000000000000000000000000000000000000812';\n\nexport const ConvictionVotingContractABI = ABI;\n","import { ConvictionVotingFunctions } from 'types/contracts/functions';\n\nexport enum VoteFunctions {\n VOTE_YES = ConvictionVotingFunctions.VOTE_YES,\n VOTE_NO = ConvictionVotingFunctions.VOTE_NO,\n VOTE_SPLIT = ConvictionVotingFunctions.VOTE_SPLIT,\n VOTE_ABSTAIN = ConvictionVotingFunctions.VOTE_ABSTAIN,\n}\n\nexport enum ConvictionLabel {\n NONE = '0.1x',\n X1 = '1x',\n X2 = '2x',\n X3 = '3x',\n X4 = '4x',\n X5 = '5x',\n X6 = '6x',\n}\n","import { toDecimal } from '@moonbeam-network/xcm-utils';\nimport {\n PalletConvictionVotingConviction,\n PalletConvictionVotingVoteAccountVote,\n} from '@polkadot/types/lookup';\nimport { BN_MAX_INTEGER } from '@polkadot/util';\nimport {\n Delegation,\n LockedFundsByTrack,\n LocksDetails,\n Prior,\n ReferendaInfo,\n TrackLocks,\n TrackVotesAndDelegation,\n Vote,\n} from 'hooks/queries/useReferendaLocks';\nimport { TrackInfo, Tracks } from 'hooks/queries/useTracks';\nimport { TFunction } from 'next-i18next';\nimport { ProposalInformation } from 'types/governance/proposalInformation';\nimport { ConvictionLabel, VoteFunctions } from 'types/governance/voting';\nimport { parseEther } from 'viem';\n\nexport const getConvictionLabel = (\n conviction: PalletConvictionVotingConviction,\n): ConvictionLabel => {\n if (conviction.isLocked1x) {\n return ConvictionLabel.X1;\n }\n\n if (conviction.isLocked2x) {\n return ConvictionLabel.X2;\n }\n\n if (conviction.isLocked3x) {\n return ConvictionLabel.X3;\n }\n\n if (conviction.isLocked4x) {\n return ConvictionLabel.X4;\n }\n\n if (conviction.isLocked5x) {\n return ConvictionLabel.X5;\n }\n\n if (conviction.isLocked6x) {\n return ConvictionLabel.X6;\n }\n\n return ConvictionLabel.NONE;\n};\n\nexport const canReferendumBeVotedOn = (\n referendum: ProposalInformation | undefined,\n): boolean | undefined => {\n return referendum && referendum.active;\n};\n\nexport const getVotingActionType = (\n voteFunction: VoteFunctions,\n): {\n isAyeOrNay: boolean;\n isSplit: boolean;\n isAbstain: boolean;\n} => {\n return {\n isAyeOrNay: [VoteFunctions.VOTE_YES, VoteFunctions.VOTE_NO].includes(\n voteFunction,\n ),\n isSplit: voteFunction === VoteFunctions.VOTE_SPLIT,\n isAbstain: voteFunction === VoteFunctions.VOTE_ABSTAIN,\n };\n};\n\nexport const isVotingInputComplete = (\n voteFunction: VoteFunctions,\n amount: string,\n ayeAmount: string,\n nayAmount: string,\n conviction: string,\n): boolean => {\n const { isAyeOrNay, isSplit, isAbstain } = getVotingActionType(voteFunction);\n\n return isAyeOrNay\n ? !!amount && !!conviction\n : isSplit\n ? !!ayeAmount && !!nayAmount\n : isAbstain\n ? !!amount\n : false;\n};\n\nexport function extractVoteActionArgs(\n referendumId: number | undefined,\n amount: string,\n ayeAmount: string,\n nayAmount: string,\n conviction: string,\n voteFunction: VoteFunctions,\n): (number | bigint | undefined)[] {\n const { isAyeOrNay, isSplit, isAbstain } = getVotingActionType(voteFunction);\n\n const args = isAyeOrNay\n ? [parseEther(amount || '0'), +conviction]\n : isSplit\n ? [parseEther(ayeAmount || '0'), parseEther(nayAmount || '0')]\n : isAbstain\n ? [\n parseEther(ayeAmount || '0'),\n parseEther(nayAmount || '0'),\n parseEther(amount || '0'),\n ]\n : [];\n\n return [referendumId, ...args];\n}\n\nexport function getDetailedLocks(\n votesAndDelegations: TrackVotesAndDelegation,\n referendaInfo: Record,\n lockPeriod: number,\n lockedFundsByTrack: LockedFundsByTrack | undefined,\n latestBlock: number | undefined,\n): TrackLocks {\n const detailedLocks: TrackLocks = {};\n\n for (const track in votesAndDelegations) {\n const votedReferenda = votesAndDelegations[track].votes;\n const delegation = votesAndDelegations[track].delegation;\n const prior = votesAndDelegations[track].prior;\n const lockedAmount = lockedFundsByTrack?.[track];\n\n if (!latestBlock || !lockedAmount || !votedReferenda) {\n continue;\n }\n\n const votes = votedReferenda.reduce((accum, vote) => {\n const referendumInfo = referendaInfo[vote.referendumId];\n\n let effectiveEndBlock = referendumInfo?.endBlock;\n\n if (!referendumInfo?.aborted && effectiveEndBlock && vote.conviction) {\n effectiveEndBlock += lockPeriod * 2 ** (vote.conviction - 1);\n }\n\n return [...accum, { ...vote, endBlock: effectiveEndBlock }];\n }, []);\n const { unlockableVotes, unlockableAmount } = filterUnlockableVotesForTrack(\n votes,\n lockedAmount,\n delegation,\n latestBlock,\n prior,\n );\n\n const trackLocks: LocksDetails = {\n lockedAmount,\n votes,\n delegation,\n unlockableVotes,\n unlockableAmount,\n prior,\n };\n\n detailedLocks[track] = trackLocks;\n }\n\n return detailedLocks;\n}\n\nexport function filterUnlockableVotesForTrack(\n totalVotes: Vote[],\n lockedAmount: bigint,\n delegation: Delegation | undefined,\n latestBlock: number,\n prior: Prior | undefined,\n): { unlockableVotes: Vote[]; unlockableAmount: bigint } {\n let stillLockedAmount = prior?.amount || 0n;\n\n const unlockableReferendumVotes = totalVotes.filter((vote) => {\n if ((vote.endBlock || BN_MAX_INTEGER.toNumber()) < latestBlock) {\n return true;\n }\n\n // The referendum is still ongoing\n stillLockedAmount =\n vote.balance > stillLockedAmount ? vote.balance : stillLockedAmount;\n });\n\n if (delegation) {\n stillLockedAmount =\n delegation.balance > stillLockedAmount\n ? delegation.balance\n : stillLockedAmount;\n }\n\n return {\n unlockableVotes: unlockableReferendumVotes,\n unlockableAmount: lockedAmount - stillLockedAmount,\n };\n}\n\nexport function getTrackByNumericId(\n tracks: Tracks | undefined,\n id: number,\n): TrackInfo | undefined {\n return tracks\n ? [...tracks.values()].find((track) => track.id === id)\n : undefined;\n}\n\nfunction isOngoingLock(endBlock?: number): boolean {\n return endBlock === undefined;\n}\n\nfunction isLockedUntil(latestBlock?: number, endBlock?: number): boolean {\n return !!endBlock && !!latestBlock && endBlock >= latestBlock;\n}\n\ninterface GetLockedFundsSummaryProps {\n t: TFunction;\n decimals: number;\n symbol: string;\n}\n\ninterface GetLockedFundsSummaryForVoteProps extends GetLockedFundsSummaryProps {\n vote: Vote;\n latestBlock: number | undefined;\n}\n\ninterface GetLockedFundsSummaryForDelegationProps\n extends GetLockedFundsSummaryProps {\n delegation: Delegation;\n}\n\nexport function getLockedFundsSummaryForVote({\n t,\n vote,\n latestBlock,\n decimals,\n symbol,\n}: GetLockedFundsSummaryForVoteProps): string {\n const { endBlock, referendumId, balance } = vote;\n\n const amount = `${toDecimal(balance, decimals)} ${symbol}`;\n\n if (isOngoingLock(endBlock)) {\n return t('lockSummary.isOngoingLock', {\n amount,\n referendumId,\n });\n }\n\n if (isLockedUntil(latestBlock, endBlock)) {\n return t('lockSummary.isLockedUntil', {\n amount,\n endBlock,\n referendumId,\n });\n } else {\n return t('lockSummary.isUnlockableForReferendum', {\n amount,\n referendumId,\n });\n }\n}\n\nexport function getLockedFundsSummaryForDelegation({\n t,\n decimals,\n symbol,\n delegation,\n}: GetLockedFundsSummaryForDelegationProps): string {\n return t('lockSummary.isLockedForDelegation', {\n amount: `${toDecimal(delegation.balance, decimals)} ${symbol}`,\n });\n}\n\nexport function extractReferendumIds(\n data: TrackVotesAndDelegation | undefined,\n): string[] {\n if (!data) return [];\n\n return Object.values(data).reduce((acc, { votes }) => {\n const referendumIds = votes.map((vote) => vote.referendumId) || [];\n\n return acc.concat(referendumIds);\n }, []);\n}\n\nexport function getBalanceAndConviction(\n accountVote: PalletConvictionVotingVoteAccountVote,\n): {\n balance: bigint;\n conviction: number;\n} {\n if (accountVote.isStandard) {\n const { balance, vote } = accountVote.asStandard;\n\n return {\n balance: balance.toBigInt(),\n conviction: vote.conviction.index,\n };\n }\n\n if (accountVote.isSplit) {\n const { aye, nay } = accountVote.asSplit;\n\n return {\n balance: aye.toBigInt() + nay.toBigInt(),\n conviction: 0,\n };\n }\n\n if (accountVote.isSplitAbstain) {\n const { abstain, aye, nay } = accountVote.asSplitAbstain;\n\n return {\n balance: aye.toBigInt() + nay.toBigInt() + abstain.toBigInt(),\n conviction: 0,\n };\n }\n\n return { balance: 0n, conviction: 0 };\n}\n\nexport function extractUnlockableTracksIds(\n locks: TrackLocks,\n latestBlock?: number,\n): string[] {\n return Object.keys(locks).filter(\n (track) =>\n locks[track]?.unlockableAmount > 0n ||\n (locks[track].prior?.unlockableAtBlock &&\n latestBlock &&\n locks[track].prior?.unlockableAtBlock < latestBlock),\n );\n}\n\nfunction createUnlockableTracksLabel(\n tracks: Tracks | undefined,\n locks: TrackLocks,\n t: TFunction,\n): string | null {\n const unlockableTracksIds = extractUnlockableTracksIds(locks);\n const unlockableTracks = unlockableTracksIds\n .map((track) => getTrackByNumericId(tracks, Number(track)))\n .filter((track) => !!track);\n\n if (!unlockableTracks.length) {\n return null;\n }\n\n const tracksLiteral = unlockableTracks\n .map((track) => t(track.name))\n .join(', ');\n\n return t('fundsReadyToBeUnlockedForTracks', { tracksLiteral });\n}\n\nfunction createPriorUnlockLabel(\n trackId: string,\n locks: TrackLocks,\n tracks: Tracks | undefined,\n decimals: number,\n symbol: string,\n t: TFunction,\n latestBlock: number | undefined,\n): string | null {\n const prior = locks[trackId]?.prior;\n const track = getTrackByNumericId(tracks, Number(trackId));\n\n if (!prior || !track) {\n return null;\n }\n\n const isInThePast =\n prior.unlockableAtBlock &&\n latestBlock &&\n prior.unlockableAtBlock < latestBlock;\n\n const amount = `${toDecimal(prior.amount, decimals)} ${symbol}`;\n const trackName = t(track.name);\n const unlockableAtBlock = prior.unlockableAtBlock;\n\n if (isInThePast) {\n return t('fundsUnlockedPrior', { amount, trackName });\n }\n\n return t('fundsLockedPriorToBlock', { amount, trackName, unlockableAtBlock });\n}\n\nexport function generateTooltipLabelRows({\n locks,\n tracks,\n decimals,\n symbol,\n t,\n latestBlock,\n}: {\n locks: TrackLocks;\n tracks: Tracks | undefined;\n decimals: number;\n symbol: string;\n t: TFunction;\n latestBlock?: number;\n}): string[] {\n const tooltipLabelRows = [];\n\n const unlockableTracksLabel = createUnlockableTracksLabel(tracks, locks, t);\n\n if (unlockableTracksLabel) {\n tooltipLabelRows.push(unlockableTracksLabel);\n }\n\n for (const trackId in locks) {\n const priorUnlockLabel = createPriorUnlockLabel(\n trackId,\n locks,\n tracks,\n decimals,\n symbol,\n t,\n latestBlock,\n );\n\n if (priorUnlockLabel) {\n tooltipLabelRows.push(priorUnlockLabel);\n }\n }\n\n return tooltipLabelRows;\n}\n","export const forumLinkRegex =\n /https:\\/\\/forum\\.moonbeam\\.(foundation|network)\\/(t|c)\\/\\S+\\/\\d+/gi;\n\nexport function isValidTxHash(txHash?: string | null): boolean {\n // Check if txHash is a string and has the correct length of 66 characters (including '0x' prefix)\n if (typeof txHash !== 'string' || txHash.length !== 66) {\n return false;\n }\n\n // Check if txHash starts with '0x'\n if (!txHash.startsWith('0x')) {\n return false;\n }\n\n // Check if the rest of txHash is a valid hexadecimal string\n const hexPattern = /^[0-9a-fA-F]+$/;\n const hexPart = txHash.substring(2); // Remove '0x' prefix for validation\n\n return !!hexPattern.test(hexPart);\n}\n","export const FIVE_MIN_IN_MILLISECONDS = 5 * 60 * 1000;\nexport const NOT_FOUND_ERROR_CODE = 'NOT_FOUND';\nexport const BAD_REQUEST_ERROR_CODE = 'BAD_REQUEST';\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"bullet\":\"Timeline_bullet__5cm80\"};","/* (ignored) */","/* (ignored) */","/* (ignored) */","/* (ignored) */"],"names":["NoRecordsFound","label","others","param","jsx_runtime","jsxs","Stack","my","align","jsx","BsFolderX","size","Text","PassingOrFailingLabel","referendum","isCompact","t","useTranslation","passingStatus","isPassing","timeToEnd","useBlockRemainingTime","whenBlock","Tooltip","when","reason","failingReason","ReferendumFailingReason","NOT_ENOUGH_APPROVAL","NOT_ENOUGH_SUPPORT","withArrow","Badge","color","VotesProgressBar","showTooltip","progressProps","other","colors","useMantineTheme","themeColors","useThemeColors","ayesPercentage","ayes","percentage","naysPercentage","nays","buffer","toFixed","disabled","Progress","Root","radius","Section","value","votes","aye","whiteDark","nay","action","TransactionAction","VOTE","useMaxAmountVoting","address","useProxiedOrAddress","balances","useMoonBalances","useMaxAmount","availableForVoting","VotingModal","isOpen","onClose","isConnected","useAccount","delegatinVotes","useDelegatingVotesInfo","trackId","delegatingToAddress","voteDelegateIdentity","useIdentity","voteFunction","setVoteFunction","useState","VoteFunctions","VOTE_YES","amount","setAmount","ayeAmount","setAyeAmount","nayAmount","setNayAmount","conviction","setConviction","nativeAsset","useMoonChain","proxiedAddress","useProxiedAddress","voteLockingPeriod","useVoteLockingPeriodInDays","lockingPeriodInBlocks","useVoteLockingPeriodInBlocks","api","useApi","useMemo","consts","convictionVoting","_api_consts_convictionVoting_voteLockingPeriod","toNumber","blockTime","isAyeOrNay","isSplit","isAbstain","getVotingActionType","maxAmount","validatedAmount","amountError","useValidateMoonChainAmount","aggregatedAmounts","validatedAyeAmount","ayeAmountError","validatedNayAmount","nayAmountError","isInputComplete","isVotingInputComplete","maxInput","useMoonChainToDecimals","Big","roundDown","writeContract","isPending","useVoteAction","referendumId","onSuccess","useWriteContractAndConfirm","allowProxy","contractAddress","CONVICTION_VOTING_CONTRACT_ADDRESS","contractAbi","ConvictionVotingContractABI","functionName","onConfirmed","args","extractVoteActionArgs","index","clean","isDisabled","buttonName","Modal","opened","title","styles","content","overflow","gap","SegmentedControl","fullWidth","onChange","data","Group","justify","VoteFunctionIcon","concat","VOTE_NO","VOTE_SPLIT","VOTE_ABSTAIN","Fragment","InfoBlock","element","AssetAmountInput","input","border","backgroundColor","asset","e","currentTarget","info","InfoLine","onClick","isLoading","InputError","error","Select","height","Object","values","ConvictionLabel","map","toString","balanceLocking","lockedFor","NONE","duration","event","target","ta","MoonTokenAmount","isHidable","IoAlertCircleOutline","c","delegated","candidateDisplay","origin","ActionButton","variant","bg","ActionCallButton","gaName","checkMoonChain","leftSection","MdOutlineHowToVote","loading","VoteButton","isVotingModalOpen","setIsVotingModalOpen","canReferendumBeVotedOn","react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__","IoThumbsUpSharp","thumbsUp","IoThumbsDownSharp","thumbsDown","MdOutlineCallSplit","TbHandStop","undefined","VoteDecision","options","replace","domNode","Element","name","linkText","firstChild","OffsiteLink","fw","link","attribs","href","codeText","length","Code","block","createHtmlWithOffsiteLinks","htmlParser","sanitize","htmlString","allowedTags","allowedAttributes","a","allowedIframeHostnames","HtmlPresenter","Box","TypographyStylesProvider","pl","Markdown","markdown","ReactMarkdown","rehypePlugins","rehypeHighlight","remarkPlugins","remarkGfm","components","children","linkColor","code","RichEditor","text","editor","useEditor","extensions","StarterKit","Underline","Link","Superscript","SubScript","Highlight","TextAlign","configure","types","onBlur","getHTML","useEffect","commands","setContent","RichTextEditor","Toolbar","sticky","stickyOffset","ControlsGroup","Bold","Italic","Strikethrough","ClearFormatting","H1","H2","H3","H4","Blockquote","Hr","BulletList","OrderedList","Unlink","Content","DescriptionEditor","description","isHtml","setDescription","Tabs","defaultValue","List","Tab","Panel","pt","useTrpcNotifications","mutateFailed","showNotification","message","autoClose","forumUrlSchema","z","string","trim","url","regex","forumLinkRegex","linksSchema","array","optional","or","literal","formSchema","object","forumLink","links","min","ProposalEditForm","form","closeForm","trpcUtils","useUtils","useAddress","notifyTransactionError","useWalletNotifications","SIGN","useForm","validate","zodResolver","initialValues","validateInputOnChange","linksNotMax","getInputProps","addMoreLinks","useCallback","insertListItem","signedMsg","signError","isSigning","signMessage","variables","reset","useSignMessage","mutate","openGov","updateTitleAndDescription","useMutation","invalidate","onError","console","submitEdit","createSigningPayload","payload","stringified","stringify","createdAt","Date","base64Encode","filter","moonChainKey","signature","submitButtonDisabled","isValid","errorsTooltip","keys","errors","key","Input","setFieldValue","Divider","mt","Card","py","px","ns","TextInput","required","IoLinkOutline","style","width","placeholder","aria-label","inline","UrlInputError","ForumLinkInvalid","Trans","i18nKey","openGovForumURL","withIcon","_","InvalidURL","Button","texts","removeListItem","PiMinusBold","PiPlusBold","Description","proposal","isEditing","setIsEditing","proposedTime","useBlockTimestampElapsedTime","proposeTime","proposerAddress","proposer","subscanUrl","polkassemblyUrl","identity","isValidProxy","useIsValidGovProxy","isTreasury","TreasuryProposal","isInstance","decimals","subscanDescription","reward","toDecimal","beneficiary","symbol","originSymbol","originText","subscanProposalUrl","isHtmlString","shouldShowEditButtons","isAddressEqual","active","withBorder","shadow","Skeleton","mb","h","hidden","p","data-testid","Avatar","orientation","timeAgo","StatusBadge","status","isVerified","wordWrap","getUrlDomainFromString","showEditingButtons","Metadata","metadata","clipboard","useClipboard","isTablet","useIsTablet","author","Title","visible","Grid","Col","span","sm","truncate","maw","hash","ActionIcon","copy","copied","IoCopy","IoCopyOutline","tt","call_module","call_name","created_block","getReferendumStatusColor","TimelineElement","item","isFinished","locale","useRouter","remainingTime","useProgressBarData","initialBlock","startBlock","finalBlock","totalBlocks","showProgressBar","showRemainingTime","getDateByAnyTimestamp","time","toLocaleString","Timeline","timeline","ReferendumStatus","SUBMITTED","DECIDING","CONFIRMING","TreasuryProposalStatus","Approved","Proposed","sortedTimeLine","sort","b","getJsTimestamp","w","mih","MantineTimeline","lineWidth","bulletSize","step","Item","lineVariant","bullet","className","classes","SupportProgressBar","supportStillNeeded","minimumSupport","support","supportStillNeededDecimal","hasEnoughSupport","compactNumber","calcProgressValue","transformIssuance","toBigInt","GeneralStats","isExpandedView","issuance","useIssuance","useApiCall","query","totalIssuance","hasMinimumSupport","Center","IoStarOutline","IoPeopleOutline","capitalize","useCompactDisplay","multiline","lh","IoInformationCircleOutline","IoClipboardOutline","ChartJS","register","CategoryScale","LinearScale","PointElement","LineElement","Legend","Chart","constantValue","variableData","xAxisTimeline","latestBlock","useLatestBlock","requirementCurveColor","currentIndex","getCurrentBlockInTime","labels","relBlock","datasets","borderColor","borderWidth","pointRadius","context","dataIndex","Array","fill","approval","raw","pointStyle","responsive","plugins","legend","display","position","interaction","mode","scales","x","ticks","maxTicksLimit","callback","days","Number","count","y","div","Line","ThresholdCharts","referendumTrack","useTrack","mounted","setMounted","useIsWideTablet","useTimeout","autoInvoke","renderComponent","approvalPercentage","chartData","supportPercentage","Transition","transition","VotesHeader","fontFamily","secondaryTexts","number","DelegateAccountIcon","vote","delegateAccount","BsFillPersonCheckFill","voteDecisionMap","SubscanVoteStatus","AYE","NAY","ABSTAIN","VoteRow","voter","Table","Tr","Td","decision","IoRemoveCircle","miw","VotesList","useVotes","useMoonChainKeyParam","isError","proposalVotesByChainAndID","useQuery","enabled","staleTime","FIVE_MIN_IN_MILLISECONDS","account","BigInt","delegate_account","hasFailed","setFilter","filteredVotes","setFilteredVotes","Chip","multiple","ScrollArea","Thead","Th","Tbody","Loader","VotesResults","fz","Votes","open","close","useDisclosure","showChart","setShowChart","detailsButtonLabel","displayCharts","includes","arrowSize","arrowOpen","IoArrowDownOutline","IoArrowForwardOutline","arrowClose","IoArrowUpOutline","IoArrowBackOutline","root","justifyContent","inner","md","UnstyledButton","transformDelegatingVotes","isDelegating","asDelegating","balance","getConvictionLabel","votingFor","calcBlockProgressPercentage","remainingBlocks","calcRemainingBlocks","useBlockTime","anonymous","inputs","indexed","internalType","type","outputs","stateMutability","ConvictionVotingFunctions","isLocked1x","X1","isLocked2x","X2","isLocked3x","X3","isLocked4x","X4","isLocked5x","X5","isLocked6x","X6","parseEther","getDetailedLocks","votesAndDelegations","referendaInfo","lockPeriod","lockedFundsByTrack","detailedLocks","track","votedReferenda","delegation","prior","lockedAmount","reduce","accum","referendumInfo","effectiveEndBlock","endBlock","aborted","unlockableVotes","unlockableAmount","filterUnlockableVotesForTrack","totalVotes","stillLockedAmount","unlockableReferendumVotes","BN_MAX_INTEGER","trackLocks","getTrackByNumericId","tracks","id","find","getLockedFundsSummaryForVote","getLockedFundsSummaryForDelegation","extractReferendumIds","acc","referendumIds","getBalanceAndConviction","accountVote","isStandard","asStandard","asSplit","isSplitAbstain","abstain","asSplitAbstain","extractUnlockableTracksIds","locks","unlockableAtBlock","generateTooltipLabelRows","tooltipLabelRows","unlockableTracksLabel","createUnlockableTracksLabel","unlockableTracks","unlockableTracksIds","tracksLiteral","join","push","priorUnlockLabel","createPriorUnlockLabel","isInThePast","trackName","isValidTxHash","txHash","startsWith","hexPart","substring","hexPattern","test","module","exports"],"sourceRoot":""}