{"version":3,"file":"static/chunks/pages/[moonChainKey]/staking-1d4790a211c7ece3.js","mappings":"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KAAM,2BACN6O,QAAS,CACP,CACEE,aAAc,UACd/O,KAAM,GACNrY,KAAM,SACR,EACD,CACDmnB,gBAAiB,OACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACD,CACDqY,KAAM,yBACN6O,QAAS,CACP,CACEE,aAAc,OACd/O,KAAM,GACNrY,KAAM,MACR,EACD,CACDmnB,gBAAiB,OACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACD,CACDqY,KAAM,4BACN6O,QAAS,CACP,CACEE,aAAc,OACd/O,KAAM,GACNrY,KAAM,MACR,EACD,CACDmnB,gBAAiB,OACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACA,CACEonB,aAAc,UACd/O,KAAM,SACNrY,KAAM,SACR,EACA,CACEonB,aAAc,UACd/O,KAAM,2BACNrY,KAAM,SACR,EACA,CACEonB,aAAc,UACd/O,KAAM,2BACNrY,KAAM,SACR,EACD,CACDqY,KAAM,WACN6O,QAAS,EAAE,CACXC,gBAAiB,aACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACA,CACEonB,aAAc,UACd/O,KAAM,SACNrY,KAAM,SACR,EACA,CACEonB,aAAc,QACd/O,KAAM,eACNrY,KAAM,OACR,EACA,CACEonB,aAAc,UACd/O,KAAM,2BACNrY,KAAM,SACR,EACA,CACEonB,aAAc,UACd/O,KAAM,0CACNrY,KAAM,SACR,EACA,CACEonB,aAAc,UACd/O,KAAM,2BACNrY,KAAM,SACR,EACD,CACDqY,KAAM,2BACN6O,QAAS,EAAE,CACXC,gBAAiB,aACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACA,CACEonB,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACD,CACDqY,KAAM,yBACN6O,QAAS,CACP,CACEE,aAAc,QACd/O,KAAM,GACNrY,KAAM,OACR,EACD,CACDmnB,gBAAiB,OACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACA,CACEonB,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACD,CACDqY,KAAM,6BACN6O,QAAS,CACP,CACEE,aAAc,OACd/O,KAAM,GACNrY,KAAM,MACR,EACD,CACDmnB,gBAAiB,OACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACA,CACEonB,aAAc,UACd/O,KAAM,OACNrY,KAAM,SACR,EACD,CACDqY,KAAM,oBACN6O,QAAS,EAAE,CACXC,gBAAiB,aACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACD,CACDqY,KAAM,2BACN6O,QAAS,CACP,CACEE,aAAc,UACd/O,KAAM,GACNrY,KAAM,SACR,EACD,CACDmnB,gBAAiB,OACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACD,CACDqY,KAAM,2BACN6O,QAAS,EAAE,CACXC,gBAAiB,aACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACA,CACEonB,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACD,CACDqY,KAAM,2BACN6O,QAAS,EAAE,CACXC,gBAAiB,aACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACA,CACEonB,aAAc,UACd/O,KAAM,2BACNrY,KAAM,SACR,EACD,CACDqY,KAAM,yBACN6O,QAAS,EAAE,CACXC,gBAAiB,aACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACA,CACEonB,aAAc,UACd/O,KAAM,2BACNrY,KAAM,SACR,EACD,CACDqY,KAAM,yBACN6O,QAAS,EAAE,CACXC,gBAAiB,aACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,EAAE,CACV5O,KAAM,YACN6O,QAAS,EAAE,CACXC,gBAAiB,aACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,EAAE,CACV5O,KAAM,WACN6O,QAAS,EAAE,CACXC,gBAAiB,aACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACD,CACDqY,KAAM,cACN6O,QAAS,CACP,CACEE,aAAc,OACd/O,KAAM,GACNrY,KAAM,MACR,EACD,CACDmnB,gBAAiB,OACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACD,CACDqY,KAAM,cACN6O,QAAS,CACP,CACEE,aAAc,OACd/O,KAAM,GACNrY,KAAM,MACR,EACD,CACDmnB,gBAAiB,OACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACD,CACDqY,KAAM,sBACN6O,QAAS,CACP,CACEE,aAAc,OACd/O,KAAM,GACNrY,KAAM,MACR,EACD,CACDmnB,gBAAiB,OACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,SACNrY,KAAM,SACR,EACA,CACEonB,aAAc,UACd/O,KAAM,iBACNrY,KAAM,SACR,EACD,CACDqY,KAAM,iBACN6O,QAAS,EAAE,CACXC,gBAAiB,aACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,EAAE,CACV5O,KAAM,gBACN6O,QAAS,CACP,CACEE,aAAc,UACd/O,KAAM,GACNrY,KAAM,SACR,EACD,CACDmnB,gBAAiB,OACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,QACNrY,KAAM,SACR,EACD,CACDqY,KAAM,SACN6O,QAAS,CACP,CACEE,aAAc,UACd/O,KAAM,GACNrY,KAAM,SACR,EACD,CACDmnB,gBAAiB,OACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,EAAE,CACV5O,KAAM,QACN6O,QAAS,CACP,CACEE,aAAc,UACd/O,KAAM,GACNrY,KAAM,SACR,EACD,CACDmnB,gBAAiB,OACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,OACNrY,KAAM,SACR,EACD,CACDqY,KAAM,4BACN6O,QAAS,EAAE,CACXC,gBAAiB,aACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACA,CACEonB,aAAc,UACd/O,KAAM,OACNrY,KAAM,SACR,EACD,CACDqY,KAAM,4BACN6O,QAAS,EAAE,CACXC,gBAAiB,aACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,iBACNrY,KAAM,SACR,EACD,CACDqY,KAAM,0BACN6O,QAAS,EAAE,CACXC,gBAAiB,aACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,EAAE,CACV5O,KAAM,0BACN6O,QAAS,EAAE,CACXC,gBAAiB,aACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACD,CACDqY,KAAM,2BACN6O,QAAS,EAAE,CACXC,gBAAiB,aACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,EAAE,CACV5O,KAAM,qBACN6O,QAAS,CACP,CACEE,aAAc,YACd/O,KAAM,GACNrY,KAAM,WACR,EACD,CACDmnB,gBAAiB,OACjBnnB,KAAM,UACR,EACA,CACEinB,OAAQ,CACN,CACEG,aAAc,UACd/O,KAAM,YACNrY,KAAM,SACR,EACA,CACEonB,aAAc,QACd/O,KAAM,QACNrY,KAAM,OACR,EACA,CACEonB,aAAc,UACd/O,KAAM,0CACNrY,KAAM,SACR,EACA,CACEonB,aAAc,UACd/O,KAAM,2BACNrY,KAAM,SACR,EACD,CACDqY,KAAM,kBACN6O,QAAS,EAAE,CACXC,gBAAiB,aACjBnnB,KAAM,UACR,EACD,4BE9iBD,IAAM6F,GAASwhB,GAAAA,CAAiBA,CAACC,kBAAkB,6BCnB5C,IAAMC,GAAsB,KAIjC,IAAM1qB,EAAUwjB,CAAAA,EAAAA,GAAAA,CAAAA,IACVmH,EAAWC,CAAAA,EAAAA,GAAAA,CAAAA,EAAgB5qB,GAEjC,MAAO6qB,CAAAA,EAAAA,GAAAA,CAAAA,EAAaF,MAAAA,EAAAA,KAAAA,EAAAA,EAAUG,mBAAmB,CACnD,oGCaO,IAAMC,GAAQ,KACnB,GAAM,CAAErpB,EAAAA,CAAC,CAAE,CAAGC,CAAAA,EAAAA,EAAAA,EAAAA,EAAe,WACvB,CAAEiP,YAAAA,CAAW,CAAE,CAAG/C,CAAAA,EAAAA,GAAAA,EAAAA,IAClB,CAAEzE,cAAAA,CAAa,CAAE,CAAGC,CAAAA,EAAAA,GAAAA,CAAAA,IACpB2hB,EAAeC,CAAAA,EAAAA,GAAAA,EAAAA,IACfC,EAASvb,CAAAA,EAAAA,GAAAA,SAAAA,IACT3P,EAAUwjB,CAAAA,EAAAA,GAAAA,CAAAA,IACV,CAAElf,eAAAA,CAAc,CAAE,CAAGE,CAAAA,EAAAA,GAAAA,CAAAA,IACrB,CAACmM,EAAQwa,EAAU,CAAGtmB,CAAAA,EAAAA,EAAAA,QAAAA,EAAS,IAC/B,CAACumB,EAAYC,EAAc,CAAGxmB,CAAAA,EAAAA,EAAAA,QAAAA,EAAS,IACvC,CAAC0jB,EAAmB+C,EAAqB,CAC7CzmB,CAAAA,EAAAA,EAAAA,QAAAA,IACI,CAAC0mB,EAAyBC,EAA2B,CAAG3mB,CAAAA,EAAAA,EAAAA,QAAAA,EAAS,IACjE,CAAC4mB,EAA2BC,EAA6B,CAC7D7mB,CAAAA,EAAAA,EAAAA,QAAAA,EAAS,KACL,CAACqkB,EAA2B,CAAGE,CAAAA,EAAAA,EAAAA,CAAAA,EAAyB,CAC5Dxf,IAAK,+BACP,GAEM,CAAE0W,cAAAA,CAAa,CAAE,CAAGD,KACpBsL,EAAYpD,CAAAA,MAAAA,EAAAA,KAAAA,EAAAA,EAAmBhH,OAAO,GAAIjB,EAC1C,CAAEsL,UAAAA,CAAS,CAAEC,SAAAA,CAAQ,CAAE,CAAGnB,KAC1BoB,EAAWC,CAAAA,EAAAA,GAAAA,CAAAA,EAAuBJ,EAAW,EAAG,GAAMxa,GAAAA,CAAGA,CAAC6a,OAAO,EAEjE,CAACC,EAAiBC,EAAY,CAAGC,CAAAA,EAAAA,GAAAA,CAAAA,EAA2B,CAChExb,OAAAA,EACAgb,UAAAA,EACAC,UAAAA,CACF,GASM,CAAEQ,cAAAA,CAAa,CAAEC,UAAAA,CAAS,CAAEC,UAAAA,CAAS,CAAE,CAAGC,SFrCtBrsB,CAMR,KANQ,CAC1B+f,UAAAA,CAAS,CACTtP,OAAAA,CAAM,CACN8a,0BAAAA,CAAyB,CACzBe,UAAAA,CAAS,CACTC,OAAAA,CAAM,CACY,CANQvsB,EAOpBwsB,EAAmBzM,MAAAA,EAAAA,KAAAA,EAAAA,EAAWjgB,OAAO,CAErC2sB,EACJ5C,GAAmC2C,GAC/BE,EAA2B3C,KAC3Brb,EAAO,CACX8d,EACAG,CAAAA,EAAAA,GAAAA,CAAAA,EAAWlc,GAAU,KACrB8a,EACAxL,MAAAA,EAAAA,KAAAA,EAAAA,EAAWb,eAAe,CAG1BuN,EAA0C,EAC1CC,EACD,CAED,MAAOE,CAAAA,EAAAA,GAAAA,CAAAA,EAA2B,CAChC9jB,OAAAA,GACA+jB,WAAY,GACZC,gBAAiB9C,GACjB+C,YAAa9C,GACb+C,aAAcC,GAAAA,EAAgBA,CAACC,2BAA2B,CAC1Dxe,KAAAA,EACAye,YAAab,EACbC,OAAAA,CACF,EACF,EEI8D,CAC1DxM,UAAWsI,EACX5X,OAAQsb,EACRR,0BAAAA,EACAe,UAVApjB,GAAiB,CAAC8f,EACd,KACEsC,EAA2B,GAC7B,EACAxqB,KAAAA,EAOJyrB,SACEtB,EAAU,GACZ,CACF,GAEMmC,EAAQjQ,CAAAA,EAAAA,EAAAA,WAAAA,EAAY,KACxBiO,EAAqBtqB,KAAAA,GACrB0qB,EAA6B,KAC7BP,EAAU,GACZ,EAAG,EAAE,EAWLoC,CAAAA,EAAAA,GAAAA,CAAAA,EAAaD,EAAO,CAACA,EAAOttB,EAAQ,EAGpCqF,CAAAA,EAAAA,EAAAA,SAAAA,EAAU,IAAM6lB,EAAOsC,MAAM,CAACC,EAAE,CAAC,mBAAoBH,GAAQ,CAACA,EAAM,EAEpEjoB,CAAAA,EAAAA,EAAAA,SAAAA,EAAU,KACJgnB,GACFiB,GAEJ,EAAG,CAACjB,EAAWiB,EAAM,EAErB,IAAMI,EAA8BhsB,EAAE,iBAAoB,SAE1D,MACE,GAAAnB,EAAAC,IAAA,EAAAD,EAAA0H,QAAA,YACE,GAAA1H,EAAAI,GAAA,EAACsoB,GAAmBA,CAClBtY,OAAQya,EACR3E,OAAQ8E,EACR7E,QAAS,IAAM8E,EAA2B,MAE5C,GAAAjrB,EAAAI,GAAA,EAACgtB,EAAAA,CAAIA,CAAAA,CAACC,WAAU,GAACC,GAAI,KAAM3nB,EAAG,KAAMyV,UAAW9B,KAAAA,IAAY,UACzD,GAAAtZ,EAAAC,IAAA,EAACipB,EAAAA,CAAKA,CAAAA,WACJ,GAAAlpB,EAAAI,GAAA,EAACmtB,EAAAA,CAAKA,CAAAA,CAACpG,MAAO,EAAG7mB,KAAM,cACpBa,EAAE,WAEL,GAAAnB,EAAAI,GAAA,EAAC2nB,GAAeA,CACdC,kBAAmBA,EACnB5B,SAAU2E,EACVxpB,UAAWwqB,IAEb,GAAA/rB,EAAAC,IAAA,EAACipB,EAAAA,CAAKA,CAAAA,CAAC/oB,IAAK,EAAGkpB,GAAI,eACjB,GAAArpB,EAAAI,GAAA,EAACotB,GAAAA,CAASA,CAAAA,CACRpS,UAAW9B,KAAAA,SAAiB,CAC5BiO,MAAOpmB,EAAE,sBACTssB,QACE,GAAAztB,EAAAI,GAAA,EAACstB,GAAAA,CAAgBA,CAAAA,CACf9S,WAAY,CACV+S,MAAOrU,KAAAA,KAAa,CACpBsU,YAAatU,KAAAA,WAAmB,EAElCuU,MAAOxd,EACPpO,MAAOmO,EACP9N,SAAUypB,EACVlrB,SAAU,GAAO+pB,EAAU9W,EAAEsR,aAAa,CAACnjB,KAAK,IAGpD0c,KACE,GAAA3e,EAAAC,IAAA,EAACipB,EAAAA,CAAKA,CAAAA,CAAC/oB,IAAK,EAAGkpB,GAAIoB,EAAe,KAAOhqB,KAAAA,YACvC,GAAAT,EAAAI,GAAA,EAAC0tB,GAAAA,CAAQA,CAAAA,CACPpnB,MAAOvF,EAAE,0BACTc,MAAOspB,EACPvoB,QAAS,IAAMuoB,GAAYX,EAAUW,GACrChqB,UAAWwqB,IAEb,GAAA/rB,EAAAI,GAAA,EAAC0tB,GAAAA,CAAQA,CAAAA,CACPpnB,MAAOvF,EAAE,0BACTc,MAAOqpB,EACPtoB,QAAS,IAAMsoB,GAAYV,EAAUU,GACrC/pB,UAAWwqB,SAKlB/D,MAAAA,GAA6B,GAAAhoB,EAAAI,GAAA,EAAC2tB,GAAAA,EAAUA,CAAAA,CAACha,MAAO4X,OAGnD,GAAA3rB,EAAAC,IAAA,EAACipB,EAAAA,CAAKA,CAAAA,CAAC/oB,IAAK,YACV,GAAAH,EAAAI,GAAA,EAACG,EAAAA,CAAIA,CAAAA,CAACD,KAAM,KAAM+oB,GAAI,cACnBloB,EAAE,kCAEL,GAAAnB,EAAAI,GAAA,EAACka,EAAMA,CACLM,WAAY,CACV4B,MAAOlD,KAAAA,KAAa,CACpBvB,KAAMuB,KAAAA,IAAY,EAEpBhX,SAAUypB,EACVzrB,KAAM,KACNO,SAAUsqB,EACVlpB,MAAOipB,EACP/U,WAAYhV,EAAE,gCACdwW,MAAO,CACL,CAAE1V,MAAO,GAAIyE,MAAO,KAAM,EAC1B,CAAEzE,MAAO,GAAIyE,MAAO,KAAM,EAC1B,CAAEzE,MAAO,GAAIyE,MAAO,KAAM,EAC3B,MAIL,GAAA1G,EAAAI,GAAA,EAACF,EAAAA,CAAKA,CAAAA,CAACiF,QAAS,oBACd,GAAAnF,EAAAI,GAAA,EAAC4tB,GAAAA,CAAgBA,CAAAA,CACfC,OAAQ,WAAsB7c,MAAA,CAAX+b,GACnB9D,GAAI,KACJ/oB,KAAM,KACNgC,SAAUypB,GAAa,CAAC/D,GAAqB,CAAC0D,EAC9CwC,eAAgB,GAChBlrB,QAxGI,KACT0oB,IAILZ,EAAcY,GACdG,IACF,EAkGYjI,cAAa,wBAEZmI,EAAY,GAAA/rB,EAAAI,GAAA,EAAC8C,EAAAA,CAAMA,CAAAA,CAACN,KAAM,SAAauqB,aAOtD,8EEtKA,SAASgB,GACPnhB,CAAgE,EAEhE,OAAOA,EAAKlL,GAAG,CAAC,OAAC,CAAEssB,UAAAA,CAAS,CAAEC,eAAAA,CAAc,CAAE5lB,OAAAA,CAAM,CAAE,CAAA9I,QAAM,CAC1DyuB,UAAWA,EAAU9f,QAAQ,GAC7B+f,eAAgBA,EAAe7f,QAAQ,GACvC/F,OAAQA,EAAO6lB,QAAQ,CACnB,CAAE7lB,OAAM,QAA0B,EAClCA,EAAO8lB,UAAU,CACf,CACE9lB,OAAM,WACN2H,OAAQ3H,EAAO+lB,UAAU,CAAC5P,QAAQ,EACpC,EACAne,KAAAA,CACR,GACF,CAuBO,SAASguB,GACdC,CAA0B,EAE1B,IAAMrR,EAAQkD,KACRoO,EAAcC,CAAAA,EAAAA,GAAAA,CAAAA,IACdC,EAAcH,MAAAA,EAAAA,KAAAA,EAAAA,EAASL,cAAc,CAErCS,EACJD,GAAeF,GAAetR,EAC1BsR,EACA,CAACE,EAAcxR,EAAMC,OAAO,EAAID,EAAM3b,MAAM,CAC3CitB,CAAAA,EAActR,EAAMiD,KAAK,EAC1B,EAEN,MAAOyO,CAAAA,EAAAA,GAAAA,EAAAA,EAAsBD,EAC/B,CC7CO,SAASE,GAAkBtP,CAAiB,MzBY1CN,EyBXP,IAAM3f,EAAUwjB,CAAAA,EAAAA,GAAAA,CAAAA,IACVhC,EAAWphB,CAAAA,EAAAA,GAAAA,CAAAA,EAAY6f,GACvBJ,EzBSN,OAAOF,CAAAA,EAAAA,GAAkB,CyBTcM,EzBSH,IAA7BN,KAAAA,IAAAA,EAAAA,KAAAA,EAAAA,EAAgC6P,EAAE,CAAC,GyBRpCtI,EAAiBuI,SA6BvBxP,CAAkB,EAElB,IAAMtS,EAAMC,CAAAA,EAAAA,GAAAA,CAAAA,IAEN,CAAEL,KAAAA,CAAI,CAAE,CAAGO,CAAAA,EAAAA,GAAAA,CAAAA,EAAS,CACxBC,SAAU,CAAC,iBAAkBkS,EAAU,CACvCjS,QAAS,UACP,IAAMC,EAAO,MAAMN,CAAAA,MAAAA,EAAAA,KAAAA,EAAAA,EAAKO,KAAK,CAAC4Q,gBAAgB,CAACoI,cAAc,CAC3DjH,EAAAA,EAGF,OAAOhS,EA/CJV,EAAKmiB,eAAe,GAAGtP,WAAW,CA+COpf,KAAAA,CAC9C,EACA2uB,gBAAiB,IACjBjiB,QAAS,CAAC,CAACC,CACb,GAEA,OAAOJ,CACT,EA/C2C0S,GACnC,CAAEK,cAAesP,CAAiB,CAAE,CAAGvP,KAmB7C,MAAO,CACLmB,SAAAA,EACAlB,cAlBAT,GAAiBA,UAAAA,EAAcH,cAAc,CACzCG,EAAcP,yBAAyB,CtBhCnB,gBAAuB,EsBiC3CsQ,EAiBJC,mBAfyBztB,CAAAA,EAAAA,EAAAA,OAAAA,EACzB,IACE8kB,CAAAA,GACI,CAAC,CAACA,EACC4I,OAAO,GACP9f,IAAI,CAAC,GAAO+f,CAAAA,EAAAA,GAAAA,EAAAA,EAAeC,EAAE9P,KAAK,CAACrR,QAAQ,GAAI7O,IAExD,CAACA,EAASknB,EAAe,EASzB+I,kBANwBC,SDZ1BjQ,CAAkB,EAElB,IAAMtS,EAAMC,CAAAA,EAAAA,GAAAA,CAAAA,IACN5N,EAAUwjB,CAAAA,EAAAA,GAAAA,CAAAA,IAEV2M,EAAoBtR,CAAAA,EAAAA,GAAAA,CAAAA,EACxBlR,MAAAA,EAAAA,KAAAA,EAAAA,EAAKO,KAAK,CAAC4Q,gBAAgB,CAACsR,2BAA2B,CACvD,CAACnQ,EAAU,CACXyO,IAGF,MAAOtsB,CAAAA,EAAAA,EAAAA,OAAAA,EACL,IACE+tB,MAAAA,EAAAA,KAAAA,EAAAA,EAAmBngB,IAAI,CAAC,GACtB+f,CAAAA,EAAAA,GAAAA,EAAAA,EAAed,EAAQN,SAAS,CAAE3uB,IAEtC,CAACA,EAASmwB,EAAkB,CAEhC,ECN2DlQ,EAOzD,CACF,EDtDYvL,EAAAA,GAAAA,CAAAA,EAAAA,CAAAA,CAAAA,mHE2BL,SAAS2b,GAAoBnwB,CAM5B,KAN4B,CAClCowB,aAAAA,CAAY,CACZ1hB,KAAAA,CAAI,CACJ5F,OAAAA,CAAM,CACNkkB,aAAAA,CAAY,CACZqD,MAAAA,CAAK,CACC,CAN4BrwB,EAO5BswB,EAASC,CAAAA,EAAAA,GAAAA,CAAAA,IACT,CAAEC,2BAAAA,CAA0B,CAAEC,uBAAAA,CAAsB,CAAE,CAC1DC,CAAAA,EAAAA,GAAAA,CAAAA,EAAuB5nB,GACnB6nB,EAAsB/D,CAAAA,EAAAA,GAAAA,CAAAA,EAA2B,CACrD9jB,OAAAA,EACA+jB,WAAY,GACZC,gBAAiB9C,GACjB+C,YAAa9C,GACb+C,aAAcA,EACdte,KAAAA,EACA6d,SACE6D,EAAa,IACbC,MAAAA,GAAAA,GACF,EACAO,YACER,EAAa,GACf,CACF,GACM,CAAE/iB,KAAAA,CAAI,CAAE,CAAGsjB,EA4BjB,MA1BAxrB,CAAAA,EAAAA,EAAAA,SAAAA,EAAU,KACHkI,GAOLwjB,CAAAA,EAAAA,GAAAA,CAAAA,EAA0BP,EAAQ,CAAEQ,KAAMzjB,CAAK,GAC5C0jB,IAAI,CAAC,IACc,YAAdC,EAAGC,MAAM,EACXT,EAA2BQ,EAAGE,eAAe,CAEjD,GACCC,KAAK,CAAC,IACLV,EAAuBrc,EACzB,GACCgd,OAAO,CAAC,IAAMhB,EAAa,IAChC,EAAG,CACDE,EACAjjB,EACAmjB,EACAC,EACAL,EACD,EAEMO,CACT,iBEpFO,IAAMU,GAAgB,OAAC,CAC5BjB,aAAAA,CAAY,CACZrQ,UAAAA,CAAS,CACqB,CAAA/f,EACxB,CAAEwB,EAAAA,CAAC,CAAE,CAAGC,CAAAA,EAAAA,EAAAA,EAAAA,EAAe,WACvB,CAAE6vB,uBAAAA,CAAsB,CAAE,CAAGC,CAAAA,EAAAA,GAAAA,CAAAA,IAE7B,CAAErF,cAAAA,CAAa,CAAEE,UAAAA,CAAS,CAAE,CAAGoF,SDTIxxB,CAG7B,KAH6B,CACzC+f,UAAAA,CAAS,CACTqQ,aAAAA,CAAY,CACA,CAH6BpwB,EAIzC,OAAOmwB,GAAoB,CACzBnD,aAAcC,GAAAA,EAAgBA,CAACwE,MAAM,CACrC3oB,OAAQwhB,GAAAA,CAAiBA,CAACoH,cAAc,CACxChjB,KAAM,CAACqR,EAAU,CACjBqQ,aAAAA,CACF,EACF,ECDkE,CAC9DrQ,UAAAA,EACAqQ,aAAAA,CACF,GAEA,MACE,GAAA/vB,EAAAI,GAAA,EAACqH,GAAAA,CAAOA,CAAAA,CAACf,MAAOvF,EAAE,0BAChB,GAAAnB,EAAAI,GAAA,EAACgkB,GAAAA,CAAUA,CAAAA,CACTphB,QAAS,KACP6oB,IACAoF,EAAuB,wBACzB,EACArN,cAAc,2BACd0N,QAASvF,WAET,GAAA/rB,EAAAI,GAAA,EAACmxB,GAAAA,GAAcA,CAAAA,CAACjxB,KAAMkxB,QAI9B,EE1BaC,GAAiB,OAAC,CAC7B/R,UAAAA,CAAS,CACTqQ,aAAAA,CAAY,CACZztB,SAAAA,CAAQ,CACsB,CAAA3C,EACxB,CAAEwB,EAAAA,CAAC,CAAE,CAAGC,CAAAA,EAAAA,EAAAA,EAAAA,EAAe,WACvB,CAAE6vB,uBAAAA,CAAsB,CAAE,CAAGC,CAAAA,EAAAA,GAAAA,CAAAA,IAE7B,CAAErF,cAAAA,CAAa,CAAEE,UAAAA,CAAS,CAAE,CAAG2F,SDTK/xB,CAG9B,KAH8B,CAC1C+f,UAAAA,CAAS,CACTqQ,aAAAA,CAAY,CACA,CAH8BpwB,EAIpCF,EAAUwjB,CAAAA,EAAAA,GAAAA,CAAAA,IAEhB,OAAO6M,GAAoB,CACzBnD,aAAcC,GAAAA,EAAgBA,CAAC+E,OAAO,CACtClpB,OAAQwhB,GAAAA,CAAiBA,CAAC2H,SAAS,CACnCvjB,KAAM,CAAC5O,EAASigB,EAAU,CAC1BqQ,aAAAA,CACF,EACF,ECHmE,CAC/DrQ,UAAAA,EACAqQ,aAAAA,CACF,GAEA,MACE,GAAA/vB,EAAAI,GAAA,EAACqH,GAAAA,CAAOA,CAAAA,CAACf,MAAOvF,EAAE,2BAChB,GAAAnB,EAAAI,GAAA,EAACgkB,GAAAA,CAAUA,CAAAA,CACT9hB,SAAUA,EACVgvB,QAASvF,EACT/oB,QAAS,KACP6oB,MAAAA,GAAAA,IACAoF,EAAuB,yBACzB,EACArN,cACEthB,EACK,qCACA,qCAGP,GAAAtC,EAAAI,GAAA,EAACyxB,GAAAA,GAAkBA,CAAAA,CAACvxB,KAAMkxB,QAIlC,EC5BaA,GAAY,GAeZM,GAAU,OAAC,CAAEpS,UAAAA,CAAS,CAAEgP,QAAAA,CAAO,CAAEqD,iBAAAA,CAAgB,CAAS,CAAApyB,EAC/DqyB,EAAuBvD,GAAiCC,GACxD,CAACntB,EAAWwuB,EAAa,CAAGzrB,CAAAA,EAAAA,EAAAA,QAAAA,EAAS,IAE3C,MACE,GAAAtE,EAAAC,IAAA,EAACC,EAAAA,CAAKA,CAAAA,CAACC,IAAK,KAAMgF,QAAS,qBACxB5D,GAAa,GAAAvB,EAAAI,GAAA,EAAC8C,EAAAA,CAAMA,CAAAA,CAACN,KAAM,SAC3B,CAACrB,GACA,GAAAvB,EAAAC,IAAA,EAAAD,EAAA0H,QAAA,YACGgnB,GACC,GAAA1uB,EAAAC,IAAA,EAAAD,EAAA0H,QAAA,YACE,GAAA1H,EAAAI,GAAA,EAACqxB,GAAcA,CACb1B,aAAcA,EACdrQ,UAAWA,EACXpd,SAAU,CAAC,CAAC0vB,EACZtD,QAASA,IAEX,GAAA1uB,EAAAI,GAAA,EAAC4wB,GAAaA,CACZjB,aAAcA,EACdrQ,UAAWA,EACXgP,QAASA,EACTpsB,SAAUf,OAIf,CAACmtB,GACA,GAAA1uB,EAAAC,IAAA,EAAAD,EAAA0H,QAAA,YACE,GAAA1H,EAAAI,GAAA,EAAC6xB,GAAeA,CACdvS,UAAWA,EACXqQ,aAAcA,IAEhB,GAAA/vB,EAAAI,GAAA,EAAC8xB,GAAIA,CAACxS,UAAWA,EAAWqQ,aAAcA,IAC1C,GAAA/vB,EAAAI,GAAA,EAAC+xB,GAAQA,CACPzS,UAAWA,EACXqQ,aAAcA,EACdgC,iBAAkBA,IAEpB,GAAA/xB,EAAAI,GAAA,EAACgyB,GAAMA,CAAC1S,UAAWA,EAAWqQ,aAAcA,YAO1D,iHQ5DO,IAAMsC,GAA4B,IAGvC,IAAM5yB,EAAUwjB,CAAAA,EAAAA,GAAAA,CAAAA,IACV,CAAE5Q,GAAAA,CAAE,CAAE,CAAG/E,CAAAA,EAAAA,GAAAA,EAAAA,IACT,CAAEN,KAAMslB,CAAW,CAAE,CAAGC,SHPzBC,EAAA,EAAuC,EAC9C,IAAY7kB,MAAAA,EAAA,EAAU,CAAA8kB,MAAAA,CAAA,EAAUD,EAChCvC,EAAmB,GAAAC,GAAApW,CAAA,EAAS0Y,GAC5BE,EAAwB,GAAAC,GAAAC,EAAA,IACxBC,EAA0B,GAAAC,GAAAvd,CAAA,EAAU,CAAG0a,OAAAA,CAAA,GACvC8C,EAAAP,EAAAO,OAAA,EAAAF,EACAjxB,EAAoBoxB,SHZb/C,CAAA,CAAAruB,EAAA,EAAwD,EAC/D,OACAqxB,OAAA,EACA,MAAAxlB,QAAA,CAAwBD,SAAAA,CAAA,CAAU,EAClC,IAAoB0lB,SAAAC,CAAA,IAAAX,EAAA,CAA6BhlB,CAAA,IAEjD,OAAA8kB,MADsCc,SDJRnD,CAAA,CAAAuC,EAAA,EAAwB,EACtD,IAAYO,QAAAA,CAAA,IAAAM,EAAA,CAAmBb,EAC/Bc,EAAArD,EAAAsD,SAAA,EAAsCR,QAAAA,CAAA,GAEtC,MAAAtqB,CADmB,EAAA+qB,GAAAC,CAAA,EAASH,EAASI,GAAAC,CAAmB,mBACxDN,EACA,ECDoDpD,EAAAuC,IACpD,IACA,EACAhlB,SAAAomB,SAGOhyB,EAAA,EAA4C,EACnD,qBAA2B,GAAAiyB,GAAAC,EAAA,EAAkBlyB,GAAA,EAJ7CA,EACA,CACA,EGE8CquB,EAAA,CAC9C,GAAAuC,CAAA,CACAO,QAAAA,CACA,GAaA,OAZIgB,SDZGvB,EAAA,EAA4C,EACnD,IAAYrlB,QAAAA,EAAA,GAAA6mB,cAAAA,CAAA,CAAA/D,OAAAkD,CAAA,IAAAE,EAAA,CAAoDb,EAChEvC,EAAmB,GAAAC,GAAApW,CAAA,EAAS0Y,GAC5BK,EAA0B,GAAAC,GAAAvd,CAAA,EAAU,CAAG0a,OAAAA,CAAA,GACvC8C,EAAAP,EAAAO,OAAA,EAAAF,EAGI,GAAA9d,EAAAjQ,SAAA,EAAS,KACb,GAAAqI,GAEA6mB,EAEA,OAAeC,SDdiBhE,CAAA,CAAAuC,CAAA,MAEhC0B,EAYAC,EAbA,IAAYC,mBAAAA,EAAAnE,EAAAoE,SAAA,CAAAD,kBAAA,IAAAf,EAAA,CAAoEb,EAEhF8B,EAAA,IACAJ,GACAA,IACA,IAAAZ,EAAArD,EAAAsD,SAAA,EAA0CR,QAAAA,CAAA,GAG1C,OADAmB,EAAAzrB,CADuB,EAAA+qB,GAAAC,CAAA,EAASH,EAASiB,GAAAC,CAAqB,qBAC9DnB,EAEA,EAEAoB,EAAAH,EAAA9B,EAAAO,OAAA,EAKA,OAFAqB,GAAA,CAAA5B,EAAAO,OAAA,EACAoB,CAAAA,EAAAlE,EAAAyE,SAAA,GAA0C3B,QAAAA,CAAA,CAAS,GAAAA,EAAA,MAAAA,GAAAuB,EAAAvB,GAAA,EACnD,KACA0B,MACAN,KACA,CACA,ECP+BlE,EAAA,CAC/B,GAAAoD,CAAA,CACAN,QAAAA,EACAiB,cAAAA,CACA,EACA,EAAK,CACLjB,EACA9C,EACA9iB,EACA6mB,EAEAX,EAAAsB,OAAA,CACAtB,EAAAuB,UAAA,CACAvB,EAAAwB,WAAA,CACAxB,EAAAyB,IAAA,CACAzB,EAAA0B,eAAA,CACA1B,EAAAe,kBAAA,CACA,CACA,EClBuB,CACvB,IACAnE,OAAAuC,EAAAvC,MAAA,CACA8C,QAAAP,EAAAO,OAAA,CACA,oBAAAN,EAAAA,EAAA,EAAsD,CAC7C,CACTtlB,QAAA6nB,CAAAA,CAAA,EAAArnB,EAAAR,OAAA,OACA,kBAAAslB,EAAAA,EAAAtlB,OAAA,CAAAslB,CAAA,GACAuB,cAAA1B,CAAA,EACAI,EAAAuC,YAAA,CAAArzB,EAAA4L,QAAA,CAAA8kB,EACA,CACA,GACW,GAAA4C,GAAAC,EAAA,EAAQ,CAAG,GAAAxnB,CAAA,IAAA/L,CAAA,EACtB,EGhB+C,CAAE6wB,MAAO,EAAK,GAErD,CAAEzlB,KAAAA,CAAI,CAAEooB,QAAAA,CAAO,CAAE,CAAGC,SDXrB7C,EAAA,EAAwC,EAC/C,IAAY8C,IAAAA,CAAA,CAAA71B,QAAAA,CAAA,CAAAktB,aAAAA,CAAA,CAAAhf,MAAAA,EAAA,IAAyC6kB,EAErD+C,EAAA/C,EAAA+C,IAAA,CACAtF,EAAmB,GAAAC,GAAApW,CAAA,EAAS0Y,GAC5BO,EAAoB,GAAAD,GAAAvd,CAAA,EAAU,CAAG0a,OAAAA,CAAA,GACjCruB,EAAoB4zB,SDVbvF,CAAA,CAAAruB,EAAA,EAAsD,EAC7D,OAGA,MAAA6L,QAAA,CAAwBD,SAAAA,CAAA,CAAU,EAClC,IAAA8nB,EAAA1zB,EAAA0zB,GAAA,CACA,IAAAA,EACA,+BACA,IAAoB3I,aAAAA,CAAA,CAAAuG,SAAAC,CAAA,IAAAX,EAAA,CAA2ChlB,CAAA,IAC/DioB,EAAA,MACA,IAAAzO,EAAAxZ,CAAA,IACA,GAAAwZ,EAAAvnB,OAAA,CACA,OAA6BA,QAAAunB,EAAAvnB,OAAA,EAC7B,GAAAunB,EAAAuO,IAAA,CACA,OAA6BA,KAAAvO,EAAAuO,IAAA,CAC7B,2CACA,KACA,IAAA5I,EACA,wCACA,MAAmB,GAAA+I,GAAAC,CAAA,EAAY1F,EAAA,CAC/BqF,IAAAA,EACA3I,aAAAA,EACAte,KAAAmkB,EAAAnkB,IAAA,CACA,GAAAonB,CAAA,CACA,GAAAjD,CAAA,EAEA,EACAhlB,SAAAooB,SAGOh0B,EAAA,EAA0C,EACjD,IAAY0zB,IAAAnC,CAAA,IAAAE,EAAA,CAAkBzxB,EAC9B,sBAA4B,GAAAiyB,GAAAC,EAAA,EAAkBT,GAAA,EAL9CzxB,EACA,CACA,ECnB4CquB,EAAA,CAAW,GAAAuC,CAAA,CAAAO,QAAAP,EAAAO,OAAA,EAAAA,CAAA,GACvD5lB,EAAA6nB,CAAAA,CAAA,EAAAv1B,GAAA81B,CAAA,GAAAD,GAAA3I,GAAAhf,CAAAA,EAAAR,OAAA,OACA,MAAW,GAAA+nB,GAAAC,EAAA,EAAQ,CACnB,GAAAxnB,CAAA,CACA,GAAA/L,CAAA,CACAuL,QAAAA,EACA0oB,kBAAAloB,EAAAkoB,iBAAA,EAAsDhC,GAAA,EAAiB,EAEvE,ECH4C,CACxCp0B,QAASA,EAAUkqB,GAA2BlpB,KAAAA,EAC9C60B,IAAK1L,GACL+C,aAAc,yBACdte,KAAM,CAAC5O,EAAoBigB,EAAqB,CAChDqT,QAAS1gB,CACX,GAOA,MAJAvN,CAAAA,EAAAA,EAAAA,SAAAA,EAAU,KACRswB,GACF,EAAG,CAAC9C,EAAa8C,EAAQ,EAElBpoB,CACT,qDEHO,IAAM8oB,GAAgB,OAAC,CAC5BC,UAAAA,CAAS,CACTzzB,SAAAA,EAAW,EAAK,CAChB0zB,YAAAA,CAAW,CACXC,QAAAA,CAAO,CACPxtB,OAAAA,CAAM,CACNka,KAAAA,CAAI,CACJnM,SAAAA,CAAQ,CACR0P,OAAAA,CAAM,CACN3kB,UAAAA,CAAS,CACT20B,KAAAA,CAAI,CACJlG,MAAAA,CAAK,CACC,CAAArwB,EACA,CAAEwB,EAAAA,CAAC,CAAE,CAAGC,CAAAA,EAAAA,EAAAA,EAAAA,IACRgU,EAAM+gB,CAAAA,EAAAA,GAAAA,CAAAA,EAAgB,IAAMnG,KAC5B1sB,EAAQC,CAAAA,EAAAA,GAAAA,EAAAA,IAEd,MACE,GAAAvD,EAAAC,IAAA,EAACm2B,GAAAA,CAAOA,CAAAA,CACNC,MAAO,IACPxgB,SAAU,aACVyR,OAAQpB,EACRoQ,aAAc,aAEd,GAAAt2B,EAAAI,GAAA,EAACg2B,GAAAA,CAAOA,CAAC3zB,MAAM,WACb,GAAAzC,EAAAI,GAAA,EAACqH,GAAAA,CAAOA,CAAAA,CAACf,MAAOuvB,GAAW90B,EAAE,0BAAiCiQ,MAAA,CAAP3I,aACrD,GAAAzI,EAAAI,GAAA,EAACgkB,GAAAA,CAAUA,CAAAA,CACThiB,EAAG4zB,GAAe9P,EAAS5iB,EAAMxC,KAAK,CAACoH,MAAM,CAACO,MAAM,CAAG,GACvDzF,QAASkzB,EACTtS,cAAa,qBAA4BxS,MAAA,CAAP3I,YAEjCka,QAIP,GAAA3iB,EAAAI,GAAA,EAACg2B,GAAAA,CAAOA,CAACjzB,QAAQ,WACf,GAAAnD,EAAAC,IAAA,EAACs2B,MAAAA,CAAInhB,IAAKA,YACR,GAAApV,EAAAI,GAAA,EAACmtB,EAAAA,CAAKA,CAAAA,CAACpG,MAAO,WAAIhmB,EAAE,wBAA+BiQ,MAAA,CAAP3I,MAC3C+N,EACD,GAAAxW,EAAAC,IAAA,EAACC,EAAAA,CAAKA,CAAAA,CAACs2B,MAAO,gBAAiBrxB,QAAS,0BACtC,GAAAnF,EAAAI,GAAA,EAAC6I,GAAAA,CAAYA,CAAAA,CACXjG,QAASgtB,EACT9mB,QAAS,UACTutB,GAAI,uBAEHt1B,EAAE,YAEL,GAAAnB,EAAAI,GAAA,EAAC4tB,GAAAA,CAAgBA,CAAAA,CACfE,eAAgB,GAChBlrB,QAAS+yB,EACTzzB,SAAUA,EACVgvB,QAAS/vB,EACTqiB,cAAa,kCAEZziB,EAAE,uBAOjB,EC3Ea8wB,GAAkB,OAAC,CAC9BvS,UAAAA,CAAS,CACTqQ,aAAAA,CAAY,CACS,CAAApwB,EACf,CAAEwB,EAAAA,CAAC,CAAE,CAAGC,CAAAA,EAAAA,EAAAA,EAAAA,EAAe,WACvB,CAACs1B,EAAcC,EAAgB,CAAGryB,CAAAA,EAAAA,EAAAA,QAAAA,EAAS,GAC3C,CAAC4hB,EAAQ,CAAE8J,MAAAA,CAAK,CAAEkG,KAAAA,CAAI,CAAE,CAAC,CAAGU,CAAAA,EAAAA,GAAAA,CAAAA,EAAc,IAC1C,CAAExW,mBAAAA,CAAkB,CAAE,CAAGN,KACzB+W,EAAqBxE,GAA0B3S,IAAc,EAE7D,CAAEmM,cAAAA,CAAa,CAAEE,UAAAA,CAAS,CAAE,CAAG+K,SFVJn3B,CAK3B,KAL2B,CACjC+f,UAAAA,CAAS,CACTgX,aAAAA,CAAY,CACZ3G,aAAAA,CAAY,CACZC,MAAAA,CAAK,CACC,CAL2BrwB,EAM3BysB,EACJ5C,GAAmC9J,GAC/B2M,EAA2B3C,KAEjC,OAAOoG,GAAoB,CACzBnD,aAAcC,GAAAA,EAAgBA,CAACmK,aAAa,CAC5CtuB,OAAQwhB,GAAAA,CAAiBA,CAAC8M,aAAa,CACvC1oB,KAAM,CACJqR,EACAgX,EACAtK,EACAC,EACD,CACD0D,aAAAA,EACAC,MAAAA,CACF,EACF,EEZ0D,CACtDtQ,UAAAA,EACAgX,aAAAA,EACA3G,aAAAA,EACAC,MAAAA,CACF,GAEM,CAAEiB,uBAAAA,CAAsB,CAAE,CAAGC,CAAAA,EAAAA,GAAAA,CAAAA,IAMnC,MAJApsB,CAAAA,EAAAA,EAAAA,SAAAA,EAAU,KACR6xB,EAAgBE,EAClB,EAAG,CAACA,EAAmB,EAGrB,GAAA72B,EAAAC,IAAA,EAAC61B,GAAaA,CACZG,QACEY,EACI11B,EAAE,yBAA0B,CAAE61B,WAAYH,CAAmB,GAC7D11B,EAAE,sBAERsH,OAAQ0L,EAAiB4iB,aAAa,CACtChB,UAAW,KACTlK,IACAoF,EAAuB,6BACzB,EACAtO,KAAM,GAAA3iB,EAAAI,GAAA,EAAC62B,GAAAA,GAASA,CAAAA,CAAC32B,KAAMkxB,KACvBlvB,SAAUu0B,IAAuBH,GAAgB3K,EACjDxqB,UAAWwqB,EACXiK,YAAa,CAAC,CAACa,EACf3Q,OAAQA,EACRgQ,KAAMA,EACNlG,MAAOA,YAEP,GAAAhwB,EAAAC,IAAA,EAACM,EAAAA,CAAIA,CAAAA,CAACD,KAAM,KAAM2kB,GAAI,eACpB,GAAAjlB,EAAAI,GAAA,EAAC82B,GAAAA,GAAmBA,CAAAA,CAAAA,GACnB/1B,EAAE,mBAAoB,CAAEiN,MAAOgS,CAAmB,MAErD,GAAApgB,EAAAI,GAAA,EAACka,EAAMA,CACL6K,GAAI,KACJljB,MAAOy0B,EACP71B,SAAU81B,EACVhf,MAAO,CAAC,CAAE1V,MAAO,EAAG,EAAG,CAAEA,MAAO,EAAG,EAAG,CAAEA,MAAO,EAAG,EAAE,KAI5D,EElDaiwB,GAAO,OAAC,CAAExS,UAAAA,CAAS,CAAEqQ,aAAAA,CAAY,CAAwB,CAAApwB,EAC9D,CAACyQ,EAAQwa,EAAU,CAAGtmB,CAAAA,EAAAA,EAAAA,QAAAA,EAAS,IAC/B,CAAEnD,EAAAA,CAAC,CAAE,CAAGC,CAAAA,EAAAA,EAAAA,EAAAA,EAAe,WACvB3B,EAAUwjB,CAAAA,EAAAA,GAAAA,CAAAA,IACV,CAAE5S,YAAAA,CAAW,CAAE,CAAG/C,CAAAA,EAAAA,GAAAA,EAAAA,IAClB8c,EAAWC,CAAAA,EAAAA,GAAAA,CAAAA,EAAgB5qB,GAC3B,CAACymB,EAAQ,CAAE8J,MAAAA,CAAK,CAAEkG,KAAAA,CAAI,CAAE,CAAC,CAAGU,CAAAA,EAAAA,GAAAA,CAAAA,EAAc,IAC1C,CAAEvL,UAAAA,CAAS,CAAEC,SAAAA,CAAQ,CAAE,CAAGnB,KAC1B,CAAE8G,uBAAAA,CAAsB,CAAE,CAAGC,CAAAA,EAAAA,GAAAA,CAAAA,IAE7B,CAACxF,EAAiBC,EAAY,CAAGC,CAAAA,EAAAA,GAAAA,CAAAA,EAA2B,CAChExb,OAAAA,EACAib,UAAAA,CACF,GAEM,CAAEQ,cAAAA,CAAa,CAAEE,UAAAA,CAAS,CAAE,CAAGoL,SDrBXx3B,CAKpB,KALoB,CAC1B+f,UAAAA,CAAS,CACTtP,OAAAA,CAAM,CACN2f,aAAAA,CAAY,CACZC,MAAAA,CAAK,CACC,CALoBrwB,EAM1B,OAAOmwB,GAAoB,CACzBnD,aAAcC,GAAAA,EAAgBA,CAACwK,IAAI,CACnC3uB,OAAQwhB,GAAAA,CAAiBA,CAACmN,IAAI,CAC9B/oB,KAAM,CAACqR,EAAW4M,CAAAA,EAAAA,GAAAA,CAAAA,EAAWlc,EAAO9B,QAAQ,IAAI,CAChDyhB,aAAAA,EACAC,MAAAA,CACF,EACF,ECQmD,CAC/CtQ,UAAAA,EACAtP,OAAQsb,GAAmB,IAC3BqE,aAAAA,EACAC,MAAAA,CACF,GASA,MACE,GAAAhwB,EAAAI,GAAA,EAAC01B,GAAaA,CACZrtB,OAAQ0L,EAAiBijB,IAAI,CAC7BrB,UAVS,KACNrK,GAAoBtB,IAEzByB,IACAoF,EAAuB,yBACzB,EAMItO,KAAM,GAAA3iB,EAAAI,GAAA,EAACi3B,GAAAA,GAAKA,CAAAA,CAAC/2B,KAAMkxB,KACnBlvB,SAAUypB,GAAa,CAACL,EACxBnqB,UAAWwqB,EACX7F,OAAQA,EACRgQ,KAAMA,EACNlG,MAAOA,WAEP,GAAAhwB,EAAAI,GAAA,EAACkV,EAAAA,CAAGA,CAAAA,CAACgY,GAAI,cACP,GAAAttB,EAAAC,IAAA,EAACipB,EAAAA,CAAKA,CAAAA,CAAC/oB,IAAK,eACV,GAAAH,EAAAI,GAAA,EAACstB,GAAAA,CAAgBA,CAAAA,CACfE,YAAazsB,EAAE,oBACfc,MAAOmO,EACPvP,SAAU,GAAO+pB,EAAU9W,EAAEsR,aAAa,CAACnjB,KAAK,EAChD4rB,MAAOxd,IAET,GAAArQ,EAAAI,GAAA,EAACF,EAAAA,CAAKA,CAAAA,CAACiF,QAAS,kBACd,GAAAnF,EAAAI,GAAA,EAAC0tB,GAAAA,CAAQA,CAAAA,CACPpnB,MAAOvF,EAAE,0BACTc,MAAOqpB,EACPtoB,QAAS,IAAM4nB,EAAUU,GAAY,KACrC/pB,UAAWwqB,MAGf,GAAA/rB,EAAAI,GAAA,EAAC2tB,GAAAA,EAAUA,CAAAA,CAACha,MAAO4X,UAK7B,EE3Ea2L,GAAe,KAC1B,GAAM,CAAEn2B,EAAAA,CAAC,CAAE,CAAGC,CAAAA,EAAAA,EAAAA,EAAAA,EAAe,WACvB,CAAE6e,sBAAAA,CAAqB,CAAE,CAAGH,KAElC,MACE,GAAA9f,EAAAC,IAAA,EAACM,EAAAA,CAAIA,CAAAA,CAACD,KAAM,KAAM6kB,GAAI,eACpB,GAAAnlB,EAAAI,GAAA,EAAC82B,GAAAA,GAAmBA,CAAAA,CAAAA,GACnB/1B,EAAE,+BAAgC,CAAEiN,MAAO6R,CAAsB,KAGxE,ECOakS,GAAW,OAAC,CACvBzS,UAAAA,CAAS,CACTqQ,aAAAA,CAAY,CACZgC,iBAAAA,CAAgB,CACV,CAAApyB,EACA,CAACyQ,EAAQwa,EAAU,CAAGtmB,CAAAA,EAAAA,EAAAA,QAAAA,EAAS,IAC/B,CAAEnD,EAAAA,CAAC,CAAE,CAAGC,CAAAA,EAAAA,EAAAA,EAAAA,EAAe,WACvB,CAAEiP,YAAAA,CAAW,CAAE,CAAG/C,CAAAA,EAAAA,GAAAA,EAAAA,IAClB,CAAC4Y,EAAQ,CAAE8J,MAAAA,CAAK,CAAEkG,KAAAA,CAAI,CAAE,CAAC,CAAGU,CAAAA,EAAAA,GAAAA,CAAAA,EAAc,IAC1C,CAAE3F,uBAAAA,CAAsB,CAAE,CAAGC,CAAAA,EAAAA,GAAAA,CAAAA,IAE7B,CAAEnR,cAAAA,CAAa,CAAE,CAAGiP,GAAkBtP,GACtC,CAAEK,cAAewX,CAAO,CAAE,CAAGzX,KAC7BlK,EAAMmK,GAAiBwX,GAAW,CAAE,EAEpC,CAAC7L,EAAiBC,EAAY,CAAGC,CAAAA,EAAAA,GAAAA,CAAAA,EAA2B,CAChExb,OAAAA,EACAib,UAAW0G,EAAmBnc,EAC9B4hB,oBAAqBC,GAAAA,EAAgBA,CAACC,qBAAqB,GAGvD,CAAE7L,cAAAA,CAAa,CAAEE,UAAAA,CAAS,CAAE,CAAG4L,SF9BHh4B,CAK5B,KAL4B,CAClC+f,UAAAA,CAAS,CACTtP,OAAAA,CAAM,CACN2f,aAAAA,CAAY,CACZC,MAAAA,CAAK,CACC,CAL4BrwB,EAMlC,OAAOmwB,GAAoB,CACzBnD,aAAcC,GAAAA,EAAgBA,CAACgL,QAAQ,CACvCnvB,OAAQwhB,GAAAA,CAAiBA,CAAC2N,QAAQ,CAClCvpB,KAAM,CAACqR,EAAW4M,CAAAA,EAAAA,GAAAA,CAAAA,EAAWlc,EAAO9B,QAAQ,IAAI,CAChDyhB,aAAAA,EACAC,MAAAA,CACF,EACF,EEiB2D,CACvDtQ,UAAAA,EACAtP,OAAQsb,GAAmB,IAC3BqE,aAAAA,EACAC,MAAAA,CACF,GASA,MACE,GAAAhwB,EAAAC,IAAA,EAAC61B,GAAaA,CACZrtB,OAAQ0L,EAAiByjB,QAAQ,CACjC7B,UAVa,KACVrK,GAAoB9V,IAEzBiW,IACAoF,EAAuB,gCACzB,EAMItO,KAAM,GAAA3iB,EAAAI,GAAA,EAACy3B,GAAAA,GAAcA,CAAAA,CAACv3B,KAAMkxB,KAC5BlvB,SAAUypB,GAAa,CAACL,EACxBnqB,UAAWwqB,EACX7F,OAAQA,EACRgQ,KAAMA,EACNlG,MAAOA,YAEP,GAAAhwB,EAAAI,GAAA,EAACk3B,GAAYA,CAAAA,GACb,GAAAt3B,EAAAI,GAAA,EAACkV,EAAAA,CAAGA,CAAAA,CAACkT,GAAI,cACP,GAAAxoB,EAAAC,IAAA,EAACipB,EAAAA,CAAKA,CAAAA,CAAC/oB,IAAK,eACV,GAAAH,EAAAI,GAAA,EAACstB,GAAAA,CAAgBA,CAAAA,CACfE,YAAazsB,EAAE,oBACfc,MAAOmO,EACPvP,SAAU,GAAO+pB,EAAU9W,EAAEsR,aAAa,CAACnjB,KAAK,EAChD4rB,MAAOxd,IAET,GAAArQ,EAAAI,GAAA,EAAC2tB,GAAAA,EAAUA,CAAAA,CAACha,MAAO4X,WAK7B,EEzEayG,GAAS,OAAC,CAAE1S,UAAAA,CAAS,CAAEqQ,aAAAA,CAAY,CAAwB,CAAApwB,EAChE,CAACumB,EAAQ,CAAE8J,MAAAA,CAAK,CAAEkG,KAAAA,CAAI,CAAE,CAAC,CAAGU,CAAAA,EAAAA,GAAAA,CAAAA,EAAc,IAC1C,CAAE3F,uBAAAA,CAAsB,CAAE,CAAGC,CAAAA,EAAAA,GAAAA,CAAAA,IAE7B,CAAErF,cAAAA,CAAa,CAAEE,UAAAA,CAAS,CAAE,CAAG+L,SDLLn4B,CAIpB,KAJoB,CAChC+f,UAAAA,CAAS,CACTqQ,aAAAA,CAAY,CACZC,MAAAA,CAAK,CACO,CAJoBrwB,EAKhC,OAAOmwB,GAAoB,CACzBnD,aAAcC,GAAAA,EAAgBA,CAACmL,MAAM,CACrCtvB,OAAQwhB,GAAAA,CAAiBA,CAAC8N,MAAM,CAChC1pB,KAAM,CAACqR,EAAU,CACjBqQ,aAAAA,EACAC,MAAAA,CACF,EACF,ECPyD,CACrDtQ,UAAAA,EACAqQ,aAAAA,EACAC,MAAAA,CACF,GAEA,MACE,GAAAhwB,EAAAI,GAAA,EAAC01B,GAAaA,CACZrtB,OAAQ0L,EAAiB4jB,MAAM,CAC/BhC,UAAW,KACTlK,IACAoF,EAAuB,2BACzB,EACAtO,KAAM,GAAA3iB,EAAAI,GAAA,EAAC43B,GAAAA,GAAKA,CAAAA,CAAC13B,KAAMkxB,KACnBtL,OAAQA,EACR5jB,SAAUypB,EACVxqB,UAAWwqB,EACXmK,KAAMA,EACNlG,MAAOA,WAEP,GAAAhwB,EAAAI,GAAA,EAACk3B,GAAYA,CAAAA,IAGnB,EEvBaW,GAAkB,OAAC,CAAEvJ,QAAAA,CAAO,CAAS,CAAA/uB,EAC1C,CAAEwB,EAAAA,CAAC,CAAE,CAAGC,CAAAA,EAAAA,EAAAA,EAAAA,EAAe,WACvB82B,EAAYzJ,GAAiCC,SAEnD,CAAKA,MAAAA,EAAAA,KAAAA,EAAAA,EAASjmB,MAAM,EAGlB,GAAAzI,EAAAC,IAAA,EAAAD,EAAA0H,QAAA,YACE,GAAA1H,EAAAI,GAAA,EAACG,EAAAA,CAAIA,CAAAA,CAACD,KAAM,cACT43B,EACG/2B,EAAE,aAAc,CACdsH,OAAQtH,EAAEutB,EAAQjmB,MAAM,CAACA,MAAM,EAC/ByvB,UAAAA,CACF,GACA/2B,EAAE,gBAAiB,CACjBsH,OAAQtH,EAAEutB,EAAQjmB,MAAM,CAACA,MAAM,CACjC,KAELimB,EAAQjmB,MAAM,CAAC2H,MAAM,EACpB,GAAApQ,EAAAC,IAAA,EAACC,EAAAA,CAAKA,CAAAA,CAAC0hB,GAAI,KAAMuW,GAAI,SAAUh4B,IAAK,YAClC,GAAAH,EAAAI,GAAA,EAACg4B,GAAAA,GAAqBA,CAAAA,CAAAA,GACrBj3B,EAAE,UACF,IACD,GAAAnB,EAAAI,GAAA,EAACkkB,GAAAA,CAAeA,CAAAA,CAAClU,OAAQse,EAAQjmB,MAAM,CAAC2H,MAAM,CAAEpJ,UAAW,WAnBtC,GAAAhH,EAAAI,GAAA,EAAAJ,EAAA0H,QAAA,IAwB/B,ECda2wB,GAAa,OAAC,CAAElV,WAAAA,CAAU,CAAEb,WAAAA,CAAU,CAAS,CAAA3iB,EACpD,CAAEwB,EAAAA,CAAC,CAAE,CAAGC,CAAAA,EAAAA,EAAAA,EAAAA,EAAe,WACvBkC,EAAQC,CAAAA,EAAAA,GAAAA,EAAAA,IACR+0B,EAAWC,CAAAA,EAAAA,GAAAA,EAAAA,IAEX,CAAEpY,8BAAAA,CAA6B,CAAE,CAAGL,KAEpC,CAAEC,cAAAA,CAAa,CAAEkB,SAAAA,CAAQ,CAAEqO,mBAAAA,CAAkB,CAAEI,kBAAAA,CAAiB,CAAE,CACtEV,GAAkB7L,EAAWzD,SAAS,EAElC8Y,EAAqBhN,CAAAA,EAAAA,GAAAA,CAAAA,EAAuBzL,EAAe,GAC3DoE,EAAU,EAKZ,EAAYf,QAAQ,CAElB,KADAjiB,EAAE,uBALJA,EAAE,sBAAuB,CACvB6f,QAASwX,EACTC,cAAetY,CACjB,GAKJ,MACE,GAAAngB,EAAAC,IAAA,EAACwjB,GAAAA,CAAKA,CAACC,EAAE,EAA4BE,cAAa,2BAChD,GAAA5jB,EAAAI,GAAA,EAACqjB,GAAAA,CAAKA,CAACI,EAAE,WACP,GAAA7jB,EAAAC,IAAA,EAACC,EAAAA,CAAKA,CAAAA,CAAC2F,MAAO,CAAEwwB,MAAOiC,EAAW,IAAM73B,KAAAA,CAAU,YAChD,GAAAT,EAAAI,GAAA,EAACC,GAAAA,CAAMA,CAAAA,CACLZ,QAAS0jB,EAAWzD,SAAS,CAC7Bpf,KAAM,GACNwjB,cAAe7C,MAAAA,EAAAA,KAAAA,EAAAA,EAAU8C,UAAU,CACnCC,mBAAoB/C,MAAAA,EAAAA,KAAAA,EAAAA,EAAUgD,YAAY,GAE5C,GAAAjkB,EAAAI,GAAA,EAACG,EAAAA,CAAIA,CAAAA,UAAEC,CAAAA,EAAAA,GAAAA,EAAAA,EAAiBygB,EAAUkC,EAAWzD,SAAS,IACtD,GAAA1f,EAAAC,IAAA,EAACC,EAAAA,CAAKA,CAAAA,CAACC,IAAK,YACTgkB,GACC,GAAAnkB,EAAAI,GAAA,EAACqH,GAAAA,CAAOA,CAAAA,CACNf,MAAOyd,EACPtO,SAAU,QACV8E,EAAG,IACH6J,UAAS,GACTkU,UAAS,YAET,GAAA14B,EAAAI,GAAA,EAACgkB,GAAAA,CAAUA,CAAAA,UACT,GAAApkB,EAAAI,GAAA,EAACu4B,GAAAA,GAAgBA,CAAAA,CACf1wB,MAAO3E,EAAMxC,KAAK,CAACoH,MAAM,CAACic,OAAO,CACjC7jB,KAAM,SAKbgiB,EAAWxgB,GAAG,CAAC,GACd,GAAA9B,EAAAI,GAAA,EAACqH,GAAAA,CAAOA,CAAAA,CAACf,MAAO8b,EAAUxO,OAAO,UAC/B,GAAAhU,EAAAI,GAAA,EAACgkB,GAAAA,CAAUA,CAAAA,UAAE5B,EAAUG,IAAI,IADWH,EAAUvH,IAAI,WAO9D,GAAAjb,EAAAI,GAAA,EAACqjB,GAAAA,CAAKA,CAACI,EAAE,WACP,GAAA7jB,EAAAI,GAAA,EAAC63B,GAAeA,CAACvJ,QAASgB,MAE5B,GAAA1vB,EAAAI,GAAA,EAACqjB,GAAAA,CAAKA,CAACI,EAAE,WACP,GAAA7jB,EAAAI,GAAA,EAACkkB,GAAAA,CAAeA,CAAAA,CACdlU,OAAQ+S,EAAW/S,MAAM,CACzBmU,GAAI,QACJzd,YAAa,EACbE,UAAW,OAGf,GAAAhH,EAAAI,GAAA,EAACqjB,GAAAA,CAAKA,CAACI,EAAE,EAACwS,MAAOiC,EAAW,GAAK,aAC/B,GAAAt4B,EAAAI,GAAA,EAAC0xB,GAAOA,CACNpS,UAAWyD,EAAWzD,SAAS,CAC/BgP,QAASgB,EACTqC,iBAAkB5O,EAAW/S,MAAM,OAlD1B+S,EAAWzD,SAAS,CAuDvC,6BChFO,IAAMkZ,GAAiB,KAC5B,GAAM,CAAEz3B,EAAAA,CAAC,CAAE,CAAGC,CAAAA,EAAAA,EAAAA,EAAAA,EAAe,WACvB3B,EAAU4B,CAAAA,EAAAA,GAAAA,CAAAA,IACV,CAAEw3B,UAAAA,CAAS,CAAE,CAAGvrB,CAAAA,EAAAA,GAAAA,EAAAA,IAChB1J,EAAYC,CAAAA,EAAAA,GAAAA,CAAAA,IAEZgc,EAAciZ,W5C0BpB,IAAMr5B,EAAUwjB,CAAAA,EAAAA,GAAAA,CAAAA,IACVpD,EAAcmD,KACd/R,EAAerB,CAAAA,EAAAA,GAAAA,CAAAA,IACf,CAACmpB,EAAqBC,EAAuB,CAAG10B,CAAAA,EAAAA,EAAAA,QAAAA,IAiCtD,MA5BAQ,CAAAA,EAAAA,EAAAA,SAAAA,EAAU,IAAMk0B,EAAuBv4B,KAAAA,GAAY,CAACwQ,EAAcxR,EAAQ,EAE1EqF,CAAAA,EAAAA,EAAAA,SAAAA,EAAU,KACJ+a,GACFmZ,EACE,GACE,CACGC,GACDA,EAAgBv3B,MAAM,EAAIme,EAAYne,MAAM,CAErCme,GAQTqZ,WAAW,KACTF,EAAuBnZ,EACzB,EAAG,KAEIoZ,GAIf,EAAG,CAACpZ,EAAY,EAETkZ,MAAAA,EAAAA,KAAAA,EAAAA,EAAqBhgB,IAAI,CAAC,CAACC,EAAGC,IAAMvI,OAAOuI,EAAE7I,MAAM,CAAG4I,EAAE5I,MAAM,EACvE,I4C9DQiN,EAAQkD,KACR+B,EAAaN,KAEb+C,EAAOlF,MAAAA,EAAAA,KAAAA,EAAAA,EAAa/d,GAAG,CAAC,IAC5B,IAAMkjB,EAAsB1C,EAAW5T,MAAM,CAAC,GAC5C8T,EAAUC,SAAS,CAAC5T,QAAQ,CAACsU,EAAWzD,SAAS,CAACgD,WAAW,KAG/D,MACE,GAAA1iB,EAAAI,GAAA,EAACi4B,GAAUA,CAETlV,WAAYA,EACZb,WAAY0C,GAFP7B,EAAWzD,SAAS,CAK/B,GAEA,MACE,GAAA1f,EAAAC,IAAA,EAACmtB,EAAAA,CAAIA,CAAAA,CAACC,WAAU,GAACC,GAAI,KAAM3nB,EAAG,KAAMyV,UAAW9B,KAAAA,IAAY,WACzD,GAAAtZ,EAAAC,IAAA,EAACC,EAAAA,CAAKA,CAAAA,CAACiF,QAAS,0BACd,GAAAnF,EAAAC,IAAA,EAACstB,EAAAA,CAAKA,CAAAA,CAACpG,MAAO,EAAG7mB,KAAM,eACpBa,EAAE,kBACF0e,GAAe,KAAyBzO,MAAA,CAApByO,MAAAA,EAAAA,KAAAA,EAAAA,EAAane,MAAM,CAAC,QAE1C2b,GACC,GAAArd,EAAAI,GAAA,EAACqH,GAAAA,CAAOA,CAAAA,CACNf,MAAOvF,EAAE,eAAgB,CACvBg4B,MAAOC,CAAAA,EAAAA,GAAAA,EAAAA,EAAiB/b,EAAOwb,EACjC,YAEA,GAAA74B,EAAAI,GAAA,EAACG,EAAAA,CAAIA,CAAAA,UAAEY,EAAE,eAAgB,CAAEkc,MAAOA,EAAMC,OAAO,UAIpD1Z,GAAa,CAACnE,EACb,GAAAO,EAAAI,GAAA,EAACi5B,GAAAA,CAAMA,CAAAA,CAACpU,GAAI,KAAM5K,EAAG,aACnB,GAAAra,EAAAI,GAAA,EAACk5B,GAAAA,CAAgBA,CAAAA,CAAAA,KAEjB,EAIAzZ,GAAe,CAACA,EAAYne,MAAM,CACpC,GAAA1B,EAAAI,GAAA,EAACG,EAAAA,CAAIA,CAAAA,CAACgkB,GAAI,SAAUU,GAAI,cACrB9jB,EAAE,0BAGL,GAAAnB,EAAAI,GAAA,EAACqlB,GAAAA,CAAUA,CAAAA,CACT7iB,KAAM,OACNgY,WAAY,CAAEb,KAAMT,KAAAA,SAAiB,CAAEigB,SAAUjgB,KAAAA,QAAgB,WAEjE,GAAAtZ,EAAAC,IAAA,EAACwjB,GAAAA,CAAKA,CAAAA,CAACrI,UAAW9B,KAAAA,KAAa,CAAEkgB,gBAAiB,eAChD,GAAAx5B,EAAAI,GAAA,EAACqjB,GAAAA,CAAKA,CAACoC,KAAK,WACV,GAAA7lB,EAAAC,IAAA,EAACwjB,GAAAA,CAAKA,CAACC,EAAE,YACP,GAAA1jB,EAAAI,GAAA,EAACqjB,GAAAA,CAAKA,CAACqC,EAAE,WACP,GAAA9lB,EAAAI,GAAA,EAACG,EAAAA,CAAIA,CAAAA,CAACgkB,GAAI,OAAQjkB,KAAM,cACrBa,EAAE,gBAGP,GAAAnB,EAAAI,GAAA,EAACqjB,GAAAA,CAAKA,CAACqC,EAAE,KACT,GAAA9lB,EAAAI,GAAA,EAACqjB,GAAAA,CAAKA,CAACqC,EAAE,WACP,GAAA9lB,EAAAI,GAAA,EAACG,EAAAA,CAAIA,CAAAA,CAACgkB,GAAI,iBAAUpjB,EAAE,cAExB,GAAAnB,EAAAI,GAAA,EAACqjB,GAAAA,CAAKA,CAACqC,EAAE,WACP,GAAA9lB,EAAAI,GAAA,EAACG,EAAAA,CAAIA,CAAAA,CAACgkB,GAAI,iBAAUpjB,EAAE,yBAI5B,GAAAnB,EAAAI,GAAA,EAACqjB,GAAAA,CAAKA,CAACuC,KAAK,WAAEjB,SA7BlB,GAAA/kB,EAAAI,GAAA,EAACi5B,GAAAA,CAAMA,CAAAA,CAACpU,GAAI,cACV,GAAAjlB,EAAAI,GAAA,EAAC8C,EAAAA,CAAMA,CAAAA,CAAC5C,KAAM,KAAMsjB,cAAa,2BAkC3C,EErGa6V,GAAwB,KACnC,GAAM,CAAEt4B,EAAAA,CAAC,CAAE,CAAGC,CAAAA,EAAAA,EAAAA,EAAAA,EAAe,WAE7B,MACE,GAAApB,EAAAC,IAAA,EAACmtB,EAAAA,CAAIA,CAAAA,CAACC,WAAU,GAAC1nB,EAAG,eAClB,GAAA3F,EAAAI,GAAA,EAACmtB,EAAAA,CAAKA,CAAAA,CAACpG,MAAO,EAAG7mB,KAAM,KAAMkoB,GAAI,cAC9BrnB,EAAE,aAEL,GAAAnB,EAAAI,GAAA,EAACG,EAAAA,CAAIA,CAAAA,CAACD,KAAM,KAAMikB,GAAI,mBACnBpjB,EAAE,6BAIX,EGRau4B,GAAkB,KAC7B,GAAM,CAAEv4B,EAAAA,CAAC,CAAE,CAAGC,CAAAA,EAAAA,EAAAA,EAAAA,EAAe,WAEvBic,EAAQkD,KACR,CAAEH,mBAAAA,CAAkB,CAAE,CAAGN,KACzB,CAAE+Y,UAAAA,CAAS,CAAE,CAAGvrB,CAAAA,EAAAA,GAAAA,EAAAA,WAEtB,EAKE,GAAAtN,EAAAC,IAAA,EAACipB,EAAAA,CAAKA,CAAAA,CAAC/oB,IAAK,EAAGqoB,GAAI,KAAMvjB,GAAI,YAC3B,GAAAjF,EAAAC,IAAA,EAACC,EAAAA,CAAKA,CAAAA,CAACC,IAAK,EAAGgC,GAAI,iBACjB,GAAAnC,EAAAI,GAAA,EAACu5B,GAAAA,GAAoBA,CAAAA,CAAAA,GACrB,GAAA35B,EAAAI,GAAA,EAACG,EAAAA,CAAIA,CAAAA,CAACD,KAAM,cAAOa,EAAE,kBAEvB,GAAAnB,EAAAI,GAAA,EAACG,EAAAA,CAAIA,CAAAA,CAACD,KAAM,cACTa,EAAE,sBAAuB,CACxBy4B,OAAQxZ,EACR+Y,MAAOU,CAAAA,EAAAA,GAAAA,EAAAA,EAAoBxc,EAAOwb,EAAWzY,EAC/C,QAbG,GAAApgB,EAAAI,GAAA,EAAAJ,EAAA0H,QAAA,IAiBX,yDE4CA2J,GApD0B,KACxB,GAAM,CAAElQ,EAAAA,CAAC,CAAE,CAAGC,CAAAA,EAAAA,EAAAA,EAAAA,IACR,CAAEiQ,QAAAA,CAAO,CAAE,CAAGL,CAAAA,EAAAA,GAAAA,CAAAA,IACdvR,EAAUwjB,CAAAA,EAAAA,GAAAA,CAAAA,IACV6W,EAASC,CAAAA,EAAAA,EAAAA,CAAAA,EAAe,sBAExBC,EAAa74B,EAAE,mBAAoB,CAAE84B,GAAI,QAAS,GAExD,MACE,GAAAj6B,EAAAC,IAAA,EAAAD,EAAA0H,QAAA,YACE,GAAA1H,EAAAC,IAAA,EAACi6B,KAAIA,WACH,GAAAl6B,EAAAI,GAAA,EAAC+5B,OAAAA,CAEClf,KAAM,cACN8N,QAAS5nB,EAAE,yBAFN,eAIP,GAAAnB,EAAAI,GAAA,EAACmnB,QAAAA,UAAOyS,OAEV,GAAAh6B,EAAAI,GAAA,EAACmtB,EAAAA,CAAKA,CAAAA,CAACjtB,KAAM,KAAM4jB,GAAI,qBACpB/iB,EAAE,aAEL,GAAAnB,EAAAC,IAAA,EAACC,EAAAA,CAAKA,CAAAA,CAACiF,QAAS,gBAAiBggB,GAAI,eACnC,GAAAnlB,EAAAI,GAAA,EAACgI,EAAAA,CAAYA,CAAAA,CAACC,KAAMgJ,IACnByoB,GAAU,GAAA95B,EAAAI,GAAA,EAACg6B,EAAAA,CAAmBA,CAAAA,CAAAA,GAC/B,GAAAp6B,EAAAI,GAAA,EAACmG,EAAAA,CAAWA,CAAAA,CAAAA,MAEd,GAAAvG,EAAAI,GAAA,EAACiD,EAAAA,CAAcA,CAAAA,CAACT,KAAMgC,GAAAA,EAASA,CAACy1B,OAAO,GACtC,CAACP,GACA,GAAA95B,EAAAI,GAAA,EAACF,EAAAA,CAAKA,CAAAA,CAACiF,QAAS,kBACd,GAAAnF,EAAAI,GAAA,EAACg6B,EAAAA,CAAmBA,CAAAA,CAAAA,KAIxB,GAAAp6B,EAAAI,GAAA,EAACk6B,EAAAA,CAAWA,CAAAA,CACV76B,QAASA,EACT86B,yBAA0B,GAC1BC,cAAe,KAEjB,GAAAx6B,EAAAC,IAAA,EAACiF,EAAAA,CAAIA,CAAAA,CAACmkB,GAAI,KAAMb,GAAI,YAClB,GAAAxoB,EAAAI,GAAA,EAAC8E,EAAAA,CAAIA,CAACE,GAAG,EAACC,KAAM,CAAEC,GAAI,GAAIC,GAAI,GAAIC,GAAI,EAAGC,GAAI,CAAE,WAC7C,GAAAzF,EAAAI,GAAA,EAACoqB,GAAKA,CAAAA,KAER,GAAAxqB,EAAAI,GAAA,EAAC8E,EAAAA,CAAIA,CAACE,GAAG,EAACC,KAAM,CAAEC,GAAI,GAAIC,GAAI,GAAIC,GAAI,EAAGC,GAAI,CAAE,WAC7C,GAAAzF,EAAAI,GAAA,EAACw4B,GAAcA,CAAAA,QAGnB,GAAA54B,EAAAI,GAAA,EAACs5B,GAAeA,CAAAA,GAChB,GAAA15B,EAAAI,GAAA,EAACq5B,GAAqBA,CAAAA,KAG5B,qHCjEA,IAAMgB,EAAe/oB,CAAAA,EAAAA,EAAAA,EAAAA,IAEd,SAAS1C,IACd,GAAM,CAAC2E,EAAQ+mB,EAAU,CAAGp2B,CAAAA,EAAAA,EAAAA,QAAAA,IACtB2N,EAAiB0oB,CAAAA,EAAAA,EAAAA,EAAAA,EAAeC,EAAAA,CAAkBA,EAoBxD,MAlBA91B,CAAAA,EAAAA,EAAAA,SAAAA,EAAU,KACR,IAAM+1B,EAAoB7oB,CAAAA,EAAAA,EAAAA,EAAAA,EAAwBC,GAElDK,CAAAA,EAAAA,EAAAA,EAAAA,EAAmB,IAAImoB,KAAiBI,EAAkB,EAAEnK,IAAI,CAC9D,IACOld,IAIDA,EAAeC,UAAU,CAC3BinB,EAAUlnB,EAAeG,MAAM,EAE/BmP,QAAQ/O,KAAK,CAACP,EAAeO,KAAK,EAEtC,EAEJ,EAAG,CAAC9B,EAAe,EAEZ0B,CACT,yGE1BO,IAAMinB,EAAqBE,CAAAA,EAAAA,EAAAA,EAAAA,EAAqB,CACrDzxB,IAAK,iBACL0xB,QAAS,CACP,CAAC3xB,EAAAA,EAAQA,CAACC,GAAG,CAAC,CAAE,EAAE,CAClB,CAACuC,EAAAA,EAASA,CAACvC,GAAG,CAAC,CAAE,EAAE,CACnB,CAAC2xB,EAAAA,EAAaA,CAAC3xB,GAAG,CAAC,CAAE,EAAE,EAEzB4xB,QAAS,CAACC,CAAAA,EAAAA,EAAAA,CAAAA,EAAyB,mBAAmB,sBCfxDC,EAAAC,OAAA,EAAkB,4FCAlBD,EAAAC,OAAA,EAAkB,oGCAlBD,EAAAC,OAAA,EAAkB,gGCAlBD,EAAAC,OAAA,EAAkB,kNCAlBD,EAAAC,OAAA,EAAkB,gLCAlBD,EAAAC,OAAA,EAAkB,oOCAlB9hB,EAAA,CAAe,gDCmBf,IAAAC,EAAA,CACA8hB,QAAA,GACAC,QAAA,EACA,EACA1hB,EAAqB,GAAAC,EAAAC,CAAA,EACrB,CAAAqZ,EAAA,CAAQkD,MAAAA,CAAA,CAAAkF,OAAAA,CAAA,CAAArmB,OAAAA,CAAA,CAAAsmB,OAAAA,CAAA,CAA+B,KACvCzhB,KAAA,CACA,oBAA2B,GAAAK,EAAAC,CAAA,EAAGkhB,GAC9B,mBAAAC,EAAmC,GAAAphB,EAAAC,CAAA,EAAGkhB,GAAW,GAAAnhB,EAAAC,CAAA,EAAGgc,GACpD,oBAAAmF,EAAA,SAAAtmB,KAAA,IAAAA,EAAA,OAA4E,GAAA8E,EAAAG,EAAA,EAASjF,EACrF,CACA,IAEAumB,EAAiB,GAAAlhB,EAAAC,EAAA,EAAO,CAAAC,EAAArF,KACxB,IAAAtN,EAAgB,GAAA4S,EAAAC,CAAA,EAAQ,WAAApB,EAAAkB,GACxB,CACAG,WAAAA,CAAA,CACAQ,UAAAA,CAAA,CACAvV,MAAAA,CAAA,CACAgV,OAAAA,CAAA,CACAM,SAAAA,CAAA,CACAE,KAAAA,CAAA,CACAgb,MAAAA,CAAA,CACAkF,OAAAA,CAAA,CACAC,OAAAA,CAAA,CACAH,QAAAA,CAAA,CACAnmB,OAAAA,CAAA,CACAomB,QAAAA,CAAA,CACAvkB,IAAAA,CAAA,CACA,GAAA5B,EACA,CAAIrN,EACJuN,EAAoB,GAAAoG,EAAAC,CAAA,EAAS,CAC7BT,KAAA,WACA3B,QAAWA,EACXxR,MAAAA,EACAsT,UAAAA,EACAvV,MAAAA,EACA+U,WAAAA,EACAC,OAAAA,EACAM,SAAAA,EACAE,KAAAA,EACAzB,aAAAA,CACA,GACA,MAAyB,GAAA5Z,EAAAI,GAAA,EAAIkV,EAAAC,CAAG,EAAIH,IAAAA,EAAA,GAAAC,EAAA,QAAA0B,IAAA,EAAmCskB,QAAAA,EAAAC,QAAAA,CAAA,EAAkBvkB,EAAA,IAAA5B,CAAA,EACzF,EACAsmB,CAAAA,EAAAniB,OAAA,CAAmBA,EACnBmiB,EAAAhmB,WAAA,6GC/DA,SAAAimB,EAAA1gB,CAAA,CAAA2gB,CAAA,CAAA/5B,EAAA,CAA2Dg6B,QAAA,GAAgB,EAC3E,IAAA35B,EAAAga,EAAA,CAA4B,GAAA4f,EAAAv3B,QAAA,EAAQ0W,GACpC8gB,EAAqB,GAAAD,EAAAtf,MAAA,EAAM,MAC3Bwf,EAAqB,GAAAF,EAAAtf,MAAA,EAAM,IAC3Byf,EAAA,IAAA58B,OAAA48B,YAAA,CAAAF,EAAAxe,OAAA,EAiBA,MAhBE,GAAAue,EAAA/2B,SAAA,EAAS,IAAAk3B,EAAA,IAgBX,CAAA/5B,EAf4B,GAAA45B,EAAA/e,WAAA,EAC5B,IACAkf,IACAD,EAAAze,OAAA,EAAA1b,EAAAg6B,OAAA,CACA3f,EAAAggB,GAEAH,EAAAxe,OAAA,CAAAle,OAAA85B,UAAA,MACA6C,EAAAze,OAAA,IACArB,EAAAggB,EACA,EAASN,GAETI,EAAAze,OAAA,GACA,EACA,CAAA1b,EAAAg6B,OAAA,GAEA,uHCpBA,SAAAM,EAAArmB,CAAA,EACA,OACAN,EAAO,GAAA4mB,EAAA/kB,CAAA,EAAKvB,EAAAN,CAAA,MACZmG,EAAO,GAAAygB,EAAA/kB,CAAA,EAAKvB,EAAA6F,CAAA,KACZ,CACA,CACA,SAAA0gB,EAAAv7B,CAAA,CAAAw7B,CAAA,CAAA1gB,EAAA,OACA,IAAAvG,EAAc,GAAAymB,EAAAtf,MAAA,EAAM,MACpBlF,EAAkB,GAAAwkB,EAAAtf,MAAA,EAAM,IACxB+f,EAAoB,GAAAT,EAAAtf,MAAA,EAAM,IAC1BggB,EAAgB,GAAAV,EAAAtf,MAAA,EAAM,GACtB,CAAAiB,EAAAgf,EAAA,CAA8B,GAAAX,EAAAv3B,QAAA,EAAQ,IAgFtC,MA/EE,GAAAu3B,EAAA/2B,SAAA,EAAS,KACXuS,EAAAiG,OAAA,GACA,EAAG,IACD,GAAAue,EAAA/2B,SAAA,EAAS,KACX,IAAA23B,EAAArnB,EAAAkI,OAAA,CACAof,EAAA,EAAuBnnB,EAAAA,CAAA,CAAAmG,EAAAA,CAAA,CAAM,IAC7BihB,qBAAAJ,EAAAjf,OAAA,EACAif,EAAAjf,OAAA,CAAAsf,sBAAA,KACA,GAAAvlB,EAAAiG,OAAA,EAAAmf,EAAA,CACAA,EAAA52B,KAAA,CAAAg3B,UAAA,QACA,IAAAC,EAAAL,EAAAM,qBAAA,GACA,GAAAD,EAAAzG,KAAA,EAAAyG,EAAAvB,MAAA,EACA,IAAAyB,EAAuB,GAAAb,EAAA/kB,CAAA,EAAK,CAAA7B,EAAAunB,EAAA3f,IAAA,EAAA2f,EAAAzG,KAAA,MAC5Bx1B,EAAA,CACA0U,EAAAoG,QAAAA,EAAAqhB,EAAA,EAAAA,EACAthB,EAAiB,GAAAygB,EAAA/kB,CAAA,EAAK,CAAAsE,EAAAohB,EAAAG,GAAA,EAAAH,EAAAvB,MAAA,KACtB,EACA,CACA,CACA,EACA,EACA2B,EAAA,KACAC,SAAAC,gBAAA,aAAAC,GACAF,SAAAC,gBAAA,WAAAE,GACAH,SAAAC,gBAAA,aAAAG,GACAJ,SAAAC,gBAAA,YAAAE,EACA,EACAE,EAAA,KACAL,SAAAM,mBAAA,aAAAJ,GACAF,SAAAM,mBAAA,WAAAH,GACAH,SAAAM,mBAAA,aAAAF,GACAJ,SAAAM,mBAAA,YAAAH,EACA,EACAI,EAAA,KACA,CAAApB,EAAAhf,OAAA,EAAAjG,EAAAiG,OAAA,GACAgf,EAAAhf,OAAA,IACA,mBAAA+e,GAAAsB,cAAAtB,EAAAsB,YAAA,GACAnB,EAAA,IACAU,IAEA,EACAI,EAAA,KACAhB,EAAAhf,OAAA,EAAAjG,EAAAiG,OAAA,GACAgf,EAAAhf,OAAA,IACAkf,EAAA,IACAgB,IACAtE,WAAA,KACA,mBAAAmD,GAAA1e,YAAA0e,EAAA1e,UAAA,EACA,EAAS,GAET,EACA5H,EAAA,IACA2nB,IACA1mB,EAAA8G,cAAA,GACAuf,EAAArmB,EACA,EACAqmB,EAAA,GAAAX,EAAA,CAA6CnnB,EAAAyB,EAAA4mB,OAAA,CAAAliB,EAAA1E,EAAA6mB,OAAA,GAC7C5mB,EAAA,IACAD,EAAA8mB,UAAA,EACA9mB,EAAA8G,cAAA,GAEA4f,IACAH,EAAAvmB,EACA,EACAumB,EAAA,IACAvmB,EAAA8mB,UAAA,EACA9mB,EAAA8G,cAAA,GAEA4e,EAAA,CAAgBnnB,EAAAyB,EAAA+mB,cAAA,IAAAH,OAAA,CAAAliB,EAAA1E,EAAA+mB,cAAA,IAAAF,OAAA,EAChB,EAGA,OAFApB,GAAAW,iBAAA,YAAArnB,GACA0mB,GAAAW,iBAAA,aAAAnmB,EAAA,CAAyD+mB,QAAA,KACzD,KACAvB,IACAA,EAAAgB,mBAAA,aAAA1nB,GACA0mB,EAAAgB,mBAAA,cAAAxmB,GAEA,CACA,EAAG,CAAA0E,EAAA9a,EAAA,EACH,CAAWuU,IAAAA,EAAAoI,OAAAA,CAAA,CACX,iIC7FO,eAAAgT,EAAAP,CAAA,CAAAuC,CAAA,EACP,IAAYO,QAAAA,CAAA,CAAAkL,QAAAA,EAAA,KAAA5K,EAAA,CAAgCb,EAC5Cc,EAAArD,EAAAsD,SAAA,EAAsCR,QAAAA,CAAA,GACtCtqB,EAAmB,GAAAy1B,EAAAzK,CAAA,EAASH,EAAS6K,EAAArqB,CAA8B,8BACnEsqB,EAAA,MAAA31B,EAAA,CAAmC,GAAA4qB,CAAA,CAAA4K,QAAAA,CAAA,GACnC,GAAAG,aAAAA,EAAAxN,MAAA,EACA,IAAAyN,EAAsC,GAAAH,EAAAzK,CAAA,EAASH,EAASgL,EAAA7kB,CAAc,mBACtE8kB,EAAA,MAAAF,EAAA,CAAkD5N,KAAA2N,EAAAvN,eAAA,GAClD2N,EAA4B,GAAAN,EAAAzK,CAAA,EAASH,EAASmL,EAAA5pB,CAAI,SAClD0gB,EAAA,MAAAiJ,EAAA,CACA,GAAAD,CAAA,CACAvxB,KAAAuxB,EAAA5Q,KAAA,CACA+Q,SAAAH,YAAAA,EAAA37B,IAAA,CAAA27B,EAAAG,QAAA,CAAAj+B,KAAAA,EACAk+B,aAAAJ,YAAAA,EAAA37B,IAAA,CAAA27B,EAAAI,YAAA,CAAAl+B,KAAAA,EACAm+B,qBAAAL,YAAAA,EAAA37B,IAAA,CAAA27B,EAAAK,oBAAA,CAAAn+B,KAAAA,CACA,EAIA,aAHA80B,GAAAvoB,KACc,GAAA6xB,EAAAC,EAAA,EAAW,KAAMvJ,EAAAvoB,IAAA,CAAA+xB,SAAA,MAAyB,GACxD,iBAEA,CACA,OACA,GAAAX,CAAA,CACArL,QAAAO,EAAA0L,KAAA,CAAA3sB,EAAA,CAEA,+FCvBM,OAAO4sB,UAAkCC,EAAAA,CAAAA,CAC7CC,YAAY,CAAEl9B,MAAAA,CAAK,CAAqB,EACtC,KAAK,CAAC,WAAiBmP,MAAA,CAALnP,EAAK,oCAAqC,CAC1DgZ,KAAM,6BAEV,EEQI,SAAUqR,EAAW8S,CAAa,MAAEC,EAAAA,UAAAA,MAAAA,CAAAA,GAAAA,KAAAA,IAAAA,SAAAA,CAAAA,EAAAA,CAAAA,SAAAA,CAAAA,EAAAA,CAAuB,MAC/D,OAAOC,SDHkBr9B,CAAa,CAAEs9B,CAAgB,EACxD,GAAI,CAAC,4BAA4BC,IAAI,CAACv9B,GACpC,MAAM,IAAIg9B,EAA0B,CAAEh9B,MAAAA,CAAK,GAE7C,GAAI,CAACw9B,EAASC,EAAW,GAAG,CAAC,CAAGz9B,EAAM2a,KAAK,CAAC,KAEtC+iB,EAAWF,EAAQG,UAAU,CAAC,KAOpC,GANID,GAAUF,CAAAA,EAAUA,EAAQI,KAAK,CAAC,IAGtCH,EAAWA,EAASI,OAAO,CAAC,QAAS,IAGjCP,IAAAA,EACyC,IAAvC/qB,KAAK6I,KAAK,CAAC3M,OAAO,IAAYU,MAAA,CAARsuB,MACxBD,CAAAA,EAAU,GAAuBruB,MAAA,CAApBX,OAAOgvB,GAAW,CAAE,IACnCC,EAAW,QACN,GAAIA,EAASh+B,MAAM,CAAG69B,EAAU,CACrC,GAAM,CAACpiB,EAAMkiB,EAAMU,EAAM,CAAG,CAC1BL,EAASG,KAAK,CAAC,EAAGN,EAAW,GAC7BG,EAASG,KAAK,CAACN,EAAW,EAAGA,GAC7BG,EAASG,KAAK,CAACN,GAChB,CAEKS,EAAUxrB,KAAK6I,KAAK,CAAC3M,OAAO,GAAWqvB,MAAAA,CAARV,EAAI,KAASjuB,MAAA,CAAL2uB,IAKzCL,EAHFA,EADEM,EAAU,EACD,GAA2B5uB,MAAA,CAAxBX,OAAO0M,GAAQ1M,OAAO,GAAE,KAAIwvB,QAAQ,CAAC9iB,EAAKzb,MAAM,CAAG,EAAG,KACtD,GAAUs+B,MAAAA,CAAP7iB,GAAc/L,MAAA,CAAP4uB,IAEbt+B,MAAM,CAAG69B,IACpBG,EAAWA,EAASG,KAAK,CAAC,GAC1BJ,EAAU,GAAuBruB,MAAA,CAApBX,OAAOgvB,GAAW,CAAE,IAGnCC,EAAWA,EAASG,KAAK,CAAC,EAAGN,EAC/B,MACEG,EAAWA,EAASQ,MAAM,CAACX,EAAU,KAGvC,OAAO9uB,OAAO,GAAyBgvB,MAAAA,CAAtBE,EAAW,IAAM,IAAeD,MAAAA,CAAVD,GAAkBruB,MAAA,CAARsuB,GACnD,ECrCoBN,EAAOe,EAAAA,EAAU,CAACd,EAAK,CAC3C,iIEdO,SAAAe,EAAA5N,EAAA,EAAqD,EAC5D,IAAY/B,KAAAA,CAAA,CAAA9iB,MAAAA,EAAA,IAAmB6kB,EAC/BvC,EAAmB,GAAAC,EAAApW,CAAA,EAAS0Y,GAC5BO,EAAoB,GAAAD,EAAAvd,CAAA,EAAU,CAAG0a,OAAAA,CAAA,GACjCruB,EAAoBy+B,SDRbpQ,CAAA,CAAAruB,EAAA,EAAmE,EAC1E,OACA,MAAA6L,QAAA,CAAwBD,SAAAA,CAAA,CAAU,EAClC,IAAoBijB,KAAAA,CAAA,IAAA+B,EAAA,CAAsBhlB,CAAA,IAC1C,IAAAijB,EACA,gCACA,MAAmB,GAAAD,EAAA1c,CAAA,EAAyBmc,EAAA,CAC5C,GAAAuC,CAAA,CACA8N,WAAA1+B,EAAA0+B,UAAA,CACA7P,KAAAA,CACA,EACA,EACAjjB,SAAA+yB,SAGO3+B,EAAA,EAAuD,EAC9D,IAAY0+B,WAAAnN,CAAA,IAAAE,EAAA,CAAyBzxB,EACrC,mCAAyC,GAAAiyB,EAAAC,EAAA,EAAkBT,GAAA,EAL3DzxB,EACA,CACA,ECNyDquB,EAAA,CACzD,GAAAuC,CAAA,CACAO,QAAAP,EAAAO,OAAA,EAAAA,CACA,GACA5lB,EAAA6nB,CAAAA,CAAAvE,CAAAA,GAAA9iB,CAAAA,EAAAR,OAAA,OACA,MAAW,GAAA+nB,EAAAC,EAAA,EAAQ,CACnB,GAAAxnB,CAAA,CACA,GAAA/L,CAAA,CACAuL,QAAAA,CACA,EACA,sHChBO,eAAeqzB,EAAavQ,CAAA,CAAAuC,CAAA,MAEnCc,EADA,IAAYmN,QAAAA,CAAA,CAAA1N,QAAAA,CAAA,CAAA2N,UAAAA,CAAA,IAAAhS,EAAA,CAA0C8D,EAGtDc,EADA,iBAAAmN,GAAAA,GAAA79B,OAAA,QACAqtB,EAAAsD,SAAA,EAAoCR,QAAAA,CAAA,GAEpC,MAAuB,GAAA4N,EAAA7sB,CAAA,EAAkBmc,EAAA,CACzCwQ,QAAAA,GAAAhgC,KAAAA,EACAsyB,QAAAA,EACA2N,UAAAA,CACA,GACA,IAAAj4B,EAAmB,GAAA+qB,EAAAC,CAAA,EAASH,EAASzH,EAAA+U,CAAkB,kBAMvD,OALA,MAAAn4B,EAAA,CACA,GAAAimB,CAAA,CACA,GAAA+R,EAAA,CAAwBA,QAAAA,CAAA,EAAU,EAAI,CACtCzB,MAAAjM,EAAA,CAA2B1gB,GAAA0gB,CAAA,EAAc,IACzC,EAEA,gBEjBO,SAAA8N,EAAArO,EAAA,EAAyC,MDJzCvC,ECKP,IAAY6Q,SAAAA,CAAA,EAAWtO,EAEvBuO,GDPO9Q,ECMY,GAAAC,EAAApW,CAAA,EAAS0Y,GDL5B,CACAwO,WAAAA,GACmBR,EAAavQ,EAAAgR,GAEhCC,YAAA,oBCGA,CAAYC,OAAAA,CAAA,CAAAC,YAAAA,CAAA,IAAApzB,EAAA,CAAmC,GAAAqzB,EAAAC,CAAA,EAAW,CAC1D,GAAAR,CAAA,CACA,GAAAC,CAAA,GAEA,OACA,GAAA/yB,CAAA,CACA6d,cAAAsV,EACAI,mBAAAH,CACA,CACA","sources":["webpack://_N_E/?8c0b","webpack://_N_E/./components/AvatarWithAddressOrIdentity/AvatarWithAddressOrIdentity.tsx","webpack://_N_E/./components/AvatarWithAddressOrIdentity/index.ts","webpack://_N_E/./components/ProxyDropdown/ProxyDropdown.tsx","webpack://_N_E/./components/ProxyDropdown/index.ts","webpack://_N_E/./components/ProxySwitch/ProxiedAccount.tsx","webpack://_N_E/./components/ProxySwitch/ProxySwitch.tsx","webpack://_N_E/./components/ProxySwitch/index.ts","webpack://_N_E/./components/TokenFiatPrice/TokenFiatPrice.tsx","webpack://_N_E/./components/TutorialLink/TutorialLink.tsx","webpack://_N_E/./components/TutorialLink/index.ts","webpack://_N_E/./components/pages/open-gov/DelegateVote/DelegateVotes.tsx","webpack://_N_E/./components/pages/open-gov/DelegateVote/index.ts","webpack://_N_E/./configs/coinGecko.ts","webpack://_N_E/./lib/hooks/queries/proxy/useAllProxies.ts","webpack://_N_E/./lib/hooks/queries/proxy/useProxiedAccounts.ts","webpack://_N_E/./lib/hooks/useFiatConversion.ts","webpack://_N_E/./lib/hooks/useFormatValue.ts","webpack://_N_E/./lib/hooks/useTutorials.ts","webpack://_N_E/./lib/hooks/flags/useVoteDelegationBaseUrlFlag.ts","webpack://_N_E/./lib/hooks/useVoteDelegationUrls.ts","webpack://_N_E/./lib/services/coingecko/coingecko.ts","webpack://_N_E/./lib/services/coingecko/index.ts","webpack://_N_E/./node_modules/@mantine/core/esm/core/utils/find-closest-number/find-closest-number.mjs","webpack://_N_E/./node_modules/@mantine/core/esm/components/Slider/Slider.context.mjs","webpack://_N_E/./node_modules/@mantine/core/esm/components/Slider/SliderRoot/SliderRoot.mjs","webpack://_N_E/./node_modules/@mantine/core/esm/components/Slider/Thumb/Thumb.mjs","webpack://_N_E/./node_modules/@mantine/core/esm/components/Slider/utils/get-position/get-position.mjs","webpack://_N_E/./node_modules/@mantine/core/esm/components/Slider/Marks/is-mark-filled.mjs","webpack://_N_E/./node_modules/@mantine/core/esm/components/Slider/Marks/Marks.mjs","webpack://_N_E/./node_modules/@mantine/core/esm/components/Slider/Track/Track.mjs","webpack://_N_E/./node_modules/@mantine/core/esm/components/Slider/utils/get-change-value/get-change-value.mjs","webpack://_N_E/./node_modules/@mantine/core/esm/components/Slider/utils/get-floating-value/get-gloating-value.mjs","webpack://_N_E/./node_modules/@mantine/core/esm/components/Slider/utils/get-precision/get-precision.mjs","webpack://_N_E/./node_modules/@mantine/core/esm/components/Slider/utils/get-step-mark-value/get-step-mark-value.mjs","webpack://_N_E/./node_modules/@mantine/core/esm/components/Slider/Slider.module.css.mjs","webpack://_N_E/./node_modules/@mantine/core/esm/components/Slider/Slider/Slider.mjs","webpack://_N_E/./lib/hooks/queries/staking/useSelectedCandidates.ts","webpack://_N_E/./lib/hooks/queries/staking/useCandidateInfo.ts","webpack://_N_E/./lib/hooks/queries/staking/useCandidatePool.ts","webpack://_N_E/./lib/hooks/queries/staking/useDelegationsTotal.ts","webpack://_N_E/./lib/hooks/queries/staking/useStakingParameters.ts","webpack://_N_E/./lib/hooks/queries/useRound.ts","webpack://_N_E/./lib/hooks/queries/usePoints.ts","webpack://_N_E/./lib/hooks/queries/staking/useStakingCandidates.ts","webpack://_N_E/./components/pages/staking/SelectCandidate/SortableHeader.tsx","webpack://_N_E/./lib/hooks/flags/useStakingCandidateIndicators.tsx","webpack://_N_E/./lib/hooks/queries/staking/useDelegations.ts","webpack://_N_E/./components/pages/staking/SelectCandidate/Candidate.tsx","webpack://_N_E/./components/pages/staking/SelectCandidate/CandidatesList.tsx","webpack://_N_E/./components/pages/staking/SelectCandidate/SelectCandidateModal.tsx","webpack://_N_E/./components/pages/staking/SelectCandidate/SelectCandidate.tsx","webpack://_N_E/./components/pages/staking/SelectCandidate/index.ts","webpack://_N_E/./components/pages/staking/Stake/VoteDelegationModal.tsx","webpack://_N_E/./lib/hooks/queries/staking/useAutoCompoundingDelegationsCount.ts","webpack://_N_E/./lib/hooks/queries/staking/useDelegationsCount.ts","webpack://_N_E/./lib/services/contracts/StakingContract/StakingABI.ts","webpack://_N_E/./lib/services/contracts/StakingContract/constants.ts","webpack://_N_E/./lib/hooks/contracts/staking/useDelegate.ts","webpack://_N_E/./lib/hooks/useMaxAmountStaking.ts","webpack://_N_E/./components/pages/staking/Stake/Stake.tsx","webpack://_N_E/./components/pages/staking/Stake/index.ts","webpack://_N_E/./lib/hooks/queries/staking/useDelegationScheduledRequests.ts","webpack://_N_E/./lib/hooks/queries/staking/useDelegationInfo.ts","webpack://_N_E/./lib/hooks/contracts/staking/useDelegationAction.ts","webpack://_N_E/./lib/hooks/contracts/staking/useCancelDelegationRequest.ts","webpack://_N_E/./components/pages/staking/StakingSummary/Actions/CancelRequest.tsx","webpack://_N_E/./lib/hooks/contracts/staking/useExecuteDelegationRequest.ts","webpack://_N_E/./components/pages/staking/StakingSummary/Actions/ExecuteRequest.tsx","webpack://_N_E/./components/pages/staking/StakingSummary/Actions/Actions.tsx","webpack://_N_E/./node_modules/@wagmi/core/dist/esm/actions/getBlockNumber.js","webpack://_N_E/./node_modules/@wagmi/core/dist/esm/query/getBlockNumber.js","webpack://_N_E/./node_modules/@wagmi/core/dist/esm/actions/watchBlockNumber.js","webpack://_N_E/./node_modules/wagmi/dist/esm/hooks/useWatchBlockNumber.js","webpack://_N_E/./node_modules/wagmi/dist/esm/hooks/useBlockNumber.js","webpack://_N_E/./node_modules/@wagmi/core/dist/esm/query/readContract.js","webpack://_N_E/./node_modules/wagmi/dist/esm/hooks/useReadContract.js","webpack://_N_E/./lib/hooks/contracts/staking/useDelegationAutoCompound.ts","webpack://_N_E/./lib/hooks/contracts/staking/useSetAutoCompound.ts","webpack://_N_E/./components/pages/staking/StakingSummary/Actions/ActionPopover.tsx","webpack://_N_E/./components/pages/staking/StakingSummary/Actions/AutoCompounding.tsx","webpack://_N_E/./lib/hooks/contracts/staking/useBondMore.ts","webpack://_N_E/./components/pages/staking/StakingSummary/Actions/Bond.tsx","webpack://_N_E/./lib/hooks/contracts/staking/useScheduleDecrease.ts","webpack://_N_E/./components/pages/staking/StakingSummary/Actions/DelayWarning.tsx","webpack://_N_E/./components/pages/staking/StakingSummary/Actions/Decrease.tsx","webpack://_N_E/./lib/hooks/contracts/staking/useScheduleRevoke.ts","webpack://_N_E/./components/pages/staking/StakingSummary/Actions/Revoke.tsx","webpack://_N_E/./components/pages/staking/StakingSummary/Actions/index.ts","webpack://_N_E/./components/pages/staking/StakingSummary/DelegationNotes.tsx","webpack://_N_E/./components/pages/staking/StakingSummary/Delegation.tsx","webpack://_N_E/./components/pages/staking/StakingSummary/StakingSummary.tsx","webpack://_N_E/./components/pages/staking/StakingSummary/index.ts","webpack://_N_E/./components/pages/staking/StakingWarningMessage/StakingWarningMessage.tsx","webpack://_N_E/./components/pages/staking/StakingWarningMessage/index.ts","webpack://_N_E/./components/pages/staking/index.ts","webpack://_N_E/./components/pages/staking/DelegationDelay/DelegationDelay.tsx","webpack://_N_E/./components/pages/staking/DelegationDelay/index.ts","webpack://_N_E/./pages/[moonChainKey]/staking.tsx","webpack://_N_E/./recoil/coingecko/hooks.ts","webpack://_N_E/./recoil/coingecko/index.ts","webpack://_N_E/./recoil/importedTokens/atoms.ts","webpack://_N_E/./components/pages/staking/SelectCandidate/Candidate.module.css","webpack://_N_E/./components/pages/staking/SelectCandidate/CandidateList.module.css","webpack://_N_E/./components/pages/staking/SelectCandidate/SelectCandidate.module.css","webpack://_N_E/./components/pages/staking/Stake/Staking.module.css","webpack://_N_E/./components/pages/staking/StakingSummary/StakingSummary.module.css","webpack://_N_E/./lib/styles/common.module.css","webpack://_N_E/./node_modules/@mantine/core/esm/components/Skeleton/Skeleton.module.css.mjs","webpack://_N_E/./node_modules/@mantine/core/esm/components/Skeleton/Skeleton.mjs","webpack://_N_E/./node_modules/@mantine/hooks/esm/use-debounced-state/use-debounced-state.mjs","webpack://_N_E/./node_modules/@mantine/hooks/esm/use-move/use-move.mjs","webpack://_N_E/./node_modules/@wagmi/core/dist/esm/actions/waitForTransactionReceipt.js","webpack://_N_E/../../errors/unit.ts","webpack://_N_E/../../../utils/unit/parseUnits.ts","webpack://_N_E/../../../utils/unit/parseEther.ts","webpack://_N_E/./node_modules/@wagmi/core/dist/esm/query/waitForTransactionReceipt.js","webpack://_N_E/./node_modules/wagmi/dist/esm/hooks/useWaitForTransactionReceipt.js","webpack://_N_E/./node_modules/@wagmi/core/dist/esm/actions/writeContract.js","webpack://_N_E/./node_modules/@wagmi/core/dist/esm/query/writeContract.js","webpack://_N_E/./node_modules/wagmi/dist/esm/hooks/useWriteContract.js"],"sourcesContent":["\n (window.__NEXT_P = window.__NEXT_P || []).push([\n \"/[moonChainKey]/staking\",\n function () {\n return require(\"private-next-pages/[moonChainKey]/staking.tsx\");\n }\n ]);\n if(module.hot) {\n module.hot.dispose(function () {\n window.__NEXT_P.push([\"/[moonChainKey]/staking\"])\n });\n }\n ","import { Group, Text } from '@mantine/core';\nimport { Avatar } from 'components/Avatar';\nimport { useIdentity } from 'hooks/queries/useIdentities';\nimport { candidateDisplay } from 'utils/text';\n\ntype Props = {\n address: string;\n withAddress?: boolean;\n};\n\nexport const AvatarWithAddressOrIdentity = ({\n address,\n withAddress = false,\n}: Props): JSX.Element => {\n const proxyIdentity = useIdentity(address);\n const hasIdentity = proxyIdentity && proxyIdentity.display;\n\n return (\n \n \n {candidateDisplay(proxyIdentity, address)}\n {withAddress && hasIdentity && (\n {candidateDisplay(undefined, address, 5, 5)}\n )}\n \n );\n};\n","export { AvatarWithAddressOrIdentity } from 'components/AvatarWithAddressOrIdentity/AvatarWithAddressOrIdentity';\n","import {\n Combobox,\n Group,\n InputBase,\n Loader,\n Text,\n useCombobox,\n} from '@mantine/core';\nimport { AvatarWithAddressOrIdentity } from 'components/AvatarWithAddressOrIdentity';\nimport { useProxiedAccounts } from 'hooks/queries/proxy/useProxiedAccounts';\nimport { useAddress } from 'hooks/useAddress';\nimport { useTranslation } from 'next-i18next';\nimport { useMemo } from 'react';\nimport { ProxyType } from 'services/contracts/Proxy/constants';\n\ninterface Props {\n proxyType: ProxyType;\n selected: string;\n size?: string;\n onChange: (proxyAddress: string) => void;\n}\n\nexport function ProxyDropdown({\n proxyType,\n selected,\n size = 'md',\n onChange,\n ...other\n}: Props) {\n const combobox = useCombobox({\n onDropdownClose: () => combobox.resetSelectedOption(),\n });\n\n const { t } = useTranslation();\n const address = useAddress();\n const { accounts, isLoading } = useProxiedAccounts(address, proxyType);\n\n const isDisabled = !accounts?.length;\n const noProxies = !isLoading && !accounts?.length;\n\n const options = useMemo(\n () =>\n accounts?.map(({ address, proxyType }) => (\n \n \n \n \n {t('type')}\n {':'}\n \n \n {proxyType}\n \n \n \n )),\n [accounts, t],\n );\n\n return (\n {\n combobox.toggleDropdown();\n onChange(value);\n }}\n {...other}\n >\n \n }\n onClick={() => combobox.toggleDropdown()}\n rightSectionPointerEvents={'none'}\n disabled={noProxies}\n >\n {isLoading && }\n {noProxies && {t('noResults')}}\n {selected && }\n {!selected && !isLoading && !noProxies && (\n {t('selectProxiedAccount')}\n )}\n \n \n \n {options}\n \n \n );\n}\n","export { ProxyDropdown } from 'components/ProxyDropdown/ProxyDropdown';\n","import { Collapse, Grid, Paper, Text, useMantineTheme } from '@mantine/core';\nimport { ProxyDropdown } from 'components/ProxyDropdown';\nimport { useIsProxyAvailableFlag } from 'hooks/flags/useIsProxyAvailableFlag';\nimport {\n useIsValidGovProxy,\n useIsValidStakingProxy,\n} from 'hooks/queries/proxy/useIsValidPorxy';\nimport { useIsMounted } from 'hooks/useIsMounted';\nimport { useThemeColors } from 'hooks/useThemeColors';\nimport { Trans, useTranslation } from 'next-i18next';\nimport { useEffect, useState } from 'react';\nimport { useProxiedAddress } from 'recoil/proxiedAddress';\nimport { ProxyType } from 'services/contracts/Proxy/constants';\nimport { sliceEllipsis } from 'utils/text';\nimport { useAccount } from 'wagmi';\n\ninterface Props {\n type: ProxyType;\n}\n\nexport const ProxiedAccount = ({ type }: Props) => {\n const { t } = useTranslation();\n const theme = useMantineTheme();\n const { themeColors } = useThemeColors();\n const { isConnected } = useAccount();\n const isMounted = useIsMounted();\n const { isEnabled, proxiedAddress, setProxiedAddress } = useProxiedAddress();\n const isProxyAvailable = useIsProxyAvailableFlag();\n const [localProxiedAddress, setLocalProxiedAddress] =\n useState(proxiedAddress);\n const isValidGovProxy = useIsValidGovProxy(localProxiedAddress);\n const isValidStakingProxy = useIsValidStakingProxy(localProxiedAddress);\n const isValid =\n type === ProxyType.Governance ? isValidGovProxy : isValidStakingProxy;\n\n useEffect(() => {\n if (localProxiedAddress && isValid === undefined) return;\n\n if (localProxiedAddress && isValid) {\n setProxiedAddress(localProxiedAddress);\n } else {\n setProxiedAddress('');\n }\n }, [isValid, localProxiedAddress, setProxiedAddress]);\n\n if (!isMounted || !isConnected || !isProxyAvailable) {\n return undefined;\n }\n\n return (\n \n \n \n \n setLocalProxiedAddress(address)}\n selected={localProxiedAddress}\n />\n {isValid === false && (\n ,\n }}\n />\n )}\n \n \n \n \n );\n};\n","import { Switch } from '@mantine/core';\nimport { useIsProxyAvailableFlag } from 'hooks/flags/useIsProxyAvailableFlag';\nimport { useIsMounted } from 'hooks/useIsMounted';\nimport { useTranslation } from 'next-i18next';\nimport { useProxiedAddress } from 'recoil/proxiedAddress';\nimport { useAccount } from 'wagmi';\n\nexport const ProxySwitch = () => {\n const { t } = useTranslation();\n const { isEnabled, toggle } = useProxiedAddress();\n const isMounted = useIsMounted();\n const isProxyAvailable = useIsProxyAvailableFlag();\n const { isConnected } = useAccount();\n\n if (!isProxyAvailable) return undefined;\n\n return (\n \n );\n};\n","export * from './ProxiedAccount';\nexport * from './ProxySwitch';\n","import {\n Loader,\n Text,\n TextProps,\n Tooltip,\n useMantineTheme,\n} from '@mantine/core';\nimport { AssetAmount } from '@moonbeam-network/xcm-types';\nimport { useFiatConversion } from 'hooks/useFiatConversion';\nimport { useIsMounted } from 'hooks/useIsMounted';\nimport { useTranslation } from 'next-i18next';\nimport { Suspense } from 'react';\nimport { IoHelpCircleOutline } from 'react-icons/io5';\nimport { useUserSettings } from 'recoil/userSettings';\n\ninterface Props extends TextProps {\n assetAmount: AssetAmount;\n showPrice?: boolean;\n maxDecimals?: number;\n isHidable?: boolean;\n}\n\nfunction TokenFiatPriceContent({\n assetAmount,\n maxDecimals,\n showPrice = false,\n isHidable = false,\n ...textProps\n}: Props) {\n const { t } = useTranslation();\n const isMounted = useIsMounted();\n const { areBalancesVisible } = useUserSettings();\n const [fiatConversion, fiatSymbol] = useFiatConversion(\n assetAmount,\n maxDecimals,\n showPrice,\n );\n\n if (!isMounted) {\n return null;\n }\n\n const isHidden = isHidable && !areBalancesVisible;\n\n return (\n \n \n {fiatSymbol}\n {isHidden ? (\n '****'\n ) : fiatConversion ? (\n fiatConversion\n ) : (\n <>\n {'-.- '}\n \n \n )}\n \n \n );\n}\n\nexport function TokenFiatPrice(props: Props) {\n const theme = useMantineTheme();\n\n return (\n }>\n \n \n );\n}\n","import { Group, Text, useMantineTheme } from '@mantine/core';\nimport { OffsiteLink } from 'components/OffsiteLink';\nimport { useThemeColors } from 'hooks/useThemeColors';\nimport { useTranslation } from 'next-i18next';\nimport { IoPlayCircle } from 'react-icons/io5';\n\ninterface Props {\n link: string;\n}\n\nexport const TutorialLink = ({ link }: Props) => {\n const { t } = useTranslation();\n const theme = useMantineTheme();\n const { themeColors } = useThemeColors();\n\n return (\n \n \n \n {t('watchVideoGuide')}\n \n \n );\n};\n","export * from './TutorialLink';\n","import { useMantineTheme } from '@mantine/core';\nimport { ActionButton, ActionButtonProps } from 'components/ActionButton';\nimport { OffsiteLink } from 'components/OffsiteLink';\nimport { useIsDarkMode } from 'hooks/useIsDarkMode';\nimport { useVoteDelegationUrls } from 'hooks/useVoteDelegationUrls';\nimport { useTranslation } from 'next-i18next';\n\nexport function DelegateVotes(props: ActionButtonProps) {\n const { t } = useTranslation();\n const { other, black } = useMantineTheme();\n const { delegationUrl } = useVoteDelegationUrls();\n const isDark = useIsDarkMode();\n\n if (!delegationUrl) {\n return undefined;\n }\n\n return (\n \n \n \n );\n}\n","export { DelegateVotes } from './DelegateVotes';\n","import {\n aca,\n aseed,\n astr,\n axlusdc,\n bnc,\n cfg,\n csm,\n dai,\n dot,\n eq,\n eurc,\n fil,\n glmr,\n hdx,\n ibtc,\n intr,\n kar,\n kbtc,\n kint,\n ksm,\n laos,\n ldot,\n manta,\n mgx,\n moonbeam,\n moonriver,\n movr,\n nodl,\n para,\n pen,\n pha,\n pica,\n ring,\n rmrk,\n sdn,\n sub,\n teer,\n tnkr,\n tur,\n usdc,\n usdcwh,\n usdt,\n usdtwh,\n vastr,\n vdot,\n vglmr,\n vksm,\n vmanta,\n vmovr,\n wbtc,\n wbtce,\n weth,\n wethe,\n wstethe,\n xrt,\n ztg,\n} from '@moonbeam-network/xcm-config';\n\nexport const coinGeckoIds = {\n [moonbeam.key]: {\n [aca.key]: 'acala',\n [astr.key]: 'astar',\n [aseed.key]: 'acala-dollar-acala',\n [axlusdc.key]: 'axlusdc',\n [bnc.key]: 'bifrost-native-coin',\n [cfg.key]: 'centrifuge',\n [dai.key]: 'dai',\n [dot.key]: 'polkadot',\n [eq.key]: 'equilibrium-token',\n [eurc.key]: 'euro-coin',\n [hdx.key]: 'hydradx',\n [fil.key]: 'filecoin',\n [glmr.key]: 'moonbeam',\n [intr.key]: 'interlay',\n [laos.key]: 'laos-network',\n [ldot.key]: 'liquid-staking-dot',\n [manta.key]: 'manta-network',\n [nodl.key]: 'nodle-network',\n [para.key]: 'parallel-finance',\n [pen.key]: 'pendulum-chain',\n [pha.key]: 'pha',\n [ring.key]: 'darwinia-network-native-token',\n [sub.key]: 'subsocial',\n [usdc.key]: 'usd-coin',\n [usdcwh.key]: 'usd-coin-wormhole-from-ethereum',\n [usdt.key]: 'tether',\n [usdtwh.key]: 'tether-usd-wormhole',\n [wbtc.key]: 'wrapped-btc-wormhole',\n [wbtce.key]: 'wrapped-btc-wormhole',\n [weth.key]: 'ethereum-wormhole',\n [wethe.key]: 'ethereum-wormhole',\n [wstethe.key]: 'wrapped-steth',\n [ibtc.key]: 'interbtc',\n [vastr.key]: 'bifrost-voucher-astr',\n [vdot.key]: 'voucher-dot',\n [vglmr.key]: 'voucher-glmr',\n [vmanta.key]: 'bifrost-voucher-manta',\n [ztg.key]: 'zeitgeist',\n },\n [moonriver.key]: {\n [aseed.key]: 'acala-dollar',\n [csm.key]: 'crust-storage-market',\n [kar.key]: 'karura',\n [kbtc.key]: 'kintsugi-btc',\n [kint.key]: 'kintsugi',\n [ksm.key]: 'kusama',\n [mgx.key]: 'mangata-x',\n [movr.key]: 'moonriver',\n [rmrk.key]: 'rmrk',\n [sdn.key]: 'shiden',\n [teer.key]: 'integritee',\n [tnkr.key]: 'tinkernet',\n [tur.key]: 'turing-network',\n [usdt.key]: 'tether',\n [xrt.key]: 'robonomics-network',\n [pha.key]: 'pha',\n [pica.key]: 'picasso',\n [bnc.key]: 'bifrost-native-coin',\n [vksm.key]: 'voucher-ksm',\n [vmovr.key]: 'voucher-movr',\n },\n};\n","import { StorageKey, Vec, u128 } from '@polkadot/types';\nimport { PalletProxyProxyDefinition } from '@polkadot/types/lookup';\nimport { ITuple } from '@polkadot/types/types';\nimport { useApi } from 'hooks/useApi';\nimport { useMoonChain } from 'hooks/useMoonChainConfig';\n\nimport { AccountId20 } from '@polkadot/types/interfaces';\nimport { UseQueryResult, useQuery } from '@tanstack/react-query';\nimport { ProxyType } from 'services/contracts/Proxy/constants';\n\nexport type ProxiedAccount = { address: string; proxyType: ProxyType };\ntype ProxiesEntriesIndexed = Record;\n\nfunction transform(\n entries:\n | [\n StorageKey<[AccountId20]>,\n ITuple<[Vec, u128]>,\n ][]\n | [][] = [],\n): ProxiesEntriesIndexed {\n const result: ProxiesEntriesIndexed = {};\n\n entries.forEach((entry = []) => {\n if (!entry.length) return;\n\n entry[1]?.[0]?.forEach(({ delegate, delay, proxyType: type }) => {\n const address = entry[0]?.args[0].toString();\n const proxyType = type.toString() as ProxyType;\n const delayed = delay.toNumber();\n const delegated = delegate.toString();\n\n if (!result[delegated]) {\n result[delegated] = [];\n }\n\n if (!delayed && address) {\n result[delegated].push({ address, proxyType });\n }\n });\n });\n\n return result;\n}\n\nexport function useAllProxies(\n enabled = true,\n): UseQueryResult {\n const api = useApi();\n const { key } = useMoonChain();\n\n return useQuery({\n queryKey: ['all-proxies', key],\n queryFn: async () => {\n const res = await api?.query.proxy.proxies.entries();\n\n return res ? transform(res) : undefined;\n },\n enabled: !!api && enabled,\n });\n}\n","import {\n ProxiedAccount,\n useAllProxies,\n} from 'hooks/queries/proxy/useAllProxies';\nimport { useMemo } from 'react';\nimport { ProxyType } from 'services/contracts/Proxy/constants';\n\nconst whitelist = [ProxyType.Any, ProxyType.NonTransfer];\n\nexport function useProxiedAccounts(\n address?: string,\n proxyType?: ProxyType,\n): {\n accounts: ProxiedAccount[] | undefined;\n isLoading: boolean;\n} {\n const { data: allProxies, isLoading } = useAllProxies(!!address);\n\n const accounts = useMemo(() => {\n if (!allProxies || !address) return;\n\n if (!allProxies?.[address]) {\n return [];\n }\n\n if (proxyType) {\n return allProxies[address].filter((proxy) =>\n isProxyTypeNeeded(proxyType, proxy.proxyType),\n );\n }\n\n return allProxies[address];\n }, [allProxies, address, proxyType]);\n\n return {\n accounts,\n isLoading: isLoading || (!!address && !isLoading && !accounts),\n };\n}\n\nfunction isProxyTypeNeeded(\n proxyToLook: ProxyType,\n currentProxyType: ProxyType,\n): boolean {\n return (\n proxyToLook === currentProxyType || whitelist.includes(currentProxyType)\n );\n}\n","import { AssetAmount } from '@moonbeam-network/xcm-types';\nimport { useFormatValue } from 'hooks/useFormatValue';\nimport { useMoonChain } from 'hooks/useMoonChainConfig';\nimport { useMoonChainKeyParam } from 'hooks/useMoonChainParam';\nimport { useRouter } from 'next/router';\nimport { useMemo } from 'react';\nimport { useCoinGeckoPrices } from 'recoil/coingecko';\nimport { useUserSettings } from 'recoil/userSettings';\nimport { getCoinGeckoIdByAssetKey } from 'services/coingecko';\nimport { calcTokenConversion } from 'utils/calc';\n\nfunction useFiatSymbol(): string | undefined {\n const { locale = 'en_US' } = useRouter();\n const { fiatCurrency } = useUserSettings();\n\n return useMemo(\n () =>\n Intl.NumberFormat(locale, {\n style: 'currency',\n currency: fiatCurrency,\n })\n .formatToParts(0)\n .find((part) => part.type === 'currency')?.value,\n [fiatCurrency, locale],\n );\n}\n\nexport function useFiatConversion(\n assetAmount?: AssetAmount,\n maxDecimals?: number,\n showPrice = false,\n noFormat = false,\n): [string | undefined, string | undefined] {\n const fiatPrices = useCoinGeckoPrices();\n const { fiatCurrency } = useUserSettings();\n const fiatSymbol = useFiatSymbol();\n const network = useMoonChainKeyParam();\n const coinGeckoId = getCoinGeckoIdByAssetKey(network, assetAmount?.key);\n\n const fiatPrice = coinGeckoId\n ? fiatPrices?.[coinGeckoId]?.[fiatCurrency]\n : undefined;\n\n const value = useMemo(() => {\n if (!assetAmount || !fiatPrice) {\n return;\n }\n\n return calcTokenConversion(assetAmount, fiatPrice, maxDecimals);\n }, [assetAmount, fiatPrice, maxDecimals]);\n\n return [\n useFormatValue(showPrice ? fiatPrice : value, maxDecimals, noFormat),\n fiatSymbol,\n ];\n}\n\nexport function useTotalValueFromAmountAndPrice(\n price?: number | string,\n amount?: bigint | string | number,\n maxDecimals = 3,\n): undefined | string {\n const { nativeAsset } = useMoonChain();\n\n const total = useMemo(() => {\n if (!price || !amount) {\n return;\n }\n const assetAmount = AssetAmount.fromChainAsset(nativeAsset, {\n amount: BigInt(amount),\n });\n\n return calcTokenConversion(assetAmount, Number(price), maxDecimals);\n }, [nativeAsset, amount, price, maxDecimals]);\n\n return useFormatValue(total, maxDecimals);\n}\n","import Big from 'big.js';\nimport { useRouter } from 'next/router';\nimport { useMemo } from 'react';\n\nexport function useFormatValue(\n value: Big | string | number | undefined,\n maxDecimals?: number,\n noFormat = false,\n): string | undefined {\n const { locale = 'en' } = useRouter();\n\n return useMemo(() => {\n // biome-ignore lint/suspicious/noDoubleEquals: \n if (value == undefined) {\n return;\n }\n\n const big = new Big(value);\n\n if (noFormat) {\n return big.toString();\n }\n\n const number = big.toNumber();\n const standardDecimalLogic = number > 1 ? 2 : number < 0.1 ? 5 : 4;\n // number > 1\n // 12.3456 12.35\n // 1.23456 1.23\n\n // 0.1 <= number < 1\n // 0.123456 0.1234\n\n // number < 0.1\n // 0.0123456 0.01234\n // 0.00123456 0.00123\n // 0.000123456 0.00012\n // 0.0000123456 0.00001\n\n return number.toLocaleString(locale, {\n maximumFractionDigits: maxDecimals || standardDecimalLogic,\n });\n }, [value, noFormat, locale, maxDecimals]);\n}\n","import { moonriver } from '@moonbeam-network/xcm-config';\nimport { useMoonChainKeyParam } from 'hooks/useMoonChainParam';\n\ninterface Tutorials {\n xcm: string;\n staking: string;\n claimRewards: string;\n}\n\nexport function useTutorials(): Tutorials {\n const moonChainKey = useMoonChainKeyParam();\n const baseUrl = 'https://www.youtube.com/watch?v=';\n\n return {\n xcm: `${baseUrl}${\n moonChainKey === moonriver.key ? '8RwCyhvpgIU' : 'ueZ1-SOcGi8'\n }`,\n staking: `${baseUrl}${\n moonChainKey === moonriver.key ? '6z7KMK6V168' : 'vHbKJrGd-qs'\n }`,\n claimRewards: `${baseUrl}TEC9ZuTKFZo`,\n };\n}\n","import { useFeatureByChain } from 'hooks/flags/useFeatureByChain';\n\nexport function useVoteDelegationBaseUrlFlag(): string | undefined {\n return useFeatureByChain('vote_delegation_base_url');\n}\n","import { useVoteDelegationBaseUrlFlag } from 'hooks/flags/useVoteDelegationBaseUrlFlag';\n\ninterface VoteDelegationUrls {\n delegationUrl?: string;\n delegateAddressUrl?: string;\n}\n\nexport function useVoteDelegationUrls(): VoteDelegationUrls {\n const baseUrl = useVoteDelegationBaseUrlFlag();\n\n return {\n delegationUrl: baseUrl ? `${baseUrl}/delegate-tokens` : undefined,\n delegateAddressUrl: baseUrl\n ? `${baseUrl}/profile/{{address}}#statement`\n : undefined,\n };\n}\n","import { coinGeckoIds } from 'configs/coinGecko';\nimport fetchRetry from 'fetch-retry';\nimport ls from 'localstorage-slim';\nimport type { ImportedTokens } from 'recoil/importedTokens';\nimport { FiatCurrencies } from 'types/fiatCurrencies';\nimport { CoinGeckoPricesResponse } from './coingecko.types';\n\nexport function getCoinGeckoIdByAssetKey(\n moonChainKey: string,\n assetKey: string | undefined,\n): string | undefined {\n return assetKey ? coinGeckoIds[moonChainKey]?.[assetKey] : undefined;\n}\n\nexport function getPermanentCoinGeckoIds(): string[] {\n const assetsDicts = Object.values(coinGeckoIds);\n\n return assetsDicts.reduce(\n (assetsList, networkAssets) => [\n ...assetsList,\n ...Object.values(networkAssets),\n ],\n [] as string[],\n );\n}\n\nexport function getImportedCoinGeckoIds(\n importedTokens: ImportedTokens,\n): string[] {\n const importedTokensLists = Object.values(importedTokens);\n\n return importedTokensLists\n .flat()\n .map((token) => token.coinGeckoId || '')\n .filter((id) => id.length);\n}\n\nexport async function getCoinGeckoPrices(\n coinGeckoIds: string[],\n): Promise {\n const url = new URL('https://api.coingecko.com/api/v3/simple/price');\n const dedupedIds = [...new Set(coinGeckoIds)];\n\n url.searchParams.append(\n 'vs_currencies',\n Object.values(FiatCurrencies).join(','),\n );\n\n url.searchParams.append('ids', dedupedIds.join(','));\n\n const cacheKey = url.toString();\n const cachedResponse = ls.get(cacheKey);\n\n if (cachedResponse) return cachedResponse;\n\n // Try needed in CoinGecko might return 429 Too Many Request\n // without Access-Control-Allow-Origin header, making fetch to\n // throw TypeError: Failed to fetch\n // Design pending on how to show the error\n try {\n const response = await fetchRetry(fetch)(url.toString(), {\n retries: 5,\n retryDelay: 10000,\n retryOn: [429, 503],\n });\n\n const pricesResponse = {\n responseOk: response.ok,\n prices: await response.json(),\n };\n\n ls.set(cacheKey, pricesResponse, { ttl: 600 });\n\n return pricesResponse;\n } catch (e) {\n return {\n responseOk: false,\n error: (e as Error).message,\n };\n }\n}\n\nexport async function checkCoinGeckoId(coinGeckoId: string): Promise {\n const url = new URL(`https://api.coingecko.com/api/v3/coins/${coinGeckoId}`);\n\n const response = await fetchRetry(fetch)(url.toString(), {\n retries: 5,\n retryDelay: 8000,\n retryOn: [429, 503],\n });\n\n return response.ok;\n}\n","export * from './coingecko';\n","'use client';\nfunction findClosestNumber(value, numbers) {\n if (numbers.length === 0) {\n return value;\n }\n return numbers.reduce(\n (prev, curr) => Math.abs(curr - value) < Math.abs(prev - value) ? curr : prev\n );\n}\n\nexport { findClosestNumber };\n//# sourceMappingURL=find-closest-number.mjs.map\n","'use client';\nimport 'react';\nimport { createSafeContext } from '../../core/utils/create-safe-context/create-safe-context.mjs';\nimport 'react/jsx-runtime';\nimport '@mantine/hooks';\nimport 'clsx';\nimport '../../core/MantineProvider/Mantine.context.mjs';\nimport '../../core/MantineProvider/default-theme.mjs';\nimport '../../core/MantineProvider/MantineProvider.mjs';\nimport '../../core/MantineProvider/MantineThemeProvider/MantineThemeProvider.mjs';\nimport '../../core/MantineProvider/MantineCssVariables/MantineCssVariables.mjs';\nimport '../../core/Box/Box.mjs';\nimport '../../core/DirectionProvider/DirectionProvider.mjs';\n\nconst [SliderProvider, useSliderContext] = createSafeContext(\n \"SliderProvider was not found in tree\"\n);\n\nexport { SliderProvider, useSliderContext };\n//# sourceMappingURL=Slider.context.mjs.map\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { forwardRef } from 'react';\nimport '@mantine/hooks';\nimport 'clsx';\nimport '../../../core/MantineProvider/Mantine.context.mjs';\nimport '../../../core/MantineProvider/default-theme.mjs';\nimport '../../../core/MantineProvider/MantineProvider.mjs';\nimport '../../../core/MantineProvider/MantineThemeProvider/MantineThemeProvider.mjs';\nimport '../../../core/MantineProvider/MantineCssVariables/MantineCssVariables.mjs';\nimport { Box } from '../../../core/Box/Box.mjs';\nimport '../../../core/DirectionProvider/DirectionProvider.mjs';\nimport { useSliderContext } from '../Slider.context.mjs';\n\nconst SliderRoot = forwardRef(\n ({ size, disabled, variant, color, thumbSize, radius, ...others }, ref) => {\n const { getStyles } = useSliderContext();\n return /* @__PURE__ */ jsx(\n Box,\n {\n tabIndex: -1,\n variant,\n size,\n ref,\n ...getStyles(\"root\"),\n ...others\n }\n );\n }\n);\nSliderRoot.displayName = \"@mantine/core/SliderRoot\";\n\nexport { SliderRoot };\n//# sourceMappingURL=SliderRoot.mjs.map\n","'use client';\nimport { jsxs, jsx } from 'react/jsx-runtime';\nimport { forwardRef, useState } from 'react';\nimport '@mantine/hooks';\nimport 'clsx';\nimport '../../../core/MantineProvider/Mantine.context.mjs';\nimport '../../../core/MantineProvider/default-theme.mjs';\nimport '../../../core/MantineProvider/MantineProvider.mjs';\nimport '../../../core/MantineProvider/MantineThemeProvider/MantineThemeProvider.mjs';\nimport '../../../core/MantineProvider/MantineCssVariables/MantineCssVariables.mjs';\nimport { Box } from '../../../core/Box/Box.mjs';\nimport '../../../core/DirectionProvider/DirectionProvider.mjs';\nimport { Transition } from '../../Transition/Transition.mjs';\nimport { useSliderContext } from '../Slider.context.mjs';\n\nconst Thumb = forwardRef(\n ({\n max,\n min,\n value,\n position,\n label,\n dragging,\n onMouseDown,\n onKeyDownCapture,\n labelTransitionProps,\n labelAlwaysOn,\n thumbLabel,\n onFocus,\n onBlur,\n showLabelOnHover,\n isHovered,\n children = null,\n disabled\n }, ref) => {\n const { getStyles } = useSliderContext();\n const [focused, setFocused] = useState(false);\n const isVisible = labelAlwaysOn || dragging || focused || showLabelOnHover && isHovered;\n return /* @__PURE__ */ jsxs(\n Box,\n {\n tabIndex: 0,\n role: \"slider\",\n \"aria-label\": thumbLabel,\n \"aria-valuemax\": max,\n \"aria-valuemin\": min,\n \"aria-valuenow\": value,\n ref,\n __vars: { \"--slider-thumb-offset\": `${position}%` },\n ...getStyles(\"thumb\", { focusable: true }),\n mod: { dragging, disabled },\n onFocus: (event) => {\n setFocused(true);\n typeof onFocus === \"function\" && onFocus(event);\n },\n onBlur: (event) => {\n setFocused(false);\n typeof onBlur === \"function\" && onBlur(event);\n },\n onTouchStart: onMouseDown,\n onMouseDown,\n onKeyDownCapture,\n onClick: (event) => event.stopPropagation(),\n children: [\n children,\n /* @__PURE__ */ jsx(\n Transition,\n {\n mounted: label != null && !!isVisible,\n transition: \"fade\",\n duration: 0,\n ...labelTransitionProps,\n children: (transitionStyles) => /* @__PURE__ */ jsx(\"div\", { ...getStyles(\"label\", { style: transitionStyles }), children: label })\n }\n )\n ]\n }\n );\n }\n);\nThumb.displayName = \"@mantine/core/SliderThumb\";\n\nexport { Thumb };\n//# sourceMappingURL=Thumb.mjs.map\n","'use client';\nfunction getPosition({ value, min, max }) {\n const position = (value - min) / (max - min) * 100;\n return Math.min(Math.max(position, 0), 100);\n}\n\nexport { getPosition };\n//# sourceMappingURL=get-position.mjs.map\n","'use client';\nfunction isMarkFilled({ mark, offset, value, inverted = false }) {\n return inverted ? typeof offset === \"number\" ? mark.value <= offset || mark.value >= value : mark.value >= value : typeof offset === \"number\" ? mark.value >= offset && mark.value <= value : mark.value <= value;\n}\n\nexport { isMarkFilled };\n//# sourceMappingURL=is-mark-filled.mjs.map\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { createElement } from 'react';\nimport '@mantine/hooks';\nimport 'clsx';\nimport '../../../core/MantineProvider/Mantine.context.mjs';\nimport '../../../core/MantineProvider/default-theme.mjs';\nimport '../../../core/MantineProvider/MantineProvider.mjs';\nimport '../../../core/MantineProvider/MantineThemeProvider/MantineThemeProvider.mjs';\nimport '../../../core/MantineProvider/MantineCssVariables/MantineCssVariables.mjs';\nimport { Box } from '../../../core/Box/Box.mjs';\nimport '../../../core/DirectionProvider/DirectionProvider.mjs';\nimport { useSliderContext } from '../Slider.context.mjs';\nimport { getPosition } from '../utils/get-position/get-position.mjs';\nimport { isMarkFilled } from './is-mark-filled.mjs';\n\nfunction Marks({ marks, min, max, disabled, value, offset, inverted }) {\n const { getStyles } = useSliderContext();\n if (!marks) {\n return null;\n }\n const items = marks.map((mark, index) => /* @__PURE__ */ createElement(\n Box,\n {\n ...getStyles(\"markWrapper\"),\n __vars: { \"--mark-offset\": `${getPosition({ value: mark.value, min, max })}%` },\n key: index\n },\n /* @__PURE__ */ jsx(\n Box,\n {\n ...getStyles(\"mark\"),\n mod: { filled: isMarkFilled({ mark, value, offset, inverted }), disabled }\n }\n ),\n mark.label && /* @__PURE__ */ jsx(\"div\", { ...getStyles(\"markLabel\"), children: mark.label })\n ));\n return /* @__PURE__ */ jsx(\"div\", { children: items });\n}\nMarks.displayName = \"@mantine/core/SliderMarks\";\n\nexport { Marks };\n//# sourceMappingURL=Marks.mjs.map\n","'use client';\nimport { jsx, jsxs } from 'react/jsx-runtime';\nimport 'react';\nimport '@mantine/hooks';\nimport 'clsx';\nimport '../../../core/MantineProvider/Mantine.context.mjs';\nimport '../../../core/MantineProvider/default-theme.mjs';\nimport '../../../core/MantineProvider/MantineProvider.mjs';\nimport '../../../core/MantineProvider/MantineThemeProvider/MantineThemeProvider.mjs';\nimport '../../../core/MantineProvider/MantineCssVariables/MantineCssVariables.mjs';\nimport { Box } from '../../../core/Box/Box.mjs';\nimport '../../../core/DirectionProvider/DirectionProvider.mjs';\nimport { Marks } from '../Marks/Marks.mjs';\nimport { useSliderContext } from '../Slider.context.mjs';\n\nfunction Track({\n filled,\n children,\n offset,\n disabled,\n marksOffset,\n inverted,\n containerProps,\n ...others\n}) {\n const { getStyles } = useSliderContext();\n return /* @__PURE__ */ jsx(Box, { ...getStyles(\"trackContainer\"), mod: { disabled }, ...containerProps, children: /* @__PURE__ */ jsxs(Box, { ...getStyles(\"track\"), mod: { inverted, disabled }, children: [\n /* @__PURE__ */ jsx(\n Box,\n {\n mod: { inverted, disabled },\n __vars: {\n \"--slider-bar-width\": `calc(${filled}% + var(--slider-size))`,\n \"--slider-bar-offset\": `calc(${offset}% - var(--slider-size))`\n },\n ...getStyles(\"bar\")\n }\n ),\n children,\n /* @__PURE__ */ jsx(Marks, { ...others, offset: marksOffset, disabled, inverted })\n ] }) });\n}\nTrack.displayName = \"@mantine/core/SliderTrack\";\n\nexport { Track };\n//# sourceMappingURL=Track.mjs.map\n","'use client';\nfunction getChangeValue({\n value,\n containerWidth,\n min,\n max,\n step,\n precision\n}) {\n const left = !containerWidth ? value : Math.min(Math.max(value, 0), containerWidth) / containerWidth;\n const dx = left * (max - min);\n const nextValue = (dx !== 0 ? Math.round(dx / step) * step : 0) + min;\n const nextValueWithinStep = Math.max(nextValue, min);\n if (precision !== void 0) {\n return Number(nextValueWithinStep.toFixed(precision));\n }\n return nextValueWithinStep;\n}\n\nexport { getChangeValue };\n//# sourceMappingURL=get-change-value.mjs.map\n","'use client';\nfunction getFloatingValue(value, precision) {\n return parseFloat(value.toFixed(precision));\n}\n\nexport { getFloatingValue };\n//# sourceMappingURL=get-gloating-value.mjs.map\n","'use client';\nfunction getPrecision(step) {\n if (!step) {\n return 0;\n }\n const split = step.toString().split(\".\");\n return split.length > 1 ? split[1].length : 0;\n}\n\nexport { getPrecision };\n//# sourceMappingURL=get-precision.mjs.map\n","'use client';\nfunction getNextMarkValue(currentValue, marks) {\n const sortedMarks = [...marks].sort((a, b) => a.value - b.value);\n const nextMark = sortedMarks.find((mark) => mark.value > currentValue);\n return nextMark ? nextMark.value : currentValue;\n}\nfunction getPreviousMarkValue(currentValue, marks) {\n const sortedMarks = [...marks].sort((a, b) => b.value - a.value);\n const previousMark = sortedMarks.find((mark) => mark.value < currentValue);\n return previousMark ? previousMark.value : currentValue;\n}\nfunction getFirstMarkValue(marks) {\n const sortedMarks = [...marks].sort((a, b) => a.value - b.value);\n return sortedMarks.length > 0 ? sortedMarks[0].value : 0;\n}\nfunction getLastMarkValue(marks) {\n const sortedMarks = [...marks].sort((a, b) => a.value - b.value);\n return sortedMarks.length > 0 ? sortedMarks[sortedMarks.length - 1].value : 100;\n}\n\nexport { getFirstMarkValue, getLastMarkValue, getNextMarkValue, getPreviousMarkValue };\n//# sourceMappingURL=get-step-mark-value.mjs.map\n","'use client';\nvar classes = {\"root\":\"m_dd36362e\",\"label\":\"m_c9357328\",\"thumb\":\"m_c9a9a60a\",\"trackContainer\":\"m_a8645c2\",\"track\":\"m_c9ade57f\",\"bar\":\"m_38aeed47\",\"markWrapper\":\"m_b7b0423a\",\"mark\":\"m_dd33bc19\",\"markLabel\":\"m_68c77a5b\"};\n\nexport { classes as default };\n//# sourceMappingURL=Slider.module.css.mjs.map\n","'use client';\nimport { jsx, jsxs } from 'react/jsx-runtime';\nimport { useState, useRef, useCallback } from 'react';\nimport { useUncontrolled, clamp, useMove, useMergedRef } from '@mantine/hooks';\nimport { rem } from '../../../core/utils/units-converters/rem.mjs';\nimport { getSize, getRadius } from '../../../core/utils/get-size/get-size.mjs';\nimport { findClosestNumber } from '../../../core/utils/find-closest-number/find-closest-number.mjs';\nimport { createVarsResolver } from '../../../core/styles-api/create-vars-resolver/create-vars-resolver.mjs';\nimport 'clsx';\nimport { getThemeColor } from '../../../core/MantineProvider/color-functions/get-theme-color/get-theme-color.mjs';\nimport '../../../core/MantineProvider/Mantine.context.mjs';\nimport '../../../core/MantineProvider/default-theme.mjs';\nimport '../../../core/MantineProvider/MantineProvider.mjs';\nimport '../../../core/MantineProvider/MantineThemeProvider/MantineThemeProvider.mjs';\nimport { useProps } from '../../../core/MantineProvider/use-props/use-props.mjs';\nimport '../../../core/MantineProvider/MantineCssVariables/MantineCssVariables.mjs';\nimport { useStyles } from '../../../core/styles-api/use-styles/use-styles.mjs';\nimport '../../../core/Box/Box.mjs';\nimport { factory } from '../../../core/factory/factory.mjs';\nimport { useDirection } from '../../../core/DirectionProvider/DirectionProvider.mjs';\nimport { SliderProvider } from '../Slider.context.mjs';\nimport { SliderRoot } from '../SliderRoot/SliderRoot.mjs';\nimport { Thumb } from '../Thumb/Thumb.mjs';\nimport { Track } from '../Track/Track.mjs';\nimport { getChangeValue } from '../utils/get-change-value/get-change-value.mjs';\nimport { getFloatingValue } from '../utils/get-floating-value/get-gloating-value.mjs';\nimport { getPosition } from '../utils/get-position/get-position.mjs';\nimport { getPrecision } from '../utils/get-precision/get-precision.mjs';\nimport { getLastMarkValue, getFirstMarkValue, getNextMarkValue, getPreviousMarkValue } from '../utils/get-step-mark-value/get-step-mark-value.mjs';\nimport classes from '../Slider.module.css.mjs';\n\nconst defaultProps = {\n radius: \"xl\",\n min: 0,\n max: 100,\n step: 1,\n marks: [],\n label: (f) => f,\n labelTransitionProps: { transition: \"fade\", duration: 0 },\n labelAlwaysOn: false,\n thumbLabel: \"\",\n showLabelOnHover: true,\n disabled: false,\n scale: (v) => v\n};\nconst varsResolver = createVarsResolver(\n (theme, { size, color, thumbSize, radius }) => ({\n root: {\n \"--slider-size\": getSize(size, \"slider-size\"),\n \"--slider-color\": color ? getThemeColor(color, theme) : void 0,\n \"--slider-radius\": radius === void 0 ? void 0 : getRadius(radius),\n \"--slider-thumb-size\": thumbSize !== void 0 ? rem(thumbSize) : \"calc(var(--slider-size) * 2)\"\n }\n })\n);\nconst Slider = factory((_props, ref) => {\n const props = useProps(\"Slider\", defaultProps, _props);\n const {\n classNames,\n styles,\n value,\n onChange,\n onChangeEnd,\n size,\n min,\n max,\n step,\n precision: _precision,\n defaultValue,\n name,\n marks,\n label,\n labelTransitionProps,\n labelAlwaysOn,\n thumbLabel,\n showLabelOnHover,\n thumbChildren,\n disabled,\n unstyled,\n scale,\n inverted,\n className,\n style,\n vars,\n hiddenInputProps,\n restrictToMarks,\n thumbProps,\n ...others\n } = props;\n const getStyles = useStyles({\n name: \"Slider\",\n props,\n classes,\n classNames,\n className,\n styles,\n style,\n vars,\n varsResolver,\n unstyled\n });\n const { dir } = useDirection();\n const [hovered, setHovered] = useState(false);\n const [_value, setValue] = useUncontrolled({\n value: typeof value === \"number\" ? clamp(value, min, max) : value,\n defaultValue: typeof defaultValue === \"number\" ? clamp(defaultValue, min, max) : defaultValue,\n finalValue: clamp(0, min, max),\n onChange\n });\n const valueRef = useRef(_value);\n const root = useRef(null);\n const thumb = useRef(null);\n const position = getPosition({ value: _value, min, max });\n const scaledValue = scale(_value);\n const _label = typeof label === \"function\" ? label(scaledValue) : label;\n const precision = _precision ?? getPrecision(step);\n const handleChange = useCallback(\n ({ x }) => {\n if (!disabled) {\n const nextValue = getChangeValue({\n value: x,\n min,\n max,\n step,\n precision\n });\n setValue(\n restrictToMarks && marks?.length ? findClosestNumber(\n nextValue,\n marks.map((mark) => mark.value)\n ) : nextValue\n );\n valueRef.current = nextValue;\n }\n },\n [disabled, min, max, step, precision, setValue, marks, restrictToMarks]\n );\n const { ref: container, active } = useMove(\n handleChange,\n {\n onScrubEnd: () => !disabled && onChangeEnd?.(\n restrictToMarks && marks?.length ? findClosestNumber(\n valueRef.current,\n marks.map((mark) => mark.value)\n ) : valueRef.current\n )\n },\n dir\n );\n const handleTrackKeydownCapture = (event) => {\n if (!disabled) {\n switch (event.key) {\n case \"ArrowUp\": {\n event.preventDefault();\n thumb.current?.focus();\n if (restrictToMarks && marks) {\n const nextValue2 = getNextMarkValue(_value, marks);\n setValue(nextValue2);\n onChangeEnd?.(nextValue2);\n break;\n }\n const nextValue = getFloatingValue(\n Math.min(Math.max(_value + step, min), max),\n precision\n );\n setValue(nextValue);\n onChangeEnd?.(nextValue);\n break;\n }\n case \"ArrowRight\": {\n event.preventDefault();\n thumb.current?.focus();\n if (restrictToMarks && marks) {\n const nextValue2 = dir === \"rtl\" ? getPreviousMarkValue(_value, marks) : getNextMarkValue(_value, marks);\n setValue(nextValue2);\n onChangeEnd?.(nextValue2);\n break;\n }\n const nextValue = getFloatingValue(\n Math.min(Math.max(dir === \"rtl\" ? _value - step : _value + step, min), max),\n precision\n );\n setValue(nextValue);\n onChangeEnd?.(nextValue);\n break;\n }\n case \"ArrowDown\": {\n event.preventDefault();\n thumb.current?.focus();\n if (restrictToMarks && marks) {\n const nextValue2 = getPreviousMarkValue(_value, marks);\n setValue(nextValue2);\n onChangeEnd?.(nextValue2);\n break;\n }\n const nextValue = getFloatingValue(\n Math.min(Math.max(_value - step, min), max),\n precision\n );\n setValue(nextValue);\n onChangeEnd?.(nextValue);\n break;\n }\n case \"ArrowLeft\": {\n event.preventDefault();\n thumb.current?.focus();\n if (restrictToMarks && marks) {\n const nextValue2 = dir === \"rtl\" ? getNextMarkValue(_value, marks) : getPreviousMarkValue(_value, marks);\n setValue(nextValue2);\n onChangeEnd?.(nextValue2);\n break;\n }\n const nextValue = getFloatingValue(\n Math.min(Math.max(dir === \"rtl\" ? _value + step : _value - step, min), max),\n precision\n );\n setValue(nextValue);\n onChangeEnd?.(nextValue);\n break;\n }\n case \"Home\": {\n event.preventDefault();\n thumb.current?.focus();\n if (restrictToMarks && marks) {\n setValue(getFirstMarkValue(marks));\n onChangeEnd?.(getFirstMarkValue(marks));\n break;\n }\n setValue(min);\n onChangeEnd?.(min);\n break;\n }\n case \"End\": {\n event.preventDefault();\n thumb.current?.focus();\n if (restrictToMarks && marks) {\n setValue(getLastMarkValue(marks));\n onChangeEnd?.(getLastMarkValue(marks));\n break;\n }\n setValue(max);\n onChangeEnd?.(max);\n break;\n }\n }\n }\n };\n return /* @__PURE__ */ jsx(SliderProvider, { value: { getStyles }, children: /* @__PURE__ */ jsxs(\n SliderRoot,\n {\n ...others,\n ref: useMergedRef(ref, root),\n onKeyDownCapture: handleTrackKeydownCapture,\n onMouseDownCapture: () => root.current?.focus(),\n size,\n disabled,\n children: [\n /* @__PURE__ */ jsx(\n Track,\n {\n inverted,\n offset: 0,\n filled: position,\n marks,\n min,\n max,\n value: scaledValue,\n disabled,\n containerProps: {\n ref: container,\n onMouseEnter: showLabelOnHover ? () => setHovered(true) : void 0,\n onMouseLeave: showLabelOnHover ? () => setHovered(false) : void 0\n },\n children: /* @__PURE__ */ jsx(\n Thumb,\n {\n max,\n min,\n value: scaledValue,\n position,\n dragging: active,\n label: _label,\n ref: thumb,\n labelTransitionProps,\n labelAlwaysOn,\n thumbLabel,\n showLabelOnHover,\n isHovered: hovered,\n disabled,\n ...thumbProps,\n children: thumbChildren\n }\n )\n }\n ),\n /* @__PURE__ */ jsx(\"input\", { type: \"hidden\", name, value: scaledValue, ...hiddenInputProps })\n ]\n }\n ) });\n});\nSlider.classes = classes;\nSlider.displayName = \"@mantine/core/Slider\";\n\nexport { Slider };\n//# sourceMappingURL=Slider.mjs.map\n","import { GenericAccountId } from '@polkadot/types';\nimport { useApi } from 'hooks/useApi';\nimport { useApiCall } from 'hooks/useApiCall';\n\nfunction transformSelectedCandidates(data: GenericAccountId[]): string[] {\n return data.map((address) => address.toString());\n}\n\nexport function useSelectedCandidates(): string[] | undefined {\n const api = useApi();\n\n return useApiCall(\n api?.query.parachainStaking.selectedCandidates,\n [],\n transformSelectedCandidates,\n );\n}\n","import { PalletParachainStakingCandidateMetadata } from '@polkadot/types/lookup';\nimport { useApi } from 'hooks/useApi';\nimport { useApiCall } from 'hooks/useApiCall';\n\nexport interface CandidateMetadata {\n bond: bigint;\n delegationCount: number;\n totalCounted: bigint;\n lowestTopDelegationAmount: bigint;\n highestBottomDelegationAmount: bigint;\n lowestBottomDelegationAmount: bigint;\n topCapacity: string;\n bottomCapacity: string;\n}\n\nfunction transformCandidatesInfo(\n data: PalletParachainStakingCandidateMetadata[],\n): CandidateMetadata[] {\n return data.map((info) => ({\n bond: info.bond.toBigInt(),\n delegationCount: info.delegationCount.toNumber(),\n totalCounted: info.totalCounted.toBigInt(),\n lowestTopDelegationAmount: info.lowestTopDelegationAmount.toBigInt(),\n highestBottomDelegationAmount:\n info.highestBottomDelegationAmount.toBigInt(),\n lowestBottomDelegationAmount: info.lowestBottomDelegationAmount.toBigInt(),\n topCapacity: info.topCapacity.toString(),\n bottomCapacity: info.bottomCapacity.toString(),\n }));\n}\n\nexport function useCandidatesInfo(\n candidates?: (string | undefined)[],\n): CandidateMetadata[] | undefined {\n const api = useApi();\n\n return useApiCall(\n api?.query.parachainStaking.candidateInfo.multi,\n [candidates],\n transformCandidatesInfo,\n );\n}\n\nexport function useCandidateInfo(\n candidate?: string,\n): CandidateMetadata | undefined {\n return useCandidatesInfo([candidate])?.at(0);\n}\n","import { PalletParachainStakingSetOrderedSet } from '@polkadot/types/lookup';\nimport { useApi } from 'hooks/useApi';\nimport { useApiCall } from 'hooks/useApiCall';\n\nfunction transformCandidatePool(\n candidatePool: PalletParachainStakingSetOrderedSet,\n): string[] {\n return candidatePool.map((candidate) => candidate.owner.toString());\n}\n\nexport function useCandidatePool(): string[] | undefined {\n const api = useApi();\n\n return useApiCall(\n api?.query.parachainStaking.candidatePool,\n [],\n transformCandidatePool,\n );\n}\n","import { PalletParachainStakingDelegations } from '@polkadot/types/lookup';\nimport { useApi } from 'hooks/useApi';\nimport { useApiCall } from 'hooks/useApiCall';\n\ninterface DelegationTotals {\n topDelegationsTotals?: bigint[];\n bottomDelegationsTotals?: bigint[];\n}\n\nfunction transformDelegationTotal(\n data: PalletParachainStakingDelegations[],\n): bigint[] {\n return data.map((delegations) => delegations.total.toBigInt());\n}\n\nexport function useDelegationsTotal(candidates?: string[]): DelegationTotals {\n const api = useApi();\n\n const topDelegationsTotals = useApiCall(\n api?.query.parachainStaking.topDelegations.multi,\n [candidates],\n transformDelegationTotal,\n );\n\n const bottomDelegationsTotals = useApiCall(\n api?.query.parachainStaking.bottomDelegations.multi,\n [candidates],\n transformDelegationTotal,\n );\n\n return { topDelegationsTotals, bottomDelegationsTotals };\n}\n","import { useApi } from 'hooks/useApi';\nimport { useMemo } from 'react';\n\ninterface StakingParameters {\n minDelegation?: bigint;\n revokeDelegationDelay?: number;\n delegationBondLessDelay?: number;\n maxTopDelegationsPerCandidate?: number;\n rewardPaymentDelay?: number;\n}\n\nexport const safetyAmount = 10_000_000_000_000_000n;\n\nexport function useStakingParameters(): StakingParameters {\n const api = useApi();\n\n return useMemo(\n () => ({\n minDelegation: api?.consts.parachainStaking.minDelegation.toBigInt(),\n revokeDelegationDelay:\n api?.consts.parachainStaking.revokeDelegationDelay.toNumber(),\n delegationBondLessDelay:\n api?.consts.parachainStaking.delegationBondLessDelay.toNumber(),\n maxTopDelegationsPerCandidate:\n api?.consts.parachainStaking.maxTopDelegationsPerCandidate.toNumber(),\n rewardPaymentDelay:\n api?.consts.parachainStaking.rewardPaymentDelay.toNumber(),\n }),\n [api],\n );\n}\n","import { PalletParachainStakingRoundInfo } from '@polkadot/types/lookup';\nimport { useApi } from 'hooks/useApi';\n\nimport { useApiCall } from 'hooks/useApiCall';\n\nexport interface Round {\n first: number;\n current: number;\n length: number;\n}\n\nfunction transformRound(data: PalletParachainStakingRoundInfo): Round {\n return {\n first: data.first.toNumber(),\n current: data.current.toNumber(),\n length: data.length.toNumber(),\n };\n}\n\nexport function useRound(): Round | undefined {\n const api = useApi();\n\n return useApiCall(api?.query.parachainStaking.round, [], transformRound);\n}\n","import { u32 } from '@polkadot/types';\nimport { useRound } from 'hooks/queries/useRound';\nimport { useApi } from 'hooks/useApi';\nimport { useApiCall } from 'hooks/useApiCall';\nimport { useMemo } from 'react';\n\nfunction transformPoints(data: u32[]): number[] {\n return data.map((value) => value.toNumber());\n}\n\nexport function usePoints(candidates?: string[]): number[] | undefined {\n const api = useApi();\n const currentRound = useRound();\n const params = useMemo(\n () => currentRound && candidates?.map((x) => [currentRound.current - 1, x]),\n [currentRound, candidates],\n );\n\n return useApiCall(\n api?.query.parachainStaking.awardedPts.multi,\n [params],\n transformPoints,\n );\n}\n","import {\n CandidateMetadata,\n useCandidatesInfo,\n} from 'hooks/queries/staking/useCandidateInfo';\nimport { useCandidatePool } from 'hooks/queries/staking/useCandidatePool';\nimport { useDelegationsTotal } from 'hooks/queries/staking/useDelegationsTotal';\nimport {\n safetyAmount,\n useStakingParameters,\n} from 'hooks/queries/staking/useStakingParameters';\nimport { CandidateIdentity, useIdentities } from 'hooks/queries/useIdentities';\nimport { usePoints } from 'hooks/queries/usePoints';\nimport { candidateDisplay } from 'utils/text';\n\nexport interface StakingCandidate extends CandidateMetadata {\n address: string;\n minBond: bigint;\n totalBacking: bigint;\n blocksLastRound: number;\n display: string;\n identity?: CandidateIdentity;\n}\n\nexport interface SortType {\n sortBy: keyof StakingCandidate;\n sortAsc: boolean;\n}\n\ninterface TransformStakingCandidatesProps {\n candidates?: string[];\n candidatesInfo?: CandidateMetadata[];\n topDelegationsTotals?: bigint[];\n bottomDelegationsTotals?: bigint[];\n points?: number[];\n identities?: CandidateIdentity[];\n minDelegation?: bigint;\n}\n\nconst transformStakingCandidates = ({\n candidates,\n candidatesInfo,\n topDelegationsTotals,\n bottomDelegationsTotals,\n points,\n identities,\n minDelegation,\n}: TransformStakingCandidatesProps): StakingCandidate[] | undefined => {\n if (\n !candidates ||\n !candidatesInfo ||\n !topDelegationsTotals ||\n !bottomDelegationsTotals ||\n !points ||\n !identities ||\n !minDelegation\n )\n return undefined;\n\n return candidatesInfo.map((info, i) => {\n const minBond =\n info.topCapacity === 'Full'\n ? info.lowestTopDelegationAmount + safetyAmount\n : minDelegation;\n const identity = identities[i];\n const address = candidates[i];\n const totalBacking =\n (topDelegationsTotals[i] || 0n) +\n (bottomDelegationsTotals[i] || 0n) +\n info.bond;\n\n return {\n ...info,\n address,\n minBond,\n totalBacking,\n identity,\n display: candidateDisplay(identity, address),\n blocksLastRound: points[i] / 20,\n };\n });\n};\n\nexport function useStakingCandidates({\n sortBy,\n sortAsc,\n}: SortType): StakingCandidate[] | undefined {\n const candidates = useCandidatePool();\n const candidatesInfo = useCandidatesInfo(candidates);\n const { topDelegationsTotals, bottomDelegationsTotals } =\n useDelegationsTotal(candidates);\n const identities = useIdentities(candidates);\n const points = usePoints(candidates);\n const { minDelegation } = useStakingParameters();\n\n const stakingCandidates = transformStakingCandidates({\n candidates,\n candidatesInfo,\n topDelegationsTotals,\n bottomDelegationsTotals,\n points,\n identities,\n minDelegation,\n });\n\n const order = sortAsc ? 1 : -1;\n\n return stakingCandidates?.sort((a, b) => {\n const aValue =\n typeof a[sortBy] === 'string'\n ? (a[sortBy] as string).toLowerCase()\n : a[sortBy];\n const bValue =\n typeof b[sortBy] === 'string'\n ? (b[sortBy] as string).toLowerCase()\n : b[sortBy];\n\n return (aValue as string | number) < (bValue as string | number)\n ? -order\n : order;\n });\n}\n","import { Box, Group, Text, UnstyledButton } from '@mantine/core';\nimport {\n SortType,\n StakingCandidate,\n} from 'hooks/queries/staking/useStakingCandidates';\nimport { useTranslation } from 'next-i18next';\nimport { Dispatch, SetStateAction } from 'react';\nimport { IoCaretDownOutline, IoCaretUpOutline } from 'react-icons/io5';\n\ninterface Props {\n justify?: 'flex-end';\n property: keyof StakingCandidate;\n label: string;\n sortType: SortType;\n setSortType: Dispatch>;\n}\n\nexport const SortableHeader = ({\n justify,\n property,\n label,\n sortType: { sortBy, sortAsc },\n setSortType,\n}: Props) => {\n const { t } = useTranslation('staking');\n\n const isSortedByProp = sortBy === property;\n\n return (\n \n \n setSortType({\n sortBy: property,\n sortAsc: isSortedByProp ? !sortAsc : true,\n })\n }\n >\n \n \n {sortAsc ? : }\n \n \n {t(label)}\n \n \n \n \n );\n};\n","import { useFlags } from 'flagsmith/react';\nimport { ReactNode } from 'react';\nimport { IoDiamondOutline, IoGameControllerOutline } from 'react-icons/io5';\nimport { parseJson } from 'utils/json';\n\nexport interface StakingCandidatesIndicator {\n name: string;\n message: string;\n addresses: string[];\n icon?: ReactNode;\n}\n\ntype FlagValue = StakingCandidatesIndicator[];\n\nfunction getIndicators(flagValue?: string): StakingCandidatesIndicator[] {\n if (!flagValue) return [];\n\n const indicators: FlagValue = parseJson(flagValue) as FlagValue;\n\n return indicators.map((indicator) => {\n return {\n ...indicator,\n addresses: indicator.addresses.map((address) => address.toLowerCase()),\n icon: indicator.icon ? (\n indicator.icon\n ) : indicator.name === 'lunar_gaming_festival' ? (\n \n ) : (\n // default\n ),\n };\n });\n}\n\nexport function useStakingCandidateIndicators(): StakingCandidatesIndicator[] {\n const { staking_candidate_indicators: flag } = useFlags([\n 'staking_candidate_indicators',\n ]);\n\n try {\n return flag.enabled ? getIndicators(flag.value?.toString()) : [];\n } catch (error) {\n console.error('Error decoding staking candidate indicators', error);\n\n return [];\n }\n}\n","import { PalletParachainStakingDelegator } from '@polkadot/types/lookup';\nimport { useSelectedCandidates } from 'hooks/queries/staking/useSelectedCandidates';\nimport { useApi } from 'hooks/useApi';\nimport { useApiCall } from 'hooks/useApiCall';\nimport { useMoonChainKeyParam } from 'hooks/useMoonChainParam';\nimport { useProxiedOrAddress } from 'hooks/useProxiedOrAddress';\nimport { useEffect, useMemo, useState } from 'react';\n\nexport interface DelegationInfo {\n candidate: string;\n amount: bigint;\n isActive?: boolean;\n}\n\nfunction transformDelegatorState(\n data: PalletParachainStakingDelegator,\n): DelegationInfo[] {\n return data.delegations.map((value) => ({\n candidate: value.owner.toString(),\n amount: value.amount.toBigInt(),\n }));\n}\n\nfunction useDelegations(): DelegationInfo[] | undefined {\n const api = useApi();\n const address = useProxiedOrAddress();\n\n const delegations = useApiCall(\n api?.query.parachainStaking.delegatorState,\n [address],\n transformDelegatorState,\n );\n\n const selectedCandidates = useSelectedCandidates();\n\n return useMemo(\n () =>\n delegations?.map((delegation) => ({\n ...delegation,\n isActive: selectedCandidates?.includes(delegation.candidate),\n })),\n [delegations, selectedCandidates],\n );\n}\n\nexport function useDelegatedCandidates(): string[] | undefined {\n const delegations = useDelegations();\n\n return useMemo(\n () => delegations?.map((delegation) => delegation.candidate),\n [delegations],\n );\n}\n\nexport function useDelegationsList(): DelegationInfo[] | undefined {\n const address = useProxiedOrAddress();\n const delegations = useDelegations();\n const moonChainKey = useMoonChainKeyParam();\n const [delegationsToRender, setDelegationsToRender] = useState<\n DelegationInfo[] | undefined\n >();\n\n // biome-ignore lint/correctness/useExhaustiveDependencies: \n useEffect(() => setDelegationsToRender(undefined), [moonChainKey, address]);\n\n useEffect(() => {\n if (delegations) {\n setDelegationsToRender(\n (prevDelegations: DelegationInfo[] | undefined) => {\n if (\n !prevDelegations ||\n prevDelegations.length >= delegations.length\n ) {\n return delegations;\n }\n\n /**\n * we add this delay of the rendering of the delegations list\n * when a new delegation occurs, to give it time to retrieve the\n * new delegation in topDelegations\n */\n setTimeout(() => {\n setDelegationsToRender(delegations);\n }, 3000);\n\n return prevDelegations;\n },\n );\n }\n }, [delegations]);\n\n return delegationsToRender?.sort((a, b) => Number(b.amount - a.amount));\n}\n","import {\n ActionIcon,\n Group,\n Table,\n Text,\n Tooltip,\n useMantineTheme,\n} from '@mantine/core';\nimport { Avatar } from 'components/Avatar';\nimport { MoonTokenAmount } from 'components/TokenAmount';\nimport { StakingCandidatesIndicator } from 'hooks/flags/useStakingCandidateIndicators';\nimport { StakingCandidate } from 'hooks/queries/staking/useStakingCandidates';\nimport { useTranslation } from 'next-i18next';\nimport { KeyboardEvent, MouseEvent } from 'react';\nimport { IoCheckmarkCircleOutline, IoHelpCircleOutline } from 'react-icons/io5';\nimport classes from './Candidate.module.css';\n\ninterface Props {\n candidate: StakingCandidate;\n isDelegated?: boolean;\n indicators: StakingCandidatesIndicator[];\n onClick: (candidate: StakingCandidate) => void;\n}\n\nexport const Candidate = ({\n candidate,\n isDelegated,\n indicators,\n onClick,\n}: Props) => {\n const {\n address,\n identity,\n bond,\n totalCounted,\n totalBacking,\n delegationCount,\n minBond,\n blocksLastRound,\n display,\n } = candidate;\n const { t } = useTranslation('staking');\n const {\n other: { colors },\n } = useMantineTheme();\n const didProduceBlocks = blocksLastRound > 0;\n\n const handleRowButton = (\n event:\n | KeyboardEvent\n | MouseEvent,\n ): void => {\n if (isDelegated) return;\n\n if ('key' in event && event.key !== 'Enter' && event.key !== ' ') {\n return;\n }\n\n onClick(candidate);\n };\n\n return (\n \n \n \n \n\n \n \n {display}\n \n \n \n \n \n \n {isDelegated && (\n \n \n \n \n \n )}\n {indicators.map((indicator) => (\n \n {indicator.icon}\n \n ))}\n \n \n \n \n \n \n \n \n \n {t('totalBacking')}\n \n \n }\n withArrow\n >\n \n \n \n \n \n \n {delegationCount}\n \n \n \n \n {didProduceBlocks ? (\n blocksLastRound\n ) : (\n \n {blocksLastRound}\n \n )}\n \n \n );\n};\n","import { ScrollArea, Table, Text, TextInput } from '@mantine/core';\nimport cx from 'clsx';\nimport { SortableHeader } from 'components/pages/staking/SelectCandidate/SortableHeader';\nimport { useStakingCandidateIndicators } from 'hooks/flags/useStakingCandidateIndicators';\nimport { useDelegatedCandidates } from 'hooks/queries/staking/useDelegations';\nimport {\n SortType,\n StakingCandidate,\n} from 'hooks/queries/staking/useStakingCandidates';\nimport commonClasses from 'lib/styles/common.module.css';\nimport { useTranslation } from 'next-i18next';\nimport { Dispatch, SetStateAction, useEffect, useState } from 'react';\nimport { IoSearch } from 'react-icons/io5';\nimport { Candidate } from './Candidate';\nimport classes from './CandidateList.module.css';\n\ninterface Props {\n candidates?: StakingCandidate[];\n label: string;\n sortType: SortType;\n setSortType: Dispatch>;\n onClick: (candidate: StakingCandidate) => void;\n}\n\nexport const CandidatesList = ({\n candidates,\n label,\n sortType,\n setSortType,\n onClick,\n}: Props) => {\n const { t } = useTranslation('staking');\n const [filter, setFilter] = useState('');\n const [filteredCandidates, setFilteredCandidates] = useState(candidates);\n const indicators = useStakingCandidateIndicators();\n\n const delegatedCandidates = useDelegatedCandidates();\n\n useEffect(() => {\n setFilteredCandidates(\n candidates?.filter(\n (candidate) =>\n candidate.address.toLowerCase().includes(filter.toLowerCase()) ||\n candidate.identity?.display\n ?.toLowerCase()\n .includes(filter.toLowerCase()),\n ),\n );\n }, [filter, candidates]);\n\n const rows = filteredCandidates?.map((candidate) => {\n const candidateIndicators = indicators.filter((indicator) =>\n indicator.addresses.includes(candidate.address.toLowerCase()),\n );\n\n return (\n \n );\n });\n\n return (\n <>\n \n {t(label)}\n \n setFilter(event.currentTarget.value)}\n leftSection={}\n placeholder={t('searchForCollator')}\n aria-label={t('searchForCollator')}\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 {rows}\n \n \n \n );\n};\n","import { Modal, Tabs } from '@mantine/core';\nimport { useSelectedCandidates } from 'hooks/queries/staking/useSelectedCandidates';\nimport {\n SortType,\n StakingCandidate,\n useStakingCandidates,\n} from 'hooks/queries/staking/useStakingCandidates';\nimport { useTranslation } from 'next-i18next';\nimport { useState } from 'react';\nimport { IoHourglassOutline, IoPeopleOutline } from 'react-icons/io5';\nimport { CandidatesList } from './CandidatesList';\n\nenum Tab {\n Active = 'active',\n Waiting = 'waiting',\n}\n\ninterface Props {\n isOpen: boolean;\n onClose: () => void;\n onSelect: (candidate: StakingCandidate) => void;\n}\n\nexport const SelectCandidateModal = ({ isOpen, onClose, onSelect }: Props) => {\n const { t } = useTranslation('staking');\n const [tab, setTab] = useState(Tab.Active);\n const [sortType, setSortType] = useState({\n sortBy: 'totalCounted',\n sortAsc: true,\n });\n\n const select = (candidate: StakingCandidate) => {\n onSelect(candidate);\n onClose();\n };\n\n const candidates = useStakingCandidates(sortType);\n const selectedCandidates = useSelectedCandidates();\n\n return (\n \n setTab(tab as Tab)}>\n \n }>\n {t('activePool')}\n \n }>\n {t('waitingPool')}\n \n \n \n \n selectedCandidates?.includes(item.address),\n )}\n label={'collatorsInActivePool'}\n sortType={sortType}\n setSortType={setSortType}\n onClick={select}\n />\n \n \n !selectedCandidates?.includes(item.address),\n )}\n label={'collatorsNotInActivePool'}\n sortType={sortType}\n setSortType={setSortType}\n onClick={select}\n />\n \n \n \n );\n};\n","import { Button, Text, useMantineTheme } from '@mantine/core';\nimport { Jazzicon } from 'components/Jazzicon';\nimport { StakingCandidate } from 'hooks/queries/staking/useStakingCandidates';\nimport { useAddress } from 'hooks/useAddress';\nimport { useIsMounted } from 'hooks/useIsMounted';\nimport { useThemeColors } from 'hooks/useThemeColors';\nimport { useTranslation } from 'next-i18next';\nimport { useState } from 'react';\nimport { IoChevronForwardSharp } from 'react-icons/io5';\nimport classes from './SelectCandidate.module.css';\nimport { SelectCandidateModal } from './SelectCandidateModal';\n\ninterface Props {\n selectedCandidate?: StakingCandidate;\n isLoading: boolean;\n onSelect: (candidate: StakingCandidate) => void;\n}\n\nexport const SelectCandidate = ({\n selectedCandidate,\n isLoading,\n onSelect,\n}: Props) => {\n const { t } = useTranslation('staking');\n const theme = useMantineTheme();\n const [isModalOpen, setIsModalOpen] = useState(false);\n const address = useAddress();\n const isMounted = useIsMounted();\n const { themeColors } = useThemeColors();\n\n return (\n <>\n setIsModalOpen(false)}\n onSelect={onSelect}\n />\n setIsModalOpen(true)}\n px={theme.spacing.sm}\n rightSection={}\n disabled={isLoading || (isMounted && !address)}\n size={'md'}\n mb={'xs'}\n >\n {selectedCandidate && (\n \n )}\n \n {selectedCandidate?.display || t('selectCollator')}\n \n \n \n );\n};\n","export * from './SelectCandidate';\n","import {\n Checkbox,\n Group,\n Modal,\n Stack,\n Text,\n useMantineTheme,\n} from '@mantine/core';\nimport { useLocalStorage } from '@mantine/hooks';\nimport { DelegateVotes } from 'components/pages/open-gov/DelegateVote';\nimport { useMoonChain } from 'hooks/useMoonChainConfig';\nimport { useTranslation } from 'next-i18next';\nimport { PiShootingStar } from 'react-icons/pi';\n\ninterface Props {\n amount: string;\n isOpen: boolean;\n onClose: () => void;\n}\n\nexport function VoteDelegationModal({ isOpen, amount, onClose }: Props) {\n const { t } = useTranslation('staking');\n const { nativeAsset } = useMoonChain();\n const {\n other: { colors },\n } = useMantineTheme();\n const [dismissVoteDelegationModal, setDismissVoteDelegationModal] =\n useLocalStorage({\n defaultValue: false,\n key: 'dismiss_vote_delegation_modal',\n });\n\n return (\n \n \n {t('congratulations!')}\n \n }\n styles={{\n content: {\n padding: 10,\n },\n }}\n centered\n >\n \n \n {t('voteDelegationModalMessage.lineOne', {\n amount,\n symbol: nativeAsset.originSymbol,\n })}\n \n {t('voteDelegationModalMessage.lineTwo')}\n {t('voteDelegationModalMessage.lineThree')}\n \n \n \n setDismissVoteDelegationModal(event.currentTarget.checked)\n }\n label={t('common:doNotShowThisAgain')}\n />\n \n \n \n );\n}\n","import { useApi } from 'hooks/useApi';\nimport { useApiCall } from 'hooks/useApiCall';\n\n// TODO extract from moonbeam types?\ninterface PalletParachainStakingAutoCompoundAutoCompoundConfig {\n delegator: string;\n value: number;\n}\n\nfunction transformCount(\n values: PalletParachainStakingAutoCompoundAutoCompoundConfig[],\n): number {\n return values.length;\n}\n\nexport function useAutoCompoundingDelegationsCount(address?: string): number {\n const api = useApi();\n\n return (\n useApiCall(\n api?.query.parachainStaking.autoCompoundingDelegations,\n [address],\n transformCount,\n ) || 0\n );\n}\n","import { PalletParachainStakingDelegator } from '@polkadot/types/lookup';\nimport { useApi } from 'hooks/useApi';\nimport { useApiCall } from 'hooks/useApiCall';\nimport { useProxiedOrAddress } from 'hooks/useProxiedOrAddress';\n\nfunction transformCount(values: PalletParachainStakingDelegator): number {\n return values.delegations.length;\n}\n\nexport function useDelegationsCount(): number {\n const api = useApi();\n const address = useProxiedOrAddress();\n\n return (\n useApiCall(\n api?.query.parachainStaking.delegatorState,\n [address],\n transformCount,\n ) || 0\n );\n}\n","export const ABI = [\n {\n inputs: [],\n name: 'cancelCandidateBondLess',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'candidate',\n type: 'address',\n },\n ],\n name: 'cancelDelegationRequest',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'uint256',\n name: 'candidateCount',\n type: 'uint256',\n },\n ],\n name: 'cancelLeaveCandidates',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [],\n name: 'cancelLeaveDelegators',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'uint256',\n name: 'more',\n type: 'uint256',\n },\n ],\n name: 'candidateBondMore',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [],\n name: 'candidateCount',\n outputs: [\n {\n internalType: 'uint256',\n name: '',\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'candidate',\n type: 'address',\n },\n ],\n name: 'candidateDelegationCount',\n outputs: [\n {\n internalType: 'uint256',\n name: '',\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'candidate',\n type: 'address',\n },\n ],\n name: 'candidateExitIsPending',\n outputs: [\n {\n internalType: 'bool',\n name: '',\n type: 'bool',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'candidate',\n type: 'address',\n },\n ],\n name: 'candidateRequestIsPending',\n outputs: [\n {\n internalType: 'bool',\n name: '',\n type: 'bool',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'candidate',\n type: 'address',\n },\n {\n internalType: 'uint256',\n name: 'amount',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'candidateDelegationCount',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'delegatorDelegationCount',\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: 'candidate',\n type: 'address',\n },\n {\n internalType: 'uint256',\n name: 'amount',\n type: 'uint256',\n },\n {\n internalType: 'uint8',\n name: 'autoCompound',\n type: 'uint8',\n },\n {\n internalType: 'uint256',\n name: 'candidateDelegationCount',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'candidateAutoCompoundingDelegationCount',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'delegatorDelegationCount',\n type: 'uint256',\n },\n ],\n name: 'delegateWithAutoCompound',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'delegator',\n type: 'address',\n },\n {\n internalType: 'address',\n name: 'candidate',\n type: 'address',\n },\n ],\n name: 'delegationAutoCompound',\n outputs: [\n {\n internalType: 'uint8',\n name: '',\n type: 'uint8',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'delegator',\n type: 'address',\n },\n {\n internalType: 'address',\n name: 'candidate',\n type: 'address',\n },\n ],\n name: 'delegationRequestIsPending',\n outputs: [\n {\n internalType: 'bool',\n name: '',\n type: 'bool',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'candidate',\n type: 'address',\n },\n {\n internalType: 'uint256',\n name: 'more',\n type: 'uint256',\n },\n ],\n name: 'delegatorBondMore',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'delegator',\n type: 'address',\n },\n ],\n name: 'delegatorDelegationCount',\n outputs: [\n {\n internalType: 'uint256',\n name: '',\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'candidate',\n type: 'address',\n },\n ],\n name: 'executeCandidateBondLess',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'delegator',\n type: 'address',\n },\n {\n internalType: 'address',\n name: 'candidate',\n type: 'address',\n },\n ],\n name: 'executeDelegationRequest',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'candidate',\n type: 'address',\n },\n {\n internalType: 'uint256',\n name: 'candidateDelegationCount',\n type: 'uint256',\n },\n ],\n name: 'executeLeaveCandidates',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'delegator',\n type: 'address',\n },\n {\n internalType: 'uint256',\n name: 'delegatorDelegationCount',\n type: 'uint256',\n },\n ],\n name: 'executeLeaveDelegators',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [],\n name: 'goOffline',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [],\n name: 'goOnline',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'candidate',\n type: 'address',\n },\n ],\n name: 'isCandidate',\n outputs: [\n {\n internalType: 'bool',\n name: '',\n type: 'bool',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'delegator',\n type: 'address',\n },\n ],\n name: 'isDelegator',\n outputs: [\n {\n internalType: 'bool',\n name: '',\n type: 'bool',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'candidate',\n type: 'address',\n },\n ],\n name: 'isSelectedCandidate',\n outputs: [\n {\n internalType: 'bool',\n name: '',\n type: 'bool',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'uint256',\n name: 'amount',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'candidateCount',\n type: 'uint256',\n },\n ],\n name: 'joinCandidates',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [],\n name: 'minDelegation',\n outputs: [\n {\n internalType: 'uint256',\n name: '',\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'uint256',\n name: 'round',\n type: 'uint256',\n },\n ],\n name: 'points',\n outputs: [\n {\n internalType: 'uint256',\n name: '',\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [],\n name: 'round',\n outputs: [\n {\n internalType: 'uint256',\n name: '',\n type: 'uint256',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'uint256',\n name: 'less',\n type: 'uint256',\n },\n ],\n name: 'scheduleCandidateBondLess',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'candidate',\n type: 'address',\n },\n {\n internalType: 'uint256',\n name: 'less',\n type: 'uint256',\n },\n ],\n name: 'scheduleDelegatorBondLess',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'uint256',\n name: 'candidateCount',\n type: 'uint256',\n },\n ],\n name: 'scheduleLeaveCandidates',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [],\n name: 'scheduleLeaveDelegators',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'candidate',\n type: 'address',\n },\n ],\n name: 'scheduleRevokeDelegation',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n {\n inputs: [],\n name: 'selectedCandidates',\n outputs: [\n {\n internalType: 'address[]',\n name: '',\n type: 'address[]',\n },\n ],\n stateMutability: 'view',\n type: 'function',\n },\n {\n inputs: [\n {\n internalType: 'address',\n name: 'candidate',\n type: 'address',\n },\n {\n internalType: 'uint8',\n name: 'value',\n type: 'uint8',\n },\n {\n internalType: 'uint256',\n name: 'candidateAutoCompoundingDelegationCount',\n type: 'uint256',\n },\n {\n internalType: 'uint256',\n name: 'delegatorDelegationCount',\n type: 'uint256',\n },\n ],\n name: 'setAutoCompound',\n outputs: [],\n stateMutability: 'nonpayable',\n type: 'function',\n },\n] as const;\n","import { ABI } from 'services/contracts/StakingContract/StakingABI';\n\nexport const STAKING_CONTRACT_ADDRESS =\n '0x0000000000000000000000000000000000000800';\n\nexport const StakingContractABI = ABI;\n","import {\n UseWriteContractAndConfirmReturnType,\n useWriteContractAndConfirm,\n} from 'hooks/contracts/useWriteContractAndConfirm';\nimport { TransactionAction } from 'hooks/notifications/useWalletNotifications';\nimport { useAutoCompoundingDelegationsCount } from 'hooks/queries/staking/useAutoCompoundingDelegationsCount';\nimport { useDelegationsCount } from 'hooks/queries/staking/useDelegationsCount';\nimport { StakingCandidate } from 'hooks/queries/staking/useStakingCandidates';\nimport {\n STAKING_CONTRACT_ADDRESS,\n StakingContractABI,\n} from 'services/contracts/StakingContract/constants';\nimport { StakingFunctions } from 'types/contracts/functions';\nimport { parseEther } from 'viem';\n\ninterface UseDelegateParams {\n candidate?: StakingCandidate;\n amount: string | undefined;\n autoCompoundingPercentage: number;\n onSuccess?: VoidFunction;\n onSent?: VoidFunction;\n}\n\nconst action = TransactionAction.STAKING_DELEGATION;\n\nexport function useDelegate({\n candidate,\n amount,\n autoCompoundingPercentage,\n onSuccess,\n onSent,\n}: UseDelegateParams): UseWriteContractAndConfirmReturnType {\n const candidateAddress = candidate?.address;\n\n const candidateAutoCompoundingDelegationCount =\n useAutoCompoundingDelegationsCount(candidateAddress);\n const delegatorDelegationCount = useDelegationsCount();\n const args = [\n candidateAddress,\n parseEther(amount || '0'),\n autoCompoundingPercentage,\n candidate?.delegationCount,\n // +5 to avoid failing in case two different accounts are trying\n // to delegate the same candidate at the same block.\n candidateAutoCompoundingDelegationCount + 5,\n delegatorDelegationCount,\n ];\n\n return useWriteContractAndConfirm({\n action,\n allowProxy: true,\n contractAddress: STAKING_CONTRACT_ADDRESS,\n contractAbi: StakingContractABI,\n functionName: StakingFunctions.DELEGATE_WITH_AUTO_COMPOUND,\n args,\n onConfirmed: onSuccess,\n onSent,\n });\n}\n","import { useMoonBalances } from 'hooks/queries/balances/useMoonChainBalances';\nimport { useMaxAmount } from 'hooks/useMaxAmount';\nimport { useProxiedOrAddress } from 'hooks/useProxiedOrAddress';\n\nexport const useMaxAmountStaking = (): {\n maxAmount: bigint | undefined;\n maxInput: string | undefined;\n} => {\n const address = useProxiedOrAddress();\n const balances = useMoonBalances(address);\n\n return useMaxAmount(balances?.availableForStaking);\n};\n","import { Card, Group, Loader, Slider, Stack, Text, Title } from '@mantine/core';\nimport { useDidUpdate, useLocalStorage } from '@mantine/hooks';\nimport Big from 'big.js';\nimport { ActionCallButton } from 'components/ActionCallButton';\nimport { AssetAmountInput } from 'components/AssetAmountInput';\nimport { InfoBlock, InfoLine } from 'components/InfoBlock';\nimport { InputError } from 'components/InputError';\nimport { SelectCandidate } from 'components/pages/staking/SelectCandidate';\nimport { VoteDelegationModal } from 'components/pages/staking/Stake/VoteDelegationModal';\nimport { useDelegate } from 'hooks/contracts/staking/useDelegate';\nimport { StakingCandidate } from 'hooks/queries/staking/useStakingCandidates';\nimport { useStakingParameters } from 'hooks/queries/staking/useStakingParameters';\nimport { useMaxAmountStaking } from 'hooks/useMaxAmountStaking';\nimport { useIsWideTablet } from 'hooks/useMedia';\nimport { useMoonChain } from 'hooks/useMoonChainConfig';\nimport { useProxiedOrAddress } from 'hooks/useProxiedOrAddress';\nimport { useMoonChainToDecimals } from 'hooks/useToDecimal';\nimport { useVoteDelegationUrls } from 'hooks/useVoteDelegationUrls';\nimport { useValidateMoonChainAmount } from 'hooks/validation/useValidateAmount';\nimport { useTranslation } from 'next-i18next';\nimport { useRouter } from 'next/router';\nimport { useCallback, useEffect, useState } from 'react';\nimport { useProxiedAddress } from 'recoil/proxiedAddress';\nimport classes from './Staking.module.css';\n\nexport const Stake = () => {\n const { t } = useTranslation('staking');\n const { nativeAsset } = useMoonChain();\n const { delegationUrl } = useVoteDelegationUrls();\n const isWideTablet = useIsWideTablet();\n const router = useRouter();\n const address = useProxiedOrAddress();\n const { proxiedAddress } = useProxiedAddress();\n const [amount, setAmount] = useState('');\n const [sentAmount, setSentAmount] = useState('');\n const [selectedCandidate, setSelectedCandidate] =\n useState();\n const [showVoteDelegationModal, setShowVoteDelegationModal] = useState(false);\n const [autoCompoundingPercentage, setAutoCompoundingPercentage] =\n useState(100);\n const [dismissVoteDelegationModal] = useLocalStorage({\n key: 'dismiss_vote_delegation_modal',\n });\n\n const { minDelegation } = useStakingParameters();\n const minAmount = selectedCandidate?.minBond || minDelegation;\n const { maxAmount, maxInput } = useMaxAmountStaking();\n const minInput = useMoonChainToDecimals(minAmount, 2, true, Big.roundUp);\n\n const [validatedAmount, amountError] = useValidateMoonChainAmount({\n amount,\n minAmount,\n maxAmount,\n });\n\n const onSuccess =\n delegationUrl && !dismissVoteDelegationModal\n ? () => {\n setShowVoteDelegationModal(true);\n }\n : undefined;\n\n const { writeContract, isSuccess, isPending } = useDelegate({\n candidate: selectedCandidate,\n amount: validatedAmount,\n autoCompoundingPercentage,\n onSuccess,\n onSent() {\n setAmount('');\n },\n });\n\n const clean = useCallback(() => {\n setSelectedCandidate(undefined);\n setAutoCompoundingPercentage(100);\n setAmount('');\n }, []);\n\n const onStake = () => {\n if (!validatedAmount) {\n return;\n }\n\n setSentAmount(validatedAmount);\n writeContract();\n };\n\n useDidUpdate(clean, [clean, address]);\n\n // biome-ignore lint/correctness/useExhaustiveDependencies: \n useEffect(() => router.events.on('routeChangeStart', clean), [clean]);\n\n useEffect(() => {\n if (isSuccess) {\n clean();\n }\n }, [isSuccess, clean]);\n\n const buttonName = proxiedAddress ? t('stakeAsProxy') : t('stake');\n\n return (\n <>\n setShowVoteDelegationModal(false)}\n />\n \n \n \n {t('stake')}\n \n \n \n setAmount(e.currentTarget.value)}\n />\n }\n info={\n \n minInput && setAmount(minInput)}\n isLoading={isPending}\n />\n maxInput && setAmount(maxInput)}\n isLoading={isPending}\n />\n \n }\n />\n {selectedCandidate != null && }\n \n\n \n \n {t('setAutoCompoundingForRewards')}\n \n \n \n\n \n \n {isPending ? : buttonName}\n \n \n \n \n \n );\n};\n","export * from './Stake';\n","import { PalletParachainStakingDelegationRequestsScheduledRequest } from '@polkadot/types/lookup';\nimport { useLatestBlock } from 'hooks/queries/useLatestBlock';\nimport { useRound } from 'hooks/queries/useRound';\nimport { useApi } from 'hooks/useApi';\nimport { useApiCall } from 'hooks/useApiCall';\nimport { useBlockRemainingTime } from 'hooks/useBlockTime';\nimport { useProxiedOrAddress } from 'hooks/useProxiedOrAddress';\nimport { useMemo } from 'react';\nimport { isAddressEqual } from 'utils/text';\n\nexport enum DelegationAction {\n AUTO_COMPOUND = 'Auto-compound',\n BOND = 'Bond',\n DECREASE = 'Decrease',\n REVOKE = 'Revoke',\n}\n\nexport interface ScheduledRequest {\n delegator: string;\n whenExecutable: number;\n action?: {\n action: DelegationAction;\n amount?: bigint;\n };\n}\n\nfunction transformDelegationRequests(\n data: PalletParachainStakingDelegationRequestsScheduledRequest[],\n): ScheduledRequest[] {\n return data.map(({ delegator, whenExecutable, action }) => ({\n delegator: delegator.toString(),\n whenExecutable: whenExecutable.toNumber(),\n action: action.isRevoke\n ? { action: DelegationAction.REVOKE }\n : action.isDecrease\n ? {\n action: DelegationAction.DECREASE,\n amount: action.asDecrease.toBigInt(),\n }\n : undefined,\n }));\n}\n\nexport function useDelegationScheduledRequests(\n candidate?: string,\n): ScheduledRequest | undefined {\n const api = useApi();\n const address = useProxiedOrAddress();\n\n const candidateRequests = useApiCall(\n api?.query.parachainStaking.delegationScheduledRequests,\n [candidate],\n transformDelegationRequests,\n );\n\n return useMemo(\n () =>\n candidateRequests?.find((request) =>\n isAddressEqual(request.delegator, address),\n ),\n [address, candidateRequests],\n );\n}\n\nexport function useScheduledRequestRemainingTime(\n request?: ScheduledRequest,\n): string | undefined {\n const round = useRound();\n const latestBlock = useLatestBlock();\n const targetRound = request?.whenExecutable;\n\n const targetBlock =\n targetRound && latestBlock && round\n ? latestBlock +\n (targetRound - round.current) * round.length -\n (latestBlock - round.first)\n : 0;\n\n return useBlockRemainingTime(targetBlock);\n}\n","import { Option, Vec } from '@polkadot/types';\nimport {\n PalletParachainStakingBond,\n PalletParachainStakingDelegations,\n} from '@polkadot/types/lookup';\nimport { useQuery } from '@tanstack/react-query';\nimport { useCandidateInfo } from 'hooks/queries/staking/useCandidateInfo';\nimport {\n ScheduledRequest,\n useDelegationScheduledRequests,\n} from 'hooks/queries/staking/useDelegationScheduledRequests';\nimport {\n safetyAmount,\n useStakingParameters,\n} from 'hooks/queries/staking/useStakingParameters';\nimport { CandidateIdentity, useIdentity } from 'hooks/queries/useIdentities';\nimport { useApi } from 'hooks/useApi';\nimport { useProxiedOrAddress } from 'hooks/useProxiedOrAddress';\nimport { useMemo } from 'react';\nimport { isAddressEqual } from 'utils/text';\n\ninterface DelegationMetadata {\n identity: CandidateIdentity;\n minDelegation?: bigint;\n isInTopDelegations: boolean;\n scheduledRequests?: ScheduledRequest;\n}\n\nfunction transformTopDelegations(\n data: Option,\n): Vec {\n return data.unwrapOrDefault().delegations;\n}\n\nexport function useDelegationInfo(candidate: string): DelegationMetadata {\n const address = useProxiedOrAddress();\n const identity = useIdentity(candidate);\n const candidateInfo = useCandidateInfo(candidate);\n const topDelegations = useTopDelegations(candidate);\n const { minDelegation: minDelegationBond } = useStakingParameters();\n\n const minDelegation =\n candidateInfo && candidateInfo.bottomCapacity !== 'Empty'\n ? candidateInfo.lowestTopDelegationAmount + safetyAmount\n : minDelegationBond;\n\n const isInTopDelegations = useMemo(\n () =>\n topDelegations\n ? !!topDelegations\n .reverse()\n .find((d) => isAddressEqual(d.owner.toString(), address))\n : true,\n [address, topDelegations],\n );\n\n const scheduledRequests = useDelegationScheduledRequests(candidate);\n\n return {\n identity,\n minDelegation,\n isInTopDelegations,\n scheduledRequests,\n };\n}\n\nfunction useTopDelegations(\n candidate?: string,\n): Vec | undefined {\n const api = useApi();\n\n const { data } = useQuery({\n queryKey: ['topDelegations', candidate],\n queryFn: async () => {\n const res = (await api?.query.parachainStaking.topDelegations(\n candidate,\n )) as Option;\n\n return res ? transformTopDelegations(res) : undefined;\n },\n refetchInterval: 5000,\n enabled: !!api,\n });\n\n return data;\n}\n","import { waitForTransactionReceipt } from '@wagmi/core';\nimport {\n UseWriteContractAndConfirmReturnType,\n useWriteContractAndConfirm,\n} from 'hooks/contracts/useWriteContractAndConfirm';\nimport {\n TransactionAction,\n useWalletNotifications,\n} from 'hooks/notifications/useWalletNotifications';\nimport { Dispatch, SetStateAction, useEffect } from 'react';\nimport {\n STAKING_CONTRACT_ADDRESS,\n StakingContractABI,\n} from 'services/contracts/StakingContract/constants';\nimport { StakingFunctions } from 'types/contracts/functions';\nimport { useConfig } from 'wagmi';\n\ninterface BaseProps {\n setIsLoading: Dispatch>;\n close?: VoidFunction;\n}\n\nexport interface ActionProps extends BaseProps {\n candidate: string;\n}\n\ntype DelegationActionFunctions = Exclude<\n StakingFunctions,\n StakingFunctions.DELEGATE_WITH_AUTO_COMPOUND\n>;\n\ninterface Props extends BaseProps {\n functionName: DelegationActionFunctions;\n action: TransactionAction;\n args: unknown[] | undefined;\n}\n\nexport function useDelegationAction({\n setIsLoading,\n args,\n action,\n functionName,\n close,\n}: Props): UseWriteContractAndConfirmReturnType {\n const config = useConfig();\n const { notifyTransactionConfirmed, notifyTransactionError } =\n useWalletNotifications(action);\n const writeContractReturn = useWriteContractAndConfirm({\n action,\n allowProxy: true,\n contractAddress: STAKING_CONTRACT_ADDRESS,\n contractAbi: StakingContractABI,\n functionName: functionName,\n args,\n onSent() {\n setIsLoading(true);\n close?.();\n },\n onFetched() {\n setIsLoading(false);\n },\n });\n const { data } = writeContractReturn;\n\n useEffect(() => {\n if (!data) return;\n\n /**\n * Becuase the Action Components are unmounted\n * useWaitForTransactionReceipt does not work in this case\n * so we add this particular wait\n */\n waitForTransactionReceipt(config, { hash: data })\n .then((tx) => {\n if (tx.status === 'success') {\n notifyTransactionConfirmed(tx.transactionHash);\n }\n })\n .catch((error) => {\n notifyTransactionError(error);\n })\n .finally(() => setIsLoading(false));\n }, [\n config,\n data,\n notifyTransactionConfirmed,\n notifyTransactionError,\n setIsLoading,\n ]);\n\n return writeContractReturn;\n}\n","import { UseWriteContractAndConfirmReturnType } from 'hooks/contracts/useWriteContractAndConfirm';\nimport { TransactionAction } from 'hooks/notifications/useWalletNotifications';\nimport { StakingFunctions } from 'types/contracts/functions';\nimport { ActionProps, useDelegationAction } from './useDelegationAction';\n\nexport function useCancelDelegationRequest({\n candidate,\n setIsLoading,\n}: ActionProps): UseWriteContractAndConfirmReturnType {\n return useDelegationAction({\n functionName: StakingFunctions.CANCEL,\n action: TransactionAction.CANCEL_REQUEST,\n args: [candidate],\n setIsLoading,\n });\n}\n","import { ActionIcon, Tooltip } from '@mantine/core';\nimport { useCancelDelegationRequest } from 'hooks/contracts/staking/useCancelDelegationRequest';\nimport { useGaEvents } from 'hooks/useSendButtonClickedEvent';\nimport { useTranslation } from 'next-i18next';\nimport { IoCloseOutline } from 'react-icons/io5';\nimport { ICON_SIZE, ScheduledActionComponentProps } from './Actions';\n\nexport const CancelRequest = ({\n setIsLoading,\n candidate,\n}: ScheduledActionComponentProps) => {\n const { t } = useTranslation('staking');\n const { sendButtonClickedEvent } = useGaEvents();\n\n const { writeContract, isPending } = useCancelDelegationRequest({\n candidate,\n setIsLoading,\n });\n\n return (\n \n {\n writeContract();\n sendButtonClickedEvent('staking:cancelRequest');\n }}\n data-testid={`delegation-action-cancel`}\n loading={isPending}\n >\n \n \n \n );\n};\n","import { UseWriteContractAndConfirmReturnType } from 'hooks/contracts/useWriteContractAndConfirm';\nimport { TransactionAction } from 'hooks/notifications/useWalletNotifications';\nimport { useProxiedOrAddress } from 'hooks/useProxiedOrAddress';\nimport { StakingFunctions } from 'types/contracts/functions';\nimport { ActionProps, useDelegationAction } from './useDelegationAction';\n\nexport function useExecuteDelegationRequest({\n candidate,\n setIsLoading,\n}: ActionProps): UseWriteContractAndConfirmReturnType {\n const address = useProxiedOrAddress();\n\n return useDelegationAction({\n functionName: StakingFunctions.EXECUTE,\n action: TransactionAction.EXECUTION,\n args: [address, candidate],\n setIsLoading,\n });\n}\n","import { ActionIcon, Tooltip } from '@mantine/core';\nimport { useExecuteDelegationRequest } from 'hooks/contracts/staking/useExecuteDelegationRequest';\nimport { useGaEvents } from 'hooks/useSendButtonClickedEvent';\nimport { useTranslation } from 'next-i18next';\nimport { IoCheckmarkOutline } from 'react-icons/io5';\nimport { ICON_SIZE, ScheduledActionComponentProps } from './Actions';\n\nexport const ExecuteRequest = ({\n candidate,\n setIsLoading,\n disabled,\n}: ScheduledActionComponentProps) => {\n const { t } = useTranslation('staking');\n const { sendButtonClickedEvent } = useGaEvents();\n\n const { writeContract, isPending } = useExecuteDelegationRequest({\n candidate,\n setIsLoading,\n });\n\n return (\n \n {\n writeContract?.();\n sendButtonClickedEvent('staking:executeRequest');\n }}\n data-testid={\n disabled\n ? `delegation-action-execute-disabled`\n : `delegation-action-execute`\n }\n >\n \n \n \n );\n};\n","import { Group, Loader } from '@mantine/core';\nimport { CancelRequest } from 'components/pages/staking/StakingSummary/Actions/CancelRequest';\nimport { ExecuteRequest } from 'components/pages/staking/StakingSummary/Actions/ExecuteRequest';\nimport { ActionProps } from 'hooks/contracts/staking/useDelegationAction';\nimport {\n ScheduledRequest,\n useScheduledRequestRemainingTime,\n} from 'hooks/queries/staking/useDelegationScheduledRequests';\nimport { useState } from 'react';\nimport { AutoCompounding, Bond, Decrease, Revoke } from '.';\n\nexport const ICON_SIZE = 25;\n\ninterface Props {\n candidate: string;\n delegationAmount: bigint;\n request?: ScheduledRequest;\n}\n\nexport type ActionComponentProps = Omit;\n\nexport interface ScheduledActionComponentProps extends ActionComponentProps {\n disabled: boolean;\n request?: ScheduledRequest;\n}\n\nexport const Actions = ({ candidate, request, delegationAmount }: Props) => {\n const executeRemainingTime = useScheduledRequestRemainingTime(request);\n const [isLoading, setIsLoading] = useState(false);\n\n return (\n \n {isLoading && }\n {!isLoading && (\n <>\n {request && (\n <>\n \n \n \n )}\n {!request && (\n <>\n \n \n \n \n \n )}\n \n )}\n \n );\n};\n","import { getBlockNumber as viem_getBlockNumber, } from 'viem/actions';\nimport { getAction } from '../utils/getAction.js';\n/** https://wagmi.sh/core/api/actions/getBlockNumber */\nexport function getBlockNumber(config, parameters = {}) {\n const { chainId, ...rest } = parameters;\n const client = config.getClient({ chainId });\n const action = getAction(client, viem_getBlockNumber, 'getBlockNumber');\n return action(rest);\n}\n//# sourceMappingURL=getBlockNumber.js.map","import { getBlockNumber, } from '../actions/getBlockNumber.js';\nimport { filterQueryOptions } from './utils.js';\nexport function getBlockNumberQueryOptions(config, options = {}) {\n return {\n gcTime: 0,\n async queryFn({ queryKey }) {\n const { scopeKey: _, ...parameters } = queryKey[1];\n const blockNumber = await getBlockNumber(config, parameters);\n return blockNumber ?? null;\n },\n queryKey: getBlockNumberQueryKey(options),\n };\n}\nexport function getBlockNumberQueryKey(options = {}) {\n return ['blockNumber', filterQueryOptions(options)];\n}\n//# sourceMappingURL=getBlockNumber.js.map","import { watchBlockNumber as viem_watchBlockNumber, } from 'viem/actions';\nimport { getAction } from '../utils/getAction.js';\n// TODO: wrap in viem's `observe` to avoid duplicate invocations.\n/** https://wagmi.sh/core/api/actions/watchBlockNumber */\nexport function watchBlockNumber(config, parameters) {\n const { syncConnectedChain = config._internal.syncConnectedChain, ...rest } = parameters;\n let unwatch;\n const listener = (chainId) => {\n if (unwatch)\n unwatch();\n const client = config.getClient({ chainId });\n const action = getAction(client, viem_watchBlockNumber, 'watchBlockNumber');\n unwatch = action(rest);\n return unwatch;\n };\n // set up listener for block number changes\n const unlisten = listener(parameters.chainId);\n // set up subscriber for connected chain changes\n let unsubscribe;\n if (syncConnectedChain && !parameters.chainId)\n unsubscribe = config.subscribe(({ chainId }) => chainId, async (chainId) => listener(chainId));\n return () => {\n unlisten?.();\n unsubscribe?.();\n };\n}\n//# sourceMappingURL=watchBlockNumber.js.map","'use client';\nimport { watchBlockNumber, } from '@wagmi/core';\nimport { useEffect } from 'react';\nimport { useChainId } from './useChainId.js';\nimport { useConfig } from './useConfig.js';\n/** https://wagmi.sh/react/api/hooks/useWatchBlockNumber */\nexport function useWatchBlockNumber(parameters = {}) {\n const { enabled = true, onBlockNumber, config: _, ...rest } = parameters;\n const config = useConfig(parameters);\n const configChainId = useChainId({ config });\n const chainId = parameters.chainId ?? configChainId;\n // TODO(react@19): cleanup\n // biome-ignore lint/correctness/useExhaustiveDependencies: `rest` changes every render so only including properties in dependency array\n useEffect(() => {\n if (!enabled)\n return;\n if (!onBlockNumber)\n return;\n return watchBlockNumber(config, {\n ...rest,\n chainId,\n onBlockNumber,\n });\n }, [\n chainId,\n config,\n enabled,\n onBlockNumber,\n ///\n rest.onError,\n rest.emitMissed,\n rest.emitOnBegin,\n rest.poll,\n rest.pollingInterval,\n rest.syncConnectedChain,\n ]);\n}\n//# sourceMappingURL=useWatchBlockNumber.js.map","'use client';\nimport { useQueryClient } from '@tanstack/react-query';\nimport { getBlockNumberQueryOptions, } from '@wagmi/core/query';\nimport { useQuery } from '../utils/query.js';\nimport { useChainId } from './useChainId.js';\nimport { useConfig } from './useConfig.js';\nimport { useWatchBlockNumber, } from './useWatchBlockNumber.js';\n/** https://wagmi.sh/react/api/hooks/useBlockNumber */\nexport function useBlockNumber(parameters = {}) {\n const { query = {}, watch } = parameters;\n const config = useConfig(parameters);\n const queryClient = useQueryClient();\n const configChainId = useChainId({ config });\n const chainId = parameters.chainId ?? configChainId;\n const options = getBlockNumberQueryOptions(config, {\n ...parameters,\n chainId,\n });\n useWatchBlockNumber({\n ...{\n config: parameters.config,\n chainId: parameters.chainId,\n ...(typeof watch === 'object' ? watch : {}),\n },\n enabled: Boolean((query.enabled ?? true) &&\n (typeof watch === 'object' ? watch.enabled : watch)),\n onBlockNumber(blockNumber) {\n queryClient.setQueryData(options.queryKey, blockNumber);\n },\n });\n return useQuery({ ...query, ...options });\n}\n//# sourceMappingURL=useBlockNumber.js.map","import { readContract, } from '../actions/readContract.js';\nimport { filterQueryOptions } from './utils.js';\nexport function readContractQueryOptions(config, options = {}) {\n return {\n // TODO: Support `signal` once Viem actions allow passthrough\n // https://tkdodo.eu/blog/why-you-want-react-query#bonus-cancellation\n async queryFn({ queryKey }) {\n const abi = options.abi;\n if (!abi)\n throw new Error('abi is required');\n const { functionName, scopeKey: _, ...parameters } = queryKey[1];\n const addressOrCodeParams = (() => {\n const params = queryKey[1];\n if (params.address)\n return { address: params.address };\n if (params.code)\n return { code: params.code };\n throw new Error('address or code is required');\n })();\n if (!functionName)\n throw new Error('functionName is required');\n return readContract(config, {\n abi,\n functionName,\n args: parameters.args,\n ...addressOrCodeParams,\n ...parameters,\n });\n },\n queryKey: readContractQueryKey(options),\n };\n}\nexport function readContractQueryKey(options = {}) {\n const { abi: _, ...rest } = options;\n return ['readContract', filterQueryOptions(rest)];\n}\n//# sourceMappingURL=readContract.js.map","'use client';\nimport { readContractQueryOptions, structuralSharing, } from '@wagmi/core/query';\nimport { useQuery } from '../utils/query.js';\nimport { useChainId } from './useChainId.js';\nimport { useConfig } from './useConfig.js';\n/** https://wagmi.sh/react/api/hooks/useReadContract */\nexport function useReadContract(parameters = {}) {\n const { abi, address, functionName, query = {} } = parameters;\n // @ts-ignore\n const code = parameters.code;\n const config = useConfig(parameters);\n const chainId = useChainId({ config });\n const options = readContractQueryOptions(config, { ...parameters, chainId: parameters.chainId ?? chainId });\n const enabled = Boolean((address || code) && abi && functionName && (query.enabled ?? true));\n return useQuery({\n ...query,\n ...options,\n enabled,\n structuralSharing: query.structuralSharing ?? structuralSharing,\n });\n}\n//# sourceMappingURL=useReadContract.js.map","import { useMoonChain } from 'hooks/useMoonChainConfig';\nimport { useProxiedOrAddress } from 'hooks/useProxiedOrAddress';\nimport { useEffect } from 'react';\nimport {\n STAKING_CONTRACT_ADDRESS,\n StakingContractABI,\n} from 'services/contracts/StakingContract/constants';\nimport { Address } from 'viem';\nimport { useBlockNumber, useReadContract } from 'wagmi';\n\nexport const useDelegationAutoCompound = (\n candidate: string,\n): number | undefined => {\n const address = useProxiedOrAddress();\n const { id } = useMoonChain();\n const { data: blockNumber } = useBlockNumber({ watch: true });\n\n const { data, refetch } = useReadContract({\n address: address ? STAKING_CONTRACT_ADDRESS : undefined,\n abi: StakingContractABI,\n functionName: 'delegationAutoCompound',\n args: [address as Address, candidate as Address],\n chainId: id,\n });\n\n // biome-ignore lint/correctness/useExhaustiveDependencies: \n useEffect(() => {\n refetch();\n }, [blockNumber, refetch]);\n\n return data as number;\n};\n","import {\n ActionProps,\n useDelegationAction,\n} from 'hooks/contracts/staking/useDelegationAction';\nimport { UseWriteContractAndConfirmReturnType } from 'hooks/contracts/useWriteContractAndConfirm';\nimport { TransactionAction } from 'hooks/notifications/useWalletNotifications';\nimport { useAutoCompoundingDelegationsCount } from 'hooks/queries/staking/useAutoCompoundingDelegationsCount';\nimport { useDelegationsCount } from 'hooks/queries/staking/useDelegationsCount';\nimport { StakingFunctions } from 'types/contracts/functions';\n\ninterface Props extends ActionProps {\n autoCompound: number;\n}\n\nexport function useSetAutoCompound({\n candidate,\n autoCompound,\n setIsLoading,\n close,\n}: Props): UseWriteContractAndConfirmReturnType {\n const candidateAutoCompoundingDelegationCount =\n useAutoCompoundingDelegationsCount(candidate);\n const delegatorDelegationCount = useDelegationsCount();\n\n return useDelegationAction({\n functionName: StakingFunctions.AUTO_COMPOUND,\n action: TransactionAction.AUTO_COMPOUND,\n args: [\n candidate,\n autoCompound,\n candidateAutoCompoundingDelegationCount,\n delegatorDelegationCount,\n ],\n setIsLoading,\n close,\n });\n}\n","import {\n ActionIcon,\n Group,\n Popover,\n Title,\n Tooltip,\n useMantineTheme,\n} from '@mantine/core';\nimport { useClickOutside } from '@mantine/hooks';\nimport { ActionButton } from 'components/ActionButton';\nimport { ActionCallButton } from 'components/ActionCallButton';\nimport { useTranslation } from 'next-i18next';\nimport { ReactNode } from 'react';\n\ninterface Props {\n onConfirm: VoidFunction;\n disabled?: boolean;\n isLoading: boolean;\n highlighted?: boolean;\n tooltip?: string;\n action: string;\n icon: ReactNode;\n children: ReactNode;\n isOpen: boolean;\n open: VoidFunction;\n close: VoidFunction;\n}\n\nexport const ActionPopover = ({\n onConfirm,\n disabled = false,\n highlighted,\n tooltip,\n action,\n icon,\n children,\n isOpen,\n isLoading,\n open,\n close,\n}: Props) => {\n const { t } = useTranslation();\n const ref = useClickOutside(() => close());\n const theme = useMantineTheme();\n\n return (\n \n \n \n \n {icon}\n \n \n \n \n
\n {t(`staking:actionTitles.${action}`)}\n {children}\n \n \n {t('cancel')}\n \n \n {t('confirm')}\n \n \n
\n
\n \n );\n};\n","import { Slider, Text } from '@mantine/core';\nimport { useDisclosure } from '@mantine/hooks';\nimport { useDelegationAutoCompound } from 'hooks/contracts/staking/useDelegationAutoCompound';\nimport { useSetAutoCompound } from 'hooks/contracts/staking/useSetAutoCompound';\nimport { DelegationAction } from 'hooks/queries/staking/useDelegationScheduledRequests';\nimport { useStakingParameters } from 'hooks/queries/staking/useStakingParameters';\nimport { useGaEvents } from 'hooks/useSendButtonClickedEvent';\nimport { useTranslation } from 'next-i18next';\nimport { useEffect, useState } from 'react';\nimport { IoInformationCircle } from 'react-icons/io5';\nimport { TbRefresh } from 'react-icons/tb';\nimport { ActionPopover } from './ActionPopover';\nimport { ActionComponentProps, ICON_SIZE } from './Actions';\n\nexport const AutoCompounding = ({\n candidate,\n setIsLoading,\n}: ActionComponentProps) => {\n const { t } = useTranslation('staking');\n const [autoCompound, setAutoCompound] = useState(0);\n const [isOpen, { close, open }] = useDisclosure(false);\n const { rewardPaymentDelay } = useStakingParameters();\n const activeAutoCompound = useDelegationAutoCompound(candidate) || 0;\n\n const { writeContract, isPending } = useSetAutoCompound({\n candidate,\n autoCompound,\n setIsLoading,\n close,\n });\n\n const { sendButtonClickedEvent } = useGaEvents();\n\n useEffect(() => {\n setAutoCompound(activeAutoCompound);\n }, [activeAutoCompound]);\n\n return (\n {\n writeContract();\n sendButtonClickedEvent('staking:setAutoCompounding');\n }}\n icon={}\n disabled={activeAutoCompound === autoCompound || isPending}\n isLoading={isPending}\n highlighted={!!activeAutoCompound}\n isOpen={isOpen}\n open={open}\n close={close}\n >\n \n \n {t('autoCompoundInfo', { delay: rewardPaymentDelay })}\n \n \n \n );\n};\n","import {\n ActionProps,\n useDelegationAction,\n} from 'hooks/contracts/staking/useDelegationAction';\nimport { UseWriteContractAndConfirmReturnType } from 'hooks/contracts/useWriteContractAndConfirm';\nimport { TransactionAction } from 'hooks/notifications/useWalletNotifications';\nimport { StakingFunctions } from 'types/contracts/functions';\nimport { parseEther } from 'viem';\n\ninterface Props extends ActionProps {\n amount: string;\n}\n\nexport function useBondMore({\n candidate,\n amount,\n setIsLoading,\n close,\n}: Props): UseWriteContractAndConfirmReturnType {\n return useDelegationAction({\n functionName: StakingFunctions.BOND,\n action: TransactionAction.BOND,\n args: [candidate, parseEther(amount.toString())],\n setIsLoading,\n close,\n });\n}\n","import { Box, Group, Stack } from '@mantine/core';\nimport { useDisclosure } from '@mantine/hooks';\nimport { AssetAmountInput } from 'components/AssetAmountInput';\nimport { InfoLine } from 'components/InfoBlock';\nimport { InputError } from 'components/InputError';\nimport { useBondMore } from 'hooks/contracts/staking/useBondMore';\nimport { useMoonBalances } from 'hooks/queries/balances/useMoonChainBalances';\nimport { DelegationAction } from 'hooks/queries/staking/useDelegationScheduledRequests';\nimport { useMaxAmountStaking } from 'hooks/useMaxAmountStaking';\nimport { useMoonChain } from 'hooks/useMoonChainConfig';\nimport { useProxiedOrAddress } from 'hooks/useProxiedOrAddress';\nimport { useGaEvents } from 'hooks/useSendButtonClickedEvent';\nimport { useValidateMoonChainAmount } from 'hooks/validation/useValidateAmount';\nimport { useTranslation } from 'next-i18next';\nimport { useState } from 'react';\nimport { IoAdd } from 'react-icons/io5';\nimport { ActionPopover } from './ActionPopover';\nimport { ActionComponentProps, ICON_SIZE } from './Actions';\n\nexport const Bond = ({ candidate, setIsLoading }: ActionComponentProps) => {\n const [amount, setAmount] = useState('');\n const { t } = useTranslation('staking');\n const address = useProxiedOrAddress();\n const { nativeAsset } = useMoonChain();\n const balances = useMoonBalances(address);\n const [isOpen, { close, open }] = useDisclosure(false);\n const { maxAmount, maxInput } = useMaxAmountStaking();\n const { sendButtonClickedEvent } = useGaEvents();\n\n const [validatedAmount, amountError] = useValidateMoonChainAmount({\n amount,\n maxAmount,\n });\n\n const { writeContract, isPending } = useBondMore({\n candidate,\n amount: validatedAmount || '0',\n setIsLoading,\n close,\n });\n\n const bond = () => {\n if (!validatedAmount || !balances) return;\n\n writeContract();\n sendButtonClickedEvent('staking:increaseStake');\n };\n\n return (\n }\n disabled={isPending || !validatedAmount}\n isLoading={isPending}\n isOpen={isOpen}\n open={open}\n close={close}\n >\n \n \n setAmount(e.currentTarget.value)}\n asset={nativeAsset}\n />\n \n setAmount(maxInput || '0')}\n isLoading={isPending}\n />\n \n \n \n \n \n );\n};\n","import {\n ActionProps,\n useDelegationAction,\n} from 'hooks/contracts/staking/useDelegationAction';\nimport { UseWriteContractAndConfirmReturnType } from 'hooks/contracts/useWriteContractAndConfirm';\nimport { TransactionAction } from 'hooks/notifications/useWalletNotifications';\nimport { StakingFunctions } from 'types/contracts/functions';\nimport { parseEther } from 'viem';\n\ninterface Props extends ActionProps {\n amount: string;\n}\n\nexport function useScheduleDecrease({\n candidate,\n amount,\n setIsLoading,\n close,\n}: Props): UseWriteContractAndConfirmReturnType {\n return useDelegationAction({\n functionName: StakingFunctions.DECREASE,\n action: TransactionAction.DECREASE,\n args: [candidate, parseEther(amount.toString())],\n setIsLoading,\n close,\n });\n}\n","import { Text } from '@mantine/core';\nimport { useStakingParameters } from 'hooks/queries/staking/useStakingParameters';\nimport { useTranslation } from 'next-i18next';\nimport { IoInformationCircle } from 'react-icons/io5';\n\nexport const DelayWarning = () => {\n const { t } = useTranslation('staking');\n const { revokeDelegationDelay } = useStakingParameters();\n\n return (\n \n \n {t('scheduledRequestDelayWarning', { delay: revokeDelegationDelay })}\n \n );\n};\n","import { Box, Stack } from '@mantine/core';\nimport { useDisclosure } from '@mantine/hooks';\nimport { AssetAmountInput } from 'components/AssetAmountInput';\nimport { AmountInputError, InputError } from 'components/InputError';\nimport { useScheduleDecrease } from 'hooks/contracts/staking/useScheduleDecrease';\nimport { useDelegationInfo } from 'hooks/queries/staking/useDelegationInfo';\nimport { DelegationAction } from 'hooks/queries/staking/useDelegationScheduledRequests';\nimport { useStakingParameters } from 'hooks/queries/staking/useStakingParameters';\nimport { useMoonChain } from 'hooks/useMoonChainConfig';\nimport { useGaEvents } from 'hooks/useSendButtonClickedEvent';\nimport { useValidateMoonChainAmount } from 'hooks/validation/useValidateAmount';\nimport { useTranslation } from 'next-i18next';\nimport { useState } from 'react';\nimport { IoRemoveCircle } from 'react-icons/io5';\nimport { ActionPopover } from './ActionPopover';\nimport { ActionComponentProps, ICON_SIZE } from './Actions';\nimport { DelayWarning } from './DelayWarning';\n\ninterface Props extends ActionComponentProps {\n delegationAmount: bigint;\n}\n\nexport const Decrease = ({\n candidate,\n setIsLoading,\n delegationAmount,\n}: Props) => {\n const [amount, setAmount] = useState('');\n const { t } = useTranslation('staking');\n const { nativeAsset } = useMoonChain();\n const [isOpen, { close, open }] = useDisclosure(false);\n const { sendButtonClickedEvent } = useGaEvents();\n\n const { minDelegation } = useDelegationInfo(candidate);\n const { minDelegation: baseMin } = useStakingParameters();\n const min = minDelegation || baseMin || 0n;\n\n const [validatedAmount, amountError] = useValidateMoonChainAmount({\n amount,\n maxAmount: delegationAmount - min,\n tooHighErrorMessage: AmountInputError.MaxDecreaseDelegation,\n });\n\n const { writeContract, isPending } = useScheduleDecrease({\n candidate,\n amount: validatedAmount || '0',\n setIsLoading,\n close,\n });\n\n const decrease = () => {\n if (!validatedAmount || !min) return;\n\n writeContract();\n sendButtonClickedEvent('staking:decreaseStakedAmount');\n };\n\n return (\n }\n disabled={isPending || !validatedAmount}\n isLoading={isPending}\n isOpen={isOpen}\n open={open}\n close={close}\n >\n \n \n \n setAmount(e.currentTarget.value)}\n asset={nativeAsset}\n />\n \n \n \n \n );\n};\n","import {\n ActionProps,\n useDelegationAction,\n} from 'hooks/contracts/staking/useDelegationAction';\nimport { UseWriteContractAndConfirmReturnType } from 'hooks/contracts/useWriteContractAndConfirm';\nimport { TransactionAction } from 'hooks/notifications/useWalletNotifications';\nimport { StakingFunctions } from 'types/contracts/functions';\n\nexport function useScheduleRevoke({\n candidate,\n setIsLoading,\n close,\n}: ActionProps): UseWriteContractAndConfirmReturnType {\n return useDelegationAction({\n functionName: StakingFunctions.REVOKE,\n action: TransactionAction.REVOKE,\n args: [candidate],\n setIsLoading,\n close,\n });\n}\n","import { useDisclosure } from '@mantine/hooks';\nimport { useScheduleRevoke } from 'hooks/contracts/staking/useScheduleRevoke';\nimport { DelegationAction } from 'hooks/queries/staking/useDelegationScheduledRequests';\nimport { useGaEvents } from 'hooks/useSendButtonClickedEvent';\nimport { IoBan } from 'react-icons/io5';\nimport { ActionPopover } from './ActionPopover';\nimport { ActionComponentProps, ICON_SIZE } from './Actions';\nimport { DelayWarning } from './DelayWarning';\n\nexport const Revoke = ({ candidate, setIsLoading }: ActionComponentProps) => {\n const [isOpen, { close, open }] = useDisclosure(false);\n const { sendButtonClickedEvent } = useGaEvents();\n\n const { writeContract, isPending } = useScheduleRevoke({\n candidate,\n setIsLoading,\n close,\n });\n\n return (\n {\n writeContract();\n sendButtonClickedEvent('staking:revokeDelegation');\n }}\n icon={}\n isOpen={isOpen}\n disabled={isPending}\n isLoading={isPending}\n open={open}\n close={close}\n >\n \n \n );\n};\n","export * from './Actions';\nexport * from './AutoCompounding';\nexport * from './Bond';\nexport * from './Decrease';\nexport * from './Revoke';\n","import { Group, Text } from '@mantine/core';\nimport { MoonTokenAmount } from 'components/TokenAmount';\nimport {\n ScheduledRequest,\n useScheduledRequestRemainingTime,\n} from 'hooks/queries/staking/useDelegationScheduledRequests';\nimport { useTranslation } from 'next-i18next';\nimport { IoArrowForwardOutline } from 'react-icons/io5';\n\ninterface Props {\n request?: ScheduledRequest;\n}\n\nexport const DelegationNotes = ({ request }: Props) => {\n const { t } = useTranslation('staking');\n const remaining = useScheduledRequestRemainingTime(request);\n\n if (!request?.action) return <>;\n\n return (\n <>\n \n {remaining\n ? t('executable', {\n action: t(request.action.action),\n remaining,\n })\n : t('executableNow', {\n action: t(request.action.action),\n })}\n \n {request.action.amount && (\n \n \n {t('amount')}\n {':'}\n \n \n )}\n \n );\n};\n","import {\n ActionIcon,\n Group,\n Table,\n Text,\n Tooltip,\n useMantineTheme,\n} from '@mantine/core';\nimport { Avatar } from 'components/Avatar';\nimport { MoonTokenAmount } from 'components/TokenAmount';\nimport { StakingCandidatesIndicator } from 'hooks/flags/useStakingCandidateIndicators';\nimport { useDelegationInfo } from 'hooks/queries/staking/useDelegationInfo';\nimport { DelegationInfo } from 'hooks/queries/staking/useDelegations';\nimport { useStakingParameters } from 'hooks/queries/staking/useStakingParameters';\nimport { useIsMobile } from 'hooks/useMedia';\nimport { useMoonChainToDecimals } from 'hooks/useToDecimal';\nimport { useTranslation } from 'next-i18next';\nimport { IoWarningOutline } from 'react-icons/io5';\nimport { candidateDisplay } from 'utils/text';\nimport { Actions } from './Actions';\nimport { DelegationNotes } from './DelegationNotes';\n\ninterface Props {\n delegation: DelegationInfo;\n indicators: StakingCandidatesIndicator[];\n}\n\nexport const Delegation = ({ delegation, indicators }: Props) => {\n const { t } = useTranslation('staking');\n const theme = useMantineTheme();\n const isMobile = useIsMobile();\n\n const { maxTopDelegationsPerCandidate } = useStakingParameters();\n\n const { minDelegation, identity, isInTopDelegations, scheduledRequests } =\n useDelegationInfo(delegation.candidate);\n\n const minDelegationLabel = useMoonChainToDecimals(minDelegation, 2);\n const warning = !isInTopDelegations\n ? t('notInTopDelegations', {\n minBond: minDelegationLabel,\n maxDelegators: maxTopDelegationsPerCandidate,\n })\n : !delegation.isActive\n ? t('notProducingRewards')\n : null;\n\n return (\n \n \n \n \n {candidateDisplay(identity, delegation.candidate)}\n \n {warning && (\n \n \n \n \n \n )}\n {indicators.map((indicator) => (\n \n {indicator.icon}\n \n ))}\n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n};\n","import {\n Card,\n Center,\n Group,\n Loader,\n ScrollArea,\n Table,\n Text,\n Title,\n Tooltip,\n} from '@mantine/core';\nimport { ConnectEvmWallet } from 'components/ConnectWallet/ConnectEvmWallet';\nimport { useStakingCandidateIndicators } from 'hooks/flags/useStakingCandidateIndicators';\nimport { useDelegationsList } from 'hooks/queries/staking/useDelegations';\nimport { useRound } from 'hooks/queries/useRound';\nimport { useAddress } from 'hooks/useAddress';\nimport { useIsMounted } from 'hooks/useIsMounted';\nimport { useMoonChain } from 'hooks/useMoonChainConfig';\nimport { useTranslation } from 'next-i18next';\nimport { calcTimePerRound } from 'utils/calc';\nimport { Delegation } from './Delegation';\nimport classes from './StakingSummary.module.css';\n\nexport const StakingSummary = () => {\n const { t } = useTranslation('staking');\n const address = useAddress();\n const { blockTime } = useMoonChain();\n const isMounted = useIsMounted();\n\n const delegations = useDelegationsList();\n const round = useRound();\n const indicators = useStakingCandidateIndicators();\n\n const rows = delegations?.map((delegation) => {\n const candidateIndicators = indicators.filter((indicator) =>\n indicator.addresses.includes(delegation.candidate.toLowerCase()),\n );\n\n return (\n \n );\n });\n\n return (\n \n \n \n {t('stakingSummary')}\n {delegations && ` (${delegations?.length})`}\n \n {round && (\n \n {t('currentRound', { round: round.current })}\n \n )}\n \n {isMounted && !address ? (\n
\n \n
\n ) : !delegations ? (\n
\n \n
\n ) : delegations && !delegations.length ? (\n \n {t('noStakingDelegations')}\n \n ) : (\n \n \n \n \n \n \n {t('collator')}\n \n \n \n \n {t('amount')}\n \n \n {t('quickActions')}\n \n \n \n {rows}\n
\n \n )}\n
\n );\n};\n","export * from './StakingSummary';\n","import { Card, Text, Title } from '@mantine/core';\nimport { useTranslation } from 'next-i18next';\n\nexport const StakingWarningMessage = () => {\n const { t } = useTranslation('staking');\n\n return (\n \n \n {t('Warning')}\n \n \n {t('stakingWarningMessage')}\n \n \n );\n};\n","export * from './StakingWarningMessage';\n","export * from './Stake';\nexport * from './StakingSummary';\nexport * from './StakingWarningMessage';\n","import { Group, Stack, Text } from '@mantine/core';\nimport { useStakingParameters } from 'hooks/queries/staking/useStakingParameters';\nimport { useRound } from 'hooks/queries/useRound';\nimport { useMoonChain } from 'hooks/useMoonChainConfig';\nimport { useTranslation } from 'next-i18next';\nimport { IoAlertCircleOutline } from 'react-icons/io5';\nimport { calcRewardDelayTime } from 'utils/calc';\n\nexport const DelegationDelay = () => {\n const { t } = useTranslation('staking');\n\n const round = useRound();\n const { rewardPaymentDelay } = useStakingParameters();\n const { blockTime } = useMoonChain();\n\n if (!round) {\n return <>;\n }\n\n return (\n \n \n \n {t('Important')}\n \n \n {t('delegationDelayNote', {\n rounds: rewardPaymentDelay,\n hours: calcRewardDelayTime(round, blockTime, rewardPaymentDelay),\n })}\n \n \n );\n};\n","export * from './DelegationDelay';\n","import { Grid, Group, Title } from '@mantine/core';\nimport type { GetServerSideProps, NextPage } from 'next';\nimport { useTranslation } from 'next-i18next';\n\nimport { useMediaQuery } from '@mantine/hooks';\nimport { BalanceGrid } from 'components/BalanceGrid';\nimport { ProxiedAccount, ProxySwitch } from 'components/ProxySwitch';\nimport { TutorialLink } from 'components/TutorialLink';\nimport { StakingAnnouncement } from 'components/pages/overview/Announcements';\nimport {\n Stake,\n StakingSummary,\n StakingWarningMessage,\n} from 'components/pages/staking';\nimport { DelegationDelay } from 'components/pages/staking/DelegationDelay';\nimport { useProxiedOrAddress } from 'hooks/useProxiedOrAddress';\nimport { useTutorials } from 'hooks/useTutorials';\nimport Head from 'next/head';\nimport { ProxyType } from 'services/contracts/Proxy/constants';\nimport { generateServerProps } from 'utils/server';\nimport {\n geValidMoonChainKey,\n isQueryParamValid,\n} from 'utils/validation/queryParamValidation';\n\nconst Staking: NextPage = () => {\n const { t } = useTranslation();\n const { staking } = useTutorials();\n const address = useProxiedOrAddress();\n const isWide = useMediaQuery(`(min-width: 1300px`);\n\n const titleForGA = t('gaTitles.staking', { ns: 'common' });\n\n return (\n <>\n \n \n {titleForGA}\n \n \n {t('staking')}\n \n \n \n {isWide && }\n \n \n \n {!isWide && (\n \n \n \n )}\n\n \n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default Staking;\n\nexport const getServerSideProps: GetServerSideProps = async ({\n locale,\n params,\n query,\n}) => {\n if (!isQueryParamValid(query)) {\n const moonChainKey = geValidMoonChainKey(params?.moonChainKey as string);\n\n return {\n redirect: {\n destination: `/${moonChainKey}/staking`,\n permanent: true,\n },\n };\n }\n\n return await generateServerProps(params?.moonChainKey, locale as string, [\n 'common',\n 'staking',\n ]);\n};\n","import { useEffect, useState } from 'react';\nimport { useRecoilValue } from 'recoil';\nimport { importedTokensAtom } from 'recoil/importedTokens/atoms';\nimport {\n getCoinGeckoPrices,\n getImportedCoinGeckoIds,\n getPermanentCoinGeckoIds,\n} from 'services/coingecko';\nimport { CoinGeckoPrices } from 'services/coingecko/coingecko.types';\n\nconst permanentIds = getPermanentCoinGeckoIds();\n\nexport function useCoinGeckoPrices(): CoinGeckoPrices | undefined {\n const [prices, setPrices] = useState();\n const importedTokens = useRecoilValue(importedTokensAtom);\n\n useEffect(() => {\n const importedTokensIds = getImportedCoinGeckoIds(importedTokens);\n\n getCoinGeckoPrices([...permanentIds, ...importedTokensIds]).then(\n (pricesResponse) => {\n if (!pricesResponse) {\n return;\n }\n\n if (pricesResponse.responseOk) {\n setPrices(pricesResponse.prices);\n } else {\n console.error(pricesResponse.error);\n }\n },\n );\n }, [importedTokens]);\n\n return prices;\n}\n","export * from './hooks';\n","import {\n moonbaseAlpha,\n moonbeam,\n moonriver,\n} from '@moonbeam-network/xcm-config';\nimport { atom } from 'recoil';\nimport { createLocalStorageEffect } from 'recoil/effects';\nimport { ImportedTokens } from './interfaces';\n\nexport const importedTokensAtom = atom({\n key: 'importedTokens',\n default: {\n [moonbeam.key]: [],\n [moonriver.key]: [],\n [moonbaseAlpha.key]: [],\n },\n effects: [createLocalStorageEffect('imported-tokens')],\n});\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"disabled\":\"Candidate_disabled__dxqjK\",\"enabled\":\"Candidate_enabled__Yss5j\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"table\":\"CandidateList_table__EMmrK\",\"scrollArea\":\"CandidateList_scrollArea__BcrjU\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"button\":\"SelectCandidate_button__Ux6qI\",\"inner\":\"SelectCandidate_inner__q_p2O\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"card\":\"Staking_card__3ZgAP\",\"input\":\"Staking_input__XlwYp\",\"inputGrid\":\"Staking_inputGrid__rwMJk\",\"description\":\"Staking_description__NcufC\",\"thumb\":\"Staking_thumb__WDJgc\",\"mark\":\"Staking_mark__K9Ujy\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"table\":\"StakingSummary_table__vOw1t\",\"card\":\"StakingSummary_card__TuTLt\",\"scrollbar\":\"StakingSummary_scrollbar__JDkOM\",\"viewport\":\"StakingSummary_viewport__iAwp8\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"highlight-on-hover\":\"common_highlight-on-hover__mglju\"};","'use client';\nvar classes = {\"root\":\"m_18320242\",\"skeleton-fade\":\"m_299c329c\"};\n\nexport { classes as default };\n//# sourceMappingURL=Skeleton.module.css.mjs.map\n","'use client';\nimport { jsx } from 'react/jsx-runtime';\nimport { rem } from '../../core/utils/units-converters/rem.mjs';\nimport 'react';\nimport { getRadius } from '../../core/utils/get-size/get-size.mjs';\nimport '@mantine/hooks';\nimport { createVarsResolver } from '../../core/styles-api/create-vars-resolver/create-vars-resolver.mjs';\nimport 'clsx';\nimport '../../core/MantineProvider/Mantine.context.mjs';\nimport '../../core/MantineProvider/default-theme.mjs';\nimport '../../core/MantineProvider/MantineProvider.mjs';\nimport '../../core/MantineProvider/MantineThemeProvider/MantineThemeProvider.mjs';\nimport { useProps } from '../../core/MantineProvider/use-props/use-props.mjs';\nimport '../../core/MantineProvider/MantineCssVariables/MantineCssVariables.mjs';\nimport { useStyles } from '../../core/styles-api/use-styles/use-styles.mjs';\nimport { Box } from '../../core/Box/Box.mjs';\nimport { factory } from '../../core/factory/factory.mjs';\nimport '../../core/DirectionProvider/DirectionProvider.mjs';\nimport classes from './Skeleton.module.css.mjs';\n\nconst defaultProps = {\n visible: true,\n animate: true\n};\nconst varsResolver = createVarsResolver(\n (_, { width, height, radius, circle }) => ({\n root: {\n \"--skeleton-height\": rem(height),\n \"--skeleton-width\": circle ? rem(height) : rem(width),\n \"--skeleton-radius\": circle ? \"1000px\" : radius === void 0 ? void 0 : getRadius(radius)\n }\n })\n);\nconst Skeleton = factory((_props, ref) => {\n const props = useProps(\"Skeleton\", defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n width,\n height,\n circle,\n visible,\n radius,\n animate,\n mod,\n ...others\n } = props;\n const getStyles = useStyles({\n name: \"Skeleton\",\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n vars,\n varsResolver\n });\n return /* @__PURE__ */ jsx(Box, { ref, ...getStyles(\"root\"), mod: [{ visible, animate }, mod], ...others });\n});\nSkeleton.classes = classes;\nSkeleton.displayName = \"@mantine/core/Skeleton\";\n\nexport { Skeleton };\n//# sourceMappingURL=Skeleton.mjs.map\n","'use client';\nimport { useState, useRef, useEffect, useCallback } from 'react';\n\nfunction useDebouncedState(defaultValue, wait, options = { leading: false }) {\n const [value, setValue] = useState(defaultValue);\n const timeoutRef = useRef(null);\n const leadingRef = useRef(true);\n const clearTimeout = () => window.clearTimeout(timeoutRef.current);\n useEffect(() => clearTimeout, []);\n const debouncedSetValue = useCallback(\n (newValue) => {\n clearTimeout();\n if (leadingRef.current && options.leading) {\n setValue(newValue);\n } else {\n timeoutRef.current = window.setTimeout(() => {\n leadingRef.current = true;\n setValue(newValue);\n }, wait);\n }\n leadingRef.current = false;\n },\n [options.leading]\n );\n return [value, debouncedSetValue];\n}\n\nexport { useDebouncedState };\n//# sourceMappingURL=use-debounced-state.mjs.map\n","'use client';\nimport { useRef, useState, useEffect } from 'react';\nimport { clamp } from '../utils/clamp/clamp.mjs';\n\nfunction clampUseMovePosition(position) {\n return {\n x: clamp(position.x, 0, 1),\n y: clamp(position.y, 0, 1)\n };\n}\nfunction useMove(onChange, handlers, dir = \"ltr\") {\n const ref = useRef(null);\n const mounted = useRef(false);\n const isSliding = useRef(false);\n const frame = useRef(0);\n const [active, setActive] = useState(false);\n useEffect(() => {\n mounted.current = true;\n }, []);\n useEffect(() => {\n const node = ref.current;\n const onScrub = ({ x, y }) => {\n cancelAnimationFrame(frame.current);\n frame.current = requestAnimationFrame(() => {\n if (mounted.current && node) {\n node.style.userSelect = \"none\";\n const rect = node.getBoundingClientRect();\n if (rect.width && rect.height) {\n const _x = clamp((x - rect.left) / rect.width, 0, 1);\n onChange({\n x: dir === \"ltr\" ? _x : 1 - _x,\n y: clamp((y - rect.top) / rect.height, 0, 1)\n });\n }\n }\n });\n };\n const bindEvents = () => {\n document.addEventListener(\"mousemove\", onMouseMove);\n document.addEventListener(\"mouseup\", stopScrubbing);\n document.addEventListener(\"touchmove\", onTouchMove);\n document.addEventListener(\"touchend\", stopScrubbing);\n };\n const unbindEvents = () => {\n document.removeEventListener(\"mousemove\", onMouseMove);\n document.removeEventListener(\"mouseup\", stopScrubbing);\n document.removeEventListener(\"touchmove\", onTouchMove);\n document.removeEventListener(\"touchend\", stopScrubbing);\n };\n const startScrubbing = () => {\n if (!isSliding.current && mounted.current) {\n isSliding.current = true;\n typeof handlers?.onScrubStart === \"function\" && handlers.onScrubStart();\n setActive(true);\n bindEvents();\n }\n };\n const stopScrubbing = () => {\n if (isSliding.current && mounted.current) {\n isSliding.current = false;\n setActive(false);\n unbindEvents();\n setTimeout(() => {\n typeof handlers?.onScrubEnd === \"function\" && handlers.onScrubEnd();\n }, 0);\n }\n };\n const onMouseDown = (event) => {\n startScrubbing();\n event.preventDefault();\n onMouseMove(event);\n };\n const onMouseMove = (event) => onScrub({ x: event.clientX, y: event.clientY });\n const onTouchStart = (event) => {\n if (event.cancelable) {\n event.preventDefault();\n }\n startScrubbing();\n onTouchMove(event);\n };\n const onTouchMove = (event) => {\n if (event.cancelable) {\n event.preventDefault();\n }\n onScrub({ x: event.changedTouches[0].clientX, y: event.changedTouches[0].clientY });\n };\n node?.addEventListener(\"mousedown\", onMouseDown);\n node?.addEventListener(\"touchstart\", onTouchStart, { passive: false });\n return () => {\n if (node) {\n node.removeEventListener(\"mousedown\", onMouseDown);\n node.removeEventListener(\"touchstart\", onTouchStart);\n }\n };\n }, [dir, onChange]);\n return { ref, active };\n}\n\nexport { clampUseMovePosition, useMove };\n//# sourceMappingURL=use-move.mjs.map\n","import { hexToString } from 'viem';\nimport { call, getTransaction, waitForTransactionReceipt as viem_waitForTransactionReceipt, } from 'viem/actions';\nimport { getAction } from '../utils/getAction.js';\nexport async function waitForTransactionReceipt(config, parameters) {\n const { chainId, timeout = 0, ...rest } = parameters;\n const client = config.getClient({ chainId });\n const action = getAction(client, viem_waitForTransactionReceipt, 'waitForTransactionReceipt');\n const receipt = await action({ ...rest, timeout });\n if (receipt.status === 'reverted') {\n const action_getTransaction = getAction(client, getTransaction, 'getTransaction');\n const txn = await action_getTransaction({ hash: receipt.transactionHash });\n const action_call = getAction(client, call, 'call');\n const code = await action_call({\n ...txn,\n data: txn.input,\n gasPrice: txn.type !== 'eip1559' ? txn.gasPrice : undefined,\n maxFeePerGas: txn.type === 'eip1559' ? txn.maxFeePerGas : undefined,\n maxPriorityFeePerGas: txn.type === 'eip1559' ? txn.maxPriorityFeePerGas : undefined,\n });\n const reason = code?.data\n ? hexToString(`0x${code.data.substring(138)}`)\n : 'unknown reason';\n throw new Error(reason);\n }\n return {\n ...receipt,\n chainId: client.chain.id,\n };\n}\n//# sourceMappingURL=waitForTransactionReceipt.js.map",null,null,null,"import { waitForTransactionReceipt, } from '../actions/waitForTransactionReceipt.js';\nimport { filterQueryOptions } from './utils.js';\nexport function waitForTransactionReceiptQueryOptions(config, options = {}) {\n return {\n async queryFn({ queryKey }) {\n const { hash, ...parameters } = queryKey[1];\n if (!hash)\n throw new Error('hash is required');\n return waitForTransactionReceipt(config, {\n ...parameters,\n onReplaced: options.onReplaced,\n hash,\n });\n },\n queryKey: waitForTransactionReceiptQueryKey(options),\n };\n}\nexport function waitForTransactionReceiptQueryKey(options = {}) {\n const { onReplaced: _, ...rest } = options;\n return ['waitForTransactionReceipt', filterQueryOptions(rest)];\n}\n//# sourceMappingURL=waitForTransactionReceipt.js.map","'use client';\nimport { waitForTransactionReceiptQueryOptions, } from '@wagmi/core/query';\nimport { useQuery } from '../utils/query.js';\nimport { useChainId } from './useChainId.js';\nimport { useConfig } from './useConfig.js';\n/** https://wagmi.sh/react/api/hooks/useWaitForTransactionReceipt */\nexport function useWaitForTransactionReceipt(parameters = {}) {\n const { hash, query = {} } = parameters;\n const config = useConfig(parameters);\n const chainId = useChainId({ config });\n const options = waitForTransactionReceiptQueryOptions(config, {\n ...parameters,\n chainId: parameters.chainId ?? chainId,\n });\n const enabled = Boolean(hash && (query.enabled ?? true));\n return useQuery({\n ...query,\n ...options,\n enabled,\n });\n}\n//# sourceMappingURL=useWaitForTransactionReceipt.js.map","import { writeContract as viem_writeContract, } from 'viem/actions';\nimport { getAction } from '../utils/getAction.js';\nimport { getConnectorClient, } from './getConnectorClient.js';\n/** https://wagmi.sh/core/api/actions/writeContract */\nexport async function writeContract(config, parameters) {\n const { account, chainId, connector, ...request } = parameters;\n let client;\n if (typeof account === 'object' && account?.type === 'local')\n client = config.getClient({ chainId });\n else\n client = await getConnectorClient(config, {\n account: account ?? undefined,\n chainId,\n connector,\n });\n const action = getAction(client, viem_writeContract, 'writeContract');\n const hash = await action({\n ...request,\n ...(account ? { account } : {}),\n chain: chainId ? { id: chainId } : null,\n });\n return hash;\n}\n//# sourceMappingURL=writeContract.js.map","import { writeContract, } from '../actions/writeContract.js';\nexport function writeContractMutationOptions(config) {\n return {\n mutationFn(variables) {\n return writeContract(config, variables);\n },\n mutationKey: ['writeContract'],\n };\n}\n//# sourceMappingURL=writeContract.js.map","'use client';\nimport { useMutation } from '@tanstack/react-query';\nimport { writeContractMutationOptions, } from '@wagmi/core/query';\nimport { useConfig } from './useConfig.js';\n/** https://wagmi.sh/react/api/hooks/useWriteContract */\nexport function useWriteContract(parameters = {}) {\n const { mutation } = parameters;\n const config = useConfig(parameters);\n const mutationOptions = writeContractMutationOptions(config);\n const { mutate, mutateAsync, ...result } = useMutation({\n ...mutation,\n ...mutationOptions,\n });\n return {\n ...result,\n writeContract: mutate,\n writeContractAsync: mutateAsync,\n };\n}\n//# sourceMappingURL=useWriteContract.js.map"],"names":["window","__NEXT_P","push","__webpack_require__","AvatarWithAddressOrIdentity","address","withAddress","param","proxyIdentity","useIdentity","hasIdentity","display","jsx_runtime","jsxs","Group","gap","jsx","Avatar","size","Text","candidateDisplay","undefined","ProxyDropdown","proxyType","selected","onChange","other","combobox","useCombobox","onDropdownClose","resetSelectedOption","t","useTranslation","useAddress","accounts","isLoading","useProxiedAccounts","isDisabled","length","noProxies","options","useMemo","map","Combobox","Option","value","mr","fw","c","store","disabled","onOptionSubmit","toggleDropdown","Target","InputBase","component","type","pointer","rightSection","Chevron","onClick","rightSectionPointerEvents","Loader","Dropdown","Options","ProxiedAccount","theme","useMantineTheme","themeColors","useThemeColors","isConnected","useAccount","isMounted","useIsMounted","isEnabled","proxiedAddress","setProxiedAddress","useProxiedAddress","isProxyAvailable","useIsProxyAvailableFlag","localProxiedAddress","setLocalProxiedAddress","useState","isValidGovProxy","useIsValidGovProxy","isValidStakingProxy","useIsValidStakingProxy","isValid","ProxyType","Governance","useEffect","Collapse","in","pb","Grid","justify","Col","span","sm","md","lg","xl","Paper","p","spacing","style","backgroundColor","secondary","Trans","i18nKey","values","sliceEllipsis","components","light","secondaryTexts","ProxySwitch","toggle","Switch","label","checked","TokenFiatPriceContent","assetAmount","maxDecimals","showPrice","isHidable","textProps","areBalancesVisible","useUserSettings","fiatConversion","fiatSymbol","useFiatConversion","isHidden","react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__","Tooltip","Fragment","IoHelpCircleOutline","verticalAlign","TokenFiatPrice","props","Suspense","fallback","color","colors","gray","TutorialLink","link","OffsiteLink","withIcon","IoPlayCircle","action","texts","DelegateVotes","black","delegationUrl","useVoteDelegationUrls","isDark","useIsDarkMode","ActionButton","variant","coinGeckoIds","moonbeam","key","aca","astr","aseed","axlusdc","bnc","cfg","dai","dot","eq","eurc","hdx","fil","glmr","intr","laos","ldot","manta","nodl","para","pen","pha","ring","sub","usdc","usdcwh","usdt","usdtwh","wbtc","wbtce","weth","wethe","wstethe","ibtc","vastr","vdot","vglmr","vmanta","ztg","moonriver","csm","kar","kbtc","kint","ksm","mgx","movr","rmrk","sdn","teer","tnkr","tur","xrt","pica","vksm","vmovr","whitelist","Any","NonTransfer","data","allProxies","useAllProxies","enabled","api","useApi","useMoonChain","useQuery","queryKey","queryFn","res","query","proxy","proxies","entries","transform","result","forEach","entry","delegate","delay","args","toString","delayed","toNumber","delegated","filter","currentProxyType","proxyToLook","includes","fiatPrices","noFormat","useCoinGeckoPrices","fiatCurrency","useFiatSymbol","locale","useRouter","Intl","NumberFormat","currency","formatToParts","find","part","network","useMoonChainKeyParam","coinGeckoId","getCoinGeckoIdByAssetKey","fiatPrice","calcTokenConversion","useFormatValue","useTotalValueFromAmountAndPrice","price","amount","nativeAsset","total","AssetAmount","fromChainAsset","BigInt","Number","big","Big","number","toLocaleString","maximumFractionDigits","useTutorials","moonChainKey","baseUrl","xcm","concat","staking","claimRewards","useFeatureByChain","delegateAddressUrl","assetKey","getPermanentCoinGeckoIds","assetsDicts","reduce","assetsList","networkAssets","Object","getImportedCoinGeckoIds","importedTokens","importedTokensLists","flat","token","id","getCoinGeckoPrices","url","URL","dedupedIds","Set","searchParams","append","FiatCurrencies","join","cacheKey","cachedResponse","ls","response","fetchRetry","fetch","retries","retryDelay","retryOn","pricesResponse","responseOk","ok","prices","json","ttl","e","error","message","checkCoinGeckoId","Tab","DelegationAction","findClosestNumber","numbers","prev","curr","Math","abs","SliderProvider","useSliderContext","create_safe_context","R","SliderRoot","react","forwardRef","thumbSize","radius","others","ref","getStyles","Box","x","tabIndex","displayName","Thumb","max","min","position","dragging","onMouseDown","onKeyDownCapture","labelTransitionProps","labelAlwaysOn","thumbLabel","onFocus","onBlur","showLabelOnHover","isHovered","children","focused","setFocused","isVisible","role","__vars","focusable","mod","event","onTouchStart","stopPropagation","Transition","u","mounted","transition","duration","transitionStyles","getPosition","Marks","marks","offset","inverted","items","mark","index","createElement","filled","isMarkFilled","Track","marksOffset","containerProps","getFloatingValue","precision","parseFloat","toFixed","getNextMarkValue","currentValue","nextMark","sortedMarks","sort","a","b","getPreviousMarkValue","previousMark","getFirstMarkValue","getLastMarkValue","classes","defaultProps","step","f","scale","v","varsResolver","create_vars_resolver","Z","root","get_size","ap","get_theme_color","H5","rem","h","Slider","factory","d5","_props","use_props","w","classNames","styles","onChangeEnd","_precision","defaultValue","name","thumbChildren","unstyled","className","vars","hiddenInputProps","restrictToMarks","thumbProps","use_styles","y","dir","DirectionProvider","gm","hovered","setHovered","_value","setValue","use_uncontrolled","C","clamp","finalValue","valueRef","useRef","thumb","scaledValue","_label","getPrecision","split","handleChange","useCallback","nextValue","getChangeValue","containerWidth","dx","left","nextValueWithinStep","round","current","container","active","use_move","r","onScrubEnd","use_merged_ref","Yx","preventDefault","focus","nextValue2","onMouseDownCapture","onMouseEnter","onMouseLeave","transformSelectedCandidates","useSelectedCandidates","useApiCall","parachainStaking","selectedCandidates","transformCandidatesInfo","bond","info","toBigInt","delegationCount","totalCounted","lowestTopDelegationAmount","highestBottomDelegationAmount","lowestBottomDelegationAmount","topCapacity","bottomCapacity","useCandidatesInfo","candidates","candidateInfo","multi","transformCandidatePool","candidatePool","candidate","owner","transformDelegationTotal","delegations","useStakingParameters","minDelegation","consts","revokeDelegationDelay","delegationBondLessDelay","maxTopDelegationsPerCandidate","rewardPaymentDelay","transformRound","first","useRound","transformPoints","transformStakingCandidates","candidatesInfo","topDelegationsTotals","bottomDelegationsTotals","points","identities","i","minBond","identity","totalBacking","blocksLastRound","SortableHeader","property","sortType","sortBy","sortAsc","setSortType","isSortedByProp","UnstyledButton","fz","visibility","IoCaretUpOutline","IoCaretDownOutline","useStakingCandidateIndicators","staking_candidate_indicators","flag","useFlags","flagValue","getIndicators","indicators","parseJson","indicator","addresses","toLowerCase","icon","IoGameControllerOutline","IoDiamondOutline","console","transformDelegatorState","useDelegations","useProxiedOrAddress","delegatorState","delegation","isActive","Candidate","isDelegated","didProduceBlocks","handleRowButton","Table","Tr","onKeyDown","data-testid","Td","withCheckmark","isVerified","withLowQualitySign","isLowQuality","tt","warning","ActionIcon","IoCheckmarkCircleOutline","MoonTokenAmount","ta","withArrow","CandidatesList","setFilter","filteredCandidates","setFilteredCandidates","delegatedCandidates","useDelegatedCandidates","rows","candidateIndicators","pt","TextInput","py","currentTarget","leftSection","IoSearch","placeholder","aria-label","ScrollArea","highlightOnHover","cx","commonClasses","Thead","Th","colSpan","Tbody","SelectCandidateModal","isOpen","onClose","onSelect","tab","setTab","select","useStakingCandidates","useCandidatePool","useDelegationsTotal","topDelegations","bottomDelegations","useIdentities","usePoints","currentRound","params","awardedPts","stakingCandidates","order","aValue","Modal","opened","title","Tabs","List","grow","IoPeopleOutline","IoHourglassOutline","Panel","item","SelectCandidate","selectedCandidate","isModalOpen","setIsModalOpen","Button","inner","fullWidth","px","IoChevronForwardSharp","mb","Jazzicon","VoteDelegationModal","dismissVoteDelegationModal","setDismissVoteDelegationModal","useLocalStorage","PiShootingStar","content","padding","centered","Stack","symbol","originSymbol","mt","Checkbox","transformCount","useAutoCompoundingDelegationsCount","autoCompoundingDelegations","useDelegationsCount","STAKING_CONTRACT_ADDRESS","StakingContractABI","inputs","outputs","stateMutability","internalType","TransactionAction","STAKING_DELEGATION","useMaxAmountStaking","balances","useMoonBalances","useMaxAmount","availableForStaking","Stake","isWideTablet","useIsWideTablet","router","setAmount","sentAmount","setSentAmount","setSelectedCandidate","showVoteDelegationModal","setShowVoteDelegationModal","autoCompoundingPercentage","setAutoCompoundingPercentage","minAmount","maxAmount","maxInput","minInput","useMoonChainToDecimals","roundUp","validatedAmount","amountError","useValidateMoonChainAmount","writeContract","isSuccess","isPending","useDelegate","onSuccess","onSent","candidateAddress","candidateAutoCompoundingDelegationCount","delegatorDelegationCount","parseEther","useWriteContractAndConfirm","allowProxy","contractAddress","contractAbi","functionName","StakingFunctions","DELEGATE_WITH_AUTO_COMPOUND","onConfirmed","clean","useDidUpdate","events","on","buttonName","Card","withBorder","my","Title","InfoBlock","element","AssetAmountInput","input","description","asset","InfoLine","InputError","ActionCallButton","gaName","checkMoonChain","transformDelegationRequests","delegator","whenExecutable","isRevoke","isDecrease","asDecrease","useScheduledRequestRemainingTime","request","latestBlock","useLatestBlock","targetRound","targetBlock","useBlockRemainingTime","useDelegationInfo","at","useTopDelegations","unwrapOrDefault","refetchInterval","minDelegationBond","isInTopDelegations","reverse","isAddressEqual","d","scheduledRequests","useDelegationScheduledRequests","candidateRequests","delegationScheduledRequests","useDelegationAction","setIsLoading","close","config","useConfig","notifyTransactionConfirmed","notifyTransactionError","useWalletNotifications","writeContractReturn","onFetched","waitForTransactionReceipt","hash","then","tx","status","transactionHash","catch","finally","CancelRequest","sendButtonClickedEvent","useGaEvents","useCancelDelegationRequest","CANCEL","CANCEL_REQUEST","loading","IoCloseOutline","ICON_SIZE","ExecuteRequest","useExecuteDelegationRequest","EXECUTE","EXECUTION","IoCheckmarkOutline","Actions","delegationAmount","executeRemainingTime","AutoCompounding","Bond","Decrease","Revoke","useDelegationAutoCompound","blockNumber","useBlockNumber","parameters","watch","queryClient","QueryClientProvider","NL","configChainId","useChainId","chainId","getBlockNumberQueryOptions","gcTime","scopeKey","_","getBlockNumber_getBlockNumber","rest","client","getClient","getAction","s","getBlockNumber","z","getBlockNumberQueryKey","utils","OP","useWatchBlockNumber","onBlockNumber","watchBlockNumber_watchBlockNumber","unwatch","unsubscribe","syncConnectedChain","_internal","listener","watchBlockNumber","q","unlisten","subscribe","onError","emitMissed","emitOnBegin","poll","pollingInterval","Boolean","setQueryData","utils_query","aM","refetch","useReadContract","abi","code","readContractQueryOptions","addressOrCodeParams","readContract","L","readContractQueryKey","structuralSharing","ActionPopover","onConfirm","highlighted","tooltip","open","useClickOutside","Popover","width","withinPortal","div","align","bg","autoCompound","setAutoCompound","useDisclosure","activeAutoCompound","useSetAutoCompound","AUTO_COMPOUND","percentage","TbRefresh","IoInformationCircle","useBondMore","BOND","IoAdd","DelayWarning","baseMin","tooHighErrorMessage","AmountInputError","MaxDecreaseDelegation","useScheduleDecrease","DECREASE","IoRemoveCircle","useScheduleRevoke","REVOKE","IoBan","DelegationNotes","remaining","fs","IoArrowForwardOutline","Delegation","isMobile","useIsMobile","minDelegationLabel","maxDelegators","multiline","IoWarningOutline","StakingSummary","blockTime","useDelegationsList","delegationsToRender","setDelegationsToRender","prevDelegations","setTimeout","hours","calcTimePerRound","Center","ConnectEvmWallet","viewport","verticalSpacing","StakingWarningMessage","DelegationDelay","IoAlertCircleOutline","rounds","calcRewardDelayTime","isWide","useMediaQuery","titleForGA","ns","Head","meta","StakingAnnouncement","Staking","BalanceGrid","showHistoricalRewardRate","isStakingPage","permanentIds","setPrices","useRecoilValue","importedTokensAtom","importedTokensIds","atom","default","moonbaseAlpha","effects","createLocalStorageEffect","module","exports","visible","animate","height","circle","Skeleton","useDebouncedState","wait","leading","react__WEBPACK_IMPORTED_MODULE_0__","timeoutRef","leadingRef","clearTimeout","newValue","clampUseMovePosition","_utils_clamp_clamp_mjs__WEBPACK_IMPORTED_MODULE_1__","useMove","handlers","isSliding","frame","setActive","node","onScrub","cancelAnimationFrame","requestAnimationFrame","userSelect","rect","getBoundingClientRect","_x","top","bindEvents","document","addEventListener","onMouseMove","stopScrubbing","onTouchMove","unbindEvents","removeEventListener","startScrubbing","onScrubStart","clientX","clientY","cancelable","changedTouches","passive","timeout","_utils_getAction_js__WEBPACK_IMPORTED_MODULE_0__","viem_actions__WEBPACK_IMPORTED_MODULE_1__","receipt","action_getTransaction","viem_actions__WEBPACK_IMPORTED_MODULE_2__","txn","action_call","viem_actions__WEBPACK_IMPORTED_MODULE_3__","gasPrice","maxFeePerGas","maxPriorityFeePerGas","viem__WEBPACK_IMPORTED_MODULE_4__","rR","substring","chain","InvalidDecimalNumberError","BaseError","constructor","ether","unit","parseUnits","decimals","test","integer","fraction","negative","startsWith","slice","replace","right","rounded","padStart","padEnd","etherUnits","useWaitForTransactionReceipt","waitForTransactionReceiptQueryOptions","onReplaced","waitForTransactionReceiptQueryKey","writeContract_writeContract","account","connector","getConnectorClient","n","useWriteContract","mutation","mutationOptions","mutationFn","variables","mutationKey","mutate","mutateAsync","useMutation","D","writeContractAsync"],"sourceRoot":""}