{"version":3,"file":"static/js/671.12f204ef.chunk.js","mappings":"mJACIA,EAA2BC,EAAAA,mBAAoBC,GACxCC,EAAsB,SAA6BC,GAC5D,IAAIC,EAAWD,EAAKC,SAClBC,EAAOF,EAAKE,KACd,OAAoBL,EAAAA,cAAoBD,EAAYO,SAAU,MAAM,SAAUC,GAC5E,OAAoBP,EAAAA,cAAoBD,EAAYS,SAAU,CAC5DC,MAAOJ,GAAQE,GACdH,EACL,GACF,EACA,K,uDCXA,I,UC6BA,EA7Ba,CACXM,OAAQ,QACRC,MAAO,QACPC,IAAK,MACLC,YAAa,gBACbC,GAAI,KACJC,MAAO,QACPC,MAAO,QACPC,KAAM,OACNC,WAAY,cACZC,WAAY,cACZC,WAAY,gBACZC,YAAa,iBACbC,WAAY,gBACZC,aAAc,kBACdC,WAAY,OACZC,WAAY,WACZC,UAAW,IACXC,eAAgB,oBAChBC,iBAAiB,EACjBC,cAAe,0BACfC,UAAW,wBACXC,aAAc,6BACdC,SAAU,8BACVC,eAAgB,cAChBC,WAAY,cACZC,gBAAiB,eACjBC,YAAa,gBCvBf,EAJa,CACXC,YAAa,cACbC,iBAAkB,CAAC,aAAc,aCE/B5B,EAAS,CACX6B,MAAMC,EAAAA,EAAAA,GAAS,CACbH,YAAa,cACbI,gBAAiB,cACjBC,mBAAoB,iBACpBC,iBAAkB,eAClBC,gBAAiB,cACjBN,iBAAkB,CAAC,aAAc,YACjCO,qBAAsB,CAAC,aAAc,YACrCC,wBAAyB,CAAC,gBAAiB,eAC3CC,sBAAuB,CAAC,cAAe,aACvCC,qBAAsB,CAAC,aAAc,aACpCC,GACHC,kBAAkBV,EAAAA,EAAAA,GAAS,CAAC,EAAGW,ICZ7BC,EAAe,kCA8HnB,EA7HmB,CACjB1C,OAAQ,KACR2C,WJRF,CAEEC,eAAgB,SAChBC,QAAS,QACTC,gBAAiB,UACjBC,KAAM,OAENC,UAAW,gBACXC,UAAW,YACXC,OAAQ,mBACRC,OAAQ,eACRC,OAAQ,mBACRC,OAAQ,eACRC,UAAW,aIJXC,WDYF,ECXEC,WAAYA,EACZC,SDUF,ECTEC,OAAQ,CACN/B,YAAa,iBAEfgC,MAAO,CACLC,YAAa,cACbC,cAAe,KACfC,YAAa,QACbC,gBAAiB,aACjBC,eAAgB,mBAChBC,wBAAyB,oBACzBC,UAAW,UACXC,UAAW,sBACXC,aAAc,sBACdC,WAAY,iBACZC,aAAc,kBACdC,UAAW,OACXC,OAAQ,aACRC,SAAU,eACVC,YAAa,2BACbC,WAAY,0BACZC,WAAY,2BAEdC,MAAO,CACLC,OAAQ,KACRC,WAAY,SACZC,WAAY,MAEdC,WAAY,CACVH,OAAQ,KACRC,WAAY,UAEdG,SAAU,CACRC,OAAQ,CAAC,GAAI,IACbC,kBAAmB,cACnBC,SAAU,OACVC,UAAW,QACXC,OAAQ,SACRC,cAAe,sBACfC,cAAe,sBACftB,UAAW,kBACXuB,UAAW,kBACXtB,aAAc,uBAEhBuB,OAAQ,CACNC,UAAW,eACXC,WAAY,cACZC,YAAa,eACbC,YAAa,eACbC,aAAc,iBAEhBC,MAAO,CACLC,YAAa,WAEfC,KAAM,CACJC,KAAM,QAERC,KAAM,CACJC,KAAM,OACNC,KAAM,OACNC,OAAQ,SACRhC,OAAQ,UAEViC,WAAY,CACVC,KAAM,QAERC,KAAM,CACJC,SAAU,aACVC,wBAAyB,CACvB,QAAW,sCACXC,SAAU,wBACV,KAAQ,oCACRC,WAAY,uCACZC,KAAM,CACJC,OAAQ,kCACRC,MAAO,yCACPC,QAAS,+BAEXC,MAAO,CACLC,OAAQ3E,EACR4E,OAAQ5E,EACR6E,MAAO7E,EACP8E,OAAQ9E,EACR+E,OAAQ/E,EACRsE,KAAMtE,EACN,QAAWA,EACXgF,QAAShF,EACT,MAASA,EACTiF,OAAQjF,EACRkF,MAAOlF,EACPmF,IAAKnF,EACLoF,IAAKpF,GAEP2E,OAAQ,CACNU,IAAK,qCACLC,IAAK,8CACLC,IAAK,2CACLC,MAAO,qDAETT,OAAQ,CACNM,IAAK,mCACLC,IAAK,kCACLC,IAAK,kCACLC,MAAO,0CAETX,MAAO,CACLQ,IAAK,0BACLC,IAAK,2BACLC,IAAK,0BACLC,MAAO,wDAETC,QAAS,CACPC,SAAU,oDAIhBC,MAAO,CACLC,QAAS,W,+EC9Hb,EADkB,CAAE,KAAQ,CAAE,IAAO,MAAO,MAAS,CAAE,QAAW,gBAAiB,UAAa,SAAW,SAAY,CAAC,CAAE,IAAO,OAAQ,MAAS,CAAE,EAAK,oeAAwe,KAAQ,MAAO,MAAS,Y,UCKrpBC,EAAc,SAAqBC,EAAOC,GAC5C,OAAoBnJ,EAAAA,cAAoBoJ,EAAAA,GAAUC,EAAAA,EAAAA,IAAcA,EAAAA,EAAAA,GAAc,CAAC,EAAGH,GAAQ,CAAC,EAAG,CAC5FC,IAAKA,EACLrC,KAAMwC,IAEV,EAKA,MAJ2BtJ,EAAAA,WAAiBiJ,E,yICVxCM,EAAmB,IAAIC,IAW3B,IAAIC,EAAiB,IAAIC,EAAAA,GAVzB,SAAkBC,GAChBA,EAASC,SAAQ,SAAUC,GACzB,IAAIC,EACAC,EAASF,EAAOE,OACuC,QAA1DD,EAAwBP,EAAiBS,IAAID,UAA+C,IAA1BD,GAA4CA,EAAsBF,SAAQ,SAAUK,GACrJ,OAAOA,EAASF,EAClB,GACF,GACF,I,2CCHIG,EAA0B,SAAUC,IACtCC,EAAAA,EAAAA,GAAUF,EAAYC,GACtB,IAAIE,GAASC,EAAAA,EAAAA,GAAaJ,GAC1B,SAASA,IAEP,OADAK,EAAAA,EAAAA,GAAgBC,KAAMN,GACfG,EAAOI,MAAMD,KAAME,UAC5B,CAOA,OANAC,EAAAA,EAAAA,GAAaT,EAAY,CAAC,CACxBU,IAAK,SACLnK,MAAO,WACL,OAAO+J,KAAKtB,MAAM9I,QACpB,KAEK8J,CACT,CAd8B,CAc5BlK,EAAAA,WCrBS6K,EAAiC7K,EAAAA,cAAoB,MCMhE,SAAS8K,EAAe5B,EAAOC,GAC7B,IAAI/I,EAAW8I,EAAM9I,SACnB2K,EAAW7B,EAAM6B,SACfC,EAAahL,EAAAA,OAAa,MAC1BiL,EAAajL,EAAAA,OAAa,MAC1BkL,EAAqBlL,EAAAA,WAAiB6K,GAEtCM,EAAoC,oBAAb/K,EACvBgL,EAAiBD,EAAgB/K,EAAS4K,GAAc5K,EAExDiL,EAAUrL,EAAAA,OAAa,CACzBsL,OAAQ,EACRC,QAAS,EACTC,aAAc,EACdC,cAAe,IAGbC,GAAUP,GAA8BnL,EAAAA,eAAqBoL,KAAmBO,EAAAA,EAAAA,IAAWP,GAC3FQ,EAAYF,EAASN,EAAejC,IAAM,KAC1C0C,EAAY7L,EAAAA,SAAc,WAC5B,OAAO8L,EAAAA,EAAAA,IAAWF,EAAWZ,EAC/B,GAAG,CAACY,EAAWZ,IACXe,EAAS,WACX,OAAOC,EAAAA,EAAAA,GAAYhB,EAAWiB,WAAYD,EAAAA,EAAAA,GAAYf,EAAWgB,QACnE,EACAjM,EAAAA,oBAA0BmJ,GAAK,WAC7B,OAAO4C,GACT,IAEA,IAAIG,EAAWlM,EAAAA,OAAakJ,GAC5BgD,EAASD,QAAU/C,EAEnB,IAAIiD,EAAmBnM,EAAAA,aAAkB,SAAU+J,GACjD,IAAIqC,EAAoBF,EAASD,QAC/BI,EAAWD,EAAkBC,SAC7BC,EAAOF,EAAkBE,KACvBC,EAAwBxC,EAAOyC,wBACjClB,EAAQiB,EAAsBjB,MAC9BC,EAASgB,EAAsBhB,OAC7BC,EAAczB,EAAOyB,YACvBC,EAAe1B,EAAO0B,aAMpBgB,EAAaC,KAAKC,MAAMrB,GACxBsB,EAAcF,KAAKC,MAAMpB,GAC7B,GAAIF,EAAQY,QAAQX,QAAUmB,GAAcpB,EAAQY,QAAQV,SAAWqB,GAAevB,EAAQY,QAAQT,cAAgBA,GAAeH,EAAQY,QAAQR,eAAiBA,EAAc,CAClL,IAAIpL,EAAO,CACTiL,MAAOmB,EACPlB,OAAQqB,EACRpB,YAAaA,EACbC,aAAcA,GAEhBJ,EAAQY,QAAU5L,EAElB,IAAIwM,EAAoBrB,IAAgBkB,KAAKI,MAAMxB,GAASA,EAAQE,EAChEuB,EAAqBtB,IAAiBiB,KAAKI,MAAMvB,GAAUA,EAASE,EACpEuB,GAAW3D,EAAAA,EAAAA,IAAcA,EAAAA,EAAAA,GAAc,CAAC,EAAGhJ,GAAO,CAAC,EAAG,CACxDmL,YAAaqB,EACbpB,aAAcsB,IAGO,OAAvB7B,QAAsD,IAAvBA,GAAyCA,EAAmB8B,EAAUjD,EAAQuC,GACzGD,GAEFY,QAAQC,UAAUC,MAAK,WACrBd,EAASW,EAAUjD,EACrB,GAEJ,CACF,GAAG,IAYH,OAVA/J,EAAAA,WAAgB,WACd,IHhEoBoN,EAASC,EGgEzBC,EAAiBvB,IAIrB,OAHIuB,IAAmBvC,IHjEHqC,EGkEVE,EHlEmBD,EGkEHlB,EHjEvB5C,EAAiBgE,IAAIH,KACxB7D,EAAiBiE,IAAIJ,EAAS,IAAIK,KAClChE,EAAeiE,QAAQN,IAEzB7D,EAAiBS,IAAIoD,GAASO,IAAIN,IG+DzB,WACL,OH9DC,SAAmBD,EAASC,GAC7B9D,EAAiBgE,IAAIH,KACvB7D,EAAiBS,IAAIoD,GAASQ,OAAOP,GAChC9D,EAAiBS,IAAIoD,GAAS/M,OACjCoJ,EAAeoE,UAAUT,GACzB7D,EAAiBqE,OAAOR,IAG9B,CGsDaS,CAAUP,EAAgBnB,EACnC,CACF,GAAG,CAACnB,EAAWiB,QAASlB,IAEJ/K,EAAAA,cAAoBkK,EAAY,CAClDf,IAAK8B,GACJS,EAAsB1L,EAAAA,aAAmBoL,EAAgB,CAC1DjC,IAAK0C,IACFT,EACP,CAKA,MAJqCpL,EAAAA,WAAiB8K,GCvFtD,SAASpB,EAAeR,EAAOC,GAC7B,IAAI/I,EAAW8I,EAAM9I,SASrB,OARqC,oBAAbA,EAA0B,CAACA,IAAY0N,EAAAA,EAAAA,GAAQ1N,IAQrD2N,KAAI,SAAUC,EAAOC,GACrC,IAAIrD,GAAiB,OAAVoD,QAA4B,IAAVA,OAAmB,EAASA,EAAMpD,MAAQ,GAAGsD,OAfpD,kBAegF,KAAKA,OAAOD,GAClH,OAAoBjO,EAAAA,cAAoB8K,GAAgBtI,EAAAA,EAAAA,GAAS,CAAC,EAAG0G,EAAO,CAC1E0B,IAAKA,EACLzB,IAAe,IAAV8E,EAAc9E,OAAMlJ,IACvB+N,EACN,GACF,CACA,IAAIG,EAAiCnO,EAAAA,WAAiB0J,GAItDyE,EAAkBC,WF3BX,SAAoBjO,GACzB,IAAIC,EAAWD,EAAKC,SAClBiO,EAAgBlO,EAAKkO,cACnBC,EAActO,EAAAA,OAAa,GAC3BuO,EAAiBvO,EAAAA,OAAa,IAC9BkL,EAAqBlL,EAAAA,WAAiB6K,GACtCwB,EAAWrM,EAAAA,aAAkB,SAAUK,EAAM+M,EAASd,GACxDgC,EAAYrC,SAAW,EACvB,IAAIuC,EAAYF,EAAYrC,QAC5BsC,EAAetC,QAAQwC,KAAK,CAC1BpO,KAAMA,EACN+M,QAASA,EACTd,KAAMA,IAERW,QAAQC,UAAUC,MAAK,WACjBqB,IAAcF,EAAYrC,UACV,OAAlBoC,QAA4C,IAAlBA,GAAoCA,EAAcE,EAAetC,SAC3FsC,EAAetC,QAAU,GAE7B,IAEuB,OAAvBf,QAAsD,IAAvBA,GAAyCA,EAAmB7K,EAAM+M,EAASd,EAC5G,GAAG,CAAC+B,EAAenD,IACnB,OAAoBlL,EAAAA,cAAoB6K,EAAkBrK,SAAU,CAClEC,MAAO4L,GACNjM,EACL,EEEA,O,0NCUA,GAxC0BsO,EAAAA,EAAAA,aAAW,SAAUxF,EAAOC,GACpD,IAAIwF,EAAYzF,EAAMyF,UACpBC,EAAe1F,EAAM0F,aACrBxO,EAAW8I,EAAM9I,SACfyO,GAAYC,EAAAA,EAAAA,UACZC,GAAeD,EAAAA,EAAAA,WAGnBE,EAAAA,EAAAA,qBAAoB7F,GAAK,WACvB,MAAO,CAAC,CACV,IAGA,IAAI8F,GAAUH,EAAAA,EAAAA,SAAO,GAyBrB,OAxBKG,EAAQhD,UAAWiD,EAAAA,EAAAA,OACtBH,EAAa9C,QAAU2C,IACvBC,EAAU5C,QAAU8C,EAAa9C,QAAQkD,WACzCF,EAAQhD,SAAU,IAIpBmD,EAAAA,EAAAA,YAAU,WACM,OAAdT,QAAoC,IAAdA,GAAgCA,EAAUzF,EAClE,KACAkG,EAAAA,EAAAA,YAAU,WAOR,OAHwC,OAApCL,EAAa9C,QAAQkD,YAA6C,OAAtBN,EAAU5C,SACxD4C,EAAU5C,QAAQoD,YAAYN,EAAa9C,SAEtC,WACL,IAAIqD,EAAuBC,EAGwB,QAAlDD,EAAwBP,EAAa9C,eAA+C,IAA1BqD,GAA4G,QAA/DC,EAAyBD,EAAsBH,kBAAmD,IAA3BI,GAA6CA,EAAuBC,YAAYT,EAAa9C,QAC9Q,CACF,GAAG,IACI8C,EAAa9C,QAAuBwD,EAAAA,aAAsBrP,EAAU2O,EAAa9C,SAAW,IACrG,I,mBCxCA,SAASyD,EAAWC,EAAIC,EAAIC,GAC1B,OAAIA,EACKF,EAAG,KAAOC,EAAG,GAGfD,EAAG,KAAOC,EAAG,IAAMD,EAAG,KAAOC,EAAG,EACzC,C,4CCRO,SAASE,EAAU3P,GACxB,IAAI4P,EAAY5P,EAAK4P,UACjBC,EAAS7P,EAAK6P,OACdC,EAAY9P,EAAK8P,UACjBC,EAAiB/P,EAAK+P,eAE1B,OAAIF,IAIAC,EACK,CACLE,WAAY,GAAGjC,OAAO6B,EAAW,KAAK7B,OAAO+B,IAI7CC,EACK,CACLC,WAAYD,GAIT,KACT,CCjBe,SAASE,EAAKlH,GAC3B,IAAI6G,EAAY7G,EAAM6G,UAClBM,EAAUnH,EAAMmH,QAChBC,EAASpH,EAAMoH,OACfC,EAAOrH,EAAMqH,KACbC,EAAatH,EAAMsH,WACnBC,EAAgBvH,EAAMuH,cACtBC,EAAqBxH,EAAMwH,mBAE/B,IAAKH,EACH,OAAO,KAGT,IAAIP,EAAS,CAAC,EAad,OAXIQ,GAAcE,GAAsBD,KACtCT,GAAS3G,EAAAA,EAAAA,GAAc,CACrBsH,cAAc,GACbb,EAAU,CACXE,OAAQQ,EACRT,UAAWA,EACXG,eAAgBQ,EAChBT,UAAWQ,MAIKzQ,EAAAA,cAAoB4Q,EAAAA,IAAWpO,EAAAA,EAAAA,GAAS,CAAC,EAAGwN,EAAQ,CACtEK,QAASA,EACTQ,eAAe,KACb,SAAU1Q,GACZ,IAAI2Q,EAAY3Q,EAAK2Q,UACrB,OAAoB9Q,EAAAA,cAAoB,MAAO,CAC7C+Q,MAAO,CACLT,OAAQA,GAEVQ,UAAWE,IAAW,GAAG9C,OAAO6B,EAAW,SAAUe,IAEzD,GACF,C,IC5CIG,E,u6BAEJ,IAAMC,EAAW,CACfC,OAAQ,WACRC,IAAK,QAELC,GAAI,OACJC,EAAG,OAGL,SAASC,IACP,QAAqBtR,IAAjBgR,EACF,OAAOA,EAETA,EAAe,GACf,IAAMF,EAAQS,SAASC,cAAc,KAAKV,MAE1C,IAAK,IAAMnG,KAAOsG,EACZtG,EAFW,cAEOmG,IACpBE,EAAerG,GAGnB,OAAOqG,CACT,CAEA,SAASS,IACP,OAAOH,IAAiB,GAAArD,OACjBqD,IAAiB,sBACpB,oBACN,CAEO,SAASI,IACd,OAAOJ,IAAoB,GAAHrD,OAAMqD,IAAiB,aAAc,WAC/D,CAEO,SAASK,EAAsBC,EAAMpR,GAC1C,IAAMqR,EAAOJ,IACTI,IACFD,EAAKd,MAAMe,GAAQrR,EACN,uBAATqR,IACFD,EAAKd,MAAMgB,mBAAqBtR,GAGtC,CAEA,SAASuR,EAAaH,EAAMpR,GAC1B,IAAMqR,EAAOH,IACTG,IACFD,EAAKd,MAAMe,GAAQrR,EACN,cAATqR,IACFD,EAAKd,MAAMkB,UAAYxR,GAG7B,CAwBA,ICnEIyR,EDmEEC,EAAW,iBACXC,EAAW,mBCjEjB,SAASC,EAAcC,GACrB,IAAMC,EAAgBD,EAAKvB,MAAMyB,QACjCF,EAAKvB,MAAMyB,QAAU,OACrBF,EAAK7G,aACL6G,EAAKvB,MAAMyB,QAAUD,CACvB,CAEA,SAASE,EAAIC,EAAIZ,EAAMa,GACrB,IAAIlS,EAAQkS,EACZ,GAAoB,WAAhBC,EAAOd,GAQX,MAAqB,qBAAVrR,GACY,kBAAVA,IACTA,EAAQ,GAAHyN,OAAMzN,EAAK,YAElBiS,EAAG3B,MAAMe,GAAQrR,IAGZyR,EAAkBQ,EAAIZ,GAd3B,IAAK,IAAMe,KAAKf,EACVA,EAAKgB,eAAeD,IACtBJ,EAAIC,EAAIG,EAAGf,EAAKe,GAaxB,CAgDA,SAASE,EAAUC,EAAGC,GACpB,IAAIC,EAAMF,EAAE,OAAD9E,OAAQ+E,EAAM,IAAM,IAAG,WAC5BjL,EAAS,SAAHkG,OAAY+E,EAAM,MAAQ,QACtC,GAAmB,kBAARC,EAAkB,CAC3B,IAAMC,EAAIH,EAAExB,SAGO,kBADnB0B,EAAMC,EAAEC,gBAAgBpL,MAGtBkL,EAAMC,EAAEE,KAAKrL,G,CAGjB,OAAOkL,CACT,CAEA,SAASI,EAAcN,GACrB,OAAOD,EAAUC,EACnB,CAEA,SAASO,EAAaP,GACpB,OAAOD,EAAUC,GAAG,EACtB,CAEA,SAASQ,EAAUd,GACjB,IAAMe,EAtER,SAA2BnB,GACzB,IAAIoB,EACAC,EACAC,EACEC,EAAMvB,EAAKwB,cACXT,EAAOQ,EAAIR,KACXU,EAAUF,GAAOA,EAAIT,gBAkC3B,OAhCAM,EAAMpB,EAAK9F,wBAMXmH,EAAIjH,KAAKC,MAAM+G,EAAIM,MACnBJ,EAAIlH,KAAKC,MAAM+G,EAAIT,KAyBZ,CACLe,KAJFL,GAAKI,EAAQE,YAAcZ,EAAKY,YAAc,EAK5ChB,IAJFW,GAAKG,EAAQG,WAAab,EAAKa,WAAa,EAM9C,CA0BcC,CAAkBzB,GACxBmB,EAAMnB,EAAGoB,cACTd,EAAIa,EAAIO,aAAeP,EAAIQ,aAGjC,OAFAZ,EAAIO,MAAQV,EAAcN,GAC1BS,EAAIR,KAAOM,EAAaP,GACjBS,CACT,CAMA,SAASa,EAASC,GAGhB,OAAe,OAARA,QAAwBtU,IAARsU,GAAqBA,GAAOA,EAAIC,MACzD,CAEA,SAASC,EAAY5C,GACnB,OAAIyC,EAASzC,GACJA,EAAKL,SAEQ,IAAlBK,EAAK6C,SACA7C,EAEFA,EAAKiC,aACd,CAgBA,IAAMa,EAAgB,IAAIC,OAAO,KAAD1G,OAhJjB,wCAAwC2G,OAgJX,mBAAmB,KACzDC,EAAS,4BACTC,GAAgB,eAChBC,GAAgB,eAChBC,GAAO,OA6Cb,SAASC,GAAmBC,EAAKC,GAC/B,MAAY,SAARD,EACKC,EAAOC,YAAc,QAAUF,EAEjCC,EAAOE,aAAe,SAAWH,CAC1C,CAEA,SAASI,GAAwBJ,GAC/B,MAAY,SAARA,EACK,QACU,UAARA,EACF,OACU,QAARA,EACF,SACU,WAARA,EACF,WADF,CAGT,CAGA,SAASK,GAAWlD,EAAMmD,EAAQL,GAEF,WAA1B3C,EAAIH,EAAM,cACZA,EAAKvB,MAAM2E,SAAW,YAExB,IAAIC,GAAW,IACXC,GAAW,IACTC,EAAqBX,GAAmB,OAAQE,GAChDU,EAAmBZ,GAAmB,MAAOE,GAC7CW,EAA6BR,GACjCM,GAEIG,EAA2BT,GAAwBO,GAE9B,SAAvBD,IACFF,EAAU,KAGa,QAArBG,IACFF,EAAU,KAEZ,ID3LoC/D,EC2LhCoE,EAAqB,GACnBC,EAAiB1C,EAAUlB,IAC7B,SAAUmD,GAAU,QAASA,KAC/BQ,GD9LkCpE,EC8LSS,GD7LjCvB,MAAMgB,oBAAsBF,EAAKd,MAAMW,MC6LG,GACpDE,EAAsBU,EAAM,SAE1B,SAAUmD,IACZnD,EAAKvB,MAAMgF,GAA8B,GACzCzD,EAAKvB,MAAM8E,GAAsB,GAAH3H,OAAMyH,EAAO,OAEzC,QAASF,IACXnD,EAAKvB,MAAMiF,GAA4B,GACvC1D,EAAKvB,MAAM+E,GAAoB,GAAH5H,OAAM0H,EAAO,OAG3CvD,EAAcC,GACd,IAAM6D,EAAM3C,EAAUlB,GAChBC,EAAgB,CAAC,EACvB,IAAK,IAAM3H,KAAO6K,EAChB,GAAIA,EAAO3C,eAAelI,GAAM,CAC9B,IAAMuK,EAAMD,GAAmBtK,EAAKwK,GAC9BgB,EAAiB,SAARxL,EAAiB+K,EAAUC,EACpCS,EAAMH,EAAetL,GAAOuL,EAAIvL,GAEpC2H,EAAc4C,GADZA,IAAQvK,EACWwL,EAASC,EAETD,EAASC,C,CAIpC5D,EAAIH,EAAMC,GAEVF,EAAcC,IACV,SAAUmD,GAAU,QAASA,IAC/B7D,EAAsBU,EAAM2D,GAE9B,IAAM/C,EAAM,CAAC,EACb,IAAK,IAAMoD,KAAOb,EAChB,GAAIA,EAAO3C,eAAewD,GAAM,CAC9B,IAAMC,EAAMrB,GAAmBoB,EAAKlB,GAC9BoB,EAAMf,EAAOa,GAAOJ,EAAeI,GAEvCpD,EAAIqD,GADFD,IAAQC,EACChE,EAAcgE,GAAOC,EAErBjE,EAAcgE,GAAOC,C,CAItC/D,EAAIH,EAAMY,EACZ,CAEA,SAASuD,GAAanE,EAAMmD,GAC1B,IAAMS,EAAiB1C,EAAUlB,GAC3BoE,ED5OD,SAAwB7E,GAC7B,IAAMd,EAAQyD,OAAOmC,iBAAiB9E,EAAM,MACtCI,EACJlB,EAAM6F,iBAAiB,cACvB7F,EAAM6F,iBAAiBjF,KACzB,GAAIM,GAA2B,SAAdA,EAAsB,CACrC,IAAM4E,EAAS5E,EAAU6E,QAAQ,cAAe,IAAIC,MAAM,KAC1D,MAAO,CACLpD,EAAGqD,WAAWH,EAAO,KAAOA,EAAO,GAAI,GACvCjD,EAAGoD,WAAWH,EAAO,KAAOA,EAAO,GAAI,G,CAG3C,MAAO,CACLlD,EAAG,EACHC,EAAG,EAEP,CC4NqBqD,CAAe3E,GAC5B4E,EAAW,CAAEvD,EAAG+C,EAAW/C,EAAGC,EAAG8C,EAAW9C,GAC9C,SAAU6B,IACZyB,EAASvD,EAAI+C,EAAW/C,EAAI8B,EAAOzB,KAAOkC,EAAelC,MAEvD,QAASyB,IACXyB,EAAStD,EAAI8C,EAAW9C,EAAI6B,EAAOxC,IAAMiD,EAAejD,KD7NrD,SAAwBpB,EAAMsF,GACnC,IAAMpG,EAAQyD,OAAOmC,iBAAiB9E,EAAM,MACtCI,EACJlB,EAAM6F,iBAAiB,cACvB7F,EAAM6F,iBAAiBjF,KACzB,GAAIM,GAA2B,SAAdA,EAAsB,CACrC,IAAImF,EACAC,EAAUpF,EAAUqF,MAAMnF,GAC1BkF,IAEFD,GADAC,EAAUA,EAAQ,IACJN,MAAM,KAAKhJ,KAAI,SAAAwJ,GAC3B,OAAOP,WAAWO,EAAM,G,KAEtB,GAAKJ,EAAGxD,EACZyD,EAAI,GAAKD,EAAGvD,EACZ5B,EAAaH,EAAM,UAAF3D,OAAYkJ,EAAII,KAAK,KAAI,SAG1CJ,EADgBnF,EAAUqF,MAAMlF,GAAU,GAC5B2E,MAAM,KAAKhJ,KAAI,SAAAwJ,GAC3B,OAAOP,WAAWO,EAAM,G,KAEtB,IAAMJ,EAAGxD,EACbyD,EAAI,IAAMD,EAAGvD,EACb5B,EAAaH,EAAM,YAAF3D,OAAckJ,EAAII,KAAK,KAAI,M,MAG9CxF,EACEH,EAAI,cAAA3D,OACUiJ,EAAGxD,EAAC,mBAAAzF,OAAkBiJ,EAAGvD,EAAC,qBAG9C,CCgME6D,CAAenF,EAAM4E,EACvB,CA4BA,SAASQ,GAAKN,EAAKO,GACjB,IAAK,IAAI9E,EAAI,EAAGA,EAAIuE,EAAIQ,OAAQ/E,IAC9B8E,EAAGP,EAAIvE,GAEX,CAEA,SAASgF,GAAcvF,GACrB,MAAgD,eAAzCJ,EAAkBI,EAAM,YACjC,CAjJsB,qBAAXkC,SACTtC,EAAoBsC,OAAOmC,iBA1D7B,SAA2BrE,EAAMR,EAAMgG,GACrC,IAAIC,EAAgBD,EAChBE,EAAM,GACJ7E,EAAIsB,EAAYnC,GAQtB,OAPAyF,EAAgBA,GAAiB5E,EAAEiB,YAAYuC,iBAAiBrE,EAAM,SAIpE0F,EAAMD,EAAcnB,iBAAiB9E,IAASiG,EAAcjG,IAGvDkG,CACT,EASA,SAA6B1F,EAAMR,GAGjC,IAAIoB,EAAMZ,EAAKyC,KAAkBzC,EAAKyC,IAAejD,GAYrD,GAAI6C,EAAcsD,KAAK/E,KAAS4B,EAAOmD,KAAKnG,GAAO,CAEjD,IAAMf,EAAQuB,EAAKvB,MACbiD,EAAOjD,EAAMkE,IACbiD,EAAS5F,EAAK0C,IAAeC,IAGnC3C,EAAK0C,IAAeC,IAAQ3C,EAAKyC,IAAeE,IAGhDlE,EAAMkE,IAAiB,aAATnD,EAAsB,MAAQoB,GAAO,EACnDA,EAAMnC,EAAMoH,UA5BL,KA+BPpH,EAAMkE,IAAQjB,EAEd1B,EAAK0C,IAAeC,IAAQiD,C,CAE9B,MAAe,KAARhF,EAAa,OAASA,CAC/B,GAqJA,IAAMkF,GAAa,CAAC,SAAU,SAAU,WAClCC,IAAiB,EACjBC,GAAgB,EAChBC,GAAe,EA0BrB,SAASC,GAAYlG,EAAMpJ,EAAOuP,GAChC,IACIC,EACAC,EACA9F,EAHApS,EAAQ,EAIZ,IAAKkY,EAAI,EAAGA,EAAIzP,EAAM0O,OAAQe,IAE5B,GADAD,EAAOxP,EAAMyP,GAEX,IAAK9F,EAAI,EAAGA,EAAI4F,EAAMb,OAAQ/E,IAAK,CACjC,IAAI+F,OAAO,EAETA,EADW,WAATF,EACQ,GAAHxK,OAAMwK,GAAIxK,OAAGuK,EAAM5F,GAAE,SAElB6F,EAAOD,EAAM5F,GAEzBpS,GAASuW,WAAW9E,EAAkBI,EAAMsG,KAAa,C,CAI/D,OAAOnY,CACT,CAEA,IAAMoY,GAAW,CACfC,UAAS,SAAC1L,GACR,IAAI2L,EAAS3L,EACb,GAEI2L,EADsB,KAApBA,EAAOrE,UAAmBqE,EAAOC,KAC1BD,EAAOC,KAEPD,EAAO5J,iBAEX4J,GAA8B,IAApBA,EAAOrE,UAAsC,IAApBqE,EAAOrE,UACnD,OAAOqE,C,GA0CX,SAASE,GAAM3G,EAAMR,EAAMoH,GACzB,IAAIC,EAAQD,EACZ,GAAI5E,EAAShC,GACX,MAAgB,UAATR,EACH+G,GAASO,cAAc9G,GACvBuG,GAASQ,eAAe/G,GACvB,GAAsB,IAAlBA,EAAKoC,SACd,MAAgB,UAAT5C,EACH+G,GAASS,SAAShH,GAClBuG,GAASU,UAAUjH,GAEzB,IAAMmG,EAAiB,UAAT3G,EAAmB,CAAC,OAAQ,SAAW,CAAC,MAAO,UACzD0H,EACO,UAAT1H,EACIpF,KAAKC,MAAM2F,EAAK9F,wBAAwBlB,OACxCoB,KAAKC,MAAM2F,EAAK9F,wBAAwBjB,QACxCkO,EAAc5B,GAAcvF,GAC9BoH,EAAc,GAEG,OAAnBF,QACmBvZ,IAAnBuZ,GACAA,GAAkB,KAElBA,OAAiBvZ,GAIC,QAFlByZ,EAAcxH,EAAkBI,EAAMR,UAGpB7R,IAAhByZ,GACAC,OAAOD,GAAe,KAEtBA,EAAcpH,EAAKvB,MAAMe,IAAS,GAGpC4H,EAAchN,KAAKC,MAAMqK,WAAW0C,KAAiB,QAEzCzZ,IAAVkZ,IACFA,EAAQM,EAAclB,GAAeF,IAEvC,IAAMuB,OACe3Z,IAAnBuZ,GAAgCC,EAC5BzB,EAAMwB,GAAkBE,EAC9B,OAAIP,IAAUd,GACRuB,EACK5B,EAAMQ,GAAYlG,EAAM,CAAC,SAAU,WAAYmG,GAEjDiB,EACEE,EACLT,IAAUZ,GACLP,EAGPA,GACCmB,IAAUb,IACNE,GAAYlG,EAAM,CAAC,UAAWmG,GAC/BD,GAAYlG,EAAM,CAAC,UAAWmG,IAG/BiB,EAAclB,GAAYlG,EAAM8F,GAAWyB,MAAMV,GAAQV,EAClE,CAjGAf,GAAK,CAAC,QAAS,WAAW,SAAA5F,GACxB+G,GAAS,MAAD3K,OAAO4D,IAAU,SAAAgI,GACvB,IAAM3G,EAAI2G,EAAOtI,SACjB,OAAO9E,KAAK/D,IAGVwK,EAAEC,gBAAgB,SAADlF,OAAU4D,IAE3BqB,EAAEE,KAAK,SAADnF,OAAU4D,IAChB+G,GAAS,WAAD3K,OAAY4D,IAAQqB,G,EAIhC0F,GAAS,WAAD3K,OAAY4D,IAAU,SAAAiI,GAE5B,IAAMrB,EAAO,SAAHxK,OAAY4D,GAChB+B,EAAMkG,EAAIvI,SACV6B,EAAOQ,EAAIR,KAEX2G,EADkBnG,EAAIT,gBACgBsF,GAG5C,MACsB,eAAnB7E,EAAIoG,YAA+BD,GACnC3G,GAAQA,EAAKqF,IACdsB,C,CAGN,IAuEA,IAAME,GAAU,CACdxE,SAAU,WACVyE,WAAY,SACZ3H,QAAS,SAIX,SAAS4H,KAA4B,QAAAC,EAAA3P,UAAAkN,OAAN0C,EAAI,IAAAC,MAAAF,GAAAG,EAAA,EAAAA,EAAAH,EAAAG,IAAJF,EAAIE,GAAA9P,UAAA8P,GACjC,IAAIxC,EACE1F,EAAOgI,EAAK,GAUlB,OAPyB,IAArBhI,EAAK9G,YACPwM,EAAMiB,GAAMxO,WAAMxK,EAAWqa,GA3KjC,SAAchI,EAAMmI,EAASpN,GAC3B,IAEIyE,EAFEqE,EAAM,CAAC,EACPpF,EAAQuB,EAAKvB,MAInB,IAAKe,KAAQ2I,EACPA,EAAQ3H,eAAehB,KACzBqE,EAAIrE,GAAQf,EAAMe,GAClBf,EAAMe,GAAQ2I,EAAQ3I,IAO1B,IAAKA,KAHLzE,EAASqN,KAAKpI,GAGDmI,EACPA,EAAQ3H,eAAehB,KACzBf,EAAMe,GAAQqE,EAAIrE,GAGxB,CAwJI6I,CAAKrI,EAAM4H,IAAS,WAClBlC,EAAMiB,GAAMxO,WAAMxK,EAAWqa,E,IAG1BtC,CACT,CA4BA,SAAS4C,GAAIC,EAAIC,GACf,IAAK,IAAMjI,KAAKiI,EACVA,EAAKhI,eAAeD,KACtBgI,EAAGhI,GAAKiI,EAAKjI,IAGjB,OAAOgI,CACT,CAjCAnD,GAAK,CAAC,QAAS,WAAW,SAAA5F,GACxB,IAAMiJ,EAAQjJ,EAAKkJ,OAAO,GAAGC,cAAgBnJ,EAAK+H,MAAM,GACxDhB,GAAS,QAAD3K,OAAS6M,IAAW,SAACrI,EAAIwI,GAC/B,OACExI,GACA0H,GAAmB1H,EAAIZ,EAAMoJ,EA3Ld,EA2L6C3C,G,EAGhE,IAAME,EAAiB,UAAT3G,EAAmB,CAAC,OAAQ,SAAW,CAAC,MAAO,UAE7D+G,GAAS/G,GAAQ,SAACQ,EAAMK,GACtB,IAAIqF,EAAMrF,EACV,YAAY1S,IAAR+X,EACE1F,GACkBuF,GAAcvF,KAEhC0F,GAAOQ,GAAYlG,EAAM,CAAC,UAAW,UAAWmG,IAE3ChG,EAAIH,EAAMR,EAAMkG,SAEzB,EAEK1F,GAAQ8H,GAAmB9H,EAAMR,EAAMuG,G,CAElD,IAWA,IAAM8C,GAAQ,CACZC,UAAS,SAACvJ,GACR,GAAIA,GAAQA,EAAKL,UAAYK,EAAKwJ,WAChC,OAAOxJ,EAET,IAAMgC,EAAMhC,EAAKiC,eAAiBjC,EAClC,OAAOgC,EAAIO,aAAeP,EAAIQ,Y,EAEhCI,YAAAA,EACAgB,OAAM,SAAC/C,EAAIjS,EAAO2U,GAChB,GAAqB,qBAAV3U,EAGT,OAAO+S,EAAUd,IA9QvB,SAAmBJ,EAAMmD,EAAQL,GAC/B,GAAIA,EAAOkG,YAAa,CACtB,IAAMC,EAAY/H,EAAUlB,GAEtBkJ,EAAQD,EAAUvH,KAAKyH,QAAQ,GAC/BC,EAAOH,EAAUtI,IAAIwI,QAAQ,GAC7BE,EAAQlG,EAAOzB,KAAKyH,QAAQ,GAC5BG,EAAOnG,EAAOxC,IAAIwI,QAAQ,GAEhC,GAAID,IAAUG,GAASD,IAASE,EAC9B,M,CAIAxG,EAAOC,aAAeD,EAAOE,aAC/BE,GAAWlD,EAAMmD,EAAQL,GAEzBA,EAAOyG,iBACPlK,MAAsBH,SAAS6B,KAAKtC,MAEpC0F,GAAanE,EAAMmD,GAEnBD,GAAWlD,EAAMmD,EAAQL,EAE7B,CAoPM0G,CAAUpJ,EAAIjS,EAAO2U,GAAU,CAAC,E,EAKpCd,SAAAA,EACAoD,KAAAA,GACAjF,IAAAA,EACAsJ,MAAK,SAACxH,GACJ,IAAI1B,EACEK,EAAM,CAAC,EACb,IAAKL,KAAK0B,EACJA,EAAIzB,eAAeD,KACrBK,EAAIL,GAAK0B,EAAI1B,IAIjB,GADiB0B,EAAIyH,SAEnB,IAAKnJ,KAAK0B,EACJA,EAAIzB,eAAeD,KACrBK,EAAI8I,SAASnJ,GAAK0B,EAAIyH,SAASnJ,IAIrC,OAAOK,C,EAET0H,IAAAA,GACAqB,oBAAmB,SAACjJ,GAClB,OAAOM,EAAcN,E,EAEvBkJ,mBAAkB,SAAClJ,GACjB,OAAOO,EAAaP,E,EAEtBmJ,MAAK,WAEH,IADA,IAAMjJ,EAAM,CAAC,EACJL,EAAI,EAAGA,EAAInI,UAAKkN,OAAQ/E,IAC/BsI,GAAMP,IAAI1H,EAAUL,EAAC,GAAAnI,UAAAkN,QAAD/E,OAAC5S,EAAAyK,UAADmI,IAEtB,OAAOK,C,EAETkG,cAAe,EACfC,eAAgB,GAGlBuB,GAAIO,GAAOtC,ICrmBX,IAAQC,GAAcqC,GAAdrC,UAER,SAASsD,GAAgBhP,GACvB,GAAI+N,GAAM7G,SAASlH,IAAiC,IAArBA,EAAQsH,SACrC,OAAO,KAiBT,IAEIqE,EADE1F,EADM8H,GAAM1G,YAAYrH,GACbiG,KAEbgJ,EAAgBlB,GAAM1I,IAAIrF,EAAS,YAGvC,KAFqC,UAAlBiP,GAA+C,aAAlBA,GAG9C,MAA0C,SAAnCjP,EAAQkP,SAASC,cACpB,KACAzD,GAAU1L,GAGhB,IACE2L,EAASD,GAAU1L,GACnB2L,GAAUA,IAAW1F,GAA4B,IAApB0F,EAAOrE,SACpCqE,EAASD,GAAUC,GAGnB,GAAsB,YADtBsD,EAAgBlB,GAAM1I,IAAIsG,EAAQ,aAEhC,OAAOA,EAGX,OAAO,IACT,CC/CA,IAAQyD,GAAcrB,GAAdrC,UCKR,SAAS2D,GAAyBrP,EAASsP,GAezC,IAdA,IAAMC,EAAc,CAClB3I,KAAM,EACN4I,MAAOC,IACP5J,IAAK,EACL6J,OAAQD,KAENnK,EAAK0J,GAAgBhP,GACnByG,EAAMsH,GAAM1G,YAAYrH,GACxB2M,EAAMlG,EAAIO,aAAeP,EAAIQ,aAC7BhB,EAAOQ,EAAIR,KACXD,EAAkBS,EAAIT,gBAIrBV,GAAI,CAET,IAC4C,IAAzCqK,UAAUC,UAAUC,QAAQ,SAAqC,IAAnBvK,EAAGwK,aAIjDxK,IAAOW,GACNX,IAAOU,GACuB,YAA9B+H,GAAM1I,IAAIC,EAAI,aAiBX,GAAIA,IAAOW,GAAQX,IAAOU,EAC/B,UAjBA,CACA,IAAMK,EAAM0H,GAAM1F,OAAO/C,GAEzBe,EAAIO,MAAQtB,EAAGuB,WACfR,EAAIR,KAAOP,EAAGwB,UACdyI,EAAY1J,IAAMvG,KAAK/D,IAAIgU,EAAY1J,IAAKQ,EAAIR,KAChD0J,EAAYC,MAAQlQ,KAAKhE,IACvBiU,EAAYC,MAEZnJ,EAAIO,KAAOtB,EAAGwK,aAEhBP,EAAYG,OAASpQ,KAAKhE,IACxBiU,EAAYG,OACZrJ,EAAIR,IAAMP,EAAGyK,cAEfR,EAAY3I,KAAOtH,KAAK/D,IAAIgU,EAAY3I,KAAMP,EAAIO,K,CAIpDtB,EAAK0J,GAAgB1J,E,CAMvB,IAAI0K,EAAmB,KAClBjC,GAAM7G,SAASlH,IAAiC,IAArBA,EAAQsH,WACtC0I,EAAmBhQ,EAAQ2D,MAAM2E,SAEhB,aADAyF,GAAM1I,IAAIrF,EAAS,cAElCA,EAAQ2D,MAAM2E,SAAW,UAI7B,IAAM2H,EAAUlC,GAAMc,oBAAoBlC,GACpCuD,EAAUnC,GAAMe,mBAAmBnC,GACnCX,EAAgB+B,GAAM/B,cAAcW,GACpCV,EAAiB8B,GAAM9B,eAAeU,GACxCwD,EAAgBnK,EAAgBoK,YAChCC,EAAiBrK,EAAgBsK,aAI/BC,EAAYnJ,OAAOmC,iBAAiBtD,GAa1C,GAZ4B,WAAxBsK,EAAUC,YACZL,EAAgBxD,EAAI8D,YAEM,WAAxBF,EAAUG,YACZL,EAAiB1D,EAAIgE,aAInB3Q,EAAQ2D,QACV3D,EAAQ2D,MAAM2E,SAAW0H,GAGvBV,GDpFN,SAAwCtP,GACtC,GAAI+N,GAAM7G,SAASlH,IAAiC,IAArBA,EAAQsH,SACrC,OAAO,EAGT,IAAMb,EAAMsH,GAAM1G,YAAYrH,GACxBiG,EAAOQ,EAAIR,KACb0F,EAAS,KACb,IACEA,EAASyD,GAAUpP,GAEnB2L,GAAUA,IAAW1F,GAAQ0F,IAAWlF,EACxCkF,EAASyD,GAAUzD,GAGnB,GAAsB,UADAoC,GAAM1I,IAAIsG,EAAQ,YAEtC,OAAO,EAGX,OAAO,CACT,CCgE0BiF,CAAgB5Q,GAEtCuP,EAAY3I,KAAOtH,KAAK/D,IAAIgU,EAAY3I,KAAMqJ,GAC9CV,EAAY1J,IAAMvG,KAAK/D,IAAIgU,EAAY1J,IAAKqK,GAC5CX,EAAYC,MAAQlQ,KAAKhE,IAAIiU,EAAYC,MAAOS,EAAUjE,GAC1DuD,EAAYG,OAASpQ,KAAKhE,IAAIiU,EAAYG,OAAQQ,EAAUjE,OACvD,CAEL,IAAM4E,EAAkBvR,KAAK/D,IAAI4U,EAAeF,EAAUjE,GAC1DuD,EAAYC,MAAQlQ,KAAKhE,IAAIiU,EAAYC,MAAOqB,GAEhD,IAAMC,EAAmBxR,KAAK/D,IAAI8U,EAAgBH,EAAUjE,GAC5DsD,EAAYG,OAASpQ,KAAKhE,IAAIiU,EAAYG,OAAQoB,E,CAGpD,OAAOvB,EAAY1J,KAAO,GACxB0J,EAAY3I,MAAQ,GACpB2I,EAAYG,OAASH,EAAY1J,KACjC0J,EAAYC,MAAQD,EAAY3I,KAC9B2I,EACA,IACN,CC3GA,SAASwB,GAAUtM,GACjB,IAAI4D,EACAzC,EACAoL,EACJ,GAAKjD,GAAM7G,SAASzC,IAA2B,IAAlBA,EAAK6C,SAI3B,CACL,IAAMqF,EAAMoB,GAAMC,UAAUvJ,GAC5B4D,EAAS,CACPzB,KAAMmH,GAAMc,oBAAoBlC,GAChC9G,IAAKkI,GAAMe,mBAAmBnC,IAEhC/G,EAAImI,GAAM/B,cAAcW,GACxBqE,EAAIjD,GAAM9B,eAAeU,E,MAVzBtE,EAAS0F,GAAM1F,OAAO5D,GACtBmB,EAAImI,GAAMkD,WAAWxM,GACrBuM,EAAIjD,GAAMmD,YAAYzM,GAYxB,OAFA4D,EAAOnK,MAAQ0H,EACfyC,EAAOlK,OAAS6S,EACT3I,CACT,CClBA,SAAS8I,GAAeC,EAAQC,GAC9B,IAAMC,EAAID,EAAMzD,OAAO,GACjB2D,EAAIF,EAAMzD,OAAO,GACjBhI,EAAIwL,EAAOlT,MACX8S,EAAII,EAAOjT,OAEboI,EAAI6K,EAAOxK,KACXJ,EAAI4K,EAAOvL,IAcf,MAZU,MAANyL,EACF9K,GAAKwK,EAAI,EACM,MAANM,IACT9K,GAAKwK,GAGG,MAANO,EACFhL,GAAKX,EAAI,EACM,MAAN2L,IACThL,GAAKX,GAGA,CACLgB,KAAML,EACNV,IAAKW,EAET,CC3BA,SAASgL,GAAeC,EAAUC,EAAeC,EAAQtJ,EAAQuJ,GAC/D,IAAMC,EAAKV,GAAeO,EAAeC,EAAO,IAC1CG,EAAKX,GAAeM,EAAUE,EAAO,IACrCI,EAAO,CAACD,EAAGlL,KAAOiL,EAAGjL,KAAMkL,EAAGjM,IAAMgM,EAAGhM,KAE7C,MAAO,CACLe,KAAMtH,KAAKI,MAAM+R,EAAS7K,KAAOmL,EAAK,GAAK1J,EAAO,GAAKuJ,EAAa,IACpE/L,IAAKvG,KAAKI,MAAM+R,EAAS5L,IAAMkM,EAAK,GAAK1J,EAAO,GAAKuJ,EAAa,IAEtE,CCEA,SAASI,GAAQC,EAAaR,EAAUlC,GACtC,OACE0C,EAAYrL,KAAO2I,EAAY3I,MAC/BqL,EAAYrL,KAAO6K,EAASvT,MAAQqR,EAAYC,KAEpD,CAEA,SAAS0C,GAAQD,EAAaR,EAAUlC,GACtC,OACE0C,EAAYpM,IAAM0J,EAAY1J,KAC9BoM,EAAYpM,IAAM4L,EAAStT,OAASoR,EAAYG,MAEpD,CAgBA,SAASyC,GAAKR,EAAQS,EAAKzR,GACzB,IAAMmF,EAAM,GAQZ,OAPAiI,GAAMzD,KAAKqH,GAAQ,SAAAU,GACjBvM,EAAIzE,KACFgR,EAAE3I,QAAQ0I,GAAK,SAAAE,GACb,OAAO3R,EAAI2R,E,QAIVxM,CACT,CAEA,SAASyM,GAAWlK,EAAQxH,GAE1B,OADAwH,EAAOxH,IAAUwH,EAAOxH,GACjBwH,CACT,CAEA,SAASmK,GAAcC,EAAKC,GAO1B,OALI,KAAK7H,KAAK4H,GACPE,SAASF,EAAIG,UAAU,EAAGH,EAAIjI,OAAS,GAAI,IAAM,IAAOkI,EAEzDC,SAASF,EAAK,MAER,CACd,CAEA,SAASI,GAAgBxK,EAAQ/C,GAC/B+C,EAAO,GAAKmK,GAAcnK,EAAO,GAAI/C,EAAGpH,OACxCmK,EAAO,GAAKmK,GAAcnK,EAAO,GAAI/C,EAAGnH,OAC1C,CAOA,SAAS2U,GAAQxN,EAAIyN,EAAW1B,EAAO2B,GACrC,IAAIrB,EAASN,EAAMM,OACftJ,EAASgJ,EAAMhJ,QAAU,CAAC,EAAG,GAC7BuJ,EAAeP,EAAMO,cAAgB,CAAC,EAAG,GACzChD,EAAWyC,EAAMzC,SACfnH,EAAS4J,EAAM5J,QAAUnC,EAC/B+C,EAAS,GAAGvH,OAAOuH,GACnBuJ,EAAe,GAAG9Q,OAAO8Q,GAEzB,IAAMqB,EAAiB,CAAC,EACpBC,EAAO,EAGL3D,EAAcF,GAAyB5H,MAL7CmH,EAAWA,GAAY,CAAC,KAGgBA,EAASU,mBAI3CmC,EAAWV,GAAUtJ,GAE3BoL,GAAgBxK,EAAQoJ,GACxBoB,GAAgBjB,EAAcmB,GAE9B,IAAId,EAAcT,GAChBC,EACAsB,EACApB,EACAtJ,EACAuJ,GAGEuB,EAAcpF,GAAMgB,MAAM0C,EAAUQ,GAGxC,GACE1C,IACCX,EAASwE,SAAWxE,EAASyE,UAC9BL,EACA,CACA,GAAIpE,EAASwE,SAEPpB,GAAQC,EAAaR,EAAUlC,GAAc,CAE/C,IAAM+D,EAAYnB,GAAKR,EAAQ,SAAU,CACvC4B,EAAG,IACHC,EAAG,MAGCC,EAAYlB,GAAWlK,EAAQ,GAC/BqL,EAAkBnB,GAAWX,EAAc,IAjGzD,SAAyBK,EAAaR,EAAUlC,GAC9C,OACE0C,EAAYrL,KAAO2I,EAAYC,OAC/ByC,EAAYrL,KAAO6K,EAASvT,MAAQqR,EAAY3I,IAEpD,EAqGa+M,CARkBnC,GACrBC,EACAsB,EACAO,EACAG,EACAC,GAGmCjC,EAAUlC,KAC7C2D,EAAO,EACPvB,EAAS2B,EACTjL,EAASoL,EACT7B,EAAe8B,E,CAKrB,GAAI9E,EAASyE,SAEPnB,GAAQD,EAAaR,EAAUlC,GAAc,CAE/C,IAAMqE,EAAYzB,GAAKR,EAAQ,SAAU,CACvCkC,EAAG,IACHC,EAAG,MAGCC,EAAYxB,GAAWlK,EAAQ,GAC/B2L,EAAkBzB,GAAWX,EAAc,IAtHzD,SAAyBK,EAAaR,EAAUlC,GAC9C,OACE0C,EAAYpM,IAAM0J,EAAYG,QAC9BuC,EAAYpM,IAAM4L,EAAStT,OAASoR,EAAY1J,GAEpD,EA0HaoO,CARkBzC,GACrBC,EACAsB,EACAa,EACAG,EACAC,GAGmCvC,EAAUlC,KAC7C2D,EAAO,EACPvB,EAASiC,EACTvL,EAAS0L,EACTnC,EAAeoC,E,CAMjBd,IACFjB,EAAcT,GACZC,EACAsB,EACApB,EACAtJ,EACAuJ,GAEF7D,GAAMP,IAAI2F,EAAalB,IAEzB,IAAMiC,EAAelC,GAAQC,EAAaR,EAAUlC,GAC9C4E,EAAejC,GAAQD,EAAaR,EAAUlC,GAGpD,GAAI2E,GAAgBC,EAAc,CAChC,IAAIC,EAAYzC,EAGZuC,IACFE,EAAYjC,GAAKR,EAAQ,SAAU,CACjC4B,EAAG,IACHC,EAAG,OAGHW,IACFC,EAAYjC,GAAKR,EAAQ,SAAU,CACjCkC,EAAG,IACHC,EAAG,OAIPnC,EAASyC,EAET/L,EAASgJ,EAAMhJ,QAAU,CAAC,EAAG,GAC7BuJ,EAAeP,EAAMO,cAAgB,CAAC,EAAG,E,CAG3CqB,EAAeG,QAAUxE,EAASwE,SAAWc,EAC7CjB,EAAeI,QAAUzE,EAASyE,SAAWc,GAGzClB,EAAeG,SAAWH,EAAeI,WAC3CF,ECnNN,SAA2BlB,EAAaR,EAAUlC,EAAaX,GAC7D,IAAMvI,EAAM0H,GAAMY,MAAMsD,GAClBhf,EAAO,CACXiL,MAAOuT,EAASvT,MAChBC,OAAQsT,EAAStT,QA0CnB,OAvCIyQ,EAASwE,SAAW/M,EAAIO,KAAO2I,EAAY3I,OAC7CP,EAAIO,KAAO2I,EAAY3I,MAKvBgI,EAASyF,aACThO,EAAIO,MAAQ2I,EAAY3I,MACxBP,EAAIO,KAAO3T,EAAKiL,MAAQqR,EAAYC,QAEpCvc,EAAKiL,OAASmI,EAAIO,KAAO3T,EAAKiL,MAAQqR,EAAYC,OAIhDZ,EAASwE,SAAW/M,EAAIO,KAAO3T,EAAKiL,MAAQqR,EAAYC,QAE1DnJ,EAAIO,KAAOtH,KAAK/D,IAAIgU,EAAYC,MAAQvc,EAAKiL,MAAOqR,EAAY3I,OAI9DgI,EAASyE,SAAWhN,EAAIR,IAAM0J,EAAY1J,MAC5CQ,EAAIR,IAAM0J,EAAY1J,KAKtB+I,EAAS0F,cACTjO,EAAIR,KAAO0J,EAAY1J,KACvBQ,EAAIR,IAAM5S,EAAKkL,OAASoR,EAAYG,SAEpCzc,EAAKkL,QAAUkI,EAAIR,IAAM5S,EAAKkL,OAASoR,EAAYG,QAIjDd,EAASyE,SAAWhN,EAAIR,IAAM5S,EAAKkL,OAASoR,EAAYG,SAE1DrJ,EAAIR,IAAMvG,KAAK/D,IAAIgU,EAAYG,OAASzc,EAAKkL,OAAQoR,EAAY1J,MAG5DkI,GAAMP,IAAInH,EAAKpT,EACxB,CDoKoBshB,CACZtC,EACAR,EACAlC,EACA0D,G,CAuCN,OAjCIE,EAAYjV,QAAUuT,EAASvT,OACjC6P,GAAM1I,IACJoC,EACA,QACAsG,GAAM7P,MAAMuJ,GAAU0L,EAAYjV,MAAQuT,EAASvT,OAInDiV,EAAYhV,SAAWsT,EAAStT,QAClC4P,GAAM1I,IACJoC,EACA,SACAsG,GAAM5P,OAAOsJ,GAAU0L,EAAYhV,OAASsT,EAAStT,QAOzD4P,GAAM1F,OACJZ,EACA,CACEb,KAAMuM,EAAYvM,KAClBf,IAAKsN,EAAYtN,KAEnB,CACEoC,YAAaoJ,EAAMpJ,YACnBC,aAAcmJ,EAAMnJ,aACpBuG,gBAAiB4C,EAAM5C,gBACvBP,YAAamD,EAAMnD,cAIhB,CACLyD,OAAAA,EACAtJ,OAAAA,EACAuJ,aAAAA,EACAhD,SAAUqE,EAEd,CEpPA,SAASuB,GAAalP,EAAImP,EAASpD,GACjC,IAAM1U,EAAS0U,EAAM1U,QAAU8X,EACzB/C,EAAgBX,GAAUpU,GAE1B+X,GAjBR,SAA4B/X,EAAQ2S,GAClC,IAAMC,EAAcF,GAAyB1S,EAAQ2S,GAC/CqF,EAAe5D,GAAUpU,GAE/B,OACG4S,GACDoF,EAAa/N,KAAO+N,EAAazW,OAASqR,EAAY3I,MACtD+N,EAAa9O,IAAM8O,EAAaxW,QAAUoR,EAAY1J,KACtD8O,EAAa/N,MAAQ2I,EAAYC,OACjCmF,EAAa9O,KAAO0J,EAAYG,MAEpC,CAMmCkF,CAC/BjY,EACA0U,EAAMzC,UAAYyC,EAAMzC,SAASU,kBAGnC,OAAOwD,GAAQxN,EAAIoM,EAAeL,EAAOqD,EAC3C,CAEAF,GAAaK,kBAAoB7F,GAEjCwF,GAAaM,2BAA6BzF,G,+CCTnC,SAAS0F,GAAc/U,EAASC,GACrC,IAAI+U,EAAY,KACZC,EAAa,KA6BjB,IAAI5Y,EAAiB,IAAIC,GAAAA,GA3BzB,SAAkBvJ,GAChB,IACI4J,GADQuY,EAAAA,EAAAA,GAAeniB,EAAM,GACd,GAAG4J,OAEtB,GAAKyH,SAAS4B,gBAAgBmP,SAASxY,GAAvC,CAEA,IAAIwC,EAAwBxC,EAAOyC,wBAC/BlB,EAAQiB,EAAsBjB,MAC9BC,EAASgB,EAAsBhB,OAE/BkB,EAAaC,KAAKC,MAAMrB,GACxBsB,EAAcF,KAAKC,MAAMpB,GAEzB6W,IAAc3V,GAAc4V,IAAezV,GAE7CK,QAAQC,UAAUC,MAAK,WACrBE,EAAS,CACP/B,MAAOmB,EACPlB,OAAQqB,GAEZ,IAGFwV,EAAY3V,EACZ4V,EAAazV,CApByC,CAqBxD,IAQA,OAJIQ,GACF3D,EAAeiE,QAAQN,GAGlB,WACL3D,EAAe+Y,YACjB,CACF,CC9CA,SAASC,GAAWC,GAClB,MAAoB,oBAATA,EAA4B,KAChCA,GACT,CAEA,SAASC,GAASC,GAChB,MAAuB,YAAnBhQ,EAAAA,EAAAA,GAAQgQ,IAAwBA,EAC7BA,EAD2C,IAEpD,CAEA,IAAIC,GAAQ,SAAe1iB,EAAMgJ,GAC/B,IAAI/I,EAAWD,EAAKC,SAChB2K,EAAW5K,EAAK4K,SAChBhB,EAAS5J,EAAK4J,OACd0U,EAAQte,EAAKse,MACbqE,EAAU3iB,EAAK2iB,QACfC,EAAsB5iB,EAAK4iB,oBAC3BC,EAAwB7iB,EAAK8iB,kBAC7BA,OAA8C,IAA1BD,EAAmC,EAAIA,EAC3DE,EAAWljB,EAAAA,OAAa,CAAC,GAGzBmjB,EAAUnjB,EAAAA,SACVojB,EAAYpjB,EAAAA,SAAeqjB,KAAKjjB,GAGhCkjB,EAAqBtjB,EAAAA,OAAa,CAAC,GACvCsjB,EAAmBrX,QAAQlB,SAAWA,EACtCuY,EAAmBrX,QAAQlC,OAASA,EACpCuZ,EAAmBrX,QAAQwS,MAAQA,EACnC6E,EAAmBrX,QAAQ6W,QAAUA,EAErC,IAAIS,EChDN,SAA0BlW,EAAUmW,GAClC,IAAIC,EAAYzjB,EAAAA,QAAa,GACzB0jB,EAAa1jB,EAAAA,OAAa,MAE9B,SAAS2jB,IACPnP,OAAOoP,aAAaF,EAAWzX,QACjC,CAuBA,MAAO,CArBP,SAAS4X,EAAQC,GAGf,GAFAH,IAEKF,EAAUxX,UAAqB,IAAV6X,EAWxBJ,EAAWzX,QAAUuI,OAAO6G,YAAW,WACrCoI,EAAUxX,SAAU,EACpB4X,GACF,GAAGL,OAdqC,CACxC,IAAwB,IAApBnW,EAASyW,GAEX,OAGFL,EAAUxX,SAAU,EACpByX,EAAWzX,QAAUuI,OAAO6G,YAAW,WACrCoI,EAAUxX,SAAU,CACtB,GAAGuX,EACL,CAMF,EAEiB,WACfC,EAAUxX,SAAU,EACpB0X,GACF,EACD,CDekBI,EAAU,WACzB,IAAIC,EAAwBV,EAAmBrX,QAC3CgY,EAAiBD,EAAsBjZ,SACvCmZ,EAAeF,EAAsBja,OACrCoa,EAAcH,EAAsBvF,MACpC2F,EAAgBJ,EAAsBlB,QACtCjO,EAASsO,EAAQlX,QAErB,IAAKgY,GAAkBC,GAAgBrP,EAAQ,CAC7C,IAAIwP,EAEAC,EAAW7B,GAAWyB,GAEtBK,EAAS5B,GAASuB,GAEtBhB,EAASjX,QAAQmB,QAAUkX,EAC3BpB,EAASjX,QAAQ2W,MAAQ2B,EACzBrB,EAASjX,QAAQwS,MAAQ0F,EAGzB,IACIK,EADYhT,SACcgT,cAc9B,OAZIF,IAAYG,EAAAA,GAAAA,GAAUH,GACxBD,EAAUzC,GAAa/M,EAAQyP,EAAUH,GAChCI,IACTF,EEnER,SAAoB3R,EAAIgS,EAAUjG,GAChC,IAAIkG,EACAC,EAEE/Q,EAAMsH,GAAM1G,YAAY/B,GACxBqH,EAAMlG,EAAIO,aAAeP,EAAIQ,aAE7BgJ,EAAUlC,GAAMc,oBAAoBlC,GACpCuD,EAAUnC,GAAMe,mBAAmBnC,GACnCX,EAAgB+B,GAAM/B,cAAcW,GACpCV,EAAiB8B,GAAM9B,eAAeU,GActCoG,EAAY,CAChBnM,KAZA2Q,EADE,UAAWD,EACLA,EAASC,MAETtH,EAAUqH,EAASG,QAW3B5R,IAPA2R,EADE,UAAWF,EACLA,EAASE,MAETtH,EAAUoH,EAASI,QAM3BxZ,MAAO,EACPC,OAAQ,GAGJwZ,EACJJ,GAAS,GACTA,GAAStH,EAAUjE,GAClBwL,GAAS,GAAKA,GAAStH,EAAUjE,EAG9B0F,EAAS,CAACN,EAAMM,OAAO,GAAI,MAEjC,OAAOmB,GAAQxN,EAAIyN,EAAS6E,EAAAA,EAAA,GAAOvG,GAAK,IAAEM,OAAAA,IAAUgG,EACtD,CF2BkBE,CAAWpQ,EAAQ0P,EAAQJ,ID1DtC,SAAsBK,EAAeU,GAEtCV,IAAkBhT,SAASgT,gBAAiBjC,EAAAA,EAAAA,GAAS2C,EAAWV,IAAiD,oBAAxBA,EAAcW,OACzGX,EAAcW,OAElB,CCwDMC,CAAaZ,EAAe3P,GAExBuP,GAAiBC,GACnBD,EAAcvP,EAAQwP,IAGjB,CACT,CAEA,OAAO,CACT,GAAGpB,GACCoC,GAAc/C,EAAAA,EAAAA,GAAeiB,EAAY,GACzC+B,EAAcD,EAAY,GAC1BE,EAAmBF,EAAY,GAI/BG,EAAkBxlB,EAAAA,WAClBylB,GAAmBnD,EAAAA,EAAAA,GAAekD,EAAiB,GACnDpY,EAAUqY,EAAiB,GAC3BC,EAAaD,EAAiB,GAE9BE,EAAmB3lB,EAAAA,WACnB4lB,GAAmBtD,EAAAA,EAAAA,GAAeqD,EAAkB,GACpD/C,EAAQgD,EAAiB,GACzBC,EAAWD,EAAiB,GAyDhC,OAvDAE,EAAAA,GAAAA,IAAgB,WACdJ,EAAWjD,GAAW1Y,IACtB8b,EAASlD,GAAS5Y,GACpB,IACA/J,EAAAA,WAAgB,WD1GX,IAAqB+lB,EAAMC,EC2G1B9C,EAASjX,QAAQmB,UAAYA,KD3GT2Y,EC2GiC7C,EAASjX,QAAQ2W,UD3G5CoD,EC2GmDpD,IDzG9EmD,GAASC,IAEV,UAAWA,GAAQ,UAAWA,EACzBD,EAAKpB,QAAUqB,EAAKrB,OAASoB,EAAKnB,QAAUoB,EAAKpB,MAGtD,YAAaoB,GAAQ,YAAaA,GAC7BD,EAAKlB,UAAYmB,EAAKnB,SAAWkB,EAAKjB,UAAYkB,EAAKlB,YCkG8BmB,EAAAA,GAAAA,GAAQ/C,EAASjX,QAAQwS,MAAOA,IAC1H6G,GAEJ,IAEAtlB,EAAAA,WAAgB,WAEd,OADemiB,GAAcgB,EAAQlX,QAASqZ,EAEhD,GAAG,CAACnC,EAAQlX,UAEZjM,EAAAA,WAAgB,WAEd,OADemiB,GAAc/U,EAASkY,EAExC,GAAG,CAAClY,IAEJpN,EAAAA,WAAgB,WACT+K,EAGHwa,IAFAD,GAIJ,GAAG,CAACva,IAEJ/K,EAAAA,WAAgB,WACd,GAAI+iB,EAEF,OADemD,EAAAA,EAAAA,GAAiB1R,OAAQ,SAAU8Q,GAClCrf,MAEpB,GAAG,CAAC8c,IAEJ/iB,EAAAA,WAAgB,WACd,OAAO,WACLulB,GACF,CACF,GAAG,IAEHvlB,EAAAA,oBAA0BmJ,GAAK,WAC7B,MAAO,CACLgd,WAAY,WACV,OAAOb,GAAY,EACrB,EAEJ,IAEkBtlB,EAAAA,eAAqBojB,KACrCA,EAAyBpjB,EAAAA,aAAmBojB,EAAW,CACrDja,KAAK2C,EAAAA,EAAAA,IAAWsX,EAAUja,IAAKga,MAI5BC,CACT,EAEIgD,GAAuBpmB,EAAAA,WAAiB6iB,IAC5CuD,GAAQC,YAAc,QACtB,IGnKA,GHmKA,G,iCIpJIC,GAAc,CAAC,UAAW,WAAY,QAAS,KAAM,UCLrDC,GAA0BvmB,EAAAA,YAAiB,SAAUkJ,EAAOC,GAC9D,IAAIkH,EAAUnH,EAAMmH,QAChBN,EAAY7G,EAAM6G,UAClBe,EAAY5H,EAAM4H,UAClBC,EAAQ7H,EAAM6H,MACd3Q,EAAW8I,EAAM9I,SACjBkQ,EAASpH,EAAMoH,OACfkW,EAAUtd,EAAMsd,QAChBC,EAAqBvd,EAAMud,mBAC3BC,EAAcxd,EAAMwd,YACpBjI,EAAQvV,EAAMuV,MACdmE,EAAQ1Z,EAAM0Z,MACd+D,EAAiBzd,EAAMyd,eACvBC,EAAwB1d,EAAM0d,sBAC9B9D,EAAU5Z,EAAM4Z,QAChB+D,EAAe3d,EAAM2d,aACrBC,EAAe5d,EAAM4d,aACrBC,EAAc7d,EAAM6d,YACpBC,EAAe9d,EAAM8d,aACrBC,EAAU/d,EAAM+d,QAChBC,GAAWpY,EAAAA,EAAAA,UACX9D,GAAa8D,EAAAA,EAAAA,UAEbqY,GAAYC,EAAAA,EAAAA,YACZC,GAAa/E,EAAAA,EAAAA,GAAe6E,EAAW,GACvCG,EAAmBD,EAAW,GAC9BE,EAAsBF,EAAW,GAGjCG,ECvCN,SAA0BhB,GACxB,IAAIhB,EAAkBxlB,EAAAA,SAAe,CACnCsL,MAAO,EACPC,OAAQ,IAENka,GAAmBnD,EAAAA,EAAAA,GAAekD,EAAiB,GACnDiC,EAAahC,EAAiB,GAC9BiC,EAAgBjC,EAAiB,GA6CrC,MAAO,CAtBKzlB,EAAAA,SAAc,WACxB,IAAI2nB,EAAY,CAAC,EAEjB,GAAInB,EAAS,CACX,IAAIlb,EAAQmc,EAAWnc,MACnBC,EAASkc,EAAWlc,QAEW,IAA/Bib,EAAQvJ,QAAQ,WAAoB1R,EACtCoc,EAAUpc,OAASA,GACwB,IAAlCib,EAAQvJ,QAAQ,cAAuB1R,IAChDoc,EAAUC,UAAYrc,IAGU,IAA9Bib,EAAQvJ,QAAQ,UAAmB3R,EACrCqc,EAAUrc,MAAQA,GACwB,IAAjCkb,EAAQvJ,QAAQ,aAAsB3R,IAC/Cqc,EAAUE,SAAWvc,EAEzB,CAEA,OAAOqc,CACT,GAAG,CAACnB,EAASiB,IA1Cb,SAAwBra,GACtB,IAAI0a,EAAW1a,EAAQ5B,YACnBuc,EAAY3a,EAAQ3B,aAEpBuc,EAAwB5a,EAAQZ,wBAChClB,EAAQ0c,EAAsB1c,MAC9BC,EAASyc,EAAsBzc,OAG/BmB,KAAKub,IAAIH,EAAWxc,GAAS,GAAKoB,KAAKub,IAAIF,EAAYxc,GAAU,IACnEuc,EAAWxc,EACXyc,EAAYxc,GAGdmc,EAAc,CACZpc,MAAOwc,EACPvc,OAAQwc,GAEZ,EA0BD,CDdwBG,CAAgB1B,GACnC2B,GAAoB7F,EAAAA,EAAAA,GAAekF,EAAkB,GACrDY,EAAeD,EAAkB,GACjCE,EAAsBF,EAAkB,GAS5C,IAAIG,EDnCN,SAA0BjY,EAASkY,GACjC,IAAIpB,GAAYC,EAAAA,GAAAA,GAAS,MACrBC,GAAa/E,EAAAA,EAAAA,GAAe6E,EAAW,GACvCqB,EAASnB,EAAW,GACpBoB,EAAoBpB,EAAW,GAE/BqB,GAAS5Z,EAAAA,EAAAA,UAEb,SAAS6Z,EAAUC,GACjBH,EAAkBG,GAAY,EAChC,CAEA,SAASC,IACPC,EAAAA,EAAIC,OAAOL,EAAOzc,QACpB,CAiEA,OAzCAmD,EAAAA,EAAAA,YAAU,WACRuZ,EAAU,UACZ,GAAG,CAACtY,KAEJjB,EAAAA,EAAAA,YAAU,WAED,YADCoZ,GAEJD,IAMAC,IACFE,EAAOzc,SAAU6c,EAAAA,EAAAA,IAAkBE,EAAAA,GAAAA,IAAgCC,EAAAA,GAAAA,KAAsBC,MAAK,SAASC,IACrG,IAAIlb,EAAO2a,EACX,OAAOK,EAAAA,GAAAA,KAAsBG,MAAK,SAAkBC,GAClD,OACE,OAAQA,EAAStD,KAAOsD,EAASrD,MAC/B,KAAK,EACH/X,EAAQqY,GAAYrJ,QAAQuL,IAC5BI,EAAatC,GAAYrY,EAAQ,MAEJ,IAAXA,GAChB0a,EAAUC,GAGd,KAAK,EACL,IAAK,MACH,OAAOS,EAASC,OAGxB,GAAGH,EACL,MAEJ,GAAG,CAACX,KACJpZ,EAAAA,EAAAA,YAAU,WACR,OAAO,WACLyZ,GACF,CACF,GAAG,IACI,CAACL,EA/DR,SAAsBnb,GACpBwb,IACAH,EAAOzc,SAAU6c,EAAAA,EAAAA,IAAI,WAEnBH,GAAU,SAAU5C,GAClB,OAAQyC,GACN,IAAK,QACH,MAAO,SAET,IAAK,SACH,MAAO,SAKX,OAAOzC,CACT,IACa,OAAb1Y,QAAkC,IAAbA,GAA+BA,GACtD,GACF,EA6CD,CC7CyBkc,CAAiBlZ,GAPzC,WACMmW,GACF6B,EAAoB1B,IAExB,IAII6C,GAAqBlH,EAAAA,EAAAA,GAAegG,EAAmB,GACvDE,EAASgB,EAAmB,GAC5BC,EAAeD,EAAmB,GAiBlCE,GAAatC,EAAAA,EAAAA,UAAS,GACtBuC,GAAarH,EAAAA,EAAAA,GAAeoH,EAAY,GACxCE,EAAaD,EAAW,GACxBE,EAAgBF,EAAW,GAE3BG,GAAoBhb,EAAAA,EAAAA,UAgBxB,SAASqX,IACP,IAAI4D,EAEuC,QAA1CA,EAAoB7C,EAASjb,eAA2C,IAAtB8d,GAAwCA,EAAkB5D,YAC/G,CAEA,SAAS6D,EAAgBC,EAAcC,GACrC,IAAIC,EAAuBvD,EAAsBsD,GAE7C5C,IAAqB6C,GACvB5C,EAAoB4C,GAItBN,GAAc,SAAU7R,GACtB,OAAOA,EAAM,CACf,IAEe,UAAXwQ,IACU,OAAZ1F,QAAgC,IAAZA,GAA8BA,EAAQmH,EAAcC,GAE5E,EApCApE,EAAAA,GAAAA,IAAgB,WACC,aAAX0C,GACFqB,EAAc,EAElB,GAAG,CAACrB,KAmCJ1C,EAAAA,GAAAA,IAAgB,WACC,UAAX0C,IAEEoB,EAAa,EACfzD,IAEAsD,GAAa,WACX,IAAIW,EAEoD,QAAvDA,EAAwBN,EAAkB7d,eAA+C,IAA1Bme,GAA4CA,EAAsB1P,KAAKoP,EACzI,IAGN,GAAG,CAACF,IAEJ,IAAI5Z,GAAS3G,EAAAA,EAAAA,GAAc,CAAC,EAAGyG,EAAU5G,IAWzC,SAASmhB,IACP,OAAO,IAAIpd,SAAQ,SAAUC,GAC3B4c,EAAkB7d,QAAUiB,CAC9B,GACF,CAbA,CAAC,cAAe,aAAc,cAActD,SAAQ,SAAU0gB,GAC5D,IAAIC,EAAgBva,EAAOsa,GAE3Bta,EAAOsa,GAAa,SAAUld,EAASod,GAErC,OADAf,IACyB,OAAlBc,QAA4C,IAAlBA,OAA2B,EAASA,EAAcnd,EAASod,EAC9F,CACF,IASAxqB,EAAAA,WAAgB,WACTgQ,EAAOG,YAAyB,WAAXqY,GACxBiB,GAEJ,GAAG,CAACzZ,EAAOG,WAAYqY,IAEvBxoB,EAAAA,oBAA0BmJ,GAAK,WAC7B,MAAO,CACLgd,WAAYA,EACZ1D,WAAY,WACV,OAAOzX,EAAWiB,OACpB,EAEJ,IAEA,IAAIwe,GAAcphB,EAAAA,EAAAA,IAAcA,EAAAA,EAAAA,GAAc,CAAC,EAAG+e,GAAe,CAAC,EAAG,CACnE9X,OAAQA,EACRoa,QAAoB,WAAXlC,GAAkC,WAAXA,GAAwBnY,EAAsB,OAAZpQ,EAGlE0qB,cAAgBta,GAAsB,WAAXmY,OAA+BvoB,EAAT,QAChD8Q,GAGC6Z,GAAgB,EAEN,OAAVnM,QAA4B,IAAVA,IAAoBA,EAAMM,QAAsB,UAAXyJ,GAAiC,WAAXA,IAC/EoC,GAAgB,GAGlB,IAAIxH,GAAYhjB,EAQhB,OANIJ,EAAAA,SAAe6qB,MAAMzqB,GAAY,IACnCgjB,GAAyBpjB,EAAAA,cAAoB,MAAO,CAClD8Q,UAAW,GAAG5C,OAAO6B,EAAW,aAC/B3P,IAGeJ,EAAAA,cAAoB4Q,EAAAA,IAAWpO,EAAAA,EAAAA,GAAS,CAC1D6N,QAASA,EACTlH,IAAK6B,EACL8f,gBAAiB,GAAG5c,OAAO6B,EAAW,YACrCC,EAAQ,CACT+a,gBAAiBV,EACjBW,eAAgBX,EAChBxZ,cAAe4V,EACfC,YAAaA,KACX,SAAUvmB,EAAM8qB,GAClB,IAAIC,EAAkB/qB,EAAK2Q,UACvBqa,EAAchrB,EAAK4Q,MACnBqa,EAAkBpa,IAAWjB,EAAWe,EAAWwW,EAAkB4D,GACzE,OAAoBlrB,EAAAA,cAAoB6iB,GAAO,CAC7C9Y,OApHE6Y,GAIG+D,EAiHL/b,IAAK,QACLzB,IAAK+d,EACLnE,qBAAqB,EACrBhY,SAAU6f,EACVnM,MAAOA,EACPqE,QAASkH,GACKhqB,EAAAA,cAAoB,MAAO,CACzCmJ,IAAK8hB,EACLna,UAAWsa,EACXvE,aAAcA,EACdC,aAAcA,EACduE,mBAAoBtE,EACpBuE,oBAAqBtE,EACrBC,QAASA,EACTlW,OAAO1H,EAAAA,EAAAA,IAAcA,EAAAA,EAAAA,GAAc,CAAC,EAAG8hB,GAAcV,IACpDrH,IACL,GACF,IACAmD,GAAWF,YAAc,aACzB,UE1NIkF,GAAgCvrB,EAAAA,YAAiB,SAAUkJ,EAAOC,GACpE,IAAI4G,EAAY7G,EAAM6G,UAClBM,EAAUnH,EAAMmH,QAChBC,EAASpH,EAAMoH,OACflQ,EAAW8I,EAAM9I,SACjBorB,EAAgBtiB,EAAMuiB,OAEtBC,GADJF,OAAkC,IAAlBA,EAA2B,CAAC,EAAIA,GACbE,eAC/BC,EAAaH,EAAcG,WAC3BC,EAAwBJ,EAAcK,YACtCA,OAAwC,IAA1BD,EAAmC,CAAC,EAAIA,EACtDE,EAAcN,EAAcM,YAC5B7E,EAAU/d,EAAM+d,QAChBjc,EAAahL,EAAAA,SAEjBA,EAAAA,oBAA0BmJ,GAAK,WAC7B,MAAO,CACLgd,WAAY,WAAuB,EACnC1D,WAAY,WACV,OAAOzX,EAAWiB,OACpB,EAEJ,IAEA,IAAIwe,GAAcphB,EAAAA,EAAAA,GAAc,CAC9BiH,OAAQA,GACPqb,GAECvI,EAAYhjB,EAahB,OAXIJ,EAAAA,SAAe6qB,MAAMzqB,GAAY,IACnCgjB,EAAyBpjB,EAAAA,cAAoB,MAAO,CAClD8Q,UAAW,GAAG5C,OAAO6B,EAAW,aAC/B3P,IAID0rB,IACF1I,EAAY0I,EAAY1I,IAGNpjB,EAAAA,cAAoB4Q,EAAAA,IAAWpO,EAAAA,EAAAA,GAAS,CAC1D6N,QAASA,EACTlH,IAAK6B,EACL6F,eAAe,GACdgb,IAAc,SAAU1rB,EAAM8qB,GAC/B,IAAIC,EAAkB/qB,EAAK2Q,UACvBqa,EAAchrB,EAAK4Q,MACnBqa,EAAkBpa,IAAWjB,EAAW2b,EAAgBR,GAC5D,OAAoBlrB,EAAAA,cAAoB,MAAO,CAC7CmJ,IAAK8hB,EACLna,UAAWsa,EACXnE,QAASA,EACTlW,OAAO1H,EAAAA,EAAAA,IAAcA,EAAAA,EAAAA,GAAc,CAAC,EAAG8hB,GAAcV,IACpDrH,EACL,GACF,IACAmI,GAAiBlF,YAAc,mBAC/B,UC3DI0F,GAAY,CAAC,UAAW,UAOxBC,GAAqBhsB,EAAAA,YAAiB,SAAUG,EAAMgJ,GACxD,IAAIkH,EAAUlQ,EAAKkQ,QACfob,EAAStrB,EAAKsrB,OACdviB,GAAQ+iB,EAAAA,EAAAA,GAAyB9rB,EAAM4rB,IAEvC5E,GAAYC,EAAAA,EAAAA,UAAS/W,GACrBgX,GAAa/E,EAAAA,EAAAA,GAAe6E,EAAW,GACvC+E,EAAe7E,EAAW,GAC1B8E,EAAkB9E,EAAW,GAE7BqC,GAAatC,EAAAA,EAAAA,WAAS,GACtBuC,GAAarH,EAAAA,EAAAA,GAAeoH,EAAY,GACxC0C,EAAWzC,EAAW,GACtB0C,EAAc1C,EAAW,GAEzB2C,GAAajjB,EAAAA,EAAAA,IAAcA,EAAAA,EAAAA,GAAc,CAAC,EAAGH,GAAQ,CAAC,EAAG,CAC3DmH,QAAS6b,KAKX9c,EAAAA,EAAAA,YAAU,WACR+c,EAAgB9b,GAEZA,GAAWob,GACbY,GAAYE,EAAAA,EAAAA,KAEhB,GAAG,CAAClc,EAASob,IACb,IAAIe,EAAYJ,EAAwBpsB,EAAAA,cAAoBurB,IAAkB/oB,EAAAA,EAAAA,GAAS,CAAC,EAAG8pB,EAAY,CACrGb,OAAQA,EACRtiB,IAAKA,KACYnJ,EAAAA,cAAoBumB,IAAY/jB,EAAAA,EAAAA,GAAS,CAAC,EAAG8pB,EAAY,CAC1EnjB,IAAKA,KAGP,OAAoBnJ,EAAAA,cAAoB,MAAO,KAAmBA,EAAAA,cAAoBoQ,EAAMkc,GAAaE,EAC3G,IACAR,GAAM3F,YAAc,QACpB,UC/CA,GADkCrmB,EAAAA,cAAoB,MCoBtD,SAASysB,KAAQ,CAEjB,SAASC,KACP,MAAO,EACT,CAEA,SAASC,GAAevf,GACtB,OAAIA,EACKA,EAAQ0G,cAGVU,OAAOhD,QAChB,CAEA,IAAIob,GAAe,CAAC,UAAW,cAAe,eAAgB,eAAgB,eAAgB,UAAW,SAAU,iBA8xBnH,OAzxBO,SAAyBC,GAC9B,IAAIC,EAAuB,SAAU3iB,IACnCC,EAAAA,EAAAA,GAAU0iB,EAAS3iB,GAEnB,IAAIE,GAASC,EAAAA,EAAAA,GAAawiB,GAG1B,SAASA,EAAQ5jB,GACf,IAAI6jB,EAiXAC,EAiBJ,OAhYAziB,EAAAA,EAAAA,GAAgBC,KAAMsiB,GAEtBC,EAAQ1iB,EAAOqQ,KAAKlQ,KAAMtB,IAE1B+jB,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,WAAyB/sB,EAAAA,cAExEitB,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,aAA2B/sB,EAAAA,cAE1EitB,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,uBAAmB,IAElEE,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,gBAAY,IAE3DE,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,2BAAuB,IAEtEE,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,2BAAuB,IAEtEE,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,kCAA8B,IAE7EE,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,kCAA8B,IAE7EE,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,wBAAoB,IAEnEE,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,iBAAa,IAE5DE,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,oBAAgB,IAE/DE,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,oBAAgB,IAE/DE,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,kBAAc,IAE7DE,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,yBAAqB,IAEpEE,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,gBAAgB,SAAUI,GACvE,IAAIC,EAAkBL,EAAM7jB,MAAMkkB,gBAElCL,EAAMM,WAAW,eAAgBF,GAEjCJ,EAAMO,sBAAqB,EAAMF,EAAiBA,EAAkB,KAAOD,EAC7E,KAEAF,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,eAAe,SAAUI,GACtEJ,EAAMM,WAAW,cAAeF,GAEhCJ,EAAMlH,SAASsH,EACjB,KAEAF,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,gBAAgB,SAAUI,GACvEJ,EAAMM,WAAW,eAAgBF,GAEjCJ,EAAMO,sBAAqB,EAAOP,EAAM7jB,MAAMqkB,gBAChD,KAEAN,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,qBAAqB,WAClEA,EAAMS,iBACR,KAEAP,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,qBAAqB,SAAUI,GAC5E,IAAIM,EAIAN,EAAEO,gBAAkBP,EAAEO,cAAcrS,aAAckH,EAAAA,EAAAA,GAA8D,QAApDkL,EAAwBV,EAAMY,SAAS1hB,eAA+C,IAA1BwhB,OAAmC,EAASA,EAAsBhL,aAAc0K,EAAEO,gBAI9MX,EAAMO,sBAAqB,EAAOP,EAAM7jB,MAAMqkB,gBAChD,KAEAN,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,WAAW,SAAUI,GAClEJ,EAAMM,WAAW,UAAWF,GAG5BJ,EAAMS,kBAEFT,EAAMa,kBACRb,EAAMc,UAAYC,KAAKltB,MAEvBmsB,EAAMO,sBAAqB,EAAMP,EAAM7jB,MAAM6kB,YAEjD,KAEAd,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,eAAe,SAAUI,GACtEJ,EAAMM,WAAW,cAAeF,GAEhCJ,EAAMiB,aAAeF,KAAKltB,KAC5B,KAEAqsB,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,gBAAgB,SAAUI,GACvEJ,EAAMM,WAAW,eAAgBF,GAEjCJ,EAAMkB,aAAeH,KAAKltB,KAC5B,KAEAqsB,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,UAAU,SAAUI,GACjEJ,EAAMM,WAAW,SAAUF,GAE3BJ,EAAMS,kBAEFT,EAAMmB,gBACRnB,EAAMO,sBAAqB,EAAOP,EAAM7jB,MAAMilB,UAElD,KAEAlB,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,iBAAiB,SAAUI,GACxEA,EAAEiB,iBAEFrB,EAAMM,WAAW,gBAAiBF,GAElCJ,EAAMsB,iBAAgB,EAAMlB,EAC9B,KAEAF,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,sBAAsB,WAC/DA,EAAMuB,uBACRvB,EAAMwB,OAEV,KAEAtB,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,WAAW,SAAUvC,GAIlE,GAHAuC,EAAMM,WAAW,UAAW7C,GAGxBuC,EAAMc,UAAW,CACnB,IAAIW,EAUJ,GARIzB,EAAMiB,cAAgBjB,EAAMkB,aAC9BO,EAAU9hB,KAAKhE,IAAIqkB,EAAMiB,aAAcjB,EAAMkB,cACpClB,EAAMiB,aACfQ,EAAUzB,EAAMiB,aACPjB,EAAMkB,eACfO,EAAUzB,EAAMkB,cAGdvhB,KAAKub,IAAIuG,EAAUzB,EAAMc,WAAa,GACxC,OAGFd,EAAMc,UAAY,CACpB,CAEAd,EAAMiB,aAAe,EACrBjB,EAAMkB,aAAe,EAIjBlB,EAAM0B,kBAAoB1B,EAAM2B,iBAAmB3B,EAAMmB,iBAAmB1D,GAASA,EAAM4D,gBAC7F5D,EAAM4D,iBAGR,IAAIO,GAAe5B,EAAM6B,MAAMC,cAE3B9B,EAAM2B,kBAAoBC,GAAeA,GAAe5B,EAAM0B,kBAChE1B,EAAMsB,iBAAiBtB,EAAM6B,MAAMC,aAAcrE,EAErD,KAEAyC,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,oBAAoB,WAQ/D,IAAI+B,GAPN/B,EAAMgC,mBAAoB,EAC1BnL,aAAamJ,EAAMiC,kBACnBjC,EAAMiC,iBAAmBxa,OAAO6G,YAAW,WACzC0R,EAAMgC,mBAAoB,CAC5B,GAAG,GAEChC,EAAMkC,WAGPH,EAAgB/B,EAAMkC,SAASC,iBAAiBzkB,MAAMqkB,EAAepkB,UAE1E,KAEAuiB,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,mBAAmB,SAAUvC,GAC1E,IAAIuC,EAAM7jB,MAAMqH,MAASwc,EAAM7jB,MAAMimB,aAArC,CAIA,IAAIplB,EAASygB,EAAMzgB,OAEfqlB,EAAOrC,EAAMpG,iBAEb6F,EAAYO,EAAMsC,mBAIpB9M,EAAAA,EAAAA,GAAS6M,EAAMrlB,KAAWgjB,EAAMuC,sBAAyB/M,EAAAA,EAAAA,GAASiK,EAAWziB,IAAYgjB,EAAMgC,mBAC/FhC,EAAMwB,OAXR,CAaF,KAEAtB,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,kBAAkB,WAC/D,IAAIwC,EAAoBxC,EAAM7jB,MAAMqmB,kBAEpC,GAAIA,EACF,OAAOA,EAAkBxC,EAAMyC,WAAWvjB,SAG5C,IACE,IAAIwjB,GAAUzjB,EAAAA,EAAAA,GAAY+gB,EAAMyC,WAAWvjB,SAE3C,GAAIwjB,EACF,OAAOA,CAEX,CAAE,MAAOC,GAAM,CAGf,OAAOjgB,EAAAA,aAAqByd,EAAAA,EAAAA,GAAuBH,GACrD,KAEAE,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,8BAA8B,SAAUtO,GACrF,IAAI3N,EAAY,GACZ6e,EAAc5C,EAAM7jB,MACpB0mB,EAAiBD,EAAYC,eAC7BC,EAAoBF,EAAYE,kBAChC9f,EAAY4f,EAAY5f,UACxBkV,EAAa0K,EAAY1K,WACzB6K,EAA6BH,EAAYG,2BAU7C,OARIF,GAAkBC,GACpB/e,EAAUrC,KzB5Pb,SAAgCohB,EAAmB9f,EAAW0O,EAAO5O,GAI1E,IAHA,IAAIkP,EAASN,EAAMM,OACfgR,EAAaC,OAAOC,KAAKJ,GAEpBhd,EAAI,EAAGA,EAAIkd,EAAWnY,OAAQ/E,GAAK,EAAG,CAC7C,IAAIqd,EAAYH,EAAWld,GAE3B,GAAInD,EAAWmgB,EAAkBK,GAAWnR,OAAQA,EAAQlP,GAC1D,MAAO,GAAG3B,OAAO6B,EAAW,eAAe7B,OAAOgiB,EAEtD,CAEA,MAAO,EACT,CyB+OyBC,CAAuBN,EAAmB9f,EAAW0O,EAAOwG,IAGzE6K,GACFhf,EAAUrC,KAAKqhB,EAA2BrR,IAGrC3N,EAAU0G,KAAK,IACxB,KAEAyV,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,gBAAgB,WAC7D,IAAIqD,EAAerD,EAAM7jB,MACrB6G,EAAYqgB,EAAargB,UACzB0W,EAAqB2J,EAAa3J,mBAClCiF,EAAiB0E,EAAa1E,eAC9B2E,EAAeD,EAAaC,aAC5BxE,EAAcuE,EAAavE,YAC3ByE,EAAiBF,EAAaE,eAC9BC,EAAsBH,EAAaG,oBACnC5E,EAAayE,EAAazE,WAC1Bpb,EAAO6f,EAAa7f,KACpBE,EAAgB2f,EAAa3f,cAC7BC,EAAqB0f,EAAa1f,mBAClCF,EAAa4f,EAAa5f,WAC1BF,EAAS8f,EAAa9f,OACtBkgB,EAAQJ,EAAaI,MACrBhK,EAAU4J,EAAa5J,QACvBvB,EAAamL,EAAanL,WAC1BwG,EAAS2E,EAAa3E,OACtB/E,EAAc0J,EAAa1J,YAC3B+J,EAAeL,EAAaK,aAC5BC,EAAc3D,EAAM6B,MACpBC,EAAe6B,EAAY7B,aAC3BjM,EAAQ8N,EAAY9N,MAEpBnE,EAAQsO,EAAM4D,gBAEdC,EAAa,CAAC,EAYlB,OAVI7D,EAAM8D,uBACRD,EAAW/J,aAAekG,EAAM+D,mBAG9B/D,EAAMgE,uBACRH,EAAW9J,aAAeiG,EAAMiE,mBAGlCJ,EAAW7J,YAAcgG,EAAMmC,iBAC/B0B,EAAW5J,aAAe+F,EAAMmC,iBACZlvB,EAAAA,cAAoBgsB,IAAOxpB,EAAAA,EAAAA,GAAS,CACtDuN,UAAWA,EACX0W,mBAAoBA,EACpBpW,QAASwe,EACTjM,MAAOqC,GAAcrC,EACrB9R,UAAW4a,EACXjN,MAAOA,EACPqE,QAASuN,EACTpgB,UAAWqgB,EACX1J,sBAAuBmG,EAAM+C,4BAC5Bc,EAAY,CACbpK,QAASA,EACTG,eAAgBoG,EAAMpG,eACtB5V,MAAO4a,EACPpb,KAAMA,EACND,OAAQA,EACRJ,eAAgBqgB,EAChB9f,cAAeA,EACfC,mBAAoBA,EACpBF,WAAYA,EACZrH,IAAK4jB,EAAMY,SACX3d,OAAQ6b,EACRJ,OAAQA,EACR/E,YAAaA,EACbO,QAASwJ,IACU,oBAAVD,EAAuBA,IAAUA,EAC9C,KAEAvD,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,gBAAgB,SAAUkE,GACvEnI,EAAAA,EAAIC,OAAOgE,EAAMmE,UACjB,IAMIC,EANAC,EAAerE,EAAM7jB,MACrBmoB,EAAoBD,EAAaC,kBACjC5c,EAAc2c,EAAa3c,YAE3Bgb,EAAU1C,EAAMpG,iBAIf0K,GAEM5B,GAAwC,IAA7B4B,EAAkBzZ,UAItCuZ,EAAYE,EAAkB5B,IAL9B0B,EAAY1c,EAAYsY,EAAMpG,kBAAkBtT,KAQ9C8d,EACFA,EAAU9hB,YAAY4hB,GAGtBlE,EAAMmE,UAAWpI,EAAAA,EAAAA,IAAI,WACnBiE,EAAMuE,aAAaL,EACrB,GAEJ,KAEAhE,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,gBAAgB,WAC7D,IAAKA,EAAMwE,gBAAiB,CAM1B,IACIN,GAAiBxc,EADHsY,EAAM7jB,MAAMuL,aACGsY,EAAMpG,kBAAkBlV,cAAc,OAGvEwf,EAAelgB,MAAM2E,SAAW,WAChCub,EAAelgB,MAAMkC,IAAM,IAC3Bge,EAAelgB,MAAMiD,KAAO,IAC5Bid,EAAelgB,MAAMzF,MAAQ,OAC7ByhB,EAAMwE,gBAAkBN,CAC1B,CAIA,OAFAlE,EAAMuE,aAAavE,EAAMwE,iBAElBxE,EAAMwE,eACf,KAEAtE,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,YAAY,SAAUnK,GAClDmK,EAAM7jB,MAAM+b,YACTrC,GAEpBmK,EAAMyE,SAAS,CACb5O,MAAO,CACL+B,MAAO/B,EAAM+B,MACbC,MAAOhC,EAAMgC,QAGnB,KAEAqI,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,sBAAsB,WAC/DA,EAAM6B,MAAM6C,mBAAqB1E,EAAM6B,MAAMC,cAC/C9B,EAAM7jB,MAAMwoB,wBAAwB3E,EAAM6B,MAAMC,aAEpD,KAEA5B,EAAAA,EAAAA,IAAgBC,EAAAA,EAAAA,GAAuBH,GAAQ,sBAAuB,CACpEmC,iBAAkBnC,EAAMmC,mBAMxBlC,EADE,iBAAkB9jB,IACFA,EAAM2lB,eAEN3lB,EAAMyoB,oBAG1B5E,EAAM6B,MAAQ,CACZ6C,iBAAkBzE,EAClB6B,aAAc7B,GAEhBJ,GAAahjB,SAAQ,SAAUwU,GAC7B2O,EAAM,OAAO7e,OAAOkQ,IAAM,SAAU+O,GAClCJ,EAAMM,WAAWjP,EAAG+O,EACtB,CACF,IACOJ,CACT,CA+WA,OA7WApiB,EAAAA,EAAAA,GAAamiB,EAAS,CAAC,CACrBliB,IAAK,oBACLnK,MAAO,WACL+J,KAAKonB,oBACP,GACC,CACDhnB,IAAK,qBACLnK,MAAO,WACL,IAOMoxB,EAPF3oB,EAAQsB,KAAKtB,MAMjB,GALYsB,KAAKokB,MAKPC,aAyBR,OAtBKrkB,KAAKsnB,sBAAwBtnB,KAAKkkB,kBAAmBlkB,KAAK8jB,wBAC7DuD,EAAkB3oB,EAAMuL,YAAYjK,KAAKmc,kBACzCnc,KAAKsnB,qBAAsB5L,EAAAA,EAAAA,GAAiB2L,EAAiB,YAAarnB,KAAKunB,kBAI5EvnB,KAAKwnB,sBACRH,EAAkBA,GAAmB3oB,EAAMuL,YAAYjK,KAAKmc,kBAC5Dnc,KAAKwnB,qBAAsB9L,EAAAA,EAAAA,GAAiB2L,EAAiB,aAAcrnB,KAAKunB,mBAI7EvnB,KAAKynB,4BAA8BznB,KAAK8jB,wBAC3CuD,EAAkBA,GAAmB3oB,EAAMuL,YAAYjK,KAAKmc,kBAC5Dnc,KAAKynB,4BAA6B/L,EAAAA,EAAAA,GAAiB2L,EAAiB,SAAUrnB,KAAK0nB,2BAIhF1nB,KAAK2nB,4BAA8B3nB,KAAK8jB,wBAC3C9jB,KAAK2nB,4BAA6BjM,EAAAA,EAAAA,GAAiB1R,OAAQ,OAAQhK,KAAK0nB,sBAM5E1nB,KAAK4nB,qBACP,GACC,CACDxnB,IAAK,uBACLnK,MAAO,WACL+J,KAAKgjB,kBACLhjB,KAAK4nB,sBACLxO,aAAapZ,KAAKwkB,kBAClBlG,EAAAA,EAAIC,OAAOve,KAAK0mB,SAClB,GACC,CACDtmB,IAAK,kBACLnK,MAAO,WACL,IAAI4xB,EAGJ,OAA6D,QAApDA,EAAyB7nB,KAAKmjB,SAAS1hB,eAAgD,IAA3BomB,OAAoC,EAASA,EAAuB5P,eAAiB,IAC5J,GACC,CACD7X,IAAK,gBACLnK,MAAO,WACL,IAAIyI,EAAQsB,KAAKtB,MACb0mB,EAAiB1mB,EAAM0mB,eACvB0C,EAAappB,EAAMopB,WACnBzC,EAAoB3mB,EAAM2mB,kBAE9B,OAAID,GAAkBC,EzB/evB,SAA+BA,EAAmB0C,EAAc9T,GACrE,IAAI+T,EAAY3C,EAAkB0C,IAAiB,CAAC,EACpD,OAAOlpB,EAAAA,EAAAA,IAAcA,EAAAA,EAAAA,GAAc,CAAC,EAAGmpB,GAAY/T,EACrD,CyB6eiBgU,CAAsB5C,EAAmBD,EAAgB0C,GAG3DA,CACT,GACC,CACD1nB,IAAK,kBACLnK,MAKA,SAAyBouB,EAAcrE,GACrC,IAAIvF,EAAaza,KAAKtB,MAAM+b,WACxBwM,EAAmBjnB,KAAKokB,MAAMC,aAClCrkB,KAAKgjB,kBAEDiE,IAAqB5C,IACjB,iBAAkBrkB,KAAKtB,OAC3BsB,KAAKgnB,SAAS,CACZ3C,aAAcA,EACd4C,iBAAkBA,IAItBjnB,KAAKtB,MAAMwpB,qBAAqB7D,IAI9B5J,GAAcuF,GAASqE,GACzBrkB,KAAKqb,SAAS2E,EAElB,GACC,CACD5f,IAAK,uBACLnK,MAAO,SAA8B4P,EAASsiB,EAAQnI,GACpD,IAAIoI,EAASpoB,KAETqoB,EAAiB,IAATF,EAGZ,GAFAnoB,KAAKgjB,kBAEDqF,EAAO,CACT,IAAIjQ,EAAQ4H,EAAQ,CAClB7F,MAAO6F,EAAM7F,MACbC,MAAO4F,EAAM5F,OACX,KACJpa,KAAKsoB,WAAate,OAAO6G,YAAW,WAClCuX,EAAOvE,gBAAgBhe,EAASuS,GAEhCgQ,EAAOpF,iBACT,GAAGqF,EACL,MACEroB,KAAK6jB,gBAAgBhe,EAASma,EAElC,GACC,CACD5f,IAAK,kBACLnK,MAAO,WACD+J,KAAKsoB,aACPlP,aAAapZ,KAAKsoB,YAClBtoB,KAAKsoB,WAAa,KAEtB,GACC,CACDloB,IAAK,sBACLnK,MAAO,WACD+J,KAAKsnB,sBACPtnB,KAAKsnB,oBAAoB7rB,SACzBuE,KAAKsnB,oBAAsB,MAGzBtnB,KAAKynB,6BACPznB,KAAKynB,2BAA2BhsB,SAChCuE,KAAKynB,2BAA6B,MAGhCznB,KAAK2nB,6BACP3nB,KAAK2nB,2BAA2BlsB,SAChCuE,KAAK2nB,2BAA6B,MAGhC3nB,KAAKwnB,sBACPxnB,KAAKwnB,oBAAoB/rB,SACzBuE,KAAKwnB,oBAAsB,KAE/B,GACC,CACDpnB,IAAK,kBACLnK,MAAO,SAAyB+pB,GAC9B,IAAIuI,EAAYvoB,KAAKtB,MAAM9I,SAAS8I,MAChCA,EAAQsB,KAAKtB,MAEjB,OAAI6pB,EAAUvI,IAAUthB,EAAMshB,GACrBhgB,KAAK,OAAO0D,OAAOsc,IAGrBuI,EAAUvI,IAAUthB,EAAMshB,EACnC,GACC,CACD5f,IAAK,gBACLnK,MAAO,WACL,IAAIuyB,EAAexoB,KAAKtB,MACpB+pB,EAASD,EAAaC,OACtBC,EAAaF,EAAaE,WAC9B,OAAoC,IAA7BD,EAAOhW,QAAQ,WAAoD,IAAjCiW,EAAWjW,QAAQ,QAC9D,GACC,CACDrS,IAAK,oBACLnK,MAAO,WACL,IAAIwyB,EAASzoB,KAAKtB,MAAM+pB,OACxB,MAAkB,gBAAXA,GAA8C,IAAlBA,EAAOrb,QAA8B,gBAAdqb,EAAO,EACnE,GACC,CACDroB,IAAK,sBACLnK,MAAO,WACL,IAAI0yB,EAAe3oB,KAAKtB,MACpB+pB,EAASE,EAAaF,OACtBC,EAAaC,EAAaD,WAC9B,OAA0C,IAAnCD,EAAOhW,QAAQ,iBAAgE,IAAvCiW,EAAWjW,QAAQ,cACpE,GACC,CACDrS,IAAK,gBACLnK,MAAO,WACL,IAAI2yB,EAAe5oB,KAAKtB,MACpB+pB,EAASG,EAAaH,OACtBI,EAAaD,EAAaC,WAC9B,OAAoC,IAA7BJ,EAAOhW,QAAQ,WAAoD,IAAjCoW,EAAWpW,QAAQ,QAC9D,GACC,CACDrS,IAAK,qBACLnK,MAAO,WACL,IAAI6yB,EAAe9oB,KAAKtB,MACpB+pB,EAASK,EAAaL,OACtBC,EAAaI,EAAaJ,WAC9B,OAAoC,IAA7BD,EAAOhW,QAAQ,WAAyD,IAAtCiW,EAAWjW,QAAQ,aAC9D,GACC,CACDrS,IAAK,qBACLnK,MAAO,WACL,IAAI8yB,EAAe/oB,KAAKtB,MACpB+pB,EAASM,EAAaN,OACtBI,EAAaE,EAAaF,WAC9B,OAAoC,IAA7BJ,EAAOhW,QAAQ,WAAyD,IAAtCoW,EAAWpW,QAAQ,aAC9D,GACC,CACDrS,IAAK,gBACLnK,MAAO,WACL,IAAI+yB,EAAehpB,KAAKtB,MACpB+pB,EAASO,EAAaP,OACtBC,EAAaM,EAAaN,WAC9B,OAAoC,IAA7BD,EAAOhW,QAAQ,WAAoD,IAAjCiW,EAAWjW,QAAQ,QAC9D,GACC,CACDrS,IAAK,eACLnK,MAAO,WACL,IAAIgzB,EAAgBjpB,KAAKtB,MACrB+pB,EAASQ,EAAcR,OACvBI,EAAaI,EAAcJ,WAC/B,OAAoC,IAA7BJ,EAAOhW,QAAQ,WAAmD,IAAhCoW,EAAWpW,QAAQ,OAC9D,GACC,CACDrS,IAAK,kBACLnK,MAAO,WAEH,IAAIizB,EADFlpB,KAAKokB,MAAMC,eAGwC,QAApD6E,EAAyBlpB,KAAKmjB,SAAS1hB,eAAgD,IAA3BynB,GAA6CA,EAAuBvN,aAErI,GACC,CACDvb,IAAK,aACLnK,MAAO,SAAoBkzB,EAAMxG,GAC/B,IAAIyG,EAAgBppB,KAAKtB,MAAM9I,SAAS8I,MAAMyqB,GAE1CC,GACFA,EAAczG,GAGhB,IAAI9f,EAAW7C,KAAKtB,MAAMyqB,GAEtBtmB,GACFA,EAAS8f,EAEb,GACC,CACDviB,IAAK,QACLnK,MAAO,WACL+J,KAAK6jB,iBAAgB,EACvB,GACC,CACDzjB,IAAK,SACLnK,MAAO,WACL,IAAIouB,EAAerkB,KAAKokB,MAAMC,aAC1BgF,EAAgBrpB,KAAKtB,MACrB9I,EAAWyzB,EAAczzB,SACzBsmB,EAAcmN,EAAcnN,YAC5BzB,EAAa4O,EAAc5O,WAC3BnU,EAAY+iB,EAAc/iB,UAC1BgjB,EAAcD,EAAcC,YAC5B9lB,EAAQhO,EAAAA,SAAeqjB,KAAKjjB,GAC5B2zB,EAAgB,CAClBnpB,IAAK,WAIHJ,KAAK8jB,sBACPyF,EAAcC,cAAgBxpB,KAAKwpB,cAEnCD,EAAcC,cAAgBxpB,KAAKypB,gBAAgB,iBAIjDzpB,KAAKkkB,iBAAmBlkB,KAAKikB,iBAC/BsF,EAAc9M,QAAUzc,KAAKyc,QAC7B8M,EAAchN,YAAcvc,KAAKuc,YACjCgN,EAAc/M,aAAexc,KAAKwc,eAElC+M,EAAc9M,QAAUzc,KAAKypB,gBAAgB,WAC7CF,EAAchN,YAAcvc,KAAKypB,gBAAgB,eACjDF,EAAc/M,aAAexc,KAAKypB,gBAAgB,iBAIhDzpB,KAAKqmB,sBACPkD,EAAclN,aAAerc,KAAKqc,aAE9B5B,IACF8O,EAAcG,YAAc1pB,KAAK0pB,cAGnCH,EAAclN,aAAerc,KAAKypB,gBAAgB,gBAIhDzpB,KAAKumB,qBACPgD,EAAcjN,aAAetc,KAAKsc,aAElCiN,EAAcjN,aAAetc,KAAKypB,gBAAgB,gBAIhDzpB,KAAKojB,iBAAmBpjB,KAAK0jB,gBAC/B6F,EAAcI,QAAU3pB,KAAK2pB,QAC7BJ,EAAcK,OAAS5pB,KAAK4pB,SAE5BL,EAAcI,QAAU3pB,KAAKypB,gBAAgB,WAC7CF,EAAcK,OAAS5pB,KAAKypB,gBAAgB,WAI9C,IAAII,EAAoBrjB,IAAWhD,GAASA,EAAM9E,OAAS8E,EAAM9E,MAAM4H,UAAWA,GAE9EujB,IACFN,EAAcjjB,UAAYujB,GAG5B,IAAI/H,GAAajjB,EAAAA,EAAAA,GAAc,CAAC,EAAG0qB,IAE/BpoB,EAAAA,EAAAA,IAAWqC,KACbse,EAAWnjB,KAAM2C,EAAAA,EAAAA,IAAWtB,KAAKglB,WAAYxhB,EAAM7E,MAGrD,IACImrB,EADAzQ,EAAuB7jB,EAAAA,aAAmBgO,EAAOse,GAerD,OAZIuC,GAAgBrkB,KAAKmjB,SAAS1hB,SAAWya,KAC3C4N,EAAsBt0B,EAAAA,cAAoB6sB,EAAiB,CACzDjiB,IAAK,SACLgE,aAAcpE,KAAKoE,aACnBD,UAAWnE,KAAK+pB,oBACf/pB,KAAKgqB,kBAGL3F,GAAgBiF,IACnBQ,EAAS,MAGSt0B,EAAAA,cAAoBy0B,GAAej0B,SAAU,CAC/DC,MAAO+J,KAAKkqB,qBACX7Q,EAASyQ,EACd,IACE,CAAC,CACH1pB,IAAK,2BACLnK,MAAO,SAAkCN,EAAMw0B,GAC7C,IAAI9F,EAAe1uB,EAAK0uB,aACpB+F,EAAW,CAAC,EAOhB,YALqB30B,IAAjB4uB,GAA8B8F,EAAU9F,eAAiBA,IAC3D+F,EAAS/F,aAAeA,EACxB+F,EAASnD,iBAAmBkD,EAAU9F,cAGjC+F,CACT,KAGK9H,CACT,CA1vB2B,CA0vBzB9sB,EAAAA,WA4BF,OA1BAitB,EAAAA,EAAAA,GAAgBH,EAAS,cAAe2H,KAExCxH,EAAAA,EAAAA,GAAgBH,EAAS,eAAgB,CACvC/c,UAAW,mBACX+f,2BAA4BpD,GAC5BjY,YAAakY,GACb+F,qBAAsBjG,GACtBiF,wBAAyBjF,GACzB4D,aAAc5D,GACdf,eAAgB,GAChB0B,gBAAiB,EACjBG,gBAAiB,GACjBQ,WAAY,EACZI,UAAW,IACXxC,WAAY,CAAC,EACblF,oBAAoB,EACpB6L,WAAY,CAAC,EACbX,qBAAqB,EACrBphB,MAAM,EACN4e,cAAc,EACd8D,OAAQ,GACRC,WAAY,GACZG,WAAY,GACZS,aAAa,IAGRhH,CACT,CACA,CAA+B+H,E,qECh0BhB,SAASC,EAAqB/qB,EAAQgrB,EAAWC,EAAI5f,GAElE,IAAI/H,EAAWoC,EAAAA,wBAAmC,SAAa0d,GAC7D1d,EAAAA,wBAAiCulB,EAAI7H,EACvC,EAAI6H,EAIJ,OAHe,OAAXjrB,QAA8B,IAAXA,GAAqBA,EAAOmc,kBACjDnc,EAAOmc,iBAAiB6O,EAAW1nB,EAAU+H,GAExC,CACLnP,OAAQ,WACS,OAAX8D,QAA8B,IAAXA,GAAqBA,EAAOkrB,qBACjDlrB,EAAOkrB,oBAAoBF,EAAW1nB,EAAU+H,EAEpD,EAEJ,C,qBChBA,aAA0BhI,GACxB,IAAKA,EACH,OAAO,EAET,GAAIA,aAAmB8nB,QAAS,CAC9B,GAAI9nB,EAAQ+nB,aACV,OAAO,EAET,GAAI/nB,EAAQgoB,QAAS,CACnB,IAAIC,EAAWjoB,EAAQgoB,UACrB9pB,EAAQ+pB,EAAS/pB,MACjBC,EAAS8pB,EAAS9pB,OACpB,GAAID,GAASC,EACX,OAAO,CAEX,CACA,GAAI6B,EAAQZ,sBAAuB,CACjC,IAAIwb,EAAwB5a,EAAQZ,wBAClC8oB,EAAStN,EAAsB1c,MAC/BiqB,EAAUvN,EAAsBzc,OAClC,GAAI+pB,GAAUC,EACZ,OAAO,CAEX,CACF,CACA,OAAO,CACR,C,qECzBc,SAASC,EAASnoB,GAC/B,IAAIooB,EAAQz1B,EAAAA,SACZy1B,EAAMxpB,QAAUoB,EAChB,IAAIqoB,EAAS11B,EAAAA,aAAkB,WAE7B,IADA,IAAI21B,EACKtb,EAAO3P,UAAUkN,OAAQ0C,EAAO,IAAIC,MAAMF,GAAO/D,EAAO,EAAGA,EAAO+D,EAAM/D,IAC/EgE,EAAKhE,GAAQ5L,UAAU4L,GAEzB,OAA4C,QAApCqf,EAAiBF,EAAMxpB,eAAwC,IAAnB0pB,OAA4B,EAASA,EAAejb,KAAKjQ,MAAMkrB,EAAgB,CAACF,GAAOvnB,OAAOoM,GACpJ,GAAG,IACH,OAAOob,CACT,C,mGCPA,SAASE,EAASn1B,GAChB,YAAiBR,IAAVQ,CACT,CAMe,SAASo1B,EAAeC,EAAmB1gB,GACxD,IAAIjV,EAAOiV,GAAU,CAAC,EACpB2gB,EAAe51B,EAAK41B,aACpBt1B,EAAQN,EAAKM,MACbu1B,EAAW71B,EAAK61B,SAChBC,EAAY91B,EAAK81B,UAGf9O,GAAYC,EAAAA,EAAAA,IAAS,WACrB,OAAIwO,EAASn1B,GACJA,EACEm1B,EAASG,GACa,oBAAjBA,EAA8BA,IAAiBA,EAEzB,oBAAtBD,EAAmCA,IAAsBA,CAE3E,IACAzO,GAAa/E,EAAAA,EAAAA,GAAe6E,EAAW,GACvC+O,EAAa7O,EAAW,GACxB8O,EAAgB9O,EAAW,GACzB+O,OAAwBn2B,IAAVQ,EAAsBA,EAAQy1B,EAC5CG,EAAkBJ,EAAYA,EAAUG,GAAeA,EAGvDE,GAAad,EAAAA,EAAAA,GAASQ,GACtBtM,GAAatC,EAAAA,EAAAA,GAAS,CAACgP,IACzBzM,GAAarH,EAAAA,EAAAA,GAAeoH,EAAY,GACxC6M,EAAY5M,EAAW,GACvB6M,EAAe7M,EAAW,GAoB5B,OAnBA8M,EAAAA,EAAAA,IAAsB,WACpB,IAAI1Q,EAAOwQ,EAAU,GACjBL,IAAenQ,GACjBuQ,EAAWJ,EAAYnQ,EAE3B,GAAG,CAACwQ,KAGJE,EAAAA,EAAAA,IAAsB,WACfb,EAASn1B,IACZ01B,EAAc11B,EAElB,GAAG,CAACA,IAOG,CAAC41B,GAJYb,EAAAA,EAAAA,IAAS,SAAUkB,EAASC,GAC9CR,EAAcO,EAASC,GACvBH,EAAa,CAACJ,GAAcO,EAC9B,IAEF,C,qBC9DA,eACE,GAAyB,qBAAd5Z,WAA+C,qBAAXvI,OAC7C,OAAO,EAET,IAAIoiB,EAAQ7Z,UAAUC,WAAaD,UAAU8Z,QAAUriB,OAAOsiB,MAC9D,MAAO,sVAAsV7e,KAAK2e,IAAU,4hDAA4hD3e,KAAe,OAAV2e,QAA4B,IAAVA,OAAmB,EAASA,EAAMG,OAAO,EAAG,GAC58D,C,sBCCD,IAAIC,EAAW,WACX,GAAmB,qBAARxtB,IACP,OAAOA,IASX,SAASytB,EAAS7f,EAAKxM,GACnB,IAAIssB,GAAU,EAQd,OAPA9f,EAAI+f,MAAK,SAAUC,EAAOnpB,GACtB,OAAImpB,EAAM,KAAOxsB,IACbssB,EAASjpB,GACF,EAGf,IACOipB,CACX,CACA,OAAsB,WAClB,SAASG,IACL7sB,KAAK8sB,YAAc,EACvB,CAsEA,OArEAtH,OAAOuH,eAAeF,EAAQG,UAAW,OAAQ,CAI7CxtB,IAAK,WACD,OAAOQ,KAAK8sB,YAAY1f,MAC5B,EACA6f,YAAY,EACZC,cAAc,IAMlBL,EAAQG,UAAUxtB,IAAM,SAAUY,GAC9B,IAAIqD,EAAQgpB,EAASzsB,KAAK8sB,YAAa1sB,GACnCwsB,EAAQ5sB,KAAK8sB,YAAYrpB,GAC7B,OAAOmpB,GAASA,EAAM,EAC1B,EAMAC,EAAQG,UAAUhqB,IAAM,SAAU5C,EAAKnK,GACnC,IAAIwN,EAAQgpB,EAASzsB,KAAK8sB,YAAa1sB,IAClCqD,EACDzD,KAAK8sB,YAAYrpB,GAAO,GAAKxN,EAG7B+J,KAAK8sB,YAAY7oB,KAAK,CAAC7D,EAAKnK,GAEpC,EAKA42B,EAAQG,UAAU5pB,OAAS,SAAUhD,GACjC,IAAI+sB,EAAUntB,KAAK8sB,YACfrpB,EAAQgpB,EAASU,EAAS/sB,IACzBqD,GACD0pB,EAAQC,OAAO3pB,EAAO,EAE9B,EAKAopB,EAAQG,UAAUjqB,IAAM,SAAU3C,GAC9B,SAAUqsB,EAASzsB,KAAK8sB,YAAa1sB,EACzC,EAIAysB,EAAQG,UAAUz2B,MAAQ,WACtByJ,KAAK8sB,YAAYM,OAAO,EAC5B,EAMAP,EAAQG,UAAU5tB,QAAU,SAAUyD,EAAUwqB,QAChC,IAARA,IAAkBA,EAAM,MAC5B,IAAK,IAAIC,EAAK,EAAGC,EAAKvtB,KAAK8sB,YAAaQ,EAAKC,EAAGngB,OAAQkgB,IAAM,CAC1D,IAAIV,EAAQW,EAAGD,GACfzqB,EAASqN,KAAKmd,EAAKT,EAAM,GAAIA,EAAM,GACvC,CACJ,EACOC,CACX,CA1EO,EA2EX,CAjGe,GAsGXW,EAA8B,qBAAXxjB,QAA8C,qBAAbhD,UAA4BgD,OAAOhD,WAAaA,SAGpGymB,EACsB,qBAAX7zB,EAAAA,GAA0BA,EAAAA,EAAOsI,OAASA,KAC1CtI,EAAAA,EAES,qBAAT8zB,MAAwBA,KAAKxrB,OAASA,KACtCwrB,KAEW,qBAAX1jB,QAA0BA,OAAO9H,OAASA,KAC1C8H,OAGJ2jB,SAAS,cAATA,GASPC,EACqC,oBAA1BC,sBAIAA,sBAAsBC,KAAKL,GAE/B,SAAU5qB,GAAY,OAAOgO,YAAW,WAAc,OAAOhO,EAASygB,KAAKltB,MAAQ,GAAG,IAAO,GAAK,EAqE7G,IAGI23B,EAAiB,CAAC,MAAO,QAAS,SAAU,OAAQ,QAAS,SAAU,OAAQ,UAE/EC,EAAwD,qBAArBC,iBAInCC,EAA0C,WAM1C,SAASA,IAMLluB,KAAKmuB,YAAa,EAMlBnuB,KAAKouB,sBAAuB,EAM5BpuB,KAAKquB,mBAAqB,KAM1BruB,KAAKsuB,WAAa,GAClBtuB,KAAKuuB,iBAAmBvuB,KAAKuuB,iBAAiBT,KAAK9tB,MACnDA,KAAKwuB,QAjGb,SAAmB3rB,EAAUwlB,GACzB,IAAIoG,GAAc,EAAOC,GAAe,EAAOC,EAAe,EAO9D,SAASC,IACDH,IACAA,GAAc,EACd5rB,KAEA6rB,GACAG,GAER,CAQA,SAASC,IACLlB,EAAwBgB,EAC5B,CAMA,SAASC,IACL,IAAIE,EAAYzL,KAAKltB,MACrB,GAAIq4B,EAAa,CAEb,GAAIM,EAAYJ,EA7CN,EA8CN,OAMJD,GAAe,CACnB,MAEID,GAAc,EACdC,GAAe,EACf7d,WAAWie,EAAiBzG,GAEhCsG,EAAeI,CACnB,CACA,OAAOF,CACX,CA4CuBG,CAAShvB,KAAKwuB,QAAQV,KAAK9tB,MAzC9B,GA0ChB,CA+JA,OAxJAkuB,EAAyBlB,UAAUiC,YAAc,SAAUC,IACjDlvB,KAAKsuB,WAAW7b,QAAQyc,IAC1BlvB,KAAKsuB,WAAWrqB,KAAKirB,GAGpBlvB,KAAKmuB,YACNnuB,KAAKmvB,UAEb,EAOAjB,EAAyBlB,UAAUoC,eAAiB,SAAUF,GAC1D,IAAIG,EAAYrvB,KAAKsuB,WACjB7qB,EAAQ4rB,EAAU5c,QAAQyc,IAEzBzrB,GACD4rB,EAAUjC,OAAO3pB,EAAO,IAGvB4rB,EAAUjiB,QAAUpN,KAAKmuB,YAC1BnuB,KAAKsvB,aAEb,EAOApB,EAAyBlB,UAAUwB,QAAU,WACnBxuB,KAAKuvB,oBAIvBvvB,KAAKwuB,SAEb,EASAN,EAAyBlB,UAAUuC,iBAAmB,WAElD,IAAIC,EAAkBxvB,KAAKsuB,WAAWmB,QAAO,SAAUP,GACnD,OAAOA,EAASQ,eAAgBR,EAASS,WAC7C,IAOA,OADAH,EAAgBpwB,SAAQ,SAAU8vB,GAAY,OAAOA,EAASU,iBAAmB,IAC1EJ,EAAgBpiB,OAAS,CACpC,EAOA8gB,EAAyBlB,UAAUmC,SAAW,WAGrC3B,IAAaxtB,KAAKmuB,aAMvBnnB,SAAS0U,iBAAiB,gBAAiB1b,KAAKuuB,kBAChDvkB,OAAO0R,iBAAiB,SAAU1b,KAAKwuB,SACnCR,GACAhuB,KAAKquB,mBAAqB,IAAIJ,iBAAiBjuB,KAAKwuB,SACpDxuB,KAAKquB,mBAAmBnrB,QAAQ8D,SAAU,CACtC6oB,YAAY,EACZC,WAAW,EACXC,eAAe,EACfC,SAAS,MAIbhpB,SAAS0U,iBAAiB,qBAAsB1b,KAAKwuB,SACrDxuB,KAAKouB,sBAAuB,GAEhCpuB,KAAKmuB,YAAa,EACtB,EAOAD,EAAyBlB,UAAUsC,YAAc,WAGxC9B,GAAcxtB,KAAKmuB,aAGxBnnB,SAASyjB,oBAAoB,gBAAiBzqB,KAAKuuB,kBACnDvkB,OAAOygB,oBAAoB,SAAUzqB,KAAKwuB,SACtCxuB,KAAKquB,oBACLruB,KAAKquB,mBAAmBrW,aAExBhY,KAAKouB,sBACLpnB,SAASyjB,oBAAoB,qBAAsBzqB,KAAKwuB,SAE5DxuB,KAAKquB,mBAAqB,KAC1BruB,KAAKouB,sBAAuB,EAC5BpuB,KAAKmuB,YAAa,EACtB,EAQAD,EAAyBlB,UAAUuB,iBAAmB,SAAUhB,GAC5D,IAAI0C,EAAK1C,EAAG2C,aAAcA,OAAsB,IAAPD,EAAgB,GAAKA,EAEvClC,EAAepB,MAAK,SAAUvsB,GACjD,SAAU8vB,EAAazd,QAAQrS,EACnC,KAEIJ,KAAKwuB,SAEb,EAMAN,EAAyBiC,YAAc,WAInC,OAHKnwB,KAAKowB,YACNpwB,KAAKowB,UAAY,IAAIlC,GAElBluB,KAAKowB,SAChB,EAMAlC,EAAyBkC,UAAY,KAC9BlC,CACX,CAjM8C,GA0M1CmC,EAAsB,SAAU9wB,EAAQb,GACxC,IAAK,IAAI4uB,EAAK,EAAGC,EAAK/H,OAAOC,KAAK/mB,GAAQ4uB,EAAKC,EAAGngB,OAAQkgB,IAAM,CAC5D,IAAIltB,EAAMmtB,EAAGD,GACb9H,OAAOuH,eAAextB,EAAQa,EAAK,CAC/BnK,MAAOyI,EAAM0B,GACb6sB,YAAY,EACZqD,UAAU,EACVpD,cAAc,GAEtB,CACA,OAAO3tB,CACX,EAQIgxB,EAAe,SAAUhxB,GAOzB,OAHkBA,GAAUA,EAAO+J,eAAiB/J,EAAO+J,cAAcM,aAGnD6jB,CAC1B,EAGI+C,EAAYC,EAAe,EAAG,EAAG,EAAG,GAOxC,SAASC,EAAQz6B,GACb,OAAOuW,WAAWvW,IAAU,CAChC,CAQA,SAAS06B,EAAeC,GAEpB,IADA,IAAIC,EAAY,GACPvD,EAAK,EAAGA,EAAKptB,UAAUkN,OAAQkgB,IACpCuD,EAAUvD,EAAK,GAAKptB,UAAUotB,GAElC,OAAOuD,EAAUC,QAAO,SAAUj7B,EAAMqV,GAEpC,OAAOrV,EAAO66B,EADFE,EAAO,UAAY1lB,EAAW,UAE9C,GAAG,EACP,CAkCA,SAAS6lB,EAA0BxxB,GAG/B,IAAImT,EAAcnT,EAAOmT,YAAaC,EAAepT,EAAOoT,aAS5D,IAAKD,IAAgBC,EACjB,OAAO6d,EAEX,IAAII,EAASL,EAAYhxB,GAAQ4M,iBAAiB5M,GAC9CyxB,EA3CR,SAAqBJ,GAGjB,IAFA,IACII,EAAW,CAAC,EACP1D,EAAK,EAAG2D,EAFD,CAAC,MAAO,QAAS,SAAU,QAED3D,EAAK2D,EAAY7jB,OAAQkgB,IAAM,CACrE,IAAIpiB,EAAW+lB,EAAY3D,GACvBr3B,EAAQ26B,EAAO,WAAa1lB,GAChC8lB,EAAS9lB,GAAYwlB,EAAQz6B,EACjC,CACA,OAAO+6B,CACX,CAkCmBE,CAAYN,GACvBO,EAAWH,EAASxnB,KAAOwnB,EAAS5e,MACpCgf,EAAUJ,EAASvoB,IAAMuoB,EAAS1e,OAKlCxR,EAAQ4vB,EAAQE,EAAO9vB,OAAQC,EAAS2vB,EAAQE,EAAO7vB,QAqB3D,GAlByB,eAArB6vB,EAAOS,YAOHnvB,KAAKI,MAAMxB,EAAQqwB,KAAcze,IACjC5R,GAAS6vB,EAAeC,EAAQ,OAAQ,SAAWO,GAEnDjvB,KAAKI,MAAMvB,EAASqwB,KAAaze,IACjC5R,GAAU4vB,EAAeC,EAAQ,MAAO,UAAYQ,KAoDhE,SAA2B7xB,GACvB,OAAOA,IAAWgxB,EAAYhxB,GAAQyH,SAAS4B,eACnD,CA/CS0oB,CAAkB/xB,GAAS,CAK5B,IAAIgyB,EAAgBrvB,KAAKI,MAAMxB,EAAQqwB,GAAYze,EAC/C8e,EAAiBtvB,KAAKI,MAAMvB,EAASqwB,GAAWze,EAMpB,IAA5BzQ,KAAKub,IAAI8T,KACTzwB,GAASywB,GAEoB,IAA7BrvB,KAAKub,IAAI+T,KACTzwB,GAAUywB,EAElB,CACA,OAAOf,EAAeO,EAASxnB,KAAMwnB,EAASvoB,IAAK3H,EAAOC,EAC9D,CAOA,IAAI0wB,EAGkC,qBAAvBC,mBACA,SAAUnyB,GAAU,OAAOA,aAAkBgxB,EAAYhxB,GAAQmyB,kBAAoB,EAKzF,SAAUnyB,GAAU,OAAQA,aAAkBgxB,EAAYhxB,GAAQoyB,YAC3C,oBAAnBpyB,EAAOqrB,OAAyB,EAiB/C,SAASgH,EAAeryB,GACpB,OAAKiuB,EAGDiE,EAAqBlyB,GAhH7B,SAA2BA,GACvB,IAAIsyB,EAAOtyB,EAAOqrB,UAClB,OAAO6F,EAAe,EAAG,EAAGoB,EAAK/wB,MAAO+wB,EAAK9wB,OACjD,CA8Ge+wB,CAAkBvyB,GAEtBwxB,EAA0BxxB,GALtBixB,CAMf,CAiCA,SAASC,EAAetnB,EAAGC,EAAGtI,EAAOC,GACjC,MAAO,CAAEoI,EAAGA,EAAGC,EAAGA,EAAGtI,MAAOA,EAAOC,OAAQA,EAC/C,CAMA,IAAIgxB,EAAmC,WAMnC,SAASA,EAAkBxyB,GAMvBS,KAAKgyB,eAAiB,EAMtBhyB,KAAKiyB,gBAAkB,EAMvBjyB,KAAKkyB,aAAezB,EAAe,EAAG,EAAG,EAAG,GAC5CzwB,KAAKT,OAASA,CAClB,CAyBA,OAlBAwyB,EAAkB/E,UAAUmF,SAAW,WACnC,IAAIC,EAAOR,EAAe5xB,KAAKT,QAE/B,OADAS,KAAKkyB,aAAeE,EACZA,EAAKtxB,QAAUd,KAAKgyB,gBACxBI,EAAKrxB,SAAWf,KAAKiyB,eAC7B,EAOAF,EAAkB/E,UAAUqF,cAAgB,WACxC,IAAID,EAAOpyB,KAAKkyB,aAGhB,OAFAlyB,KAAKgyB,eAAiBI,EAAKtxB,MAC3Bd,KAAKiyB,gBAAkBG,EAAKrxB,OACrBqxB,CACX,EACOL,CACX,CApDuC,GAsDnCO,EAOA,SAA6B/yB,EAAQgzB,GACjC,IAAIC,EA/FZ,SAA4BjF,GACxB,IAAIpkB,EAAIokB,EAAGpkB,EAAGC,EAAImkB,EAAGnkB,EAAGtI,EAAQysB,EAAGzsB,MAAOC,EAASwsB,EAAGxsB,OAElD0xB,EAAoC,qBAApBC,gBAAkCA,gBAAkBlN,OACpE4M,EAAO5M,OAAOmN,OAAOF,EAAOzF,WAShC,OAPAqD,EAAmB+B,EAAM,CACrBjpB,EAAGA,EAAGC,EAAGA,EAAGtI,MAAOA,EAAOC,OAAQA,EAClC0H,IAAKW,EACLgJ,MAAOjJ,EAAIrI,EACXwR,OAAQvR,EAASqI,EACjBI,KAAML,IAEHipB,CACX,CAiF0BQ,CAAmBL,GAOrClC,EAAmBrwB,KAAM,CAAET,OAAQA,EAAQizB,YAAaA,GAC5D,EAIAK,EAAmC,WAWnC,SAASA,EAAkBhwB,EAAUiwB,EAAYC,GAc7C,GAPA/yB,KAAKgzB,oBAAsB,GAM3BhzB,KAAKizB,cAAgB,IAAIzG,EACD,oBAAb3pB,EACP,MAAM,IAAIqwB,UAAU,2DAExBlzB,KAAKmzB,UAAYtwB,EACjB7C,KAAKozB,YAAcN,EACnB9yB,KAAKqzB,aAAeN,CACxB,CAmHA,OA5GAF,EAAkB7F,UAAU9pB,QAAU,SAAU3D,GAC5C,IAAKW,UAAUkN,OACX,MAAM,IAAI8lB,UAAU,4CAGxB,GAAuB,qBAAZxI,SAA6BA,mBAAmBlF,OAA3D,CAGA,KAAMjmB,aAAkBgxB,EAAYhxB,GAAQmrB,SACxC,MAAM,IAAIwI,UAAU,yCAExB,IAAII,EAAetzB,KAAKizB,cAEpBK,EAAavwB,IAAIxD,KAGrB+zB,EAAatwB,IAAIzD,EAAQ,IAAIwyB,EAAkBxyB,IAC/CS,KAAKozB,YAAYnE,YAAYjvB,MAE7BA,KAAKozB,YAAY5E,UAZjB,CAaJ,EAOAqE,EAAkB7F,UAAU3pB,UAAY,SAAU9D,GAC9C,IAAKW,UAAUkN,OACX,MAAM,IAAI8lB,UAAU,4CAGxB,GAAuB,qBAAZxI,SAA6BA,mBAAmBlF,OAA3D,CAGA,KAAMjmB,aAAkBgxB,EAAYhxB,GAAQmrB,SACxC,MAAM,IAAIwI,UAAU,yCAExB,IAAII,EAAetzB,KAAKizB,cAEnBK,EAAavwB,IAAIxD,KAGtB+zB,EAAalwB,OAAO7D,GACf+zB,EAAaz9B,MACdmK,KAAKozB,YAAYhE,eAAepvB,MAXpC,CAaJ,EAMA6yB,EAAkB7F,UAAUhV,WAAa,WACrChY,KAAKuzB,cACLvzB,KAAKizB,cAAc18B,QACnByJ,KAAKozB,YAAYhE,eAAepvB,KACpC,EAOA6yB,EAAkB7F,UAAU0C,aAAe,WACvC,IAAInN,EAAQviB,KACZA,KAAKuzB,cACLvzB,KAAKizB,cAAc7zB,SAAQ,SAAUo0B,GAC7BA,EAAYrB,YACZ5P,EAAMyQ,oBAAoB/uB,KAAKuvB,EAEvC,GACJ,EAOAX,EAAkB7F,UAAU4C,gBAAkB,WAE1C,GAAK5vB,KAAK2vB,YAAV,CAGA,IAAItC,EAAMrtB,KAAKqzB,aAEXlG,EAAUntB,KAAKgzB,oBAAoBzvB,KAAI,SAAUiwB,GACjD,OAAO,IAAIlB,EAAoBkB,EAAYj0B,OAAQi0B,EAAYnB,gBACnE,IACAryB,KAAKmzB,UAAUjjB,KAAKmd,EAAKF,EAASE,GAClCrtB,KAAKuzB,aAPL,CAQJ,EAMAV,EAAkB7F,UAAUuG,YAAc,WACtCvzB,KAAKgzB,oBAAoB5F,OAAO,EACpC,EAMAyF,EAAkB7F,UAAU2C,UAAY,WACpC,OAAO3vB,KAAKgzB,oBAAoB5lB,OAAS,CAC7C,EACOylB,CACX,CAnJuC,GAwJnCxD,EAA+B,qBAAZoE,QAA0B,IAAIA,QAAY,IAAIjH,EAKjEttB,EAOA,SAASA,EAAe2D,GACpB,KAAM7C,gBAAgBd,GAClB,MAAM,IAAIg0B,UAAU,sCAExB,IAAKhzB,UAAUkN,OACX,MAAM,IAAI8lB,UAAU,4CAExB,IAAIJ,EAAa5E,EAAyBiC,cACtCjB,EAAW,IAAI2D,EAAkBhwB,EAAUiwB,EAAY9yB,MAC3DqvB,EAAUrsB,IAAIhD,KAAMkvB,EACxB,EAIJ,CACI,UACA,YACA,cACF9vB,SAAQ,SAAU5B,GAChB0B,EAAe8tB,UAAUxvB,GAAU,WAC/B,IAAI+vB,EACJ,OAAQA,EAAK8B,EAAU7vB,IAAIQ,OAAOxC,GAAQyC,MAAMstB,EAAIrtB,UACxD,CACJ,IAEA,IAAIuD,EAEuC,qBAA5BgqB,EAASvuB,eACTuuB,EAASvuB,eAEbA,EAGX,K","sources":["../node_modules/antd/es/config-provider/SizeContext.js","../node_modules/rc-pagination/es/locale/en_US.js","../node_modules/rc-picker/es/locale/en_US.js","../node_modules/antd/es/time-picker/locale/en_US.js","../node_modules/antd/es/date-picker/locale/en_US.js","../node_modules/antd/es/locale/default.js","../node_modules/@ant-design/icons-svg/es/asn/EyeOutlined.js","../node_modules/antd/node_modules/@ant-design/icons/es/icons/EyeOutlined.js","../node_modules/rc-resize-observer/es/utils/observerUtil.js","../node_modules/rc-resize-observer/es/SingleObserver/DomWrapper.js","../node_modules/rc-resize-observer/es/Collection.js","../node_modules/rc-resize-observer/es/SingleObserver/index.js","../node_modules/rc-resize-observer/es/index.js","../node_modules/rc-util/es/Portal.js","../node_modules/rc-trigger/es/utils/alignUtil.js","../node_modules/rc-trigger/es/utils/legacyUtil.js","../node_modules/rc-trigger/es/Popup/Mask.js","../node_modules/src/propertyUtils.js","../node_modules/src/utils.js","../node_modules/src/getOffsetParent.js","../node_modules/src/isAncestorFixed.js","../node_modules/src/getVisibleRectForElement.js","../node_modules/src/getRegion.js","../node_modules/src/getAlignOffset.js","../node_modules/src/getElFuturePos.js","../node_modules/src/align/align.js","../node_modules/src/adjustForViewport.js","../node_modules/src/align/alignElement.js","../node_modules/rc-align/es/util.js","../node_modules/rc-align/es/Align.js","../node_modules/rc-align/es/hooks/useBuffer.js","../node_modules/src/align/alignPoint.js","../node_modules/rc-align/es/index.js","../node_modules/rc-trigger/es/Popup/useVisibleStatus.js","../node_modules/rc-trigger/es/Popup/PopupInner.js","../node_modules/rc-trigger/es/Popup/useStretchStyle.js","../node_modules/rc-trigger/es/Popup/MobilePopupInner.js","../node_modules/rc-trigger/es/Popup/index.js","../node_modules/rc-trigger/es/context.js","../node_modules/rc-trigger/es/index.js","../node_modules/rc-util/es/Dom/addEventListener.js","../node_modules/rc-util/es/Dom/isVisible.js","../node_modules/rc-util/es/hooks/useEvent.js","../node_modules/rc-util/es/hooks/useMergedState.js","../node_modules/rc-util/es/isMobile.js","../node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js"],"sourcesContent":["import * as React from 'react';\nvar SizeContext = /*#__PURE__*/React.createContext(undefined);\nexport var SizeContextProvider = function SizeContextProvider(_ref) {\n var children = _ref.children,\n size = _ref.size;\n return /*#__PURE__*/React.createElement(SizeContext.Consumer, null, function (originSize) {\n return /*#__PURE__*/React.createElement(SizeContext.Provider, {\n value: size || originSize\n }, children);\n });\n};\nexport default SizeContext;","export default {\n // Options.jsx\n items_per_page: '/ page',\n jump_to: 'Go to',\n jump_to_confirm: 'confirm',\n page: 'Page',\n // Pagination.jsx\n prev_page: 'Previous Page',\n next_page: 'Next Page',\n prev_5: 'Previous 5 Pages',\n next_5: 'Next 5 Pages',\n prev_3: 'Previous 3 Pages',\n next_3: 'Next 3 Pages',\n page_size: 'Page Size'\n};","var locale = {\n locale: 'en_US',\n today: 'Today',\n now: 'Now',\n backToToday: 'Back to today',\n ok: 'OK',\n clear: 'Clear',\n month: 'Month',\n year: 'Year',\n timeSelect: 'select time',\n dateSelect: 'select date',\n weekSelect: 'Choose a week',\n monthSelect: 'Choose a month',\n yearSelect: 'Choose a year',\n decadeSelect: 'Choose a decade',\n yearFormat: 'YYYY',\n dateFormat: 'M/D/YYYY',\n dayFormat: 'D',\n dateTimeFormat: 'M/D/YYYY HH:mm:ss',\n monthBeforeYear: true,\n previousMonth: 'Previous month (PageUp)',\n nextMonth: 'Next month (PageDown)',\n previousYear: 'Last year (Control + left)',\n nextYear: 'Next year (Control + right)',\n previousDecade: 'Last decade',\n nextDecade: 'Next decade',\n previousCentury: 'Last century',\n nextCentury: 'Next century'\n};\nexport default locale;","var locale = {\n placeholder: 'Select time',\n rangePlaceholder: ['Start time', 'End time']\n};\nexport default locale;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport CalendarLocale from \"rc-picker/es/locale/en_US\";\nimport TimePickerLocale from '../../time-picker/locale/en_US';\n// Merge into a locale object\nvar locale = {\n lang: _extends({\n placeholder: 'Select date',\n yearPlaceholder: 'Select year',\n quarterPlaceholder: 'Select quarter',\n monthPlaceholder: 'Select month',\n weekPlaceholder: 'Select week',\n rangePlaceholder: ['Start date', 'End date'],\n rangeYearPlaceholder: ['Start year', 'End year'],\n rangeQuarterPlaceholder: ['Start quarter', 'End quarter'],\n rangeMonthPlaceholder: ['Start month', 'End month'],\n rangeWeekPlaceholder: ['Start week', 'End week']\n }, CalendarLocale),\n timePickerLocale: _extends({}, TimePickerLocale)\n};\n// All settings at:\n// https://github.com/ant-design/ant-design/blob/master/components/date-picker/locale/example.json\nexport default locale;","/* eslint-disable no-template-curly-in-string */\nimport Pagination from \"rc-pagination/es/locale/en_US\";\nimport Calendar from '../calendar/locale/en_US';\nimport DatePicker from '../date-picker/locale/en_US';\nimport TimePicker from '../time-picker/locale/en_US';\nvar typeTemplate = '${label} is not a valid ${type}';\nvar localeValues = {\n locale: 'en',\n Pagination: Pagination,\n DatePicker: DatePicker,\n TimePicker: TimePicker,\n Calendar: Calendar,\n global: {\n placeholder: 'Please select'\n },\n Table: {\n filterTitle: 'Filter menu',\n filterConfirm: 'OK',\n filterReset: 'Reset',\n filterEmptyText: 'No filters',\n filterCheckall: 'Select all items',\n filterSearchPlaceholder: 'Search in filters',\n emptyText: 'No data',\n selectAll: 'Select current page',\n selectInvert: 'Invert current page',\n selectNone: 'Clear all data',\n selectionAll: 'Select all data',\n sortTitle: 'Sort',\n expand: 'Expand row',\n collapse: 'Collapse row',\n triggerDesc: 'Click to sort descending',\n triggerAsc: 'Click to sort ascending',\n cancelSort: 'Click to cancel sorting'\n },\n Modal: {\n okText: 'OK',\n cancelText: 'Cancel',\n justOkText: 'OK'\n },\n Popconfirm: {\n okText: 'OK',\n cancelText: 'Cancel'\n },\n Transfer: {\n titles: ['', ''],\n searchPlaceholder: 'Search here',\n itemUnit: 'item',\n itemsUnit: 'items',\n remove: 'Remove',\n selectCurrent: 'Select current page',\n removeCurrent: 'Remove current page',\n selectAll: 'Select all data',\n removeAll: 'Remove all data',\n selectInvert: 'Invert current page'\n },\n Upload: {\n uploading: 'Uploading...',\n removeFile: 'Remove file',\n uploadError: 'Upload error',\n previewFile: 'Preview file',\n downloadFile: 'Download file'\n },\n Empty: {\n description: 'No data'\n },\n Icon: {\n icon: 'icon'\n },\n Text: {\n edit: 'Edit',\n copy: 'Copy',\n copied: 'Copied',\n expand: 'Expand'\n },\n PageHeader: {\n back: 'Back'\n },\n Form: {\n optional: '(optional)',\n defaultValidateMessages: {\n \"default\": 'Field validation error for ${label}',\n required: 'Please enter ${label}',\n \"enum\": '${label} must be one of [${enum}]',\n whitespace: '${label} cannot be a blank character',\n date: {\n format: '${label} date format is invalid',\n parse: '${label} cannot be converted to a date',\n invalid: '${label} is an invalid date'\n },\n types: {\n string: typeTemplate,\n method: typeTemplate,\n array: typeTemplate,\n object: typeTemplate,\n number: typeTemplate,\n date: typeTemplate,\n \"boolean\": typeTemplate,\n integer: typeTemplate,\n \"float\": typeTemplate,\n regexp: typeTemplate,\n email: typeTemplate,\n url: typeTemplate,\n hex: typeTemplate\n },\n string: {\n len: '${label} must be ${len} characters',\n min: '${label} must be at least ${min} characters',\n max: '${label} must be up to ${max} characters',\n range: '${label} must be between ${min}-${max} characters'\n },\n number: {\n len: '${label} must be equal to ${len}',\n min: '${label} must be minimum ${min}',\n max: '${label} must be maximum ${max}',\n range: '${label} must be between ${min}-${max}'\n },\n array: {\n len: 'Must be ${len} ${label}',\n min: 'At least ${min} ${label}',\n max: 'At most ${max} ${label}',\n range: 'The amount of ${label} must be between ${min}-${max}'\n },\n pattern: {\n mismatch: '${label} does not match the pattern ${pattern}'\n }\n }\n },\n Image: {\n preview: 'Preview'\n }\n};\nexport default localeValues;","// This icon file is generated automatically.\nvar EyeOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M942.2 486.2C847.4 286.5 704.1 186 512 186c-192.2 0-335.4 100.5-430.2 300.3a60.3 60.3 0 000 51.5C176.6 737.5 319.9 838 512 838c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 766c-161.3 0-279.4-81.8-362.7-254C232.6 339.8 350.7 258 512 258c161.3 0 279.4 81.8 362.7 254C791.5 684.2 673.4 766 512 766zm-4-430c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm0 288c-61.9 0-112-50.1-112-112s50.1-112 112-112 112 50.1 112 112-50.1 112-112 112z\" } }] }, \"name\": \"eye\", \"theme\": \"outlined\" };\nexport default EyeOutlined;\n","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport EyeOutlinedSvg from \"@ant-design/icons-svg/es/asn/EyeOutlined\";\nimport AntdIcon from '../components/AntdIcon';\nvar EyeOutlined = function EyeOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n icon: EyeOutlinedSvg\n }));\n};\nvar RefIcon = /*#__PURE__*/React.forwardRef(EyeOutlined);\nif (process.env.NODE_ENV !== 'production') {\n RefIcon.displayName = 'EyeOutlined';\n}\nexport default RefIcon;","import ResizeObserver from 'resize-observer-polyfill';\n// =============================== Const ===============================\nvar elementListeners = new Map();\nfunction onResize(entities) {\n entities.forEach(function (entity) {\n var _elementListeners$get;\n var target = entity.target;\n (_elementListeners$get = elementListeners.get(target)) === null || _elementListeners$get === void 0 ? void 0 : _elementListeners$get.forEach(function (listener) {\n return listener(target);\n });\n });\n}\n// Note: ResizeObserver polyfill not support option to measure border-box resize\nvar resizeObserver = new ResizeObserver(onResize);\n// Dev env only\nexport var _el = process.env.NODE_ENV !== 'production' ? elementListeners : null; // eslint-disable-line\nexport var _rs = process.env.NODE_ENV !== 'production' ? onResize : null; // eslint-disable-line\n// ============================== Observe ==============================\nexport function observe(element, callback) {\n if (!elementListeners.has(element)) {\n elementListeners.set(element, new Set());\n resizeObserver.observe(element);\n }\n elementListeners.get(element).add(callback);\n}\nexport function unobserve(element, callback) {\n if (elementListeners.has(element)) {\n elementListeners.get(element).delete(callback);\n if (!elementListeners.get(element).size) {\n resizeObserver.unobserve(element);\n elementListeners.delete(element);\n }\n }\n}","import _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\nimport * as React from 'react';\n/**\n * Fallback to findDOMNode if origin ref do not provide any dom element\n */\nvar DomWrapper = /*#__PURE__*/function (_React$Component) {\n _inherits(DomWrapper, _React$Component);\n var _super = _createSuper(DomWrapper);\n function DomWrapper() {\n _classCallCheck(this, DomWrapper);\n return _super.apply(this, arguments);\n }\n _createClass(DomWrapper, [{\n key: \"render\",\n value: function render() {\n return this.props.children;\n }\n }]);\n return DomWrapper;\n}(React.Component);\nexport { DomWrapper as default };","import * as React from 'react';\nexport var CollectionContext = /*#__PURE__*/React.createContext(null);\n/**\n * Collect all the resize event from children ResizeObserver\n */\nexport function Collection(_ref) {\n var children = _ref.children,\n onBatchResize = _ref.onBatchResize;\n var resizeIdRef = React.useRef(0);\n var resizeInfosRef = React.useRef([]);\n var onCollectionResize = React.useContext(CollectionContext);\n var onResize = React.useCallback(function (size, element, data) {\n resizeIdRef.current += 1;\n var currentId = resizeIdRef.current;\n resizeInfosRef.current.push({\n size: size,\n element: element,\n data: data\n });\n Promise.resolve().then(function () {\n if (currentId === resizeIdRef.current) {\n onBatchResize === null || onBatchResize === void 0 ? void 0 : onBatchResize(resizeInfosRef.current);\n resizeInfosRef.current = [];\n }\n });\n // Continue bubbling if parent exist\n onCollectionResize === null || onCollectionResize === void 0 ? void 0 : onCollectionResize(size, element, data);\n }, [onBatchResize, onCollectionResize]);\n return /*#__PURE__*/React.createElement(CollectionContext.Provider, {\n value: onResize\n }, children);\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport { composeRef, supportRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nimport findDOMNode from \"rc-util/es/Dom/findDOMNode\";\nimport { observe, unobserve } from '../utils/observerUtil';\nimport DomWrapper from './DomWrapper';\nimport { CollectionContext } from '../Collection';\nfunction SingleObserver(props, ref) {\n var children = props.children,\n disabled = props.disabled;\n var elementRef = React.useRef(null);\n var wrapperRef = React.useRef(null);\n var onCollectionResize = React.useContext(CollectionContext);\n // =========================== Children ===========================\n var isRenderProps = typeof children === 'function';\n var mergedChildren = isRenderProps ? children(elementRef) : children;\n // ============================= Size =============================\n var sizeRef = React.useRef({\n width: -1,\n height: -1,\n offsetWidth: -1,\n offsetHeight: -1\n });\n // ============================= Ref ==============================\n var canRef = !isRenderProps && /*#__PURE__*/React.isValidElement(mergedChildren) && supportRef(mergedChildren);\n var originRef = canRef ? mergedChildren.ref : null;\n var mergedRef = React.useMemo(function () {\n return composeRef(originRef, elementRef);\n }, [originRef, elementRef]);\n var getDom = function getDom() {\n return findDOMNode(elementRef.current) || findDOMNode(wrapperRef.current);\n };\n React.useImperativeHandle(ref, function () {\n return getDom();\n });\n // =========================== Observe ============================\n var propsRef = React.useRef(props);\n propsRef.current = props;\n // Handler\n var onInternalResize = React.useCallback(function (target) {\n var _propsRef$current = propsRef.current,\n onResize = _propsRef$current.onResize,\n data = _propsRef$current.data;\n var _target$getBoundingCl = target.getBoundingClientRect(),\n width = _target$getBoundingCl.width,\n height = _target$getBoundingCl.height;\n var offsetWidth = target.offsetWidth,\n offsetHeight = target.offsetHeight;\n /**\n * Resize observer trigger when content size changed.\n * In most case we just care about element size,\n * let's use `boundary` instead of `contentRect` here to avoid shaking.\n */\n var fixedWidth = Math.floor(width);\n var fixedHeight = Math.floor(height);\n if (sizeRef.current.width !== fixedWidth || sizeRef.current.height !== fixedHeight || sizeRef.current.offsetWidth !== offsetWidth || sizeRef.current.offsetHeight !== offsetHeight) {\n var size = {\n width: fixedWidth,\n height: fixedHeight,\n offsetWidth: offsetWidth,\n offsetHeight: offsetHeight\n };\n sizeRef.current = size;\n // IE is strange, right?\n var mergedOffsetWidth = offsetWidth === Math.round(width) ? width : offsetWidth;\n var mergedOffsetHeight = offsetHeight === Math.round(height) ? height : offsetHeight;\n var sizeInfo = _objectSpread(_objectSpread({}, size), {}, {\n offsetWidth: mergedOffsetWidth,\n offsetHeight: mergedOffsetHeight\n });\n // Let collection know what happened\n onCollectionResize === null || onCollectionResize === void 0 ? void 0 : onCollectionResize(sizeInfo, target, data);\n if (onResize) {\n // defer the callback but not defer to next frame\n Promise.resolve().then(function () {\n onResize(sizeInfo, target);\n });\n }\n }\n }, []);\n // Dynamic observe\n React.useEffect(function () {\n var currentElement = getDom();\n if (currentElement && !disabled) {\n observe(currentElement, onInternalResize);\n }\n return function () {\n return unobserve(currentElement, onInternalResize);\n };\n }, [elementRef.current, disabled]);\n // ============================ Render ============================\n return /*#__PURE__*/React.createElement(DomWrapper, {\n ref: wrapperRef\n }, canRef ? /*#__PURE__*/React.cloneElement(mergedChildren, {\n ref: mergedRef\n }) : mergedChildren);\n}\nvar RefSingleObserver = /*#__PURE__*/React.forwardRef(SingleObserver);\nif (process.env.NODE_ENV !== 'production') {\n RefSingleObserver.displayName = 'SingleObserver';\n}\nexport default RefSingleObserver;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport toArray from \"rc-util/es/Children/toArray\";\nimport { warning } from \"rc-util/es/warning\";\nimport SingleObserver from './SingleObserver';\nimport { Collection } from './Collection';\nvar INTERNAL_PREFIX_KEY = 'rc-observer-key';\nimport { _rs } from './utils/observerUtil';\nexport { /** @private Test only for mock trigger resize event */\n_rs };\nfunction ResizeObserver(props, ref) {\n var children = props.children;\n var childNodes = typeof children === 'function' ? [children] : toArray(children);\n if (process.env.NODE_ENV !== 'production') {\n if (childNodes.length > 1) {\n warning(false, 'Find more than one child node with `children` in ResizeObserver. Please use ResizeObserver.Collection instead.');\n } else if (childNodes.length === 0) {\n warning(false, '`children` of ResizeObserver is empty. Nothing is in observe.');\n }\n }\n return childNodes.map(function (child, index) {\n var key = (child === null || child === void 0 ? void 0 : child.key) || \"\".concat(INTERNAL_PREFIX_KEY, \"-\").concat(index);\n return /*#__PURE__*/React.createElement(SingleObserver, _extends({}, props, {\n key: key,\n ref: index === 0 ? ref : undefined\n }), child);\n });\n}\nvar RefResizeObserver = /*#__PURE__*/React.forwardRef(ResizeObserver);\nif (process.env.NODE_ENV !== 'production') {\n RefResizeObserver.displayName = 'ResizeObserver';\n}\nRefResizeObserver.Collection = Collection;\nexport default RefResizeObserver;","import { useRef, useEffect, forwardRef, useImperativeHandle } from 'react';\nimport ReactDOM from 'react-dom';\nimport canUseDom from \"./Dom/canUseDom\";\nvar Portal = /*#__PURE__*/forwardRef(function (props, ref) {\n var didUpdate = props.didUpdate,\n getContainer = props.getContainer,\n children = props.children;\n var parentRef = useRef();\n var containerRef = useRef();\n\n // Ref return nothing, only for wrapper check exist\n useImperativeHandle(ref, function () {\n return {};\n });\n\n // Create container in client side with sync to avoid useEffect not get ref\n var initRef = useRef(false);\n if (!initRef.current && canUseDom()) {\n containerRef.current = getContainer();\n parentRef.current = containerRef.current.parentNode;\n initRef.current = true;\n }\n\n // [Legacy] Used by `rc-trigger`\n useEffect(function () {\n didUpdate === null || didUpdate === void 0 ? void 0 : didUpdate(props);\n });\n useEffect(function () {\n // Restore container to original place\n // React 18 StrictMode will unmount first and mount back for effect test:\n // https://reactjs.org/blog/2022/03/29/react-v18.html#new-strict-mode-behaviors\n if (containerRef.current.parentNode === null && parentRef.current !== null) {\n parentRef.current.appendChild(containerRef.current);\n }\n return function () {\n var _containerRef$current, _containerRef$current2;\n // [Legacy] This should not be handle by Portal but parent PortalWrapper instead.\n // Since some component use `Portal` directly, we have to keep the logic here.\n (_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 ? void 0 : (_containerRef$current2 = _containerRef$current.parentNode) === null || _containerRef$current2 === void 0 ? void 0 : _containerRef$current2.removeChild(containerRef.current);\n };\n }, []);\n return containerRef.current ? /*#__PURE__*/ReactDOM.createPortal(children, containerRef.current) : null;\n});\nexport default Portal;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\n\nfunction isPointsEq(a1, a2, isAlignPoint) {\n if (isAlignPoint) {\n return a1[0] === a2[0];\n }\n\n return a1[0] === a2[0] && a1[1] === a2[1];\n}\n\nexport function getAlignFromPlacement(builtinPlacements, placementStr, align) {\n var baseAlign = builtinPlacements[placementStr] || {};\n return _objectSpread(_objectSpread({}, baseAlign), align);\n}\nexport function getAlignPopupClassName(builtinPlacements, prefixCls, align, isAlignPoint) {\n var points = align.points;\n var placements = Object.keys(builtinPlacements);\n\n for (var i = 0; i < placements.length; i += 1) {\n var placement = placements[i];\n\n if (isPointsEq(builtinPlacements[placement].points, points, isAlignPoint)) {\n return \"\".concat(prefixCls, \"-placement-\").concat(placement);\n }\n }\n\n return '';\n}","export function getMotion(_ref) {\n var prefixCls = _ref.prefixCls,\n motion = _ref.motion,\n animation = _ref.animation,\n transitionName = _ref.transitionName;\n\n if (motion) {\n return motion;\n }\n\n if (animation) {\n return {\n motionName: \"\".concat(prefixCls, \"-\").concat(animation)\n };\n }\n\n if (transitionName) {\n return {\n motionName: transitionName\n };\n }\n\n return null;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport CSSMotion from 'rc-motion';\nimport { getMotion } from \"../utils/legacyUtil\";\nexport default function Mask(props) {\n var prefixCls = props.prefixCls,\n visible = props.visible,\n zIndex = props.zIndex,\n mask = props.mask,\n maskMotion = props.maskMotion,\n maskAnimation = props.maskAnimation,\n maskTransitionName = props.maskTransitionName;\n\n if (!mask) {\n return null;\n }\n\n var motion = {};\n\n if (maskMotion || maskTransitionName || maskAnimation) {\n motion = _objectSpread({\n motionAppear: true\n }, getMotion({\n motion: maskMotion,\n prefixCls: prefixCls,\n transitionName: maskTransitionName,\n animation: maskAnimation\n }));\n }\n\n return /*#__PURE__*/React.createElement(CSSMotion, _extends({}, motion, {\n visible: visible,\n removeOnLeave: true\n }), function (_ref) {\n var className = _ref.className;\n return /*#__PURE__*/React.createElement(\"div\", {\n style: {\n zIndex: zIndex\n },\n className: classNames(\"\".concat(prefixCls, \"-mask\"), className)\n });\n });\n}","let vendorPrefix;\n\nconst jsCssMap = {\n Webkit: '-webkit-',\n Moz: '-moz-',\n // IE did it wrong again ...\n ms: '-ms-',\n O: '-o-',\n};\n\nfunction getVendorPrefix() {\n if (vendorPrefix !== undefined) {\n return vendorPrefix;\n }\n vendorPrefix = '';\n const style = document.createElement('p').style;\n const testProp = 'Transform';\n for (const key in jsCssMap) {\n if (key + testProp in style) {\n vendorPrefix = key;\n }\n }\n return vendorPrefix;\n}\n\nfunction getTransitionName() {\n return getVendorPrefix()\n ? `${getVendorPrefix()}TransitionProperty`\n : 'transitionProperty';\n}\n\nexport function getTransformName() {\n return getVendorPrefix() ? `${getVendorPrefix()}Transform` : 'transform';\n}\n\nexport function setTransitionProperty(node, value) {\n const name = getTransitionName();\n if (name) {\n node.style[name] = value;\n if (name !== 'transitionProperty') {\n node.style.transitionProperty = value;\n }\n }\n}\n\nfunction setTransform(node, value) {\n const name = getTransformName();\n if (name) {\n node.style[name] = value;\n if (name !== 'transform') {\n node.style.transform = value;\n }\n }\n}\n\nexport function getTransitionProperty(node) {\n return node.style.transitionProperty || node.style[getTransitionName()];\n}\n\nexport function getTransformXY(node) {\n const style = window.getComputedStyle(node, null);\n const transform =\n style.getPropertyValue('transform') ||\n style.getPropertyValue(getTransformName());\n if (transform && transform !== 'none') {\n const matrix = transform.replace(/[^0-9\\-.,]/g, '').split(',');\n return {\n x: parseFloat(matrix[12] || matrix[4], 0),\n y: parseFloat(matrix[13] || matrix[5], 0),\n };\n }\n return {\n x: 0,\n y: 0,\n };\n}\n\nconst matrix2d = /matrix\\((.*)\\)/;\nconst matrix3d = /matrix3d\\((.*)\\)/;\n\nexport function setTransformXY(node, xy) {\n const style = window.getComputedStyle(node, null);\n const transform =\n style.getPropertyValue('transform') ||\n style.getPropertyValue(getTransformName());\n if (transform && transform !== 'none') {\n let arr;\n let match2d = transform.match(matrix2d);\n if (match2d) {\n match2d = match2d[1];\n arr = match2d.split(',').map(item => {\n return parseFloat(item, 10);\n });\n arr[4] = xy.x;\n arr[5] = xy.y;\n setTransform(node, `matrix(${arr.join(',')})`);\n } else {\n const match3d = transform.match(matrix3d)[1];\n arr = match3d.split(',').map(item => {\n return parseFloat(item, 10);\n });\n arr[12] = xy.x;\n arr[13] = xy.y;\n setTransform(node, `matrix3d(${arr.join(',')})`);\n }\n } else {\n setTransform(\n node,\n `translateX(${xy.x}px) translateY(${xy.y}px) translateZ(0)`,\n );\n }\n}\n","import {\n setTransitionProperty,\n getTransitionProperty,\n getTransformXY,\n setTransformXY,\n getTransformName,\n} from './propertyUtils';\n\nconst RE_NUM = /[\\-+]?(?:\\d*\\.|)\\d+(?:[eE][\\-+]?\\d+|)/.source;\n\nlet getComputedStyleX;\n\n// https://stackoverflow.com/a/3485654/3040605\nfunction forceRelayout(elem) {\n const originalStyle = elem.style.display;\n elem.style.display = 'none';\n elem.offsetHeight; // eslint-disable-line\n elem.style.display = originalStyle;\n}\n\nfunction css(el, name, v) {\n let value = v;\n if (typeof name === 'object') {\n for (const i in name) {\n if (name.hasOwnProperty(i)) {\n css(el, i, name[i]);\n }\n }\n return undefined;\n }\n if (typeof value !== 'undefined') {\n if (typeof value === 'number') {\n value = `${value}px`;\n }\n el.style[name] = value;\n return undefined;\n }\n return getComputedStyleX(el, name);\n}\n\nfunction getClientPosition(elem) {\n let box;\n let x;\n let y;\n const doc = elem.ownerDocument;\n const body = doc.body;\n const docElem = doc && doc.documentElement;\n // 根据 GBS 最新数据,A-Grade Browsers 都已支持 getBoundingClientRect 方法,不用再考虑传统的实现方式\n box = elem.getBoundingClientRect();\n\n // 注:jQuery 还考虑减去 docElem.clientLeft/clientTop\n // 但测试发现,这样反而会导致当 html 和 body 有边距/边框样式时,获取的值不正确\n // 此外,ie6 会忽略 html 的 margin 值,幸运地是没有谁会去设置 html 的 margin\n\n x = Math.floor(box.left);\n y = Math.floor(box.top);\n\n // In IE, most of the time, 2 extra pixels are added to the top and left\n // due to the implicit 2-pixel inset border. In IE6/7 quirks mode and\n // IE6 standards mode, this border can be overridden by setting the\n // document element's border to zero -- thus, we cannot rely on the\n // offset always being 2 pixels.\n\n // In quirks mode, the offset can be determined by querying the body's\n // clientLeft/clientTop, but in standards mode, it is found by querying\n // the document element's clientLeft/clientTop. Since we already called\n // getClientBoundingRect we have already forced a reflow, so it is not\n // too expensive just to query them all.\n\n // ie 下应该减去窗口的边框吧,毕竟默认 absolute 都是相对窗口定位的\n // 窗口边框标准是设 documentElement ,quirks 时设置 body\n // 最好禁止在 body 和 html 上边框 ,但 ie < 9 html 默认有 2px ,减去\n // 但是非 ie 不可能设置窗口边框,body html 也不是窗口 ,ie 可以通过 html,body 设置\n // 标准 ie 下 docElem.clientTop 就是 border-top\n // ie7 html 即窗口边框改变不了。永远为 2\n // 但标准 firefox/chrome/ie9 下 docElem.clientTop 是窗口边框,即使设了 border-top 也为 0\n\n x -= docElem.clientLeft || body.clientLeft || 0;\n y -= docElem.clientTop || body.clientTop || 0;\n\n return {\n left: x,\n top: y,\n };\n}\n\nfunction getScroll(w, top) {\n let ret = w[`page${top ? 'Y' : 'X'}Offset`];\n const method = `scroll${top ? 'Top' : 'Left'}`;\n if (typeof ret !== 'number') {\n const d = w.document;\n // ie6,7,8 standard mode\n ret = d.documentElement[method];\n if (typeof ret !== 'number') {\n // quirks mode\n ret = d.body[method];\n }\n }\n return ret;\n}\n\nfunction getScrollLeft(w) {\n return getScroll(w);\n}\n\nfunction getScrollTop(w) {\n return getScroll(w, true);\n}\n\nfunction getOffset(el) {\n const pos = getClientPosition(el);\n const doc = el.ownerDocument;\n const w = doc.defaultView || doc.parentWindow;\n pos.left += getScrollLeft(w);\n pos.top += getScrollTop(w);\n return pos;\n}\n\n/**\n * A crude way of determining if an object is a window\n * @member util\n */\nfunction isWindow(obj) {\n // must use == for ie8\n /* eslint eqeqeq:0 */\n return obj !== null && obj !== undefined && obj == obj.window;\n}\n\nfunction getDocument(node) {\n if (isWindow(node)) {\n return node.document;\n }\n if (node.nodeType === 9) {\n return node;\n }\n return node.ownerDocument;\n}\n\nfunction _getComputedStyle(elem, name, cs) {\n let computedStyle = cs;\n let val = '';\n const d = getDocument(elem);\n computedStyle = computedStyle || d.defaultView.getComputedStyle(elem, null);\n\n // https://github.com/kissyteam/kissy/issues/61\n if (computedStyle) {\n val = computedStyle.getPropertyValue(name) || computedStyle[name];\n }\n\n return val;\n}\n\nconst _RE_NUM_NO_PX = new RegExp(`^(${RE_NUM})(?!px)[a-z%]+$`, 'i');\nconst RE_POS = /^(top|right|bottom|left)$/;\nconst CURRENT_STYLE = 'currentStyle';\nconst RUNTIME_STYLE = 'runtimeStyle';\nconst LEFT = 'left';\nconst PX = 'px';\n\nfunction _getComputedStyleIE(elem, name) {\n // currentStyle maybe null\n // http://msdn.microsoft.com/en-us/library/ms535231.aspx\n let ret = elem[CURRENT_STYLE] && elem[CURRENT_STYLE][name];\n\n // 当 width/height 设置为百分比时,通过 pixelLeft 方式转换的 width/height 值\n // 一开始就处理了! CUSTOM_STYLE.height,CUSTOM_STYLE.width ,cssHook 解决@2011-08-19\n // 在 ie 下不对,需要直接用 offset 方式\n // borderWidth 等值也有问题,但考虑到 borderWidth 设为百分比的概率很小,这里就不考虑了\n\n // From the awesome hack by Dean Edwards\n // http://erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291\n // If we're not dealing with a regular pixel number\n // but a number that has a weird ending, we need to convert it to pixels\n // exclude left right for relativity\n if (_RE_NUM_NO_PX.test(ret) && !RE_POS.test(name)) {\n // Remember the original values\n const style = elem.style;\n const left = style[LEFT];\n const rsLeft = elem[RUNTIME_STYLE][LEFT];\n\n // prevent flashing of content\n elem[RUNTIME_STYLE][LEFT] = elem[CURRENT_STYLE][LEFT];\n\n // Put in the new values to get a computed value out\n style[LEFT] = name === 'fontSize' ? '1em' : ret || 0;\n ret = style.pixelLeft + PX;\n\n // Revert the changed values\n style[LEFT] = left;\n\n elem[RUNTIME_STYLE][LEFT] = rsLeft;\n }\n return ret === '' ? 'auto' : ret;\n}\n\nif (typeof window !== 'undefined') {\n getComputedStyleX = window.getComputedStyle\n ? _getComputedStyle\n : _getComputedStyleIE;\n}\n\nfunction getOffsetDirection(dir, option) {\n if (dir === 'left') {\n return option.useCssRight ? 'right' : dir;\n }\n return option.useCssBottom ? 'bottom' : dir;\n}\n\nfunction oppositeOffsetDirection(dir) {\n if (dir === 'left') {\n return 'right';\n } else if (dir === 'right') {\n return 'left';\n } else if (dir === 'top') {\n return 'bottom';\n } else if (dir === 'bottom') {\n return 'top';\n }\n}\n\n// 设置 elem 相对 elem.ownerDocument 的坐标\nfunction setLeftTop(elem, offset, option) {\n // set position first, in-case top/left are set even on static elem\n if (css(elem, 'position') === 'static') {\n elem.style.position = 'relative';\n }\n let presetH = -999;\n let presetV = -999;\n const horizontalProperty = getOffsetDirection('left', option);\n const verticalProperty = getOffsetDirection('top', option);\n const oppositeHorizontalProperty = oppositeOffsetDirection(\n horizontalProperty,\n );\n const oppositeVerticalProperty = oppositeOffsetDirection(verticalProperty);\n\n if (horizontalProperty !== 'left') {\n presetH = 999;\n }\n\n if (verticalProperty !== 'top') {\n presetV = 999;\n }\n let originalTransition = '';\n const originalOffset = getOffset(elem);\n if ('left' in offset || 'top' in offset) {\n originalTransition = getTransitionProperty(elem) || '';\n setTransitionProperty(elem, 'none');\n }\n if ('left' in offset) {\n elem.style[oppositeHorizontalProperty] = '';\n elem.style[horizontalProperty] = `${presetH}px`;\n }\n if ('top' in offset) {\n elem.style[oppositeVerticalProperty] = '';\n elem.style[verticalProperty] = `${presetV}px`;\n }\n // force relayout\n forceRelayout(elem);\n const old = getOffset(elem);\n const originalStyle = {};\n for (const key in offset) {\n if (offset.hasOwnProperty(key)) {\n const dir = getOffsetDirection(key, option);\n const preset = key === 'left' ? presetH : presetV;\n const off = originalOffset[key] - old[key];\n if (dir === key) {\n originalStyle[dir] = preset + off;\n } else {\n originalStyle[dir] = preset - off;\n }\n }\n }\n css(elem, originalStyle);\n // force relayout\n forceRelayout(elem);\n if ('left' in offset || 'top' in offset) {\n setTransitionProperty(elem, originalTransition);\n }\n const ret = {};\n for (const key in offset) {\n if (offset.hasOwnProperty(key)) {\n const dir = getOffsetDirection(key, option);\n const off = offset[key] - originalOffset[key];\n if (key === dir) {\n ret[dir] = originalStyle[dir] + off;\n } else {\n ret[dir] = originalStyle[dir] - off;\n }\n }\n }\n css(elem, ret);\n}\n\nfunction setTransform(elem, offset) {\n const originalOffset = getOffset(elem);\n const originalXY = getTransformXY(elem);\n const resultXY = { x: originalXY.x, y: originalXY.y };\n if ('left' in offset) {\n resultXY.x = originalXY.x + offset.left - originalOffset.left;\n }\n if ('top' in offset) {\n resultXY.y = originalXY.y + offset.top - originalOffset.top;\n }\n setTransformXY(elem, resultXY);\n}\n\nfunction setOffset(elem, offset, option) {\n if (option.ignoreShake) {\n const oriOffset = getOffset(elem);\n\n const oLeft = oriOffset.left.toFixed(0);\n const oTop = oriOffset.top.toFixed(0);\n const tLeft = offset.left.toFixed(0);\n const tTop = offset.top.toFixed(0);\n\n if (oLeft === tLeft && oTop === tTop) {\n return;\n }\n }\n\n if (option.useCssRight || option.useCssBottom) {\n setLeftTop(elem, offset, option);\n } else if (\n option.useCssTransform &&\n getTransformName() in document.body.style\n ) {\n setTransform(elem, offset, option);\n } else {\n setLeftTop(elem, offset, option);\n }\n}\n\nfunction each(arr, fn) {\n for (let i = 0; i < arr.length; i++) {\n fn(arr[i]);\n }\n}\n\nfunction isBorderBoxFn(elem) {\n return getComputedStyleX(elem, 'boxSizing') === 'border-box';\n}\n\nconst BOX_MODELS = ['margin', 'border', 'padding'];\nconst CONTENT_INDEX = -1;\nconst PADDING_INDEX = 2;\nconst BORDER_INDEX = 1;\nconst MARGIN_INDEX = 0;\n\nfunction swap(elem, options, callback) {\n const old = {};\n const style = elem.style;\n let name;\n\n // Remember the old values, and insert the new ones\n for (name in options) {\n if (options.hasOwnProperty(name)) {\n old[name] = style[name];\n style[name] = options[name];\n }\n }\n\n callback.call(elem);\n\n // Revert the old values\n for (name in options) {\n if (options.hasOwnProperty(name)) {\n style[name] = old[name];\n }\n }\n}\n\nfunction getPBMWidth(elem, props, which) {\n let value = 0;\n let prop;\n let j;\n let i;\n for (j = 0; j < props.length; j++) {\n prop = props[j];\n if (prop) {\n for (i = 0; i < which.length; i++) {\n let cssProp;\n if (prop === 'border') {\n cssProp = `${prop}${which[i]}Width`;\n } else {\n cssProp = prop + which[i];\n }\n value += parseFloat(getComputedStyleX(elem, cssProp)) || 0;\n }\n }\n }\n return value;\n}\n\nconst domUtils = {\n getParent(element) {\n let parent = element;\n do {\n if (parent.nodeType === 11 && parent.host) {\n parent = parent.host;\n } else {\n parent = parent.parentNode;\n }\n } while (parent && parent.nodeType !== 1 && parent.nodeType !== 9);\n return parent;\n },\n};\n\neach(['Width', 'Height'], name => {\n domUtils[`doc${name}`] = refWin => {\n const d = refWin.document;\n return Math.max(\n // firefox chrome documentElement.scrollHeight< body.scrollHeight\n // ie standard mode : documentElement.scrollHeight> body.scrollHeight\n d.documentElement[`scroll${name}`],\n // quirks : documentElement.scrollHeight 最大等于可视窗口多一点?\n d.body[`scroll${name}`],\n domUtils[`viewport${name}`](d),\n );\n };\n\n domUtils[`viewport${name}`] = win => {\n // pc browser includes scrollbar in window.innerWidth\n const prop = `client${name}`;\n const doc = win.document;\n const body = doc.body;\n const documentElement = doc.documentElement;\n const documentElementProp = documentElement[prop];\n // 标准模式取 documentElement\n // backcompat 取 body\n return (\n (doc.compatMode === 'CSS1Compat' && documentElementProp) ||\n (body && body[prop]) ||\n documentElementProp\n );\n };\n});\n\n/*\n 得到元素的大小信息\n @param elem\n @param name\n @param {String} [extra] 'padding' : (css width) + padding\n 'border' : (css width) + padding + border\n 'margin' : (css width) + padding + border + margin\n */\nfunction getWH(elem, name, ex) {\n let extra = ex;\n if (isWindow(elem)) {\n return name === 'width'\n ? domUtils.viewportWidth(elem)\n : domUtils.viewportHeight(elem);\n } else if (elem.nodeType === 9) {\n return name === 'width'\n ? domUtils.docWidth(elem)\n : domUtils.docHeight(elem);\n }\n const which = name === 'width' ? ['Left', 'Right'] : ['Top', 'Bottom'];\n let borderBoxValue =\n name === 'width'\n ? Math.floor(elem.getBoundingClientRect().width)\n : Math.floor(elem.getBoundingClientRect().height);\n const isBorderBox = isBorderBoxFn(elem);\n let cssBoxValue = 0;\n if (\n borderBoxValue === null ||\n borderBoxValue === undefined ||\n borderBoxValue <= 0\n ) {\n borderBoxValue = undefined;\n // Fall back to computed then un computed css if necessary\n cssBoxValue = getComputedStyleX(elem, name);\n if (\n cssBoxValue === null ||\n cssBoxValue === undefined ||\n Number(cssBoxValue) < 0\n ) {\n cssBoxValue = elem.style[name] || 0;\n }\n // Normalize '', auto, and prepare for extra\n cssBoxValue = Math.floor(parseFloat(cssBoxValue)) || 0;\n }\n if (extra === undefined) {\n extra = isBorderBox ? BORDER_INDEX : CONTENT_INDEX;\n }\n const borderBoxValueOrIsBorderBox =\n borderBoxValue !== undefined || isBorderBox;\n const val = borderBoxValue || cssBoxValue;\n if (extra === CONTENT_INDEX) {\n if (borderBoxValueOrIsBorderBox) {\n return val - getPBMWidth(elem, ['border', 'padding'], which);\n }\n return cssBoxValue;\n } else if (borderBoxValueOrIsBorderBox) {\n if (extra === BORDER_INDEX) {\n return val;\n }\n return (\n val +\n (extra === PADDING_INDEX\n ? -getPBMWidth(elem, ['border'], which)\n : getPBMWidth(elem, ['margin'], which))\n );\n }\n return cssBoxValue + getPBMWidth(elem, BOX_MODELS.slice(extra), which);\n}\n\nconst cssShow = {\n position: 'absolute',\n visibility: 'hidden',\n display: 'block',\n};\n\n// fix #119 : https://github.com/kissyteam/kissy/issues/119\nfunction getWHIgnoreDisplay(...args) {\n let val;\n const elem = args[0];\n // in case elem is window\n // elem.offsetWidth === undefined\n if (elem.offsetWidth !== 0) {\n val = getWH.apply(undefined, args);\n } else {\n swap(elem, cssShow, () => {\n val = getWH.apply(undefined, args);\n });\n }\n return val;\n}\n\neach(['width', 'height'], name => {\n const first = name.charAt(0).toUpperCase() + name.slice(1);\n domUtils[`outer${first}`] = (el, includeMargin) => {\n return (\n el &&\n getWHIgnoreDisplay(el, name, includeMargin ? MARGIN_INDEX : BORDER_INDEX)\n );\n };\n const which = name === 'width' ? ['Left', 'Right'] : ['Top', 'Bottom'];\n\n domUtils[name] = (elem, v) => {\n let val = v;\n if (val !== undefined) {\n if (elem) {\n const isBorderBox = isBorderBoxFn(elem);\n if (isBorderBox) {\n val += getPBMWidth(elem, ['padding', 'border'], which);\n }\n return css(elem, name, val);\n }\n return undefined;\n }\n return elem && getWHIgnoreDisplay(elem, name, CONTENT_INDEX);\n };\n});\n\nfunction mix(to, from) {\n for (const i in from) {\n if (from.hasOwnProperty(i)) {\n to[i] = from[i];\n }\n }\n return to;\n}\n\nconst utils = {\n getWindow(node) {\n if (node && node.document && node.setTimeout) {\n return node;\n }\n const doc = node.ownerDocument || node;\n return doc.defaultView || doc.parentWindow;\n },\n getDocument,\n offset(el, value, option) {\n if (typeof value !== 'undefined') {\n setOffset(el, value, option || {});\n } else {\n return getOffset(el);\n }\n },\n isWindow,\n each,\n css,\n clone(obj) {\n let i;\n const ret = {};\n for (i in obj) {\n if (obj.hasOwnProperty(i)) {\n ret[i] = obj[i];\n }\n }\n const overflow = obj.overflow;\n if (overflow) {\n for (i in obj) {\n if (obj.hasOwnProperty(i)) {\n ret.overflow[i] = obj.overflow[i];\n }\n }\n }\n return ret;\n },\n mix,\n getWindowScrollLeft(w) {\n return getScrollLeft(w);\n },\n getWindowScrollTop(w) {\n return getScrollTop(w);\n },\n merge(...args) {\n const ret = {};\n for (let i = 0; i < args.length; i++) {\n utils.mix(ret, args[i]);\n }\n return ret;\n },\n viewportWidth: 0,\n viewportHeight: 0,\n};\n\nmix(utils, domUtils);\n\nexport default utils;\n","import utils from './utils';\n\n/**\n * 得到会导致元素显示不全的祖先元素\n */\nconst { getParent } = utils;\n\nfunction getOffsetParent(element) {\n if (utils.isWindow(element) || element.nodeType === 9) {\n return null;\n }\n // ie 这个也不是完全可行\n /*\n
\n
\n 元素 6 高 100px 宽 50px
\n
\n
\n */\n // element.offsetParent does the right thing in ie7 and below. Return parent with layout!\n // In other browsers it only includes elements with position absolute, relative or\n // fixed, not elements with overflow set to auto or scroll.\n // if (UA.ie && ieMode < 8) {\n // return element.offsetParent;\n // }\n // 统一的 offsetParent 方法\n const doc = utils.getDocument(element);\n const body = doc.body;\n let parent;\n let positionStyle = utils.css(element, 'position');\n const skipStatic = positionStyle === 'fixed' || positionStyle === 'absolute';\n\n if (!skipStatic) {\n return element.nodeName.toLowerCase() === 'html'\n ? null\n : getParent(element);\n }\n\n for (\n parent = getParent(element);\n parent && parent !== body && parent.nodeType !== 9;\n parent = getParent(parent)\n ) {\n positionStyle = utils.css(parent, 'position');\n if (positionStyle !== 'static') {\n return parent;\n }\n }\n return null;\n}\n\nexport default getOffsetParent;\n","import utils from './utils';\n\nconst { getParent } = utils;\n\nexport default function isAncestorFixed(element) {\n if (utils.isWindow(element) || element.nodeType === 9) {\n return false;\n }\n\n const doc = utils.getDocument(element);\n const body = doc.body;\n let parent = null;\n for (\n parent = getParent(element);\n // 修复元素位于 document.documentElement 下导致崩溃问题\n parent && parent !== body && parent !== doc;\n parent = getParent(parent)\n ) {\n const positionStyle = utils.css(parent, 'position');\n if (positionStyle === 'fixed') {\n return true;\n }\n }\n return false;\n}\n","import utils from './utils';\nimport getOffsetParent from './getOffsetParent';\nimport isAncestorFixed from './isAncestorFixed';\n\n/**\n * 获得元素的显示部分的区域\n */\nfunction getVisibleRectForElement(element, alwaysByViewport) {\n const visibleRect = {\n left: 0,\n right: Infinity,\n top: 0,\n bottom: Infinity,\n };\n let el = getOffsetParent(element);\n const doc = utils.getDocument(element);\n const win = doc.defaultView || doc.parentWindow;\n const body = doc.body;\n const documentElement = doc.documentElement;\n\n // Determine the size of the visible rect by climbing the dom accounting for\n // all scrollable containers.\n while (el) {\n // clientWidth is zero for inline block elements in ie.\n if (\n (navigator.userAgent.indexOf('MSIE') === -1 || el.clientWidth !== 0) &&\n // body may have overflow set on it, yet we still get the entire\n // viewport. In some browsers, el.offsetParent may be\n // document.documentElement, so check for that too.\n (el !== body &&\n el !== documentElement &&\n utils.css(el, 'overflow') !== 'visible')\n ) {\n const pos = utils.offset(el);\n // add border\n pos.left += el.clientLeft;\n pos.top += el.clientTop;\n visibleRect.top = Math.max(visibleRect.top, pos.top);\n visibleRect.right = Math.min(\n visibleRect.right,\n // consider area without scrollBar\n pos.left + el.clientWidth,\n );\n visibleRect.bottom = Math.min(\n visibleRect.bottom,\n pos.top + el.clientHeight,\n );\n visibleRect.left = Math.max(visibleRect.left, pos.left);\n } else if (el === body || el === documentElement) {\n break;\n }\n el = getOffsetParent(el);\n }\n\n // Set element position to fixed\n // make sure absolute element itself don't affect it's visible area\n // https://github.com/ant-design/ant-design/issues/7601\n let originalPosition = null;\n if (!utils.isWindow(element) && element.nodeType !== 9) {\n originalPosition = element.style.position;\n const position = utils.css(element, 'position');\n if (position === 'absolute') {\n element.style.position = 'fixed';\n }\n }\n\n const scrollX = utils.getWindowScrollLeft(win);\n const scrollY = utils.getWindowScrollTop(win);\n const viewportWidth = utils.viewportWidth(win);\n const viewportHeight = utils.viewportHeight(win);\n let documentWidth = documentElement.scrollWidth;\n let documentHeight = documentElement.scrollHeight;\n\n // scrollXXX on html is sync with body which means overflow: hidden on body gets wrong scrollXXX.\n // We should cut this ourself.\n const bodyStyle = window.getComputedStyle(body);\n if (bodyStyle.overflowX === 'hidden') {\n documentWidth = win.innerWidth;\n }\n if (bodyStyle.overflowY === 'hidden') {\n documentHeight = win.innerHeight;\n }\n\n // Reset element position after calculate the visible area\n if (element.style) {\n element.style.position = originalPosition;\n }\n\n if (alwaysByViewport || isAncestorFixed(element)) {\n // Clip by viewport's size.\n visibleRect.left = Math.max(visibleRect.left, scrollX);\n visibleRect.top = Math.max(visibleRect.top, scrollY);\n visibleRect.right = Math.min(visibleRect.right, scrollX + viewportWidth);\n visibleRect.bottom = Math.min(visibleRect.bottom, scrollY + viewportHeight);\n } else {\n // Clip by document's size.\n const maxVisibleWidth = Math.max(documentWidth, scrollX + viewportWidth);\n visibleRect.right = Math.min(visibleRect.right, maxVisibleWidth);\n\n const maxVisibleHeight = Math.max(documentHeight, scrollY + viewportHeight);\n visibleRect.bottom = Math.min(visibleRect.bottom, maxVisibleHeight);\n }\n\n return visibleRect.top >= 0 &&\n visibleRect.left >= 0 &&\n visibleRect.bottom > visibleRect.top &&\n visibleRect.right > visibleRect.left\n ? visibleRect\n : null;\n}\n\nexport default getVisibleRectForElement;\n","import utils from './utils';\n\nfunction getRegion(node) {\n let offset;\n let w;\n let h;\n if (!utils.isWindow(node) && node.nodeType !== 9) {\n offset = utils.offset(node);\n w = utils.outerWidth(node);\n h = utils.outerHeight(node);\n } else {\n const win = utils.getWindow(node);\n offset = {\n left: utils.getWindowScrollLeft(win),\n top: utils.getWindowScrollTop(win),\n };\n w = utils.viewportWidth(win);\n h = utils.viewportHeight(win);\n }\n offset.width = w;\n offset.height = h;\n return offset;\n}\n\nexport default getRegion;\n","/**\n * 获取 node 上的 align 对齐点 相对于页面的坐标\n */\n\nfunction getAlignOffset(region, align) {\n const V = align.charAt(0);\n const H = align.charAt(1);\n const w = region.width;\n const h = region.height;\n\n let x = region.left;\n let y = region.top;\n\n if (V === 'c') {\n y += h / 2;\n } else if (V === 'b') {\n y += h;\n }\n\n if (H === 'c') {\n x += w / 2;\n } else if (H === 'r') {\n x += w;\n }\n\n return {\n left: x,\n top: y,\n };\n}\n\nexport default getAlignOffset;\n","import getAlignOffset from './getAlignOffset';\n\nfunction getElFuturePos(elRegion, refNodeRegion, points, offset, targetOffset) {\n const p1 = getAlignOffset(refNodeRegion, points[1]);\n const p2 = getAlignOffset(elRegion, points[0]);\n const diff = [p2.left - p1.left, p2.top - p1.top];\n\n return {\n left: Math.round(elRegion.left - diff[0] + offset[0] - targetOffset[0]),\n top: Math.round(elRegion.top - diff[1] + offset[1] - targetOffset[1]),\n };\n}\n\nexport default getElFuturePos;\n","/**\n * align dom node flexibly\n * @author yiminghe@gmail.com\n */\n\nimport utils from '../utils';\nimport getVisibleRectForElement from '../getVisibleRectForElement';\nimport adjustForViewport from '../adjustForViewport';\nimport getRegion from '../getRegion';\nimport getElFuturePos from '../getElFuturePos';\n\n// http://yiminghe.iteye.com/blog/1124720\n\nfunction isFailX(elFuturePos, elRegion, visibleRect) {\n return (\n elFuturePos.left < visibleRect.left ||\n elFuturePos.left + elRegion.width > visibleRect.right\n );\n}\n\nfunction isFailY(elFuturePos, elRegion, visibleRect) {\n return (\n elFuturePos.top < visibleRect.top ||\n elFuturePos.top + elRegion.height > visibleRect.bottom\n );\n}\n\nfunction isCompleteFailX(elFuturePos, elRegion, visibleRect) {\n return (\n elFuturePos.left > visibleRect.right ||\n elFuturePos.left + elRegion.width < visibleRect.left\n );\n}\n\nfunction isCompleteFailY(elFuturePos, elRegion, visibleRect) {\n return (\n elFuturePos.top > visibleRect.bottom ||\n elFuturePos.top + elRegion.height < visibleRect.top\n );\n}\n\nfunction flip(points, reg, map) {\n const ret = [];\n utils.each(points, p => {\n ret.push(\n p.replace(reg, m => {\n return map[m];\n }),\n );\n });\n return ret;\n}\n\nfunction flipOffset(offset, index) {\n offset[index] = -offset[index];\n return offset;\n}\n\nfunction convertOffset(str, offsetLen) {\n let n;\n if (/%$/.test(str)) {\n n = (parseInt(str.substring(0, str.length - 1), 10) / 100) * offsetLen;\n } else {\n n = parseInt(str, 10);\n }\n return n || 0;\n}\n\nfunction normalizeOffset(offset, el) {\n offset[0] = convertOffset(offset[0], el.width);\n offset[1] = convertOffset(offset[1], el.height);\n}\n\n/**\n * @param el\n * @param tgtRegion 参照节点所占的区域: { left, top, width, height }\n * @param align\n */\nfunction doAlign(el, tgtRegion, align, isTgtRegionVisible) {\n let points = align.points;\n let offset = align.offset || [0, 0];\n let targetOffset = align.targetOffset || [0, 0];\n let overflow = align.overflow;\n const source = align.source || el;\n offset = [].concat(offset);\n targetOffset = [].concat(targetOffset);\n overflow = overflow || {};\n const newOverflowCfg = {};\n let fail = 0;\n const alwaysByViewport = !!(overflow && overflow.alwaysByViewport);\n // 当前节点可以被放置的显示区域\n const visibleRect = getVisibleRectForElement(source, alwaysByViewport);\n // 当前节点所占的区域, left/top/width/height\n const elRegion = getRegion(source);\n // 将 offset 转换成数值,支持百分比\n normalizeOffset(offset, elRegion);\n normalizeOffset(targetOffset, tgtRegion);\n // 当前节点将要被放置的位置\n let elFuturePos = getElFuturePos(\n elRegion,\n tgtRegion,\n points,\n offset,\n targetOffset,\n );\n // 当前节点将要所处的区域\n let newElRegion = utils.merge(elRegion, elFuturePos);\n\n // 如果可视区域不能完全放置当前节点时允许调整\n if (\n visibleRect &&\n (overflow.adjustX || overflow.adjustY) &&\n isTgtRegionVisible\n ) {\n if (overflow.adjustX) {\n // 如果横向不能放下\n if (isFailX(elFuturePos, elRegion, visibleRect)) {\n // 对齐位置反下\n const newPoints = flip(points, /[lr]/gi, {\n l: 'r',\n r: 'l',\n });\n // 偏移量也反下\n const newOffset = flipOffset(offset, 0);\n const newTargetOffset = flipOffset(targetOffset, 0);\n const newElFuturePos = getElFuturePos(\n elRegion,\n tgtRegion,\n newPoints,\n newOffset,\n newTargetOffset,\n );\n\n if (!isCompleteFailX(newElFuturePos, elRegion, visibleRect)) {\n fail = 1;\n points = newPoints;\n offset = newOffset;\n targetOffset = newTargetOffset;\n }\n }\n }\n\n if (overflow.adjustY) {\n // 如果纵向不能放下\n if (isFailY(elFuturePos, elRegion, visibleRect)) {\n // 对齐位置反下\n const newPoints = flip(points, /[tb]/gi, {\n t: 'b',\n b: 't',\n });\n // 偏移量也反下\n const newOffset = flipOffset(offset, 1);\n const newTargetOffset = flipOffset(targetOffset, 1);\n const newElFuturePos = getElFuturePos(\n elRegion,\n tgtRegion,\n newPoints,\n newOffset,\n newTargetOffset,\n );\n\n if (!isCompleteFailY(newElFuturePos, elRegion, visibleRect)) {\n fail = 1;\n points = newPoints;\n offset = newOffset;\n targetOffset = newTargetOffset;\n }\n }\n }\n\n // 如果失败,重新计算当前节点将要被放置的位置\n if (fail) {\n elFuturePos = getElFuturePos(\n elRegion,\n tgtRegion,\n points,\n offset,\n targetOffset,\n );\n utils.mix(newElRegion, elFuturePos);\n }\n const isStillFailX = isFailX(elFuturePos, elRegion, visibleRect);\n const isStillFailY = isFailY(elFuturePos, elRegion, visibleRect);\n // 检查反下后的位置是否可以放下了,如果仍然放不下:\n // 1. 复原修改过的定位参数\n if (isStillFailX || isStillFailY) {\n let newPoints = points;\n\n // 重置对应部分的翻转逻辑\n if (isStillFailX) {\n newPoints = flip(points, /[lr]/gi, {\n l: 'r',\n r: 'l',\n });\n }\n if (isStillFailY) {\n newPoints = flip(points, /[tb]/gi, {\n t: 'b',\n b: 't',\n });\n }\n\n points = newPoints;\n\n offset = align.offset || [0, 0];\n targetOffset = align.targetOffset || [0, 0];\n }\n // 2. 只有指定了可以调整当前方向才调整\n newOverflowCfg.adjustX = overflow.adjustX && isStillFailX;\n newOverflowCfg.adjustY = overflow.adjustY && isStillFailY;\n\n // 确实要调整,甚至可能会调整高度宽度\n if (newOverflowCfg.adjustX || newOverflowCfg.adjustY) {\n newElRegion = adjustForViewport(\n elFuturePos,\n elRegion,\n visibleRect,\n newOverflowCfg,\n );\n }\n }\n\n // need judge to in case set fixed with in css on height auto element\n if (newElRegion.width !== elRegion.width) {\n utils.css(\n source,\n 'width',\n utils.width(source) + newElRegion.width - elRegion.width,\n );\n }\n\n if (newElRegion.height !== elRegion.height) {\n utils.css(\n source,\n 'height',\n utils.height(source) + newElRegion.height - elRegion.height,\n );\n }\n\n // https://github.com/kissyteam/kissy/issues/190\n // 相对于屏幕位置没变,而 left/top 变了\n // 例如
\n utils.offset(\n source,\n {\n left: newElRegion.left,\n top: newElRegion.top,\n },\n {\n useCssRight: align.useCssRight,\n useCssBottom: align.useCssBottom,\n useCssTransform: align.useCssTransform,\n ignoreShake: align.ignoreShake,\n },\n );\n\n return {\n points,\n offset,\n targetOffset,\n overflow: newOverflowCfg,\n };\n}\n\nexport default doAlign;\n/**\n * 2012-04-26 yiminghe@gmail.com\n * - 优化智能对齐算法\n * - 慎用 resizeXX\n *\n * 2011-07-13 yiminghe@gmail.com note:\n * - 增加智能对齐,以及大小调整选项\n **/\n","import utils from './utils';\n\nfunction adjustForViewport(elFuturePos, elRegion, visibleRect, overflow) {\n const pos = utils.clone(elFuturePos);\n const size = {\n width: elRegion.width,\n height: elRegion.height,\n };\n\n if (overflow.adjustX && pos.left < visibleRect.left) {\n pos.left = visibleRect.left;\n }\n\n // Left edge inside and right edge outside viewport, try to resize it.\n if (\n overflow.resizeWidth &&\n pos.left >= visibleRect.left &&\n pos.left + size.width > visibleRect.right\n ) {\n size.width -= pos.left + size.width - visibleRect.right;\n }\n\n // Right edge outside viewport, try to move it.\n if (overflow.adjustX && pos.left + size.width > visibleRect.right) {\n // 保证左边界和可视区域左边界对齐\n pos.left = Math.max(visibleRect.right - size.width, visibleRect.left);\n }\n\n // Top edge outside viewport, try to move it.\n if (overflow.adjustY && pos.top < visibleRect.top) {\n pos.top = visibleRect.top;\n }\n\n // Top edge inside and bottom edge outside viewport, try to resize it.\n if (\n overflow.resizeHeight &&\n pos.top >= visibleRect.top &&\n pos.top + size.height > visibleRect.bottom\n ) {\n size.height -= pos.top + size.height - visibleRect.bottom;\n }\n\n // Bottom edge outside viewport, try to move it.\n if (overflow.adjustY && pos.top + size.height > visibleRect.bottom) {\n // 保证上边界和可视区域上边界对齐\n pos.top = Math.max(visibleRect.bottom - size.height, visibleRect.top);\n }\n\n return utils.mix(pos, size);\n}\n\nexport default adjustForViewport;\n","import doAlign from './align';\nimport getOffsetParent from '../getOffsetParent';\nimport getVisibleRectForElement from '../getVisibleRectForElement';\nimport getRegion from '../getRegion';\n\nfunction isOutOfVisibleRect(target, alwaysByViewport) {\n const visibleRect = getVisibleRectForElement(target, alwaysByViewport);\n const targetRegion = getRegion(target);\n\n return (\n !visibleRect ||\n targetRegion.left + targetRegion.width <= visibleRect.left ||\n targetRegion.top + targetRegion.height <= visibleRect.top ||\n targetRegion.left >= visibleRect.right ||\n targetRegion.top >= visibleRect.bottom\n );\n}\n\nfunction alignElement(el, refNode, align) {\n const target = align.target || refNode;\n const refNodeRegion = getRegion(target);\n\n const isTargetNotOutOfVisible = !isOutOfVisibleRect(\n target,\n align.overflow && align.overflow.alwaysByViewport,\n );\n\n return doAlign(el, refNodeRegion, align, isTargetNotOutOfVisible);\n}\n\nalignElement.__getOffsetParent = getOffsetParent;\n\nalignElement.__getVisibleRectForElement = getVisibleRectForElement;\n\nexport default alignElement;\n","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport ResizeObserver from 'resize-observer-polyfill';\nimport contains from \"rc-util/es/Dom/contains\";\nexport function isSamePoint(prev, next) {\n if (prev === next) return true;\n if (!prev || !next) return false;\n\n if ('pageX' in next && 'pageY' in next) {\n return prev.pageX === next.pageX && prev.pageY === next.pageY;\n }\n\n if ('clientX' in next && 'clientY' in next) {\n return prev.clientX === next.clientX && prev.clientY === next.clientY;\n }\n\n return false;\n}\nexport function restoreFocus(activeElement, container) {\n // Focus back if is in the container\n if (activeElement !== document.activeElement && contains(container, activeElement) && typeof activeElement.focus === 'function') {\n activeElement.focus();\n }\n}\nexport function monitorResize(element, callback) {\n var prevWidth = null;\n var prevHeight = null;\n\n function onResize(_ref) {\n var _ref2 = _slicedToArray(_ref, 1),\n target = _ref2[0].target;\n\n if (!document.documentElement.contains(target)) return;\n\n var _target$getBoundingCl = target.getBoundingClientRect(),\n width = _target$getBoundingCl.width,\n height = _target$getBoundingCl.height;\n\n var fixedWidth = Math.floor(width);\n var fixedHeight = Math.floor(height);\n\n if (prevWidth !== fixedWidth || prevHeight !== fixedHeight) {\n // https://webkit.org/blog/9997/resizeobserver-in-webkit/\n Promise.resolve().then(function () {\n callback({\n width: fixedWidth,\n height: fixedHeight\n });\n });\n }\n\n prevWidth = fixedWidth;\n prevHeight = fixedHeight;\n }\n\n var resizeObserver = new ResizeObserver(onResize);\n\n if (element) {\n resizeObserver.observe(element);\n }\n\n return function () {\n resizeObserver.disconnect();\n };\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\n\n/**\n * Removed props:\n * - childrenProps\n */\nimport { alignElement, alignPoint } from 'dom-align';\nimport isEqual from \"rc-util/es/isEqual\";\nimport addEventListener from \"rc-util/es/Dom/addEventListener\";\nimport isVisible from \"rc-util/es/Dom/isVisible\";\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport { composeRef } from \"rc-util/es/ref\";\nimport React from 'react';\nimport useBuffer from \"./hooks/useBuffer\";\nimport { isSamePoint, monitorResize, restoreFocus } from \"./util\";\n\nfunction getElement(func) {\n if (typeof func !== 'function') return null;\n return func();\n}\n\nfunction getPoint(point) {\n if (_typeof(point) !== 'object' || !point) return null;\n return point;\n}\n\nvar Align = function Align(_ref, ref) {\n var children = _ref.children,\n disabled = _ref.disabled,\n target = _ref.target,\n align = _ref.align,\n onAlign = _ref.onAlign,\n monitorWindowResize = _ref.monitorWindowResize,\n _ref$monitorBufferTim = _ref.monitorBufferTime,\n monitorBufferTime = _ref$monitorBufferTim === void 0 ? 0 : _ref$monitorBufferTim;\n var cacheRef = React.useRef({});\n /** Popup node ref */\n\n var nodeRef = React.useRef();\n var childNode = React.Children.only(children); // ===================== Align ======================\n // We save the props here to avoid closure makes props ood\n\n var forceAlignPropsRef = React.useRef({});\n forceAlignPropsRef.current.disabled = disabled;\n forceAlignPropsRef.current.target = target;\n forceAlignPropsRef.current.align = align;\n forceAlignPropsRef.current.onAlign = onAlign;\n\n var _useBuffer = useBuffer(function () {\n var _forceAlignPropsRef$c = forceAlignPropsRef.current,\n latestDisabled = _forceAlignPropsRef$c.disabled,\n latestTarget = _forceAlignPropsRef$c.target,\n latestAlign = _forceAlignPropsRef$c.align,\n latestOnAlign = _forceAlignPropsRef$c.onAlign;\n var source = nodeRef.current;\n\n if (!latestDisabled && latestTarget && source) {\n var _result;\n\n var _element = getElement(latestTarget);\n\n var _point = getPoint(latestTarget);\n\n cacheRef.current.element = _element;\n cacheRef.current.point = _point;\n cacheRef.current.align = latestAlign; // IE lose focus after element realign\n // We should record activeElement and restore later\n\n var _document = document,\n activeElement = _document.activeElement; // We only align when element is visible\n\n if (_element && isVisible(_element)) {\n _result = alignElement(source, _element, latestAlign);\n } else if (_point) {\n _result = alignPoint(source, _point, latestAlign);\n }\n\n restoreFocus(activeElement, source);\n\n if (latestOnAlign && _result) {\n latestOnAlign(source, _result);\n }\n\n return true;\n }\n\n return false;\n }, monitorBufferTime),\n _useBuffer2 = _slicedToArray(_useBuffer, 2),\n _forceAlign = _useBuffer2[0],\n cancelForceAlign = _useBuffer2[1]; // ===================== Effect =====================\n // Handle props change\n\n\n var _React$useState = React.useState(),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n element = _React$useState2[0],\n setElement = _React$useState2[1];\n\n var _React$useState3 = React.useState(),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n point = _React$useState4[0],\n setPoint = _React$useState4[1];\n\n useLayoutEffect(function () {\n setElement(getElement(target));\n setPoint(getPoint(target));\n });\n React.useEffect(function () {\n if (cacheRef.current.element !== element || !isSamePoint(cacheRef.current.point, point) || !isEqual(cacheRef.current.align, align)) {\n _forceAlign();\n }\n }); // Watch popup element resize\n\n React.useEffect(function () {\n var cancelFn = monitorResize(nodeRef.current, _forceAlign);\n return cancelFn;\n }, [nodeRef.current]); // Watch target element resize\n\n React.useEffect(function () {\n var cancelFn = monitorResize(element, _forceAlign);\n return cancelFn;\n }, [element]); // Listen for disabled change\n\n React.useEffect(function () {\n if (!disabled) {\n _forceAlign();\n } else {\n cancelForceAlign();\n }\n }, [disabled]); // Listen for window resize\n\n React.useEffect(function () {\n if (monitorWindowResize) {\n var cancelFn = addEventListener(window, 'resize', _forceAlign);\n return cancelFn.remove;\n }\n }, [monitorWindowResize]); // Clear all if unmount\n\n React.useEffect(function () {\n return function () {\n cancelForceAlign();\n };\n }, []); // ====================== Ref =======================\n\n React.useImperativeHandle(ref, function () {\n return {\n forceAlign: function forceAlign() {\n return _forceAlign(true);\n }\n };\n }); // ===================== Render =====================\n\n if ( /*#__PURE__*/React.isValidElement(childNode)) {\n childNode = /*#__PURE__*/React.cloneElement(childNode, {\n ref: composeRef(childNode.ref, nodeRef)\n });\n }\n\n return childNode;\n};\n\nvar RcAlign = /*#__PURE__*/React.forwardRef(Align);\nRcAlign.displayName = 'Align';\nexport default RcAlign;","import React from 'react';\nexport default (function (callback, buffer) {\n var calledRef = React.useRef(false);\n var timeoutRef = React.useRef(null);\n\n function cancelTrigger() {\n window.clearTimeout(timeoutRef.current);\n }\n\n function trigger(force) {\n cancelTrigger();\n\n if (!calledRef.current || force === true) {\n if (callback(force) === false) {\n // Not delay since callback cancelled self\n return;\n }\n\n calledRef.current = true;\n timeoutRef.current = window.setTimeout(function () {\n calledRef.current = false;\n }, buffer);\n } else {\n timeoutRef.current = window.setTimeout(function () {\n calledRef.current = false;\n trigger();\n }, buffer);\n }\n }\n\n return [trigger, function () {\n calledRef.current = false;\n cancelTrigger();\n }];\n});","import utils from '../utils';\nimport doAlign from './align';\n\n/**\n * `tgtPoint`: { pageX, pageY } or { clientX, clientY }.\n * If client position provided, will internal convert to page position.\n */\n\nfunction alignPoint(el, tgtPoint, align) {\n let pageX;\n let pageY;\n\n const doc = utils.getDocument(el);\n const win = doc.defaultView || doc.parentWindow;\n\n const scrollX = utils.getWindowScrollLeft(win);\n const scrollY = utils.getWindowScrollTop(win);\n const viewportWidth = utils.viewportWidth(win);\n const viewportHeight = utils.viewportHeight(win);\n\n if ('pageX' in tgtPoint) {\n pageX = tgtPoint.pageX;\n } else {\n pageX = scrollX + tgtPoint.clientX;\n }\n\n if ('pageY' in tgtPoint) {\n pageY = tgtPoint.pageY;\n } else {\n pageY = scrollY + tgtPoint.clientY;\n }\n\n const tgtRegion = {\n left: pageX,\n top: pageY,\n width: 0,\n height: 0,\n };\n\n const pointInView =\n pageX >= 0 &&\n pageX <= scrollX + viewportWidth &&\n (pageY >= 0 && pageY <= scrollY + viewportHeight);\n\n // Provide default target point\n const points = [align.points[0], 'cc'];\n\n return doAlign(el, tgtRegion, { ...align, points }, pointInView);\n}\n\nexport default alignPoint;\n","// export this package's api\nimport Align from \"./Align\";\nexport default Align;","import _regeneratorRuntime from \"@babel/runtime/helpers/esm/regeneratorRuntime\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/esm/asyncToGenerator\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport { useEffect, useRef } from 'react';\nimport raf from \"rc-util/es/raf\";\nimport useState from \"rc-util/es/hooks/useState\";\n/**\n * Popup should follow the steps for each component work correctly:\n * measure - check for the current stretch size\n * align - let component align the position\n * aligned - re-align again in case additional className changed the size\n * afterAlign - choice next step is trigger motion or finished\n * beforeMotion - should reset motion to invisible so that CSSMotion can do normal motion\n * motion - play the motion\n * stable - everything is done\n */\n\nvar StatusQueue = ['measure', 'alignPre', 'align', null, 'motion'];\nexport default (function (visible, doMeasure) {\n var _useState = useState(null),\n _useState2 = _slicedToArray(_useState, 2),\n status = _useState2[0],\n setInternalStatus = _useState2[1];\n\n var rafRef = useRef();\n\n function setStatus(nextStatus) {\n setInternalStatus(nextStatus, true);\n }\n\n function cancelRaf() {\n raf.cancel(rafRef.current);\n }\n\n function goNextStatus(callback) {\n cancelRaf();\n rafRef.current = raf(function () {\n // Only align should be manually trigger\n setStatus(function (prev) {\n switch (status) {\n case 'align':\n return 'motion';\n\n case 'motion':\n return 'stable';\n\n default:\n }\n\n return prev;\n });\n callback === null || callback === void 0 ? void 0 : callback();\n });\n } // Init status\n\n\n useEffect(function () {\n setStatus('measure');\n }, [visible]); // Go next status\n\n useEffect(function () {\n switch (status) {\n case 'measure':\n doMeasure();\n break;\n\n default:\n }\n\n if (status) {\n rafRef.current = raf( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {\n var index, nextStatus;\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n index = StatusQueue.indexOf(status);\n nextStatus = StatusQueue[index + 1];\n\n if (nextStatus && index !== -1) {\n setStatus(nextStatus);\n }\n\n case 3:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n })));\n }\n }, [status]);\n useEffect(function () {\n return function () {\n cancelRaf();\n };\n }, []);\n return [status, goNextStatus];\n});","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { useRef, useState } from 'react';\nimport Align from 'rc-align';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport CSSMotion from 'rc-motion';\nimport classNames from 'classnames';\nimport useVisibleStatus from \"./useVisibleStatus\";\nimport { getMotion } from \"../utils/legacyUtil\";\nimport useStretchStyle from \"./useStretchStyle\";\nvar PopupInner = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var visible = props.visible,\n prefixCls = props.prefixCls,\n className = props.className,\n style = props.style,\n children = props.children,\n zIndex = props.zIndex,\n stretch = props.stretch,\n destroyPopupOnHide = props.destroyPopupOnHide,\n forceRender = props.forceRender,\n align = props.align,\n point = props.point,\n getRootDomNode = props.getRootDomNode,\n getClassNameFromAlign = props.getClassNameFromAlign,\n onAlign = props.onAlign,\n onMouseEnter = props.onMouseEnter,\n onMouseLeave = props.onMouseLeave,\n onMouseDown = props.onMouseDown,\n onTouchStart = props.onTouchStart,\n onClick = props.onClick;\n var alignRef = useRef();\n var elementRef = useRef();\n\n var _useState = useState(),\n _useState2 = _slicedToArray(_useState, 2),\n alignedClassName = _useState2[0],\n setAlignedClassName = _useState2[1]; // ======================= Measure ========================\n\n\n var _useStretchStyle = useStretchStyle(stretch),\n _useStretchStyle2 = _slicedToArray(_useStretchStyle, 2),\n stretchStyle = _useStretchStyle2[0],\n measureStretchStyle = _useStretchStyle2[1];\n\n function doMeasure() {\n if (stretch) {\n measureStretchStyle(getRootDomNode());\n }\n } // ======================== Status ========================\n\n\n var _useVisibleStatus = useVisibleStatus(visible, doMeasure),\n _useVisibleStatus2 = _slicedToArray(_useVisibleStatus, 2),\n status = _useVisibleStatus2[0],\n goNextStatus = _useVisibleStatus2[1]; // ======================== Aligns ========================\n\n /**\n * `alignedClassName` may modify `source` size,\n * which means one time align may not move to the correct position at once.\n *\n * We will reset `alignTimes` for each status switch to `alignPre`\n * and let `rc-align` to align for multiple times to ensure get final stable place.\n * Currently we mark `alignTimes < 2` repeat align, it will increase if user report for align issue.\n * \n * Update:\n * In React 18. `rc-align` effect of align may faster than ref called trigger `forceAlign`.\n * We adjust this to `alignTimes < 2`.\n * We need refactor `rc-align` to support mark of `forceAlign` call if this still happen.\n */\n\n\n var _useState3 = useState(0),\n _useState4 = _slicedToArray(_useState3, 2),\n alignTimes = _useState4[0],\n setAlignTimes = _useState4[1];\n\n var prepareResolveRef = useRef();\n useLayoutEffect(function () {\n if (status === 'alignPre') {\n setAlignTimes(0);\n }\n }, [status]); // `target` on `rc-align` can accept as a function to get the bind element or a point.\n // ref: https://www.npmjs.com/package/rc-align\n\n function getAlignTarget() {\n if (point) {\n return point;\n }\n\n return getRootDomNode;\n }\n\n function forceAlign() {\n var _alignRef$current;\n\n (_alignRef$current = alignRef.current) === null || _alignRef$current === void 0 ? void 0 : _alignRef$current.forceAlign();\n }\n\n function onInternalAlign(popupDomNode, matchAlign) {\n var nextAlignedClassName = getClassNameFromAlign(matchAlign);\n\n if (alignedClassName !== nextAlignedClassName) {\n setAlignedClassName(nextAlignedClassName);\n } // We will retry multi times to make sure that the element has been align in the right position.\n\n\n setAlignTimes(function (val) {\n return val + 1;\n });\n\n if (status === 'align') {\n onAlign === null || onAlign === void 0 ? void 0 : onAlign(popupDomNode, matchAlign);\n }\n } // Delay to go to next status\n\n\n useLayoutEffect(function () {\n if (status === 'align') {\n // Repeat until not more align needed\n if (alignTimes < 3) {\n forceAlign();\n } else {\n goNextStatus(function () {\n var _prepareResolveRef$cu;\n\n (_prepareResolveRef$cu = prepareResolveRef.current) === null || _prepareResolveRef$cu === void 0 ? void 0 : _prepareResolveRef$cu.call(prepareResolveRef);\n });\n }\n }\n }, [alignTimes]); // ======================== Motion ========================\n\n var motion = _objectSpread({}, getMotion(props));\n\n ['onAppearEnd', 'onEnterEnd', 'onLeaveEnd'].forEach(function (eventName) {\n var originHandler = motion[eventName];\n\n motion[eventName] = function (element, event) {\n goNextStatus();\n return originHandler === null || originHandler === void 0 ? void 0 : originHandler(element, event);\n };\n });\n\n function onShowPrepare() {\n return new Promise(function (resolve) {\n prepareResolveRef.current = resolve;\n });\n } // Go to stable directly when motion not provided\n\n\n React.useEffect(function () {\n if (!motion.motionName && status === 'motion') {\n goNextStatus();\n }\n }, [motion.motionName, status]); // ========================= Refs =========================\n\n React.useImperativeHandle(ref, function () {\n return {\n forceAlign: forceAlign,\n getElement: function getElement() {\n return elementRef.current;\n }\n };\n }); // ======================== Render ========================\n\n var mergedStyle = _objectSpread(_objectSpread({}, stretchStyle), {}, {\n zIndex: zIndex,\n opacity: status === 'motion' || status === 'stable' || !visible ? undefined : 0,\n // Cannot interact with disappearing elements\n // https://github.com/ant-design/ant-design/issues/35051#issuecomment-1101340714\n pointerEvents: !visible && status !== 'stable' ? 'none' : undefined\n }, style); // Align status\n\n\n var alignDisabled = true;\n\n if (align !== null && align !== void 0 && align.points && (status === 'align' || status === 'stable')) {\n alignDisabled = false;\n }\n\n var childNode = children; // Wrapper when multiple children\n\n if (React.Children.count(children) > 1) {\n childNode = /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-content\")\n }, children);\n }\n\n return /*#__PURE__*/React.createElement(CSSMotion, _extends({\n visible: visible,\n ref: elementRef,\n leavedClassName: \"\".concat(prefixCls, \"-hidden\")\n }, motion, {\n onAppearPrepare: onShowPrepare,\n onEnterPrepare: onShowPrepare,\n removeOnLeave: destroyPopupOnHide,\n forceRender: forceRender\n }), function (_ref, motionRef) {\n var motionClassName = _ref.className,\n motionStyle = _ref.style;\n var mergedClassName = classNames(prefixCls, className, alignedClassName, motionClassName);\n return /*#__PURE__*/React.createElement(Align, {\n target: getAlignTarget(),\n key: \"popup\",\n ref: alignRef,\n monitorWindowResize: true,\n disabled: alignDisabled,\n align: align,\n onAlign: onInternalAlign\n }, /*#__PURE__*/React.createElement(\"div\", {\n ref: motionRef,\n className: mergedClassName,\n onMouseEnter: onMouseEnter,\n onMouseLeave: onMouseLeave,\n onMouseDownCapture: onMouseDown,\n onTouchStartCapture: onTouchStart,\n onClick: onClick,\n style: _objectSpread(_objectSpread({}, motionStyle), mergedStyle)\n }, childNode));\n });\n});\nPopupInner.displayName = 'PopupInner';\nexport default PopupInner;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nexport default (function (stretch) {\n var _React$useState = React.useState({\n width: 0,\n height: 0\n }),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n targetSize = _React$useState2[0],\n setTargetSize = _React$useState2[1];\n\n function measureStretch(element) {\n var tgtWidth = element.offsetWidth,\n tgtHeight = element.offsetHeight;\n\n var _element$getBoundingC = element.getBoundingClientRect(),\n width = _element$getBoundingC.width,\n height = _element$getBoundingC.height; // Rect is more accurate than offset, use if near\n\n\n if (Math.abs(tgtWidth - width) < 1 && Math.abs(tgtHeight - height) < 1) {\n tgtWidth = width;\n tgtHeight = height;\n }\n\n setTargetSize({\n width: tgtWidth,\n height: tgtHeight\n });\n } // Merge stretch style\n\n\n var style = React.useMemo(function () {\n var sizeStyle = {};\n\n if (stretch) {\n var width = targetSize.width,\n height = targetSize.height; // Stretch with target\n\n if (stretch.indexOf('height') !== -1 && height) {\n sizeStyle.height = height;\n } else if (stretch.indexOf('minHeight') !== -1 && height) {\n sizeStyle.minHeight = height;\n }\n\n if (stretch.indexOf('width') !== -1 && width) {\n sizeStyle.width = width;\n } else if (stretch.indexOf('minWidth') !== -1 && width) {\n sizeStyle.minWidth = width;\n }\n }\n\n return sizeStyle;\n }, [stretch, targetSize]);\n return [style, measureStretch];\n});","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nimport CSSMotion from 'rc-motion';\nimport classNames from 'classnames';\nvar MobilePopupInner = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var prefixCls = props.prefixCls,\n visible = props.visible,\n zIndex = props.zIndex,\n children = props.children,\n _props$mobile = props.mobile;\n _props$mobile = _props$mobile === void 0 ? {} : _props$mobile;\n var popupClassName = _props$mobile.popupClassName,\n popupStyle = _props$mobile.popupStyle,\n _props$mobile$popupMo = _props$mobile.popupMotion,\n popupMotion = _props$mobile$popupMo === void 0 ? {} : _props$mobile$popupMo,\n popupRender = _props$mobile.popupRender,\n onClick = props.onClick;\n var elementRef = React.useRef(); // ========================= Refs =========================\n\n React.useImperativeHandle(ref, function () {\n return {\n forceAlign: function forceAlign() {},\n getElement: function getElement() {\n return elementRef.current;\n }\n };\n }); // ======================== Render ========================\n\n var mergedStyle = _objectSpread({\n zIndex: zIndex\n }, popupStyle);\n\n var childNode = children; // Wrapper when multiple children\n\n if (React.Children.count(children) > 1) {\n childNode = /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-content\")\n }, children);\n } // Mobile support additional render\n\n\n if (popupRender) {\n childNode = popupRender(childNode);\n }\n\n return /*#__PURE__*/React.createElement(CSSMotion, _extends({\n visible: visible,\n ref: elementRef,\n removeOnLeave: true\n }, popupMotion), function (_ref, motionRef) {\n var motionClassName = _ref.className,\n motionStyle = _ref.style;\n var mergedClassName = classNames(prefixCls, popupClassName, motionClassName);\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: motionRef,\n className: mergedClassName,\n onClick: onClick,\n style: _objectSpread(_objectSpread({}, motionStyle), mergedStyle)\n }, childNode);\n });\n});\nMobilePopupInner.displayName = 'MobilePopupInner';\nexport default MobilePopupInner;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"visible\", \"mobile\"];\nimport * as React from 'react';\nimport { useState, useEffect } from 'react';\nimport isMobile from \"rc-util/es/isMobile\";\nimport Mask from \"./Mask\";\nimport PopupInner from \"./PopupInner\";\nimport MobilePopupInner from \"./MobilePopupInner\";\nvar Popup = /*#__PURE__*/React.forwardRef(function (_ref, ref) {\n var visible = _ref.visible,\n mobile = _ref.mobile,\n props = _objectWithoutProperties(_ref, _excluded);\n\n var _useState = useState(visible),\n _useState2 = _slicedToArray(_useState, 2),\n innerVisible = _useState2[0],\n serInnerVisible = _useState2[1];\n\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n inMobile = _useState4[0],\n setInMobile = _useState4[1];\n\n var cloneProps = _objectSpread(_objectSpread({}, props), {}, {\n visible: innerVisible\n }); // We check mobile in visible changed here.\n // And this also delay set `innerVisible` to avoid popup component render flash\n\n\n useEffect(function () {\n serInnerVisible(visible);\n\n if (visible && mobile) {\n setInMobile(isMobile());\n }\n }, [visible, mobile]);\n var popupNode = inMobile ? /*#__PURE__*/React.createElement(MobilePopupInner, _extends({}, cloneProps, {\n mobile: mobile,\n ref: ref\n })) : /*#__PURE__*/React.createElement(PopupInner, _extends({}, cloneProps, {\n ref: ref\n })); // We can use fragment directly but this may failed some selector usage. Keep as origin logic\n\n return /*#__PURE__*/React.createElement(\"div\", null, /*#__PURE__*/React.createElement(Mask, cloneProps), popupNode);\n});\nPopup.displayName = 'Popup';\nexport default Popup;","import * as React from 'react';\nvar TriggerContext = /*#__PURE__*/React.createContext(null);\nexport default TriggerContext;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/esm/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport * as React from 'react';\nimport ReactDOM from 'react-dom';\nimport raf from \"rc-util/es/raf\";\nimport contains from \"rc-util/es/Dom/contains\";\nimport findDOMNode from \"rc-util/es/Dom/findDOMNode\";\nimport { composeRef, supportRef } from \"rc-util/es/ref\";\nimport addEventListener from \"rc-util/es/Dom/addEventListener\";\nimport Portal from \"rc-util/es/Portal\";\nimport classNames from 'classnames';\nimport { getAlignFromPlacement, getAlignPopupClassName } from \"./utils/alignUtil\";\nimport Popup from \"./Popup\";\nimport TriggerContext from \"./context\";\n\nfunction noop() {}\n\nfunction returnEmptyString() {\n return '';\n}\n\nfunction returnDocument(element) {\n if (element) {\n return element.ownerDocument;\n }\n\n return window.document;\n}\n\nvar ALL_HANDLERS = ['onClick', 'onMouseDown', 'onTouchStart', 'onMouseEnter', 'onMouseLeave', 'onFocus', 'onBlur', 'onContextMenu'];\n\n/**\n * Internal usage. Do not use in your code since this will be removed.\n */\nexport function generateTrigger(PortalComponent) {\n var Trigger = /*#__PURE__*/function (_React$Component) {\n _inherits(Trigger, _React$Component);\n\n var _super = _createSuper(Trigger);\n\n // ensure `getContainer` will be called only once\n function Trigger(props) {\n var _this;\n\n _classCallCheck(this, Trigger);\n\n _this = _super.call(this, props);\n\n _defineProperty(_assertThisInitialized(_this), \"popupRef\", /*#__PURE__*/React.createRef());\n\n _defineProperty(_assertThisInitialized(_this), \"triggerRef\", /*#__PURE__*/React.createRef());\n\n _defineProperty(_assertThisInitialized(_this), \"portalContainer\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"attachId\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"clickOutsideHandler\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"touchOutsideHandler\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"contextMenuOutsideHandler1\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"contextMenuOutsideHandler2\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"mouseDownTimeout\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"focusTime\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"preClickTime\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"preTouchTime\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"delayTimer\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"hasPopupMouseDown\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"onMouseEnter\", function (e) {\n var mouseEnterDelay = _this.props.mouseEnterDelay;\n\n _this.fireEvents('onMouseEnter', e);\n\n _this.delaySetPopupVisible(true, mouseEnterDelay, mouseEnterDelay ? null : e);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onMouseMove\", function (e) {\n _this.fireEvents('onMouseMove', e);\n\n _this.setPoint(e);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onMouseLeave\", function (e) {\n _this.fireEvents('onMouseLeave', e);\n\n _this.delaySetPopupVisible(false, _this.props.mouseLeaveDelay);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onPopupMouseEnter\", function () {\n _this.clearDelayTimer();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onPopupMouseLeave\", function (e) {\n var _this$popupRef$curren;\n\n // https://github.com/react-component/trigger/pull/13\n // react bug?\n if (e.relatedTarget && !e.relatedTarget.setTimeout && contains((_this$popupRef$curren = _this.popupRef.current) === null || _this$popupRef$curren === void 0 ? void 0 : _this$popupRef$curren.getElement(), e.relatedTarget)) {\n return;\n }\n\n _this.delaySetPopupVisible(false, _this.props.mouseLeaveDelay);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onFocus\", function (e) {\n _this.fireEvents('onFocus', e); // incase focusin and focusout\n\n\n _this.clearDelayTimer();\n\n if (_this.isFocusToShow()) {\n _this.focusTime = Date.now();\n\n _this.delaySetPopupVisible(true, _this.props.focusDelay);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onMouseDown\", function (e) {\n _this.fireEvents('onMouseDown', e);\n\n _this.preClickTime = Date.now();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onTouchStart\", function (e) {\n _this.fireEvents('onTouchStart', e);\n\n _this.preTouchTime = Date.now();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onBlur\", function (e) {\n _this.fireEvents('onBlur', e);\n\n _this.clearDelayTimer();\n\n if (_this.isBlurToHide()) {\n _this.delaySetPopupVisible(false, _this.props.blurDelay);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onContextMenu\", function (e) {\n e.preventDefault();\n\n _this.fireEvents('onContextMenu', e);\n\n _this.setPopupVisible(true, e);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onContextMenuClose\", function () {\n if (_this.isContextMenuToShow()) {\n _this.close();\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onClick\", function (event) {\n _this.fireEvents('onClick', event); // focus will trigger click\n\n\n if (_this.focusTime) {\n var preTime;\n\n if (_this.preClickTime && _this.preTouchTime) {\n preTime = Math.min(_this.preClickTime, _this.preTouchTime);\n } else if (_this.preClickTime) {\n preTime = _this.preClickTime;\n } else if (_this.preTouchTime) {\n preTime = _this.preTouchTime;\n }\n\n if (Math.abs(preTime - _this.focusTime) < 20) {\n return;\n }\n\n _this.focusTime = 0;\n }\n\n _this.preClickTime = 0;\n _this.preTouchTime = 0; // Only prevent default when all the action is click.\n // https://github.com/ant-design/ant-design/issues/17043\n // https://github.com/ant-design/ant-design/issues/17291\n\n if (_this.isClickToShow() && (_this.isClickToHide() || _this.isBlurToHide()) && event && event.preventDefault) {\n event.preventDefault();\n }\n\n var nextVisible = !_this.state.popupVisible;\n\n if (_this.isClickToHide() && !nextVisible || nextVisible && _this.isClickToShow()) {\n _this.setPopupVisible(!_this.state.popupVisible, event);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onPopupMouseDown\", function () {\n _this.hasPopupMouseDown = true;\n clearTimeout(_this.mouseDownTimeout);\n _this.mouseDownTimeout = window.setTimeout(function () {\n _this.hasPopupMouseDown = false;\n }, 0);\n\n if (_this.context) {\n var _this$context;\n\n (_this$context = _this.context).onPopupMouseDown.apply(_this$context, arguments);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onDocumentClick\", function (event) {\n if (_this.props.mask && !_this.props.maskClosable) {\n return;\n }\n\n var target = event.target;\n\n var root = _this.getRootDomNode();\n\n var popupNode = _this.getPopupDomNode();\n\n if ( // mousedown on the target should also close popup when action is contextMenu.\n // https://github.com/ant-design/ant-design/issues/29853\n (!contains(root, target) || _this.isContextMenuOnly()) && !contains(popupNode, target) && !_this.hasPopupMouseDown) {\n _this.close();\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getRootDomNode\", function () {\n var getTriggerDOMNode = _this.props.getTriggerDOMNode;\n\n if (getTriggerDOMNode) {\n return getTriggerDOMNode(_this.triggerRef.current);\n }\n\n try {\n var domNode = findDOMNode(_this.triggerRef.current);\n\n if (domNode) {\n return domNode;\n }\n } catch (err) {// Do nothing\n }\n\n return ReactDOM.findDOMNode(_assertThisInitialized(_this));\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getPopupClassNameFromAlign\", function (align) {\n var className = [];\n var _this$props = _this.props,\n popupPlacement = _this$props.popupPlacement,\n builtinPlacements = _this$props.builtinPlacements,\n prefixCls = _this$props.prefixCls,\n alignPoint = _this$props.alignPoint,\n getPopupClassNameFromAlign = _this$props.getPopupClassNameFromAlign;\n\n if (popupPlacement && builtinPlacements) {\n className.push(getAlignPopupClassName(builtinPlacements, prefixCls, align, alignPoint));\n }\n\n if (getPopupClassNameFromAlign) {\n className.push(getPopupClassNameFromAlign(align));\n }\n\n return className.join(' ');\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getComponent\", function () {\n var _this$props2 = _this.props,\n prefixCls = _this$props2.prefixCls,\n destroyPopupOnHide = _this$props2.destroyPopupOnHide,\n popupClassName = _this$props2.popupClassName,\n onPopupAlign = _this$props2.onPopupAlign,\n popupMotion = _this$props2.popupMotion,\n popupAnimation = _this$props2.popupAnimation,\n popupTransitionName = _this$props2.popupTransitionName,\n popupStyle = _this$props2.popupStyle,\n mask = _this$props2.mask,\n maskAnimation = _this$props2.maskAnimation,\n maskTransitionName = _this$props2.maskTransitionName,\n maskMotion = _this$props2.maskMotion,\n zIndex = _this$props2.zIndex,\n popup = _this$props2.popup,\n stretch = _this$props2.stretch,\n alignPoint = _this$props2.alignPoint,\n mobile = _this$props2.mobile,\n forceRender = _this$props2.forceRender,\n onPopupClick = _this$props2.onPopupClick;\n var _this$state = _this.state,\n popupVisible = _this$state.popupVisible,\n point = _this$state.point;\n\n var align = _this.getPopupAlign();\n\n var mouseProps = {};\n\n if (_this.isMouseEnterToShow()) {\n mouseProps.onMouseEnter = _this.onPopupMouseEnter;\n }\n\n if (_this.isMouseLeaveToHide()) {\n mouseProps.onMouseLeave = _this.onPopupMouseLeave;\n }\n\n mouseProps.onMouseDown = _this.onPopupMouseDown;\n mouseProps.onTouchStart = _this.onPopupMouseDown;\n return /*#__PURE__*/React.createElement(Popup, _extends({\n prefixCls: prefixCls,\n destroyPopupOnHide: destroyPopupOnHide,\n visible: popupVisible,\n point: alignPoint && point,\n className: popupClassName,\n align: align,\n onAlign: onPopupAlign,\n animation: popupAnimation,\n getClassNameFromAlign: _this.getPopupClassNameFromAlign\n }, mouseProps, {\n stretch: stretch,\n getRootDomNode: _this.getRootDomNode,\n style: popupStyle,\n mask: mask,\n zIndex: zIndex,\n transitionName: popupTransitionName,\n maskAnimation: maskAnimation,\n maskTransitionName: maskTransitionName,\n maskMotion: maskMotion,\n ref: _this.popupRef,\n motion: popupMotion,\n mobile: mobile,\n forceRender: forceRender,\n onClick: onPopupClick\n }), typeof popup === 'function' ? popup() : popup);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"attachParent\", function (popupContainer) {\n raf.cancel(_this.attachId);\n var _this$props3 = _this.props,\n getPopupContainer = _this$props3.getPopupContainer,\n getDocument = _this$props3.getDocument;\n\n var domNode = _this.getRootDomNode();\n\n var mountNode;\n\n if (!getPopupContainer) {\n mountNode = getDocument(_this.getRootDomNode()).body;\n } else if (domNode || getPopupContainer.length === 0) {\n // Compatible for legacy getPopupContainer with domNode argument.\n // If no need `domNode` argument, will call directly.\n // https://codesandbox.io/s/eloquent-mclean-ss93m?file=/src/App.js\n mountNode = getPopupContainer(domNode);\n }\n\n if (mountNode) {\n mountNode.appendChild(popupContainer);\n } else {\n // Retry after frame render in case parent not ready\n _this.attachId = raf(function () {\n _this.attachParent(popupContainer);\n });\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getContainer\", function () {\n if (!_this.portalContainer) {\n // In React.StrictMode component will call render multiple time in first mount.\n // When you want to refactor with FC, useRef will also init multiple time and\n // point to different useRef instance which will create multiple element\n // (This multiple render will not trigger effect so you can not clean up this\n // in effect). But this is safe with class component since it always point to same class instance.\n var getDocument = _this.props.getDocument;\n var popupContainer = getDocument(_this.getRootDomNode()).createElement('div'); // Make sure default popup container will never cause scrollbar appearing\n // https://github.com/react-component/trigger/issues/41\n\n popupContainer.style.position = 'absolute';\n popupContainer.style.top = '0';\n popupContainer.style.left = '0';\n popupContainer.style.width = '100%';\n _this.portalContainer = popupContainer;\n }\n\n _this.attachParent(_this.portalContainer);\n\n return _this.portalContainer;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"setPoint\", function (point) {\n var alignPoint = _this.props.alignPoint;\n if (!alignPoint || !point) return;\n\n _this.setState({\n point: {\n pageX: point.pageX,\n pageY: point.pageY\n }\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handlePortalUpdate\", function () {\n if (_this.state.prevPopupVisible !== _this.state.popupVisible) {\n _this.props.afterPopupVisibleChange(_this.state.popupVisible);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"triggerContextValue\", {\n onPopupMouseDown: _this.onPopupMouseDown\n });\n\n var _popupVisible;\n\n if ('popupVisible' in props) {\n _popupVisible = !!props.popupVisible;\n } else {\n _popupVisible = !!props.defaultPopupVisible;\n }\n\n _this.state = {\n prevPopupVisible: _popupVisible,\n popupVisible: _popupVisible\n };\n ALL_HANDLERS.forEach(function (h) {\n _this[\"fire\".concat(h)] = function (e) {\n _this.fireEvents(h, e);\n };\n });\n return _this;\n }\n\n _createClass(Trigger, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.componentDidUpdate();\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate() {\n var props = this.props;\n var state = this.state; // We must listen to `mousedown` or `touchstart`, edge case:\n // https://github.com/ant-design/ant-design/issues/5804\n // https://github.com/react-component/calendar/issues/250\n // https://github.com/react-component/trigger/issues/50\n\n if (state.popupVisible) {\n var currentDocument;\n\n if (!this.clickOutsideHandler && (this.isClickToHide() || this.isContextMenuToShow())) {\n currentDocument = props.getDocument(this.getRootDomNode());\n this.clickOutsideHandler = addEventListener(currentDocument, 'mousedown', this.onDocumentClick);\n } // always hide on mobile\n\n\n if (!this.touchOutsideHandler) {\n currentDocument = currentDocument || props.getDocument(this.getRootDomNode());\n this.touchOutsideHandler = addEventListener(currentDocument, 'touchstart', this.onDocumentClick);\n } // close popup when trigger type contains 'onContextMenu' and document is scrolling.\n\n\n if (!this.contextMenuOutsideHandler1 && this.isContextMenuToShow()) {\n currentDocument = currentDocument || props.getDocument(this.getRootDomNode());\n this.contextMenuOutsideHandler1 = addEventListener(currentDocument, 'scroll', this.onContextMenuClose);\n } // close popup when trigger type contains 'onContextMenu' and window is blur.\n\n\n if (!this.contextMenuOutsideHandler2 && this.isContextMenuToShow()) {\n this.contextMenuOutsideHandler2 = addEventListener(window, 'blur', this.onContextMenuClose);\n }\n\n return;\n }\n\n this.clearOutsideHandler();\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this.clearDelayTimer();\n this.clearOutsideHandler();\n clearTimeout(this.mouseDownTimeout);\n raf.cancel(this.attachId);\n }\n }, {\n key: \"getPopupDomNode\",\n value: function getPopupDomNode() {\n var _this$popupRef$curren2;\n\n // for test\n return ((_this$popupRef$curren2 = this.popupRef.current) === null || _this$popupRef$curren2 === void 0 ? void 0 : _this$popupRef$curren2.getElement()) || null;\n }\n }, {\n key: \"getPopupAlign\",\n value: function getPopupAlign() {\n var props = this.props;\n var popupPlacement = props.popupPlacement,\n popupAlign = props.popupAlign,\n builtinPlacements = props.builtinPlacements;\n\n if (popupPlacement && builtinPlacements) {\n return getAlignFromPlacement(builtinPlacements, popupPlacement, popupAlign);\n }\n\n return popupAlign;\n }\n }, {\n key: \"setPopupVisible\",\n value:\n /**\n * @param popupVisible Show or not the popup element\n * @param event SyntheticEvent, used for `pointAlign`\n */\n function setPopupVisible(popupVisible, event) {\n var alignPoint = this.props.alignPoint;\n var prevPopupVisible = this.state.popupVisible;\n this.clearDelayTimer();\n\n if (prevPopupVisible !== popupVisible) {\n if (!('popupVisible' in this.props)) {\n this.setState({\n popupVisible: popupVisible,\n prevPopupVisible: prevPopupVisible\n });\n }\n\n this.props.onPopupVisibleChange(popupVisible);\n } // Always record the point position since mouseEnterDelay will delay the show\n\n\n if (alignPoint && event && popupVisible) {\n this.setPoint(event);\n }\n }\n }, {\n key: \"delaySetPopupVisible\",\n value: function delaySetPopupVisible(visible, delayS, event) {\n var _this2 = this;\n\n var delay = delayS * 1000;\n this.clearDelayTimer();\n\n if (delay) {\n var point = event ? {\n pageX: event.pageX,\n pageY: event.pageY\n } : null;\n this.delayTimer = window.setTimeout(function () {\n _this2.setPopupVisible(visible, point);\n\n _this2.clearDelayTimer();\n }, delay);\n } else {\n this.setPopupVisible(visible, event);\n }\n }\n }, {\n key: \"clearDelayTimer\",\n value: function clearDelayTimer() {\n if (this.delayTimer) {\n clearTimeout(this.delayTimer);\n this.delayTimer = null;\n }\n }\n }, {\n key: \"clearOutsideHandler\",\n value: function clearOutsideHandler() {\n if (this.clickOutsideHandler) {\n this.clickOutsideHandler.remove();\n this.clickOutsideHandler = null;\n }\n\n if (this.contextMenuOutsideHandler1) {\n this.contextMenuOutsideHandler1.remove();\n this.contextMenuOutsideHandler1 = null;\n }\n\n if (this.contextMenuOutsideHandler2) {\n this.contextMenuOutsideHandler2.remove();\n this.contextMenuOutsideHandler2 = null;\n }\n\n if (this.touchOutsideHandler) {\n this.touchOutsideHandler.remove();\n this.touchOutsideHandler = null;\n }\n }\n }, {\n key: \"createTwoChains\",\n value: function createTwoChains(event) {\n var childPros = this.props.children.props;\n var props = this.props;\n\n if (childPros[event] && props[event]) {\n return this[\"fire\".concat(event)];\n }\n\n return childPros[event] || props[event];\n }\n }, {\n key: \"isClickToShow\",\n value: function isClickToShow() {\n var _this$props4 = this.props,\n action = _this$props4.action,\n showAction = _this$props4.showAction;\n return action.indexOf('click') !== -1 || showAction.indexOf('click') !== -1;\n }\n }, {\n key: \"isContextMenuOnly\",\n value: function isContextMenuOnly() {\n var action = this.props.action;\n return action === 'contextMenu' || action.length === 1 && action[0] === 'contextMenu';\n }\n }, {\n key: \"isContextMenuToShow\",\n value: function isContextMenuToShow() {\n var _this$props5 = this.props,\n action = _this$props5.action,\n showAction = _this$props5.showAction;\n return action.indexOf('contextMenu') !== -1 || showAction.indexOf('contextMenu') !== -1;\n }\n }, {\n key: \"isClickToHide\",\n value: function isClickToHide() {\n var _this$props6 = this.props,\n action = _this$props6.action,\n hideAction = _this$props6.hideAction;\n return action.indexOf('click') !== -1 || hideAction.indexOf('click') !== -1;\n }\n }, {\n key: \"isMouseEnterToShow\",\n value: function isMouseEnterToShow() {\n var _this$props7 = this.props,\n action = _this$props7.action,\n showAction = _this$props7.showAction;\n return action.indexOf('hover') !== -1 || showAction.indexOf('mouseEnter') !== -1;\n }\n }, {\n key: \"isMouseLeaveToHide\",\n value: function isMouseLeaveToHide() {\n var _this$props8 = this.props,\n action = _this$props8.action,\n hideAction = _this$props8.hideAction;\n return action.indexOf('hover') !== -1 || hideAction.indexOf('mouseLeave') !== -1;\n }\n }, {\n key: \"isFocusToShow\",\n value: function isFocusToShow() {\n var _this$props9 = this.props,\n action = _this$props9.action,\n showAction = _this$props9.showAction;\n return action.indexOf('focus') !== -1 || showAction.indexOf('focus') !== -1;\n }\n }, {\n key: \"isBlurToHide\",\n value: function isBlurToHide() {\n var _this$props10 = this.props,\n action = _this$props10.action,\n hideAction = _this$props10.hideAction;\n return action.indexOf('focus') !== -1 || hideAction.indexOf('blur') !== -1;\n }\n }, {\n key: \"forcePopupAlign\",\n value: function forcePopupAlign() {\n if (this.state.popupVisible) {\n var _this$popupRef$curren3;\n\n (_this$popupRef$curren3 = this.popupRef.current) === null || _this$popupRef$curren3 === void 0 ? void 0 : _this$popupRef$curren3.forceAlign();\n }\n }\n }, {\n key: \"fireEvents\",\n value: function fireEvents(type, e) {\n var childCallback = this.props.children.props[type];\n\n if (childCallback) {\n childCallback(e);\n }\n\n var callback = this.props[type];\n\n if (callback) {\n callback(e);\n }\n }\n }, {\n key: \"close\",\n value: function close() {\n this.setPopupVisible(false);\n }\n }, {\n key: \"render\",\n value: function render() {\n var popupVisible = this.state.popupVisible;\n var _this$props11 = this.props,\n children = _this$props11.children,\n forceRender = _this$props11.forceRender,\n alignPoint = _this$props11.alignPoint,\n className = _this$props11.className,\n autoDestroy = _this$props11.autoDestroy;\n var child = React.Children.only(children);\n var newChildProps = {\n key: 'trigger'\n }; // ============================== Visible Handlers ==============================\n // >>> ContextMenu\n\n if (this.isContextMenuToShow()) {\n newChildProps.onContextMenu = this.onContextMenu;\n } else {\n newChildProps.onContextMenu = this.createTwoChains('onContextMenu');\n } // >>> Click\n\n\n if (this.isClickToHide() || this.isClickToShow()) {\n newChildProps.onClick = this.onClick;\n newChildProps.onMouseDown = this.onMouseDown;\n newChildProps.onTouchStart = this.onTouchStart;\n } else {\n newChildProps.onClick = this.createTwoChains('onClick');\n newChildProps.onMouseDown = this.createTwoChains('onMouseDown');\n newChildProps.onTouchStart = this.createTwoChains('onTouchStart');\n } // >>> Hover(enter)\n\n\n if (this.isMouseEnterToShow()) {\n newChildProps.onMouseEnter = this.onMouseEnter; // Point align\n\n if (alignPoint) {\n newChildProps.onMouseMove = this.onMouseMove;\n }\n } else {\n newChildProps.onMouseEnter = this.createTwoChains('onMouseEnter');\n } // >>> Hover(leave)\n\n\n if (this.isMouseLeaveToHide()) {\n newChildProps.onMouseLeave = this.onMouseLeave;\n } else {\n newChildProps.onMouseLeave = this.createTwoChains('onMouseLeave');\n } // >>> Focus\n\n\n if (this.isFocusToShow() || this.isBlurToHide()) {\n newChildProps.onFocus = this.onFocus;\n newChildProps.onBlur = this.onBlur;\n } else {\n newChildProps.onFocus = this.createTwoChains('onFocus');\n newChildProps.onBlur = this.createTwoChains('onBlur');\n } // =================================== Render ===================================\n\n\n var childrenClassName = classNames(child && child.props && child.props.className, className);\n\n if (childrenClassName) {\n newChildProps.className = childrenClassName;\n }\n\n var cloneProps = _objectSpread({}, newChildProps);\n\n if (supportRef(child)) {\n cloneProps.ref = composeRef(this.triggerRef, child.ref);\n }\n\n var trigger = /*#__PURE__*/React.cloneElement(child, cloneProps);\n var portal; // prevent unmounting after it's rendered\n\n if (popupVisible || this.popupRef.current || forceRender) {\n portal = /*#__PURE__*/React.createElement(PortalComponent, {\n key: \"portal\",\n getContainer: this.getContainer,\n didUpdate: this.handlePortalUpdate\n }, this.getComponent());\n }\n\n if (!popupVisible && autoDestroy) {\n portal = null;\n }\n\n return /*#__PURE__*/React.createElement(TriggerContext.Provider, {\n value: this.triggerContextValue\n }, trigger, portal);\n }\n }], [{\n key: \"getDerivedStateFromProps\",\n value: function getDerivedStateFromProps(_ref, prevState) {\n var popupVisible = _ref.popupVisible;\n var newState = {};\n\n if (popupVisible !== undefined && prevState.popupVisible !== popupVisible) {\n newState.popupVisible = popupVisible;\n newState.prevPopupVisible = prevState.popupVisible;\n }\n\n return newState;\n }\n }]);\n\n return Trigger;\n }(React.Component);\n\n _defineProperty(Trigger, \"contextType\", TriggerContext);\n\n _defineProperty(Trigger, \"defaultProps\", {\n prefixCls: 'rc-trigger-popup',\n getPopupClassNameFromAlign: returnEmptyString,\n getDocument: returnDocument,\n onPopupVisibleChange: noop,\n afterPopupVisibleChange: noop,\n onPopupAlign: noop,\n popupClassName: '',\n mouseEnterDelay: 0,\n mouseLeaveDelay: 0.1,\n focusDelay: 0,\n blurDelay: 0.15,\n popupStyle: {},\n destroyPopupOnHide: false,\n popupAlign: {},\n defaultPopupVisible: false,\n mask: false,\n maskClosable: true,\n action: [],\n showAction: [],\n hideAction: [],\n autoDestroy: false\n });\n\n return Trigger;\n}\nexport default generateTrigger(Portal);","import ReactDOM from 'react-dom';\nexport default function addEventListenerWrap(target, eventType, cb, option) {\n /* eslint camelcase: 2 */\n var callback = ReactDOM.unstable_batchedUpdates ? function run(e) {\n ReactDOM.unstable_batchedUpdates(cb, e);\n } : cb;\n if (target !== null && target !== void 0 && target.addEventListener) {\n target.addEventListener(eventType, callback, option);\n }\n return {\n remove: function remove() {\n if (target !== null && target !== void 0 && target.removeEventListener) {\n target.removeEventListener(eventType, callback, option);\n }\n }\n };\n}","export default (function (element) {\n if (!element) {\n return false;\n }\n if (element instanceof Element) {\n if (element.offsetParent) {\n return true;\n }\n if (element.getBBox) {\n var _getBBox = element.getBBox(),\n width = _getBBox.width,\n height = _getBBox.height;\n if (width || height) {\n return true;\n }\n }\n if (element.getBoundingClientRect) {\n var _element$getBoundingC = element.getBoundingClientRect(),\n _width = _element$getBoundingC.width,\n _height = _element$getBoundingC.height;\n if (_width || _height) {\n return true;\n }\n }\n }\n return false;\n});","import * as React from 'react';\nexport default function useEvent(callback) {\n var fnRef = React.useRef();\n fnRef.current = callback;\n var memoFn = React.useCallback(function () {\n var _fnRef$current;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return (_fnRef$current = fnRef.current) === null || _fnRef$current === void 0 ? void 0 : _fnRef$current.call.apply(_fnRef$current, [fnRef].concat(args));\n }, []);\n return memoFn;\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport useEvent from \"./useEvent\";\nimport { useLayoutUpdateEffect } from \"./useLayoutEffect\";\nimport useState from \"./useState\";\n/** We only think `undefined` is empty */\nfunction hasValue(value) {\n return value !== undefined;\n}\n\n/**\n * Similar to `useState` but will use props value if provided.\n * Note that internal use rc-util `useState` hook.\n */\nexport default function useMergedState(defaultStateValue, option) {\n var _ref = option || {},\n defaultValue = _ref.defaultValue,\n value = _ref.value,\n onChange = _ref.onChange,\n postState = _ref.postState;\n\n // ======================= Init =======================\n var _useState = useState(function () {\n if (hasValue(value)) {\n return value;\n } else if (hasValue(defaultValue)) {\n return typeof defaultValue === 'function' ? defaultValue() : defaultValue;\n } else {\n return typeof defaultStateValue === 'function' ? defaultStateValue() : defaultStateValue;\n }\n }),\n _useState2 = _slicedToArray(_useState, 2),\n innerValue = _useState2[0],\n setInnerValue = _useState2[1];\n var mergedValue = value !== undefined ? value : innerValue;\n var postMergedValue = postState ? postState(mergedValue) : mergedValue;\n\n // ====================== Change ======================\n var onChangeFn = useEvent(onChange);\n var _useState3 = useState([mergedValue]),\n _useState4 = _slicedToArray(_useState3, 2),\n prevValue = _useState4[0],\n setPrevValue = _useState4[1];\n useLayoutUpdateEffect(function () {\n var prev = prevValue[0];\n if (innerValue !== prev) {\n onChangeFn(innerValue, prev);\n }\n }, [prevValue]);\n\n // Sync value back to `undefined` when it from control to un-control\n useLayoutUpdateEffect(function () {\n if (!hasValue(value)) {\n setInnerValue(value);\n }\n }, [value]);\n\n // ====================== Update ======================\n var triggerChange = useEvent(function (updater, ignoreDestroy) {\n setInnerValue(updater, ignoreDestroy);\n setPrevValue([mergedValue], ignoreDestroy);\n });\n return [postMergedValue, triggerChange];\n}","export default (function () {\n if (typeof navigator === 'undefined' || typeof window === 'undefined') {\n return false;\n }\n var agent = navigator.userAgent || navigator.vendor || window.opera;\n return /(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(agent) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i.test(agent === null || agent === void 0 ? void 0 : agent.substr(0, 4));\n});","/**\r\n * A collection of shims that provide minimal functionality of the ES6 collections.\r\n *\r\n * These implementations are not meant to be used outside of the ResizeObserver\r\n * modules as they cover only a limited range of use cases.\r\n */\r\n/* eslint-disable require-jsdoc, valid-jsdoc */\r\nvar MapShim = (function () {\r\n if (typeof Map !== 'undefined') {\r\n return Map;\r\n }\r\n /**\r\n * Returns index in provided array that matches the specified key.\r\n *\r\n * @param {Array} arr\r\n * @param {*} key\r\n * @returns {number}\r\n */\r\n function getIndex(arr, key) {\r\n var result = -1;\r\n arr.some(function (entry, index) {\r\n if (entry[0] === key) {\r\n result = index;\r\n return true;\r\n }\r\n return false;\r\n });\r\n return result;\r\n }\r\n return /** @class */ (function () {\r\n function class_1() {\r\n this.__entries__ = [];\r\n }\r\n Object.defineProperty(class_1.prototype, \"size\", {\r\n /**\r\n * @returns {boolean}\r\n */\r\n get: function () {\r\n return this.__entries__.length;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n /**\r\n * @param {*} key\r\n * @returns {*}\r\n */\r\n class_1.prototype.get = function (key) {\r\n var index = getIndex(this.__entries__, key);\r\n var entry = this.__entries__[index];\r\n return entry && entry[1];\r\n };\r\n /**\r\n * @param {*} key\r\n * @param {*} value\r\n * @returns {void}\r\n */\r\n class_1.prototype.set = function (key, value) {\r\n var index = getIndex(this.__entries__, key);\r\n if (~index) {\r\n this.__entries__[index][1] = value;\r\n }\r\n else {\r\n this.__entries__.push([key, value]);\r\n }\r\n };\r\n /**\r\n * @param {*} key\r\n * @returns {void}\r\n */\r\n class_1.prototype.delete = function (key) {\r\n var entries = this.__entries__;\r\n var index = getIndex(entries, key);\r\n if (~index) {\r\n entries.splice(index, 1);\r\n }\r\n };\r\n /**\r\n * @param {*} key\r\n * @returns {void}\r\n */\r\n class_1.prototype.has = function (key) {\r\n return !!~getIndex(this.__entries__, key);\r\n };\r\n /**\r\n * @returns {void}\r\n */\r\n class_1.prototype.clear = function () {\r\n this.__entries__.splice(0);\r\n };\r\n /**\r\n * @param {Function} callback\r\n * @param {*} [ctx=null]\r\n * @returns {void}\r\n */\r\n class_1.prototype.forEach = function (callback, ctx) {\r\n if (ctx === void 0) { ctx = null; }\r\n for (var _i = 0, _a = this.__entries__; _i < _a.length; _i++) {\r\n var entry = _a[_i];\r\n callback.call(ctx, entry[1], entry[0]);\r\n }\r\n };\r\n return class_1;\r\n }());\r\n})();\n\n/**\r\n * Detects whether window and document objects are available in current environment.\r\n */\r\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && window.document === document;\n\n// Returns global object of a current environment.\r\nvar global$1 = (function () {\r\n if (typeof global !== 'undefined' && global.Math === Math) {\r\n return global;\r\n }\r\n if (typeof self !== 'undefined' && self.Math === Math) {\r\n return self;\r\n }\r\n if (typeof window !== 'undefined' && window.Math === Math) {\r\n return window;\r\n }\r\n // eslint-disable-next-line no-new-func\r\n return Function('return this')();\r\n})();\n\n/**\r\n * A shim for the requestAnimationFrame which falls back to the setTimeout if\r\n * first one is not supported.\r\n *\r\n * @returns {number} Requests' identifier.\r\n */\r\nvar requestAnimationFrame$1 = (function () {\r\n if (typeof requestAnimationFrame === 'function') {\r\n // It's required to use a bounded function because IE sometimes throws\r\n // an \"Invalid calling object\" error if rAF is invoked without the global\r\n // object on the left hand side.\r\n return requestAnimationFrame.bind(global$1);\r\n }\r\n return function (callback) { return setTimeout(function () { return callback(Date.now()); }, 1000 / 60); };\r\n})();\n\n// Defines minimum timeout before adding a trailing call.\r\nvar trailingTimeout = 2;\r\n/**\r\n * Creates a wrapper function which ensures that provided callback will be\r\n * invoked only once during the specified delay period.\r\n *\r\n * @param {Function} callback - Function to be invoked after the delay period.\r\n * @param {number} delay - Delay after which to invoke callback.\r\n * @returns {Function}\r\n */\r\nfunction throttle (callback, delay) {\r\n var leadingCall = false, trailingCall = false, lastCallTime = 0;\r\n /**\r\n * Invokes the original callback function and schedules new invocation if\r\n * the \"proxy\" was called during current request.\r\n *\r\n * @returns {void}\r\n */\r\n function resolvePending() {\r\n if (leadingCall) {\r\n leadingCall = false;\r\n callback();\r\n }\r\n if (trailingCall) {\r\n proxy();\r\n }\r\n }\r\n /**\r\n * Callback invoked after the specified delay. It will further postpone\r\n * invocation of the original function delegating it to the\r\n * requestAnimationFrame.\r\n *\r\n * @returns {void}\r\n */\r\n function timeoutCallback() {\r\n requestAnimationFrame$1(resolvePending);\r\n }\r\n /**\r\n * Schedules invocation of the original function.\r\n *\r\n * @returns {void}\r\n */\r\n function proxy() {\r\n var timeStamp = Date.now();\r\n if (leadingCall) {\r\n // Reject immediately following calls.\r\n if (timeStamp - lastCallTime < trailingTimeout) {\r\n return;\r\n }\r\n // Schedule new call to be in invoked when the pending one is resolved.\r\n // This is important for \"transitions\" which never actually start\r\n // immediately so there is a chance that we might miss one if change\r\n // happens amids the pending invocation.\r\n trailingCall = true;\r\n }\r\n else {\r\n leadingCall = true;\r\n trailingCall = false;\r\n setTimeout(timeoutCallback, delay);\r\n }\r\n lastCallTime = timeStamp;\r\n }\r\n return proxy;\r\n}\n\n// Minimum delay before invoking the update of observers.\r\nvar REFRESH_DELAY = 20;\r\n// A list of substrings of CSS properties used to find transition events that\r\n// might affect dimensions of observed elements.\r\nvar transitionKeys = ['top', 'right', 'bottom', 'left', 'width', 'height', 'size', 'weight'];\r\n// Check if MutationObserver is available.\r\nvar mutationObserverSupported = typeof MutationObserver !== 'undefined';\r\n/**\r\n * Singleton controller class which handles updates of ResizeObserver instances.\r\n */\r\nvar ResizeObserverController = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of ResizeObserverController.\r\n *\r\n * @private\r\n */\r\n function ResizeObserverController() {\r\n /**\r\n * Indicates whether DOM listeners have been added.\r\n *\r\n * @private {boolean}\r\n */\r\n this.connected_ = false;\r\n /**\r\n * Tells that controller has subscribed for Mutation Events.\r\n *\r\n * @private {boolean}\r\n */\r\n this.mutationEventsAdded_ = false;\r\n /**\r\n * Keeps reference to the instance of MutationObserver.\r\n *\r\n * @private {MutationObserver}\r\n */\r\n this.mutationsObserver_ = null;\r\n /**\r\n * A list of connected observers.\r\n *\r\n * @private {Array}\r\n */\r\n this.observers_ = [];\r\n this.onTransitionEnd_ = this.onTransitionEnd_.bind(this);\r\n this.refresh = throttle(this.refresh.bind(this), REFRESH_DELAY);\r\n }\r\n /**\r\n * Adds observer to observers list.\r\n *\r\n * @param {ResizeObserverSPI} observer - Observer to be added.\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.addObserver = function (observer) {\r\n if (!~this.observers_.indexOf(observer)) {\r\n this.observers_.push(observer);\r\n }\r\n // Add listeners if they haven't been added yet.\r\n if (!this.connected_) {\r\n this.connect_();\r\n }\r\n };\r\n /**\r\n * Removes observer from observers list.\r\n *\r\n * @param {ResizeObserverSPI} observer - Observer to be removed.\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.removeObserver = function (observer) {\r\n var observers = this.observers_;\r\n var index = observers.indexOf(observer);\r\n // Remove observer if it's present in registry.\r\n if (~index) {\r\n observers.splice(index, 1);\r\n }\r\n // Remove listeners if controller has no connected observers.\r\n if (!observers.length && this.connected_) {\r\n this.disconnect_();\r\n }\r\n };\r\n /**\r\n * Invokes the update of observers. It will continue running updates insofar\r\n * it detects changes.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.refresh = function () {\r\n var changesDetected = this.updateObservers_();\r\n // Continue running updates if changes have been detected as there might\r\n // be future ones caused by CSS transitions.\r\n if (changesDetected) {\r\n this.refresh();\r\n }\r\n };\r\n /**\r\n * Updates every observer from observers list and notifies them of queued\r\n * entries.\r\n *\r\n * @private\r\n * @returns {boolean} Returns \"true\" if any observer has detected changes in\r\n * dimensions of it's elements.\r\n */\r\n ResizeObserverController.prototype.updateObservers_ = function () {\r\n // Collect observers that have active observations.\r\n var activeObservers = this.observers_.filter(function (observer) {\r\n return observer.gatherActive(), observer.hasActive();\r\n });\r\n // Deliver notifications in a separate cycle in order to avoid any\r\n // collisions between observers, e.g. when multiple instances of\r\n // ResizeObserver are tracking the same element and the callback of one\r\n // of them changes content dimensions of the observed target. Sometimes\r\n // this may result in notifications being blocked for the rest of observers.\r\n activeObservers.forEach(function (observer) { return observer.broadcastActive(); });\r\n return activeObservers.length > 0;\r\n };\r\n /**\r\n * Initializes DOM listeners.\r\n *\r\n * @private\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.connect_ = function () {\r\n // Do nothing if running in a non-browser environment or if listeners\r\n // have been already added.\r\n if (!isBrowser || this.connected_) {\r\n return;\r\n }\r\n // Subscription to the \"Transitionend\" event is used as a workaround for\r\n // delayed transitions. This way it's possible to capture at least the\r\n // final state of an element.\r\n document.addEventListener('transitionend', this.onTransitionEnd_);\r\n window.addEventListener('resize', this.refresh);\r\n if (mutationObserverSupported) {\r\n this.mutationsObserver_ = new MutationObserver(this.refresh);\r\n this.mutationsObserver_.observe(document, {\r\n attributes: true,\r\n childList: true,\r\n characterData: true,\r\n subtree: true\r\n });\r\n }\r\n else {\r\n document.addEventListener('DOMSubtreeModified', this.refresh);\r\n this.mutationEventsAdded_ = true;\r\n }\r\n this.connected_ = true;\r\n };\r\n /**\r\n * Removes DOM listeners.\r\n *\r\n * @private\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.disconnect_ = function () {\r\n // Do nothing if running in a non-browser environment or if listeners\r\n // have been already removed.\r\n if (!isBrowser || !this.connected_) {\r\n return;\r\n }\r\n document.removeEventListener('transitionend', this.onTransitionEnd_);\r\n window.removeEventListener('resize', this.refresh);\r\n if (this.mutationsObserver_) {\r\n this.mutationsObserver_.disconnect();\r\n }\r\n if (this.mutationEventsAdded_) {\r\n document.removeEventListener('DOMSubtreeModified', this.refresh);\r\n }\r\n this.mutationsObserver_ = null;\r\n this.mutationEventsAdded_ = false;\r\n this.connected_ = false;\r\n };\r\n /**\r\n * \"Transitionend\" event handler.\r\n *\r\n * @private\r\n * @param {TransitionEvent} event\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.onTransitionEnd_ = function (_a) {\r\n var _b = _a.propertyName, propertyName = _b === void 0 ? '' : _b;\r\n // Detect whether transition may affect dimensions of an element.\r\n var isReflowProperty = transitionKeys.some(function (key) {\r\n return !!~propertyName.indexOf(key);\r\n });\r\n if (isReflowProperty) {\r\n this.refresh();\r\n }\r\n };\r\n /**\r\n * Returns instance of the ResizeObserverController.\r\n *\r\n * @returns {ResizeObserverController}\r\n */\r\n ResizeObserverController.getInstance = function () {\r\n if (!this.instance_) {\r\n this.instance_ = new ResizeObserverController();\r\n }\r\n return this.instance_;\r\n };\r\n /**\r\n * Holds reference to the controller's instance.\r\n *\r\n * @private {ResizeObserverController}\r\n */\r\n ResizeObserverController.instance_ = null;\r\n return ResizeObserverController;\r\n}());\n\n/**\r\n * Defines non-writable/enumerable properties of the provided target object.\r\n *\r\n * @param {Object} target - Object for which to define properties.\r\n * @param {Object} props - Properties to be defined.\r\n * @returns {Object} Target object.\r\n */\r\nvar defineConfigurable = (function (target, props) {\r\n for (var _i = 0, _a = Object.keys(props); _i < _a.length; _i++) {\r\n var key = _a[_i];\r\n Object.defineProperty(target, key, {\r\n value: props[key],\r\n enumerable: false,\r\n writable: false,\r\n configurable: true\r\n });\r\n }\r\n return target;\r\n});\n\n/**\r\n * Returns the global object associated with provided element.\r\n *\r\n * @param {Object} target\r\n * @returns {Object}\r\n */\r\nvar getWindowOf = (function (target) {\r\n // Assume that the element is an instance of Node, which means that it\r\n // has the \"ownerDocument\" property from which we can retrieve a\r\n // corresponding global object.\r\n var ownerGlobal = target && target.ownerDocument && target.ownerDocument.defaultView;\r\n // Return the local global object if it's not possible extract one from\r\n // provided element.\r\n return ownerGlobal || global$1;\r\n});\n\n// Placeholder of an empty content rectangle.\r\nvar emptyRect = createRectInit(0, 0, 0, 0);\r\n/**\r\n * Converts provided string to a number.\r\n *\r\n * @param {number|string} value\r\n * @returns {number}\r\n */\r\nfunction toFloat(value) {\r\n return parseFloat(value) || 0;\r\n}\r\n/**\r\n * Extracts borders size from provided styles.\r\n *\r\n * @param {CSSStyleDeclaration} styles\r\n * @param {...string} positions - Borders positions (top, right, ...)\r\n * @returns {number}\r\n */\r\nfunction getBordersSize(styles) {\r\n var positions = [];\r\n for (var _i = 1; _i < arguments.length; _i++) {\r\n positions[_i - 1] = arguments[_i];\r\n }\r\n return positions.reduce(function (size, position) {\r\n var value = styles['border-' + position + '-width'];\r\n return size + toFloat(value);\r\n }, 0);\r\n}\r\n/**\r\n * Extracts paddings sizes from provided styles.\r\n *\r\n * @param {CSSStyleDeclaration} styles\r\n * @returns {Object} Paddings box.\r\n */\r\nfunction getPaddings(styles) {\r\n var positions = ['top', 'right', 'bottom', 'left'];\r\n var paddings = {};\r\n for (var _i = 0, positions_1 = positions; _i < positions_1.length; _i++) {\r\n var position = positions_1[_i];\r\n var value = styles['padding-' + position];\r\n paddings[position] = toFloat(value);\r\n }\r\n return paddings;\r\n}\r\n/**\r\n * Calculates content rectangle of provided SVG element.\r\n *\r\n * @param {SVGGraphicsElement} target - Element content rectangle of which needs\r\n * to be calculated.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction getSVGContentRect(target) {\r\n var bbox = target.getBBox();\r\n return createRectInit(0, 0, bbox.width, bbox.height);\r\n}\r\n/**\r\n * Calculates content rectangle of provided HTMLElement.\r\n *\r\n * @param {HTMLElement} target - Element for which to calculate the content rectangle.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction getHTMLElementContentRect(target) {\r\n // Client width & height properties can't be\r\n // used exclusively as they provide rounded values.\r\n var clientWidth = target.clientWidth, clientHeight = target.clientHeight;\r\n // By this condition we can catch all non-replaced inline, hidden and\r\n // detached elements. Though elements with width & height properties less\r\n // than 0.5 will be discarded as well.\r\n //\r\n // Without it we would need to implement separate methods for each of\r\n // those cases and it's not possible to perform a precise and performance\r\n // effective test for hidden elements. E.g. even jQuery's ':visible' filter\r\n // gives wrong results for elements with width & height less than 0.5.\r\n if (!clientWidth && !clientHeight) {\r\n return emptyRect;\r\n }\r\n var styles = getWindowOf(target).getComputedStyle(target);\r\n var paddings = getPaddings(styles);\r\n var horizPad = paddings.left + paddings.right;\r\n var vertPad = paddings.top + paddings.bottom;\r\n // Computed styles of width & height are being used because they are the\r\n // only dimensions available to JS that contain non-rounded values. It could\r\n // be possible to utilize the getBoundingClientRect if only it's data wasn't\r\n // affected by CSS transformations let alone paddings, borders and scroll bars.\r\n var width = toFloat(styles.width), height = toFloat(styles.height);\r\n // Width & height include paddings and borders when the 'border-box' box\r\n // model is applied (except for IE).\r\n if (styles.boxSizing === 'border-box') {\r\n // Following conditions are required to handle Internet Explorer which\r\n // doesn't include paddings and borders to computed CSS dimensions.\r\n //\r\n // We can say that if CSS dimensions + paddings are equal to the \"client\"\r\n // properties then it's either IE, and thus we don't need to subtract\r\n // anything, or an element merely doesn't have paddings/borders styles.\r\n if (Math.round(width + horizPad) !== clientWidth) {\r\n width -= getBordersSize(styles, 'left', 'right') + horizPad;\r\n }\r\n if (Math.round(height + vertPad) !== clientHeight) {\r\n height -= getBordersSize(styles, 'top', 'bottom') + vertPad;\r\n }\r\n }\r\n // Following steps can't be applied to the document's root element as its\r\n // client[Width/Height] properties represent viewport area of the window.\r\n // Besides, it's as well not necessary as the itself neither has\r\n // rendered scroll bars nor it can be clipped.\r\n if (!isDocumentElement(target)) {\r\n // In some browsers (only in Firefox, actually) CSS width & height\r\n // include scroll bars size which can be removed at this step as scroll\r\n // bars are the only difference between rounded dimensions + paddings\r\n // and \"client\" properties, though that is not always true in Chrome.\r\n var vertScrollbar = Math.round(width + horizPad) - clientWidth;\r\n var horizScrollbar = Math.round(height + vertPad) - clientHeight;\r\n // Chrome has a rather weird rounding of \"client\" properties.\r\n // E.g. for an element with content width of 314.2px it sometimes gives\r\n // the client width of 315px and for the width of 314.7px it may give\r\n // 314px. And it doesn't happen all the time. So just ignore this delta\r\n // as a non-relevant.\r\n if (Math.abs(vertScrollbar) !== 1) {\r\n width -= vertScrollbar;\r\n }\r\n if (Math.abs(horizScrollbar) !== 1) {\r\n height -= horizScrollbar;\r\n }\r\n }\r\n return createRectInit(paddings.left, paddings.top, width, height);\r\n}\r\n/**\r\n * Checks whether provided element is an instance of the SVGGraphicsElement.\r\n *\r\n * @param {Element} target - Element to be checked.\r\n * @returns {boolean}\r\n */\r\nvar isSVGGraphicsElement = (function () {\r\n // Some browsers, namely IE and Edge, don't have the SVGGraphicsElement\r\n // interface.\r\n if (typeof SVGGraphicsElement !== 'undefined') {\r\n return function (target) { return target instanceof getWindowOf(target).SVGGraphicsElement; };\r\n }\r\n // If it's so, then check that element is at least an instance of the\r\n // SVGElement and that it has the \"getBBox\" method.\r\n // eslint-disable-next-line no-extra-parens\r\n return function (target) { return (target instanceof getWindowOf(target).SVGElement &&\r\n typeof target.getBBox === 'function'); };\r\n})();\r\n/**\r\n * Checks whether provided element is a document element ().\r\n *\r\n * @param {Element} target - Element to be checked.\r\n * @returns {boolean}\r\n */\r\nfunction isDocumentElement(target) {\r\n return target === getWindowOf(target).document.documentElement;\r\n}\r\n/**\r\n * Calculates an appropriate content rectangle for provided html or svg element.\r\n *\r\n * @param {Element} target - Element content rectangle of which needs to be calculated.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction getContentRect(target) {\r\n if (!isBrowser) {\r\n return emptyRect;\r\n }\r\n if (isSVGGraphicsElement(target)) {\r\n return getSVGContentRect(target);\r\n }\r\n return getHTMLElementContentRect(target);\r\n}\r\n/**\r\n * Creates rectangle with an interface of the DOMRectReadOnly.\r\n * Spec: https://drafts.fxtf.org/geometry/#domrectreadonly\r\n *\r\n * @param {DOMRectInit} rectInit - Object with rectangle's x/y coordinates and dimensions.\r\n * @returns {DOMRectReadOnly}\r\n */\r\nfunction createReadOnlyRect(_a) {\r\n var x = _a.x, y = _a.y, width = _a.width, height = _a.height;\r\n // If DOMRectReadOnly is available use it as a prototype for the rectangle.\r\n var Constr = typeof DOMRectReadOnly !== 'undefined' ? DOMRectReadOnly : Object;\r\n var rect = Object.create(Constr.prototype);\r\n // Rectangle's properties are not writable and non-enumerable.\r\n defineConfigurable(rect, {\r\n x: x, y: y, width: width, height: height,\r\n top: y,\r\n right: x + width,\r\n bottom: height + y,\r\n left: x\r\n });\r\n return rect;\r\n}\r\n/**\r\n * Creates DOMRectInit object based on the provided dimensions and the x/y coordinates.\r\n * Spec: https://drafts.fxtf.org/geometry/#dictdef-domrectinit\r\n *\r\n * @param {number} x - X coordinate.\r\n * @param {number} y - Y coordinate.\r\n * @param {number} width - Rectangle's width.\r\n * @param {number} height - Rectangle's height.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction createRectInit(x, y, width, height) {\r\n return { x: x, y: y, width: width, height: height };\r\n}\n\n/**\r\n * Class that is responsible for computations of the content rectangle of\r\n * provided DOM element and for keeping track of it's changes.\r\n */\r\nvar ResizeObservation = /** @class */ (function () {\r\n /**\r\n * Creates an instance of ResizeObservation.\r\n *\r\n * @param {Element} target - Element to be observed.\r\n */\r\n function ResizeObservation(target) {\r\n /**\r\n * Broadcasted width of content rectangle.\r\n *\r\n * @type {number}\r\n */\r\n this.broadcastWidth = 0;\r\n /**\r\n * Broadcasted height of content rectangle.\r\n *\r\n * @type {number}\r\n */\r\n this.broadcastHeight = 0;\r\n /**\r\n * Reference to the last observed content rectangle.\r\n *\r\n * @private {DOMRectInit}\r\n */\r\n this.contentRect_ = createRectInit(0, 0, 0, 0);\r\n this.target = target;\r\n }\r\n /**\r\n * Updates content rectangle and tells whether it's width or height properties\r\n * have changed since the last broadcast.\r\n *\r\n * @returns {boolean}\r\n */\r\n ResizeObservation.prototype.isActive = function () {\r\n var rect = getContentRect(this.target);\r\n this.contentRect_ = rect;\r\n return (rect.width !== this.broadcastWidth ||\r\n rect.height !== this.broadcastHeight);\r\n };\r\n /**\r\n * Updates 'broadcastWidth' and 'broadcastHeight' properties with a data\r\n * from the corresponding properties of the last observed content rectangle.\r\n *\r\n * @returns {DOMRectInit} Last observed content rectangle.\r\n */\r\n ResizeObservation.prototype.broadcastRect = function () {\r\n var rect = this.contentRect_;\r\n this.broadcastWidth = rect.width;\r\n this.broadcastHeight = rect.height;\r\n return rect;\r\n };\r\n return ResizeObservation;\r\n}());\n\nvar ResizeObserverEntry = /** @class */ (function () {\r\n /**\r\n * Creates an instance of ResizeObserverEntry.\r\n *\r\n * @param {Element} target - Element that is being observed.\r\n * @param {DOMRectInit} rectInit - Data of the element's content rectangle.\r\n */\r\n function ResizeObserverEntry(target, rectInit) {\r\n var contentRect = createReadOnlyRect(rectInit);\r\n // According to the specification following properties are not writable\r\n // and are also not enumerable in the native implementation.\r\n //\r\n // Property accessors are not being used as they'd require to define a\r\n // private WeakMap storage which may cause memory leaks in browsers that\r\n // don't support this type of collections.\r\n defineConfigurable(this, { target: target, contentRect: contentRect });\r\n }\r\n return ResizeObserverEntry;\r\n}());\n\nvar ResizeObserverSPI = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of ResizeObserver.\r\n *\r\n * @param {ResizeObserverCallback} callback - Callback function that is invoked\r\n * when one of the observed elements changes it's content dimensions.\r\n * @param {ResizeObserverController} controller - Controller instance which\r\n * is responsible for the updates of observer.\r\n * @param {ResizeObserver} callbackCtx - Reference to the public\r\n * ResizeObserver instance which will be passed to callback function.\r\n */\r\n function ResizeObserverSPI(callback, controller, callbackCtx) {\r\n /**\r\n * Collection of resize observations that have detected changes in dimensions\r\n * of elements.\r\n *\r\n * @private {Array}\r\n */\r\n this.activeObservations_ = [];\r\n /**\r\n * Registry of the ResizeObservation instances.\r\n *\r\n * @private {Map}\r\n */\r\n this.observations_ = new MapShim();\r\n if (typeof callback !== 'function') {\r\n throw new TypeError('The callback provided as parameter 1 is not a function.');\r\n }\r\n this.callback_ = callback;\r\n this.controller_ = controller;\r\n this.callbackCtx_ = callbackCtx;\r\n }\r\n /**\r\n * Starts observing provided element.\r\n *\r\n * @param {Element} target - Element to be observed.\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.observe = function (target) {\r\n if (!arguments.length) {\r\n throw new TypeError('1 argument required, but only 0 present.');\r\n }\r\n // Do nothing if current environment doesn't have the Element interface.\r\n if (typeof Element === 'undefined' || !(Element instanceof Object)) {\r\n return;\r\n }\r\n if (!(target instanceof getWindowOf(target).Element)) {\r\n throw new TypeError('parameter 1 is not of type \"Element\".');\r\n }\r\n var observations = this.observations_;\r\n // Do nothing if element is already being observed.\r\n if (observations.has(target)) {\r\n return;\r\n }\r\n observations.set(target, new ResizeObservation(target));\r\n this.controller_.addObserver(this);\r\n // Force the update of observations.\r\n this.controller_.refresh();\r\n };\r\n /**\r\n * Stops observing provided element.\r\n *\r\n * @param {Element} target - Element to stop observing.\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.unobserve = function (target) {\r\n if (!arguments.length) {\r\n throw new TypeError('1 argument required, but only 0 present.');\r\n }\r\n // Do nothing if current environment doesn't have the Element interface.\r\n if (typeof Element === 'undefined' || !(Element instanceof Object)) {\r\n return;\r\n }\r\n if (!(target instanceof getWindowOf(target).Element)) {\r\n throw new TypeError('parameter 1 is not of type \"Element\".');\r\n }\r\n var observations = this.observations_;\r\n // Do nothing if element is not being observed.\r\n if (!observations.has(target)) {\r\n return;\r\n }\r\n observations.delete(target);\r\n if (!observations.size) {\r\n this.controller_.removeObserver(this);\r\n }\r\n };\r\n /**\r\n * Stops observing all elements.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.disconnect = function () {\r\n this.clearActive();\r\n this.observations_.clear();\r\n this.controller_.removeObserver(this);\r\n };\r\n /**\r\n * Collects observation instances the associated element of which has changed\r\n * it's content rectangle.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.gatherActive = function () {\r\n var _this = this;\r\n this.clearActive();\r\n this.observations_.forEach(function (observation) {\r\n if (observation.isActive()) {\r\n _this.activeObservations_.push(observation);\r\n }\r\n });\r\n };\r\n /**\r\n * Invokes initial callback function with a list of ResizeObserverEntry\r\n * instances collected from active resize observations.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.broadcastActive = function () {\r\n // Do nothing if observer doesn't have active observations.\r\n if (!this.hasActive()) {\r\n return;\r\n }\r\n var ctx = this.callbackCtx_;\r\n // Create ResizeObserverEntry instance for every active observation.\r\n var entries = this.activeObservations_.map(function (observation) {\r\n return new ResizeObserverEntry(observation.target, observation.broadcastRect());\r\n });\r\n this.callback_.call(ctx, entries, ctx);\r\n this.clearActive();\r\n };\r\n /**\r\n * Clears the collection of active observations.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.clearActive = function () {\r\n this.activeObservations_.splice(0);\r\n };\r\n /**\r\n * Tells whether observer has active observations.\r\n *\r\n * @returns {boolean}\r\n */\r\n ResizeObserverSPI.prototype.hasActive = function () {\r\n return this.activeObservations_.length > 0;\r\n };\r\n return ResizeObserverSPI;\r\n}());\n\n// Registry of internal observers. If WeakMap is not available use current shim\r\n// for the Map collection as it has all required methods and because WeakMap\r\n// can't be fully polyfilled anyway.\r\nvar observers = typeof WeakMap !== 'undefined' ? new WeakMap() : new MapShim();\r\n/**\r\n * ResizeObserver API. Encapsulates the ResizeObserver SPI implementation\r\n * exposing only those methods and properties that are defined in the spec.\r\n */\r\nvar ResizeObserver = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of ResizeObserver.\r\n *\r\n * @param {ResizeObserverCallback} callback - Callback that is invoked when\r\n * dimensions of the observed elements change.\r\n */\r\n function ResizeObserver(callback) {\r\n if (!(this instanceof ResizeObserver)) {\r\n throw new TypeError('Cannot call a class as a function.');\r\n }\r\n if (!arguments.length) {\r\n throw new TypeError('1 argument required, but only 0 present.');\r\n }\r\n var controller = ResizeObserverController.getInstance();\r\n var observer = new ResizeObserverSPI(callback, controller, this);\r\n observers.set(this, observer);\r\n }\r\n return ResizeObserver;\r\n}());\r\n// Expose public methods of ResizeObserver.\r\n[\r\n 'observe',\r\n 'unobserve',\r\n 'disconnect'\r\n].forEach(function (method) {\r\n ResizeObserver.prototype[method] = function () {\r\n var _a;\r\n return (_a = observers.get(this))[method].apply(_a, arguments);\r\n };\r\n});\n\nvar index = (function () {\r\n // Export existing implementation if available.\r\n if (typeof global$1.ResizeObserver !== 'undefined') {\r\n return global$1.ResizeObserver;\r\n }\r\n return ResizeObserver;\r\n})();\n\nexport default index;\n"],"names":["SizeContext","React","undefined","SizeContextProvider","_ref","children","size","Consumer","originSize","Provider","value","locale","today","now","backToToday","ok","clear","month","year","timeSelect","dateSelect","weekSelect","monthSelect","yearSelect","decadeSelect","yearFormat","dateFormat","dayFormat","dateTimeFormat","monthBeforeYear","previousMonth","nextMonth","previousYear","nextYear","previousDecade","nextDecade","previousCentury","nextCentury","placeholder","rangePlaceholder","lang","_extends","yearPlaceholder","quarterPlaceholder","monthPlaceholder","weekPlaceholder","rangeYearPlaceholder","rangeQuarterPlaceholder","rangeMonthPlaceholder","rangeWeekPlaceholder","CalendarLocale","timePickerLocale","TimePickerLocale","typeTemplate","Pagination","items_per_page","jump_to","jump_to_confirm","page","prev_page","next_page","prev_5","next_5","prev_3","next_3","page_size","DatePicker","TimePicker","Calendar","global","Table","filterTitle","filterConfirm","filterReset","filterEmptyText","filterCheckall","filterSearchPlaceholder","emptyText","selectAll","selectInvert","selectNone","selectionAll","sortTitle","expand","collapse","triggerDesc","triggerAsc","cancelSort","Modal","okText","cancelText","justOkText","Popconfirm","Transfer","titles","searchPlaceholder","itemUnit","itemsUnit","remove","selectCurrent","removeCurrent","removeAll","Upload","uploading","removeFile","uploadError","previewFile","downloadFile","Empty","description","Icon","icon","Text","edit","copy","copied","PageHeader","back","Form","optional","defaultValidateMessages","required","whitespace","date","format","parse","invalid","types","string","method","array","object","number","integer","regexp","email","url","hex","len","min","max","range","pattern","mismatch","Image","preview","EyeOutlined","props","ref","AntdIcon","_objectSpread","EyeOutlinedSvg","elementListeners","Map","resizeObserver","ResizeObserver","entities","forEach","entity","_elementListeners$get","target","get","listener","DomWrapper","_React$Component","_inherits","_super","_createSuper","_classCallCheck","this","apply","arguments","_createClass","key","CollectionContext","SingleObserver","disabled","elementRef","wrapperRef","onCollectionResize","isRenderProps","mergedChildren","sizeRef","width","height","offsetWidth","offsetHeight","canRef","supportRef","originRef","mergedRef","composeRef","getDom","findDOMNode","current","propsRef","onInternalResize","_propsRef$current","onResize","data","_target$getBoundingCl","getBoundingClientRect","fixedWidth","Math","floor","fixedHeight","mergedOffsetWidth","round","mergedOffsetHeight","sizeInfo","Promise","resolve","then","element","callback","currentElement","has","set","Set","observe","add","delete","unobserve","toArray","map","child","index","concat","RefResizeObserver","Collection","onBatchResize","resizeIdRef","resizeInfosRef","currentId","push","forwardRef","didUpdate","getContainer","parentRef","useRef","containerRef","useImperativeHandle","initRef","canUseDom","parentNode","useEffect","appendChild","_containerRef$current","_containerRef$current2","removeChild","ReactDOM","isPointsEq","a1","a2","isAlignPoint","getMotion","prefixCls","motion","animation","transitionName","motionName","Mask","visible","zIndex","mask","maskMotion","maskAnimation","maskTransitionName","motionAppear","CSSMotion","removeOnLeave","className","style","classNames","vendorPrefix","jsCssMap","Webkit","Moz","ms","O","getVendorPrefix","document","createElement","getTransitionName","getTransformName","setTransitionProperty","node","name","transitionProperty","setTransform","transform","getComputedStyleX","matrix2d","matrix3d","forceRelayout","elem","originalStyle","display","css","el","v","_typeof","i","hasOwnProperty","getScroll","w","top","ret","d","documentElement","body","getScrollLeft","getScrollTop","getOffset","pos","box","x","y","doc","ownerDocument","docElem","left","clientLeft","clientTop","getClientPosition","defaultView","parentWindow","isWindow","obj","window","getDocument","nodeType","_RE_NUM_NO_PX","RegExp","source","RE_POS","CURRENT_STYLE","RUNTIME_STYLE","LEFT","getOffsetDirection","dir","option","useCssRight","useCssBottom","oppositeOffsetDirection","setLeftTop","offset","position","presetH","presetV","horizontalProperty","verticalProperty","oppositeHorizontalProperty","oppositeVerticalProperty","originalTransition","originalOffset","old","preset","off","_key","_dir","_off","setTransform$1","originalXY","getComputedStyle","getPropertyValue","matrix","replace","split","parseFloat","getTransformXY","resultXY","xy","arr","match2d","match","item","join","setTransformXY","each","fn","length","isBorderBoxFn","cs","computedStyle","val","test","rsLeft","pixelLeft","BOX_MODELS","CONTENT_INDEX","PADDING_INDEX","BORDER_INDEX","getPBMWidth","which","prop","j","cssProp","domUtils","getParent","parent","host","getWH","ex","extra","viewportWidth","viewportHeight","docWidth","docHeight","borderBoxValue","isBorderBox","cssBoxValue","Number","borderBoxValueOrIsBorderBox","slice","refWin","win","documentElementProp","compatMode","cssShow","visibility","getWHIgnoreDisplay","_len","args","Array","_key2","options","call","swap","mix","to","from","first","charAt","toUpperCase","includeMargin","utils","getWindow","setTimeout","ignoreShake","oriOffset","oLeft","toFixed","oTop","tLeft","tTop","useCssTransform","setOffset","clone","overflow","getWindowScrollLeft","getWindowScrollTop","merge","getOffsetParent","positionStyle","nodeName","toLowerCase","getParent$1","getVisibleRectForElement","alwaysByViewport","visibleRect","right","Infinity","bottom","navigator","userAgent","indexOf","clientWidth","clientHeight","originalPosition","scrollX","scrollY","documentWidth","scrollWidth","documentHeight","scrollHeight","bodyStyle","overflowX","innerWidth","overflowY","innerHeight","isAncestorFixed","maxVisibleWidth","maxVisibleHeight","getRegion","h","outerWidth","outerHeight","getAlignOffset","region","align","V","H","getElFuturePos","elRegion","refNodeRegion","points","targetOffset","p1","p2","diff","isFailX","elFuturePos","isFailY","flip","reg","p","m","flipOffset","convertOffset","str","offsetLen","parseInt","substring","normalizeOffset","doAlign","tgtRegion","isTgtRegionVisible","newOverflowCfg","fail","newElRegion","adjustX","adjustY","newPoints","l","r","newOffset","newTargetOffset","isCompleteFailX","_newPoints","t","b","_newOffset","_newTargetOffset","isCompleteFailY","isStillFailX","isStillFailY","_newPoints2","resizeWidth","resizeHeight","adjustForViewport","alignElement","refNode","isTargetNotOutOfVisible","targetRegion","isOutOfVisibleRect","__getOffsetParent","__getVisibleRectForElement","monitorResize","prevWidth","prevHeight","_slicedToArray","contains","disconnect","getElement","func","getPoint","point","Align","onAlign","monitorWindowResize","_ref$monitorBufferTim","monitorBufferTime","cacheRef","nodeRef","childNode","only","forceAlignPropsRef","_useBuffer","buffer","calledRef","timeoutRef","cancelTrigger","clearTimeout","trigger","force","useBuffer","_forceAlignPropsRef$c","latestDisabled","latestTarget","latestAlign","latestOnAlign","_result","_element","_point","activeElement","isVisible","tgtPoint","pageX","pageY","clientX","clientY","pointInView","_objectSpread2","alignPoint","container","focus","restoreFocus","_useBuffer2","_forceAlign","cancelForceAlign","_React$useState","_React$useState2","setElement","_React$useState3","_React$useState4","setPoint","useLayoutEffect","prev","next","isEqual","addEventListener","forceAlign","RcAlign","displayName","StatusQueue","PopupInner","stretch","destroyPopupOnHide","forceRender","getRootDomNode","getClassNameFromAlign","onMouseEnter","onMouseLeave","onMouseDown","onTouchStart","onClick","alignRef","_useState","useState","_useState2","alignedClassName","setAlignedClassName","_useStretchStyle","targetSize","setTargetSize","sizeStyle","minHeight","minWidth","tgtWidth","tgtHeight","_element$getBoundingC","abs","useStretchStyle","_useStretchStyle2","stretchStyle","measureStretchStyle","_useVisibleStatus","doMeasure","status","setInternalStatus","rafRef","setStatus","nextStatus","cancelRaf","raf","cancel","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","stop","useVisibleStatus","_useVisibleStatus2","goNextStatus","_useState3","_useState4","alignTimes","setAlignTimes","prepareResolveRef","_alignRef$current","onInternalAlign","popupDomNode","matchAlign","nextAlignedClassName","_prepareResolveRef$cu","onShowPrepare","eventName","originHandler","event","mergedStyle","opacity","pointerEvents","alignDisabled","count","leavedClassName","onAppearPrepare","onEnterPrepare","motionRef","motionClassName","motionStyle","mergedClassName","onMouseDownCapture","onTouchStartCapture","MobilePopupInner","_props$mobile","mobile","popupClassName","popupStyle","_props$mobile$popupMo","popupMotion","popupRender","_excluded","Popup","_objectWithoutProperties","innerVisible","serInnerVisible","inMobile","setInMobile","cloneProps","isMobile","popupNode","noop","returnEmptyString","returnDocument","ALL_HANDLERS","PortalComponent","Trigger","_this","_popupVisible","_defineProperty","_assertThisInitialized","e","mouseEnterDelay","fireEvents","delaySetPopupVisible","mouseLeaveDelay","clearDelayTimer","_this$popupRef$curren","relatedTarget","popupRef","isFocusToShow","focusTime","Date","focusDelay","preClickTime","preTouchTime","isBlurToHide","blurDelay","preventDefault","setPopupVisible","isContextMenuToShow","close","preTime","isClickToShow","isClickToHide","nextVisible","state","popupVisible","_this$context","hasPopupMouseDown","mouseDownTimeout","context","onPopupMouseDown","maskClosable","root","getPopupDomNode","isContextMenuOnly","getTriggerDOMNode","triggerRef","domNode","err","_this$props","popupPlacement","builtinPlacements","getPopupClassNameFromAlign","placements","Object","keys","placement","getAlignPopupClassName","_this$props2","onPopupAlign","popupAnimation","popupTransitionName","popup","onPopupClick","_this$state","getPopupAlign","mouseProps","isMouseEnterToShow","onPopupMouseEnter","isMouseLeaveToHide","onPopupMouseLeave","popupContainer","attachId","mountNode","_this$props3","getPopupContainer","attachParent","portalContainer","setState","prevPopupVisible","afterPopupVisibleChange","defaultPopupVisible","componentDidUpdate","currentDocument","clickOutsideHandler","onDocumentClick","touchOutsideHandler","contextMenuOutsideHandler1","onContextMenuClose","contextMenuOutsideHandler2","clearOutsideHandler","_this$popupRef$curren2","popupAlign","placementStr","baseAlign","getAlignFromPlacement","onPopupVisibleChange","delayS","_this2","delay","delayTimer","childPros","_this$props4","action","showAction","_this$props5","_this$props6","hideAction","_this$props7","_this$props8","_this$props9","_this$props10","_this$popupRef$curren3","type","childCallback","_this$props11","autoDestroy","newChildProps","onContextMenu","createTwoChains","onMouseMove","onFocus","onBlur","childrenClassName","portal","handlePortalUpdate","getComponent","TriggerContext","triggerContextValue","prevState","newState","Portal","addEventListenerWrap","eventType","cb","removeEventListener","Element","offsetParent","getBBox","_getBBox","_width","_height","useEvent","fnRef","memoFn","_fnRef$current","hasValue","useMergedState","defaultStateValue","defaultValue","onChange","postState","innerValue","setInnerValue","mergedValue","postMergedValue","onChangeFn","prevValue","setPrevValue","useLayoutUpdateEffect","updater","ignoreDestroy","agent","vendor","opera","substr","MapShim","getIndex","result","some","entry","class_1","__entries__","defineProperty","prototype","enumerable","configurable","entries","splice","ctx","_i","_a","isBrowser","global$1","self","Function","requestAnimationFrame$1","requestAnimationFrame","bind","transitionKeys","mutationObserverSupported","MutationObserver","ResizeObserverController","connected_","mutationEventsAdded_","mutationsObserver_","observers_","onTransitionEnd_","refresh","leadingCall","trailingCall","lastCallTime","resolvePending","proxy","timeoutCallback","timeStamp","throttle","addObserver","observer","connect_","removeObserver","observers","disconnect_","updateObservers_","activeObservers","filter","gatherActive","hasActive","broadcastActive","attributes","childList","characterData","subtree","_b","propertyName","getInstance","instance_","defineConfigurable","writable","getWindowOf","emptyRect","createRectInit","toFloat","getBordersSize","styles","positions","reduce","getHTMLElementContentRect","paddings","positions_1","getPaddings","horizPad","vertPad","boxSizing","isDocumentElement","vertScrollbar","horizScrollbar","isSVGGraphicsElement","SVGGraphicsElement","SVGElement","getContentRect","bbox","getSVGContentRect","ResizeObservation","broadcastWidth","broadcastHeight","contentRect_","isActive","rect","broadcastRect","ResizeObserverEntry","rectInit","contentRect","Constr","DOMRectReadOnly","create","createReadOnlyRect","ResizeObserverSPI","controller","callbackCtx","activeObservations_","observations_","TypeError","callback_","controller_","callbackCtx_","observations","clearActive","observation","WeakMap"],"sourceRoot":""}