{"version":3,"file":"static/chunks/362-22afa65e984cccbe.js","mappings":"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CA,EACA,0CACA,0BAA6C,UAC7C,EACA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,YAAoB,QACpB,QAA8B,EAAQ,KAAO,GAM7C,SANqC,KAMjB,CALpB,YACA,wCAA4D,OAAS,4BAA+B,IAAW,+HAA+I,EAC9P,iCACA,gCAAoD,gTAAkT,GACtW,yBCrBA,sCASA,OARA,6BACA,iCAAiD,IAAO,IAExD,aADA,eACA,2CACA,YAEA,QACA,GACA,qBACA,EACA,0CACA,0BAA6C,UAC7C,EACA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,UAAkB,QAClB,QAA8B,EAAQ,KAAO,GAM7C,SANqC,GAMnB,CALlB,YACA,wCAA4D,OAAS,yCAA4C,IAAW,+HAA+I,EAC3Q,iCACA,gCAAoD,4pBAA8pB,GACltB,yBCrBA,sCASA,MARA,8BACA,iCAAiD,IAAO,IAExD,aADA,eACA,2CACA,YAEA,QACA,GACA,qBACA,EACA,0CACA,0BAA6C,UAC7C,EACA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,MAAc,QACd,QAA8B,EAAQ,KAAO,GAM7C,QAAc,CANuB,SACrC,GACA,wCAA4D,OAAS,4BAA+B,IAAW,+HAA+I,EAC9P,iCACA,gCAAoD,kYAAoY,GACxb,iBCrBA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,UAAkB,QA8DlB,YAAkB,CA5DlB,WACA,eACA,oBACA,6BACA,8CACA,iCACA,6BACA,+BACA,4CACA,uCACA,mCACA,mCACA,sDACA,iCACA,0CACA,uDACA,0CACA,mEACA,wBACA,mCACA,qCACA,sBACA,sBACA,sBACA,sBACA,2CACA,iCACA,+BACA,4CACA,mCACA,iCACA,8CACA,6DACA,4CACA,8CACA,mCACA,iCACA,oCACA,uCACA,0CACA,wBACA,mCACA,4CACA,iCACA,mCACA,qEACA,mEACA,mEACA,iEACA,qCACA,4CACA,iDACA,6CACA,yBACA,0BACA,4BACA,yBACA,yBC5DA,sCASA,MARA,8BACA,iCAAiD,IAAO,IAExD,aADA,eACA,2CACA,YAEA,QACA,GACA,qBACA,EACA,4CACA,mDAA6E,IAAO,KACpF,YACA,yCACA,WAGA,iDACA,EACA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,SAAiB,QACjB,MAAc,EAAQ,KAAU,EAChC,EAAqB,EAAQ,KAAuB,CAD/B,CAErB,EAAkB,EAAQ,KAAoB,CADlB,CAE5B,EAAmB,EAAQ,KAAqB,CADvB,CAEzB,EAAwB,EAAQ,KAA0B,CADhC,CAE1B,EAAmB,EAAQ,IAAqB,EADjB,EAEb,EAAQ,IAAoB,EAC9C,CAF0B,CAEN,EAAQ,KAAsB,EAClD,EAAmB,EAAQ,KAAqB,CADrB,CAE3B,EAAkB,EAAQ,KAAoB,CADpB,CAE1B,EAAqB,EAAQ,KAAuB,CAD3B,CAEzB,EAAc,EAAQ,KAAU,CADJ,CAE5B,EAAc,EAAQ,KAAU,CADX,CAErB,EAAoB,EAAQ,KAAsB,CAD7B,CAkZrB,UAjZ2B,CAiZV,CAhZjB,cAEA,IADA,EACA,uTACA,eACA,4BACA,gBACA,EADA,WACA,EAAkC,uCAClC,aACA,YACA,8BAAgE,qCAA4E,EAC5I,+BACA,IAEA,eACA,MAEA,qDAEA,aAAuC,KAAY,OAAe,CAElE,4CACA,wBACA,wBACA,2BACA,WACA,YACA,OAEA,oBACA,gBAIA,sCAAkK,kBAA+B,EAEjM,sBACA,CACA,QACA,CAAa,EACb,aAAuC,KAAY,UAAqB,CAExE,mCACA,aAAuC,KAAY,0BAAoC,aAA4B,KAAQ,gDAA0D,EAAK,EAAG,CAE7L,uCACA,wBAAwD,aAA4B,KAAQ,0CAAiD,EAAK,EAClJ,aAAuC,KAAY,UAAqB,CAExE,gDACA,wBAAwD,aAA4B,KAAQ,0EAA4F,EAAK,EAC7L,aAAuC,KAAY,UAAqB,CAExE,oCACA,iDAEA,mCACA,gDAEA,iCACA,8CAEA,mCACA,gDAEA,8BACA,aAAuC,KAAY,kBAAyB,CAE5E,gCACA,aAAuC,KAAY,eAAoB,CAEvE,qCACA,aAAuC,KAAY,oBAAyB,CAE5E,mCACA,aAAuC,KAAY,4BAAmC,CAEtF,8BACA,gCACA,UACA,sBACA,yBACA,gBACA,CAAa,EACb,aAAuC,KAAY,UAAqB,CAExE,8BACA,gCACA,UACA,sBACA,yBACA,gBACA,CAAa,EACb,aAAuC,KAAY,UAAqB,CAExE,+BACA,sCAA4E,iCAA0D,oCACtI,aAAuC,KAAY,OAAe,CAElE,gCACA,iBAEA,OADA,6BACA,MAAuC,KAAY,UAAqB,CAExE,oCACA,uCAAmF,aAAe,gCAClG,aAAuC,KAAY,UAAqB,CAExE,kCACA,sCAA+E,aAAe,gCAC9F,aAAuC,KAAY,UAAkB,CAErE,qCACA,6CAAyF,aAAe,4DACxG,aAAuC,KAAY,UAAqB,CAExE,iCACA,iFAAgK,iCAA8C,EAC9M,aAAuC,KAAY,0CAA0G,CAE7J,+BACA,iDAA0I,sBAA6B,MACvK,aAAuC,KAAY,0CAA0G,CAE7J,gCACA,4BACA,oBACA,cACA,cACA,UAA+C,IAa/C,MAZA,uDACA,eAA8D,WAAsB,SAAgB,EAEpG,wEACA,YAEA,gGACA,wBAAuE,oBAA+B,SAAgB,EAEtH,0DACA,qBAEA,CACA,CACA,QACA,CAAa,EACb,aAAuC,KAAY,UAAqB,CAExE,mCACA,aAAuC,KAAY,aAA4B,KAAa,sBAA6B,EAAG,CAE5H,kCACA,aAAuC,KAAY,aAA4B,KAAa,oBAA2B,EAAG,CAE1H,oCACA,aAAuC,KAAY,aAA4B,KAAa,wBAA+B,EAAG,CAE9H,+BACA,aAAuC,KAAY,cAA6B,KAAc,WAAgB,EAAG,CAEjH,+BACA,YAAiD,KAAc,WAAe,EAI9E,OAHA,iBACA,gBAEA,MAAuC,KAAY,UAAqB,CAExE,kCACA,iBAEA,OADA,sBACA,MAAuC,KAAY,cAA6B,CAEhF,kCACA,2BAAqE,yBAAoC,EACzG,aAAuC,KAAY,cAA6B,CAEhF,8BACA,wCACA,aAAuC,KAAY,gBAAiC,CAEpF,+BACA,6CACA,aAAuC,KAAY,gBAAiC,CAEpF,wCACA,gCACA,UACA,sBACA,gCACA,+BACa,EACb,aAAuC,KAAY,UAAqB,CAExE,iDACA,gCACA,UACA,sBACA,yCACA,wCACa,EACb,aAAuC,KAAY,UAAqB,CAExE,2CACA,gCACA,UACA,sBACA,mCACA,kCACa,EACb,aAAuC,KAAY,UAAqB,CAExE,qCACA,iBACA,0BAA8E,gEAAkF,EAChK,QAAmD,QAA0C,oBAA2B,EAExH,OADA,OACA,MAAuC,KAAY,gBAAiC,CAEpF,mCACA,yBAA+C,iDAAiF,EAChI,qBAAqD,2BAAoC,EACzF,mCACA,qDACA,aAAuC,KAAY,OAAe,CAElE,6BACA,2BAAqD,iDAAiF,EACtI,aAAuC,KAAY,OAAe,CAElE,iCACA,yBAA0D,iCAA0D,EACpH,aAAuC,KAAY,gBAA+B,CAElF,yCACA,mCACA,+CAEA,OADA,mCAAiH,iCAA0D,MAC3K,MAAuC,KAAY,gBAA+B,CAElF,wCACA,uBACA,+CAEA,OADA,mCAAiH,iCAA0D,MAC3K,MAAuC,KAAY,gBAA+B,CAElF,0BACA,aAAuC,KAAY,wBAA+B,CAElF,mCACA,uBACA,aAAuC,KAAY,gBAA+B,CAElF,mCACA,aAAuC,KAAY,gBAAkB,CACrE,2CACA,mCACA,+CACA,aAAuC,KAAY,gBAA+B,CAElF,0CACA,uBACA,+CACA,aAAuC,KAAY,gBAA+B,CAElF,6BACA,aAAuC,KAAY,8CAAiG,CACpJ,8BACA,aAAuC,KAAY,8CAAgG,CACnJ,mCACA,uBACA,OACA,iCACA,4BAA4E,sCAA8E,EAC1J,4BAA8E,qDAAqF,EACnK,uBAGA,QAFA,2CACA,MACA,MAAwC,OAAU,MAClD,uCACA,gBACA,WAEA,CACA,aAA+C,KAAY,iCAAwF,CACnJ,CACA,CACA,aAAuC,KAAY,kDAAqG,CAExJ,+BACA,qCAA8F,yBAAkC,EAChI,aAAuC,KAAY,gBAA+B,CAElF,gCACA,qCAA8F,mCAA2C,EACzI,aAAuC,KAAY,gBAA+B,CAElF,uCACA,sDACA,aAAuC,KAAY,WAAwB,CAC3E,0CACA,aAAuC,KAAY,oCAA2C,CAC9F,8BACA,aAAuC,KAAY,YAAmB,CACtE,+BACA,mBACA,aAAuC,KAAY,uBAAsC,KAAuB,aAAsB,EAAG,CACzI,wCACA,SACA,QACA,oCACA,0CACA,CACA,iDACA,aAAuC,KAAY,kBAAmC,CAEtF,8BACA,iCACA,iEACA,6CACA,aAAuC,KAAY,gBAAiC,CAEpF,kCACA,0CACA,aAAuC,KAAY,gBAAiC,CAEpF,8BACA,kCACA,iEACA,uBAAuE,0BAAyC,EAChH,aAAuC,KAAY,gBAAiC,CAEpF,4BACA,yCACA,aAAuC,KAAY,yBAA0D,CAE7G,kCACA,kBAUA,OATA,+BACA,oCACA,+BAAsE,iDAAuF,EAC7J,YACA,yBAAiE,2BAA0C,CAC3G,gDACA,CACA,CACA,CAAa,EACb,MAAuC,KAAY,QAAiB,CAEpE,kCACA,6BACA,wCACA,+BACA,sBAA4D,sCAAkF,EAC9I,wBAAkF,2BAClF,sCAAgF,EAChF,oCAAkF,KAAY,iBAAiC,GAS/H,OARA,uBACA,yBAA6D,2BAAkC,CAC/F,2BACA,SACA,oBACA,UACA,CAAqB,CACrB,CAAiB,EACjB,MAA2C,KAAY,yBAAuD,EAE9G,2BAAuE,0BAA+C,EACtH,uBACA,yBAAyD,2BAAkC,EAC3F,yCACA,CAAa,EACb,aAQA,OAPA,IACA,oBACA,gBAGA,qDAEA,MAAuC,KAAY,uBAAgD,CAEnG,6BACA,gEACA,aAAuC,KAAY,OAAe,CAElE,4CACA,qBACA,4BAAqF,cAA6B,EAClH,MACA,aAA2C,KAAY,6CAAgH,EAEvK,SACA,QACA,oCACA,6CACA,CACA,aAAuC,KAAY,yCAA6D,cAAgC,EAAG,CAEnJ,CACA,QACA,uBCnbA,gDACA,mDAA6E,IAAO,KACpF,YACA,yCACA,WAGA,iDACA,EACA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,oCAA4C,CAAG,6BAAmC,CAAG,0BAAgC,QAKrH,0BAAgC,CAJhC,cAEA,OADA,aAA4B,MAC5B,aACA,EAMA,6BAAmC,CAJnC,gBACA,WACA,4BAAuC,gBAAwC,CAC/E,EASA,sCAA4C,CAP5C,gBACA,iBACA,OACA,0BAAkD,gBAAwC,EAE1F,OADA,+BACA,CACA,mBC3BA,qCAA6C,CAAE,SAAa,EAC5D,aAAmB,CAAG,eAAqB,CAAG,mBAAyB,CAAG,cAAoB,CAAG,mBAAyB,QAC1H,MAAuB,EAAQ,KAAmB,CAElD,WAF8B,SAEL,CADzB,cAAiE,0BASjE,cAAoB,CAPpB,oBAA8E,mBAC9E,kBACA,QACA,+BACA,2BAEA,GAQA,mBAAyB,CANzB,qBACA,IACA,EAEA,CACA,EAGA,eAAqB,CADrB,YAAuC,8BAavC,aAAmB,CAXnB,YACA,SACA,MACA,SAEA,iBAIA,MAHA,wBACA,MAEA,CACA,mBChCA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,kBAA0B,CAAG,6BAAmC,CAAG,8BAAoC,CAAG,wBAA8B,CAAG,iBAAuB,CAAG,gBAAsB,CAAG,gCAAsC,CAAG,wBAA8B,QACrQ,MAAc,EAAQ,KAAU,EAChC,EAAuB,EAAQ,KAAmB,CAD7B,CAErB,EAAoB,EAAQ,KAAe,CADb,CAE9B,EAAmB,EAAQ,KAAc,CADd,CAE3B,EAAc,EAAQ,KAAU,CADN,CAE1B,EAAkB,EAAQ,IAAa,EAIvC,WAJyB,aAIK,CAH9B,YACA,+BAAgE,kCAA4C,CAC5G,EAWA,gCAAsC,CATtC,cACA,8BACA,oCACA,SACA,qCAEA,OADA,uCAEA,CAAK,GAAI,CACT,EAQA,gBAAsB,CANtB,uBACA,sBACA,aAEA,qBAAkD,2BAAoC,CACtF,EAQA,iBAAuB,CANvB,cACA,qBAGA,0BAAgD,2BAAoC,CACpF,EAKA,wBAA8B,CAH9B,cACA,yCACA,EAYA,8BAAoC,CAVpC,YACA,mBACA,wCACA,4DAGA,IAEA,CACA,EAKA,6BAAmC,CAHnC,cACA,4BAA+C,gEAA8E,CAC7H,EAkBA,oBAA0B,CAhB1B,gBAEA,IADA,IACA,YACA,kCACA,qBACA,qBACA,iCACA,GACA,2EACA,2DAEA,gJACA,+BAEA,CACA,yBCtEA,sCASA,MARA,8BACA,iCAAiD,IAAO,IAExD,aADA,eACA,2CACA,YAEA,QACA,GACA,qBACA,EACA,0CACA,0BAA6C,UAC7C,EACA,qCAA6C,CAAE,SAAa,EAC5D,oBAA0B,CAAG,qBAA2B,CAAG,eAAqB,CAAG,cAAoB,CAAG,UAAgB,CAAG,WAAiB,QAC9I,QAAuC,EAAQ,KAAmB,GAClE,EAAmB,EAAQ,KADmB,EAG9C,UAF0B,CAET,CADjB,cAAgD,0BAAmC,iBAA6B,GAKhH,UAAgB,CAHhB,YACA,uBASA,cAAoB,CANpB,mBACA,yBACA,wCAEA,CACA,EAKA,eAAqB,CAHrB,YACA,uEAWA,qBAA2B,CAR3B,YACA,6BACA,wCAEA,OADA,QACA,CACA,CACA,UAWA,oBAA0B,CAR1B,YAEA,IADA,EACA,+DACA,qBAA6C,iBAA6B,EAC1E,QAAwC,WAAmB,UAE3D,MADA,qDAEA,iBCnDA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,OAAe,QAEf,SAAe,CADf,YAAiC,qDCFjC,sCASA,MARA,8BACA,iCAAiD,IAAO,IAExD,aADA,eACA,2CACA,YAEA,QACA,GACA,qBACA,EACA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,oBAA4B,CAAG,yBAA+B,QAC9D,MAAmB,EAAQ,KAAc,CAczC,WAd0B,eAcK,CAR/B,gBACA,+BAEA,OACA,QAFA,2BAGA,mBACA,CACA,EASA,sBAA4B,CAN5B,gBACA,UAA2C,IAC3C,8CAEA,OADA,+BAA4D,aAA4B,QACxF,CACA,wBClCA,sCASA,OARA,6BACA,iCAAiD,IAAO,IAExD,aADA,eACA,2CACA,YAEA,QACA,GACA,qBACA,EACA,4CACA,mDAA6E,IAAO,KACpF,YACA,yCACA,WAGA,iDACA,EACA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,aAAqB,CAAG,aAAmB,CAAG,cAAoB,CAAG,oBAA0B,CAAG,cAAoB,CAAG,iBAAuB,CAAG,kBAAwB,CAAG,mBAAyB,CAAG,gBAAsB,QAChO,MAAoB,EAAQ,KAAe,EAQ3C,UAR2B,MAQL,CAPtB,cACA,6BACA,cACA,0BACA,CAAK,IACL,aAAoC,UACpC,EAmBA,mBAAyB,CAjBzB,gBACA,SAcA,OAbA,SACA,yBACA,SAKA,OAJA,OACA,gBACA,SAEA,CACA,CAAS,IAGT,OAEA,IAAsB,GACtB,EAKA,kBAAwB,CAHxB,cACA,gDACA,EAgBA,iBAAuB,CAdvB,cAGA,QAFA,MAAuB,IACvB,yBACA,eAAsC,IAAO,KAC7C,WACA,aAIA,OAHA,OAMA,QACA,EAEA,wBACA,UAA4B,IAC5B,gBACA,mCACA,QACA,iBAEA,MADA,QACA,IACA,MAEA,OAEA,QACA,CAKA,eAAoB,CAJpB,gBACA,wBACA,gEACA,EAQA,oBAA0B,CAN1B,kBACA,yBAAyC,gBAAgC,EACzE,uBAA6C,gBAAgC,EAE7E,OADA,gBACA,CACA,EAUA,cAAoB,CARpB,kBACA,8BAAoD,gBAAsC,EAK1F,OAJA,wBAA8C,gBAAgC,EAC9E,GACA,OAEA,iCACA,EAMA,aAAmB,CAJnB,kBACA,8BAAoD,gBAAsC,EAC1F,uCACA,EAKA,eAAqB,CAHrB,YACA,aACA,iBC9GA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,iBAAyB,QAIzB,mBAAyB,CAHzB,YACA,kFACA,mBCJA,qCAA6C,CAAE,SAAa,EAC5D,wBAA8B,CAAG,sBAA4B,QAC7D,MAAc,EAAQ,KAAU,CAgBhC,WAhBqB,YAgBO,CAX5B,cASA,2CARA,YACA,gCACA,IAEA,kCACA,GAEA,EAEA,EAQA,wBAA8B,CAN9B,cAEA,OADA,6BACA,WACA,+BACA,CACA,yBCxBA,gDACA,mDAA6E,IAAO,KACpF,YACA,yCACA,WAGA,iDACA,EACA,0CACA,0BAA6C,UAC7C,EACA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,oBAA4B,CAAG,2BAAiC,CAAG,2BAAiC,CAAG,YAAkB,CAAG,qBAA2B,CAAG,YAAkB,CAAG,qBAA2B,QAC1M,MAAc,EAAQ,KAAU,EAChC,IAAuC,EAAQ,IAD1B,CAC6C,GAClE,EAAkB,EAAQ,IAAa,CADO,CAE9C,EAAoB,EAAQ,KAAe,CAI3C,CALyB,EAKzB,QAJ2B,WAIA,CAH3B,cACA,4BAA+C,yBAAuC,CACtF,EAsBA,YAAkB,CApBlB,kBACA,6BAeA,yBAdA,YACA,mBACA,SAEA,YAAmD,gCAAkD,EACrG,WACA,SAEA,yCACA,SAGA,oDACA,GAEA,CAAK,KACL,4BAAsC,uBAAkC,CACxE,EAYA,qBAA2B,CAV3B,YACA,mFACA,2BAMA,OALA,aACA,WACA,gCACA,0BACA,mCAEA,EAEA,kBACA,2BACA,sEACA,+CAAgF,kBAAuC,EACvH,MACA,2KAAsM,cAAgB,eAEtN,kBAsBA,YAAkB,CApBlB,gBACA,8BACA,oCACA,oDACA,sDACA,SAEA,mCAAsG,UAAgB,EACtH,UACA,4BACA,kCACA,mBAKA,OAJA,kCACA,0CACA,2CAEA,QACA,CAAS,CACT,CAAK,GACL,EAMA,2BAAiC,CAJjC,YACA,mDAA+E,wDAA+D,EAC9I,qBACA,EAEA,2BAAiC,GACjC,sBACA,YACA,CAAS,CACT,uEACA,gCACK,EACL,sBACA,YACA,CAAS,CACT,qCACK,EACL,sBACA,UACA,CAAS,CACT,mCACK,EACL,sBACA,UACA,CAAS,CACT,kCACA,CAAK,EACL,sBACA,WACA,CAAS,CACT,0CACK,EACL,sBACA,WACA,CAAS,CACT,0CACK,EACL,sBACA,+EACA,CAAS,CACT,oCACA,mCACK,EACL,oBACA,sBACA,CAAS,CACT,kCACK,EACL,oBACA,uBACA,CAAS,CACT,qCACK,EAkBL,sBAA4B,CAjB5B,gBACA,oCACA,oCACA,EAEA,qBAEA,IADA,EACA,8BACA,2BACA,0CAEA,YAAiD,2BAA6C,GAC9F,8BACA,uEACA,CAAS,CACT,CAAK,GACL,wBCzJA,gDACA,mDAA6E,IAAO,KACpF,YACA,yCACA,WAGA,iDACA,EACA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,SAAiB,CAAG,cAAoB,CAAG,cAAoB,CAAG,SAAe,CAAG,qBAA2B,CAAG,eAAqB,CAAG,gBAAsB,CAAG,mBAAyB,CAAG,sBAA4B,CAAG,eAAqB,CAAG,kBAAwB,CAAG,WAAiB,QAClS,MAAkB,EAAQ,IAAa,EACvC,WADyB,CACR,GACjB,kBAAwB,IACxB,eAAqB,IACrB,sBAA8D,OAAU,qGAAuI,CAQ/M,uBAA4B,CAP5B,cACA,2BAAkE,6CAAyD,EAI3H,OAHA,qBACA,UAEA,CACA,EAOA,mBAAyB,CALzB,YACA,SACA,mBAA+B,iCAA2C,EAC1E,gBAA4B,aAAe,CAC3C,EAWA,gBAAsB,CATtB,kBACA,iCACA,OACA,SACA,iBACA,gBACA,CAAK,EACL,4BACA,EAkBA,eAAqB,CAhBrB,cACA,aAA0B,MAC1B,SAYA,OAXA,wBACA,0BACA,cAEA,CACA,iBACA,UACA,QAA0B,+FAAqJ,EAC/K,8DACA,CACA,CAAK,EACL,CACA,EA+CA,qBAA2B,CA7C3B,YACA,qIAEA,GADA,cACA,QACA,MACA,4BAA4E,2BAAmC,EAC/G,MACA,kCAAyE,kCAA2D,EAkCpI,OAjCA,wBACA,8BAAiG,gBAAkC,EAGnI,GAFA,IACA,mBAA+D,sBAAwC,EACvG,CACA,2BACA,6BACA,OACA,SACA,iBACA,iBACA,uCAAwG,oBAAsC,EAC9I,gBACA,CAAqB,EACrB,GACA,iBACA,mCAEA,gCACA,cACA,YAEA,iBACA,yBAEA,KACA,CACA,SACA,gCACA,cACA,UACA,CACA,CAAa,EACb,CACA,CACA,CACA,EAsBA,SAAe,CApBf,gBACA,aAAmC,MACnC,cAgBA,OAfA,sBACA,WACA,KACA,gBAEA,CACA,eACA,EAIA,UAHA,YAKA,CACA,CAAK,EACL,CACA,EAGA,cAAoB,CADpB,WAAiC,oBAMjC,cAAoB,CAJpB,kBACA,YAA4C,6CAA8G,EAC1J,gEACA,EAMA,WAAiB,CAJjB,gBACA,0CACA,6DACA,uBCtIA,gDACA,mDAA6E,IAAO,KACpF,YACA,yCACA,WAGA,iDACA,EACA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,yBAAiC,CAAG,iBAAuB,CAAG,UAAgB,QAU9E,UAAgB,CAThB,gBACA,aAAmC,MACnC,kBACA,qBAA4D,qCAA6C,SACzG,EACA,sBAEA,CACA,EA+BA,iBAAuB,CA7BvB,gBACA,iBACA,sBACA,KAwBA,OAvBA,wBACA,MACA,UAEA,0BACA,oBACA,MACA,YACA,kBACA,MACA,CACA,IACA,MAEA,KAEA,WACA,UACA,2BACA,SACA,YACS,CACT,CAAK,EACL,CACA,EAcA,2BAAiC,CAZjC,cACA,SASA,OARA,sBACA,8BACA,CAAK,EACL,wBACA,sBACA,oEACA,CAAS,CACT,CAAK,EACL,CACA,yBC9DA,sCASA,MARA,8BACA,iCAAiD,IAAO,IAExD,aADA,eACA,2CACA,YAEA,QACA,GACA,qBACA,EACA,0CACA,0BAA6C,UAC7C,EACA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,oBAA4B,CAAG,yBAA+B,CAAG,sBAA4B,QAC7F,MAAc,EAAQ,KAAU,EAChC,EAAkB,EAAQ,IAAa,CACvC,CAFqB,CAErB,EAAuC,EAAQ,KAAmB,CADzC,EAGzB,SAF8C,aAElB,CAD5B,cAA+D,4MAsC/D,yBAA+B,CApC/B,gBACA,wBAAgD,WAAmB,IAAQ,EAC3E,qBAAsD,iBAA6B,EACnF,MACA,kDAYA,GAXA,+BACA,iBACA,mCACA,WAEA,4BACA,sBACA,uBACA,mBACa,EAEb,EAEA,IADA,kBACA,0CACA,2BAAqE,uBAAyB,CAC9F,uBACA,OAGA,uBACA,mBAEA,+BACA,2BACA,wBACA,eACA,CAAa,CACb,CACA,CACA,QACA,EAaA,sBAA4B,CAX5B,YASA,OAPA,EACA,2BACA,+CAGA,6BAGA,mBCpEA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,WAAmB,CAAG,WAAiB,CAAG,aAAmB,CAAG,cAAoB,QACpF,MAAkB,EAAQ,IAAa,EACvC,EAAmB,EAAQ,KAAc,EADhB,EAkBzB,QAjB0B,IAiBN,CAhBpB,gBAGA,IAFA,EACA,EAEA,wBACA,wEAEA,CACA,sCAAiE,2BAAyC,EAE1G,IADA,mBAEA,mBACA,YAEA,OAAa,sCACb,EAkBA,aAAmB,CAhBnB,gBAGA,IAFA,EACA,EAEA,wBACA,uDAEA,CACA,sCAAiE,2BAAyC,EAE1G,IADA,EAEA,mBACA,YAEA,OAAa,sCACb,EAkBA,WAAiB,CAhBjB,gBACA,oBACA,mBACA,yBACA,WACA,wCACA,KACA,CACA,6CAAsH,6DAA4F,EAClN,QACA,aACA,wCACA,CACA,CACA,OAAa,oCACb,EAkBA,aAAmB,CAhBnB,gBACA,oBACA,mBACA,yBACA,oBACA,wCACA,KACA,CACA,6CAAsH,6DAA4F,EAClN,iBACA,aACA,wCACA,CACA,CACA,OAAa,oCACb,mBCtEA,qCAA6C,CAAE,SAAa,EAC5D,eAAqB,CAAG,qBAA2B,CAAG,mBAAyB,CAAG,aAAmB,CAAG,eAAqB,CAAG,cAAoB,QACpJ,MAAc,EAAQ,KAAU,EAChC,UADqB,IACD,GAWpB,eAAqB,CATrB,qBACA,aAGA,aACA,aAEA,mCARA,EAQA,GALA,CAMA,EAWA,aAAmB,CATnB,cACA,gCACA,SAEA,kBAfA,GAiBA,IADA,iBAEA,qBACA,EAcA,mBAAyB,CAZzB,yBACA,MACA,qBAA8C,oCAA2D,EAEzG,MACA,qBAA8C,yBAAwC,EAEtF,KACA,qBAA8C,4EAAkI,EAEhL,CACA,EAGA,qBAA2B,CAD3B,YAAkD,+CAAuE,SAAe,GAMxI,eAAqB,CAJrB,cAAkD,qCAClD,YACA,2DACA,sDC3CA,sCASA,MARA,8BACA,iCAAiD,IAAO,IAExD,aADA,eACA,2CACA,YAEA,QACA,GACA,qBACA,EACA,4CACA,mDAA6E,IAAO,KACpF,YACA,yCACA,WAGA,iDACA,EACA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,iBAAyB,CAAG,kBAAwB,CAAG,qBAA2B,CAAG,sBAA4B,CAAG,kBAAwB,CAAG,iBAAuB,CAAG,SAAe,CAAG,SAAe,CAAG,2BAAiC,CAAG,4BAAkC,CAAG,iBAAuB,CAAG,YAAkB,CAAG,aAAmB,QACxV,MAAoB,EAAQ,KAAe,EAC3C,EAAkB,EAAQ,IAAa,CACvC,CAF2B,CAEb,EAAQ,KAAU,EAChC,CAFyB,CAEL,EAAQ,KAAe,CADtB,CAErB,EAAmB,EAAQ,IAAc,EACzC,EAAkB,EAAQ,KAAa,EACvC,EAAqB,EAAQ,KAAgB,CADpB,CAEzB,EAAkB,EAAQ,IAAa,EADX,EAEL,EAAQ,KAAmB,EADzB,EAWzB,QAV8B,GAUX,CATnB,gBACA,QACA,iDACA,MACA,iBACA,YACA,CACA,QACA,EAGA,mBACA,oBACA,SAkBA,gBACA,SAlBA,GACA,wBAEA,QADA,EACA,CACA,IAFA,EAEA,GACA,uBACA,kBACA,KACA,WACA,yBACA,aACA,UACA,CAAqB,CACrB,EAEA,CACA,EAEA,GAGA,OADA,UAA6D,WAA6E,6EAA4I,mBAA+D,CAErV,CACA,YAAkB,GAKlB,iBAAuB,CAHvB,YACA,kCACA,EAMA,4BAAkC,CAJlC,YACA,uDACA,qDAA8E,8CAAiF,CAC/J,EAMA,2BAAiC,CAJjC,YACA,uDACA,yCAA4D,8CAAiF,CAC7I,EAEA,kBACA,uLACA,2BACA,aACA,+BACA,0BACA,0BAEA,aACA,6BAAgE,0BAAkC,2BAA+B,EAAI,KAGrI,OAFA,oCACA,uBAAoE,6EAA8I,GAElN,EAOA,SAAe,CANf,YACA,eACA,OAEA,MADA,sBAEA,EAKA,SAAe,CAHf,YACA,0EAA8G,2BAAgC,CAC9I,EASA,iBAAuB,CAPvB,YACA,8CACA,8BACA,iCACA,yCAA4G,aAAqB,CACjI,CAAK,MAML,kBAAwB,CAHxB,YACA,kCACA,EAWA,sBAA4B,CAT5B,YACA,eACA,IACA,iBACA,WACA,0BACA,CACA,QACA,EAqBA,qBAA2B,CAnB3B,YACA,eACA,YACA,mBACA,IACA,KAOA,OANA,IACA,WACA,uBAAuD,0BAAkC,2BAA+B,EAAI,EAC5H,uBAAgD,0BAAmC,2BAA+B,EAAI,GAGtH,CACA,QAFA,uBAA4C,qBAA6B,EAGzE,oBACA,iBACA,aACA,CACA,EAUA,kBAAwB,CARxB,cAEA,IADA,EACA,iFACA,MACA,oBACA,uBACA,CACA,EA0CA,mBAAyB,CAxCzB,YACA,gGACA,IAsBA,UAAsB,qCACtB,IACA,iEACA,iCACA,mCACA,CAAS,uBACT,mCACA,CAAS,oBACT,oCACA,qDACA,MAEA,IADA,cACA,GAEA,EAAW,CAnCX,GACA,wBACA,IACA,uCACA,iCAEA,kBACA,CAAS,CACT,wBAEA,QACA,mCAEA,CAAS,CACT,uBACA,uCACA,iCAEA,kBACA,CACA,EAAM,GAgBN,yBCvMA,sCASA,MARA,8BACA,iCAAiD,IAAO,IAExD,aADA,eACA,2CACA,YAEA,QACA,GACA,qBACA,EACA,4CACA,mDAA6E,IAAO,KACpF,YACA,yCACA,WAGA,iDACA,EACA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,iBAAyB,CAAG,gCAAsC,CAAG,8BAAoC,CAAG,wBAA8B,CAAG,2BAAiC,QAC9K,MAAkB,EAAQ,IAAa,EAcvC,WAdyB,gBAcQ,CAbjC,YACA,0EACA,OADA,iBACA,gBACA,yBAAiD,2BAAkC,EACnF,oCAAkG,iDAA+E,EACjL,qFACA,aAAmC,KAAW,wBAC9C,SACA,UACA,OACA,CAAa,EAAG,CAChB,CAAK,CACL,EAYA,wBAA8B,CAV9B,gBACA,SAOA,OANA,+BACA,iCACA,sBACA,QAAiC,8BAAiD,CAClF,CAAS,CACT,CAAK,EACL,CACA,EAeA,8BAAoC,CAbpC,gBACA,iBAUA,OATA,sBACA,mBACA,mBAAqD,8CAAqE,GAC1H,QACA,gBACA,aACA,CAAa,CAEb,CAAK,EACL,CACA,EAQA,gCAAsC,CANtC,gBAIA,OAHA,qBACA,0BAAyC,qCAA0E,CACnH,CAAK,CAEL,EASA,mBAAyB,CAPzB,gBAEA,oEACA,SACA,IAHA,EAGA,GAAuB,qCACvB,aAA+B,KAAY,UAAqB,CAChE,uBC3EA,gDACA,mDAA6E,IAAO,KACpF,YACA,yCACA,WAGA,iDACA,EACA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,gBAAwB,CAAG,iBAAuB,CAAG,mBAAyB,CAAG,sBAA4B,CAAG,UAAgB,CAAG,aAAmB,QACtJ,MAAc,EAAQ,KAAU,EAChC,EAAkB,EAAQ,IAAa,EAkBvC,WAlByB,EAkBN,CAjBnB,YACA,4BAAyC,uBAAyB,4BAClE,0BACA,EAEA,YAGA,aAGA,wBACA,GAEA,EARA,EASA,CAAK,CACL,EAcA,UAAgB,CAZhB,gBACA,yBAA6C,uBAAyB,EACtE,MACA,SAEA,YAAoC,SAAgB,EACpD,mBAAmE,kEAA8H,4CACjM,KACA,MAEA,OADA,kBAEA,EAEA,kBACA,qBACA,kCACA,qCACA,MACA,EAEA,QACA,GAEA,QACA,EAEA,uCACA,qCAEA,QACA,CACA,EACA,cACA,qBACA,kCACA,qCACA,MACA,EAEA,QACA,EAEA,QACA,GAEA,uCACA,qCAEA,QACA,CACA,CAMA,uBAA4B,CAL5B,YACA,oDACA,qCACA,2CAOA,mBAAyB,CAJzB,YACA,oDACA,gCACA,EAQA,iBAAuB,CANvB,YACA,uCACA,6CACA,2CACA,kCAMA,kBAAwB,CAHxB,cACA,iEACA,yBCtGA,gDACA,mDAA6E,IAAO,KACpF,YACA,yCACA,WAGA,iDACA,EACA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,WAAmB,CAAG,qBAA2B,CAAG,mBAAyB,CAAG,oBAA0B,CAAG,cAAoB,CAAG,eAAqB,QACzJ,MAAkB,EAAQ,IAAa,EACvC,WADyB,IACJ,IACrB,cAAoB,IAMpB,oBAA0B,CAL1B,cACA,SACA,mBAAkC,yCAAsD,EACxF,gBAA+B,yCAAqE,CACpG,EAEA,wBACA,aAA+B,KAC/B,oCACA,MACA,QAAkB,mDAA2E,EAE7F,QAAoB,mDAAyE,EAK7F,OAJA,sBACA,mBACA,iBACA,CAAK,EACL,CACA,EAeA,mBAAyB,CAdzB,oBACA,aAAiC,MACjC,WACA,IACA,gBACA,UACA,wBAEA,wCACA,EACA,mCAEA,CACA,EAsBA,qBAA2B,CApB3B,YACA,yFACA,SACA,oBAAqD,iCAA0D,EAC/G,yBAEA,OADA,gCACA,CACA,CAAK,GAAI,EAWT,OAVA,sBACA,iCACA,qBACA,cAEA,CACA,uCACA,8BACA,CACA,CAAK,EACL,CACA,EAEA,kBACA,0DACA,KACA,KAeA,OAdA,sBAEA,IADA,EACA,6DACA,OACA,UACA,MACA,CACA,MACA,UAEA,qBACA,YAEA,CAAK,EACL,CAAa,0BACb,EAuBA,aAAmB,CAtBnB,YACA,2FACA,qBACA,8BACA,OACA,eACA,cACA,oBACA,oBACA,EAAS,EAET,SACA,OACA,oBACA,oBACA,CAAK,gCACL,KAIA,OAHA,sBACA,wBACA,CAAK,EACL,CACA,iBC9GA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,kBAA0B,QAO1B,oBAA0B,CAN1B,kBACA,KACA,UAA4B,2BAAgD,CAG5E,mBCPA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,cAAsB,CAAG,2BAAiC,QAC1D,MAAkB,EAAQ,IAAa,CAIvC,YAJyB,gBAIQ,CAHjC,YACA,0BA0CA,gBAAsB,CAvCtB,kBACA,SACA,gHACA,mCACA,IACA,IAyBA,OAxBA,uBACA,mBACA,8BACA,aACA,gBACA,GACA,MAgBA,OAfA,SACA,aACA,KACA,WAGA,MAIA,IACA,GACA,QAGA,GACA,CAAK,IACL,CACA,cACA,YACA,kBACA,uBACA,oDACA,MACA,CACA,mBC7CA,qCAA6C,CAAE,SAAa,EAAC,EAC7D,UAAkB,CAAG,YAAkB,CAAG,mBAAyB,CAAG,cAAoB,CAAG,kBAAwB,CAAG,gBAAsB,CAAG,aAAmB,CAAG,cAAoB,CAAG,kBAAwB,CAAG,gBAAsB,CAAG,iBAAuB,CAAG,WAAiB,CAAG,gBAAsB,CAAG,iBAAuB,CAAG,gBAAsB,CAAG,YAAkB,CAAG,gBAAsB,CAAG,gBAAsB,CAAG,YAAkB,CAAG,YAAkB,CAAG,aAAmB,CAAG,aAAmB,CAAG,YAAkB,CAAG,sBAA4B,CAAG,iBAAuB,CAAG,YAAkB,CAAG,WAAiB,CAAG,iBAAuB,CAAG,sBAA4B,CAAG,uBAA6B,CAAG,eAAqB,CAAG,QAAc,CAAG,YAAkB,CAAG,cAAoB,CAAG,aAAmB,CAAG,wBAA8B,CAAG,yBAA+B,CAAG,iBAAuB,CAAG,WAAiB,CAAG,aAAmB,CAAG,qBAA2B,CAAG,iBAAuB,CAAG,mBAAyB,CAAG,iBAAuB,CAAG,yBAA+B,CAAG,+BAAqC,CAAG,sBAA4B,CAAG,8BAAoC,CAAG,qBAA2B,CAAG,0BAAgC,QACvwC,eAAqB,CAAG,aAAmB,CAAG,WAAiB,CAAG,gBAAsB,CAAG,gBAAsB,CAAG,UAAgB,CAAG,0BAAgC,CAAG,iBAAuB,CAAG,eAAqB,CAAG,iBAAuB,CAAG,kBAAwB,CAAG,YAAkB,CAAG,cAAoB,CAAG,iBAAuB,CAAG,mBAAyB,CAAG,UAAgB,QACnY,MAAc,EAAQ,KAAS,CAO/B,WAPqB,gBAOW,CANhC,gBAAqE,OACrE,YACA,UACA,OACA,2CACC,EAMD,qBAA2B,CAJ3B,YAAqD,OACrD,gBACA,sCACC,EAOD,8BAAoC,CALpC,cAAoF,OACpF,YACA,2BACA,+CACC,EAOD,sBAA4B,CAL5B,cAAkE,OAClE,YACA,iBACA,uCACC,EAOD,+BAAqC,CALrC,cAAoF,OACpF,YACA,0BACA,gDACC,EAOD,yBAA+B,CAL/B,cAAwE,OACxE,YACA,oBACA,0CACC,EAKD,iBAAuB,CAHvB,WAAoC,OACpC,kCACC,EAQD,mBAAyB,CANzB,gBAAmE,OACnE,YACA,cACA,oCACA,OACA,CAAC,EAQD,iBAAuB,CANvB,gBAAiE,OACjE,YACA,cACA,kCACA,OACA,CAAC,EAMD,qBAA2B,CAJ3B,YAAiD,OACjD,YACA,sCACC,EAOD,aAAmB,CALnB,cAAsD,OACtD,YACA,cACA,8BACC,EAMD,WAAiB,CAJjB,YAAyC,OACzC,cACA,4BACC,EAKD,iBAAuB,CAHvB,WAAoC,OACpC,kCACC,EAKD,yBAA+B,CAH/B,WAA4C,OAC5C,yCACA,CAAC,EAKD,wBAA8B,CAH9B,WAA2C,OAC3C,yCACC,EAMD,aAAmB,CAJnB,YAA2C,OAC3C,cACA,6BACA,CAAC,EAMD,cAAoB,CAJpB,YAA8C,OAC9C,gBACA,+BACC,EAOD,YAAkB,CALlB,cAAqD,OACrD,YACA,cACA,6BACC,EAMD,QAAc,CAJd,YAAqC,OACrC,aACA,yBACC,EAKD,eAAqB,CAHrB,WAAkC,OAClC,gCACC,EAKD,uBAA6B,CAH7B,WAA0C,OAC1C,wCACC,EAKD,sBAA4B,CAH5B,WAAyC,OACzC,uCACC,EAMD,iBAAuB,CAJvB,YAA+C,OAC/C,cACA,iCACA,CAAC,EAMD,WAAiB,CAJjB,YAAyC,OACzC,cACA,4BACC,EAMD,YAAkB,CAJlB,YAA4C,OAC5C,gBACA,6BACC,EAOD,iBAAuB,CALvB,cAAkE,OAClE,kBACA,gBACA,iCACA,CAAC,EAMD,sBAA4B,CAJ5B,YAAiD,OACjD,WACA,uCACC,EAMD,YAAkB,CAJlB,YAAmC,OACnC,OACA,4BACA,CAAC,EAMD,aAAmB,CAJnB,YAAoC,OACpC,OACA,8BACC,EAKD,aAAmB,CAHnB,WAAgC,OAChC,8BACC,EAKD,YAAkB,CAHlB,WAA+B,OAC/B,6BACC,EAKD,YAAkB,CAHlB,WAA+B,OAC/B,6BACC,EAMD,gBAAsB,CAJtB,YAA8C,OAC9C,cACA,iCACC,EAMD,gBAAsB,CAJtB,YAA8C,OAC9C,cACA,iCACC,EAOD,YAAkB,CALlB,cAAoD,OACpD,cACA,uBACA,6BACC,EAMD,gBAAsB,CAJtB,YAA8C,OAC9C,cACA,gCACA,CAAC,EAMD,iBAAuB,CAJvB,YAA+C,OAC/C,cACA,iCACA,CAAC,EAOD,gBAAsB,CALtB,cAAwD,OACxD,cACA,uBACA,iCACC,EAQD,WAAiB,CANjB,YACA,OACA,4BACA,SACA,CACA,EAMA,iBAAuB,CAJvB,YAA6C,OAC7C,YACA,kCACC,EAMD,gBAAsB,CAJtB,YAA2C,OAC3C,WACA,iCACC,EAMD,kBAAwB,CAJxB,YAA+C,OAC/C,aACA,kCACA,CAAC,EAOD,cAAoB,CALpB,cAAiD,OACjD,+BACA,YACA,OACA,CAAC,EAOD,aAAmB,CALnB,cAA8D,OAC9D,8BACA,cACA,mBACA,CAAC,EAOD,gBAAsB,CALtB,cAA6D,OAC7D,iCACA,YACA,iBACA,CAAC,EAOD,kBAAwB,CALxB,cAA+D,OAC/D,mCACA,YACA,iBACA,CAAC,EAOD,cAAoB,CALpB,cAA8C,OAC9C,+BACA,SACA,OACA,CAAC,EAOD,mBAAyB,CALzB,cAAsD,OACtD,oCACA,YACA,OACA,CAAC,EAMD,YAAkB,CAJlB,YAAwC,OACxC,YACA,6BACC,EAMD,YAAkB,CAJlB,YAAwC,OACxC,YACA,6BACC,EAKD,UAAgB,CAHhB,WAA6B,OAC7B,2BACC,EAKD,mBAAyB,CAHzB,WAAsC,OACtC,oCACC,EAMD,iBAAuB,CAJvB,YAAgD,OAChD,eACA,iCACA,CAAC,EAKD,cAAoB,CAHpB,WAAiC,OACjC,+BACC,EAMD,YAAkB,CAJlB,YAAsC,OACtC,UACA,6BACC,EAMD,kBAAwB,CAJxB,YAA6C,OAC7C,WACA,kCACA,CAAC,EAMD,iBAAuB,CAJvB,YAA4C,OAC5C,WACA,kCACC,EAMD,eAAqB,CAJrB,YAA0C,OAC1C,WACA,gCACC,EAMD,iBAAuB,CAJvB,YAA4C,OAC5C,WACA,kCACC,EAMD,0BAAgC,CAJhC,YAAwD,OACxD,cACA,2CACC,EAKD,UAAgB,CAHhB,WAA6B,OAC7B,2BACC,EAKD,gBAAsB,CAHtB,WAAmC,OACnC,gCACA,CAAC,EAKD,gBAAsB,CAHtB,WAAmC,OACnC,iCACC,EAOD,WAAiB,CALjB,cAA8C,OAC9C,UACA,UACA,4BACC,EAMD,aAAmB,CAJnB,YAAyC,OACzC,YACA,8BACC,EAMD,eAAqB,CAJrB,YAA2C,OAC3C,YACA,gCACC,iBCpVD,qCAA6C,CAAE,SAAa,EAC5D,UAAgB,QAChB,UAAgB,qBCFhB,qCAA6C,CAAE,SAAa,EAC5D,MAAc,EAAQ,KAAS,EAC/B,EAAmB,EAAQ,KAAqB,CAD3B,CAWrB,MARA,IAF0B,OAG1B,sCACA,gDACA,0BACA,uBACA,EAIA,SAAe,kBCbf,qCAA6C,CAAE,SAAa,EAAC,EAC7D,iBAAyB,CAAG,oBAA0B,CAAG,eAAqB,CAAG,aAAmB,CAAG,eAAqB,CAAG,cAAoB,CAAG,YAAkB,CAAG,aAAmB,CAAG,UAAgB,CAAG,gBAAsB,QAE1O,YACA,kBACA,YACA,6BACA,CAAC,oBAA8C,gBAAsB,IAAK,EAE1E,YAEA,oBACA,cAEA,kBACA,kBAEA,iBACA,CAAC,cAAkC,UAAgB,IAAK,EAExD,YACA,cACA,aACA,CAAC,iBAAwC,aAAmB,IAAK,EAEjE,YACA,oCACA,8BACA,wCACA,4BACA,oCACA,wCACA,wBACA,oDACA,oCACA,kDACA,4BACA,8BACA,4BACA,0BACA,kCACA,4BACA,0BACA,wBACA,sBACA,8BACA,sCACA,wCACA,oCACA,oCACA,sCACA,gCACA,kCACA,0BACA,kCACA,kCACA,4BACA,8BACA,kCACA,0BACA,kCACA,4BACA,kBACA,gDACA,gCACA,8CACA,wBACA,0BACA,oCACA,oCACA,0BACA,oCACA,0BACA,kCACA,4BACA,0BACA,gCACA,oCACA,0BACA,wCACA,oDACA,8CACA,8CACA,gEACA,sDACA,8DACA,4CACA,oCACA,kCACA,sCACA,wBACA,4CACA,sDACA,kDACA,qBACA,CAAC,gBAAsC,YAAkB,IAAK,EAE9D,YACA,kBACA,qBACA,CAAC,kBAA0C,cAAoB,IAAK,EAEpE,YACA,kBACA,mBACA,CAAC,mBAA4C,eAAqB,IAAK,EAEvE,YACA,cACA,kBACA,wCACA,8BACA,oDACA,kCACA,uDACA,CAAC,iBAAwC,aAAmB,IAAK,EAEjE,YACA,cACA,wBACA,8BACA,qDACA,CAAC,mBAA4C,eAAqB,IAAK,EAEvE,YACA,YACA,kBACA,eACA,eACA,uBACA,uBACA,sBACA,oBACA,yBACA,CAAC,uBAAsD,qBAA0B,IAAK,EAEtF,YACA,kBACA,eACA,CAAC,uBAAoD,mBAAyB,IAAK,yBC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BA,UACA,CACA,EE7EoB,CACpB,KACA,KACA,CAAG,EACH,EAAkB,aAAO,MACzB,mCACA,MACA,cACA,4BACA,MAAa,kBAAY,IACzB,KACA,SACA,YACA,iBACA,+BACA,WACA,MACA,QAAiB,OAAK,4DACtB,CAAO,CACP,CAAK,EACL,MACA,YACA,OACA,SAEA,UAKA,MAJM,OAAI,CACV,2FAAmG,EAAE,IAAqB,uBAAuB,EAAE,IAAsB,eAAe,EAAE,GAAY,EACtM,eAEA,EAEA,4BACA,cACA,SAEA,MAAyC,SAAG,CAAC,GAAY,EAAI,OAAuB,EACpF,EAA0B,kBAAY,OACtC,cACA,eACA,UACA,CAAK,EACL,0BACA,gBACA,wBACA,WACA,eACA,sBACA,qBACA,UAAiC,SAAG,SAAW,kBAA6C,CAC5F,CAAK,IACL,UACA,aACA,KACA,6BACA,CACG,EACH,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,MAAyB,SAAG,IAAc,gBAA6C,SAAG,OAAS,kBAAsC,EAAG,CAC5I,CAAC,EACD,mCACA,iNIzFA,EAAkB,QAAU,SAC5B,IACA,YACA,mBACA,WACA,SACA,YACA,eACA,aACA,gBACA,eACA,eACA,oBACA,CDVA,YACA,KCSuB,CDTvB,GAAgC,QAAgB,GAAgB,GAAc,cAC9E,CACA,MACA,KACA,YACA,WACA,SACA,YACA,eACA,aACA,aACA,mBACA,KACA,CAAI,EAEJ,iCACA,8BACA,yCACA,qBACA,EAAiB,QAAS,IAC1B,WAAU,GDnBV,cACA,IAAU,kEAA2H,EACrI,CAAU,aAAuB,GAAM,MDEvC,KACA,IAAU,wDACV,6BAAwE,EACxE,IACA,cACA,YACA,mBACA,GACA,IAAU,kBAAiC,GAAM,KAAmB,KACpE,CAAU,0BAA+C,GAAM,KAAe,CAC9E,UACA,eACA,aACA,aACA,KACA,CAAK,EACL,KAAuB,KAAqB,GAC5C,YACA,CAAK,EACL,KAAkC,KAAiB,KACnD,KAAqB,QACrB,KAA8B,IAAmB,KACjD,OACA,YACA,aAAuB,KAAiB,KACxC,KACA,KACA,0BACA,iCACA,YACA,KACA,+CACA,IACA,KACA,2DAGA,iFACA,4BAA+C,MAA2B,6BAC1E,mBACA,iDAEA,CACA,CAAS,CACT,CACA,EC/CqD,CACrD,gBACA,cACA,KACK,IACL,qBACA,KAQA,OAPA,SACA,IACA,4BAGA,kCAEA,CACA,WACA,kBACA,KAEA,CACA,ECFA,CAAM,+BAAqD,CAC3D,GAEA,gBAAU,4BAA0C,OAAY,GAChE,EAAgB,aAAO,CACvB,IAAU,OAAc,EACxB,KACA,YACA,qFACA,WACA,CAAK,EACL,CAAK,QAAY,UAEjB,EAAqB,OAAI,0BAwBzB,OACA,YACA,iBA9CA,QA+CA,WACA,YACA,eACA,aACA,aACA,YACA,SACA,gBACA,aAlCA,MACA,MACA,mBACA,kBAA4B,QAAmB,EAC/C,GAAO,OAAc,IACrB,SACA,CAAK,EACL,CAAG,CA4BH,aA3BA,MACA,oCACA,mBACA,aAAkB,QAAQ,IAC1B,qBAA0B,QAAQ,IAClC,4CACA,0CACA,kBAA4B,4BAAsD,EAClF,GAAO,OAAU,QAA4B,GAC7C,CAAG,CAmBH,kBAlBA,MACA,wBACA,cAAmB,QAAQ,KAC3B,uBAAiC,iCAA2D,CAC5F,CAAG,CAeH,CACA,EChEuB,CACvB,KACA,KACA,CAAG,EACH,MAAyB,UAAI,IAAqB,iBAC9B,UAAI,IAAc,iBACtC,EACA,EACA,EACA,CAAO,EACP,QAAiD,SAAG,SAAW,kBAA6C,EAC5G,CAAK,CACL,CAAC,EACD,mCACA,+EC7BA,EAAuB,QAAU,SACjC,OAAU,qBAAgC,EAE1C,EAAiB,QAAS,IAC1B,MAAyB,SAAG,CAF5B,UAE4B,CAAc,uCAAuE,CACjH,CAAC,EACD,0JEJA,EAAqB,QAAU,SAC/B,IAAU,uCDAV,YACA,IACA,CCFiE,EDEjE,EACA,MACA,QACA,WACA,WACA,aACA,UACA,UACA,eACA,YACA,KACA,CAAI,EACJ,4BACA,gBACA,qBACA,EAAiB,QAAS,IAC1B,EAAiB,QAAS,GAC1B,EAAoB,aAAO,CAC3B,SAAwB,qBAAqD,4BAC7E,OAEA,WAAU,gBAAwB,CAAE,MAAQ,EAC5C,aACA,SACA,CAAG,EACH,YAAU,gCAA0C,OAAY,GAAG,EACnE,WAAU,gBAAwB,CAAE,MAAQ,aAAG,EAAY,EAkC3D,OACA,YACA,WACA,YACA,YACA,iBACA,aAvCA,KAAmC,GACnC,EACA,MACA,cACA,gBACA,eACA,eAAsB,QAAQ,IAC9B,gBAAuB,QAAQ,IAC/B,gBAAuB,QAAQ,IAC/B,cAAqB,QAAQ,IAC7B,aAAoB,QAAQ,IAC5B,aAAoB,QAAQ,IAC5B,eAAsB,QAAQ,IAC9B,qBAA4B,QAAQ,IACpC,GAAS,OAAU,CACnB,EACA,EACA,EACA,EACQ,OAAc,IACtB,SACA,CAAS,EACT,CACA,UAAiB,OAAI,gBACrB,YACQ,OAAK,gCACb,0GAAmI,QAAoB,8BACvJ,mBACA,iDAEA,CACA,EASA,CACA,ECtEiE,CAAG,WAAe,EACnF,MAAyB,SAAG,IAAc,kBAA6B,CACvE,CAAC,EACD,0ECRA,OACA,cACA,cACA,cACA,EACA,CAAC,MAA0B,yDCE3B,EAAiB,QAAE,EACnB,OACA,6DACA,SACA,OACA,cACA,QACA,YACA,WACA,QACA,eACA,mBACA,CACA,8DACA,QACA,QACA,QACA,WACA,OACA,mBACA,eACA,iBACA,gBACA,SACA,cACA,aACA,sBACA,OACA,CACA,aACA,SACA,oBACA,wCACA,gCACA,CACA,qEACA,wBACA,CAAG,CACH,UACA,SACA,UACA,MACA,gBACA,iBACA,iBACA,mCAEA,CAAO,CACP,OACA,qBACA,CAAO,CACP,OAAc,CACd,OACA,wCAEA,CAAK,CACL,OACA,SACA,OAAgB,GAAa,eACtB,CACP,SACA,OAAgB,GAAa,eACtB,CACP,WACA,OAAgB,GAAa,iBACtB,CACP,SACA,OAAgB,GAAa,eACtB,CACP,SACA,OAAgB,GAAa,eACtB,CACP,QACA,OAAgB,GAAa,cAE7B,CAAK,CACL,MACA,KAAY,CACZ,KAAY,CACZ,KACA,CAAK,CACL,QACA,OAAc,CACd,KAAY,CACZ,KAAY,CACZ,KAAY,CACZ,OACA,CAAK,CACL,WACA,MACA,0BACA,MACA,cACA,+BACA,8BACA,0DACA,CACA,uBACA,sBACA,CACA,CAAK,CACL,YACA,MACA,2CACA,CACA,CAAK,CACL,YACA,OACA,CAAK,CACL,wBACA,MACA,eACA,CACA,CAAK,CACL,kBACA,MACA,uBACA,wBACA,CAAO,CACP,OACA,4EACA,QACA,0CACA,mCACA,YACA,4BACA,CAEA,CACA,CAAG,CACH,iBACA,eACA,gBACA,UACA,YACA,aACA,cACA,cACA,yBACA,CAAG,CACH,kBACA,CACA,cACA,gBACA,OACA,QAAiB,GAAa,6BAE9B,CAAK,CACL,CACA,cACA,gBACA,OACA,QAAiB,GAAa,6BAE9B,CAAK,CACL,CACA,cACA,kBACA,OACA,QAAiB,GAAa,8BAC9B,CACA,CAAK,CACL,CACA,cACA,gBACA,OACA,QAAiB,GAAa,6BAE9B,CAAK,CACL,CACA,cACA,gBACA,OACA,QAAiB,GAAa,6BAE9B,CAAK,CACL,CACA,cACA,eACA,OACA,QAAiB,GAAa,4BAE9B,CAAK,CACL,CACA,aACA,mBACA,OACA,iEACA,CACA,CAAK,CACL,CACA,0BACA,gBACA,OACA,MACA,oCACA,wCACA,6CACA,CAEA,CAAK,CACL,CACA,0BACA,gBACA,OACA,MACA,gCACA,oCACA,6CACA,CAEA,CAAK,CACL,CACA,0BACA,kBACA,OACA,MACA,kCACA,sCACA,+CACA,CAEA,CAAK,CACL,CACA,0BACA,gBACA,OACA,MACA,gCACA,oCACA,6CACA,CAEA,CAAK,CACL,CACA,0BACA,gBACA,OACA,MACA,gCACA,oCACA,6CACA,CAEA,CAAK,CACL,CACA,0BACA,eACA,OACA,MACA,+BACA,mCACA,4CAEA,CACA,CAAK,CACL,CACA,0BACA,cACA,gBACA,OACA,6EAEA,CAAK,CACL,CACA,0BACA,cACA,gBACA,OACA,6EAEA,CAAK,CACL,CACA,0BACA,cACA,kBACA,OACA,+EAEA,CAAK,CACL,CACA,0BACA,cACA,gBACA,OACA,4EACA,CACA,CAAK,CACL,CACA,0BACA,cACA,gBACA,OACA,6EAEA,CAAK,CACL,CACA,0BACA,cACA,eACA,OACA,4EAEA,EACA,CACA,eACA,CACA,6BACA,OACA,OACA,YACA,WACA,aACA,eACA,eACA,iBACA,6BACW,IAAuB,CAClC,wCACA,2CACA,CACK,CACL,CACA,6BACA,oCACA,oBACK,CACL,CACA,6BACA,eACA,OACA,iBACA,8DACA,wBACA,CACK,CACL,CACA,6BACA,gBACA,OACA,gBACA,8DACA,wBACA,CACK,CACL,CACA,6BACA,gBACA,OACA,8DACA,wBACA,CACK,CACL,CACA,sCACA,UACA,iCACA,CAAK,CACL,CACA,sCACA,UACA,kCACA,CAAK,CACL,CACA,sCACA,UACA,sCACA,CAAK,CACL,CACA,gDACA,cACA,oBACA,CAAK,CACL,CACA,gDACA,YACA,qBACA,CAAK,CACL,CACA,gDACA,YACA,sBACA,CAAK,CACL,CACA,gDACA,YACA,qBACA,CAAK,CACL,CACA,gDACA,cACA,oBACA,EACA,CACC,wBGnZD,KAA6C,UAAI,CACjD,MACA,CACA,qBACA,YACA,kBACA,aACA,oBACA,oCACA,sBACA,sBACA,uBACA,kBACA,oBACA,YACA,KACA,UACsB,SAAG,SAAW,mBAAqB,EACnC,SAAG,SAAW,kBAAoB,EACxD,GCDA,EAAiB,QAAU,SAC3B,IACA,YACA,WACA,QACA,aACA,QACA,QACA,OACA,aACA,yBACA,mBACA,aACA,SACA,aACA,UACA,mBACA,aACA,eACA,kBACA,eACA,iBACA,CFzBA,SAAS,CAAa,EACtB,YACA,IEuBmB,EFvBK,OAAkB,GAC1C,MAAgC,QAAgB,GAAgB,EAAU,aAC1E,CACA,KACA,MACA,aACA,aACA,UACA,kBACA,UACA,gBACA,OACA,WACA,aACA,WACA,YACA,aACA,mBACA,KACA,CAAI,EAEJ,EAAiB,QAAS,IAC1B,EAAoB,YAAM,OAC1B,EAAmB,YAAM,GACzB,EAAsB,YAAM,GAC5B,WAAU,GAAc,OAAS,GACjC,YACA,+FACA,qEACA,aAIA,OAHA,WACA,oBAEA,SACA,CACA,gBACA,UACA,EACA,WAEA,WAEA,CAiCA,UAAU,2DHpFV,YACA,CGmFuF,EHnFvF,CACA,OACA,QACA,aACA,eACA,gBACA,kBACA,WACA,CAAI,EACJ,MAAsC,cAAQ,OAC9C,WAAU,GAAY,CAAE,MAAS,GACjC,YACA,MACA,KACA,OACA,EACE,eAAS,MACX,UACA,IAEA,CAAG,MACH,MAAkB,iBAAW,CAC7B,IACA,KACA,KACQ,IACR,KAEA,IAEA,CAAK,CACL,SAMA,EAAsB,iBAAW,CACjC,GACA,EACA,4CAEA,EAEA,OAmCA,OACA,MAlC0B,aAAO,MAEjC,KADA,SACA,EACA,SAAyB,QAAK,OAE9B,sBACA,oBACA,QACA,YACA,UACA,cACA,aACW,QAAK,MAChB,UACW,QAAK,YAChB,CACA,CACA,UACA,cACA,aACW,QAAK,MAChB,UACW,QAAK,QAChB,CACA,CACA,aACS,QAAK,MACd,UACS,QAAK,MACd,UACS,QAAK,UACd,CACA,CAAG,cAGH,aACA,UACA,KAlDA,oBAmDA,SAlDA,oBAmDA,MAlDA,gBAmDA,KAlDA,eAmDA,CACA,EGLuF,CACvF,OACA,QACA,cACA,WACA,aACA,eACA,UACA,CAAG,EACH,ODrGA,UACA,aCoGqD,CDnGrD,YACA,kBACA,eACA,uBACA,2BACA,WACA,CAAE,EAAI,EACN,MACA,SAAwB,cAAQ,OAChC,MAA4B,cAAQ,OACpC,iBACA,YACA,EAAG,EACH,EAAsB,YAAM,EAC5B,aACA,qDACE,eAAS,UASX,EARA,OAEA,IAEA,oCAEA,EALA,OAQA,+BACA,IACA,8DACA,cACA,0DACA,kBAAqB,UAAuB,EAC5C,WACA,eAEA,UACA,IACA,SAEA,CAAS,CACT,CAAO,CACP,WAAQ,wBAGR,OADA,aACA,KACA,cACA,CACA,CAAG,EACH,EACA,EACA,kBACA,EACA,EACA,EACA,EACA,EACA,MAAkB,YAAM,OACtB,eAAS,MACX,MACA,oEACA,yBACA,GAAiB,8BAAsD,EAEvE,CAAG,oBACH,qCAIA,OAHA,WACA,sBACA,aACA,CACA,IC+BE,eAAS,MACX,WACA,YAEA,CAAG,cACH,OAAwB,YAAM,IAC5B,eAAS,MACX,WAjDA,cAEA,MADA,IACA,OACA,kBACA,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EACrD,YAAoB,YAAkB,cACtC,IACA,2BACA,oCAEA,0BACA,EACA,+BACA,qBACA,oDAEY,IAAK,4BACjB,EACA,6BACA,WACA,IAAoB,0CAAuC,cAG3D,GAFA,uBACA,OACA,8CACA,OACA,iCACA,uBACA,0CACA,qBACA,OAEA,SACA,EAEA,CAAa,QAAgB,IAC7B,MACA,yBACA,gBACA,0BACA,6BAEA,QADqB,OAAgB,IACrC,yBACA,OAAgB,GAAQ,EACxB,WAAgB,GAAY,EAAE,EAAS,CACvC,eAA0B,iBAAqB,EAC/C,mBAAgB,GAAiB,CACjC,IACA,uBACA,qBAA+B,OAAI,CAAC,EAAe,yDAA6D,EAAe,qDAAyD,EAAe,yDACvM,CACA,kBACA,eACA,CACA,MACA,6CACQ,QAAW,kBACnB,CACA,CACA,gBACA,UAAkC,kBAAwC,CAC1E,CACA,gBACA,OAAa,oBACb,CACA,kBAAsB,EAAO,IAC7B,OACA,QACA,gBACA,YAKA,KAJA,kBASA,KACA,cACA,OAAiB,SAEjB,iBACA,OACA,OACA,YACA,QACA,yBACY,OAAqB,CAnBjC,GAmBiC,IAGjC,IAEA,MACA,OAAiB,SAEjB,MAAiB,OAAqB,0BACtC,SACA,OAAiB,SAEjB,OACA,cACA,aACA,EAOA,OANA,WACA,QAEA,WACA,QAEA,CACA,EA1CA,IACA,CACA,CAIA,cACA,0DC9GA,cACA,kBACA,CAIA,uBACA,WACA,cAAwB,OAAS,uBACjC,kBACA,YACQ,OAAS,qCACjB,UAjBA,OAiBA,SAhBA,QAiBA,iBACA,YAEA,cAlBA,MAmBA,aAlBA,KAmBA,qBACA,eAEA,CACA,oBACA,kCACA,iCACA,CACA,kBACA,kBACA,gBACA,CAKA,kBACA,kBACA,gBACA,CACA,kBACA,eACA,cACA,gBCnBA,kBACA,OACA,8BACA,eACA,sBACA,MACA,CACA,CAcA,gBACA,kBACA,cAOA,OAJA,YACA,aACA,cAEA,KAAa,QACb,CAuDA,kBACA,OACA,YACA,WACA,CACA,CACA,iBACA,yBACA,EACA,OACA,iBC9HA,eACA,0ECAA,iBAA4B,EAAS,GACrC,mDCk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CA,cACA,GAAW,EAAmB,CAC9B,SACA,sBACA,uBACA,yBACA,0BACA,CACK,CACL,oBAAyB,GACzB,gBAD4C,KAClB,GAC1B,gBAD6C,OACjB,GAC5B,gBAD+C,QAClB,GAC7B,UD/HA,CACA,KC6HgD,GD7HhD,QC8H+B,MD9HP,oBAA4B,IAEpD,MAAuB,IAAO,UAE9B,cACA,OAJA,EAKA,MAAyB,IAAO,sBAChC,4BAEA,gBACA,eACA,WACA,UAOA,MAA6B,OAAS,SAOtC,MALA,yBACA,YAEA,yBACA,YACA,IACA,CACA,CCmGA,8BC7HA,yDACA,aACA,yCACA,0BAAqD,KAAE,SA0CvD,iBACA,qBACA,KACA,eAyBA,eAAuD,KAAO,EAC9D,aAA2D,GAAI,EAC/D,mBACA,UAEA,IACA,EACA,IACA,EACA,EAAsB,OAAQ,QAE9B,CCrFA,iBACA,YACA,YAOA,iBACA,YACA,WACA,CAMA,iBACA,wBACA,gBACA,4BACA,iCCpBA,uBAMA,OALA,KACA,EAAY,SAAU,UACtB,YACA,GAAgB,SAAU,WAE1B,CACA,CAsBA,8BACA,SAnBA,0BAMA,GALQ,KAAO,WACf,gBAEA,GADiC,MAAS,oBAC1C,OAEA,mBACA,OACA,MAAsB,OAAS,gBAC/B,OACA,OACA,wBACA,uBACA,EAMA,6BACA,CAIA,gCACA,4BAKA,qBACA,uCACA,sCACA,iBCjDA,eACA,oCAEA,eACA,uBACA,CACA,iBACA,oCAKA,iBACA,8CACA,qCACA,CACA,iBACA,+BACA,CACA,eACA,OAAW,EAAU,KAAU,EAAU,CAApB,CAAoB,EACzC,CACA,GAFyC,MAEzC,QACA,kCACA,mBACA,6CCzBA,UACA,cACA,gBAEA,OACQ,SAAa,iBACrB,kBACA,CACA,UAKA,GAJQ,SAAU,iBAClB,mBACA,uBAEA,eACA,0CACA,GACA,eAEA,CACA,CACA,gBAOA,EANA,uCACA,SACA,SAKA,YAAkC,KAAQ,KAC1C,sBACA,qBACA,IACA,KACA,CACA,OACA,MACA,gBACA,GAKA,CACA,aACA,gBACA,WAEA,gBACA,YACA,SACA,IACA,+BACA,mBACA,eACA,GACA,kCAEA,aACA,sBACA,wBACA,mCAEA,2BACA,qBAEA,cAAoB,GAAY,SAChC,SACA,QAcA,CACA,CACA,wBACA,yBACA,YAAoB,kBAAwB,CAC5C,sCACA,GACA,0BACA,0BAEA,CAAS,CACT,CACA,iBACA,yBACA,gCACA,CAAS,CACT,CAKA,qBACA,+BACA,2BAEA,CACA,iBE7GA,oCCGA,GACA,cACA,iBACA,eACA,CACA,OACQ,SAAa,kBACrB,eACA,CACA,UACQ,SAAU,kBAClB,eACA,CACA,WACA,iCAA2C,IAC3C,UADyD,EACzD,IACA,wBACA,CACA,iEIOA,QACA,uBACA,aACA,uBACA,wBACA,EACA,2DACA,oBACA,IAA2B,qBAM3B,KACA,qBACA,iBAAY,GAAe,CAE3B,QACA,UACA,sBACA,GACA,SAGA,CAkBA,kCAAgC,uEAAwF,EACxH,aACA,gBAAqC,uBAIrC,aAIA,mBAOA,sBAKA,gBAMA,wBACA,2BAOA,sBAKA,0BAKA,gCAKA,yBAIA,8BACA,8BAKA,mBAIA,cAKA,mBAIA,6BAOA,kCASA,gBAA+B,SAI/B,2BACA,wBAEA,wBACA,sCACA,kCACA,4BACA,kBACA,mBACA,yBAEA,EAMA,2BACA,kCAKA,IACA,eACA,wBACA,0BACA,GAEA,uBACA,uBACA,uBACA,uBACA,IACA,6BAEA,EAIA,gCACA,qBACA,kBACA,yBAKA,yBACA,oBACA,2BACA,6BACA,cACA,yBACA,YAA4B,mBAAsB,IAClD,oCAEA,mBACA,gBAAiC,EAAQ,CACzC,CACA,IAFyC,aAEzC,KAIA,OAHA,2BACA,6BAAiD,IAAmB,EAEpE,gCACA,CACA,wBACA,+BACA,kBACA,CACA,gBACA,gCACA,CAIA,qCACA,iBACA,MACA,YFnPA,EEmPyB,WFnPzB,CEmPqC,WFnPrC,kBEoPA,gBACA,aAAoB,4BAAkC,aAStD,GARA,eACA,WAEA,0BACA,4CACA,WACA,wBAEA,OACA,EACA,6CACA,SACA,mCACA,OACA,EH9PA,KG8PuC,IH9PvC,KACA,MAAkB,IAAI,OACtB,cAA4B,EAAW,IACvC,UACA,GG0PuC,MHzP3B,QAAW,IACvB,IGwPuC,KHtPvC,EAEA,OADI,IAAK,YACT,IAAiB,QAAW,GAC5B,EGmPuC,OACf,GAAqB,yBACrB,GAAqB,0BAC7C,uBAEA,CAAiB,CACjB,CACA,GACA,qCAGA,2BACA,GACA,QACA,0CAAsD,yDAAuE,IAC7H,kCACA,mBACA,2BACA,MACA,CAEA,+BACA,0BACA,GACA,wBAA4B,+BAAqD,aAKjF,sBACA,CAAyB,GAAgB,sBACzC,EAMA,QACA,4BACA,2CACA,GACA,GACA,6BACA,kBACA,kCACA,uCAEA,6BACA,OACA,GAA+B,QAAkB,aACjD,SACA,YACA,EACA,uBACA,2BACA,UACA,WAEA,sBACA,MAOA,GACA,SAEA,4CACA,6BAGA,oBACA,CAAiB,CAEjB,CACA,UACA,yCACA,6BACA,qBACA,mBACA,+CACA,qBACY,QAAW,uBACvB,CAEA,cACA,6BACA,CACA,gBACA,6BACA,CACA,kBACA,6DACA,CACA,yBACA,gCACA,mDACA,EACA,CAEA,eACA,yBAEA,mBACA,mCACA,mBACA,CACA,uBACA,kBAAoB,GAAgB,aACpC,yCAEA,iBAEA,GADA,6BACA,6BACA,2DACA,MACA,CAkBA,GALA,uCACA,iCAnVA,cAEA,GADA,+BACA,WACA,OACA,kBAAY,GAAgB,UAC5B,MACA,OACA,MAAqB,QAAoB,IACzC,sDACA,WAAgB,cAAmB,UACnC,oDAAqE,IAAK,SAC1E,CACA,WAAY,GAAS,EACrB,iCACA,IAEA,EAoUA,MAEA,8CACA,mBACA,MACA,uBACA,YAA4B,mBAAsB,KAClD,mBACA,0BACA,2BACA,sBACA,gBAEA,CACA,aAAoB,YAAmB,aACvC,kBACA,OACA,iCACA,mCACA,wBACA,OACA,sBACA,qCACA,CACA,SAMA,GALA,wBACA,uBAIA,CACA,qBACA,yBACA,uBACA,MACA,CACA,iBACA,uBAEA,mBAIA,uBAKA,uBAKA,uBACA,yBAMA,MAAwB,IAAI,OAChB,IAAS,OAAS,OAAK,YAAqB,IAAS,YACrD,IAAS,aACT,IAAS,iBACT,IAAU,gBAAgB,IAAS,EACnC,IAAU,mBAAmB,IAAS,EACtC,IAAU,gBAAgB,IAAS,EACnC,IAAS,gBACrB,CACA,YACA,uBACA,wBACgB,IAAS,2BAEzB,CACA,oBACA,uBACA,4BACA,CACA,2BACA,iCACA,kCACgB,IAAK,wCAErB,CACA,4BAMY,IAAK,iBACjB,mBACA,sBAGA,6BAEA,CAAa,CACb,CAIA,kBACA,8BAEA,8BACA,CACA,eACA,oBAGA,oBACA,oDACA,qBAJA,OAcA,8CACA,YAAgC,mBAAsB,IACtD,aACA,eAGA,kBACA,6BACA,qBAAmC,SAAS,GAC5C,sBACA,4BACA,sDACA,kBAAoB,GAAgB,YACpC,IACA,oEACA,CACA,0BACA,mDAMA,GALA,aACA,iDACA,uBACA,OAEA,GACA,sBACA,cACA,kCACA,QACA,SACA,wBACA,wCACA,CACA,CACA,CACA,iBACA,MACA,OACA,0BACA,2BACA,iCACA,yBAA2D,GAAW,sBACtE,8BACA,IACA,wBACA,OACA,sCACA,GACA,IACoB,SAAY,qBAChC,KACA,mBACA,6BACA,sBAEA,CACA,kBAm+BA,EAl+BA,4BACA,8BAUA,OAJA,GACA,4BA29BA,IADA,EAx9BA,GAy9BA,GACA,QAz9BA,CACA,kCACA,cACA,YACA,eAAgC,CAChC,cACA,CACA,CACA,iBACA,MACA,kBAAoB,GAAgB,aACpC,MACA,MAAuB,SAAS,GAChC,6BAEA,IADA,4EACA,CAEA,WAAwB,GAAS,UACjC,IACoB,SAAa,iBACb,SAAa,iBAEjC,CACA,QACA,CACA,uBACA,MACA,MAAqC,SAAS,GAE9C,GADY,GAAW,KACvB,GADuB,IACvB,6CACA,SAMA,YAA4B,mBAAsB,KAClD,mBACA,CAAwB,oBAAkB,EAC1C,mCAKA,WACwB,GAAW,KAEf,SAAa,iBACb,SAAa,iBAEjC,CACA,QACA,CACA,uBACA,MAAmC,SAAS,GAChC,GAAW,KACvB,GADuB,CACvB,QAA4B,mBAAsB,KAClD,oBACA,GACA,wBACA,UACA,YACoB,SAAY,IAChC,qBACA,qBACqB,EAEA,SAAY,kBAEjB,SAAY,kBAC5B,CAIA,MAHgB,SAAY,qBAC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ACA,kBACA,uCACA,oDACA,uDACA,0CAEA,wBACgB,QAAW,wBAC3B,8BAOA,sBAAoC,IAAK,aACzB,GAAqB,0BACrC,sBAAwC,SD1iCxC,OACA,ECyiC0D,EDziC1D,EAA0B,QAAa,CCyiCmB,KDziCD,SAAW,CCyiCV,GDviC1D,OADA,QAAwB,QAAkB,MCmC1C,IDnC0C,IAC1C,aCuiC0D,EArgC1D,EAqgC0D,CAC1D,KACA,aACA,uBACA,yBACA,CAAqB,CACrB,gBACA,6BACA,wBACA,CAAqB,CACJ,EACjB,mBACA,2DAEA,4BACA,CAAa,CACb,CACA,oBACA,oBACA,0CACA,0CAEA,qBACA,8BACA,kBACA,sBACA,qBACA,OACA,yCACA,CACA,kBACA,wBACA,yCAriCA,KAsiCA,8BAEA,wBACA,CACA,0BACA,qBACA,sBAAkB,oCAAqD,EACvE,YAOA,aACA,aACA,GACA,kEACA,eAAwC,SAAS,GACjD,MAAgC,EAAU,wBAC1C,wBACA,kBACA,MAAgC,EAAU,wBAC1C,wBACA,iBACA,CACY,GAAW,KAMX,GANW,GAMX,GAAY,MAOZ,EAAY,4DACxB,CACA,wBACA,yBACA,2BAAmD,IAGnD,IADA,CAF4D,WAE5D,QACA,OACA,uCACA,WACA,iCACA,uDACA,iCACA,MACA,CAAa,CACb,CACA,SACA,sBACA,uBACA,CACA,UACA,MACA,aAAoB,GAAW,aAC/B,uEAEA,cACA,MACA,aAAoB,GAAW,aAC/B,wEACA,CACA,WACA,aAAoB,GAAW,aAC/B,KACA,mCACA,CACA,oBAAkB,wCAAiD,EAAI,EACvE,sBACA,GACA,kBACA,IACA,4BACA,oBAEA,GACA,4BAAkC,EAAY,CAC9C,CACA,WACA,4BACA,KACA,gBAKA,CACA,uBACA,kBAAoB,GAAgB,aACpC,MACA,OAEA,SAKA,cAAoB,GAAe,EAWnC,GAVA,MACA,UACA,WACA,WACA,WACA,SACA,UACA,OAGA,GACA,OACA,QACA,MACA,iCAGA,YAA4B,YAA0B,IACtD,YAAkD,MAAiB,4BACnE,UAAgD,MAAiB,4BAMjE,aAFA,WAEA,EACA,yBACA,sBACA,+BAKA,kBACA,CACA,uBACA,QACA,8BACA,OACA,mBACA,UAEA,OACA,aACA,EACA,8BACA,mBAQA,OAPA,mBACA,aACA,gBACoB,QAAkB,qCACtC,cACA,wBACA,OACA,EAEA,qBACA,mDACA,SAeA,OAdA,wBACA,UACA,mCACA,0BACA,EACA,gBACwB,QAAkB,sCAE1C,oBAA0C,SAAY,sBACtD,cACA,IAA8C,KAC9C,OACA,sBAEA,CACA,CACA,wCACA,+BACA,YNrwCA,gBACA,QMowCuD,CN7vCvD,oBACA,oBACA,0BAWA,GAVA,WACA,kBAAmC,EAAW,MAAM,EAAW,MAAM,EAAW,OAMhF,oBACA,aAA8B,MAAgB,IAAI,MAAgB,KAElE,GACA,yBAAgB,gDAA+D,EAC/E,GACA,kBAAuC,EAAqB,MAAM,GAAU,EAC5E,GACA,cAAmC,EAAO,QAC1C,GACA,eAAoC,EAAQ,QAC5C,GACA,eAAoC,EAAQ,QAC5C,GACA,aAAkC,EAAM,QACxC,GACA,aAAkC,EAAM,OACxC,CAKA,oBACA,gBAIA,MAHA,gBACA,aAA8B,EAAc,IAAI,EAAc,IAE9D,SACA,EMutCuD,oDACvD,GACA,+BAEA,MAAoB,OAAO,qBA+B3B,aA9BA,qBAAwC,aAAe,IAAI,aAAe,KAC1E,kBAKA,UACA,SACA,wFACA,qBACA,0BACA,cAOA,UACA,SACA,mBACA,UACA,GACA,uBACA,cACA,EAK8B,IAAe,EAC7C,iBACA,SACA,YAAwB,aAAmB,GAAE,CAAe,IAO5D,uBACA,KACA,UACA,MACA,eACA,YAAoC,IAAS,IAC7C,SAEA,MAEA,MAEA,CAYA,OANA,uBACA,iBACA,SAC0B,QAAkB,qCAC5C,QAEA,CACA,CACA,gBACA,oCACA,CAEA,YACA,4BAAgD,MAAQ,iEAAqF,EAC7I,4BACA,6BACA,CACA,CACA,CACA,eACA,gBACA,CACA,eACA,MACA,0EACA,eACA,UACA,GACA,6BACA,IAAgB,2BAAiD,SACjE,eAAgB,GAAgB,UAChC,6BAGA,WACY,GAAQ,IACpB,CADoB,GACpB,IACA,iBACA,eACA,EAA+B,EAAU,EACzC,MADyC,CACzC,SACA,aACA,CAAa,EAEb,qBACY,GAAQ,IACpB,CADoB,GACpB,IACA,iBACA,eACA,EAA+B,EAAU,KACzC,GADyC,GACzC,SAIA,wCACA,uBACA,wBACA,0BAEA,CAAa,EAEb,MAA4B,SAAW,GAC/B,EAAY,iBACpB,MAA4B,SAAW,GACvC,EACY,EAAY,wCAGZ,EAAY,iBAExB,OAAkC,GAAW,GAC7C,KAD6C,GAE7C,eACA,qCAKA,qBACA,IAAwB,qBAAiD,EACzE,SACA,MAA6C,SAAS,GAClC,EAAoB,2BACxC,MAA2C,SAAS,GAChC,EAAoB,iBACf,CADe,EACC,MACzC,OADyC,EAGzC,qBACA,mBACA,yBACA,mBAEA,CACA,CACA,CACA,+BACA,SACA,WACA,QACA,cACA,mBACA,0BACA,CAAS,CACT,MACA,eACA,mBAAgB,GAAiB,UACjC,MACA,CAMA,2BACA,CACA,eAIA,IACA,gBAEA,WAQA,kBACA,iDAOA,8EACA,4BACA,mCACA,mEACA,CACA,eACA,oBACA,0BACA,mBACA,EACA,CACA,eACA,iBACA,CACA,eACA,qBACA,CACA,eACA,kBACA,CACA,eACA,kBAAY,GAAgB,UAC5B,uCACA,gCAEA,kBACA,CACA,eACA,oBACA,+CACA,sBACA,CACA,eACA,sBACA,CACA,eACA,kBACA,CACA,eACA,wBACA,CACA,eACA,sBACA,CACA,mBACA,YAAuB,OAAS,kBAChC,QAAmB,OAAS,cAC5B,kBACA,4BAEA,qBACA,MAAiB,OAAS,gBAC1B,MAAiB,OAAS,eAC1B,CAKA,eACA,iEAEA,QACA,aACA,kBAEA,qCACA,qBACA,8CAMA,sCACA,WACM,GAAI,CACV,eAEA,gBACA,eACA,CAKA,mBACA,sBACA,wBvB1hDA,cuB2hDoB,GAAW,GAAY,GAAW,EAAvB,CvB3hD/B,CuB4hDA,CACA,GAFsD,MAEtD,MACA,MACA,qEACA,CCziDA,OAA+B,GAAoB,CACnD,gBADmD,KACnD,OAA2C,OAAW,eACtD,oBACA,gEACA,8DACA,CAAK,CACL,wBACA,CAAC,ECPD,IACA,cACA,EACA,GAA2B,GAAoB,CAC/C,gBAD+C,CAC/C,EACA,eACA,cACA,CAAK,CACL,mBACA,gBACA,UAAqC,GAAsB,EAAG,EAC9D,eAD2D,CAE3D,cAAsC,gBAAoB,EAC1D,YACA,CACA,kBACK,CACL,uBACA,qCACA,CAAK,CACL,mEACC,EGjBD,IACA,GAAO,UAAY,CFFnB,KACA,QAAiB,EACjB,CAAK,CACL,MAF2B,QAGV,GACjB,QAD4B,OACJ,GACxB,aAAqB,EADqB,CAE1C,CAAK,CCTL,QACA,eAAwB,GACxB,aAAqB,EADqB,CAE1C,CAAK,kBGOL,GAAU,QAAU,SACpB,MACA,IACA,YACA,KACA,OACA,QACA,aACA,aACA,UACA,QACA,cACA,mBACA,yBACA,wBACA,UACA,SACA,KACA,CAAI,EACJ,KAAU,GAAM,EAChB,EAAiB,QAAS,IAC1B,2BAEA,CACA,WACA,aACA,aACA,YACA,ClCzBA,gBACA,IAAU,qBkCwBE,oBlCxBF,GAAoF,EAC9F,CAAU,kCAAsD,EAChE,QACA,oDACA,CAAU,yBAA6C,GAAM,KAAwB,CACrF,mBACA,MACA,MACA,aACA,wBACA,wBACA,CAAK,EACL,IAA6D,CAAzC,CAAyC,SAC7D,IAAkE,CAAzC,CAAyC,cAClE,CAAU,YAAqB,EAC/B,WAFkE,GAElE,YACA,KAAuB,KAAqB,wBAC5C,YACA,CAAK,CACL,aACA,SAAwB,MAAmB,wBAC3C,OACA,YAAsB,KAAiB,OACvC,KACA,kBACA,0BACA,2BACA,oBACA,UACA,CAAS,EACT,aACA,aACA,WACA,CACA,EkCVY,KAAG,uCAAwD,KACvE,mBACA,0BAEA,WACA,YAAU,gCAAwC,CAAE,MAAY,GAChE,YAAU,eAAwB,CAAE,MAAQ,EAC5C,YACA,CAAG,EACH,EAAoB,OAAI,yBACxB,KDlDA,YCkDoC,CDlDJ,EAChC,aAAU,gBAA8B,EACxC,EAAuB,aAAM,KAC7B,MAAoC,eAAQ,KAuB5C,MAtBE,gBAAS,MACX,aACA,WAUA,OATA,IACA,IACA,kBACA,KACA,CAAS,IAET,OAGA,KACA,aACA,GACA,MAEA,GACA,eAEA,CACA,CAAG,MACH,CAAU,kBAAW,qBACrB,ECuBoC,CACpC,WACA,CAAG,EAaH,MAAyB,UAAI,CAC7B,EACA,CACA,IAAW,OAAS,MACpB,gBAAuB,QAAQ,IAC/B,aAAoB,QAAQ,IAC5B,qBAA4B,QAAQ,IACpC,aAAoB,QAAQ,IAC5B,wBAA+B,QAAQ,aACvC,eAAsB,QAAQ,IAC9B,gBAAuB,QAAQ,IAC/B,kBACA,GAAS,OAAU,CACnB,EACA,EAGU,EAAI,CAHd,CACA,KACA,MACU,CACF,MAAc,IACtB,QAlDA,mBAmDA,gCACA,CAAS,EACT,CAAU,QAlCV,KACI,OAAK,cACT,wDAEI,OAAc,YAClB,uBACA,kBACA,YACA,aACA,kCACK,CACL,CAuBU,EACV,CACA,2CAAsE,QAAkB,EACxF,kCACA,kCACA,UACA,aAAkG,SAAG,CAAC,GAAU,EAAI,SAAU,GAAM,SAA4B,SAAG,CACzJ,IAAC,MACX,CACA,oBAAsC,8BAAwD,EAC9F,qBACA,oBACA,kBACA,YACA,cACA,WACA,WACA,CAAa,CACb,MAEA,CAAW,OACa,SAAG,CAC3B,MACA,CACA,wBACA,kCACa,EACb,yBACA,sBAGA,EAGA,CAAC,EACD,gFCjHA,GAAW,SAAE,EACb,OACA,mBACA,SACA,OACA,MACA,QACA,QACA,eACA,cACA,oBACA,iBACA,iBACA,CACA,KACA,MACA,SACA,OACA,OACA,OACA,QACA,WACA,iBACA,eACA,eACA,iBACA,qBACA,4BACA,0CACA,kCACA,mDACS,KAAuB,CAChC,CACA,YACA,WACA,OACA,eACA,oBACA,oBACA,mBACA,6CACA,CACA,qCACA,OACA,OACA,OACA,eACA,8BACS,KAAuB,CAChC,CACA,WACG,CACH,UACA,SACA,OACA,gBACA,CAAO,CACP,OACA,6CACA,gBACA,CAAO,CACP,YACA,6CACA,uEACA,CAAO,CACP,UACA,wFACA,gBACA,CACA,CAAK,CACL,OACA,UAAiB,CACjB,UAAiB,CACjB,YAAmB,CACnB,UAAiB,CACjB,UAAiB,CACjB,SACA,CAAK,CACL,MACA,IACA,yBACA,kCACA,sBACA,CAAO,CACP,IACA,yBACA,mCACA,sBACA,CAAO,CACP,IACA,wBACA,qCACA,uBACA,CACA,CAAK,CACL,QACA,MACA,uBACA,mBACA,qBACA,CAAO,CACP,IACA,yBACA,oBACA,sBACA,CAAO,CACP,IACA,yBACA,oBACA,sBACA,CAAO,CACP,IACA,wBACA,qBACA,uBACA,CAAO,CACP,MACA,uBACA,mBACA,qBACA,CACA,CAAK,CACL,WACA,MACA,cACA,gBACA,CACA,CAAK,CACL,YACA,MACA,8CACA,CACA,CAAK,CACL,kBACA,MACA,sBACA,4BACA,CACA,CAAK,CACL,WACA,MAAa,CACb,OACA,mBACA,kBACA,cACA,CAAO,CACP,KACA,mBACA,kBACA,+BACA,CAAO,CACP,QACA,+BACA,CACA,CACA,CAAG,CACH,iBACA,gBACA,gBACA,UACA,aACA,aACA,CAAG,CACH,kBACA,CACA,qCACA,gBACA,OACA,0DACA,+DACA,CACA,CAAK,CACL,CACA,qCACA,gBACA,OACA,OAAgB,IAAa,eAC7B,+DACA,CACA,CAAK,CACL,CACA,qCACA,kBACA,OACA,OAAgB,IAAa,iBAC7B,iEACA,CACA,CAAK,CACL,CACA,qCACA,gBACA,OACA,OAAgB,IAAa,eAC7B,+DACA,CACA,CAAK,CACL,CACA,qCACA,gBACA,OACA,OAAgB,IAAa,eAC7B,+DACA,CACA,CAAK,CACL,CACA,qCACA,eACA,OACA,OAAgB,IAAa,cAC7B,8DACA,CACA,CAAK,CACL,CACA,qBACA,gBACA,OACA,uBACA,uDACA,CACA,CAAK,CACL,CACA,qBACA,gBACA,OACA,oBACA,oDACA,CACA,CAAK,CACL,CACA,qBACA,kBACA,OACA,sBACA,sDACA,CACA,CAAK,CACL,CACA,qBACA,gBACA,OACA,oBACA,oDACA,CACA,CAAK,CACL,CACA,qBACA,gBACA,OACA,oBACA,oDACA,CACA,CAAK,CACL,CACA,qBACA,eACA,OACA,mBACA,mDACA,CACA,CAAK,CACL,CACA,oBACA,qBACA,OACA,KACA,qBACA,iBACA,iBACA,gBACA,gBACA,kBACA,8CACA,yCACA,CAEA,CAAK,CACL,CACA,oBACA,gBACA,qCACA,OACA,kFACA,CACA,CAAK,CACL,CACA,oBACA,gBACA,qCACA,OACA,kFACA,CACA,CAAK,CACL,CACA,oBACA,kBACA,qCACA,OACA,sFACA,CACA,CAAK,CACL,CACA,oBACA,gBACA,qCACA,OACA,kFACA,CACA,CAAK,CACL,CACA,oBACA,gBACA,qCACA,OACA,kFACA,CACA,CAAK,CACL,CACA,oBACA,eACA,qCACA,OACA,gFACA,CACA,CAAK,CACL,CACA,oBACA,gBACA,qBACA,OACA,8CACA,CACA,CAAK,CACL,CACA,oBACA,gBACA,qBACA,OACA,2CACA,CACA,CAAK,CACL,CACA,oBACA,kBACA,qBACA,OACA,6CACA,CACA,CAAK,CACL,CACA,oBACA,gBACA,qBACA,OACA,2CACA,CACA,CAAK,CACL,CACA,oBACA,gBACA,qBACA,OACA,2CACA,CACA,CAAK,CACL,CACA,oBACA,eACA,qBACA,OACA,0CACA,CACA,EACA,CACA,eACA,CACA,qBACA,iCACA,sBACA,EACA,CACC,yBE5VD,iBACA,WACA,MACA,YAGA,IAFA,kBAEA,4JAEA,8JACA,CACA,QACA,CC5CA,SACA,uBACA,sCACA,sBACA,CACA,wBACA,0CACA,kBACA,CACA,cACA,QACA,gJACA,CACA,cACA,oCAEA,OADA,oDACA,CACA,CACA,aACA,mCAEA,OADA,wDACA,CACA,CACA,sBACA,uBACA,sBACA,CACA,sBACA,uBACA,kBACA,CACA,cACA,GAEA,MADA,oCACA,wCACS,oBACT,QACA,CACA,kBACA,GAEA,MADA,qCACA,uCACS,oBACT,QACA,CACA,6BACA,kBACA,+CACA,oBACA,kCACA,CACA,qDGGA,GAhDW,QAAU,eACrB,IACA,YACA,SACA,QACA,0BACA,eACA,kBACA,kBACA,CDVA,OCUa,EDVb,GACA,UACA,MAAwB,QAAkB,GAC1C,MAAgC,QAAgB,GAAgB,GAAI,aACpE,CACA,MACA,KACA,YACA,aACA,WACA,yBACA,cACA,gBACA,2BACA,6BACA,KACA,CAAI,EACJ,WACA,qBACA,EAAiB,QAAS,IAC1B,+FACA,EHrBA,YACA,QACA,SAAoB,MDApB,GACA,CIkB+B,GJlB/B,EACA,YAA4C,MAAyB,QCFlB,KDEkB,yEACrE,KAA2B,YAAc,aACzC,EACA,KACA,EACA,EACA,CAAU,gDAAyF,GAAM,MAAyC,CAClJ,KACA,uBACA,0BACA,iCACA,eACA,0BAGA,EADA,oBAEA,4DAGA,mDACA,IACA,CACA,CAAK,EACL,4BACA,OACA,aACA,eACA,mBACA,cACA,iBACA,cACA,CACA,EClCmD,CACnD,KACA,4BACA,gKACA,CAAK,EACL,CAAU,+CAA8F,EACxG,KAA8B,WAAa,GAe3C,MAdA,GAAQ,cAAgB,KAExB,QACA,qCAEA,MADA,0BAEA,mBACA,EACA,EAGA,gFACA,WACA,CAAK,EACL,CACA,KACA,2BACA,CACA,EGN+B,CAC/B,WACA,IACA,CAAG,EACH,cAAU,GDjBV,gBACA,IAAU,qBCgB2B,KDhB3B,mCAAgG,EAC1G,CAAU,gDAAgF,EAC1F,CAAU,aAAuB,GAAM,QACvC,KAAuB,YAAc,QAAc,GAAyC,UAC5F,EACA,EACA,EACA,EACA,EACA,CAAU,iBANkF,CAMlF,CAAmC,GAAM,MAA8B,CACjF,MACA,mBACA,mBACA,8BACA,0BACA,YACA,wBACA,CAAK,EAEL,KAAqB,KAAY,IACjC,EAAiD,CAAzC,EAAyC,MACjD,SAAgC,KAAgB,CAChD,KACA,IACA,CAAK,EACL,MALiD,CAMjD,cACA,MAAmB,KAAiB,KACpC,eACA,qBACA,eACA,CACA,CACA,ECjBqC,OACrC,EAAgB,cAAO,CACvB,IAAU,GAAI,IACd,EACA,YACA,mBACA,MAAwB,mBAAqB,GACxC,EACL,CAAK,QAAY,YAEjB,EAAqB,OAAI,0BACzB,EAAiB,cAAO,CACxB,MACA,QACA,QACA,aACA,cACA,mBACA,UACA,wBACA,yBACA,uCACA,CAAK,CACL,CACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,4BACA,EACA,EAEA,EAAuB,kBAAW,CAClC,KACA,mBACA,kBAA8B,MAAO,OAAI,+BAA0D,EACnG,GAAS,OAAU,CACX,OAAc,IACtB,SACA,CAAS,EACT,EACA,CACA,CAAK,CACL,SAEA,0CACA,EAA0B,kBAAW,CACrC,KACA,yBACA,qBAAiC,MAAO,OAAI,sDAAgG,EAC5I,mBACA,iEACA,GACA,WAEA,EAA0B,kBAAW,CACrC,KACA,MACA,sBACA,qBAAiC,MAAO,OAAI,sDAAgG,EAC5I,GAAS,OAAU,MACnB,CAAK,CACL,WAEA,OACA,YACA,SACA,QACA,SACA,0BACA,eACA,kBACA,iBACA,CACA,EC5Fa,CACb,KACA,KACA,CAAG,EACH,EAAmB,YAAK,GACxB,iDACA,GACA,QACA,kBACA,cACA,wBACA,wBACA,0BACA,oCACA,8CACA,+CACA,EACA,2BAAmE,SAAG,CPmFtE,GOnFkF,CAAI,OAAJ,GAAI,aAAmC,SACzH,EAAqC,UAAI,CAAC,UAAQ,EAAI,UAClC,SAAG,QAAU,gBAA6C,SAAG,IAAc,kBAAqE,SAAG,CAAC,IAAW,EAAI,gBAA8B,IAAU,EAAG,EAClO,yBAC6B,SAAG,C1CNhC,E0CQA,CACA,wBACA,0BACA,cACA,cACA,aACS,CACT,QAGA,CAAK,QACL,kCAC2B,SAAG,QAAU,kBAA4C,EAEpF,CACA,CAAC,qECvDD,EAAqB,QAAE,EACvB,OACA,yBACA,MACA,0BACA,iBACA,oBACA,eACA,eACA,+BACS,IAAuB,CAChC,CACA,gDACA,CAAG,CACH,UACA,OACA,YACA,0BACA,8BACA,CAAO,CACP,SACA,uBACA,2BACA,CAAO,CACP,WACA,yBACA,6BACA,CAAO,CACP,SACA,uBACA,2BACA,CAAO,CACP,SACA,uBACA,2BACA,CAAO,CACP,QACA,sBACA,0BACA,CACA,CAAK,CACL,MACA,IACA,gBACA,CAAO,CACP,IACA,iBACA,CAAO,CACP,IACA,kBACA,CACA,CAAK,CACL,WACA,MACA,mBACA,CAAO,CACP,OACA,sBACA,CAAO,CACP,QACA,gBACA,CAAO,CACP,QACA,uBACA,CAAO,CACP,OACA,sBACA,CACA,CAAK,CACL,WACA,MACA,qBACA,CAAO,CACP,OACA,oDAEA,CAAK,CACL,YACA,MACA,4CACA,4BACA,CACA,CAAK,CACL,kBACA,OACA,yBACA,CAAO,CACP,MACA,sBACA,CACA,CACA,CAAG,CACH,iBACA,UACA,mBACA,kBACA,aACA,CAAG,CACH,kBACA,CACA,aACA,mBACA,OACA,sBACA,CACA,CAAK,CACL,CACA,aACA,gBACA,OACA,mBACA,CACA,CAAK,CACL,CACA,aACA,kBACA,OACA,qBACA,CACA,CAAK,CACL,CACA,aACA,gBACA,OACA,mBACA,CACA,CAAK,CACL,CACA,aACA,gBACA,OACA,mBACA,CACA,CAAK,CACL,CACA,aACA,eACA,OACA,kBACA,CACA,CAAK,CACL,CACA,aACA,iBACA,OACA,mBACA,CACA,CAAK,CACL,CACA,8CACA,0BACA,EACA,CACC,EACD,EAAkB,QAAE,EACpB,OACA,QACA,gCACA,uBACA,iCACA,CAAG,CACH,UACA,MACA,KAAY,CACZ,KAAY,CACZ,KACA,CAAK,CACL,QACA,MACA,mBACA,CAAO,CACP,IACA,oBACA,CAAO,CACP,IACA,qBACA,CAAO,CACP,IACA,oBACA,CAAO,CACP,MACA,mBACA,CACA,CAAK,CACL,SACA,OACA,qBACA,CAAO,CACP,UACA,iDACA,CAAO,CACP,QACA,CACA,CAAG,CACH,iBACA,UACA,YACA,eACA,CAAG,CACH,kBACA,CACA,6BACA,OACA,gBACA,CACA,CAAK,CACL,CACA,6BACA,UACA,OACA,gBACA,CACA,CAAK,CACL,CACA,6BACA,UACA,OACA,oBACA,CACA,CAAK,CACL,CACA,6BACA,UACA,OACA,gBACA,CACA,EACA,CACC,mBC5OD,cAEe,WAAS,GACxB,4BACA,4BACA,CACA,CGNA,aACA,SAGe,WAAS,GACxB,4BACA,+BACA,CACA,CERe,WAAS,GACxB,kBACA,sBACA,CACA,CAEO,cACP,mBACA,mBACA,CACA,qBCRA,I+CAA,E/CAA,uBAQA,aACA,8BCTA,6BAEA,aACA,gCACA,CENe,WAAS,GACxB,sBACA,CCKO,gBACP,mCACA,iCACA,gBACA,eACA,eACA,CETA,wBASA,IARA,IACA,EADA,IAEA,WACA,WAKS,IAAgB,IACzB,UACA,gBACA,QAEA,SAAqB,EAAS,QAK9B,KAAS,IAAiB,IAC1B,UACA,QAGA,CAEA,0BACA,MACA,EAKA,EAJA,UACA,WACA,WACA,WAKA,QAAc,IAAiB,IAC/B,WACA,mCACA,SACA,OAEA,YAQA,QAAc,IAAgB,IAC9B,wBACA,cACA,OACA,gBACA,aAEA,SAAqB,EAAS,QAK9B,QAAc,IAAiB,IAC/B,2BACA,QAGA,CAEA,cACA,kBKtDA,gBACA,8BACA,CPRA,aACA,cACA,wBAAiC,+CAAsD,CACvF,2BAAwC,sCAAgD,CACxF,0BAAsC,qCAA8C,CACpF,6BAAyC,wCACzC,EcrBO,qCAEP,MAAe,CACf,iCACA,QACA,qCACA,2CACA,qCACA,CAAC,CCNc,CDMb,QCNa,EAAS,GACxB,6BAEA,OADA,mDACS,EAAU,mBAA2B,MAAO,CAAU,aAAuB,CACtF,CENe,IFK+E,KEL/E,EAAS,GACxB,qDACA,eACA,cC4BO,CD5BoB,QC4BpB,OACP,oCACS,EAAW,+CACpB,CElCA,cACA,8BACA,CAEA,cACA,4BACA,CAEA,cACA,aACA,0CACA,CAsBA,gBAEA,IADA,2BACA,kBACA,CAEA,gBAEA,IADA,2BACA,qBACA,CCzCA,aACA,mBACA,CCFA,aACA,iBACA,CCFA,aACA,mDACA,CCFA,aACA,mFACA,CCiBe,WAAS,GACxB,MAAiB,EAAS,GAC1B,IAD0B,EAC1B,SARA,YACA,kBACA,0DACA,CACA,EAdA,YACA,kBACA,yBACA,oBACA,WAAmB,GAAK,iCAA8C,EACtE,GAD2E,YAC3E,IACA,sBACA,CACA,CAYA,IACA,CErBA,aACA,WACA,CCLA,aACA,sBACA,sBACA,CCHA,aACA,2CACA,6CACA,CAEA,aACA,2CACA,6CACA,CEMA,cACA,kBACA,gBACA,MACA,8BAA8C,IAAO,IACrD,kDAGA,SAFA,qDAKA,gBACA,iBACA,CACA,CAEA,kBACA,kBACA,6BA/BA,GACA,4BACA,EA8BA,6BAA2C,IAAO,IAClD,4CACA,sDACA,uDACA,UACA,MACA,CACA,CACA,kCACA,GAAS,sDACT,EACA,UADA,cAGA,CC5CA,kBACA,MAAe,EAAW,GAC1B,KAD0B,UAC1B,CAEA,qBACA,cAEA,kCACA,4DACA,sBAGA,kBACA,CZFA,aACA,gBAEA,EADA,yBAEA,oBACA,uDAEA,CAAG,CACH,mBACA,6BACA,OACA,wBACA,uDAEA,CAAG,CACH,qBACA,gCACA,CACA,EcIO,aAEA,gBACP,eACA,eACA,CAEA,aACA,4CACA,CAMA,yBACA,cACA,O3CjDe,C2CiDL,Q3CjDc,GACxB,K2CgD0B,O3ChD1B,aAA6C,EAAQ,IAErD,EAFqD,EAErD,6CAAsF,IAAO,IAC7F,kDAAgH,IAAO,IACvH,yCACA,wCACA,QAKA,WAAa,EAAS,gBACtB,E2CqCA,UxC3Ce,CwC2CF,QxC3CW,CwC2CQ,ExC1ChC,6BAPA,IAOA,IANA,eFCe,EEAf,OAAW,EAAK,wBFChB,2CEAA,CAIA,MACA,EAAgB,EAAW,GAE3B,MAF2B,EAE3B,wCAA0F,IAAO,IACjG,gCAA+D,IAAO,IACtE,WACA,iCACA,WAKA,WAAa,EAAS,IACtB,EwC8BA,CxC/BsB,WETP,CsCwCA,QtCxCS,GsCwCY,ItClDpC,EAWA,8BAXA,EAYA,uBAAwD,EAAY,GAXpE,OAWoE,IAVpE,8BACA,GAUA,EsCsCA,erCzCe,CqCyCG,QrCzCM,MqCyCkB,CrC/C1C,EAOA,iCAPA,EAQA,uBAA6D,EAAY,GAPzE,OAOyE,IANzE,8BACA,GAMA,EqCuCA,OpCrDe,CoCqDL,QpCrDc,GACxB,KoCoD0B,OpCpD1B,aAA2C,EAAO,IAElD,CAFkD,GAElD,6CAAsF,IAAO,IAC7F,0CAA6F,IAAO,IACpG,oCACA,UAKA,WAAa,EAAS,gBACtB,EoC0CA,KhCqBe,CgCrBP,IAAc,IhCqBE,KACxB,+CAEA,YACA,gBACA,eAEA,yBAAmD,EAAnD,EDpFA,MCoF2C,KDnF3C,OCmFmD,CDlFnD,GCoFA,wDAAuG,IAAO,KAC9G,WACA,OACA,WACA,EAiCA,iBADA,EAhCA,8BAiCA,aACA,EACA,cAlCA,IAkCwB,MAlCxB,CACA,gBACA,gBAGA,UAFA,cAEA,KAKA,QAqBA,ED3HwB,ECsGxB,YAA6C,IAAiB,IAC9D,WAEA,IADA,cACA,mBACA,eACA,CAEA,CAKA,MAHA,OAAe,EAAS,MACxB,CADwB,KACxB,GACA,UACA,CACA,EgCzDA,MlCvDe,CkCuDN,KAAe,KlCtDxB,MAD0B,CAC1B,IAAa,EAAS,8BAAiC,GAAM,cAC7D,EkCsDA,K/BxDe,C+BwDP,IAAc,M/BvDtB,KAD0B,EAC1B,IAAa,EAAS,6BAAgC,GAAM,cAC5D,E+BuDA,K9B5De,C8B4DP,IAAc,I9B5DE,OACxB,wCAYA,MAXA,qBACA,UACA,kBAEA,iBAEA,SACA,UACA,kBAEA,mBAAqC,KACrC,yBACA,E8B+CA,M7B3De,C6B2DN,KAAe,G7B3DA,GAGxB,QAFA,8BAEA,gFAA+J,IAAO,IACtK,uDAAyH,IAAO,IAChI,gBACA,SAKA,KAAS,IAAQ,IACjB,UAGA,WAAa,EAAS,gBACtB,E6B4CA,UAhBA,WACA,aAgBA,M5B/De,C4B+DN,KAAe,K5B7DxB,MAF0B,EAE1B,+BAA6D,MAAQ,CACrE,qCAA6E,OAAS,CACtF,WACA,kEACA,KAKA,a4BqDA,K3B9De,C2B8DP,IAAc,I3B9DE,GAGxB,gBACA,0CACA,CAJA,SAMA,iDAAuF,IAAO,KAC9F,gDAAyG,IAAO,IAChH,UACA,SAGA,SACA,CAEA,WAAa,EAAS,wBACtB,E2B8CA,K1BjEe,C0BiEP,IAAc,M1BhEtB,KAD0B,CAC1B,aAGA,OAFA,kBACA,wBACA,M0B8DA,MzBlEe,CyBkEN,KAAe,KzBjExB,MAD0B,CAC1B,gBACA,EyBiEA,KxBnEe,CwBmEP,IAAc,MxBjEtB,KAF0B,GAE1B,8BAA4D,IAAO,IACnE,8BAAyD,IAAO,KAChE,WACA,aACA,CAGA,WACA,EwB0DA,KvBpEe,CuBoEP,IAAc,MvBnEtB,KAD0B,CAC1B,EACA,sBACA,IADmC,GACnC,CACA,EuBiEA,MtBrEe,CsBqEN,UtBpET,KsBoEwB,CtBpExB,UAD0B,EAE1B,EsBoEA,KrBtEe,CqBsEP,IAAc,IrBtEE,GAExB,sCAA4D,IAAO,IACnE,gCAA+D,IAAO,IACtE,mCAIA,WACA,EqB8DA,KlB7Be,CkB6BP,IAAc,IlB7BE,KACxB,MAAiB,EAAS,GAE1B,IAF0B,SAE1B,UACA,kBACA,eACA,kCACA,iBACA,CAEA,0BACA,QA7CA,YACA,kBACA,uCACA,CACA,EAVA,YACA,kBACA,uBACA,CACA,EA+CA,qBACA,QApBA,cACA,kBACA,6BACA,iDACA,sCACA,CACA,EAdA,cACA,kBACA,6BACA,iCACA,sBACA,CACA,EAuBA,QAnCA,cACA,kBACA,sCACA,CACA,EAVA,cACA,kBACA,sBACA,CACA,CAqCA,OACA,EkBgBA,MhBlDe,CgBkDN,KAAe,GhBlDA,OACxB,0BACA,mBAtBA,YACA,kBACA,4BACA,CACA,EAmBA,qBAXA,gBACA,kBACA,6BACA,sCACA,6BACA,CACA,EAZA,gBACA,kBACA,6BACA,CACA,CAeA,qBACA,gBACA,EgB4CA,SfrDe,CeqDH,QfrDY,KACxB,0BACA,mBAtBA,YACA,kBACA,cACA,CACA,EAmBA,qBAXA,cACA,kBACA,6BACA,wBACA,SACA,CACA,EAZA,cACA,kBACA,SACA,CACA,CAeA,QACA,gBegDA,Qdbe,CcaJ,OAAiB,CdbJ,KACxB,cAEA,uBAEA,IADA,qCACA,qCACA,QACA,CAEA,uCAfA,cACA,kBACA,qCACA,CACA,EAYA,EA5BA,YACA,kBACA,SACA,CACA,EAEA,YACA,kBACA,SACA,CACA,CAoBA,OACA,EcCA,Kb1De,Ca0DP,Qb1DgB,GACxB,GayDsB,IbzDtB,iBACA,kBACA,wBAVA,YACA,kBACA,6BACA,8BACA,CACA,EAXA,YACA,kBACA,kBACA,CACA,CAcA,MACA,yBaqDA,KZ3De,CY2DP,IAAc,IZ3DE,GACxB,wBACA,kBACA,wBAVA,YACA,kBACA,6BACA,4BACA,CACA,EAXA,YACA,kBACA,gBACA,CACA,CAcA,MACA,qBACA,EYqDA,MXzEe,CWyEN,UXxET,KWwEwB,EXxExB,SAD0B,CAC1B,EACA,EWwEA,MV1Ee,CU0EN,UVzET,KUyEwB,EVzExB,YACA,EUyEA,OR7Ee,CQ6EL,MAAgB,ER7EF,GACxB,6BAAmD,EAAO,GAC1D,EAD0D,KAC1D,uBACA,gDACA,CAAG,CACH,EQyEA,OPzEe,COyEL,MAAgB,EPzEF,KACxB,6BAAmD,EAAO,GAC1D,mCAAuF,EAAQ,GAC/F,GAD+F,IAC/F,uBACA,+EACA,CAAG,CACH,EOoEA,ON5Ee,CM4EL,UN3EV,MM2E0B,CN3E1B,UAD0B,EAE1B,EM2EA,MLxEe,CKwEN,KAAe,GLxEA,GACxB,yBACA,EKuEA,MJnFe,CImFN,QJnFe,GACxB,IIkFwB,GJlFxB,iBACA,4BACA,sBIiFA,GHpCe,CGoCT,EAAY,MHpCM,OACxB,UA1CA,CA0CA,MA1CA,sCACA,0BAEA,OADA,sCACA,CAAY,cACZ,CAAG,EAsCH,WAEA,uBACA,uBACA,+BAA8C,IAAO,IACrD,eAA6B,IAAO,IACpC,2CACA,cAGA,CACA,MACA,CAGA,QADA,QACc,IAAO,2BACrB,aGoBA,SFxDe,CEwDH,QFxDY,KACxB,KEuD8B,EFvD9B,gCAPA,cACA,kBACA,wCACA,CACA,EAVA,cACA,kBACA,kBACA,CACA,CAWA,OACA,EEqDA,kBDtFe,CCsFM,QAAkB,GDrFvC,SAD2B,CAC3B,4BAA4D,IAAO,IACnE,gCAA+D,IAAO,IACtE,mBAGA,CCiFA,ECvFA,OAAY,cAEZ,SAAS,IACT,QAA8C,EAA9C,GADiB,CACjB,uBAA8C,CAAK,IAAO,KAC1D,gFACA,SAEA,eACA,CAEA,cACA,QACA,CA4DA,kBACA,uBAAmC,IAAO,IAC1C,kBACA,2CACA,KACA,CAGA,OADA,iBAAmC,eAA4B,EAC/D,CACA,CA1DA,YAAqB,EAAQ,WAC7B,IAD6B,QAC7B,EACA,iBACA,IAEA,EAFA,SACA,EAA0B,EAAd,CAAc,IAZ1B,kBAY0B,IAZ1B,gBACA,0BAEA,GADA,sCACA,IAS0B,EAT1B,kDACA,OAAY,cACZ,CAAG,EASH,KACA,WAGA,uBACA,8CA8BA,KACA,yBAAsC,IAAO,IAC7C,qBACA,cAGA,EApCA,uBACA,MACA,CAIA,qEACA,YACA,8CACA,+CAGA,YACG,CACH,gBACA,QAAiB,UACjB,iCACA,eACA,CAAG,CACH,mBACA,uDAAmF,IAAO,wBAC1F,6DACA,+BAAgD,IAAO,yBACvD,CAAG,CACH,sBACA,6DACA,mCAAoD,IAAO,yBAC3D,CACA,EC9DA,IAIA,EACA,EALI,EAAK,EACT,IACA,GAFS,CAMT,KACA,KACA,KACA,kEACA,+GAAsI,kBAE/H,cACP,kCACA,CAEA,cACA,IACA,CAEO,cACP,WACA,WACA,eACA,CAyBO,mBACP,aAEA,OADA,iBACA,CACA,CAaA,cACA,oBACE,EAAK,IACP,KADO,WAZP,KACA,EADS,EAGT,IADA,KADS,CACT,CADW,CACX,EACA,GACA,0CACA,YAEI,CACJ,GAOA,EAAI,KARK,CAQL,CACA,EAAK,EACT,OADS,IAaT,IADA,kBACA,GACA,SACA,uBACA,gBAEA,uBACA,mBAGA,IACA,KACA,IAtBA,IACA,CACA,CAEA,cACA,sBACA,EA7EA,KA6EA,YACA,CAiBA,gBACM,IACN,OADW,UAAU,EACrB,IACA,KACA,IACA,GAF+B,IAE/B,iCACA,0BAEA,iCAvGA,IAuGA,EACI,EAAK,UAET,CC3Ge,YAAS,OACxB,UAAc,GAMd,EANmB,KACnB,eACA,cACA,SACA,MACA,CAAG,MACH,CACA,CDgBA,2BACA,eACA,wBACA,sEACA,mCACA,uBACA,eACA,OACA,QAEA,aACA,aACA,IACA,CAAG,CACH,gBACA,aACA,gBACA,eACA,KAEA,CACA,EE5CA,OHgFe,EGhFO,eHgFC,EAAC,MGhFF,aACtB,MAUe,YAAS,aACxB,qBACA,KACA,uBADA,mBAEA,SAiCA,OACA,IACA,EADA,iBAgBA,cACA,YAGA,0BAEA,WAEA,GADA,SACA,eAKA,sBAAsC,GAAO,EAG7C,CA1EO,IA0EP,CAH6C,CAG7C,OACA,QAzEO,EA0EP,eACA,oDACA,aAIA,OACA,QAjFO,EAkFP,eACA,iDACA,aAoBA,GAZI,GAAO,WA/FJ,IAgGP,UACA,QAhGO,EAiGP,kCACA,KAEA,CAAK,EAIL,QA1GO,EA2GP,gDACA,aAKA,QAJA,QA5GO,EA+GP,GAJyC,KAIzC,kBACA,KAAwB,IAAO,IAC/B,yDACA,UAGA,cACA,CAEA,cAKA,IAJA,8EAvHO,EAuHP,GACA,KACA,WAEA,OACA,cA5HO,KAgIP,UACA,8CACA,IAEA,CAEA,aAIA,aAHA,QAtIO,EAuIP,eACA,YACA,QACA,EADqC,MACrC,eA7FA,OACA,QAAe,GAEf,EAFoB,OAEpB,GACA,QAtDO,EAuDP,kCAGA,wBACA,EARoB,SA8FpB,EAtIA,KACA,OACA,QACA,QACA,MACA,SACA,YACA,cACA,oBACA,YACA,WACA,MAvBO,CAwBP,CAAG,CACH,CAEO,iBACP,MAAiB,GAAG,KACpB,IADoB,CACpB,MA7BO,EA6BP,uBAA2D,oBAC3D,QACA,CAEO,SAAS,GAAG,KACnB,IADmB,EACF,GAAG,KACpB,IADoB,CACpB,MAhCO,EAgCP,uBAA2D,kBAC3D,QACA,CAEO,SAAS,GAAG,KACnB,IADmB,EACnB,eACA,qDACA,QACA,CGjDe,YAAS,KACxB,6BACA,kBACA,CACA,CCJA,mBAEW,GAAQ,CACnB,aACA,CAFmB,UAEnB,EACA,SACA,QACA,SACA,QACA,EAEe,YAAS,aACxB,UAKA,MAJA,oCACA,6BACA,yCACA,+BACA,CACA,aACA,aACA,0BACA,sBACA,SACA,QACA,CACA,CEtBA,qBAEA,cACA,8BACA,CAqCA,qBACA,IA3BA,IASA,IAkBA,KACA,KAOA,CAPgB,MAChB,eAtCA,sBACA,iBACA,yCACA,QAAc,QAAa,GAAM,KAAS,EAAG,QAAa,GAAM,KAAS,CACzE,EAAM,WACN,4BAEA,EAgCA,yDA7BA,CADA,EA+BA,aA/BA,EA+BA,WA7BA,eAAiC,kBACjC,CADiE,CACjE,MAAc,WA4Bd,GA5Bc,sBAAsD,GAAM,KAAO,GAC3E,GACN,SA0BA,GA1BA,eAKA,CADA,EAuBA,YAvBA,EAuBA,SArBA,QAAc,WAqBd,GArBc,qBAAqD,GAAM,KAAO,EAC1E,GACN,SAmBA,GAnBA,eAoBA,SAhBA,aACA,iBACA,8CACA,QAAc,QAAa,GAAM,KAAS,EAAG,QAAa,GAAM,KAAS,CACzE,EAAM,mBACN,iCAEA,EASA,yCACA,SACA,CADkB,QAClB,GAEA,IADA,sBACA,4BACA,iBACA,CACA,CACA,CAEO,UDxDA,YACP,cCuDkE,QDvDlE,kDACA,oBAAwB,GAAW,GAAS,YAAZ,EAAY,UAC5C,ECqDkE,qBAC3D,MDpDA,kBCoDmD,CDnD1D,OCmDkE,CDnDtC,IAC5B,cADoC,CACpC,mDACA,8BACA,qCAES,GADT,MACkB,KADlB,EACkB,uBAF+C,EAGjE,EC6CkE,cDhDO,SEuDlE,UACP,YAOA,OALA,kBACA,MAAmB,GAAG,OACtB,EADsB,EACtB,mBAA2C,4BAC3C,CAAG,EAEH,YACA,OAAW,GAAG,cAEd,CChFe,YAAS,OACxB,0BACA,eACA,CAEO,iBACP,iCACA,yBACA,QACA,CCPO,eAGA,IAEP,yBACA,uDACA,wDACA,gBAAyB,IAAI,IAC7B,oBAAwC,GAAI,GAAG,GAAI,GAAG,GAAI,OAC1D,oBAAwC,GAAI,GAAG,GAAI,GAAG,GAAI,OAC1D,qBAA0C,GAAI,GAAG,GAAI,GAAG,GAAI,GAAG,GAAI,OACnE,qBAA0C,GAAI,GAAG,GAAI,GAAG,GAAI,GAAG,GAAI,OACnE,oBAAwC,GAAI,GAAG,GAAI,GAAG,GAAI,OAC1D,qBAA0C,GAAI,GAAG,GAAI,GAAG,GAAI,GAAG,GAAI,OAEnE,IACA,mBACA,sBACA,WACA,mBACA,eACA,eACA,gBACA,QACA,wBACA,SACA,mBACA,eACA,mBACA,kBACA,mBACA,mBACA,eACA,uBACA,kBACA,iBACA,WACA,aACA,eACA,uBACA,kBACA,gBACA,kBACA,mBACA,oBACA,uBACA,oBACA,oBACA,gBACA,oBACA,qBACA,sBACA,sBACA,sBACA,oBACA,mBACA,kBACA,kBACA,gBACA,gBACA,mBACA,mBACA,qBACA,oBACA,iBACA,mBACA,oBACA,cACA,mBACA,aACA,YACA,qBACA,aACA,kBACA,iBACA,mBACA,eACA,eACA,eACA,kBACA,uBACA,kBACA,sBACA,mBACA,oBACA,mBACA,8BACA,mBACA,mBACA,mBACA,mBACA,qBACA,sBACA,qBACA,uBACA,uBACA,wBACA,qBACA,WACA,kBACA,eACA,iBACA,eACA,yBACA,eACA,sBACA,qBACA,uBACA,wBACA,wBACA,wBACA,yBACA,qBACA,mBACA,mBACA,kBACA,qBACA,SACA,iBACA,cACA,kBACA,gBACA,mBACA,gBACA,uBACA,mBACA,uBACA,uBACA,oBACA,mBACA,cACA,cACA,cACA,oBACA,eACA,sBACA,aACA,mBACA,kBACA,oBACA,gBACA,oBACA,iBACA,kBACA,gBACA,gBACA,gBACA,kBACA,kBACA,kBACA,cACA,kBACA,kBACA,aACA,WACA,iBACA,gBACA,kBACA,gBACA,eACA,eACA,oBACA,gBACA,oBACA,EAiBA,cACA,6BACA,CAUA,cACA,6BACA,CAEe,eACf,QAEA,OADA,8BACA,8DACA,8DACA,mDACA,gFACA,MACA,wCACA,gEACA,uCACA,+DACA,4CACA,+CACA,+BACA,wCACA,IACA,CAEA,eACA,yCACA,CAEA,qBAEA,OADA,kBACA,eACA,CASO,SAAS,GAAG,aAPZ,EAQP,2BANA,EAFO,EAQP,aAPA,cACA,GAEA,OADA,YACA,qBAFA,OAMA,yBACA,CAEO,qBACP,UACA,UACA,UACA,eACA,CA8BA,cACA,UAAa,WAAY,EAAE,WAAY,EAAE,WAAY,EAOrD,cACA,uBACA,SAAY,qBAA2B,EAAE,WAAe,IAAI,WAAe,IAAI,WAAe,EAAE,eAAqB,EAAE,GAAG,EAG1H,eACA,2CACA,CAEA,eACA,iDACA,CAEA,eAEA,OADA,UACA,yBACA,CAEA,qBAIA,OAHA,eACA,mBACA,cACA,eACA,CAEO,eACP,wDAEA,GADA,2BACA,iBACA,4BAEA,MADA,YACA,MACA,UACA,UACA,kBACA,kBACA,MACA,MACA,UAUA,OATA,GACA,wBACA,gBACA,UACA,kBACA,OAEA,eAEA,uBACA,CAMA,qBACA,UACA,UACA,UACA,eACA,CAsCA,eAEA,MADA,eACA,SACA,CAEA,eACA,mCACA,CAGA,mBACA,yBACA,QACA,yBACA,MACA,CC3YO,uBACP,gBACA,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","sources":["webpack://_N_E/./node_modules/ka-table/Components/CellComponent/CellComponent.js","webpack://_N_E/./node_modules/ka-table/Components/CellEditor/CellEditor.js","webpack://_N_E/./node_modules/ka-table/Components/CellEditorBoolean/CellEditorBoolean.js","webpack://_N_E/./node_modules/ka-table/Components/CellEditorDataType/CellEditorDataType.js","webpack://_N_E/./node_modules/ka-table/Components/CellEditorDate/CellEditorDate.js","webpack://_N_E/./node_modules/ka-table/Components/CellEditorNumber/CellEditorNumber.js","webpack://_N_E/./node_modules/ka-table/Components/CellEditorState/CellEditorState.js","webpack://_N_E/./node_modules/ka-table/Components/CellEditorString/CellEditorString.js","webpack://_N_E/./node_modules/ka-table/Components/CellEditorValidation/CellEditorValidation.js","webpack://_N_E/./node_modules/ka-table/Components/CellEditorValidationMessage/CellEditorValidationMessage.js","webpack://_N_E/./node_modules/ka-table/Components/CellText/CellText.js","webpack://_N_E/./node_modules/ka-table/Components/ColGroup/ColGroup.js","webpack://_N_E/./node_modules/ka-table/Components/DataAndDetailsRows/DataAndDetailsRows.js","webpack://_N_E/./node_modules/ka-table/Components/DataRow/DataRow.js","webpack://_N_E/./node_modules/ka-table/Components/DataRowContent/DataRowContent.js","webpack://_N_E/./node_modules/ka-table/Components/DetailsRow/DetailsRow.js","webpack://_N_E/./node_modules/ka-table/Components/EmptyCell/EmptyCell.js","webpack://_N_E/./node_modules/ka-table/Components/EmptyCells/EmptyCells.js","webpack://_N_E/./node_modules/ka-table/Components/FilterCell/FilterCell.js","webpack://_N_E/./node_modules/ka-table/Components/FilterRow/FilterRow.js","webpack://_N_E/./node_modules/ka-table/Components/FilterRowBoolean/FilterRowBoolean.js","webpack://_N_E/./node_modules/ka-table/Components/FilterRowDataType/FilterRowDataType.js","webpack://_N_E/./node_modules/ka-table/Components/FilterRowDate/FilterRowDate.js","webpack://_N_E/./node_modules/ka-table/Components/FilterRowNumber/FilterRowNumber.js","webpack://_N_E/./node_modules/ka-table/Components/FilterRowString/FilterRowString.js","webpack://_N_E/./node_modules/ka-table/Components/GroupExpandButton/GroupExpandButton.js","webpack://_N_E/./node_modules/ka-table/Components/GroupPanel/GroupPanel.js","webpack://_N_E/./node_modules/ka-table/Components/GroupPanelCell/GroupPanelCell.js","webpack://_N_E/./node_modules/ka-table/Components/GroupRow/GroupRow.js","webpack://_N_E/./node_modules/ka-table/Components/GroupRowContent/GroupRowContent.js","webpack://_N_E/./node_modules/ka-table/Components/GroupSummaryCell/GroupSummaryCell.js","webpack://_N_E/./node_modules/ka-table/Components/GroupSummaryRow/GroupSummaryRow.js","webpack://_N_E/./node_modules/ka-table/Components/GroupedColumnsRow/GroupedColumnsRow.js","webpack://_N_E/./node_modules/ka-table/Components/HeadCell/HeadCell.js","webpack://_N_E/./node_modules/ka-table/Components/HeadCellContent/HeadCellContent.js","webpack://_N_E/./node_modules/ka-table/Components/HeadCellResize/HeadCellResize.js","webpack://_N_E/./node_modules/ka-table/Components/HeadRow/HeadRow.js","webpack://_N_E/./node_modules/ka-table/Components/HeaderFilterButton/HeaderFilterButton.js","webpack://_N_E/./node_modules/ka-table/Components/HeaderFilterPopup/HeaderFilterPopup.js","webpack://_N_E/./node_modules/ka-table/Components/HeaderFilterPopupContent/HeaderFilterPopupContent.js","webpack://_N_E/./node_modules/ka-table/Components/Loading/Loading.js","webpack://_N_E/./node_modules/ka-table/Components/NewRow/NewRow.js","webpack://_N_E/./node_modules/ka-table/Components/NoDataRow/NoDataRow.js","webpack://_N_E/./node_modules/ka-table/Components/Paging/Paging.js","webpack://_N_E/./node_modules/ka-table/Components/PagingIndex/PagingIndex.js","webpack://_N_E/./node_modules/ka-table/Components/PagingPages/PagingPages.js","webpack://_N_E/./node_modules/ka-table/Components/PagingSize/PagingSize.js","webpack://_N_E/./node_modules/ka-table/Components/PagingSizes/PagingSizes.js","webpack://_N_E/./node_modules/ka-table/Components/Rows/Rows.js","webpack://_N_E/./node_modules/ka-table/Components/SortIcon/SortIcon.js","webpack://_N_E/./node_modules/ka-table/Components/SummaryCell/SummaryCell.js","webpack://_N_E/./node_modules/ka-table/Components/SummaryRow/SummaryRow.js","webpack://_N_E/./node_modules/ka-table/Components/Table/Table.js","webpack://_N_E/./node_modules/ka-table/Components/TableBody/TableBody.js","webpack://_N_E/./node_modules/ka-table/Components/TableBodyContent/TableBodyContent.js","webpack://_N_E/./node_modules/ka-table/Components/TableControlled/TableControlled.js","webpack://_N_E/./node_modules/ka-table/Components/TableFoot/TableFoot.js","webpack://_N_E/./node_modules/ka-table/Components/TableHead/TableHead.js","webpack://_N_E/./node_modules/ka-table/Components/TablePaging/TablePaging.js","webpack://_N_E/./node_modules/ka-table/Components/TableUncontrolled/TableUncontrolled.js","webpack://_N_E/./node_modules/ka-table/Components/TableUncontrolled/utils.js","webpack://_N_E/./node_modules/ka-table/Components/TableWrapper/TableWrapper.js","webpack://_N_E/./node_modules/ka-table/Components/VirtualizedRows/VirtualizedRows.js","webpack://_N_E/./node_modules/ka-table/Icons/CollapsedIcon.js","webpack://_N_E/./node_modules/ka-table/Icons/CrossIcon.js","webpack://_N_E/./node_modules/ka-table/Icons/DownIcon.js","webpack://_N_E/./node_modules/ka-table/Icons/ExpandedIcon.js","webpack://_N_E/./node_modules/ka-table/Icons/FilterIcon.js","webpack://_N_E/./node_modules/ka-table/Icons/UpIcon.js","webpack://_N_E/./node_modules/ka-table/Models/CssClasses.js","webpack://_N_E/./node_modules/ka-table/Reducers/kaReducer.js","webpack://_N_E/./node_modules/ka-table/Utils/ArrayUtils.js","webpack://_N_E/./node_modules/ka-table/Utils/CellResizeUtils.js","webpack://_N_E/./node_modules/ka-table/Utils/CellUtils.js","webpack://_N_E/./node_modules/ka-table/Utils/ColumnUtils.js","webpack://_N_E/./node_modules/ka-table/Utils/CommonUtils.js","webpack://_N_E/./node_modules/ka-table/Utils/ComponentUtils.js","webpack://_N_E/./node_modules/ka-table/Utils/DataUtils.js","webpack://_N_E/./node_modules/ka-table/Utils/DateUtils.js","webpack://_N_E/./node_modules/ka-table/Utils/EffectUtils.js","webpack://_N_E/./node_modules/ka-table/Utils/FilterUtils.js","webpack://_N_E/./node_modules/ka-table/Utils/GroupUtils.js","webpack://_N_E/./node_modules/ka-table/Utils/GroupedColumnsUtils.js","webpack://_N_E/./node_modules/ka-table/Utils/HeadRowUtils.js","webpack://_N_E/./node_modules/ka-table/Utils/NavigationUtils.js","webpack://_N_E/./node_modules/ka-table/Utils/PagingUtils.js","webpack://_N_E/./node_modules/ka-table/Utils/PropsUtils.js","webpack://_N_E/./node_modules/ka-table/Utils/ReducerUtils.js","webpack://_N_E/./node_modules/ka-table/Utils/SortUtils.js","webpack://_N_E/./node_modules/ka-table/Utils/TreeUtils.js","webpack://_N_E/./node_modules/ka-table/Utils/Validation.js","webpack://_N_E/./node_modules/ka-table/Utils/Virtualize.js","webpack://_N_E/./node_modules/ka-table/actionCreators.js","webpack://_N_E/./node_modules/ka-table/const.js","webpack://_N_E/./node_modules/ka-table/defaultOptions.js","webpack://_N_E/./node_modules/ka-table/enums.js","webpack://_N_E/./node_modules/ka-table/hooks/UseOuterClick.js","webpack://_N_E/./node_modules/ka-table/hooks/UseTable.js","webpack://_N_E/./node_modules/ka-table/hooks/UseTableInstance.js","webpack://_N_E/./node_modules/ka-table/index.js","webpack://_N_E/./node_modules/ka-table/utils.js","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/ar-AE.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/bg-BG.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/cs-CZ.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/da-DK.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/de-DE.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/el-GR.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/en-US.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/es-ES.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/et-EE.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/fi-FI.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/fr-FR.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/he-IL.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/hr-HR.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/hu-HU.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/it-IT.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/ja-JP.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/ko-KR.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/lt-LT.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/lv-LV.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/nb-NO.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/nl-NL.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/pl-PL.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/pt-BR.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/pt-PT.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/ro-RO.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/ru-RU.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/sk-SK.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/sl-SI.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/sr-SP.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/sv-SE.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/tr-TR.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/uk-UA.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/zh-CN.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/zh-TW.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/intlStrings.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/useBreadcrumbs.mjs","webpack://_N_E/./node_modules/@nextui-org/breadcrumbs/dist/chunk-AAD6P2XK.mjs","webpack://_N_E/./node_modules/@nextui-org/shared-icons/dist/chunk-534KRDYK.mjs","webpack://_N_E/./node_modules/@nextui-org/breadcrumbs/dist/chunk-6WHGJGLN.mjs","webpack://_N_E/./node_modules/@react-aria/link/dist/useLink.mjs","webpack://_N_E/./node_modules/@react-aria/breadcrumbs/dist/useBreadcrumbItem.mjs","webpack://_N_E/./node_modules/@nextui-org/breadcrumbs/dist/chunk-HM6BKCEH.mjs","webpack://_N_E/./node_modules/@nextui-org/breadcrumbs/dist/chunk-TPV4OC2M.mjs","webpack://_N_E/./node_modules/@nextui-org/pagination/dist/chunk-SDEB5NXU.mjs","webpack://_N_E/./node_modules/@nextui-org/pagination/dist/chunk-TEHPZN3P.mjs","webpack://_N_E/./node_modules/@nextui-org/pagination/dist/chunk-5E6ZQJ3X.mjs","webpack://_N_E/./node_modules/@nextui-org/use-pagination/dist/index.mjs","webpack://_N_E/./node_modules/@nextui-org/theme/dist/chunk-QG4TODGA.mjs","webpack://_N_E/./node_modules/@nextui-org/use-intersection-observer/dist/index.mjs","webpack://_N_E/./node_modules/@nextui-org/pagination/dist/chunk-YXJDS6EZ.mjs","webpack://_N_E/./node_modules/@nextui-org/shared-icons/dist/chunk-M5FBVHRQ.mjs","webpack://_N_E/./node_modules/@nextui-org/pagination/dist/chunk-MT6723RH.mjs","webpack://_N_E/./node_modules/@nextui-org/shared-icons/dist/chunk-BU32PI3O.mjs","webpack://_N_E/./node_modules/@nextui-org/tabs/dist/chunk-FXLYF44B.mjs","webpack://_N_E/./node_modules/@react-aria/tabs/dist/utils.mjs","webpack://_N_E/./node_modules/@react-aria/tabs/dist/useTabPanel.mjs","webpack://_N_E/./node_modules/@nextui-org/tabs/dist/chunk-6XM6DIWB.mjs","webpack://_N_E/./node_modules/@react-aria/tabs/dist/useTab.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/events/add-pointer-event.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/utils/distance.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/gestures/pan/PanSession.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/projection/geometry/delta-calc.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/gestures/drag/utils/constraints.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/projection/utils/each-axis.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/utils/get-context-window.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/gestures/drag/VisualElementDragControls.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/gestures/drag/index.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/gestures/pan/index.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/components/AnimatePresence/use-presence.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/projection/node/state.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/projection/styles/scale-border-radius.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/projection/styles/scale-box-shadow.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/motion/features/layout/MeasureLayout.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/projection/animation/mix-values.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/projection/geometry/copy.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/projection/geometry/delta-remove.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/projection/geometry/utils.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/projection/shared/stack.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/projection/styles/transform.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/utils/compare-by-depth.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/utils/flat-tree.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/utils/delay.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/dom/utils/is-svg-element.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/animation/animate/single-value.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/projection/node/create-projection-node.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/projection/node/DocumentProjectionNode.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/projection/node/HTMLProjectionNode.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/motion/features/drag.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/motion/features/layout.mjs","webpack://_N_E/./node_modules/framer-motion/dist/es/render/dom/features-max.mjs","webpack://_N_E/./node_modules/@nextui-org/use-is-mounted/dist/index.mjs","webpack://_N_E/./node_modules/@nextui-org/tabs/dist/chunk-WIIQT7L4.mjs","webpack://_N_E/./node_modules/@nextui-org/theme/dist/chunk-TYZBTYGB.mjs","webpack://_N_E/./node_modules/@react-stately/list/dist/useSingleSelectListState.mjs","webpack://_N_E/./node_modules/@react-stately/tabs/dist/useTabListState.mjs","webpack://_N_E/./node_modules/@react-aria/tabs/dist/TabsKeyboardDelegate.mjs","webpack://_N_E/./node_modules/@react-aria/tabs/dist/useTabList.mjs","webpack://_N_E/./node_modules/@nextui-org/tabs/dist/chunk-73H64UCB.mjs","webpack://_N_E/./node_modules/@nextui-org/tabs/dist/chunk-TBXVIZ2K.mjs","webpack://_N_E/./node_modules/@nextui-org/theme/dist/chunk-EYPT3KBI.mjs","webpack://_N_E/./node_modules/d3-selection/src/selector.js","webpack://_N_E/./node_modules/d3-selection/src/selection/select.js","webpack://_N_E/./node_modules/d3-selection/src/array.js","webpack://_N_E/./node_modules/d3-selection/src/selectorAll.js","webpack://_N_E/./node_modules/d3-selection/src/selection/selectAll.js","webpack://_N_E/./node_modules/d3-selection/src/matcher.js","webpack://_N_E/./node_modules/d3-selection/src/selection/selectChild.js","webpack://_N_E/./node_modules/d3-selection/src/selection/selectChildren.js","webpack://_N_E/./node_modules/d3-selection/src/selection/filter.js","webpack://_N_E/./node_modules/d3-selection/src/selection/sparse.js","webpack://_N_E/./node_modules/d3-selection/src/selection/enter.js","webpack://_N_E/./node_modules/d3-selection/src/constant.js","webpack://_N_E/./node_modules/d3-selection/src/selection/data.js","webpack://_N_E/./node_modules/d3-selection/src/selection/exit.js","webpack://_N_E/./node_modules/d3-selection/src/selection/join.js","webpack://_N_E/./node_modules/d3-selection/src/selection/merge.js","webpack://_N_E/./node_modules/d3-selection/src/selection/order.js","webpack://_N_E/./node_modules/d3-selection/src/selection/sort.js","webpack://_N_E/./node_modules/d3-selection/src/selection/call.js","webpack://_N_E/./node_modules/d3-selection/src/selection/nodes.js","webpack://_N_E/./node_modules/d3-selection/src/selection/node.js","webpack://_N_E/./node_modules/d3-selection/src/selection/size.js","webpack://_N_E/./node_modules/d3-selection/src/selection/empty.js","webpack://_N_E/./node_modules/d3-selection/src/selection/each.js","webpack://_N_E/./node_modules/d3-selection/src/namespaces.js","webpack://_N_E/./node_modules/d3-selection/src/namespace.js","webpack://_N_E/./node_modules/d3-selection/src/selection/attr.js","webpack://_N_E/./node_modules/d3-selection/src/window.js","webpack://_N_E/./node_modules/d3-selection/src/selection/style.js","webpack://_N_E/./node_modules/d3-selection/src/selection/property.js","webpack://_N_E/./node_modules/d3-selection/src/selection/classed.js","webpack://_N_E/./node_modules/d3-selection/src/selection/text.js","webpack://_N_E/./node_modules/d3-selection/src/selection/html.js","webpack://_N_E/./node_modules/d3-selection/src/selection/raise.js","webpack://_N_E/./node_modules/d3-selection/src/selection/lower.js","webpack://_N_E/./node_modules/d3-selection/src/creator.js","webpack://_N_E/./node_modules/d3-selection/src/selection/append.js","webpack://_N_E/./node_modules/d3-selection/src/selection/insert.js","webpack://_N_E/./node_modules/d3-selection/src/selection/remove.js","webpack://_N_E/./node_modules/d3-selection/src/selection/clone.js","webpack://_N_E/./node_modules/d3-selection/src/selection/datum.js","webpack://_N_E/./node_modules/d3-selection/src/selection/on.js","webpack://_N_E/./node_modules/d3-selection/src/selection/dispatch.js","webpack://_N_E/./node_modules/d3-selection/src/selection/iterator.js","webpack://_N_E/./node_modules/d3-selection/src/selection/index.js","webpack://_N_E/./node_modules/d3-dispatch/src/dispatch.js","webpack://_N_E/./node_modules/d3-timer/src/timer.js","webpack://_N_E/./node_modules/d3-timer/src/timeout.js","webpack://_N_E/./node_modules/d3-transition/src/transition/schedule.js","webpack://_N_E/./node_modules/d3-transition/src/interrupt.js","webpack://_N_E/./node_modules/d3-transition/src/selection/interrupt.js","webpack://_N_E/./node_modules/d3-interpolate/src/number.js","webpack://_N_E/./node_modules/d3-interpolate/src/transform/decompose.js","webpack://_N_E/./node_modules/d3-interpolate/src/transform/parse.js","webpack://_N_E/./node_modules/d3-interpolate/src/transform/index.js","webpack://_N_E/./node_modules/d3-transition/src/transition/tween.js","webpack://_N_E/./node_modules/d3-color/src/define.js","webpack://_N_E/./node_modules/d3-color/src/color.js","webpack://_N_E/./node_modules/d3-interpolate/src/basis.js","webpack://_N_E/./node_modules/d3-interpolate/src/basisClosed.js","webpack://_N_E/./node_modules/d3-interpolate/src/constant.js","webpack://_N_E/./node_modules/d3-interpolate/src/color.js","webpack://_N_E/./node_modules/d3-interpolate/src/rgb.js","webpack://_N_E/./node_modules/d3-interpolate/src/string.js","webpack://_N_E/./node_modules/d3-transition/src/transition/interpolate.js","webpack://_N_E/./node_modules/d3-transition/src/transition/attr.js","webpack://_N_E/./node_modules/d3-transition/src/transition/attrTween.js","webpack://_N_E/./node_modules/d3-transition/src/transition/delay.js","webpack://_N_E/./node_modules/d3-transition/src/transition/duration.js","webpack://_N_E/./node_modules/d3-transition/src/transition/ease.js","webpack://_N_E/./node_modules/d3-transition/src/transition/easeVarying.js","webpack://_N_E/./node_modules/d3-transition/src/transition/filter.js","webpack://_N_E/./node_modules/d3-transition/src/transition/merge.js","webpack://_N_E/./node_modules/d3-transition/src/transition/on.js","webpack://_N_E/./node_modules/d3-transition/src/transition/remove.js","webpack://_N_E/./node_modules/d3-transition/src/transition/select.js","webpack://_N_E/./node_modules/d3-transition/src/transition/selectAll.js","webpack://_N_E/./node_modules/d3-transition/src/transition/selection.js","webpack://_N_E/./node_modules/d3-transition/src/transition/style.js","webpack://_N_E/./node_modules/d3-transition/src/transition/styleTween.js","webpack://_N_E/./node_modules/d3-transition/src/transition/text.js","webpack://_N_E/./node_modules/d3-transition/src/transition/textTween.js","webpack://_N_E/./node_modules/d3-transition/src/transition/transition.js","webpack://_N_E/./node_modules/d3-transition/src/transition/end.js","webpack://_N_E/./node_modules/d3-transition/src/transition/index.js","webpack://_N_E/./node_modules/d3-ease/src/cubic.js","webpack://_N_E/./node_modules/d3-transition/src/selection/transition.js","webpack://_N_E/./node_modules/d3-transition/src/selection/index.js","webpack://_N_E/./node_modules/d3-transition/src/index.js","webpack://_N_E/./node_modules/d3-brush/src/brush.js","webpack://_N_E/./node_modules/d3-brush/src/index.js","webpack://_N_E/./node_modules/d3-selection/src/select.js","webpack://_N_E/./node_modules/d3-selection/src/index.js","webpack://_N_E/./node_modules/d3-zoom/src/transform.js","webpack://_N_E/./node_modules/d3-zoom/src/zoom.js","webpack://_N_E/./node_modules/d3-zoom/src/index.js","webpack://_N_E/./node_modules/d3/src/index.js","webpack://_N_E/./node_modules/compute-scroll-into-view/dist/index.js","webpack://_N_E/./node_modules/scroll-into-view-if-needed/dist/index.js"],"sourcesContent":["\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar CellEditor_1 = __importDefault(require(\"../CellEditor/CellEditor\"));\nvar CellText_1 = __importDefault(require(\"../CellText/CellText\"));\nvar CellComponent = function (props) {\n var treeDeep = props.treeDeep, treeArrowElement = props.treeArrowElement, childComponents = props.childComponents, style = props.column.style, isEditableCell = props.isEditableCell;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: \"\".concat(defaultOptions_1.default.css.cell, \" \").concat(treeDeep != null ? defaultOptions_1.default.css.treeCell : ''),\n style: style\n }, props, childComponents.cell), elementAttributes = _a.elementAttributes, content = _a.content;\n return (React.createElement(\"td\", __assign({}, elementAttributes),\n treeDeep ? Array(treeDeep).fill(undefined).map(function (_, index) { return React.createElement(\"div\", { key: index, className: defaultOptions_1.default.css.treeCellEmptySpace }); }) : null,\n content ||\n (React.createElement(React.Fragment, null,\n treeArrowElement,\n isEditableCell ?\n (React.createElement(CellEditor_1.default, __assign({}, props)))\n :\n (React.createElement(CellText_1.default, __assign({}, props)))))));\n};\nexports.default = CellComponent;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar CellEditorState_1 = __importDefault(require(\"../CellEditorState/CellEditorState\"));\nvar enums_1 = require(\"../../enums\");\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar CellUtils_1 = require(\"../../Utils/CellUtils\");\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar CellEditor = function (props) {\n var childComponents = props.childComponents, dispatch = props.dispatch, editingMode = props.editingMode;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: \"\".concat(defaultOptions_1.default.css.cellEditor)\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.cellEditor), elementAttributes = _a.elementAttributes, content = _a.content;\n return (React.createElement(\"div\", __assign({}, elementAttributes), content || (editingMode === enums_1.EditingMode.Cell\n ? React.createElement(CellEditorState_1.default, __assign({}, props, { dispatch: (0, CellUtils_1.getCellEditorDispatchHandler)(dispatch), autoFocus: true }))\n : React.createElement(CellEditorState_1.default, __assign({}, props)))));\n};\nexports.default = CellEditor;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar react_1 = __importDefault(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar CommonUtils_1 = require(\"../../Utils/CommonUtils\");\nvar CellEditorBoolean = function (props) {\n var column = props.column, dispatch = props.dispatch, value = props.value, rowKeyValue = props.rowKeyValue, autoFocus = props.autoFocus, childComponents = props.childComponents;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: \"\".concat(defaultOptions_1.default.css.checkbox),\n autoFocus: autoFocus,\n type: 'checkbox',\n checked: value || false,\n onChange: function (event) { return dispatch((0, actionCreators_1.updateCellValue)(rowKeyValue, column.key, event.currentTarget.checked)); },\n onBlur: function () { return dispatch((0, actionCreators_1.closeEditor)(rowKeyValue, column.key)); }\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.cellEditorInput), elementAttributes = _a.elementAttributes, content = _a.content;\n return (content ||\n (react_1.default.createElement(\"input\", __assign({ ref: function (elem) { return elem && (elem.indeterminate = (0, CommonUtils_1.isEmpty)(value)); } }, elementAttributes))));\n};\nexports.default = CellEditorBoolean;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar enums_1 = require(\"../../enums\");\nvar CellEditorBoolean_1 = __importDefault(require(\"../CellEditorBoolean/CellEditorBoolean\"));\nvar CellEditorDate_1 = __importDefault(require(\"../CellEditorDate/CellEditorDate\"));\nvar CellEditorNumber_1 = __importDefault(require(\"../CellEditorNumber/CellEditorNumber\"));\nvar CellEditorString_1 = __importDefault(require(\"../CellEditorString/CellEditorString\"));\nvar CellEditorDataType = function (props) {\n switch (props.column.dataType) {\n case enums_1.DataType.Boolean: return react_1.default.createElement(CellEditorBoolean_1.default, __assign({}, props));\n case enums_1.DataType.Date: return react_1.default.createElement(CellEditorDate_1.default, __assign({}, props));\n case enums_1.DataType.Number: return react_1.default.createElement(CellEditorNumber_1.default, __assign({}, props));\n default: return react_1.default.createElement(CellEditorString_1.default, __assign({}, props));\n }\n};\nexports.default = CellEditorDataType;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar react_1 = __importDefault(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar DateUtils_1 = require(\"../../Utils/DateUtils\");\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar CellEditorDate = function (props) {\n var column = props.column, dispatch = props.dispatch, value = props.value, rowKeyValue = props.rowKeyValue, autoFocus = props.autoFocus, childComponents = props.childComponents;\n var inputValue = value && (0, DateUtils_1.getDateInputValue)(value);\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: \"\".concat(defaultOptions_1.default.css.dateInput),\n autoFocus: autoFocus,\n type: 'date',\n value: inputValue || '',\n onChange: function (event) {\n var targetValue = event.currentTarget.value;\n var newValue = targetValue ? new Date(targetValue) : null;\n dispatch((0, actionCreators_1.updateCellValue)(rowKeyValue, column.key, newValue && new Date(newValue.getTime() + newValue.getTimezoneOffset() * 60000)));\n },\n onBlur: function () { return dispatch((0, actionCreators_1.closeEditor)(rowKeyValue, column.key)); }\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.cellEditorInput), elementAttributes = _a.elementAttributes, content = _a.content;\n return (content ||\n (react_1.default.createElement(\"input\", __assign({}, elementAttributes))));\n};\nexports.default = CellEditorDate;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar react_1 = __importDefault(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar CellEditorNumber = function (props) {\n var column = props.column, dispatch = props.dispatch, value = props.value, rowKeyValue = props.rowKeyValue, autoFocus = props.autoFocus, childComponents = props.childComponents;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: \"\".concat(defaultOptions_1.default.css.numberInput),\n autoFocus: autoFocus,\n type: 'number',\n value: value === null || value === undefined ? '' : value,\n onChange: function (event) {\n var newValue = event.currentTarget.value !== '' ? Number(event.currentTarget.value) : null;\n dispatch((0, actionCreators_1.updateCellValue)(rowKeyValue, column.key, newValue));\n },\n onBlur: function () {\n dispatch((0, actionCreators_1.closeEditor)(rowKeyValue, column.key));\n }\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.cellEditorInput), elementAttributes = _a.elementAttributes, content = _a.content;\n return (content ||\n (react_1.default.createElement(\"input\", __assign({}, elementAttributes))));\n};\nexports.default = CellEditorNumber;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar enums_1 = require(\"../../enums\");\nvar react_1 = __importStar(require(\"react\"));\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar CellEditorValidation_1 = __importDefault(require(\"../CellEditorValidation/CellEditorValidation\"));\nvar EffectUtils_1 = require(\"../../Utils/EffectUtils\");\nvar Validation_1 = require(\"../../Utils/Validation\");\nvar const_1 = require(\"../../const\");\nvar DataUtils_1 = require(\"../../Utils/DataUtils\");\nvar CellEditorState = function (props) {\n var column = props.column, dispatch = props.dispatch, editingMode = props.editingMode, rowData = props.rowData, rowKeyValue = props.rowKeyValue, validation = props.validation, value = props.value;\n var validationMessage = props.validationMessage;\n var _a = (0, react_1.useState)(rowData), rowDataState = _a[0], changeRowData = _a[1];\n var _b = (0, react_1.useState)(value), editorValueState = _b[0], changeEditorValue = _b[1];\n var isCellEditingMode = editingMode === enums_1.EditingMode.Cell;\n validationMessage = rowKeyValue === const_1.newRowId || isCellEditingMode || validationMessage\n ? (0, Validation_1.getValidationValue)(editorValueState, rowDataState, column, validation) || ''\n : validationMessage;\n var onValueStateChange = function (action) {\n var newRowValue = (0, DataUtils_1.replaceValue)(rowData, column, action.value);\n changeRowData(newRowValue);\n changeEditorValue(action.value);\n };\n var close = (0, react_1.useCallback)(function () {\n dispatch((0, actionCreators_1.closeEditor)(rowKeyValue, column.key));\n }, [dispatch, column, rowKeyValue]);\n var closeHandler = (0, react_1.useCallback)(function () {\n if (!isCellEditingMode || !validationMessage) {\n if (editorValueState !== value) {\n dispatch((0, actionCreators_1.updateEditorValue)(rowKeyValue, column.key, editorValueState));\n }\n if (isCellEditingMode) {\n close();\n }\n }\n }, [validationMessage, dispatch, close, column, editorValueState, rowKeyValue, value, isCellEditingMode]);\n (0, react_1.useEffect)(function () {\n return (0, EffectUtils_1.addEscEnterKeyEffect)(close, closeHandler);\n }, [close, closeHandler]);\n var dispatchHandler = function (action) {\n if (action.type === enums_1.ActionType.CloseEditor) {\n closeHandler();\n }\n else if (action.type === enums_1.ActionType.UpdateCellValue) {\n onValueStateChange(action);\n }\n else {\n dispatch(action);\n }\n };\n var stateProps = __assign(__assign({}, props), {\n dispatch: dispatchHandler,\n value: editorValueState,\n editorValue: editorValueState,\n rowData: rowDataState,\n validationMessage: validationMessage || undefined\n });\n return (react_1.default.createElement(CellEditorValidation_1.default, __assign({}, stateProps)));\n};\nexports.default = CellEditorState;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar react_1 = __importDefault(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar CellEditorString = function (props) {\n var column = props.column, dispatch = props.dispatch, value = props.value, rowKeyValue = props.rowKeyValue, autoFocus = props.autoFocus, childComponents = props.childComponents;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: \"\".concat(defaultOptions_1.default.css.textInput),\n autoFocus: autoFocus,\n type: 'text',\n value: value || '',\n onChange: function (event) {\n dispatch((0, actionCreators_1.updateCellValue)(rowKeyValue, column.key, event.currentTarget.value));\n },\n onBlur: function () {\n dispatch((0, actionCreators_1.closeEditor)(rowKeyValue, column.key));\n }\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.cellEditorInput), elementAttributes = _a.elementAttributes, content = _a.content;\n return (content ||\n (react_1.default.createElement(\"input\", __assign({}, elementAttributes))));\n};\nexports.default = CellEditorString;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar CellEditorDataType_1 = __importDefault(require(\"../CellEditorDataType/CellEditorDataType\"));\nvar CellEditorValidationMessage_1 = __importDefault(require(\"../CellEditorValidationMessage/CellEditorValidationMessage\"));\nvar CellEditorValidation = function (props) {\n var validationMessage = props.validationMessage;\n return (react_1.default.createElement(\"div\", { className: \"\".concat(validationMessage ? defaultOptions_1.default.css.kaCellEditorValidationError : '') },\n react_1.default.createElement(CellEditorDataType_1.default, __assign({}, props)),\n validationMessage && react_1.default.createElement(CellEditorValidationMessage_1.default, { message: validationMessage })));\n};\nexports.default = CellEditorValidation;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar CellEditorValidationMessage = function (props) {\n var message = props.message;\n return (react_1.default.createElement(\"div\", { className: 'ka-validation-message-container' },\n react_1.default.createElement(\"div\", { className: 'ka-validation-message' }, message)));\n};\nexports.default = CellEditorValidationMessage;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar enums_1 = require(\"../../enums\");\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar CellText = function (props) {\n var childComponents = props.childComponents, column = props.column, format = props.format, dispatch = props.dispatch, editingMode = props.editingMode, rowKeyValue = props.rowKeyValue, rowData = props.rowData, value = props.value;\n var formattedValue = (format && format({ column: column, value: value, rowData: rowData }))\n || (value === null || value === void 0 ? void 0 : value.toString());\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.cellText,\n onClick: function () {\n if (editingMode === enums_1.EditingMode.Cell) {\n dispatch((0, actionCreators_1.openEditor)(rowKeyValue, column.key));\n }\n },\n }, props, childComponents.cellText), elementAttributes = _a.elementAttributes, content = _a.content;\n return (React.createElement(\"div\", __assign({}, elementAttributes), content || formattedValue || React.createElement(React.Fragment, null, \"\\u00A0\")));\n};\nexports.default = CellText;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ColGroup = void 0;\nvar React = __importStar(require(\"react\"));\nvar EmptyCells_1 = __importDefault(require(\"../EmptyCells/EmptyCells\"));\nvar ColGroup = function (_a) {\n var columns = _a.columns, groupColumnsCount = _a.groupColumnsCount;\n return (React.createElement(\"colgroup\", null,\n React.createElement(EmptyCells_1.default, { count: groupColumnsCount, isColGroup: true }),\n columns.map(function (c) { var _a, _b, _c; return React.createElement(\"col\", __assign({ key: c.key }, c.colGroup, { width: c.width || ((_a = c.colGroup) === null || _a === void 0 ? void 0 : _a.width) || ((_c = (_b = c.colGroup) === null || _b === void 0 ? void 0 : _b.style) === null || _c === void 0 ? void 0 : _c.width) })); })));\n};\nexports.ColGroup = ColGroup;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar DataRow_1 = __importDefault(require(\"../DataRow/DataRow\"));\nvar DetailsRow_1 = __importDefault(require(\"../DetailsRow/DetailsRow\"));\nvar DataAndDetailsRows = function (props) {\n var isDetailsRowShown = props.isDetailsRowShown;\n return (react_1.default.createElement(react_1.default.Fragment, null,\n react_1.default.createElement(DataRow_1.default, __assign({}, props)),\n isDetailsRowShown && react_1.default.createElement(DetailsRow_1.default, __assign({}, props))));\n};\nexports.default = DataAndDetailsRows;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar DataRowContent_1 = __importDefault(require(\"../DataRowContent/DataRowContent\"));\nvar EmptyCells_1 = __importDefault(require(\"../EmptyCells/EmptyCells\"));\nvar react_1 = __importDefault(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar PropsUtils_1 = require(\"../../Utils/PropsUtils\");\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar DataRow = function (props) {\n var dispatch = props.dispatch, groupColumnsCount = props.groupColumnsCount, isSelectedRow = props.isSelectedRow, rowKeyValue = props.rowKeyValue, rowReordering = props.rowReordering, trRef = props.trRef, childComponents = props.childComponents, isOdd = props.isOdd;\n var dataRow = childComponents.dataRow;\n if (rowReordering) {\n var reorderedRowProps = (0, PropsUtils_1.getDraggableProps)({\n key: rowKeyValue,\n dispatch: dispatch,\n actionCreator: actionCreators_1.reorderRows,\n draggedClass: defaultOptions_1.default.css.draggedRow,\n dragOverClass: defaultOptions_1.default.css.dragOverRow,\n hasReordering: true\n });\n dataRow = (0, ComponentUtils_1.addElementAttributes)(reorderedRowProps, props, dataRow);\n }\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: \"\".concat(defaultOptions_1.default.css.row, \" \").concat(isSelectedRow ? defaultOptions_1.default.css.rowSelected : '').concat(isOdd === undefined ? '' : isOdd ? ' ka-odd' : ' ka-even')\n }, props, dataRow), elementAttributes = _a.elementAttributes, content = _a.content;\n return (react_1.default.createElement(\"tr\", __assign({ ref: trRef }, elementAttributes), content\n ? react_1.default.createElement(react_1.default.Fragment, null, content)\n : (react_1.default.createElement(react_1.default.Fragment, null,\n react_1.default.createElement(EmptyCells_1.default, { count: groupColumnsCount, childComponents: childComponents }),\n react_1.default.createElement(DataRowContent_1.default, __assign({}, props))))));\n};\nexports.default = DataRow;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar CellComponent_1 = __importDefault(require(\"../CellComponent/CellComponent\"));\nvar CollapsedIcon_1 = require(\"../../Icons/CollapsedIcon\");\nvar ExpandedIcon_1 = require(\"../../Icons/ExpandedIcon\");\nvar react_1 = __importDefault(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar CellUtils_1 = require(\"../../Utils/CellUtils\");\nvar ColumnUtils_1 = require(\"../../Utils/ColumnUtils\");\nvar DataUtils_1 = require(\"../../Utils/DataUtils\");\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar DataRowContent = function (_a) {\n var childComponents = _a.childComponents, columns = _a.columns, treeDeep = _a.treeDeep, dispatch = _a.dispatch, editingMode = _a.editingMode, format = _a.format, isDetailsRowShown = _a.isDetailsRowShown, isSelectedRow = _a.isSelectedRow, isTreeExpanded = _a.isTreeExpanded, isTreeGroup = _a.isTreeGroup, rowData = _a.rowData, rowEditableCells = _a.rowEditableCells, rowKeyField = _a.rowKeyField, rowKeyValue = _a.rowKeyValue, selectedRows = _a.selectedRows, validation = _a.validation, treeExpandButtonColumnKey = _a.treeExpandButtonColumnKey;\n var arrow = isTreeGroup\n ? (react_1.default.createElement(\"div\", { className: 'ka-icon-tree-arrow', onClick: function () { return dispatch((0, actionCreators_1.updateTreeGroupsExpanded)(rowKeyValue)); } }, (isTreeExpanded\n ? react_1.default.createElement(ExpandedIcon_1.ExpandedIcon, { className: defaultOptions_1.default.css.iconTreeArrowExpanded })\n : react_1.default.createElement(CollapsedIcon_1.CollapsedIcon, { className: defaultOptions_1.default.css.iconTreeArrowCollapsed })))) : undefined;\n return (react_1.default.createElement(react_1.default.Fragment, null, columns.map(function (column, index) {\n var editableCell = (0, CellUtils_1.getEditableCell)(column, rowEditableCells);\n var hasEditorValue = editableCell && editableCell.hasOwnProperty('editorValue');\n var editorValue = editableCell && editableCell.editorValue;\n var value = hasEditorValue ? editorValue : (0, DataUtils_1.getValueByColumn)(rowData, column);\n var isTreeColumn = treeExpandButtonColumnKey ? treeExpandButtonColumnKey === column.key : index === 0;\n var cellDeep = treeDeep != null && isTreeColumn ? treeDeep : undefined;\n return (react_1.default.createElement(CellComponent_1.default, { treeArrowElement: isTreeColumn && arrow, childComponents: childComponents, treeDeep: cellDeep, column: column, dispatch: dispatch, editingMode: editingMode, editorValue: editorValue, field: (0, ColumnUtils_1.getField)(column), format: format, hasEditorValue: editableCell && editableCell.hasOwnProperty('editorValue'), isDetailsRowShown: isDetailsRowShown, isEditableCell: !!editableCell, isSelectedRow: isSelectedRow, key: column.key, rowData: rowData, rowKeyField: rowKeyField, rowKeyValue: rowKeyValue, selectedRows: selectedRows, validation: validation, validationMessage: editableCell && editableCell.validationMessage, value: value }));\n })));\n};\nexports.default = DataRowContent;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar EmptyCells_1 = __importDefault(require(\"../EmptyCells/EmptyCells\"));\nvar react_1 = __importDefault(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar DetailsRow = function (props) {\n var groupColumnsCount = props.groupColumnsCount, childComponents = props.childComponents, columns = props.columns;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: \"\".concat(defaultOptions_1.default.css.detailsRow),\n }, props, childComponents.detailsRow), elementAttributes = _a.elementAttributes, content = _a.content;\n var _b = (0, ComponentUtils_1.getElementCustomization)({\n className: \"\".concat(defaultOptions_1.default.css.detailsCell, \" \").concat(defaultOptions_1.default.css.cell),\n }, props, childComponents.detailsCell), cellElementAttributes = _b.elementAttributes, cellContent = _b.content;\n var renderContent = (cellContent || content);\n return (react_1.default.createElement(\"tr\", __assign({}, elementAttributes),\n react_1.default.createElement(EmptyCells_1.default, { count: groupColumnsCount, childComponents: childComponents }),\n renderContent\n && react_1.default.createElement(\"td\", __assign({ colSpan: columns.length }, cellElementAttributes), renderContent)));\n};\nexports.default = DetailsRow;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar EmptyCell = function (props) {\n var isTh = props.isTh, isColGroup = props.isColGroup, childComponents = props.childComponents;\n var elementAttributes = (0, ComponentUtils_1.getElementCustomization)({\n className: 'ka-empty-cell' + (isTh ? \" \".concat(defaultOptions_1.default.css.theadBackground, \" \").concat(defaultOptions_1.default.css.theadFixed) : ''),\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.emptyCell).elementAttributes;\n return isColGroup\n ? React.createElement(\"col\", null)\n : isTh\n ? React.createElement(\"th\", __assign({}, elementAttributes))\n : React.createElement(\"td\", __assign({}, elementAttributes));\n};\nexports.default = EmptyCell;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar EmptyCell_1 = __importDefault(require(\"../EmptyCell/EmptyCell\"));\nvar EmptyCells = function (props) {\n return (React.createElement(React.Fragment, null, __spreadArray([], Array(props.count), true).map(function (item, index) { return React.createElement(EmptyCell_1.default, __assign({ key: index, index: index }, props)); })));\n};\nexports.default = EmptyCells;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar FilterRowDataType_1 = __importDefault(require(\"../FilterRowDataType/FilterRowDataType\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar FilterCell = function (props) {\n var childComponents = props.childComponents, column = props.column;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: \"\".concat(defaultOptions_1.default.css.theadCell, \" ka-filter-row-cell \").concat(defaultOptions_1.default.css.theadBackground, \" \").concat(defaultOptions_1.default.css.theadFixed),\n style: column.style\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.filterRowCell), elementAttributes = _a.elementAttributes, content = _a.content;\n return (React.createElement(\"td\", __assign({}, elementAttributes), column.isFilterable === false\n ? React.createElement(React.Fragment, null)\n : content\n ? content\n : (React.createElement(FilterRowDataType_1.default, __assign({}, props)))));\n};\nexports.default = FilterCell;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar EmptyCells_1 = __importDefault(require(\"../EmptyCells/EmptyCells\"));\nvar FilterCell_1 = __importDefault(require(\"../FilterCell/FilterCell\"));\nvar react_1 = __importDefault(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar FilterRow = function (_a) {\n var childComponents = _a.childComponents, columns = _a.columns, dispatch = _a.dispatch, groupColumnsCount = _a.groupColumnsCount;\n return (react_1.default.createElement(\"tr\", { className: \"ka-filter-row \".concat(defaultOptions_1.default.css.theadRow, \" ka-tr\") },\n react_1.default.createElement(EmptyCells_1.default, { count: groupColumnsCount, isTh: true, childComponents: childComponents }),\n columns.map(function (column) {\n return (react_1.default.createElement(FilterCell_1.default, { key: column.key, column: column, childComponents: childComponents, dispatch: dispatch }));\n })));\n};\nexports.default = FilterRow;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar CommonUtils_1 = require(\"../../Utils/CommonUtils\");\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar FilterRowBoolean = function (props) {\n var column = props.column, dispatch = props.dispatch, childComponents = props.childComponents;\n var value = column.filterRowValue;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.checkbox,\n type: 'checkbox',\n checked: value || false,\n onChange: function (event) {\n var filterRowValue = event.currentTarget.checked;\n if (value === false) {\n if (filterRowValue === true) {\n filterRowValue = undefined;\n }\n }\n dispatch((0, actionCreators_1.updateFilterRowValue)(column.key, filterRowValue));\n }\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.filterRowCellInput), elementAttributes = _a.elementAttributes, content = _a.content;\n return (content || (react_1.default.createElement(\"input\", __assign({ ref: function (elem) { return elem && (elem.indeterminate = (0, CommonUtils_1.isEmpty)(value)); } }, elementAttributes))));\n};\nexports.default = FilterRowBoolean;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar enums_1 = require(\"../../enums\");\nvar FilterRowBoolean_1 = __importDefault(require(\"../FilterRowBoolean/FilterRowBoolean\"));\nvar FilterRowDate_1 = __importDefault(require(\"../FilterRowDate/FilterRowDate\"));\nvar FilterRowNumber_1 = __importDefault(require(\"../FilterRowNumber/FilterRowNumber\"));\nvar FilterRowString_1 = __importDefault(require(\"../FilterRowString/FilterRowString\"));\nvar FilterRowDataType = function (props) {\n switch (props.column.dataType) {\n case enums_1.DataType.Boolean: return react_1.default.createElement(FilterRowBoolean_1.default, __assign({}, props));\n case enums_1.DataType.Date: return react_1.default.createElement(FilterRowDate_1.default, __assign({}, props));\n case enums_1.DataType.Number: return react_1.default.createElement(FilterRowNumber_1.default, __assign({}, props));\n default: return react_1.default.createElement(FilterRowString_1.default, __assign({}, props));\n }\n};\nexports.default = FilterRowDataType;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar DateUtils_1 = require(\"../../Utils/DateUtils\");\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar FilterRowDate = function (props) {\n var column = props.column, dispatch = props.dispatch, childComponents = props.childComponents;\n var fieldValue = column.filterRowValue;\n var value = fieldValue && (0, DateUtils_1.getDateInputValue)(fieldValue);\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.dateInput,\n type: 'date',\n value: value || '',\n onChange: function (event) {\n var targetValue = event.currentTarget.value;\n var filterRowValue = targetValue ? new Date(targetValue) : null;\n dispatch((0, actionCreators_1.updateFilterRowValue)(column.key, filterRowValue));\n }\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.filterRowCellInput), elementAttributes = _a.elementAttributes, content = _a.content;\n return (content || (react_1.default.createElement(\"input\", __assign({}, elementAttributes))));\n};\nexports.default = FilterRowDate;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar FilterRowNumber = function (props) {\n var column = props.column, dispatch = props.dispatch, childComponents = props.childComponents;\n var value = column.filterRowValue;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.numberInput,\n type: 'number',\n value: value === null || value === undefined ? '' : value,\n onChange: function (event) {\n var filterRowValue = event.currentTarget.value !== '' ? Number(event.currentTarget.value) : null;\n dispatch((0, actionCreators_1.updateFilterRowValue)(column.key, filterRowValue));\n }\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.filterRowCellInput), elementAttributes = _a.elementAttributes, content = _a.content;\n return (content || (react_1.default.createElement(\"input\", __assign({}, elementAttributes))));\n};\nexports.default = FilterRowNumber;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar FilterRowString = function (props) {\n var column = props.column, dispatch = props.dispatch, childComponents = props.childComponents;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.textInput,\n type: 'search',\n value: column.filterRowValue || '',\n onChange: function (event) {\n dispatch((0, actionCreators_1.updateFilterRowValue)(column.key, event.currentTarget.value));\n }\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.filterRowCellInput), elementAttributes = _a.elementAttributes, content = _a.content;\n return (content || (react_1.default.createElement(\"input\", __assign({}, elementAttributes))));\n};\nexports.default = FilterRowString;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar CollapsedIcon_1 = require(\"../../Icons/CollapsedIcon\");\nvar ExpandedIcon_1 = require(\"../../Icons/ExpandedIcon\");\nvar react_1 = __importDefault(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar GroupExpandButton = function (props) {\n var childComponents = props.childComponents, dispatch = props.dispatch, groupKey = props.groupKey, isExpanded = props.isExpanded;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: 'ka-icon-group-arrow',\n onClick: function () {\n dispatch((0, actionCreators_1.updateGroupsExpanded)(groupKey));\n }\n }, props, childComponents.groupExpandButton), elementAttributes = _a.elementAttributes, content = _a.content;\n return (content || react_1.default.createElement(\"div\", __assign({}, elementAttributes), (isExpanded\n ? react_1.default.createElement(ExpandedIcon_1.ExpandedIcon, { className: defaultOptions_1.default.css.iconGroupArrowExpanded })\n : react_1.default.createElement(CollapsedIcon_1.CollapsedIcon, { className: defaultOptions_1.default.css.iconGroupArrowCollapsed }))));\n};\nexports.default = GroupExpandButton;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.GroupPanel = void 0;\nvar React = __importStar(require(\"react\"));\nvar GroupPanelCell_1 = require(\"../GroupPanelCell/GroupPanelCell\");\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar PropsUtils_1 = require(\"../../Utils/PropsUtils\");\nvar GroupUtils_1 = require(\"../../Utils/GroupUtils\");\nvar GroupPanel = function (props) {\n var columns = props.columns, groups = props.groups, groupPanel = props.groupPanel, dispatch = props.dispatch, _a = props.childComponents, childComponents = _a === void 0 ? {} : _a;\n var _b = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.groupPanel,\n onDrop: !(0, GroupUtils_1.isMaxDeep)(groupPanel, columns, groups) ? function (e) { return (0, PropsUtils_1.groupPanelOnDrop)(e, dispatch); } : undefined,\n onDragOver: function (event) {\n event.preventDefault();\n }\n }, props, childComponents.groupPanel), elementAttributes = _b.elementAttributes, content = _b.content;\n return (React.createElement(\"div\", __assign({}, elementAttributes), content || (groups === null || groups === void 0 ? void 0 : groups.map(function (group) {\n var column = columns.find(function (c) { return c.key === group.columnKey; });\n return column && React.createElement(GroupPanelCell_1.GroupPanelCell, __assign({ key: column.key }, props, { column: column }));\n })) || React.createElement(\"div\", { className: defaultOptions_1.default.css.groupPanelText }, groupPanel.text)));\n};\nexports.GroupPanel = GroupPanel;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.GroupPanelCell = void 0;\nvar React = __importStar(require(\"react\"));\nvar CrossIcon_1 = require(\"../../Icons/CrossIcon\");\nvar HeadCellContent_1 = __importDefault(require(\"../HeadCellContent/HeadCellContent\"));\nvar enums_1 = require(\"../../enums\");\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar HeadRowUtils_1 = require(\"../../Utils/HeadRowUtils\");\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar GroupPanelCell = function (props) {\n var column = props.column, dispatch = props.dispatch, _a = props.sortingMode, sortingMode = _a === void 0 ? enums_1.SortingMode.None : _a, _b = props.childComponents, childComponents = _b === void 0 ? {} : _b;\n var _c = (0, ComponentUtils_1.getElementCustomization)({\n className: \"\".concat(defaultOptions_1.default.css.groupPanelCell, \" \").concat((0, HeadRowUtils_1.getHeadCellClassName)(sortingMode)),\n }, props, childComponents.groupPanelCell), elementAttributes = _c.elementAttributes, content = _c.content;\n return (React.createElement(\"div\", __assign({}, elementAttributes), content || (React.createElement(React.Fragment, null,\n React.createElement(HeadCellContent_1.default, { column: column, sortingMode: sortingMode, dispatch: dispatch, childComponents: childComponents, areAllRowsSelected: false }),\n React.createElement(\"span\", { className: defaultOptions_1.default.css.groupPanelCellRemove },\n React.createElement(CrossIcon_1.CrossIcon, { onClick: function () {\n dispatch((0, actionCreators_1.ungroupColumn)(column.key));\n } }))))));\n};\nexports.GroupPanelCell = GroupPanelCell;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar GroupRowContent_1 = __importDefault(require(\"../GroupRowContent/GroupRowContent\"));\nvar GroupRow = function (props) {\n var childComponents = props.childComponents;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.groupRow\n }, props, childComponents.groupRow), elementAttributes = _a.elementAttributes, content = _a.content;\n return (react_1.default.createElement(\"tr\", __assign({}, elementAttributes), content ? content : react_1.default.createElement(GroupRowContent_1.default, __assign({}, props))));\n};\nexports.default = GroupRow;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar EmptyCells_1 = __importDefault(require(\"../EmptyCells/EmptyCells\"));\nvar GroupExpandButton_1 = __importDefault(require(\"../GroupExpandButton/GroupExpandButton\"));\nvar react_1 = __importDefault(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar GroupRowContent = function (props) {\n var childComponents = props.childComponents, contentColSpan = props.contentColSpan, groupIndex = props.groupIndex, text = props.text;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.groupCell,\n colSpan: contentColSpan\n }, props, childComponents.groupCell), elementAttributes = _a.elementAttributes, content = _a.content;\n return (react_1.default.createElement(react_1.default.Fragment, null,\n react_1.default.createElement(EmptyCells_1.default, { count: groupIndex, childComponents: childComponents }),\n react_1.default.createElement(\"td\", __assign({}, elementAttributes),\n react_1.default.createElement(\"div\", { className: 'ka-group-cell-content' },\n react_1.default.createElement(GroupExpandButton_1.default, __assign({}, props)),\n content || react_1.default.createElement(\"div\", { className: 'ka-group-text' }, text)))));\n};\nexports.default = GroupRowContent;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.GroupSummaryCell = void 0;\nvar React = __importStar(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar GroupSummaryCell = function (props) {\n var style = props.column.style, childComponents = props.childComponents;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.groupSummaryCell,\n style: style\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.groupSummaryCell), elementAttributes = _a.elementAttributes, content = _a.content;\n return (React.createElement(\"td\", __assign({}, elementAttributes), content));\n};\nexports.GroupSummaryCell = GroupSummaryCell;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.GroupSummaryRow = void 0;\nvar React = __importStar(require(\"react\"));\nvar EmptyCells_1 = __importDefault(require(\"../EmptyCells/EmptyCells\"));\nvar GroupSummaryCell_1 = require(\"../GroupSummaryCell/GroupSummaryCell\");\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar GroupSummaryRow = function (props) {\n var childComponents = props.childComponents, columns = props.columns, groupColumnsCount = props.groupColumnsCount;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.groupSummaryRow,\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.groupSummaryRow), elementAttributes = _a.elementAttributes, content = _a.content;\n return (React.createElement(\"tr\", __assign({}, elementAttributes), content || (React.createElement(React.Fragment, null,\n React.createElement(EmptyCells_1.default, { count: groupColumnsCount, childComponents: childComponents }),\n columns.map(function (column) { return React.createElement(GroupSummaryCell_1.GroupSummaryCell, __assign({ key: column.key }, props, { column: column })); })))));\n};\nexports.GroupSummaryRow = GroupSummaryRow;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.GroupedColumnsRow = void 0;\nvar React = __importStar(require(\"react\"));\nvar GroupedColumnsUtils_1 = require(\"../../Utils/GroupedColumnsUtils\");\nvar EmptyCells_1 = __importDefault(require(\"../EmptyCells/EmptyCells\"));\nvar HeadCell_1 = __importDefault(require(\"../HeadCell/HeadCell\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar GroupedColumnsRow = function (props) {\n var columns = props.columns, groupColumnsCount = props.groupColumnsCount, _a = props.groupedColumns, groupedColumns = _a === void 0 ? [] : _a, childComponents = props.childComponents;\n var rows = (0, GroupedColumnsUtils_1.getRowsWithGroupedColumns)(columns, groupedColumns);\n var columnsKeys = columns.map(function (c) { return c.key; });\n return (React.createElement(React.Fragment, null, rows.map(function (row, index) { return ((React.createElement(\"tr\", { className: defaultOptions_1.default.css.theadRow, key: index },\n React.createElement(EmptyCells_1.default, { count: groupColumnsCount, isTh: true, childComponents: childComponents }),\n row.map(function (item, columnIndex) {\n return (React.createElement(HeadCell_1.default, __assign({}, props, { colSpan: item.colSpan, rowSpan: item.rowSpan, column: item.column, hasChildren: !columnsKeys.includes(item.column.key), isGrouped: true, key: columnIndex })));\n })))); })));\n};\nexports.GroupedColumnsRow = GroupedColumnsRow;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar HeadCellContent_1 = __importDefault(require(\"../HeadCellContent/HeadCellContent\"));\nvar HeadCellResize_1 = __importDefault(require(\"../HeadCellResize/HeadCellResize\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar PropsUtils_1 = require(\"../../Utils/PropsUtils\");\nvar HeadRowUtils_1 = require(\"../../Utils/HeadRowUtils\");\nvar CellResizeUtils_1 = require(\"../../Utils/CellResizeUtils\");\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar HeadCell = function (props) {\n var childComponents = props.childComponents, colSpan = props.colSpan, column = props.column, _a = props.column, style = _a.style, isResizable = _a.isResizable, key = _a.key, columnReordering = props.columnReordering, columnResizing = props.columnResizing, dispatch = props.dispatch, groupPanel = props.groupPanel, hasChildren = props.hasChildren, isGrouped = props.isGrouped, rowSpan = props.rowSpan, sortingMode = props.sortingMode;\n var headCell = props.childComponents.headCell;\n if ((columnReordering || (groupPanel === null || groupPanel === void 0 ? void 0 : groupPanel.enabled)) && column.isDraggable !== false && !hasChildren) {\n var reorderedRowProps = (0, PropsUtils_1.getDraggableProps)({\n key: key,\n dispatch: dispatch,\n actionCreator: actionCreators_1.reorderColumns,\n draggedClass: defaultOptions_1.default.css.draggedColumn,\n dragOverClass: defaultOptions_1.default.css.dragOverColumn,\n hasReordering: !!columnReordering\n });\n headCell = (0, ComponentUtils_1.addElementAttributes)(reorderedRowProps, props, headCell);\n }\n var _b = (0, ComponentUtils_1.getElementCustomization)({\n className: (0, HeadRowUtils_1.getHeadCellClassName)(sortingMode, isGrouped),\n colSpan: colSpan,\n rowSpan: rowSpan,\n scope: 'col',\n style: style,\n id: key,\n }, props, headCell), elementAttributes = _b.elementAttributes, content = _b.content;\n return (React.createElement(\"th\", __assign({}, elementAttributes),\n React.createElement(\"div\", { className: defaultOptions_1.default.css.theadCellWrapper },\n React.createElement(\"div\", { className: defaultOptions_1.default.css.theadCellContentWrapper }, content || React.createElement(HeadCellContent_1.default, __assign({}, props))),\n (0, CellResizeUtils_1.isCellResizeShown)(isResizable, columnResizing) && !hasChildren && (React.createElement(HeadCellResize_1.default, { column: column, dispatch: dispatch, childComponents: childComponents })))));\n};\nexports.default = HeadCell;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar enums_1 = require(\"../../enums\");\nvar HeaderFilterButton_1 = __importDefault(require(\"../HeaderFilterButton/HeaderFilterButton\"));\nvar SortIcon_1 = __importDefault(require(\"../SortIcon/SortIcon\"));\nvar CellUtils_1 = require(\"../../Utils/CellUtils\");\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar SortUtils_1 = require(\"../../Utils/SortUtils\");\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar useIsomorphicLayoutEffect = typeof window !== 'undefined' ? React.useLayoutEffect : React.useEffect;\nvar HeadCellContent = function (props) {\n var column = props.column, dispatch = props.dispatch, sortingMode = props.sortingMode, filteringMode = props.filteringMode, childComponents = props.childComponents;\n var sortingEnabled = (0, SortUtils_1.isSortingEnabled)(sortingMode, column);\n var onClick = sortingEnabled ? function () {\n dispatch((0, actionCreators_1.updateSortDirection)(column.key));\n } : undefined;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: \"\".concat(defaultOptions_1.default.css.theadCellContent, \" \").concat(sortingEnabled ? 'ka-pointer' : ''),\n onClick: onClick\n }, props, childComponents.headCellContent), elementAttributes = _a.elementAttributes, content = _a.content;\n var refToElement = React.useRef(null);\n useIsomorphicLayoutEffect(function () {\n (0, CellUtils_1.checkPopupPosition)(column, refToElement, dispatch);\n }, [column, dispatch]);\n return (React.createElement(\"div\", __assign({}, elementAttributes, { ref: refToElement }),\n content || React.createElement(\"span\", null, column.title),\n column.sortDirection && sortingEnabled && (React.createElement(SortIcon_1.default, { column: column, dispatch: dispatch, childComponents: childComponents })),\n (filteringMode === enums_1.FilteringMode.HeaderFilter || filteringMode === enums_1.FilteringMode.FilterRowAndHeaderFilter) && column.isFilterable !== false && (React.createElement(HeaderFilterButton_1.default, { column: column, dispatch: dispatch, childComponents: childComponents }))));\n};\nexports.default = HeadCellContent;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar CellResizeUtils_1 = require(\"../../Utils/CellResizeUtils\");\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar EffectUtils_1 = require(\"../../Utils/EffectUtils\");\nvar HeadCellResize = function (props) {\n var _a;\n var _b = props.column, key = _b.key, style = _b.style, colGroup = _b.colGroup, width = _b.width, dispatch = props.dispatch, childComponents = props.childComponents;\n var minWidth = (0, CellResizeUtils_1.getMinWidth)(style) || (0, CellResizeUtils_1.getMinWidth)(colGroup === null || colGroup === void 0 ? void 0 : colGroup.style);\n var currentWidth = width || (colGroup === null || colGroup === void 0 ? void 0 : colGroup.width) || ((_a = colGroup === null || colGroup === void 0 ? void 0 : colGroup.style) === null || _a === void 0 ? void 0 : _a.width) || (style === null || style === void 0 ? void 0 : style.width);\n var _c = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.theadCellResize,\n draggable: false,\n onMouseDown: function (mouseDownEvent) {\n mouseDownEvent.preventDefault();\n var startX = mouseDownEvent.screenX - ((0, CellResizeUtils_1.isNumberWidth)(currentWidth) ? currentWidth : mouseDownEvent.currentTarget.parentElement.offsetWidth);\n var mouseMoveStop = (0, EffectUtils_1.getEventListenerEffect)('mousemove', (0, CellResizeUtils_1.getMouseMove)(currentWidth, minWidth, startX, key, dispatch));\n var mouseUpStop = (0, EffectUtils_1.getEventListenerEffect)('mouseup', function (event) {\n var newWidth = (0, CellResizeUtils_1.getValidatedWidth)(event.screenX - startX, minWidth);\n dispatch((0, actionCreators_1.resizeColumn)(key, newWidth));\n mouseUpStop();\n mouseMoveStop();\n });\n }\n }, props, childComponents.headCellResize), elementAttributes = _c.elementAttributes, content = _c.content;\n return (React.createElement(\"div\", __assign({}, elementAttributes), content || React.createElement(React.Fragment, null, \"\\u00A0\")));\n};\nexports.default = HeadCellResize;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar EmptyCells_1 = __importDefault(require(\"../EmptyCells/EmptyCells\"));\nvar HeadCell_1 = __importDefault(require(\"../HeadCell/HeadCell\"));\nvar react_1 = __importDefault(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar HeadRow = function (props) {\n var areAllRowsSelected = props.areAllRowsSelected, childComponents = props.childComponents, columnReordering = props.columnReordering, columnResizing = props.columnResizing, columns = props.columns, dispatch = props.dispatch, filteringMode = props.filteringMode, groupColumnsCount = props.groupColumnsCount, groupPanel = props.groupPanel, sortingMode = props.sortingMode;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.theadRow\n }, props, childComponents.headRow), elementAttributes = _a.elementAttributes, content = _a.content;\n return (react_1.default.createElement(\"tr\", __assign({}, elementAttributes), content ||\n (react_1.default.createElement(react_1.default.Fragment, null,\n react_1.default.createElement(EmptyCells_1.default, { count: groupColumnsCount, isTh: true, dispatch: dispatch, childComponents: childComponents }),\n columns.map(function (column) {\n return (react_1.default.createElement(HeadCell_1.default, { areAllRowsSelected: areAllRowsSelected, childComponents: childComponents, columnReordering: columnReordering, columnResizing: columnResizing, column: column, dispatch: dispatch, filteringMode: filteringMode, groupPanel: groupPanel, key: column.key, sortingMode: sortingMode }));\n })))));\n};\nexports.default = HeadRow;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar FilterIcon_1 = require(\"../../Icons/FilterIcon\");\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar HeaderFilterButton = function (props) {\n var _a;\n var childComponents = props.childComponents, column = props.column, dispatch = props.dispatch;\n var _b = (0, ComponentUtils_1.getElementCustomization)({\n className: \"ka-header-filter-button \".concat(((_a = column.headerFilterValues) === null || _a === void 0 ? void 0 : _a.length) ? 'ka-header-filter-button-has-value' : ''),\n onClick: function (event) {\n event.stopPropagation();\n dispatch((0, actionCreators_1.updateHeaderFilterPopupState)(column.key, !column.isHeaderFilterPopupShown));\n }\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.headerFilterButton), elementAttributes = _b.elementAttributes, content = _b.content;\n return (React.createElement(\"span\", __assign({}, elementAttributes), content || (React.createElement(FilterIcon_1.FilterIcon, { className: 'ka-icon ka-icon-filter ka-pointer ka-header-filter-button-icon' }))));\n};\nexports.default = HeaderFilterButton;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar HeaderFilterPopupContent_1 = __importDefault(require(\"../HeaderFilterPopupContent/HeaderFilterPopupContent\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar UseOuterClick_1 = require(\"../../hooks/UseOuterClick\");\nvar HeaderFilterPopup = function (props) {\n var _a, _b;\n var column = props.column, dispatch = props.dispatch, childComponents = props.childComponents;\n var refToElement = (0, UseOuterClick_1.useOuterClick)(function () {\n dispatch((0, actionCreators_1.updateHeaderFilterPopupState)(column.key, !column.isHeaderFilterPopupShown));\n });\n var _c = (0, ComponentUtils_1.getElementCustomization)({\n className: 'ka-popup-content'\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.headerFilterPopupContent), elementAttributes = _c.elementAttributes, content = _c.content;\n return (React.createElement(\"div\", { className: 'ka-popup', ref: refToElement, style: {\n left: (_a = column.headerFilterPopupPosition) === null || _a === void 0 ? void 0 : _a.x,\n top: (_b = column.headerFilterPopupPosition) === null || _b === void 0 ? void 0 : _b.y,\n } },\n React.createElement(\"div\", __assign({}, elementAttributes), content || React.createElement(HeaderFilterPopupContent_1.default, __assign({}, props)))));\n};\nexports.default = HeaderFilterPopup;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar __1 = require(\"../..\");\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar CellEditorBoolean_1 = __importDefault(require(\"../CellEditorBoolean/CellEditorBoolean\"));\nvar DataUtils_1 = require(\"../../Utils/DataUtils\");\nvar HeaderFilterPopupContent = function (props) {\n var column = props.column, childComponents = props.childComponents, data = props.data, dispatch = props.dispatch, format = props.format;\n var headerFilterValues;\n headerFilterValues = (column === null || column === void 0 ? void 0 : column.headerFilterListItems) ? column === null || column === void 0 ? void 0 : column.headerFilterListItems({ data: data }) : data === null || data === void 0 ? void 0 : data.map(function (item, i) {\n var value = (0, DataUtils_1.getValueByColumn)(item, column);\n var formattedValue = (format && format({ column: column, value: value, rowData: item }))\n || (value === null || value === void 0 ? void 0 : value.toString());\n return formattedValue;\n });\n headerFilterValues = Array.from(new Set(headerFilterValues));\n var headerFilterValuesData = headerFilterValues === null || headerFilterValues === void 0 ? void 0 : headerFilterValues.map(function (value, i) { return ({ value: value, isSelected: !!column.headerFilterValues && column.headerFilterValues.includes(value) }); });\n var selectedColumnKey = \"\".concat(column.key, \"_isSelected\");\n var table = (0, __1.useTable)({\n onDispatch: function (action) {\n if (action.type === __1.ActionType.UpdateFilterRowValue) {\n dispatch((0, actionCreators_1.updateHeaderFilterSearchValue)(action.columnKey, action.filterRowValue));\n }\n }\n });\n return (React.createElement(__1.Table, { table: table, columns: [\n { key: selectedColumnKey, field: 'isSelected', width: 35, isFilterable: false },\n {\n key: column.key,\n field: 'value',\n style: { textAlign: 'left' },\n filterRowValue: column.headerFilterSearchValue\n }\n ], filteringMode: column.isHeaderFilterSearchable ? __1.FilteringMode.FilterRow : undefined, data: headerFilterValuesData, selectedRows: column.headerFilterValues, filter: function () { return column.headerFilterSearch; }, rowKeyField: 'value', childComponents: {\n headRow: {\n elementAttributes: function () { return ({ style: { display: 'none' } }); }\n },\n filterRowCell: {\n elementAttributes: function (_a) {\n var filterRowColumn = _a.column;\n return ({\n style: {\n top: 0,\n display: filterRowColumn.key === selectedColumnKey ? 'none' : undefined\n },\n colSpan: filterRowColumn.key === selectedColumnKey ? 0 : 2\n });\n }\n },\n filterRowCellInput: childComponents === null || childComponents === void 0 ? void 0 : childComponents.headerFilterPopupSearchInput,\n rootDiv: {\n elementAttributes: function () { return ({\n className: 'ka-header-filter-table'\n }); }\n },\n dataRow: childComponents === null || childComponents === void 0 ? void 0 : childComponents.headerFilterPopupRow,\n cell: __assign(__assign({}, childComponents === null || childComponents === void 0 ? void 0 : childComponents.headerFilterPopupTextCell), { elementAttributes: function (componentProps) {\n var _a, _b;\n return (__assign({ onClick: function () {\n var _a;\n var isSelect = !((_a = column === null || column === void 0 ? void 0 : column.headerFilterValues) === null || _a === void 0 ? void 0 : _a.includes(componentProps === null || componentProps === void 0 ? void 0 : componentProps.rowKeyValue));\n dispatch((0, actionCreators_1.updateHeaderFilterValues)(column.key, componentProps === null || componentProps === void 0 ? void 0 : componentProps.rowKeyValue, isSelect));\n } }, (_b = (_a = childComponents === null || childComponents === void 0 ? void 0 : childComponents.headerFilterPopupTextCell) === null || _a === void 0 ? void 0 : _a.elementAttributes) === null || _b === void 0 ? void 0 : _b.call(_a, componentProps)));\n } }),\n cellText: {\n content: function (componentProps) {\n switch (componentProps === null || componentProps === void 0 ? void 0 : componentProps.column.key) {\n case selectedColumnKey: return React.createElement(CellEditorBoolean_1.default, __assign({}, componentProps));\n }\n },\n },\n } }));\n};\nexports.default = HeaderFilterPopupContent;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar Loading = function (props) {\n var enabled = props.enabled, text = props.text, childComponents = props.childComponents;\n if (enabled) {\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: 'ka-loading',\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.loading), elementAttributes = _a.elementAttributes, content = _a.content;\n return (React.createElement(\"div\", __assign({}, elementAttributes), content || (React.createElement(React.Fragment, null,\n React.createElement(\"div\", { className: 'ka-loading-icon' }),\n text && (React.createElement(\"div\", { className: 'ka-loading-text' }, text))))));\n }\n return (React.createElement(React.Fragment, null));\n};\nexports.default = Loading;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar DataRow_1 = __importDefault(require(\"../DataRow/DataRow\"));\nvar enums_1 = require(\"../../enums\");\nvar react_1 = __importDefault(require(\"react\"));\nvar CellUtils_1 = require(\"../../Utils/CellUtils\");\nvar const_1 = require(\"../../const\");\nvar NewRow = function (_a) {\n var childComponents = _a.childComponents, columns = _a.columns, dispatch = _a.dispatch, editableCells = _a.editableCells, format = _a.format, groupColumnsCount = _a.groupColumnsCount, rowKeyField = _a.rowKeyField, validation = _a.validation;\n return (react_1.default.createElement(DataRow_1.default, { childComponents: childComponents, columns: columns, dispatch: dispatch, format: format, editableCells: editableCells, editingMode: enums_1.EditingMode.None, groupColumnsCount: groupColumnsCount, isDetailsRowShown: false, isSelectedRow: false, rowData: (0, CellUtils_1.getNewRowDataFromEditableCells)(editableCells, columns), rowKeyField: rowKeyField, rowKeyValue: const_1.newRowId, rowReordering: false, validation: validation, selectedRows: [], rowEditableCells: editableCells }));\n};\nexports.default = NewRow;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar NoDataRow = function (props) {\n var childComponents = props.childComponents, columns = props.columns, groupColumnsCount = props.groupColumnsCount, noData = props.noData, loading = props.loading;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: 'ka-tr ka-no-data-row'\n }, props, childComponents.noDataRow), elementAttributes = _a.elementAttributes, content = _a.content;\n var _b = (0, ComponentUtils_1.getElementCustomization)({\n className: 'ka-no-data-cell'\n }, props, childComponents.noDataCell), cellElementAttributes = _b.elementAttributes, cellContent = _b.content;\n return (react_1.default.createElement(\"tr\", __assign({}, elementAttributes),\n react_1.default.createElement(\"td\", __assign({ colSpan: columns.length + groupColumnsCount }, cellElementAttributes), content || cellContent || ((loading === null || loading === void 0 ? void 0 : loading.enabled) ? '' : noData === null || noData === void 0 ? void 0 : noData.text))));\n};\nexports.default = NoDataRow;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar PagingPages_1 = __importDefault(require(\"../PagingPages/PagingPages\"));\nvar PagingSizes_1 = __importDefault(require(\"../PagingSizes/PagingSizes\"));\nvar Paging = function (props) {\n var childComponents = props.childComponents, pageSizes = props.pageSizes;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: \"\".concat(defaultOptions_1.default.css.paging, \" \").concat(pageSizes ? 'ka-paging-sizes-active' : ''),\n }, props, childComponents.paging), elementAttributes = _a.elementAttributes, content = _a.content;\n return (React.createElement(\"div\", __assign({}, elementAttributes), content ||\n (React.createElement(React.Fragment, null,\n pageSizes && React.createElement(PagingSizes_1.default, __assign({}, props)),\n React.createElement(PagingPages_1.default, __assign({}, props))))));\n};\nexports.default = Paging;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar PagingIndex = function (props) {\n var childComponents = props.childComponents, dispatch = props.dispatch, isActive = props.isActive, pageIndex = props.pageIndex, text = props.text;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: \"\".concat(defaultOptions_1.default.css.pagingPageIndex, \" \").concat(isActive ? 'ka-paging-page-index-active' : ''),\n onClick: function () { return dispatch((0, actionCreators_1.updatePageIndex)(pageIndex)); }\n }, props, childComponents.pagingIndex), elementAttributes = _a.elementAttributes, content = _a.content;\n return (React.createElement(\"li\", __assign({}, elementAttributes), content || text));\n};\nexports.default = PagingIndex;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar PagingUtils_1 = require(\"../../Utils/PagingUtils\");\nvar PagingIndex_1 = __importDefault(require(\"../PagingIndex/PagingIndex\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar PagingPages = function (props) {\n var childComponents = props.childComponents, dispatch = props.dispatch, pagesCount = props.pagesCount, _a = props.pageIndex, pageIndex = _a === void 0 ? 0 : _a;\n var pages = (0, PagingUtils_1.getPagesArrayBySize)(pagesCount);\n React.useEffect(function () {\n if (pageIndex !== 0 && pageIndex >= pages.length) {\n dispatch((0, actionCreators_1.updatePageIndex)(0));\n }\n }, [dispatch, pageIndex, pages]);\n var isEndShown = pageIndex < pages.length - PagingUtils_1.centerLength && pages.length > PagingUtils_1.centerLength + Math.ceil(PagingUtils_1.centerLength / 2);\n var isStartShown = pageIndex >= PagingUtils_1.centerLength && pages.length > PagingUtils_1.centerLength + Math.ceil(PagingUtils_1.centerLength / 2);\n var centerPages = (0, PagingUtils_1.getPagesForCenter)(pages, isStartShown, isEndShown, pageIndex);\n var _b = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.pagingPages\n }, props, childComponents.pagingPages), elementAttributes = _b.elementAttributes, content = _b.content;\n return (React.createElement(\"ul\", __assign({}, elementAttributes), content || (React.createElement(React.Fragment, null,\n isStartShown &&\n (React.createElement(React.Fragment, null,\n React.createElement(PagingIndex_1.default, __assign({}, props, { pageIndex: 0, isActive: pageIndex === 0, text: 1 })),\n React.createElement(PagingIndex_1.default, __assign({}, props, { pageIndex: centerPages[0] - 1, isActive: false, text: '...' })))),\n centerPages.map(function (value, index) {\n return (React.createElement(PagingIndex_1.default, __assign({}, props, { pageIndex: value, isActive: pageIndex === value, key: value, text: value + 1 })));\n }),\n isEndShown &&\n (React.createElement(React.Fragment, null,\n React.createElement(PagingIndex_1.default, __assign({}, props, { pageIndex: __spreadArray([], centerPages, true).pop() + 1, isActive: false, text: '...' })),\n React.createElement(PagingIndex_1.default, __assign({}, props, { pageIndex: pages[pages.length - 1], isActive: pageIndex === pages[pages.length - 1], text: pages[pages.length - 1] + 1 }))))))));\n};\nexports.default = PagingPages;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar PagingSize = function (props) {\n var childComponents = props.childComponents, dispatch = props.dispatch, pageSize = props.pageSize, value = props.value;\n var isActive = pageSize === value;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: \"\".concat(defaultOptions_1.default.css.pagingSize, \" \").concat(isActive ? 'ka-paging-size-active' : ''),\n onClick: function () { return dispatch((0, actionCreators_1.updatePageSize)(value)); }\n }, props, childComponents.pagingSize), elementAttributes = _a.elementAttributes, content = _a.content;\n return (React.createElement(\"li\", __assign({}, elementAttributes), content || value));\n};\nexports.default = PagingSize;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar PagingSize_1 = __importDefault(require(\"../PagingSize/PagingSize\"));\nvar PagingSizes = function (props) {\n var childComponents = props.childComponents, _a = props.pageSizes, pageSizes = _a === void 0 ? [] : _a;\n var _b = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.pagingSizes\n }, props, childComponents.pagingSizes), elementAttributes = _b.elementAttributes, content = _b.content;\n return (React.createElement(\"ul\", __assign({}, elementAttributes), content || (pageSizes.map(function (value) { return React.createElement(PagingSize_1.default, __assign({}, props, { key: value, value: value })); }))));\n};\nexports.default = PagingSizes;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importStar(require(\"react\"));\nvar DataUtils_1 = require(\"../../Utils/DataUtils\");\nvar GroupUtils_1 = require(\"../../Utils/GroupUtils\");\nvar TreeUtils_1 = require(\"../../Utils/TreeUtils\");\nvar DataAndDetailsRows_1 = __importDefault(require(\"../DataAndDetailsRows/DataAndDetailsRows\"));\nvar GroupRow_1 = __importDefault(require(\"../GroupRow/GroupRow\"));\nvar GroupSummaryRow_1 = require(\"../GroupSummaryRow/GroupSummaryRow\");\nvar FilterUtils_1 = require(\"../../Utils/FilterUtils\");\nvar Rows = function (props) {\n var childComponents = props.childComponents, columns = props.columns, data = props.data, _a = props.detailsRows, detailsRows = _a === void 0 ? [] : _a, dispatch = props.dispatch, editableCells = props.editableCells, format = props.format, groupedColumns = props.groupedColumns, _b = props.groups, groups = _b === void 0 ? [] : _b, _c = props.groupsExpanded, groupsExpanded = _c === void 0 ? [] : _c, isFirstRowOdd = props.isFirstRowOdd, onFirstRowRendered = props.onFirstRowRendered, treeGroupsExpanded = props.treeGroupsExpanded, rowKeyField = props.rowKeyField, rowReordering = props.rowReordering, selectedRows = props.selectedRows, validation = props.validation, treeExpandButtonColumnKey = props.treeExpandButtonColumnKey, oddEvenRows = props.oddEvenRows;\n var groupMark = (0, GroupUtils_1.getGroupMark)();\n var firstRowRef = (0, react_1.useRef)(null);\n (0, react_1.useEffect)(function () {\n onFirstRowRendered(firstRowRef);\n }, [firstRowRef, onFirstRowRendered]);\n var rowRefLink = firstRowRef;\n return (react_1.default.createElement(react_1.default.Fragment, null, data.map(function (d, index) {\n if (d.groupMark === groupMark) {\n var groupIndex = d.key.length - 1;\n var group_1 = groups && groups[groupIndex];\n var column = group_1 && groupedColumns.find(function (c) { return c.key === group_1.columnKey; });\n return (react_1.default.createElement(GroupRow_1.default, { childComponents: childComponents, column: column, contentColSpan: columns.length - groupIndex + groups.length, dispatch: dispatch, groupIndex: groupIndex, groupKey: d.key, groupItems: d.groupItems, columns: columns, groupedColumns: groupedColumns, isExpanded: groupsExpanded.some(function (ge) { return JSON.stringify(ge) === JSON.stringify(d.key); }), text: (0, GroupUtils_1.getGroupText)(d.value, column, format, d.groupItems), key: JSON.stringify(d.key) }));\n }\n else if (d.groupSummaryMark === GroupUtils_1.groupSummaryMark) {\n return react_1.default.createElement(GroupSummaryRow_1.GroupSummaryRow, __assign({}, props, { groupData: d.groupData, key: d.key, groupIndex: d.groupIndex }));\n }\n else {\n var isTreeGroup = d.treeGroupMark === TreeUtils_1.treeGroupMark;\n var isTreeData = d.treeDataMark === TreeUtils_1.treeDataMark;\n var isTreeRow = isTreeGroup || isTreeData;\n var rowData = isTreeRow ? d.rowData : d;\n var rowKeyValue_1 = (0, DataUtils_1.getValueByField)(rowData, rowKeyField);\n var isTreeExpanded = isTreeGroup && (!treeGroupsExpanded || treeGroupsExpanded.includes(rowKeyValue_1));\n var isSelectedRow = selectedRows.some(function (s) { return s === rowKeyValue_1; });\n var isDetailsRowShown = detailsRows.some(function (r) { return r === rowKeyValue_1; });\n var rowEditableCells = (0, FilterUtils_1.getRowEditableCells)(rowKeyValue_1, editableCells);\n var isOdd = oddEvenRows\n ? isFirstRowOdd ? (0, DataUtils_1.checkIndexOdd)(index) : !(0, DataUtils_1.checkIndexOdd)(index)\n : undefined;\n var dataRow = (react_1.default.createElement(DataAndDetailsRows_1.default, { isOdd: isOdd, childComponents: props.childComponents, columns: props.columns, dispatch: dispatch, editableCells: props.editableCells, editingMode: props.editingMode, isTreeGroup: isTreeGroup, isTreeExpanded: isTreeExpanded, treeDeep: isTreeRow === true ? d.treeDeep : undefined, treeExpandButtonColumnKey: treeExpandButtonColumnKey, format: format, groupColumnsCount: props.groupColumnsCount, isDetailsRowShown: isDetailsRowShown, isSelectedRow: isSelectedRow, key: rowKeyValue_1, rowData: rowData, rowEditableCells: rowEditableCells, rowKeyField: props.rowKeyField, rowKeyValue: rowKeyValue_1, rowReordering: rowReordering, selectedRows: props.selectedRows, trRef: rowRefLink, validation: validation }));\n rowRefLink = undefined;\n return dataRow;\n }\n })));\n};\nexports.default = Rows;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar DownIcon_1 = require(\"../../Icons/DownIcon\");\nvar enums_1 = require(\"../../enums\");\nvar UpIcon_1 = require(\"../../Icons/UpIcon\");\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar SortIcon = function (props) {\n var column = props.column, childComponents = props.childComponents;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.iconSort,\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.sortIcon), elementAttributes = _a.elementAttributes, content = _a.content;\n return (React.createElement(\"span\", __assign({}, elementAttributes), content || (React.createElement(React.Fragment, null,\n column.sortDirection === enums_1.SortDirection.Ascend ? React.createElement(UpIcon_1.UpIcon, { className: defaultOptions_1.default.css.iconSortArrowUp }) : React.createElement(DownIcon_1.DownIcon, { className: defaultOptions_1.default.css.iconSortArrowDown }),\n React.createElement(\"span\", null, column.sortIndex)))));\n};\nexports.default = SortIcon;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SummaryCell = void 0;\nvar React = __importStar(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar SummaryCell = function (props) {\n var style = props.column.style, childComponents = props.childComponents;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.summaryCell,\n style: style\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.summaryCell), elementAttributes = _a.elementAttributes, content = _a.content;\n return (React.createElement(\"td\", __assign({}, elementAttributes), content));\n};\nexports.SummaryCell = SummaryCell;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SummaryRow = void 0;\nvar React = __importStar(require(\"react\"));\nvar EmptyCells_1 = __importDefault(require(\"../EmptyCells/EmptyCells\"));\nvar SummaryCell_1 = require(\"../SummaryCell/SummaryCell\");\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar SummaryRow = function (props) {\n var childComponents = props.childComponents, columns = props.columns, groupColumnsCount = props.groupColumnsCount;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.summaryRow,\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.summaryRow), elementAttributes = _a.elementAttributes, content = _a.content;\n return (React.createElement(\"tr\", __assign({}, elementAttributes), content || (React.createElement(React.Fragment, null,\n React.createElement(EmptyCells_1.default, { count: groupColumnsCount, childComponents: childComponents }),\n columns.map(function (column) { return React.createElement(SummaryCell_1.SummaryCell, __assign({ key: column.key }, props, { column: column })); })))));\n};\nexports.SummaryRow = SummaryRow;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Table = void 0;\nvar React = __importStar(require(\"react\"));\nvar TableControlled_1 = require(\"../TableControlled/TableControlled\");\nvar TableUncontrolled_1 = require(\"../TableUncontrolled/TableUncontrolled\");\nvar Table = function (props) {\n var dispatch = props.dispatch;\n return dispatch ? (React.createElement(TableControlled_1.TableControlled, __assign({}, props, { dispatch: dispatch }))) : (React.createElement(TableUncontrolled_1.TableUncontrolled, __assign({}, props)));\n};\nexports.Table = Table;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar React = __importStar(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar TableBodyContent_1 = __importDefault(require(\"../TableBodyContent/TableBodyContent\"));\nvar TableBody = function (props) {\n var childComponents = props.childComponents;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.tbody,\n }, props, childComponents.tableBody), elementAttributes = _a.elementAttributes, content = _a.content;\n return (React.createElement(\"tbody\", __assign({}, elementAttributes), content || React.createElement(TableBodyContent_1.default, __assign({}, props))));\n};\nexports.default = TableBody;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar CellUtils_1 = require(\"../../Utils/CellUtils\");\nvar NewRow_1 = __importDefault(require(\"../NewRow/NewRow\"));\nvar NoDataRow_1 = __importDefault(require(\"../NoDataRow/NoDataRow\"));\nvar VirtualizedRows_1 = __importDefault(require(\"../VirtualizedRows/VirtualizedRows\"));\nvar TableBodyContent = function (props) {\n var childComponents = props.childComponents, columns = props.columns, data = props.data, dispatch = props.dispatch, editableCells = props.editableCells, format = props.format, groupColumnsCount = props.groupColumnsCount, rowKeyField = props.rowKeyField, validation = props.validation;\n var newRowEditableCells = (0, CellUtils_1.getNewRowEditableCells)(editableCells);\n return (react_1.default.createElement(react_1.default.Fragment, null,\n !!(newRowEditableCells === null || newRowEditableCells === void 0 ? void 0 : newRowEditableCells.length) && (react_1.default.createElement(NewRow_1.default, { childComponents: childComponents, columns: columns, dispatch: dispatch, editableCells: newRowEditableCells, format: format, groupColumnsCount: groupColumnsCount, rowKeyField: rowKeyField, validation: validation })),\n !data.length\n ? react_1.default.createElement(NoDataRow_1.default, __assign({}, props))\n : react_1.default.createElement(VirtualizedRows_1.default, __assign({}, props))));\n};\nexports.default = TableBodyContent;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TableControlled = exports.TablePropsContext = void 0;\nvar React = __importStar(require(\"react\"));\nvar enums_1 = require(\"../../enums\");\nvar GroupPanel_1 = require(\"../GroupPanel/GroupPanel\");\nvar Loading_1 = __importDefault(require(\"../Loading/Loading\"));\nvar HeaderFilterPopup_1 = __importDefault(require(\"../HeaderFilterPopup/HeaderFilterPopup\"));\nvar TablePaging_1 = require(\"../TablePaging/TablePaging\");\nvar TableWrapper_1 = require(\"../TableWrapper/TableWrapper\");\nvar actionCreators_1 = require(\"../../actionCreators\");\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar PagingUtils_1 = require(\"../../Utils/PagingUtils\");\nexports.TablePropsContext = React.createContext({});\nvar TableControlled = function (props) {\n var childComponents = props.childComponents, columns = props.columns, dispatch = props.dispatch, data = props.data, format = props.format, groupPanel = props.groupPanel, height = props.height, loading = props.loading, width = props.width, paging = props.paging, singleAction = props.singleAction;\n var isLoadingActive = loading && loading.enabled;\n var kaCss = isLoadingActive ? 'ka ka-loading-active' : 'ka';\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: kaCss\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.rootDiv), elementAttributes = _a.elementAttributes, rootDivContent = _a.content;\n elementAttributes.style = __assign({ width: width, height: height }, elementAttributes.style);\n React.useEffect(function () {\n dispatch({ type: enums_1.ActionType.ComponentDidMount });\n }, []);\n React.useEffect(function () {\n if (singleAction) {\n dispatch(singleAction);\n dispatch((0, actionCreators_1.clearSingleAction)());\n }\n });\n return (React.createElement(exports.TablePropsContext.Provider, { value: props },\n React.createElement(\"div\", __assign({}, elementAttributes), rootDivContent || (React.createElement(React.Fragment, null,\n (groupPanel === null || groupPanel === void 0 ? void 0 : groupPanel.enabled) && React.createElement(GroupPanel_1.GroupPanel, __assign({}, props, { groupPanel: groupPanel })),\n (0, PagingUtils_1.isPagingShown)(enums_1.PagingPosition.Top, paging) && React.createElement(TablePaging_1.TablePaging, __assign({}, props)),\n React.createElement(TableWrapper_1.TableWrapper, __assign({}, props)),\n (0, PagingUtils_1.isPagingShown)(enums_1.PagingPosition.Bottom, paging) && React.createElement(TablePaging_1.TablePaging, __assign({}, props)),\n React.createElement(Loading_1.default, __assign({}, loading, { childComponents: childComponents })),\n columns.map(function (column) {\n return column.isHeaderFilterPopupShown\n && (React.createElement(HeaderFilterPopup_1.default, { key: column.key, column: column, childComponents: childComponents, data: data, dispatch: dispatch, format: format }));\n }))))));\n};\nexports.TableControlled = TableControlled;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TableFoot = void 0;\nvar React = __importStar(require(\"react\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar SummaryRow_1 = require(\"../SummaryRow/SummaryRow\");\nvar TableFoot = function (props) {\n var childComponents = props.childComponents;\n var _a = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.tfoot,\n }, props, childComponents === null || childComponents === void 0 ? void 0 : childComponents.tableFoot), elementAttributes = _a.elementAttributes, content = _a.content;\n return (React.createElement(\"tfoot\", __assign({}, elementAttributes), content || React.createElement(SummaryRow_1.SummaryRow, __assign({}, props))));\n};\nexports.TableFoot = TableFoot;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TableHead = void 0;\nvar React = __importStar(require(\"react\"));\nvar FilterRow_1 = __importDefault(require(\"../FilterRow/FilterRow\"));\nvar enums_1 = require(\"../../enums\");\nvar GroupedColumnsRow_1 = require(\"../GroupedColumnsRow/GroupedColumnsRow\");\nvar HeadRow_1 = __importDefault(require(\"../HeadRow/HeadRow\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar TableHead = function (props) {\n var areAllRowsSelected = props.areAllRowsSelected, childComponents = props.childComponents, columnReordering = props.columnReordering, columnResizing = props.columnResizing, columns = props.columns, dispatch = props.dispatch, filteringMode = props.filteringMode, groupColumnsCount = props.groupColumnsCount, groupPanel = props.groupPanel, sortingMode = props.sortingMode, _a = props.groupedColumns, groupedColumns = _a === void 0 ? [] : _a;\n var _b = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.thead,\n }, props, childComponents.tableHead), elementAttributes = _b.elementAttributes, content = _b.content;\n return (React.createElement(\"thead\", __assign({}, elementAttributes), content || (React.createElement(React.Fragment, null,\n groupedColumns.length ? React.createElement(GroupedColumnsRow_1.GroupedColumnsRow, __assign({}, props)) : (React.createElement(HeadRow_1.default, { areAllRowsSelected: areAllRowsSelected, childComponents: childComponents, columnReordering: columnReordering, columnResizing: columnResizing, columns: columns, dispatch: dispatch, groupColumnsCount: groupColumnsCount, groupPanel: groupPanel, sortingMode: sortingMode, filteringMode: filteringMode })),\n (filteringMode === enums_1.FilteringMode.FilterRow || filteringMode === enums_1.FilteringMode.FilterRowAndHeaderFilter) &&\n (React.createElement(FilterRow_1.default, __assign({}, props, { dispatch: dispatch })))))));\n};\nexports.TableHead = TableHead;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TablePaging = void 0;\nvar React = __importStar(require(\"react\"));\nvar PropsUtils_1 = require(\"../../Utils/PropsUtils\");\nvar Paging_1 = __importDefault(require(\"../Paging/Paging\"));\nvar TablePaging = function (props) {\n var _a = props.childComponents, childComponents = _a === void 0 ? {} : _a, dispatch = props.dispatch, paging = props.paging;\n return (React.createElement(Paging_1.default, __assign({}, paging, { dispatch: dispatch, childComponents: childComponents, pagesCount: (0, PropsUtils_1.getPagesCountByProps)(props) })));\n};\nexports.TablePaging = TablePaging;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TableUncontrolled = exports.TableInstanceContext = void 0;\nvar React = __importStar(require(\"react\"));\nvar utils_1 = require(\"./utils\");\nvar TableControlled_1 = require(\"../TableControlled/TableControlled\");\nvar UseTable_1 = require(\"../../hooks/UseTable\");\nvar kaReducer_1 = require(\"../../Reducers/kaReducer\");\nexports.TableInstanceContext = React.createContext({});\nvar TableUncontrolled = function (props) {\n var _a;\n var _ = props.table, childComponents = props.childComponents, tablePropsControlled = __rest(props, [\"table\", \"childComponents\"]);\n var _b = React.useState(__assign(__assign({}, tablePropsControlled), (_a = props.table) === null || _a === void 0 ? void 0 : _a.props)), tableProps = _b[0], changeTableProps = _b[1];\n var dispatch = function (action) {\n changeTableProps(function (prevState) {\n var _a, _b;\n var nextStateDefault = (0, kaReducer_1.kaReducer)(prevState, action);\n var nextState = ((_a = props.table) === null || _a === void 0 ? void 0 : _a.customReducer) ? ((_b = props.table.customReducer(nextStateDefault, action, prevState)) !== null && _b !== void 0 ? _b : nextStateDefault) : nextStateDefault;\n setTimeout(function () {\n var _a, _b;\n (_b = (_a = props.table) === null || _a === void 0 ? void 0 : _a.onDispatch) === null || _b === void 0 ? void 0 : _b.call(_a, action, nextState, prevState);\n }, 0);\n return nextState;\n });\n };\n React.useEffect(function () {\n var controlledPropsKeys = (0, utils_1.getControlledPropsKeys)(props);\n var propsToOverride = (0, utils_1.getPropsToOverride)(controlledPropsKeys, props, tableProps);\n if (Object.keys(propsToOverride).length) {\n if (propsToOverride === null || propsToOverride === void 0 ? void 0 : propsToOverride.paging) {\n propsToOverride.paging = __assign(__assign({}, tableProps.paging), propsToOverride.paging);\n }\n changeTableProps(__assign(__assign({}, tableProps), propsToOverride));\n }\n }, [props]);\n var contextTable = props.table || (0, UseTable_1.getTable)();\n contextTable.props = tableProps;\n contextTable.changeProps = changeTableProps;\n contextTable.dispatch = dispatch;\n return (React.createElement(exports.TableInstanceContext.Provider, { value: contextTable },\n React.createElement(TableControlled_1.TableControlled, __assign({}, contextTable.props, { \n // paging={ props.paging }\n childComponents: childComponents, extendedFilter: props.extendedFilter, filter: props.filter, format: props.format, dispatch: dispatch }))));\n};\nexports.TableUncontrolled = TableUncontrolled;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getPropsToOverride = exports.getControlledPropsKeys = exports.getDefaultControlledPropsKeys = void 0;\nvar getDefaultControlledPropsKeys = function (settings) {\n return (settings === null || settings === void 0 ? void 0 : settings.loadingEnabled)\n ? ['searchText', 'loading']\n : ['searchText', 'loading', 'data', 'paging', 'selectedRows'];\n};\nexports.getDefaultControlledPropsKeys = getDefaultControlledPropsKeys;\nvar getControlledPropsKeys = function (props) {\n var _a;\n var controlledPropsKeys = props.controlledPropsKeys ?\n props.controlledPropsKeys\n : (0, exports.getDefaultControlledPropsKeys)({ loadingEnabled: (_a = props.loading) === null || _a === void 0 ? void 0 : _a.enabled });\n return controlledPropsKeys;\n};\nexports.getControlledPropsKeys = getControlledPropsKeys;\nvar getPropsToOverride = function (controlledPropsKeys, props, tableProps) {\n return controlledPropsKeys.reduce(function (acc, item) {\n if (props[item] !== tableProps[item]) {\n acc[item] = props[item];\n }\n return acc;\n }, {});\n};\nexports.getPropsToOverride = getPropsToOverride;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TableWrapper = void 0;\nvar React = __importStar(require(\"react\"));\nvar enums_1 = require(\"../../enums\");\nvar ColGroup_1 = require(\"../ColGroup/ColGroup\");\nvar TableBody_1 = __importDefault(require(\"../TableBody/TableBody\"));\nvar TableFoot_1 = require(\"../TableFoot/TableFoot\");\nvar TableHead_1 = require(\"../TableHead/TableHead\");\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar ComponentUtils_1 = require(\"../../Utils/ComponentUtils\");\nvar GroupUtils_1 = require(\"../../Utils/GroupUtils\");\nvar Virtualize_1 = require(\"../../Utils/Virtualize\");\nvar PropsUtils_1 = require(\"../../Utils/PropsUtils\");\nvar TableWrapper = function (props) {\n var _a = props.childComponents, childComponents = _a === void 0 ? {} : _a, columnReordering = props.columnReordering, groupPanel = props.groupPanel, columnResizing = props.columnResizing, _b = props.data, data = _b === void 0 ? [] : _b, dispatch = props.dispatch, _c = props.editableCells, editableCells = _c === void 0 ? [] : _c, _d = props.editingMode, editingMode = _d === void 0 ? enums_1.EditingMode.None : _d, _e = props.filteringMode, filteringMode = _e === void 0 ? enums_1.FilteringMode.None : _e, groups = props.groups, _f = props.rowReordering, rowReordering = _f === void 0 ? false : _f, _g = props.selectedRows, selectedRows = _g === void 0 ? [] : _g, _h = props.sortingMode, sortingMode = _h === void 0 ? enums_1.SortingMode.None : _h, virtualScrolling = props.virtualScrolling, noData = props.noData;\n var groupsExpanded = props.groupsExpanded;\n var preparedOptions = (0, PropsUtils_1.prepareTableOptions)(props);\n if (groups && !groupsExpanded) {\n groupsExpanded = (0, GroupUtils_1.getExpandedGroups)(preparedOptions.groupedData);\n }\n var areAllRowsSelected = data.length === selectedRows.length;\n var tableWrapper = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.tableWrapper,\n onScroll: (0, Virtualize_1.isVirtualScrollingEnabled)(virtualScrolling) ? function (event) {\n dispatch({\n scrollTop: event.currentTarget.scrollTop,\n type: enums_1.ActionType.ScrollTable,\n });\n } : undefined,\n }, props, childComponents.tableWrapper);\n var _j = (0, ComponentUtils_1.getElementCustomization)({\n className: defaultOptions_1.default.css.table,\n }, props, childComponents.table), elementAttributes = _j.elementAttributes, content = _j.content;\n return (React.createElement(\"div\", __assign({}, tableWrapper.elementAttributes), content || tableWrapper.content || (React.createElement(\"table\", __assign({}, elementAttributes),\n React.createElement(ColGroup_1.ColGroup, { columns: preparedOptions.columns, groupColumnsCount: preparedOptions.groupColumnsCount }),\n (!(noData === null || noData === void 0 ? void 0 : noData.hideHeader) || !!data.length) && React.createElement(TableHead_1.TableHead, __assign({}, props, { areAllRowsSelected: areAllRowsSelected, childComponents: childComponents, columnReordering: columnReordering, columnResizing: columnResizing, columns: preparedOptions.columns, dispatch: dispatch, filteringMode: filteringMode, groupColumnsCount: preparedOptions.groupColumnsCount, groupPanel: groupPanel, sortingMode: sortingMode })),\n React.createElement(TableBody_1.default, __assign({}, props, { childComponents: childComponents, columns: preparedOptions.columns, data: preparedOptions.groupedData, editableCells: editableCells, editingMode: editingMode, groupColumnsCount: preparedOptions.groupColumnsCount, groupedColumns: preparedOptions.groupedColumns, groupsExpanded: groupsExpanded, rowReordering: rowReordering, selectedRows: selectedRows })),\n (childComponents.tableFoot || childComponents.summaryRow || childComponents.summaryCell) && (React.createElement(TableFoot_1.TableFoot, __assign({}, props, { data: data, columns: preparedOptions.columns, groupColumnsCount: preparedOptions.groupColumnsCount })))))));\n};\nexports.TableWrapper = TableWrapper;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar react_1 = __importDefault(require(\"react\"));\nvar enums_1 = require(\"../../enums\");\nvar Rows_1 = __importDefault(require(\"../Rows/Rows\"));\nvar defaultOptions_1 = __importDefault(require(\"../../defaultOptions\"));\nvar CellUtils_1 = require(\"../../Utils/CellUtils\");\nvar Virtualize_1 = require(\"../../Utils/Virtualize\");\nvar VirtualizedRows = function (props) {\n var _a;\n var data = props.data, dispatch = props.dispatch, virtualScrolling = props.virtualScrolling, editableCells = props.editableCells, oddEvenRows = props.oddEvenRows;\n var onFirstRowRendered = function (firstRowRef) {\n if (firstRowRef\n && firstRowRef.current\n && (virtualScrolling\n && (!virtualScrolling.itemHeight\n || !virtualScrolling.tbodyHeight))) {\n var itemHeight = firstRowRef.current.offsetHeight || 40;\n var rootElement = firstRowRef.current.closest(\".\".concat(defaultOptions_1.default.css.root));\n var tbodyHeight = (rootElement && rootElement.offsetHeight)\n || 600;\n var newVirtualScrolling = __assign({ itemHeight: itemHeight, tbodyHeight: tbodyHeight }, virtualScrolling);\n dispatch({ type: enums_1.ActionType.UpdateVirtualScrolling, virtualScrolling: newVirtualScrolling });\n }\n };\n var virtualizedData = data;\n var virtualized;\n var isFirstVisibleRowOdd;\n if (virtualScrolling) {\n var isNewRowShown = !!((_a = (0, CellUtils_1.getNewRowEditableCells)(editableCells)) === null || _a === void 0 ? void 0 : _a.length);\n virtualized = (0, Virtualize_1.getVirtualized)(virtualScrolling, virtualizedData, isNewRowShown, oddEvenRows);\n virtualizedData = virtualized.virtualizedData;\n isFirstVisibleRowOdd = virtualized.isFirstVisibleRowOdd;\n }\n return (react_1.default.createElement(react_1.default.Fragment, null,\n virtualized && virtualized.beginHeight !== 0 && react_1.default.createElement(\"tr\", { style: { height: virtualized.beginHeight } },\n react_1.default.createElement(\"td\", { style: { height: virtualized.beginHeight } })),\n react_1.default.createElement(Rows_1.default, __assign({}, props, { data: virtualizedData, onFirstRowRendered: onFirstRowRendered, isFirstRowOdd: isFirstVisibleRowOdd })),\n virtualized && virtualized.endHeight !== 0 && (react_1.default.createElement(\"tr\", { style: { height: virtualized.endHeight } },\n react_1.default.createElement(\"td\", { style: { height: virtualized.endHeight } })))));\n};\nexports.default = VirtualizedRows;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.CollapsedIcon = void 0;\nvar react_1 = __importDefault(require(\"react\"));\nvar CollapsedIcon = function (props) {\n return (react_1.default.createElement(\"svg\", __assign({}, props, { xmlns: 'http://www.w3.org/2000/svg', version: '1.1', id: 'Capa_1', x: '0px', y: '0px', viewBox: '0 -150 1024 1024', width: '10', height: '10' }),\n react_1.default.createElement(\"g\", null,\n react_1.default.createElement(\"path\", { d: 'M783.36 301.824l-440.32-441.344c-28.672-27.648-73.728-27.648-101.376 0-28.672 28.672-28.672 73.728 0 101.376l389.12 390.144-389.12 390.144c-28.672 27.648-28.672 72.704 0 101.376 27.648 27.648 72.704 27.648 101.376 0l440.32-440.32c13.312-14.336 20.48-32.768 20.48-51.2s-7.168-36.864-20.48-50.176z' }))));\n};\nexports.CollapsedIcon = CollapsedIcon;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.CrossIcon = void 0;\nvar react_1 = __importDefault(require(\"react\"));\nvar CrossIcon = function (props) {\n return (react_1.default.createElement(\"svg\", __assign({}, props, { xmlns: 'http://www.w3.org/2000/svg', version: '1.1', id: 'Capa_1', x: '0px', y: '0px', viewBox: '0 0 512.021 512.021', width: '13', height: '13' }),\n react_1.default.createElement(\"g\", null,\n react_1.default.createElement(\"path\", { d: 'M301.258,256.01L502.645,54.645c12.501-12.501,12.501-32.769,0-45.269c-12.501-12.501-32.769-12.501-45.269,0l0,0 L256.01,210.762L54.645,9.376c-12.501-12.501-32.769-12.501-45.269,0s-12.501,32.769,0,45.269L210.762,256.01L9.376,457.376 c-12.501,12.501-12.501,32.769,0,45.269s32.769,12.501,45.269,0L256.01,301.258l201.365,201.387 c12.501,12.501,32.769,12.501,45.269,0c12.501-12.501,12.501-32.769,0-45.269L301.258,256.01z' }))));\n};\nexports.CrossIcon = CrossIcon;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DownIcon = void 0;\nvar react_1 = __importDefault(require(\"react\"));\nvar DownIcon = function (props) {\n return (react_1.default.createElement(\"svg\", __assign({}, props, { xmlns: 'http://www.w3.org/2000/svg', version: '1.1', id: 'Capa_1', x: '0px', y: '0px', viewBox: '0 -150 1024 1024', width: '10', height: '10' }),\n react_1.default.createElement(\"g\", null,\n react_1.default.createElement(\"path\", { d: 'M236.544 461.568c-21.504-20.48-54.272-20.48-74.752 0-20.48 21.504-20.48 54.272 0 74.752l312.32 312.32c9.216 9.216 22.528 15.36 37.888 15.36 14.336 0 27.648-6.144 37.888-15.36l312.32-312.32c20.48-20.48 20.48-53.248 0-74.752-21.504-20.48-54.272-20.48-74.752 0l-223.232 224.256v-793.6c0-29.696-23.552-52.224-52.224-52.224-29.696 0-52.224 22.528-52.224 52.224v792.576l-223.232-223.232z' }))));\n};\nexports.DownIcon = DownIcon;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ExpandedIcon = void 0;\nvar react_1 = __importDefault(require(\"react\"));\nvar ExpandedIcon = function (props) {\n return (react_1.default.createElement(\"svg\", __assign({ style: { transform: 'rotate(180deg)' } }, props, { xmlns: 'http://www.w3.org/2000/svg', version: '1.1', id: 'Capa_1', x: '0px', y: '0px', viewBox: '0 -150 1024 1024', width: '10', height: '10' }),\n react_1.default.createElement(\"g\", null,\n react_1.default.createElement(\"path\", { d: 'M461.824 81.664l-440.32 440.32c-28.672 27.648-28.672 72.704 0 101.376 27.648 27.648 72.704 27.648 101.376 0l389.12-390.144 390.144 390.144c27.648 27.648 72.704 27.648 101.376 0 27.648-28.672 27.648-73.728 0-101.376l-440.32-440.32c-14.336-14.336-32.768-21.504-51.2-21.504s-36.864 7.168-50.176 21.504z' }))));\n};\nexports.ExpandedIcon = ExpandedIcon;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.FilterIcon = void 0;\nvar react_1 = __importDefault(require(\"react\"));\nvar FilterIcon = function (props) {\n return (react_1.default.createElement(\"svg\", __assign({ style: { transform: 'rotate(180deg) scale(-1, 1)' } }, props, { xmlns: 'http://www.w3.org/2000/svg', version: '1.1', id: 'Capa_1', x: '0px', y: '0px', viewBox: '0 -150 1024 1024', width: '16', height: '17' }),\n react_1.default.createElement(\"g\", null,\n react_1.default.createElement(\"path\", { d: 'M369.038 393.615l-288.173 405.989c-10.622 12.862-12.926 30.783-5.825 45.949 6.977 15.617 22.527 25.535 39.486 25.214h782.57c16.958 0.321 32.509-9.536 39.486-25.214 7.425-14.91 5.759-32.767-4.415-45.949l-283.821-405.989c-8.126-13.374-12.222-28.798-11.711-44.415v-457.826c-0.511-15.358-8.769-29.373-21.95-37.053-7.744-5.374-17.022-7.936-26.365-7.422-6.015-0.511-12.032 0.575-17.535 2.944l-157.943 62.267c-16.32 6.015-26.621 22.525-24.831 39.997v397.030c-1.537 16.51-8.192 32.061-19.006 44.415zM417.291 429.139c17.343-23.166 27.52-51.004 29.246-79.994v-385.191l131.639-51.837v437.027c-1.281 28.094 6.974 55.867 23.421 78.524l267.695 383.656h-726.939l274.991-382.247z' }))));\n};\nexports.FilterIcon = FilterIcon;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.UpIcon = void 0;\nvar react_1 = __importDefault(require(\"react\"));\nvar UpIcon = function (props) {\n return (react_1.default.createElement(\"svg\", __assign({ style: { transform: 'rotate(180deg)' } }, props, { xmlns: 'http://www.w3.org/2000/svg', version: '1.1', id: 'Capa_1', x: '0px', y: '0px', viewBox: '0 -150 1024 1024', width: '10', height: '10' }),\n react_1.default.createElement(\"g\", null,\n react_1.default.createElement(\"path\", { d: 'M236.544 461.568c-21.504-20.48-54.272-20.48-74.752 0-20.48 21.504-20.48 54.272 0 74.752l312.32 312.32c9.216 9.216 22.528 15.36 37.888 15.36 14.336 0 27.648-6.144 37.888-15.36l312.32-312.32c20.48-20.48 20.48-53.248 0-74.752-21.504-20.48-54.272-20.48-74.752 0l-223.232 224.256v-793.6c0-29.696-23.552-52.224-52.224-52.224-29.696 0-52.224 22.528-52.224 52.224v792.576l-223.232-223.232z' }))));\n};\nexports.UpIcon = UpIcon;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.CssClasses = void 0;\nvar CssClasses = /** @class */ (function () {\n function CssClasses() {\n this.root = 'ka';\n this.cell = 'ka-cell';\n this.treeCell = 'ka-tree-cell';\n this.treeCellEmptySpace = 'ka-tree-empty-space';\n this.cellEditor = 'ka-cell-editor';\n this.cellText = 'ka-cell-text';\n this.groupCell = 'ka-group-cell';\n this.groupSummaryRow = 'ka-group-summary-row';\n this.detailsRow = 'ka-tr ka-details-row';\n this.detailsCell = 'ka-details-cell';\n this.groupRow = 'ka-tr ka-group-row';\n this.groupSummaryCell = 'ka-cell ka-group-summary-cell';\n this.groupPanel = 'ka-group-panel';\n this.groupPanelCell = 'ka-group-panel-cell';\n this.groupPanelCellRemove = 'ka-group-panel-cell-remove';\n this.groupPanelText = 'ka-group-panel-text';\n this.kaCellEditorValidationError = 'ka-cell-editor-validation-error';\n this.row = 'ka-tr ka-row';\n this.rowSelected = 'ka-row-selected';\n this.tableWrapper = 'ka-table-wrapper';\n this.table = 'ka-table';\n this.tbody = 'ka-tbody';\n this.tfoot = 'ka-tfoot';\n this.thead = 'ka-thead';\n this.theadBackground = 'ka-thead-background';\n this.theadFixed = 'ka-thead-fixed';\n this.theadCell = 'ka-thead-cell';\n this.theadCellHeight = 'ka-thead-cell-height';\n this.summaryCell = 'ka-summary-cell';\n this.summaryRow = 'ka-summary-row';\n this.theadCellContent = 'ka-thead-cell-content';\n this.theadCellContentWrapper = 'ka-thead-cell-content-wrapper';\n this.theadCellResize = 'ka-thead-cell-resize';\n this.theadCellWrapper = 'ka-thead-cell-wrapper';\n this.theadRow = 'ka-tr ka-thead-row';\n this.draggedRow = 'ka-dragged-row';\n this.dragOverRow = 'ka-drag-over-row';\n this.draggedColumn = 'ka-dragged-column';\n this.dragOverColumn = 'ka-drag-over-column';\n this.paging = 'ka-paging';\n this.pagingPages = 'ka-paging-pages';\n this.pagingPageIndex = 'ka-paging-page-index';\n this.pagingSize = 'ka-paging-size';\n this.pagingSizes = 'ka-paging-sizes';\n this.iconGroupArrowCollapsed = 'ka-icon ka-icon-group-arrow-collapsed';\n this.iconGroupArrowExpanded = 'ka-icon ka-icon-group-arrow-expanded';\n this.iconTreeArrowCollapsed = 'ka-icon ka-icon-tree-arrow-collapsed';\n this.iconTreeArrowExpanded = 'ka-icon ka-icon-tree-arrow-expanded';\n this.iconSort = 'ka-icon ka-icon-sort';\n this.iconSortContent = 'ka-icon-sort-content';\n this.iconSortArrowDown = 'ka-icon-sort-arrow-down';\n this.iconSortArrowUp = 'ka-icon-sort-arrow-up';\n this.checkbox = 'ka-input';\n this.dateInput = 'ka-input';\n this.numberInput = 'ka-input';\n this.textInput = 'ka-input';\n }\n return CssClasses;\n}());\nexports.CssClasses = CssClasses;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.kaReducer = void 0;\nvar enums_1 = require(\"../enums\");\nvar ReducerUtils_1 = require(\"../Utils/ReducerUtils\");\nvar CellUtils_1 = require(\"../Utils/CellUtils\");\nvar PropsUtils_1 = require(\"../Utils/PropsUtils\");\nvar NavigationUtils_1 = require(\"../Utils/NavigationUtils\");\nvar GroupUtils_1 = require(\"../Utils/GroupUtils\");\nvar DataUtils_1 = require(\"../Utils/DataUtils\");\nvar FilterUtils_1 = require(\"../Utils/FilterUtils\");\nvar ArrayUtils_1 = require(\"../Utils/ArrayUtils\");\nvar TreeUtils_1 = require(\"../Utils/TreeUtils\");\nvar HeadRowUtils_1 = require(\"../Utils/HeadRowUtils\");\nvar utils_1 = require(\"../utils\");\nvar const_1 = require(\"../const\");\nvar ColumnUtils_1 = require(\"../Utils/ColumnUtils\");\nvar kaReducer = function (props, action) {\n var _a;\n var columns = props.columns, _b = props.data, data = _b === void 0 ? [] : _b, _c = props.detailsRows, detailsRows = _c === void 0 ? [] : _c, _d = props.editableCells, editableCells = _d === void 0 ? [] : _d, groupsExpanded = props.groupsExpanded, loading = props.loading, paging = props.paging, treeGroupsExpanded = props.treeGroupsExpanded, rowKeyField = props.rowKeyField, _e = props.selectedRows, selectedRows = _e === void 0 ? [] : _e, validation = props.validation, _f = props.sortingMode, sortingMode = _f === void 0 ? enums_1.SortingMode.None : _f, virtualScrolling = props.virtualScrolling;\n switch (action.type) {\n case enums_1.ActionType.InsertRow: {\n var rowData = action.rowData, options = action.options;\n var _g = options || {}, rowKeyValue_1 = _g.rowKeyValue, insertRowPosition = _g.insertRowPosition;\n var newData = __spreadArray([], data, true);\n if (rowKeyValue_1 != null) {\n var rowIndex = newData.findIndex(function (d) { return (0, DataUtils_1.getValueByField)(d, rowKeyField) === rowKeyValue_1; });\n if (insertRowPosition === enums_1.InsertRowPosition.after) {\n rowIndex++;\n }\n newData.splice(rowIndex, 0, rowData);\n }\n else {\n insertRowPosition === enums_1.InsertRowPosition.after ? newData.push(rowData) : newData.unshift(rowData);\n }\n return __assign(__assign({}, props), { data: newData });\n }\n case enums_1.ActionType.UpdateHeaderFilterValues: {\n var newColumns = columns.map(function (c) {\n if (c.key === action.columnKey) {\n var headerFilterValues = c.headerFilterValues;\n if (action.checked) {\n if (headerFilterValues === undefined) {\n headerFilterValues = [];\n }\n if (!headerFilterValues.includes(action.item)) {\n headerFilterValues.push(action.item);\n }\n }\n else {\n headerFilterValues = headerFilterValues === null || headerFilterValues === void 0 ? void 0 : headerFilterValues.filter(function (value) { return value !== action.item; });\n }\n c.headerFilterValues = headerFilterValues;\n }\n return c;\n });\n return __assign(__assign({}, props), { columns: newColumns });\n }\n case enums_1.ActionType.ClearAllFilters: {\n return __assign(__assign({}, props), { columns: columns.map(function (c) { return (__assign(__assign({}, c), { filterRowValue: undefined, headerFilterValues: undefined })); }) });\n }\n case enums_1.ActionType.UpdatePopupPosition: {\n var newColumns = columns.map(function (c) { return (__assign(__assign({}, c), { headerFilterPopupPosition: action.popupPosition })); });\n return __assign(__assign({}, props), { columns: newColumns });\n }\n case enums_1.ActionType.UpdateHeaderFilterPopupState: {\n var newColumns = columns.map(function (c) { return (__assign(__assign({}, c), { isHeaderFilterPopupShown: c.key === action.columnKey ? !c.isHeaderFilterPopupShown : false })); });\n return __assign(__assign({}, props), { columns: newColumns });\n }\n case enums_1.ActionType.MoveFocusedRight: {\n return (0, ReducerUtils_1.getUpdatedFocused)(props, action, NavigationUtils_1.getRightCell);\n }\n case enums_1.ActionType.MoveFocusedLeft: {\n return (0, ReducerUtils_1.getUpdatedFocused)(props, action, NavigationUtils_1.getLeftCell);\n }\n case enums_1.ActionType.MoveFocusedUp: {\n return (0, ReducerUtils_1.getUpdatedFocused)(props, action, NavigationUtils_1.getUpCell);\n }\n case enums_1.ActionType.MoveFocusedDown: {\n return (0, ReducerUtils_1.getUpdatedFocused)(props, action, NavigationUtils_1.getDownCell);\n }\n case enums_1.ActionType.SetFocused: {\n return __assign(__assign({}, props), { focused: action.focused });\n }\n case enums_1.ActionType.ClearFocused: {\n return __assign(__assign({}, props), { focused: undefined });\n }\n case enums_1.ActionType.ClearSingleAction: {\n return __assign(__assign({}, props), { singleAction: undefined });\n }\n case enums_1.ActionType.SetSingleAction: {\n return __assign(__assign({}, props), { singleAction: action.singleAction });\n }\n case enums_1.ActionType.ShowColumn: {\n var newColumns = (0, ColumnUtils_1.replaceColumnValue)({\n columns: columns,\n columnKey: action.columnKey,\n replacedOption: 'visible',\n replacedValue: true\n });\n return __assign(__assign({}, props), { columns: newColumns });\n }\n case enums_1.ActionType.HideColumn: {\n var newColumns = (0, ColumnUtils_1.replaceColumnValue)({\n columns: columns,\n columnKey: action.columnKey,\n replacedOption: 'visible',\n replacedValue: false\n });\n return __assign(__assign({}, props), { columns: newColumns });\n }\n case enums_1.ActionType.ReorderRows: {\n var newData = (0, DataUtils_1.reorderData)(data, function (d) { return (0, DataUtils_1.getValueByField)(d, rowKeyField); }, action.rowKeyValue, action.targetRowKeyValue);\n return __assign(__assign({}, props), { data: newData });\n }\n case enums_1.ActionType.InsertColumn: {\n var newColumns = __spreadArray([], columns, true);\n newColumns.splice(action.index, 0, action.column);\n return __assign(__assign({}, props), { columns: newColumns });\n }\n case enums_1.ActionType.MoveColumnBefore: {\n var newColumns = (0, DataUtils_1.insertBefore)(columns, function (d) { return d.key; }, action.columnKey, action.targetColumnKey);\n return __assign(__assign({}, props), { columns: newColumns });\n }\n case enums_1.ActionType.ReorderColumns: {\n var newData = (0, DataUtils_1.reorderData)(columns, function (d) { return d.key; }, action.columnKey, action.targetColumnKey);\n return __assign(__assign({}, props), { columns: newData });\n }\n case enums_1.ActionType.MoveColumnToIndex: {\n var newColumns = (0, DataUtils_1.reorderDataByIndex)(columns, function (d) { return d.key; }, action.columnKey, action.index != null ? action.index : columns === null || columns === void 0 ? void 0 : columns.length);\n return __assign(__assign({}, props), { columns: newColumns });\n }\n case enums_1.ActionType.UngroupColumn: {\n var newGroups = (_a = props === null || props === void 0 ? void 0 : props.groups) === null || _a === void 0 ? void 0 : _a.filter(function (group) { return group.columnKey !== action.columnKey; });\n return __assign(__assign({}, props), { groups: (newGroups === null || newGroups === void 0 ? void 0 : newGroups.length) ? newGroups : undefined });\n }\n case enums_1.ActionType.GroupColumn: {\n var newGroups = __spreadArray(__spreadArray([], (props === null || props === void 0 ? void 0 : props.groups) || [], true), [{ columnKey: action.columnKey }], false);\n return __assign(__assign({}, props), { groups: (newGroups === null || newGroups === void 0 ? void 0 : newGroups.length) ? newGroups : undefined });\n }\n case enums_1.ActionType.ResizeColumn: {\n var columnKey_1 = action.columnKey, width_1 = action.width;\n var newColumns = columns.map(function (column) {\n var _a, _b, _c, _d, _e;\n if (column.key === columnKey_1) {\n var newColumn = __assign({}, column);\n if (((_a = newColumn.style) === null || _a === void 0 ? void 0 : _a.width) != null) {\n newColumn.style = __assign(__assign({}, newColumn.style), { width: width_1 });\n }\n if (((_b = newColumn.style) === null || _b === void 0 ? void 0 : _b.width) == null || newColumn.width != null) {\n newColumn.width = width_1;\n }\n if (((_d = (_c = newColumn.colGroup) === null || _c === void 0 ? void 0 : _c.style) === null || _d === void 0 ? void 0 : _d.width) != null) {\n newColumn.colGroup.style = __assign(__assign({}, newColumn.colGroup.style), { width: width_1 });\n }\n if (((_e = newColumn.colGroup) === null || _e === void 0 ? void 0 : _e.width) != null) {\n newColumn.colGroup.width = width_1;\n }\n return newColumn;\n }\n return column;\n });\n return __assign(__assign({}, props), { columns: newColumns });\n }\n case enums_1.ActionType.UpdatePageIndex: {\n return __assign(__assign({}, props), { paging: __assign(__assign({}, paging), { pageIndex: action.pageIndex }) });\n }\n case enums_1.ActionType.UpdatePageSize: {\n return __assign(__assign({}, props), { paging: __assign(__assign({}, paging), { pageSize: action.pageSize }) });\n }\n case enums_1.ActionType.UpdatePagesCount: {\n return __assign(__assign({}, props), { paging: __assign(__assign({}, paging), { pagesCount: action.pagesCount }) });\n }\n case enums_1.ActionType.HideLoading: {\n return __assign(__assign({}, props), { loading: __assign(__assign({}, loading), { enabled: false }) });\n }\n case enums_1.ActionType.ShowLoading: {\n var newLoading = __assign(__assign({}, loading), { enabled: true });\n if (action.text !== undefined) {\n newLoading.text = action.text;\n }\n return __assign(__assign({}, props), { loading: newLoading });\n }\n case enums_1.ActionType.ShowDetailsRow: {\n var newDetailsRows = __spreadArray([], detailsRows, true);\n newDetailsRows.push(action.rowKeyValue);\n return __assign(__assign({}, props), { detailsRows: newDetailsRows });\n }\n case enums_1.ActionType.HideDetailsRow: {\n var newDetailsRows = detailsRows.filter(function (row) { return row !== action.rowKeyValue; });\n return __assign(__assign({}, props), { detailsRows: newDetailsRows });\n }\n case enums_1.ActionType.OpenEditor: {\n var newEditableCells = (0, CellUtils_1.addItemToEditableCells)(action, editableCells);\n return __assign(__assign({}, props), { editableCells: newEditableCells });\n }\n case enums_1.ActionType.CloseEditor: {\n var newEditableCells = (0, CellUtils_1.removeItemFromEditableCells)(action, editableCells);\n return __assign(__assign({}, props), { editableCells: newEditableCells });\n }\n case enums_1.ActionType.UpdateFilterRowValue: {\n var newColumns = (0, ColumnUtils_1.replaceColumnValue)({\n columns: columns,\n columnKey: action.columnKey,\n replacedOption: 'filterRowValue',\n replacedValue: action.filterRowValue\n });\n return __assign(__assign({}, props), { columns: newColumns });\n }\n case enums_1.ActionType.UpdateHeaderFilterSearchValue: {\n var newColumns = (0, ColumnUtils_1.replaceColumnValue)({\n columns: columns,\n columnKey: action.columnKey,\n replacedOption: 'headerFilterSearchValue',\n replacedValue: action.headerFilterSearchValue\n });\n return __assign(__assign({}, props), { columns: newColumns });\n }\n case enums_1.ActionType.UpdateFilterRowOperator: {\n var newColumns = (0, ColumnUtils_1.replaceColumnValue)({\n columns: columns,\n columnKey: action.columnKey,\n replacedOption: 'filterRowOperator',\n replacedValue: action.filterRowOperator\n });\n return __assign(__assign({}, props), { columns: newColumns });\n }\n case enums_1.ActionType.UpdateEditorValue: {\n var newEditableCells = __spreadArray([], editableCells, true);\n var editableCellIndex = newEditableCells.findIndex(function (c) { return c.columnKey === action.columnKey && c.rowKeyValue === action.rowKeyValue; });\n var editableCell = __assign(__assign({}, newEditableCells[editableCellIndex]), { editorValue: action.value });\n newEditableCells[editableCellIndex] = editableCell;\n return __assign(__assign({}, props), { editableCells: newEditableCells });\n }\n case enums_1.ActionType.UpdateCellValue: {\n var row = data.find(function (d) { return (0, DataUtils_1.getValueByField)(d, rowKeyField) === action.rowKeyValue; });\n var column = columns.find(function (c) { return c.key === action.columnKey; });\n var updatedRowData = (0, DataUtils_1.replaceValue)(row, column, action.value);\n var newData = (0, ArrayUtils_1.getCopyOfArrayAndInsertOrReplaceItem)(updatedRowData, rowKeyField, data);\n return __assign(__assign({}, props), { data: newData });\n }\n case enums_1.ActionType.DeleteRow: {\n var newData = data.filter(function (d) { return (0, DataUtils_1.getValueByField)(d, rowKeyField) !== action.rowKeyValue; });\n return __assign(__assign({}, props), { data: newData });\n }\n case enums_1.ActionType.SelectAllRows: {\n var newSelectedRows = data.map(function (d) { return (0, DataUtils_1.getValueByField)(d, rowKeyField); });\n return __assign(__assign({}, props), { selectedRows: newSelectedRows });\n }\n case enums_1.ActionType.SelectAllFilteredRows: {\n var newData = (0, FilterUtils_1.filterAndSearchData)(props);\n var newSelectedRows = (0, ReducerUtils_1.removeDataKeysFromSelectedRows)(selectedRows, newData, rowKeyField);\n newSelectedRows = __spreadArray(__spreadArray([], newSelectedRows, true), newData.map(function (d) { return (0, DataUtils_1.getValueByField)(d, rowKeyField); }), true);\n return __assign(__assign({}, props), { selectedRows: newSelectedRows });\n }\n case enums_1.ActionType.SelectAllVisibleRows: {\n var newData = (0, PropsUtils_1.getData)(props);\n var newSelectedRows = (0, ReducerUtils_1.removeDataKeysFromSelectedRows)(selectedRows, newData, rowKeyField);\n newSelectedRows = __spreadArray(__spreadArray([], newSelectedRows, true), newData.map(function (d) { return (0, DataUtils_1.getValueByField)(d, rowKeyField); }), true);\n return __assign(__assign({}, props), { selectedRows: newSelectedRows });\n }\n case enums_1.ActionType.Search: {\n return __assign(__assign({}, props), { searchText: action.searchText });\n }\n case enums_1.ActionType.SelectSingleRow: {\n var newSelectedRows = [action.rowKeyValue];\n return __assign(__assign({}, props), { selectedRows: newSelectedRows });\n }\n case enums_1.ActionType.DeselectAllRows:\n return __assign(__assign({}, props), { selectedRows: [] });\n case enums_1.ActionType.DeselectAllFilteredRows: {\n var newData = (0, FilterUtils_1.filterAndSearchData)(props);\n var newSelectedRows = (0, ReducerUtils_1.removeDataKeysFromSelectedRows)(selectedRows, newData, rowKeyField);\n return __assign(__assign({}, props), { selectedRows: newSelectedRows });\n }\n case enums_1.ActionType.DeselectAllVisibleRows: {\n var newData = (0, PropsUtils_1.getData)(props);\n var newSelectedRows = (0, ReducerUtils_1.removeDataKeysFromSelectedRows)(selectedRows, newData, rowKeyField);\n return __assign(__assign({}, props), { selectedRows: newSelectedRows });\n }\n case enums_1.ActionType.SelectRow:\n return __assign(__assign({}, props), { selectedRows: __spreadArray(__spreadArray([], selectedRows, true), [action.rowKeyValue], false) });\n case enums_1.ActionType.SelectRows:\n return __assign(__assign({}, props), { selectedRows: __spreadArray(__spreadArray([], selectedRows, true), action.rowsKeyValues, true) });\n case enums_1.ActionType.SelectRowsRange: {\n var rowKeyValueTo_1 = action.rowKeyValueTo;\n if (rowKeyValueTo_1) {\n var shownData = utils_1.kaPropsUtils.getData(props);\n var rowKeyValueToIndex = shownData.findIndex(function (d) { return (0, DataUtils_1.getValueByField)(d, rowKeyField) === rowKeyValueTo_1; });\n var rowKeyValueFromIndex = shownData.findIndex(function (d) { return (0, DataUtils_1.getValueByField)(d, rowKeyField) === action.rowKeyValueFrom; });\n if (rowKeyValueToIndex != null && rowKeyValueFromIndex != null) {\n var _h = rowKeyValueToIndex > rowKeyValueFromIndex ? [rowKeyValueFromIndex, rowKeyValueToIndex] : [rowKeyValueToIndex, rowKeyValueFromIndex], start = _h[0], end = _h[1];\n var rowsToSelect = [];\n for (var i = start; i <= end; i++) {\n var value = (0, DataUtils_1.getValueByField)(shownData[i], rowKeyField);\n if (!selectedRows.includes(value)) {\n rowsToSelect.push(value);\n }\n }\n return __assign(__assign({}, props), { selectedRows: __spreadArray(__spreadArray([], selectedRows, true), rowsToSelect, true) });\n }\n }\n return __assign(__assign({}, props), { selectedRows: __spreadArray(__spreadArray([], selectedRows, true), [action.rowKeyValueFrom], false) });\n }\n case enums_1.ActionType.DeselectRow: {\n var newSelectedRows = __spreadArray([], selectedRows, true).filter(function (s) { return s !== action.rowKeyValue; });\n return __assign(__assign({}, props), { selectedRows: newSelectedRows });\n }\n case enums_1.ActionType.DeselectRows: {\n var newSelectedRows = __spreadArray([], selectedRows, true).filter(function (s) { return !action.rowsKeyValues.includes(s); });\n return __assign(__assign({}, props), { selectedRows: newSelectedRows });\n }\n case enums_1.ActionType.UpdateSortDirection:\n var sortedColumns = (0, HeadRowUtils_1.getUpdatedSortedColumns)(columns, action.columnKey, sortingMode);\n return __assign(__assign({}, props), { columns: sortedColumns });\n case enums_1.ActionType.UpdateVirtualScrolling:\n return __assign(__assign({}, props), { virtualScrolling: action.virtualScrolling });\n case enums_1.ActionType.UpdateData:\n return __assign(__assign({}, props), { data: action.data });\n case enums_1.ActionType.ScrollTable:\n var scrollTop = action.scrollTop;\n return __assign(__assign({}, props), { virtualScrolling: __assign(__assign({}, virtualScrolling), { scrollTop: scrollTop }) });\n case enums_1.ActionType.UpdateGroupsExpanded: {\n var currentGroupsExpanded = groupsExpanded;\n if (!currentGroupsExpanded) {\n var preparedOptions = (0, PropsUtils_1.prepareTableOptions)(props);\n currentGroupsExpanded = (0, GroupUtils_1.getExpandedGroups)(preparedOptions.groupedData);\n }\n var newGroupsExpanded = (0, GroupUtils_1.updateExpandedGroups)(currentGroupsExpanded, action.groupKey);\n return __assign(__assign({}, props), { groupsExpanded: newGroupsExpanded });\n }\n case enums_1.ActionType.ShowNewRow:\n case enums_1.ActionType.OpenRowEditors: {\n var rowKeyValue = action.type === enums_1.ActionType.ShowNewRow ? const_1.newRowId : action.rowKeyValue;\n var newEditableCells = (0, ReducerUtils_1.addColumnsToRowEditableCells)(editableCells, columns, rowKeyValue);\n return __assign(__assign({}, props), { editableCells: newEditableCells });\n }\n case enums_1.ActionType.OpenAllEditors: {\n var newEditableCells = (0, ReducerUtils_1.getEditableCellsByData)(data, rowKeyField, columns);\n return __assign(__assign({}, props), { editableCells: newEditableCells });\n }\n case enums_1.ActionType.HideNewRow:\n case enums_1.ActionType.CloseRowEditors: {\n var rowKeyValue_2 = action.type === enums_1.ActionType.HideNewRow ? const_1.newRowId : action.rowKeyValue;\n var newEditableCells = editableCells.filter(function (e) { return e.rowKeyValue !== rowKeyValue_2; });\n return __assign(__assign({}, props), { editableCells: newEditableCells });\n }\n case enums_1.ActionType.Validate: {\n var newEditableCells = (0, ReducerUtils_1.getValidatedEditableCells)(props);\n return __assign(__assign({}, props), { editableCells: __spreadArray([], newEditableCells, true) });\n }\n case enums_1.ActionType.SaveAllEditors: {\n var newData_1 = __spreadArray([], data, true);\n editableCells === null || editableCells === void 0 ? void 0 : editableCells.forEach(function (editableCell) {\n if (editableCell.hasOwnProperty('editorValue')) {\n var rowIndex = newData_1.findIndex(function (d) { return (0, DataUtils_1.getValueByField)(d, rowKeyField) === editableCell.rowKeyValue; });\n if (rowIndex != null) {\n var column = columns.find(function (c) { return c.key === editableCell.columnKey; });\n newData_1[rowIndex] = (0, DataUtils_1.replaceValue)(newData_1[rowIndex], column, editableCell.editorValue);\n }\n }\n });\n return __assign(__assign({}, props), { data: newData_1 });\n }\n case enums_1.ActionType.SaveRowEditors:\n case enums_1.ActionType.SaveNewRow: {\n var isNewRow_1 = action.type === enums_1.ActionType.SaveNewRow;\n var rowEditorKeyValue_1 = isNewRow_1 ? const_1.newRowId : action.rowKeyValue;\n var updatedRowData_1 = data.find(function (d) { return (0, DataUtils_1.getValueByField)(d, rowKeyField) === rowEditorKeyValue_1; });\n var rowEditableCells = editableCells.filter(function (editableCell) { return editableCell.rowKeyValue === rowEditorKeyValue_1\n && (isNewRow_1 || editableCell.hasOwnProperty('editorValue')); });\n if (action.validate && !(0, PropsUtils_1.isValid)(__assign(__assign({}, props), { editableCells: rowEditableCells }))) {\n rowEditableCells.forEach(function (cell) {\n var column = columns.find(function (c) { return c.key === cell.columnKey; });\n cell.validationMessage = validation && validation({\n column: column,\n value: cell.editorValue,\n rowData: updatedRowData_1\n });\n });\n return __assign(__assign({}, props), { editableCells: __spreadArray([], editableCells, true) });\n }\n var newEditableCells = editableCells.filter(function (e) { return e.rowKeyValue !== rowEditorKeyValue_1; });\n rowEditableCells.forEach(function (cell) {\n var column = columns.find(function (c) { return c.key === cell.columnKey; });\n updatedRowData_1 = (0, DataUtils_1.replaceValue)(updatedRowData_1, column, cell.editorValue);\n });\n var newData = void 0;\n if (isNewRow_1) {\n updatedRowData_1[rowKeyField] = action.rowKeyValue;\n newData = __spreadArray([updatedRowData_1], data, true);\n }\n else {\n newData = (0, ArrayUtils_1.getCopyOfArrayAndInsertOrReplaceItem)(updatedRowData_1, rowKeyField, data);\n }\n return __assign(__assign({}, props), { data: newData, editableCells: newEditableCells });\n }\n case enums_1.ActionType.UpdateRow: {\n var newData = (0, ArrayUtils_1.getCopyOfArrayAndInsertOrReplaceItem)(action.rowData, rowKeyField, data);\n return __assign(__assign({}, props), { data: newData });\n }\n case enums_1.ActionType.UpdateTreeGroupsExpanded: {\n var rowKeyValue_3 = action.rowKeyValue;\n var value = treeGroupsExpanded ? !treeGroupsExpanded.some(function (v) { return v === rowKeyValue_3; }) : false;\n if (value) {\n return __assign(__assign({}, props), { treeGroupsExpanded: __spreadArray(__spreadArray([], (treeGroupsExpanded || []), true), [rowKeyValue_3], false) });\n }\n var currentExpanded = treeGroupsExpanded;\n if (!currentExpanded) {\n var preparedOptions = (0, PropsUtils_1.prepareTableOptions)(props);\n currentExpanded = (0, TreeUtils_1.getExpandedParents)(preparedOptions.groupedData, rowKeyField);\n }\n return __assign(__assign({}, props), { treeGroupsExpanded: currentExpanded.filter(function (item) { return item !== rowKeyValue_3; }) });\n }\n }\n return props;\n};\nexports.kaReducer = kaReducer;\n","\"use strict\";\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getCopyOfArrayAndInsertOrReplaceItem = exports.getCopyOfArrayAndDeleteItem = exports.getCopyOfArrayAndAddItem = void 0;\nvar getCopyOfArrayAndAddItem = function (item, array) {\n if (array === void 0) { array = []; }\n return array.concat([item]);\n};\nexports.getCopyOfArrayAndAddItem = getCopyOfArrayAndAddItem;\nvar getCopyOfArrayAndDeleteItem = function (item, rowKeyField, array) {\n var rowKeyValue = item[rowKeyField];\n return array.filter(function (i) { return i[rowKeyField] !== rowKeyValue; });\n};\nexports.getCopyOfArrayAndDeleteItem = getCopyOfArrayAndDeleteItem;\nvar getCopyOfArrayAndInsertOrReplaceItem = function (item, rowKeyField, array) {\n var newArray = __spreadArray([], array, true);\n var rowKeyValue = item[rowKeyField];\n var index = newArray.findIndex(function (i) { return i[rowKeyField] === rowKeyValue; });\n index >= 0 ? newArray.splice(index, 1, item) : newArray.push(item);\n return newArray;\n};\nexports.getCopyOfArrayAndInsertOrReplaceItem = getCopyOfArrayAndInsertOrReplaceItem;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getMinWidth = exports.isNumberWidth = exports.getValidatedWidth = exports.getMouseMove = exports.isCellResizeShown = void 0;\nvar actionCreators_1 = require(\"../actionCreators\");\nvar isCellResizeShown = function (isResizable, columnResizing) { return !!((isResizable !== false) && (columnResizing || isResizable)); };\nexports.isCellResizeShown = isCellResizeShown;\nvar getMouseMove = function (currentWidth, minWidth, startX, key, dispatch) { return function (event) {\n var newWidth = event.screenX - startX;\n if (newWidth !== currentWidth) {\n newWidth = (0, exports.getValidatedWidth)(newWidth, minWidth);\n dispatch((0, actionCreators_1.resizeColumn)(key, newWidth));\n }\n}; };\nexports.getMouseMove = getMouseMove;\nvar getValidatedWidth = function (newWidth, minWidth) {\n if (newWidth < minWidth) {\n return minWidth;\n }\n return newWidth;\n};\nexports.getValidatedWidth = getValidatedWidth;\nvar isNumberWidth = function (width) { return width && typeof width === 'number'; };\nexports.isNumberWidth = isNumberWidth;\nvar getMinWidth = function (style) {\n var minWidth = 20;\n if (!style) {\n return minWidth;\n }\n var styleMinWidth = style.minWidth;\n if ((0, exports.isNumberWidth)(styleMinWidth)) {\n minWidth = styleMinWidth;\n }\n return minWidth;\n};\nexports.getMinWidth = getMinWidth;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.checkPopupPosition = exports.removeItemFromEditableCells = exports.getCellEditorDispatchHandler = exports.addItemToEditableCells = exports.getEditableCell = exports.isEditableCell = exports.getNewRowDataFromEditableCells = exports.getNewRowEditableCells = void 0;\nvar enums_1 = require(\"../enums\");\nvar actionCreators_1 = require(\"../actionCreators\");\nvar ColumnUtils_1 = require(\"./ColumnUtils\");\nvar ArrayUtils_1 = require(\"./ArrayUtils\");\nvar const_1 = require(\"../const\");\nvar DataUtils_1 = require(\"./DataUtils\");\nvar getNewRowEditableCells = function (editableCells) {\n return editableCells && editableCells.filter(function (c) { return c.rowKeyValue === const_1.newRowId; });\n};\nexports.getNewRowEditableCells = getNewRowEditableCells;\nvar getNewRowDataFromEditableCells = function (editableCells, columns) {\n return editableCells.reduce(function (acc, item) {\n if (!item.hasOwnProperty('editorValue'))\n return acc;\n var column = (0, ColumnUtils_1.getColumn)(columns, item.columnKey);\n acc = (0, DataUtils_1.replaceValue)(acc, column, item.editorValue);\n return acc;\n }, {});\n};\nexports.getNewRowDataFromEditableCells = getNewRowDataFromEditableCells;\nvar isEditableCell = function (editingMode, column, rowEditableCells) {\n if (column.isEditable !== undefined) {\n return column.isEditable;\n }\n return !!rowEditableCells.find(function (c) { return c.columnKey === column.key; });\n};\nexports.isEditableCell = isEditableCell;\nvar getEditableCell = function (column, rowEditableCells) {\n if (column.isEditable === false) {\n return undefined;\n }\n return rowEditableCells.find(function (c) { return c.columnKey === column.key; });\n};\nexports.getEditableCell = getEditableCell;\nvar addItemToEditableCells = function (item, editableCells) {\n return (0, ArrayUtils_1.getCopyOfArrayAndAddItem)(item, editableCells);\n};\nexports.addItemToEditableCells = addItemToEditableCells;\nvar getCellEditorDispatchHandler = function (dispatch) {\n return function (action) {\n if (action.type === enums_1.ActionType.UpdateEditorValue) {\n dispatch((0, actionCreators_1.updateCellValue)(action.rowKeyValue, action.columnKey, action.value));\n }\n else {\n dispatch(action);\n }\n };\n};\nexports.getCellEditorDispatchHandler = getCellEditorDispatchHandler;\nvar removeItemFromEditableCells = function (item, editableCells) {\n return editableCells.filter(function (c) { return c.columnKey !== item.columnKey || c.rowKeyValue !== item.rowKeyValue; });\n};\nexports.removeItemFromEditableCells = removeItemFromEditableCells;\nvar checkPopupPosition = function (column, refToElement, dispatch) {\n var _a, _b;\n var element = refToElement.current;\n if (element && column.isHeaderFilterPopupShown) {\n var parent_1 = element.offsetParent;\n var table = parent_1.closest('table');\n var kaWrapper = parent_1.closest('.ka-table-wrapper');\n var newPopupPosition = {\n x: element.offsetLeft + (parent_1 === null || parent_1 === void 0 ? void 0 : parent_1.offsetLeft) - (kaWrapper === null || kaWrapper === void 0 ? void 0 : kaWrapper.scrollLeft),\n y: element.offsetTop + (table === null || table === void 0 ? void 0 : table.offsetTop) + element.offsetHeight\n };\n if (newPopupPosition.x !== ((_a = column.headerFilterPopupPosition) === null || _a === void 0 ? void 0 : _a.x) || newPopupPosition.y !== ((_b = column.headerFilterPopupPosition) === null || _b === void 0 ? void 0 : _b.y)) {\n dispatch((0, actionCreators_1.updatePopupPosition)(newPopupPosition));\n }\n }\n};\nexports.checkPopupPosition = checkPopupPosition;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.replaceColumnValue = exports.getLastFieldParents = exports.getFieldParts = exports.getLastField = exports.getField = exports.getColumn = void 0;\nvar defaultOptions_1 = __importDefault(require(\"../defaultOptions\"));\nvar ArrayUtils_1 = require(\"./ArrayUtils\");\nvar getColumn = function (columns, columnKey) { return columns.find(function (c) { return c.key === columnKey; }); };\nexports.getColumn = getColumn;\nvar getField = function (column) {\n return column.field || column.key;\n};\nexports.getField = getField;\nvar getLastField = function (field) {\n if (defaultOptions_1.default.fieldDelimiter) {\n return field.split(defaultOptions_1.default.fieldDelimiter).pop();\n }\n return field;\n};\nexports.getLastField = getLastField;\nvar getFieldParts = function (field) {\n return defaultOptions_1.default.fieldDelimiter ? field.split(defaultOptions_1.default.fieldDelimiter) : [field];\n};\nexports.getFieldParts = getFieldParts;\nvar getLastFieldParents = function (field) {\n if (defaultOptions_1.default.fieldDelimiter) {\n var fieldParents = field.split(defaultOptions_1.default.fieldDelimiter);\n fieldParents.pop();\n return fieldParents;\n }\n return [];\n};\nexports.getLastFieldParents = getLastFieldParents;\nvar replaceColumnValue = function (_a) {\n var _b;\n var columns = _a.columns, columnKey = _a.columnKey, replacedOption = _a.replacedOption, replacedValue = _a.replacedValue;\n var column = columns.find(function (c) { return c.key === columnKey; });\n var newColumn = __assign(__assign({}, column), (_b = {}, _b[replacedOption] = replacedValue, _b));\n var newArray = (0, ArrayUtils_1.getCopyOfArrayAndInsertOrReplaceItem)(newColumn, 'key', columns);\n return newArray;\n};\nexports.replaceColumnValue = replaceColumnValue;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isEmpty = void 0;\nvar isEmpty = function (value) { return (value == null || value.length === 0); };\nexports.isEmpty = isEmpty;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.addElementAttributes = exports.getElementCustomization = void 0;\nvar PropsUtils_1 = require(\"./PropsUtils\");\nvar ElementCustomization = /** @class */ (function () {\n function ElementCustomization() {\n }\n return ElementCustomization;\n}());\nfunction getElementCustomization(childElementAttributes, props, childComponent) {\n var elementAttributes = (0, PropsUtils_1.extendProps)(childElementAttributes, props, childComponent);\n var content = childComponent && childComponent.content && childComponent.content(props);\n return {\n content: content,\n elementAttributes: elementAttributes,\n };\n}\nexports.getElementCustomization = getElementCustomization;\n;\nvar addElementAttributes = function (elementAttributes, props, childComponent) {\n var updatedChildComponent = __assign({}, childComponent);\n var defaultElementAttributes = updatedChildComponent.elementAttributes && updatedChildComponent.elementAttributes(props);\n updatedChildComponent.elementAttributes = function () { return (__assign(__assign({}, defaultElementAttributes), elementAttributes)); };\n return updatedChildComponent;\n};\nexports.addElementAttributes = addElementAttributes;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.checkIndexOdd = exports.reorderData = exports.insertBefore = exports.reorderDataByIndex = exports.replaceValue = exports.getValueByField = exports.getValueByColumn = exports.createObjByFields = exports.getParentValue = void 0;\nvar ColumnUtils_1 = require(\"./ColumnUtils\");\nvar getParentValue = function (rowData, fieldParents) {\n var parentValue = fieldParents.reduce(function (previousValue, currentValue) {\n var result = (previousValue && previousValue[currentValue]);\n return result !== undefined ? result : undefined;\n }, rowData);\n return parentValue ? __assign({}, parentValue) : undefined;\n};\nexports.getParentValue = getParentValue;\nvar createObjByFields = function (fieldParents, field, value) {\n var parentValue = {};\n if (fieldParents.length) {\n fieldParents.reduce(function (previousValue, currentItem, currentIndex) {\n var lastObj = {};\n previousValue[currentItem] = lastObj;\n if (currentIndex === (fieldParents.length - 1)) {\n lastObj[field] = value;\n }\n return lastObj;\n }, parentValue);\n }\n else {\n parentValue[field] = value;\n }\n return __assign({}, parentValue);\n};\nexports.createObjByFields = createObjByFields;\nvar getValueByColumn = function (rowData, column) {\n return (0, exports.getValueByField)(rowData, (0, ColumnUtils_1.getField)(column));\n};\nexports.getValueByColumn = getValueByColumn;\nvar getValueByField = function (rowData, field) {\n var o = __assign({}, rowData);\n var names = (0, ColumnUtils_1.getFieldParts)(field);\n for (var i = 0, n = names.length; i < n; ++i) {\n var k = names[i];\n if (k in o) {\n o = o[k];\n }\n else {\n return;\n }\n }\n return o;\n};\nexports.getValueByField = getValueByField;\nvar replaceValueForField = function (rowData, field, newValue, fieldParents) {\n var result = __assign({}, rowData);\n if (fieldParents && fieldParents.length) {\n var parentValue = (0, exports.getParentValue)(result, fieldParents) || {};\n parentValue[field] = newValue;\n var parentsOfParent = __spreadArray([], fieldParents, true);\n var parentFieldName = parentsOfParent.pop();\n result = replaceValueForField(result, parentFieldName, parentValue, parentsOfParent);\n }\n else {\n result[field] = newValue;\n }\n return result;\n};\nvar replaceValue = function (rowData, column, newValue) {\n var field = (0, ColumnUtils_1.getField)(column);\n return replaceValueForField(rowData, (0, ColumnUtils_1.getLastField)(field), newValue, (0, ColumnUtils_1.getLastFieldParents)(field));\n};\nexports.replaceValue = replaceValue;\nvar reorderDataByIndex = function (data, getKey, keyValue, targetIndex) {\n var moved = data.find(function (d) { return getKey(d) === keyValue; });\n var newData = data.filter(function (d) { return getKey(d) !== keyValue; });\n newData.splice(targetIndex, 0, moved);\n return newData;\n};\nexports.reorderDataByIndex = reorderDataByIndex;\nvar insertBefore = function (data, getKey, keyValue, targetKeyValue) {\n var targetIndex = data.findIndex(function (d) { return getKey(d) === targetKeyValue; });\n var moved = data.findIndex(function (d) { return getKey(d) === keyValue; });\n if (moved < targetIndex) {\n targetIndex = targetIndex - 1;\n }\n return (0, exports.reorderDataByIndex)(data, getKey, keyValue, targetIndex);\n};\nexports.insertBefore = insertBefore;\nvar reorderData = function (data, getKey, keyValue, targetKeyValue) {\n var targetIndex = data.findIndex(function (d) { return getKey(d) === targetKeyValue; });\n return (0, exports.reorderDataByIndex)(data, getKey, keyValue, targetIndex);\n};\nexports.reorderData = reorderData;\nvar checkIndexOdd = function (index) {\n return index % 2 !== 0;\n};\nexports.checkIndexOdd = checkIndexOdd;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getDateInputValue = void 0;\nvar getDateInputValue = function (date) {\n return new Date(date.getTime() - date.getTimezoneOffset() * 60000).toISOString().split('T')[0];\n};\nexports.getDateInputValue = getDateInputValue;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getEventListenerEffect = exports.addEscEnterKeyEffect = void 0;\nvar enums_1 = require(\"../enums\");\n/*\n Used inside effects and returned as result from them,\n it adds listener to esc & enter keys on life cycle of component\n*/\nvar addEscEnterKeyEffect = function (escKeyHandler, enterKeyHandler) {\n var handleKeyboard = function (event) {\n if (event.keyCode === enums_1.KeyboardEnum.Esc) {\n escKeyHandler();\n }\n if (event.keyCode === enums_1.KeyboardEnum.Enter) {\n enterKeyHandler();\n }\n };\n return (0, exports.getEventListenerEffect)('keyup', handleKeyboard);\n};\nexports.addEscEnterKeyEffect = addEscEnterKeyEffect;\nvar getEventListenerEffect = function (eventName, handler) {\n window.addEventListener(eventName, handler);\n return function () {\n window.removeEventListener(eventName, handler);\n };\n};\nexports.getEventListenerEffect = getEventListenerEffect;\n","\"use strict\";\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.filterByHeaderFilter = exports.predefinedFilterOperators = exports.getDefaultOperatorForType = exports.filterData = exports.filterAndSearchData = exports.searchData = exports.getRowEditableCells = void 0;\nvar enums_1 = require(\"../enums\");\nvar defaultOptions_1 = __importDefault(require(\"../defaultOptions\"));\nvar DataUtils_1 = require(\"./DataUtils\");\nvar CommonUtils_1 = require(\"./CommonUtils\");\nvar getRowEditableCells = function (rowKeyValue, editableCells) {\n return editableCells.filter(function (c) { return c.rowKeyValue === rowKeyValue; });\n};\nexports.getRowEditableCells = getRowEditableCells;\nvar searchData = function (columns, data, searchText, search) {\n var searched = columns.reduce(function (initialData, c) {\n var filterFunction = function (item) {\n if (initialData.indexOf(item) >= 0) {\n return false;\n }\n var searchContent = search && search({ column: c, searchText: searchText, rowData: item });\n if (searchContent != null) {\n return searchContent;\n }\n var columnValue = (0, DataUtils_1.getValueByColumn)(item, c);\n if (columnValue == null) {\n return false;\n }\n return columnValue.toString().toLowerCase().includes(searchText.toLowerCase());\n };\n return initialData.concat(data.filter(filterFunction));\n }, []);\n return data.filter(function (d) { return searched.indexOf(d) >= 0; });\n};\nexports.searchData = searchData;\nvar filterAndSearchData = function (props) {\n var extendedFilter = props.extendedFilter, searchText = props.searchText, columns = props.columns, search = props.search, filter = props.filter, format = props.format;\n var _a = props.data, data = _a === void 0 ? [] : _a;\n data = __spreadArray([], data, true);\n data = extendedFilter ? extendedFilter(data) : data;\n data = searchText ? (0, exports.searchData)(columns, data, searchText, search) : data;\n data = (0, exports.filterData)(data, columns, filter);\n data = (0, exports.filterByHeaderFilter)(data, columns, format);\n return data;\n};\nexports.filterAndSearchData = filterAndSearchData;\nvar getCompare = function (column) {\n var filterRowOperator = column.filterRowOperator\n || (0, exports.getDefaultOperatorForType)(column.dataType || defaultOptions_1.default.columnDataType);\n var filterOperator = exports.predefinedFilterOperators.find(function (fo) { return filterRowOperator === fo.name; });\n if (!filterOperator) {\n throw new Error(\"'\".concat(column.filterRowOperator, \"' has not found in predefinedFilterOperators array, available operators: \").concat(exports.predefinedFilterOperators.map(function (o) { return o.name; }).join(', ')));\n }\n return filterOperator.compare;\n};\nvar filterData = function (data, columns, filter) {\n return columns.reduce(function (initialData, column) {\n if ((0, CommonUtils_1.isEmpty)(column.filterRowValue)\n && column.filterRowOperator !== enums_1.FilterOperatorName.IsEmpty\n && column.filterRowOperator !== enums_1.FilterOperatorName.IsNotEmpty) {\n return initialData;\n }\n var customFilter = column.filter || (filter === null || filter === void 0 ? void 0 : filter({ column: column }));\n var compare = customFilter || getCompare(column);\n return initialData.filter(function (d) {\n var fieldValue = (0, DataUtils_1.getValueByColumn)(d, column);\n var conditionValue = column.filterRowValue;\n if (column.dataType === enums_1.DataType.Date && !customFilter) {\n fieldValue = fieldValue == null ? fieldValue : new Date(fieldValue).setHours(0, 0, 0, 0);\n conditionValue = conditionValue == null ? conditionValue : new Date(conditionValue).setHours(0, 0, 0, 0);\n }\n return compare(fieldValue, conditionValue, d);\n });\n }, data);\n};\nexports.filterData = filterData;\nvar getDefaultOperatorForType = function (type) {\n var filterOperator = exports.predefinedFilterOperators.find(function (o) { return o.defaultForTypes && o.defaultForTypes.includes(type); });\n return (filterOperator && filterOperator.name) || '=';\n};\nexports.getDefaultOperatorForType = getDefaultOperatorForType;\nexports.predefinedFilterOperators = [{\n compare: function (fieldValue, conditionValue) {\n return fieldValue === conditionValue;\n },\n defaultForTypes: [enums_1.DataType.Boolean, enums_1.DataType.Number, enums_1.DataType.Date],\n name: enums_1.FilterOperatorName.Equal,\n }, {\n compare: function (fieldValue, conditionValue) {\n return fieldValue !== conditionValue;\n },\n name: enums_1.FilterOperatorName.IsNotEqual,\n }, {\n compare: function (fieldValue, conditionValue) {\n return fieldValue > conditionValue;\n },\n name: enums_1.FilterOperatorName.MoreThan,\n }, {\n compare: function (fieldValue, conditionValue) {\n return fieldValue < conditionValue;\n },\n name: enums_1.FilterOperatorName.LessThan,\n }, {\n compare: function (fieldValue, conditionValue) {\n return fieldValue >= conditionValue;\n },\n name: enums_1.FilterOperatorName.MoreThanOrEqual,\n }, {\n compare: function (fieldValue, conditionValue) {\n return fieldValue <= conditionValue;\n },\n name: enums_1.FilterOperatorName.LessThanOrEqual,\n }, {\n compare: function (fieldValue, conditionValue) {\n return fieldValue != null && fieldValue.toString().toLowerCase().includes(conditionValue.toString().toLowerCase());\n },\n defaultForTypes: [enums_1.DataType.String],\n name: enums_1.FilterOperatorName.Contains,\n }, {\n compare: function (fieldValue) {\n return (0, CommonUtils_1.isEmpty)(fieldValue);\n },\n name: enums_1.FilterOperatorName.IsEmpty,\n }, {\n compare: function (fieldValue) {\n return !(0, CommonUtils_1.isEmpty)(fieldValue);\n },\n name: enums_1.FilterOperatorName.IsNotEmpty,\n }];\nvar filterByHeaderFilter = function (data, columns, format) {\n return columns.reduce(function (initialData, column) {\n if ((0, CommonUtils_1.isEmpty)(column.headerFilterValues)) {\n return initialData;\n }\n return initialData.filter(function (item) {\n var _a;\n var value = (0, DataUtils_1.getValueByColumn)(item, column);\n if (column === null || column === void 0 ? void 0 : column.filter) {\n return column.filter(value, column.headerFilterValues, item);\n }\n var fieldValue = (format && format({ column: column, value: value, rowData: item }))\n || (value === null || value === void 0 ? void 0 : value.toString());\n return (_a = column.headerFilterValues) === null || _a === void 0 ? void 0 : _a.includes(fieldValue);\n });\n }, data);\n};\nexports.filterByHeaderFilter = filterByHeaderFilter;\n","\"use strict\";\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isMaxDeep = exports.getGroupText = exports.getGroupMark = exports.groupBy = exports.getGroupedStructure = exports.convertToFlat = exports.getGroupedData = exports.getExpandedGroups = exports.updateExpandedGroups = exports.groupDataMark = exports.groupSummaryMark = exports.groupMark = void 0;\nvar DataUtils_1 = require(\"./DataUtils\");\nexports.groupMark = {};\nexports.groupSummaryMark = {};\nexports.groupDataMark = {};\nvar getGroupSummary = function (groupData, key, groupIndex) { return ({ groupData: groupData, groupSummaryMark: exports.groupSummaryMark, key: JSON.stringify([key, '--:+summary--']), groupIndex: groupIndex }); };\nvar updateExpandedGroups = function (groupsExpanded, groupKey) {\n var newGroupsExpanded = groupsExpanded.filter(function (ge) { return JSON.stringify(ge) !== JSON.stringify(groupKey); });\n if (newGroupsExpanded.length === groupsExpanded.length) {\n newGroupsExpanded.push(groupKey);\n }\n return newGroupsExpanded;\n};\nexports.updateExpandedGroups = updateExpandedGroups;\nvar getExpandedGroups = function (groupedData) {\n return groupedData\n .filter(function (g) { return g.groupMark === exports.groupMark; })\n .map(function (g) { return g.key; });\n};\nexports.getExpandedGroups = getExpandedGroups;\nvar getGroupedData = function (data, groups, groupedColumns, groupsExpanded) {\n var grouped = (0, exports.getGroupedStructure)({\n data: data,\n groups: groups,\n groupedColumns: groupedColumns,\n groupsExpanded: groupsExpanded\n });\n return (0, exports.convertToFlat)(grouped);\n};\nexports.getGroupedData = getGroupedData;\nvar convertToFlat = function (grouped, key) {\n if (key === void 0) { key = []; }\n var result = [];\n grouped.forEach(function (value, groupValue) {\n if (groupValue === exports.groupSummaryMark) {\n result.push(value);\n }\n else {\n var groupKey = __spreadArray([], key, true);\n groupKey.push(groupValue);\n result.push({ groupMark: exports.groupMark, key: groupKey, value: groupValue, groupItems: value.groupDataMark === exports.groupDataMark ? value.groupData : value });\n result = __spreadArray(__spreadArray([], result, true), (Array.isArray(value) ? value : (0, exports.convertToFlat)(value, groupKey)), true);\n }\n });\n return result;\n};\nexports.convertToFlat = convertToFlat;\nvar getGroupedStructure = function (_a) {\n var data = _a.data, groups = _a.groups, groupedColumns = _a.groupedColumns, _b = _a.expandedDeep, expandedDeep = _b === void 0 ? 0 : _b, groupsExpanded = _a.groupsExpanded, _c = _a.parentGroupKey, parentGroupKey = _c === void 0 ? [] : _c;\n groups = __spreadArray([], groups, true);\n var group = groups.shift();\n if (group) {\n var column_1 = groupedColumns && groupedColumns.find(function (g) { return g.key === group.columnKey; });\n if (column_1) {\n var grouped_1 = (0, exports.groupBy)(data, function (item) { return (0, DataUtils_1.getValueByColumn)(item, column_1); });\n grouped_1.forEach(function (groupData, key) {\n var groupExpandedItems = groupsExpanded && groupsExpanded.filter(function (ge) { return ge[expandedDeep] === key; });\n var isGroupExpanded = !groupExpandedItems\n || groupExpandedItems.some(function (ge) { return ge.length === expandedDeep + 1; });\n if (isGroupExpanded) {\n var fullKey = __spreadArray(__spreadArray([], parentGroupKey, true), [key], false);\n var newStructure = (0, exports.getGroupedStructure)({\n data: groupData,\n groups: groups,\n groupedColumns: groupedColumns,\n expandedDeep: expandedDeep + 1,\n groupsExpanded: groupExpandedItems && groupExpandedItems.filter(function (ge) { return ge.length > expandedDeep + 1; }),\n parentGroupKey: fullKey\n });\n if (newStructure) {\n if (group.enableSummary) {\n newStructure.set(exports.groupSummaryMark, getGroupSummary(groupData, fullKey, expandedDeep));\n }\n newStructure.groupDataMark = exports.groupDataMark;\n newStructure.groupData = groupData;\n grouped_1.set(key, newStructure);\n }\n else if (group.enableSummary) {\n groupData.push(getGroupSummary(__spreadArray([], groupData, true), fullKey, expandedDeep));\n }\n }\n else {\n var emptyArray = [];\n emptyArray.groupDataMark = exports.groupDataMark;\n emptyArray.groupData = groupData;\n grouped_1.set(key, emptyArray);\n }\n });\n return grouped_1;\n }\n }\n};\nexports.getGroupedStructure = getGroupedStructure;\nvar groupBy = function (data, keyGetter, isEmptyValue) {\n if (isEmptyValue === void 0) { isEmptyValue = false; }\n var map = new Map();\n data.forEach(function (item) {\n var key = keyGetter(item);\n if (isEmptyValue) {\n map.set(key, []);\n }\n else {\n var collection = map.get(key);\n if (!collection) {\n map.set(key, [item]);\n }\n else {\n collection.push(item);\n }\n }\n });\n return map;\n};\nexports.groupBy = groupBy;\nvar getGroupMark = function () { return exports.groupMark; };\nexports.getGroupMark = getGroupMark;\nvar getGroupText = function (value, column, format, groupItems) {\n var formattedValue = format && format({ column: column, value: value, rowData: groupItems === null || groupItems === void 0 ? void 0 : groupItems[0] });\n return formattedValue != null ? formattedValue : \"\".concat((column && column.title ? column.title + ': ' : '')).concat(value);\n};\nexports.getGroupText = getGroupText;\nvar isMaxDeep = function (groupPanel, columns, groups) {\n var deep = groupPanel.deep || (columns === null || columns === void 0 ? void 0 : columns.length) - 1;\n return (groups === null || groups === void 0 ? void 0 : groups.length) && ((groups === null || groups === void 0 ? void 0 : groups.length) >= deep);\n};\nexports.isMaxDeep = isMaxDeep;\n","\"use strict\";\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getRowsWithGroupedColumns = exports.addColumnToRows = exports.getChain = void 0;\nvar getChain = function (column, groupedColumns, currentChain) {\n if (currentChain === void 0) { currentChain = []; }\n var newChain = __spreadArray([column], currentChain, true);\n var groupedColumn = groupedColumns.find(function (gc) { return gc.columnsKeys.includes(column.key); });\n if (groupedColumn) {\n return (0, exports.getChain)(groupedColumn, groupedColumns, newChain);\n }\n return newChain;\n};\nexports.getChain = getChain;\nvar addColumnToRows = function (rows, column, groupedColumns) {\n var rowsResult = __spreadArray([], rows, true);\n var columnsChain = (0, exports.getChain)(column, groupedColumns);\n var isSameLast = true;\n columnsChain.forEach(function (item, index) {\n if (!rowsResult[index]) {\n rowsResult[index] = [];\n }\n var last = __spreadArray([], rowsResult[index], true).pop();\n if (last && last.column === item) {\n if (isSameLast) {\n last.colSpan++;\n last.columns.push(column);\n return;\n }\n isSameLast = true;\n }\n else {\n isSameLast = false;\n }\n rowsResult[index].push({\n colSpan: 1,\n columnChainLength: columnsChain.length,\n column: item,\n columns: [column]\n });\n });\n return rowsResult;\n};\nexports.addColumnToRows = addColumnToRows;\nvar getRowsWithGroupedColumns = function (columns, groupedColumns) {\n var rows = [];\n columns.forEach(function (c) {\n rows = (0, exports.addColumnToRows)(rows, c, groupedColumns);\n });\n rows.forEach(function (row, index) {\n row.forEach(function (c) {\n c.rowSpan = index === c.columnChainLength - 1 ? rows.length - c.columnChainLength + 1 : 1;\n });\n });\n return rows;\n};\nexports.getRowsWithGroupedColumns = getRowsWithGroupedColumns;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getNextSortDirection = exports.getUpdatedSortedColumns = exports.getHeadCellClassName = void 0;\nvar enums_1 = require(\"../enums\");\nvar SortUtils_1 = require(\"./SortUtils\");\nvar defaultOptions_1 = __importDefault(require(\"../defaultOptions\"));\nvar getHeadCellClassName = function (sortingMode, isGrouped) { return \"\".concat(defaultOptions_1.default.css.theadCell, \" \").concat(defaultOptions_1.default.css.theadCellHeight, \" \").concat(defaultOptions_1.default.css.theadFixed, \" \").concat(defaultOptions_1.default.css.theadBackground, \" \").concat(isGrouped ? 'ka-thead-grouped-cell' : ''); };\nexports.getHeadCellClassName = getHeadCellClassName;\nvar getUpdatedSortedColumns = function (columns, columnKey, sortingMode) {\n var newColumns = columns.map(function (c) { return (__assign({}, c)); });\n var curentColumn = newColumns.find(function (c) { return c.key === columnKey; });\n if (curentColumn) {\n var nextSortDirection = (0, exports.getNextSortDirection)(curentColumn.sortDirection);\n if ((0, SortUtils_1.isTripleStateSorting)(sortingMode)\n && curentColumn.sortDirection\n && nextSortDirection === defaultOptions_1.default.columnSortDirection) {\n nextSortDirection = undefined;\n }\n if (!(0, SortUtils_1.isMultipleSorting)(sortingMode)) {\n newColumns.forEach(function (c) {\n delete c.sortDirection;\n delete c.sortIndex;\n });\n }\n if (nextSortDirection) {\n curentColumn.sortDirection = nextSortDirection;\n if ((0, SortUtils_1.isMultipleSorting)(sortingMode) && !curentColumn.sortIndex) {\n var sortedColumns = newColumns.filter(function (c) { return c.sortDirection; });\n curentColumn.sortIndex = sortedColumns.length + 1;\n }\n }\n else {\n delete curentColumn.sortDirection;\n delete curentColumn.sortIndex;\n }\n if ((0, SortUtils_1.isMultipleSorting)(sortingMode)) {\n var sortedColumns = (0, SortUtils_1.sortColumns)(newColumns);\n sortedColumns.forEach(function (c, i) {\n c.sortIndex = i + 1;\n });\n }\n }\n return newColumns;\n};\nexports.getUpdatedSortedColumns = getUpdatedSortedColumns;\nvar getNextSortDirection = function (previousSortdirection) {\n var nextSortDirection;\n if (previousSortdirection) {\n nextSortDirection = previousSortdirection === enums_1.SortDirection.Ascend\n ? enums_1.SortDirection.Descend : enums_1.SortDirection.Ascend;\n }\n else {\n nextSortDirection = defaultOptions_1.default.columnSortDirection;\n }\n return nextSortDirection;\n};\nexports.getNextSortDirection = getNextSortDirection;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getDownCell = exports.getUpCell = exports.getLeftCell = exports.getRightCell = void 0;\nvar DataUtils_1 = require(\"./DataUtils\");\nvar PropsUtils_1 = require(\"./PropsUtils\");\nvar getRightCell = function (currentCell, props, settings) {\n var _a;\n var nextColumnKey;\n var hasNextColumn = true;\n if (settings === null || settings === void 0 ? void 0 : settings.end) {\n nextColumnKey = (_a = props.columns[props.columns.length - 1]) === null || _a === void 0 ? void 0 : _a.key;\n }\n else {\n var columnIndex = props.columns.findIndex(function (c) { return c.key === currentCell.columnKey; });\n hasNextColumn = columnIndex < props.columns.length - 1;\n nextColumnKey = hasNextColumn\n ? props.columns[columnIndex + 1].key\n : currentCell.columnKey;\n }\n return { columnKey: nextColumnKey, rowKeyValue: currentCell.rowKeyValue };\n};\nexports.getRightCell = getRightCell;\nvar getLeftCell = function (currentCell, props, settings) {\n var _a;\n var nextColumnKey;\n var hasNextColumn = true;\n if (settings === null || settings === void 0 ? void 0 : settings.end) {\n nextColumnKey = (_a = props.columns[0]) === null || _a === void 0 ? void 0 : _a.key;\n }\n else {\n var columnIndex = props.columns.findIndex(function (c) { return c.key === currentCell.columnKey; });\n hasNextColumn = 0 < columnIndex;\n nextColumnKey = hasNextColumn\n ? props.columns[columnIndex - 1].key\n : currentCell.columnKey;\n }\n return { columnKey: nextColumnKey, rowKeyValue: currentCell.rowKeyValue };\n};\nexports.getLeftCell = getLeftCell;\nvar getUpCell = function (currentCell, props, settings) {\n var rowKeyValue = currentCell.rowKeyValue;\n var visibleData = (0, PropsUtils_1.getData)(props);\n if (settings === null || settings === void 0 ? void 0 : settings.end) {\n var nextRow = visibleData[0];\n rowKeyValue = (0, DataUtils_1.getValueByField)(nextRow, props.rowKeyField);\n }\n else {\n var rowIndex = visibleData === null || visibleData === void 0 ? void 0 : visibleData.findIndex(function (d) { return (0, DataUtils_1.getValueByField)(d, props.rowKeyField) === currentCell.rowKeyValue; });\n if (rowIndex > 0) {\n var nextRow = visibleData[rowIndex - 1];\n rowKeyValue = (0, DataUtils_1.getValueByField)(nextRow, props.rowKeyField);\n }\n }\n return { columnKey: currentCell.columnKey, rowKeyValue: rowKeyValue };\n};\nexports.getUpCell = getUpCell;\nvar getDownCell = function (currentCell, props, settings) {\n var rowKeyValue = currentCell.rowKeyValue;\n var visibleData = (0, PropsUtils_1.getData)(props);\n if (settings === null || settings === void 0 ? void 0 : settings.end) {\n var nextRow = visibleData[visibleData.length - 1];\n rowKeyValue = (0, DataUtils_1.getValueByField)(nextRow, props.rowKeyField);\n }\n else {\n var rowIndex = visibleData === null || visibleData === void 0 ? void 0 : visibleData.findIndex(function (d) { return (0, DataUtils_1.getValueByField)(d, props.rowKeyField) === currentCell.rowKeyValue; });\n if (rowIndex < visibleData.length - 1) {\n var nextRow = visibleData[rowIndex + 1];\n rowKeyValue = (0, DataUtils_1.getValueByField)(nextRow, props.rowKeyField);\n }\n }\n return { columnKey: currentCell.columnKey, rowKeyValue: rowKeyValue };\n};\nexports.getDownCell = getDownCell;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isPagingShown = exports.getPagesArrayBySize = exports.getPagesForCenter = exports.getPageData = exports.getPagesCount = exports.centerLength = void 0;\nvar enums_1 = require(\"../enums\");\nexports.centerLength = 5;\nvar DEFAULT_PAGE_SIZE = 10;\nvar getPagesCount = function (data, paging) {\n if (!paging || !paging.enabled) {\n return 1;\n }\n if (paging.pagesCount) {\n return paging.pagesCount;\n }\n return Math.ceil(data.length / ((paging && paging.pageSize) || DEFAULT_PAGE_SIZE));\n};\nexports.getPagesCount = getPagesCount;\nvar getPageData = function (data, paging) {\n if (!paging || !paging.enabled || paging.pagesCount) {\n return data;\n }\n var pageSize = paging.pageSize || DEFAULT_PAGE_SIZE;\n var pageIndex = paging.pageIndex || 0;\n var startIndex = pageSize * pageIndex;\n return data.slice(startIndex, startIndex + pageSize);\n};\nexports.getPageData = getPageData;\nvar getPagesForCenter = function (pages, isStartShown, isEndShown, pageIndex) {\n if (isStartShown && !isEndShown) {\n return pages.filter(function (page) { return (page >= pages.length - exports.centerLength - 1); });\n }\n else if (!isStartShown && isEndShown) {\n return pages.filter(function (page) { return (page <= exports.centerLength); });\n }\n else if (isStartShown && isEndShown) {\n return pages.filter(function (page) { return (page >= pageIndex - Math.floor(exports.centerLength / 2)) && (page <= pageIndex + Math.floor(exports.centerLength / 2)); });\n }\n return pages;\n};\nexports.getPagesForCenter = getPagesForCenter;\nvar getPagesArrayBySize = function (pagesCount) { return new Array(pagesCount).fill(undefined).map(function (_, index) { return index; }); };\nexports.getPagesArrayBySize = getPagesArrayBySize;\nvar isPagingShown = function (position, paging) { return !!((paging === null || paging === void 0 ? void 0 : paging.enabled)\n && (paging.position\n ? position === paging.position || paging.position === enums_1.PagingPosition.TopAndBottom\n : position === enums_1.PagingPosition.Bottom)); };\nexports.isPagingShown = isPagingShown;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getDraggableProps = exports.groupPanelOnDrop = exports.prepareTableOptions = exports.getPagesCountByProps = exports.getSortedColumns = exports.getSelectedData = exports.isValid = exports.getData = exports.areAllVisibleRowsSelected = exports.areAllFilteredRowsSelected = exports.getFilteredData = exports.mergeProps = exports.extendProps = void 0;\nvar PagingUtils_1 = require(\"./PagingUtils\");\nvar SortUtils_1 = require(\"./SortUtils\");\nvar enums_1 = require(\"../enums\");\nvar FilterUtils_1 = require(\"./FilterUtils\");\nvar GroupUtils_1 = require(\"./GroupUtils\");\nvar TreeUtils_1 = require(\"./TreeUtils\");\nvar ReducerUtils_1 = require(\"./ReducerUtils\");\nvar DataUtils_1 = require(\"./DataUtils\");\nvar actionCreators_1 = require(\"../actionCreators\");\nfunction extendProps(childElementAttributes, childProps, childComponent) {\n var resultProps = childElementAttributes;\n var childCustomAttributes = childComponent && childComponent.elementAttributes && childComponent.elementAttributes(childProps);\n if (childCustomAttributes) {\n var dispatch = childProps.dispatch;\n resultProps = mergeProps(childElementAttributes, childProps, childCustomAttributes, dispatch);\n }\n return resultProps;\n}\nexports.extendProps = extendProps;\n;\nvar emptyFunc = function () { };\nfunction mergeProps(childElementAttributes, childProps, childCustomAttributes, dispatch) {\n var customPropsWithEvents = {};\n var _loop_1 = function (prop) {\n if (childCustomAttributes.hasOwnProperty(prop)) {\n var propName = prop;\n var propValue_1 = childCustomAttributes[propName];\n var baseFunc_1 = childElementAttributes[propName] || emptyFunc;\n if (typeof propValue_1 === 'function') {\n customPropsWithEvents[prop] = function (e) {\n propValue_1(e, {\n baseFunc: baseFunc_1,\n childElementAttributes: childElementAttributes,\n childProps: childProps,\n dispatch: dispatch,\n });\n };\n }\n }\n };\n for (var prop in childCustomAttributes) {\n _loop_1(prop);\n }\n var mergedResult = __assign(__assign(__assign(__assign({}, childElementAttributes), childCustomAttributes), customPropsWithEvents), { className: \"\".concat(childElementAttributes.className || '', \" \").concat(childCustomAttributes.className || ''), style: __assign(__assign({}, childElementAttributes.style), childCustomAttributes.style) });\n return mergedResult;\n}\nexports.mergeProps = mergeProps;\n;\nvar getFilteredData = function (props) {\n return (0, FilterUtils_1.filterAndSearchData)(props);\n};\nexports.getFilteredData = getFilteredData;\nvar areAllFilteredRowsSelected = function (props) {\n var _a = props.selectedRows, selectedRows = _a === void 0 ? [] : _a, rowKeyField = props.rowKeyField;\n return (0, FilterUtils_1.filterAndSearchData)(props).every(function (d) { return selectedRows.includes((0, DataUtils_1.getValueByField)(d, rowKeyField)); });\n};\nexports.areAllFilteredRowsSelected = areAllFilteredRowsSelected;\nvar areAllVisibleRowsSelected = function (props) {\n var _a = props.selectedRows, selectedRows = _a === void 0 ? [] : _a, rowKeyField = props.rowKeyField;\n return (0, exports.getData)(props).every(function (d) { return selectedRows.includes((0, DataUtils_1.getValueByField)(d, rowKeyField)); });\n};\nexports.areAllVisibleRowsSelected = areAllVisibleRowsSelected;\nvar getDataWithoutPaging = function (props) {\n var columns = props.columns, groups = props.groups, groupsExpanded = props.groupsExpanded, treeGroupKeyField = props.treeGroupKeyField, treeGroupsExpanded = props.treeGroupsExpanded, extendedSort = props.extendedSort, rowKeyField = props.rowKeyField, sort = props.sort, _a = props.sortingMode, sortingMode = _a === void 0 ? enums_1.SortingMode.None : _a;\n var _b = props.data, data = _b === void 0 ? [] : _b;\n var resultData = __spreadArray([], data, true);\n resultData = (0, FilterUtils_1.filterAndSearchData)(props);\n if (!(0, SortUtils_1.isRemoteSorting)(sortingMode)) {\n resultData = (0, SortUtils_1.sortData)(columns, resultData, sort);\n }\n resultData = extendedSort ? extendedSort(resultData, columns) : resultData;\n var groupedColumns = groups ? columns.filter(function (c) { return groups.some(function (g) { return g.columnKey === c.key; }); }) : [];\n resultData = groups ? (0, GroupUtils_1.getGroupedData)(resultData, groups, groupedColumns, groupsExpanded) : resultData;\n resultData = treeGroupKeyField ? (0, TreeUtils_1.getTreeData)({ data: resultData, rowKeyField: rowKeyField, treeGroupKeyField: treeGroupKeyField, treeGroupsExpanded: treeGroupsExpanded, originalData: data }) : resultData;\n return resultData;\n};\nvar getData = function (props) {\n var paging = props.paging;\n var resultData = getDataWithoutPaging(props);\n resultData = (0, PagingUtils_1.getPageData)(resultData, paging);\n return resultData;\n};\nexports.getData = getData;\nvar isValid = function (props) {\n return (!props.validation || !(0, ReducerUtils_1.getValidatedEditableCells)(props).some(function (cell) { return cell.validationMessage; }));\n};\nexports.isValid = isValid;\nvar getSelectedData = function (_a) {\n var data = _a.data, selectedRows = _a.selectedRows, rowKeyField = _a.rowKeyField;\n return data ? data.filter(function (d) {\n var value = (0, DataUtils_1.getValueByField)(d, rowKeyField);\n return selectedRows === null || selectedRows === void 0 ? void 0 : selectedRows.some(function (v) { return v === value; });\n }) : [];\n};\nexports.getSelectedData = getSelectedData;\nvar getSortedColumns = function (props) {\n return (0, SortUtils_1.sortColumns)(props.columns);\n};\nexports.getSortedColumns = getSortedColumns;\nvar getPagesCountByProps = function (props) {\n var paging = props.paging;\n var pagesCount = 1;\n if (paging && paging.enabled) {\n var data = getDataWithoutPaging(props);\n pagesCount = (0, PagingUtils_1.getPagesCount)(data, paging);\n }\n return pagesCount;\n};\nexports.getPagesCountByProps = getPagesCountByProps;\nvar prepareTableOptions = function (props) {\n var groups = props.groups;\n var columns = props.columns;\n var groupedData = (0, exports.getData)(props);\n var groupColumnsCount = 0;\n var groupedColumns = [];\n if (groups) {\n groupColumnsCount = groups.length;\n groupedColumns = columns.filter(function (c) { return groups.some(function (g) { return g.columnKey === c.key; }); });\n columns = columns.filter(function (c) { return !groups.some(function (g) { return g.columnKey === c.key; }); });\n }\n columns = columns.filter(function (c) { return c.visible !== false; });\n return {\n columns: columns,\n groupColumnsCount: groupColumnsCount,\n groupedColumns: groupedColumns,\n groupedData: groupedData\n };\n};\nexports.prepareTableOptions = prepareTableOptions;\nvar groupPanelOnDrop = function (event, dispatch) {\n var _a;\n var draggableKeyValueData = (_a = event.dataTransfer) === null || _a === void 0 ? void 0 : _a.getData('ka-draggableKeyValue');\n if (draggableKeyValueData) {\n var draggableKeyValue = JSON.parse(draggableKeyValueData);\n dispatch((0, actionCreators_1.groupColumn)(draggableKeyValue));\n }\n};\nexports.groupPanelOnDrop = groupPanelOnDrop;\nvar getDraggableProps = function (_a) {\n var key = _a.key, dispatch = _a.dispatch, actionCreator = _a.actionCreator, draggedClass = _a.draggedClass, dragOverClass = _a.dragOverClass, hasReordering = _a.hasReordering;\n var count = 0;\n var reorderingProps = hasReordering ? {\n onDragEnter: function (event) {\n count++;\n if (!event.currentTarget.classList.contains(dragOverClass)) {\n event.currentTarget.classList.add(dragOverClass);\n }\n event.preventDefault();\n },\n onDragLeave: function (event) {\n count--;\n if (count === 0) {\n event.currentTarget.classList.remove(dragOverClass);\n }\n },\n onDragOver: function (event) {\n if (!event.currentTarget.classList.contains(dragOverClass)) {\n event.currentTarget.classList.add(dragOverClass);\n }\n event.preventDefault();\n }\n } : {};\n return __assign({ draggable: true, onDragStart: function (event) {\n count = 0;\n event.dataTransfer.setData('ka-draggableKeyValue', JSON.stringify(key));\n event.currentTarget.classList.add(draggedClass);\n event.dataTransfer.effectAllowed = 'move';\n }, onDragEnd: function (event) {\n event.currentTarget.classList.remove(draggedClass);\n }, onDrop: function (event) {\n event.currentTarget.classList.remove(dragOverClass);\n var keyDataTransfer = event.dataTransfer.getData('ka-draggableKeyValue');\n if (hasReordering && keyDataTransfer) {\n var draggableKeyValue = JSON.parse(keyDataTransfer);\n dispatch(actionCreator(draggableKeyValue, key));\n }\n } }, reorderingProps);\n};\nexports.getDraggableProps = getDraggableProps;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getUpdatedFocused = exports.removeDataKeysFromSelectedRows = exports.addColumnsToRowEditableCells = exports.getEditableCellsByData = exports.getValidatedEditableCells = void 0;\nvar DataUtils_1 = require(\"./DataUtils\");\nvar getValidatedEditableCells = function (_a) {\n var data = _a.data, _b = _a.editableCells, editableCells = _b === void 0 ? [] : _b, columns = _a.columns, rowKeyField = _a.rowKeyField, validation = _a.validation;\n return editableCells.map(function (cell) {\n var column = columns.find(function (c) { return c.key === cell.columnKey; });\n var updatedRowData = data === null || data === void 0 ? void 0 : data.find(function (d) { return (0, DataUtils_1.getValueByField)(d, rowKeyField) === cell.rowKeyValue; });\n var value = cell.hasOwnProperty('editorValue') ? cell.editorValue : (0, DataUtils_1.getValueByField)(updatedRowData, cell.columnKey);\n return __assign(__assign({}, cell), { validationMessage: validation && validation({\n column: column,\n rowData: updatedRowData,\n value: value\n }) });\n });\n};\nexports.getValidatedEditableCells = getValidatedEditableCells;\nvar getEditableCellsByData = function (data, rowKeyField, columns) {\n var editableCells = [];\n data === null || data === void 0 ? void 0 : data.forEach(function (rowData) {\n var rowKeyValue = (0, DataUtils_1.getValueByField)(rowData, rowKeyField);\n columns.forEach(function (column) {\n editableCells.push({ columnKey: column.key, rowKeyValue: rowKeyValue });\n });\n });\n return editableCells;\n};\nexports.getEditableCellsByData = getEditableCellsByData;\nvar addColumnsToRowEditableCells = function (editableCells, columns, rowKeyValue) {\n var newEditableCells = __spreadArray([], editableCells, true);\n columns.forEach(function (column) {\n if (column.isEditable !== false\n && !newEditableCells.some(function (e) { return e.columnKey === column.key && e.rowKeyValue === rowKeyValue; })) {\n newEditableCells.push({\n columnKey: column.key,\n rowKeyValue: rowKeyValue\n });\n }\n });\n return newEditableCells;\n};\nexports.addColumnsToRowEditableCells = addColumnsToRowEditableCells;\nvar removeDataKeysFromSelectedRows = function (selectedRows, data, rowKeyField) {\n var newSelectedRows = selectedRows.filter(function (rowKeyValue) {\n return !data.some(function (d) { return (0, DataUtils_1.getValueByField)(d, rowKeyField) === rowKeyValue; });\n });\n return newSelectedRows;\n};\nexports.removeDataKeysFromSelectedRows = removeDataKeysFromSelectedRows;\nvar getUpdatedFocused = function (props, action, funcToUpdate) {\n var _a;\n if (!((_a = props === null || props === void 0 ? void 0 : props.focused) === null || _a === void 0 ? void 0 : _a.cell))\n return props;\n var newFocused = { cell: funcToUpdate(props.focused.cell, props, action.settings) };\n return __assign(__assign({}, props), { focused: newFocused });\n};\nexports.getUpdatedFocused = getUpdatedFocused;\n","\"use strict\";\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isSortingEnabled = exports.isRemoteSorting = exports.isMultipleSorting = exports.isTripleStateSorting = exports.sortData = exports.sortColumns = void 0;\nvar enums_1 = require(\"../enums\");\nvar DataUtils_1 = require(\"./DataUtils\");\nvar sortColumns = function (columns) {\n return columns.filter(function (c) { return c.sortDirection; }).sort(function (a, b) {\n if (a.sortIndex === b.sortIndex) {\n return 0;\n }\n if (!a.sortIndex) {\n return -1;\n }\n if (!b.sortIndex) {\n return 1;\n }\n if (a.sortIndex < b.sortIndex) {\n return -1;\n }\n return 1;\n });\n};\nexports.sortColumns = sortColumns;\nvar sortData = function (columns, data, sort) {\n var column = columns.find(function (c) { return c.sortDirection; });\n if (!column) {\n return data;\n }\n var customSort = sort && sort({ column: column });\n var sortFunc = (customSort && (function (rowDataA, rowDataB) { return customSort((0, DataUtils_1.getValueByColumn)(rowDataA, column), (0, DataUtils_1.getValueByColumn)(rowDataB, column)); })) || (column.sortDirection === enums_1.SortDirection.Ascend\n ? ascendSort(column)\n : descendSort(column));\n var newData = __spreadArray([], data, true).sort(sortFunc);\n return newData;\n};\nexports.sortData = sortData;\nvar ascendSort = function (sortedColumn) {\n return function (a, b) {\n var aValue = (0, DataUtils_1.getValueByColumn)(a, sortedColumn);\n var bValue = (0, DataUtils_1.getValueByColumn)(b, sortedColumn);\n if (aValue === bValue) {\n return 0;\n }\n else if (aValue == null) {\n return -1;\n }\n else if (bValue == null) {\n return 1;\n }\n if (typeof aValue === 'string' && typeof bValue === 'string') {\n return aValue.toLowerCase() < bValue.toLowerCase() ? -1 : 1;\n }\n return aValue < bValue ? -1 : 1;\n };\n};\nvar descendSort = function (sortedColumn) {\n return function (a, b) {\n var aValue = (0, DataUtils_1.getValueByColumn)(a, sortedColumn);\n var bValue = (0, DataUtils_1.getValueByColumn)(b, sortedColumn);\n if (aValue === bValue) {\n return 0;\n }\n else if (aValue == null) {\n return 1;\n }\n else if (bValue == null) {\n return -1;\n }\n if (typeof aValue === 'string' && typeof bValue === 'string') {\n return aValue.toLowerCase() > bValue.toLowerCase() ? -1 : 1;\n }\n return aValue > bValue ? -1 : 1;\n };\n};\nvar isTripleStateSorting = function (sortingMode) {\n return sortingMode === enums_1.SortingMode.MultipleTripleStateRemote\n || sortingMode === enums_1.SortingMode.SingleTripleState\n || sortingMode === enums_1.SortingMode.SingleTripleStateRemote;\n};\nexports.isTripleStateSorting = isTripleStateSorting;\nvar isMultipleSorting = function (sortingMode) {\n return sortingMode === enums_1.SortingMode.MultipleTripleStateRemote\n || sortingMode === enums_1.SortingMode.MultipleRemote;\n};\nexports.isMultipleSorting = isMultipleSorting;\nvar isRemoteSorting = function (sortingMode) {\n return sortingMode === enums_1.SortingMode.SingleRemote\n || sortingMode === enums_1.SortingMode.MultipleTripleStateRemote\n || sortingMode === enums_1.SortingMode.SingleTripleStateRemote\n || sortingMode === enums_1.SortingMode.MultipleRemote;\n};\nexports.isRemoteSorting = isRemoteSorting;\nvar isSortingEnabled = function (sortingMode, column) {\n return sortingMode !== enums_1.SortingMode.None && (column === null || column === void 0 ? void 0 : column.isSortable) !== false;\n};\nexports.isSortingEnabled = isSortingEnabled;\n","\"use strict\";\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getTreeData = exports.restoreFilteredData = exports.getTreeGroupChain = exports.getExpandedParents = exports.treeDataMark = exports.treeGroupMark = void 0;\nvar DataUtils_1 = require(\"./DataUtils\");\nexports.treeGroupMark = {};\nexports.treeDataMark = {};\nvar getExpandedParents = function (treeData, rowKeyField) {\n return treeData\n .filter(function (item) { return item.treeGroupMark === exports.treeGroupMark; })\n .map(function (item) { return (0, DataUtils_1.getValueByField)(item.rowData, rowKeyField); });\n};\nexports.getExpandedParents = getExpandedParents;\nvar getItemStructure = function (item, dataHash, rowKeyField, treeDeep) {\n if (treeDeep === void 0) { treeDeep = 0; }\n var children = dataHash[(0, DataUtils_1.getValueByField)(item, rowKeyField)];\n if (!children) {\n return [{ treeDataMark: exports.treeDataMark, rowData: item, treeDeep: treeDeep + 1 }];\n }\n var result = [{ treeGroupMark: exports.treeGroupMark, rowData: item, treeDeep: treeDeep }];\n children.forEach(function (c) {\n var childrenData = getItemStructure(c, dataHash, rowKeyField, treeDeep + 1);\n result.push.apply(result, childrenData);\n });\n return result;\n};\nvar getTreeGroupChain = function (keyValue, dataMap, treeGroupKeyField, treeGroupKeyValues, groupChain) {\n if (groupChain === void 0) { groupChain = []; }\n var value = dataMap[keyValue];\n var chain = groupChain;\n if (!treeGroupKeyValues.includes(keyValue)) {\n treeGroupKeyValues.push(keyValue);\n chain = __spreadArray(__spreadArray([], groupChain, true), [value], false);\n }\n var treeGroupKeyValue = (0, DataUtils_1.getValueByField)(value, treeGroupKeyField);\n if (treeGroupKeyValue) {\n return (0, exports.getTreeGroupChain)(treeGroupKeyValue, dataMap, treeGroupKeyField, treeGroupKeyValues, chain);\n }\n return chain;\n};\nexports.getTreeGroupChain = getTreeGroupChain;\nvar restoreFilteredData = function (_a) {\n var data = _a.data, originalData = _a.originalData, rowKeyField = _a.rowKeyField, treeGroupKeyField = _a.treeGroupKeyField, treeGroupsExpanded = _a.treeGroupsExpanded;\n var filteredData = [];\n var treeGroupKeyValues = data.map(function (d) { return (0, DataUtils_1.getValueByField)(d, rowKeyField); });\n var dataMap = originalData.reduce(function (acc, d) {\n acc[(0, DataUtils_1.getValueByField)(d, rowKeyField)] = d;\n return acc;\n }, {});\n data.forEach(function (d) {\n var treeGroupKeyValue = (0, DataUtils_1.getValueByField)(d, treeGroupKeyField);\n if (treeGroupKeyValues.includes(treeGroupKeyValue) || !treeGroupKeyValue) {\n filteredData.push(d);\n }\n else {\n var groupsChain = (0, exports.getTreeGroupChain)(treeGroupKeyValue, dataMap, treeGroupKeyField, treeGroupKeyValues);\n filteredData = __spreadArray(__spreadArray(__spreadArray([], filteredData, true), groupsChain, true), [d], false);\n }\n });\n return filteredData;\n};\nexports.restoreFilteredData = restoreFilteredData;\nvar getDataHashAndRootElements = function (_a) {\n var data = _a.data, treeGroupKeyField = _a.treeGroupKeyField, treeGroupsExpanded = _a.treeGroupsExpanded;\n var dataHash = {};\n var rootElements = [];\n data.forEach(function (d) {\n var _a;\n var parentRowKeyValue = (_a = (0, DataUtils_1.getValueByField)(d, treeGroupKeyField)) !== null && _a !== void 0 ? _a : undefined;\n if (!parentRowKeyValue) {\n rootElements.push(d);\n return;\n }\n if (!dataHash[parentRowKeyValue]) {\n dataHash[parentRowKeyValue] = [];\n }\n if (!treeGroupsExpanded || treeGroupsExpanded.includes(parentRowKeyValue)) {\n dataHash[parentRowKeyValue].push(d);\n }\n });\n return { dataHash: dataHash, rootElements: rootElements };\n};\nvar getTreeData = function (_a) {\n var data = _a.data, originalData = _a.originalData, rowKeyField = _a.rowKeyField, treeGroupKeyField = _a.treeGroupKeyField, treeGroupsExpanded = _a.treeGroupsExpanded;\n if (data.length !== originalData.length) {\n data = (0, exports.restoreFilteredData)({\n data: data,\n originalData: originalData,\n rowKeyField: rowKeyField,\n treeGroupKeyField: treeGroupKeyField,\n treeGroupsExpanded: treeGroupsExpanded\n });\n }\n var _b = getDataHashAndRootElements({\n data: data,\n treeGroupKeyField: treeGroupKeyField,\n treeGroupsExpanded: treeGroupsExpanded\n }), dataHash = _b.dataHash, rootElements = _b.rootElements;\n var newData = [];\n rootElements.forEach(function (d) {\n newData.push.apply(newData, getItemStructure(d, dataHash, rowKeyField));\n });\n return newData;\n};\nexports.getTreeData = getTreeData;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getValidationValue = void 0;\nvar getValidationValue = function (value, rowData, column, validation) {\n if (validation) {\n return validation({ value: value, rowData: rowData, column: column });\n }\n return undefined;\n};\nexports.getValidationValue = getValidationValue;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getVirtualized = exports.isVirtualScrollingEnabled = void 0;\nvar DataUtils_1 = require(\"./DataUtils\");\nvar isVirtualScrollingEnabled = function (virtualScrolling) {\n return virtualScrolling && virtualScrolling.enabled !== false;\n};\nexports.isVirtualScrollingEnabled = isVirtualScrollingEnabled;\nvar getVirtualized = function (virtualScrolling, data, isNewRowShown, oddEvenRows) {\n var virtualizedData = [];\n var _a = virtualScrolling.scrollTop, scrollTop = _a === void 0 ? 0 : _a, _b = virtualScrolling.bottomInvisibleCount, bottomInvisibleCount = _b === void 0 ? 5 : _b, _c = virtualScrolling.topInvisibleCount, topInvisibleCount = _c === void 0 ? 0 : _c;\n var _d = virtualScrolling.tbodyHeight, tbodyHeight = _d === void 0 ? 600 : _d;\n var beginHeight = 0;\n var endHeight = 0;\n data.reduce(function (acc, value) {\n var itemHeight = virtualScrolling.itemHeight ?\n (typeof virtualScrolling.itemHeight === 'number'\n ? virtualScrolling.itemHeight\n : virtualScrolling.itemHeight(value))\n : 40;\n var topInvisibleHeight = (itemHeight * topInvisibleCount);\n if (acc >= scrollTop - itemHeight - topInvisibleHeight) {\n if (tbodyHeight + topInvisibleHeight >= -(itemHeight * bottomInvisibleCount)) {\n tbodyHeight = tbodyHeight - itemHeight;\n virtualizedData.push(value);\n }\n else {\n endHeight += itemHeight;\n }\n }\n else {\n beginHeight = acc;\n if (!isNewRowShown) {\n beginHeight += itemHeight;\n }\n }\n return acc + itemHeight;\n }, 0);\n return {\n beginHeight: beginHeight,\n endHeight: endHeight,\n virtualizedData: virtualizedData,\n isFirstVisibleRowOdd: oddEvenRows\n ? (0, DataUtils_1.checkIndexOdd)(data === null || data === void 0 ? void 0 : data.indexOf(virtualizedData[0]))\n : undefined\n };\n};\nexports.getVirtualized = getVirtualized;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.hideColumn = exports.showColumn = exports.moveColumnToIndex = exports.insertColumn = exports.moveColumnBefore = exports.reorderColumns = exports.reorderRows = exports.resizeColumn = exports.updatePagesCount = exports.updatePageSize = exports.updatePageIndex = exports.updateRow = exports.saveRowEditors = exports.closeRowEditors = exports.openRowEditors = exports.saveNewRow = exports.hideDetailsRow = exports.showDetailsRow = exports.hideNewRow = exports.showNewRow = exports.hideLoading = exports.showLoading = exports.updateData = exports.updateGroupsExpanded = exports.selectRowsRange = exports.selectRows = exports.selectRow = exports.selectSingleRow = exports.selectAllVisibleRows = exports.selectAllFilteredRows = exports.selectAllRows = exports.search = exports.openEditor = exports.deselectRows = exports.deselectRow = exports.deselectAllVisibleRows = exports.deselectAllFilteredRows = exports.deselectAllRows = exports.deleteRow = exports.closeEditor = exports.updateSortDirection = exports.updateCellValue = exports.updateEditorValue = exports.clearAllFilters = exports.updateFilterRowOperator = exports.updateHeaderFilterSearchValue = exports.updateFilterRowValue = exports.updateHeaderFilterPopupState = exports.updatePopupPosition = exports.updateHeaderFilterValues = void 0;\nexports.ungroupColumn = exports.groupColumn = exports.insertRow = exports.saveAllEditors = exports.openAllEditors = exports.validate = exports.updateTreeGroupsExpanded = exports.moveFocusedDown = exports.moveFocusedUp = exports.moveFocusedLeft = exports.moveFocusedRight = exports.setFocused = exports.clearFocused = exports.setSingleAction = exports.clearSingleAction = exports.loadData = void 0;\nvar enums_1 = require(\"./enums\");\nvar updateHeaderFilterValues = function (columnKey, item, checked) { return ({\n columnKey: columnKey,\n checked: checked,\n item: item,\n type: enums_1.ActionType.UpdateHeaderFilterValues\n}); };\nexports.updateHeaderFilterValues = updateHeaderFilterValues;\nvar updatePopupPosition = function (popupPosition) { return ({\n popupPosition: popupPosition,\n type: enums_1.ActionType.UpdatePopupPosition\n}); };\nexports.updatePopupPosition = updatePopupPosition;\nvar updateHeaderFilterPopupState = function (columnKey, isHeaderFilterPopupShown) { return ({\n columnKey: columnKey,\n isHeaderFilterPopupShown: isHeaderFilterPopupShown,\n type: enums_1.ActionType.UpdateHeaderFilterPopupState\n}); };\nexports.updateHeaderFilterPopupState = updateHeaderFilterPopupState;\nvar updateFilterRowValue = function (columnKey, filterRowValue) { return ({\n columnKey: columnKey,\n filterRowValue: filterRowValue,\n type: enums_1.ActionType.UpdateFilterRowValue,\n}); };\nexports.updateFilterRowValue = updateFilterRowValue;\nvar updateHeaderFilterSearchValue = function (columnKey, headerFilterSearchValue) { return ({\n columnKey: columnKey,\n headerFilterSearchValue: headerFilterSearchValue,\n type: enums_1.ActionType.UpdateHeaderFilterSearchValue,\n}); };\nexports.updateHeaderFilterSearchValue = updateHeaderFilterSearchValue;\nvar updateFilterRowOperator = function (columnKey, filterRowOperator) { return ({\n columnKey: columnKey,\n filterRowOperator: filterRowOperator,\n type: enums_1.ActionType.UpdateFilterRowOperator,\n}); };\nexports.updateFilterRowOperator = updateFilterRowOperator;\nvar clearAllFilters = function () { return ({\n type: enums_1.ActionType.ClearAllFilters,\n}); };\nexports.clearAllFilters = clearAllFilters;\nvar updateEditorValue = function (rowKeyValue, columnKey, value) { return ({\n columnKey: columnKey,\n rowKeyValue: rowKeyValue,\n type: enums_1.ActionType.UpdateEditorValue,\n value: value\n}); };\nexports.updateEditorValue = updateEditorValue;\nvar updateCellValue = function (rowKeyValue, columnKey, value) { return ({\n columnKey: columnKey,\n rowKeyValue: rowKeyValue,\n type: enums_1.ActionType.UpdateCellValue,\n value: value\n}); };\nexports.updateCellValue = updateCellValue;\nvar updateSortDirection = function (columnKey) { return ({\n columnKey: columnKey,\n type: enums_1.ActionType.UpdateSortDirection,\n}); };\nexports.updateSortDirection = updateSortDirection;\nvar closeEditor = function (rowKeyValue, columnKey) { return ({\n columnKey: columnKey,\n rowKeyValue: rowKeyValue,\n type: enums_1.ActionType.CloseEditor,\n}); };\nexports.closeEditor = closeEditor;\nvar deleteRow = function (rowKeyValue) { return ({\n rowKeyValue: rowKeyValue,\n type: enums_1.ActionType.DeleteRow,\n}); };\nexports.deleteRow = deleteRow;\nvar deselectAllRows = function () { return ({\n type: enums_1.ActionType.DeselectAllRows,\n}); };\nexports.deselectAllRows = deselectAllRows;\nvar deselectAllFilteredRows = function () { return ({\n type: enums_1.ActionType.DeselectAllFilteredRows,\n}); };\nexports.deselectAllFilteredRows = deselectAllFilteredRows;\nvar deselectAllVisibleRows = function () { return ({\n type: enums_1.ActionType.DeselectAllVisibleRows,\n}); };\nexports.deselectAllVisibleRows = deselectAllVisibleRows;\nvar deselectRow = function (rowKeyValue) { return ({\n rowKeyValue: rowKeyValue,\n type: enums_1.ActionType.DeselectRow,\n}); };\nexports.deselectRow = deselectRow;\nvar deselectRows = function (rowsKeyValues) { return ({\n rowsKeyValues: rowsKeyValues,\n type: enums_1.ActionType.DeselectRows,\n}); };\nexports.deselectRows = deselectRows;\nvar openEditor = function (rowKeyValue, columnKey) { return ({\n columnKey: columnKey,\n rowKeyValue: rowKeyValue,\n type: enums_1.ActionType.OpenEditor,\n}); };\nexports.openEditor = openEditor;\nvar search = function (searchText) { return ({\n searchText: searchText,\n type: enums_1.ActionType.Search,\n}); };\nexports.search = search;\nvar selectAllRows = function () { return ({\n type: enums_1.ActionType.SelectAllRows,\n}); };\nexports.selectAllRows = selectAllRows;\nvar selectAllFilteredRows = function () { return ({\n type: enums_1.ActionType.SelectAllFilteredRows,\n}); };\nexports.selectAllFilteredRows = selectAllFilteredRows;\nvar selectAllVisibleRows = function () { return ({\n type: enums_1.ActionType.SelectAllVisibleRows,\n}); };\nexports.selectAllVisibleRows = selectAllVisibleRows;\nvar selectSingleRow = function (rowKeyValue) { return ({\n rowKeyValue: rowKeyValue,\n type: enums_1.ActionType.SelectSingleRow,\n}); };\nexports.selectSingleRow = selectSingleRow;\nvar selectRow = function (rowKeyValue) { return ({\n rowKeyValue: rowKeyValue,\n type: enums_1.ActionType.SelectRow,\n}); };\nexports.selectRow = selectRow;\nvar selectRows = function (rowsKeyValues) { return ({\n rowsKeyValues: rowsKeyValues,\n type: enums_1.ActionType.SelectRows,\n}); };\nexports.selectRows = selectRows;\nvar selectRowsRange = function (rowKeyValueFrom, rowKeyValueTo) { return ({\n rowKeyValueFrom: rowKeyValueFrom,\n rowKeyValueTo: rowKeyValueTo,\n type: enums_1.ActionType.SelectRowsRange,\n}); };\nexports.selectRowsRange = selectRowsRange;\nvar updateGroupsExpanded = function (groupKey) { return ({\n groupKey: groupKey,\n type: enums_1.ActionType.UpdateGroupsExpanded,\n}); };\nexports.updateGroupsExpanded = updateGroupsExpanded;\nvar updateData = function (data) { return ({\n data: data,\n type: enums_1.ActionType.UpdateData,\n}); };\nexports.updateData = updateData;\nvar showLoading = function (text) { return ({\n text: text,\n type: enums_1.ActionType.ShowLoading,\n}); };\nexports.showLoading = showLoading;\nvar hideLoading = function () { return ({\n type: enums_1.ActionType.HideLoading,\n}); };\nexports.hideLoading = hideLoading;\nvar showNewRow = function () { return ({\n type: enums_1.ActionType.ShowNewRow,\n}); };\nexports.showNewRow = showNewRow;\nvar hideNewRow = function () { return ({\n type: enums_1.ActionType.HideNewRow,\n}); };\nexports.hideNewRow = hideNewRow;\nvar showDetailsRow = function (rowKeyValue) { return ({\n rowKeyValue: rowKeyValue,\n type: enums_1.ActionType.ShowDetailsRow,\n}); };\nexports.showDetailsRow = showDetailsRow;\nvar hideDetailsRow = function (rowKeyValue) { return ({\n rowKeyValue: rowKeyValue,\n type: enums_1.ActionType.HideDetailsRow,\n}); };\nexports.hideDetailsRow = hideDetailsRow;\nvar saveNewRow = function (rowKeyValue, settings) { return ({\n rowKeyValue: rowKeyValue,\n validate: settings && settings.validate,\n type: enums_1.ActionType.SaveNewRow,\n}); };\nexports.saveNewRow = saveNewRow;\nvar openRowEditors = function (rowKeyValue) { return ({\n rowKeyValue: rowKeyValue,\n type: enums_1.ActionType.OpenRowEditors,\n}); };\nexports.openRowEditors = openRowEditors;\nvar closeRowEditors = function (rowKeyValue) { return ({\n rowKeyValue: rowKeyValue,\n type: enums_1.ActionType.CloseRowEditors,\n}); };\nexports.closeRowEditors = closeRowEditors;\nvar saveRowEditors = function (rowKeyValue, settings) { return ({\n rowKeyValue: rowKeyValue,\n validate: settings && settings.validate,\n type: enums_1.ActionType.SaveRowEditors,\n}); };\nexports.saveRowEditors = saveRowEditors;\nvar updateRow = function (rowData) {\n return {\n type: enums_1.ActionType.UpdateRow,\n rowData: rowData,\n };\n};\nexports.updateRow = updateRow;\nvar updatePageIndex = function (pageIndex) { return ({\n pageIndex: pageIndex,\n type: enums_1.ActionType.UpdatePageIndex,\n}); };\nexports.updatePageIndex = updatePageIndex;\nvar updatePageSize = function (pageSize) { return ({\n pageSize: pageSize,\n type: enums_1.ActionType.UpdatePageSize,\n}); };\nexports.updatePageSize = updatePageSize;\nvar updatePagesCount = function (pagesCount) { return ({\n pagesCount: pagesCount,\n type: enums_1.ActionType.UpdatePagesCount,\n}); };\nexports.updatePagesCount = updatePagesCount;\nvar resizeColumn = function (columnKey, width) { return ({\n type: enums_1.ActionType.ResizeColumn,\n columnKey: columnKey,\n width: width,\n}); };\nexports.resizeColumn = resizeColumn;\nvar reorderRows = function (rowKeyValue, targetRowKeyValue) { return ({\n type: enums_1.ActionType.ReorderRows,\n rowKeyValue: rowKeyValue,\n targetRowKeyValue: targetRowKeyValue,\n}); };\nexports.reorderRows = reorderRows;\nvar reorderColumns = function (columnKey, targetColumnKey) { return ({\n type: enums_1.ActionType.ReorderColumns,\n columnKey: columnKey,\n targetColumnKey: targetColumnKey,\n}); };\nexports.reorderColumns = reorderColumns;\nvar moveColumnBefore = function (columnKey, targetColumnKey) { return ({\n type: enums_1.ActionType.MoveColumnBefore,\n columnKey: columnKey,\n targetColumnKey: targetColumnKey\n}); };\nexports.moveColumnBefore = moveColumnBefore;\nvar insertColumn = function (column, index) { return ({\n type: enums_1.ActionType.InsertColumn,\n column: column,\n index: index\n}); };\nexports.insertColumn = insertColumn;\nvar moveColumnToIndex = function (columnKey, index) { return ({\n type: enums_1.ActionType.MoveColumnToIndex,\n columnKey: columnKey,\n index: index,\n}); };\nexports.moveColumnToIndex = moveColumnToIndex;\nvar showColumn = function (columnKey) { return ({\n columnKey: columnKey,\n type: enums_1.ActionType.ShowColumn,\n}); };\nexports.showColumn = showColumn;\nvar hideColumn = function (columnKey) { return ({\n columnKey: columnKey,\n type: enums_1.ActionType.HideColumn,\n}); };\nexports.hideColumn = hideColumn;\nvar loadData = function () { return ({\n type: enums_1.ActionType.LoadData\n}); };\nexports.loadData = loadData;\nvar clearSingleAction = function () { return ({\n type: enums_1.ActionType.ClearSingleAction\n}); };\nexports.clearSingleAction = clearSingleAction;\nvar setSingleAction = function (singleAction) { return ({\n singleAction: singleAction,\n type: enums_1.ActionType.SetSingleAction\n}); };\nexports.setSingleAction = setSingleAction;\nvar clearFocused = function () { return ({\n type: enums_1.ActionType.ClearFocused\n}); };\nexports.clearFocused = clearFocused;\nvar setFocused = function (focused) { return ({\n focused: focused,\n type: enums_1.ActionType.SetFocused\n}); };\nexports.setFocused = setFocused;\nvar moveFocusedRight = function (settings) { return ({\n settings: settings,\n type: enums_1.ActionType.MoveFocusedRight\n}); };\nexports.moveFocusedRight = moveFocusedRight;\nvar moveFocusedLeft = function (settings) { return ({\n settings: settings,\n type: enums_1.ActionType.MoveFocusedLeft\n}); };\nexports.moveFocusedLeft = moveFocusedLeft;\nvar moveFocusedUp = function (settings) { return ({\n settings: settings,\n type: enums_1.ActionType.MoveFocusedUp\n}); };\nexports.moveFocusedUp = moveFocusedUp;\nvar moveFocusedDown = function (settings) { return ({\n settings: settings,\n type: enums_1.ActionType.MoveFocusedDown\n}); };\nexports.moveFocusedDown = moveFocusedDown;\nvar updateTreeGroupsExpanded = function (rowKeyValue) { return ({\n rowKeyValue: rowKeyValue,\n type: enums_1.ActionType.UpdateTreeGroupsExpanded,\n}); };\nexports.updateTreeGroupsExpanded = updateTreeGroupsExpanded;\nvar validate = function () { return ({\n type: enums_1.ActionType.Validate,\n}); };\nexports.validate = validate;\nvar openAllEditors = function () { return ({\n type: enums_1.ActionType.OpenAllEditors,\n}); };\nexports.openAllEditors = openAllEditors;\nvar saveAllEditors = function () { return ({\n type: enums_1.ActionType.SaveAllEditors\n}); };\nexports.saveAllEditors = saveAllEditors;\nvar insertRow = function (rowData, options) { return ({\n rowData: rowData,\n options: options,\n type: enums_1.ActionType.InsertRow\n}); };\nexports.insertRow = insertRow;\nvar groupColumn = function (columnKey) { return ({\n columnKey: columnKey,\n type: enums_1.ActionType.GroupColumn\n}); };\nexports.groupColumn = groupColumn;\nvar ungroupColumn = function (columnKey) { return ({\n columnKey: columnKey,\n type: enums_1.ActionType.UngroupColumn\n}); };\nexports.ungroupColumn = ungroupColumn;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.newRowId = void 0;\nexports.newRowId = {};\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar enums_1 = require(\"./enums\");\nvar CssClasses_1 = require(\"./Models/CssClasses\");\nvar DefaultOptions = /** @class */ (function () {\n function DefaultOptions() {\n this.columnDataType = enums_1.DataType.String;\n this.columnSortDirection = enums_1.SortDirection.Ascend;\n this.css = new CssClasses_1.CssClasses();\n this.fieldDelimiter = '.';\n }\n return DefaultOptions;\n}());\nvar defaultOptions = new DefaultOptions();\nexports.default = defaultOptions;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.InsertRowPosition = exports.FilterOperatorName = exports.FilteringMode = exports.SortingMode = exports.SortDirection = exports.KeyboardEnum = exports.ActionType = exports.EditingMode = exports.DataType = exports.PagingPosition = void 0;\nvar PagingPosition;\n(function (PagingPosition) {\n PagingPosition[\"Bottom\"] = \"bottom\";\n PagingPosition[\"Top\"] = \"top\";\n PagingPosition[\"TopAndBottom\"] = \"topAndBottom\";\n})(PagingPosition = exports.PagingPosition || (exports.PagingPosition = {}));\nvar DataType;\n(function (DataType) {\n // eslint-disable-next-line\n DataType[\"Boolean\"] = \"boolean\";\n DataType[\"Date\"] = \"date\";\n // eslint-disable-next-line\n DataType[\"Number\"] = \"number\";\n DataType[\"Object\"] = \"object\";\n // eslint-disable-next-line\n DataType[\"String\"] = \"string\";\n})(DataType = exports.DataType || (exports.DataType = {}));\nvar EditingMode;\n(function (EditingMode) {\n EditingMode[\"None\"] = \"none\";\n EditingMode[\"Cell\"] = \"cell\";\n})(EditingMode = exports.EditingMode || (exports.EditingMode = {}));\nvar ActionType;\n(function (ActionType) {\n ActionType[\"ClearAllFilters\"] = \"ClearAllFilters\";\n ActionType[\"ClearFocused\"] = \"ClearFocused\";\n ActionType[\"ClearSingleAction\"] = \"ClearSingleAction\";\n ActionType[\"CloseEditor\"] = \"CloseEditor\";\n ActionType[\"CloseRowEditors\"] = \"CloseRowEditors\";\n ActionType[\"ComponentDidMount\"] = \"ComponentDidMount\";\n ActionType[\"DeleteRow\"] = \"DeleteRow\";\n ActionType[\"DeselectAllFilteredRows\"] = \"DeselectAllFilteredRows\";\n ActionType[\"DeselectAllRows\"] = \"DeselectAllRows\";\n ActionType[\"DeselectAllVisibleRows\"] = \"DeselectAllVisibleRows\";\n ActionType[\"DeselectRow\"] = \"DeselectRow\";\n ActionType[\"DeselectRows\"] = \"DeselectRows\";\n ActionType[\"GroupColumn\"] = \"GroupColumn\";\n ActionType[\"HideColumn\"] = \"HideColumn\";\n ActionType[\"HideDetailsRow\"] = \"HideDetailsRow\";\n ActionType[\"HideLoading\"] = \"HideLoading\";\n ActionType[\"HideNewRow\"] = \"HideNewRow\";\n ActionType[\"InsertRow\"] = \"InsertRow\";\n ActionType[\"LoadData\"] = \"LoadData\";\n ActionType[\"InsertColumn\"] = \"InsertColumn\";\n ActionType[\"MoveColumnBefore\"] = \"MoveColumnBefore\";\n ActionType[\"MoveColumnToIndex\"] = \"MoveColumnToIndex\";\n ActionType[\"MoveFocusedDown\"] = \"MoveFocusedDown\";\n ActionType[\"MoveFocusedLeft\"] = \"MoveFocusedLeft\";\n ActionType[\"MoveFocusedRight\"] = \"MoveFocusedRight\";\n ActionType[\"MoveFocusedUp\"] = \"MoveFocusedUp\";\n ActionType[\"OpenAllEditors\"] = \"OpenAllEditors\";\n ActionType[\"OpenEditor\"] = \"OpenEditor\";\n ActionType[\"OpenRowEditors\"] = \"OpenRowEditors\";\n ActionType[\"ReorderColumns\"] = \"ReorderColumns\";\n ActionType[\"ReorderRows\"] = \"ReorderRows\";\n ActionType[\"ResizeColumn\"] = \"ResizeColumn\";\n ActionType[\"SaveAllEditors\"] = \"SaveAllEditors\";\n ActionType[\"SaveNewRow\"] = \"SaveNewRow\";\n ActionType[\"SaveRowEditors\"] = \"SaveRowEditors\";\n ActionType[\"ScrollTable\"] = \"ScrollTable\";\n ActionType[\"Search\"] = \"Search\";\n ActionType[\"SelectAllFilteredRows\"] = \"SelectAllFilteredRows\";\n ActionType[\"SelectAllRows\"] = \"SelectAllRows\";\n ActionType[\"SelectAllVisibleRows\"] = \"SelectAllVisibleRows\";\n ActionType[\"SelectRow\"] = \"SelectRow\";\n ActionType[\"SelectRows\"] = \"SelectRows\";\n ActionType[\"SelectRowsRange\"] = \"SelectRowsRange\";\n ActionType[\"SelectSingleRow\"] = \"SelectSingleRow\";\n ActionType[\"SetFocused\"] = \"SetFocused\";\n ActionType[\"SetSingleAction\"] = \"SetSingleAction\";\n ActionType[\"ShowColumn\"] = \"ShowColumn\";\n ActionType[\"ShowDetailsRow\"] = \"ShowDetailsRow\";\n ActionType[\"ShowLoading\"] = \"ShowLoading\";\n ActionType[\"ShowNewRow\"] = \"ShowNewRow\";\n ActionType[\"UngroupColumn\"] = \"UngroupColumn\";\n ActionType[\"UpdateCellValue\"] = \"UpdateCellValue\";\n ActionType[\"UpdateData\"] = \"UpdateData\";\n ActionType[\"UpdateEditorValue\"] = \"UpdateEditorValue\";\n ActionType[\"UpdateFilterRowOperator\"] = \"UpdateFilterRowOperator\";\n ActionType[\"UpdateFilterRowValue\"] = \"UpdateFilterRowValue\";\n ActionType[\"UpdateGroupsExpanded\"] = \"UpdateGroupsExpanded\";\n ActionType[\"UpdateHeaderFilterSearchValue\"] = \"UpdateHeaderFilterSearchValue\";\n ActionType[\"UpdateHeaderFilterValues\"] = \"UpdateHeaderFilterValues\";\n ActionType[\"UpdateHeaderFilterPopupState\"] = \"UpdateHeaderFilterPopupState\";\n ActionType[\"UpdatePopupPosition\"] = \"UpdatePopupPosition\";\n ActionType[\"UpdatePageIndex\"] = \"UpdatePageIndex\";\n ActionType[\"UpdatePageSize\"] = \"UpdatePageSize\";\n ActionType[\"UpdatePagesCount\"] = \"UpdatePagesCount\";\n ActionType[\"UpdateRow\"] = \"UpdateRow\";\n ActionType[\"UpdateSortDirection\"] = \"UpdateSortDirection\";\n ActionType[\"UpdateTreeGroupsExpanded\"] = \"UpdateTreeGroupsExpanded\";\n ActionType[\"UpdateVirtualScrolling\"] = \"UpdateVirtualScrolling\";\n ActionType[\"Validate\"] = \"Validate\";\n})(ActionType = exports.ActionType || (exports.ActionType = {}));\nvar KeyboardEnum;\n(function (KeyboardEnum) {\n KeyboardEnum[KeyboardEnum[\"Esc\"] = 27] = \"Esc\";\n KeyboardEnum[KeyboardEnum[\"Enter\"] = 13] = \"Enter\";\n})(KeyboardEnum = exports.KeyboardEnum || (exports.KeyboardEnum = {}));\nvar SortDirection;\n(function (SortDirection) {\n SortDirection[\"Ascend\"] = \"ascend\";\n SortDirection[\"Descend\"] = \"descend\";\n})(SortDirection = exports.SortDirection || (exports.SortDirection = {}));\nvar SortingMode;\n(function (SortingMode) {\n SortingMode[\"None\"] = \"none\";\n SortingMode[\"Single\"] = \"single\";\n SortingMode[\"SingleTripleState\"] = \"singleTripleState\";\n SortingMode[\"SingleRemote\"] = \"singleRemote\";\n SortingMode[\"SingleTripleStateRemote\"] = \"singleTripleStateRemote\";\n SortingMode[\"MultipleRemote\"] = \"multipleRemote\";\n SortingMode[\"MultipleTripleStateRemote\"] = \"multipleTripleStateRemote\";\n})(SortingMode = exports.SortingMode || (exports.SortingMode = {}));\nvar FilteringMode;\n(function (FilteringMode) {\n FilteringMode[\"None\"] = \"none\";\n FilteringMode[\"FilterRow\"] = \"filterRow\";\n FilteringMode[\"HeaderFilter\"] = \"headerFilter\";\n FilteringMode[\"FilterRowAndHeaderFilter\"] = \"filterRowAndHeaderFilter\";\n})(FilteringMode = exports.FilteringMode || (exports.FilteringMode = {}));\nvar FilterOperatorName;\n(function (FilterOperatorName) {\n FilterOperatorName[\"Equal\"] = \"=\";\n FilterOperatorName[\"IsNotEqual\"] = \"!=\";\n FilterOperatorName[\"MoreThan\"] = \">\";\n FilterOperatorName[\"LessThan\"] = \"<\";\n FilterOperatorName[\"MoreThanOrEqual\"] = \">=\";\n FilterOperatorName[\"LessThanOrEqual\"] = \"<=\";\n FilterOperatorName[\"Contains\"] = \"contains\";\n FilterOperatorName[\"IsEmpty\"] = \"IsEmpty\";\n FilterOperatorName[\"IsNotEmpty\"] = \"IsNotEmpty\";\n})(FilterOperatorName = exports.FilterOperatorName || (exports.FilterOperatorName = {}));\nvar InsertRowPosition;\n(function (InsertRowPosition) {\n InsertRowPosition[\"before\"] = \"before\";\n InsertRowPosition[\"after\"] = \"after\";\n})(InsertRowPosition = exports.InsertRowPosition || (exports.InsertRowPosition = {}));\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useOuterClick = void 0;\nvar react_1 = __importDefault(require(\"react\"));\nvar useOuterClick = function (callback) {\n var callbackRef = react_1.default.useRef(function (event) { });\n var innerRef = react_1.default.useRef(document.createElement('div'));\n react_1.default.useEffect(function () {\n callbackRef.current = callback;\n });\n react_1.default.useEffect(function () {\n var handleClick = function (event) {\n if (innerRef.current && callbackRef.current &&\n !innerRef.current.contains(event.target))\n callbackRef.current(event);\n };\n document.addEventListener('click', handleClick);\n return function () { return document.removeEventListener('click', handleClick); };\n }, []);\n return innerRef;\n};\nexports.useOuterClick = useOuterClick;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useTable = exports.getTable = void 0;\nvar actionCreators = __importStar(require(\"../actionCreators\"));\nvar getTable = function (options) {\n var _a = options || {}, changeProps = _a.changeProps, onDispatch = _a.onDispatch, customReducer = _a.customReducer;\n var propsResult = {};\n return __assign(__assign({}, Object.keys(actionCreators).reduce(function (acc, key) {\n acc[key] = function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n this.dispatch((_a = actionCreators)[key].apply(_a, args));\n };\n return acc;\n }, {})), { props: propsResult, changeProps: changeProps || (function () { }), dispatch: function () { }, onDispatch: onDispatch || (function () { }), customReducer: customReducer });\n};\nexports.getTable = getTable;\nvar useTable = function (options) {\n return (0, exports.getTable)(options);\n};\nexports.useTable = useTable;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.useTableInstance = void 0;\nvar TableUncontrolled_1 = require(\"../Components/TableUncontrolled/TableUncontrolled\");\nvar react_1 = require(\"react\");\nvar useTableInstance = function () {\n var context = (0, react_1.useContext)(TableUncontrolled_1.TableInstanceContext);\n if (!(context === null || context === void 0 ? void 0 : context.changeProps)) {\n // eslint-disable-next-line\n console.warn('useTableInstance warning: ka-table is not initialized, instanse is empty because: table is not rendered yet OR controlled mode is used');\n }\n return context;\n};\nexports.useTableInstance = useTableInstance;\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __exportStar = (this && this.__exportStar) || function(m, exports) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\n__exportStar(require(\"./Components/Table/Table\"), exports);\n__exportStar(require(\"./Reducers/kaReducer\"), exports);\n__exportStar(require(\"./hooks/UseTable\"), exports);\n__exportStar(require(\"./enums\"), exports);\n__exportStar(require(\"./hooks/UseTableInstance\"), exports);\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.kaPagingUtils = exports.kaPropsUtils = exports.kaDateUtils = exports.kaColumnUtils = void 0;\nvar kaColumnUtils = __importStar(require(\"./Utils/ColumnUtils\"));\nexports.kaColumnUtils = kaColumnUtils;\nvar kaDateUtils = __importStar(require(\"./Utils/DateUtils\"));\nexports.kaDateUtils = kaDateUtils;\nvar kaPagingUtils = __importStar(require(\"./Utils/PagingUtils\"));\nexports.kaPagingUtils = kaPagingUtils;\nvar kaPropsUtils = __importStar(require(\"./Utils/PropsUtils\"));\nexports.kaPropsUtils = kaPropsUtils;\n","var $b91590b2dc47de39$exports = {};\n$b91590b2dc47de39$exports = {\n \"breadcrumbs\": `\\u{639}\\u{646}\\u{627}\\u{635}\\u{631} \\u{627}\\u{644}\\u{648}\\u{627}\\u{62C}\\u{647}\\u{629}`\n};\n\n\nexport {$b91590b2dc47de39$exports as default};\n//# sourceMappingURL=ar-AE.module.js.map\n","var $55b0693b2cf3fe91$exports = {};\n$55b0693b2cf3fe91$exports = {\n \"breadcrumbs\": `\\u{422}\\u{440}\\u{43E}\\u{445}\\u{438} \\u{445}\\u{43B}\\u{44F}\\u{431}`\n};\n\n\nexport {$55b0693b2cf3fe91$exports as default};\n//# sourceMappingURL=bg-BG.module.js.map\n","var $6ec1ed7729e948cc$exports = {};\n$6ec1ed7729e948cc$exports = {\n \"breadcrumbs\": `Popis cesty`\n};\n\n\nexport {$6ec1ed7729e948cc$exports as default};\n//# sourceMappingURL=cs-CZ.module.js.map\n","var $5a41bb2baa6861e4$exports = {};\n$5a41bb2baa6861e4$exports = {\n \"breadcrumbs\": `Br\\xf8dkrummer`\n};\n\n\nexport {$5a41bb2baa6861e4$exports as default};\n//# sourceMappingURL=da-DK.module.js.map\n","var $f28bbea439e87eca$exports = {};\n$f28bbea439e87eca$exports = {\n \"breadcrumbs\": `Breadcrumbs`\n};\n\n\nexport {$f28bbea439e87eca$exports as default};\n//# sourceMappingURL=de-DE.module.js.map\n","var $b3eca51cb720961a$exports = {};\n$b3eca51cb720961a$exports = {\n \"breadcrumbs\": `\\u{3A0}\\u{3BB}\\u{3BF}\\u{3B7}\\u{3B3}\\u{3AE}\\u{3C3}\\u{3B5}\\u{3B9}\\u{3C2} breadcrumb`\n};\n\n\nexport {$b3eca51cb720961a$exports as default};\n//# sourceMappingURL=el-GR.module.js.map\n","var $0b39b205118db415$exports = {};\n$0b39b205118db415$exports = {\n \"breadcrumbs\": `Breadcrumbs`\n};\n\n\nexport {$0b39b205118db415$exports as default};\n//# sourceMappingURL=en-US.module.js.map\n","var $f467c0ee7bfb0950$exports = {};\n$f467c0ee7bfb0950$exports = {\n \"breadcrumbs\": `Migas de pan`\n};\n\n\nexport {$f467c0ee7bfb0950$exports as default};\n//# sourceMappingURL=es-ES.module.js.map\n","var $ab711d2ffb4cdf3d$exports = {};\n$ab711d2ffb4cdf3d$exports = {\n \"breadcrumbs\": `Lingiread`\n};\n\n\nexport {$ab711d2ffb4cdf3d$exports as default};\n//# sourceMappingURL=et-EE.module.js.map\n","var $b63105d663e6f9d5$exports = {};\n$b63105d663e6f9d5$exports = {\n \"breadcrumbs\": `Navigointilinkit`\n};\n\n\nexport {$b63105d663e6f9d5$exports as default};\n//# sourceMappingURL=fi-FI.module.js.map\n","var $9d2ed7be7fcdc2a1$exports = {};\n$9d2ed7be7fcdc2a1$exports = {\n \"breadcrumbs\": `Chemin de navigation`\n};\n\n\nexport {$9d2ed7be7fcdc2a1$exports as default};\n//# sourceMappingURL=fr-FR.module.js.map\n","var $c5704294d85c7b5d$exports = {};\n$c5704294d85c7b5d$exports = {\n \"breadcrumbs\": `\\u{5E9}\\u{5D1}\\u{5D9}\\u{5DC}\\u{5D9} \\u{5E0}\\u{5D9}\\u{5D5}\\u{5D5}\\u{5D8}`\n};\n\n\nexport {$c5704294d85c7b5d$exports as default};\n//# sourceMappingURL=he-IL.module.js.map\n","var $20c975671d6bbc63$exports = {};\n$20c975671d6bbc63$exports = {\n \"breadcrumbs\": `Navigacijski putovi`\n};\n\n\nexport {$20c975671d6bbc63$exports as default};\n//# sourceMappingURL=hr-HR.module.js.map\n","var $2569ca3917233115$exports = {};\n$2569ca3917233115$exports = {\n \"breadcrumbs\": `Morzsamen\\xfc`\n};\n\n\nexport {$2569ca3917233115$exports as default};\n//# sourceMappingURL=hu-HU.module.js.map\n","var $caa152f7f8e96c85$exports = {};\n$caa152f7f8e96c85$exports = {\n \"breadcrumbs\": `Breadcrumb`\n};\n\n\nexport {$caa152f7f8e96c85$exports as default};\n//# sourceMappingURL=it-IT.module.js.map\n","var $cbc6af0cc98fad10$exports = {};\n$cbc6af0cc98fad10$exports = {\n \"breadcrumbs\": `\\u{30D1}\\u{30F3}\\u{304F}\\u{305A}\\u{30EA}\\u{30B9}\\u{30C8}`\n};\n\n\nexport {$cbc6af0cc98fad10$exports as default};\n//# sourceMappingURL=ja-JP.module.js.map\n","var $ad9be5d332b4d607$exports = {};\n$ad9be5d332b4d607$exports = {\n \"breadcrumbs\": `\\u{D0D0}\\u{C0C9} \\u{D45C}\\u{C2DC}`\n};\n\n\nexport {$ad9be5d332b4d607$exports as default};\n//# sourceMappingURL=ko-KR.module.js.map\n","var $659de19a00ff9617$exports = {};\n$659de19a00ff9617$exports = {\n \"breadcrumbs\": `Nar\\u{161}ymo kelias`\n};\n\n\nexport {$659de19a00ff9617$exports as default};\n//# sourceMappingURL=lt-LT.module.js.map\n","var $173e9fb4d14fe309$exports = {};\n$173e9fb4d14fe309$exports = {\n \"breadcrumbs\": `Atpaka\\u{13C}ce\\u{13C}i`\n};\n\n\nexport {$173e9fb4d14fe309$exports as default};\n//# sourceMappingURL=lv-LV.module.js.map\n","var $d8e2640a066567a9$exports = {};\n$d8e2640a066567a9$exports = {\n \"breadcrumbs\": `Navigasjonsstier`\n};\n\n\nexport {$d8e2640a066567a9$exports as default};\n//# sourceMappingURL=nb-NO.module.js.map\n","var $d71fd764236c0d12$exports = {};\n$d71fd764236c0d12$exports = {\n \"breadcrumbs\": `Broodkruimels`\n};\n\n\nexport {$d71fd764236c0d12$exports as default};\n//# sourceMappingURL=nl-NL.module.js.map\n","var $f4ad3faf9f4aaec6$exports = {};\n$f4ad3faf9f4aaec6$exports = {\n \"breadcrumbs\": `Struktura nawigacyjna`\n};\n\n\nexport {$f4ad3faf9f4aaec6$exports as default};\n//# sourceMappingURL=pl-PL.module.js.map\n","var $9703be9d55d8e9c2$exports = {};\n$9703be9d55d8e9c2$exports = {\n \"breadcrumbs\": `Caminho detalhado`\n};\n\n\nexport {$9703be9d55d8e9c2$exports as default};\n//# sourceMappingURL=pt-BR.module.js.map\n","var $7e23baec8a14f309$exports = {};\n$7e23baec8a14f309$exports = {\n \"breadcrumbs\": `Categorias`\n};\n\n\nexport {$7e23baec8a14f309$exports as default};\n//# sourceMappingURL=pt-PT.module.js.map\n","var $568f95594049d56e$exports = {};\n$568f95594049d56e$exports = {\n \"breadcrumbs\": `Miez de p\\xe2ine`\n};\n\n\nexport {$568f95594049d56e$exports as default};\n//# sourceMappingURL=ro-RO.module.js.map\n","var $625df06cecc70764$exports = {};\n$625df06cecc70764$exports = {\n \"breadcrumbs\": `\\u{41D}\\u{430}\\u{432}\\u{438}\\u{433}\\u{430}\\u{446}\\u{438}\\u{44F}`\n};\n\n\nexport {$625df06cecc70764$exports as default};\n//# sourceMappingURL=ru-RU.module.js.map\n","var $b5a67525f3a2f594$exports = {};\n$b5a67525f3a2f594$exports = {\n \"breadcrumbs\": `Naviga\\u{10D}n\\xe9 prvky Breadcrumbs`\n};\n\n\nexport {$b5a67525f3a2f594$exports as default};\n//# sourceMappingURL=sk-SK.module.js.map\n","var $16125922964febca$exports = {};\n$16125922964febca$exports = {\n \"breadcrumbs\": `Drobtine`\n};\n\n\nexport {$16125922964febca$exports as default};\n//# sourceMappingURL=sl-SI.module.js.map\n","var $de104bf355206bcf$exports = {};\n$de104bf355206bcf$exports = {\n \"breadcrumbs\": `Putanje navigacije`\n};\n\n\nexport {$de104bf355206bcf$exports as default};\n//# sourceMappingURL=sr-SP.module.js.map\n","var $d5ab76bcbadc9c07$exports = {};\n$d5ab76bcbadc9c07$exports = {\n \"breadcrumbs\": `S\\xf6kv\\xe4gar`\n};\n\n\nexport {$d5ab76bcbadc9c07$exports as default};\n//# sourceMappingURL=sv-SE.module.js.map\n","var $a6a1af5968159b55$exports = {};\n$a6a1af5968159b55$exports = {\n \"breadcrumbs\": `\\u{130}\\xe7erik haritalar\\u{131}`\n};\n\n\nexport {$a6a1af5968159b55$exports as default};\n//# sourceMappingURL=tr-TR.module.js.map\n","var $5204a30f0d17ffec$exports = {};\n$5204a30f0d17ffec$exports = {\n \"breadcrumbs\": `\\u{41D}\\u{430}\\u{432}\\u{456}\\u{433}\\u{430}\\u{446}\\u{456}\\u{439}\\u{43D}\\u{430} \\u{441}\\u{442}\\u{435}\\u{436}\\u{43A}\\u{430}`\n};\n\n\nexport {$5204a30f0d17ffec$exports as default};\n//# sourceMappingURL=uk-UA.module.js.map\n","var $8d15e736e12d3dfd$exports = {};\n$8d15e736e12d3dfd$exports = {\n \"breadcrumbs\": `\\u{5BFC}\\u{822A}\\u{680F}`\n};\n\n\nexport {$8d15e736e12d3dfd$exports as default};\n//# sourceMappingURL=zh-CN.module.js.map\n","var $f8c49dd804b75140$exports = {};\n$f8c49dd804b75140$exports = {\n \"breadcrumbs\": `\\u{5C0E}\\u{89BD}\\u{5217}`\n};\n\n\nexport {$f8c49dd804b75140$exports as default};\n//# sourceMappingURL=zh-TW.module.js.map\n","import $g4LcJ$arAEmodulejs from \"./ar-AE.mjs\";\nimport $g4LcJ$bgBGmodulejs from \"./bg-BG.mjs\";\nimport $g4LcJ$csCZmodulejs from \"./cs-CZ.mjs\";\nimport $g4LcJ$daDKmodulejs from \"./da-DK.mjs\";\nimport $g4LcJ$deDEmodulejs from \"./de-DE.mjs\";\nimport $g4LcJ$elGRmodulejs from \"./el-GR.mjs\";\nimport $g4LcJ$enUSmodulejs from \"./en-US.mjs\";\nimport $g4LcJ$esESmodulejs from \"./es-ES.mjs\";\nimport $g4LcJ$etEEmodulejs from \"./et-EE.mjs\";\nimport $g4LcJ$fiFImodulejs from \"./fi-FI.mjs\";\nimport $g4LcJ$frFRmodulejs from \"./fr-FR.mjs\";\nimport $g4LcJ$heILmodulejs from \"./he-IL.mjs\";\nimport $g4LcJ$hrHRmodulejs from \"./hr-HR.mjs\";\nimport $g4LcJ$huHUmodulejs from \"./hu-HU.mjs\";\nimport $g4LcJ$itITmodulejs from \"./it-IT.mjs\";\nimport $g4LcJ$jaJPmodulejs from \"./ja-JP.mjs\";\nimport $g4LcJ$koKRmodulejs from \"./ko-KR.mjs\";\nimport $g4LcJ$ltLTmodulejs from \"./lt-LT.mjs\";\nimport $g4LcJ$lvLVmodulejs from \"./lv-LV.mjs\";\nimport $g4LcJ$nbNOmodulejs from \"./nb-NO.mjs\";\nimport $g4LcJ$nlNLmodulejs from \"./nl-NL.mjs\";\nimport $g4LcJ$plPLmodulejs from \"./pl-PL.mjs\";\nimport $g4LcJ$ptBRmodulejs from \"./pt-BR.mjs\";\nimport $g4LcJ$ptPTmodulejs from \"./pt-PT.mjs\";\nimport $g4LcJ$roROmodulejs from \"./ro-RO.mjs\";\nimport $g4LcJ$ruRUmodulejs from \"./ru-RU.mjs\";\nimport $g4LcJ$skSKmodulejs from \"./sk-SK.mjs\";\nimport $g4LcJ$slSImodulejs from \"./sl-SI.mjs\";\nimport $g4LcJ$srSPmodulejs from \"./sr-SP.mjs\";\nimport $g4LcJ$svSEmodulejs from \"./sv-SE.mjs\";\nimport $g4LcJ$trTRmodulejs from \"./tr-TR.mjs\";\nimport $g4LcJ$ukUAmodulejs from \"./uk-UA.mjs\";\nimport $g4LcJ$zhCNmodulejs from \"./zh-CN.mjs\";\nimport $g4LcJ$zhTWmodulejs from \"./zh-TW.mjs\";\n\nvar $8229b34715874f89$exports = {};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n$8229b34715874f89$exports = {\n \"ar-AE\": $g4LcJ$arAEmodulejs,\n \"bg-BG\": $g4LcJ$bgBGmodulejs,\n \"cs-CZ\": $g4LcJ$csCZmodulejs,\n \"da-DK\": $g4LcJ$daDKmodulejs,\n \"de-DE\": $g4LcJ$deDEmodulejs,\n \"el-GR\": $g4LcJ$elGRmodulejs,\n \"en-US\": $g4LcJ$enUSmodulejs,\n \"es-ES\": $g4LcJ$esESmodulejs,\n \"et-EE\": $g4LcJ$etEEmodulejs,\n \"fi-FI\": $g4LcJ$fiFImodulejs,\n \"fr-FR\": $g4LcJ$frFRmodulejs,\n \"he-IL\": $g4LcJ$heILmodulejs,\n \"hr-HR\": $g4LcJ$hrHRmodulejs,\n \"hu-HU\": $g4LcJ$huHUmodulejs,\n \"it-IT\": $g4LcJ$itITmodulejs,\n \"ja-JP\": $g4LcJ$jaJPmodulejs,\n \"ko-KR\": $g4LcJ$koKRmodulejs,\n \"lt-LT\": $g4LcJ$ltLTmodulejs,\n \"lv-LV\": $g4LcJ$lvLVmodulejs,\n \"nb-NO\": $g4LcJ$nbNOmodulejs,\n \"nl-NL\": $g4LcJ$nlNLmodulejs,\n \"pl-PL\": $g4LcJ$plPLmodulejs,\n \"pt-BR\": $g4LcJ$ptBRmodulejs,\n \"pt-PT\": $g4LcJ$ptPTmodulejs,\n \"ro-RO\": $g4LcJ$roROmodulejs,\n \"ru-RU\": $g4LcJ$ruRUmodulejs,\n \"sk-SK\": $g4LcJ$skSKmodulejs,\n \"sl-SI\": $g4LcJ$slSImodulejs,\n \"sr-SP\": $g4LcJ$srSPmodulejs,\n \"sv-SE\": $g4LcJ$svSEmodulejs,\n \"tr-TR\": $g4LcJ$trTRmodulejs,\n \"uk-UA\": $g4LcJ$ukUAmodulejs,\n \"zh-CN\": $g4LcJ$zhCNmodulejs,\n \"zh-TW\": $g4LcJ$zhTWmodulejs\n};\n\n\nexport {$8229b34715874f89$exports as default};\n//# sourceMappingURL=intlStrings.module.js.map\n","import $lFxPb$intlStringsmodulejs from \"./intlStrings.mjs\";\nimport {filterDOMProps as $lFxPb$filterDOMProps} from \"@react-aria/utils\";\nimport {useLocalizedStringFormatter as $lFxPb$useLocalizedStringFormatter} from \"@react-aria/i18n\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nfunction $848231d7a2b3998e$export$8cefe241bd876ca0(props) {\n let { 'aria-label': ariaLabel, ...otherProps } = props;\n let strings = (0, $lFxPb$useLocalizedStringFormatter)((0, ($parcel$interopDefault($lFxPb$intlStringsmodulejs))), '@react-aria/breadcrumbs');\n return {\n navProps: {\n ...(0, $lFxPb$filterDOMProps)(otherProps, {\n labelable: true\n }),\n 'aria-label': ariaLabel || strings.format('breadcrumbs')\n }\n };\n}\n\n\nexport {$848231d7a2b3998e$export$8cefe241bd876ca0 as useBreadcrumbs};\n//# sourceMappingURL=useBreadcrumbs.module.js.map\n","\"use client\";\nimport {\n breadcrumb_item_default\n} from \"./chunk-TPV4OC2M.mjs\";\n\n// src/use-breadcrumbs.ts\nimport { Children } from \"react\";\nimport {\n mapPropsVariants,\n useProviderContext\n} from \"@nextui-org/system\";\nimport { breadcrumbs } from \"@nextui-org/theme\";\nimport { filterDOMProps, pickChildren, useDOMRef } from \"@nextui-org/react-utils\";\nimport { mergeProps } from \"@react-aria/utils\";\nimport { useBreadcrumbs as useAriaBreadcrumbs } from \"@react-aria/breadcrumbs\";\nimport { useMemo } from \"react\";\nimport { clsx, dataAttr, objectToDeps } from \"@nextui-org/shared-utils\";\nfunction useBreadcrumbs(originalProps) {\n var _a, _b;\n const globalContext = useProviderContext();\n const disableAnimation = (_b = (_a = originalProps == null ? void 0 : originalProps.disableAnimation) != null ? _a : globalContext == null ? void 0 : globalContext.disableAnimation) != null ? _b : false;\n const [props, variantProps] = mapPropsVariants(originalProps, breadcrumbs.variantKeys);\n const {\n ref,\n as,\n color,\n underline,\n isDisabled,\n separator,\n children: childrenProp,\n itemsBeforeCollapse = 1,\n itemsAfterCollapse = 2,\n maxItems = 8,\n hideSeparator,\n renderEllipsis,\n className,\n classNames,\n itemClasses,\n onAction,\n ...otherProps\n } = props;\n const Component = as || \"nav\";\n const shouldFilterDOMProps = typeof Component === \"string\";\n const { navProps } = useAriaBreadcrumbs(originalProps);\n const [, children] = pickChildren(childrenProp, breadcrumb_item_default);\n const childCount = Children.count(children);\n const domRef = useDOMRef(ref);\n const slots = useMemo(\n () => breadcrumbs({\n ...variantProps,\n className\n }),\n [objectToDeps(variantProps), className]\n );\n const baseStyles = clsx(classNames == null ? void 0 : classNames.base, className);\n const itemProps = {\n color,\n underline,\n disableAnimation,\n hideSeparator,\n size: originalProps == null ? void 0 : originalProps.size,\n classNames: itemClasses\n };\n const getBaseProps = () => ({\n ref: domRef,\n \"data-slot\": \"base\",\n className: slots.base({ class: baseStyles }),\n ...mergeProps(\n navProps,\n filterDOMProps(otherProps, {\n enabled: shouldFilterDOMProps\n })\n )\n });\n const getListProps = () => ({\n \"data-slot\": \"list\",\n className: slots.list({ class: classNames == null ? void 0 : classNames.list })\n });\n const getEllipsisProps = () => ({\n \"data-slot\": \"ellipsis\",\n className: slots.ellipsis({ class: classNames == null ? void 0 : classNames.ellipsis })\n });\n const getSeparatorProps = () => ({\n \"data-slot\": \"separator\",\n \"aria-hidden\": dataAttr(true),\n className: slots.separator({ class: classNames == null ? void 0 : classNames.separator })\n });\n return {\n Component,\n children,\n slots,\n separator,\n childCount,\n itemsAfterCollapse,\n itemsBeforeCollapse,\n maxItems,\n classNames,\n isDisabled,\n itemProps,\n renderEllipsis,\n getBaseProps,\n getListProps,\n getEllipsisProps,\n getSeparatorProps,\n onAction\n };\n}\n\nexport {\n useBreadcrumbs\n};\n","// src/chevron-right.tsx\nimport { jsx } from \"react/jsx-runtime\";\nvar ChevronRightIcon = (props) => /* @__PURE__ */ jsx(\n \"svg\",\n {\n \"aria-hidden\": \"true\",\n fill: \"none\",\n focusable: \"false\",\n height: \"1em\",\n role: \"presentation\",\n stroke: \"currentColor\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n strokeWidth: \"1.5\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n ...props,\n children: /* @__PURE__ */ jsx(\"path\", { d: \"m9 18 6-6-6-6\" })\n }\n);\n\nexport {\n ChevronRightIcon\n};\n","\"use client\";\nimport {\n useBreadcrumbs\n} from \"./chunk-AAD6P2XK.mjs\";\n\n// src/breadcrumbs.tsx\nimport { cloneElement, useMemo } from \"react\";\nimport { forwardRef } from \"@nextui-org/system\";\nimport { ChevronRightIcon, EllipsisIcon } from \"@nextui-org/shared-icons\";\nimport { warn } from \"@nextui-org/shared-utils\";\nimport { chain } from \"@react-aria/utils\";\nimport { jsx } from \"react/jsx-runtime\";\nvar Breadcrumbs = forwardRef((props, ref) => {\n const {\n Component,\n children,\n childCount,\n itemProps,\n separator = /* @__PURE__ */ jsx(ChevronRightIcon, {}),\n maxItems,\n itemsBeforeCollapse,\n itemsAfterCollapse,\n isDisabled,\n renderEllipsis,\n getBaseProps,\n getListProps,\n getEllipsisProps,\n getSeparatorProps,\n onAction\n } = useBreadcrumbs({\n ...props,\n ref\n });\n const content = useMemo(() => {\n let items = children == null ? void 0 : children.map((child, i) => {\n var _a;\n const isLast = i === childCount - 1;\n const itemKey = (child == null ? void 0 : child.key) || i;\n return cloneElement(child, {\n ...itemProps,\n isLast,\n separator,\n isDisabled: isDisabled && !isLast,\n isCurrent: isLast || child.props.isCurrent,\n ...child.props,\n key: itemKey,\n onPress: chain((_a = child.props) == null ? void 0 : _a.onPress, () => onAction == null ? void 0 : onAction(itemKey))\n });\n });\n if (!items)\n return null;\n if (childCount < maxItems) {\n return items;\n }\n if (itemsBeforeCollapse + itemsAfterCollapse >= childCount) {\n warn(\n `You have provided an invalid combination of props to the Breadcrumbs. itemsAfterCollapse={${itemsAfterCollapse}} + itemsBeforeCollapse={${itemsBeforeCollapse}} >= itemsCount={${childCount}}`,\n \"Breadcrumbs\"\n );\n return items;\n }\n const itemsInEllipsis = items.slice(itemsBeforeCollapse, items.length - itemsAfterCollapse);\n if (itemsInEllipsis.length < 1) {\n return items;\n }\n const ellipsisIcon = /* @__PURE__ */ jsx(EllipsisIcon, { ...getEllipsisProps() });\n const collapsedItem = cloneElement(itemsInEllipsis[0], {\n ...itemsInEllipsis[0].props,\n key: \"ellipsis\",\n children: ellipsisIcon\n });\n const ellipsisItem = typeof renderEllipsis === \"function\" ? renderEllipsis({\n collapsedItem,\n items: itemsInEllipsis.map((item) => item.props),\n maxItems,\n ellipsisIcon,\n itemsBeforeCollapse,\n itemsAfterCollapse,\n separator: /* @__PURE__ */ jsx(\"span\", { ...getSeparatorProps(), children: separator })\n }) : collapsedItem;\n return [\n ...items.slice(0, itemsBeforeCollapse),\n ellipsisItem,\n ...items.slice(items.length - itemsAfterCollapse, items.length)\n ];\n }, [\n children,\n childCount,\n separator,\n itemProps,\n itemsBeforeCollapse,\n itemsAfterCollapse,\n isDisabled\n ]);\n return /* @__PURE__ */ jsx(Component, { ...getBaseProps(), children: /* @__PURE__ */ jsx(\"ol\", { ...getListProps(), children: content }) });\n});\nBreadcrumbs.displayName = \"NextUI.Breadcrumbs\";\nvar breadcrumbs_default = Breadcrumbs;\n\nexport {\n breadcrumbs_default\n};\n","import {filterDOMProps as $5Ot33$filterDOMProps, mergeProps as $5Ot33$mergeProps, useRouter as $5Ot33$useRouter, useLinkProps as $5Ot33$useLinkProps, shouldClientNavigate as $5Ot33$shouldClientNavigate} from \"@react-aria/utils\";\nimport {useFocusable as $5Ot33$useFocusable} from \"@react-aria/focus\";\nimport {usePress as $5Ot33$usePress} from \"@react-aria/interactions\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nfunction $298d61e98472621b$export$dcf14c9974fe2767(props, ref) {\n let { elementType: elementType = 'a', onPress: onPress, onPressStart: onPressStart, onPressEnd: onPressEnd, // @ts-ignore\n onClick: deprecatedOnClick, isDisabled: isDisabled, ...otherProps } = props;\n let linkProps = {};\n if (elementType !== 'a') linkProps = {\n role: 'link',\n tabIndex: !isDisabled ? 0 : undefined\n };\n let { focusableProps: focusableProps } = (0, $5Ot33$useFocusable)(props, ref);\n let { pressProps: pressProps, isPressed: isPressed } = (0, $5Ot33$usePress)({\n onPress: onPress,\n onPressStart: onPressStart,\n onPressEnd: onPressEnd,\n isDisabled: isDisabled,\n ref: ref\n });\n let domProps = (0, $5Ot33$filterDOMProps)(otherProps, {\n labelable: true\n });\n let interactionHandlers = (0, $5Ot33$mergeProps)(focusableProps, pressProps);\n let router = (0, $5Ot33$useRouter)();\n let routerLinkProps = (0, $5Ot33$useLinkProps)(props);\n return {\n isPressed: isPressed,\n linkProps: (0, $5Ot33$mergeProps)(domProps, routerLinkProps, {\n ...interactionHandlers,\n ...linkProps,\n 'aria-disabled': isDisabled || undefined,\n 'aria-current': props['aria-current'],\n onClick: (e)=>{\n var _pressProps_onClick;\n (_pressProps_onClick = pressProps.onClick) === null || _pressProps_onClick === void 0 ? void 0 : _pressProps_onClick.call(pressProps, e);\n if (deprecatedOnClick) {\n deprecatedOnClick(e);\n console.warn('onClick is deprecated, please use onPress');\n }\n // If a custom router is provided, prevent default and forward if this link should client navigate.\n if (!router.isNative && e.currentTarget instanceof HTMLAnchorElement && e.currentTarget.href && // If props are applied to a router Link component, it may have already prevented default.\n !e.isDefaultPrevented() && (0, $5Ot33$shouldClientNavigate)(e.currentTarget, e) && props.href) {\n e.preventDefault();\n router.open(e.currentTarget, e, props.href, props.routerOptions);\n }\n }\n })\n };\n}\n\n\nexport {$298d61e98472621b$export$dcf14c9974fe2767 as useLink};\n//# sourceMappingURL=useLink.module.js.map\n","import {useLink as $iYMrm$useLink} from \"@react-aria/link\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $dafd15390222438a$export$452b38fce62c9384(props, ref) {\n let { isCurrent: isCurrent, isDisabled: isDisabled, 'aria-current': ariaCurrent, elementType: elementType = 'a', ...otherProps } = props;\n let { linkProps: linkProps } = (0, $iYMrm$useLink)({\n isDisabled: isDisabled || isCurrent,\n elementType: elementType,\n ...otherProps\n }, ref);\n let isHeading = /^h[1-6]$/.test(elementType);\n let itemProps = {};\n if (!isHeading) itemProps = linkProps;\n if (isCurrent) {\n itemProps['aria-current'] = ariaCurrent || 'page';\n // isCurrent sets isDisabled === true for the current item,\n // so we have to restore the tabIndex in order to support autoFocus.\n itemProps.tabIndex = props.autoFocus ? -1 : undefined;\n }\n return {\n itemProps: {\n 'aria-disabled': isDisabled,\n ...itemProps\n }\n };\n}\n\n\nexport {$dafd15390222438a$export$452b38fce62c9384 as useBreadcrumbItem};\n//# sourceMappingURL=useBreadcrumbItem.module.js.map\n","\"use client\";\n\n// src/use-breadcrumb-item.ts\nimport { mapPropsVariants } from \"@nextui-org/system\";\nimport { useFocusRing } from \"@react-aria/focus\";\nimport { breadcrumbItem } from \"@nextui-org/theme\";\nimport { filterDOMProps, useDOMRef } from \"@nextui-org/react-utils\";\nimport { useBreadcrumbItem as useAriaBreadcrumbItem } from \"@react-aria/breadcrumbs\";\nimport { clsx, dataAttr, objectToDeps } from \"@nextui-org/shared-utils\";\nimport { useMemo } from \"react\";\nimport { mergeProps } from \"@react-aria/utils\";\nfunction useBreadcrumbItem(originalProps) {\n const [props, variantProps] = mapPropsVariants(originalProps, breadcrumbItem.variantKeys);\n const {\n ref,\n as,\n className,\n children,\n isLast,\n separator,\n startContent,\n endContent,\n classNames,\n hideSeparator = false,\n ...otherProps\n } = props;\n const WrapperComponent = as || \"li\";\n const isCurrent = !!(originalProps == null ? void 0 : originalProps.isCurrent);\n const isDisabled = originalProps == null ? void 0 : originalProps.isDisabled;\n const Component = (originalProps == null ? void 0 : originalProps.href) && !isCurrent ? \"a\" : \"span\";\n const shouldFilterDOMProps = typeof Component === \"string\";\n const domRef = useDOMRef(ref);\n const { itemProps } = useAriaBreadcrumbItem(\n { ...originalProps, isCurrent, elementType: Component },\n domRef\n );\n const { isFocusVisible, isFocused, focusProps } = useFocusRing();\n const slots = useMemo(\n () => breadcrumbItem({\n ...variantProps,\n isCurrent,\n underline: (originalProps == null ? void 0 : originalProps.underline) !== void 0 && !isCurrent ? originalProps == null ? void 0 : originalProps.underline : \"none\",\n className\n }),\n [objectToDeps(variantProps), isCurrent, className]\n );\n const baseStyles = clsx(classNames == null ? void 0 : classNames.base, className);\n const getBaseProps = () => ({\n ref: domRef,\n \"data-slot\": \"base\",\n className: slots.base({ class: baseStyles }),\n ...filterDOMProps(otherProps, {\n enabled: shouldFilterDOMProps\n })\n });\n const getItemProps = () => ({\n href: !isCurrent ? originalProps == null ? void 0 : originalProps.href : void 0,\n \"data-slot\": \"item\",\n \"data-focus\": dataAttr(isFocused),\n \"data-focus-visible\": dataAttr(isFocusVisible),\n \"data-disabled\": originalProps == null ? void 0 : originalProps.isDisabled,\n \"data-current\": originalProps == null ? void 0 : originalProps.isCurrent,\n className: slots.item({ class: classNames == null ? void 0 : classNames.item }),\n ...mergeProps(itemProps, isDisabled ? {} : focusProps)\n });\n const getSeparatorProps = () => ({\n \"data-slot\": \"separator\",\n \"aria-hidden\": dataAttr(true),\n className: slots.separator({ class: classNames == null ? void 0 : classNames.separator })\n });\n return {\n Component,\n WrapperComponent,\n children,\n separator,\n startContent,\n endContent,\n isDisabled,\n isCurrent,\n isLast,\n hideSeparator,\n getBaseProps,\n getItemProps,\n getSeparatorProps\n };\n}\n\nexport {\n useBreadcrumbItem\n};\n","\"use client\";\nimport {\n useBreadcrumbItem\n} from \"./chunk-HM6BKCEH.mjs\";\n\n// src/breadcrumb-item.tsx\nimport { forwardRef } from \"@nextui-org/system\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nvar Breadcrumbs = forwardRef((props, ref) => {\n const {\n Component,\n WrapperComponent,\n children,\n isLast,\n separator,\n startContent,\n endContent,\n hideSeparator,\n getBaseProps,\n getItemProps,\n getSeparatorProps\n } = useBreadcrumbItem({\n ...props,\n ref\n });\n return /* @__PURE__ */ jsxs(WrapperComponent, { ...getBaseProps(), children: [\n /* @__PURE__ */ jsxs(Component, { ...getItemProps(), children: [\n startContent,\n children,\n endContent\n ] }),\n !isLast && !hideSeparator && /* @__PURE__ */ jsx(\"span\", { ...getSeparatorProps(), children: separator })\n ] });\n});\nBreadcrumbs.displayName = \"NextUI.Breadcrumbs\";\nvar breadcrumb_item_default = Breadcrumbs;\n\nexport {\n breadcrumb_item_default\n};\n","\"use client\";\n\n// src/pagination-cursor.tsx\nimport { forwardRef } from \"@nextui-org/system\";\nimport { useDOMRef } from \"@nextui-org/react-utils\";\nimport { jsx } from \"react/jsx-runtime\";\nvar PaginationCursor = forwardRef((props, ref) => {\n const { as, activePage, ...otherProps } = props;\n const Component = as || \"span\";\n const domRef = useDOMRef(ref);\n return /* @__PURE__ */ jsx(Component, { ref: domRef, \"aria-hidden\": true, ...otherProps, children: activePage });\n});\nPaginationCursor.displayName = \"NextUI.PaginationCursor\";\nvar pagination_cursor_default = PaginationCursor;\n\nexport {\n pagination_cursor_default\n};\n","\"use client\";\n\n// src/use-pagination-item.ts\nimport { useMemo } from \"react\";\nimport { clsx, dataAttr } from \"@nextui-org/shared-utils\";\nimport { chain, mergeProps, shouldClientNavigate, useRouter } from \"@react-aria/utils\";\nimport { filterDOMProps, useDOMRef } from \"@nextui-org/react-utils\";\nimport { useHover, usePress } from \"@react-aria/interactions\";\nimport { useFocusRing } from \"@react-aria/focus\";\nfunction usePaginationItem(props) {\n const {\n as,\n ref,\n value,\n children,\n isActive,\n isDisabled,\n onPress,\n onClick,\n getAriaLabel,\n className,\n ...otherProps\n } = props;\n const isLink = !!(props == null ? void 0 : props.href);\n const Component = as || isLink ? \"a\" : \"li\";\n const shouldFilterDOMProps = typeof Component === \"string\";\n const domRef = useDOMRef(ref);\n const router = useRouter();\n const ariaLabel = useMemo(\n () => isActive ? `${getAriaLabel == null ? void 0 : getAriaLabel(value)} active` : getAriaLabel == null ? void 0 : getAriaLabel(value),\n [value, isActive]\n );\n const { isPressed, pressProps } = usePress({\n isDisabled,\n onPress\n });\n const { focusProps, isFocused, isFocusVisible } = useFocusRing({});\n const { isHovered, hoverProps } = useHover({ isDisabled });\n const getItemProps = (props2 = {}) => {\n return {\n ref: domRef,\n role: \"button\",\n tabIndex: isDisabled ? -1 : 0,\n \"aria-label\": ariaLabel,\n \"aria-current\": dataAttr(isActive),\n \"aria-disabled\": dataAttr(isDisabled),\n \"data-disabled\": dataAttr(isDisabled),\n \"data-active\": dataAttr(isActive),\n \"data-focus\": dataAttr(isFocused),\n \"data-hover\": dataAttr(isHovered),\n \"data-pressed\": dataAttr(isPressed),\n \"data-focus-visible\": dataAttr(isFocusVisible),\n ...mergeProps(\n props2,\n pressProps,\n focusProps,\n hoverProps,\n filterDOMProps(otherProps, {\n enabled: shouldFilterDOMProps\n })\n ),\n className: clsx(className, props2.className),\n onClick: (e) => {\n chain(pressProps == null ? void 0 : pressProps.onClick, onClick)(e);\n if (!router.isNative && e.currentTarget instanceof HTMLAnchorElement && e.currentTarget.href && !e.isDefaultPrevented() && shouldClientNavigate(e.currentTarget, e) && props2.href) {\n e.preventDefault();\n router.open(e.currentTarget, e, props2.href, props2.routerOptions);\n }\n }\n };\n };\n return {\n Component,\n children,\n ariaLabel,\n isFocused,\n isFocusVisible,\n getItemProps\n };\n}\n\nexport {\n usePaginationItem\n};\n","\"use client\";\nimport {\n usePaginationItem\n} from \"./chunk-TEHPZN3P.mjs\";\n\n// src/pagination-item.tsx\nimport { forwardRef } from \"@nextui-org/system\";\nimport { jsx } from \"react/jsx-runtime\";\nvar PaginationItem = forwardRef((props, ref) => {\n const { Component, children, getItemProps } = usePaginationItem({ ...props, ref });\n return /* @__PURE__ */ jsx(Component, { ...getItemProps(), children });\n});\nPaginationItem.displayName = \"NextUI.PaginationItem\";\nvar pagination_item_default = PaginationItem;\n\nexport {\n pagination_item_default\n};\n","// src/index.ts\nimport { useMemo, useCallback, useState, useEffect } from \"react\";\nimport { useLocale } from \"@react-aria/i18n\";\nimport { range } from \"@nextui-org/shared-utils\";\nvar PaginationItemType = /* @__PURE__ */ ((PaginationItemType2) => {\n PaginationItemType2[\"DOTS\"] = \"dots\";\n PaginationItemType2[\"PREV\"] = \"prev\";\n PaginationItemType2[\"NEXT\"] = \"next\";\n return PaginationItemType2;\n})(PaginationItemType || {});\nfunction usePagination(props) {\n const {\n page,\n total,\n siblings = 1,\n boundaries = 1,\n initialPage = 1,\n showControls = false,\n onChange\n } = props;\n const [activePage, setActivePage] = useState(page || initialPage);\n const { direction } = useLocale();\n const isRTL = direction === \"rtl\";\n const onChangeActivePage = (newPage) => {\n setActivePage(newPage);\n onChange && onChange(newPage);\n };\n useEffect(() => {\n if (page && page !== activePage) {\n setActivePage(page);\n }\n }, [page]);\n const setPage = useCallback(\n (pageNumber) => {\n if (pageNumber <= 0) {\n onChangeActivePage(1);\n } else if (pageNumber > total) {\n onChangeActivePage(total);\n } else {\n onChangeActivePage(pageNumber);\n }\n },\n [total, activePage, onChangeActivePage]\n );\n const next = () => isRTL ? setPage(activePage - 1) : setPage(activePage + 1);\n const previous = () => isRTL ? setPage(activePage + 1) : setPage(activePage - 1);\n const first = () => isRTL ? setPage(total) : setPage(1);\n const last = () => isRTL ? setPage(1) : setPage(total);\n const formatRange = useCallback(\n (range2) => {\n if (showControls) {\n return isRTL ? [\"next\" /* NEXT */, ...range2, \"prev\" /* PREV */] : [\"prev\" /* PREV */, ...range2, \"next\" /* NEXT */];\n }\n return range2;\n },\n [isRTL, showControls]\n );\n const paginationRange = useMemo(() => {\n const totalPageNumbers = siblings * 2 + 3 + boundaries * 2;\n if (totalPageNumbers >= total) {\n return formatRange(range(1, total));\n }\n const leftSiblingIndex = Math.max(activePage - siblings, boundaries);\n const rightSiblingIndex = Math.min(activePage + siblings, total - boundaries);\n const shouldShowLeftDots = leftSiblingIndex > boundaries + 2;\n const shouldShowRightDots = rightSiblingIndex < total - (boundaries + 1);\n if (!shouldShowLeftDots && shouldShowRightDots) {\n const leftItemCount = siblings * 2 + boundaries + 2;\n return formatRange([\n ...range(1, leftItemCount),\n \"dots\" /* DOTS */,\n ...range(total - (boundaries - 1), total)\n ]);\n }\n if (shouldShowLeftDots && !shouldShowRightDots) {\n const rightItemCount = boundaries + 1 + 2 * siblings;\n return formatRange([\n ...range(1, boundaries),\n \"dots\" /* DOTS */,\n ...range(total - rightItemCount, total)\n ]);\n }\n return formatRange([\n ...range(1, boundaries),\n \"dots\" /* DOTS */,\n ...range(leftSiblingIndex, rightSiblingIndex),\n \"dots\" /* DOTS */,\n ...range(total - boundaries + 1, total)\n ]);\n }, [total, activePage, siblings, boundaries, formatRange]);\n return {\n range: paginationRange,\n activePage,\n setPage,\n next,\n previous,\n first,\n last\n };\n}\nexport {\n PaginationItemType,\n usePagination\n};\n","import {\n colorVariants\n} from \"./chunk-GQT3YUX3.mjs\";\nimport {\n tv\n} from \"./chunk-UWE6H66T.mjs\";\nimport {\n dataFocusVisibleClasses\n} from \"./chunk-GH5E4FQB.mjs\";\n\n// src/components/pagination.ts\nvar pagination = tv({\n slots: {\n base: [\"p-2.5\", \"-m-2.5\", \"overflow-x-scroll\", \"scrollbar-hide\"],\n wrapper: [\n \"flex\",\n \"flex-nowrap\",\n \"h-fit\",\n \"max-w-fit\",\n \"relative\",\n \"gap-1\",\n \"items-center\",\n \"overflow-visible\"\n ],\n item: [\"tap-highlight-transparent\", \"select-none\", \"touch-none\"],\n prev: \"\",\n next: \"\",\n cursor: [\n \"absolute\",\n \"flex\",\n \"overflow-visible\",\n \"items-center\",\n \"justify-center\",\n \"origin-center\",\n \"left-0\",\n \"select-none\",\n \"touch-none\",\n \"pointer-events-none\",\n \"z-20\"\n ],\n forwardIcon: [\n \"hidden\",\n \"group-hover:block\",\n \"group-data-[focus-visible=true]:block\",\n \"data-[before=true]:rotate-180\"\n ],\n ellipsis: \"group-hover:hidden group-data-[focus-visible=true]:hidden\",\n chevronNext: \"rotate-180\"\n },\n variants: {\n variant: {\n bordered: {\n item: [\n \"border-medium\",\n \"border-default\",\n \"bg-transparent\",\n \"data-[hover=true]:bg-default-100\"\n ]\n },\n light: {\n item: \"bg-transparent\"\n },\n flat: {},\n faded: {\n item: [\"border-medium\", \"border-default\"]\n }\n },\n color: {\n default: {\n cursor: colorVariants.solid.default\n },\n primary: {\n cursor: colorVariants.solid.primary\n },\n secondary: {\n cursor: colorVariants.solid.secondary\n },\n success: {\n cursor: colorVariants.solid.success\n },\n warning: {\n cursor: colorVariants.solid.warning\n },\n danger: {\n cursor: colorVariants.solid.danger\n }\n },\n size: {\n sm: {},\n md: {},\n lg: {}\n },\n radius: {\n none: {},\n sm: {},\n md: {},\n lg: {},\n full: {}\n },\n isCompact: {\n true: {\n wrapper: \"gap-0 shadow-sm\",\n item: [\n \"shadow-none\",\n \"first-of-type:rounded-e-none\",\n \"last-of-type:rounded-s-none\",\n \"[&:not(:first-of-type):not(:last-of-type)]:rounded-none\"\n ],\n prev: \"!rounded-e-none\",\n next: \"!rounded-s-none\"\n }\n },\n isDisabled: {\n true: {\n base: \"opacity-disabled pointer-events-none\"\n }\n },\n showShadow: {\n true: {}\n },\n disableCursorAnimation: {\n true: {\n cursor: \"hidden\"\n }\n },\n disableAnimation: {\n true: {\n item: \"transition-none\",\n cursor: \"transition-none\"\n },\n false: {\n item: [\"data-[pressed=true]:scale-[0.97]\", \"transition-transform-background\"],\n cursor: [\n \"data-[moving=true]:transition-transform\",\n \"!data-[moving=true]:duration-300\",\n \"opacity-0\",\n \"data-[moving]:opacity-100\"\n ]\n }\n }\n },\n defaultVariants: {\n variant: \"flat\",\n color: \"primary\",\n size: \"md\",\n radius: \"md\",\n isCompact: false,\n isDisabled: false,\n showShadow: false,\n disableCursorAnimation: false\n },\n compoundVariants: [\n {\n showShadow: true,\n color: \"default\",\n class: {\n cursor: [colorVariants.shadow.default, \"shadow-md\"]\n }\n },\n {\n showShadow: true,\n color: \"primary\",\n class: {\n cursor: [colorVariants.shadow.primary, \"shadow-md\"]\n }\n },\n {\n showShadow: true,\n color: \"secondary\",\n class: {\n cursor: [colorVariants.shadow.secondary, \"shadow-md\"]\n }\n },\n {\n showShadow: true,\n color: \"success\",\n class: {\n cursor: [colorVariants.shadow.success, \"shadow-md\"]\n }\n },\n {\n showShadow: true,\n color: \"warning\",\n class: {\n cursor: [colorVariants.shadow.warning, \"shadow-md\"]\n }\n },\n {\n showShadow: true,\n color: \"danger\",\n class: {\n cursor: [colorVariants.shadow.danger, \"shadow-md\"]\n }\n },\n {\n isCompact: true,\n variant: \"bordered\",\n class: {\n item: \"[&:not(:first-of-type)]:ms-[calc(theme(borderWidth.2)*-1)]\"\n }\n },\n {\n disableCursorAnimation: true,\n color: \"default\",\n class: {\n item: [\n \"data-[active=true]:bg-default-400\",\n \"data-[active=true]:border-default-400\",\n \"data-[active=true]:text-default-foreground\"\n ]\n }\n },\n {\n disableCursorAnimation: true,\n color: \"primary\",\n class: {\n item: [\n \"data-[active=true]:bg-primary\",\n \"data-[active=true]:border-primary\",\n \"data-[active=true]:text-primary-foreground\"\n ]\n }\n },\n {\n disableCursorAnimation: true,\n color: \"secondary\",\n class: {\n item: [\n \"data-[active=true]:bg-secondary\",\n \"data-[active=true]:border-secondary\",\n \"data-[active=true]:text-secondary-foreground\"\n ]\n }\n },\n {\n disableCursorAnimation: true,\n color: \"success\",\n class: {\n item: [\n \"data-[active=true]:bg-success\",\n \"data-[active=true]:border-success\",\n \"data-[active=true]:text-success-foreground\"\n ]\n }\n },\n {\n disableCursorAnimation: true,\n color: \"warning\",\n class: {\n item: [\n \"data-[active=true]:bg-warning\",\n \"data-[active=true]:border-warning\",\n \"data-[active=true]:text-warning-foreground\"\n ]\n }\n },\n {\n disableCursorAnimation: true,\n color: \"danger\",\n class: {\n item: [\n \"data-[active=true]:bg-danger\",\n \"data-[active=true]:border-danger\",\n \"data-[active=true]:text-danger-foreground\"\n ]\n }\n },\n {\n disableCursorAnimation: true,\n showShadow: true,\n color: \"default\",\n class: {\n item: [\"data-[active=true]:shadow-md\", \"data-[active=true]:shadow-default/50\"]\n }\n },\n {\n disableCursorAnimation: true,\n showShadow: true,\n color: \"primary\",\n class: {\n item: [\"data-[active=true]:shadow-md\", \"data-[active=true]:shadow-primary/40\"]\n }\n },\n {\n disableCursorAnimation: true,\n showShadow: true,\n color: \"secondary\",\n class: {\n item: [\"data-[active=true]:shadow-md\", \"data-[active=true]:shadow-secondary/40\"]\n }\n },\n {\n disableCursorAnimation: true,\n showShadow: true,\n color: \"success\",\n class: {\n item: [\"data-[active=true]:shadow-md\", \"data-[active=true]:shadow-success/40\"]\n }\n },\n {\n disableCursorAnimation: true,\n showShadow: true,\n color: \"warning\",\n class: {\n item: [\"data-[active=true]:shadow-md\", \"data-[active=true]:shadow-warning/40\"]\n }\n },\n {\n disableCursorAnimation: true,\n showShadow: true,\n color: \"danger\",\n class: {\n item: [\"data-[active=true]:shadow-md\", \"data-[active=true]:shadow-danger/40\"]\n }\n }\n ],\n compoundSlots: [\n {\n slots: [\"item\", \"prev\", \"next\"],\n class: [\n \"flex\",\n \"flex-wrap\",\n \"truncate\",\n \"box-border\",\n \"outline-none\",\n \"items-center\",\n \"justify-center\",\n \"text-default-foreground\",\n ...dataFocusVisibleClasses,\n \"data-[disabled=true]:text-default-300\",\n \"data-[disabled=true]:pointer-events-none\"\n ]\n },\n {\n slots: [\"item\", \"prev\", \"next\"],\n variant: [\"flat\", \"bordered\", \"faded\"],\n class: [\"shadow-sm\"]\n },\n {\n slots: [\"item\", \"prev\", \"next\"],\n variant: \"flat\",\n class: [\n \"bg-default-100\",\n \"[&[data-hover=true]:not([data-active=true])]:bg-default-200\",\n \"active:bg-default-300\"\n ]\n },\n {\n slots: [\"item\", \"prev\", \"next\"],\n variant: \"faded\",\n class: [\n \"bg-default-50\",\n \"[&[data-hover=true]:not([data-active=true])]:bg-default-100\",\n \"active:bg-default-200\"\n ]\n },\n {\n slots: [\"item\", \"prev\", \"next\"],\n variant: \"light\",\n class: [\n \"[&[data-hover=true]:not([data-active=true])]:bg-default-100\",\n \"active:bg-default-200\"\n ]\n },\n {\n slots: [\"item\", \"cursor\", \"prev\", \"next\"],\n size: \"sm\",\n class: \"min-w-8 w-8 h-8 text-tiny\"\n },\n {\n slots: [\"item\", \"cursor\", \"prev\", \"next\"],\n size: \"md\",\n class: \"min-w-9 w-9 h-9 text-small\"\n },\n {\n slots: [\"item\", \"cursor\", \"prev\", \"next\"],\n size: \"lg\",\n class: \"min-w-10 w-10 h-10 text-medium\"\n },\n {\n slots: [\"wrapper\", \"item\", \"cursor\", \"prev\", \"next\"],\n radius: \"none\",\n class: \"rounded-none\"\n },\n {\n slots: [\"wrapper\", \"item\", \"cursor\", \"prev\", \"next\"],\n radius: \"sm\",\n class: \"rounded-small\"\n },\n {\n slots: [\"wrapper\", \"item\", \"cursor\", \"prev\", \"next\"],\n radius: \"md\",\n class: \"rounded-medium\"\n },\n {\n slots: [\"wrapper\", \"item\", \"cursor\", \"prev\", \"next\"],\n radius: \"lg\",\n class: \"rounded-large\"\n },\n {\n slots: [\"wrapper\", \"item\", \"cursor\", \"prev\", \"next\"],\n radius: \"full\",\n class: \"rounded-full\"\n }\n ]\n});\n\nexport {\n pagination\n};\n","// src/index.ts\nimport { useEffect, useRef, useState } from \"react\";\nfunction useIntersectionObserver({\n threshold = 0,\n root = null,\n rootMargin = \"0%\",\n isEnabled = true,\n freezeOnceVisible = false,\n initialIsIntersecting = false,\n onChange\n} = {}) {\n var _a;\n const [ref, setRef] = useState(null);\n const [state, setState] = useState(() => ({\n isIntersecting: initialIsIntersecting,\n entry: void 0\n }));\n const callbackRef = useRef();\n callbackRef.current = onChange;\n const frozen = ((_a = state.entry) == null ? void 0 : _a.isIntersecting) && freezeOnceVisible;\n useEffect(() => {\n if (!isEnabled)\n return;\n if (!ref)\n return;\n if (!(\"IntersectionObserver\" in window))\n return;\n if (frozen)\n return;\n let unobserve;\n const observer = new IntersectionObserver(\n (entries) => {\n const thresholds = Array.isArray(observer.thresholds) ? observer.thresholds : [observer.thresholds];\n entries.forEach((entry) => {\n const isIntersecting = entry.isIntersecting && thresholds.some((threshold2) => entry.intersectionRatio >= threshold2);\n setState({ isIntersecting, entry });\n if (callbackRef.current) {\n callbackRef.current(isIntersecting, entry);\n }\n if (isIntersecting && freezeOnceVisible && unobserve) {\n unobserve();\n unobserve = void 0;\n }\n });\n },\n { threshold, root, rootMargin }\n );\n observer.observe(ref);\n return () => {\n observer.disconnect();\n };\n }, [\n ref,\n isEnabled,\n JSON.stringify(threshold),\n root,\n rootMargin,\n frozen,\n freezeOnceVisible\n ]);\n const prevRef = useRef(null);\n useEffect(() => {\n var _a2;\n if (!ref && ((_a2 = state.entry) == null ? void 0 : _a2.target) && !freezeOnceVisible && !frozen && prevRef.current !== state.entry.target) {\n prevRef.current = state.entry.target;\n setState({ isIntersecting: initialIsIntersecting, entry: void 0 });\n }\n }, [ref, state.entry, freezeOnceVisible, frozen, initialIsIntersecting]);\n const result = [setRef, !!state.isIntersecting, state.entry];\n result.ref = result[0];\n result.isIntersecting = result[1];\n result.entry = result[2];\n return result;\n}\nexport {\n useIntersectionObserver\n};\n","\"use client\";\n\n// src/use-pagination.ts\nimport { objectToDeps } from \"@nextui-org/shared-utils\";\nimport { useLocale } from \"@react-aria/i18n\";\nimport {\n PaginationItemType\n} from \"@nextui-org/use-pagination\";\nimport { useEffect, useRef, useMemo } from \"react\";\nimport { mapPropsVariants, useProviderContext } from \"@nextui-org/system\";\nimport { usePagination as useBasePagination } from \"@nextui-org/use-pagination\";\nimport scrollIntoView from \"scroll-into-view-if-needed\";\nimport { pagination } from \"@nextui-org/theme\";\nimport { useDOMRef } from \"@nextui-org/react-utils\";\nimport { clsx, dataAttr } from \"@nextui-org/shared-utils\";\nimport { useIntersectionObserver } from \"@nextui-org/use-intersection-observer\";\nvar CURSOR_TRANSITION_TIMEOUT = 300;\nfunction usePagination(originalProps) {\n var _a, _b, _c, _d;\n const globalContext = useProviderContext();\n const [props, variantProps] = mapPropsVariants(originalProps, pagination.variantKeys);\n const {\n as,\n ref,\n classNames,\n dotsJump = 5,\n loop = false,\n showControls = false,\n total = 1,\n initialPage = 1,\n page,\n siblings,\n boundaries,\n onChange,\n className,\n renderItem,\n getItemAriaLabel: getItemAriaLabelProp,\n ...otherProps\n } = props;\n const Component = as || \"nav\";\n const domRef = useDOMRef(ref);\n const cursorRef = useRef(null);\n const itemsRef = useRef();\n const cursorTimer = useRef();\n const { direction } = useLocale();\n const isRTL = direction === \"rtl\";\n const disableAnimation = (_b = (_a = originalProps == null ? void 0 : originalProps.disableAnimation) != null ? _a : globalContext == null ? void 0 : globalContext.disableAnimation) != null ? _b : false;\n const disableCursorAnimation = (_d = (_c = originalProps == null ? void 0 : originalProps.disableCursorAnimation) != null ? _c : disableAnimation) != null ? _d : false;\n function getItemsRefMap() {\n if (!itemsRef.current) {\n itemsRef.current = /* @__PURE__ */ new Map();\n }\n return itemsRef.current;\n }\n function getItemRef(node, value) {\n const map = getItemsRefMap();\n if (node) {\n map.set(value, node);\n } else {\n map.delete(value);\n }\n }\n function scrollTo(value, skipAnimation) {\n const map = getItemsRefMap();\n const node = map.get(value);\n if (!node || !cursorRef.current)\n return;\n cursorTimer.current && clearTimeout(cursorTimer.current);\n scrollIntoView(node, {\n scrollMode: \"always\",\n behavior: \"smooth\",\n block: \"start\",\n inline: \"start\",\n boundary: domRef.current\n });\n const { offsetLeft } = node;\n if (skipAnimation) {\n cursorRef.current.setAttribute(\"data-moving\", \"false\");\n cursorRef.current.style.transform = `translateX(${offsetLeft}px) scale(1)`;\n return;\n }\n cursorRef.current.setAttribute(\"data-moving\", \"true\");\n cursorRef.current.style.transform = `translateX(${offsetLeft}px) scale(1.1)`;\n cursorTimer.current = setTimeout(() => {\n if (cursorRef.current) {\n cursorRef.current.style.transform = `translateX(${offsetLeft}px) scale(1)`;\n }\n cursorTimer.current = setTimeout(() => {\n var _a2;\n (_a2 = cursorRef.current) == null ? void 0 : _a2.setAttribute(\"data-moving\", \"false\");\n cursorTimer.current && clearTimeout(cursorTimer.current);\n }, CURSOR_TRANSITION_TIMEOUT);\n }, CURSOR_TRANSITION_TIMEOUT);\n }\n const { range, activePage, setPage, previous, next, first, last } = useBasePagination({\n page,\n total,\n initialPage,\n siblings,\n boundaries,\n showControls,\n onChange\n });\n const [setRef, isVisible] = useIntersectionObserver();\n useEffect(() => {\n if (domRef.current) {\n setRef(domRef.current);\n }\n }, [domRef.current]);\n const activePageRef = useRef(activePage);\n useEffect(() => {\n if (activePage && !disableAnimation && isVisible) {\n scrollTo(activePage, activePage === activePageRef.current);\n }\n activePageRef.current = activePage;\n }, [\n activePage,\n disableAnimation,\n disableCursorAnimation,\n isVisible,\n originalProps.dotsJump,\n originalProps.isCompact,\n originalProps.showControls\n ]);\n const slots = useMemo(\n () => pagination({\n ...variantProps,\n disableAnimation,\n disableCursorAnimation\n }),\n [objectToDeps(variantProps), disableCursorAnimation, disableAnimation]\n );\n const baseStyles = clsx(classNames == null ? void 0 : classNames.base, className);\n const onNext = () => {\n if (loop && activePage === (isRTL ? 1 : total)) {\n return first();\n }\n return next();\n };\n const onPrevious = () => {\n if (loop && activePage === (isRTL ? total : 1)) {\n return last();\n }\n return previous();\n };\n const getBaseProps = (props2 = {}) => {\n return {\n ...props2,\n ref: domRef,\n role: \"navigation\",\n \"aria-label\": props2[\"aria-label\"] || \"pagination navigation\",\n \"data-slot\": \"base\",\n \"data-controls\": dataAttr(showControls),\n \"data-loop\": dataAttr(loop),\n \"data-dots-jump\": dotsJump,\n \"data-total\": total,\n \"data-active-page\": activePage,\n className: slots.base({ class: clsx(baseStyles, props2 == null ? void 0 : props2.className) }),\n ...otherProps\n };\n };\n const getWrapperProps = (props2 = {}) => {\n return {\n ...props2,\n \"data-slot\": \"wrapper\",\n className: slots.wrapper({ class: clsx(classNames == null ? void 0 : classNames.wrapper, props2 == null ? void 0 : props2.className) })\n };\n };\n const getItemAriaLabel = (page2) => {\n if (!page2)\n return;\n if (getItemAriaLabelProp) {\n return getItemAriaLabelProp(page2);\n }\n switch (page2) {\n case PaginationItemType.DOTS:\n return \"dots element\";\n case PaginationItemType.PREV:\n return \"previous page button\";\n case PaginationItemType.NEXT:\n return \"next page button\";\n case \"first\":\n return \"first page button\";\n case \"last\":\n return \"last page button\";\n default:\n return `pagination item ${page2}`;\n }\n };\n const getItemProps = (props2 = {}) => {\n return {\n ...props2,\n ref: (node) => getItemRef(node, props2.value),\n \"data-slot\": \"item\",\n isActive: props2.value === activePage,\n className: slots.item({ class: clsx(classNames == null ? void 0 : classNames.item, props2 == null ? void 0 : props2.className) }),\n onPress: () => {\n if (props2.value !== activePage) {\n setPage(props2.value);\n }\n }\n };\n };\n const getCursorProps = (props2 = {}) => {\n return {\n ...props2,\n ref: cursorRef,\n activePage,\n \"data-slot\": \"cursor\",\n className: slots.cursor({ class: clsx(classNames == null ? void 0 : classNames.cursor, props2 == null ? void 0 : props2.className) })\n };\n };\n return {\n Component,\n showControls,\n dotsJump,\n slots,\n classNames,\n loop,\n total,\n range,\n activePage,\n getItemRef,\n disableAnimation,\n disableCursorAnimation,\n setPage,\n onPrevious,\n onNext,\n renderItem,\n getBaseProps,\n getWrapperProps,\n getItemProps,\n getCursorProps,\n getItemAriaLabel\n };\n}\n\nexport {\n CURSOR_TRANSITION_TIMEOUT,\n usePagination\n};\n","// src/forward.tsx\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nvar ForwardIcon = (props) => /* @__PURE__ */ jsxs(\n \"svg\",\n {\n \"aria-hidden\": \"true\",\n fill: \"none\",\n focusable: \"false\",\n height: \"1em\",\n role: \"presentation\",\n shapeRendering: \"geometricPrecision\",\n stroke: \"currentColor\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n strokeWidth: \"1.5\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n ...props,\n children: [\n /* @__PURE__ */ jsx(\"path\", { d: \"M13 17l5-5-5-5\" }),\n /* @__PURE__ */ jsx(\"path\", { d: \"M6 17l5-5-5-5\" })\n ]\n }\n);\n\nexport {\n ForwardIcon\n};\n","\"use client\";\nimport {\n pagination_cursor_default\n} from \"./chunk-SDEB5NXU.mjs\";\nimport {\n pagination_item_default\n} from \"./chunk-5E6ZQJ3X.mjs\";\nimport {\n usePagination\n} from \"./chunk-YXJDS6EZ.mjs\";\n\n// src/pagination.tsx\nimport { useCallback } from \"react\";\nimport { useLocale } from \"@react-aria/i18n\";\nimport { forwardRef } from \"@nextui-org/system\";\nimport { PaginationItemType } from \"@nextui-org/use-pagination\";\nimport { ChevronIcon, EllipsisIcon, ForwardIcon } from \"@nextui-org/shared-icons\";\nimport { clsx, dataAttr } from \"@nextui-org/shared-utils\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nimport { createElement } from \"react\";\nvar Pagination = forwardRef((props, ref) => {\n const {\n Component,\n dotsJump,\n slots,\n classNames,\n total,\n range,\n loop,\n activePage,\n disableCursorAnimation,\n disableAnimation,\n renderItem: renderItemProp,\n onNext,\n onPrevious,\n setPage,\n getItemAriaLabel,\n getItemRef,\n getBaseProps,\n getWrapperProps,\n getItemProps,\n getCursorProps\n } = usePagination({ ...props, ref });\n const { direction } = useLocale();\n const isRTL = direction === \"rtl\";\n const renderItem = useCallback(\n (value, index) => {\n const isBefore = index < range.indexOf(activePage);\n if (renderItemProp && typeof renderItemProp === \"function\") {\n let page = typeof value == \"number\" ? value : index;\n if (value === PaginationItemType.NEXT) {\n page = activePage + 1;\n }\n if (value === PaginationItemType.PREV) {\n page = activePage - 1;\n }\n if (value === PaginationItemType.DOTS) {\n page = isBefore ? activePage - dotsJump >= 1 ? activePage - dotsJump : 1 : activePage + dotsJump <= total ? activePage + dotsJump : total;\n }\n const itemChildren = {\n [PaginationItemType.PREV]: /* @__PURE__ */ jsx(ChevronIcon, {}),\n [PaginationItemType.NEXT]: /* @__PURE__ */ jsx(\n ChevronIcon,\n {\n className: slots.chevronNext({\n class: classNames == null ? void 0 : classNames.chevronNext\n })\n }\n ),\n [PaginationItemType.DOTS]: /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(EllipsisIcon, { className: slots == null ? void 0 : slots.ellipsis({ class: classNames == null ? void 0 : classNames.ellipsis }) }),\n /* @__PURE__ */ jsx(\n ForwardIcon,\n {\n className: slots == null ? void 0 : slots.forwardIcon({ class: classNames == null ? void 0 : classNames.forwardIcon }),\n \"data-before\": dataAttr(isBefore)\n }\n )\n ] })\n };\n return renderItemProp({\n value,\n index,\n key: `${value}-${index}`,\n page,\n total,\n children: typeof value === \"number\" ? value : itemChildren[value],\n activePage,\n dotsJump,\n isBefore,\n isActive: value === activePage,\n isPrevious: value === activePage - 1,\n isNext: value === activePage + 1,\n isFirst: value === 1,\n isLast: value === total,\n onNext,\n onPrevious,\n setPage,\n onPress: () => setPage(page),\n ref: typeof value === \"number\" ? (node) => getItemRef(node, value) : void 0,\n className: slots.item({ class: classNames == null ? void 0 : classNames.item }),\n getAriaLabel: getItemAriaLabel\n });\n }\n if (value === PaginationItemType.PREV) {\n return /* @__PURE__ */ jsx(\n pagination_item_default,\n {\n className: slots.prev({\n class: classNames == null ? void 0 : classNames.prev\n }),\n \"data-slot\": \"prev\",\n getAriaLabel: getItemAriaLabel,\n isDisabled: !loop && activePage === (isRTL ? total : 1),\n value,\n onPress: onPrevious,\n children: /* @__PURE__ */ jsx(ChevronIcon, {})\n },\n PaginationItemType.PREV\n );\n }\n if (value === PaginationItemType.NEXT) {\n return /* @__PURE__ */ jsx(\n pagination_item_default,\n {\n className: slots.next({\n class: clsx(classNames == null ? void 0 : classNames.next)\n }),\n \"data-slot\": \"next\",\n getAriaLabel: getItemAriaLabel,\n isDisabled: !loop && activePage === (isRTL ? 1 : total),\n value,\n onPress: onNext,\n children: /* @__PURE__ */ jsx(\n ChevronIcon,\n {\n className: slots.chevronNext({\n class: classNames == null ? void 0 : classNames.chevronNext\n })\n }\n )\n },\n PaginationItemType.NEXT\n );\n }\n if (value === PaginationItemType.DOTS) {\n return /* @__PURE__ */ jsxs(\n pagination_item_default,\n {\n className: slots.item({\n class: clsx(classNames == null ? void 0 : classNames.item, \"group\")\n }),\n \"data-slot\": \"item\",\n getAriaLabel: getItemAriaLabel,\n value,\n onPress: () => isBefore ? setPage(activePage - dotsJump >= 1 ? activePage - dotsJump : 1) : setPage(activePage + dotsJump <= total ? activePage + dotsJump : total),\n children: [\n /* @__PURE__ */ jsx(EllipsisIcon, { className: slots == null ? void 0 : slots.ellipsis({ class: classNames == null ? void 0 : classNames.ellipsis }) }),\n /* @__PURE__ */ jsx(\n ForwardIcon,\n {\n className: slots == null ? void 0 : slots.forwardIcon({ class: classNames == null ? void 0 : classNames.forwardIcon }),\n \"data-before\": dataAttr(isRTL ? !isBefore : isBefore)\n }\n )\n ]\n },\n PaginationItemType.DOTS + isBefore\n );\n }\n return /* @__PURE__ */ createElement(pagination_item_default, { ...getItemProps({ value }), key: value, getAriaLabel: getItemAriaLabel }, value);\n },\n [\n isRTL,\n activePage,\n dotsJump,\n getItemProps,\n loop,\n range,\n renderItemProp,\n slots,\n classNames,\n total\n ]\n );\n return /* @__PURE__ */ jsx(Component, { ...getBaseProps(), children: /* @__PURE__ */ jsxs(\"ul\", { ...getWrapperProps(), children: [\n !disableCursorAnimation && !disableAnimation && /* @__PURE__ */ jsx(pagination_cursor_default, { ...getCursorProps() }),\n range.map(renderItem)\n ] }) });\n});\nPagination.displayName = \"NextUI.Pagination\";\nvar pagination_default = Pagination;\n\nexport {\n pagination_default\n};\n","// src/ellipsis.tsx\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nvar EllipsisIcon = (props) => /* @__PURE__ */ jsxs(\n \"svg\",\n {\n \"aria-hidden\": \"true\",\n fill: \"none\",\n height: \"1em\",\n shapeRendering: \"geometricPrecision\",\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n strokeWidth: \"1.5\",\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n ...props,\n children: [\n /* @__PURE__ */ jsx(\"circle\", { cx: \"12\", cy: \"12\", fill: \"currentColor\", r: \"1\" }),\n /* @__PURE__ */ jsx(\"circle\", { cx: \"19\", cy: \"12\", fill: \"currentColor\", r: \"1\" }),\n /* @__PURE__ */ jsx(\"circle\", { cx: \"5\", cy: \"12\", fill: \"currentColor\", r: \"1\" })\n ]\n }\n);\n\nexport {\n EllipsisIcon\n};\n","\"use client\";\n\n// src/base/tab-item-base.ts\nimport { BaseItem } from \"@nextui-org/aria-utils\";\nvar TabItemBase = BaseItem;\nvar tab_item_base_default = TabItemBase;\n\nexport {\n tab_item_base_default\n};\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ const $99b62ae3ff97ec45$export$c5f62239608282b6 = new WeakMap();\nfunction $99b62ae3ff97ec45$export$567fc7097e064344(state, key, role) {\n if (!state) // this case should only happen in the first render before the tabs are registered\n return '';\n if (typeof key === 'string') key = key.replace(/\\s+/g, '');\n let baseId = $99b62ae3ff97ec45$export$c5f62239608282b6.get(state);\n return `${baseId}-${role}-${key}`;\n}\n\n\nexport {$99b62ae3ff97ec45$export$c5f62239608282b6 as tabsIds, $99b62ae3ff97ec45$export$567fc7097e064344 as generateId};\n//# sourceMappingURL=utils.module.js.map\n","import {generateId as $99b62ae3ff97ec45$export$567fc7097e064344} from \"./utils.mjs\";\nimport {useLabels as $jik2T$useLabels, mergeProps as $jik2T$mergeProps} from \"@react-aria/utils\";\nimport {useHasTabbableChild as $jik2T$useHasTabbableChild} from \"@react-aria/focus\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nfunction $34bce698202e07cb$export$fae0121b5afe572d(props, state, ref) {\n // The tabpanel should have tabIndex=0 when there are no tabbable elements within it.\n // Otherwise, tabbing from the focused tab should go directly to the first tabbable element\n // within the tabpanel.\n let tabIndex = (0, $jik2T$useHasTabbableChild)(ref) ? undefined : 0;\n var _props_id;\n const id = (0, $99b62ae3ff97ec45$export$567fc7097e064344)(state, (_props_id = props.id) !== null && _props_id !== void 0 ? _props_id : state === null || state === void 0 ? void 0 : state.selectedKey, 'tabpanel');\n const tabPanelProps = (0, $jik2T$useLabels)({\n ...props,\n id: id,\n 'aria-labelledby': (0, $99b62ae3ff97ec45$export$567fc7097e064344)(state, state === null || state === void 0 ? void 0 : state.selectedKey, 'tab')\n });\n return {\n tabPanelProps: (0, $jik2T$mergeProps)(tabPanelProps, {\n tabIndex: tabIndex,\n role: 'tabpanel',\n 'aria-describedby': props['aria-describedby'],\n 'aria-details': props['aria-details']\n })\n };\n}\n\n\nexport {$34bce698202e07cb$export$fae0121b5afe572d as useTabPanel};\n//# sourceMappingURL=useTabPanel.module.js.map\n","\"use client\";\n\n// src/tab-panel.tsx\nimport { forwardRef } from \"@nextui-org/system\";\nimport { useDOMRef } from \"@nextui-org/react-utils\";\nimport { clsx, getInertValue } from \"@nextui-org/shared-utils\";\nimport { mergeProps } from \"@react-aria/utils\";\nimport { useTabPanel } from \"@react-aria/tabs\";\nimport { useFocusRing } from \"@react-aria/focus\";\nimport { jsx } from \"react/jsx-runtime\";\nvar TabPanel = forwardRef((props, ref) => {\n var _a, _b;\n const { as, tabKey, destroyInactiveTabPanel, state, className, slots, classNames, ...otherProps } = props;\n const Component = as || \"div\";\n const domRef = useDOMRef(ref);\n const { tabPanelProps } = useTabPanel({ ...props, id: String(tabKey) }, state, domRef);\n const { focusProps, isFocused, isFocusVisible } = useFocusRing();\n const selectedItem = state.selectedItem;\n const content = state.collection.getItem(tabKey).props.children;\n const tabPanelStyles = clsx(classNames == null ? void 0 : classNames.panel, className, (_a = selectedItem == null ? void 0 : selectedItem.props) == null ? void 0 : _a.className);\n const isSelected = tabKey === (selectedItem == null ? void 0 : selectedItem.key);\n if (!content || !isSelected && destroyInactiveTabPanel) {\n return null;\n }\n return /* @__PURE__ */ jsx(\n Component,\n {\n ref: domRef,\n \"data-focus\": isFocused,\n \"data-focus-visible\": isFocusVisible,\n \"data-inert\": !isSelected ? \"true\" : void 0,\n inert: getInertValue(!isSelected),\n ...isSelected && mergeProps(tabPanelProps, focusProps, otherProps),\n className: (_b = slots.panel) == null ? void 0 : _b.call(slots, { class: tabPanelStyles }),\n \"data-slot\": \"panel\",\n children: content\n }\n );\n});\nTabPanel.displayName = \"NextUI.TabPanel\";\nvar tab_panel_default = TabPanel;\n\nexport {\n tab_panel_default\n};\n","import {generateId as $99b62ae3ff97ec45$export$567fc7097e064344} from \"./utils.mjs\";\nimport {filterDOMProps as $dObGJ$filterDOMProps, useLinkProps as $dObGJ$useLinkProps, mergeProps as $dObGJ$mergeProps} from \"@react-aria/utils\";\nimport {useSelectableItem as $dObGJ$useSelectableItem} from \"@react-aria/selection\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nfunction $0175d55c2a017ebc$export$fdf4756d5b8ef90a(props, state, ref) {\n let { key: key, isDisabled: propsDisabled, shouldSelectOnPressUp: shouldSelectOnPressUp } = props;\n let { selectionManager: manager, selectedKey: selectedKey } = state;\n let isSelected = key === selectedKey;\n let isDisabled = propsDisabled || state.isDisabled || state.selectionManager.isDisabled(key);\n let { itemProps: itemProps, isPressed: isPressed } = (0, $dObGJ$useSelectableItem)({\n selectionManager: manager,\n key: key,\n ref: ref,\n isDisabled: isDisabled,\n shouldSelectOnPressUp: shouldSelectOnPressUp,\n linkBehavior: 'selection'\n });\n let tabId = (0, $99b62ae3ff97ec45$export$567fc7097e064344)(state, key, 'tab');\n let tabPanelId = (0, $99b62ae3ff97ec45$export$567fc7097e064344)(state, key, 'tabpanel');\n let { tabIndex: tabIndex } = itemProps;\n let item = state.collection.getItem(key);\n let domProps = (0, $dObGJ$filterDOMProps)(item === null || item === void 0 ? void 0 : item.props, {\n labelable: true\n });\n delete domProps.id;\n let linkProps = (0, $dObGJ$useLinkProps)(item === null || item === void 0 ? void 0 : item.props);\n return {\n tabProps: (0, $dObGJ$mergeProps)(domProps, linkProps, itemProps, {\n id: tabId,\n 'aria-selected': isSelected,\n 'aria-disabled': isDisabled || undefined,\n 'aria-controls': isSelected ? tabPanelId : undefined,\n tabIndex: isDisabled ? undefined : tabIndex,\n role: 'tab'\n }),\n isSelected: isSelected,\n isDisabled: isDisabled,\n isPressed: isPressed\n };\n}\n\n\nexport {$0175d55c2a017ebc$export$fdf4756d5b8ef90a as useTab};\n//# sourceMappingURL=useTab.module.js.map\n","import { addDomEvent } from './add-dom-event.mjs';\nimport { addPointerInfo } from './event-info.mjs';\n\nfunction addPointerEvent(target, eventName, handler, options) {\n return addDomEvent(target, eventName, addPointerInfo(handler), options);\n}\n\nexport { addPointerEvent };\n","const distance = (a, b) => Math.abs(a - b);\nfunction distance2D(a, b) {\n // Multi-dimensional\n const xDelta = distance(a.x, b.x);\n const yDelta = distance(a.y, b.y);\n return Math.sqrt(xDelta ** 2 + yDelta ** 2);\n}\n\nexport { distance, distance2D };\n","import { extractEventInfo } from '../../events/event-info.mjs';\nimport { secondsToMilliseconds, millisecondsToSeconds } from '../../utils/time-conversion.mjs';\nimport { addPointerEvent } from '../../events/add-pointer-event.mjs';\nimport { pipe } from '../../utils/pipe.mjs';\nimport { distance2D } from '../../utils/distance.mjs';\nimport { isPrimaryPointer } from 'motion-dom';\nimport { frame, cancelFrame, frameData } from '../../frameloop/frame.mjs';\n\n/**\n * @internal\n */\nclass PanSession {\n constructor(event, handlers, { transformPagePoint, contextWindow, dragSnapToOrigin = false, } = {}) {\n /**\n * @internal\n */\n this.startEvent = null;\n /**\n * @internal\n */\n this.lastMoveEvent = null;\n /**\n * @internal\n */\n this.lastMoveEventInfo = null;\n /**\n * @internal\n */\n this.handlers = {};\n /**\n * @internal\n */\n this.contextWindow = window;\n this.updatePoint = () => {\n if (!(this.lastMoveEvent && this.lastMoveEventInfo))\n return;\n const info = getPanInfo(this.lastMoveEventInfo, this.history);\n const isPanStarted = this.startEvent !== null;\n // Only start panning if the offset is larger than 3 pixels. If we make it\n // any larger than this we'll want to reset the pointer history\n // on the first update to avoid visual snapping to the cursoe.\n const isDistancePastThreshold = distance2D(info.offset, { x: 0, y: 0 }) >= 3;\n if (!isPanStarted && !isDistancePastThreshold)\n return;\n const { point } = info;\n const { timestamp } = frameData;\n this.history.push({ ...point, timestamp });\n const { onStart, onMove } = this.handlers;\n if (!isPanStarted) {\n onStart && onStart(this.lastMoveEvent, info);\n this.startEvent = this.lastMoveEvent;\n }\n onMove && onMove(this.lastMoveEvent, info);\n };\n this.handlePointerMove = (event, info) => {\n this.lastMoveEvent = event;\n this.lastMoveEventInfo = transformPoint(info, this.transformPagePoint);\n // Throttle mouse move event to once per frame\n frame.update(this.updatePoint, true);\n };\n this.handlePointerUp = (event, info) => {\n this.end();\n const { onEnd, onSessionEnd, resumeAnimation } = this.handlers;\n if (this.dragSnapToOrigin)\n resumeAnimation && resumeAnimation();\n if (!(this.lastMoveEvent && this.lastMoveEventInfo))\n return;\n const panInfo = getPanInfo(event.type === \"pointercancel\"\n ? this.lastMoveEventInfo\n : transformPoint(info, this.transformPagePoint), this.history);\n if (this.startEvent && onEnd) {\n onEnd(event, panInfo);\n }\n onSessionEnd && onSessionEnd(event, panInfo);\n };\n // If we have more than one touch, don't start detecting this gesture\n if (!isPrimaryPointer(event))\n return;\n this.dragSnapToOrigin = dragSnapToOrigin;\n this.handlers = handlers;\n this.transformPagePoint = transformPagePoint;\n this.contextWindow = contextWindow || window;\n const info = extractEventInfo(event);\n const initialInfo = transformPoint(info, this.transformPagePoint);\n const { point } = initialInfo;\n const { timestamp } = frameData;\n this.history = [{ ...point, timestamp }];\n const { onSessionStart } = handlers;\n onSessionStart &&\n onSessionStart(event, getPanInfo(initialInfo, this.history));\n this.removeListeners = pipe(addPointerEvent(this.contextWindow, \"pointermove\", this.handlePointerMove), addPointerEvent(this.contextWindow, \"pointerup\", this.handlePointerUp), addPointerEvent(this.contextWindow, \"pointercancel\", this.handlePointerUp));\n }\n updateHandlers(handlers) {\n this.handlers = handlers;\n }\n end() {\n this.removeListeners && this.removeListeners();\n cancelFrame(this.updatePoint);\n }\n}\nfunction transformPoint(info, transformPagePoint) {\n return transformPagePoint ? { point: transformPagePoint(info.point) } : info;\n}\nfunction subtractPoint(a, b) {\n return { x: a.x - b.x, y: a.y - b.y };\n}\nfunction getPanInfo({ point }, history) {\n return {\n point,\n delta: subtractPoint(point, lastDevicePoint(history)),\n offset: subtractPoint(point, startDevicePoint(history)),\n velocity: getVelocity(history, 0.1),\n };\n}\nfunction startDevicePoint(history) {\n return history[0];\n}\nfunction lastDevicePoint(history) {\n return history[history.length - 1];\n}\nfunction getVelocity(history, timeDelta) {\n if (history.length < 2) {\n return { x: 0, y: 0 };\n }\n let i = history.length - 1;\n let timestampedPoint = null;\n const lastPoint = lastDevicePoint(history);\n while (i >= 0) {\n timestampedPoint = history[i];\n if (lastPoint.timestamp - timestampedPoint.timestamp >\n secondsToMilliseconds(timeDelta)) {\n break;\n }\n i--;\n }\n if (!timestampedPoint) {\n return { x: 0, y: 0 };\n }\n const time = millisecondsToSeconds(lastPoint.timestamp - timestampedPoint.timestamp);\n if (time === 0) {\n return { x: 0, y: 0 };\n }\n const currentVelocity = {\n x: (lastPoint.x - timestampedPoint.x) / time,\n y: (lastPoint.y - timestampedPoint.y) / time,\n };\n if (currentVelocity.x === Infinity) {\n currentVelocity.x = 0;\n }\n if (currentVelocity.y === Infinity) {\n currentVelocity.y = 0;\n }\n return currentVelocity;\n}\n\nexport { PanSession };\n","import { mixNumber } from '../../utils/mix/number.mjs';\n\nconst SCALE_PRECISION = 0.0001;\nconst SCALE_MIN = 1 - SCALE_PRECISION;\nconst SCALE_MAX = 1 + SCALE_PRECISION;\nconst TRANSLATE_PRECISION = 0.01;\nconst TRANSLATE_MIN = 0 - TRANSLATE_PRECISION;\nconst TRANSLATE_MAX = 0 + TRANSLATE_PRECISION;\nfunction calcLength(axis) {\n return axis.max - axis.min;\n}\nfunction isNear(value, target, maxDistance) {\n return Math.abs(value - target) <= maxDistance;\n}\nfunction calcAxisDelta(delta, source, target, origin = 0.5) {\n delta.origin = origin;\n delta.originPoint = mixNumber(source.min, source.max, delta.origin);\n delta.scale = calcLength(target) / calcLength(source);\n delta.translate =\n mixNumber(target.min, target.max, delta.origin) - delta.originPoint;\n if ((delta.scale >= SCALE_MIN && delta.scale <= SCALE_MAX) ||\n isNaN(delta.scale)) {\n delta.scale = 1.0;\n }\n if ((delta.translate >= TRANSLATE_MIN &&\n delta.translate <= TRANSLATE_MAX) ||\n isNaN(delta.translate)) {\n delta.translate = 0.0;\n }\n}\nfunction calcBoxDelta(delta, source, target, origin) {\n calcAxisDelta(delta.x, source.x, target.x, origin ? origin.originX : undefined);\n calcAxisDelta(delta.y, source.y, target.y, origin ? origin.originY : undefined);\n}\nfunction calcRelativeAxis(target, relative, parent) {\n target.min = parent.min + relative.min;\n target.max = target.min + calcLength(relative);\n}\nfunction calcRelativeBox(target, relative, parent) {\n calcRelativeAxis(target.x, relative.x, parent.x);\n calcRelativeAxis(target.y, relative.y, parent.y);\n}\nfunction calcRelativeAxisPosition(target, layout, parent) {\n target.min = layout.min - parent.min;\n target.max = target.min + calcLength(layout);\n}\nfunction calcRelativePosition(target, layout, parent) {\n calcRelativeAxisPosition(target.x, layout.x, parent.x);\n calcRelativeAxisPosition(target.y, layout.y, parent.y);\n}\n\nexport { calcAxisDelta, calcBoxDelta, calcLength, calcRelativeAxis, calcRelativeAxisPosition, calcRelativeBox, calcRelativePosition, isNear };\n","import { progress } from '../../../utils/progress.mjs';\nimport { calcLength } from '../../../projection/geometry/delta-calc.mjs';\nimport { clamp } from '../../../utils/clamp.mjs';\nimport { mixNumber } from '../../../utils/mix/number.mjs';\n\n/**\n * Apply constraints to a point. These constraints are both physical along an\n * axis, and an elastic factor that determines how much to constrain the point\n * by if it does lie outside the defined parameters.\n */\nfunction applyConstraints(point, { min, max }, elastic) {\n if (min !== undefined && point < min) {\n // If we have a min point defined, and this is outside of that, constrain\n point = elastic\n ? mixNumber(min, point, elastic.min)\n : Math.max(point, min);\n }\n else if (max !== undefined && point > max) {\n // If we have a max point defined, and this is outside of that, constrain\n point = elastic\n ? mixNumber(max, point, elastic.max)\n : Math.min(point, max);\n }\n return point;\n}\n/**\n * Calculate constraints in terms of the viewport when defined relatively to the\n * measured axis. This is measured from the nearest edge, so a max constraint of 200\n * on an axis with a max value of 300 would return a constraint of 500 - axis length\n */\nfunction calcRelativeAxisConstraints(axis, min, max) {\n return {\n min: min !== undefined ? axis.min + min : undefined,\n max: max !== undefined\n ? axis.max + max - (axis.max - axis.min)\n : undefined,\n };\n}\n/**\n * Calculate constraints in terms of the viewport when\n * defined relatively to the measured bounding box.\n */\nfunction calcRelativeConstraints(layoutBox, { top, left, bottom, right }) {\n return {\n x: calcRelativeAxisConstraints(layoutBox.x, left, right),\n y: calcRelativeAxisConstraints(layoutBox.y, top, bottom),\n };\n}\n/**\n * Calculate viewport constraints when defined as another viewport-relative axis\n */\nfunction calcViewportAxisConstraints(layoutAxis, constraintsAxis) {\n let min = constraintsAxis.min - layoutAxis.min;\n let max = constraintsAxis.max - layoutAxis.max;\n // If the constraints axis is actually smaller than the layout axis then we can\n // flip the constraints\n if (constraintsAxis.max - constraintsAxis.min <\n layoutAxis.max - layoutAxis.min) {\n [min, max] = [max, min];\n }\n return { min, max };\n}\n/**\n * Calculate viewport constraints when defined as another viewport-relative box\n */\nfunction calcViewportConstraints(layoutBox, constraintsBox) {\n return {\n x: calcViewportAxisConstraints(layoutBox.x, constraintsBox.x),\n y: calcViewportAxisConstraints(layoutBox.y, constraintsBox.y),\n };\n}\n/**\n * Calculate a transform origin relative to the source axis, between 0-1, that results\n * in an asthetically pleasing scale/transform needed to project from source to target.\n */\nfunction calcOrigin(source, target) {\n let origin = 0.5;\n const sourceLength = calcLength(source);\n const targetLength = calcLength(target);\n if (targetLength > sourceLength) {\n origin = progress(target.min, target.max - sourceLength, source.min);\n }\n else if (sourceLength > targetLength) {\n origin = progress(source.min, source.max - targetLength, target.min);\n }\n return clamp(0, 1, origin);\n}\n/**\n * Rebase the calculated viewport constraints relative to the layout.min point.\n */\nfunction rebaseAxisConstraints(layout, constraints) {\n const relativeConstraints = {};\n if (constraints.min !== undefined) {\n relativeConstraints.min = constraints.min - layout.min;\n }\n if (constraints.max !== undefined) {\n relativeConstraints.max = constraints.max - layout.min;\n }\n return relativeConstraints;\n}\nconst defaultElastic = 0.35;\n/**\n * Accepts a dragElastic prop and returns resolved elastic values for each axis.\n */\nfunction resolveDragElastic(dragElastic = defaultElastic) {\n if (dragElastic === false) {\n dragElastic = 0;\n }\n else if (dragElastic === true) {\n dragElastic = defaultElastic;\n }\n return {\n x: resolveAxisElastic(dragElastic, \"left\", \"right\"),\n y: resolveAxisElastic(dragElastic, \"top\", \"bottom\"),\n };\n}\nfunction resolveAxisElastic(dragElastic, minLabel, maxLabel) {\n return {\n min: resolvePointElastic(dragElastic, minLabel),\n max: resolvePointElastic(dragElastic, maxLabel),\n };\n}\nfunction resolvePointElastic(dragElastic, label) {\n return typeof dragElastic === \"number\"\n ? dragElastic\n : dragElastic[label] || 0;\n}\n\nexport { applyConstraints, calcOrigin, calcRelativeAxisConstraints, calcRelativeConstraints, calcViewportAxisConstraints, calcViewportConstraints, defaultElastic, rebaseAxisConstraints, resolveAxisElastic, resolveDragElastic, resolvePointElastic };\n","function eachAxis(callback) {\n return [callback(\"x\"), callback(\"y\")];\n}\n\nexport { eachAxis };\n","// Fixes https://github.com/motiondivision/motion/issues/2270\nconst getContextWindow = ({ current }) => {\n return current ? current.ownerDocument.defaultView : null;\n};\n\nexport { getContextWindow };\n","import { invariant } from 'motion-utils';\nimport { setDragLock } from 'motion-dom';\nimport { PanSession } from '../pan/PanSession.mjs';\nimport { isRefObject } from '../../utils/is-ref-object.mjs';\nimport { addPointerEvent } from '../../events/add-pointer-event.mjs';\nimport { applyConstraints, calcRelativeConstraints, resolveDragElastic, rebaseAxisConstraints, calcViewportConstraints, calcOrigin, defaultElastic } from './utils/constraints.mjs';\nimport { createBox } from '../../projection/geometry/models.mjs';\nimport { eachAxis } from '../../projection/utils/each-axis.mjs';\nimport { measurePageBox } from '../../projection/utils/measure.mjs';\nimport { extractEventInfo } from '../../events/event-info.mjs';\nimport { convertBoxToBoundingBox, convertBoundingBoxToBox } from '../../projection/geometry/conversion.mjs';\nimport { addDomEvent } from '../../events/add-dom-event.mjs';\nimport { calcLength } from '../../projection/geometry/delta-calc.mjs';\nimport { mixNumber } from '../../utils/mix/number.mjs';\nimport { percent } from '../../value/types/numbers/units.mjs';\nimport { animateMotionValue } from '../../animation/interfaces/motion-value.mjs';\nimport { getContextWindow } from '../../utils/get-context-window.mjs';\nimport { addValueToWillChange } from '../../value/use-will-change/add-will-change.mjs';\nimport { frame } from '../../frameloop/frame.mjs';\n\nconst elementDragControls = new WeakMap();\n/**\n *\n */\n// let latestPointerEvent: PointerEvent\nclass VisualElementDragControls {\n constructor(visualElement) {\n this.openDragLock = null;\n this.isDragging = false;\n this.currentDirection = null;\n this.originPoint = { x: 0, y: 0 };\n /**\n * The permitted boundaries of travel, in pixels.\n */\n this.constraints = false;\n this.hasMutatedConstraints = false;\n /**\n * The per-axis resolved elastic values.\n */\n this.elastic = createBox();\n this.visualElement = visualElement;\n }\n start(originEvent, { snapToCursor = false } = {}) {\n /**\n * Don't start dragging if this component is exiting\n */\n const { presenceContext } = this.visualElement;\n if (presenceContext && presenceContext.isPresent === false)\n return;\n const onSessionStart = (event) => {\n const { dragSnapToOrigin } = this.getProps();\n // Stop or pause any animations on both axis values immediately. This allows the user to throw and catch\n // the component.\n dragSnapToOrigin ? this.pauseAnimation() : this.stopAnimation();\n if (snapToCursor) {\n this.snapToCursor(extractEventInfo(event).point);\n }\n };\n const onStart = (event, info) => {\n // Attempt to grab the global drag gesture lock - maybe make this part of PanSession\n const { drag, dragPropagation, onDragStart } = this.getProps();\n if (drag && !dragPropagation) {\n if (this.openDragLock)\n this.openDragLock();\n this.openDragLock = setDragLock(drag);\n // If we don 't have the lock, don't start dragging\n if (!this.openDragLock)\n return;\n }\n this.isDragging = true;\n this.currentDirection = null;\n this.resolveConstraints();\n if (this.visualElement.projection) {\n this.visualElement.projection.isAnimationBlocked = true;\n this.visualElement.projection.target = undefined;\n }\n /**\n * Record gesture origin\n */\n eachAxis((axis) => {\n let current = this.getAxisMotionValue(axis).get() || 0;\n /**\n * If the MotionValue is a percentage value convert to px\n */\n if (percent.test(current)) {\n const { projection } = this.visualElement;\n if (projection && projection.layout) {\n const measuredAxis = projection.layout.layoutBox[axis];\n if (measuredAxis) {\n const length = calcLength(measuredAxis);\n current = length * (parseFloat(current) / 100);\n }\n }\n }\n this.originPoint[axis] = current;\n });\n // Fire onDragStart event\n if (onDragStart) {\n frame.postRender(() => onDragStart(event, info));\n }\n addValueToWillChange(this.visualElement, \"transform\");\n const { animationState } = this.visualElement;\n animationState && animationState.setActive(\"whileDrag\", true);\n };\n const onMove = (event, info) => {\n // latestPointerEvent = event\n const { dragPropagation, dragDirectionLock, onDirectionLock, onDrag, } = this.getProps();\n // If we didn't successfully receive the gesture lock, early return.\n if (!dragPropagation && !this.openDragLock)\n return;\n const { offset } = info;\n // Attempt to detect drag direction if directionLock is true\n if (dragDirectionLock && this.currentDirection === null) {\n this.currentDirection = getCurrentDirection(offset);\n // If we've successfully set a direction, notify listener\n if (this.currentDirection !== null) {\n onDirectionLock && onDirectionLock(this.currentDirection);\n }\n return;\n }\n // Update each point with the latest position\n this.updateAxis(\"x\", info.point, offset);\n this.updateAxis(\"y\", info.point, offset);\n /**\n * Ideally we would leave the renderer to fire naturally at the end of\n * this frame but if the element is about to change layout as the result\n * of a re-render we want to ensure the browser can read the latest\n * bounding box to ensure the pointer and element don't fall out of sync.\n */\n this.visualElement.render();\n /**\n * This must fire after the render call as it might trigger a state\n * change which itself might trigger a layout update.\n */\n onDrag && onDrag(event, info);\n };\n const onSessionEnd = (event, info) => this.stop(event, info);\n const resumeAnimation = () => eachAxis((axis) => {\n var _a;\n return this.getAnimationState(axis) === \"paused\" &&\n ((_a = this.getAxisMotionValue(axis).animation) === null || _a === void 0 ? void 0 : _a.play());\n });\n const { dragSnapToOrigin } = this.getProps();\n this.panSession = new PanSession(originEvent, {\n onSessionStart,\n onStart,\n onMove,\n onSessionEnd,\n resumeAnimation,\n }, {\n transformPagePoint: this.visualElement.getTransformPagePoint(),\n dragSnapToOrigin,\n contextWindow: getContextWindow(this.visualElement),\n });\n }\n stop(event, info) {\n const isDragging = this.isDragging;\n this.cancel();\n if (!isDragging)\n return;\n const { velocity } = info;\n this.startAnimation(velocity);\n const { onDragEnd } = this.getProps();\n if (onDragEnd) {\n frame.postRender(() => onDragEnd(event, info));\n }\n }\n cancel() {\n this.isDragging = false;\n const { projection, animationState } = this.visualElement;\n if (projection) {\n projection.isAnimationBlocked = false;\n }\n this.panSession && this.panSession.end();\n this.panSession = undefined;\n const { dragPropagation } = this.getProps();\n if (!dragPropagation && this.openDragLock) {\n this.openDragLock();\n this.openDragLock = null;\n }\n animationState && animationState.setActive(\"whileDrag\", false);\n }\n updateAxis(axis, _point, offset) {\n const { drag } = this.getProps();\n // If we're not dragging this axis, do an early return.\n if (!offset || !shouldDrag(axis, drag, this.currentDirection))\n return;\n const axisValue = this.getAxisMotionValue(axis);\n let next = this.originPoint[axis] + offset[axis];\n // Apply constraints\n if (this.constraints && this.constraints[axis]) {\n next = applyConstraints(next, this.constraints[axis], this.elastic[axis]);\n }\n axisValue.set(next);\n }\n resolveConstraints() {\n var _a;\n const { dragConstraints, dragElastic } = this.getProps();\n const layout = this.visualElement.projection &&\n !this.visualElement.projection.layout\n ? this.visualElement.projection.measure(false)\n : (_a = this.visualElement.projection) === null || _a === void 0 ? void 0 : _a.layout;\n const prevConstraints = this.constraints;\n if (dragConstraints && isRefObject(dragConstraints)) {\n if (!this.constraints) {\n this.constraints = this.resolveRefConstraints();\n }\n }\n else {\n if (dragConstraints && layout) {\n this.constraints = calcRelativeConstraints(layout.layoutBox, dragConstraints);\n }\n else {\n this.constraints = false;\n }\n }\n this.elastic = resolveDragElastic(dragElastic);\n /**\n * If we're outputting to external MotionValues, we want to rebase the measured constraints\n * from viewport-relative to component-relative.\n */\n if (prevConstraints !== this.constraints &&\n layout &&\n this.constraints &&\n !this.hasMutatedConstraints) {\n eachAxis((axis) => {\n if (this.constraints !== false &&\n this.getAxisMotionValue(axis)) {\n this.constraints[axis] = rebaseAxisConstraints(layout.layoutBox[axis], this.constraints[axis]);\n }\n });\n }\n }\n resolveRefConstraints() {\n const { dragConstraints: constraints, onMeasureDragConstraints } = this.getProps();\n if (!constraints || !isRefObject(constraints))\n return false;\n const constraintsElement = constraints.current;\n invariant(constraintsElement !== null, \"If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.\");\n const { projection } = this.visualElement;\n // TODO\n if (!projection || !projection.layout)\n return false;\n const constraintsBox = measurePageBox(constraintsElement, projection.root, this.visualElement.getTransformPagePoint());\n let measuredConstraints = calcViewportConstraints(projection.layout.layoutBox, constraintsBox);\n /**\n * If there's an onMeasureDragConstraints listener we call it and\n * if different constraints are returned, set constraints to that\n */\n if (onMeasureDragConstraints) {\n const userConstraints = onMeasureDragConstraints(convertBoxToBoundingBox(measuredConstraints));\n this.hasMutatedConstraints = !!userConstraints;\n if (userConstraints) {\n measuredConstraints = convertBoundingBoxToBox(userConstraints);\n }\n }\n return measuredConstraints;\n }\n startAnimation(velocity) {\n const { drag, dragMomentum, dragElastic, dragTransition, dragSnapToOrigin, onDragTransitionEnd, } = this.getProps();\n const constraints = this.constraints || {};\n const momentumAnimations = eachAxis((axis) => {\n if (!shouldDrag(axis, drag, this.currentDirection)) {\n return;\n }\n let transition = (constraints && constraints[axis]) || {};\n if (dragSnapToOrigin)\n transition = { min: 0, max: 0 };\n /**\n * Overdamp the boundary spring if `dragElastic` is disabled. There's still a frame\n * of spring animations so we should look into adding a disable spring option to `inertia`.\n * We could do something here where we affect the `bounceStiffness` and `bounceDamping`\n * using the value of `dragElastic`.\n */\n const bounceStiffness = dragElastic ? 200 : 1000000;\n const bounceDamping = dragElastic ? 40 : 10000000;\n const inertia = {\n type: \"inertia\",\n velocity: dragMomentum ? velocity[axis] : 0,\n bounceStiffness,\n bounceDamping,\n timeConstant: 750,\n restDelta: 1,\n restSpeed: 10,\n ...dragTransition,\n ...transition,\n };\n // If we're not animating on an externally-provided `MotionValue` we can use the\n // component's animation controls which will handle interactions with whileHover (etc),\n // otherwise we just have to animate the `MotionValue` itself.\n return this.startAxisValueAnimation(axis, inertia);\n });\n // Run all animations and then resolve the new drag constraints.\n return Promise.all(momentumAnimations).then(onDragTransitionEnd);\n }\n startAxisValueAnimation(axis, transition) {\n const axisValue = this.getAxisMotionValue(axis);\n addValueToWillChange(this.visualElement, axis);\n return axisValue.start(animateMotionValue(axis, axisValue, 0, transition, this.visualElement, false));\n }\n stopAnimation() {\n eachAxis((axis) => this.getAxisMotionValue(axis).stop());\n }\n pauseAnimation() {\n eachAxis((axis) => { var _a; return (_a = this.getAxisMotionValue(axis).animation) === null || _a === void 0 ? void 0 : _a.pause(); });\n }\n getAnimationState(axis) {\n var _a;\n return (_a = this.getAxisMotionValue(axis).animation) === null || _a === void 0 ? void 0 : _a.state;\n }\n /**\n * Drag works differently depending on which props are provided.\n *\n * - If _dragX and _dragY are provided, we output the gesture delta directly to those motion values.\n * - Otherwise, we apply the delta to the x/y motion values.\n */\n getAxisMotionValue(axis) {\n const dragKey = `_drag${axis.toUpperCase()}`;\n const props = this.visualElement.getProps();\n const externalMotionValue = props[dragKey];\n return externalMotionValue\n ? externalMotionValue\n : this.visualElement.getValue(axis, (props.initial\n ? props.initial[axis]\n : undefined) || 0);\n }\n snapToCursor(point) {\n eachAxis((axis) => {\n const { drag } = this.getProps();\n // If we're not dragging this axis, do an early return.\n if (!shouldDrag(axis, drag, this.currentDirection))\n return;\n const { projection } = this.visualElement;\n const axisValue = this.getAxisMotionValue(axis);\n if (projection && projection.layout) {\n const { min, max } = projection.layout.layoutBox[axis];\n axisValue.set(point[axis] - mixNumber(min, max, 0.5));\n }\n });\n }\n /**\n * When the viewport resizes we want to check if the measured constraints\n * have changed and, if so, reposition the element within those new constraints\n * relative to where it was before the resize.\n */\n scalePositionWithinConstraints() {\n if (!this.visualElement.current)\n return;\n const { drag, dragConstraints } = this.getProps();\n const { projection } = this.visualElement;\n if (!isRefObject(dragConstraints) || !projection || !this.constraints)\n return;\n /**\n * Stop current animations as there can be visual glitching if we try to do\n * this mid-animation\n */\n this.stopAnimation();\n /**\n * Record the relative position of the dragged element relative to the\n * constraints box and save as a progress value.\n */\n const boxProgress = { x: 0, y: 0 };\n eachAxis((axis) => {\n const axisValue = this.getAxisMotionValue(axis);\n if (axisValue && this.constraints !== false) {\n const latest = axisValue.get();\n boxProgress[axis] = calcOrigin({ min: latest, max: latest }, this.constraints[axis]);\n }\n });\n /**\n * Update the layout of this element and resolve the latest drag constraints\n */\n const { transformTemplate } = this.visualElement.getProps();\n this.visualElement.current.style.transform = transformTemplate\n ? transformTemplate({}, \"\")\n : \"none\";\n projection.root && projection.root.updateScroll();\n projection.updateLayout();\n this.resolveConstraints();\n /**\n * For each axis, calculate the current progress of the layout axis\n * within the new constraints.\n */\n eachAxis((axis) => {\n if (!shouldDrag(axis, drag, null))\n return;\n /**\n * Calculate a new transform based on the previous box progress\n */\n const axisValue = this.getAxisMotionValue(axis);\n const { min, max } = this.constraints[axis];\n axisValue.set(mixNumber(min, max, boxProgress[axis]));\n });\n }\n addListeners() {\n if (!this.visualElement.current)\n return;\n elementDragControls.set(this.visualElement, this);\n const element = this.visualElement.current;\n /**\n * Attach a pointerdown event listener on this DOM element to initiate drag tracking.\n */\n const stopPointerListener = addPointerEvent(element, \"pointerdown\", (event) => {\n const { drag, dragListener = true } = this.getProps();\n drag && dragListener && this.start(event);\n });\n const measureDragConstraints = () => {\n const { dragConstraints } = this.getProps();\n if (isRefObject(dragConstraints) && dragConstraints.current) {\n this.constraints = this.resolveRefConstraints();\n }\n };\n const { projection } = this.visualElement;\n const stopMeasureLayoutListener = projection.addEventListener(\"measure\", measureDragConstraints);\n if (projection && !projection.layout) {\n projection.root && projection.root.updateScroll();\n projection.updateLayout();\n }\n frame.read(measureDragConstraints);\n /**\n * Attach a window resize listener to scale the draggable target within its defined\n * constraints as the window resizes.\n */\n const stopResizeListener = addDomEvent(window, \"resize\", () => this.scalePositionWithinConstraints());\n /**\n * If the element's layout changes, calculate the delta and apply that to\n * the drag gesture's origin point.\n */\n const stopLayoutUpdateListener = projection.addEventListener(\"didUpdate\", (({ delta, hasLayoutChanged }) => {\n if (this.isDragging && hasLayoutChanged) {\n eachAxis((axis) => {\n const motionValue = this.getAxisMotionValue(axis);\n if (!motionValue)\n return;\n this.originPoint[axis] += delta[axis].translate;\n motionValue.set(motionValue.get() + delta[axis].translate);\n });\n this.visualElement.render();\n }\n }));\n return () => {\n stopResizeListener();\n stopPointerListener();\n stopMeasureLayoutListener();\n stopLayoutUpdateListener && stopLayoutUpdateListener();\n };\n }\n getProps() {\n const props = this.visualElement.getProps();\n const { drag = false, dragDirectionLock = false, dragPropagation = false, dragConstraints = false, dragElastic = defaultElastic, dragMomentum = true, } = props;\n return {\n ...props,\n drag,\n dragDirectionLock,\n dragPropagation,\n dragConstraints,\n dragElastic,\n dragMomentum,\n };\n }\n}\nfunction shouldDrag(direction, drag, currentDirection) {\n return ((drag === true || drag === direction) &&\n (currentDirection === null || currentDirection === direction));\n}\n/**\n * Based on an x/y offset determine the current drag direction. If both axis' offsets are lower\n * than the provided threshold, return `null`.\n *\n * @param offset - The x/y offset from origin.\n * @param lockThreshold - (Optional) - the minimum absolute offset before we can determine a drag direction.\n */\nfunction getCurrentDirection(offset, lockThreshold = 10) {\n let direction = null;\n if (Math.abs(offset.y) > lockThreshold) {\n direction = \"y\";\n }\n else if (Math.abs(offset.x) > lockThreshold) {\n direction = \"x\";\n }\n return direction;\n}\n\nexport { VisualElementDragControls, elementDragControls };\n","import { Feature } from '../../motion/features/Feature.mjs';\nimport { noop } from 'motion-utils';\nimport { VisualElementDragControls } from './VisualElementDragControls.mjs';\n\nclass DragGesture extends Feature {\n constructor(node) {\n super(node);\n this.removeGroupControls = noop;\n this.removeListeners = noop;\n this.controls = new VisualElementDragControls(node);\n }\n mount() {\n // If we've been provided a DragControls for manual control over the drag gesture,\n // subscribe this component to it on mount.\n const { dragControls } = this.node.getProps();\n if (dragControls) {\n this.removeGroupControls = dragControls.subscribe(this.controls);\n }\n this.removeListeners = this.controls.addListeners() || noop;\n }\n unmount() {\n this.removeGroupControls();\n this.removeListeners();\n }\n}\n\nexport { DragGesture };\n","import { PanSession } from './PanSession.mjs';\nimport { addPointerEvent } from '../../events/add-pointer-event.mjs';\nimport { Feature } from '../../motion/features/Feature.mjs';\nimport { noop } from 'motion-utils';\nimport { getContextWindow } from '../../utils/get-context-window.mjs';\nimport { frame } from '../../frameloop/frame.mjs';\n\nconst asyncHandler = (handler) => (event, info) => {\n if (handler) {\n frame.postRender(() => handler(event, info));\n }\n};\nclass PanGesture extends Feature {\n constructor() {\n super(...arguments);\n this.removePointerDownListener = noop;\n }\n onPointerDown(pointerDownEvent) {\n this.session = new PanSession(pointerDownEvent, this.createPanHandlers(), {\n transformPagePoint: this.node.getTransformPagePoint(),\n contextWindow: getContextWindow(this.node),\n });\n }\n createPanHandlers() {\n const { onPanSessionStart, onPanStart, onPan, onPanEnd } = this.node.getProps();\n return {\n onSessionStart: asyncHandler(onPanSessionStart),\n onStart: asyncHandler(onPanStart),\n onMove: onPan,\n onEnd: (event, info) => {\n delete this.session;\n if (onPanEnd) {\n frame.postRender(() => onPanEnd(event, info));\n }\n },\n };\n }\n mount() {\n this.removePointerDownListener = addPointerEvent(this.node.current, \"pointerdown\", (event) => this.onPointerDown(event));\n }\n update() {\n this.session && this.session.updateHandlers(this.createPanHandlers());\n }\n unmount() {\n this.removePointerDownListener();\n this.session && this.session.end();\n }\n}\n\nexport { PanGesture };\n","import { useContext, useId, useEffect, useCallback } from 'react';\nimport { PresenceContext } from '../../context/PresenceContext.mjs';\n\n/**\n * When a component is the child of `AnimatePresence`, it can use `usePresence`\n * to access information about whether it's still present in the React tree.\n *\n * ```jsx\n * import { usePresence } from \"framer-motion\"\n *\n * export const Component = () => {\n * const [isPresent, safeToRemove] = usePresence()\n *\n * useEffect(() => {\n * !isPresent && setTimeout(safeToRemove, 1000)\n * }, [isPresent])\n *\n * return
\n * }\n * ```\n *\n * If `isPresent` is `false`, it means that a component has been removed the tree, but\n * `AnimatePresence` won't really remove it until `safeToRemove` has been called.\n *\n * @public\n */\nfunction usePresence() {\n const context = useContext(PresenceContext);\n if (context === null)\n return [true, null];\n const { isPresent, onExitComplete, register } = context;\n // It's safe to call the following hooks conditionally (after an early return) because the context will always\n // either be null or non-null for the lifespan of the component.\n const id = useId();\n useEffect(() => register(id), []);\n const safeToRemove = useCallback(() => onExitComplete && onExitComplete(id), [id, onExitComplete]);\n return !isPresent && onExitComplete ? [false, safeToRemove] : [true];\n}\n/**\n * Similar to `usePresence`, except `useIsPresent` simply returns whether or not the component is present.\n * There is no `safeToRemove` function.\n *\n * ```jsx\n * import { useIsPresent } from \"framer-motion\"\n *\n * export const Component = () => {\n * const isPresent = useIsPresent()\n *\n * useEffect(() => {\n * !isPresent && console.log(\"I've been removed!\")\n * }, [isPresent])\n *\n * return
\n * }\n * ```\n *\n * @public\n */\nfunction useIsPresent() {\n return isPresent(useContext(PresenceContext));\n}\nfunction isPresent(context) {\n return context === null ? true : context.isPresent;\n}\n\nexport { isPresent, useIsPresent, usePresence };\n","/**\n * This should only ever be modified on the client otherwise it'll\n * persist through server requests. If we need instanced states we\n * could lazy-init via root.\n */\nconst globalProjectionState = {\n /**\n * Global flag as to whether the tree has animated since the last time\n * we resized the window\n */\n hasAnimatedSinceResize: true,\n /**\n * We set this to true once, on the first update. Any nodes added to the tree beyond that\n * update will be given a `data-projection-id` attribute.\n */\n hasEverUpdated: false,\n};\n\nexport { globalProjectionState };\n","import { px } from '../../value/types/numbers/units.mjs';\n\nfunction pixelsToPercent(pixels, axis) {\n if (axis.max === axis.min)\n return 0;\n return (pixels / (axis.max - axis.min)) * 100;\n}\n/**\n * We always correct borderRadius as a percentage rather than pixels to reduce paints.\n * For example, if you are projecting a box that is 100px wide with a 10px borderRadius\n * into a box that is 200px wide with a 20px borderRadius, that is actually a 10%\n * borderRadius in both states. If we animate between the two in pixels that will trigger\n * a paint each time. If we animate between the two in percentage we'll avoid a paint.\n */\nconst correctBorderRadius = {\n correct: (latest, node) => {\n if (!node.target)\n return latest;\n /**\n * If latest is a string, if it's a percentage we can return immediately as it's\n * going to be stretched appropriately. Otherwise, if it's a pixel, convert it to a number.\n */\n if (typeof latest === \"string\") {\n if (px.test(latest)) {\n latest = parseFloat(latest);\n }\n else {\n return latest;\n }\n }\n /**\n * If latest is a number, it's a pixel value. We use the current viewportBox to calculate that\n * pixel value as a percentage of each axis\n */\n const x = pixelsToPercent(latest, node.target.x);\n const y = pixelsToPercent(latest, node.target.y);\n return `${x}% ${y}%`;\n },\n};\n\nexport { correctBorderRadius, pixelsToPercent };\n","import { mixNumber } from '../../utils/mix/number.mjs';\nimport { complex } from '../../value/types/complex/index.mjs';\n\nconst correctBoxShadow = {\n correct: (latest, { treeScale, projectionDelta }) => {\n const original = latest;\n const shadow = complex.parse(latest);\n // TODO: Doesn't support multiple shadows\n if (shadow.length > 5)\n return original;\n const template = complex.createTransformer(latest);\n const offset = typeof shadow[0] !== \"number\" ? 1 : 0;\n // Calculate the overall context scale\n const xScale = projectionDelta.x.scale * treeScale.x;\n const yScale = projectionDelta.y.scale * treeScale.y;\n shadow[0 + offset] /= xScale;\n shadow[1 + offset] /= yScale;\n /**\n * Ideally we'd correct x and y scales individually, but because blur and\n * spread apply to both we have to take a scale average and apply that instead.\n * We could potentially improve the outcome of this by incorporating the ratio between\n * the two scales.\n */\n const averageScale = mixNumber(xScale, yScale, 0.5);\n // Blur\n if (typeof shadow[2 + offset] === \"number\")\n shadow[2 + offset] /= averageScale;\n // Spread\n if (typeof shadow[3 + offset] === \"number\")\n shadow[3 + offset] /= averageScale;\n return template(shadow);\n },\n};\n\nexport { correctBoxShadow };\n","\"use client\";\nimport { jsx } from 'react/jsx-runtime';\nimport { useContext, Component } from 'react';\nimport { usePresence } from '../../../components/AnimatePresence/use-presence.mjs';\nimport { LayoutGroupContext } from '../../../context/LayoutGroupContext.mjs';\nimport { SwitchLayoutGroupContext } from '../../../context/SwitchLayoutGroupContext.mjs';\nimport { globalProjectionState } from '../../../projection/node/state.mjs';\nimport { correctBorderRadius } from '../../../projection/styles/scale-border-radius.mjs';\nimport { correctBoxShadow } from '../../../projection/styles/scale-box-shadow.mjs';\nimport { addScaleCorrector } from '../../../projection/styles/scale-correction.mjs';\nimport { microtask } from '../../../frameloop/microtask.mjs';\nimport { frame } from '../../../frameloop/frame.mjs';\n\nclass MeasureLayoutWithContext extends Component {\n /**\n * This only mounts projection nodes for components that\n * need measuring, we might want to do it for all components\n * in order to incorporate transforms\n */\n componentDidMount() {\n const { visualElement, layoutGroup, switchLayoutGroup, layoutId } = this.props;\n const { projection } = visualElement;\n addScaleCorrector(defaultScaleCorrectors);\n if (projection) {\n if (layoutGroup.group)\n layoutGroup.group.add(projection);\n if (switchLayoutGroup && switchLayoutGroup.register && layoutId) {\n switchLayoutGroup.register(projection);\n }\n projection.root.didUpdate();\n projection.addEventListener(\"animationComplete\", () => {\n this.safeToRemove();\n });\n projection.setOptions({\n ...projection.options,\n onExitComplete: () => this.safeToRemove(),\n });\n }\n globalProjectionState.hasEverUpdated = true;\n }\n getSnapshotBeforeUpdate(prevProps) {\n const { layoutDependency, visualElement, drag, isPresent } = this.props;\n const projection = visualElement.projection;\n if (!projection)\n return null;\n /**\n * TODO: We use this data in relegate to determine whether to\n * promote a previous element. There's no guarantee its presence data\n * will have updated by this point - if a bug like this arises it will\n * have to be that we markForRelegation and then find a new lead some other way,\n * perhaps in didUpdate\n */\n projection.isPresent = isPresent;\n if (drag ||\n prevProps.layoutDependency !== layoutDependency ||\n layoutDependency === undefined) {\n projection.willUpdate();\n }\n else {\n this.safeToRemove();\n }\n if (prevProps.isPresent !== isPresent) {\n if (isPresent) {\n projection.promote();\n }\n else if (!projection.relegate()) {\n /**\n * If there's another stack member taking over from this one,\n * it's in charge of the exit animation and therefore should\n * be in charge of the safe to remove. Otherwise we call it here.\n */\n frame.postRender(() => {\n const stack = projection.getStack();\n if (!stack || !stack.members.length) {\n this.safeToRemove();\n }\n });\n }\n }\n return null;\n }\n componentDidUpdate() {\n const { projection } = this.props.visualElement;\n if (projection) {\n projection.root.didUpdate();\n microtask.postRender(() => {\n if (!projection.currentAnimation && projection.isLead()) {\n this.safeToRemove();\n }\n });\n }\n }\n componentWillUnmount() {\n const { visualElement, layoutGroup, switchLayoutGroup: promoteContext, } = this.props;\n const { projection } = visualElement;\n if (projection) {\n projection.scheduleCheckAfterUnmount();\n if (layoutGroup && layoutGroup.group)\n layoutGroup.group.remove(projection);\n if (promoteContext && promoteContext.deregister)\n promoteContext.deregister(projection);\n }\n }\n safeToRemove() {\n const { safeToRemove } = this.props;\n safeToRemove && safeToRemove();\n }\n render() {\n return null;\n }\n}\nfunction MeasureLayout(props) {\n const [isPresent, safeToRemove] = usePresence();\n const layoutGroup = useContext(LayoutGroupContext);\n return (jsx(MeasureLayoutWithContext, { ...props, layoutGroup: layoutGroup, switchLayoutGroup: useContext(SwitchLayoutGroupContext), isPresent: isPresent, safeToRemove: safeToRemove }));\n}\nconst defaultScaleCorrectors = {\n borderRadius: {\n ...correctBorderRadius,\n applyTo: [\n \"borderTopLeftRadius\",\n \"borderTopRightRadius\",\n \"borderBottomLeftRadius\",\n \"borderBottomRightRadius\",\n ],\n },\n borderTopLeftRadius: correctBorderRadius,\n borderTopRightRadius: correctBorderRadius,\n borderBottomLeftRadius: correctBorderRadius,\n borderBottomRightRadius: correctBorderRadius,\n boxShadow: correctBoxShadow,\n};\n\nexport { MeasureLayout };\n","import { circOut } from '../../easing/circ.mjs';\nimport { progress } from '../../utils/progress.mjs';\nimport { mixNumber } from '../../utils/mix/number.mjs';\nimport { noop } from 'motion-utils';\nimport { percent, px } from '../../value/types/numbers/units.mjs';\n\nconst borders = [\"TopLeft\", \"TopRight\", \"BottomLeft\", \"BottomRight\"];\nconst numBorders = borders.length;\nconst asNumber = (value) => typeof value === \"string\" ? parseFloat(value) : value;\nconst isPx = (value) => typeof value === \"number\" || px.test(value);\nfunction mixValues(target, follow, lead, progress, shouldCrossfadeOpacity, isOnlyMember) {\n if (shouldCrossfadeOpacity) {\n target.opacity = mixNumber(0, \n // TODO Reinstate this if only child\n lead.opacity !== undefined ? lead.opacity : 1, easeCrossfadeIn(progress));\n target.opacityExit = mixNumber(follow.opacity !== undefined ? follow.opacity : 1, 0, easeCrossfadeOut(progress));\n }\n else if (isOnlyMember) {\n target.opacity = mixNumber(follow.opacity !== undefined ? follow.opacity : 1, lead.opacity !== undefined ? lead.opacity : 1, progress);\n }\n /**\n * Mix border radius\n */\n for (let i = 0; i < numBorders; i++) {\n const borderLabel = `border${borders[i]}Radius`;\n let followRadius = getRadius(follow, borderLabel);\n let leadRadius = getRadius(lead, borderLabel);\n if (followRadius === undefined && leadRadius === undefined)\n continue;\n followRadius || (followRadius = 0);\n leadRadius || (leadRadius = 0);\n const canMix = followRadius === 0 ||\n leadRadius === 0 ||\n isPx(followRadius) === isPx(leadRadius);\n if (canMix) {\n target[borderLabel] = Math.max(mixNumber(asNumber(followRadius), asNumber(leadRadius), progress), 0);\n if (percent.test(leadRadius) || percent.test(followRadius)) {\n target[borderLabel] += \"%\";\n }\n }\n else {\n target[borderLabel] = leadRadius;\n }\n }\n /**\n * Mix rotation\n */\n if (follow.rotate || lead.rotate) {\n target.rotate = mixNumber(follow.rotate || 0, lead.rotate || 0, progress);\n }\n}\nfunction getRadius(values, radiusName) {\n return values[radiusName] !== undefined\n ? values[radiusName]\n : values.borderRadius;\n}\n// /**\n// * We only want to mix the background color if there's a follow element\n// * that we're not crossfading opacity between. For instance with switch\n// * AnimateSharedLayout animations, this helps the illusion of a continuous\n// * element being animated but also cuts down on the number of paints triggered\n// * for elements where opacity is doing that work for us.\n// */\n// if (\n// !hasFollowElement &&\n// latestLeadValues.backgroundColor &&\n// latestFollowValues.backgroundColor\n// ) {\n// /**\n// * This isn't ideal performance-wise as mixColor is creating a new function every frame.\n// * We could probably create a mixer that runs at the start of the animation but\n// * the idea behind the crossfader is that it runs dynamically between two potentially\n// * changing targets (ie opacity or borderRadius may be animating independently via variants)\n// */\n// leadState.backgroundColor = followState.backgroundColor = mixColor(\n// latestFollowValues.backgroundColor as string,\n// latestLeadValues.backgroundColor as string\n// )(p)\n// }\nconst easeCrossfadeIn = /*@__PURE__*/ compress(0, 0.5, circOut);\nconst easeCrossfadeOut = /*@__PURE__*/ compress(0.5, 0.95, noop);\nfunction compress(min, max, easing) {\n return (p) => {\n // Could replace ifs with clamp\n if (p < min)\n return 0;\n if (p > max)\n return 1;\n return easing(progress(min, max, p));\n };\n}\n\nexport { mixValues };\n","/**\n * Reset an axis to the provided origin box.\n *\n * This is a mutative operation.\n */\nfunction copyAxisInto(axis, originAxis) {\n axis.min = originAxis.min;\n axis.max = originAxis.max;\n}\n/**\n * Reset a box to the provided origin box.\n *\n * This is a mutative operation.\n */\nfunction copyBoxInto(box, originBox) {\n copyAxisInto(box.x, originBox.x);\n copyAxisInto(box.y, originBox.y);\n}\n/**\n * Reset a delta to the provided origin box.\n *\n * This is a mutative operation.\n */\nfunction copyAxisDeltaInto(delta, originDelta) {\n delta.translate = originDelta.translate;\n delta.scale = originDelta.scale;\n delta.originPoint = originDelta.originPoint;\n delta.origin = originDelta.origin;\n}\n\nexport { copyAxisDeltaInto, copyAxisInto, copyBoxInto };\n","import { mixNumber } from '../../utils/mix/number.mjs';\nimport { percent } from '../../value/types/numbers/units.mjs';\nimport { scalePoint } from './delta-apply.mjs';\n\n/**\n * Remove a delta from a point. This is essentially the steps of applyPointDelta in reverse\n */\nfunction removePointDelta(point, translate, scale, originPoint, boxScale) {\n point -= translate;\n point = scalePoint(point, 1 / scale, originPoint);\n if (boxScale !== undefined) {\n point = scalePoint(point, 1 / boxScale, originPoint);\n }\n return point;\n}\n/**\n * Remove a delta from an axis. This is essentially the steps of applyAxisDelta in reverse\n */\nfunction removeAxisDelta(axis, translate = 0, scale = 1, origin = 0.5, boxScale, originAxis = axis, sourceAxis = axis) {\n if (percent.test(translate)) {\n translate = parseFloat(translate);\n const relativeProgress = mixNumber(sourceAxis.min, sourceAxis.max, translate / 100);\n translate = relativeProgress - sourceAxis.min;\n }\n if (typeof translate !== \"number\")\n return;\n let originPoint = mixNumber(originAxis.min, originAxis.max, origin);\n if (axis === originAxis)\n originPoint -= translate;\n axis.min = removePointDelta(axis.min, translate, scale, originPoint, boxScale);\n axis.max = removePointDelta(axis.max, translate, scale, originPoint, boxScale);\n}\n/**\n * Remove a transforms from an axis. This is essentially the steps of applyAxisTransforms in reverse\n * and acts as a bridge between motion values and removeAxisDelta\n */\nfunction removeAxisTransforms(axis, transforms, [key, scaleKey, originKey], origin, sourceAxis) {\n removeAxisDelta(axis, transforms[key], transforms[scaleKey], transforms[originKey], transforms.scale, origin, sourceAxis);\n}\n/**\n * The names of the motion values we want to apply as translation, scale and origin.\n */\nconst xKeys = [\"x\", \"scaleX\", \"originX\"];\nconst yKeys = [\"y\", \"scaleY\", \"originY\"];\n/**\n * Remove a transforms from an box. This is essentially the steps of applyAxisBox in reverse\n * and acts as a bridge between motion values and removeAxisDelta\n */\nfunction removeBoxTransforms(box, transforms, originBox, sourceBox) {\n removeAxisTransforms(box.x, transforms, xKeys, originBox ? originBox.x : undefined, sourceBox ? sourceBox.x : undefined);\n removeAxisTransforms(box.y, transforms, yKeys, originBox ? originBox.y : undefined, sourceBox ? sourceBox.y : undefined);\n}\n\nexport { removeAxisDelta, removeAxisTransforms, removeBoxTransforms, removePointDelta };\n","import { calcLength } from './delta-calc.mjs';\n\nfunction isAxisDeltaZero(delta) {\n return delta.translate === 0 && delta.scale === 1;\n}\nfunction isDeltaZero(delta) {\n return isAxisDeltaZero(delta.x) && isAxisDeltaZero(delta.y);\n}\nfunction axisEquals(a, b) {\n return a.min === b.min && a.max === b.max;\n}\nfunction boxEquals(a, b) {\n return axisEquals(a.x, b.x) && axisEquals(a.y, b.y);\n}\nfunction axisEqualsRounded(a, b) {\n return (Math.round(a.min) === Math.round(b.min) &&\n Math.round(a.max) === Math.round(b.max));\n}\nfunction boxEqualsRounded(a, b) {\n return axisEqualsRounded(a.x, b.x) && axisEqualsRounded(a.y, b.y);\n}\nfunction aspectRatio(box) {\n return calcLength(box.x) / calcLength(box.y);\n}\nfunction axisDeltaEquals(a, b) {\n return (a.translate === b.translate &&\n a.scale === b.scale &&\n a.originPoint === b.originPoint);\n}\n\nexport { aspectRatio, axisDeltaEquals, axisEquals, axisEqualsRounded, boxEquals, boxEqualsRounded, isDeltaZero };\n","import { addUniqueItem, removeItem } from '../../utils/array.mjs';\n\nclass NodeStack {\n constructor() {\n this.members = [];\n }\n add(node) {\n addUniqueItem(this.members, node);\n node.scheduleRender();\n }\n remove(node) {\n removeItem(this.members, node);\n if (node === this.prevLead) {\n this.prevLead = undefined;\n }\n if (node === this.lead) {\n const prevLead = this.members[this.members.length - 1];\n if (prevLead) {\n this.promote(prevLead);\n }\n }\n }\n relegate(node) {\n const indexOfNode = this.members.findIndex((member) => node === member);\n if (indexOfNode === 0)\n return false;\n /**\n * Find the next projection node that is present\n */\n let prevLead;\n for (let i = indexOfNode; i >= 0; i--) {\n const member = this.members[i];\n if (member.isPresent !== false) {\n prevLead = member;\n break;\n }\n }\n if (prevLead) {\n this.promote(prevLead);\n return true;\n }\n else {\n return false;\n }\n }\n promote(node, preserveFollowOpacity) {\n const prevLead = this.lead;\n if (node === prevLead)\n return;\n this.prevLead = prevLead;\n this.lead = node;\n node.show();\n if (prevLead) {\n prevLead.instance && prevLead.scheduleRender();\n node.scheduleRender();\n node.resumeFrom = prevLead;\n if (preserveFollowOpacity) {\n node.resumeFrom.preserveOpacity = true;\n }\n if (prevLead.snapshot) {\n node.snapshot = prevLead.snapshot;\n node.snapshot.latestValues =\n prevLead.animationValues || prevLead.latestValues;\n }\n if (node.root && node.root.isUpdating) {\n node.isLayoutDirty = true;\n }\n const { crossfade } = node.options;\n if (crossfade === false) {\n prevLead.hide();\n }\n /**\n * TODO:\n * - Test border radius when previous node was deleted\n * - boxShadow mixing\n * - Shared between element A in scrolled container and element B (scroll stays the same or changes)\n * - Shared between element A in transformed container and element B (transform stays the same or changes)\n * - Shared between element A in scrolled page and element B (scroll stays the same or changes)\n * ---\n * - Crossfade opacity of root nodes\n * - layoutId changes after animation\n * - layoutId changes mid animation\n */\n }\n }\n exitAnimationComplete() {\n this.members.forEach((node) => {\n const { options, resumingFrom } = node;\n options.onExitComplete && options.onExitComplete();\n if (resumingFrom) {\n resumingFrom.options.onExitComplete &&\n resumingFrom.options.onExitComplete();\n }\n });\n }\n scheduleRender() {\n this.members.forEach((node) => {\n node.instance && node.scheduleRender(false);\n });\n }\n /**\n * Clear any leads that have been removed this render to prevent them from being\n * used in future animations and to prevent memory leaks\n */\n removeLeadSnapshot() {\n if (this.lead && this.lead.snapshot) {\n this.lead.snapshot = undefined;\n }\n }\n}\n\nexport { NodeStack };\n","function buildProjectionTransform(delta, treeScale, latestTransform) {\n let transform = \"\";\n /**\n * The translations we use to calculate are always relative to the viewport coordinate space.\n * But when we apply scales, we also scale the coordinate space of an element and its children.\n * For instance if we have a treeScale (the culmination of all parent scales) of 0.5 and we need\n * to move an element 100 pixels, we actually need to move it 200 in within that scaled space.\n */\n const xTranslate = delta.x.translate / treeScale.x;\n const yTranslate = delta.y.translate / treeScale.y;\n const zTranslate = (latestTransform === null || latestTransform === void 0 ? void 0 : latestTransform.z) || 0;\n if (xTranslate || yTranslate || zTranslate) {\n transform = `translate3d(${xTranslate}px, ${yTranslate}px, ${zTranslate}px) `;\n }\n /**\n * Apply scale correction for the tree transform.\n * This will apply scale to the screen-orientated axes.\n */\n if (treeScale.x !== 1 || treeScale.y !== 1) {\n transform += `scale(${1 / treeScale.x}, ${1 / treeScale.y}) `;\n }\n if (latestTransform) {\n const { transformPerspective, rotate, rotateX, rotateY, skewX, skewY } = latestTransform;\n if (transformPerspective)\n transform = `perspective(${transformPerspective}px) ${transform}`;\n if (rotate)\n transform += `rotate(${rotate}deg) `;\n if (rotateX)\n transform += `rotateX(${rotateX}deg) `;\n if (rotateY)\n transform += `rotateY(${rotateY}deg) `;\n if (skewX)\n transform += `skewX(${skewX}deg) `;\n if (skewY)\n transform += `skewY(${skewY}deg) `;\n }\n /**\n * Apply scale to match the size of the element to the size we want it.\n * This will apply scale to the element-orientated axes.\n */\n const elementScaleX = delta.x.scale * treeScale.x;\n const elementScaleY = delta.y.scale * treeScale.y;\n if (elementScaleX !== 1 || elementScaleY !== 1) {\n transform += `scale(${elementScaleX}, ${elementScaleY})`;\n }\n return transform || \"none\";\n}\n\nexport { buildProjectionTransform };\n","const compareByDepth = (a, b) => a.depth - b.depth;\n\nexport { compareByDepth };\n","import { addUniqueItem, removeItem } from '../../utils/array.mjs';\nimport { compareByDepth } from './compare-by-depth.mjs';\n\nclass FlatTree {\n constructor() {\n this.children = [];\n this.isDirty = false;\n }\n add(child) {\n addUniqueItem(this.children, child);\n this.isDirty = true;\n }\n remove(child) {\n removeItem(this.children, child);\n this.isDirty = true;\n }\n forEach(callback) {\n this.isDirty && this.children.sort(compareByDepth);\n this.isDirty = false;\n this.children.forEach(callback);\n }\n}\n\nexport { FlatTree };\n","import { time } from '../frameloop/sync-time.mjs';\nimport { secondsToMilliseconds } from './time-conversion.mjs';\nimport { frame, cancelFrame } from '../frameloop/frame.mjs';\n\n/**\n * Timeout defined in ms\n */\nfunction delay(callback, timeout) {\n const start = time.now();\n const checkElapsed = ({ timestamp }) => {\n const elapsed = timestamp - start;\n if (elapsed >= timeout) {\n cancelFrame(checkElapsed);\n callback(elapsed - timeout);\n }\n };\n frame.read(checkElapsed, true);\n return () => cancelFrame(checkElapsed);\n}\nfunction delayInSeconds(callback, timeout) {\n return delay(callback, secondsToMilliseconds(timeout));\n}\n\nexport { delay, delayInSeconds };\n","function isSVGElement(element) {\n return element instanceof SVGElement && element.tagName !== \"svg\";\n}\n\nexport { isSVGElement };\n","import { animateMotionValue } from '../interfaces/motion-value.mjs';\nimport { motionValue } from '../../value/index.mjs';\nimport { isMotionValue } from '../../value/utils/is-motion-value.mjs';\n\nfunction animateSingleValue(value, keyframes, options) {\n const motionValue$1 = isMotionValue(value) ? value : motionValue(value);\n motionValue$1.start(animateMotionValue(\"\", motionValue$1, keyframes, options));\n return motionValue$1.animation;\n}\n\nexport { animateSingleValue };\n","import { SubscriptionManager } from '../../utils/subscription-manager.mjs';\nimport { mixValues } from '../animation/mix-values.mjs';\nimport { copyBoxInto, copyAxisDeltaInto } from '../geometry/copy.mjs';\nimport { translateAxis, transformBox, applyBoxDelta, applyTreeDeltas } from '../geometry/delta-apply.mjs';\nimport { calcRelativePosition, calcRelativeBox, calcBoxDelta, calcLength, isNear } from '../geometry/delta-calc.mjs';\nimport { removeBoxTransforms } from '../geometry/delta-remove.mjs';\nimport { getValueTransition } from '../../animation/utils/get-value-transition.mjs';\nimport { boxEqualsRounded, isDeltaZero, axisDeltaEquals, aspectRatio, boxEquals } from '../geometry/utils.mjs';\nimport { NodeStack } from '../shared/stack.mjs';\nimport { scaleCorrectors } from '../styles/scale-correction.mjs';\nimport { buildProjectionTransform } from '../styles/transform.mjs';\nimport { eachAxis } from '../utils/each-axis.mjs';\nimport { hasTransform, hasScale, has2DTranslate } from '../utils/has-transform.mjs';\nimport { FlatTree } from '../../render/utils/flat-tree.mjs';\nimport { resolveMotionValue } from '../../value/utils/resolve-motion-value.mjs';\nimport { globalProjectionState } from './state.mjs';\nimport { delay } from '../../utils/delay.mjs';\nimport { mixNumber } from '../../utils/mix/number.mjs';\nimport { isSVGElement } from '../../render/dom/utils/is-svg-element.mjs';\nimport { animateSingleValue } from '../../animation/animate/single-value.mjs';\nimport { clamp } from '../../utils/clamp.mjs';\nimport { cancelFrame, frameData, frameSteps, frame } from '../../frameloop/frame.mjs';\nimport { noop } from 'motion-utils';\nimport { time } from '../../frameloop/sync-time.mjs';\nimport { microtask } from '../../frameloop/microtask.mjs';\nimport { getOptimisedAppearId } from '../../animation/optimized-appear/get-appear-id.mjs';\nimport { createBox, createDelta } from '../geometry/models.mjs';\n\nconst metrics = {\n type: \"projectionFrame\",\n totalNodes: 0,\n resolvedTargetDeltas: 0,\n recalculatedProjection: 0,\n};\nconst isDebug = typeof window !== \"undefined\" && window.MotionDebug !== undefined;\nconst transformAxes = [\"\", \"X\", \"Y\", \"Z\"];\nconst hiddenVisibility = { visibility: \"hidden\" };\n/**\n * We use 1000 as the animation target as 0-1000 maps better to pixels than 0-1\n * which has a noticeable difference in spring animations\n */\nconst animationTarget = 1000;\nlet id = 0;\nfunction resetDistortingTransform(key, visualElement, values, sharedAnimationValues) {\n const { latestValues } = visualElement;\n // Record the distorting transform and then temporarily set it to 0\n if (latestValues[key]) {\n values[key] = latestValues[key];\n visualElement.setStaticValue(key, 0);\n if (sharedAnimationValues) {\n sharedAnimationValues[key] = 0;\n }\n }\n}\nfunction cancelTreeOptimisedTransformAnimations(projectionNode) {\n projectionNode.hasCheckedOptimisedAppear = true;\n if (projectionNode.root === projectionNode)\n return;\n const { visualElement } = projectionNode.options;\n if (!visualElement)\n return;\n const appearId = getOptimisedAppearId(visualElement);\n if (window.MotionHasOptimisedAnimation(appearId, \"transform\")) {\n const { layout, layoutId } = projectionNode.options;\n window.MotionCancelOptimisedAnimation(appearId, \"transform\", frame, !(layout || layoutId));\n }\n const { parent } = projectionNode;\n if (parent && !parent.hasCheckedOptimisedAppear) {\n cancelTreeOptimisedTransformAnimations(parent);\n }\n}\nfunction createProjectionNode({ attachResizeListener, defaultParent, measureScroll, checkIsScrollRoot, resetTransform, }) {\n return class ProjectionNode {\n constructor(latestValues = {}, parent = defaultParent === null || defaultParent === void 0 ? void 0 : defaultParent()) {\n /**\n * A unique ID generated for every projection node.\n */\n this.id = id++;\n /**\n * An id that represents a unique session instigated by startUpdate.\n */\n this.animationId = 0;\n /**\n * A Set containing all this component's children. This is used to iterate\n * through the children.\n *\n * TODO: This could be faster to iterate as a flat array stored on the root node.\n */\n this.children = new Set();\n /**\n * Options for the node. We use this to configure what kind of layout animations\n * we should perform (if any).\n */\n this.options = {};\n /**\n * We use this to detect when its safe to shut down part of a projection tree.\n * We have to keep projecting children for scale correction and relative projection\n * until all their parents stop performing layout animations.\n */\n this.isTreeAnimating = false;\n this.isAnimationBlocked = false;\n /**\n * Flag to true if we think this layout has been changed. We can't always know this,\n * currently we set it to true every time a component renders, or if it has a layoutDependency\n * if that has changed between renders. Additionally, components can be grouped by LayoutGroup\n * and if one node is dirtied, they all are.\n */\n this.isLayoutDirty = false;\n /**\n * Flag to true if we think the projection calculations for this node needs\n * recalculating as a result of an updated transform or layout animation.\n */\n this.isProjectionDirty = false;\n /**\n * Flag to true if the layout *or* transform has changed. This then gets propagated\n * throughout the projection tree, forcing any element below to recalculate on the next frame.\n */\n this.isSharedProjectionDirty = false;\n /**\n * Flag transform dirty. This gets propagated throughout the whole tree but is only\n * respected by shared nodes.\n */\n this.isTransformDirty = false;\n /**\n * Block layout updates for instant layout transitions throughout the tree.\n */\n this.updateManuallyBlocked = false;\n this.updateBlockedByResize = false;\n /**\n * Set to true between the start of the first `willUpdate` call and the end of the `didUpdate`\n * call.\n */\n this.isUpdating = false;\n /**\n * If this is an SVG element we currently disable projection transforms\n */\n this.isSVG = false;\n /**\n * Flag to true (during promotion) if a node doing an instant layout transition needs to reset\n * its projection styles.\n */\n this.needsReset = false;\n /**\n * Flags whether this node should have its transform reset prior to measuring.\n */\n this.shouldResetTransform = false;\n /**\n * Store whether this node has been checked for optimised appear animations. As\n * effects fire bottom-up, and we want to look up the tree for appear animations,\n * this makes sure we only check each path once, stopping at nodes that\n * have already been checked.\n */\n this.hasCheckedOptimisedAppear = false;\n /**\n * An object representing the calculated contextual/accumulated/tree scale.\n * This will be used to scale calculcated projection transforms, as these are\n * calculated in screen-space but need to be scaled for elements to layoutly\n * make it to their calculated destinations.\n *\n * TODO: Lazy-init\n */\n this.treeScale = { x: 1, y: 1 };\n /**\n *\n */\n this.eventHandlers = new Map();\n this.hasTreeAnimated = false;\n // Note: Currently only running on root node\n this.updateScheduled = false;\n this.scheduleUpdate = () => this.update();\n this.projectionUpdateScheduled = false;\n this.checkUpdateFailed = () => {\n if (this.isUpdating) {\n this.isUpdating = false;\n this.clearAllSnapshots();\n }\n };\n /**\n * This is a multi-step process as shared nodes might be of different depths. Nodes\n * are sorted by depth order, so we need to resolve the entire tree before moving to\n * the next step.\n */\n this.updateProjection = () => {\n this.projectionUpdateScheduled = false;\n /**\n * Reset debug counts. Manually resetting rather than creating a new\n * object each frame.\n */\n if (isDebug) {\n metrics.totalNodes =\n metrics.resolvedTargetDeltas =\n metrics.recalculatedProjection =\n 0;\n }\n this.nodes.forEach(propagateDirtyNodes);\n this.nodes.forEach(resolveTargetDelta);\n this.nodes.forEach(calcProjection);\n this.nodes.forEach(cleanDirtyNodes);\n if (isDebug) {\n window.MotionDebug.record(metrics);\n }\n };\n /**\n * Frame calculations\n */\n this.resolvedRelativeTargetAt = 0.0;\n this.hasProjected = false;\n this.isVisible = true;\n this.animationProgress = 0;\n /**\n * Shared layout\n */\n // TODO Only running on root node\n this.sharedNodes = new Map();\n this.latestValues = latestValues;\n this.root = parent ? parent.root || parent : this;\n this.path = parent ? [...parent.path, parent] : [];\n this.parent = parent;\n this.depth = parent ? parent.depth + 1 : 0;\n for (let i = 0; i < this.path.length; i++) {\n this.path[i].shouldResetTransform = true;\n }\n if (this.root === this)\n this.nodes = new FlatTree();\n }\n addEventListener(name, handler) {\n if (!this.eventHandlers.has(name)) {\n this.eventHandlers.set(name, new SubscriptionManager());\n }\n return this.eventHandlers.get(name).add(handler);\n }\n notifyListeners(name, ...args) {\n const subscriptionManager = this.eventHandlers.get(name);\n subscriptionManager && subscriptionManager.notify(...args);\n }\n hasListeners(name) {\n return this.eventHandlers.has(name);\n }\n /**\n * Lifecycles\n */\n mount(instance, isLayoutDirty = this.root.hasTreeAnimated) {\n if (this.instance)\n return;\n this.isSVG = isSVGElement(instance);\n this.instance = instance;\n const { layoutId, layout, visualElement } = this.options;\n if (visualElement && !visualElement.current) {\n visualElement.mount(instance);\n }\n this.root.nodes.add(this);\n this.parent && this.parent.children.add(this);\n if (isLayoutDirty && (layout || layoutId)) {\n this.isLayoutDirty = true;\n }\n if (attachResizeListener) {\n let cancelDelay;\n const resizeUnblockUpdate = () => (this.root.updateBlockedByResize = false);\n attachResizeListener(instance, () => {\n this.root.updateBlockedByResize = true;\n cancelDelay && cancelDelay();\n cancelDelay = delay(resizeUnblockUpdate, 250);\n if (globalProjectionState.hasAnimatedSinceResize) {\n globalProjectionState.hasAnimatedSinceResize = false;\n this.nodes.forEach(finishAnimation);\n }\n });\n }\n if (layoutId) {\n this.root.registerSharedNode(layoutId, this);\n }\n // Only register the handler if it requires layout animation\n if (this.options.animate !== false &&\n visualElement &&\n (layoutId || layout)) {\n this.addEventListener(\"didUpdate\", ({ delta, hasLayoutChanged, hasRelativeTargetChanged, layout: newLayout, }) => {\n if (this.isTreeAnimationBlocked()) {\n this.target = undefined;\n this.relativeTarget = undefined;\n return;\n }\n // TODO: Check here if an animation exists\n const layoutTransition = this.options.transition ||\n visualElement.getDefaultTransition() ||\n defaultLayoutTransition;\n const { onLayoutAnimationStart, onLayoutAnimationComplete, } = visualElement.getProps();\n /**\n * The target layout of the element might stay the same,\n * but its position relative to its parent has changed.\n */\n const targetChanged = !this.targetLayout ||\n !boxEqualsRounded(this.targetLayout, newLayout) ||\n hasRelativeTargetChanged;\n /**\n * If the layout hasn't seemed to have changed, it might be that the\n * element is visually in the same place in the document but its position\n * relative to its parent has indeed changed. So here we check for that.\n */\n const hasOnlyRelativeTargetChanged = !hasLayoutChanged && hasRelativeTargetChanged;\n if (this.options.layoutRoot ||\n (this.resumeFrom && this.resumeFrom.instance) ||\n hasOnlyRelativeTargetChanged ||\n (hasLayoutChanged &&\n (targetChanged || !this.currentAnimation))) {\n if (this.resumeFrom) {\n this.resumingFrom = this.resumeFrom;\n this.resumingFrom.resumingFrom = undefined;\n }\n this.setAnimationOrigin(delta, hasOnlyRelativeTargetChanged);\n const animationOptions = {\n ...getValueTransition(layoutTransition, \"layout\"),\n onPlay: onLayoutAnimationStart,\n onComplete: onLayoutAnimationComplete,\n };\n if (visualElement.shouldReduceMotion ||\n this.options.layoutRoot) {\n animationOptions.delay = 0;\n animationOptions.type = false;\n }\n this.startAnimation(animationOptions);\n }\n else {\n /**\n * If the layout hasn't changed and we have an animation that hasn't started yet,\n * finish it immediately. Otherwise it will be animating from a location\n * that was probably never commited to screen and look like a jumpy box.\n */\n if (!hasLayoutChanged) {\n finishAnimation(this);\n }\n if (this.isLead() && this.options.onExitComplete) {\n this.options.onExitComplete();\n }\n }\n this.targetLayout = newLayout;\n });\n }\n }\n unmount() {\n this.options.layoutId && this.willUpdate();\n this.root.nodes.remove(this);\n const stack = this.getStack();\n stack && stack.remove(this);\n this.parent && this.parent.children.delete(this);\n this.instance = undefined;\n cancelFrame(this.updateProjection);\n }\n // only on the root\n blockUpdate() {\n this.updateManuallyBlocked = true;\n }\n unblockUpdate() {\n this.updateManuallyBlocked = false;\n }\n isUpdateBlocked() {\n return this.updateManuallyBlocked || this.updateBlockedByResize;\n }\n isTreeAnimationBlocked() {\n return (this.isAnimationBlocked ||\n (this.parent && this.parent.isTreeAnimationBlocked()) ||\n false);\n }\n // Note: currently only running on root node\n startUpdate() {\n if (this.isUpdateBlocked())\n return;\n this.isUpdating = true;\n this.nodes && this.nodes.forEach(resetSkewAndRotation);\n this.animationId++;\n }\n getTransformTemplate() {\n const { visualElement } = this.options;\n return visualElement && visualElement.getProps().transformTemplate;\n }\n willUpdate(shouldNotifyListeners = true) {\n this.root.hasTreeAnimated = true;\n if (this.root.isUpdateBlocked()) {\n this.options.onExitComplete && this.options.onExitComplete();\n return;\n }\n /**\n * If we're running optimised appear animations then these must be\n * cancelled before measuring the DOM. This is so we can measure\n * the true layout of the element rather than the WAAPI animation\n * which will be unaffected by the resetSkewAndRotate step.\n *\n * Note: This is a DOM write. Worst case scenario is this is sandwiched\n * between other snapshot reads which will cause unnecessary style recalculations.\n * This has to happen here though, as we don't yet know which nodes will need\n * snapshots in startUpdate(), but we only want to cancel optimised animations\n * if a layout animation measurement is actually going to be affected by them.\n */\n if (window.MotionCancelOptimisedAnimation &&\n !this.hasCheckedOptimisedAppear) {\n cancelTreeOptimisedTransformAnimations(this);\n }\n !this.root.isUpdating && this.root.startUpdate();\n if (this.isLayoutDirty)\n return;\n this.isLayoutDirty = true;\n for (let i = 0; i < this.path.length; i++) {\n const node = this.path[i];\n node.shouldResetTransform = true;\n node.updateScroll(\"snapshot\");\n if (node.options.layoutRoot) {\n node.willUpdate(false);\n }\n }\n const { layoutId, layout } = this.options;\n if (layoutId === undefined && !layout)\n return;\n const transformTemplate = this.getTransformTemplate();\n this.prevTransformTemplateValue = transformTemplate\n ? transformTemplate(this.latestValues, \"\")\n : undefined;\n this.updateSnapshot();\n shouldNotifyListeners && this.notifyListeners(\"willUpdate\");\n }\n update() {\n this.updateScheduled = false;\n const updateWasBlocked = this.isUpdateBlocked();\n // When doing an instant transition, we skip the layout update,\n // but should still clean up the measurements so that the next\n // snapshot could be taken correctly.\n if (updateWasBlocked) {\n this.unblockUpdate();\n this.clearAllSnapshots();\n this.nodes.forEach(clearMeasurements);\n return;\n }\n if (!this.isUpdating) {\n this.nodes.forEach(clearIsLayoutDirty);\n }\n this.isUpdating = false;\n /**\n * Write\n */\n this.nodes.forEach(resetTransformStyle);\n /**\n * Read ==================\n */\n // Update layout measurements of updated children\n this.nodes.forEach(updateLayout);\n /**\n * Write\n */\n // Notify listeners that the layout is updated\n this.nodes.forEach(notifyLayoutUpdate);\n this.clearAllSnapshots();\n /**\n * Manually flush any pending updates. Ideally\n * we could leave this to the following requestAnimationFrame but this seems\n * to leave a flash of incorrectly styled content.\n */\n const now = time.now();\n frameData.delta = clamp(0, 1000 / 60, now - frameData.timestamp);\n frameData.timestamp = now;\n frameData.isProcessing = true;\n frameSteps.update.process(frameData);\n frameSteps.preRender.process(frameData);\n frameSteps.render.process(frameData);\n frameData.isProcessing = false;\n }\n didUpdate() {\n if (!this.updateScheduled) {\n this.updateScheduled = true;\n microtask.read(this.scheduleUpdate);\n }\n }\n clearAllSnapshots() {\n this.nodes.forEach(clearSnapshot);\n this.sharedNodes.forEach(removeLeadSnapshots);\n }\n scheduleUpdateProjection() {\n if (!this.projectionUpdateScheduled) {\n this.projectionUpdateScheduled = true;\n frame.preRender(this.updateProjection, false, true);\n }\n }\n scheduleCheckAfterUnmount() {\n /**\n * If the unmounting node is in a layoutGroup and did trigger a willUpdate,\n * we manually call didUpdate to give a chance to the siblings to animate.\n * Otherwise, cleanup all snapshots to prevents future nodes from reusing them.\n */\n frame.postRender(() => {\n if (this.isLayoutDirty) {\n this.root.didUpdate();\n }\n else {\n this.root.checkUpdateFailed();\n }\n });\n }\n /**\n * Update measurements\n */\n updateSnapshot() {\n if (this.snapshot || !this.instance)\n return;\n this.snapshot = this.measure();\n }\n updateLayout() {\n if (!this.instance)\n return;\n // TODO: Incorporate into a forwarded scroll offset\n this.updateScroll();\n if (!(this.options.alwaysMeasureLayout && this.isLead()) &&\n !this.isLayoutDirty) {\n return;\n }\n /**\n * When a node is mounted, it simply resumes from the prevLead's\n * snapshot instead of taking a new one, but the ancestors scroll\n * might have updated while the prevLead is unmounted. We need to\n * update the scroll again to make sure the layout we measure is\n * up to date.\n */\n if (this.resumeFrom && !this.resumeFrom.instance) {\n for (let i = 0; i < this.path.length; i++) {\n const node = this.path[i];\n node.updateScroll();\n }\n }\n const prevLayout = this.layout;\n this.layout = this.measure(false);\n this.layoutCorrected = createBox();\n this.isLayoutDirty = false;\n this.projectionDelta = undefined;\n this.notifyListeners(\"measure\", this.layout.layoutBox);\n const { visualElement } = this.options;\n visualElement &&\n visualElement.notify(\"LayoutMeasure\", this.layout.layoutBox, prevLayout ? prevLayout.layoutBox : undefined);\n }\n updateScroll(phase = \"measure\") {\n let needsMeasurement = Boolean(this.options.layoutScroll && this.instance);\n if (this.scroll &&\n this.scroll.animationId === this.root.animationId &&\n this.scroll.phase === phase) {\n needsMeasurement = false;\n }\n if (needsMeasurement) {\n const isRoot = checkIsScrollRoot(this.instance);\n this.scroll = {\n animationId: this.root.animationId,\n phase,\n isRoot,\n offset: measureScroll(this.instance),\n wasRoot: this.scroll ? this.scroll.isRoot : isRoot,\n };\n }\n }\n resetTransform() {\n if (!resetTransform)\n return;\n const isResetRequested = this.isLayoutDirty ||\n this.shouldResetTransform ||\n this.options.alwaysMeasureLayout;\n const hasProjection = this.projectionDelta && !isDeltaZero(this.projectionDelta);\n const transformTemplate = this.getTransformTemplate();\n const transformTemplateValue = transformTemplate\n ? transformTemplate(this.latestValues, \"\")\n : undefined;\n const transformTemplateHasChanged = transformTemplateValue !== this.prevTransformTemplateValue;\n if (isResetRequested &&\n (hasProjection ||\n hasTransform(this.latestValues) ||\n transformTemplateHasChanged)) {\n resetTransform(this.instance, transformTemplateValue);\n this.shouldResetTransform = false;\n this.scheduleRender();\n }\n }\n measure(removeTransform = true) {\n const pageBox = this.measurePageBox();\n let layoutBox = this.removeElementScroll(pageBox);\n /**\n * Measurements taken during the pre-render stage\n * still have transforms applied so we remove them\n * via calculation.\n */\n if (removeTransform) {\n layoutBox = this.removeTransform(layoutBox);\n }\n roundBox(layoutBox);\n return {\n animationId: this.root.animationId,\n measuredBox: pageBox,\n layoutBox,\n latestValues: {},\n source: this.id,\n };\n }\n measurePageBox() {\n var _a;\n const { visualElement } = this.options;\n if (!visualElement)\n return createBox();\n const box = visualElement.measureViewportBox();\n const wasInScrollRoot = ((_a = this.scroll) === null || _a === void 0 ? void 0 : _a.wasRoot) || this.path.some(checkNodeWasScrollRoot);\n if (!wasInScrollRoot) {\n // Remove viewport scroll to give page-relative coordinates\n const { scroll } = this.root;\n if (scroll) {\n translateAxis(box.x, scroll.offset.x);\n translateAxis(box.y, scroll.offset.y);\n }\n }\n return box;\n }\n removeElementScroll(box) {\n var _a;\n const boxWithoutScroll = createBox();\n copyBoxInto(boxWithoutScroll, box);\n if ((_a = this.scroll) === null || _a === void 0 ? void 0 : _a.wasRoot) {\n return boxWithoutScroll;\n }\n /**\n * Performance TODO: Keep a cumulative scroll offset down the tree\n * rather than loop back up the path.\n */\n for (let i = 0; i < this.path.length; i++) {\n const node = this.path[i];\n const { scroll, options } = node;\n if (node !== this.root && scroll && options.layoutScroll) {\n /**\n * If this is a new scroll root, we want to remove all previous scrolls\n * from the viewport box.\n */\n if (scroll.wasRoot) {\n copyBoxInto(boxWithoutScroll, box);\n }\n translateAxis(boxWithoutScroll.x, scroll.offset.x);\n translateAxis(boxWithoutScroll.y, scroll.offset.y);\n }\n }\n return boxWithoutScroll;\n }\n applyTransform(box, transformOnly = false) {\n const withTransforms = createBox();\n copyBoxInto(withTransforms, box);\n for (let i = 0; i < this.path.length; i++) {\n const node = this.path[i];\n if (!transformOnly &&\n node.options.layoutScroll &&\n node.scroll &&\n node !== node.root) {\n transformBox(withTransforms, {\n x: -node.scroll.offset.x,\n y: -node.scroll.offset.y,\n });\n }\n if (!hasTransform(node.latestValues))\n continue;\n transformBox(withTransforms, node.latestValues);\n }\n if (hasTransform(this.latestValues)) {\n transformBox(withTransforms, this.latestValues);\n }\n return withTransforms;\n }\n removeTransform(box) {\n const boxWithoutTransform = createBox();\n copyBoxInto(boxWithoutTransform, box);\n for (let i = 0; i < this.path.length; i++) {\n const node = this.path[i];\n if (!node.instance)\n continue;\n if (!hasTransform(node.latestValues))\n continue;\n hasScale(node.latestValues) && node.updateSnapshot();\n const sourceBox = createBox();\n const nodeBox = node.measurePageBox();\n copyBoxInto(sourceBox, nodeBox);\n removeBoxTransforms(boxWithoutTransform, node.latestValues, node.snapshot ? node.snapshot.layoutBox : undefined, sourceBox);\n }\n if (hasTransform(this.latestValues)) {\n removeBoxTransforms(boxWithoutTransform, this.latestValues);\n }\n return boxWithoutTransform;\n }\n setTargetDelta(delta) {\n this.targetDelta = delta;\n this.root.scheduleUpdateProjection();\n this.isProjectionDirty = true;\n }\n setOptions(options) {\n this.options = {\n ...this.options,\n ...options,\n crossfade: options.crossfade !== undefined ? options.crossfade : true,\n };\n }\n clearMeasurements() {\n this.scroll = undefined;\n this.layout = undefined;\n this.snapshot = undefined;\n this.prevTransformTemplateValue = undefined;\n this.targetDelta = undefined;\n this.target = undefined;\n this.isLayoutDirty = false;\n }\n forceRelativeParentToResolveTarget() {\n if (!this.relativeParent)\n return;\n /**\n * If the parent target isn't up-to-date, force it to update.\n * This is an unfortunate de-optimisation as it means any updating relative\n * projection will cause all the relative parents to recalculate back\n * up the tree.\n */\n if (this.relativeParent.resolvedRelativeTargetAt !==\n frameData.timestamp) {\n this.relativeParent.resolveTargetDelta(true);\n }\n }\n resolveTargetDelta(forceRecalculation = false) {\n var _a;\n /**\n * Once the dirty status of nodes has been spread through the tree, we also\n * need to check if we have a shared node of a different depth that has itself\n * been dirtied.\n */\n const lead = this.getLead();\n this.isProjectionDirty || (this.isProjectionDirty = lead.isProjectionDirty);\n this.isTransformDirty || (this.isTransformDirty = lead.isTransformDirty);\n this.isSharedProjectionDirty || (this.isSharedProjectionDirty = lead.isSharedProjectionDirty);\n const isShared = Boolean(this.resumingFrom) || this !== lead;\n /**\n * We don't use transform for this step of processing so we don't\n * need to check whether any nodes have changed transform.\n */\n const canSkip = !(forceRecalculation ||\n (isShared && this.isSharedProjectionDirty) ||\n this.isProjectionDirty ||\n ((_a = this.parent) === null || _a === void 0 ? void 0 : _a.isProjectionDirty) ||\n this.attemptToResolveRelativeTarget ||\n this.root.updateBlockedByResize);\n if (canSkip)\n return;\n const { layout, layoutId } = this.options;\n /**\n * If we have no layout, we can't perform projection, so early return\n */\n if (!this.layout || !(layout || layoutId))\n return;\n this.resolvedRelativeTargetAt = frameData.timestamp;\n /**\n * If we don't have a targetDelta but do have a layout, we can attempt to resolve\n * a relativeParent. This will allow a component to perform scale correction\n * even if no animation has started.\n */\n if (!this.targetDelta && !this.relativeTarget) {\n const relativeParent = this.getClosestProjectingParent();\n if (relativeParent &&\n relativeParent.layout &&\n this.animationProgress !== 1) {\n this.relativeParent = relativeParent;\n this.forceRelativeParentToResolveTarget();\n this.relativeTarget = createBox();\n this.relativeTargetOrigin = createBox();\n calcRelativePosition(this.relativeTargetOrigin, this.layout.layoutBox, relativeParent.layout.layoutBox);\n copyBoxInto(this.relativeTarget, this.relativeTargetOrigin);\n }\n else {\n this.relativeParent = this.relativeTarget = undefined;\n }\n }\n /**\n * If we have no relative target or no target delta our target isn't valid\n * for this frame.\n */\n if (!this.relativeTarget && !this.targetDelta)\n return;\n /**\n * Lazy-init target data structure\n */\n if (!this.target) {\n this.target = createBox();\n this.targetWithTransforms = createBox();\n }\n /**\n * If we've got a relative box for this component, resolve it into a target relative to the parent.\n */\n if (this.relativeTarget &&\n this.relativeTargetOrigin &&\n this.relativeParent &&\n this.relativeParent.target) {\n this.forceRelativeParentToResolveTarget();\n calcRelativeBox(this.target, this.relativeTarget, this.relativeParent.target);\n /**\n * If we've only got a targetDelta, resolve it into a target\n */\n }\n else if (this.targetDelta) {\n if (Boolean(this.resumingFrom)) {\n // TODO: This is creating a new object every frame\n this.target = this.applyTransform(this.layout.layoutBox);\n }\n else {\n copyBoxInto(this.target, this.layout.layoutBox);\n }\n applyBoxDelta(this.target, this.targetDelta);\n }\n else {\n /**\n * If no target, use own layout as target\n */\n copyBoxInto(this.target, this.layout.layoutBox);\n }\n /**\n * If we've been told to attempt to resolve a relative target, do so.\n */\n if (this.attemptToResolveRelativeTarget) {\n this.attemptToResolveRelativeTarget = false;\n const relativeParent = this.getClosestProjectingParent();\n if (relativeParent &&\n Boolean(relativeParent.resumingFrom) ===\n Boolean(this.resumingFrom) &&\n !relativeParent.options.layoutScroll &&\n relativeParent.target &&\n this.animationProgress !== 1) {\n this.relativeParent = relativeParent;\n this.forceRelativeParentToResolveTarget();\n this.relativeTarget = createBox();\n this.relativeTargetOrigin = createBox();\n calcRelativePosition(this.relativeTargetOrigin, this.target, relativeParent.target);\n copyBoxInto(this.relativeTarget, this.relativeTargetOrigin);\n }\n else {\n this.relativeParent = this.relativeTarget = undefined;\n }\n }\n /**\n * Increase debug counter for resolved target deltas\n */\n if (isDebug) {\n metrics.resolvedTargetDeltas++;\n }\n }\n getClosestProjectingParent() {\n if (!this.parent ||\n hasScale(this.parent.latestValues) ||\n has2DTranslate(this.parent.latestValues)) {\n return undefined;\n }\n if (this.parent.isProjecting()) {\n return this.parent;\n }\n else {\n return this.parent.getClosestProjectingParent();\n }\n }\n isProjecting() {\n return Boolean((this.relativeTarget ||\n this.targetDelta ||\n this.options.layoutRoot) &&\n this.layout);\n }\n calcProjection() {\n var _a;\n const lead = this.getLead();\n const isShared = Boolean(this.resumingFrom) || this !== lead;\n let canSkip = true;\n /**\n * If this is a normal layout animation and neither this node nor its nearest projecting\n * is dirty then we can't skip.\n */\n if (this.isProjectionDirty || ((_a = this.parent) === null || _a === void 0 ? void 0 : _a.isProjectionDirty)) {\n canSkip = false;\n }\n /**\n * If this is a shared layout animation and this node's shared projection is dirty then\n * we can't skip.\n */\n if (isShared &&\n (this.isSharedProjectionDirty || this.isTransformDirty)) {\n canSkip = false;\n }\n /**\n * If we have resolved the target this frame we must recalculate the\n * projection to ensure it visually represents the internal calculations.\n */\n if (this.resolvedRelativeTargetAt === frameData.timestamp) {\n canSkip = false;\n }\n if (canSkip)\n return;\n const { layout, layoutId } = this.options;\n /**\n * If this section of the tree isn't animating we can\n * delete our target sources for the following frame.\n */\n this.isTreeAnimating = Boolean((this.parent && this.parent.isTreeAnimating) ||\n this.currentAnimation ||\n this.pendingAnimation);\n if (!this.isTreeAnimating) {\n this.targetDelta = this.relativeTarget = undefined;\n }\n if (!this.layout || !(layout || layoutId))\n return;\n /**\n * Reset the corrected box with the latest values from box, as we're then going\n * to perform mutative operations on it.\n */\n copyBoxInto(this.layoutCorrected, this.layout.layoutBox);\n /**\n * Record previous tree scales before updating.\n */\n const prevTreeScaleX = this.treeScale.x;\n const prevTreeScaleY = this.treeScale.y;\n /**\n * Apply all the parent deltas to this box to produce the corrected box. This\n * is the layout box, as it will appear on screen as a result of the transforms of its parents.\n */\n applyTreeDeltas(this.layoutCorrected, this.treeScale, this.path, isShared);\n /**\n * If this layer needs to perform scale correction but doesn't have a target,\n * use the layout as the target.\n */\n if (lead.layout &&\n !lead.target &&\n (this.treeScale.x !== 1 || this.treeScale.y !== 1)) {\n lead.target = lead.layout.layoutBox;\n lead.targetWithTransforms = createBox();\n }\n const { target } = lead;\n if (!target) {\n /**\n * If we don't have a target to project into, but we were previously\n * projecting, we want to remove the stored transform and schedule\n * a render to ensure the elements reflect the removed transform.\n */\n if (this.prevProjectionDelta) {\n this.createProjectionDeltas();\n this.scheduleRender();\n }\n return;\n }\n if (!this.projectionDelta || !this.prevProjectionDelta) {\n this.createProjectionDeltas();\n }\n else {\n copyAxisDeltaInto(this.prevProjectionDelta.x, this.projectionDelta.x);\n copyAxisDeltaInto(this.prevProjectionDelta.y, this.projectionDelta.y);\n }\n /**\n * Update the delta between the corrected box and the target box before user-set transforms were applied.\n * This will allow us to calculate the corrected borderRadius and boxShadow to compensate\n * for our layout reprojection, but still allow them to be scaled correctly by the user.\n * It might be that to simplify this we may want to accept that user-set scale is also corrected\n * and we wouldn't have to keep and calc both deltas, OR we could support a user setting\n * to allow people to choose whether these styles are corrected based on just the\n * layout reprojection or the final bounding box.\n */\n calcBoxDelta(this.projectionDelta, this.layoutCorrected, target, this.latestValues);\n if (this.treeScale.x !== prevTreeScaleX ||\n this.treeScale.y !== prevTreeScaleY ||\n !axisDeltaEquals(this.projectionDelta.x, this.prevProjectionDelta.x) ||\n !axisDeltaEquals(this.projectionDelta.y, this.prevProjectionDelta.y)) {\n this.hasProjected = true;\n this.scheduleRender();\n this.notifyListeners(\"projectionUpdate\", target);\n }\n /**\n * Increase debug counter for recalculated projections\n */\n if (isDebug) {\n metrics.recalculatedProjection++;\n }\n }\n hide() {\n this.isVisible = false;\n // TODO: Schedule render\n }\n show() {\n this.isVisible = true;\n // TODO: Schedule render\n }\n scheduleRender(notifyAll = true) {\n var _a;\n (_a = this.options.visualElement) === null || _a === void 0 ? void 0 : _a.scheduleRender();\n if (notifyAll) {\n const stack = this.getStack();\n stack && stack.scheduleRender();\n }\n if (this.resumingFrom && !this.resumingFrom.instance) {\n this.resumingFrom = undefined;\n }\n }\n createProjectionDeltas() {\n this.prevProjectionDelta = createDelta();\n this.projectionDelta = createDelta();\n this.projectionDeltaWithTransform = createDelta();\n }\n setAnimationOrigin(delta, hasOnlyRelativeTargetChanged = false) {\n const snapshot = this.snapshot;\n const snapshotLatestValues = snapshot\n ? snapshot.latestValues\n : {};\n const mixedValues = { ...this.latestValues };\n const targetDelta = createDelta();\n if (!this.relativeParent ||\n !this.relativeParent.options.layoutRoot) {\n this.relativeTarget = this.relativeTargetOrigin = undefined;\n }\n this.attemptToResolveRelativeTarget = !hasOnlyRelativeTargetChanged;\n const relativeLayout = createBox();\n const snapshotSource = snapshot ? snapshot.source : undefined;\n const layoutSource = this.layout ? this.layout.source : undefined;\n const isSharedLayoutAnimation = snapshotSource !== layoutSource;\n const stack = this.getStack();\n const isOnlyMember = !stack || stack.members.length <= 1;\n const shouldCrossfadeOpacity = Boolean(isSharedLayoutAnimation &&\n !isOnlyMember &&\n this.options.crossfade === true &&\n !this.path.some(hasOpacityCrossfade));\n this.animationProgress = 0;\n let prevRelativeTarget;\n this.mixTargetDelta = (latest) => {\n const progress = latest / 1000;\n mixAxisDelta(targetDelta.x, delta.x, progress);\n mixAxisDelta(targetDelta.y, delta.y, progress);\n this.setTargetDelta(targetDelta);\n if (this.relativeTarget &&\n this.relativeTargetOrigin &&\n this.layout &&\n this.relativeParent &&\n this.relativeParent.layout) {\n calcRelativePosition(relativeLayout, this.layout.layoutBox, this.relativeParent.layout.layoutBox);\n mixBox(this.relativeTarget, this.relativeTargetOrigin, relativeLayout, progress);\n /**\n * If this is an unchanged relative target we can consider the\n * projection not dirty.\n */\n if (prevRelativeTarget &&\n boxEquals(this.relativeTarget, prevRelativeTarget)) {\n this.isProjectionDirty = false;\n }\n if (!prevRelativeTarget)\n prevRelativeTarget = createBox();\n copyBoxInto(prevRelativeTarget, this.relativeTarget);\n }\n if (isSharedLayoutAnimation) {\n this.animationValues = mixedValues;\n mixValues(mixedValues, snapshotLatestValues, this.latestValues, progress, shouldCrossfadeOpacity, isOnlyMember);\n }\n this.root.scheduleUpdateProjection();\n this.scheduleRender();\n this.animationProgress = progress;\n };\n this.mixTargetDelta(this.options.layoutRoot ? 1000 : 0);\n }\n startAnimation(options) {\n this.notifyListeners(\"animationStart\");\n this.currentAnimation && this.currentAnimation.stop();\n if (this.resumingFrom && this.resumingFrom.currentAnimation) {\n this.resumingFrom.currentAnimation.stop();\n }\n if (this.pendingAnimation) {\n cancelFrame(this.pendingAnimation);\n this.pendingAnimation = undefined;\n }\n /**\n * Start the animation in the next frame to have a frame with progress 0,\n * where the target is the same as when the animation started, so we can\n * calculate the relative positions correctly for instant transitions.\n */\n this.pendingAnimation = frame.update(() => {\n globalProjectionState.hasAnimatedSinceResize = true;\n this.currentAnimation = animateSingleValue(0, animationTarget, {\n ...options,\n onUpdate: (latest) => {\n this.mixTargetDelta(latest);\n options.onUpdate && options.onUpdate(latest);\n },\n onComplete: () => {\n options.onComplete && options.onComplete();\n this.completeAnimation();\n },\n });\n if (this.resumingFrom) {\n this.resumingFrom.currentAnimation = this.currentAnimation;\n }\n this.pendingAnimation = undefined;\n });\n }\n completeAnimation() {\n if (this.resumingFrom) {\n this.resumingFrom.currentAnimation = undefined;\n this.resumingFrom.preserveOpacity = undefined;\n }\n const stack = this.getStack();\n stack && stack.exitAnimationComplete();\n this.resumingFrom =\n this.currentAnimation =\n this.animationValues =\n undefined;\n this.notifyListeners(\"animationComplete\");\n }\n finishAnimation() {\n if (this.currentAnimation) {\n this.mixTargetDelta && this.mixTargetDelta(animationTarget);\n this.currentAnimation.stop();\n }\n this.completeAnimation();\n }\n applyTransformsToTarget() {\n const lead = this.getLead();\n let { targetWithTransforms, target, layout, latestValues } = lead;\n if (!targetWithTransforms || !target || !layout)\n return;\n /**\n * If we're only animating position, and this element isn't the lead element,\n * then instead of projecting into the lead box we instead want to calculate\n * a new target that aligns the two boxes but maintains the layout shape.\n */\n if (this !== lead &&\n this.layout &&\n layout &&\n shouldAnimatePositionOnly(this.options.animationType, this.layout.layoutBox, layout.layoutBox)) {\n target = this.target || createBox();\n const xLength = calcLength(this.layout.layoutBox.x);\n target.x.min = lead.target.x.min;\n target.x.max = target.x.min + xLength;\n const yLength = calcLength(this.layout.layoutBox.y);\n target.y.min = lead.target.y.min;\n target.y.max = target.y.min + yLength;\n }\n copyBoxInto(targetWithTransforms, target);\n /**\n * Apply the latest user-set transforms to the targetBox to produce the targetBoxFinal.\n * This is the final box that we will then project into by calculating a transform delta and\n * applying it to the corrected box.\n */\n transformBox(targetWithTransforms, latestValues);\n /**\n * Update the delta between the corrected box and the final target box, after\n * user-set transforms are applied to it. This will be used by the renderer to\n * create a transform style that will reproject the element from its layout layout\n * into the desired bounding box.\n */\n calcBoxDelta(this.projectionDeltaWithTransform, this.layoutCorrected, targetWithTransforms, latestValues);\n }\n registerSharedNode(layoutId, node) {\n if (!this.sharedNodes.has(layoutId)) {\n this.sharedNodes.set(layoutId, new NodeStack());\n }\n const stack = this.sharedNodes.get(layoutId);\n stack.add(node);\n const config = node.options.initialPromotionConfig;\n node.promote({\n transition: config ? config.transition : undefined,\n preserveFollowOpacity: config && config.shouldPreserveFollowOpacity\n ? config.shouldPreserveFollowOpacity(node)\n : undefined,\n });\n }\n isLead() {\n const stack = this.getStack();\n return stack ? stack.lead === this : true;\n }\n getLead() {\n var _a;\n const { layoutId } = this.options;\n return layoutId ? ((_a = this.getStack()) === null || _a === void 0 ? void 0 : _a.lead) || this : this;\n }\n getPrevLead() {\n var _a;\n const { layoutId } = this.options;\n return layoutId ? (_a = this.getStack()) === null || _a === void 0 ? void 0 : _a.prevLead : undefined;\n }\n getStack() {\n const { layoutId } = this.options;\n if (layoutId)\n return this.root.sharedNodes.get(layoutId);\n }\n promote({ needsReset, transition, preserveFollowOpacity, } = {}) {\n const stack = this.getStack();\n if (stack)\n stack.promote(this, preserveFollowOpacity);\n if (needsReset) {\n this.projectionDelta = undefined;\n this.needsReset = true;\n }\n if (transition)\n this.setOptions({ transition });\n }\n relegate() {\n const stack = this.getStack();\n if (stack) {\n return stack.relegate(this);\n }\n else {\n return false;\n }\n }\n resetSkewAndRotation() {\n const { visualElement } = this.options;\n if (!visualElement)\n return;\n // If there's no detected skew or rotation values, we can early return without a forced render.\n let hasDistortingTransform = false;\n /**\n * An unrolled check for rotation values. Most elements don't have any rotation and\n * skipping the nested loop and new object creation is 50% faster.\n */\n const { latestValues } = visualElement;\n if (latestValues.z ||\n latestValues.rotate ||\n latestValues.rotateX ||\n latestValues.rotateY ||\n latestValues.rotateZ ||\n latestValues.skewX ||\n latestValues.skewY) {\n hasDistortingTransform = true;\n }\n // If there's no distorting values, we don't need to do any more.\n if (!hasDistortingTransform)\n return;\n const resetValues = {};\n if (latestValues.z) {\n resetDistortingTransform(\"z\", visualElement, resetValues, this.animationValues);\n }\n // Check the skew and rotate value of all axes and reset to 0\n for (let i = 0; i < transformAxes.length; i++) {\n resetDistortingTransform(`rotate${transformAxes[i]}`, visualElement, resetValues, this.animationValues);\n resetDistortingTransform(`skew${transformAxes[i]}`, visualElement, resetValues, this.animationValues);\n }\n // Force a render of this element to apply the transform with all skews and rotations\n // set to 0.\n visualElement.render();\n // Put back all the values we reset\n for (const key in resetValues) {\n visualElement.setStaticValue(key, resetValues[key]);\n if (this.animationValues) {\n this.animationValues[key] = resetValues[key];\n }\n }\n // Schedule a render for the next frame. This ensures we won't visually\n // see the element with the reset rotate value applied.\n visualElement.scheduleRender();\n }\n getProjectionStyles(styleProp) {\n var _a, _b;\n if (!this.instance || this.isSVG)\n return undefined;\n if (!this.isVisible) {\n return hiddenVisibility;\n }\n const styles = {\n visibility: \"\",\n };\n const transformTemplate = this.getTransformTemplate();\n if (this.needsReset) {\n this.needsReset = false;\n styles.opacity = \"\";\n styles.pointerEvents =\n resolveMotionValue(styleProp === null || styleProp === void 0 ? void 0 : styleProp.pointerEvents) || \"\";\n styles.transform = transformTemplate\n ? transformTemplate(this.latestValues, \"\")\n : \"none\";\n return styles;\n }\n const lead = this.getLead();\n if (!this.projectionDelta || !this.layout || !lead.target) {\n const emptyStyles = {};\n if (this.options.layoutId) {\n emptyStyles.opacity =\n this.latestValues.opacity !== undefined\n ? this.latestValues.opacity\n : 1;\n emptyStyles.pointerEvents =\n resolveMotionValue(styleProp === null || styleProp === void 0 ? void 0 : styleProp.pointerEvents) || \"\";\n }\n if (this.hasProjected && !hasTransform(this.latestValues)) {\n emptyStyles.transform = transformTemplate\n ? transformTemplate({}, \"\")\n : \"none\";\n this.hasProjected = false;\n }\n return emptyStyles;\n }\n const valuesToRender = lead.animationValues || lead.latestValues;\n this.applyTransformsToTarget();\n styles.transform = buildProjectionTransform(this.projectionDeltaWithTransform, this.treeScale, valuesToRender);\n if (transformTemplate) {\n styles.transform = transformTemplate(valuesToRender, styles.transform);\n }\n const { x, y } = this.projectionDelta;\n styles.transformOrigin = `${x.origin * 100}% ${y.origin * 100}% 0`;\n if (lead.animationValues) {\n /**\n * If the lead component is animating, assign this either the entering/leaving\n * opacity\n */\n styles.opacity =\n lead === this\n ? (_b = (_a = valuesToRender.opacity) !== null && _a !== void 0 ? _a : this.latestValues.opacity) !== null && _b !== void 0 ? _b : 1\n : this.preserveOpacity\n ? this.latestValues.opacity\n : valuesToRender.opacityExit;\n }\n else {\n /**\n * Or we're not animating at all, set the lead component to its layout\n * opacity and other components to hidden.\n */\n styles.opacity =\n lead === this\n ? valuesToRender.opacity !== undefined\n ? valuesToRender.opacity\n : \"\"\n : valuesToRender.opacityExit !== undefined\n ? valuesToRender.opacityExit\n : 0;\n }\n /**\n * Apply scale correction\n */\n for (const key in scaleCorrectors) {\n if (valuesToRender[key] === undefined)\n continue;\n const { correct, applyTo } = scaleCorrectors[key];\n /**\n * Only apply scale correction to the value if we have an\n * active projection transform. Otherwise these values become\n * vulnerable to distortion if the element changes size without\n * a corresponding layout animation.\n */\n const corrected = styles.transform === \"none\"\n ? valuesToRender[key]\n : correct(valuesToRender[key], lead);\n if (applyTo) {\n const num = applyTo.length;\n for (let i = 0; i < num; i++) {\n styles[applyTo[i]] = corrected;\n }\n }\n else {\n styles[key] = corrected;\n }\n }\n /**\n * Disable pointer events on follow components. This is to ensure\n * that if a follow component covers a lead component it doesn't block\n * pointer events on the lead.\n */\n if (this.options.layoutId) {\n styles.pointerEvents =\n lead === this\n ? resolveMotionValue(styleProp === null || styleProp === void 0 ? void 0 : styleProp.pointerEvents) || \"\"\n : \"none\";\n }\n return styles;\n }\n clearSnapshot() {\n this.resumeFrom = this.snapshot = undefined;\n }\n // Only run on root\n resetTree() {\n this.root.nodes.forEach((node) => { var _a; return (_a = node.currentAnimation) === null || _a === void 0 ? void 0 : _a.stop(); });\n this.root.nodes.forEach(clearMeasurements);\n this.root.sharedNodes.clear();\n }\n };\n}\nfunction updateLayout(node) {\n node.updateLayout();\n}\nfunction notifyLayoutUpdate(node) {\n var _a;\n const snapshot = ((_a = node.resumeFrom) === null || _a === void 0 ? void 0 : _a.snapshot) || node.snapshot;\n if (node.isLead() &&\n node.layout &&\n snapshot &&\n node.hasListeners(\"didUpdate\")) {\n const { layoutBox: layout, measuredBox: measuredLayout } = node.layout;\n const { animationType } = node.options;\n const isShared = snapshot.source !== node.layout.source;\n // TODO Maybe we want to also resize the layout snapshot so we don't trigger\n // animations for instance if layout=\"size\" and an element has only changed position\n if (animationType === \"size\") {\n eachAxis((axis) => {\n const axisSnapshot = isShared\n ? snapshot.measuredBox[axis]\n : snapshot.layoutBox[axis];\n const length = calcLength(axisSnapshot);\n axisSnapshot.min = layout[axis].min;\n axisSnapshot.max = axisSnapshot.min + length;\n });\n }\n else if (shouldAnimatePositionOnly(animationType, snapshot.layoutBox, layout)) {\n eachAxis((axis) => {\n const axisSnapshot = isShared\n ? snapshot.measuredBox[axis]\n : snapshot.layoutBox[axis];\n const length = calcLength(layout[axis]);\n axisSnapshot.max = axisSnapshot.min + length;\n /**\n * Ensure relative target gets resized and rerendererd\n */\n if (node.relativeTarget && !node.currentAnimation) {\n node.isProjectionDirty = true;\n node.relativeTarget[axis].max =\n node.relativeTarget[axis].min + length;\n }\n });\n }\n const layoutDelta = createDelta();\n calcBoxDelta(layoutDelta, layout, snapshot.layoutBox);\n const visualDelta = createDelta();\n if (isShared) {\n calcBoxDelta(visualDelta, node.applyTransform(measuredLayout, true), snapshot.measuredBox);\n }\n else {\n calcBoxDelta(visualDelta, layout, snapshot.layoutBox);\n }\n const hasLayoutChanged = !isDeltaZero(layoutDelta);\n let hasRelativeTargetChanged = false;\n if (!node.resumeFrom) {\n const relativeParent = node.getClosestProjectingParent();\n /**\n * If the relativeParent is itself resuming from a different element then\n * the relative snapshot is not relavent\n */\n if (relativeParent && !relativeParent.resumeFrom) {\n const { snapshot: parentSnapshot, layout: parentLayout } = relativeParent;\n if (parentSnapshot && parentLayout) {\n const relativeSnapshot = createBox();\n calcRelativePosition(relativeSnapshot, snapshot.layoutBox, parentSnapshot.layoutBox);\n const relativeLayout = createBox();\n calcRelativePosition(relativeLayout, layout, parentLayout.layoutBox);\n if (!boxEqualsRounded(relativeSnapshot, relativeLayout)) {\n hasRelativeTargetChanged = true;\n }\n if (relativeParent.options.layoutRoot) {\n node.relativeTarget = relativeLayout;\n node.relativeTargetOrigin = relativeSnapshot;\n node.relativeParent = relativeParent;\n }\n }\n }\n }\n node.notifyListeners(\"didUpdate\", {\n layout,\n snapshot,\n delta: visualDelta,\n layoutDelta,\n hasLayoutChanged,\n hasRelativeTargetChanged,\n });\n }\n else if (node.isLead()) {\n const { onExitComplete } = node.options;\n onExitComplete && onExitComplete();\n }\n /**\n * Clearing transition\n * TODO: Investigate why this transition is being passed in as {type: false } from Framer\n * and why we need it at all\n */\n node.options.transition = undefined;\n}\nfunction propagateDirtyNodes(node) {\n /**\n * Increase debug counter for nodes encountered this frame\n */\n if (isDebug) {\n metrics.totalNodes++;\n }\n if (!node.parent)\n return;\n /**\n * If this node isn't projecting, propagate isProjectionDirty. It will have\n * no performance impact but it will allow the next child that *is* projecting\n * but *isn't* dirty to just check its parent to see if *any* ancestor needs\n * correcting.\n */\n if (!node.isProjecting()) {\n node.isProjectionDirty = node.parent.isProjectionDirty;\n }\n /**\n * Propagate isSharedProjectionDirty and isTransformDirty\n * throughout the whole tree. A future revision can take another look at\n * this but for safety we still recalcualte shared nodes.\n */\n node.isSharedProjectionDirty || (node.isSharedProjectionDirty = Boolean(node.isProjectionDirty ||\n node.parent.isProjectionDirty ||\n node.parent.isSharedProjectionDirty));\n node.isTransformDirty || (node.isTransformDirty = node.parent.isTransformDirty);\n}\nfunction cleanDirtyNodes(node) {\n node.isProjectionDirty =\n node.isSharedProjectionDirty =\n node.isTransformDirty =\n false;\n}\nfunction clearSnapshot(node) {\n node.clearSnapshot();\n}\nfunction clearMeasurements(node) {\n node.clearMeasurements();\n}\nfunction clearIsLayoutDirty(node) {\n node.isLayoutDirty = false;\n}\nfunction resetTransformStyle(node) {\n const { visualElement } = node.options;\n if (visualElement && visualElement.getProps().onBeforeLayoutMeasure) {\n visualElement.notify(\"BeforeLayoutMeasure\");\n }\n node.resetTransform();\n}\nfunction finishAnimation(node) {\n node.finishAnimation();\n node.targetDelta = node.relativeTarget = node.target = undefined;\n node.isProjectionDirty = true;\n}\nfunction resolveTargetDelta(node) {\n node.resolveTargetDelta();\n}\nfunction calcProjection(node) {\n node.calcProjection();\n}\nfunction resetSkewAndRotation(node) {\n node.resetSkewAndRotation();\n}\nfunction removeLeadSnapshots(stack) {\n stack.removeLeadSnapshot();\n}\nfunction mixAxisDelta(output, delta, p) {\n output.translate = mixNumber(delta.translate, 0, p);\n output.scale = mixNumber(delta.scale, 1, p);\n output.origin = delta.origin;\n output.originPoint = delta.originPoint;\n}\nfunction mixAxis(output, from, to, p) {\n output.min = mixNumber(from.min, to.min, p);\n output.max = mixNumber(from.max, to.max, p);\n}\nfunction mixBox(output, from, to, p) {\n mixAxis(output.x, from.x, to.x, p);\n mixAxis(output.y, from.y, to.y, p);\n}\nfunction hasOpacityCrossfade(node) {\n return (node.animationValues && node.animationValues.opacityExit !== undefined);\n}\nconst defaultLayoutTransition = {\n duration: 0.45,\n ease: [0.4, 0, 0.1, 1],\n};\nconst userAgentContains = (string) => typeof navigator !== \"undefined\" &&\n navigator.userAgent &&\n navigator.userAgent.toLowerCase().includes(string);\n/**\n * Measured bounding boxes must be rounded in Safari and\n * left untouched in Chrome, otherwise non-integer layouts within scaled-up elements\n * can appear to jump.\n */\nconst roundPoint = userAgentContains(\"applewebkit/\") && !userAgentContains(\"chrome/\")\n ? Math.round\n : noop;\nfunction roundAxis(axis) {\n // Round to the nearest .5 pixels to support subpixel layouts\n axis.min = roundPoint(axis.min);\n axis.max = roundPoint(axis.max);\n}\nfunction roundBox(box) {\n roundAxis(box.x);\n roundAxis(box.y);\n}\nfunction shouldAnimatePositionOnly(animationType, snapshot, layout) {\n return (animationType === \"position\" ||\n (animationType === \"preserve-aspect\" &&\n !isNear(aspectRatio(snapshot), aspectRatio(layout), 0.2)));\n}\nfunction checkNodeWasScrollRoot(node) {\n var _a;\n return node !== node.root && ((_a = node.scroll) === null || _a === void 0 ? void 0 : _a.wasRoot);\n}\n\nexport { cleanDirtyNodes, createProjectionNode, mixAxis, mixAxisDelta, mixBox, propagateDirtyNodes };\n","import { createProjectionNode } from './create-projection-node.mjs';\nimport { addDomEvent } from '../../events/add-dom-event.mjs';\n\nconst DocumentProjectionNode = createProjectionNode({\n attachResizeListener: (ref, notify) => addDomEvent(ref, \"resize\", notify),\n measureScroll: () => ({\n x: document.documentElement.scrollLeft || document.body.scrollLeft,\n y: document.documentElement.scrollTop || document.body.scrollTop,\n }),\n checkIsScrollRoot: () => true,\n});\n\nexport { DocumentProjectionNode };\n","import { createProjectionNode } from './create-projection-node.mjs';\nimport { DocumentProjectionNode } from './DocumentProjectionNode.mjs';\n\nconst rootProjectionNode = {\n current: undefined,\n};\nconst HTMLProjectionNode = createProjectionNode({\n measureScroll: (instance) => ({\n x: instance.scrollLeft,\n y: instance.scrollTop,\n }),\n defaultParent: () => {\n if (!rootProjectionNode.current) {\n const documentNode = new DocumentProjectionNode({});\n documentNode.mount(window);\n documentNode.setOptions({ layoutScroll: true });\n rootProjectionNode.current = documentNode;\n }\n return rootProjectionNode.current;\n },\n resetTransform: (instance, value) => {\n instance.style.transform = value !== undefined ? value : \"none\";\n },\n checkIsScrollRoot: (instance) => Boolean(window.getComputedStyle(instance).position === \"fixed\"),\n});\n\nexport { HTMLProjectionNode, rootProjectionNode };\n","import { DragGesture } from '../../gestures/drag/index.mjs';\nimport { PanGesture } from '../../gestures/pan/index.mjs';\nimport { MeasureLayout } from './layout/MeasureLayout.mjs';\nimport { HTMLProjectionNode } from '../../projection/node/HTMLProjectionNode.mjs';\n\nconst drag = {\n pan: {\n Feature: PanGesture,\n },\n drag: {\n Feature: DragGesture,\n ProjectionNode: HTMLProjectionNode,\n MeasureLayout,\n },\n};\n\nexport { drag };\n","import { HTMLProjectionNode } from '../../projection/node/HTMLProjectionNode.mjs';\nimport { MeasureLayout } from './layout/MeasureLayout.mjs';\n\nconst layout = {\n layout: {\n ProjectionNode: HTMLProjectionNode,\n MeasureLayout,\n },\n};\n\nexport { layout };\n","import { drag } from '../../motion/features/drag.mjs';\nimport { layout } from '../../motion/features/layout.mjs';\nimport { domAnimation } from './features-animation.mjs';\n\n/**\n * @public\n */\nconst domMax = {\n ...domAnimation,\n ...drag,\n ...layout,\n};\n\nexport { domMax };\n","// src/index.ts\nimport { useCallback, useEffect, useRef, useState } from \"react\";\nfunction useIsMounted(props = {}) {\n const { rerender = false, delay = 0 } = props;\n const isMountedRef = useRef(false);\n const [isMounted, setIsMounted] = useState(false);\n useEffect(() => {\n isMountedRef.current = true;\n let timer = null;\n if (rerender) {\n if (delay > 0) {\n timer = setTimeout(() => {\n setIsMounted(true);\n }, delay);\n } else {\n setIsMounted(true);\n }\n }\n return () => {\n isMountedRef.current = false;\n if (rerender) {\n setIsMounted(false);\n }\n if (timer) {\n clearTimeout(timer);\n }\n };\n }, [rerender]);\n return [useCallback(() => isMountedRef.current, []), isMounted];\n}\nexport {\n useIsMounted\n};\n","\"use client\";\n\n// src/tab.tsx\nimport { forwardRef } from \"@nextui-org/system\";\nimport { useDOMRef, filterDOMProps, mergeRefs } from \"@nextui-org/react-utils\";\nimport { clsx, dataAttr } from \"@nextui-org/shared-utils\";\nimport { chain, mergeProps } from \"@react-aria/utils\";\nimport scrollIntoView from \"scroll-into-view-if-needed\";\nimport { useFocusRing } from \"@react-aria/focus\";\nimport { useTab } from \"@react-aria/tabs\";\nimport { useHover } from \"@react-aria/interactions\";\nimport { m, domMax, LazyMotion } from \"framer-motion\";\nimport { useIsMounted } from \"@nextui-org/use-is-mounted\";\nimport { jsx, jsxs } from \"react/jsx-runtime\";\nvar Tab = forwardRef((props, ref) => {\n var _a;\n const {\n className,\n as,\n item,\n state,\n classNames,\n isDisabled: isDisabledProp,\n listRef,\n slots,\n motionProps,\n disableAnimation,\n disableCursorAnimation,\n shouldSelectOnPressUp,\n onClick,\n tabRef,\n ...otherProps\n } = props;\n const { key } = item;\n const domRef = useDOMRef(ref);\n const Component = as || (props.href ? \"a\" : \"button\");\n const shouldFilterDOMProps = typeof Component === \"string\";\n const {\n tabProps,\n isSelected,\n isDisabled: isDisabledItem,\n isPressed\n } = useTab({ key, isDisabled: isDisabledProp, shouldSelectOnPressUp }, state, domRef);\n if (props.children == null) {\n delete tabProps[\"aria-controls\"];\n }\n const isDisabled = isDisabledProp || isDisabledItem;\n const { focusProps, isFocused, isFocusVisible } = useFocusRing();\n const { hoverProps, isHovered } = useHover({\n isDisabled\n });\n const tabStyles = clsx(classNames == null ? void 0 : classNames.tab, className);\n const [, isMounted] = useIsMounted({\n rerender: true\n });\n const handleClick = () => {\n chain(onClick, tabProps.onClick);\n if (!(domRef == null ? void 0 : domRef.current) || !(listRef == null ? void 0 : listRef.current))\n return;\n scrollIntoView(domRef.current, {\n scrollMode: \"if-needed\",\n behavior: \"smooth\",\n block: \"end\",\n inline: \"end\",\n boundary: listRef == null ? void 0 : listRef.current\n });\n };\n return /* @__PURE__ */ jsxs(\n Component,\n {\n ref: mergeRefs(domRef, tabRef),\n \"data-disabled\": dataAttr(isDisabledItem),\n \"data-focus\": dataAttr(isFocused),\n \"data-focus-visible\": dataAttr(isFocusVisible),\n \"data-hover\": dataAttr(isHovered),\n \"data-hover-unselected\": dataAttr((isHovered || isPressed) && !isSelected),\n \"data-pressed\": dataAttr(isPressed),\n \"data-selected\": dataAttr(isSelected),\n \"data-slot\": \"tab\",\n ...mergeProps(\n tabProps,\n !isDisabled ? {\n ...focusProps,\n ...hoverProps\n } : {},\n filterDOMProps(otherProps, {\n enabled: shouldFilterDOMProps,\n omitPropNames: /* @__PURE__ */ new Set([\"title\"])\n }),\n { onClick: handleClick }\n ),\n className: (_a = slots.tab) == null ? void 0 : _a.call(slots, { class: tabStyles }),\n title: otherProps == null ? void 0 : otherProps.titleValue,\n type: Component === \"button\" ? \"button\" : void 0,\n children: [\n isSelected && !disableAnimation && !disableCursorAnimation && isMounted ? /* @__PURE__ */ jsx(LazyMotion, { features: domMax, children: /* @__PURE__ */ jsx(\n m.span,\n {\n className: slots.cursor({ class: classNames == null ? void 0 : classNames.cursor }),\n \"data-slot\": \"cursor\",\n layoutDependency: false,\n layoutId: \"cursor\",\n transition: {\n type: \"spring\",\n bounce: 0.15,\n duration: 0.5\n },\n ...motionProps\n }\n ) }) : null,\n /* @__PURE__ */ jsx(\n \"div\",\n {\n className: slots.tabContent({\n class: classNames == null ? void 0 : classNames.tabContent\n }),\n \"data-slot\": \"tabContent\",\n children: item.rendered\n }\n )\n ]\n }\n );\n});\nTab.displayName = \"NextUI.Tab\";\nvar tab_default = Tab;\n\nexport {\n tab_default\n};\n","import {\n colorVariants\n} from \"./chunk-GQT3YUX3.mjs\";\nimport {\n tv\n} from \"./chunk-UWE6H66T.mjs\";\nimport {\n dataFocusVisibleClasses\n} from \"./chunk-GH5E4FQB.mjs\";\n\n// src/components/tabs.ts\nvar tabs = tv({\n slots: {\n base: \"inline-flex\",\n tabList: [\n \"flex\",\n \"p-1\",\n \"h-fit\",\n \"gap-2\",\n \"items-center\",\n \"flex-nowrap\",\n \"overflow-x-scroll\",\n \"scrollbar-hide\",\n \"bg-default-100\"\n ],\n tab: [\n \"z-0\",\n \"w-full\",\n \"px-3\",\n \"py-1\",\n \"flex\",\n \"group\",\n \"relative\",\n \"justify-center\",\n \"items-center\",\n \"outline-none\",\n \"cursor-pointer\",\n \"transition-opacity\",\n \"tap-highlight-transparent\",\n \"data-[disabled=true]:cursor-not-allowed\",\n \"data-[disabled=true]:opacity-30\",\n \"data-[hover-unselected=true]:opacity-disabled\",\n ...dataFocusVisibleClasses\n ],\n tabContent: [\n \"relative\",\n \"z-10\",\n \"text-inherit\",\n \"whitespace-nowrap\",\n \"transition-colors\",\n \"text-default-500\",\n \"group-data-[selected=true]:text-foreground\"\n ],\n cursor: [\"absolute\", \"z-0\", \"bg-white\"],\n panel: [\n \"py-3\",\n \"px-1\",\n \"outline-none\",\n \"data-[inert=true]:hidden\",\n ...dataFocusVisibleClasses\n ],\n wrapper: []\n },\n variants: {\n variant: {\n solid: {\n cursor: \"inset-0\"\n },\n light: {\n tabList: \"bg-transparent dark:bg-transparent\",\n cursor: \"inset-0\"\n },\n underlined: {\n tabList: \"bg-transparent dark:bg-transparent\",\n cursor: \"h-[2px] w-[80%] bottom-0 shadow-[0_1px_0px_0_rgba(0,0,0,0.05)]\"\n },\n bordered: {\n tabList: \"bg-transparent dark:bg-transparent border-medium border-default-200 shadow-sm\",\n cursor: \"inset-0\"\n }\n },\n color: {\n default: {},\n primary: {},\n secondary: {},\n success: {},\n warning: {},\n danger: {}\n },\n size: {\n sm: {\n tabList: \"rounded-medium\",\n tab: \"h-7 text-tiny rounded-small\",\n cursor: \"rounded-small\"\n },\n md: {\n tabList: \"rounded-medium\",\n tab: \"h-8 text-small rounded-small\",\n cursor: \"rounded-small\"\n },\n lg: {\n tabList: \"rounded-large\",\n tab: \"h-9 text-medium rounded-medium\",\n cursor: \"rounded-medium\"\n }\n },\n radius: {\n none: {\n tabList: \"rounded-none\",\n tab: \"rounded-none\",\n cursor: \"rounded-none\"\n },\n sm: {\n tabList: \"rounded-medium\",\n tab: \"rounded-small\",\n cursor: \"rounded-small\"\n },\n md: {\n tabList: \"rounded-medium\",\n tab: \"rounded-small\",\n cursor: \"rounded-small\"\n },\n lg: {\n tabList: \"rounded-large\",\n tab: \"rounded-medium\",\n cursor: \"rounded-medium\"\n },\n full: {\n tabList: \"rounded-full\",\n tab: \"rounded-full\",\n cursor: \"rounded-full\"\n }\n },\n fullWidth: {\n true: {\n base: \"w-full\",\n tabList: \"w-full\"\n }\n },\n isDisabled: {\n true: {\n tabList: \"opacity-disabled pointer-events-none\"\n }\n },\n disableAnimation: {\n true: {\n tab: \"transition-none\",\n tabContent: \"transition-none\"\n }\n },\n placement: {\n top: {},\n start: {\n tabList: \"flex-col\",\n panel: \"py-0 px-3\",\n wrapper: \"flex\"\n },\n end: {\n tabList: \"flex-col\",\n panel: \"py-0 px-3\",\n wrapper: \"flex flex-row-reverse\"\n },\n bottom: {\n wrapper: \"flex flex-col-reverse\"\n }\n }\n },\n defaultVariants: {\n color: \"default\",\n variant: \"solid\",\n size: \"md\",\n fullWidth: false,\n isDisabled: false\n },\n compoundVariants: [\n {\n variant: [\"solid\", \"bordered\", \"light\"],\n color: \"default\",\n class: {\n cursor: [\"bg-background\", \"dark:bg-default\", \"shadow-small\"],\n tabContent: \"group-data-[selected=true]:text-default-foreground\"\n }\n },\n {\n variant: [\"solid\", \"bordered\", \"light\"],\n color: \"primary\",\n class: {\n cursor: colorVariants.solid.primary,\n tabContent: \"group-data-[selected=true]:text-primary-foreground\"\n }\n },\n {\n variant: [\"solid\", \"bordered\", \"light\"],\n color: \"secondary\",\n class: {\n cursor: colorVariants.solid.secondary,\n tabContent: \"group-data-[selected=true]:text-secondary-foreground\"\n }\n },\n {\n variant: [\"solid\", \"bordered\", \"light\"],\n color: \"success\",\n class: {\n cursor: colorVariants.solid.success,\n tabContent: \"group-data-[selected=true]:text-success-foreground\"\n }\n },\n {\n variant: [\"solid\", \"bordered\", \"light\"],\n color: \"warning\",\n class: {\n cursor: colorVariants.solid.warning,\n tabContent: \"group-data-[selected=true]:text-warning-foreground\"\n }\n },\n {\n variant: [\"solid\", \"bordered\", \"light\"],\n color: \"danger\",\n class: {\n cursor: colorVariants.solid.danger,\n tabContent: \"group-data-[selected=true]:text-danger-foreground\"\n }\n },\n {\n variant: \"underlined\",\n color: \"default\",\n class: {\n cursor: \"bg-foreground\",\n tabContent: \"group-data-[selected=true]:text-foreground\"\n }\n },\n {\n variant: \"underlined\",\n color: \"primary\",\n class: {\n cursor: \"bg-primary\",\n tabContent: \"group-data-[selected=true]:text-primary\"\n }\n },\n {\n variant: \"underlined\",\n color: \"secondary\",\n class: {\n cursor: \"bg-secondary\",\n tabContent: \"group-data-[selected=true]:text-secondary\"\n }\n },\n {\n variant: \"underlined\",\n color: \"success\",\n class: {\n cursor: \"bg-success\",\n tabContent: \"group-data-[selected=true]:text-success\"\n }\n },\n {\n variant: \"underlined\",\n color: \"warning\",\n class: {\n cursor: \"bg-warning\",\n tabContent: \"group-data-[selected=true]:text-warning\"\n }\n },\n {\n variant: \"underlined\",\n color: \"danger\",\n class: {\n cursor: \"bg-danger\",\n tabContent: \"group-data-[selected=true]:text-danger\"\n }\n },\n {\n disableAnimation: true,\n variant: \"underlined\",\n class: {\n tab: [\n \"after:content-['']\",\n \"after:absolute\",\n \"after:bottom-0\",\n \"after:h-[2px]\",\n \"after:w-[80%]\",\n \"after:opacity-0\",\n \"after:shadow-[0_1px_0px_0_rgba(0,0,0,0.05)]\",\n \"data-[selected=true]:after:opacity-100\"\n ]\n }\n },\n {\n disableAnimation: true,\n color: \"default\",\n variant: [\"solid\", \"bordered\", \"light\"],\n class: {\n tab: \"data-[selected=true]:bg-default data-[selected=true]:text-default-foreground\"\n }\n },\n {\n disableAnimation: true,\n color: \"primary\",\n variant: [\"solid\", \"bordered\", \"light\"],\n class: {\n tab: \"data-[selected=true]:bg-primary data-[selected=true]:text-primary-foreground\"\n }\n },\n {\n disableAnimation: true,\n color: \"secondary\",\n variant: [\"solid\", \"bordered\", \"light\"],\n class: {\n tab: \"data-[selected=true]:bg-secondary data-[selected=true]:text-secondary-foreground\"\n }\n },\n {\n disableAnimation: true,\n color: \"success\",\n variant: [\"solid\", \"bordered\", \"light\"],\n class: {\n tab: \"data-[selected=true]:bg-success data-[selected=true]:text-success-foreground\"\n }\n },\n {\n disableAnimation: true,\n color: \"warning\",\n variant: [\"solid\", \"bordered\", \"light\"],\n class: {\n tab: \"data-[selected=true]:bg-warning data-[selected=true]:text-warning-foreground\"\n }\n },\n {\n disableAnimation: true,\n color: \"danger\",\n variant: [\"solid\", \"bordered\", \"light\"],\n class: {\n tab: \"data-[selected=true]:bg-danger data-[selected=true]:text-danger-foreground\"\n }\n },\n {\n disableAnimation: true,\n color: \"default\",\n variant: \"underlined\",\n class: {\n tab: \"data-[selected=true]:after:bg-foreground\"\n }\n },\n {\n disableAnimation: true,\n color: \"primary\",\n variant: \"underlined\",\n class: {\n tab: \"data-[selected=true]:after:bg-primary\"\n }\n },\n {\n disableAnimation: true,\n color: \"secondary\",\n variant: \"underlined\",\n class: {\n tab: \"data-[selected=true]:after:bg-secondary\"\n }\n },\n {\n disableAnimation: true,\n color: \"success\",\n variant: \"underlined\",\n class: {\n tab: \"data-[selected=true]:after:bg-success\"\n }\n },\n {\n disableAnimation: true,\n color: \"warning\",\n variant: \"underlined\",\n class: {\n tab: \"data-[selected=true]:after:bg-warning\"\n }\n },\n {\n disableAnimation: true,\n color: \"danger\",\n variant: \"underlined\",\n class: {\n tab: \"data-[selected=true]:after:bg-danger\"\n }\n }\n ],\n compoundSlots: [\n {\n variant: \"underlined\",\n slots: [\"tab\", \"tabList\", \"cursor\"],\n class: [\"rounded-none\"]\n }\n ]\n});\n\nexport {\n tabs\n};\n","import {useListState as $e72dd72e1c76a225$export$2f645645f7bca764} from \"./useListState.mjs\";\nimport {useControlledState as $eBozH$useControlledState} from \"@react-stately/utils\";\nimport {useMemo as $eBozH$useMemo} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nfunction $a0d645289fe9b86b$export$e7f05e985daf4b5f(props) {\n var _props_defaultSelectedKey;\n let [selectedKey, setSelectedKey] = (0, $eBozH$useControlledState)(props.selectedKey, (_props_defaultSelectedKey = props.defaultSelectedKey) !== null && _props_defaultSelectedKey !== void 0 ? _props_defaultSelectedKey : null, props.onSelectionChange);\n let selectedKeys = (0, $eBozH$useMemo)(()=>selectedKey != null ? [\n selectedKey\n ] : [], [\n selectedKey\n ]);\n let { collection: collection, disabledKeys: disabledKeys, selectionManager: selectionManager } = (0, $e72dd72e1c76a225$export$2f645645f7bca764)({\n ...props,\n selectionMode: 'single',\n disallowEmptySelection: true,\n allowDuplicateSelectionEvents: true,\n selectedKeys: selectedKeys,\n onSelectionChange: (keys)=>{\n // impossible, but TS doesn't know that\n if (keys === 'all') return;\n var _keys_values_next_value;\n let key = (_keys_values_next_value = keys.values().next().value) !== null && _keys_values_next_value !== void 0 ? _keys_values_next_value : null;\n // Always fire onSelectionChange, even if the key is the same\n // as the current key (useControlledState does not).\n if (key === selectedKey && props.onSelectionChange) props.onSelectionChange(key);\n setSelectedKey(key);\n }\n });\n let selectedItem = selectedKey != null ? collection.getItem(selectedKey) : null;\n return {\n collection: collection,\n disabledKeys: disabledKeys,\n selectionManager: selectionManager,\n selectedKey: selectedKey,\n setSelectedKey: setSelectedKey,\n selectedItem: selectedItem\n };\n}\n\n\nexport {$a0d645289fe9b86b$export$e7f05e985daf4b5f as useSingleSelectListState};\n//# sourceMappingURL=useSingleSelectListState.module.js.map\n","import {useSingleSelectListState as $fgY1A$useSingleSelectListState} from \"@react-stately/list\";\nimport {useRef as $fgY1A$useRef, useEffect as $fgY1A$useEffect} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $76f919a04c5a7d14$export$4ba071daf4e486(props) {\n var _props_defaultSelectedKey, _ref;\n let state = (0, $fgY1A$useSingleSelectListState)({\n ...props,\n suppressTextValueWarning: true,\n defaultSelectedKey: (_ref = (_props_defaultSelectedKey = props.defaultSelectedKey) !== null && _props_defaultSelectedKey !== void 0 ? _props_defaultSelectedKey : $76f919a04c5a7d14$var$findDefaultSelectedKey(props.collection, props.disabledKeys ? new Set(props.disabledKeys) : new Set())) !== null && _ref !== void 0 ? _ref : undefined\n });\n let { selectionManager: selectionManager, collection: collection, selectedKey: currentSelectedKey } = state;\n let lastSelectedKey = (0, $fgY1A$useRef)(currentSelectedKey);\n (0, $fgY1A$useEffect)(()=>{\n // Ensure a tab is always selected (in case no selected key was specified or if selected item was deleted from collection)\n let selectedKey = currentSelectedKey;\n if (selectionManager.isEmpty || selectedKey == null || !collection.getItem(selectedKey)) {\n selectedKey = $76f919a04c5a7d14$var$findDefaultSelectedKey(collection, state.disabledKeys);\n if (selectedKey != null) // directly set selection because replace/toggle selection won't consider disabled keys\n selectionManager.setSelectedKeys([\n selectedKey\n ]);\n }\n // If the tablist doesn't have focus and the selected key changes or if there isn't a focused key yet, change focused key to the selected key if it exists.\n if (selectedKey != null && selectionManager.focusedKey == null || !selectionManager.isFocused && selectedKey !== lastSelectedKey.current) selectionManager.setFocusedKey(selectedKey);\n lastSelectedKey.current = selectedKey;\n });\n return {\n ...state,\n isDisabled: props.isDisabled || false\n };\n}\nfunction $76f919a04c5a7d14$var$findDefaultSelectedKey(collection, disabledKeys) {\n let selectedKey = null;\n if (collection) {\n var _collection_getItem_props, _collection_getItem, _collection_getItem_props1, _collection_getItem1;\n selectedKey = collection.getFirstKey();\n // loop over tabs until we find one that isn't disabled and select that\n while(selectedKey != null && (disabledKeys.has(selectedKey) || ((_collection_getItem = collection.getItem(selectedKey)) === null || _collection_getItem === void 0 ? void 0 : (_collection_getItem_props = _collection_getItem.props) === null || _collection_getItem_props === void 0 ? void 0 : _collection_getItem_props.isDisabled)) && selectedKey !== collection.getLastKey())selectedKey = collection.getKeyAfter(selectedKey);\n // if this check is true, then every item is disabled, it makes more sense to default to the first key than the last\n if (selectedKey != null && (disabledKeys.has(selectedKey) || ((_collection_getItem1 = collection.getItem(selectedKey)) === null || _collection_getItem1 === void 0 ? void 0 : (_collection_getItem_props1 = _collection_getItem1.props) === null || _collection_getItem_props1 === void 0 ? void 0 : _collection_getItem_props1.isDisabled)) && selectedKey === collection.getLastKey()) selectedKey = collection.getFirstKey();\n }\n return selectedKey;\n}\n\n\nexport {$76f919a04c5a7d14$export$4ba071daf4e486 as useTabListState};\n//# sourceMappingURL=useTabListState.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ class $bfc6f2d60b8a4c40$export$15010ca3c1abe90b {\n getKeyLeftOf(key) {\n if (this.flipDirection) return this.getNextKey(key);\n return this.getPreviousKey(key);\n }\n getKeyRightOf(key) {\n if (this.flipDirection) return this.getPreviousKey(key);\n return this.getNextKey(key);\n }\n isDisabled(key) {\n var _this_collection_getItem_props, _this_collection_getItem;\n return this.disabledKeys.has(key) || !!((_this_collection_getItem = this.collection.getItem(key)) === null || _this_collection_getItem === void 0 ? void 0 : (_this_collection_getItem_props = _this_collection_getItem.props) === null || _this_collection_getItem_props === void 0 ? void 0 : _this_collection_getItem_props.isDisabled);\n }\n getFirstKey() {\n let key = this.collection.getFirstKey();\n if (key != null && this.isDisabled(key)) key = this.getNextKey(key);\n return key;\n }\n getLastKey() {\n let key = this.collection.getLastKey();\n if (key != null && this.isDisabled(key)) key = this.getPreviousKey(key);\n return key;\n }\n getKeyAbove(key) {\n if (this.tabDirection) return null;\n return this.getPreviousKey(key);\n }\n getKeyBelow(key) {\n if (this.tabDirection) return null;\n return this.getNextKey(key);\n }\n getNextKey(key) {\n do {\n key = this.collection.getKeyAfter(key);\n if (key == null) key = this.collection.getFirstKey();\n }while (this.isDisabled(key));\n return key;\n }\n getPreviousKey(key) {\n do {\n key = this.collection.getKeyBefore(key);\n if (key == null) key = this.collection.getLastKey();\n }while (this.isDisabled(key));\n return key;\n }\n constructor(collection, direction, orientation, disabledKeys = new Set()){\n this.collection = collection;\n this.flipDirection = direction === 'rtl' && orientation === 'horizontal';\n this.disabledKeys = disabledKeys;\n this.tabDirection = orientation === 'horizontal';\n }\n}\n\n\nexport {$bfc6f2d60b8a4c40$export$15010ca3c1abe90b as TabsKeyboardDelegate};\n//# sourceMappingURL=TabsKeyboardDelegate.module.js.map\n","import {tabsIds as $99b62ae3ff97ec45$export$c5f62239608282b6} from \"./utils.mjs\";\nimport {TabsKeyboardDelegate as $bfc6f2d60b8a4c40$export$15010ca3c1abe90b} from \"./TabsKeyboardDelegate.mjs\";\nimport {useId as $bQNZs$useId, useLabels as $bQNZs$useLabels, mergeProps as $bQNZs$mergeProps} from \"@react-aria/utils\";\nimport {useLocale as $bQNZs$useLocale} from \"@react-aria/i18n\";\nimport {useMemo as $bQNZs$useMemo} from \"react\";\nimport {useSelectableCollection as $bQNZs$useSelectableCollection} from \"@react-aria/selection\";\n\n/*\n* Copyright 2020 Adobe. All rights reserved.\n* This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n* you may not use this file except in compliance with the License. You may obtain a copy\n* of the License at http://www.apache.org/licenses/LICENSE-2.0\n*\n* Unless required by applicable law or agreed to in writing, software distributed under\n* the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n* OF ANY KIND, either express or implied. See the License for the specific language\n* governing permissions and limitations under the License.\n*/ \n\n\n\n\n\nfunction $58d314389b21fa3f$export$773e389e644c5874(props, state, ref) {\n let { orientation: orientation = 'horizontal', keyboardActivation: keyboardActivation = 'automatic' } = props;\n let { collection: collection, selectionManager: manager, disabledKeys: disabledKeys } = state;\n let { direction: direction } = (0, $bQNZs$useLocale)();\n let delegate = (0, $bQNZs$useMemo)(()=>new (0, $bfc6f2d60b8a4c40$export$15010ca3c1abe90b)(collection, direction, orientation, disabledKeys), [\n collection,\n disabledKeys,\n orientation,\n direction\n ]);\n let { collectionProps: collectionProps } = (0, $bQNZs$useSelectableCollection)({\n ref: ref,\n selectionManager: manager,\n keyboardDelegate: delegate,\n selectOnFocus: keyboardActivation === 'automatic',\n disallowEmptySelection: true,\n scrollRef: ref,\n linkBehavior: 'selection'\n });\n // Compute base id for all tabs\n let tabsId = (0, $bQNZs$useId)();\n (0, $99b62ae3ff97ec45$export$c5f62239608282b6).set(state, tabsId);\n let tabListLabelProps = (0, $bQNZs$useLabels)({\n ...props,\n id: tabsId\n });\n return {\n tabListProps: {\n ...(0, $bQNZs$mergeProps)(collectionProps, tabListLabelProps),\n role: 'tablist',\n 'aria-orientation': orientation,\n tabIndex: undefined\n }\n };\n}\n\n\nexport {$58d314389b21fa3f$export$773e389e644c5874 as useTabList};\n//# sourceMappingURL=useTabList.module.js.map\n","\"use client\";\n\n// src/use-tabs.ts\nimport {\n mapPropsVariants,\n useProviderContext\n} from \"@nextui-org/system\";\nimport { tabs } from \"@nextui-org/theme\";\nimport { useDOMRef } from \"@nextui-org/react-utils\";\nimport { clsx, objectToDeps } from \"@nextui-org/shared-utils\";\nimport { filterDOMProps } from \"@nextui-org/react-utils\";\nimport { useMemo, useCallback } from \"react\";\nimport { useTabListState } from \"@react-stately/tabs\";\nimport { useTabList } from \"@react-aria/tabs\";\nimport { mergeProps } from \"@react-aria/utils\";\nfunction useTabs(originalProps) {\n var _a, _b, _c;\n const globalContext = useProviderContext();\n const [props, variantProps] = mapPropsVariants(originalProps, tabs.variantKeys);\n const {\n ref,\n as,\n className,\n classNames,\n children,\n disableCursorAnimation,\n motionProps,\n isVertical = false,\n shouldSelectOnPressUp = true,\n destroyInactiveTabPanel = true,\n ...otherProps\n } = props;\n const Component = as || \"div\";\n const shouldFilterDOMProps = typeof Component === \"string\";\n const domRef = useDOMRef(ref);\n const disableAnimation = (_b = (_a = originalProps == null ? void 0 : originalProps.disableAnimation) != null ? _a : globalContext == null ? void 0 : globalContext.disableAnimation) != null ? _b : false;\n const state = useTabListState({\n children,\n ...otherProps\n });\n const { tabListProps } = useTabList(otherProps, state, domRef);\n const slots = useMemo(\n () => tabs({\n ...variantProps,\n className,\n disableAnimation,\n ...isVertical ? { placement: \"start\" } : {}\n }),\n [objectToDeps(variantProps), className, disableAnimation, isVertical]\n );\n const baseStyles = clsx(classNames == null ? void 0 : classNames.base, className);\n const values = useMemo(\n () => ({\n state,\n slots,\n classNames,\n motionProps,\n disableAnimation,\n listRef: domRef,\n shouldSelectOnPressUp,\n disableCursorAnimation,\n isDisabled: originalProps == null ? void 0 : originalProps.isDisabled\n }),\n [\n state,\n slots,\n domRef,\n motionProps,\n disableAnimation,\n disableCursorAnimation,\n shouldSelectOnPressUp,\n originalProps == null ? void 0 : originalProps.isDisabled,\n classNames\n ]\n );\n const getBaseProps = useCallback(\n (props2) => ({\n \"data-slot\": \"base\",\n className: slots.base({ class: clsx(baseStyles, props2 == null ? void 0 : props2.className) }),\n ...mergeProps(\n filterDOMProps(otherProps, {\n enabled: shouldFilterDOMProps\n }),\n props2\n )\n }),\n [baseStyles, otherProps, slots]\n );\n const placement = (_c = variantProps.placement) != null ? _c : isVertical ? \"start\" : \"top\";\n const getWrapperProps = useCallback(\n (props2) => ({\n \"data-slot\": \"tabWrapper\",\n className: slots.wrapper({ class: clsx(classNames == null ? void 0 : classNames.wrapper, props2 == null ? void 0 : props2.className) }),\n \"data-placement\": placement,\n \"data-vertical\": isVertical || placement === \"start\" || placement === \"end\" ? \"vertical\" : \"horizontal\"\n }),\n [classNames, slots, placement, isVertical]\n );\n const getTabListProps = useCallback(\n (props2) => ({\n ref: domRef,\n \"data-slot\": \"tabList\",\n className: slots.tabList({ class: clsx(classNames == null ? void 0 : classNames.tabList, props2 == null ? void 0 : props2.className) }),\n ...mergeProps(tabListProps, props2)\n }),\n [domRef, tabListProps, classNames, slots]\n );\n return {\n Component,\n domRef,\n state,\n values,\n destroyInactiveTabPanel,\n getBaseProps,\n getTabListProps,\n getWrapperProps\n };\n}\n\nexport {\n useTabs\n};\n","\"use client\";\nimport {\n tab_panel_default\n} from \"./chunk-6XM6DIWB.mjs\";\nimport {\n tab_default\n} from \"./chunk-WIIQT7L4.mjs\";\nimport {\n useTabs\n} from \"./chunk-73H64UCB.mjs\";\n\n// src/tabs.tsx\nimport { useId } from \"react\";\nimport { LayoutGroup } from \"framer-motion\";\nimport { forwardRef } from \"@nextui-org/system\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar Tabs = forwardRef(function Tabs2(props, ref) {\n const {\n Component,\n values,\n state,\n destroyInactiveTabPanel,\n getBaseProps,\n getTabListProps,\n getWrapperProps\n } = useTabs({\n ...props,\n ref\n });\n const layoutId = useId();\n const layoutGroupEnabled = !props.disableAnimation && !props.disableCursorAnimation;\n const tabsProps = {\n state,\n listRef: values.listRef,\n slots: values.slots,\n classNames: values.classNames,\n isDisabled: values.isDisabled,\n motionProps: values.motionProps,\n disableAnimation: values.disableAnimation,\n shouldSelectOnPressUp: values.shouldSelectOnPressUp,\n disableCursorAnimation: values.disableCursorAnimation\n };\n const tabs = [...state.collection].map((item) => /* @__PURE__ */ jsx(tab_default, { item, ...tabsProps, ...item.props }, item.key));\n const renderTabs = /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\"div\", { ...getBaseProps(), children: /* @__PURE__ */ jsx(Component, { ...getTabListProps(), children: layoutGroupEnabled ? /* @__PURE__ */ jsx(LayoutGroup, { id: layoutId, children: tabs }) : tabs }) }),\n [...state.collection].map((item) => {\n return /* @__PURE__ */ jsx(\n tab_panel_default,\n {\n classNames: values.classNames,\n destroyInactiveTabPanel,\n slots: values.slots,\n state: values.state,\n tabKey: item.key\n },\n item.key\n );\n })\n ] });\n if (\"placement\" in props || \"isVertical\" in props) {\n return /* @__PURE__ */ jsx(\"div\", { ...getWrapperProps(), children: renderTabs });\n }\n return renderTabs;\n});\nvar tabs_default = Tabs;\n\nexport {\n tabs_default\n};\n","import {\n tv\n} from \"./chunk-UWE6H66T.mjs\";\nimport {\n dataFocusVisibleClasses\n} from \"./chunk-GH5E4FQB.mjs\";\n\n// src/components/breadcrumbs.ts\nvar breadcrumbItem = tv({\n slots: {\n base: \"flex items-center\",\n item: [\n \"flex gap-1 items-center\",\n \"cursor-pointer\",\n \"whitespace-nowrap\",\n \"line-clamp-1\",\n \"outline-none\",\n \"tap-highlight-transparent\",\n ...dataFocusVisibleClasses\n ],\n separator: \"text-default-400 px-1 rtl:rotate-180\"\n },\n variants: {\n color: {\n foreground: {\n item: \"text-foreground/50\",\n separator: \"text-foreground/50\"\n },\n primary: {\n item: \"text-primary/80\",\n separator: \"text-primary/80\"\n },\n secondary: {\n item: \"text-secondary/80\",\n separator: \"text-secondary/80\"\n },\n success: {\n item: \"text-success/80\",\n separator: \"text-success/80\"\n },\n warning: {\n item: \"text-warning/80\",\n separator: \"text-warning/80\"\n },\n danger: {\n item: \"text-danger/80\",\n separator: \"text-danger/80\"\n }\n },\n size: {\n sm: {\n item: \"text-tiny\"\n },\n md: {\n item: \"text-small\"\n },\n lg: {\n item: \"text-medium\"\n }\n },\n underline: {\n none: {\n item: \"no-underline\"\n },\n hover: {\n item: \"hover:underline\"\n },\n always: {\n item: \"underline\"\n },\n active: {\n item: \"active:underline\"\n },\n focus: {\n item: \"focus:underline\"\n }\n },\n isCurrent: {\n true: {\n item: \"cursor-default\"\n },\n false: {\n item: [\"hover:opacity-80\", \"active:opacity-disabled\"]\n }\n },\n isDisabled: {\n true: {\n item: \"opacity-disabled pointer-events-none\",\n separator: \"opacity-disabled\"\n }\n },\n disableAnimation: {\n false: {\n item: \"transition-opacity\"\n },\n true: {\n item: \"transition-none\"\n }\n }\n },\n defaultVariants: {\n size: \"md\",\n color: \"foreground\",\n underline: \"hover\",\n isDisabled: false\n },\n compoundVariants: [\n {\n isCurrent: true,\n color: \"foreground\",\n class: {\n item: \"text-foreground\"\n }\n },\n {\n isCurrent: true,\n color: \"primary\",\n class: {\n item: \"text-primary\"\n }\n },\n {\n isCurrent: true,\n color: \"secondary\",\n class: {\n item: \"text-secondary\"\n }\n },\n {\n isCurrent: true,\n color: \"success\",\n class: {\n item: \"text-success\"\n }\n },\n {\n isCurrent: true,\n color: \"warning\",\n class: {\n item: \"text-warning\"\n }\n },\n {\n isCurrent: true,\n color: \"danger\",\n class: {\n item: \"text-danger\"\n }\n },\n {\n isCurrent: false,\n underline: \"none\",\n class: {\n item: \"no-underline\"\n }\n },\n {\n underline: [\"hover\", \"always\", \"active\", \"focus\"],\n class: \"underline-offset-4\"\n }\n ]\n});\nvar breadcrumbs = tv({\n slots: {\n base: \"\",\n list: \"flex flex-wrap list-none\",\n ellipsis: \"text-medium\",\n separator: \"text-default-400 px-1\"\n },\n variants: {\n size: {\n sm: {},\n md: {},\n lg: {}\n },\n radius: {\n none: {\n list: \"rounded-none\"\n },\n sm: {\n list: \"rounded-small\"\n },\n md: {\n list: \"rounded-medium\"\n },\n lg: {\n list: \"rounded-large\"\n },\n full: {\n list: \"rounded-full\"\n }\n },\n variant: {\n solid: {\n list: \"bg-default-100\"\n },\n bordered: {\n list: \"border-medium border-default-200 shadow-sm\"\n },\n light: {}\n }\n },\n defaultVariants: {\n size: \"md\",\n radius: \"sm\",\n variant: \"light\"\n },\n compoundVariants: [\n {\n variant: [\"solid\", \"bordered\"],\n class: {\n list: \"max-w-fit\"\n }\n },\n {\n variant: [\"solid\", \"bordered\"],\n size: \"sm\",\n class: {\n list: \"px-2 py-1\"\n }\n },\n {\n variant: [\"solid\", \"bordered\"],\n size: \"md\",\n class: {\n list: \"px-2.5 py-1.5\"\n }\n },\n {\n variant: [\"solid\", \"bordered\"],\n size: \"lg\",\n class: {\n list: \"px-3 py-2\"\n }\n }\n ]\n});\n\nexport {\n breadcrumbItem,\n breadcrumbs\n};\n","function none() {}\n\nexport default function(selector) {\n return selector == null ? none : function() {\n return this.querySelector(selector);\n };\n}\n","import {Selection} from \"./index.js\";\nimport selector from \"../selector.js\";\n\nexport default function(select) {\n if (typeof select !== \"function\") select = selector(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = new Array(n), node, subnode, i = 0; i < n; ++i) {\n if ((node = group[i]) && (subnode = select.call(node, node.__data__, i, group))) {\n if (\"__data__\" in node) subnode.__data__ = node.__data__;\n subgroup[i] = subnode;\n }\n }\n }\n\n return new Selection(subgroups, this._parents);\n}\n","// Given something array like (or null), returns something that is strictly an\n// array. This is used to ensure that array-like objects passed to d3.selectAll\n// or selection.selectAll are converted into proper arrays when creating a\n// selection; we don’t ever want to create a selection backed by a live\n// HTMLCollection or NodeList. However, note that selection.selectAll will use a\n// static NodeList as a group, since it safely derived from querySelectorAll.\nexport default function array(x) {\n return x == null ? [] : Array.isArray(x) ? x : Array.from(x);\n}\n","function empty() {\n return [];\n}\n\nexport default function(selector) {\n return selector == null ? empty : function() {\n return this.querySelectorAll(selector);\n };\n}\n","import {Selection} from \"./index.js\";\nimport array from \"../array.js\";\nimport selectorAll from \"../selectorAll.js\";\n\nfunction arrayAll(select) {\n return function() {\n return array(select.apply(this, arguments));\n };\n}\n\nexport default function(select) {\n if (typeof select === \"function\") select = arrayAll(select);\n else select = selectorAll(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = [], parents = [], j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n subgroups.push(select.call(node, node.__data__, i, group));\n parents.push(node);\n }\n }\n }\n\n return new Selection(subgroups, parents);\n}\n","export default function(selector) {\n return function() {\n return this.matches(selector);\n };\n}\n\nexport function childMatcher(selector) {\n return function(node) {\n return node.matches(selector);\n };\n}\n\n","import {childMatcher} from \"../matcher.js\";\n\nvar find = Array.prototype.find;\n\nfunction childFind(match) {\n return function() {\n return find.call(this.children, match);\n };\n}\n\nfunction childFirst() {\n return this.firstElementChild;\n}\n\nexport default function(match) {\n return this.select(match == null ? childFirst\n : childFind(typeof match === \"function\" ? match : childMatcher(match)));\n}\n","import {childMatcher} from \"../matcher.js\";\n\nvar filter = Array.prototype.filter;\n\nfunction children() {\n return Array.from(this.children);\n}\n\nfunction childrenFilter(match) {\n return function() {\n return filter.call(this.children, match);\n };\n}\n\nexport default function(match) {\n return this.selectAll(match == null ? children\n : childrenFilter(typeof match === \"function\" ? match : childMatcher(match)));\n}\n","import {Selection} from \"./index.js\";\nimport matcher from \"../matcher.js\";\n\nexport default function(match) {\n if (typeof match !== \"function\") match = matcher(match);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = [], node, i = 0; i < n; ++i) {\n if ((node = group[i]) && match.call(node, node.__data__, i, group)) {\n subgroup.push(node);\n }\n }\n }\n\n return new Selection(subgroups, this._parents);\n}\n","export default function(update) {\n return new Array(update.length);\n}\n","import sparse from \"./sparse.js\";\nimport {Selection} from \"./index.js\";\n\nexport default function() {\n return new Selection(this._enter || this._groups.map(sparse), this._parents);\n}\n\nexport function EnterNode(parent, datum) {\n this.ownerDocument = parent.ownerDocument;\n this.namespaceURI = parent.namespaceURI;\n this._next = null;\n this._parent = parent;\n this.__data__ = datum;\n}\n\nEnterNode.prototype = {\n constructor: EnterNode,\n appendChild: function(child) { return this._parent.insertBefore(child, this._next); },\n insertBefore: function(child, next) { return this._parent.insertBefore(child, next); },\n querySelector: function(selector) { return this._parent.querySelector(selector); },\n querySelectorAll: function(selector) { return this._parent.querySelectorAll(selector); }\n};\n","export default function(x) {\n return function() {\n return x;\n };\n}\n","import {Selection} from \"./index.js\";\nimport {EnterNode} from \"./enter.js\";\nimport constant from \"../constant.js\";\n\nfunction bindIndex(parent, group, enter, update, exit, data) {\n var i = 0,\n node,\n groupLength = group.length,\n dataLength = data.length;\n\n // Put any non-null nodes that fit into update.\n // Put any null nodes into enter.\n // Put any remaining data into enter.\n for (; i < dataLength; ++i) {\n if (node = group[i]) {\n node.__data__ = data[i];\n update[i] = node;\n } else {\n enter[i] = new EnterNode(parent, data[i]);\n }\n }\n\n // Put any non-null nodes that don’t fit into exit.\n for (; i < groupLength; ++i) {\n if (node = group[i]) {\n exit[i] = node;\n }\n }\n}\n\nfunction bindKey(parent, group, enter, update, exit, data, key) {\n var i,\n node,\n nodeByKeyValue = new Map,\n groupLength = group.length,\n dataLength = data.length,\n keyValues = new Array(groupLength),\n keyValue;\n\n // Compute the key for each node.\n // If multiple nodes have the same key, the duplicates are added to exit.\n for (i = 0; i < groupLength; ++i) {\n if (node = group[i]) {\n keyValues[i] = keyValue = key.call(node, node.__data__, i, group) + \"\";\n if (nodeByKeyValue.has(keyValue)) {\n exit[i] = node;\n } else {\n nodeByKeyValue.set(keyValue, node);\n }\n }\n }\n\n // Compute the key for each datum.\n // If there a node associated with this key, join and add it to update.\n // If there is not (or the key is a duplicate), add it to enter.\n for (i = 0; i < dataLength; ++i) {\n keyValue = key.call(parent, data[i], i, data) + \"\";\n if (node = nodeByKeyValue.get(keyValue)) {\n update[i] = node;\n node.__data__ = data[i];\n nodeByKeyValue.delete(keyValue);\n } else {\n enter[i] = new EnterNode(parent, data[i]);\n }\n }\n\n // Add any remaining nodes that were not bound to data to exit.\n for (i = 0; i < groupLength; ++i) {\n if ((node = group[i]) && (nodeByKeyValue.get(keyValues[i]) === node)) {\n exit[i] = node;\n }\n }\n}\n\nfunction datum(node) {\n return node.__data__;\n}\n\nexport default function(value, key) {\n if (!arguments.length) return Array.from(this, datum);\n\n var bind = key ? bindKey : bindIndex,\n parents = this._parents,\n groups = this._groups;\n\n if (typeof value !== \"function\") value = constant(value);\n\n for (var m = groups.length, update = new Array(m), enter = new Array(m), exit = new Array(m), j = 0; j < m; ++j) {\n var parent = parents[j],\n group = groups[j],\n groupLength = group.length,\n data = arraylike(value.call(parent, parent && parent.__data__, j, parents)),\n dataLength = data.length,\n enterGroup = enter[j] = new Array(dataLength),\n updateGroup = update[j] = new Array(dataLength),\n exitGroup = exit[j] = new Array(groupLength);\n\n bind(parent, group, enterGroup, updateGroup, exitGroup, data, key);\n\n // Now connect the enter nodes to their following update node, such that\n // appendChild can insert the materialized enter node before this node,\n // rather than at the end of the parent node.\n for (var i0 = 0, i1 = 0, previous, next; i0 < dataLength; ++i0) {\n if (previous = enterGroup[i0]) {\n if (i0 >= i1) i1 = i0 + 1;\n while (!(next = updateGroup[i1]) && ++i1 < dataLength);\n previous._next = next || null;\n }\n }\n }\n\n update = new Selection(update, parents);\n update._enter = enter;\n update._exit = exit;\n return update;\n}\n\n// Given some data, this returns an array-like view of it: an object that\n// exposes a length property and allows numeric indexing. Note that unlike\n// selectAll, this isn’t worried about “live” collections because the resulting\n// array will only be used briefly while data is being bound. (It is possible to\n// cause the data to change while iterating by using a key function, but please\n// don’t; we’d rather avoid a gratuitous copy.)\nfunction arraylike(data) {\n return typeof data === \"object\" && \"length\" in data\n ? data // Array, TypedArray, NodeList, array-like\n : Array.from(data); // Map, Set, iterable, string, or anything else\n}\n","import sparse from \"./sparse.js\";\nimport {Selection} from \"./index.js\";\n\nexport default function() {\n return new Selection(this._exit || this._groups.map(sparse), this._parents);\n}\n","export default function(onenter, onupdate, onexit) {\n var enter = this.enter(), update = this, exit = this.exit();\n if (typeof onenter === \"function\") {\n enter = onenter(enter);\n if (enter) enter = enter.selection();\n } else {\n enter = enter.append(onenter + \"\");\n }\n if (onupdate != null) {\n update = onupdate(update);\n if (update) update = update.selection();\n }\n if (onexit == null) exit.remove(); else onexit(exit);\n return enter && update ? enter.merge(update).order() : update;\n}\n","import {Selection} from \"./index.js\";\n\nexport default function(context) {\n var selection = context.selection ? context.selection() : context;\n\n for (var groups0 = this._groups, groups1 = selection._groups, m0 = groups0.length, m1 = groups1.length, m = Math.min(m0, m1), merges = new Array(m0), j = 0; j < m; ++j) {\n for (var group0 = groups0[j], group1 = groups1[j], n = group0.length, merge = merges[j] = new Array(n), node, i = 0; i < n; ++i) {\n if (node = group0[i] || group1[i]) {\n merge[i] = node;\n }\n }\n }\n\n for (; j < m0; ++j) {\n merges[j] = groups0[j];\n }\n\n return new Selection(merges, this._parents);\n}\n","export default function() {\n\n for (var groups = this._groups, j = -1, m = groups.length; ++j < m;) {\n for (var group = groups[j], i = group.length - 1, next = group[i], node; --i >= 0;) {\n if (node = group[i]) {\n if (next && node.compareDocumentPosition(next) ^ 4) next.parentNode.insertBefore(node, next);\n next = node;\n }\n }\n }\n\n return this;\n}\n","import {Selection} from \"./index.js\";\n\nexport default function(compare) {\n if (!compare) compare = ascending;\n\n function compareNode(a, b) {\n return a && b ? compare(a.__data__, b.__data__) : !a - !b;\n }\n\n for (var groups = this._groups, m = groups.length, sortgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, sortgroup = sortgroups[j] = new Array(n), node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n sortgroup[i] = node;\n }\n }\n sortgroup.sort(compareNode);\n }\n\n return new Selection(sortgroups, this._parents).order();\n}\n\nfunction ascending(a, b) {\n return a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;\n}\n","export default function() {\n var callback = arguments[0];\n arguments[0] = this;\n callback.apply(null, arguments);\n return this;\n}\n","export default function() {\n return Array.from(this);\n}\n","export default function() {\n\n for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {\n for (var group = groups[j], i = 0, n = group.length; i < n; ++i) {\n var node = group[i];\n if (node) return node;\n }\n }\n\n return null;\n}\n","export default function() {\n let size = 0;\n for (const node of this) ++size; // eslint-disable-line no-unused-vars\n return size;\n}\n","export default function() {\n return !this.node();\n}\n","export default function(callback) {\n\n for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {\n for (var group = groups[j], i = 0, n = group.length, node; i < n; ++i) {\n if (node = group[i]) callback.call(node, node.__data__, i, group);\n }\n }\n\n return this;\n}\n","export var xhtml = \"http://www.w3.org/1999/xhtml\";\n\nexport default {\n svg: \"http://www.w3.org/2000/svg\",\n xhtml: xhtml,\n xlink: \"http://www.w3.org/1999/xlink\",\n xml: \"http://www.w3.org/XML/1998/namespace\",\n xmlns: \"http://www.w3.org/2000/xmlns/\"\n};\n","import namespaces from \"./namespaces.js\";\n\nexport default function(name) {\n var prefix = name += \"\", i = prefix.indexOf(\":\");\n if (i >= 0 && (prefix = name.slice(0, i)) !== \"xmlns\") name = name.slice(i + 1);\n return namespaces.hasOwnProperty(prefix) ? {space: namespaces[prefix], local: name} : name; // eslint-disable-line no-prototype-builtins\n}\n","import namespace from \"../namespace.js\";\n\nfunction attrRemove(name) {\n return function() {\n this.removeAttribute(name);\n };\n}\n\nfunction attrRemoveNS(fullname) {\n return function() {\n this.removeAttributeNS(fullname.space, fullname.local);\n };\n}\n\nfunction attrConstant(name, value) {\n return function() {\n this.setAttribute(name, value);\n };\n}\n\nfunction attrConstantNS(fullname, value) {\n return function() {\n this.setAttributeNS(fullname.space, fullname.local, value);\n };\n}\n\nfunction attrFunction(name, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) this.removeAttribute(name);\n else this.setAttribute(name, v);\n };\n}\n\nfunction attrFunctionNS(fullname, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) this.removeAttributeNS(fullname.space, fullname.local);\n else this.setAttributeNS(fullname.space, fullname.local, v);\n };\n}\n\nexport default function(name, value) {\n var fullname = namespace(name);\n\n if (arguments.length < 2) {\n var node = this.node();\n return fullname.local\n ? node.getAttributeNS(fullname.space, fullname.local)\n : node.getAttribute(fullname);\n }\n\n return this.each((value == null\n ? (fullname.local ? attrRemoveNS : attrRemove) : (typeof value === \"function\"\n ? (fullname.local ? attrFunctionNS : attrFunction)\n : (fullname.local ? attrConstantNS : attrConstant)))(fullname, value));\n}\n","export default function(node) {\n return (node.ownerDocument && node.ownerDocument.defaultView) // node is a Node\n || (node.document && node) // node is a Window\n || node.defaultView; // node is a Document\n}\n","import defaultView from \"../window.js\";\n\nfunction styleRemove(name) {\n return function() {\n this.style.removeProperty(name);\n };\n}\n\nfunction styleConstant(name, value, priority) {\n return function() {\n this.style.setProperty(name, value, priority);\n };\n}\n\nfunction styleFunction(name, value, priority) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) this.style.removeProperty(name);\n else this.style.setProperty(name, v, priority);\n };\n}\n\nexport default function(name, value, priority) {\n return arguments.length > 1\n ? this.each((value == null\n ? styleRemove : typeof value === \"function\"\n ? styleFunction\n : styleConstant)(name, value, priority == null ? \"\" : priority))\n : styleValue(this.node(), name);\n}\n\nexport function styleValue(node, name) {\n return node.style.getPropertyValue(name)\n || defaultView(node).getComputedStyle(node, null).getPropertyValue(name);\n}\n","function propertyRemove(name) {\n return function() {\n delete this[name];\n };\n}\n\nfunction propertyConstant(name, value) {\n return function() {\n this[name] = value;\n };\n}\n\nfunction propertyFunction(name, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (v == null) delete this[name];\n else this[name] = v;\n };\n}\n\nexport default function(name, value) {\n return arguments.length > 1\n ? this.each((value == null\n ? propertyRemove : typeof value === \"function\"\n ? propertyFunction\n : propertyConstant)(name, value))\n : this.node()[name];\n}\n","function classArray(string) {\n return string.trim().split(/^|\\s+/);\n}\n\nfunction classList(node) {\n return node.classList || new ClassList(node);\n}\n\nfunction ClassList(node) {\n this._node = node;\n this._names = classArray(node.getAttribute(\"class\") || \"\");\n}\n\nClassList.prototype = {\n add: function(name) {\n var i = this._names.indexOf(name);\n if (i < 0) {\n this._names.push(name);\n this._node.setAttribute(\"class\", this._names.join(\" \"));\n }\n },\n remove: function(name) {\n var i = this._names.indexOf(name);\n if (i >= 0) {\n this._names.splice(i, 1);\n this._node.setAttribute(\"class\", this._names.join(\" \"));\n }\n },\n contains: function(name) {\n return this._names.indexOf(name) >= 0;\n }\n};\n\nfunction classedAdd(node, names) {\n var list = classList(node), i = -1, n = names.length;\n while (++i < n) list.add(names[i]);\n}\n\nfunction classedRemove(node, names) {\n var list = classList(node), i = -1, n = names.length;\n while (++i < n) list.remove(names[i]);\n}\n\nfunction classedTrue(names) {\n return function() {\n classedAdd(this, names);\n };\n}\n\nfunction classedFalse(names) {\n return function() {\n classedRemove(this, names);\n };\n}\n\nfunction classedFunction(names, value) {\n return function() {\n (value.apply(this, arguments) ? classedAdd : classedRemove)(this, names);\n };\n}\n\nexport default function(name, value) {\n var names = classArray(name + \"\");\n\n if (arguments.length < 2) {\n var list = classList(this.node()), i = -1, n = names.length;\n while (++i < n) if (!list.contains(names[i])) return false;\n return true;\n }\n\n return this.each((typeof value === \"function\"\n ? classedFunction : value\n ? classedTrue\n : classedFalse)(names, value));\n}\n","function textRemove() {\n this.textContent = \"\";\n}\n\nfunction textConstant(value) {\n return function() {\n this.textContent = value;\n };\n}\n\nfunction textFunction(value) {\n return function() {\n var v = value.apply(this, arguments);\n this.textContent = v == null ? \"\" : v;\n };\n}\n\nexport default function(value) {\n return arguments.length\n ? this.each(value == null\n ? textRemove : (typeof value === \"function\"\n ? textFunction\n : textConstant)(value))\n : this.node().textContent;\n}\n","function htmlRemove() {\n this.innerHTML = \"\";\n}\n\nfunction htmlConstant(value) {\n return function() {\n this.innerHTML = value;\n };\n}\n\nfunction htmlFunction(value) {\n return function() {\n var v = value.apply(this, arguments);\n this.innerHTML = v == null ? \"\" : v;\n };\n}\n\nexport default function(value) {\n return arguments.length\n ? this.each(value == null\n ? htmlRemove : (typeof value === \"function\"\n ? htmlFunction\n : htmlConstant)(value))\n : this.node().innerHTML;\n}\n","function raise() {\n if (this.nextSibling) this.parentNode.appendChild(this);\n}\n\nexport default function() {\n return this.each(raise);\n}\n","function lower() {\n if (this.previousSibling) this.parentNode.insertBefore(this, this.parentNode.firstChild);\n}\n\nexport default function() {\n return this.each(lower);\n}\n","import namespace from \"./namespace.js\";\nimport {xhtml} from \"./namespaces.js\";\n\nfunction creatorInherit(name) {\n return function() {\n var document = this.ownerDocument,\n uri = this.namespaceURI;\n return uri === xhtml && document.documentElement.namespaceURI === xhtml\n ? document.createElement(name)\n : document.createElementNS(uri, name);\n };\n}\n\nfunction creatorFixed(fullname) {\n return function() {\n return this.ownerDocument.createElementNS(fullname.space, fullname.local);\n };\n}\n\nexport default function(name) {\n var fullname = namespace(name);\n return (fullname.local\n ? creatorFixed\n : creatorInherit)(fullname);\n}\n","import creator from \"../creator.js\";\n\nexport default function(name) {\n var create = typeof name === \"function\" ? name : creator(name);\n return this.select(function() {\n return this.appendChild(create.apply(this, arguments));\n });\n}\n","import creator from \"../creator.js\";\nimport selector from \"../selector.js\";\n\nfunction constantNull() {\n return null;\n}\n\nexport default function(name, before) {\n var create = typeof name === \"function\" ? name : creator(name),\n select = before == null ? constantNull : typeof before === \"function\" ? before : selector(before);\n return this.select(function() {\n return this.insertBefore(create.apply(this, arguments), select.apply(this, arguments) || null);\n });\n}\n","function remove() {\n var parent = this.parentNode;\n if (parent) parent.removeChild(this);\n}\n\nexport default function() {\n return this.each(remove);\n}\n","function selection_cloneShallow() {\n var clone = this.cloneNode(false), parent = this.parentNode;\n return parent ? parent.insertBefore(clone, this.nextSibling) : clone;\n}\n\nfunction selection_cloneDeep() {\n var clone = this.cloneNode(true), parent = this.parentNode;\n return parent ? parent.insertBefore(clone, this.nextSibling) : clone;\n}\n\nexport default function(deep) {\n return this.select(deep ? selection_cloneDeep : selection_cloneShallow);\n}\n","export default function(value) {\n return arguments.length\n ? this.property(\"__data__\", value)\n : this.node().__data__;\n}\n","function contextListener(listener) {\n return function(event) {\n listener.call(this, event, this.__data__);\n };\n}\n\nfunction parseTypenames(typenames) {\n return typenames.trim().split(/^|\\s+/).map(function(t) {\n var name = \"\", i = t.indexOf(\".\");\n if (i >= 0) name = t.slice(i + 1), t = t.slice(0, i);\n return {type: t, name: name};\n });\n}\n\nfunction onRemove(typename) {\n return function() {\n var on = this.__on;\n if (!on) return;\n for (var j = 0, i = -1, m = on.length, o; j < m; ++j) {\n if (o = on[j], (!typename.type || o.type === typename.type) && o.name === typename.name) {\n this.removeEventListener(o.type, o.listener, o.options);\n } else {\n on[++i] = o;\n }\n }\n if (++i) on.length = i;\n else delete this.__on;\n };\n}\n\nfunction onAdd(typename, value, options) {\n return function() {\n var on = this.__on, o, listener = contextListener(value);\n if (on) for (var j = 0, m = on.length; j < m; ++j) {\n if ((o = on[j]).type === typename.type && o.name === typename.name) {\n this.removeEventListener(o.type, o.listener, o.options);\n this.addEventListener(o.type, o.listener = listener, o.options = options);\n o.value = value;\n return;\n }\n }\n this.addEventListener(typename.type, listener, options);\n o = {type: typename.type, name: typename.name, value: value, listener: listener, options: options};\n if (!on) this.__on = [o];\n else on.push(o);\n };\n}\n\nexport default function(typename, value, options) {\n var typenames = parseTypenames(typename + \"\"), i, n = typenames.length, t;\n\n if (arguments.length < 2) {\n var on = this.node().__on;\n if (on) for (var j = 0, m = on.length, o; j < m; ++j) {\n for (i = 0, o = on[j]; i < n; ++i) {\n if ((t = typenames[i]).type === o.type && t.name === o.name) {\n return o.value;\n }\n }\n }\n return;\n }\n\n on = value ? onAdd : onRemove;\n for (i = 0; i < n; ++i) this.each(on(typenames[i], value, options));\n return this;\n}\n","import defaultView from \"../window.js\";\n\nfunction dispatchEvent(node, type, params) {\n var window = defaultView(node),\n event = window.CustomEvent;\n\n if (typeof event === \"function\") {\n event = new event(type, params);\n } else {\n event = window.document.createEvent(\"Event\");\n if (params) event.initEvent(type, params.bubbles, params.cancelable), event.detail = params.detail;\n else event.initEvent(type, false, false);\n }\n\n node.dispatchEvent(event);\n}\n\nfunction dispatchConstant(type, params) {\n return function() {\n return dispatchEvent(this, type, params);\n };\n}\n\nfunction dispatchFunction(type, params) {\n return function() {\n return dispatchEvent(this, type, params.apply(this, arguments));\n };\n}\n\nexport default function(type, params) {\n return this.each((typeof params === \"function\"\n ? dispatchFunction\n : dispatchConstant)(type, params));\n}\n","export default function*() {\n for (var groups = this._groups, j = 0, m = groups.length; j < m; ++j) {\n for (var group = groups[j], i = 0, n = group.length, node; i < n; ++i) {\n if (node = group[i]) yield node;\n }\n }\n}\n","import selection_select from \"./select.js\";\nimport selection_selectAll from \"./selectAll.js\";\nimport selection_selectChild from \"./selectChild.js\";\nimport selection_selectChildren from \"./selectChildren.js\";\nimport selection_filter from \"./filter.js\";\nimport selection_data from \"./data.js\";\nimport selection_enter from \"./enter.js\";\nimport selection_exit from \"./exit.js\";\nimport selection_join from \"./join.js\";\nimport selection_merge from \"./merge.js\";\nimport selection_order from \"./order.js\";\nimport selection_sort from \"./sort.js\";\nimport selection_call from \"./call.js\";\nimport selection_nodes from \"./nodes.js\";\nimport selection_node from \"./node.js\";\nimport selection_size from \"./size.js\";\nimport selection_empty from \"./empty.js\";\nimport selection_each from \"./each.js\";\nimport selection_attr from \"./attr.js\";\nimport selection_style from \"./style.js\";\nimport selection_property from \"./property.js\";\nimport selection_classed from \"./classed.js\";\nimport selection_text from \"./text.js\";\nimport selection_html from \"./html.js\";\nimport selection_raise from \"./raise.js\";\nimport selection_lower from \"./lower.js\";\nimport selection_append from \"./append.js\";\nimport selection_insert from \"./insert.js\";\nimport selection_remove from \"./remove.js\";\nimport selection_clone from \"./clone.js\";\nimport selection_datum from \"./datum.js\";\nimport selection_on from \"./on.js\";\nimport selection_dispatch from \"./dispatch.js\";\nimport selection_iterator from \"./iterator.js\";\n\nexport var root = [null];\n\nexport function Selection(groups, parents) {\n this._groups = groups;\n this._parents = parents;\n}\n\nfunction selection() {\n return new Selection([[document.documentElement]], root);\n}\n\nfunction selection_selection() {\n return this;\n}\n\nSelection.prototype = selection.prototype = {\n constructor: Selection,\n select: selection_select,\n selectAll: selection_selectAll,\n selectChild: selection_selectChild,\n selectChildren: selection_selectChildren,\n filter: selection_filter,\n data: selection_data,\n enter: selection_enter,\n exit: selection_exit,\n join: selection_join,\n merge: selection_merge,\n selection: selection_selection,\n order: selection_order,\n sort: selection_sort,\n call: selection_call,\n nodes: selection_nodes,\n node: selection_node,\n size: selection_size,\n empty: selection_empty,\n each: selection_each,\n attr: selection_attr,\n style: selection_style,\n property: selection_property,\n classed: selection_classed,\n text: selection_text,\n html: selection_html,\n raise: selection_raise,\n lower: selection_lower,\n append: selection_append,\n insert: selection_insert,\n remove: selection_remove,\n clone: selection_clone,\n datum: selection_datum,\n on: selection_on,\n dispatch: selection_dispatch,\n [Symbol.iterator]: selection_iterator\n};\n\nexport default selection;\n","var noop = {value: () => {}};\n\nfunction dispatch() {\n for (var i = 0, n = arguments.length, _ = {}, t; i < n; ++i) {\n if (!(t = arguments[i] + \"\") || (t in _) || /[\\s.]/.test(t)) throw new Error(\"illegal type: \" + t);\n _[t] = [];\n }\n return new Dispatch(_);\n}\n\nfunction Dispatch(_) {\n this._ = _;\n}\n\nfunction parseTypenames(typenames, types) {\n return typenames.trim().split(/^|\\s+/).map(function(t) {\n var name = \"\", i = t.indexOf(\".\");\n if (i >= 0) name = t.slice(i + 1), t = t.slice(0, i);\n if (t && !types.hasOwnProperty(t)) throw new Error(\"unknown type: \" + t);\n return {type: t, name: name};\n });\n}\n\nDispatch.prototype = dispatch.prototype = {\n constructor: Dispatch,\n on: function(typename, callback) {\n var _ = this._,\n T = parseTypenames(typename + \"\", _),\n t,\n i = -1,\n n = T.length;\n\n // If no callback was specified, return the callback of the given type and name.\n if (arguments.length < 2) {\n while (++i < n) if ((t = (typename = T[i]).type) && (t = get(_[t], typename.name))) return t;\n return;\n }\n\n // If a type was specified, set the callback for the given type and name.\n // Otherwise, if a null callback was specified, remove callbacks of the given name.\n if (callback != null && typeof callback !== \"function\") throw new Error(\"invalid callback: \" + callback);\n while (++i < n) {\n if (t = (typename = T[i]).type) _[t] = set(_[t], typename.name, callback);\n else if (callback == null) for (t in _) _[t] = set(_[t], typename.name, null);\n }\n\n return this;\n },\n copy: function() {\n var copy = {}, _ = this._;\n for (var t in _) copy[t] = _[t].slice();\n return new Dispatch(copy);\n },\n call: function(type, that) {\n if ((n = arguments.length - 2) > 0) for (var args = new Array(n), i = 0, n, t; i < n; ++i) args[i] = arguments[i + 2];\n if (!this._.hasOwnProperty(type)) throw new Error(\"unknown type: \" + type);\n for (t = this._[type], i = 0, n = t.length; i < n; ++i) t[i].value.apply(that, args);\n },\n apply: function(type, that, args) {\n if (!this._.hasOwnProperty(type)) throw new Error(\"unknown type: \" + type);\n for (var t = this._[type], i = 0, n = t.length; i < n; ++i) t[i].value.apply(that, args);\n }\n};\n\nfunction get(type, name) {\n for (var i = 0, n = type.length, c; i < n; ++i) {\n if ((c = type[i]).name === name) {\n return c.value;\n }\n }\n}\n\nfunction set(type, name, callback) {\n for (var i = 0, n = type.length; i < n; ++i) {\n if (type[i].name === name) {\n type[i] = noop, type = type.slice(0, i).concat(type.slice(i + 1));\n break;\n }\n }\n if (callback != null) type.push({name: name, value: callback});\n return type;\n}\n\nexport default dispatch;\n","var frame = 0, // is an animation frame pending?\n timeout = 0, // is a timeout pending?\n interval = 0, // are any timers active?\n pokeDelay = 1000, // how frequently we check for clock skew\n taskHead,\n taskTail,\n clockLast = 0,\n clockNow = 0,\n clockSkew = 0,\n clock = typeof performance === \"object\" && performance.now ? performance : Date,\n setFrame = typeof window === \"object\" && window.requestAnimationFrame ? window.requestAnimationFrame.bind(window) : function(f) { setTimeout(f, 17); };\n\nexport function now() {\n return clockNow || (setFrame(clearNow), clockNow = clock.now() + clockSkew);\n}\n\nfunction clearNow() {\n clockNow = 0;\n}\n\nexport function Timer() {\n this._call =\n this._time =\n this._next = null;\n}\n\nTimer.prototype = timer.prototype = {\n constructor: Timer,\n restart: function(callback, delay, time) {\n if (typeof callback !== \"function\") throw new TypeError(\"callback is not a function\");\n time = (time == null ? now() : +time) + (delay == null ? 0 : +delay);\n if (!this._next && taskTail !== this) {\n if (taskTail) taskTail._next = this;\n else taskHead = this;\n taskTail = this;\n }\n this._call = callback;\n this._time = time;\n sleep();\n },\n stop: function() {\n if (this._call) {\n this._call = null;\n this._time = Infinity;\n sleep();\n }\n }\n};\n\nexport function timer(callback, delay, time) {\n var t = new Timer;\n t.restart(callback, delay, time);\n return t;\n}\n\nexport function timerFlush() {\n now(); // Get the current time, if not already set.\n ++frame; // Pretend we’ve set an alarm, if we haven’t already.\n var t = taskHead, e;\n while (t) {\n if ((e = clockNow - t._time) >= 0) t._call.call(undefined, e);\n t = t._next;\n }\n --frame;\n}\n\nfunction wake() {\n clockNow = (clockLast = clock.now()) + clockSkew;\n frame = timeout = 0;\n try {\n timerFlush();\n } finally {\n frame = 0;\n nap();\n clockNow = 0;\n }\n}\n\nfunction poke() {\n var now = clock.now(), delay = now - clockLast;\n if (delay > pokeDelay) clockSkew -= delay, clockLast = now;\n}\n\nfunction nap() {\n var t0, t1 = taskHead, t2, time = Infinity;\n while (t1) {\n if (t1._call) {\n if (time > t1._time) time = t1._time;\n t0 = t1, t1 = t1._next;\n } else {\n t2 = t1._next, t1._next = null;\n t1 = t0 ? t0._next = t2 : taskHead = t2;\n }\n }\n taskTail = t0;\n sleep(time);\n}\n\nfunction sleep(time) {\n if (frame) return; // Soonest alarm already set, or will be.\n if (timeout) timeout = clearTimeout(timeout);\n var delay = time - clockNow; // Strictly less than if we recomputed clockNow.\n if (delay > 24) {\n if (time < Infinity) timeout = setTimeout(wake, time - clock.now() - clockSkew);\n if (interval) interval = clearInterval(interval);\n } else {\n if (!interval) clockLast = clock.now(), interval = setInterval(poke, pokeDelay);\n frame = 1, setFrame(wake);\n }\n}\n","import {Timer} from \"./timer.js\";\n\nexport default function(callback, delay, time) {\n var t = new Timer;\n delay = delay == null ? 0 : +delay;\n t.restart(elapsed => {\n t.stop();\n callback(elapsed + delay);\n }, delay, time);\n return t;\n}\n","import {dispatch} from \"d3-dispatch\";\nimport {timer, timeout} from \"d3-timer\";\n\nvar emptyOn = dispatch(\"start\", \"end\", \"cancel\", \"interrupt\");\nvar emptyTween = [];\n\nexport var CREATED = 0;\nexport var SCHEDULED = 1;\nexport var STARTING = 2;\nexport var STARTED = 3;\nexport var RUNNING = 4;\nexport var ENDING = 5;\nexport var ENDED = 6;\n\nexport default function(node, name, id, index, group, timing) {\n var schedules = node.__transition;\n if (!schedules) node.__transition = {};\n else if (id in schedules) return;\n create(node, id, {\n name: name,\n index: index, // For context during callback.\n group: group, // For context during callback.\n on: emptyOn,\n tween: emptyTween,\n time: timing.time,\n delay: timing.delay,\n duration: timing.duration,\n ease: timing.ease,\n timer: null,\n state: CREATED\n });\n}\n\nexport function init(node, id) {\n var schedule = get(node, id);\n if (schedule.state > CREATED) throw new Error(\"too late; already scheduled\");\n return schedule;\n}\n\nexport function set(node, id) {\n var schedule = get(node, id);\n if (schedule.state > STARTED) throw new Error(\"too late; already running\");\n return schedule;\n}\n\nexport function get(node, id) {\n var schedule = node.__transition;\n if (!schedule || !(schedule = schedule[id])) throw new Error(\"transition not found\");\n return schedule;\n}\n\nfunction create(node, id, self) {\n var schedules = node.__transition,\n tween;\n\n // Initialize the self timer when the transition is created.\n // Note the actual delay is not known until the first callback!\n schedules[id] = self;\n self.timer = timer(schedule, 0, self.time);\n\n function schedule(elapsed) {\n self.state = SCHEDULED;\n self.timer.restart(start, self.delay, self.time);\n\n // If the elapsed delay is less than our first sleep, start immediately.\n if (self.delay <= elapsed) start(elapsed - self.delay);\n }\n\n function start(elapsed) {\n var i, j, n, o;\n\n // If the state is not SCHEDULED, then we previously errored on start.\n if (self.state !== SCHEDULED) return stop();\n\n for (i in schedules) {\n o = schedules[i];\n if (o.name !== self.name) continue;\n\n // While this element already has a starting transition during this frame,\n // defer starting an interrupting transition until that transition has a\n // chance to tick (and possibly end); see d3/d3-transition#54!\n if (o.state === STARTED) return timeout(start);\n\n // Interrupt the active transition, if any.\n if (o.state === RUNNING) {\n o.state = ENDED;\n o.timer.stop();\n o.on.call(\"interrupt\", node, node.__data__, o.index, o.group);\n delete schedules[i];\n }\n\n // Cancel any pre-empted transitions.\n else if (+i < id) {\n o.state = ENDED;\n o.timer.stop();\n o.on.call(\"cancel\", node, node.__data__, o.index, o.group);\n delete schedules[i];\n }\n }\n\n // Defer the first tick to end of the current frame; see d3/d3#1576.\n // Note the transition may be canceled after start and before the first tick!\n // Note this must be scheduled before the start event; see d3/d3-transition#16!\n // Assuming this is successful, subsequent callbacks go straight to tick.\n timeout(function() {\n if (self.state === STARTED) {\n self.state = RUNNING;\n self.timer.restart(tick, self.delay, self.time);\n tick(elapsed);\n }\n });\n\n // Dispatch the start event.\n // Note this must be done before the tween are initialized.\n self.state = STARTING;\n self.on.call(\"start\", node, node.__data__, self.index, self.group);\n if (self.state !== STARTING) return; // interrupted\n self.state = STARTED;\n\n // Initialize the tween, deleting null tween.\n tween = new Array(n = self.tween.length);\n for (i = 0, j = -1; i < n; ++i) {\n if (o = self.tween[i].value.call(node, node.__data__, self.index, self.group)) {\n tween[++j] = o;\n }\n }\n tween.length = j + 1;\n }\n\n function tick(elapsed) {\n var t = elapsed < self.duration ? self.ease.call(null, elapsed / self.duration) : (self.timer.restart(stop), self.state = ENDING, 1),\n i = -1,\n n = tween.length;\n\n while (++i < n) {\n tween[i].call(node, t);\n }\n\n // Dispatch the end event.\n if (self.state === ENDING) {\n self.on.call(\"end\", node, node.__data__, self.index, self.group);\n stop();\n }\n }\n\n function stop() {\n self.state = ENDED;\n self.timer.stop();\n delete schedules[id];\n for (var i in schedules) return; // eslint-disable-line no-unused-vars\n delete node.__transition;\n }\n}\n","import {STARTING, ENDING, ENDED} from \"./transition/schedule.js\";\n\nexport default function(node, name) {\n var schedules = node.__transition,\n schedule,\n active,\n empty = true,\n i;\n\n if (!schedules) return;\n\n name = name == null ? null : name + \"\";\n\n for (i in schedules) {\n if ((schedule = schedules[i]).name !== name) { empty = false; continue; }\n active = schedule.state > STARTING && schedule.state < ENDING;\n schedule.state = ENDED;\n schedule.timer.stop();\n schedule.on.call(active ? \"interrupt\" : \"cancel\", node, node.__data__, schedule.index, schedule.group);\n delete schedules[i];\n }\n\n if (empty) delete node.__transition;\n}\n","import interrupt from \"../interrupt.js\";\n\nexport default function(name) {\n return this.each(function() {\n interrupt(this, name);\n });\n}\n","export default function(a, b) {\n return a = +a, b = +b, function(t) {\n return a * (1 - t) + b * t;\n };\n}\n","var degrees = 180 / Math.PI;\n\nexport var identity = {\n translateX: 0,\n translateY: 0,\n rotate: 0,\n skewX: 0,\n scaleX: 1,\n scaleY: 1\n};\n\nexport default function(a, b, c, d, e, f) {\n var scaleX, scaleY, skewX;\n if (scaleX = Math.sqrt(a * a + b * b)) a /= scaleX, b /= scaleX;\n if (skewX = a * c + b * d) c -= a * skewX, d -= b * skewX;\n if (scaleY = Math.sqrt(c * c + d * d)) c /= scaleY, d /= scaleY, skewX /= scaleY;\n if (a * d < b * c) a = -a, b = -b, skewX = -skewX, scaleX = -scaleX;\n return {\n translateX: e,\n translateY: f,\n rotate: Math.atan2(b, a) * degrees,\n skewX: Math.atan(skewX) * degrees,\n scaleX: scaleX,\n scaleY: scaleY\n };\n}\n","import decompose, {identity} from \"./decompose.js\";\n\nvar svgNode;\n\n/* eslint-disable no-undef */\nexport function parseCss(value) {\n const m = new (typeof DOMMatrix === \"function\" ? DOMMatrix : WebKitCSSMatrix)(value + \"\");\n return m.isIdentity ? identity : decompose(m.a, m.b, m.c, m.d, m.e, m.f);\n}\n\nexport function parseSvg(value) {\n if (value == null) return identity;\n if (!svgNode) svgNode = document.createElementNS(\"http://www.w3.org/2000/svg\", \"g\");\n svgNode.setAttribute(\"transform\", value);\n if (!(value = svgNode.transform.baseVal.consolidate())) return identity;\n value = value.matrix;\n return decompose(value.a, value.b, value.c, value.d, value.e, value.f);\n}\n","import number from \"../number.js\";\nimport {parseCss, parseSvg} from \"./parse.js\";\n\nfunction interpolateTransform(parse, pxComma, pxParen, degParen) {\n\n function pop(s) {\n return s.length ? s.pop() + \" \" : \"\";\n }\n\n function translate(xa, ya, xb, yb, s, q) {\n if (xa !== xb || ya !== yb) {\n var i = s.push(\"translate(\", null, pxComma, null, pxParen);\n q.push({i: i - 4, x: number(xa, xb)}, {i: i - 2, x: number(ya, yb)});\n } else if (xb || yb) {\n s.push(\"translate(\" + xb + pxComma + yb + pxParen);\n }\n }\n\n function rotate(a, b, s, q) {\n if (a !== b) {\n if (a - b > 180) b += 360; else if (b - a > 180) a += 360; // shortest path\n q.push({i: s.push(pop(s) + \"rotate(\", null, degParen) - 2, x: number(a, b)});\n } else if (b) {\n s.push(pop(s) + \"rotate(\" + b + degParen);\n }\n }\n\n function skewX(a, b, s, q) {\n if (a !== b) {\n q.push({i: s.push(pop(s) + \"skewX(\", null, degParen) - 2, x: number(a, b)});\n } else if (b) {\n s.push(pop(s) + \"skewX(\" + b + degParen);\n }\n }\n\n function scale(xa, ya, xb, yb, s, q) {\n if (xa !== xb || ya !== yb) {\n var i = s.push(pop(s) + \"scale(\", null, \",\", null, \")\");\n q.push({i: i - 4, x: number(xa, xb)}, {i: i - 2, x: number(ya, yb)});\n } else if (xb !== 1 || yb !== 1) {\n s.push(pop(s) + \"scale(\" + xb + \",\" + yb + \")\");\n }\n }\n\n return function(a, b) {\n var s = [], // string constants and placeholders\n q = []; // number interpolators\n a = parse(a), b = parse(b);\n translate(a.translateX, a.translateY, b.translateX, b.translateY, s, q);\n rotate(a.rotate, b.rotate, s, q);\n skewX(a.skewX, b.skewX, s, q);\n scale(a.scaleX, a.scaleY, b.scaleX, b.scaleY, s, q);\n a = b = null; // gc\n return function(t) {\n var i = -1, n = q.length, o;\n while (++i < n) s[(o = q[i]).i] = o.x(t);\n return s.join(\"\");\n };\n };\n}\n\nexport var interpolateTransformCss = interpolateTransform(parseCss, \"px, \", \"px)\", \"deg)\");\nexport var interpolateTransformSvg = interpolateTransform(parseSvg, \", \", \")\", \")\");\n","import {get, set} from \"./schedule.js\";\n\nfunction tweenRemove(id, name) {\n var tween0, tween1;\n return function() {\n var schedule = set(this, id),\n tween = schedule.tween;\n\n // If this node shared tween with the previous node,\n // just assign the updated shared tween and we’re done!\n // Otherwise, copy-on-write.\n if (tween !== tween0) {\n tween1 = tween0 = tween;\n for (var i = 0, n = tween1.length; i < n; ++i) {\n if (tween1[i].name === name) {\n tween1 = tween1.slice();\n tween1.splice(i, 1);\n break;\n }\n }\n }\n\n schedule.tween = tween1;\n };\n}\n\nfunction tweenFunction(id, name, value) {\n var tween0, tween1;\n if (typeof value !== \"function\") throw new Error;\n return function() {\n var schedule = set(this, id),\n tween = schedule.tween;\n\n // If this node shared tween with the previous node,\n // just assign the updated shared tween and we’re done!\n // Otherwise, copy-on-write.\n if (tween !== tween0) {\n tween1 = (tween0 = tween).slice();\n for (var t = {name: name, value: value}, i = 0, n = tween1.length; i < n; ++i) {\n if (tween1[i].name === name) {\n tween1[i] = t;\n break;\n }\n }\n if (i === n) tween1.push(t);\n }\n\n schedule.tween = tween1;\n };\n}\n\nexport default function(name, value) {\n var id = this._id;\n\n name += \"\";\n\n if (arguments.length < 2) {\n var tween = get(this.node(), id).tween;\n for (var i = 0, n = tween.length, t; i < n; ++i) {\n if ((t = tween[i]).name === name) {\n return t.value;\n }\n }\n return null;\n }\n\n return this.each((value == null ? tweenRemove : tweenFunction)(id, name, value));\n}\n\nexport function tweenValue(transition, name, value) {\n var id = transition._id;\n\n transition.each(function() {\n var schedule = set(this, id);\n (schedule.value || (schedule.value = {}))[name] = value.apply(this, arguments);\n });\n\n return function(node) {\n return get(node, id).value[name];\n };\n}\n","export default function(constructor, factory, prototype) {\n constructor.prototype = factory.prototype = prototype;\n prototype.constructor = constructor;\n}\n\nexport function extend(parent, definition) {\n var prototype = Object.create(parent.prototype);\n for (var key in definition) prototype[key] = definition[key];\n return prototype;\n}\n","import define, {extend} from \"./define.js\";\n\nexport function Color() {}\n\nexport var darker = 0.7;\nexport var brighter = 1 / darker;\n\nvar reI = \"\\\\s*([+-]?\\\\d+)\\\\s*\",\n reN = \"\\\\s*([+-]?(?:\\\\d*\\\\.)?\\\\d+(?:[eE][+-]?\\\\d+)?)\\\\s*\",\n reP = \"\\\\s*([+-]?(?:\\\\d*\\\\.)?\\\\d+(?:[eE][+-]?\\\\d+)?)%\\\\s*\",\n reHex = /^#([0-9a-f]{3,8})$/,\n reRgbInteger = new RegExp(`^rgb\\\\(${reI},${reI},${reI}\\\\)$`),\n reRgbPercent = new RegExp(`^rgb\\\\(${reP},${reP},${reP}\\\\)$`),\n reRgbaInteger = new RegExp(`^rgba\\\\(${reI},${reI},${reI},${reN}\\\\)$`),\n reRgbaPercent = new RegExp(`^rgba\\\\(${reP},${reP},${reP},${reN}\\\\)$`),\n reHslPercent = new RegExp(`^hsl\\\\(${reN},${reP},${reP}\\\\)$`),\n reHslaPercent = new RegExp(`^hsla\\\\(${reN},${reP},${reP},${reN}\\\\)$`);\n\nvar named = {\n aliceblue: 0xf0f8ff,\n antiquewhite: 0xfaebd7,\n aqua: 0x00ffff,\n aquamarine: 0x7fffd4,\n azure: 0xf0ffff,\n beige: 0xf5f5dc,\n bisque: 0xffe4c4,\n black: 0x000000,\n blanchedalmond: 0xffebcd,\n blue: 0x0000ff,\n blueviolet: 0x8a2be2,\n brown: 0xa52a2a,\n burlywood: 0xdeb887,\n cadetblue: 0x5f9ea0,\n chartreuse: 0x7fff00,\n chocolate: 0xd2691e,\n coral: 0xff7f50,\n cornflowerblue: 0x6495ed,\n cornsilk: 0xfff8dc,\n crimson: 0xdc143c,\n cyan: 0x00ffff,\n darkblue: 0x00008b,\n darkcyan: 0x008b8b,\n darkgoldenrod: 0xb8860b,\n darkgray: 0xa9a9a9,\n darkgreen: 0x006400,\n darkgrey: 0xa9a9a9,\n darkkhaki: 0xbdb76b,\n darkmagenta: 0x8b008b,\n darkolivegreen: 0x556b2f,\n darkorange: 0xff8c00,\n darkorchid: 0x9932cc,\n darkred: 0x8b0000,\n darksalmon: 0xe9967a,\n darkseagreen: 0x8fbc8f,\n darkslateblue: 0x483d8b,\n darkslategray: 0x2f4f4f,\n darkslategrey: 0x2f4f4f,\n darkturquoise: 0x00ced1,\n darkviolet: 0x9400d3,\n deeppink: 0xff1493,\n deepskyblue: 0x00bfff,\n dimgray: 0x696969,\n dimgrey: 0x696969,\n dodgerblue: 0x1e90ff,\n firebrick: 0xb22222,\n floralwhite: 0xfffaf0,\n forestgreen: 0x228b22,\n fuchsia: 0xff00ff,\n gainsboro: 0xdcdcdc,\n ghostwhite: 0xf8f8ff,\n gold: 0xffd700,\n goldenrod: 0xdaa520,\n gray: 0x808080,\n green: 0x008000,\n greenyellow: 0xadff2f,\n grey: 0x808080,\n honeydew: 0xf0fff0,\n hotpink: 0xff69b4,\n indianred: 0xcd5c5c,\n indigo: 0x4b0082,\n ivory: 0xfffff0,\n khaki: 0xf0e68c,\n lavender: 0xe6e6fa,\n lavenderblush: 0xfff0f5,\n lawngreen: 0x7cfc00,\n lemonchiffon: 0xfffacd,\n lightblue: 0xadd8e6,\n lightcoral: 0xf08080,\n lightcyan: 0xe0ffff,\n lightgoldenrodyellow: 0xfafad2,\n lightgray: 0xd3d3d3,\n lightgreen: 0x90ee90,\n lightgrey: 0xd3d3d3,\n lightpink: 0xffb6c1,\n lightsalmon: 0xffa07a,\n lightseagreen: 0x20b2aa,\n lightskyblue: 0x87cefa,\n lightslategray: 0x778899,\n lightslategrey: 0x778899,\n lightsteelblue: 0xb0c4de,\n lightyellow: 0xffffe0,\n lime: 0x00ff00,\n limegreen: 0x32cd32,\n linen: 0xfaf0e6,\n magenta: 0xff00ff,\n maroon: 0x800000,\n mediumaquamarine: 0x66cdaa,\n mediumblue: 0x0000cd,\n mediumorchid: 0xba55d3,\n mediumpurple: 0x9370db,\n mediumseagreen: 0x3cb371,\n mediumslateblue: 0x7b68ee,\n mediumspringgreen: 0x00fa9a,\n mediumturquoise: 0x48d1cc,\n mediumvioletred: 0xc71585,\n midnightblue: 0x191970,\n mintcream: 0xf5fffa,\n mistyrose: 0xffe4e1,\n moccasin: 0xffe4b5,\n navajowhite: 0xffdead,\n navy: 0x000080,\n oldlace: 0xfdf5e6,\n olive: 0x808000,\n olivedrab: 0x6b8e23,\n orange: 0xffa500,\n orangered: 0xff4500,\n orchid: 0xda70d6,\n palegoldenrod: 0xeee8aa,\n palegreen: 0x98fb98,\n paleturquoise: 0xafeeee,\n palevioletred: 0xdb7093,\n papayawhip: 0xffefd5,\n peachpuff: 0xffdab9,\n peru: 0xcd853f,\n pink: 0xffc0cb,\n plum: 0xdda0dd,\n powderblue: 0xb0e0e6,\n purple: 0x800080,\n rebeccapurple: 0x663399,\n red: 0xff0000,\n rosybrown: 0xbc8f8f,\n royalblue: 0x4169e1,\n saddlebrown: 0x8b4513,\n salmon: 0xfa8072,\n sandybrown: 0xf4a460,\n seagreen: 0x2e8b57,\n seashell: 0xfff5ee,\n sienna: 0xa0522d,\n silver: 0xc0c0c0,\n skyblue: 0x87ceeb,\n slateblue: 0x6a5acd,\n slategray: 0x708090,\n slategrey: 0x708090,\n snow: 0xfffafa,\n springgreen: 0x00ff7f,\n steelblue: 0x4682b4,\n tan: 0xd2b48c,\n teal: 0x008080,\n thistle: 0xd8bfd8,\n tomato: 0xff6347,\n turquoise: 0x40e0d0,\n violet: 0xee82ee,\n wheat: 0xf5deb3,\n white: 0xffffff,\n whitesmoke: 0xf5f5f5,\n yellow: 0xffff00,\n yellowgreen: 0x9acd32\n};\n\ndefine(Color, color, {\n copy(channels) {\n return Object.assign(new this.constructor, this, channels);\n },\n displayable() {\n return this.rgb().displayable();\n },\n hex: color_formatHex, // Deprecated! Use color.formatHex.\n formatHex: color_formatHex,\n formatHex8: color_formatHex8,\n formatHsl: color_formatHsl,\n formatRgb: color_formatRgb,\n toString: color_formatRgb\n});\n\nfunction color_formatHex() {\n return this.rgb().formatHex();\n}\n\nfunction color_formatHex8() {\n return this.rgb().formatHex8();\n}\n\nfunction color_formatHsl() {\n return hslConvert(this).formatHsl();\n}\n\nfunction color_formatRgb() {\n return this.rgb().formatRgb();\n}\n\nexport default function color(format) {\n var m, l;\n format = (format + \"\").trim().toLowerCase();\n return (m = reHex.exec(format)) ? (l = m[1].length, m = parseInt(m[1], 16), l === 6 ? rgbn(m) // #ff0000\n : l === 3 ? new Rgb((m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), ((m & 0xf) << 4) | (m & 0xf), 1) // #f00\n : l === 8 ? rgba(m >> 24 & 0xff, m >> 16 & 0xff, m >> 8 & 0xff, (m & 0xff) / 0xff) // #ff000000\n : l === 4 ? rgba((m >> 12 & 0xf) | (m >> 8 & 0xf0), (m >> 8 & 0xf) | (m >> 4 & 0xf0), (m >> 4 & 0xf) | (m & 0xf0), (((m & 0xf) << 4) | (m & 0xf)) / 0xff) // #f000\n : null) // invalid hex\n : (m = reRgbInteger.exec(format)) ? new Rgb(m[1], m[2], m[3], 1) // rgb(255, 0, 0)\n : (m = reRgbPercent.exec(format)) ? new Rgb(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, 1) // rgb(100%, 0%, 0%)\n : (m = reRgbaInteger.exec(format)) ? rgba(m[1], m[2], m[3], m[4]) // rgba(255, 0, 0, 1)\n : (m = reRgbaPercent.exec(format)) ? rgba(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, m[4]) // rgb(100%, 0%, 0%, 1)\n : (m = reHslPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, 1) // hsl(120, 50%, 50%)\n : (m = reHslaPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, m[4]) // hsla(120, 50%, 50%, 1)\n : named.hasOwnProperty(format) ? rgbn(named[format]) // eslint-disable-line no-prototype-builtins\n : format === \"transparent\" ? new Rgb(NaN, NaN, NaN, 0)\n : null;\n}\n\nfunction rgbn(n) {\n return new Rgb(n >> 16 & 0xff, n >> 8 & 0xff, n & 0xff, 1);\n}\n\nfunction rgba(r, g, b, a) {\n if (a <= 0) r = g = b = NaN;\n return new Rgb(r, g, b, a);\n}\n\nexport function rgbConvert(o) {\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Rgb;\n o = o.rgb();\n return new Rgb(o.r, o.g, o.b, o.opacity);\n}\n\nexport function rgb(r, g, b, opacity) {\n return arguments.length === 1 ? rgbConvert(r) : new Rgb(r, g, b, opacity == null ? 1 : opacity);\n}\n\nexport function Rgb(r, g, b, opacity) {\n this.r = +r;\n this.g = +g;\n this.b = +b;\n this.opacity = +opacity;\n}\n\ndefine(Rgb, rgb, extend(Color, {\n brighter(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n darker(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n rgb() {\n return this;\n },\n clamp() {\n return new Rgb(clampi(this.r), clampi(this.g), clampi(this.b), clampa(this.opacity));\n },\n displayable() {\n return (-0.5 <= this.r && this.r < 255.5)\n && (-0.5 <= this.g && this.g < 255.5)\n && (-0.5 <= this.b && this.b < 255.5)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n hex: rgb_formatHex, // Deprecated! Use color.formatHex.\n formatHex: rgb_formatHex,\n formatHex8: rgb_formatHex8,\n formatRgb: rgb_formatRgb,\n toString: rgb_formatRgb\n}));\n\nfunction rgb_formatHex() {\n return `#${hex(this.r)}${hex(this.g)}${hex(this.b)}`;\n}\n\nfunction rgb_formatHex8() {\n return `#${hex(this.r)}${hex(this.g)}${hex(this.b)}${hex((isNaN(this.opacity) ? 1 : this.opacity) * 255)}`;\n}\n\nfunction rgb_formatRgb() {\n const a = clampa(this.opacity);\n return `${a === 1 ? \"rgb(\" : \"rgba(\"}${clampi(this.r)}, ${clampi(this.g)}, ${clampi(this.b)}${a === 1 ? \")\" : `, ${a})`}`;\n}\n\nfunction clampa(opacity) {\n return isNaN(opacity) ? 1 : Math.max(0, Math.min(1, opacity));\n}\n\nfunction clampi(value) {\n return Math.max(0, Math.min(255, Math.round(value) || 0));\n}\n\nfunction hex(value) {\n value = clampi(value);\n return (value < 16 ? \"0\" : \"\") + value.toString(16);\n}\n\nfunction hsla(h, s, l, a) {\n if (a <= 0) h = s = l = NaN;\n else if (l <= 0 || l >= 1) h = s = NaN;\n else if (s <= 0) h = NaN;\n return new Hsl(h, s, l, a);\n}\n\nexport function hslConvert(o) {\n if (o instanceof Hsl) return new Hsl(o.h, o.s, o.l, o.opacity);\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Hsl;\n if (o instanceof Hsl) return o;\n o = o.rgb();\n var r = o.r / 255,\n g = o.g / 255,\n b = o.b / 255,\n min = Math.min(r, g, b),\n max = Math.max(r, g, b),\n h = NaN,\n s = max - min,\n l = (max + min) / 2;\n if (s) {\n if (r === max) h = (g - b) / s + (g < b) * 6;\n else if (g === max) h = (b - r) / s + 2;\n else h = (r - g) / s + 4;\n s /= l < 0.5 ? max + min : 2 - max - min;\n h *= 60;\n } else {\n s = l > 0 && l < 1 ? 0 : h;\n }\n return new Hsl(h, s, l, o.opacity);\n}\n\nexport function hsl(h, s, l, opacity) {\n return arguments.length === 1 ? hslConvert(h) : new Hsl(h, s, l, opacity == null ? 1 : opacity);\n}\n\nfunction Hsl(h, s, l, opacity) {\n this.h = +h;\n this.s = +s;\n this.l = +l;\n this.opacity = +opacity;\n}\n\ndefine(Hsl, hsl, extend(Color, {\n brighter(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n darker(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n rgb() {\n var h = this.h % 360 + (this.h < 0) * 360,\n s = isNaN(h) || isNaN(this.s) ? 0 : this.s,\n l = this.l,\n m2 = l + (l < 0.5 ? l : 1 - l) * s,\n m1 = 2 * l - m2;\n return new Rgb(\n hsl2rgb(h >= 240 ? h - 240 : h + 120, m1, m2),\n hsl2rgb(h, m1, m2),\n hsl2rgb(h < 120 ? h + 240 : h - 120, m1, m2),\n this.opacity\n );\n },\n clamp() {\n return new Hsl(clamph(this.h), clampt(this.s), clampt(this.l), clampa(this.opacity));\n },\n displayable() {\n return (0 <= this.s && this.s <= 1 || isNaN(this.s))\n && (0 <= this.l && this.l <= 1)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n formatHsl() {\n const a = clampa(this.opacity);\n return `${a === 1 ? \"hsl(\" : \"hsla(\"}${clamph(this.h)}, ${clampt(this.s) * 100}%, ${clampt(this.l) * 100}%${a === 1 ? \")\" : `, ${a})`}`;\n }\n}));\n\nfunction clamph(value) {\n value = (value || 0) % 360;\n return value < 0 ? value + 360 : value;\n}\n\nfunction clampt(value) {\n return Math.max(0, Math.min(1, value || 0));\n}\n\n/* From FvD 13.37, CSS Color Module Level 3 */\nfunction hsl2rgb(h, m1, m2) {\n return (h < 60 ? m1 + (m2 - m1) * h / 60\n : h < 180 ? m2\n : h < 240 ? m1 + (m2 - m1) * (240 - h) / 60\n : m1) * 255;\n}\n","export function basis(t1, v0, v1, v2, v3) {\n var t2 = t1 * t1, t3 = t2 * t1;\n return ((1 - 3 * t1 + 3 * t2 - t3) * v0\n + (4 - 6 * t2 + 3 * t3) * v1\n + (1 + 3 * t1 + 3 * t2 - 3 * t3) * v2\n + t3 * v3) / 6;\n}\n\nexport default function(values) {\n var n = values.length - 1;\n return function(t) {\n var i = t <= 0 ? (t = 0) : t >= 1 ? (t = 1, n - 1) : Math.floor(t * n),\n v1 = values[i],\n v2 = values[i + 1],\n v0 = i > 0 ? values[i - 1] : 2 * v1 - v2,\n v3 = i < n - 1 ? values[i + 2] : 2 * v2 - v1;\n return basis((t - i / n) * n, v0, v1, v2, v3);\n };\n}\n","import {basis} from \"./basis.js\";\n\nexport default function(values) {\n var n = values.length;\n return function(t) {\n var i = Math.floor(((t %= 1) < 0 ? ++t : t) * n),\n v0 = values[(i + n - 1) % n],\n v1 = values[i % n],\n v2 = values[(i + 1) % n],\n v3 = values[(i + 2) % n];\n return basis((t - i / n) * n, v0, v1, v2, v3);\n };\n}\n","export default x => () => x;\n","import constant from \"./constant.js\";\n\nfunction linear(a, d) {\n return function(t) {\n return a + t * d;\n };\n}\n\nfunction exponential(a, b, y) {\n return a = Math.pow(a, y), b = Math.pow(b, y) - a, y = 1 / y, function(t) {\n return Math.pow(a + t * b, y);\n };\n}\n\nexport function hue(a, b) {\n var d = b - a;\n return d ? linear(a, d > 180 || d < -180 ? d - 360 * Math.round(d / 360) : d) : constant(isNaN(a) ? b : a);\n}\n\nexport function gamma(y) {\n return (y = +y) === 1 ? nogamma : function(a, b) {\n return b - a ? exponential(a, b, y) : constant(isNaN(a) ? b : a);\n };\n}\n\nexport default function nogamma(a, b) {\n var d = b - a;\n return d ? linear(a, d) : constant(isNaN(a) ? b : a);\n}\n","import {rgb as colorRgb} from \"d3-color\";\nimport basis from \"./basis.js\";\nimport basisClosed from \"./basisClosed.js\";\nimport nogamma, {gamma} from \"./color.js\";\n\nexport default (function rgbGamma(y) {\n var color = gamma(y);\n\n function rgb(start, end) {\n var r = color((start = colorRgb(start)).r, (end = colorRgb(end)).r),\n g = color(start.g, end.g),\n b = color(start.b, end.b),\n opacity = nogamma(start.opacity, end.opacity);\n return function(t) {\n start.r = r(t);\n start.g = g(t);\n start.b = b(t);\n start.opacity = opacity(t);\n return start + \"\";\n };\n }\n\n rgb.gamma = rgbGamma;\n\n return rgb;\n})(1);\n\nfunction rgbSpline(spline) {\n return function(colors) {\n var n = colors.length,\n r = new Array(n),\n g = new Array(n),\n b = new Array(n),\n i, color;\n for (i = 0; i < n; ++i) {\n color = colorRgb(colors[i]);\n r[i] = color.r || 0;\n g[i] = color.g || 0;\n b[i] = color.b || 0;\n }\n r = spline(r);\n g = spline(g);\n b = spline(b);\n color.opacity = 1;\n return function(t) {\n color.r = r(t);\n color.g = g(t);\n color.b = b(t);\n return color + \"\";\n };\n };\n}\n\nexport var rgbBasis = rgbSpline(basis);\nexport var rgbBasisClosed = rgbSpline(basisClosed);\n","import number from \"./number.js\";\n\nvar reA = /[-+]?(?:\\d+\\.?\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?/g,\n reB = new RegExp(reA.source, \"g\");\n\nfunction zero(b) {\n return function() {\n return b;\n };\n}\n\nfunction one(b) {\n return function(t) {\n return b(t) + \"\";\n };\n}\n\nexport default function(a, b) {\n var bi = reA.lastIndex = reB.lastIndex = 0, // scan index for next number in b\n am, // current match in a\n bm, // current match in b\n bs, // string preceding current number in b, if any\n i = -1, // index in s\n s = [], // string constants and placeholders\n q = []; // number interpolators\n\n // Coerce inputs to strings.\n a = a + \"\", b = b + \"\";\n\n // Interpolate pairs of numbers in a & b.\n while ((am = reA.exec(a))\n && (bm = reB.exec(b))) {\n if ((bs = bm.index) > bi) { // a string precedes the next number in b\n bs = b.slice(bi, bs);\n if (s[i]) s[i] += bs; // coalesce with previous string\n else s[++i] = bs;\n }\n if ((am = am[0]) === (bm = bm[0])) { // numbers in a & b match\n if (s[i]) s[i] += bm; // coalesce with previous string\n else s[++i] = bm;\n } else { // interpolate non-matching numbers\n s[++i] = null;\n q.push({i: i, x: number(am, bm)});\n }\n bi = reB.lastIndex;\n }\n\n // Add remains of b.\n if (bi < b.length) {\n bs = b.slice(bi);\n if (s[i]) s[i] += bs; // coalesce with previous string\n else s[++i] = bs;\n }\n\n // Special optimization for only a single match.\n // Otherwise, interpolate each of the numbers and rejoin the string.\n return s.length < 2 ? (q[0]\n ? one(q[0].x)\n : zero(b))\n : (b = q.length, function(t) {\n for (var i = 0, o; i < b; ++i) s[(o = q[i]).i] = o.x(t);\n return s.join(\"\");\n });\n}\n","import {color} from \"d3-color\";\nimport {interpolateNumber, interpolateRgb, interpolateString} from \"d3-interpolate\";\n\nexport default function(a, b) {\n var c;\n return (typeof b === \"number\" ? interpolateNumber\n : b instanceof color ? interpolateRgb\n : (c = color(b)) ? (b = c, interpolateRgb)\n : interpolateString)(a, b);\n}\n","import {interpolateTransformSvg as interpolateTransform} from \"d3-interpolate\";\nimport {namespace} from \"d3-selection\";\nimport {tweenValue} from \"./tween.js\";\nimport interpolate from \"./interpolate.js\";\n\nfunction attrRemove(name) {\n return function() {\n this.removeAttribute(name);\n };\n}\n\nfunction attrRemoveNS(fullname) {\n return function() {\n this.removeAttributeNS(fullname.space, fullname.local);\n };\n}\n\nfunction attrConstant(name, interpolate, value1) {\n var string00,\n string1 = value1 + \"\",\n interpolate0;\n return function() {\n var string0 = this.getAttribute(name);\n return string0 === string1 ? null\n : string0 === string00 ? interpolate0\n : interpolate0 = interpolate(string00 = string0, value1);\n };\n}\n\nfunction attrConstantNS(fullname, interpolate, value1) {\n var string00,\n string1 = value1 + \"\",\n interpolate0;\n return function() {\n var string0 = this.getAttributeNS(fullname.space, fullname.local);\n return string0 === string1 ? null\n : string0 === string00 ? interpolate0\n : interpolate0 = interpolate(string00 = string0, value1);\n };\n}\n\nfunction attrFunction(name, interpolate, value) {\n var string00,\n string10,\n interpolate0;\n return function() {\n var string0, value1 = value(this), string1;\n if (value1 == null) return void this.removeAttribute(name);\n string0 = this.getAttribute(name);\n string1 = value1 + \"\";\n return string0 === string1 ? null\n : string0 === string00 && string1 === string10 ? interpolate0\n : (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));\n };\n}\n\nfunction attrFunctionNS(fullname, interpolate, value) {\n var string00,\n string10,\n interpolate0;\n return function() {\n var string0, value1 = value(this), string1;\n if (value1 == null) return void this.removeAttributeNS(fullname.space, fullname.local);\n string0 = this.getAttributeNS(fullname.space, fullname.local);\n string1 = value1 + \"\";\n return string0 === string1 ? null\n : string0 === string00 && string1 === string10 ? interpolate0\n : (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));\n };\n}\n\nexport default function(name, value) {\n var fullname = namespace(name), i = fullname === \"transform\" ? interpolateTransform : interpolate;\n return this.attrTween(name, typeof value === \"function\"\n ? (fullname.local ? attrFunctionNS : attrFunction)(fullname, i, tweenValue(this, \"attr.\" + name, value))\n : value == null ? (fullname.local ? attrRemoveNS : attrRemove)(fullname)\n : (fullname.local ? attrConstantNS : attrConstant)(fullname, i, value));\n}\n","import {namespace} from \"d3-selection\";\n\nfunction attrInterpolate(name, i) {\n return function(t) {\n this.setAttribute(name, i.call(this, t));\n };\n}\n\nfunction attrInterpolateNS(fullname, i) {\n return function(t) {\n this.setAttributeNS(fullname.space, fullname.local, i.call(this, t));\n };\n}\n\nfunction attrTweenNS(fullname, value) {\n var t0, i0;\n function tween() {\n var i = value.apply(this, arguments);\n if (i !== i0) t0 = (i0 = i) && attrInterpolateNS(fullname, i);\n return t0;\n }\n tween._value = value;\n return tween;\n}\n\nfunction attrTween(name, value) {\n var t0, i0;\n function tween() {\n var i = value.apply(this, arguments);\n if (i !== i0) t0 = (i0 = i) && attrInterpolate(name, i);\n return t0;\n }\n tween._value = value;\n return tween;\n}\n\nexport default function(name, value) {\n var key = \"attr.\" + name;\n if (arguments.length < 2) return (key = this.tween(key)) && key._value;\n if (value == null) return this.tween(key, null);\n if (typeof value !== \"function\") throw new Error;\n var fullname = namespace(name);\n return this.tween(key, (fullname.local ? attrTweenNS : attrTween)(fullname, value));\n}\n","import {get, init} from \"./schedule.js\";\n\nfunction delayFunction(id, value) {\n return function() {\n init(this, id).delay = +value.apply(this, arguments);\n };\n}\n\nfunction delayConstant(id, value) {\n return value = +value, function() {\n init(this, id).delay = value;\n };\n}\n\nexport default function(value) {\n var id = this._id;\n\n return arguments.length\n ? this.each((typeof value === \"function\"\n ? delayFunction\n : delayConstant)(id, value))\n : get(this.node(), id).delay;\n}\n","import {get, set} from \"./schedule.js\";\n\nfunction durationFunction(id, value) {\n return function() {\n set(this, id).duration = +value.apply(this, arguments);\n };\n}\n\nfunction durationConstant(id, value) {\n return value = +value, function() {\n set(this, id).duration = value;\n };\n}\n\nexport default function(value) {\n var id = this._id;\n\n return arguments.length\n ? this.each((typeof value === \"function\"\n ? durationFunction\n : durationConstant)(id, value))\n : get(this.node(), id).duration;\n}\n","import {get, set} from \"./schedule.js\";\n\nfunction easeConstant(id, value) {\n if (typeof value !== \"function\") throw new Error;\n return function() {\n set(this, id).ease = value;\n };\n}\n\nexport default function(value) {\n var id = this._id;\n\n return arguments.length\n ? this.each(easeConstant(id, value))\n : get(this.node(), id).ease;\n}\n","import {set} from \"./schedule.js\";\n\nfunction easeVarying(id, value) {\n return function() {\n var v = value.apply(this, arguments);\n if (typeof v !== \"function\") throw new Error;\n set(this, id).ease = v;\n };\n}\n\nexport default function(value) {\n if (typeof value !== \"function\") throw new Error;\n return this.each(easeVarying(this._id, value));\n}\n","import {matcher} from \"d3-selection\";\nimport {Transition} from \"./index.js\";\n\nexport default function(match) {\n if (typeof match !== \"function\") match = matcher(match);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = [], node, i = 0; i < n; ++i) {\n if ((node = group[i]) && match.call(node, node.__data__, i, group)) {\n subgroup.push(node);\n }\n }\n }\n\n return new Transition(subgroups, this._parents, this._name, this._id);\n}\n","import {Transition} from \"./index.js\";\n\nexport default function(transition) {\n if (transition._id !== this._id) throw new Error;\n\n for (var groups0 = this._groups, groups1 = transition._groups, m0 = groups0.length, m1 = groups1.length, m = Math.min(m0, m1), merges = new Array(m0), j = 0; j < m; ++j) {\n for (var group0 = groups0[j], group1 = groups1[j], n = group0.length, merge = merges[j] = new Array(n), node, i = 0; i < n; ++i) {\n if (node = group0[i] || group1[i]) {\n merge[i] = node;\n }\n }\n }\n\n for (; j < m0; ++j) {\n merges[j] = groups0[j];\n }\n\n return new Transition(merges, this._parents, this._name, this._id);\n}\n","import {get, set, init} from \"./schedule.js\";\n\nfunction start(name) {\n return (name + \"\").trim().split(/^|\\s+/).every(function(t) {\n var i = t.indexOf(\".\");\n if (i >= 0) t = t.slice(0, i);\n return !t || t === \"start\";\n });\n}\n\nfunction onFunction(id, name, listener) {\n var on0, on1, sit = start(name) ? init : set;\n return function() {\n var schedule = sit(this, id),\n on = schedule.on;\n\n // If this node shared a dispatch with the previous node,\n // just assign the updated shared dispatch and we’re done!\n // Otherwise, copy-on-write.\n if (on !== on0) (on1 = (on0 = on).copy()).on(name, listener);\n\n schedule.on = on1;\n };\n}\n\nexport default function(name, listener) {\n var id = this._id;\n\n return arguments.length < 2\n ? get(this.node(), id).on.on(name)\n : this.each(onFunction(id, name, listener));\n}\n","function removeFunction(id) {\n return function() {\n var parent = this.parentNode;\n for (var i in this.__transition) if (+i !== id) return;\n if (parent) parent.removeChild(this);\n };\n}\n\nexport default function() {\n return this.on(\"end.remove\", removeFunction(this._id));\n}\n","import {selector} from \"d3-selection\";\nimport {Transition} from \"./index.js\";\nimport schedule, {get} from \"./schedule.js\";\n\nexport default function(select) {\n var name = this._name,\n id = this._id;\n\n if (typeof select !== \"function\") select = selector(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = new Array(m), j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, subgroup = subgroups[j] = new Array(n), node, subnode, i = 0; i < n; ++i) {\n if ((node = group[i]) && (subnode = select.call(node, node.__data__, i, group))) {\n if (\"__data__\" in node) subnode.__data__ = node.__data__;\n subgroup[i] = subnode;\n schedule(subgroup[i], name, id, i, subgroup, get(node, id));\n }\n }\n }\n\n return new Transition(subgroups, this._parents, name, id);\n}\n","import {selectorAll} from \"d3-selection\";\nimport {Transition} from \"./index.js\";\nimport schedule, {get} from \"./schedule.js\";\n\nexport default function(select) {\n var name = this._name,\n id = this._id;\n\n if (typeof select !== \"function\") select = selectorAll(select);\n\n for (var groups = this._groups, m = groups.length, subgroups = [], parents = [], j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n for (var children = select.call(node, node.__data__, i, group), child, inherit = get(node, id), k = 0, l = children.length; k < l; ++k) {\n if (child = children[k]) {\n schedule(child, name, id, k, children, inherit);\n }\n }\n subgroups.push(children);\n parents.push(node);\n }\n }\n }\n\n return new Transition(subgroups, parents, name, id);\n}\n","import {selection} from \"d3-selection\";\n\nvar Selection = selection.prototype.constructor;\n\nexport default function() {\n return new Selection(this._groups, this._parents);\n}\n","import {interpolateTransformCss as interpolateTransform} from \"d3-interpolate\";\nimport {style} from \"d3-selection\";\nimport {set} from \"./schedule.js\";\nimport {tweenValue} from \"./tween.js\";\nimport interpolate from \"./interpolate.js\";\n\nfunction styleNull(name, interpolate) {\n var string00,\n string10,\n interpolate0;\n return function() {\n var string0 = style(this, name),\n string1 = (this.style.removeProperty(name), style(this, name));\n return string0 === string1 ? null\n : string0 === string00 && string1 === string10 ? interpolate0\n : interpolate0 = interpolate(string00 = string0, string10 = string1);\n };\n}\n\nfunction styleRemove(name) {\n return function() {\n this.style.removeProperty(name);\n };\n}\n\nfunction styleConstant(name, interpolate, value1) {\n var string00,\n string1 = value1 + \"\",\n interpolate0;\n return function() {\n var string0 = style(this, name);\n return string0 === string1 ? null\n : string0 === string00 ? interpolate0\n : interpolate0 = interpolate(string00 = string0, value1);\n };\n}\n\nfunction styleFunction(name, interpolate, value) {\n var string00,\n string10,\n interpolate0;\n return function() {\n var string0 = style(this, name),\n value1 = value(this),\n string1 = value1 + \"\";\n if (value1 == null) string1 = value1 = (this.style.removeProperty(name), style(this, name));\n return string0 === string1 ? null\n : string0 === string00 && string1 === string10 ? interpolate0\n : (string10 = string1, interpolate0 = interpolate(string00 = string0, value1));\n };\n}\n\nfunction styleMaybeRemove(id, name) {\n var on0, on1, listener0, key = \"style.\" + name, event = \"end.\" + key, remove;\n return function() {\n var schedule = set(this, id),\n on = schedule.on,\n listener = schedule.value[key] == null ? remove || (remove = styleRemove(name)) : undefined;\n\n // If this node shared a dispatch with the previous node,\n // just assign the updated shared dispatch and we’re done!\n // Otherwise, copy-on-write.\n if (on !== on0 || listener0 !== listener) (on1 = (on0 = on).copy()).on(event, listener0 = listener);\n\n schedule.on = on1;\n };\n}\n\nexport default function(name, value, priority) {\n var i = (name += \"\") === \"transform\" ? interpolateTransform : interpolate;\n return value == null ? this\n .styleTween(name, styleNull(name, i))\n .on(\"end.style.\" + name, styleRemove(name))\n : typeof value === \"function\" ? this\n .styleTween(name, styleFunction(name, i, tweenValue(this, \"style.\" + name, value)))\n .each(styleMaybeRemove(this._id, name))\n : this\n .styleTween(name, styleConstant(name, i, value), priority)\n .on(\"end.style.\" + name, null);\n}\n","function styleInterpolate(name, i, priority) {\n return function(t) {\n this.style.setProperty(name, i.call(this, t), priority);\n };\n}\n\nfunction styleTween(name, value, priority) {\n var t, i0;\n function tween() {\n var i = value.apply(this, arguments);\n if (i !== i0) t = (i0 = i) && styleInterpolate(name, i, priority);\n return t;\n }\n tween._value = value;\n return tween;\n}\n\nexport default function(name, value, priority) {\n var key = \"style.\" + (name += \"\");\n if (arguments.length < 2) return (key = this.tween(key)) && key._value;\n if (value == null) return this.tween(key, null);\n if (typeof value !== \"function\") throw new Error;\n return this.tween(key, styleTween(name, value, priority == null ? \"\" : priority));\n}\n","import {tweenValue} from \"./tween.js\";\n\nfunction textConstant(value) {\n return function() {\n this.textContent = value;\n };\n}\n\nfunction textFunction(value) {\n return function() {\n var value1 = value(this);\n this.textContent = value1 == null ? \"\" : value1;\n };\n}\n\nexport default function(value) {\n return this.tween(\"text\", typeof value === \"function\"\n ? textFunction(tweenValue(this, \"text\", value))\n : textConstant(value == null ? \"\" : value + \"\"));\n}\n","function textInterpolate(i) {\n return function(t) {\n this.textContent = i.call(this, t);\n };\n}\n\nfunction textTween(value) {\n var t0, i0;\n function tween() {\n var i = value.apply(this, arguments);\n if (i !== i0) t0 = (i0 = i) && textInterpolate(i);\n return t0;\n }\n tween._value = value;\n return tween;\n}\n\nexport default function(value) {\n var key = \"text\";\n if (arguments.length < 1) return (key = this.tween(key)) && key._value;\n if (value == null) return this.tween(key, null);\n if (typeof value !== \"function\") throw new Error;\n return this.tween(key, textTween(value));\n}\n","import {Transition, newId} from \"./index.js\";\nimport schedule, {get} from \"./schedule.js\";\n\nexport default function() {\n var name = this._name,\n id0 = this._id,\n id1 = newId();\n\n for (var groups = this._groups, m = groups.length, j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n var inherit = get(node, id0);\n schedule(node, name, id1, i, group, {\n time: inherit.time + inherit.delay + inherit.duration,\n delay: 0,\n duration: inherit.duration,\n ease: inherit.ease\n });\n }\n }\n }\n\n return new Transition(groups, this._parents, name, id1);\n}\n","import {set} from \"./schedule.js\";\n\nexport default function() {\n var on0, on1, that = this, id = that._id, size = that.size();\n return new Promise(function(resolve, reject) {\n var cancel = {value: reject},\n end = {value: function() { if (--size === 0) resolve(); }};\n\n that.each(function() {\n var schedule = set(this, id),\n on = schedule.on;\n\n // If this node shared a dispatch with the previous node,\n // just assign the updated shared dispatch and we’re done!\n // Otherwise, copy-on-write.\n if (on !== on0) {\n on1 = (on0 = on).copy();\n on1._.cancel.push(cancel);\n on1._.interrupt.push(cancel);\n on1._.end.push(end);\n }\n\n schedule.on = on1;\n });\n\n // The selection was empty, resolve end immediately\n if (size === 0) resolve();\n });\n}\n","import {selection} from \"d3-selection\";\nimport transition_attr from \"./attr.js\";\nimport transition_attrTween from \"./attrTween.js\";\nimport transition_delay from \"./delay.js\";\nimport transition_duration from \"./duration.js\";\nimport transition_ease from \"./ease.js\";\nimport transition_easeVarying from \"./easeVarying.js\";\nimport transition_filter from \"./filter.js\";\nimport transition_merge from \"./merge.js\";\nimport transition_on from \"./on.js\";\nimport transition_remove from \"./remove.js\";\nimport transition_select from \"./select.js\";\nimport transition_selectAll from \"./selectAll.js\";\nimport transition_selection from \"./selection.js\";\nimport transition_style from \"./style.js\";\nimport transition_styleTween from \"./styleTween.js\";\nimport transition_text from \"./text.js\";\nimport transition_textTween from \"./textTween.js\";\nimport transition_transition from \"./transition.js\";\nimport transition_tween from \"./tween.js\";\nimport transition_end from \"./end.js\";\n\nvar id = 0;\n\nexport function Transition(groups, parents, name, id) {\n this._groups = groups;\n this._parents = parents;\n this._name = name;\n this._id = id;\n}\n\nexport default function transition(name) {\n return selection().transition(name);\n}\n\nexport function newId() {\n return ++id;\n}\n\nvar selection_prototype = selection.prototype;\n\nTransition.prototype = transition.prototype = {\n constructor: Transition,\n select: transition_select,\n selectAll: transition_selectAll,\n selectChild: selection_prototype.selectChild,\n selectChildren: selection_prototype.selectChildren,\n filter: transition_filter,\n merge: transition_merge,\n selection: transition_selection,\n transition: transition_transition,\n call: selection_prototype.call,\n nodes: selection_prototype.nodes,\n node: selection_prototype.node,\n size: selection_prototype.size,\n empty: selection_prototype.empty,\n each: selection_prototype.each,\n on: transition_on,\n attr: transition_attr,\n attrTween: transition_attrTween,\n style: transition_style,\n styleTween: transition_styleTween,\n text: transition_text,\n textTween: transition_textTween,\n remove: transition_remove,\n tween: transition_tween,\n delay: transition_delay,\n duration: transition_duration,\n ease: transition_ease,\n easeVarying: transition_easeVarying,\n end: transition_end,\n [Symbol.iterator]: selection_prototype[Symbol.iterator]\n};\n","export function cubicIn(t) {\n return t * t * t;\n}\n\nexport function cubicOut(t) {\n return --t * t * t + 1;\n}\n\nexport function cubicInOut(t) {\n return ((t *= 2) <= 1 ? t * t * t : (t -= 2) * t * t + 2) / 2;\n}\n","import {Transition, newId} from \"../transition/index.js\";\nimport schedule from \"../transition/schedule.js\";\nimport {easeCubicInOut} from \"d3-ease\";\nimport {now} from \"d3-timer\";\n\nvar defaultTiming = {\n time: null, // Set on use.\n delay: 0,\n duration: 250,\n ease: easeCubicInOut\n};\n\nfunction inherit(node, id) {\n var timing;\n while (!(timing = node.__transition) || !(timing = timing[id])) {\n if (!(node = node.parentNode)) {\n throw new Error(`transition ${id} not found`);\n }\n }\n return timing;\n}\n\nexport default function(name) {\n var id,\n timing;\n\n if (name instanceof Transition) {\n id = name._id, name = name._name;\n } else {\n id = newId(), (timing = defaultTiming).time = now(), name = name == null ? null : name + \"\";\n }\n\n for (var groups = this._groups, m = groups.length, j = 0; j < m; ++j) {\n for (var group = groups[j], n = group.length, node, i = 0; i < n; ++i) {\n if (node = group[i]) {\n schedule(node, name, id, i, group, timing || inherit(node, id));\n }\n }\n }\n\n return new Transition(groups, this._parents, name, id);\n}\n","import {selection} from \"d3-selection\";\nimport selection_interrupt from \"./interrupt.js\";\nimport selection_transition from \"./transition.js\";\n\nselection.prototype.interrupt = selection_interrupt;\nselection.prototype.transition = selection_transition;\n","import \"./selection/index.js\";\nexport {default as transition} from \"./transition/index.js\";\nexport {default as active} from \"./active.js\";\nexport {default as interrupt} from \"./interrupt.js\";\n","import {dispatch} from \"d3-dispatch\";\nimport {dragDisable, dragEnable} from \"d3-drag\";\nimport {interpolate} from \"d3-interpolate\";\nimport {pointer, select} from \"d3-selection\";\nimport {interrupt} from \"d3-transition\";\nimport constant from \"./constant.js\";\nimport BrushEvent from \"./event.js\";\nimport noevent, {nopropagation} from \"./noevent.js\";\n\nvar MODE_DRAG = {name: \"drag\"},\n MODE_SPACE = {name: \"space\"},\n MODE_HANDLE = {name: \"handle\"},\n MODE_CENTER = {name: \"center\"};\n\nconst {abs, max, min} = Math;\n\nfunction number1(e) {\n return [+e[0], +e[1]];\n}\n\nfunction number2(e) {\n return [number1(e[0]), number1(e[1])];\n}\n\nvar X = {\n name: \"x\",\n handles: [\"w\", \"e\"].map(type),\n input: function(x, e) { return x == null ? null : [[+x[0], e[0][1]], [+x[1], e[1][1]]]; },\n output: function(xy) { return xy && [xy[0][0], xy[1][0]]; }\n};\n\nvar Y = {\n name: \"y\",\n handles: [\"n\", \"s\"].map(type),\n input: function(y, e) { return y == null ? null : [[e[0][0], +y[0]], [e[1][0], +y[1]]]; },\n output: function(xy) { return xy && [xy[0][1], xy[1][1]]; }\n};\n\nvar XY = {\n name: \"xy\",\n handles: [\"n\", \"w\", \"e\", \"s\", \"nw\", \"ne\", \"sw\", \"se\"].map(type),\n input: function(xy) { return xy == null ? null : number2(xy); },\n output: function(xy) { return xy; }\n};\n\nvar cursors = {\n overlay: \"crosshair\",\n selection: \"move\",\n n: \"ns-resize\",\n e: \"ew-resize\",\n s: \"ns-resize\",\n w: \"ew-resize\",\n nw: \"nwse-resize\",\n ne: \"nesw-resize\",\n se: \"nwse-resize\",\n sw: \"nesw-resize\"\n};\n\nvar flipX = {\n e: \"w\",\n w: \"e\",\n nw: \"ne\",\n ne: \"nw\",\n se: \"sw\",\n sw: \"se\"\n};\n\nvar flipY = {\n n: \"s\",\n s: \"n\",\n nw: \"sw\",\n ne: \"se\",\n se: \"ne\",\n sw: \"nw\"\n};\n\nvar signsX = {\n overlay: +1,\n selection: +1,\n n: null,\n e: +1,\n s: null,\n w: -1,\n nw: -1,\n ne: +1,\n se: +1,\n sw: -1\n};\n\nvar signsY = {\n overlay: +1,\n selection: +1,\n n: -1,\n e: null,\n s: +1,\n w: null,\n nw: -1,\n ne: -1,\n se: +1,\n sw: +1\n};\n\nfunction type(t) {\n return {type: t};\n}\n\n// Ignore right-click, since that should open the context menu.\nfunction defaultFilter(event) {\n return !event.ctrlKey && !event.button;\n}\n\nfunction defaultExtent() {\n var svg = this.ownerSVGElement || this;\n if (svg.hasAttribute(\"viewBox\")) {\n svg = svg.viewBox.baseVal;\n return [[svg.x, svg.y], [svg.x + svg.width, svg.y + svg.height]];\n }\n return [[0, 0], [svg.width.baseVal.value, svg.height.baseVal.value]];\n}\n\nfunction defaultTouchable() {\n return navigator.maxTouchPoints || (\"ontouchstart\" in this);\n}\n\n// Like d3.local, but with the name “__brush” rather than auto-generated.\nfunction local(node) {\n while (!node.__brush) if (!(node = node.parentNode)) return;\n return node.__brush;\n}\n\nfunction empty(extent) {\n return extent[0][0] === extent[1][0]\n || extent[0][1] === extent[1][1];\n}\n\nexport function brushSelection(node) {\n var state = node.__brush;\n return state ? state.dim.output(state.selection) : null;\n}\n\nexport function brushX() {\n return brush(X);\n}\n\nexport function brushY() {\n return brush(Y);\n}\n\nexport default function() {\n return brush(XY);\n}\n\nfunction brush(dim) {\n var extent = defaultExtent,\n filter = defaultFilter,\n touchable = defaultTouchable,\n keys = true,\n listeners = dispatch(\"start\", \"brush\", \"end\"),\n handleSize = 6,\n touchending;\n\n function brush(group) {\n var overlay = group\n .property(\"__brush\", initialize)\n .selectAll(\".overlay\")\n .data([type(\"overlay\")]);\n\n overlay.enter().append(\"rect\")\n .attr(\"class\", \"overlay\")\n .attr(\"pointer-events\", \"all\")\n .attr(\"cursor\", cursors.overlay)\n .merge(overlay)\n .each(function() {\n var extent = local(this).extent;\n select(this)\n .attr(\"x\", extent[0][0])\n .attr(\"y\", extent[0][1])\n .attr(\"width\", extent[1][0] - extent[0][0])\n .attr(\"height\", extent[1][1] - extent[0][1]);\n });\n\n group.selectAll(\".selection\")\n .data([type(\"selection\")])\n .enter().append(\"rect\")\n .attr(\"class\", \"selection\")\n .attr(\"cursor\", cursors.selection)\n .attr(\"fill\", \"#777\")\n .attr(\"fill-opacity\", 0.3)\n .attr(\"stroke\", \"#fff\")\n .attr(\"shape-rendering\", \"crispEdges\");\n\n var handle = group.selectAll(\".handle\")\n .data(dim.handles, function(d) { return d.type; });\n\n handle.exit().remove();\n\n handle.enter().append(\"rect\")\n .attr(\"class\", function(d) { return \"handle handle--\" + d.type; })\n .attr(\"cursor\", function(d) { return cursors[d.type]; });\n\n group\n .each(redraw)\n .attr(\"fill\", \"none\")\n .attr(\"pointer-events\", \"all\")\n .on(\"mousedown.brush\", started)\n .filter(touchable)\n .on(\"touchstart.brush\", started)\n .on(\"touchmove.brush\", touchmoved)\n .on(\"touchend.brush touchcancel.brush\", touchended)\n .style(\"touch-action\", \"none\")\n .style(\"-webkit-tap-highlight-color\", \"rgba(0,0,0,0)\");\n }\n\n brush.move = function(group, selection, event) {\n if (group.tween) {\n group\n .on(\"start.brush\", function(event) { emitter(this, arguments).beforestart().start(event); })\n .on(\"interrupt.brush end.brush\", function(event) { emitter(this, arguments).end(event); })\n .tween(\"brush\", function() {\n var that = this,\n state = that.__brush,\n emit = emitter(that, arguments),\n selection0 = state.selection,\n selection1 = dim.input(typeof selection === \"function\" ? selection.apply(this, arguments) : selection, state.extent),\n i = interpolate(selection0, selection1);\n\n function tween(t) {\n state.selection = t === 1 && selection1 === null ? null : i(t);\n redraw.call(that);\n emit.brush();\n }\n\n return selection0 !== null && selection1 !== null ? tween : tween(1);\n });\n } else {\n group\n .each(function() {\n var that = this,\n args = arguments,\n state = that.__brush,\n selection1 = dim.input(typeof selection === \"function\" ? selection.apply(that, args) : selection, state.extent),\n emit = emitter(that, args).beforestart();\n\n interrupt(that);\n state.selection = selection1 === null ? null : selection1;\n redraw.call(that);\n emit.start(event).brush(event).end(event);\n });\n }\n };\n\n brush.clear = function(group, event) {\n brush.move(group, null, event);\n };\n\n function redraw() {\n var group = select(this),\n selection = local(this).selection;\n\n if (selection) {\n group.selectAll(\".selection\")\n .style(\"display\", null)\n .attr(\"x\", selection[0][0])\n .attr(\"y\", selection[0][1])\n .attr(\"width\", selection[1][0] - selection[0][0])\n .attr(\"height\", selection[1][1] - selection[0][1]);\n\n group.selectAll(\".handle\")\n .style(\"display\", null)\n .attr(\"x\", function(d) { return d.type[d.type.length - 1] === \"e\" ? selection[1][0] - handleSize / 2 : selection[0][0] - handleSize / 2; })\n .attr(\"y\", function(d) { return d.type[0] === \"s\" ? selection[1][1] - handleSize / 2 : selection[0][1] - handleSize / 2; })\n .attr(\"width\", function(d) { return d.type === \"n\" || d.type === \"s\" ? selection[1][0] - selection[0][0] + handleSize : handleSize; })\n .attr(\"height\", function(d) { return d.type === \"e\" || d.type === \"w\" ? selection[1][1] - selection[0][1] + handleSize : handleSize; });\n }\n\n else {\n group.selectAll(\".selection,.handle\")\n .style(\"display\", \"none\")\n .attr(\"x\", null)\n .attr(\"y\", null)\n .attr(\"width\", null)\n .attr(\"height\", null);\n }\n }\n\n function emitter(that, args, clean) {\n var emit = that.__brush.emitter;\n return emit && (!clean || !emit.clean) ? emit : new Emitter(that, args, clean);\n }\n\n function Emitter(that, args, clean) {\n this.that = that;\n this.args = args;\n this.state = that.__brush;\n this.active = 0;\n this.clean = clean;\n }\n\n Emitter.prototype = {\n beforestart: function() {\n if (++this.active === 1) this.state.emitter = this, this.starting = true;\n return this;\n },\n start: function(event, mode) {\n if (this.starting) this.starting = false, this.emit(\"start\", event, mode);\n else this.emit(\"brush\", event);\n return this;\n },\n brush: function(event, mode) {\n this.emit(\"brush\", event, mode);\n return this;\n },\n end: function(event, mode) {\n if (--this.active === 0) delete this.state.emitter, this.emit(\"end\", event, mode);\n return this;\n },\n emit: function(type, event, mode) {\n var d = select(this.that).datum();\n listeners.call(\n type,\n this.that,\n new BrushEvent(type, {\n sourceEvent: event,\n target: brush,\n selection: dim.output(this.state.selection),\n mode,\n dispatch: listeners\n }),\n d\n );\n }\n };\n\n function started(event) {\n if (touchending && !event.touches) return;\n if (!filter.apply(this, arguments)) return;\n\n var that = this,\n type = event.target.__data__.type,\n mode = (keys && event.metaKey ? type = \"overlay\" : type) === \"selection\" ? MODE_DRAG : (keys && event.altKey ? MODE_CENTER : MODE_HANDLE),\n signX = dim === Y ? null : signsX[type],\n signY = dim === X ? null : signsY[type],\n state = local(that),\n extent = state.extent,\n selection = state.selection,\n W = extent[0][0], w0, w1,\n N = extent[0][1], n0, n1,\n E = extent[1][0], e0, e1,\n S = extent[1][1], s0, s1,\n dx = 0,\n dy = 0,\n moving,\n shifting = signX && signY && keys && event.shiftKey,\n lockX,\n lockY,\n points = Array.from(event.touches || [event], t => {\n const i = t.identifier;\n t = pointer(t, that);\n t.point0 = t.slice();\n t.identifier = i;\n return t;\n });\n\n interrupt(that);\n var emit = emitter(that, arguments, true).beforestart();\n\n if (type === \"overlay\") {\n if (selection) moving = true;\n const pts = [points[0], points[1] || points[0]];\n state.selection = selection = [[\n w0 = dim === Y ? W : min(pts[0][0], pts[1][0]),\n n0 = dim === X ? N : min(pts[0][1], pts[1][1])\n ], [\n e0 = dim === Y ? E : max(pts[0][0], pts[1][0]),\n s0 = dim === X ? S : max(pts[0][1], pts[1][1])\n ]];\n if (points.length > 1) move(event);\n } else {\n w0 = selection[0][0];\n n0 = selection[0][1];\n e0 = selection[1][0];\n s0 = selection[1][1];\n }\n\n w1 = w0;\n n1 = n0;\n e1 = e0;\n s1 = s0;\n\n var group = select(that)\n .attr(\"pointer-events\", \"none\");\n\n var overlay = group.selectAll(\".overlay\")\n .attr(\"cursor\", cursors[type]);\n\n if (event.touches) {\n emit.moved = moved;\n emit.ended = ended;\n } else {\n var view = select(event.view)\n .on(\"mousemove.brush\", moved, true)\n .on(\"mouseup.brush\", ended, true);\n if (keys) view\n .on(\"keydown.brush\", keydowned, true)\n .on(\"keyup.brush\", keyupped, true)\n\n dragDisable(event.view);\n }\n\n redraw.call(that);\n emit.start(event, mode.name);\n\n function moved(event) {\n for (const p of event.changedTouches || [event]) {\n for (const d of points)\n if (d.identifier === p.identifier) d.cur = pointer(p, that);\n }\n if (shifting && !lockX && !lockY && points.length === 1) {\n const point = points[0];\n if (abs(point.cur[0] - point[0]) > abs(point.cur[1] - point[1]))\n lockY = true;\n else\n lockX = true;\n }\n for (const point of points)\n if (point.cur) point[0] = point.cur[0], point[1] = point.cur[1];\n moving = true;\n noevent(event);\n move(event);\n }\n\n function move(event) {\n const point = points[0], point0 = point.point0;\n var t;\n\n dx = point[0] - point0[0];\n dy = point[1] - point0[1];\n\n switch (mode) {\n case MODE_SPACE:\n case MODE_DRAG: {\n if (signX) dx = max(W - w0, min(E - e0, dx)), w1 = w0 + dx, e1 = e0 + dx;\n if (signY) dy = max(N - n0, min(S - s0, dy)), n1 = n0 + dy, s1 = s0 + dy;\n break;\n }\n case MODE_HANDLE: {\n if (points[1]) {\n if (signX) w1 = max(W, min(E, points[0][0])), e1 = max(W, min(E, points[1][0])), signX = 1;\n if (signY) n1 = max(N, min(S, points[0][1])), s1 = max(N, min(S, points[1][1])), signY = 1;\n } else {\n if (signX < 0) dx = max(W - w0, min(E - w0, dx)), w1 = w0 + dx, e1 = e0;\n else if (signX > 0) dx = max(W - e0, min(E - e0, dx)), w1 = w0, e1 = e0 + dx;\n if (signY < 0) dy = max(N - n0, min(S - n0, dy)), n1 = n0 + dy, s1 = s0;\n else if (signY > 0) dy = max(N - s0, min(S - s0, dy)), n1 = n0, s1 = s0 + dy;\n }\n break;\n }\n case MODE_CENTER: {\n if (signX) w1 = max(W, min(E, w0 - dx * signX)), e1 = max(W, min(E, e0 + dx * signX));\n if (signY) n1 = max(N, min(S, n0 - dy * signY)), s1 = max(N, min(S, s0 + dy * signY));\n break;\n }\n }\n\n if (e1 < w1) {\n signX *= -1;\n t = w0, w0 = e0, e0 = t;\n t = w1, w1 = e1, e1 = t;\n if (type in flipX) overlay.attr(\"cursor\", cursors[type = flipX[type]]);\n }\n\n if (s1 < n1) {\n signY *= -1;\n t = n0, n0 = s0, s0 = t;\n t = n1, n1 = s1, s1 = t;\n if (type in flipY) overlay.attr(\"cursor\", cursors[type = flipY[type]]);\n }\n\n if (state.selection) selection = state.selection; // May be set by brush.move!\n if (lockX) w1 = selection[0][0], e1 = selection[1][0];\n if (lockY) n1 = selection[0][1], s1 = selection[1][1];\n\n if (selection[0][0] !== w1\n || selection[0][1] !== n1\n || selection[1][0] !== e1\n || selection[1][1] !== s1) {\n state.selection = [[w1, n1], [e1, s1]];\n redraw.call(that);\n emit.brush(event, mode.name);\n }\n }\n\n function ended(event) {\n nopropagation(event);\n if (event.touches) {\n if (event.touches.length) return;\n if (touchending) clearTimeout(touchending);\n touchending = setTimeout(function() { touchending = null; }, 500); // Ghost clicks are delayed!\n } else {\n dragEnable(event.view, moving);\n view.on(\"keydown.brush keyup.brush mousemove.brush mouseup.brush\", null);\n }\n group.attr(\"pointer-events\", \"all\");\n overlay.attr(\"cursor\", cursors.overlay);\n if (state.selection) selection = state.selection; // May be set by brush.move (on start)!\n if (empty(selection)) state.selection = null, redraw.call(that);\n emit.end(event, mode.name);\n }\n\n function keydowned(event) {\n switch (event.keyCode) {\n case 16: { // SHIFT\n shifting = signX && signY;\n break;\n }\n case 18: { // ALT\n if (mode === MODE_HANDLE) {\n if (signX) e0 = e1 - dx * signX, w0 = w1 + dx * signX;\n if (signY) s0 = s1 - dy * signY, n0 = n1 + dy * signY;\n mode = MODE_CENTER;\n move(event);\n }\n break;\n }\n case 32: { // SPACE; takes priority over ALT\n if (mode === MODE_HANDLE || mode === MODE_CENTER) {\n if (signX < 0) e0 = e1 - dx; else if (signX > 0) w0 = w1 - dx;\n if (signY < 0) s0 = s1 - dy; else if (signY > 0) n0 = n1 - dy;\n mode = MODE_SPACE;\n overlay.attr(\"cursor\", cursors.selection);\n move(event);\n }\n break;\n }\n default: return;\n }\n noevent(event);\n }\n\n function keyupped(event) {\n switch (event.keyCode) {\n case 16: { // SHIFT\n if (shifting) {\n lockX = lockY = shifting = false;\n move(event);\n }\n break;\n }\n case 18: { // ALT\n if (mode === MODE_CENTER) {\n if (signX < 0) e0 = e1; else if (signX > 0) w0 = w1;\n if (signY < 0) s0 = s1; else if (signY > 0) n0 = n1;\n mode = MODE_HANDLE;\n move(event);\n }\n break;\n }\n case 32: { // SPACE\n if (mode === MODE_SPACE) {\n if (event.altKey) {\n if (signX) e0 = e1 - dx * signX, w0 = w1 + dx * signX;\n if (signY) s0 = s1 - dy * signY, n0 = n1 + dy * signY;\n mode = MODE_CENTER;\n } else {\n if (signX < 0) e0 = e1; else if (signX > 0) w0 = w1;\n if (signY < 0) s0 = s1; else if (signY > 0) n0 = n1;\n mode = MODE_HANDLE;\n }\n overlay.attr(\"cursor\", cursors[type]);\n move(event);\n }\n break;\n }\n default: return;\n }\n noevent(event);\n }\n }\n\n function touchmoved(event) {\n emitter(this, arguments).moved(event);\n }\n\n function touchended(event) {\n emitter(this, arguments).ended(event);\n }\n\n function initialize() {\n var state = this.__brush || {selection: null};\n state.extent = number2(extent.apply(this, arguments));\n state.dim = dim;\n return state;\n }\n\n brush.extent = function(_) {\n return arguments.length ? (extent = typeof _ === \"function\" ? _ : constant(number2(_)), brush) : extent;\n };\n\n brush.filter = function(_) {\n return arguments.length ? (filter = typeof _ === \"function\" ? _ : constant(!!_), brush) : filter;\n };\n\n brush.touchable = function(_) {\n return arguments.length ? (touchable = typeof _ === \"function\" ? _ : constant(!!_), brush) : touchable;\n };\n\n brush.handleSize = function(_) {\n return arguments.length ? (handleSize = +_, brush) : handleSize;\n };\n\n brush.keyModifiers = function(_) {\n return arguments.length ? (keys = !!_, brush) : keys;\n };\n\n brush.on = function() {\n var value = listeners.on.apply(listeners, arguments);\n return value === listeners ? brush : value;\n };\n\n return brush;\n}\n","export {\n default as brush,\n brushX,\n brushY,\n brushSelection\n} from \"./brush.js\";\n","import {Selection, root} from \"./selection/index.js\";\n\nexport default function(selector) {\n return typeof selector === \"string\"\n ? new Selection([[document.querySelector(selector)]], [document.documentElement])\n : new Selection([[selector]], root);\n}\n","export {default as create} from \"./create.js\";\nexport {default as creator} from \"./creator.js\";\nexport {default as local} from \"./local.js\";\nexport {default as matcher} from \"./matcher.js\";\nexport {default as namespace} from \"./namespace.js\";\nexport {default as namespaces} from \"./namespaces.js\";\nexport {default as pointer} from \"./pointer.js\";\nexport {default as pointers} from \"./pointers.js\";\nexport {default as select} from \"./select.js\";\nexport {default as selectAll} from \"./selectAll.js\";\nexport {default as selection} from \"./selection/index.js\";\nexport {default as selector} from \"./selector.js\";\nexport {default as selectorAll} from \"./selectorAll.js\";\nexport {styleValue as style} from \"./selection/style.js\";\nexport {default as window} from \"./window.js\";\n","export function Transform(k, x, y) {\n this.k = k;\n this.x = x;\n this.y = y;\n}\n\nTransform.prototype = {\n constructor: Transform,\n scale: function(k) {\n return k === 1 ? this : new Transform(this.k * k, this.x, this.y);\n },\n translate: function(x, y) {\n return x === 0 & y === 0 ? this : new Transform(this.k, this.x + this.k * x, this.y + this.k * y);\n },\n apply: function(point) {\n return [point[0] * this.k + this.x, point[1] * this.k + this.y];\n },\n applyX: function(x) {\n return x * this.k + this.x;\n },\n applyY: function(y) {\n return y * this.k + this.y;\n },\n invert: function(location) {\n return [(location[0] - this.x) / this.k, (location[1] - this.y) / this.k];\n },\n invertX: function(x) {\n return (x - this.x) / this.k;\n },\n invertY: function(y) {\n return (y - this.y) / this.k;\n },\n rescaleX: function(x) {\n return x.copy().domain(x.range().map(this.invertX, this).map(x.invert, x));\n },\n rescaleY: function(y) {\n return y.copy().domain(y.range().map(this.invertY, this).map(y.invert, y));\n },\n toString: function() {\n return \"translate(\" + this.x + \",\" + this.y + \") scale(\" + this.k + \")\";\n }\n};\n\nexport var identity = new Transform(1, 0, 0);\n\ntransform.prototype = Transform.prototype;\n\nexport default function transform(node) {\n while (!node.__zoom) if (!(node = node.parentNode)) return identity;\n return node.__zoom;\n}\n","import {dispatch} from \"d3-dispatch\";\nimport {dragDisable, dragEnable} from \"d3-drag\";\nimport {interpolateZoom} from \"d3-interpolate\";\nimport {select, pointer} from \"d3-selection\";\nimport {interrupt} from \"d3-transition\";\nimport constant from \"./constant.js\";\nimport ZoomEvent from \"./event.js\";\nimport {Transform, identity} from \"./transform.js\";\nimport noevent, {nopropagation} from \"./noevent.js\";\n\n// Ignore right-click, since that should open the context menu.\n// except for pinch-to-zoom, which is sent as a wheel+ctrlKey event\nfunction defaultFilter(event) {\n return (!event.ctrlKey || event.type === 'wheel') && !event.button;\n}\n\nfunction defaultExtent() {\n var e = this;\n if (e instanceof SVGElement) {\n e = e.ownerSVGElement || e;\n if (e.hasAttribute(\"viewBox\")) {\n e = e.viewBox.baseVal;\n return [[e.x, e.y], [e.x + e.width, e.y + e.height]];\n }\n return [[0, 0], [e.width.baseVal.value, e.height.baseVal.value]];\n }\n return [[0, 0], [e.clientWidth, e.clientHeight]];\n}\n\nfunction defaultTransform() {\n return this.__zoom || identity;\n}\n\nfunction defaultWheelDelta(event) {\n return -event.deltaY * (event.deltaMode === 1 ? 0.05 : event.deltaMode ? 1 : 0.002) * (event.ctrlKey ? 10 : 1);\n}\n\nfunction defaultTouchable() {\n return navigator.maxTouchPoints || (\"ontouchstart\" in this);\n}\n\nfunction defaultConstrain(transform, extent, translateExtent) {\n var dx0 = transform.invertX(extent[0][0]) - translateExtent[0][0],\n dx1 = transform.invertX(extent[1][0]) - translateExtent[1][0],\n dy0 = transform.invertY(extent[0][1]) - translateExtent[0][1],\n dy1 = transform.invertY(extent[1][1]) - translateExtent[1][1];\n return transform.translate(\n dx1 > dx0 ? (dx0 + dx1) / 2 : Math.min(0, dx0) || Math.max(0, dx1),\n dy1 > dy0 ? (dy0 + dy1) / 2 : Math.min(0, dy0) || Math.max(0, dy1)\n );\n}\n\nexport default function() {\n var filter = defaultFilter,\n extent = defaultExtent,\n constrain = defaultConstrain,\n wheelDelta = defaultWheelDelta,\n touchable = defaultTouchable,\n scaleExtent = [0, Infinity],\n translateExtent = [[-Infinity, -Infinity], [Infinity, Infinity]],\n duration = 250,\n interpolate = interpolateZoom,\n listeners = dispatch(\"start\", \"zoom\", \"end\"),\n touchstarting,\n touchfirst,\n touchending,\n touchDelay = 500,\n wheelDelay = 150,\n clickDistance2 = 0,\n tapDistance = 10;\n\n function zoom(selection) {\n selection\n .property(\"__zoom\", defaultTransform)\n .on(\"wheel.zoom\", wheeled, {passive: false})\n .on(\"mousedown.zoom\", mousedowned)\n .on(\"dblclick.zoom\", dblclicked)\n .filter(touchable)\n .on(\"touchstart.zoom\", touchstarted)\n .on(\"touchmove.zoom\", touchmoved)\n .on(\"touchend.zoom touchcancel.zoom\", touchended)\n .style(\"-webkit-tap-highlight-color\", \"rgba(0,0,0,0)\");\n }\n\n zoom.transform = function(collection, transform, point, event) {\n var selection = collection.selection ? collection.selection() : collection;\n selection.property(\"__zoom\", defaultTransform);\n if (collection !== selection) {\n schedule(collection, transform, point, event);\n } else {\n selection.interrupt().each(function() {\n gesture(this, arguments)\n .event(event)\n .start()\n .zoom(null, typeof transform === \"function\" ? transform.apply(this, arguments) : transform)\n .end();\n });\n }\n };\n\n zoom.scaleBy = function(selection, k, p, event) {\n zoom.scaleTo(selection, function() {\n var k0 = this.__zoom.k,\n k1 = typeof k === \"function\" ? k.apply(this, arguments) : k;\n return k0 * k1;\n }, p, event);\n };\n\n zoom.scaleTo = function(selection, k, p, event) {\n zoom.transform(selection, function() {\n var e = extent.apply(this, arguments),\n t0 = this.__zoom,\n p0 = p == null ? centroid(e) : typeof p === \"function\" ? p.apply(this, arguments) : p,\n p1 = t0.invert(p0),\n k1 = typeof k === \"function\" ? k.apply(this, arguments) : k;\n return constrain(translate(scale(t0, k1), p0, p1), e, translateExtent);\n }, p, event);\n };\n\n zoom.translateBy = function(selection, x, y, event) {\n zoom.transform(selection, function() {\n return constrain(this.__zoom.translate(\n typeof x === \"function\" ? x.apply(this, arguments) : x,\n typeof y === \"function\" ? y.apply(this, arguments) : y\n ), extent.apply(this, arguments), translateExtent);\n }, null, event);\n };\n\n zoom.translateTo = function(selection, x, y, p, event) {\n zoom.transform(selection, function() {\n var e = extent.apply(this, arguments),\n t = this.__zoom,\n p0 = p == null ? centroid(e) : typeof p === \"function\" ? p.apply(this, arguments) : p;\n return constrain(identity.translate(p0[0], p0[1]).scale(t.k).translate(\n typeof x === \"function\" ? -x.apply(this, arguments) : -x,\n typeof y === \"function\" ? -y.apply(this, arguments) : -y\n ), e, translateExtent);\n }, p, event);\n };\n\n function scale(transform, k) {\n k = Math.max(scaleExtent[0], Math.min(scaleExtent[1], k));\n return k === transform.k ? transform : new Transform(k, transform.x, transform.y);\n }\n\n function translate(transform, p0, p1) {\n var x = p0[0] - p1[0] * transform.k, y = p0[1] - p1[1] * transform.k;\n return x === transform.x && y === transform.y ? transform : new Transform(transform.k, x, y);\n }\n\n function centroid(extent) {\n return [(+extent[0][0] + +extent[1][0]) / 2, (+extent[0][1] + +extent[1][1]) / 2];\n }\n\n function schedule(transition, transform, point, event) {\n transition\n .on(\"start.zoom\", function() { gesture(this, arguments).event(event).start(); })\n .on(\"interrupt.zoom end.zoom\", function() { gesture(this, arguments).event(event).end(); })\n .tween(\"zoom\", function() {\n var that = this,\n args = arguments,\n g = gesture(that, args).event(event),\n e = extent.apply(that, args),\n p = point == null ? centroid(e) : typeof point === \"function\" ? point.apply(that, args) : point,\n w = Math.max(e[1][0] - e[0][0], e[1][1] - e[0][1]),\n a = that.__zoom,\n b = typeof transform === \"function\" ? transform.apply(that, args) : transform,\n i = interpolate(a.invert(p).concat(w / a.k), b.invert(p).concat(w / b.k));\n return function(t) {\n if (t === 1) t = b; // Avoid rounding error on end.\n else { var l = i(t), k = w / l[2]; t = new Transform(k, p[0] - l[0] * k, p[1] - l[1] * k); }\n g.zoom(null, t);\n };\n });\n }\n\n function gesture(that, args, clean) {\n return (!clean && that.__zooming) || new Gesture(that, args);\n }\n\n function Gesture(that, args) {\n this.that = that;\n this.args = args;\n this.active = 0;\n this.sourceEvent = null;\n this.extent = extent.apply(that, args);\n this.taps = 0;\n }\n\n Gesture.prototype = {\n event: function(event) {\n if (event) this.sourceEvent = event;\n return this;\n },\n start: function() {\n if (++this.active === 1) {\n this.that.__zooming = this;\n this.emit(\"start\");\n }\n return this;\n },\n zoom: function(key, transform) {\n if (this.mouse && key !== \"mouse\") this.mouse[1] = transform.invert(this.mouse[0]);\n if (this.touch0 && key !== \"touch\") this.touch0[1] = transform.invert(this.touch0[0]);\n if (this.touch1 && key !== \"touch\") this.touch1[1] = transform.invert(this.touch1[0]);\n this.that.__zoom = transform;\n this.emit(\"zoom\");\n return this;\n },\n end: function() {\n if (--this.active === 0) {\n delete this.that.__zooming;\n this.emit(\"end\");\n }\n return this;\n },\n emit: function(type) {\n var d = select(this.that).datum();\n listeners.call(\n type,\n this.that,\n new ZoomEvent(type, {\n sourceEvent: this.sourceEvent,\n target: zoom,\n type,\n transform: this.that.__zoom,\n dispatch: listeners\n }),\n d\n );\n }\n };\n\n function wheeled(event, ...args) {\n if (!filter.apply(this, arguments)) return;\n var g = gesture(this, args).event(event),\n t = this.__zoom,\n k = Math.max(scaleExtent[0], Math.min(scaleExtent[1], t.k * Math.pow(2, wheelDelta.apply(this, arguments)))),\n p = pointer(event);\n\n // If the mouse is in the same location as before, reuse it.\n // If there were recent wheel events, reset the wheel idle timeout.\n if (g.wheel) {\n if (g.mouse[0][0] !== p[0] || g.mouse[0][1] !== p[1]) {\n g.mouse[1] = t.invert(g.mouse[0] = p);\n }\n clearTimeout(g.wheel);\n }\n\n // If this wheel event won’t trigger a transform change, ignore it.\n else if (t.k === k) return;\n\n // Otherwise, capture the mouse point and location at the start.\n else {\n g.mouse = [p, t.invert(p)];\n interrupt(this);\n g.start();\n }\n\n noevent(event);\n g.wheel = setTimeout(wheelidled, wheelDelay);\n g.zoom(\"mouse\", constrain(translate(scale(t, k), g.mouse[0], g.mouse[1]), g.extent, translateExtent));\n\n function wheelidled() {\n g.wheel = null;\n g.end();\n }\n }\n\n function mousedowned(event, ...args) {\n if (touchending || !filter.apply(this, arguments)) return;\n var currentTarget = event.currentTarget,\n g = gesture(this, args, true).event(event),\n v = select(event.view).on(\"mousemove.zoom\", mousemoved, true).on(\"mouseup.zoom\", mouseupped, true),\n p = pointer(event, currentTarget),\n x0 = event.clientX,\n y0 = event.clientY;\n\n dragDisable(event.view);\n nopropagation(event);\n g.mouse = [p, this.__zoom.invert(p)];\n interrupt(this);\n g.start();\n\n function mousemoved(event) {\n noevent(event);\n if (!g.moved) {\n var dx = event.clientX - x0, dy = event.clientY - y0;\n g.moved = dx * dx + dy * dy > clickDistance2;\n }\n g.event(event)\n .zoom(\"mouse\", constrain(translate(g.that.__zoom, g.mouse[0] = pointer(event, currentTarget), g.mouse[1]), g.extent, translateExtent));\n }\n\n function mouseupped(event) {\n v.on(\"mousemove.zoom mouseup.zoom\", null);\n dragEnable(event.view, g.moved);\n noevent(event);\n g.event(event).end();\n }\n }\n\n function dblclicked(event, ...args) {\n if (!filter.apply(this, arguments)) return;\n var t0 = this.__zoom,\n p0 = pointer(event.changedTouches ? event.changedTouches[0] : event, this),\n p1 = t0.invert(p0),\n k1 = t0.k * (event.shiftKey ? 0.5 : 2),\n t1 = constrain(translate(scale(t0, k1), p0, p1), extent.apply(this, args), translateExtent);\n\n noevent(event);\n if (duration > 0) select(this).transition().duration(duration).call(schedule, t1, p0, event);\n else select(this).call(zoom.transform, t1, p0, event);\n }\n\n function touchstarted(event, ...args) {\n if (!filter.apply(this, arguments)) return;\n var touches = event.touches,\n n = touches.length,\n g = gesture(this, args, event.changedTouches.length === n).event(event),\n started, i, t, p;\n\n nopropagation(event);\n for (i = 0; i < n; ++i) {\n t = touches[i], p = pointer(t, this);\n p = [p, this.__zoom.invert(p), t.identifier];\n if (!g.touch0) g.touch0 = p, started = true, g.taps = 1 + !!touchstarting;\n else if (!g.touch1 && g.touch0[2] !== p[2]) g.touch1 = p, g.taps = 0;\n }\n\n if (touchstarting) touchstarting = clearTimeout(touchstarting);\n\n if (started) {\n if (g.taps < 2) touchfirst = p[0], touchstarting = setTimeout(function() { touchstarting = null; }, touchDelay);\n interrupt(this);\n g.start();\n }\n }\n\n function touchmoved(event, ...args) {\n if (!this.__zooming) return;\n var g = gesture(this, args).event(event),\n touches = event.changedTouches,\n n = touches.length, i, t, p, l;\n\n noevent(event);\n for (i = 0; i < n; ++i) {\n t = touches[i], p = pointer(t, this);\n if (g.touch0 && g.touch0[2] === t.identifier) g.touch0[0] = p;\n else if (g.touch1 && g.touch1[2] === t.identifier) g.touch1[0] = p;\n }\n t = g.that.__zoom;\n if (g.touch1) {\n var p0 = g.touch0[0], l0 = g.touch0[1],\n p1 = g.touch1[0], l1 = g.touch1[1],\n dp = (dp = p1[0] - p0[0]) * dp + (dp = p1[1] - p0[1]) * dp,\n dl = (dl = l1[0] - l0[0]) * dl + (dl = l1[1] - l0[1]) * dl;\n t = scale(t, Math.sqrt(dp / dl));\n p = [(p0[0] + p1[0]) / 2, (p0[1] + p1[1]) / 2];\n l = [(l0[0] + l1[0]) / 2, (l0[1] + l1[1]) / 2];\n }\n else if (g.touch0) p = g.touch0[0], l = g.touch0[1];\n else return;\n\n g.zoom(\"touch\", constrain(translate(t, p, l), g.extent, translateExtent));\n }\n\n function touchended(event, ...args) {\n if (!this.__zooming) return;\n var g = gesture(this, args).event(event),\n touches = event.changedTouches,\n n = touches.length, i, t;\n\n nopropagation(event);\n if (touchending) clearTimeout(touchending);\n touchending = setTimeout(function() { touchending = null; }, touchDelay);\n for (i = 0; i < n; ++i) {\n t = touches[i];\n if (g.touch0 && g.touch0[2] === t.identifier) delete g.touch0;\n else if (g.touch1 && g.touch1[2] === t.identifier) delete g.touch1;\n }\n if (g.touch1 && !g.touch0) g.touch0 = g.touch1, delete g.touch1;\n if (g.touch0) g.touch0[1] = this.__zoom.invert(g.touch0[0]);\n else {\n g.end();\n // If this was a dbltap, reroute to the (optional) dblclick.zoom handler.\n if (g.taps === 2) {\n t = pointer(t, this);\n if (Math.hypot(touchfirst[0] - t[0], touchfirst[1] - t[1]) < tapDistance) {\n var p = select(this).on(\"dblclick.zoom\");\n if (p) p.apply(this, arguments);\n }\n }\n }\n }\n\n zoom.wheelDelta = function(_) {\n return arguments.length ? (wheelDelta = typeof _ === \"function\" ? _ : constant(+_), zoom) : wheelDelta;\n };\n\n zoom.filter = function(_) {\n return arguments.length ? (filter = typeof _ === \"function\" ? _ : constant(!!_), zoom) : filter;\n };\n\n zoom.touchable = function(_) {\n return arguments.length ? (touchable = typeof _ === \"function\" ? _ : constant(!!_), zoom) : touchable;\n };\n\n zoom.extent = function(_) {\n return arguments.length ? (extent = typeof _ === \"function\" ? _ : constant([[+_[0][0], +_[0][1]], [+_[1][0], +_[1][1]]]), zoom) : extent;\n };\n\n zoom.scaleExtent = function(_) {\n return arguments.length ? (scaleExtent[0] = +_[0], scaleExtent[1] = +_[1], zoom) : [scaleExtent[0], scaleExtent[1]];\n };\n\n zoom.translateExtent = function(_) {\n return arguments.length ? (translateExtent[0][0] = +_[0][0], translateExtent[1][0] = +_[1][0], translateExtent[0][1] = +_[0][1], translateExtent[1][1] = +_[1][1], zoom) : [[translateExtent[0][0], translateExtent[0][1]], [translateExtent[1][0], translateExtent[1][1]]];\n };\n\n zoom.constrain = function(_) {\n return arguments.length ? (constrain = _, zoom) : constrain;\n };\n\n zoom.duration = function(_) {\n return arguments.length ? (duration = +_, zoom) : duration;\n };\n\n zoom.interpolate = function(_) {\n return arguments.length ? (interpolate = _, zoom) : interpolate;\n };\n\n zoom.on = function() {\n var value = listeners.on.apply(listeners, arguments);\n return value === listeners ? zoom : value;\n };\n\n zoom.clickDistance = function(_) {\n return arguments.length ? (clickDistance2 = (_ = +_) * _, zoom) : Math.sqrt(clickDistance2);\n };\n\n zoom.tapDistance = function(_) {\n return arguments.length ? (tapDistance = +_, zoom) : tapDistance;\n };\n\n return zoom;\n}\n","export {default as zoom} from \"./zoom.js\";\nexport {default as zoomTransform, identity as zoomIdentity, Transform as ZoomTransform} from \"./transform.js\";\n","export * from \"d3-array\";\nexport * from \"d3-axis\";\nexport * from \"d3-brush\";\nexport * from \"d3-chord\";\nexport * from \"d3-color\";\nexport * from \"d3-contour\";\nexport * from \"d3-delaunay\";\nexport * from \"d3-dispatch\";\nexport * from \"d3-drag\";\nexport * from \"d3-dsv\";\nexport * from \"d3-ease\";\nexport * from \"d3-fetch\";\nexport * from \"d3-force\";\nexport * from \"d3-format\";\nexport * from \"d3-geo\";\nexport * from \"d3-hierarchy\";\nexport * from \"d3-interpolate\";\nexport * from \"d3-path\";\nexport * from \"d3-polygon\";\nexport * from \"d3-quadtree\";\nexport * from \"d3-random\";\nexport * from \"d3-scale\";\nexport * from \"d3-scale-chromatic\";\nexport * from \"d3-selection\";\nexport * from \"d3-shape\";\nexport * from \"d3-time\";\nexport * from \"d3-time-format\";\nexport * from \"d3-timer\";\nexport * from \"d3-transition\";\nexport * from \"d3-zoom\";\n","const t=t=>\"object\"==typeof t&&null!=t&&1===t.nodeType,e=(t,e)=>(!e||\"hidden\"!==t)&&(\"visible\"!==t&&\"clip\"!==t),n=(t,n)=>{if(t.clientHeight{const e=(t=>{if(!t.ownerDocument||!t.ownerDocument.defaultView)return null;try{return t.ownerDocument.defaultView.frameElement}catch(t){return null}})(t);return!!e&&(e.clientHeightre||r>t&&i=e&&s>=n?r-t-o:i>e&&sn?i-e+l:0,l=t=>{const e=t.parentElement;return null==e?t.getRootNode().host||null:e},r=(e,r)=>{var i,s,d,h;if(\"undefined\"==typeof document)return[];const{scrollMode:c,block:f,inline:u,boundary:a,skipOverflowHiddenElements:g}=r,p=\"function\"==typeof a?a:t=>t!==a;if(!t(e))throw new TypeError(\"Invalid target\");const m=document.scrollingElement||document.documentElement,w=[];let W=e;for(;t(W)&&p(W);){if(W=l(W),W===m){w.push(W);break}null!=W&&W===document.body&&n(W)&&!n(document.documentElement)||null!=W&&n(W,g)&&w.push(W)}const b=null!=(s=null==(i=window.visualViewport)?void 0:i.width)?s:innerWidth,H=null!=(h=null==(d=window.visualViewport)?void 0:d.height)?h:innerHeight,{scrollX:y,scrollY:M}=window,{height:v,width:E,top:x,right:C,bottom:I,left:R}=e.getBoundingClientRect(),{top:T,right:B,bottom:F,left:V}=(t=>{const e=window.getComputedStyle(t);return{top:parseFloat(e.scrollMarginTop)||0,right:parseFloat(e.scrollMarginRight)||0,bottom:parseFloat(e.scrollMarginBottom)||0,left:parseFloat(e.scrollMarginLeft)||0}})(e);let k=\"start\"===f||\"nearest\"===f?x-T:\"end\"===f?I+F:x+v/2-T+F,D=\"center\"===u?R+E/2-V+B:\"end\"===u?C+B:R-V;const L=[];for(let t=0;t=0&&R>=0&&I<=H&&C<=b&&x>=r&&I<=s&&R>=d&&C<=i)return L;const h=getComputedStyle(e),a=parseInt(h.borderLeftWidth,10),g=parseInt(h.borderTopWidth,10),p=parseInt(h.borderRightWidth,10),W=parseInt(h.borderBottomWidth,10);let T=0,B=0;const F=\"offsetWidth\"in e?e.offsetWidth-e.clientWidth-a-p:0,V=\"offsetHeight\"in e?e.offsetHeight-e.clientHeight-g-W:0,S=\"offsetWidth\"in e?0===e.offsetWidth?0:l/e.offsetWidth:0,X=\"offsetHeight\"in e?0===e.offsetHeight?0:n/e.offsetHeight:0;if(m===e)T=\"start\"===f?k:\"end\"===f?k-H:\"nearest\"===f?o(M,M+H,H,g,W,M+k,M+k+v,v):k-H/2,B=\"start\"===u?D:\"center\"===u?D-b/2:\"end\"===u?D-b:o(y,y+b,b,a,p,y+D,y+D+E,E),T=Math.max(0,T+M),B=Math.max(0,B+y);else{T=\"start\"===f?k-r-g:\"end\"===f?k-s+W+V:\"nearest\"===f?o(r,s,n,g,W+V,k,k+v,v):k-(r+n/2)+V/2,B=\"start\"===u?D-d-a:\"center\"===u?D-(d+l/2)+F/2:\"end\"===u?D-i+p+F:o(d,i,l,a,p+F,D,D+E,E);const{scrollLeft:t,scrollTop:h}=e;T=0===X?0:Math.max(0,Math.min(h+T/X,e.scrollHeight-n/X+V)),B=0===S?0:Math.max(0,Math.min(t+B/S,e.scrollWidth-l/S+F)),k+=h-T,D+=t-B}L.push({el:e,top:T,left:B})}return L};export{r as compute};//# sourceMappingURL=index.js.map\n","import{compute as e}from\"compute-scroll-into-view\";const o=e=>!1===e?{block:\"end\",inline:\"nearest\"}:(e=>e===Object(e)&&0!==Object.keys(e).length)(e)?e:{block:\"start\",inline:\"nearest\"};function t(t,n){if(!t.isConnected||!(e=>{let o=e;for(;o&&o.parentNode;){if(o.parentNode===document)return!0;o=o.parentNode instanceof ShadowRoot?o.parentNode.host:o.parentNode}return!1})(t))return;if((e=>\"object\"==typeof e&&\"function\"==typeof e.behavior)(n))return n.behavior(e(t,n));const r=\"boolean\"==typeof n||null==n?void 0:n.behavior;for(const{el:i,top:a,left:l}of e(t,o(n)))i.scroll({top:a,left:l,behavior:r})}export{t as default};//# sourceMappingURL=index.js.map\n"],"names":[],"sourceRoot":"","ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299]}