@dodlhuat/basix 1.2.5 → 1.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/css/style.css +67 -38
- package/css/style.css.map +1 -1
- package/css/style.min.css +1 -1
- package/css/style.min.css.map +1 -0
- package/css/virtual-dropdown.scss +107 -45
- package/js/virtual-dropdown.js +31 -4
- package/js/virtual-dropdown.ts +39 -5
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["reset.scss","properties.scss","colors.scss","defaults.scss","parameters.scss","grid.scss","typography.scss","card.scss","table.scss","alert.scss","form.scss","icons.scss","scrollbar.scss","button.scss","modal.scss","lightbox.scss","popover.scss","placeholder.scss","progress.scss","spinner.scss","toast.scss","push-menu.scss","checkbox.scss","radiobutton.scss","switch.scss","tooltip.scss","breadcrumb.scss","chips.scss","badge.scss","stepper.scss","tree.scss","datepicker.scss","flyout-menu.scss","tabs.scss","accordion.scss","timeline.scss","chat-bubbles.scss","carousel.scss","code-viewer.scss","file-uploader.scss","gallery.scss","dropdown.scss","virtual-dropdown.scss","timepicker.scss","range-slider.scss","editor.scss","bottom-sheet.scss","context-menu.scss","calendar.scss","group-picker.scss","chart.scss","sidebar-nav.scss","docs.scss"],"names":[],"mappings":"CAAA,2ZAaE,SACA,UACA,SACA,aACA,wBAEF,8EAEE,cAEF,KACE,cAEF,MACE,gBAEF,aACE,YAEF,wDAEE,aAEF,MACE,yBACA,iBCtCF,MACE,wBACA,0BACA,mBACA,uBACA,iBACA,2DACA,mBACA,6DACA,mBACA,6DACA,gCACA,sBACA,sBACA,wBACA,gCACA,kEACA,6BACA,oBACA,wBACA,yBACA,6BACA,qBACA,oBACA,qBACA,kBACA,sBAGF,kBACE,wBACA,0BACA,mBACA,uBACA,iBACA,2DACA,mBACA,6DACA,mBACA,6DACA,sBACA,sBACA,gCACA,wBACA,gCACA,kEACA,6BACA,oBACA,wBACA,yBACA,mCChDF,KACE,6BAGF,SACE,qBAGF,YACE,0BAGF,OACE,mBAGF,UACE,wBAGF,SACE,qBAGF,YACE,0BAGF,YACE,0BC5BF,UACE,cAGF,KACE,kBACA,YACA,WACA,iBAGF,EACE,eAGF,SACE,iBACA,kBACA,gBAGF,QACE,aAGF,aACE,YAGF,YACE,WAGF,OACE,cACA,WAGF,uBACE,mBACA,aAGF,yBACE,kBAGF,QACE,mBACA,uBACA,aAGF,UACE,0BACA,cACA,sBACA,cC3Dc,MD4Dd,iBACA,cAEA,uBACE,cACA,2BACA,uBClEY,MDmEZ,wBCnEY,MDoEZ,mBACA,0BACA,iBAGF,wBACE,aACA,yBAIJ,gBACE,eAGF,eACE,aCrFQ,KDwFV,MACE,aEvFF,KACE,aACA,mBACA,IDLQ,KCMR,cDNQ,KCQR,iBACE,kBAGF,aACE,OACA,YACA,QDfM,KCkBJ,oBACE,UAFS,EACX,oBACE,UAFS,EACX,oBACE,UAFS,EACX,oBACE,UAFS,EACX,oBACE,UAFS,EAMb,qBACE,UAGF,kBACE,gBAKN,qCACE,KACE,eACA,aACE,iBC9BN,WACE,qBACA,mEACA,kBAGF,KACE,gDACA,mCACA,kCACA,kCAGF,eACE,UFrBQ,KEsBR,gBACA,0BAGF,EACE,cAxBa,MA2Bf,KACE,4CACA,iBACA,uCACA,gCACA,mBACA,oBAGF,SACE,cACA,QFzCQ,KE0CR,gBACA,cF1Cc,ME2Cd,gBACA,YAGF,OACE,gBAGF,GACE,kBAGF,mCAKE,gBACA,0BACA,uBAGF,OACE,eACA,gBACA,uBACA,gBACA,iCAGF,OACE,mBACA,gBACA,iBACA,iCAGF,OACE,mBACA,gBACA,sBAGF,OACE,mBACA,uBACA,iBACA,sBAGF,OACE,eACA,gBACA,iBACA,gBACA,wBAGF,kBACE,mBACA,gBAGF,gBACE,4BAGF,cACE,iBACA,gBACA,4BACA,qBAGF,eACE,mBACA,gBACA,qBACA,yBACA,4BAGF,WACE,qCACA,mBACA,aA9Ha,MA+Hb,4BACA,kBAGF,KACE,0EACA,0BACA,oBACA,eAGF,MACE,4BACA,aA1Ia,OA2Ib,cA5ImB,eA+IrB,MACE,qBAEA,gCAGF,MACE,wBAEA,qCAGF,MACE,iBAGF,GACE,YACA,WACA,0BACA,aAlKa,OAqKf,EACE,0BACA,qBACA,gBACA,0BAEA,wBAEE,kCAGF,SACE,0BAGF,gBACE,sCACA,mBAIJ,aACE,kBC3LF,MACE,WHHO,6BGIP,uCACA,cHPc,MGQd,QHTQ,KGUR,kBACA,gBACA,aACA,sBAEA,UACE,mBAIF,mBACE,uCACA,8BACA,QHvBM,KG2BR,mBACE,oCACA,8BACA,QH9BM,KGmCV,WACE,gBACA,gCAGF,eACE,gCAGF,YACE,kDAEA,kBACE,oCACA,2BAKJ,mBACE,UAGF,iBACE,cAGF,iBACE,aC3DF,gBACE,aACA,8BACA,mBACA,cJRQ,KISR,eACA,WAIF,eACE,gBACA,gCACA,cJhBc,MIiBd,iCAGF,MACE,WACA,yBACA,gBACA,kBAGF,MACE,sCACA,uCAGF,GACE,oBACA,gBACA,iBACA,yBACA,qBACA,4BACA,eACA,iBACA,mBACA,iCAEA,SACE,8BAIJ,uCAEE,gBACA,kBACA,WAGF,mBACE,aAGF,oBACE,aAGF,GACE,oBACA,uCACA,0BAGF,iBACE,mBAGF,SACE,iCAEA,eACE,8BAKJ,YACE,aACA,8BACA,mBACA,WJxFQ,KIyFR,YJzFQ,KI0FR,oCACA,eACA,WAGF,iBACE,kBACA,4BAGF,oBACE,aACA,QAGF,UACE,qBACA,gCACA,yBACA,0BACA,cJ7Gc,MI8Gd,eACA,kBACA,yDAGA,+BACE,wBACA,mCAIJ,iBACE,qCACA,+BACA,iCAEA,sCACE,6CACA,yCAIJ,mBACE,WACA,mBAIF,yBACE,gBACE,sBACA,oBAGF,2BAME,cAGF,MACE,aAGF,SACE,gCACA,cJ/JY,MIgKZ,qBACA,eACA,6BAEA,eACE,8BAIJ,GACE,YACA,gBACA,aACA,8BACA,mBACA,iBACA,uCAGF,cACE,mBAGF,WACE,yBACA,gBACA,iBACA,yBACA,qBACA,4BACA,gBACA,oBAGF,eACE,aC7KJ,OACE,kBACA,cLxBc,MKyBd,4CACA,oCACA,0BACA,gBACA,gBAEA,cACE,iBAGF,cACE,gBACA,uBAGF,eACE,uCACA,iCACA,0BAGF,YAzCA,WA4CI,8DA3CJ,kBA0CI,oBAzCJ,0BAEA,mBACE,MAsCE,oBAnCJ,wBACE,KAkCE,oBA/BJ,+BACE,oEAmCF,eAhDA,WAmDI,yDAlDJ,kBAiDI,eAhDJ,0BAEA,sBACE,MA6CE,eA1CJ,2BACE,KAyCE,eAtCJ,kCACE,+DA0CF,eAvDA,WA0DI,yDAzDJ,kBAwDI,eAvDJ,0BAEA,sBACE,MAoDE,eAjDJ,2BACE,KAgDE,eA7CJ,kCACE,+DAiDF,aA9DA,WAiEI,uDAhEJ,kBA+DI,aA9DJ,0BAEA,oBACE,MA2DE,aAxDJ,yBACE,KAuDE,aApDJ,gCACE,6DAwDF,mBACE,mBAEA,gCACE,kBACA,QACA,aACA,2BACA,yBACA,YACA,cLpFU,MKqFV,eACA,qBACA,cACA,WACA,gDAEA,sCACE,UAKN,mBACE,YACA,aACA,mBACA,uBACA,kBAMA,8BAvGF,WA0GM,+DAzGN,kBAwGM,oBAvGN,0BAEA,qCACE,MAoGI,oBAjGN,0CACE,KAgGI,oBA7FN,iDACE,oEAiGA,iCA9GF,WAiHM,0DAhHN,kBA+GM,eA9GN,0BAEA,wCACE,MA2GI,eAxGN,6CACE,KAuGI,eApGN,oDACE,+DAwGA,iCArHF,WAwHM,0DAvHN,kBAsHM,eArHN,0BAEA,wCACE,MAkHI,eA/GN,6CACE,KA8GI,eA3GN,oDACE,+DA+GA,+BA5HF,WA+HM,wDA9HN,kBA6HM,aA5HN,0BAEA,sCACE,MAyHI,aAtHN,2CACE,KAqHI,aAlHN,kDACE,6DCZJ,6BACE,gCACA,+BACA,8BACA,+BACA,+BAGF,uBACE,KACE,UACA,wCAEF,GACE,UACA,kCAIJ,uBACE,KACE,UACA,2BAEF,GACE,UACA,yBAQJ,wCACE,WACA,kCACA,oBACA,iBACA,sBACA,mCACA,kBACA,UNjDQ,KMkDR,0BACA,WACE,4DAEF,WACE,gGAGF,aAEA,4FACE,4BACA,YACA,gBAGF,4OACE,yEACA,WACE,6DAIJ,gEACE,iCACA,WACE,gIAKJ,4EACE,6CACA,6BACA,4BACA,mBACA,gBACA,YAIJ,SACE,mBACA,sBAGF,OACE,iBACA,eAQA,wBACE,kBACA,mCAGF,iCACE,kCACA,iBACA,oBACA,eACA,6BACA,cACA,mBACA,WACE,4DAEF,WACE,qEAEF,iBAEA,uCACE,yEACA,WACE,6DAIJ,sFAEE,aACA,iCACA,WACE,gIAKJ,wCACE,mDACA,YACA,YACA,4BACA,4DACA,oBAIJ,gDACE,iCACA,WACE,qGAGF,uDACE,yBAIJ,gCACE,kBACA,qBACA,OACA,QACA,kCACA,oBACA,aACA,sBACA,WACA,iBACA,gBACA,mCACA,WACE,qDAEF,eACA,QACA,4BAGF,+BACE,qBACA,eACA,qBACA,+BACA,mBACA,kBAGF,qCACE,wBAGF,wCACE,oEACA,0BACA,gBAEA,+CACE,YACA,kBACA,aACA,QACA,2BACA,mBACA,cAIJ,+CACE,aACA,6DAGF,sBACE,aAGF,yBACE,qCACE,eACA,MACA,OACA,WACA,6BACA,0BACA,kBACA,kBACA,kDACA,gBACA,UN5OI,KM6OJ,uCACA,2BACA,mCACA,WACA,qBAEA,4DACE,kBACA,WACA,QACA,2BACA,eACA,0BACA,mBACA,gBACA,iBAIJ,gCACE,eACA,MACA,OACA,QACA,SACA,YACA,gBACA,UACA,kDACA,2CACA,oBACA,gBACA,gBACA,mCACA,MAGF,+BACE,kBACA,uCACA,gBACA,oBAEA,+CACE,WACA,oBAUR,YACE,aACA,sBACA,UAEA,kBACE,mBACA,gBACA,0BACA,sBAGF,uBACE,aACA,uBACA,UACA,iBACA,gBACA,4BACA,iBAEA,+BACE,WACA,aACA,cACA,WACA,YACA,kBACA,gBACA,gBACA,gBACA,iBACA,kBACA,WAKF,4EACE,0BACA,wEACA,WACE,4DAEF,2EAEA,8FACE,0BACA,WACE,8FAKN,6BACE,mBACA,oCAEA,qCACE,YACA,cACA,wBACA,UAMJ,kFACE,4BAEA,oGACE,4BACA,WACE,gGAKN,+BACE,qBACA,oCAEA,uCACE,YACA,cACA,0BACA,UAUR,aACE,aAEA,mBACE,OACA,YAGF,0BACE,aACA,mBACA,iBACA,6CACA,kCACA,4BACA,UNpZM,KMqZN,mBACA,6CACA,gBACA,qBAEA,sCACE,kBACA,8BAEA,4CACE,yBACA,4BAIJ,qCACE,iBACA,8BAIJ,oCACE,kBACA,0BACA,6BAQJ,mCACE,6CACA,4BACA,eACA,gBACA,oBAOF,iCACE,kBACA,kBACA,gBACA,qBAGF,iCACE,kBACA,mBACA,iBACA,oBC3cF,WACE,6CACA,kEAIF,MACE,mDACA,kBACA,mBACA,oBACA,oBACA,cACA,eACA,mCACA,kCAIF,qBACE,YAGF,qBACE,YAGF,uCACE,YAGF,8BACE,YAGF,uBACE,YAGF,oBACE,YAGF,2BACE,YAGF,oBACE,YAGF,sBACE,YAGF,sBACE,YAGF,mBACE,YAGF,uBACE,YAGF,sBACE,YAGF,uBACE,YAGF,sBACE,YAGF,kCACE,YAGF,0BACE,YAGF,oBACE,YAGF,kCACE,YAGF,6BACE,YAGF,mCACE,YAGF,sBACE,YAGF,mBACE,YAGF,qBACE,YAGF,yBACE,YAGF,0BACE,YAGF,mBACE,YAGF,0BACE,YAGF,0BACE,YAGF,oBACE,YAGF,mBACE,YAGF,uBACE,YAGF,oBACE,YAGF,yBACE,YAGF,6BACE,YAGF,mCACE,YAGF,yBACE,YAGF,wBACE,YAGF,8BACE,YAGF,4BACE,YAGF,yCACE,YAGF,0CACE,YAGF,yBACE,YAGF,wBACE,YAGF,0BACE,YAGF,0BACE,YAGF,0BACE,YAGF,2BACE,YAGF,uBACE,YAGF,mCACE,YAGF,mCACE,YAGF,oBACE,YAGF,qBACE,YAGF,kBACE,YAGF,oBACE,YAGF,0BACE,YAGF,4BACE,YAGF,gCACE,YAGF,mBACE,YAGF,uBACE,YAGF,mBACE,YAGF,qBACE,YAGF,oBACE,YAGF,oBACE,YAGF,oBACE,YAGF,mBACE,YAGF,iCACE,YAGF,uBACE,YAGF,wBACE,YAGF,+BACE,YAGF,2BACE,YAGF,uBACE,YAGF,uBACE,YAGF,qBACE,YAGF,wBACE,YAGF,mBACE,YAGF,oBACE,YAGF,mBACE,YCtUF,MACE,oBACA,oBACA,kBACA,iBAGF,kBACE,kBACA,uCACA,cRZc,MQad,WRXO,6BQYP,gBAEA,4BACE,YACA,WACA,cACA,sBAEA,qCACE,SACA,yDAIJ,+CACE,QACA,SAGF,4BACE,qBACA,wBAGF,6BACE,kBACA,qBACA,uBACA,wBACA,yBACA,oBAGF,yBACE,kBACA,YACA,WACA,kCACA,yBACA,oBACA,+BAGA,+BACE,wBAEA,sCACE,WACA,sBAKN,yBACE,kBACA,OACA,QACA,MACA,YACA,kCACA,iCACA,WACA,eACA,oBACA,kBAGA,sBACA,8BACA,WACE,0GAIF,yCAIF,+BACE,YACA,sBAIF,sCACE,WACA,sBAIF,8BACE,gBAEA,qCACE,mEAGF,qCACE,UACA,oBACA,+BACA,8EACA,gBACA,WACE,2GC3FR,eAEE,oBACA,mBACA,uBACA,mBACA,sBACA,cTlCc,MSmCd,uCACA,0BACA,YACA,eACA,oBACA,kBACA,gBACA,cACA,mBACA,wEAEA,yDACE,0BAGF,2DACE,sBAGF,2CACE,aACA,8EAGF,6BACE,0BACA,0BAGF,iCACE,YACA,mBAGF,qCACE,oBACA,kBACA,+BAEA,mDACE,WACA,kBACA,YACA,aACA,8BACA,+BACA,kBACA,kDACA,0BAGF,yCACE,kBAaJ,oSACE,wBAIJ,sCAtGE,WAwGwB,oBAvGxB,wBAEA,gFACE,8DAGF,kFACE,8DAmGJ,sCA3GE,WA6GwB,eA5GxB,wBAEA,gFACE,yDAGF,kFACE,yDAwGJ,sCAhHE,WAkHwB,eAjHxB,wBAEA,gFACE,yDAGF,kFACE,yDA6GJ,kCArHE,WAuHwB,aAtHxB,wBAEA,4EACE,uDAGF,8EACE,uDAkHJ,cACE,oBAEA,2CAEE,gBACA,kBAEA,2FACE,WACA,kBACA,QACA,QACA,WACA,UACA,6DAGF,mEACE,8BAGF,iEACE,8BAGF,iEACE,cTxJU,MSgKZ,6FACE,0BAIJ,0EArJA,0BAEA,oHACE,8DAGF,sHACE,8DAmJF,0EA1JA,0BAEA,oHACE,yDAGF,sHACE,yDAwJF,0EA/JA,0BAEA,oHACE,yDAGF,sHACE,yDA6JF,sEApKA,0BAEA,gHACE,uDAGF,kHACE,uDA0KA,obACE,0BChMN,eACE,eACA,QACA,YACA,oBAEA,0BACE,oBAEA,4CACE,UAGF,iCACE,UACA,oBACA,yCAKN,kBACE,kBACA,QACA,2BACA,UACA,0BACA,kCACA,4BAGF,OACE,6BACA,gCACA,oBACA,kEACA,QVvCQ,KUwCR,eACA,QACA,SACA,aACA,UACA,gBACA,gBACA,kBACA,gBACA,UACA,oBACA,4CACA,iDAEA,cACE,kBACA,IVxDM,KUyDN,MVzDM,KU0DN,eACA,UACA,4BACA,2BAEA,oBACE,0BAIJ,eACE,wBACA,QVtEM,KUuEN,uCACA,8BAGF,eACE,wBACA,QV7EM,KU8EN,oCACA,8BACA,aACA,yBAEA,wBACE,aACA,UAKN,qCACE,iCACE,wBAGF,OACE,SACA,SACA,OACA,QACA,WACA,eACA,gBACA,gCACA,mBACA,2BACA,wDAEA,eACE,gCAGF,eACE,iBC9GN,kBACE,eACA,QACA,YACA,oBACA,aACA,mBACA,uBAEA,6BACE,oBAEA,kDACE,UAGF,uCACE,UACA,mBAGF,qIAGE,UAKN,qBACE,kBACA,QACA,2BACA,UACA,0BACA,kCACA,4BAGF,gBACE,kBACA,IX5CQ,KW6CR,MX7CQ,KW8CR,aACA,aACA,mBACA,uBACA,cACA,eACA,YACA,kBACA,+BACA,yBACA,eACA,UACA,+DACA,0CAEA,sBACE,kBACA,cAGF,sBACE,+BACA,WAGF,8BACE,qCACA,mBAIJ,UACE,kBACA,aACA,aACA,sBACA,mBACA,2BACA,UACA,sBACA,iDAGF,mBACE,kBACA,aACA,mBACA,uBACA,eACA,gCACA,eACA,oBACA,gBACA,+BAEA,8BACE,eACA,gBAEA,4CACE,UAGF,gDACE,aAIJ,4BACE,gBACA,gBACA,eAEA,0CACE,aAGF,8CACE,aAGF,mCACE,+BACA,yBACA,kBACA,aAIJ,6BACE,gBACA,cACA,iBACA,gBAIJ,kBACE,kBACA,QACA,aACA,mBACA,uBACA,UAGA,2BACE,iCACA,oCAIJ,cACE,cACA,eACA,gCACA,mBACA,UACA,6BACA,oBACA,iBACA,uBAEA,wBACE,UAGF,wBACE,eACA,gBACA,gBAIJ,kBACE,iBACA,yBACA,kBACA,kBACA,eACA,gBAGF,kBACE,iBACA,yBACA,iBACA,qBACA,kBACA,iBAIF,8BAEE,eACA,QACA,2BACA,aACA,aACA,mBACA,uBACA,aACA,cACA,YACA,kBACA,2BACA,0BACA,kCACA,0BACA,eACA,UACA,mEAGA,0CAEA,0CACE,iBACA,cAGF,0CACE,2BAGF,4CACE,uCAGF,0DACE,qCACA,mBAIJ,oBXlPU,KWmPV,qBXnPU,KWqPV,yBACE,8BAEE,WACA,YAEA,4DAGF,0BACA,2BAEA,UACE,gBAGF,iCAEE,iBACA,cXvQY,MW0Qd,gBACE,WACA,cCxQJ,SACE,eACA,YACA,6BACA,gCACA,mBACA,WACE,0FAGF,gBACA,gBACA,UACA,oBAGA,kGACA,mGACA,kGACA,mGAGA,4EACA,2EACA,4EACA,2EAzBF,SA2BE,WACE,8DAGF,iBACE,UACA,oBACA,0BAMA,mEAEE,WACA,kBACA,QACA,SACA,oBAKA,yDACE,SACA,sCACA,2BACA,+BACA,mBACA,mCAEF,wDACE,SACA,sCACA,2BACA,+BACA,mBACA,sCAMF,sDACE,YACA,sCACA,2BACA,+BACA,sBACA,gCAEF,qDACE,YACA,sCACA,2BACA,+BACA,sBACA,mCAMF,wDACE,UACA,qCACA,2BACA,+BACA,oBACA,kCAEF,uDACE,UACA,qCACA,2BACA,+BACA,oBACA,qCAMF,uDACE,WACA,qCACA,2BACA,+BACA,qBACA,iCAEF,sDACE,WACA,qCACA,2BACA,+BACA,qBACA,oCAQR,gBACE,oBACA,uCACA,gBACA,kBACA,0BACA,aACA,mBACA,8BACA,UACA,4BAGF,cACE,oBACA,0BACA,kBACA,gBAGF,gBACE,oBACA,oCACA,aACA,yBACA,UACA,4BAKF,cACE,kBAEA,iCACE,aACA,mBACA,UACA,oBACA,kBACA,0BACA,eACA,gDACA,iBAEA,+DAEA,gDACE,mBACA,kHAIJ,oCACE,WACA,0BACA,iBAGF,kCACE,yBACA,gBACA,gBACA,qBACA,yBACA,4BCxMJ,aACE,qBACA,YACA,kBACA,mBACA,cbPc,MaQd,2GAMA,0BACA,wDAGE,iBACE,oBADF,iBACE,qBADF,iBACE,UADF,iBACE,qBADF,iBACE,qBADF,iBACE,UADF,iBACE,qBADF,iBACE,qBADF,iBACE,UADF,kBACE,qBADF,kBACE,qBADF,kBACE,WAKN,+BACE,GACE,2BAEF,KACE,6BCzBJ,UACE,WACA,WACA,uCACA,cdRc,McSd,gBAGF,cACE,YACA,cddc,Mced,+BACA,0BACA,YAGA,oDACA,gDACA,gDACA,4CAGA,uBACE,qBACA,+BACA,2DAIJ,kCACE,+BACA,iCAKF,4BACE,8BACA,kCAGF,0CACE,wHAMA,0BACA,qDACA,cdtDc,McuDd,cAOF,eAEE,aACA,WAGF,iBAEE,WACA,YACA,kBACA,cCvEF,SACE,aACA,cACA,gCACA,qCACA,kBACA,qBACA,kDAEA,eACE,cACA,eACA,iBAGF,eACE,aACA,cACA,iBAIJ,0BACE,GACE,0BAIJ,SACE,oBACA,mBACA,UAEA,+CAGE,WACA,YACA,aACA,kBACA,qCACA,kDAGF,cACE,qBAGF,gBACE,oBAIJ,yBACE,YACE,YACA,qBAEF,IACE,UACA,oBC5DJ,OACE,aACA,sBACA,eACA,OhBPQ,KgBQR,KhBRQ,KgBSR,MhBTQ,KgBUR,gBACA,cACA,6BACA,oBACA,mEACA,oBACA,aACA,gBACA,wCACA,UACA,6EAGA,YACE,kBACA,MACA,OACA,WACA,WACA,+BACA,0BACA,8BAGF,YACE,wBACA,UAGF,oBACE,0BAGF,oBACE,0BAGF,kBACE,wBAGF,cACE,eACA,kBACA,WACA,aACA,aACA,mBACA,uBACA,aACA,cACA,chB5DY,MgB6DZ,iCAEA,oBACE,uCAIJ,eACE,qBACA,8BACA,gBAGF,gBACE,SACA,4BACA,kBACA,gBCtEJ,cACE,eACA,MACA,OACA,MAVW,MAWX,YACA,gBACA,4BACA,sGAEA,WAEA,qBACE,wBACA,sCAIJ,cACE,wDACA,sBAEA,qBACE,mCAUJ,iBACE,kBACA,QACA,+BACA,2BACA,wDACA,gBACA,kBACA,iCACA,sBAEA,2BACE,wBAGF,yBACE,2BAMJ,oCACE,mBACA,ejBlEQ,KiBmER,SACA,gBACA,WAKF,wBACE,aACA,mBACA,WACA,mCACA,4CACA,gBACA,MACA,+BACA,UACA,eACA,0CACA,iCAEA,8BACE,+BAEA,8CACE,+BACA,WAIJ,+BACE,+BAEA,+CACE,sBAKN,gBACE,aACA,mBACA,uBACA,cACA,cACA,eACA,oBACA,YACA,+BACA,0BACA,oBACA,uEAGF,uBACE,0BACA,gBACA,gBACA,qBACA,yBACA,mBACA,gBACA,uBAKF,0CACE,gBACA,SACA,gBACA,WAKF,OACE,SAIF,sBAEE,+BACA,gBACA,gBACA,qBACA,qBACA,yBACA,aACA,mBACA,sBACA,0EAEA,0CACA,eACA,WACA,sBACA,iBAEA,kCACE,WACA,+BAGF,oCACE,8BAIJ,sCAEE,0CAKF,mBACE,iBACA,cACA,aACA,mBACA,YACA,2EAIF,yCACE,WACA,0BAKF,qBACE,oBAEA,2BACE,cACA,aACA,YACA,0BACA,kBACA,MACA,OACA,YACA,eACA,0CAGF,0CACE,aAMJ,oBACE,eACA,QACA,0BACA,UACA,kBACA,oGAEA,UACA,0CAEA,2BACE,UACA,mBAMJ,aACE,eACA,uCACA,WACA,QACA,+IAGA,YACA,aACA,UACA,IjB9PQ,KiB+PR,uCACA,MAEA,6BACE,YjBnQM,KiBsQR,4BACE,ajBvQM,KiB0QR,iBACE,aACA,mBACA,iBAGF,mBACE,iBAGF,oBACE,yBAGF,kCACE,cAEA,wCACE,cACA,kBACA,mBACA,cACA,eACA,cjBhSU,MiBiSV,iCAEA,+CACE,2BAIJ,qEACE,OCvSN,iBACE,kBACA,UACA,WAEA,uBACE,kBACA,eACA,UACA,aACA,oBAGF,+BACE,WACA,kBACA,qBACA,cACA,MlBrBM,KkBsBN,OlBtBM,KkBuBN,gCACA,oBACA,mCACA,eACA,kFAGF,qCACE,iCAGF,6CACE,8EACA,iCAGF,uCACE,qCACA,iCAGF,sCACE,WACA,kBACA,uBACA,sBACA,aACA,aACA,4BACA,6BACA,8CAGF,gCACE,4BACA,mBAGF,wCACE,6CACA,6BACA,gBAGF,gDACE,iCACA,6BC/DJ,wBACE,cACA,kBACA,kBACA,mBACA,oBACA,eACA,UnBbQ,KmBcR,iBAEA,8BACE,kBACA,UACA,QACA,SACA,eAEA,iDACE,iCAEA,wDACE,yCACA,UAIJ,uDACE,8EACA,iCAGF,kDACE,6BACA,mBAEA,yDACE,2BAIJ,0DACE,6BAIJ,4EACE,iCAGF,4CACE,mBACA,4BAGF,mCACE,kBACA,QACA,OACA,OA7DS,QA8DT,MA9DS,QA+DT,mCACA,kBACA,gCACA,uDAEA,0CACE,WACA,kBACA,QACA,SACA,yCACA,UACA,MA1EW,OA2EX,OA3EW,OA4EX,kBACA,+BACA,iDC9EJ,6BACE,kBACA,UACA,WAGF,cACE,eACA,WACA,cACA,iCACA,cACA,qBACA,kBACA,mBACA,mBAGF,qBACE,WACA,kBACA,WACA,SACA,MpB3BM,KoB4BN,OpB5BM,KoB6BN,uCACA,kBACA,eAGF,4BACE,+BAGF,mCACE,sBACA,4BCrCJ,SACE,6BACA,eACA,cACA,0BACA,0BACA,crBRc,MqBSd,oBACA,gBACA,gBACA,gBACA,sBACA,UACA,oBACA,sCACA,+CAEA,sDACA,0DACA,uDACA,yDAEA,iBACE,UACA,uBAIF,iBACE,WACA,kBACA,QACA,SACA,+BAGF,oCACE,YACA,SACA,2BACA,mCACA,mBAGF,uCACE,SACA,SACA,2BACA,sCACA,gBAGF,qCACE,WACA,QACA,2BACA,oCACA,kBAGF,sCACE,UACA,QACA,2BACA,qCACA,iBAIF,sBACE,kCACA,+BACA,+BAGF,yBACE,6BACA,0BACA,wBAGF,yBACE,6BACA,0BACA,wBAGF,uBACE,2BACA,wBACA,wBAIF,uBACE,gBACA,kBACA,oBAIF,cACE,gBACA,oCACA,eACA,+BACA,oBCvGF,eACE,aACA,mBACA,eACA,eACA,gBACA,SACA,UAGF,eACE,aACA,mBACA,YAGA,0BACE,YACA,6CACA,mBACA,cACA,qBACA,cACA,iBACA,oBAGF,iBACE,aACA,mBACA,UACA,mBACA,gBACA,4BACA,qBACA,uBACA,oBACA,mBACA,gDAEA,uBACE,eAGF,uBACE,0BACA,uCAGF,+BACE,sCACA,oBACA,oBAKJ,uCACE,cACA,mBACA,gBACA,0BACA,uBACA,mBACA,gBACA,uBACA,eAMF,yBACE,oDACE,aAIF,qEACE,cACA,oBACA,kBACA,qBACA,qBACA,mBAQR,aACE,2BAEA,yBACE,oBAGF,wBACE,aACA,uBACA,ItB5GM,KsB8GN,4NAEE,SACA,OACA,YAIJ,sBACE,aACA,mBACA,UACA,cACA,kBAGF,0BACE,mBACA,iBACA,kBACA,iBACA,4BAIF,uBACE,uCACA,uBACA,qBAGF,yBACE,wBACE,eAGF,sBACE,WACA,mBAEA,2DAEE,OACA,wBCtJR,OACE,aACA,eACA,WAEA,aACE,oBACA,mBACA,WACA,uCACA,0BACA,qBACA,qBACA,mBACA,gBACA,gBACA,qBACA,mBACA,+BACA,kBACA,6FAEA,uBACE,eAEA,6BACE,0BAGF,8BACE,sBAGF,qCACE,aACA,8EAIJ,uBACE,qBAEA,8BACE,kBACA,YACA,QACA,2BACA,oBACA,mBACA,uBACA,UACA,yBACA,4BACA,SACA,cACA,aACA,kBACA,eACA,gDAEA,oCACE,oEACA,0BAGF,qCACE,oEAGF,4EAEE,gBACA,YACA,aAMN,oBACE,0EACA,0BACA,sEAEA,2CACE,oEACA,0BAKJ,qBACE,qEACA,qBACA,iEAEA,4CACE,+DACA,qBAKJ,qBACE,qEACA,qBACA,iEAEA,4CACE,+DACA,qBAKJ,mBACE,mEACA,mBACA,+DAEA,0CACE,6DACA,mBAKJ,qBACE,yBACA,4BACA,4BAEA,qCACE,wBACA,yECjIR,OACE,oBACA,mBACA,UACA,qBACA,qBACA,iBACA,gBACA,gBACA,qBACA,mBACA,sBACA,+BAGA,uCACA,4BAEA,YAtBA,WAyBI,+DAxBJ,MAuBI,oBAGF,sEAGF,eA9BA,WAiCI,0DAhCJ,MA+BI,eAGF,iEAGF,eAtCA,WAyCI,0DAxCJ,MAuCI,eAGF,iEAGF,aA9CA,WAiDI,wDAhDJ,MA+CI,aAGF,+DAKA,6FACA,2FACA,2FACA,uFAIF,eACE,yBACA,4BACA,4BAEA,qFACA,8EACA,8EACA,wEAIF,UACE,qBACA,mBAGF,UACE,sBACA,kBAIF,WACE,YACA,aACA,UACA,kBACA,0BACA,YAEA,qDACA,mDACA,mDACA,+CC/FJ,yBACE,+EACA,uCACA,uCAGF,4BACE,kCACA,0BACA,mCAGF,gCACE,sBACA,0BACA,yBAGF,SACE,aACA,uBAGF,cACE,aACA,sBACA,mBACA,UACA,cAGF,mBACE,MAnCe,KAoCf,OApCe,KAqCf,kBACA,aACA,mBACA,uBACA,cACA,mBACA,gBACA,cACA,gCACA,6BACA,4BACA,WACE,6EAIF,kBACA,UAEA,6BACE,WACA,YAIJ,eACE,aACA,sBACA,mBACA,kBACA,YAGF,eACE,mBACA,gBACA,4BACA,iDACA,mBAGF,cACE,mBACA,4BACA,WACA,mBACA,6BAIF,mBACE,OACA,OAxFoB,IAyFpB,gCACA,UzB9FQ,KyB+FR,0BACA,cA5FoB,IA6FpB,kBACA,gBAEA,0BACE,WACA,kBACA,QACA,+BACA,oBACA,sBACA,uDAGF,oCACE,oBAOA,wCACE,iCACA,0EACA,0BACA,+CAGF,oCACE,0BACA,gBAGF,mCACE,WAKF,2CACE,iCACA,+BACA,WACA,6CAEA,qDACE,kDAIJ,uCACE,0BAKF,uCACE,0BACA,mEACA,mBACA,eAGF,mCACE,mBAGF,kCACE,mBACA,WAMN,kBACE,sBAEA,gCACE,mBACA,uBACA,IzBlLM,KyBqLR,iCACE,uBACA,gBACA,qCAGF,qCACE,MAxLkB,IAyLlB,YACA,kBACA,gBACA,WACA,aACA,iCACA,sBACA,cAhMkB,IAkMlB,4CACE,oBACA,qBAGF,sDACE,oBAQF,mFAEE,eAEA,yHACE,WACE,gGAOJ,qIACE,sBACA,8EAGF,uIACE,sBAMR,yBAEI,+CACE,aAGF,mDACE,iBCjPN,QACE,gBAEA,WACE,gBAIJ,WACE,kBACA,gBAGF,WACE,kBACA,aACA,mBACA,gBACA,qBACA,eACA,iBACA,gBACA,+BACA,oBACA,qDACA,0CAEA,mBACE,WACA,kBACA,QACA,uCACA,UACA,4BAGF,wCACE,UAGF,oBACE,+BACA,iCAEA,gCACE,+BAGF,mCACE,gCAIJ,2CACE,wBAGF,4BACE,4BACA,gBAIJ,WACE,kBACA,UACA,WACA,YACA,oBACA,aACA,mBACA,uBACA,cAEA,eACE,WACA,YACA,2BACA,eACA,UACA,uDAIJ,YACE,kBACA,UACA,OACA,gFACA,mBACA,gBACA,sBACA,0BAGF,eACE,gBACA,Y1BpGQ,K0BqGR,a1BrGQ,K0BsGR,qCACA,SACA,gBACA,UACA,uEAEA,wBACE,UACA,kBACA,qBAIJ,yBACE,WACE,kBACA,Q1BtHM,K0ByHR,WACE,WACA,YAGF,YACE,U1B/HM,K0BkIR,eACE,mBACA,qBCjIJ,WACE,gBACA,cAGF,YACE,6BACA,gCACA,c3BVc,M2BWd,YACA,aACA,iBACA,W3BZO,6B2BaP,aACA,kBACA,aACA,sBAGF,oBACE,cAGF,mBACE,aACA,8BACA,mBACA,mBAGF,gBACE,gBACA,YACA,eACA,cACA,c3BrCc,M2BsCd,0BACA,gCAGF,sBACE,6CACA,+BAGF,kBACE,aACA,UACA,gBAGF,mBACE,YACA,gBACA,oBACA,gBACA,eACA,eACA,eACA,qBAGF,yBACE,6CAGF,iBACE,aACA,qCACA,WACA,kBAGF,uBACE,kBACA,wBACA,gBACA,gBAGF,gBACE,gBACA,U3BrFQ,K2BsFR,eACA,c3BtFc,M2BuFd,mBAGF,qCACE,6CAGF,4BACE,sBAGF,yBACE,qCACA,+BAGF,yBACE,6CACA,+BACA,gBAGF,4BACE,qCACA,+BACA,uB3BhHc,M2BiHd,0B3BjHc,M2BoHhB,0BACE,qCACA,+BACA,wB3BvHc,M2BwHd,2B3BxHc,M2B2HhB,sBACE,iBACA,0BAGF,+BACE,+BAGF,+CAEE,aACA,qCACA,UACA,kBACA,gBAGF,mCAEE,sBACA,gBACA,eACA,c3BlJc,M2BmJd,mBAGF,+CAEE,6CAGF,qDAEE,qCACA,+BAGF,mDAEE,iBACA,0BAGF,qEAEE,+BAGF,sBACE,gBACA,YACA,oBACA,gBACA,U3BlLQ,K2BmLR,eACA,qBACA,c3BpLc,M2BqLd,0BACA,gCAGF,4BACE,6CAIF,iBACE,aACA,mBACA,8BACA,oCACA,W3BpMQ,K2BqMR,Y3BrMQ,K2BwMV,uBACE,kBACA,gBACA,0BAGF,0BACE,aACA,mBACA,WAGF,2BACE,iBACA,gBACA,0BACA,kBAGF,yBACE,aACA,sBACA,mBACA,YAGF,qBACE,gBACA,gCACA,c3BpOc,M2BqOd,eACA,sBACA,gBACA,cACA,0BACA,gCAEA,2BACE,6CACA,+BAIJ,yBACE,aACA,kBACA,eACA,gBACA,oBACA,gCACA,c3BzPc,M2B0Pd,iBACA,6BACA,0BACA,0BAEA,wGAEE,wBACA,SAGF,+BACE,sCACA,oBAKJ,oBACE,WACA,mBACA,W3BhRQ,K2BiRR,qCACA,+BACA,YACA,c3BnRc,M2BoRd,oBACA,kBACA,gBACA,eACA,uBAEA,0BACE,WAKJ,yBACE,qBACE,eACA,MACA,OACA,WACA,YACA,0BACA,YACA,aAGF,6BACE,cAGF,mBACE,eACA,SACA,SACA,OACA,WACA,eACA,8BACA,W3BtTK,6B2BuTL,+BACA,0BAGF,mBACE,KACE,2BAGF,GACE,yBAIJ,YACE,WACA,gBAGF,gBACE,kBC3UJ,wDAIE,uBACA,mCACA,0CAGF,MACE,oBACA,yBAGF,EACE,sBACA,SACA,UAGF,KACE,kBACA,iBAIF,aACE,aACA,8BACA,mBACA,oBACA,kBACA,WAGF,MACE,iBACA,gBACA,uBAGF,cACE,gBACA,YACA,yBACA,eACA,cACA,yBAGF,oBACE,qBACA,0BAGF,cACE,aACA,sBACA,mBACA,uBACA,YACA,kBACA,aAGF,iBACE,eACA,mBACA,uDACA,qBACA,6BACA,sCAGF,gBACE,cACA,iBAIF,gBACE,eACA,MACA,OACA,WACA,YACA,0BACA,0BACA,UACA,kBACA,8EACA,YAGF,2BACE,UACA,mBAIF,aACE,eACA,4BACA,2BACA,mCACA,YACA,aACA,sBACA,aACA,mCACA,2EAKF,mBACE,MACA,QACA,wBACA,YACA,2CACA,2BAGF,kBACE,MACA,OACA,wBACA,YACA,4CACA,4BAGF,qBACE,0BAIF,eACE,aACA,8BACA,mBACA,mBAGF,cACE,kBACA,gBACA,cACA,yBACA,oBAGF,YACE,gBACA,YACA,yBACA,eACA,cACA,mCAGF,kBACE,wBACA,0BAIF,cACE,gBACA,YAGF,iBACE,qBACA,gBAGF,gCAEE,aACA,mBACA,8BACA,WACA,gBACA,YACA,eACA,gBACA,yBACA,qBACA,eACA,oBACA,UACA,2BACA,iEACA,8BACA,gBAGF,0EAEE,wBAGF,4CAEE,0BAGF,SACE,yBACA,WAGF,gCACE,yBAIF,SACE,gBACA,aACA,gBACA,mCACA,kBACA,yCACA,aAGF,iBACE,iBAGA,gBACA,wDAIF,YACE,oBAGF,WACE,kBACA,gBACA,cACA,0BAEA,+BAGF,yBACE,kBACA,gBACA,cACA,0BACA,+BACA,UACA,SAIF,eACE,iBACA,0CACA,cACA,gBACA,UACA,2BACA,qCACA,8BAGF,oCACE,UACA,wBAIF,yBACE,MACE,mBAGF,iBACE,eAIF,sDAGE,sBACA,uBACA,iBACA,kBACA,sBACA,uBACA,uBAEA,uDAEA,uCAKF,sDAGE,uCAGF,qBACE,qCAIF,+BACE,sBACA,oBACA,MAGF,kCACE,qBAGF,sFAEE,eAEA,8BAGF,0BACE,gBACA,eACA,aACA,eACA,gBACA,YACA,yBACA,kBACA,yCACA,gBAGF,kCACE,eACA,gBAGF,4BACE,kBACA,+BCnWJ,gBACE,aACA,sBACA,gBAEA,mBACE,gBAGF,8BACE,mBACA,iBAIJ,aACE,uCAGF,WACE,aACA,SACA,UACA,gBACA,qBAEA,8BACE,aAIJ,UACE,uBACA,eACA,kBACA,gBACA,4BACA,mBACA,iBACA,kDACA,sCAEA,gBACE,0BAGF,iBACE,0BACA,gBACA,wCAIJ,cACE,eAGF,WACE,aAEA,kBACE,cAKF,2CACE,mBACA,sCACA,gBAGF,yCACE,sBAGF,wCACE,WACA,sBACA,mBACA,oCAEA,+CACE,sCACA,gBAIJ,4CACE,OAOF,wCACE,mBACA,qBAGF,sCACE,YAGF,qCACE,mBACA,mBACA,mBACA,yBAEA,2CACE,wBACA,0BAGF,4CACE,+BACA,WACA,kCAKN,yBACE,8BACE,sBAEA,2CACE,WACA,kBACA,uCAGF,yCACE,mBACA,gBAGF,wCACE,WACA,cACA,iBACA,sCAEA,+CACE,yCClJR,WACE,cACA,gCACA,c9BLc,M8BMd,gBAGF,gBACE,uCAEA,8CAIF,kBACE,aAIF,kBACE,aACA,8BACA,mBACA,uBACA,yBACA,gBACA,eACA,kDACA,iBACA,0CAEA,gDACA,iDAEA,yBACE,WACA,UACA,WACA,+CACA,gDACA,wBACA,gFAEA,Y9B9CM,K8B+CN,cAKJ,4CACE,0BAEA,mDACE,0BACA,iCAKJ,mBACE,aACA,uBACA,iEACA,gBAGF,6CACE,uBAIF,gBACE,aACA,UACA,gBAEA,kBACE,0BACA,4BACA,gBACA,gBC5EJ,UACE,kBACA,gBACA,UACA,SAGA,kBACE,WACA,kBACA,yBACA,MACA,SACA,UACA,0BAMJ,eACE,aACA,YACA,uBACA,mBACA,kBAEA,0CAKF,iBACE,cACA,MApCY,QAqCZ,OArCY,QAsCZ,kBACA,gCACA,6BACA,aACA,mBACA,uBACA,4BACA,kBACA,UACA,kBAGA,yBACE,4BACA,0BACA,WAGF,yBACE,4BACA,0BACA,WAGF,uBACE,0BACA,wBACA,WAGF,wBACE,iCACA,+BACA,WAGF,mCAKF,kBACE,OACA,YACA,gBACA,gCACA,c/BxFc,M+ByFd,6BACA,W/BxFO,6B+B6FT,eACE,cACA,iBACA,gBACA,4BACA,oBAGF,gBACE,iBACA,gBACA,0BACA,iBAGF,oBACE,kBACA,gBACA,4BACA,SChHF,MACE,sBAKF,MACE,aACA,sBACA,UACA,QhCbQ,KgCcR,WAIF,4FAEE,iBAKF,cACE,aACA,qBACA,UAEA,uBACE,2BAEA,oCACE,+BACA,WACA,6BACA,kDAGA,2CACE,WACA,kBACA,SACA,WACA,UACA,WACA,+BACA,6CAGF,yEAKF,oCACE,uCACA,0BACA,4BACA,kDAGA,2CACE,WACA,kBACA,SACA,UACA,UACA,WACA,uCACA,+CAQR,aACE,cACA,WACA,YACA,kBACA,oCACA,0BACA,aACA,mBACA,uBACA,iBACA,gBACA,gBAEA,iBACE,WACA,YACA,iBAMJ,aACE,kBACA,cACA,sBACA,mCACA,iBACA,qBAEA,eACE,SACA,gBAMJ,WACE,cACA,iBACA,qBACA,iBACA,eACA,WACA,cAMA,wGACA,uGCjIF,UACE,kBACA,WACA,cACA,gBACA,cjCPc,MiCQd,WjCNO,6BiCOP,uCAGA,iBACE,WACA,kBACA,SACA,OACA,QACA,YACA,qEACA,oBACA,UAIJ,0BACE,gBACA,WAGF,gBACE,aACA,8DACA,WACA,UACA,SACA,gBAGF,gBACE,eACA,sBACA,iBACA,aACA,mBACA,uBACA,eACA,iBAIF,iBACE,kBACA,QACA,2BACA,eACA,aACA,mBACA,uBACA,WACA,aACA,cACA,kBACA,YACA,2BACA,0BACA,kCACA,0BACA,YACA,mEAGA,0CAEA,uBACE,iBACA,cAGF,uBACE,2BACA,UACA,uCAGF,wBACE,uCAIJ,mCACA,qCAGA,cACE,aACA,mBACA,uBACA,iBACA,kBACA,SACA,WACA,WAGF,oBACE,UACA,YACA,YACA,WACA,8BACA,eACA,mBACA,eACA,gFAGA,kCACE,aACA,gBClHJ,cACE,mBACA,clCPc,MkCQd,gBACA,iBACA,WlCRO,6BkCWT,aACE,mBACA,mBACA,aACA,8BACA,mBACA,gCAGF,eACE,WACA,iBACA,yBACA,gBAGF,aACE,mBACA,WACA,YACA,uBACA,oBACA,eACA,iBACA,0BAGF,mBACE,mBAGF,oBACE,0BAGF,cACE,QlClDQ,KkCmDR,gBAGF,kBACE,SACA,4CACA,kBACA,gBACA,cAIF,uBACA,sBACA,yCACA,wBACA,sBACA,wBACA,mBACA,yBACA,wBACA,2BCrEA,uBACE,KACE,UACA,0BAEF,GACE,UACA,yBAKF,0BACE,kBACA,gBACA,qBAGF,yBACE,4BACA,kBAGF,0BACE,iCACA,cnC3BY,MmC4BZ,kBACA,kBACA,eACA,2DACA,mCAEA,oEAEE,iCACA,+EAIJ,kCACE,aACA,sBACA,mBACA,UACA,oBAGF,+BACE,WACA,YACA,kBACA,gFACA,0BACA,aACA,mBACA,uBACA,oBAGF,6BACE,gBACA,0BACA,kBAGF,+BACE,4BACA,iBAGF,0BACE,aACA,sBACA,WACA,iBACA,gBACA,WnC/EM,KmCkFR,0BACE,aACA,sBACA,eACA,6CACA,gCACA,cnCvFY,MmCwFZ,mCACA,WAGF,iCACE,aACA,mBACA,8BACA,WAGF,0BACE,aACA,mBACA,WACA,gBAGF,0BACE,4BACA,cAGF,6BACE,aACA,sBACA,gBAGF,0BACE,kBACA,gBACA,mBACA,gBACA,uBAGF,0BACE,iBACA,4BAGF,2BACE,cACA,gBACA,YACA,4BACA,eACA,eACA,oBACA,sDACA,aACA,mBACA,uBAEA,iCACE,mBACA,yEAIJ,mCACE,WACA,WACA,gCACA,oBACA,gBACA,aAGF,6BACE,YACA,qCACA,SACA,oDAGF,4BACE,iBACA,4BACA,iBACA,aAEA,kCACE,mBAGF,oCACE,qBAIJ,yBACE,0BACE,qBCpLN,mBACE,aACA,IpCLQ,KoCMR,uBACA,WAGF,gBACE,aACA,sBACA,IpCbQ,KoCcR,OACA,YAGF,cACE,6CACA,cpCnBc,MoCoBd,gBACA,WpCnBO,6BoCoBP,WACE,mFAEF,kBACA,eAEA,oBACE,2BACA,WACE,oDAGF,+BACE,sBAIJ,qBACE,2BACA,wBAGF,4BACE,sCACA,mBAIJ,kBACE,WACA,YACA,cACA,iBACA,UACA,sBACA,iBACA,WACE,0EAKJ,yBACE,UACA,mBACA,eAGF,mBACE,oBACA,oCAGF,oBACE,kBACA,mBACA,gBACA,0BACA,gBAGF,mBACE,SACA,mBACA,4BACA,gBAGF,QACE,kBACA,eACA,4BACA,mBAIF,8CACE,cACE,yDAIA,2CACE,sBADF,2CACE,sBADF,2CACE,sBADF,2CACE,sBADF,2CACE,qBADF,2CACE,sBADF,2CACE,sBADF,2CACE,sBADF,2CACE,sBADF,4CACE,qBADF,4CACE,sBADF,4CACE,sBADF,4CACE,sBADF,4CACE,sBADF,4CACE,qBADF,4CACE,sBADF,4CACE,sBADF,4CACE,sBADF,4CACE,sBADF,4CACE,sBAKN,sBACE,KACE,UACA,uCAEF,GACE,UACA,kCCnHJ,oBACE,kBACA,qBAGE,0CACE,UACA,mBACA,oBACA,wBAIJ,mCACE,kBACA,SACA,OACA,eACA,6BACA,gCACA,crCtBY,MqCuBZ,+DACA,gBACA,gBACA,gBACA,UACA,kBACA,oBACA,2BACA,mEACA,YAEA,sCACE,kBACA,gBAGE,0DACE,6CACA,0BAEA,8EACE,wBAIJ,8CACE,UACA,mBACA,oBACA,wBAKN,sCACE,kBACA,MACA,UACA,gBACA,mCACA,gCACA,crChEU,MqCiEV,+DACA,gBACA,gBACA,gBACA,UACA,kBACA,oBACA,2BACA,mEAIJ,mCACE,aACA,8BACA,mBACA,mBACA,0BACA,qBACA,kBACA,eACA,sDACA,iBAEA,yCACE,6CACA,0BAGF,uDACE,WACA,qBACA,cACA,aACA,cACA,sCACA,uCACA,yBACA,kBACA,8BAIJ,yBACE,mCACE,WACA,gBAEA,sCACE,gBACA,gBACA,YACA,qCACA,gBACA,+BACA,eACA,cACA,arC3HE,KqC4HF,aACA,gBACA,UACA,mBACA,oBACA,cACA,iBACA,kDAGF,8CACE,iBACA,mBACA,sBACA,oBAIJ,uDACE,wBAGF,8EACE,2BC9IN,yBACE,SACA,mBACA,aACA,kBAIF,iBACE,kBACA,WACA,iBACA,qBAIA,mCACE,6BACA,kCACA,oBACA,iBACA,kBACA,eACA,aACA,8BACA,mBACA,WACE,4DAEF,WACE,gGAIF,yCACE,yEACA,WACE,6DAIJ,yCACE,iCACA,WACE,gIAGF,aAIJ,wCACE,iCACA,WACE,qGAEF,aAGF,+BACE,0BACA,mBACA,gBACA,uBAEA,+CACE,4BACA,YAIJ,gCACE,gBACA,4BACA,kBACA,cACA,qBACA,4DAGF,qCACE,yBAWF,gCAEE,YACA,SACA,UACA,YAGA,eACA,mBACA,kBACA,yBACA,eACA,kCAGA,6BACA,kCACA,oBACA,WACE,qDAEF,4BAMA,UACA,wCAEA,WACE,4IAKF,6CACE,UACA,iCAEA,gBAJF,6CAKI,UACA,yCAON,kCACE,cACA,yCAEA,wCACE,WACA,iBACA,kBACA,kCACA,qBACA,6BACA,0BACA,sBACA,aACA,UtCjKI,KsCkKJ,6CACA,WACE,qEAGF,qDACE,4BACA,YAGF,8CACE,iCACA,WACE,qGAQR,wCACE,iBACA,gBACA,kBACA,iCACA,eAGF,yCACE,kBAGF,kCACE,kBACA,MACA,OACA,WAKF,gCACE,iBACA,eACA,sBACA,aACA,mBACA,gBACA,6BACA,0BACA,qBACA,mBACA,qCAEA,sCACE,8BAGF,yCACE,0EACA,0BACA,gBAGF,qDACE,gBACA,wBACA,cACA,kBACA,YACA,aACA,iBACA,iBACA,UACA,gBACA,kCACA,oBACA,6BACA,mBACA,oBACA,kBACA,mDAEA,6DACE,qCACA,iCAEA,oEACE,WACA,kBACA,SACA,QACA,UACA,WACA,8BACA,+BACA,8CAMR,yBA5PF,iBA6PI,gBCvQJ,iBACE,aACA,oBACA,uCACA,gCACA,cvCPc,MuCQd,gBACA,WvCPO,6BuCQP,qDAEA,8BACE,iCACA,8EAGF,0BACE,0BAEA,uCACE,uEAKN,gBACE,OACA,aACA,sBACA,oBACA,YACA,kBAEA,sBACE,mBACA,gBACA,qBACA,yBACA,4BACA,qBACA,oBACA,cACA,2BAGF,mCACE,0BAGF,iFACE,mBAGF,iCAEE,YACA,gBACA,yBACA,UACA,iBACA,gBAEA,iBACA,gBACA,uBACA,0BACA,oBACA,WACA,aACA,eACA,2BAEA,oEACE,aAGF,wDACE,UAGF,uEACE,UAKN,+DACE,mBAGF,iBACE,aACA,sBACA,mBACA,uBACA,iBACA,qCACA,sCACA,6BACA,iBACA,WACA,cAGF,gBACE,eACA,4BACA,cACA,6CAEA,8CACE,0BAGF,0CACE,mBAIJ,mBACE,iBACA,gBACA,0BACA,qBACA,mBACA,cACA,kBACA,gBACA,oBACA,oEACA,wFAEA,yBACE,yBACA,UAGF,6CACE,mBACA,6DAKJ,cACE,iBACA,WACA,0BACA,mBACA,iBACA,kBAGF,mBACE,kBACA,OACA,QACA,YACA,+BACA,sBACA,oFAGA,qDAEE,WACA,kBACA,QACA,WACA,YACA,kBACA,+BACA,mCACA,2BACA,kDACA,qCACA,UAGF,2BACE,UAGF,0BACE,WAKA,mLAEE,UAIJ,2DACE,wBAEA,qIAEE,wBAMN,8CACE,0BACE,0DAIJ,0BACE,gCACA,+BACA,8BACA,+BACA,+BAGF,yBACE,iBACE,sBAGF,iBACE,mBACA,8BACA,iBACA,kBACA,oCACA,uCACA,mBACA,gBAGF,gBACE,wBAGF,iCACE,gBC7OJ,cACE,WAEA,gCACE,wBACA,gBACA,WACA,yBACA,eACA,gBACA,SACA,cAEA,gBACA,YACA,gBACA,aAGA,+DACE,OAvBS,IAwBT,cAxBS,IAyBT,sHAOF,kDACE,OAjCS,IAkCT,cAlCS,IAmCT,0BAGF,qDACE,OAvCS,IAwCT,cAxCS,IAyCT,+BAIF,sDACE,wBACA,gBACA,MA/CO,OAgDP,OAhDO,OAiDP,kBACA,+BACA,mCACA,mCACA,oCACA,oDAGF,kDACE,MA1DO,OA2DP,OA3DO,OA4DP,kBACA,+BACA,mCACA,oCACA,oDACA,eAIF,4DACE,sBACA,8EAGF,wDACE,sBACA,8EAIF,6DACE,sBACA,8EAGF,yDACE,sBACA,8EAIF,oEACE,8EAGF,gEACE,8EAIF,yCACE,mBAEA,wEACE,0BAGF,+DACE,2BACA,yCACA,gBACA,eAGF,2DACE,0BAGF,8DACE,2BAGF,2DACE,2BACA,yCACA,gBACA,eACA,mBC9HR,QACE,uCACA,gCACA,czCPc,MyCQd,+DACA,aACA,sBACA,gBAKF,gBACE,aACA,mBACA,WACA,sBACA,uCACA,uCACA,gBACA,iCACA,qBAEA,mCACE,aAKJ,0BACE,kBACA,cACA,eACA,gBACA,oBACA,cAIF,uBACE,oBACA,mBACA,uBACA,WACA,YACA,UACA,YACA,qBACA,yBACA,4BACA,eACA,iBACA,gBACA,uBACA,8CACA,cACA,kBAEA,6BACE,0BACA,0BAGF,8BACE,YAGF,8BACE,oEACA,0BAGA,qCACE,WACA,kBACA,WACA,SACA,iBACA,UACA,WACA,kBACA,+BAMN,eACE,aACA,mBACA,QACA,+DACA,oBACA,YACA,cAEA,sBACE,qBAKJ,qBACE,WACA,cACA,YACA,iBACA,kBACA,YACA,gBACA,qBACA,yBACA,4BACA,iBACA,gBACA,eACA,aACA,gBACA,8CAEA,2BACE,0BACA,0BAGF,2BACE,YACA,gBAGF,4BACE,6BACA,0BACA,gBAKJ,mBACE,aACA,cAIF,aACE,aACA,mBACA,QACA,iBACA,mBACA,cAEA,mBACE,aAKJ,0CACE,oEACA,0BAEA,gDACE,oEAKF,gDACE,6DACA,mBAMJ,aACE,aACA,OACA,aAGF,aACE,OACA,aACA,sBACA,YAGF,UACE,OACA,uBACA,aACA,gBACA,iBACA,gBACA,0BACA,iBACA,eACA,6BACA,gCACA,gCAEA,gBACE,6CAGF,wBACE,yBACA,sBACA,oBAGF,aACE,kBACA,gBACA,sBACA,gBACA,wBACA,0BAGF,aACE,iBACA,gBACA,wBACA,gBACA,wBAGF,YACE,oBAGF,0BACE,mBACA,oBAGF,6BACA,gCAEA,aACE,oBACA,iBAGF,cACE,eACA,YACA,qBACA,gBACA,cAGF,YACE,0BACA,0BACA,0BACA,8BAGF,qBACE,0CACA,mEACA,gCACA,gBACA,8BACA,4BACA,kBAGF,iCAKF,aACE,YACA,gBACA,qCACA,aACA,sBACA,uCAEA,oBACE,aAGF,sBACE,OACA,6DACA,iBACA,gBACA,YACA,gCACA,6BACA,0BACA,oBACA,gBACA,WACA,aACA,kCAEA,4BACE,sEAGF,mCACE,sBAKN,WACE,aACA,uCACA,kBAGF,UACE,qBACA,iBACA,gBACA,4BACA,gBACA,YACA,sCACA,eACA,kDAEA,gBACE,0BAGF,iBACE,0BACA,wCACA,gBAIJ,aACE,OACA,gBACA,aACA,sBAGF,YACE,aACA,sBACA,OACA,cACA,gBACA,UAEA,mBACE,aAIJ,cACE,aACA,UAEA,qBACE,OACA,oBACA,iBACA,gBACA,qBACA,0BACA,4BACA,YACA,eACA,oCAEA,2BACE,2EACA,0BAKN,iBACE,OACA,gBACA,oBACA,6BACA,gCACA,oBACA,iBACA,gBACA,0BAEA,oBACE,iBACA,gBACA,qBACA,uBAGF,oBACE,iBACA,gBACA,oBAGF,uCAEA,wCACE,oBACA,oBAGF,oCACA,uCAEA,qBACE,eACA,YACA,oBAGF,mBACE,0BACA,0BACA,0BAMJ,eACE,aACA,mBACA,8BACA,uBACA,oCACA,uCACA,iBACA,4BACA,SAGF,kBACE,mBACA,kCACA,gBAGF,kBACE,aACA,mBACA,WACA,gBAEA,uBACE,aACA,mBACA,WACA,mBAGF,sBACE,qBACA,oBACA,oBACA,iBACA,gBACA,4BACA,6BACA,gCACA,oBACA,kCAMJ,qCACE,aACE,sBAGF,aACE,WACA,YACA,iBACA,oCACA,gBAGF,UACE,iBACA,gBACA,sBAEA,gBACE,6CAIJ,gBACE,sBACA,UAEA,kEAEA,uBACE,cACA,eAGF,0BACE,cACA,eAIJ,eACE,QACA,YAGF,mBACE,YAGF,kBACE,cAMJ,qBACE,aACA,sBACA,UACA,uBACA,uCACA,uCAEA,6BACE,aAIJ,kBACE,aACA,mBACA,UAGF,oBACE,OACA,YACA,kBACA,gCACA,qBACA,6BACA,0BACA,mBACA,aACA,kCAEA,0BACE,sEACA,8EAGF,iCACE,6CACA,WAIJ,sBACE,8BAGF,oBACE,aACA,mBACA,WACA,iBACA,4BACA,eACA,iBAEA,yCACE,iCACA,cACA,eACA,eAIJ,mBACE,aACA,UAEA,0BACE,gBACA,iBACA,YACA,qBACA,iBACA,gBACA,eACA,8CAEA,kCACE,aAKN,qBACE,0BACA,4BAEA,2BACE,2EACA,0BAIJ,sBACE,+BACA,WAEA,4BACE,YAIJ,qBACE,6DACA,mBACA,8EAEA,2BACE,6DAIJ,qCACE,uBACE,eACA,gBAGF,eACE,uBClpBJ,sBACE,eACA,QACA,YACA,oBAEA,iCACE,oBAEA,wDACE,UAGF,+CACE,wBAKN,uBACE,kBACA,QACA,0BACA,0BACA,kCACA,UACA,6BAGF,cACE,eACA,SACA,OACA,QACA,UACA,6BACA,gCACA,mBACA,gCACA,WACE,qHAIF,gBACA,gBACA,aACA,sBACA,2BACA,yDACA,sBACA,4BAGA,wBACE,YAGF,wBACE,sDACA,gBAKJ,qBACE,cACA,aACA,mBACA,uBACA,0BACA,YACA,kBACA,iBAEA,4BACE,gBAGF,4BACE,WACA,cACA,WACA,WACA,kBACA,0BACA,gDAGF,qEAEE,iCACA,WAKJ,mBACE,OACA,kBACA,gBACA,4BACA,oBACA,wDAGA,iFACA,yFAEA,uCACE,gBACA,wBAKJ,qBACE,cACA,aACA,mBACA,UACA,2BAEA,iCACE,uCACA,oBACA,sBAGF,4BACE,OACA,gBACA,eACA,0BACA,gBAGF,+BACE,OACA,mBACA,4BACA,mBAGF,4BACE,eACA,4BACA,2BAEA,kCACE,0BAKN,qBACE,cACA,oCACA,Q1CjKQ,K0CkKR,wDACA,aACA,yBAEA,8BACE,aACA,UAIJ,yBACE,cACE,SACA,WACA,YACA,O1CjLM,K0CkLN,gCACA,qBACA,yDACA,gBAEA,mCACE,gCAIJ,+CACE,0CC1LJ,cACE,eACA,aACA,gBACA,kBACA,6BACA,gCACA,mBACA,WACE,+EAGF,gBACA,SACA,UACA,sBACA,0BACA,iDACA,oBAEA,yBACE,UACA,mBACA,oBAIJ,mBACE,aACA,mBACA,WACA,sBACA,kBACA,0BACA,eACA,iBACA,mBACA,8CACA,kBAGA,sCACE,cACA,WACA,YACA,aACA,mBACA,uBACA,4BACA,0BAEA,gDACE,WACA,YAIJ,uCACE,OAGF,0CACE,oBACA,iBACA,4BACA,WACA,qBACA,cAGF,yCACE,cACA,aACA,cACA,sCACA,uCACA,yBACA,WACA,mBACA,4BAIF,uDAEE,uCACA,0BAEA,6FACE,0BAGF,mGACE,0BACA,WAKJ,6BACE,uCACA,0BAEA,gDACE,0BAGF,mDACE,0BACA,WAIJ,kCACE,mBAEA,qDACE,mBAGF,qFAEE,kEACA,mBAEA,2HACE,mBAKN,+BACE,YACA,eACA,oBAKA,6CACE,kBACA,cACA,UACA,gBACA,0BAGF,uDACE,UACA,mBACA,oBAGF,0DACE,UACA,WACA,cACA,iBACA,2BAKN,wBACE,WACA,0BACA,iBAGF,0BACE,qBACA,mBACA,gBACA,yBACA,qBACA,4BACA,YACA,iBCrKF,KACE,sBACA,sBACA,uBACA,uBAEA,4BACA,0CACA,6BAEA,6BAEA,gCACA,wCAEA,kCACA,gDACA,wBAEA,sCAEA,wBACA,2BAEA,qBACA,oCAEA,qDACA,sBACA,sBACA,WACA,0CAGF,oCAGE,mBAOF,aACE,aACA,mBACA,0BACA,oCACA,eAGF,YACE,OACA,gBACA,kBACA,gBACA,sBACA,SACA,uBAGF,UACE,aACA,0BACA,mBAGF,UACE,oBACA,mBACA,uBACA,0BACA,kCACA,oBACA,mBACA,gBACA,gBACA,eACA,mCACA,gCACA,yBACA,sBACA,0FACA,mBAEA,gBACE,+BAGF,wBACE,oCACA,mBAGF,iBACE,sBAGF,+CAEE,6BACA,+BACA,6BACA,gBAGF,oBACE,WACA,YACA,kBACA,sBAIJ,kBACE,aACA,6BACA,gCACA,YACA,QACA,kBAEA,4BACE,YACA,4CACA,iBACA,iBACA,yBACA,4BACA,kEACA,kBACA,UAEA,mFAEE,yBACA,sBACA,gBACA,8DASN,WACE,WAOF,iBACE,mCACA,gCACA,gBAGF,iBACE,aACA,gDACA,QACA,6BAGF,cACE,6BACA,oDACA,kBACA,mBACA,gBACA,4BACA,qBACA,yBAIF,eACE,aACA,gDACA,QACA,6BACA,kBACA,uCAGA,gCACE,wEAIJ,UACE,yBACA,oDACA,gBACA,eACA,kBAEA,iBACE,6BACA,oBAIA,iCACE,YAEF,oCACE,YAIJ,iCACE,iCACA,6BACA,kBACA,gBACA,4EAGF,4BACE,WACA,aACA,kBACA,WACA,SACA,2BACA,UACA,WACA,kBACA,6BAIJ,cACE,oBACA,mBACA,uBACA,WACA,YACA,mBACA,gBACA,sBACA,oCACA,cACA,kBACA,uFAGF,iBACE,aACA,sBACA,QACA,gBAIF,iBACE,mBACA,gBACA,gBACA,mCACA,6BACA,sBACA,mBACA,gBACA,uBACA,eACA,YACA,8CACA,cACA,gBACA,WACA,mDAEA,uBACE,+BAGF,wBACE,sBAGF,+BACE,oCACA,mBAIF,gEACA,gEACA,4DACA,kEAGF,iBACE,kBACA,gBACA,wBACA,gBACA,eAOF,eACE,kBACA,YACA,iBACA,mBACA,gBACA,cACA,mCACA,6BACA,8CACA,sBACA,mBACA,gBACA,uBACA,eACA,UACA,+CAGA,kCACA,yCAEA,6CACA,4CACA,6BACE,oCACA,mBAIF,0HACA,uFACA,sEAGA,+HACA,+HACA,yHACA,sIAIF,8BACE,oEAGF,iBACE,gBACA,iBACA,WAOF,WACE,mCACA,gCACA,gBAGF,gBACE,aACA,0EACA,6BACA,0CACA,gBACA,wBACA,qBACA,4CAEA,mCACE,UAGF,kFAEE,yBAIJ,qBACE,oDACA,mBACA,4BAGF,oBACE,oDACA,kBACA,mBACA,gBACA,4BACA,wCACA,eACA,yBACA,qBAEA,yBACE,oBACA,mBACA,uBACA,oBACA,gBACA,sBACA,cACA,WACA,YACA,kBACA,eACA,mEACA,oBACA,sBAGF,kCACE,iCACA,6BACA,4EAKJ,aACE,aACA,oDACA,0CACA,yBACA,gBACA,wBACA,qBACA,4CAEA,0CACA,4EAC6B,yBAG/B,mBACE,8BACA,kBACA,4BACA,aACA,uBACA,gBACA,gBAIF,mBACE,kBACA,aACA,gDACA,uFAGA,kCACE,mEAIJ,iBACE,wCACA,gBAEA,6BACE,iBAIJ,gBACE,gBACA,iBACA,kBACA,yBACA,qBACA,wBACA,gDAEA,mCACE,UAGF,yCACE,yBAGF,yCACE,6BACA,kBAIJ,gBACE,aACA,0EACA,kBAGF,eACE,aACA,sBACA,6BAGF,gBACE,8BACA,aACA,uBACA,gBACA,oCACA,kBACA,gBACA,4BACA,yBACA,uCACA,cAEA,4BACE,gBAIJ,cACE,wCACA,kBAGF,mBACE,8BACA,uCACA,cACA,kBAEA,+BACE,gBAGF,0BACE,WACA,cACA,kBACA,OACA,QACA,QACA,WACA,6BACA,WACA,oBAIJ,iBACE,kBACA,SACA,UACA,mCACA,mBACA,gBACA,gBACA,gBACA,eACA,oEACA,sBACA,wCACA,UACA,mDAEA,uBACE,UACA,sCACA,2BAGF,wBACE,sBAGF,+BACE,oCACA,mBACA,UAIF,+BACE,iCACA,iEAEF,+BACE,iCACA,iEAEF,6BACE,+BACA,+DAEF,4BACE,sCACA,sEAKJ,eACE,kBACA,+BACA,QACA,WACA,wBACA,UACA,oBAEA,uBACE,WACA,cACA,kBACA,UACA,SACA,WACA,YACA,kBACA,wBACA,gDAQJ,aACE,mCACA,gCACA,gBAGF,iBACE,aACA,0BACA,oDACA,0CAEA,4BACE,mBAGF,0BACE,mEAIJ,kBACE,aACA,sBACA,mBACA,eACA,cAGF,iBACE,kBACA,4BACA,yBACA,qBACA,gBAGF,iBACE,oBACA,mBACA,uBACA,WACA,YACA,eACA,gBACA,sBACA,kBACA,eACA,8CAEA,0BACE,iCACA,6BACA,4EAIJ,oBACE,OACA,aACA,sBACA,0BACA,gBACA,YAGF,mBACE,aACA,qBACA,0BACA,oDACA,mCACA,6BACA,8CACA,eACA,wEAEA,yBACE,+BACA,qCAGF,0BACE,sBAGF,iCACE,oCACA,mBAIF,kEACA,kEACA,8DACA,oEAGF,wBACE,iBACA,4BACA,gBACA,mBACA,gBACA,cAGF,yBACE,kBACA,sBACA,gBACA,mBACA,gBACA,uBAGF,mBACE,8BACA,4BACA,kBACA,kBAOF,yBACE,aACE,0BAGF,YACE,oBACA,SACA,WAGF,UACE,OAGF,kBACE,YACA,QAEA,4BACE,iBACA,mBAKJ,iBACE,YACA,gBAGF,iBACE,MACA,yBAGF,eACE,MACA,yBACA,gBAGF,cACE,yBACA,gCACA,kBAGF,UACE,gBACA,gCACA,aACA,sBACA,mBACA,2BACA,yBAEA,iBACE,yBAIA,iCACE,YAIJ,4BACE,cACA,gBACA,eACA,eAIJ,cACE,WACA,YACA,mBACA,gBAGF,kEAIE,aAIF,gCACE,aAIF,KACE,2BAGF,gBACE,iBAGF,oBACE,mBACA,kCAEA,yBACE,kBACA,WACA,YAIJ,gBACE,gBACA,kBAIF,iBACE,oDACA,0BAGF,mBACE,oDACA,sBACA,QAGF,wBACE,YACA,mBAGF,yBACE,oBAQJ,aACE,uEAEE,aAGF,gBACE,gBACA,iBAGF,yCAGE,uBAQJ,8CACE,WACE,uDAGF,2BAEE,0DAKA,sCACE,sBADF,sCACE,sBADF,sCACE,sBADF,sCACE,qBADF,sCACE,sBADF,sCACE,sBADF,sCACE,sBAKF,8BACE,sBADF,8BACE,sBADF,8BACE,sBADF,8BACE,sBADF,8BACE,sBADF,8BACE,sBADF,8BACE,sBADF,8BACE,sBADF,8BACE,sBADF,+BACE,sBAKN,wBACE,KACE,UACA,0BAEF,GACE,UACA,yBAIJ,uBACE,KACE,UACA,sBAEF,GACE,UACA,oBAIJ,yBACE,QACE,UACA,mBAEF,IACE,WACA,sBC1+BJ,cACE,kBACA,WACA,0BAIA,yBACE,aACA,eACA,mBACA,WACA,W7CbU,K6CcV,qBACA,6BACA,gCACA,oBACA,qBACA,W7ClBK,6B6CmBL,uDAGA,+BACE,SACA,gEAIF,gDACE,oBACA,mBACA,uBAEA,sDACE,gBACA,MAIJ,uCACE,+BACA,4BACA,kBAGF,sCACE,iCACA,8EAMJ,0DACE,+BACA,wBAEA,iEACE,8DACA,wBAOJ,sBACE,kBACA,oBAEA,4BACE,oBAIJ,2BACE,kBACA,YACA,QACA,2BACA,eACA,4BACA,oBACA,YACA,UAKF,oBACE,iBACA,gBACA,kBACA,iCACA,gCACA,oBACA,6BACA,W7CjGK,6B6CsGP,qBACE,aACA,sBACA,mBACA,uBACA,oBACA,4BACA,kBACA,kBACA,UAEA,2BACE,eACA,WAMJ,qBACE,uCAEA,gCACE,mBAIF,6DACE,mEAEA,wFACE,0BAKN,4BACE,aACA,mBACA,UACA,sBACA,eACA,iBACA,0CACA,gCAEA,kCACE,wBAGF,mCACE,uCAKJ,uBACE,cACA,eACA,4BACA,WACA,0FAIA,wDACE,wBACA,0BACA,UAIJ,2BACE,OACA,kBACA,gBACA,0BACA,2BAEA,gCACE,+DACA,cACA,kBACA,cAKJ,4BACE,cACA,mBACA,gBACA,sBACA,yBACA,qBACA,qBACA,gCACA,yBACA,4BACA,gBACA,0FAGA,sEACE,iCACA,0BACA,mEACA,eAGF,kDACE,sBAIF,2CACE,qBACA,mBACA,gBACA,sBACA,yBACA,qBACA,+BACA,gBAMJ,6BACE,eAEA,qEACE,mEAEA,gGACE,0BAIJ,mEACE,UACA,mBAKJ,0BACE,cACA,iBACA,0BACA,UACA,qBACA,8EAMF,yBACE,SACA,gBACA,UACA,sEAGA,0DACE,UAKJ,6BACE,aACA,eACA,UACA,oCAGA,mCACE,SAKJ,wBACE,wEAEA,oCACE,0EACA,0BACA,2EACA,gBAGF,oCACE,YACA,mBACA,oBAGF,6BACE,+DACA,cACA,kBACA,cAON,sBACE,KACE,UACA,qCAEF,GACE,UACA,kCAMJ,yBAEI,oBACE,gBAGF,4BACE,qBAGF,6BACE,mBC/UN,OACE,qCACA,gCACA,gCACA,8BACA,yBACA,yBACA,yBACA,yBAKF,OACE,kBACA,WACA,YACA,0BACA,kBAIA,cACE,qBAGF,aACE,eACA,gBACA,0BACA,gBAGF,gBACE,mBACA,4BACA,iBAKF,cACE,WACA,kBACA,gBAGF,WACE,cACA,WACA,iBAKF,wBACE,sBACA,eAGF,wBACE,sBACA,eACA,qBACA,WAGF,yBACE,2BACA,mBACA,oBAKF,mBACE,UACA,qBACA,sBACA,0CACA,2CACA,8DAGF,mBACE,0CAIF,wBACE,uBAGF,yBACE,UACA,yCAGF,0BACE,eAEA,iDACE,IAGF,kDACE,UAMJ,kBACE,8CACA,eACA,uBAEA,4BACE,+BACA,iGACA,4CAGF,8BACE,6BACA,iGACA,4CAGF,wBACE,YACA,wBAMJ,oBACE,eACA,uBACA,wBACA,4EAEA,gEACA,4CAEA,0BACE,wBAMJ,cACE,aACA,eACA,gBACA,kBAGF,mBACE,oBACA,mBACA,UACA,iBACA,4BACA,eAGF,qBACE,WACA,YACA,kBACA,cAIF,kBACE,aACA,eACA,kBACA,kBACA,uBAGF,uBACE,oBACA,mBACA,UACA,mBACA,4BAGF,yBACE,WACA,YACA,kBACA,cAGF,wBACE,gBACA,0BACA,mBAKF,eACE,eACA,+BACA,2BACA,qBACA,c9C1NY,M8C2NZ,iBACA,gBACA,oBACA,mBACA,aACA,qCACA,UACA,0BACA,iDAEA,0BACE,UACA,wBAGF,sBACE,cACA,gBACA,WACA,kBAON,sBACE,gDACA,wBAGF,yBACE,eACA,cAGF,wBACE,yBACA,wBAGF,wBACE,yBACA,wBAGF,0BACE,oCACA,iCCxQF,gBACE,aACA,iBAKF,aACE,kCACA,eACA,OACA,MACA,aACA,6BACA,sCACA,aACA,sBACA,YAEA,6BACE,OACA,aACA,gBACA,gBACA,gBAMJ,cACE,OACA,YACA,aACA,sBACA,wCAKF,kBACE,aACA,eACA,QACA,0BACA,WAEA,2CAKF,gBACE,aACA,gBACA,YACA,eACA,eACA,0BACA,c/C9Dc,M+CgEd,6DACA,kCAKF,yBACE,gBACE,aACA,mBAGF,aACE,0CACA,0BACA,gBAEA,qBACE,OACA,sCAIJ,cACE,eCnFA,gCACI,aACA,mBACA,UACA,qBACA,uCACA,gBACA,iBACA,0BACA,qBACA,uBAEA,iDACI,gBACA,gBACA,+BACA,WACA,qBACA,qBACA,qBACA,yBAIR,kCACI,oBACA,uCAEA,wCACI,WACA,YACA,gBACA,uCACA,gCACA,chDvCI,MgDwCJ,iBACA,0BACA,aAEA,iFACA,+EAKZ,UACI,OACA,sBACA,gBAEA,aACI,gBACA,SACA,UAGJ,4BACI,qBAGJ,kCACI,iBACA,gBACA,qBACA,yBACA,4BACA,0BAGJ,2BACI,cACA,iCACA,iBACA,4BACA,qBACA,gBACA,sCACA,oCAEA,iCACI,0BACA,uCAGJ,qCACI,0BACA,sCACA,mEACA,gBAKZ,aACI,gBACA,MACA,YACA,aACA,mBACA,8BACA,eACA,6BACA,uCACA,WACA,SAEA,8BACI,aACA,mBACA,UACA,gBACA,4BAEA,gCACI,4BACA,qBACA,gEAGJ,8CACA,iFAGJ,kCACI,aACA,mBACA,UAIR,cACI,OACA,yBACA,gBAEA,iBACI,kBACA,gBACA,uBACA,iBAGJ,yBACI,eACA,4BACA,gBACA,gBACA,gBAGJ,2BACI,oBACA,mBACA,UACA,gBACA,qBACA,uCACA,gCACA,chDnKQ,MgDoKR,gBACA,6DACA,0BAEA,mCACI,iBACA,4BACA,kBACA,oBAIR,iBACI,iBACA,gBACA,qBACA,qBACA,uCAGJ,iBACI,iBACA,gBACA,wBAGJ,gDAEA,mBACI,eACA,uCACA,gCACA,qBACA,mBAGJ,yBACI,uCACA,gCACA,chD3MQ,MgD4MR,aACA,cAEA,2DACA,kGACA,+DACA,+DACA,2DAEA,kCACI,aACA,mBACA,uBACA,eACA,WAIR,gCACI,WACA,yBACA,iBACA,mBAEA,mCACI,gBACA,qBACA,uCACA,gCACA,gBACA,4BACA,iBACA,yBACA,qBAGJ,mCACI,qBACA,gCACA,mBAEA,wCACI,gBACA,oEACA,sEACA,0BAIR,mFAMR,cACI,uBACA,kBACA,6BACA,uCAEA,+BACI,oBACA,mBACA,UACA,gBACA,gBACA,oBACA,yBACA,0BACA,oEACA,0EACA,mBACA,sBACA,qBAGJ,iBACI,iCACA,gBACA,uBACA,gBACA,gBAGJ,+BACI,mCACA,4BACA,gBACA,mBACA,gBAGJ,+BACI,aACA,mBACA,uBACA,WACA,eAGJ,+BACI,oBACA,mBACA,UACA,uCACA,gCACA,chDvTQ,MgDwTR,mBACA,iBACA,sBACA,0BACA,eACA,6BAEA,sEAEA,2EAIR,kBACI,aACA,2DACA,MACA,uCAEA,gCACI,oBACA,sCAEA,6DAEA,8CACI,kBACA,oBACA,kDACI,UACA,WACA,cAIR,+CACI,gBACA,gBACA,oBAGJ,8CACI,iBACA,4BACA,gBAKZ,iBACI,oBACA,iBACA,cACA,WAEA,uBACI,iBACA,gBACA,uBACA,iBAGJ,qBACI,4BACA,gBACA,gBAIR,gBACI,aACA,4DACA,SAGJ,gBACI,aACA,sBACA,UACA,6BACA,gCACA,oBACA,qBACA,0BACA,6BACA,4DAEA,sBACI,iCACA,+EACA,2BAGJ,yBACI,iBACA,cACA,qBACA,6BACI,UACA,WACA,cAIR,yBACI,gBACA,gBAGJ,yBACI,iBACA,4BACA,gBAGJ,0BACI,gBACA,4BACA,gBACA,kBACA,oCAIR,oBACI,uCACA,oCACA,uCACA,oBAEA,8BACI,gBACA,cAGJ,uBACI,iBACA,gBACA,uBACA,iBAGJ,sBACI,4BACA,gBACA,kBAGJ,8BACI,aACA,sBACA,SAGJ,6BACI,aACA,SACA,uBAEA,qCACI,cACA,aACA,cACA,+BACA,WACA,kBACA,gBACA,gBACA,aACA,mBACA,uBACA,iBAGJ,sCACI,OAEA,gGACA,kEACA,2CACI,cACA,6BACA,gCACA,chD/eA,MgDgfA,qBACA,gBACA,iBACA,sBACA,0BAMhB,gBACI,oBACA,oCACA,aACA,mBACA,8BACA,iBACA,4BACA,SACA,eAEA,kBACI,4BACA,qBACA,kDAGJ,8BACI,aACA","file":"style.min.css"}
|
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
@use "parameters" as *;
|
|
2
2
|
@use "properties";
|
|
3
3
|
|
|
4
|
+
// Flip-above fallback: used when there isn't enough space below the trigger.
|
|
5
|
+
// The browser tries this when the default (below) position overflows the viewport.
|
|
6
|
+
@position-try --vd-above {
|
|
7
|
+
top: auto;
|
|
8
|
+
bottom: anchor(top);
|
|
9
|
+
margin-top: 0;
|
|
10
|
+
margin-bottom: 6px;
|
|
11
|
+
}
|
|
12
|
+
|
|
4
13
|
// All selectors scoped under .custom-dropdown to avoid conflicts with dropdown.scss
|
|
5
14
|
.custom-dropdown {
|
|
6
15
|
position: relative;
|
|
@@ -12,29 +21,44 @@
|
|
|
12
21
|
|
|
13
22
|
.dropdown-trigger {
|
|
14
23
|
background: var(--background);
|
|
15
|
-
border:
|
|
16
|
-
border-radius: $border-radius;
|
|
17
|
-
padding: 0 calc($spacing * 0.
|
|
18
|
-
min-height: $form-height;
|
|
24
|
+
border: 1.5px solid var(--divider);
|
|
25
|
+
border-radius: calc($border-radius * 1.5);
|
|
26
|
+
padding: 0 calc($spacing * 0.65);
|
|
27
|
+
min-height: calc($form-height * 1.3);
|
|
19
28
|
cursor: pointer;
|
|
20
29
|
display: flex;
|
|
21
30
|
justify-content: space-between;
|
|
22
31
|
align-items: center;
|
|
23
|
-
|
|
32
|
+
box-shadow:
|
|
33
|
+
inset 0 1.5px 4px rgba(0, 0, 0, 0.05),
|
|
34
|
+
0 1px 2px rgba(0, 0, 0, 0.04);
|
|
35
|
+
transition:
|
|
36
|
+
border-color 0.16s ease,
|
|
37
|
+
box-shadow 0.22s cubic-bezier(0.16, 1, 0.3, 1),
|
|
38
|
+
background-color 0.16s ease;
|
|
39
|
+
|
|
40
|
+
&:hover {
|
|
41
|
+
border-color: color-mix(in srgb, var(--accent-color) 45%, var(--divider));
|
|
42
|
+
box-shadow:
|
|
43
|
+
inset 0 1.5px 4px rgba(0, 0, 0, 0.045),
|
|
44
|
+
0 2px 8px rgba(0, 0, 0, 0.07);
|
|
45
|
+
}
|
|
24
46
|
|
|
25
47
|
&:focus {
|
|
26
48
|
border-color: var(--accent-color);
|
|
27
|
-
box-shadow:
|
|
49
|
+
box-shadow:
|
|
50
|
+
inset 0 1px 3px rgba(0, 0, 0, 0.03),
|
|
51
|
+
0 0 0 3.5px color-mix(in srgb, var(--accent-color) 13%, transparent),
|
|
52
|
+
0 2px 12px rgba(0, 0, 0, 0.06);
|
|
28
53
|
outline: none;
|
|
29
54
|
}
|
|
30
55
|
}
|
|
31
56
|
|
|
32
|
-
// Open — flatten bottom, hide bottom border so menu connects flush
|
|
33
57
|
&.open .dropdown-trigger {
|
|
34
58
|
border-color: var(--accent-color);
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
59
|
+
box-shadow:
|
|
60
|
+
inset 0 1px 3px rgba(0, 0, 0, 0.03),
|
|
61
|
+
0 0 0 3.5px color-mix(in srgb, var(--accent-color) 13%, transparent);
|
|
38
62
|
outline: none;
|
|
39
63
|
}
|
|
40
64
|
|
|
@@ -46,6 +70,7 @@
|
|
|
46
70
|
|
|
47
71
|
&:not(.has-value) {
|
|
48
72
|
color: var(--secondary-text);
|
|
73
|
+
opacity: 0.65;
|
|
49
74
|
}
|
|
50
75
|
}
|
|
51
76
|
|
|
@@ -55,7 +80,7 @@
|
|
|
55
80
|
margin-left: calc($spacing / 2);
|
|
56
81
|
flex-shrink: 0;
|
|
57
82
|
display: inline-block;
|
|
58
|
-
transition: transform 0.
|
|
83
|
+
transition: transform 0.26s cubic-bezier(0.34, 1.56, 0.64, 1);
|
|
59
84
|
}
|
|
60
85
|
|
|
61
86
|
&.open .trigger-arrow {
|
|
@@ -63,60 +88,93 @@
|
|
|
63
88
|
}
|
|
64
89
|
|
|
65
90
|
// ── Menu ─────────────────────────────────────────────────────────────
|
|
91
|
+
//
|
|
92
|
+
// The menu is a popover (top-layer) element. Anchor positioning places it
|
|
93
|
+
// below the trigger and automatically flips above when there isn't room.
|
|
94
|
+
//
|
|
95
|
+
// anchor-name / position-anchor are unique per instance and set as inline
|
|
96
|
+
// styles by VirtualDropdown so multiple instances don't conflict.
|
|
66
97
|
|
|
67
|
-
// visibility trick: transitions work in both directions; display:none/block skips them
|
|
68
98
|
.dropdown-menu {
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
99
|
+
// Reset browser popover UA defaults
|
|
100
|
+
inset: unset;
|
|
101
|
+
margin: 0;
|
|
102
|
+
padding: 0;
|
|
103
|
+
border: none;
|
|
104
|
+
|
|
105
|
+
// Anchor positioning: default = below trigger, fallback = above
|
|
106
|
+
position: fixed;
|
|
107
|
+
top: anchor(bottom);
|
|
108
|
+
left: anchor(left);
|
|
109
|
+
width: anchor-size(width);
|
|
110
|
+
margin-top: 6px;
|
|
111
|
+
position-try-fallbacks: --vd-above;
|
|
112
|
+
|
|
113
|
+
// Appearance
|
|
73
114
|
background: var(--background);
|
|
74
|
-
border:
|
|
75
|
-
border-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
115
|
+
border: 1.5px solid var(--divider);
|
|
116
|
+
border-radius: calc($border-radius * 1.5);
|
|
117
|
+
box-shadow:
|
|
118
|
+
0 8px 32px rgba(0, 0, 0, 0.11),
|
|
119
|
+
0 2px 8px rgba(0, 0, 0, 0.06);
|
|
120
|
+
transform-origin: top center;
|
|
121
|
+
|
|
122
|
+
// Entry / exit animation.
|
|
123
|
+
// Closed state = exit target (browser transitions to this on close).
|
|
124
|
+
// @starting-style defines the entry start point (same values, so it
|
|
125
|
+
// fades/slides in from the same position it would exit to).
|
|
80
126
|
opacity: 0;
|
|
81
|
-
transform: translateY(-
|
|
82
|
-
|
|
127
|
+
transform: translateY(-6px) scale(0.975);
|
|
128
|
+
|
|
83
129
|
transition:
|
|
84
|
-
opacity 0.
|
|
85
|
-
transform 0.
|
|
86
|
-
|
|
130
|
+
opacity 0.2s cubic-bezier(0.16, 1, 0.3, 1),
|
|
131
|
+
transform 0.2s cubic-bezier(0.16, 1, 0.3, 1),
|
|
132
|
+
display 0.2s allow-discrete,
|
|
133
|
+
overlay 0.2s allow-discrete;
|
|
87
134
|
|
|
88
|
-
|
|
89
|
-
visibility: visible;
|
|
135
|
+
&:popover-open {
|
|
90
136
|
opacity: 1;
|
|
91
|
-
transform: translateY(0);
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
opacity 0
|
|
95
|
-
transform 0.
|
|
96
|
-
|
|
137
|
+
transform: translateY(0) scale(1);
|
|
138
|
+
|
|
139
|
+
@starting-style {
|
|
140
|
+
opacity: 0;
|
|
141
|
+
transform: translateY(-6px) scale(0.975);
|
|
142
|
+
}
|
|
97
143
|
}
|
|
98
144
|
}
|
|
99
145
|
|
|
100
146
|
// ── Search ───────────────────────────────────────────────────────────
|
|
101
147
|
|
|
102
148
|
.dropdown-search {
|
|
103
|
-
padding: calc($spacing
|
|
104
|
-
border-bottom:
|
|
149
|
+
padding: calc($spacing * 0.4);
|
|
150
|
+
border-bottom: 1.5px solid var(--divider);
|
|
105
151
|
|
|
106
152
|
input {
|
|
107
153
|
width: 100%;
|
|
108
|
-
padding: 0 calc($spacing
|
|
109
|
-
height: $form-height;
|
|
110
|
-
border:
|
|
111
|
-
border-radius: calc($border-radius
|
|
154
|
+
padding: 0 calc($spacing * 0.65);
|
|
155
|
+
min-height: calc($form-height * 1.3);
|
|
156
|
+
border: 1.5px solid var(--divider);
|
|
157
|
+
border-radius: calc($border-radius * 1.1);
|
|
112
158
|
background: var(--background);
|
|
113
159
|
color: var(--primary-text);
|
|
114
160
|
box-sizing: border-box;
|
|
115
161
|
outline: none;
|
|
116
|
-
|
|
162
|
+
font-size: $spacing;
|
|
163
|
+
box-shadow: inset 0 1.5px 4px rgba(0, 0, 0, 0.05);
|
|
164
|
+
transition:
|
|
165
|
+
border-color 0.16s ease,
|
|
166
|
+
box-shadow 0.22s cubic-bezier(0.16, 1, 0.3, 1);
|
|
167
|
+
|
|
168
|
+
&::placeholder {
|
|
169
|
+
color: var(--secondary-text);
|
|
170
|
+
opacity: 0.65;
|
|
171
|
+
}
|
|
117
172
|
|
|
118
173
|
&:focus {
|
|
119
174
|
border-color: var(--accent-color);
|
|
175
|
+
box-shadow:
|
|
176
|
+
inset 0 1px 3px rgba(0, 0, 0, 0.03),
|
|
177
|
+
0 0 0 3.5px color-mix(in srgb, var(--accent-color) 13%, transparent);
|
|
120
178
|
}
|
|
121
179
|
}
|
|
122
180
|
}
|
|
@@ -128,6 +186,7 @@
|
|
|
128
186
|
overflow-y: auto;
|
|
129
187
|
position: relative;
|
|
130
188
|
-webkit-overflow-scrolling: touch;
|
|
189
|
+
padding: 0.25rem;
|
|
131
190
|
}
|
|
132
191
|
|
|
133
192
|
.dropdown-list-scroller {
|
|
@@ -144,7 +203,7 @@
|
|
|
144
203
|
// ── Items ─────────────────────────────────────────────────────────────
|
|
145
204
|
|
|
146
205
|
.dropdown-item {
|
|
147
|
-
padding: 0 calc($spacing * 0.
|
|
206
|
+
padding: 0 calc($spacing * 0.65);
|
|
148
207
|
cursor: pointer;
|
|
149
208
|
box-sizing: border-box;
|
|
150
209
|
display: flex;
|
|
@@ -152,11 +211,12 @@
|
|
|
152
211
|
overflow: hidden;
|
|
153
212
|
background: var(--background);
|
|
154
213
|
color: var(--primary-text);
|
|
155
|
-
|
|
214
|
+
border-radius: calc($border-radius * 1.1);
|
|
215
|
+
font-size: 0.9375rem;
|
|
216
|
+
transition: background-color 0.1s ease;
|
|
156
217
|
|
|
157
218
|
&:hover {
|
|
158
219
|
background-color: var(--hover);
|
|
159
|
-
color: var(--accent-color);
|
|
160
220
|
}
|
|
161
221
|
|
|
162
222
|
&.selected {
|
|
@@ -174,6 +234,8 @@
|
|
|
174
234
|
height: calc($spacing * 0.8);
|
|
175
235
|
min-height: unset;
|
|
176
236
|
max-height: calc($spacing * 0.8);
|
|
237
|
+
padding: 0;
|
|
238
|
+
box-shadow: none;
|
|
177
239
|
border: 1.5px solid var(--divider);
|
|
178
240
|
border-radius: calc($border-radius / 2);
|
|
179
241
|
background: var(--background);
|
package/js/virtual-dropdown.js
CHANGED
|
@@ -15,6 +15,7 @@ class VirtualDropdown {
|
|
|
15
15
|
this.renderLimit = config.renderLimit || 20;
|
|
16
16
|
this.itemHeight = config.itemHeight || 40;
|
|
17
17
|
this.onSelect = config.onSelect ?? null;
|
|
18
|
+
this.anchorName = `--vd-${Math.random().toString(36).slice(2, 9)}`;
|
|
18
19
|
this.selectedValues = new Set();
|
|
19
20
|
this.filteredOptions = [...this.options];
|
|
20
21
|
this.isOpen = false;
|
|
@@ -34,7 +35,7 @@ class VirtualDropdown {
|
|
|
34
35
|
<span class="trigger-text">${escapeHtml(this.placeholder)}</span>
|
|
35
36
|
<span class="trigger-arrow" aria-hidden="true">▼</span>
|
|
36
37
|
</div>
|
|
37
|
-
<div class="dropdown-menu" role="listbox">
|
|
38
|
+
<div class="dropdown-menu" popover="manual" role="listbox">
|
|
38
39
|
${this.searchable ? '<div class="dropdown-search"><input type="text" placeholder="Search..." aria-label="Search options"></div>' : ''}
|
|
39
40
|
<div class="dropdown-list-wrapper">
|
|
40
41
|
<div class="dropdown-list-scroller">
|
|
@@ -51,6 +52,10 @@ class VirtualDropdown {
|
|
|
51
52
|
this.scroller = this.querySelector('.dropdown-list-scroller');
|
|
52
53
|
this.spacer = this.querySelector('.virtual-spacer');
|
|
53
54
|
this.content = this.querySelector('.virtual-content');
|
|
55
|
+
// Wire up anchor positioning: each instance gets a unique anchor name
|
|
56
|
+
// so multiple dropdowns on the same page don't interfere.
|
|
57
|
+
this.trigger.style.setProperty('anchor-name', this.anchorName);
|
|
58
|
+
this.menu.style.setProperty('position-anchor', this.anchorName);
|
|
54
59
|
if (this.searchable) {
|
|
55
60
|
this.searchInput = this.querySelector('.dropdown-search input');
|
|
56
61
|
}
|
|
@@ -77,8 +82,10 @@ class VirtualDropdown {
|
|
|
77
82
|
};
|
|
78
83
|
this.trigger.addEventListener('keydown', handleTriggerKeydown);
|
|
79
84
|
this.boundHandlers.set('triggerKeydown', handleTriggerKeydown);
|
|
85
|
+
// Close when clicking outside. Still needed because popover="manual"
|
|
86
|
+
// does not auto-dismiss on outside clicks.
|
|
80
87
|
const handleDocumentClick = (e) => {
|
|
81
|
-
if (!this.container.contains(e.target)) {
|
|
88
|
+
if (!this.container.contains(e.target) && !this.menu.contains(e.target)) {
|
|
82
89
|
this.close();
|
|
83
90
|
}
|
|
84
91
|
};
|
|
@@ -99,6 +106,19 @@ class VirtualDropdown {
|
|
|
99
106
|
};
|
|
100
107
|
this.listWrapper.addEventListener('scroll', handleScroll);
|
|
101
108
|
this.boundHandlers.set('scroll', handleScroll);
|
|
109
|
+
// Sync isOpen if the browser closes the popover externally (e.g. another
|
|
110
|
+
// popover="auto" element stealing focus — not typical for "manual" but
|
|
111
|
+
// good defensive practice).
|
|
112
|
+
const handlePopoverToggle = (e) => {
|
|
113
|
+
const te = e;
|
|
114
|
+
if (te.newState === 'closed' && this.isOpen) {
|
|
115
|
+
this.isOpen = false;
|
|
116
|
+
this.container.classList.remove('open');
|
|
117
|
+
this.trigger.setAttribute('aria-expanded', 'false');
|
|
118
|
+
}
|
|
119
|
+
};
|
|
120
|
+
this.menu.addEventListener('toggle', handlePopoverToggle);
|
|
121
|
+
this.boundHandlers.set('popoverToggle', handlePopoverToggle);
|
|
102
122
|
}
|
|
103
123
|
toggle() {
|
|
104
124
|
this.isOpen ? this.close() : this.open();
|
|
@@ -106,7 +126,7 @@ class VirtualDropdown {
|
|
|
106
126
|
open() {
|
|
107
127
|
this.isOpen = true;
|
|
108
128
|
this.container.classList.add('open');
|
|
109
|
-
this.menu.
|
|
129
|
+
this.menu.showPopover();
|
|
110
130
|
this.trigger.setAttribute('aria-expanded', 'true');
|
|
111
131
|
this.renderList();
|
|
112
132
|
if (this.searchable && this.searchInput) {
|
|
@@ -116,7 +136,7 @@ class VirtualDropdown {
|
|
|
116
136
|
close() {
|
|
117
137
|
this.isOpen = false;
|
|
118
138
|
this.container.classList.remove('open');
|
|
119
|
-
this.menu.
|
|
139
|
+
this.menu.hidePopover();
|
|
120
140
|
this.trigger.setAttribute('aria-expanded', 'false');
|
|
121
141
|
}
|
|
122
142
|
handleSearch(query) {
|
|
@@ -245,6 +265,9 @@ class VirtualDropdown {
|
|
|
245
265
|
}
|
|
246
266
|
}
|
|
247
267
|
destroy() {
|
|
268
|
+
if (this.isOpen) {
|
|
269
|
+
this.menu.hidePopover();
|
|
270
|
+
}
|
|
248
271
|
const triggerClick = this.boundHandlers.get('triggerClick');
|
|
249
272
|
if (triggerClick) {
|
|
250
273
|
this.trigger.removeEventListener('click', triggerClick);
|
|
@@ -265,6 +288,10 @@ class VirtualDropdown {
|
|
|
265
288
|
if (scroll) {
|
|
266
289
|
this.listWrapper.removeEventListener('scroll', scroll);
|
|
267
290
|
}
|
|
291
|
+
const popoverToggle = this.boundHandlers.get('popoverToggle');
|
|
292
|
+
if (popoverToggle) {
|
|
293
|
+
this.menu.removeEventListener('toggle', popoverToggle);
|
|
294
|
+
}
|
|
268
295
|
this.boundHandlers.clear();
|
|
269
296
|
this.container.innerHTML = '';
|
|
270
297
|
this.container.classList.remove('custom-dropdown', 'open');
|
package/js/virtual-dropdown.ts
CHANGED
|
@@ -25,6 +25,9 @@ class VirtualDropdown {
|
|
|
25
25
|
private readonly renderLimit: number;
|
|
26
26
|
private readonly itemHeight: number;
|
|
27
27
|
private readonly onSelect: ((selectedValues: Array<string | number>) => void) | null;
|
|
28
|
+
// Unique CSS anchor name for this instance — prevents conflicts when
|
|
29
|
+
// multiple dropdowns exist on the same page.
|
|
30
|
+
private readonly anchorName: string;
|
|
28
31
|
|
|
29
32
|
private trigger!: HTMLElement;
|
|
30
33
|
private triggerText!: HTMLElement;
|
|
@@ -59,6 +62,7 @@ class VirtualDropdown {
|
|
|
59
62
|
this.renderLimit = config.renderLimit || 20;
|
|
60
63
|
this.itemHeight = config.itemHeight || 40;
|
|
61
64
|
this.onSelect = config.onSelect ?? null;
|
|
65
|
+
this.anchorName = `--vd-${Math.random().toString(36).slice(2, 9)}`;
|
|
62
66
|
|
|
63
67
|
this.selectedValues = new Set();
|
|
64
68
|
this.filteredOptions = [...this.options];
|
|
@@ -82,7 +86,7 @@ class VirtualDropdown {
|
|
|
82
86
|
<span class="trigger-text">${escapeHtml(this.placeholder)}</span>
|
|
83
87
|
<span class="trigger-arrow" aria-hidden="true">▼</span>
|
|
84
88
|
</div>
|
|
85
|
-
<div class="dropdown-menu" role="listbox">
|
|
89
|
+
<div class="dropdown-menu" popover="manual" role="listbox">
|
|
86
90
|
${this.searchable ? '<div class="dropdown-search"><input type="text" placeholder="Search..." aria-label="Search options"></div>' : ''}
|
|
87
91
|
<div class="dropdown-list-wrapper">
|
|
88
92
|
<div class="dropdown-list-scroller">
|
|
@@ -101,6 +105,11 @@ class VirtualDropdown {
|
|
|
101
105
|
this.spacer = this.querySelector('.virtual-spacer');
|
|
102
106
|
this.content = this.querySelector('.virtual-content');
|
|
103
107
|
|
|
108
|
+
// Wire up anchor positioning: each instance gets a unique anchor name
|
|
109
|
+
// so multiple dropdowns on the same page don't interfere.
|
|
110
|
+
this.trigger.style.setProperty('anchor-name', this.anchorName);
|
|
111
|
+
this.menu.style.setProperty('position-anchor', this.anchorName);
|
|
112
|
+
|
|
104
113
|
if (this.searchable) {
|
|
105
114
|
this.searchInput = this.querySelector('.dropdown-search input');
|
|
106
115
|
}
|
|
@@ -130,8 +139,10 @@ class VirtualDropdown {
|
|
|
130
139
|
this.trigger.addEventListener('keydown', handleTriggerKeydown as EventListener);
|
|
131
140
|
this.boundHandlers.set('triggerKeydown', handleTriggerKeydown as EventListener);
|
|
132
141
|
|
|
142
|
+
// Close when clicking outside. Still needed because popover="manual"
|
|
143
|
+
// does not auto-dismiss on outside clicks.
|
|
133
144
|
const handleDocumentClick = (e: MouseEvent): void => {
|
|
134
|
-
if (!this.container.contains(e.target as Node)) {
|
|
145
|
+
if (!this.container.contains(e.target as Node) && !this.menu.contains(e.target as Node)) {
|
|
135
146
|
this.close();
|
|
136
147
|
}
|
|
137
148
|
};
|
|
@@ -154,6 +165,20 @@ class VirtualDropdown {
|
|
|
154
165
|
};
|
|
155
166
|
this.listWrapper.addEventListener('scroll', handleScroll);
|
|
156
167
|
this.boundHandlers.set('scroll', handleScroll);
|
|
168
|
+
|
|
169
|
+
// Sync isOpen if the browser closes the popover externally (e.g. another
|
|
170
|
+
// popover="auto" element stealing focus — not typical for "manual" but
|
|
171
|
+
// good defensive practice).
|
|
172
|
+
const handlePopoverToggle = (e: Event): void => {
|
|
173
|
+
const te = e as ToggleEvent;
|
|
174
|
+
if (te.newState === 'closed' && this.isOpen) {
|
|
175
|
+
this.isOpen = false;
|
|
176
|
+
this.container.classList.remove('open');
|
|
177
|
+
this.trigger.setAttribute('aria-expanded', 'false');
|
|
178
|
+
}
|
|
179
|
+
};
|
|
180
|
+
this.menu.addEventListener('toggle', handlePopoverToggle);
|
|
181
|
+
this.boundHandlers.set('popoverToggle', handlePopoverToggle);
|
|
157
182
|
}
|
|
158
183
|
|
|
159
184
|
private toggle(): void {
|
|
@@ -163,7 +188,7 @@ class VirtualDropdown {
|
|
|
163
188
|
private open(): void {
|
|
164
189
|
this.isOpen = true;
|
|
165
190
|
this.container.classList.add('open');
|
|
166
|
-
this.menu.
|
|
191
|
+
this.menu.showPopover();
|
|
167
192
|
this.trigger.setAttribute('aria-expanded', 'true');
|
|
168
193
|
this.renderList();
|
|
169
194
|
|
|
@@ -175,7 +200,7 @@ class VirtualDropdown {
|
|
|
175
200
|
private close(): void {
|
|
176
201
|
this.isOpen = false;
|
|
177
202
|
this.container.classList.remove('open');
|
|
178
|
-
this.menu.
|
|
203
|
+
this.menu.hidePopover();
|
|
179
204
|
this.trigger.setAttribute('aria-expanded', 'false');
|
|
180
205
|
}
|
|
181
206
|
|
|
@@ -327,6 +352,10 @@ class VirtualDropdown {
|
|
|
327
352
|
}
|
|
328
353
|
|
|
329
354
|
public destroy(): void {
|
|
355
|
+
if (this.isOpen) {
|
|
356
|
+
this.menu.hidePopover();
|
|
357
|
+
}
|
|
358
|
+
|
|
330
359
|
const triggerClick = this.boundHandlers.get('triggerClick');
|
|
331
360
|
if (triggerClick) {
|
|
332
361
|
this.trigger.removeEventListener('click', triggerClick);
|
|
@@ -352,6 +381,11 @@ class VirtualDropdown {
|
|
|
352
381
|
this.listWrapper.removeEventListener('scroll', scroll);
|
|
353
382
|
}
|
|
354
383
|
|
|
384
|
+
const popoverToggle = this.boundHandlers.get('popoverToggle');
|
|
385
|
+
if (popoverToggle) {
|
|
386
|
+
this.menu.removeEventListener('toggle', popoverToggle);
|
|
387
|
+
}
|
|
388
|
+
|
|
355
389
|
this.boundHandlers.clear();
|
|
356
390
|
|
|
357
391
|
this.container.innerHTML = '';
|
|
@@ -359,4 +393,4 @@ class VirtualDropdown {
|
|
|
359
393
|
}
|
|
360
394
|
}
|
|
361
395
|
|
|
362
|
-
export { VirtualDropdown, DropdownOption, VirtualDropdownConfig };
|
|
396
|
+
export { VirtualDropdown, DropdownOption, VirtualDropdownConfig };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dodlhuat/basix",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.6",
|
|
4
4
|
"description": "Basix is intended as a starter for the rapid development of a design. Each design element can be added individually to include only the data required. It is using plain javascript / typescript and therefore is not dependent on any plugin.",
|
|
5
5
|
"exports": {
|
|
6
6
|
"./css/*": "./css/*",
|