{"version":3,"file":"static/chunks/134-c1cb9891ed440c4a.js","mappings":"iRCiCA,qCAAwBA,+BAjCN,kBACG,QAgCN,SAASA,EACtBC,CAA6C,CAC7CC,CAA2B,MAmChBC,EAjCX,IAAIC,EAAsC,CAExCC,QAAS,OAAC,CAAEC,MAAAA,CAAK,CAAEC,UAAAA,CAAS,CAAEC,UAAAA,CAAS,CAAE,CAAAC,SAgBhC,IACT,CACF,CAE8B,aAA1B,OAAOR,GACTG,CAAAA,EAAgBM,MAAM,CAAGT,CAAAA,EAG3B,IAAME,EAAgB,CACpB,GAAGC,CAAe,CAClB,GAAGF,CAAO,EAGZ,MAAOS,CAAAA,EAAAA,EAAAA,OAAQ,EAAC,CACd,GAAGR,CAAa,CAChBS,QAAO,MAAET,CAAAA,EAAAA,EAAcU,iBAAiB,SAA/BV,EAAiCS,OAAO,EAErD,iXC1DO,IAAAE,EAAsBC,EAAuC,gBAAvCC,EAAUC,CAAQ,EAC7C,GAAI,CAAAC,OAAAA,CAAOC,CAAAA,SAAAA,CAAW,EAAAV,KACpB,oBAAMU,OACR,UAAAL,EAAAM,iBAAA,CAAAF,GAGF,OAAAD,6GCoDA,qCAAAI,wBAxE+B,UACF,WAEF,OAK3B,SAASC,EACPC,CAA4D,EAW5D,MAAO,CACLC,QAASC,GAFe,YAAaF,EAGjCA,EAA4BC,OAAO,CAClCD,CACP,CACF,CAEA,IAAMG,EAAiB,CACrBhB,OAAQ,IAAMiB,QAAQC,OAAO,CAACN,EAAc,IAAM,OAClDjB,QAAS,KACTwB,IAAK,EACP,EAyCAR,EAhCA,SAAkBnB,CAAwB,EACxC,IAAM4B,EAAO,CAAE,GAAGJ,CAAc,CAAE,GAAGxB,CAAO,EACtC6B,EAAOC,CAAAA,EAAAA,EAAAA,IAAI,EAAC,IAAMF,EAAKpB,MAAM,GAAGuB,IAAI,CAACX,IACrCY,EAAUJ,EAAKzB,OAAO,CAE5B,SAAS8B,EAAkBC,CAAU,EACnC,IAAMC,EAAkBH,EACtB,GAAAI,EAAAC,GAAA,EAACL,EAAAA,CAAQ3B,UAAW,GAAMC,UAAW,GAAMF,MAAO,OAChD,KAEEW,EAAWa,EAAKD,GAAG,CACvB,GAAAS,EAAAE,IAAA,EAAAF,EAAAG,QAAA,YAEG,oBAAOtB,OACN,GAAAmB,EAAAC,GAAA,EAACG,EAAAA,UAAU,EAACC,UAAWb,EAAKlB,OAAO,GACjC,KACJ,GAAA0B,EAAAC,GAAA,EAACR,EAAAA,CAAM,GAAGK,CAAK,MAGjB,GAAAE,EAAAC,GAAA,EAACvB,EAAAA,YAAY,EAACE,OAAO,wBACnB,GAAAoB,EAAAC,GAAA,EAACR,EAAAA,CAAM,GAAGK,CAAK,KAInB,MAAO,GAAAE,EAAAC,GAAA,EAACK,EAAAA,QAAQ,EAACC,SAAUR,WAAkBpB,GAC/C,CAIA,OAFAkB,EAAkBW,WAAW,CAAG,oBAEzBX,CACT,wKClEOY,EAAsEhC,EAAA,gBAAlD2B,EAAWjC,CAAX,EACzB,IAAAkC,UAAAA,CAAA,EAAAlC,KAEE,oBAAOU,OACT,YAGA,IAAM6B,EAAa,GAAAD,EAAAE,uBAAA,sBAEnBD,EAAA,MAGEE,EAAMC,qBAAwBC,EAAAA,EAAAA,CAC9B,IAAKD,EAAME,EAAkBD,qBAAA,KAC3B,IAAKD,KAASE,EAAM,CACpB,IAAAF,CAAMG,CAAAA,EAAWH,CAAAA,SAGjBH,IAAAA,EAAiBM,CAAAA,CAAAA,EAAAA,CAAAA,KAAAA,CAAAA,MAAAA,CAAAA,GAAAA,EAAAA,QAAAA,CAAAA,SACnBN,EAAAO,IAAA,IAAAD,EACF,CAEA,QACEN,IAAAA,EAAOQ,MAAA,CACT,KAIKR,CAAAA,EAASS,EAAKC,GAAAA,EAAAA,EAAAA,QAAAA,CAAAA,UACbV,EAAAS,GAAA,IAGiB,GAAAnB,EAAAC,GAAA,UAEboB,WAAI,UACJC,IAAAA,aACAC,KAAGX,EAAAY,WAAA,WAAAC,UAAAL,GALEA,GAAAA,OAQX,EAAAA,GAGN,2HC5CA,SAAAM,EAAAC,CAAA,EACA,OACAC,QAAA,CAAAC,EAAAC,KACA,IAAAlE,EAAAiE,EAAAjE,OAAA,CACAmE,EAAAF,EAAAG,YAAA,EAAAC,MAAAC,WAAAH,UACAI,EAAAN,EAAAO,KAAA,CAAAC,IAAA,EAAAV,OAAA,GACAW,EAAAT,EAAAO,KAAA,CAAAC,IAAA,EAAAE,YAAA,GACAC,EAAA,CAAqBb,MAAA,GAAAY,WAAA,IACrBE,EAAA,EACAC,EAAA,UACA,IAAAC,EAAA,GACAC,EAAA,IACAC,OAAAC,cAAA,CAAAC,EAAA,UACAC,WAAA,GACAC,IAAA,KACApB,EAAAqB,MAAA,CAAAC,OAAA,CACAR,EAAA,GAEAd,EAAAqB,MAAA,CAAAE,gBAAA,cACAT,EAAA,EACA,GAEAd,EAAAqB,MAAA,CAEA,EACA,EACAG,EAAwB,GAAAC,EAAAC,EAAA,EAAa1B,EAAAjE,OAAA,CAAAiE,EAAAG,YAAA,EACrCwB,EAAA,MAAAnB,EAAAlE,EAAAsF,KACA,GAAAd,EACA,OAAAtD,QAAAqE,MAAA,GAEA,GAAAvF,MAAAA,GAAAkE,EAAAV,KAAA,CAAAT,MAAA,CACA,OAAA7B,QAAAC,OAAA,CAAA+C,GAEA,IAAAsB,EAAA,CACAC,OAAA/B,EAAA+B,MAAA,CACAC,SAAAhC,EAAAgC,QAAA,CACAC,UAAA3F,EACA4D,UAAA0B,EAAA,qBACAxB,KAAAJ,EAAAjE,OAAA,CAAAqE,IAAA,EAEAW,EAAAe,GACA,IAAAI,EAAA,MAAAV,EACAM,GAEA,CAAkBK,SAAAA,CAAA,EAAWnC,EAAAjE,OAAA,CAC7BqG,EAAAR,EAAmCH,EAAAY,EAAU,CAAGZ,EAAAa,EAAQ,CACxD,OACAxC,MAAAsC,EAAA5B,EAAAV,KAAA,CAAAoC,EAAAC,GACAzB,WAAA0B,EAAA5B,EAAAE,UAAA,CAAApE,EAAA6F,EACA,CACA,EACA,GAAAjC,GAAAI,EAAAjB,MAAA,EACA,IAAAuC,EAAA1B,aAAAA,EAEAqC,EAAA,CACAzC,MAAAQ,EACAI,WAAAD,CACA,EACAnE,EAAAkG,CALAZ,EAAAa,EAAAC,CAAA,EAKA3G,EAAAwG,GACA5B,EAAA,MAAAgB,EAAAY,EAAAjG,EAAAsF,EACA,KAAU,CACV,IAAAe,EAAA7C,GAAAQ,EAAAjB,MAAA,CACA,GACA,IAAA/C,EAAAsE,IAAAA,EAAAH,CAAA,KAAA1E,EAAA6G,gBAAA,CAAAF,EAAA3G,EAAA4E,GACA,GAAAC,EAAA,GAAAtE,MAAAA,EACA,MAEAqE,EAAA,MAAAgB,EAAAhB,EAAArE,GACAsE,GACA,OAAYA,EAAA+B,EAAA,CAEZ,OAAAhC,CACA,CACAX,CAAAA,EAAAjE,OAAA,CAAA8G,SAAA,CACA7C,EAAAa,OAAA,KACAb,EAAAjE,OAAA,CAAA8G,SAAA,GACAhC,EACA,CACAkB,OAAA/B,EAAA+B,MAAA,CACAC,SAAAhC,EAAAgC,QAAA,CACA5B,KAAAJ,EAAAjE,OAAA,CAAAqE,IAAA,CACAiB,OAAArB,EAAAqB,MAAA,EAEApB,GAIAD,EAAAa,OAAA,CAAAA,CAEA,CACA,CACA,CACA,SAAA6B,EAAA3G,CAAA,EAAqC+D,MAAAA,CAAA,CAAAY,WAAAA,CAAA,CAAmB,EACxD,IAAAoC,EAAAhD,EAAAT,MAAA,GACA,OAAAS,EAAAT,MAAA,GAAAtD,EAAA2G,gBAAA,CACA5C,CAAA,CAAAgD,EAAA,CACAhD,EACAY,CAAA,CAAAoC,EAAA,CACApC,GACA,MACA,CACA,SAAA+B,EAAA1G,CAAA,EAAyC+D,MAAAA,CAAA,CAAAY,WAAAA,CAAA,CAAmB,EAC5D,OAAAZ,EAAAT,MAAA,GAAAtD,EAAA0G,oBAAA,GAAA3C,CAAA,IAAAA,EAAAY,CAAA,IAAAA,GAAA,MACA,CACA,SAAAqC,EAAAhH,CAAA,CAAAyE,CAAA,QACA,EAAAA,GAEAkC,MAAAA,EAAA3G,EAAAyE,EACA,CACA,SAAAwC,EAAAjH,CAAA,CAAAyE,CAAA,QACA,EAAAA,KAAAzE,EAAA0G,oBAAA,EAEAA,MAAAA,EAAA1G,EAAAyE,EACA,mFC7GAyC,EAAA,cAA0CC,EAAAC,CAAa,CACvDC,YAAArB,CAAA,CAAAhG,CAAA,EACA,MAAAgG,EAAAhG,EACA,CACAsH,aAAA,CACA,MAAAA,cACA,KAAAC,aAAA,MAAAA,aAAA,CAAAC,IAAA,OACA,KAAAC,iBAAA,MAAAA,iBAAA,CAAAD,IAAA,MACA,CACAE,WAAA1H,CAAA,CAAA2H,CAAA,EACA,MAAAD,WACA,CACA,GAAA1H,CAAA,CACA4H,SAAkB,GAAAC,EAAAC,EAAA,GAClB,EACAH,EAEA,CACAI,oBAAA/H,CAAA,EAEA,OADAA,EAAA4H,QAAA,CAAuB,GAAAC,EAAAC,EAAA,IACvB,MAAAC,oBAAA/H,EACA,CACAuH,cAAAvH,CAAA,EACA,YAAAgI,KAAA,EACA,GAAAhI,CAAA,CACAqE,KAAA,CACAC,UAAA,CAAqBH,UAAA,UACrB,CACA,EACA,CACAsD,kBAAAzH,CAAA,EACA,YAAAgI,KAAA,EACA,GAAAhI,CAAA,CACAqE,KAAA,CACAC,UAAA,CAAqBH,UAAA,WACrB,CACA,EACA,CACA8D,aAAA/D,CAAA,CAAAlE,CAAA,EACA,IAAYwE,MAAAA,CAAA,EAAQN,EACpBgE,EAAA,MAAAD,aAAA/D,EAAAlE,GACA,CAAYmI,WAAAA,CAAA,CAAAC,aAAAA,CAAA,CAAAC,QAAAA,CAAA,CAAAC,eAAAA,CAAA,EAAoDJ,EAChEK,EAAA/D,EAAAgE,SAAA,EAAAlE,WAAAH,UACAsE,EAAAJ,GAAAE,YAAAA,EACAG,EAAAP,GAAAI,YAAAA,EACAI,EAAAN,GAAAE,aAAAA,EACAK,EAAAT,GAAAI,aAAAA,EAcA,MAbA,CACA,GAAAL,CAAA,CACAX,cAAA,KAAAA,aAAA,CACAE,kBAAA,KAAAA,iBAAA,CACAT,YAAmB,GAAAa,EAAAgB,EAAA,EAAW7I,EAAAwE,EAAAC,IAAA,EAC9BwC,gBAAuB,GAAAY,EAAAiB,EAAA,EAAe9I,EAAAwE,EAAAC,IAAA,EACtCgE,qBAAAA,EACAC,mBAAAA,EACAC,yBAAAA,EACAC,uBAAAA,EACAN,eAAAA,GAAA,CAAAG,GAAA,CAAAE,EACAP,aAAAA,GAAA,CAAAM,GAAA,CAAAE,CACA,CAEA,CACA,iGCGO,SAASG,EACd/I,CAAA,CACAgJ,CAAA,EAEA,MAAOC,CAAAA,EAAAA,EAAAA,CAAAA,EACLjJ,EACAkH,EAAAA,CAAqBA,CACrB8B,EAEJ,2GC1EO,SAASE,EAMdlJ,CAAA,CACAgJ,CAAA,EAQA,MAAOC,CAAAA,EAAAA,EAAAA,CAAAA,EACL,CACE,GAAGjJ,CAAA,CACHmJ,QAAS,GACTC,SAAU,GACVC,aAAcC,EAAAA,EAAmBA,CACjCC,gBAAiB,MACnB,EACAC,EAAAA,CAAaA,CACbR,EAEJ,iFC9BA,SAAAS,IACA,IAAAC,EAAsB,GAAAC,EAAAC,MAAA,EAAM,IAO5B,MANI,GAAAC,EAAAC,CAAA,EAAyB,KAC7BJ,EAAAK,OAAA,IACA,KACAL,EAAAK,OAAA,GACA,GACK,IACLL,CACA,iCELA,OAAAM,UAA8BL,EAAAM,SAAe,CAC7CC,wBAAAC,CAAA,EACA,IAAAC,EAAA,KAAAlI,KAAA,CAAAmI,QAAA,CAAAN,OAAA,CACA,GAAAK,GAAAD,EAAAG,SAAA,QAAApI,KAAA,CAAAoI,SAAA,EACA,IAAAC,EAAA,KAAArI,KAAA,CAAAsI,OAAA,CAAAT,OAAA,CACAQ,EAAAE,MAAA,CAAAL,EAAAM,YAAA,IACAH,EAAAI,KAAA,CAAAP,EAAAQ,WAAA,IACAL,EAAAM,GAAA,CAAAT,EAAAU,SAAA,CACAP,EAAAQ,IAAA,CAAAX,EAAAY,UAAA,CAEA,WACA,CAIAC,oBAAA,EACAC,QAAA,CACA,YAAAhJ,KAAA,CAAAnB,QAAA,CAEA,CACA,SAAAoK,EAAA,CAAoBpK,SAAAA,CAAA,CAAAuJ,UAAAA,CAAA,CAAqB,EACzC,IAAAc,EAAe,GAAAzB,EAAA0B,KAAA,IACfC,EAAgB,GAAA3B,EAAAC,MAAA,EAAM,MACtBW,EAAiB,GAAAZ,EAAAC,MAAA,EAAM,CACvBe,MAAA,EACAF,OAAA,EACAI,IAAA,EACAE,KAAA,CACA,GAgCA,MAtBI,GAAApB,EAAA4B,kBAAA,EAAkB,KACtB,IAAgBZ,MAAAA,CAAA,CAAAF,OAAAA,CAAA,CAAAI,IAAAA,CAAA,CAAAE,KAAAA,CAAA,EAA2BR,EAAAR,OAAA,CAC3C,GAAAO,GAAA,CAAAgB,EAAAvB,OAAA,GAAAY,GAAA,CAAAF,EACA,MACAa,CAAAA,EAAAvB,OAAA,CAAAyB,OAAA,CAAAC,WAAA,CAAAL,EACA,IAAAM,EAAAC,SAAAC,aAAA,UAaA,OAZAD,SAAAE,IAAA,CAAAC,WAAA,CAAAJ,GACAA,EAAAK,KAAA,EACAL,EAAAK,KAAA,CAAAC,UAAA;+BACA,EAAiCZ,EAAG;;mBAEpC,EAAqBT,EAAM;oBAC3B,EAAsBF,EAAO;iBAC7B,EAAmBI,EAAI;kBACvB,EAAoBE,EAAK;;QAEzB,GAEA,KACAY,SAAAE,IAAA,CAAAI,WAAA,CAAAP,EACA,CACA,EAAK,CAAApB,EAAA,EACOX,EAAAiC,aAAmB,CAAA5B,EAAA,CAAoBM,UAAAA,EAAAD,SAAAiB,EAAAd,QAAAD,CAAA,EAAsDZ,EAAAuC,YAAkB,CAAAnL,EAAA,CAAauK,IAAAA,CAAA,GACxI,CC9DA,IAAAa,EAAA,EAAyBpL,SAAAA,CAAA,CAAAqL,QAAAA,CAAA,CAAA9B,UAAAA,CAAA,CAAA+B,eAAAA,CAAA,CAAAC,OAAAA,CAAA,CAAAC,sBAAAA,CAAA,CAAAC,KAAAA,CAAA,CAAoF,IAC7G,IAAAC,EAA6B,GAAAC,EAAAC,CAAA,EAAWC,GACxCxB,EAAe,GAAAzB,EAAA0B,KAAA,IACfpH,EAAoB,GAAA0F,EAAAkD,OAAA,EAAO,MAC3BzB,GAAAA,EACAgB,QAAAA,EACA9B,UAAAA,EACAgC,OAAAA,EACAD,eAAA,IAEA,QAAAS,KADAL,EAAAM,GAAA,CAAAC,EAAA,IACAP,EAAAQ,MAAA,IACA,IAAAH,EACA,MAEAT,CAAAA,GAAAA,GACA,EACAa,SAAA,IACAT,EAAAM,GAAA,CAAAC,EAAA,IACA,IAAAP,EAAAU,MAAA,CAAAH,GAEA,GAMAT,EAAAa,KAAAA,EAAA,CAAA9C,EAAA,EAiBA,MAhBI,GAAAX,EAAAkD,OAAA,EAAO,KACXJ,EAAAY,OAAA,EAAAC,EAAAnK,IAAAsJ,EAAAM,GAAA,CAAA5J,EAAA,IACA,EAAK,CAAAmH,EAAA,EAKDX,EAAA4D,SAAe,MACnB,GACAd,EAAAlC,IAAA,GACA8B,GACAA,GACA,EAAK,CAAA/B,EAAA,EACL,cAAAkC,GACAzL,CAAAA,EAAmB4I,EAAAiC,aAAmB,CAACT,EAAQ,CAAIb,UAAAA,CAAA,EAAsBvJ,EAAA,EAE7D4I,EAAAiC,aAAmB,CAAC4B,EAAAC,CAAe,CAAAC,QAAA,EAAaC,MAAA1J,CAAA,EAAgBlD,EAC5E,EACA,SAAA6L,IACA,WAAAgB,GACA,2BE3CA,IAAAC,EAAA,GAAAC,EAAA3K,GAAA,KAiDA4K,EAAA,EAA2BhN,SAAAA,CAAA,CAAAuL,OAAAA,CAAA,CAAAF,QAAAA,EAAA,GAAAC,eAAAA,CAAA,CAAA2B,gBAAAA,CAAA,CAAAzB,sBAAAA,EAAA,GAAAC,KAAAA,EAAA,OAAiH,QDzD5IyB,EC0DI,GAAAC,EAAAC,CAAA,EAAS,CAAAH,EAAA,4CAGb,IAAAI,EAAwB,GAAAzE,EAAA0E,UAAA,EAAWC,EAAAC,CAAkB,EAAAH,WAAA,EAAiBI,WJ1DtE,IAAA9E,EAAsBD,IACtB,CAAAgF,EAAAC,EAAA,CAAsD,GAAA/E,EAAAgF,QAAA,EAAQ,GAC9DP,EAAwB,GAAAzE,EAAAiF,WAAA,EAAW,KACnClF,EAAAK,OAAA,EAAA2E,EAAAD,EAAA,EACA,EAAK,CAAAA,EAAA,EAML,OADgC,GAAA9E,EAAAiF,WAAA,EAAW,IAAOC,EAAAC,EAAK,CAAAC,UAAA,CAAAX,GAAA,CAAAA,EAAA,EACvDK,EAAA,GIgDoF,IACpF/E,EAAsBD,IAEtBuF,EAAAC,SAjDAlO,CAAA,EACA,IAAAmO,EAAA,GAMA,OAJIvF,EAAAwF,QAAQ,CAAA9B,OAAA,CAAAtM,EAAA,IACA,GAAA4I,EAAAyF,cAAA,EAActB,IAC1BoB,EAAA7L,IAAA,CAAAyK,EACA,GACAoB,CACA,EAyCAnO,GACAsO,EAAAL,EACAM,EAA4B,GAAA3F,EAAAC,MAAA,EAAM,IAAAgE,KAAA7D,OAAA,CAGlCwF,EAA4B,GAAA5F,EAAAC,MAAA,EAAMyF,GAElCG,EAAwB,GAAA7F,EAAAC,MAAA,EAAM,IAAAgE,KAAA7D,OAAA,CAG9B0F,EAA4B,GAAA9F,EAAAC,MAAA,EAAM,IAWlC,GAVI,GAAAC,EAAAC,CAAA,EAAyB,KAC7B2F,EAAA1F,OAAA,IACA2F,SApEA3O,CAAA,CAAAyO,CAAA,EACAzO,EAAAsM,OAAA,KACA,IAAAlK,EAAA0K,EAAAC,GACA0B,EAAAzC,GAAA,CAAA5J,EAAA2K,EACA,EACA,EA+DAkB,EAAAQ,GACAD,EAAAxF,OAAA,CAAAsF,CACA,GD/EApB,ECgFoB,KACpBwB,EAAA1F,OAAA,IACAyF,EAAAG,KAAA,GACAL,EAAAK,KAAA,EACA,EDnFW,GAAAhG,EAAA4D,SAAA,EAAS,QAAAU,IAAA,ICoFpBwB,EAAA1F,OAAA,CACA,OAAgBJ,EAAAiC,aAAmB,CAACjC,EAAApH,QAAc,MAAA8M,EAAA9L,GAAA,IAAyCoG,EAAAiC,aAAmB,CAACO,EAAa,CAAIhJ,IAAA0K,EAAAC,GAAAxD,UAAA,GAAA8B,QAAAA,EAAAA,GAAAgB,KAAAA,EAAAb,sBAAAA,EAAAC,KAAAA,CAAA,EAA0IsB,KAG1QuB,EAAA,IAAAA,EAAA,CAGA,IAAAO,EAAAL,EAAAxF,OAAA,CAAAxG,GAAA,CAAAsK,GACAgC,EAAAb,EAAAzL,GAAA,CAAAsK,GAEAiC,EAAAF,EAAAtM,MAAA,CACA,QAAAyM,EAAA,EAAoBA,EAAAD,EAAgBC,IAAA,CACpC,IAAA5M,EAAAyM,CAAA,CAAAG,EAAA,CACA,KAAAF,EAAAG,OAAA,CAAA7M,IAAAmM,EAAAW,GAAA,CAAA9M,IACAmM,EAAAvC,GAAA,CAAA5J,EAAAiK,KAAAA,EAEA,OAGA,SAAAZ,GAAA8C,EAAA/E,IAAA,EACA8E,CAAAA,EAAA,IAIAC,EAAAjC,OAAA,EAAA6C,EAAA/M,KAEA,GAAA0M,KAAAA,EAAAG,OAAA,CAAA7M,GACA,OACA,IAAA2K,EAAA0B,EAAAnK,GAAA,CAAAlC,GACA,IAAA2K,EACA,OACA,IAAAqC,EAAAP,EAAAI,OAAA,CAAA7M,GACAiN,EAAAF,EACAE,IA2BAA,EAAgCzG,EAAAiC,aAAmB,CAACO,EAAa,CAAIhJ,IAAA0K,EAAAC,GAAAxD,UAAA,GAAA+B,eA1BrE,KAEAiD,EAAAnC,MAAA,CAAAhK,GAIA,IAAAkN,EAAAC,MAAAC,IAAA,CAAAf,EAAAgB,IAAA,IAAAC,MAAA,KAAAZ,EAAAa,QAAA,CAAAC,IAaA,GAXAN,EAAAhD,OAAA,IAAAmC,EAAArC,MAAA,CAAAyD,IAEArB,EAAAxF,OAAA,CAAAiF,EAAAyB,MAAA,KACA,IAAAI,EAAAhD,EAAAiD,GACA,OAEAD,IAAA1N,GAEAkN,EAAAK,QAAA,CAAAG,EACA,GAEA,CAAAvB,EAAA/E,IAAA,EACA,GAAAb,CAAA,IAAAA,EAAAK,OAAA,CACA,OACAqE,IACA/B,GAAAA,GACA,CACA,EACqEC,OAAAA,EAAAC,sBAAAA,EAAAC,KAAAA,CAAA,EAA6IsB,GAClNwB,EAAAvC,GAAA,CAAA5J,EAAAiN,IAEAf,EAAA0B,MAAA,CAAAZ,EAAA,EAAAC,EACA,GAGAf,EAAAA,EAAA9L,GAAA,KACA,IAAAJ,EAAA2K,EAAA3K,GAAA,CACA,OAAAmM,EAAAW,GAAA,CAAA9M,GAAA2K,EAAqDnE,EAAAiC,aAAmB,CAACO,EAAa,CAAIhJ,IAAA0K,EAAAC,GAAAxD,UAAA,GAAAiC,sBAAAA,EAAAC,KAAAA,CAAA,EAAoGsB,EAC9L,GAMYnE,EAAAiC,aAAmB,CAACjC,EAAApH,QAAc,MAAA+M,EAAA/E,IAAA,CAC9C8E,EACAA,EAAA9L,GAAA,IAA0C,GAAAoG,EAAAuC,YAAA,EAAY4B,IACtD,gGEpKMkD,EAAc,IAAIpD,IASlBqD,EAA+C,IAAIC,QACrDC,EAAS,EAETC,EAAwC,OCqBrC,SAASC,QAnChBC,KAmC0B,CACxBC,UAAAA,CAAA,CACAC,MAAAA,CAAA,CACAC,gBAAAA,CAAA,CACAC,WAAAA,CAAA,CACAC,KAAAA,CAAA,CACAC,YAAAA,CAAA,CACAC,KAAAA,CAAA,CACAC,cAAAA,CAAA,CACAC,eAAAA,CAAA,CACAC,SAAAA,CAAA,CACF,CAX0BC,UAAA3O,MAAA,IAAA2O,KAAA,IAAAA,SAAA,IAAAA,SAAA,IAWD,CAAC,EAClB,CAAC3G,EAAK4G,EAAM,CAAUC,EAAAA,QAAA,CAAyB,MAC/ClE,EAAiBkE,EAAAA,MAAA,CAAwCH,GACzD,CAACxN,EAAO4N,EAAQ,CAAUD,EAAAA,QAAA,CAAgB,CAC9CE,OAAQ,CAAC,CAACP,EACVQ,MAAO,MACT,EAIArE,CAAAA,EAASlE,OAAA,CAAUiI,EAGbG,EAAAA,SAAA,CACJ,SAIMI,EAFJ,GAAIV,CAAAA,GAASvG,EA8Bb,OA3BAiH,EAAYC,SDqDhBpI,CAAA,CACA6D,CAAA,MACAjO,EAAAA,UAAAA,MAAAA,CAAAA,GAAAA,KAAAA,IAAAA,SAAAA,CAAAA,EAAAA,CAAAA,SAAAA,CAAAA,EAAAA,CAAoC,CAAC,EACrC+R,EAAAA,UAAAA,MAAAA,CAAAA,GAAAA,KAAAA,IAAAA,SAAAA,CAAAA,EAAAA,CAAAA,SAAAA,CAAAA,EAAAA,CAAiBX,EAEjB,GACE,KAAuC,IAAhCnQ,OAAOwR,oBAAA,EACdV,KAAmB,IAAnBA,EACA,CACA,IAAMW,EAAStI,EAAQuI,qBAAA,GAWvB,OAVA1E,EAAS8D,EAAgB,CACvBa,eAAgBb,EAChBc,OAAQzI,EACR0I,kBACE,iBAAO9S,EAAQuR,SAAA,CAAyBvR,EAAQuR,SAAA,CAAY,EAC9DwB,KAAM,EACNC,mBAAoBN,EACpBO,iBAAkBP,EAClBQ,WAAYR,CACd,GACO,KAEP,CACF,CAEA,GAAM,CAAEtH,GAAAA,CAAA,CAAI+H,SAAAA,CAAA,CAAUC,SAAAA,CAAA,CAAS,CAAIC,SApFbrT,CAAA,EAEtB,IAAMoL,EAjBCnG,OAAOuL,IAAA,CAiBSxQ,GAhBpBsT,IAAA,GACA7C,MAAA,CACC,GAASzQ,KAAmD,IAAnDA,CAAA,CAAQmD,EAAqC,EAEvDI,GAAA,CAAI,QAnBUoO,QAoBN,GACLxO,MAAAA,CADQA,EAAG,KAIboQ,MAAA,CAHEpQ,SAAAA,EApBN,CADiBwO,EAsBG3R,EAAQ2R,IAAI,GApB5BV,EAAQhB,GAAA,CAAI0B,KAChBR,GAAU,EACVF,EAAQlE,GAAA,CAAI4E,EAAMR,EAAOqC,QAAA,KAFKvC,EAAQ5L,GAAA,CAAIsM,IADxB,IAsBR3R,CAAA,CAAQmD,EACd,IAEDqQ,QAAA,GAMCC,EAAWzC,EAAY3L,GAAA,CAAI+F,GAE/B,GAAI,CAACqI,EAAU,KAITC,EAFJ,IAAMN,EAAW,IAAIxF,IAIfuF,EAAW,IAAIV,qBAAqB,IACxCkB,EAAQtG,OAAA,CAAQ,IAvEtB,IAAAiE,EA0EQ,IAAMe,EACJC,EAAMM,cAAA,EACNc,EAAWE,IAAA,CAAK,GAAetB,EAAMQ,iBAAA,EAAqBvB,EAGxDvR,CAAAA,EAAQyR,eAAA,EAAmB,KAA2B,IAApBa,EAAMuB,SAAA,EAG1CvB,CAAAA,EAAMuB,SAAA,CAAYxB,CAAAA,EAGpBf,MAAAA,CAAAA,EAAA8B,EAAS/N,GAAA,CAAIiN,EAAMO,MAAM,IAAzBvB,EAA4BjE,OAAA,CAAQ,IAClCY,EAASoE,EAAQC,EACnB,EACF,EACF,EAAGtS,GAGH0T,EACEP,EAASO,UAAA,EACRpD,CAAAA,MAAMwD,OAAA,CAAQ9T,EAAQuR,SAAS,EAC5BvR,EAAQuR,SAAA,CACR,CAACvR,EAAQuR,SAAA,EAAa,EAAC,EAE7BkC,EAAW,CACTrI,GAAAA,EACA+H,SAAAA,EACAC,SAAAA,CACF,EAEApC,EAAYjE,GAAA,CAAI3B,EAAIqI,EACtB,CAEA,OAAOA,CACT,EAmCoDzT,GAG5C+T,EAAYX,EAAS/N,GAAA,CAAI+E,IAAY,EAAC,CAQ5C,OAPKgJ,EAASnD,GAAA,CAAI7F,IAChBgJ,EAASrG,GAAA,CAAI3C,EAAS2J,GAGxBA,EAAU1Q,IAAA,CAAK4K,GACfkF,EAASX,OAAA,CAAQpI,GAEV,WAEL2J,EAAUhD,MAAA,CAAOgD,EAAU/D,OAAA,CAAQ/B,GAAW,GAErB,IAArB8F,EAAUzQ,MAAA,GAEZ8P,EAASjG,MAAA,CAAO/C,GAChB+I,EAASZ,SAAA,CAAUnI,IAGC,IAAlBgJ,EAAS7I,IAAA,GAEX4I,EAASa,UAAA,GACThD,EAAY7D,MAAA,CAAO/B,GAEvB,CACF,ECxGQE,EACA,CAAC+G,EAAQC,KACPF,EAAS,CACPC,OAAAA,EACAC,MAAAA,CACF,GACIrE,EAASlE,OAAA,EAASkE,EAASlE,OAAA,CAAQsI,EAAQC,GAE3CA,EAAMM,cAAA,EAAkBhB,GAAeW,IAEzCA,IACAA,EAAY,OAEhB,EACA,CACEZ,KAAAA,EACAD,WAAAA,EACAH,UAAAA,EAEAE,gBAAAA,EAEAD,MAAAA,CACF,EACAO,GAGK,KACDQ,GACFA,GAEJ,CACF,EAGA,CAEEjC,MAAMwD,OAAA,CAAQvC,GAAaA,EAAUiC,QAAA,GAAajC,EAClDjG,EACAqG,EACAD,EACAE,EACAC,EACAJ,EACAM,EACAP,EACF,EAGF,IAAMyC,EAAA,MAAc3C,CAAAA,EAAA9M,EAAM8N,KAAA,EAAN,OAAAhB,EAAauB,MAAA,CAC3BqB,EAA4B/B,EAAAA,MAAA,CAA4B,QAE3D7G,IACD2I,GACCrC,GACAC,GACDqC,EAAoBnK,OAAA,GAAYkK,IAIhCC,EAAoBnK,OAAA,CAAUkK,EAC9B7B,EAAS,CACPC,OAAQ,CAAC,CAACP,EACVQ,MAAO,MACT,IAGF,IAAM1N,EAAS,CAACsN,EAAQ1N,EAAM6N,MAAA,CAAQ7N,EAAM8N,KAAK,EAOjD,OAJA1N,EAAO0G,GAAA,CAAM1G,CAAA,CAAO,EAAC,CACrBA,EAAOyN,MAAA,CAASzN,CAAA,CAAO,EAAC,CACxBA,EAAO0N,KAAA,CAAQ1N,CAAA,CAAO,EAAC,CAEhBA,CACT,CF5EkCuP,EAAAA,SAAA","sources":["webpack://_N_E/../../node_modules/next/dist/api/app-dynamic.js","webpack://_N_E/../../../src/shared/lib/app-dynamic.tsx","webpack://_N_E/../../../shared/lib/lazy-dynamic/dynamic-bailout-to-csr.tsx","webpack://_N_E/../../../shared/lib/lazy-dynamic/loadable.tsx","webpack://_N_E/../../../shared/lib/lazy-dynamic/preload-css.tsx","webpack://_N_E/../../node_modules/@tanstack/query-core/build/modern/infiniteQueryBehavior.js","webpack://_N_E/../../node_modules/@tanstack/query-core/build/modern/infiniteQueryObserver.js","webpack://_N_E/../../src/useInfiniteQuery.ts","webpack://_N_E/../../src/useSuspenseQuery.ts","webpack://_N_E/../../node_modules/framer-motion/dist/es/utils/use-is-mounted.mjs","webpack://_N_E/../../node_modules/framer-motion/dist/es/utils/use-force-update.mjs","webpack://_N_E/../../node_modules/framer-motion/dist/es/components/AnimatePresence/PopChild.mjs","webpack://_N_E/../../node_modules/framer-motion/dist/es/components/AnimatePresence/PresenceChild.mjs","webpack://_N_E/../../node_modules/framer-motion/dist/es/utils/use-unmount-effect.mjs","webpack://_N_E/../../node_modules/framer-motion/dist/es/components/AnimatePresence/index.mjs","webpack://_N_E/../src/InView.tsx","webpack://_N_E/../src/observe.ts","webpack://_N_E/../src/useInView.tsx"],"sourcesContent":["export * from \"../shared/lib/app-dynamic\";\nexport { default } from \"../shared/lib/app-dynamic\";\n\n//# sourceMappingURL=app-dynamic.js.map",null,null,null,null,"// src/infiniteQueryBehavior.ts\nimport { addToEnd, addToStart, ensureQueryFn } from \"./utils.js\";\nfunction infiniteQueryBehavior(pages) {\n return {\n onFetch: (context, query) => {\n const options = context.options;\n const direction = context.fetchOptions?.meta?.fetchMore?.direction;\n const oldPages = context.state.data?.pages || [];\n const oldPageParams = context.state.data?.pageParams || [];\n let result = { pages: [], pageParams: [] };\n let currentPage = 0;\n const fetchFn = async () => {\n let cancelled = false;\n const addSignalProperty = (object) => {\n Object.defineProperty(object, \"signal\", {\n enumerable: true,\n get: () => {\n if (context.signal.aborted) {\n cancelled = true;\n } else {\n context.signal.addEventListener(\"abort\", () => {\n cancelled = true;\n });\n }\n return context.signal;\n }\n });\n };\n const queryFn = ensureQueryFn(context.options, context.fetchOptions);\n const fetchPage = async (data, param, previous) => {\n if (cancelled) {\n return Promise.reject();\n }\n if (param == null && data.pages.length) {\n return Promise.resolve(data);\n }\n const queryFnContext = {\n client: context.client,\n queryKey: context.queryKey,\n pageParam: param,\n direction: previous ? \"backward\" : \"forward\",\n meta: context.options.meta\n };\n addSignalProperty(queryFnContext);\n const page = await queryFn(\n queryFnContext\n );\n const { maxPages } = context.options;\n const addTo = previous ? addToStart : addToEnd;\n return {\n pages: addTo(data.pages, page, maxPages),\n pageParams: addTo(data.pageParams, param, maxPages)\n };\n };\n if (direction && oldPages.length) {\n const previous = direction === \"backward\";\n const pageParamFn = previous ? getPreviousPageParam : getNextPageParam;\n const oldData = {\n pages: oldPages,\n pageParams: oldPageParams\n };\n const param = pageParamFn(options, oldData);\n result = await fetchPage(oldData, param, previous);\n } else {\n const remainingPages = pages ?? oldPages.length;\n do {\n const param = currentPage === 0 ? oldPageParams[0] ?? options.initialPageParam : getNextPageParam(options, result);\n if (currentPage > 0 && param == null) {\n break;\n }\n result = await fetchPage(result, param);\n currentPage++;\n } while (currentPage < remainingPages);\n }\n return result;\n };\n if (context.options.persister) {\n context.fetchFn = () => {\n return context.options.persister?.(\n fetchFn,\n {\n client: context.client,\n queryKey: context.queryKey,\n meta: context.options.meta,\n signal: context.signal\n },\n query\n );\n };\n } else {\n context.fetchFn = fetchFn;\n }\n }\n };\n}\nfunction getNextPageParam(options, { pages, pageParams }) {\n const lastIndex = pages.length - 1;\n return pages.length > 0 ? options.getNextPageParam(\n pages[lastIndex],\n pages,\n pageParams[lastIndex],\n pageParams\n ) : void 0;\n}\nfunction getPreviousPageParam(options, { pages, pageParams }) {\n return pages.length > 0 ? options.getPreviousPageParam?.(pages[0], pages, pageParams[0], pageParams) : void 0;\n}\nfunction hasNextPage(options, data) {\n if (!data)\n return false;\n return getNextPageParam(options, data) != null;\n}\nfunction hasPreviousPage(options, data) {\n if (!data || !options.getPreviousPageParam)\n return false;\n return getPreviousPageParam(options, data) != null;\n}\nexport {\n hasNextPage,\n hasPreviousPage,\n infiniteQueryBehavior\n};\n//# sourceMappingURL=infiniteQueryBehavior.js.map","// src/infiniteQueryObserver.ts\nimport { QueryObserver } from \"./queryObserver.js\";\nimport {\n hasNextPage,\n hasPreviousPage,\n infiniteQueryBehavior\n} from \"./infiniteQueryBehavior.js\";\nvar InfiniteQueryObserver = class extends QueryObserver {\n constructor(client, options) {\n super(client, options);\n }\n bindMethods() {\n super.bindMethods();\n this.fetchNextPage = this.fetchNextPage.bind(this);\n this.fetchPreviousPage = this.fetchPreviousPage.bind(this);\n }\n setOptions(options, notifyOptions) {\n super.setOptions(\n {\n ...options,\n behavior: infiniteQueryBehavior()\n },\n notifyOptions\n );\n }\n getOptimisticResult(options) {\n options.behavior = infiniteQueryBehavior();\n return super.getOptimisticResult(options);\n }\n fetchNextPage(options) {\n return this.fetch({\n ...options,\n meta: {\n fetchMore: { direction: \"forward\" }\n }\n });\n }\n fetchPreviousPage(options) {\n return this.fetch({\n ...options,\n meta: {\n fetchMore: { direction: \"backward\" }\n }\n });\n }\n createResult(query, options) {\n const { state } = query;\n const parentResult = super.createResult(query, options);\n const { isFetching, isRefetching, isError, isRefetchError } = parentResult;\n const fetchDirection = state.fetchMeta?.fetchMore?.direction;\n const isFetchNextPageError = isError && fetchDirection === \"forward\";\n const isFetchingNextPage = isFetching && fetchDirection === \"forward\";\n const isFetchPreviousPageError = isError && fetchDirection === \"backward\";\n const isFetchingPreviousPage = isFetching && fetchDirection === \"backward\";\n const result = {\n ...parentResult,\n fetchNextPage: this.fetchNextPage,\n fetchPreviousPage: this.fetchPreviousPage,\n hasNextPage: hasNextPage(options, state.data),\n hasPreviousPage: hasPreviousPage(options, state.data),\n isFetchNextPageError,\n isFetchingNextPage,\n isFetchPreviousPageError,\n isFetchingPreviousPage,\n isRefetchError: isRefetchError && !isFetchNextPageError && !isFetchPreviousPageError,\n isRefetching: isRefetching && !isFetchingNextPage && !isFetchingPreviousPage\n };\n return result;\n }\n};\nexport {\n InfiniteQueryObserver\n};\n//# sourceMappingURL=infiniteQueryObserver.js.map","'use client'\nimport { InfiniteQueryObserver } from '@tanstack/query-core'\nimport { useBaseQuery } from './useBaseQuery'\nimport type {\n DefaultError,\n InfiniteData,\n QueryClient,\n QueryKey,\n QueryObserver,\n} from '@tanstack/query-core'\nimport type {\n DefinedUseInfiniteQueryResult,\n UseInfiniteQueryOptions,\n UseInfiniteQueryResult,\n} from './types'\nimport type {\n DefinedInitialDataInfiniteOptions,\n UndefinedInitialDataInfiniteOptions,\n} from './infiniteQueryOptions'\n\nexport function useInfiniteQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = InfiniteData,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n>(\n options: DefinedInitialDataInfiniteOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryKey,\n TPageParam\n >,\n queryClient?: QueryClient,\n): DefinedUseInfiniteQueryResult\n\nexport function useInfiniteQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = InfiniteData,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n>(\n options: UndefinedInitialDataInfiniteOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryKey,\n TPageParam\n >,\n queryClient?: QueryClient,\n): UseInfiniteQueryResult\n\nexport function useInfiniteQuery<\n TQueryFnData,\n TError = DefaultError,\n TData = InfiniteData,\n TQueryKey extends QueryKey = QueryKey,\n TPageParam = unknown,\n>(\n options: UseInfiniteQueryOptions<\n TQueryFnData,\n TError,\n TData,\n TQueryFnData,\n TQueryKey,\n TPageParam\n >,\n queryClient?: QueryClient,\n): UseInfiniteQueryResult\n\nexport function useInfiniteQuery(\n options: UseInfiniteQueryOptions,\n queryClient?: QueryClient,\n) {\n return useBaseQuery(\n options,\n InfiniteQueryObserver as typeof QueryObserver,\n queryClient,\n )\n}\n","'use client'\nimport { QueryObserver, skipToken } from '@tanstack/query-core'\nimport { useBaseQuery } from './useBaseQuery'\nimport { defaultThrowOnError } from './suspense'\nimport type { UseSuspenseQueryOptions, UseSuspenseQueryResult } from './types'\nimport type { DefaultError, QueryClient, QueryKey } from '@tanstack/query-core'\n\nexport function useSuspenseQuery<\n TQueryFnData = unknown,\n TError = DefaultError,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey,\n>(\n options: UseSuspenseQueryOptions,\n queryClient?: QueryClient,\n): UseSuspenseQueryResult {\n if (process.env.NODE_ENV !== 'production') {\n if ((options.queryFn as any) === skipToken) {\n console.error('skipToken is not allowed for useSuspenseQuery')\n }\n }\n\n return useBaseQuery(\n {\n ...options,\n enabled: true,\n suspense: true,\n throwOnError: defaultThrowOnError,\n placeholderData: undefined,\n },\n QueryObserver,\n queryClient,\n ) as UseSuspenseQueryResult\n}\n","import { useRef } from 'react';\nimport { useIsomorphicLayoutEffect } from './use-isomorphic-effect.mjs';\n\nfunction useIsMounted() {\n const isMounted = useRef(false);\n useIsomorphicLayoutEffect(() => {\n isMounted.current = true;\n return () => {\n isMounted.current = false;\n };\n }, []);\n return isMounted;\n}\n\nexport { useIsMounted };\n","import { useState, useCallback } from 'react';\nimport { useIsMounted } from './use-is-mounted.mjs';\nimport { frame } from '../frameloop/frame.mjs';\n\nfunction useForceUpdate() {\n const isMounted = useIsMounted();\n const [forcedRenderCount, setForcedRenderCount] = useState(0);\n const forceRender = useCallback(() => {\n isMounted.current && setForcedRenderCount(forcedRenderCount + 1);\n }, [forcedRenderCount]);\n /**\n * Defer this to the end of the next animation frame in case there are multiple\n * synchronous calls.\n */\n const deferredForceRender = useCallback(() => frame.postRender(forceRender), [forceRender]);\n return [deferredForceRender, forcedRenderCount];\n}\n\nexport { useForceUpdate };\n","import * as React from 'react';\nimport { useId, useRef, useInsertionEffect } from 'react';\n\n/**\n * Measurement functionality has to be within a separate component\n * to leverage snapshot lifecycle.\n */\nclass PopChildMeasure extends React.Component {\n getSnapshotBeforeUpdate(prevProps) {\n const element = this.props.childRef.current;\n if (element && prevProps.isPresent && !this.props.isPresent) {\n const size = this.props.sizeRef.current;\n size.height = element.offsetHeight || 0;\n size.width = element.offsetWidth || 0;\n size.top = element.offsetTop;\n size.left = element.offsetLeft;\n }\n return null;\n }\n /**\n * Required with getSnapshotBeforeUpdate to stop React complaining.\n */\n componentDidUpdate() { }\n render() {\n return this.props.children;\n }\n}\nfunction PopChild({ children, isPresent }) {\n const id = useId();\n const ref = useRef(null);\n const size = useRef({\n width: 0,\n height: 0,\n top: 0,\n left: 0,\n });\n /**\n * We create and inject a style block so we can apply this explicit\n * sizing in a non-destructive manner by just deleting the style block.\n *\n * We can't apply size via render as the measurement happens\n * in getSnapshotBeforeUpdate (post-render), likewise if we apply the\n * styles directly on the DOM node, we might be overwriting\n * styles set via the style prop.\n */\n useInsertionEffect(() => {\n const { width, height, top, left } = size.current;\n if (isPresent || !ref.current || !width || !height)\n return;\n ref.current.dataset.motionPopId = id;\n const style = document.createElement(\"style\");\n document.head.appendChild(style);\n if (style.sheet) {\n style.sheet.insertRule(`\n [data-motion-pop-id=\"${id}\"] {\n position: absolute !important;\n width: ${width}px !important;\n height: ${height}px !important;\n top: ${top}px !important;\n left: ${left}px !important;\n }\n `);\n }\n return () => {\n document.head.removeChild(style);\n };\n }, [isPresent]);\n return (React.createElement(PopChildMeasure, { isPresent: isPresent, childRef: ref, sizeRef: size }, React.cloneElement(children, { ref })));\n}\n\nexport { PopChild };\n","import * as React from 'react';\nimport { useId, useMemo } from 'react';\nimport { PresenceContext } from '../../context/PresenceContext.mjs';\nimport { useConstant } from '../../utils/use-constant.mjs';\nimport { PopChild } from './PopChild.mjs';\n\nconst PresenceChild = ({ children, initial, isPresent, onExitComplete, custom, presenceAffectsLayout, mode, }) => {\n const presenceChildren = useConstant(newChildrenMap);\n const id = useId();\n const context = useMemo(() => ({\n id,\n initial,\n isPresent,\n custom,\n onExitComplete: (childId) => {\n presenceChildren.set(childId, true);\n for (const isComplete of presenceChildren.values()) {\n if (!isComplete)\n return; // can stop searching when any is incomplete\n }\n onExitComplete && onExitComplete();\n },\n register: (childId) => {\n presenceChildren.set(childId, false);\n return () => presenceChildren.delete(childId);\n },\n }), \n /**\n * If the presence of a child affects the layout of the components around it,\n * we want to make a new context value to ensure they get re-rendered\n * so they can detect that layout change.\n */\n presenceAffectsLayout ? undefined : [isPresent]);\n useMemo(() => {\n presenceChildren.forEach((_, key) => presenceChildren.set(key, false));\n }, [isPresent]);\n /**\n * If there's no `motion` components to fire exit animations, we want to remove this\n * component immediately.\n */\n React.useEffect(() => {\n !isPresent &&\n !presenceChildren.size &&\n onExitComplete &&\n onExitComplete();\n }, [isPresent]);\n if (mode === \"popLayout\") {\n children = React.createElement(PopChild, { isPresent: isPresent }, children);\n }\n return (React.createElement(PresenceContext.Provider, { value: context }, children));\n};\nfunction newChildrenMap() {\n return new Map();\n}\n\nexport { PresenceChild };\n","import { useEffect } from 'react';\n\nfunction useUnmountEffect(callback) {\n return useEffect(() => () => callback(), []);\n}\n\nexport { useUnmountEffect };\n","import * as React from 'react';\nimport { useContext, useRef, cloneElement, Children, isValidElement } from 'react';\nimport { useForceUpdate } from '../../utils/use-force-update.mjs';\nimport { useIsMounted } from '../../utils/use-is-mounted.mjs';\nimport { PresenceChild } from './PresenceChild.mjs';\nimport { LayoutGroupContext } from '../../context/LayoutGroupContext.mjs';\nimport { useIsomorphicLayoutEffect } from '../../utils/use-isomorphic-effect.mjs';\nimport { useUnmountEffect } from '../../utils/use-unmount-effect.mjs';\nimport { invariant } from '../../utils/errors.mjs';\n\nconst getChildKey = (child) => child.key || \"\";\nfunction updateChildLookup(children, allChildren) {\n children.forEach((child) => {\n const key = getChildKey(child);\n allChildren.set(key, child);\n });\n}\nfunction onlyElements(children) {\n const filtered = [];\n // We use forEach here instead of map as map mutates the component key by preprending `.$`\n Children.forEach(children, (child) => {\n if (isValidElement(child))\n filtered.push(child);\n });\n return filtered;\n}\n/**\n * `AnimatePresence` enables the animation of components that have been removed from the tree.\n *\n * When adding/removing more than a single child, every child **must** be given a unique `key` prop.\n *\n * Any `motion` components that have an `exit` property defined will animate out when removed from\n * the tree.\n *\n * ```jsx\n * import { motion, AnimatePresence } from 'framer-motion'\n *\n * export const Items = ({ items }) => (\n * \n * {items.map(item => (\n * \n * ))}\n * \n * )\n * ```\n *\n * You can sequence exit animations throughout a tree using variants.\n *\n * If a child contains multiple `motion` components with `exit` props, it will only unmount the child\n * once all `motion` components have finished animating out. Likewise, any components using\n * `usePresence` all need to call `safeToRemove`.\n *\n * @public\n */\nconst AnimatePresence = ({ children, custom, initial = true, onExitComplete, exitBeforeEnter, presenceAffectsLayout = true, mode = \"sync\", }) => {\n invariant(!exitBeforeEnter, \"Replace exitBeforeEnter with mode='wait'\");\n // We want to force a re-render once all exiting animations have finished. We\n // either use a local forceRender function, or one from a parent context if it exists.\n const forceRender = useContext(LayoutGroupContext).forceRender || useForceUpdate()[0];\n const isMounted = useIsMounted();\n // Filter out any children that aren't ReactElements. We can only track ReactElements with a props.key\n const filteredChildren = onlyElements(children);\n let childrenToRender = filteredChildren;\n const exitingChildren = useRef(new Map()).current;\n // Keep a living record of the children we're actually rendering so we\n // can diff to figure out which are entering and exiting\n const presentChildren = useRef(childrenToRender);\n // A lookup table to quickly reference components by key\n const allChildren = useRef(new Map()).current;\n // If this is the initial component render, just deal with logic surrounding whether\n // we play onMount animations or not.\n const isInitialRender = useRef(true);\n useIsomorphicLayoutEffect(() => {\n isInitialRender.current = false;\n updateChildLookup(filteredChildren, allChildren);\n presentChildren.current = childrenToRender;\n });\n useUnmountEffect(() => {\n isInitialRender.current = true;\n allChildren.clear();\n exitingChildren.clear();\n });\n if (isInitialRender.current) {\n return (React.createElement(React.Fragment, null, childrenToRender.map((child) => (React.createElement(PresenceChild, { key: getChildKey(child), isPresent: true, initial: initial ? undefined : false, presenceAffectsLayout: presenceAffectsLayout, mode: mode }, child)))));\n }\n // If this is a subsequent render, deal with entering and exiting children\n childrenToRender = [...childrenToRender];\n // Diff the keys of the currently-present and target children to update our\n // exiting list.\n const presentKeys = presentChildren.current.map(getChildKey);\n const targetKeys = filteredChildren.map(getChildKey);\n // Diff the present children with our target children and mark those that are exiting\n const numPresent = presentKeys.length;\n for (let i = 0; i < numPresent; i++) {\n const key = presentKeys[i];\n if (targetKeys.indexOf(key) === -1 && !exitingChildren.has(key)) {\n exitingChildren.set(key, undefined);\n }\n }\n // If we currently have exiting children, and we're deferring rendering incoming children\n // until after all current children have exiting, empty the childrenToRender array\n if (mode === \"wait\" && exitingChildren.size) {\n childrenToRender = [];\n }\n // Loop through all currently exiting components and clone them to overwrite `animate`\n // with any `exit` prop they might have defined.\n exitingChildren.forEach((component, key) => {\n // If this component is actually entering again, early return\n if (targetKeys.indexOf(key) !== -1)\n return;\n const child = allChildren.get(key);\n if (!child)\n return;\n const insertionIndex = presentKeys.indexOf(key);\n let exitingComponent = component;\n if (!exitingComponent) {\n const onExit = () => {\n // clean up the exiting children map\n exitingChildren.delete(key);\n // compute the keys of children that were rendered once but are no longer present\n // this could happen in case of too many fast consequent renderings\n // @link https://github.com/framer/motion/issues/2023\n const leftOverKeys = Array.from(allChildren.keys()).filter((childKey) => !targetKeys.includes(childKey));\n // clean up the all children map\n leftOverKeys.forEach((leftOverKey) => allChildren.delete(leftOverKey));\n // make sure to render only the children that are actually visible\n presentChildren.current = filteredChildren.filter((presentChild) => {\n const presentChildKey = getChildKey(presentChild);\n return (\n // filter out the node exiting\n presentChildKey === key ||\n // filter out the leftover children\n leftOverKeys.includes(presentChildKey));\n });\n // Defer re-rendering until all exiting children have indeed left\n if (!exitingChildren.size) {\n if (isMounted.current === false)\n return;\n forceRender();\n onExitComplete && onExitComplete();\n }\n };\n exitingComponent = (React.createElement(PresenceChild, { key: getChildKey(child), isPresent: false, onExitComplete: onExit, custom: custom, presenceAffectsLayout: presenceAffectsLayout, mode: mode }, child));\n exitingChildren.set(key, exitingComponent);\n }\n childrenToRender.splice(insertionIndex, 0, exitingComponent);\n });\n // Add `MotionContext` even to children that don't need it to ensure we're rendering\n // the same tree between renders\n childrenToRender = childrenToRender.map((child) => {\n const key = child.key;\n return exitingChildren.has(key) ? (child) : (React.createElement(PresenceChild, { key: getChildKey(child), isPresent: true, presenceAffectsLayout: presenceAffectsLayout, mode: mode }, child));\n });\n if (process.env.NODE_ENV !== \"production\" &&\n mode === \"wait\" &&\n childrenToRender.length > 1) {\n console.warn(`You're attempting to animate multiple children within AnimatePresence, but its mode is set to \"wait\". This will lead to odd visual behaviour.`);\n }\n return (React.createElement(React.Fragment, null, exitingChildren.size\n ? childrenToRender\n : childrenToRender.map((child) => cloneElement(child))));\n};\n\nexport { AnimatePresence };\n","import * as React from \"react\";\nimport type { IntersectionObserverProps, PlainChildrenProps } from \"./index\";\nimport { observe } from \"./observe\";\n\ntype State = {\n inView: boolean;\n entry?: IntersectionObserverEntry;\n};\n\nfunction isPlainChildren(\n props: IntersectionObserverProps | PlainChildrenProps,\n): props is PlainChildrenProps {\n return typeof props.children !== \"function\";\n}\n\n/**\n ## Render props\n\n To use the `` component, you pass it a function. It will be called\n whenever the state changes, with the new value of `inView`. In addition to the\n `inView` prop, children also receive a `ref` that should be set on the\n containing DOM element. This is the element that the IntersectionObserver will\n monitor.\n\n If you need it, you can also access the\n [`IntersectionObserverEntry`](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserverEntry)\n on `entry`, giving you access to all the details about the current intersection\n state.\n\n ```jsx\n import { InView } from 'react-intersection-observer';\n\n const Component = () => (\n \n {({ inView, ref, entry }) => (\n
\n

{`Header inside viewport ${inView}.`}

\n
\n )}\n
\n );\n\n export default Component;\n ```\n\n ## Plain children\n\n You can pass any element to the ``, and it will handle creating the\n wrapping DOM element. Add a handler to the `onChange` method, and control the\n state in your own component. Any extra props you add to `` will be\n passed to the HTML element, allowing you set the `className`, `style`, etc.\n\n ```jsx\n import { InView } from 'react-intersection-observer';\n\n const Component = () => (\n console.log('Inview:', inView)}>\n

