{"version":3,"file":"static/chunks/9724-9091661937f6a342.js","mappings":"8RASO,MAAMA,EAA8BC,EAAAA,EAAEC,OAAO,CAClDC,MAAOF,EAAAA,EAAEG,SACTC,QAASJ,EAAAA,EAAEK,UACXC,SAAUN,EAAAA,EAAEO,SACZC,IAAKR,EAAAA,EAAEO,SACPE,KAAMT,EAAAA,EACHO,SACAG,IAAI,EAAG,CAAEC,QAAS,6EAClBC,IAAI,IAAK,CAAED,QAAS,mFAMvBE,EACAC,EACAC,IACEC,EAAAA,EAAAA,KAESC,EAA2B,KACtC,MAAMC,GAASC,EAAAA,EAAAA,cACRC,GAAqB,UAAEC,EAAS,MAAEC,KACvCC,EAAAA,EAAAA,MAEIC,EAA4BV,IA4ClC,MAAO,CAAEW,sBA1CqBD,EAA0BE,UACtDC,MAAOC,IAEmB,KAApBA,EAAOtB,eACHc,EAAoB,IACrBQ,EACHtB,SAAUY,EAAOW,MAAMC,KAEtBC,SACAC,MAAK,KACJR,EAA0BS,SAC1BC,EAAAA,EAAAA,IAAwB,0DACxBhB,EAAOiB,KAAK,oBAAoC,OAAhBjB,EAAOW,MAAMC,QAE9CM,OAAOC,I,IAEkBA,EADpBA,EAAEC,MACJC,EAAAA,EAAAA,IAAkC,QAAZF,EAAAA,EAAEC,KAAKhB,aAAPe,IAAAA,OAAAA,EAAAA,EAAc1B,UAEpC4B,EAAAA,EAAAA,IAAsB,yEAItBnB,EAAoB,IACrBQ,IAEFG,SACAC,MAAMQ,IACLhB,EAA0BS,SAC1BC,EAAAA,EAAAA,IAAwB,0DACxBhB,EAAOiB,KAAK,oBAAsC,OAAlBK,EAAIF,KAAKhC,cAE1C8B,OAAOC,I,IAEkBA,EADpBA,EAAEC,MACJC,EAAAA,EAAAA,IAAkC,QAAZF,EAAAA,EAAEC,KAAKhB,aAAPe,IAAAA,OAAAA,EAAAA,EAAc1B,UAEpC4B,EAAAA,EAAAA,IAAsB,sEAOFlB,YAAWC,W,qOCnEtC,MAAMmB,EAAuBzC,EAAAA,EAAEC,OAAO,CAC3CyC,IAAK1C,EAAAA,EAAE2C,OACPC,MAAO5C,EAAAA,EAAE2C,OACTzC,MAAOF,EAAAA,EAAEG,SACTC,QAASJ,EAAAA,EAAEK,UACXwC,UAAW7C,EAAAA,EAAEO,SACbuC,SAAU9C,EAAAA,EAAEO,SAASwC,WACrBC,UAAWhD,EAAAA,EAAEO,SAASwC,WACtBE,gBAAiBjD,EAAAA,EAAEK,UACnB6C,QAASlD,EAAAA,EAAE2C,OACXnC,IAAKR,EAAAA,EAAEO,SAASK,IAAI,GAAI,CAAED,QAAS,+EACnCF,KAAMT,EAAAA,EAAEO,SAASG,IAAI,EAAG,CAAEC,QAAS,gFAKvBwC,EAAsBC,EAAwBC,IAC1DrC,EAAAA,EAAAA,KAEWsC,EAAoB,KAC/B,MAAMpC,GAASC,EAAAA,EAAAA,cACRoC,GAAc,UAAElC,KAAemC,EAAAA,EAAAA,MAChCC,EAAqBL,IA2D3B,MAAO,CAAEM,eAzDcD,EAAmB/B,UAASC,MAAOC,IAExD,GACsB,UAApBA,EAAOkB,UACPa,IAAM/B,EAAOsB,SAASU,QAAQhC,EAAOgB,OAErC,OAGF,MAAMiB,EAAoB,IAAIC,KAC5BlC,EAAOc,IAAIqB,cACXnC,EAAOc,IAAIsB,WACXpC,EAAOc,IAAIuB,UACXrC,EAAOsB,QAAQgB,WACftC,EAAOsB,QAAQiB,aACfvC,EAAOsB,QAAQkB,aACfxC,EAAOsB,QAAQmB,mBAYXC,EAAO,CACX1B,MAXsB,IAAIkB,KAC1BlC,EAAOc,IAAIqB,cACXnC,EAAOc,IAAIsB,WACXpC,EAAOc,IAAIuB,UACXrC,EAAOgB,MAAMsB,WACbtC,EAAOgB,MAAMuB,aACbvC,EAAOgB,MAAMwB,aACbxC,EAAOgB,MAAMyB,mBAKbnE,MAAO0B,EAAO1B,MACdE,QAASwB,EAAOxB,QAChByC,WA/BgB,EAgChBC,SAAUlB,EAAOkB,SACjBE,UAAWpB,EAAOoB,UAClBC,gBAAiBrB,EAAOqB,gBACxBC,QAASW,EACTrD,IAAKoB,EAAOpB,IACZC,KAAMmB,EAAOnB,YAGT8C,EAAae,GAChBvC,SACAC,MAAK,KACJyB,EAAmBxB,SACnBC,EAAAA,EAAAA,IAAwB,0DACxBhB,EAAOiB,KAAK,uBAEbC,OAAOC,I,IAEkBA,EADpBA,EAAEC,MACJC,EAAAA,EAAAA,IAAkC,QAAZF,EAAAA,EAAEC,KAAKhB,aAAPe,IAAAA,OAAAA,EAAAA,EAAc1B,UAEpC4B,EAAAA,EAAAA,IAAsB,sEAKLlB,e,yLClFOrB,EAAAA,EAC/BC,OAAO,CACN6B,GAAI9B,EAAAA,EAAEO,SACNmC,IAAK1C,EAAAA,EAAE2C,OACPC,MAAO5C,EAAAA,EAAE2C,OACTzC,MAAOF,EAAAA,EAAEG,SACTC,QAASJ,EAAAA,EAAEK,UACXwC,UAAW7C,EAAAA,EAAEO,SACbD,SAAUN,EAAAA,EAAEO,SACZuC,SAAU9C,EAAAA,EAAEO,SAASwC,WACrBE,gBAAiBjD,EAAAA,EAAEK,UACnB6C,QAASlD,EAAAA,EAAE2C,OACXnC,IAAKR,EAAAA,EAAEO,SAASK,IAAI,GAAI,CAAED,QAAS,+EACnCF,KAAMT,EAAAA,EAAEO,SAASG,IAAI,EAAG,CAAEC,QAAS,+EAEpC4D,QACEjC,GACQA,EAAKM,OAASN,EAAKY,SAE5B,CACEvC,QAAS,uFACT6D,KAAM,CAAC,WArBN,MA4BLC,EACAC,EACAC,IACE3D,EAAAA,EAAAA,KAES4D,EAAkB,KAC7B,MAAM1D,GAASC,EAAAA,EAAAA,cACR0D,GAAc,UAAExD,KAAeyD,EAAAA,EAAAA,MAChCC,EAAmBL,IA0DzB,MAAO,CAAEM,aAxDYD,EAAiBrD,UAASC,MAAOC,IACpD,MAAMiB,EAAiC,YAArBjB,EAAOiB,UAEnBgB,EAAoB,IAAIC,KAC5BlC,EAAOc,IAAIqB,cACXnC,EAAOc,IAAIsB,WACXpC,EAAOc,IAAIuB,UACXrC,EAAOsB,QAAQgB,WACftC,EAAOsB,QAAQiB,aACfvC,EAAOsB,QAAQkB,aACfxC,EAAOsB,QAAQmB,mBAEXY,EAAkB,IAAInB,KAC1BlC,EAAOc,IAAIqB,cACXnC,EAAOc,IAAIsB,WACXpC,EAAOc,IAAIuB,UACXrC,EAAOgB,MAAMsB,WACbtC,EAAOgB,MAAMuB,aACbvC,EAAOgB,MAAMwB,aACbxC,EAAOgB,MAAMyB,mBAGTC,EAAO,CACXxC,GAAIZ,EAAOW,MAAMC,GACjBc,MAAOqC,EACP/E,MAAO0B,EAAO1B,MACdE,QAASwB,EAAOxB,QAChByC,YACAvC,SAAUsB,EAAOtB,SACjBwC,SAAUlB,EAAOkB,SACjBG,gBAAiBrB,EAAOqB,gBACxBC,QAASW,EACTrD,IAAKoB,EAAOpB,IACZC,KAAMmB,EAAOnB,YAGToE,EAAaP,GAChBvC,SACAC,MAAMkD,I,IAE0BA,EAD/B,GAAIA,EAAE5D,MACJ,OAAOiB,EAAAA,EAAAA,IAA6B,QAAP2C,EAAAA,EAAE5D,aAAF4D,IAAAA,OAAAA,EAAAA,EAASvE,SAGxCoE,EAAiB9C,SACjBC,EAAAA,EAAAA,IAAwB,0DACxBhB,EAAOiB,KAAK,uBAEbC,OAAOC,I,IAEkBA,EADpBA,EAAEC,MACJC,EAAAA,EAAAA,IAAkC,QAAZF,EAAAA,EAAEC,KAAKhB,aAAPe,IAAAA,OAAAA,EAAAA,EAAc1B,UAEpC4B,EAAAA,EAAAA,IAAsB,sEAKPlB,e,iHCtFlB,MAAM8D,EAA8B,I,IAAA,SACzCC,GAGD,EACC,MAAM3B,GAAqBJ,EAAAA,EAAAA,IAAgB,CACzCgC,cAAe,CACb3C,IAAK,IAAIoB,KACTlB,MAAO,IAAIkB,KACX5D,WAAOoF,EACPlF,SAAS,EACTyC,UAAW,SACXC,SAAU,GACVG,iBAAiB,EACjBC,QAAS,IAAIY,KACbtD,IAAK,GACLC,KAAM,GACNuC,UAAW,IAEbuC,UAAUC,EAAAA,EAAAA,GAAY/C,EAAAA,MAElBsC,GAAmBJ,EAAAA,EAAAA,IAAoB,CAC3CU,cAAe,CACbvD,GAAI,GACJY,IAAK,IAAIoB,KACTlB,MAAO,IAAIkB,KACX5D,MAAO,GACPE,SAAS,EACTyC,UAAW,SACXvC,SAAU,GACVwC,SAAU,GACVG,iBAAiB,EACjBC,QAAS,IAAIY,KACbtD,IAAK,GACLC,KAAM,IAER8E,UAAUC,EAAAA,EAAAA,GAAY/C,EAAAA,MAGlBjB,GAA4BT,EAAAA,EAAAA,IAA6B,CAC7DsE,cAAe,CACbnF,WAAOoF,EACPlF,SAAS,EACTE,SAAU,GACVE,IAAK,GACLC,KAAM,IAER8E,UAAUC,EAAAA,EAAAA,GAAYzF,EAAAA,MAGxB,OACE,SAACoD,EAAAA,GAAoBA,CAACsC,KAAMhC,E,UAC1B,SAACgB,EAAAA,GAAwBA,CAACgB,KAAMV,E,UAC9B,SAAClE,EAAAA,GAAiCA,CAAC4E,KAAMjE,E,SACtC4D,U,seC1DJ,MAAMM,E,SAAcC,EAAUC,gBAAgB,CACnDC,UAAYC,IACH,CAELC,UAAWD,EAAQE,SAUjB,CACArE,qBAAqBsE,EAAM,G,IAAA,SAAEC,EAAQ,eAAEC,GAAZ,EACzB,IACE,MAAM,KAAE7D,SAAe6D,EACvBD,EACER,EAAYU,KAAKC,gBACf,yBACA,IACCC,IACCA,EAAMhE,KAAKiE,KAAKC,IACVA,EAAS1E,KAAOQ,EAAKA,KAAKmE,aAC5BD,EAASE,YAAcF,EAASE,YAAc,EAC9CF,EAASG,QAAUH,EAASG,eAMtCT,EACER,EAAYU,KAAKC,gBACf,uBACA,IACCC,IACCA,EAAMhE,KAAKiE,KAAKC,IACVA,EAAS1E,KAAOQ,EAAKA,KAAKmE,aAC5BD,EAASE,YAAcF,EAASE,YAAc,EAC9CF,EAASG,QAAUH,EAASG,eAMtCT,EACER,EAAYU,KAAKC,gBACf,wBACA,IACCC,IACCA,EAAMhE,KAAKiE,KAAKC,IACVA,EAAS1E,KAAOQ,EAAKA,KAAKmE,aAC5BD,EAASE,YAAcF,EAASE,YAAc,EAC9CF,EAASG,QAAUH,EAASG,eAMtCT,EACER,EAAYU,KAAKC,gBACf,wBACA,IACCC,IACCA,EAAMhE,KAAKiE,KAAKC,IACVA,EAAS1E,KAAOQ,EAAKA,KAAKmE,aAC5BD,EAASE,YAAcF,EAASE,YAAc,EAC9CF,EAASG,QAAUH,EAASG,eAMtCT,EACER,EAAYU,KAAKC,gBACf,yBACA,IACCC,IACCA,EAAMhE,KAAKiE,KAAKC,IACVA,EAAS1E,KAAOQ,EAAKA,KAAKmE,aAC5BD,EAASE,YAAcF,EAASE,YAAc,EAC9CF,EAASG,QAAUH,EAASG,eAMtCT,EACER,EAAYU,KAAKC,gBACf,0BACA,IACCC,IACCA,EAAMhE,KAAKiE,KAAKC,IACVA,EAAS1E,KAAOQ,EAAKA,KAAKmE,aAC5BD,EAASE,YAAcF,EAASE,YAAc,EAC9CF,EAASG,QAAUH,EAASG,eAMtCT,EACER,EAAYU,KAAKC,gBACf,0BACA,IACCC,IACCA,EAAMhE,KAAKiE,KAAKC,IACVA,EAAS1E,KAAOQ,EAAKA,KAAKmE,aAC5BD,EAASE,YAAcF,EAASE,YAAc,EAC9CF,EAASG,QAAUH,EAASG,eAMtCT,EACER,EAAYU,KAAKC,gBACf,yBACA,IACCC,IACCA,EAAMhE,KAAKiE,KAAKC,IACVA,EAAS1E,KAAOQ,EAAKA,KAAKmE,aAC5BD,EAASE,YAAcF,EAASE,YAAc,EAC9CF,EAASG,QAAUH,EAASG,eAMtC,YAEJC,gBAAiB,CAAC,UAClB/E,MAAQ4E,IACC,CACLI,OAAQ,MACRC,IAAK,YAAuB,OAAXL,EAAW,eAKlC5B,aAAciB,EAAQE,SAAiD,CACrEY,gBAAiB,CACf,kBACA,mBACA,gBACA,iBACA,mBACA,kBACA,kBACA,iBACA,aAEF/E,MAAQyC,IACN,MAAMhC,EAAO,IAAIyE,SAwBjB,OAvBAzE,EAAK0E,OAAO,kBAAmB1C,EAAKrB,gBAAgBgE,YACpD3E,EAAK0E,OAAO,UAAW1C,EAAKlE,QAAQ6G,YACpC3E,EAAK0E,OAAO,WAAY1C,EAAKhE,UAAY,IACzCgC,EAAK0E,OAAO,YAAa1C,EAAKzB,UAAUoE,YACxC3E,EAAK0E,OAAO,WAAY1C,EAAKxB,UAAY,IACzCR,EAAK0E,OAAO,MAAO1C,EAAK9D,KACxB8B,EAAK0E,OAAO,OAAQ1C,EAAK7D,MACrB6D,EAAKpE,OAASoE,EAAKpE,iBAAiBgH,MACtC5E,EAAK0E,OAAO,QAAS1C,EAAKpE,OAEF,kBAAfoE,EAAKpE,OACdoC,EAAK0E,OAAO,QAAS1C,EAAKpE,OAEN,UAAlBoE,EAAKxB,WACPR,EAAK0E,OACH,aACe1B,IAAfhB,EAAK1B,MAAsB0B,EAAK1B,MAAMuE,cAAgB,IAExD7E,EAAK0E,OACH,eACiB1B,IAAjBhB,EAAKpB,QAAwBoB,EAAKpB,QAAQiE,cAAgB,KAGvD,CACL7C,KAAMhC,EACNuE,OAAQ,QACRC,IAAK,YAAoB,OAARxC,EAAKxC,QAK5BsF,YAAatB,EAAQjE,MAAmC,CACtDwF,aAAc,CAAC,aACfxF,MAAQ4E,IACC,CACLI,OAAQ,MACRC,IAAK,YAAuB,OAAXL,OAKvBa,aAAcxB,EAAQjE,MAA+C,CACnEwF,aAAc,CAAC,aACfxF,MAAQ0F,IACC,CACLV,OAAQ,MACRU,SACAT,IAAK,eAKXU,qBAAsB1B,EAAQjE,MAM5B,CAEA4F,aAAa,G,IAAA,WAAEC,EAAU,YAAEC,GAAd,E,IACJD,EAAuBC,EAA9B,OAAOD,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAYE,WAAWD,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAaC,SAG7CC,MAAO,CAACC,EAAcC,EAAU,K,IAAA,IAAEC,GAAK,EACrC,QAAkB1C,GAAd0C,EAAIJ,QAAqC,IAAdI,EAAIJ,OACjCE,EAAaxF,KAAOyF,EAASzF,SACxB,CACL,MAAM2F,EAAc,IAAIC,IACtBJ,EAAaxF,KAAKiE,KAAK4B,GAASA,EAAKrG,MAEjCsG,EAAmBL,EAASzF,KAAK+F,QACpCC,IAAaL,EAAYM,IAAID,EAAQxG,MAExCgG,EAAaxF,KAAOwF,EAAaxF,KAAKkG,OAAOJ,GAE/CN,EAAaW,WAAWC,UAAYX,EAASU,WAAWC,UACxDZ,EAAaW,WAAWE,YAAcZ,EAASU,WAAWE,aAE5DtB,aAAc,CAAC,iBAEfxF,MAAQ0F,IACC,CACLV,OAAQ,MACRU,OAAQ,CACNK,OAAQL,EAAOK,OACfgB,MAAOrB,EAAOqB,MACdC,KAAM,QAER/B,IAAK,aAITgC,mBAAqB,I,IAAA,aAAEC,GAAc,EACnC,OAAOA,KAIXC,sBAAuBlD,EAAQjE,MAM7B,CAEA4F,aAAa,G,IAAA,WAAEC,EAAU,YAAEC,GAAd,E,IACJD,EAAuBC,EAA9B,OAAOD,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAYE,WAAWD,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAaC,SAG7CC,MAAO,CAACC,EAAcC,EAAU,K,IAAA,IAAEC,GAAK,EACrC,QAAkB1C,GAAd0C,EAAIJ,QAAqC,IAAdI,EAAIJ,OACjCE,EAAaxF,KAAOyF,EAASzF,SACxB,CACL,MAAM2F,EAAc,IAAIC,IACtBJ,EAAaxF,KAAKiE,KAAK4B,GAASA,EAAKrG,MAEjCsG,EAAmBL,EAASzF,KAAK+F,QACpCC,IAAaL,EAAYM,IAAID,EAAQxG,MAExCgG,EAAaxF,KAAOwF,EAAaxF,KAAKkG,OAAOJ,GAE/CN,EAAaW,WAAWC,UAAYX,EAASU,WAAWC,UACxDZ,EAAaW,WAAWE,YAAcZ,EAASU,WAAWE,aAE5DtB,aAAc,CAAC,kBAEfxF,MAAQ0F,IACC,CACLV,OAAQ,MACRU,OAAQ,CACNK,OAAQL,EAAOK,OACfgB,MAAOrB,EAAOqB,MACdC,KAAM,SAER/B,IAAK,aAITgC,mBAAqB,I,IAAA,aAAEC,GAAc,EACnC,OAAOA,KAIXE,sBAAuBnD,EAAQjE,MAM7B,CAEA4F,aAAa,G,IAAA,WAAEC,EAAU,YAAEC,GAAd,E,IACJD,EAAuBC,EAA9B,OAAOD,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAYE,WAAWD,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAaC,SAG7CC,MAAO,CAACC,EAAcC,EAAU,K,IAAA,IAAEC,GAAK,EACrC,QAAkB1C,GAAd0C,EAAIJ,QAAqC,IAAdI,EAAIJ,OACjCE,EAAaxF,KAAOyF,EAASzF,SACxB,CACL,MAAM2F,EAAc,IAAIC,IACtBJ,EAAaxF,KAAKiE,KAAK4B,GAASA,EAAKrG,MAEjCsG,EAAmBL,EAASzF,KAAK+F,QACpCC,IAAaL,EAAYM,IAAID,EAAQxG,MAExCgG,EAAaxF,KAAOwF,EAAaxF,KAAKkG,OAAOJ,GAE/CN,EAAaW,WAAWC,UAAYX,EAASU,WAAWC,UACxDZ,EAAaW,WAAWE,YAAcZ,EAASU,WAAWE,aAE5DtB,aAAc,CAAC,kBACfxF,MAAQ0F,IACC,CACLV,OAAQ,MACRU,OAAQ,CACNK,OAAQL,EAAOK,OACfgB,MAAOrB,EAAOqB,MACdC,KAAM,SAER/B,IAAK,aAITgC,mBAAqB,I,IAAA,aAAEC,GAAc,EACnC,OAAOA,KAIXG,uBAAwBpD,EAAQjE,MAM9B,CAEA4F,aAAa,G,IAAA,WAAEC,EAAU,YAAEC,GAAd,E,IACJD,EAAuBC,EAA9B,OAAOD,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAYE,WAAWD,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAaC,SAG7CC,MAAO,CAACC,EAAcC,EAAU,K,IAAA,IAAEC,GAAK,EACrC,QAAkB1C,GAAd0C,EAAIJ,QAAqC,IAAdI,EAAIJ,OACjCE,EAAaxF,KAAOyF,EAASzF,SACxB,CACL,MAAM2F,EAAc,IAAIC,IACtBJ,EAAaxF,KAAKiE,KAAK4B,GAASA,EAAKrG,MAEjCsG,EAAmBL,EAASzF,KAAK+F,QACpCC,IAAaL,EAAYM,IAAID,EAAQxG,MAExCgG,EAAaxF,KAAOwF,EAAaxF,KAAKkG,OAAOJ,GAE/CN,EAAaW,WAAWC,UAAYX,EAASU,WAAWC,UACxDZ,EAAaW,WAAWE,YAAcZ,EAASU,WAAWE,aAE5DtB,aAAc,CAAC,mBAEfxF,MAAQ0F,IACC,CACLV,OAAQ,MACRU,OAAQ,CACNK,OAAQL,EAAOK,OACfgB,MAAOrB,EAAOqB,MACdC,KAAM,UAER/B,IAAK,aAITgC,mBAAqB,I,IAAA,aAAEC,GAAc,EACnC,OAAOA,KAIXI,wBAAyBrD,EAAQjE,MAM/B,CAEA4F,aAAa,G,IAAA,WAAEC,EAAU,YAAEC,GAAd,E,IACJD,EAAuBC,EAA9B,OAAOD,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAYE,WAAWD,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAaC,SAG7CC,MAAO,CAACC,EAAcC,EAAU,K,IAAA,IAAEC,GAAK,EACrC,QAAkB1C,GAAd0C,EAAIJ,QAAqC,IAAdI,EAAIJ,OACjCE,EAAaxF,KAAOyF,EAASzF,SACxB,CACL,MAAM2F,EAAc,IAAIC,IACtBJ,EAAaxF,KAAKiE,KAAK4B,GAASA,EAAKrG,MAEjCsG,EAAmBL,EAASzF,KAAK+F,QACpCC,IAAaL,EAAYM,IAAID,EAAQxG,MAExCgG,EAAaxF,KAAOwF,EAAaxF,KAAKkG,OAAOJ,GAE/CN,EAAaW,WAAWC,UAAYX,EAASU,WAAWC,UACxDZ,EAAaW,WAAWE,YAAcZ,EAASU,WAAWE,aAE5DtB,aAAc,CAAC,oBAEfxF,MAAQ0F,IACC,CACLV,OAAQ,MACRU,OAAQ,CACNK,OAAQL,EAAOK,OACfgB,MAAOrB,EAAOqB,MACdC,KAAM,WAER/B,IAAK,aAITgC,mBAAqB,I,IAAA,aAAEC,GAAc,EACnC,OAAOA,KAIXK,uBAAwBtD,EAAQjE,MAM9B,CAEA4F,aAAa,G,IAAA,WAAEC,EAAU,YAAEC,GAAd,E,IACJD,EAAuBC,EAA9B,OAAOD,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAYE,WAAWD,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAaC,SAG7CC,MAAO,CAACC,EAAcC,EAAU,K,IAAA,IAAEC,GAAK,EACrC,QAAkB1C,GAAd0C,EAAIJ,QAAqC,IAAdI,EAAIJ,OACjCE,EAAaxF,KAAOyF,EAASzF,SACxB,CACL,MAAM2F,EAAc,IAAIC,IACtBJ,EAAaxF,KAAKiE,KAAK4B,GAASA,EAAKrG,MAEjCsG,EAAmBL,EAASzF,KAAK+F,QACpCC,IAAaL,EAAYM,IAAID,EAAQxG,MAExCgG,EAAaxF,KAAOwF,EAAaxF,KAAKkG,OAAOJ,GAE/CN,EAAaW,WAAWC,UAAYX,EAASU,WAAWC,UACxDZ,EAAaW,WAAWE,YAAcZ,EAASU,WAAWE,aAE5DtB,aAAc,CAAC,mBAEfxF,MAAQ0F,IACC,CACLV,OAAQ,MACRU,OAAQ,CACNK,OAAQL,EAAOK,OACfgB,MAAOrB,EAAOqB,MACdC,KAAM,UAER/B,IAAK,aAITgC,mBAAqB,I,IAAA,aAAEC,GAAc,EACnC,OAAOA,KAIXM,wBAAyBvD,EAAQjE,MAM/B,CAEA4F,aAAa,G,IAAA,WAAEC,EAAU,YAAEC,GAAd,E,IACJD,EAAuBC,EAA9B,OAAOD,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAYE,WAAWD,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAaC,SAG7CC,MAAO,CAACC,EAAcC,EAAU,K,IAAA,IAAEC,GAAK,EACrC,QAAkB1C,GAAd0C,EAAIJ,QAAqC,IAAdI,EAAIJ,OACjCE,EAAaxF,KAAOyF,EAASzF,SACxB,CACL,MAAM2F,EAAc,IAAIC,IACtBJ,EAAaxF,KAAKiE,KAAK4B,GAASA,EAAKrG,MAEjCsG,EAAmBL,EAASzF,KAAK+F,QACpCC,IAAaL,EAAYM,IAAID,EAAQxG,MAExCgG,EAAaxF,KAAOwF,EAAaxF,KAAKkG,OAAOJ,GAE/CN,EAAaW,WAAWC,UAAYX,EAASU,WAAWC,UACxDZ,EAAaW,WAAWE,YAAcZ,EAASU,WAAWE,aAE5DtB,aAAc,CAAC,oBAEfxF,MAAQ0F,IACC,CACLV,OAAQ,MACRU,OAAQ,CACNK,OAAQL,EAAOK,OACfgB,MAAOrB,EAAOqB,MACdC,KAAM,WAER/B,IAAK,aAITgC,mBAAqB,I,IAAA,aAAEC,GAAc,EACnC,OAAOA,KAIXO,uBAAwBxD,EAAQjE,MAM9B,CAEA4F,aAAa,G,IAAA,WAAEC,EAAU,YAAEC,GAAd,E,IACJD,EAAuBC,EAA9B,OAAOD,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAYE,WAAWD,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAaC,SAG7CC,MAAO,CAACC,EAAcC,EAAU,K,IAAA,IAAEC,GAAK,EACrC,QAAkB1C,GAAd0C,EAAIJ,QAAqC,IAAdI,EAAIJ,OACjCE,EAAaxF,KAAOyF,EAASzF,SACxB,CACL,MAAM2F,EAAc,IAAIC,IACtBJ,EAAaxF,KAAKiE,KAAK4B,GAASA,EAAKrG,MAEjCsG,EAAmBL,EAASzF,KAAK+F,QACpCC,IAAaL,EAAYM,IAAID,EAAQxG,MAExCgG,EAAaxF,KAAOwF,EAAaxF,KAAKkG,OAAOJ,GAE/CN,EAAaW,WAAWC,UAAYX,EAASU,WAAWC,UACxDZ,EAAaW,WAAWE,YAAcZ,EAASU,WAAWE,aAE5DtB,aAAc,CAAC,mBACfxF,MAAQ0F,IACC,CACLV,OAAQ,MACRU,OAAQ,CACNK,OAAQL,EAAOK,OACfgB,MAAOrB,EAAOqB,MACdC,KAAM,UAER/B,IAAK,aAITgC,mBAAqB,I,IAAA,aAAEC,GAAc,EACnC,OAAOA,KAIXQ,mBAAoBzD,EAAQjE,MAQ1B,CAEA4F,aAAa,G,IAAA,WAAEC,EAAU,YAAEC,GAAd,E,IAETD,EAAuBC,EACvBD,EAAyBC,EAF3B,OACED,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAYE,WAAWD,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAaC,UACpCF,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAY8B,aAAa7B,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAa6B,WAI1C3B,MAAO,CAACC,EAAcC,EAAU,K,IAAA,IAAEC,GAAK,EACrC,QAAkB1C,GAAd0C,EAAIJ,QAAqC,IAAdI,EAAIJ,OACjCE,EAAaxF,KAAOyF,EAASzF,SACxB,CACL,MAAM2F,EAAc,IAAIC,IACtBJ,EAAaxF,KAAKiE,KAAK4B,GAASA,EAAKrG,MAEjCsG,EAAmBL,EAASzF,KAAK+F,QACpCC,IAAaL,EAAYM,IAAID,EAAQxG,MAExCgG,EAAaxF,KAAOwF,EAAaxF,KAAKkG,OAAOJ,GAE/CN,EAAaW,WAAWC,UAAYX,EAASU,WAAWC,UACxDZ,EAAaW,WAAWE,YAAcZ,EAASU,WAAWE,aAE5DtB,aAAc,CAAC,mBACfxF,MAAQ0F,IACC,CACLV,OAAQ,MACRU,SACAT,IAAK,aAITgC,mBAAqB,I,IAAA,aAAEC,GAAc,EACnC,OAAOA,KAGXU,gBAAiB3D,EAAQjE,MAGvB,CACAwF,aAAc,CAAC,aACfxF,MAAQ0F,IACC,CACLV,OAAQ,MACRU,SACAT,IAAK,eAKXvD,aAAcuC,EAAQE,SAAiD,CACrEY,gBAAiB,CACf,kBACA,mBACA,gBACA,iBACA,mBACA,kBACA,kBACA,iBACA,aAEF/E,MAAQyC,IACN,MAAMhC,EAAO,IAAIyE,SAuBjB,OAtBAzE,EAAK0E,OAAO,kBAAmB1C,EAAKrB,gBAAgBgE,YACpD3E,EAAK0E,OAAO,YAAa1C,EAAKzB,UAAUoE,YACxC3E,EAAK0E,OAAO,UAAW1C,EAAKlE,QAAQ6G,YACpC3E,EAAK0E,OAAO,WAAY1C,EAAKxB,UAAY,IACzCR,EAAK0E,OAAO,MAAO1C,EAAK9D,KACxB8B,EAAK0E,OAAO,OAAQ1C,EAAK7D,MACF,KAAnB6D,EAAKtB,WACPV,EAAK0E,OAAO,YAAa1C,EAAKtB,WAE5BsB,EAAKpE,OAASoE,EAAKpE,iBAAiBgH,MACtC5E,EAAK0E,OAAO,QAAS1C,EAAKpE,OAEN,UAAlBoE,EAAKxB,WACPR,EAAK0E,OACH,aACe1B,IAAfhB,EAAK1B,MAAsB0B,EAAK1B,MAAMuE,cAAgB,IAExD7E,EAAK0E,OACH,eACiB1B,IAAjBhB,EAAKpB,QAAwBoB,EAAKpB,QAAQiE,cAAgB,KAGvD,CACL7C,KAAMhC,EACNuE,OAAQ,OACRC,IAAK,eAKX1F,oBAAqB0E,EAAQE,SAG3B,CACAY,gBAAiB,CACf,kBACA,mBACA,gBACA,iBACA,mBACA,kBACA,kBACA,iBACA,YACA,UAEF/E,MAAQyC,IACN,MAAMhC,EAAO,IAAIyE,SAQjB,OAPAzE,EAAK0E,OAAO,WAAY1C,EAAKhE,UAAY,IACzCgC,EAAK0E,OAAO,MAAO1C,EAAK9D,KACxB8B,EAAK0E,OAAO,OAAQ1C,EAAK7D,MACzB6B,EAAK0E,OAAO,UAAW1C,EAAKlE,QAAQ6G,YAChC3C,EAAKpE,OAASoE,EAAKpE,iBAAiBgH,MACtC5E,EAAK0E,OAAO,QAAS1C,EAAKpE,OAErB,CACLoE,KAAMhC,EACNuE,OAAQ,OACRC,IAAK,eAKX4C,aAAc5D,EAAQE,SAAiC,CACrDY,gBAAiB,CAAC,aAClBjF,qBAAqBsE,EAAM,G,IAAA,SAAEC,GAAF,EACzB,IAEEA,EACER,EAAYU,KAAKC,gBACf,yBACA,IACCC,IACCA,EAAMhE,KAAKiE,KAAKC,IACVA,EAAS1E,KAAOmE,IAClBO,EAASE,YAAcF,EAASE,YAAc,EAC9CF,EAASG,QAAUH,EAASG,eAMtCT,EACER,EAAYU,KAAKC,gBACf,uBACA,IACCC,IACCA,EAAMhE,KAAKiE,KAAKC,IACVA,EAAS1E,KAAOmE,IAClBO,EAASE,YAAcF,EAASE,YAAc,EAC9CF,EAASG,QAAUH,EAASG,eAMtCT,EACER,EAAYU,KAAKC,gBACf,wBACA,IACCC,IACCA,EAAMhE,KAAKiE,KAAKC,IACVA,EAAS1E,KAAOmE,IAClBO,EAASE,YAAcF,EAASE,YAAc,EAC9CF,EAASG,QAAUH,EAASG,eAMtCT,EACER,EAAYU,KAAKC,gBACf,wBACA,IACCC,IACCA,EAAMhE,KAAKiE,KAAKC,IACVA,EAAS1E,KAAOmE,IAClBO,EAASE,YAAcF,EAASE,YAAc,EAC9CF,EAASG,QAAUH,EAASG,eAMtCT,EACER,EAAYU,KAAKC,gBACf,yBACA,IACCC,IACCA,EAAMhE,KAAKiE,KAAKC,IACVA,EAAS1E,KAAOmE,IAClBO,EAASE,YAAcF,EAASE,YAAc,EAC9CF,EAASG,QAAUH,EAASG,eAMtCT,EACER,EAAYU,KAAKC,gBACf,0BACA,IACCC,IACCA,EAAMhE,KAAKiE,KAAKC,IACVA,EAAS1E,KAAOmE,IAClBO,EAASE,YAAcF,EAASE,YAAc,EAC9CF,EAASG,QAAUH,EAASG,eAMtCT,EACER,EAAYU,KAAKC,gBACf,0BACA,IACCC,IACCA,EAAMhE,KAAKiE,KAAKC,IACVA,EAAS1E,KAAOmE,IAClBO,EAASE,YAAcF,EAASE,YAAc,EAC9CF,EAASG,QAAUH,EAASG,eAMtCT,EACER,EAAYU,KAAKC,gBACf,yBACA,IACCC,IACC,MAAMqD,EAAerD,EAAMhE,KAAK+F,QAAQuB,GAC/BA,EAAE9H,KAAOmE,IACf,GACG4D,EAAoBvD,EAAMhE,KAAKwH,QAAQH,IAClB,IAAvBE,GACFvD,EAAMhE,KAAKyH,OAAOF,EAAmB,OAK7C,YAEJhI,MAAQ4E,IACC,CACLI,OAAQ,SACRC,IAAK,YAAuB,OAAXL,EAAW,eAIlCuD,eAAgBlE,EAAQE,SAAiC,CACvDY,gBAAiB,CAAC,kBAClB/E,MAAQ4E,IACC,CACLI,OAAQ,SACRC,IAAK,YAAuB,OAAXL,OAIvBwD,eAAgBnE,EAAQjE,MAOtB,CAEA4F,aAAa,G,IAAA,WAAEC,EAAU,YAAEC,GAAd,E,IACJD,EAAuBC,EAA9B,OAAOD,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAYE,WAAWD,QAAAA,EAAAA,SAAAA,IAAAA,OAAAA,EAAAA,EAAaC,SAG7CC,MAAO,CAACC,EAAcC,EAAU,K,IAAA,IAAEC,GAAK,EACrC,QAAkB1C,GAAd0C,EAAIJ,QAAqC,IAAdI,EAAIJ,OACjCE,EAAaxF,KAAOyF,EAASzF,SACxB,CACL,MAAM2F,EAAc,IAAIC,IACtBJ,EAAaxF,KAAKiE,KAAK4B,GAASA,EAAKrG,MAEjCsG,EAAmBL,EAASzF,KAAK+F,QACpCC,IAAaL,EAAYM,IAAID,EAAQxG,MAExCgG,EAAaxF,KAAOwF,EAAaxF,KAAKkG,OAAOJ,GAE/CN,EAAaW,WAAWC,UAAYX,EAASU,WAAWC,UACxDZ,EAAaW,WAAWE,YAAcZ,EAASU,WAAWE,aAE5DtB,aAAc,CAAC,eAEfxF,MAAQ0F,IACC,CACLV,OAAQ,MACRU,OAAQ,CACNK,OAAQL,EAAOK,OACfgB,MAAOrB,EAAOqB,MACdsB,OAAQ3C,EAAO2C,OACfrB,KAAM,QAER/B,IAAK,aAITgC,mBAAqB,I,IAAA,aAAEC,GAAc,EACnC,OAAOA,OAKfoB,kBAAkB,KAGP,qBACXC,EAAoB,wBACpBtF,EAAuB,oBACvBuF,EAAmB,qBACnBC,EAAoB,6BACpBC,EAA4B,8BAC5BC,EAA6B,8BAC7BC,EAA6B,+BAC7BC,EAA8B,gCAC9BC,EAA+B,+BAC/BC,EAA8B,gCAC9BC,EAA+B,+BAC/BC,EAA8B,uBAC9BC,EAAsB,2BACtBC,EAA0B,wBAC1BC,EAAuB,+BACvB1J,EAA8B,wBAC9BiC,EAAuB,wBACvB0H,EAAuB,0BACvBC,GACEzF,G","sources":["webpack://_N_E/./src/component/pageComponent/Fumufumu/CommentForm/hooks.ts","webpack://_N_E/./src/component/pageComponent/Fumufumu/CreateForm/hooks.ts","webpack://_N_E/./src/component/pageComponent/Fumufumu/EditFrom/hooks.ts","webpack://_N_E/./src/layout/FumufumuAppLayout/CustomFumufumuFormProvider/CustomFumufumuFormProvider.tsx","webpack://_N_E/./src/service/FumuFumuApi/FumuFumuApi.ts"],"sourcesContent":["import { createFormContext } from \"@mantine/form\";\nimport { useRouter } from \"next/router\";\nimport {\n errorShowNotification,\n successShowNotification,\n} from \"src/lib/mantine\";\nimport { usePostFumufumuCommentMutation } from \"src/service/FumuFumuApi\";\nimport { z } from \"zod\";\n\nexport const CommentCreateFumufumuSchema = z.object({\n image: z.custom(),\n isDraft: z.boolean(),\n parentId: z.string(),\n tag: z.string(),\n text: z\n .string()\n .min(1, { message: \"内容を入力してください。\" })\n .max(150, { message: \"150文字以下にしてください。\" }),\n});\n\nexport type CommentCreateFumufumu = z.infer;\n\nexport const [\n CommentCreateFumufumuFormProvider,\n useCommentCreateFumufumuFormContext,\n useCommentCreateFumufumuForm,\n] = createFormContext();\n\nexport const useCommentCreateFumufumu = () => {\n const router = useRouter();\n const [postFumufumuComment, { isLoading, error }] =\n usePostFumufumuCommentMutation();\n\n const fumufumuCreateCommentForm = useCommentCreateFumufumuFormContext();\n\n const fumufumuCreateComment = fumufumuCreateCommentForm.onSubmit(\n async (values) => {\n // 詳細画面であればparentIdをrouter.query.idで取得\n if (values.parentId === \"\") {\n await postFumufumuComment({\n ...values,\n parentId: router.query.id as string,\n })\n .unwrap()\n .then(() => {\n fumufumuCreateCommentForm.reset();\n successShowNotification(\"投稿が完了しました\");\n router.push(`/fumufumu/detail/${router.query.id}`);\n })\n .catch((e) => {\n if (e.data) {\n errorShowNotification(e.data.error?.message);\n } else {\n errorShowNotification(\"投稿に失敗しました。\");\n }\n });\n } else {\n await postFumufumuComment({\n ...values,\n })\n .unwrap()\n .then((res) => {\n fumufumuCreateCommentForm.reset();\n successShowNotification(\"投稿が完了しました\");\n router.push(`/fumufumu/detail/${res.data.parentId}`);\n })\n .catch((e) => {\n if (e.data) {\n errorShowNotification(e.data.error?.message);\n } else {\n errorShowNotification(\"投稿に失敗しました。\");\n }\n });\n }\n },\n );\n\n return { fumufumuCreateComment, isLoading, error };\n};\n","import { createFormContext } from \"@mantine/form\";\nimport dayjs from \"dayjs\";\nimport { useRouter } from \"next/router\";\nimport {\n errorShowNotification,\n successShowNotification,\n} from \"src/lib/mantine\";\nimport { usePostFumufumuMutation } from \"src/service/FumuFumuApi\";\nimport { z } from \"zod\";\n\nexport const CreateFumufumuSchema = z.object({\n day: z.date(),\n endAt: z.date(),\n image: z.custom(),\n isDraft: z.boolean(),\n isPrivate: z.string(),\n postType: z.string().nullable(),\n sessionId: z.string().nullable(),\n shouldPostToMap: z.boolean(),\n startAt: z.date(),\n tag: z.string().max(15, { message: \"15文字以下にしてください。\" }),\n text: z.string().min(1, { message: \"内容を入力してください。\" }),\n});\n\nexport type CreateFumufumu = z.infer;\n\nexport const [FumufumuFormProvider, useFumufumuFormContext, useFumufumuForm] =\n createFormContext();\n\nexport const useCreateFumufumu = () => {\n const router = useRouter();\n const [postFumufumu, { isLoading }] = usePostFumufumuMutation();\n const fumufumuCreateForm = useFumufumuFormContext();\n\n const CreateFumufumu = fumufumuCreateForm.onSubmit(async (values) => {\n const isPrivate = false;\n if (\n values.postType === \"EVENT\" &&\n dayjs(values.startAt).isAfter(values.endAt)\n ) {\n return;\n }\n\n const combinedStartDate = new Date(\n values.day.getFullYear(),\n values.day.getMonth(),\n values.day.getDate(),\n values.startAt.getHours(),\n values.startAt.getMinutes(),\n values.startAt.getSeconds(),\n values.startAt.getMilliseconds(),\n );\n const combinedEndDate = new Date(\n values.day.getFullYear(),\n values.day.getMonth(),\n values.day.getDate(),\n values.endAt.getHours(),\n values.endAt.getMinutes(),\n values.endAt.getSeconds(),\n values.endAt.getMilliseconds(),\n );\n\n const body = {\n endAt: combinedEndDate,\n image: values.image,\n isDraft: values.isDraft,\n isPrivate,\n postType: values.postType,\n sessionId: values.sessionId,\n shouldPostToMap: values.shouldPostToMap,\n startAt: combinedStartDate,\n tag: values.tag,\n text: values.text,\n };\n\n await postFumufumu(body)\n .unwrap()\n .then(() => {\n fumufumuCreateForm.reset();\n successShowNotification(\"投稿が完了しました\");\n router.push(\"/fumufumu/public\");\n })\n .catch((e) => {\n if (e.data) {\n errorShowNotification(e.data.error?.message);\n } else {\n errorShowNotification(\"投稿に失敗しました。\");\n }\n });\n });\n\n return { CreateFumufumu, isLoading };\n};\n","import { createFormContext } from \"@mantine/form\";\nimport { useRouter } from \"next/router\";\nimport {\n errorShowNotification,\n successShowNotification,\n} from \"src/lib/mantine\";\nimport { useEditFumufumuMutation } from \"src/service/FumuFumuApi\";\nimport { z } from \"zod\";\n\nexport const EditFumufumuSchema = z\n .object({\n id: z.string(),\n day: z.date(),\n endAt: z.date(),\n image: z.custom(),\n isDraft: z.boolean(),\n isPrivate: z.string(),\n parentId: z.string(),\n postType: z.string().nullable(),\n shouldPostToMap: z.boolean(),\n startAt: z.date(),\n tag: z.string().max(15, { message: \"15文字以下にしてください。\" }),\n text: z.string().min(1, { message: \"内容を入力してください。\" }),\n })\n .refine(\n (data) => {\n return data.endAt <= data.startAt;\n },\n {\n message: \"開始時間より遅くしてください\",\n path: [\"endAt\"],\n },\n );\n\nexport type EditFumufumu = z.infer;\n\nexport const [\n EditFumufumuFormProvider,\n useEditFumufumuFormContext,\n useEditFumufumuForm,\n] = createFormContext();\n\nexport const useEditFumufumu = () => {\n const router = useRouter();\n const [editFumufumu, { isLoading }] = useEditFumufumuMutation();\n const fumufumuEditForm = useEditFumufumuFormContext();\n\n const EditFumufumu = fumufumuEditForm.onSubmit(async (values) => {\n const isPrivate = values.isPrivate === \"private\" ? true : false;\n\n const combinedStartDate = new Date(\n values.day.getFullYear(),\n values.day.getMonth(),\n values.day.getDate(),\n values.startAt.getHours(),\n values.startAt.getMinutes(),\n values.startAt.getSeconds(),\n values.startAt.getMilliseconds(),\n );\n const combinedEndDate = new Date(\n values.day.getFullYear(),\n values.day.getMonth(),\n values.day.getDate(),\n values.endAt.getHours(),\n values.endAt.getMinutes(),\n values.endAt.getSeconds(),\n values.endAt.getMilliseconds(),\n );\n\n const body = {\n id: router.query.id as string,\n endAt: combinedEndDate,\n image: values.image,\n isDraft: values.isDraft,\n isPrivate,\n parentId: values.parentId,\n postType: values.postType,\n shouldPostToMap: values.shouldPostToMap,\n startAt: combinedStartDate,\n tag: values.tag,\n text: values.text,\n };\n\n await editFumufumu(body)\n .unwrap()\n .then((d) => {\n if (d.error) {\n return errorShowNotification(d.error?.message);\n }\n\n fumufumuEditForm.reset();\n successShowNotification(\"投稿が完了しました\");\n router.push(\"/fumufumu/public\");\n })\n .catch((e) => {\n if (e.data) {\n errorShowNotification(e.data.error?.message);\n } else {\n errorShowNotification(\"投稿に失敗しました。\");\n }\n });\n });\n\n return { EditFumufumu, isLoading };\n};\n","import { zodResolver } from \"@mantine/form\";\nimport type { ReactNode } from \"react\";\nimport {\n CommentCreateFumufumuFormProvider,\n CommentCreateFumufumuSchema,\n useCommentCreateFumufumuForm,\n} from \"src/component/pageComponent/Fumufumu/CommentForm/hooks\";\nimport {\n CreateFumufumuSchema,\n FumufumuFormProvider,\n useFumufumuForm,\n} from \"src/component/pageComponent/Fumufumu/CreateForm/hooks\";\nimport {\n EditFumufumuFormProvider,\n useEditFumufumuForm,\n} from \"src/component/pageComponent/Fumufumu/EditFrom/hooks\";\n\nexport const CustomFumufumuFormProvider = ({\n children,\n}: {\n children: ReactNode;\n}) => {\n const fumufumuCreateForm = useFumufumuForm({\n initialValues: {\n day: new Date(),\n endAt: new Date(),\n image: undefined,\n isDraft: false,\n isPrivate: \"public\",\n postType: \"\",\n shouldPostToMap: false,\n startAt: new Date(),\n tag: \"\",\n text: \"\",\n sessionId: \"\",\n },\n validate: zodResolver(CreateFumufumuSchema),\n });\n const fumufumuEditForm = useEditFumufumuForm({\n initialValues: {\n id: \"\",\n day: new Date(),\n endAt: new Date(),\n image: \"\",\n isDraft: false,\n isPrivate: \"public\",\n parentId: \"\",\n postType: \"\",\n shouldPostToMap: false,\n startAt: new Date(),\n tag: \"\",\n text: \"\",\n },\n validate: zodResolver(CreateFumufumuSchema),\n });\n\n const fumufumuCreateCommentForm = useCommentCreateFumufumuForm({\n initialValues: {\n image: undefined,\n isDraft: false,\n parentId: \"\",\n tag: \"\",\n text: \"\",\n },\n validate: zodResolver(CommentCreateFumufumuSchema),\n });\n\n return (\n \n \n \n {children}\n \n \n \n );\n};\n","import type {\n editFumufumuBody,\n getFumufumuParams,\n GetFumufumuResponse,\n GetFumufumusResponse,\n getUserFumufumuParams,\n postFumufumuBody,\n postFumufumuCommentBody,\n postFumufumuResponse,\n} from \"src/service/FumuFumuApi/types\";\nimport { serverApi } from \"src/service/serverApi\";\nimport type { ResultResponse } from \"src/types/api\";\n\nexport const fumufumuApi = serverApi.injectEndpoints({\n endpoints: (builder) => {\n return {\n // フムフムにワカルをする\n addWakaru: builder.mutation<\n {\n data: {\n id: string;\n createdAt: string;\n fumufumuId: string;\n userId: string;\n };\n },\n string\n >({\n async onQueryStarted(args, { dispatch, queryFulfilled }) {\n try {\n const { data } = await queryFulfilled;\n dispatch(\n fumufumuApi.util.updateQueryData(\n \"getFumufumusTypePublic\",\n {},\n (draft) => {\n draft.data.map((fumufumu) => {\n if (fumufumu.id === data.data.fumufumuId) {\n fumufumu.wakaruCount = fumufumu.wakaruCount + 1;\n fumufumu.wakaru = !fumufumu.wakaru;\n }\n });\n },\n ),\n );\n dispatch(\n fumufumuApi.util.updateQueryData(\n \"getFumufumusTypeChat\",\n {},\n (draft) => {\n draft.data.map((fumufumu) => {\n if (fumufumu.id === data.data.fumufumuId) {\n fumufumu.wakaruCount = fumufumu.wakaruCount + 1;\n fumufumu.wakaru = !fumufumu.wakaru;\n }\n });\n },\n ),\n );\n dispatch(\n fumufumuApi.util.updateQueryData(\n \"getFumufumusTypeDraft\",\n {},\n (draft) => {\n draft.data.map((fumufumu) => {\n if (fumufumu.id === data.data.fumufumuId) {\n fumufumu.wakaruCount = fumufumu.wakaruCount + 1;\n fumufumu.wakaru = !fumufumu.wakaru;\n }\n });\n },\n ),\n );\n dispatch(\n fumufumuApi.util.updateQueryData(\n \"getFumufumusTypeEvent\",\n {},\n (draft) => {\n draft.data.map((fumufumu) => {\n if (fumufumu.id === data.data.fumufumuId) {\n fumufumu.wakaruCount = fumufumu.wakaruCount + 1;\n fumufumu.wakaru = !fumufumu.wakaru;\n }\n });\n },\n ),\n );\n dispatch(\n fumufumuApi.util.updateQueryData(\n \"getFumufumusTypeFollow\",\n {},\n (draft) => {\n draft.data.map((fumufumu) => {\n if (fumufumu.id === data.data.fumufumuId) {\n fumufumu.wakaruCount = fumufumu.wakaruCount + 1;\n fumufumu.wakaru = !fumufumu.wakaru;\n }\n });\n },\n ),\n );\n dispatch(\n fumufumuApi.util.updateQueryData(\n \"getFumufumusTypePrivate\",\n {},\n (draft) => {\n draft.data.map((fumufumu) => {\n if (fumufumu.id === data.data.fumufumuId) {\n fumufumu.wakaruCount = fumufumu.wakaruCount + 1;\n fumufumu.wakaru = !fumufumu.wakaru;\n }\n });\n },\n ),\n );\n dispatch(\n fumufumuApi.util.updateQueryData(\n \"getFumufumusTypeSession\",\n {},\n (draft) => {\n draft.data.map((fumufumu) => {\n if (fumufumu.id === data.data.fumufumuId) {\n fumufumu.wakaruCount = fumufumu.wakaruCount + 1;\n fumufumu.wakaru = !fumufumu.wakaru;\n }\n });\n },\n ),\n );\n dispatch(\n fumufumuApi.util.updateQueryData(\n \"getFumufumusTypeWalaru\",\n {},\n (draft) => {\n draft.data.map((fumufumu) => {\n if (fumufumu.id === data.data.fumufumuId) {\n fumufumu.wakaruCount = fumufumu.wakaruCount + 1;\n fumufumu.wakaru = !fumufumu.wakaru;\n }\n });\n },\n ),\n );\n } catch {}\n },\n invalidatesTags: [\"Points\"],\n query: (fumufumuId) => {\n return {\n method: \"put\",\n url: `fumufumu/${fumufumuId}/wakaru`,\n };\n },\n }),\n // フムフムの下書きを編集\n editFumufumu: builder.mutation({\n invalidatesTags: [\n \"FumufumusPublic\",\n \"FumufumusPrivate\",\n \"FumufumusChat\",\n \"FumufumusEvent\",\n \"FumufumusSession\",\n \"FumufumusFollow\",\n \"FumufumusWakaru\",\n \"FumufumusDraft\",\n \"Fumufumus\",\n ],\n query: (body) => {\n const data = new FormData();\n data.append(\"shouldPostToMap\", body.shouldPostToMap.toString());\n data.append(\"isDraft\", body.isDraft.toString());\n data.append(\"parentId\", body.parentId || \"\");\n data.append(\"isPrivate\", body.isPrivate.toString());\n data.append(\"postType\", body.postType || \"\");\n data.append(\"tag\", body.tag);\n data.append(\"text\", body.text);\n if (body.image && body.image instanceof File) {\n data.append(\"image\", body.image);\n }\n if (typeof body.image === \"string\") {\n data.append(\"image\", body.image);\n }\n if (body.postType === \"EVENT\") {\n data.append(\n \"endAt\",\n body.endAt !== undefined ? body.endAt.toISOString() : \"\",\n );\n data.append(\n \"startAt\",\n body.startAt !== undefined ? body.startAt.toISOString() : \"\",\n );\n }\n return {\n body: data,\n method: \"PATCH\",\n url: `fumufumu/${body.id}`,\n };\n },\n }),\n // idでフムフムを取得\n getFumufumu: builder.query({\n providesTags: [\"Fumufumus\"],\n query: (fumufumuId) => {\n return {\n method: \"get\",\n url: `fumufumu/${fumufumuId}`,\n };\n },\n }),\n // フムフム一覧の取得\n getFumufumus: builder.query({\n providesTags: [\"Fumufumus\"],\n query: (params) => {\n return {\n method: \"get\",\n params,\n url: \"fumufumu\",\n };\n },\n }),\n // 雑談一覧の取得\n getFumufumusTypeChat: builder.query<\n GetFumufumusResponse,\n {\n cursor?: string;\n limit?: string;\n }\n >({\n // cursorが変わったら再フェッチ\n forceRefetch({ currentArg, previousArg }) {\n return currentArg?.cursor !== previousArg?.cursor;\n },\n // キャッシュのマージ\n merge: (currentCache, newItems, { arg }) => {\n if (arg.cursor == undefined || arg.cursor == \"\") {\n currentCache.data = newItems.data;\n } else {\n const existingIds = new Set(\n currentCache.data.map((item) => item.id),\n );\n const filteredNewItems = newItems.data.filter(\n (newItem) => !existingIds.has(newItem.id),\n );\n currentCache.data = currentCache.data.concat(filteredNewItems);\n }\n currentCache.pagination.endCursor = newItems.pagination.endCursor;\n currentCache.pagination.hasNextPage = newItems.pagination.hasNextPage;\n },\n providesTags: [\"FumufumusChat\"],\n\n query: (params) => {\n return {\n method: \"get\",\n params: {\n cursor: params.cursor,\n limit: params.limit,\n type: \"chat\",\n },\n url: \"fumufumu\",\n };\n },\n // 設定\n serializeQueryArgs: ({ endpointName }) => {\n return endpointName;\n },\n }),\n // 下書き一覧の取得\n getFumufumusTypeDraft: builder.query<\n GetFumufumusResponse,\n {\n cursor?: string;\n limit?: string;\n }\n >({\n // cursorが変わったら再フェッチ\n forceRefetch({ currentArg, previousArg }) {\n return currentArg?.cursor !== previousArg?.cursor;\n },\n // キャッシュのマージ\n merge: (currentCache, newItems, { arg }) => {\n if (arg.cursor == undefined || arg.cursor == \"\") {\n currentCache.data = newItems.data;\n } else {\n const existingIds = new Set(\n currentCache.data.map((item) => item.id),\n );\n const filteredNewItems = newItems.data.filter(\n (newItem) => !existingIds.has(newItem.id),\n );\n currentCache.data = currentCache.data.concat(filteredNewItems);\n }\n currentCache.pagination.endCursor = newItems.pagination.endCursor;\n currentCache.pagination.hasNextPage = newItems.pagination.hasNextPage;\n },\n providesTags: [\"FumufumusDraft\"],\n\n query: (params) => {\n return {\n method: \"get\",\n params: {\n cursor: params.cursor,\n limit: params.limit,\n type: \"draft\",\n },\n url: \"fumufumu\",\n };\n },\n // 設定\n serializeQueryArgs: ({ endpointName }) => {\n return endpointName;\n },\n }),\n // イベント一覧の取得\n getFumufumusTypeEvent: builder.query<\n GetFumufumusResponse,\n {\n cursor?: string;\n limit?: string;\n }\n >({\n // cursorが変わったら再フェッチ\n forceRefetch({ currentArg, previousArg }) {\n return currentArg?.cursor !== previousArg?.cursor;\n },\n // キャッシュのマージ\n merge: (currentCache, newItems, { arg }) => {\n if (arg.cursor == undefined || arg.cursor == \"\") {\n currentCache.data = newItems.data;\n } else {\n const existingIds = new Set(\n currentCache.data.map((item) => item.id),\n );\n const filteredNewItems = newItems.data.filter(\n (newItem) => !existingIds.has(newItem.id),\n );\n currentCache.data = currentCache.data.concat(filteredNewItems);\n }\n currentCache.pagination.endCursor = newItems.pagination.endCursor;\n currentCache.pagination.hasNextPage = newItems.pagination.hasNextPage;\n },\n providesTags: [\"FumufumusEvent\"],\n query: (params) => {\n return {\n method: \"get\",\n params: {\n cursor: params.cursor,\n limit: params.limit,\n type: \"event\",\n },\n url: \"fumufumu\",\n };\n },\n // 設定\n serializeQueryArgs: ({ endpointName }) => {\n return endpointName;\n },\n }),\n // フォロー一覧の取得\n getFumufumusTypeFollow: builder.query<\n GetFumufumusResponse,\n {\n cursor?: string;\n limit?: string;\n }\n >({\n // cursorが変わったら再フェッチ\n forceRefetch({ currentArg, previousArg }) {\n return currentArg?.cursor !== previousArg?.cursor;\n },\n // キャッシュのマージ\n merge: (currentCache, newItems, { arg }) => {\n if (arg.cursor == undefined || arg.cursor == \"\") {\n currentCache.data = newItems.data;\n } else {\n const existingIds = new Set(\n currentCache.data.map((item) => item.id),\n );\n const filteredNewItems = newItems.data.filter(\n (newItem) => !existingIds.has(newItem.id),\n );\n currentCache.data = currentCache.data.concat(filteredNewItems);\n }\n currentCache.pagination.endCursor = newItems.pagination.endCursor;\n currentCache.pagination.hasNextPage = newItems.pagination.hasNextPage;\n },\n providesTags: [\"FumufumusFollow\"],\n\n query: (params) => {\n return {\n method: \"get\",\n params: {\n cursor: params.cursor,\n limit: params.limit,\n type: \"follow\",\n },\n url: \"fumufumu\",\n };\n },\n // 設定\n serializeQueryArgs: ({ endpointName }) => {\n return endpointName;\n },\n }),\n // プライベート一覧の取得\n getFumufumusTypePrivate: builder.query<\n GetFumufumusResponse,\n {\n cursor?: string;\n limit?: string;\n }\n >({\n // cursorが変わったら再フェッチ\n forceRefetch({ currentArg, previousArg }) {\n return currentArg?.cursor !== previousArg?.cursor;\n },\n // キャッシュのマージ\n merge: (currentCache, newItems, { arg }) => {\n if (arg.cursor == undefined || arg.cursor == \"\") {\n currentCache.data = newItems.data;\n } else {\n const existingIds = new Set(\n currentCache.data.map((item) => item.id),\n );\n const filteredNewItems = newItems.data.filter(\n (newItem) => !existingIds.has(newItem.id),\n );\n currentCache.data = currentCache.data.concat(filteredNewItems);\n }\n currentCache.pagination.endCursor = newItems.pagination.endCursor;\n currentCache.pagination.hasNextPage = newItems.pagination.hasNextPage;\n },\n providesTags: [\"FumufumusPrivate\"],\n\n query: (params) => {\n return {\n method: \"get\",\n params: {\n cursor: params.cursor,\n limit: params.limit,\n type: \"private\",\n },\n url: \"fumufumu\",\n };\n },\n // 設定\n serializeQueryArgs: ({ endpointName }) => {\n return endpointName;\n },\n }),\n // パブリック一覧の取得\n getFumufumusTypePublic: builder.query<\n GetFumufumusResponse,\n {\n cursor?: string;\n limit?: string;\n }\n >({\n // cursorが変わったら再フェッチ\n forceRefetch({ currentArg, previousArg }) {\n return currentArg?.cursor !== previousArg?.cursor;\n },\n // キャッシュのマージ\n merge: (currentCache, newItems, { arg }) => {\n if (arg.cursor == undefined || arg.cursor == \"\") {\n currentCache.data = newItems.data;\n } else {\n const existingIds = new Set(\n currentCache.data.map((item) => item.id),\n );\n const filteredNewItems = newItems.data.filter(\n (newItem) => !existingIds.has(newItem.id),\n );\n currentCache.data = currentCache.data.concat(filteredNewItems);\n }\n currentCache.pagination.endCursor = newItems.pagination.endCursor;\n currentCache.pagination.hasNextPage = newItems.pagination.hasNextPage;\n },\n providesTags: [\"FumufumusPublic\"],\n\n query: (params) => {\n return {\n method: \"get\",\n params: {\n cursor: params.cursor,\n limit: params.limit,\n type: \"public\",\n },\n url: \"fumufumu\",\n };\n },\n // 設定\n serializeQueryArgs: ({ endpointName }) => {\n return endpointName;\n },\n }),\n // セッション一覧の取得\n getFumufumusTypeSession: builder.query<\n GetFumufumusResponse,\n {\n cursor?: string;\n limit?: string;\n }\n >({\n // cursorが変わったら再フェッチ\n forceRefetch({ currentArg, previousArg }) {\n return currentArg?.cursor !== previousArg?.cursor;\n },\n // キャッシュのマージ\n merge: (currentCache, newItems, { arg }) => {\n if (arg.cursor == undefined || arg.cursor == \"\") {\n currentCache.data = newItems.data;\n } else {\n const existingIds = new Set(\n currentCache.data.map((item) => item.id),\n );\n const filteredNewItems = newItems.data.filter(\n (newItem) => !existingIds.has(newItem.id),\n );\n currentCache.data = currentCache.data.concat(filteredNewItems);\n }\n currentCache.pagination.endCursor = newItems.pagination.endCursor;\n currentCache.pagination.hasNextPage = newItems.pagination.hasNextPage;\n },\n providesTags: [\"FumufumusSession\"],\n\n query: (params) => {\n return {\n method: \"get\",\n params: {\n cursor: params.cursor,\n limit: params.limit,\n type: \"session\",\n },\n url: \"fumufumu\",\n };\n },\n // 設定\n serializeQueryArgs: ({ endpointName }) => {\n return endpointName;\n },\n }),\n // ワカル一覧の取得\n getFumufumusTypeWalaru: builder.query<\n GetFumufumusResponse,\n {\n cursor?: string;\n limit?: string;\n }\n >({\n // cursorが変わったら再フェッチ\n forceRefetch({ currentArg, previousArg }) {\n return currentArg?.cursor !== previousArg?.cursor;\n },\n // キャッシュのマージ\n merge: (currentCache, newItems, { arg }) => {\n if (arg.cursor == undefined || arg.cursor == \"\") {\n currentCache.data = newItems.data;\n } else {\n const existingIds = new Set(\n currentCache.data.map((item) => item.id),\n );\n const filteredNewItems = newItems.data.filter(\n (newItem) => !existingIds.has(newItem.id),\n );\n currentCache.data = currentCache.data.concat(filteredNewItems);\n }\n currentCache.pagination.endCursor = newItems.pagination.endCursor;\n currentCache.pagination.hasNextPage = newItems.pagination.hasNextPage;\n },\n providesTags: [\"FumufumusWakaru\"],\n query: (params) => {\n return {\n method: \"get\",\n params: {\n cursor: params.cursor,\n limit: params.limit,\n type: \"wakaru\",\n },\n url: \"fumufumu\",\n };\n },\n // 設定\n serializeQueryArgs: ({ endpointName }) => {\n return endpointName;\n },\n }),\n // フムフムの検索\n getSearchFumufumus: builder.query<\n GetFumufumusResponse,\n {\n cursor: string;\n keywords: string;\n limit?: string;\n type: string;\n }\n >({\n // cursorが変わったら再フェッチ\n forceRefetch({ currentArg, previousArg }) {\n return (\n currentArg?.cursor !== previousArg?.cursor ||\n currentArg?.keywords !== previousArg?.keywords\n );\n },\n // キャッシュのマージ\n merge: (currentCache, newItems, { arg }) => {\n if (arg.cursor == undefined || arg.cursor == \"\") {\n currentCache.data = newItems.data;\n } else {\n const existingIds = new Set(\n currentCache.data.map((item) => item.id),\n );\n const filteredNewItems = newItems.data.filter(\n (newItem) => !existingIds.has(newItem.id),\n );\n currentCache.data = currentCache.data.concat(filteredNewItems);\n }\n currentCache.pagination.endCursor = newItems.pagination.endCursor;\n currentCache.pagination.hasNextPage = newItems.pagination.hasNextPage;\n },\n providesTags: [\"FumufumusSearch\"],\n query: (params) => {\n return {\n method: \"get\",\n params,\n url: \"fumufumu\",\n };\n },\n // 設定\n serializeQueryArgs: ({ endpointName }) => {\n return endpointName;\n },\n }),\n getUserFumufumu: builder.query<\n GetFumufumuResponse,\n getUserFumufumuParams\n >({\n providesTags: [\"Fumufumus\"],\n query: (params) => {\n return {\n method: \"get\",\n params,\n url: \"fumufumu\",\n };\n },\n }),\n // フムフムを投稿\n postFumufumu: builder.mutation({\n invalidatesTags: [\n \"FumufumusPublic\",\n \"FumufumusPrivate\",\n \"FumufumusChat\",\n \"FumufumusEvent\",\n \"FumufumusSession\",\n \"FumufumusFollow\",\n \"FumufumusWakaru\",\n \"FumufumusDraft\",\n \"Fumufumus\",\n ],\n query: (body) => {\n const data = new FormData();\n data.append(\"shouldPostToMap\", body.shouldPostToMap.toString());\n data.append(\"isPrivate\", body.isPrivate.toString());\n data.append(\"isDraft\", body.isDraft.toString());\n data.append(\"postType\", body.postType || \"\");\n data.append(\"tag\", body.tag);\n data.append(\"text\", body.text);\n if (body.sessionId !== \"\") {\n data.append(\"sessionId\", body.sessionId as string);\n }\n if (body.image && body.image instanceof File) {\n data.append(\"image\", body.image);\n }\n if (body.postType === \"EVENT\") {\n data.append(\n \"endAt\",\n body.endAt !== undefined ? body.endAt.toISOString() : \"\",\n );\n data.append(\n \"startAt\",\n body.startAt !== undefined ? body.startAt.toISOString() : \"\",\n );\n }\n return {\n body: data,\n method: \"post\",\n url: \"fumufumu\",\n };\n },\n }),\n // コメントを投稿\n postFumufumuComment: builder.mutation<\n postFumufumuResponse,\n postFumufumuCommentBody\n >({\n invalidatesTags: [\n \"FumufumusPublic\",\n \"FumufumusPrivate\",\n \"FumufumusChat\",\n \"FumufumusEvent\",\n \"FumufumusSession\",\n \"FumufumusFollow\",\n \"FumufumusWakaru\",\n \"FumufumusDraft\",\n \"Fumufumus\",\n \"Points\",\n ],\n query: (body) => {\n const data = new FormData();\n data.append(\"parentId\", body.parentId || \"\");\n data.append(\"tag\", body.tag);\n data.append(\"text\", body.text);\n data.append(\"isDraft\", body.isDraft.toString());\n if (body.image && body.image instanceof File) {\n data.append(\"image\", body.image);\n }\n return {\n body: data,\n method: \"post\",\n url: \"fumufumu\",\n };\n },\n }),\n // フムフムのワカルを削除\n removeWakaru: builder.mutation({\n invalidatesTags: [\"Fumufumus\"],\n async onQueryStarted(args, { dispatch }) {\n try {\n // const { data } = await queryFulfilled;\n dispatch(\n fumufumuApi.util.updateQueryData(\n \"getFumufumusTypePublic\",\n {},\n (draft) => {\n draft.data.map((fumufumu) => {\n if (fumufumu.id === args) {\n fumufumu.wakaruCount = fumufumu.wakaruCount - 1;\n fumufumu.wakaru = !fumufumu.wakaru;\n }\n });\n },\n ),\n );\n dispatch(\n fumufumuApi.util.updateQueryData(\n \"getFumufumusTypeChat\",\n {},\n (draft) => {\n draft.data.map((fumufumu) => {\n if (fumufumu.id === args) {\n fumufumu.wakaruCount = fumufumu.wakaruCount - 1;\n fumufumu.wakaru = !fumufumu.wakaru;\n }\n });\n },\n ),\n );\n dispatch(\n fumufumuApi.util.updateQueryData(\n \"getFumufumusTypeDraft\",\n {},\n (draft) => {\n draft.data.map((fumufumu) => {\n if (fumufumu.id === args) {\n fumufumu.wakaruCount = fumufumu.wakaruCount - 1;\n fumufumu.wakaru = !fumufumu.wakaru;\n }\n });\n },\n ),\n );\n dispatch(\n fumufumuApi.util.updateQueryData(\n \"getFumufumusTypeEvent\",\n {},\n (draft) => {\n draft.data.map((fumufumu) => {\n if (fumufumu.id === args) {\n fumufumu.wakaruCount = fumufumu.wakaruCount - 1;\n fumufumu.wakaru = !fumufumu.wakaru;\n }\n });\n },\n ),\n );\n dispatch(\n fumufumuApi.util.updateQueryData(\n \"getFumufumusTypeFollow\",\n {},\n (draft) => {\n draft.data.map((fumufumu) => {\n if (fumufumu.id === args) {\n fumufumu.wakaruCount = fumufumu.wakaruCount - 1;\n fumufumu.wakaru = !fumufumu.wakaru;\n }\n });\n },\n ),\n );\n dispatch(\n fumufumuApi.util.updateQueryData(\n \"getFumufumusTypePrivate\",\n {},\n (draft) => {\n draft.data.map((fumufumu) => {\n if (fumufumu.id === args) {\n fumufumu.wakaruCount = fumufumu.wakaruCount - 1;\n fumufumu.wakaru = !fumufumu.wakaru;\n }\n });\n },\n ),\n );\n dispatch(\n fumufumuApi.util.updateQueryData(\n \"getFumufumusTypeSession\",\n {},\n (draft) => {\n draft.data.map((fumufumu) => {\n if (fumufumu.id === args) {\n fumufumu.wakaruCount = fumufumu.wakaruCount - 1;\n fumufumu.wakaru = !fumufumu.wakaru;\n }\n });\n },\n ),\n );\n dispatch(\n fumufumuApi.util.updateQueryData(\n \"getFumufumusTypeWalaru\",\n {},\n (draft) => {\n const deletedVenue = draft.data.filter((c) => {\n return c.id === args;\n })[0];\n const deletedVenueIndex = draft.data.indexOf(deletedVenue);\n if (deletedVenueIndex !== -1) {\n draft.data.splice(deletedVenueIndex, 1);\n }\n },\n ),\n );\n } catch {}\n },\n query: (fumufumuId) => {\n return {\n method: \"delete\",\n url: `fumufumu/${fumufumuId}/wakaru`,\n };\n },\n }),\n deleteFumufumu: builder.mutation({\n invalidatesTags: [\"FumufumusDraft\"],\n query: (fumufumuId) => {\n return {\n method: \"delete\",\n url: `fumufumu/${fumufumuId}`,\n };\n },\n }),\n getMyFumufumus: builder.query<\n GetFumufumusResponse,\n {\n userId?: string;\n limit?: string;\n cursor?: string;\n }\n >({\n // cursorが変わったら再フェッチ\n forceRefetch({ currentArg, previousArg }) {\n return currentArg?.cursor !== previousArg?.cursor;\n },\n // キャッシュのマージ\n merge: (currentCache, newItems, { arg }) => {\n if (arg.cursor == undefined || arg.cursor == \"\") {\n currentCache.data = newItems.data;\n } else {\n const existingIds = new Set(\n currentCache.data.map((item) => item.id),\n );\n const filteredNewItems = newItems.data.filter(\n (newItem) => !existingIds.has(newItem.id),\n );\n currentCache.data = currentCache.data.concat(filteredNewItems);\n }\n currentCache.pagination.endCursor = newItems.pagination.endCursor;\n currentCache.pagination.hasNextPage = newItems.pagination.hasNextPage;\n },\n providesTags: [\"MyFumufumus\"],\n\n query: (params) => {\n return {\n method: \"get\",\n params: {\n cursor: params.cursor,\n limit: params.limit,\n userId: params.userId,\n type: \"user\",\n },\n url: \"fumufumu\",\n };\n },\n // 設定\n serializeQueryArgs: ({ endpointName }) => {\n return endpointName;\n },\n }),\n };\n },\n overrideExisting: true,\n});\n\nexport const {\n useAddWakaruMutation,\n useEditFumufumuMutation,\n useGetFumufumuQuery,\n useGetFumufumusQuery,\n useGetFumufumusTypeChatQuery,\n useGetFumufumusTypeDraftQuery,\n useGetFumufumusTypeEventQuery,\n useGetFumufumusTypeFollowQuery,\n useGetFumufumusTypePrivateQuery,\n useGetFumufumusTypePublicQuery,\n useGetFumufumusTypeSessionQuery,\n useGetFumufumusTypeWalaruQuery,\n useGetMyFumufumusQuery,\n useGetSearchFumufumusQuery,\n useGetUserFumufumuQuery,\n usePostFumufumuCommentMutation,\n usePostFumufumuMutation,\n useRemoveWakaruMutation,\n useDeleteFumufumuMutation,\n} = fumufumuApi;\n"],"names":["CommentCreateFumufumuSchema","z","object","image","custom","isDraft","boolean","parentId","string","tag","text","min","message","max","CommentCreateFumufumuFormProvider","useCommentCreateFumufumuFormContext","useCommentCreateFumufumuForm","createFormContext","useCommentCreateFumufumu","router","useRouter","postFumufumuComment","isLoading","error","usePostFumufumuCommentMutation","fumufumuCreateCommentForm","fumufumuCreateComment","onSubmit","async","values","query","id","unwrap","then","reset","successShowNotification","push","catch","e","data","errorShowNotification","res","CreateFumufumuSchema","day","date","endAt","isPrivate","postType","nullable","sessionId","shouldPostToMap","startAt","FumufumuFormProvider","useFumufumuFormContext","useFumufumuForm","useCreateFumufumu","postFumufumu","usePostFumufumuMutation","fumufumuCreateForm","CreateFumufumu","dayjs","isAfter","combinedStartDate","Date","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","getMilliseconds","body","refine","path","EditFumufumuFormProvider","useEditFumufumuFormContext","useEditFumufumuForm","useEditFumufumu","editFumufumu","useEditFumufumuMutation","fumufumuEditForm","EditFumufumu","combinedEndDate","d","CustomFumufumuFormProvider","children","initialValues","undefined","validate","zodResolver","form","fumufumuApi","serverApi","injectEndpoints","endpoints","builder","addWakaru","mutation","args","dispatch","queryFulfilled","util","updateQueryData","draft","map","fumufumu","fumufumuId","wakaruCount","wakaru","invalidatesTags","method","url","FormData","append","toString","File","toISOString","getFumufumu","providesTags","getFumufumus","params","getFumufumusTypeChat","forceRefetch","currentArg","previousArg","cursor","merge","currentCache","newItems","arg","existingIds","Set","item","filteredNewItems","filter","newItem","has","concat","pagination","endCursor","hasNextPage","limit","type","serializeQueryArgs","endpointName","getFumufumusTypeDraft","getFumufumusTypeEvent","getFumufumusTypeFollow","getFumufumusTypePrivate","getFumufumusTypePublic","getFumufumusTypeSession","getFumufumusTypeWalaru","getSearchFumufumus","keywords","getUserFumufumu","removeWakaru","deletedVenue","c","deletedVenueIndex","indexOf","splice","deleteFumufumu","getMyFumufumus","userId","overrideExisting","useAddWakaruMutation","useGetFumufumuQuery","useGetFumufumusQuery","useGetFumufumusTypeChatQuery","useGetFumufumusTypeDraftQuery","useGetFumufumusTypeEventQuery","useGetFumufumusTypeFollowQuery","useGetFumufumusTypePrivateQuery","useGetFumufumusTypePublicQuery","useGetFumufumusTypeSessionQuery","useGetFumufumusTypeWalaruQuery","useGetMyFumufumusQuery","useGetSearchFumufumusQuery","useGetUserFumufumuQuery","useRemoveWakaruMutation","useDeleteFumufumuMutation"],"sourceRoot":""}