Plain children are always rendered. Use onChange to monitor state.

\n
\n );\n\n export default Component;\n ```\n */\nexport class InView extends React.Component<\n IntersectionObserverProps | PlainChildrenProps,\n State\n> {\n node: Element | null = null;\n _unobserveCb: (() => void) | null = null;\n\n constructor(props: IntersectionObserverProps | PlainChildrenProps) {\n super(props);\n this.state = {\n inView: !!props.initialInView,\n entry: undefined,\n };\n }\n\n componentDidMount() {\n this.unobserve();\n this.observeNode();\n }\n\n componentDidUpdate(prevProps: IntersectionObserverProps) {\n // If a IntersectionObserver option changed, reinit the observer\n if (\n prevProps.rootMargin !== this.props.rootMargin ||\n prevProps.root !== this.props.root ||\n prevProps.threshold !== this.props.threshold ||\n prevProps.skip !== this.props.skip ||\n prevProps.trackVisibility !== this.props.trackVisibility ||\n prevProps.delay !== this.props.delay\n ) {\n this.unobserve();\n this.observeNode();\n }\n }\n\n componentWillUnmount() {\n this.unobserve();\n }\n\n observeNode() {\n if (!this.node || this.props.skip) return;\n const {\n threshold,\n root,\n rootMargin,\n trackVisibility,\n delay,\n fallbackInView,\n } = this.props;\n\n this._unobserveCb = observe(\n this.node,\n this.handleChange,\n {\n threshold,\n root,\n rootMargin,\n // @ts-ignore\n trackVisibility,\n // @ts-ignore\n delay,\n },\n fallbackInView,\n );\n }\n\n unobserve() {\n if (this._unobserveCb) {\n this._unobserveCb();\n this._unobserveCb = null;\n }\n }\n\n handleNode = (node?: Element | null) => {\n if (this.node) {\n // Clear the old observer, before we start observing a new element\n this.unobserve();\n\n if (!node && !this.props.triggerOnce && !this.props.skip) {\n // Reset the state if we get a new node, and we aren't ignoring updates\n this.setState({ inView: !!this.props.initialInView, entry: undefined });\n }\n }\n\n this.node = node ? node : null;\n this.observeNode();\n };\n\n handleChange = (inView: boolean, entry: IntersectionObserverEntry) => {\n if (inView && this.props.triggerOnce) {\n // If `triggerOnce` is true, we should stop observing the element.\n this.unobserve();\n }\n if (!isPlainChildren(this.props)) {\n // Store the current State, so we can pass it to the children in the next render update\n // There's no reason to update the state for plain children, since it's not used in the rendering.\n this.setState({ inView, entry });\n }\n if (this.props.onChange) {\n // If the user is actively listening for onChange, always trigger it\n this.props.onChange(inView, entry);\n }\n };\n\n render() {\n const { children } = this.props;\n if (typeof children === \"function\") {\n const { inView, entry } = this.state;\n return children({ inView, entry, ref: this.handleNode });\n }\n\n const {\n as,\n triggerOnce,\n threshold,\n root,\n rootMargin,\n onChange,\n skip,\n trackVisibility,\n delay,\n initialInView,\n fallbackInView,\n ...props\n } = this.props as PlainChildrenProps;\n\n return React.createElement(\n as || \"div\",\n { ref: this.handleNode, ...props },\n children,\n );\n }\n}\n","import type { ObserverInstanceCallback } from \"./index\";\n\nconst observerMap = new Map<\n string,\n {\n id: string;\n observer: IntersectionObserver;\n elements: Map>;\n }\n>();\n\nconst RootIds: WeakMap = new WeakMap();\nlet rootId = 0;\n\nlet unsupportedValue: boolean | undefined = undefined;\n\n/**\n * What should be the default behavior if the IntersectionObserver is unsupported?\n * Ideally the polyfill has been loaded, you can have the following happen:\n * - `undefined`: Throw an error\n * - `true` or `false`: Set the `inView` value to this regardless of intersection state\n * **/\nexport function defaultFallbackInView(inView: boolean | undefined) {\n unsupportedValue = inView;\n}\n\n/**\n * Generate a unique ID for the root element\n * @param root\n */\nfunction getRootId(root: IntersectionObserverInit[\"root\"]) {\n if (!root) return \"0\";\n if (RootIds.has(root)) return RootIds.get(root);\n rootId += 1;\n RootIds.set(root, rootId.toString());\n return RootIds.get(root);\n}\n\n/**\n * Convert the options to a string Id, based on the values.\n * Ensures we can reuse the same observer when observing elements with the same options.\n * @param options\n */\nexport function optionsToId(options: IntersectionObserverInit) {\n return Object.keys(options)\n .sort()\n .filter(\n (key) => options[key as keyof IntersectionObserverInit] !== undefined,\n )\n .map((key) => {\n return `${key}_${\n key === \"root\"\n ? getRootId(options.root)\n : options[key as keyof IntersectionObserverInit]\n }`;\n })\n .toString();\n}\n\nfunction createObserver(options: IntersectionObserverInit) {\n // Create a unique ID for this observer instance, based on the root, root margin and threshold.\n const id = optionsToId(options);\n let instance = observerMap.get(id);\n\n if (!instance) {\n // Create a map of elements this observer is going to observe. Each element has a list of callbacks that should be triggered, once it comes into view.\n const elements = new Map>();\n // biome-ignore lint/style/useConst: It's fine to use let here, as we are going to assign it later\n let thresholds: number[] | readonly number[];\n\n const observer = new IntersectionObserver((entries) => {\n entries.forEach((entry) => {\n // While it would be nice if you could just look at isIntersecting to determine if the component is inside the viewport, browsers can't agree on how to use it.\n // -Firefox ignores `threshold` when considering `isIntersecting`, so it will never be false again if `threshold` is > 0\n const inView =\n entry.isIntersecting &&\n thresholds.some((threshold) => entry.intersectionRatio >= threshold);\n\n // @ts-ignore support IntersectionObserver v2\n if (options.trackVisibility && typeof entry.isVisible === \"undefined\") {\n // The browser doesn't support Intersection Observer v2, falling back to v1 behavior.\n // @ts-ignore\n entry.isVisible = inView;\n }\n\n elements.get(entry.target)?.forEach((callback) => {\n callback(inView, entry);\n });\n });\n }, options);\n\n // Ensure we have a valid thresholds array. If not, use the threshold from the options\n thresholds =\n observer.thresholds ||\n (Array.isArray(options.threshold)\n ? options.threshold\n : [options.threshold || 0]);\n\n instance = {\n id,\n observer,\n elements,\n };\n\n observerMap.set(id, instance);\n }\n\n return instance;\n}\n\n/**\n * @param element - DOM Element to observe\n * @param callback - Callback function to trigger when intersection status changes\n * @param options - Intersection Observer options\n * @param fallbackInView - Fallback inView value.\n * @return Function - Cleanup function that should be triggered to unregister the observer\n */\nexport function observe(\n element: Element,\n callback: ObserverInstanceCallback,\n options: IntersectionObserverInit = {},\n fallbackInView = unsupportedValue,\n) {\n if (\n typeof window.IntersectionObserver === \"undefined\" &&\n fallbackInView !== undefined\n ) {\n const bounds = element.getBoundingClientRect();\n callback(fallbackInView, {\n isIntersecting: fallbackInView,\n target: element,\n intersectionRatio:\n typeof options.threshold === \"number\" ? options.threshold : 0,\n time: 0,\n boundingClientRect: bounds,\n intersectionRect: bounds,\n rootBounds: bounds,\n });\n return () => {\n // Nothing to cleanup\n };\n }\n // An observer with the same options can be reused, so lets use this fact\n const { id, observer, elements } = createObserver(options);\n\n // Register the callback listener for this element\n const callbacks = elements.get(element) || [];\n if (!elements.has(element)) {\n elements.set(element, callbacks);\n }\n\n callbacks.push(callback);\n observer.observe(element);\n\n return function unobserve() {\n // Remove the callback from the callback list\n callbacks.splice(callbacks.indexOf(callback), 1);\n\n if (callbacks.length === 0) {\n // No more callback exists for element, so destroy it\n elements.delete(element);\n observer.unobserve(element);\n }\n\n if (elements.size === 0) {\n // No more elements are being observer by this instance, so destroy it\n observer.disconnect();\n observerMap.delete(id);\n }\n };\n}\n","import * as React from \"react\";\nimport type { InViewHookResponse, IntersectionOptions } from \"./index\";\nimport { observe } from \"./observe\";\n\ntype State = {\n inView: boolean;\n entry?: IntersectionObserverEntry;\n};\n\n/**\n * React Hooks make it easy to monitor the `inView` state of your components. Call\n * the `useInView` hook with the (optional) [options](#options) you need. It will\n * return an array containing a `ref`, the `inView` status and the current\n * [`entry`](https://developer.mozilla.org/en-US/docs/Web/API/IntersectionObserverEntry).\n * Assign the `ref` to the DOM element you want to monitor, and the hook will\n * report the status.\n *\n * @example\n * ```jsx\n * import React from 'react';\n * import { useInView } from 'react-intersection-observer';\n *\n * const Component = () => {\n * const { ref, inView, entry } = useInView({\n * threshold: 0,\n * });\n *\n * return (\n *
\n *

{`Header inside viewport ${inView}.`}

\n *
\n * );\n * };\n * ```\n */\nexport function useInView({\n threshold,\n delay,\n trackVisibility,\n rootMargin,\n root,\n triggerOnce,\n skip,\n initialInView,\n fallbackInView,\n onChange,\n}: IntersectionOptions = {}): InViewHookResponse {\n const [ref, setRef] = React.useState(null);\n const callback = React.useRef(onChange);\n const [state, setState] = React.useState({\n inView: !!initialInView,\n entry: undefined,\n });\n\n // Store the onChange callback in a `ref`, so we can access the latest instance\n // inside the `useEffect`, but without triggering a rerender.\n callback.current = onChange;\n\n // biome-ignore lint/correctness/useExhaustiveDependencies: threshold is not correctly detected as a dependency\n React.useEffect(\n () => {\n // Ensure we have node ref, and that we shouldn't skip observing\n if (skip || !ref) return;\n\n let unobserve: (() => void) | undefined;\n unobserve = observe(\n ref,\n (inView, entry) => {\n setState({\n inView,\n entry,\n });\n if (callback.current) callback.current(inView, entry);\n\n if (entry.isIntersecting && triggerOnce && unobserve) {\n // If it should only trigger once, unobserve the element after it's inView\n unobserve();\n unobserve = undefined;\n }\n },\n {\n root,\n rootMargin,\n threshold,\n // @ts-ignore\n trackVisibility,\n // @ts-ignore\n delay,\n },\n fallbackInView,\n );\n\n return () => {\n if (unobserve) {\n unobserve();\n }\n };\n },\n // We break the rule here, because we aren't including the actual `threshold` variable\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n // If the threshold is an array, convert it to a string, so it won't change between renders.\n Array.isArray(threshold) ? threshold.toString() : threshold,\n ref,\n root,\n rootMargin,\n triggerOnce,\n skip,\n trackVisibility,\n fallbackInView,\n delay,\n ],\n );\n\n const entryTarget = state.entry?.target;\n const previousEntryTarget = React.useRef(undefined);\n if (\n !ref &&\n entryTarget &&\n !triggerOnce &&\n !skip &&\n previousEntryTarget.current !== entryTarget\n ) {\n // If we don't have a node ref, then reset the state (unless the hook is set to only `triggerOnce` or `skip`)\n // This ensures we correctly reflect the current state - If you aren't observing anything, then nothing is inView\n previousEntryTarget.current = entryTarget;\n setState({\n inView: !!initialInView,\n entry: undefined,\n });\n }\n\n const result = [setRef, state.inView, state.entry] as InViewHookResponse;\n\n // Support object destructuring, by adding the specific values.\n result.ref = result[0];\n result.inView = result[1];\n result.entry = result[2];\n\n return result;\n}\n"],"names":["dynamic","dynamicOptions","options","mergedOptions","loadableOptions","loading","error","isLoading","pastDelay","param","loader","Loadable","modules","loadableGenerated","_bailouttocsr","require","BailoutToCSR","children","reason","window","BailoutToCSRError","_default","convertModule","mod","default","hasDefault","defaultOptions","Promise","resolve","ssr","opts","Lazy","lazy","then","Loading","LoadableComponent","props","fallbackElement","_jsxruntime","jsx","jsxs","Fragment","PreloadCss","moduleIds","Suspense","fallback","displayName","_requestasyncstorageexternal","allFiles","getExpectedRequestStore","requestStore","manifest","reactLoadableManifest","key","cssFiles","push","length","map","file","rel","href","as","assetPrefix","encodeURI","infiniteQueryBehavior","pages","onFetch","context","query","direction","fetchOptions","meta","fetchMore","oldPages","state","data","oldPageParams","pageParams","result","currentPage","fetchFn","cancelled","addSignalProperty","Object","defineProperty","object","enumerable","get","signal","aborted","addEventListener","queryFn","_utils_js__WEBPACK_IMPORTED_MODULE_0__","cG","fetchPage","previous","reject","queryFnContext","client","queryKey","pageParam","page","maxPages","addTo","Ht","VX","oldData","pageParamFn","getPreviousPageParam","getNextPageParam","remainingPages","initialPageParam","persister","lastIndex","hasNextPage","hasPreviousPage","InfiniteQueryObserver","_queryObserver_js__WEBPACK_IMPORTED_MODULE_0__","z","constructor","bindMethods","fetchNextPage","bind","fetchPreviousPage","setOptions","notifyOptions","behavior","_infiniteQueryBehavior_js__WEBPACK_IMPORTED_MODULE_1__","Gm","getOptimisticResult","fetch","createResult","parentResult","isFetching","isRefetching","isError","isRefetchError","fetchDirection","fetchMeta","isFetchNextPageError","isFetchingNextPage","isFetchPreviousPageError","isFetchingPreviousPage","Qy","ZF","useInfiniteQuery","queryClient","useBaseQuery","useSuspenseQuery","enabled","suspense","throwOnError","defaultThrowOnError","placeholderData","QueryObserver","useIsMounted","isMounted","react","useRef","use_isomorphic_effect","L","current","PopChildMeasure","Component","getSnapshotBeforeUpdate","prevProps","element","childRef","isPresent","size","sizeRef","height","offsetHeight","width","offsetWidth","top","offsetTop","left","offsetLeft","componentDidUpdate","render","PopChild","id","useId","ref","useInsertionEffect","dataset","motionPopId","style","document","createElement","head","appendChild","sheet","insertRule","removeChild","cloneElement","PresenceChild","initial","onExitComplete","custom","presenceAffectsLayout","mode","presenceChildren","use_constant","h","newChildrenMap","useMemo","isComplete","set","childId","values","register","delete","undefined","forEach","_","useEffect","PresenceContext","O","Provider","value","Map","getChildKey","child","AnimatePresence","exitBeforeEnter","callback","errors","k","forceRender","useContext","LayoutGroupContext","p","useForceUpdate","forcedRenderCount","setForcedRenderCount","useState","useCallback","frameloop_frame","Wi","postRender","filteredChildren","onlyElements","filtered","Children","isValidElement","childrenToRender","exitingChildren","presentChildren","allChildren","isInitialRender","updateChildLookup","clear","presentKeys","targetKeys","numPresent","i","indexOf","has","component","insertionIndex","exitingComponent","leftOverKeys","Array","from","keys","filter","includes","childKey","leftOverKey","presentChildKey","presentChild","splice","observerMap","RootIds","WeakMap","rootId","unsupportedValue","useInView","_a","threshold","delay","trackVisibility","rootMargin","root","triggerOnce","skip","initialInView","fallbackInView","onChange","arguments","setRef","React2","setState","inView","entry","unobserve","observe","IntersectionObserver","bounds","getBoundingClientRect","isIntersecting","target","intersectionRatio","time","boundingClientRect","intersectionRect","rootBounds","observer","elements","createObserver","sort","concat","toString","instance","thresholds","entries","some","isVisible","isArray","callbacks","disconnect","entryTarget","previousEntryTarget","React"],"sourceRoot":""}