nfx-ui 0.1.0

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.
Files changed (119) hide show
  1. package/README.md +235 -0
  2. package/dist/animations.cjs +3 -0
  3. package/dist/animations.d.ts +102 -0
  4. package/dist/animations.mjs +14 -0
  5. package/dist/apis.cjs +5 -0
  6. package/dist/apis.cjs.map +1 -0
  7. package/dist/apis.d.ts +7 -0
  8. package/dist/apis.mjs +18 -0
  9. package/dist/apis.mjs.map +1 -0
  10. package/dist/chunk-BounceLoading-B54QEw0n.mjs +244 -0
  11. package/dist/chunk-BounceLoading-B54QEw0n.mjs.map +1 -0
  12. package/dist/chunk-BounceLoading-C6n4BZVJ.cjs +11 -0
  13. package/dist/chunk-BounceLoading-C6n4BZVJ.cjs.map +1 -0
  14. package/dist/chunk-animations-Brp-bsaE.mjs +1243 -0
  15. package/dist/chunk-animations-Brp-bsaE.mjs.map +1 -0
  16. package/dist/chunk-animations-e2F3zuP9.cjs +190 -0
  17. package/dist/chunk-animations-e2F3zuP9.cjs.map +1 -0
  18. package/dist/chunk-chunk-BFrxaqQT.cjs +1 -0
  19. package/dist/chunk-i18n-Bp6pPM9n.mjs +207 -0
  20. package/dist/chunk-i18n-Bp6pPM9n.mjs.map +1 -0
  21. package/dist/chunk-i18n-_7W7guSV.cjs +3 -0
  22. package/dist/chunk-i18n-_7W7guSV.cjs.map +1 -0
  23. package/dist/chunk-lstorage-BVCD00Ow.mjs +27 -0
  24. package/dist/chunk-lstorage-BVCD00Ow.mjs.map +1 -0
  25. package/dist/chunk-lstorage-BnxLXHgH.cjs +3 -0
  26. package/dist/chunk-lstorage-BnxLXHgH.cjs.map +1 -0
  27. package/dist/chunk-lucide-BhgnmTNo.mjs +158 -0
  28. package/dist/chunk-lucide-BhgnmTNo.mjs.map +1 -0
  29. package/dist/chunk-lucide-CP2lvOPY.cjs +3 -0
  30. package/dist/chunk-lucide-CP2lvOPY.cjs.map +1 -0
  31. package/dist/chunk-preference-CYl68oeU.cjs +3 -0
  32. package/dist/chunk-preference-CYl68oeU.cjs.map +1 -0
  33. package/dist/chunk-preference-DImtu5jI.mjs +51 -0
  34. package/dist/chunk-preference-DImtu5jI.mjs.map +1 -0
  35. package/dist/chunk-types-BE3JCLff.cjs +3 -0
  36. package/dist/chunk-types-BE3JCLff.cjs.map +1 -0
  37. package/dist/chunk-types-BkFxelHl.mjs +20 -0
  38. package/dist/chunk-types-BkFxelHl.mjs.map +1 -0
  39. package/dist/chunk-types-C_opkZGr.cjs +3 -0
  40. package/dist/chunk-types-C_opkZGr.cjs.map +1 -0
  41. package/dist/chunk-types-CkbZrFqZ.cjs +3 -0
  42. package/dist/chunk-types-CkbZrFqZ.cjs.map +1 -0
  43. package/dist/chunk-types-DNPBKfmx.mjs +11 -0
  44. package/dist/chunk-types-DNPBKfmx.mjs.map +1 -0
  45. package/dist/chunk-types-SD4MzUGp.mjs +11 -0
  46. package/dist/chunk-types-SD4MzUGp.mjs.map +1 -0
  47. package/dist/chunk-useLayout-BAJHOIL3.cjs +3 -0
  48. package/dist/chunk-useLayout-BAJHOIL3.cjs.map +1 -0
  49. package/dist/chunk-useLayout-DPxlynT-.mjs +12 -0
  50. package/dist/chunk-useLayout-DPxlynT-.mjs.map +1 -0
  51. package/dist/chunk-useTheme-DgleVMMh.cjs +3 -0
  52. package/dist/chunk-useTheme-DgleVMMh.cjs.map +1 -0
  53. package/dist/chunk-useTheme-oHcq3d0o.mjs +13 -0
  54. package/dist/chunk-useTheme-oHcq3d0o.mjs.map +1 -0
  55. package/dist/components.cjs +8 -0
  56. package/dist/components.cjs.map +1 -0
  57. package/dist/components.d.ts +411 -0
  58. package/dist/components.mjs +1688 -0
  59. package/dist/components.mjs.map +1 -0
  60. package/dist/constants.cjs +5 -0
  61. package/dist/constants.cjs.map +1 -0
  62. package/dist/constants.d.ts +130 -0
  63. package/dist/constants.mjs +85 -0
  64. package/dist/constants.mjs.map +1 -0
  65. package/dist/events.cjs +5 -0
  66. package/dist/events.cjs.map +1 -0
  67. package/dist/events.d.ts +66 -0
  68. package/dist/events.mjs +31 -0
  69. package/dist/events.mjs.map +1 -0
  70. package/dist/hooks.cjs +5 -0
  71. package/dist/hooks.cjs.map +1 -0
  72. package/dist/hooks.d.ts +316 -0
  73. package/dist/hooks.mjs +107 -0
  74. package/dist/hooks.mjs.map +1 -0
  75. package/dist/icons.cjs +3 -0
  76. package/dist/icons.d.ts +218 -0
  77. package/dist/icons.mjs +76 -0
  78. package/dist/languages.cjs +5 -0
  79. package/dist/languages.cjs.map +1 -0
  80. package/dist/languages.d.ts +174 -0
  81. package/dist/languages.mjs +112 -0
  82. package/dist/languages.mjs.map +1 -0
  83. package/dist/layouts.cjs +5 -0
  84. package/dist/layouts.cjs.map +1 -0
  85. package/dist/layouts.d.ts +209 -0
  86. package/dist/layouts.mjs +460 -0
  87. package/dist/layouts.mjs.map +1 -0
  88. package/dist/navigations.cjs +5 -0
  89. package/dist/navigations.cjs.map +1 -0
  90. package/dist/navigations.d.ts +72 -0
  91. package/dist/navigations.mjs +30 -0
  92. package/dist/navigations.mjs.map +1 -0
  93. package/dist/preference.cjs +3 -0
  94. package/dist/preference.d.ts +94 -0
  95. package/dist/preference.mjs +14 -0
  96. package/dist/services.cjs +5 -0
  97. package/dist/services.cjs.map +1 -0
  98. package/dist/services.d.ts +8 -0
  99. package/dist/services.mjs +26 -0
  100. package/dist/services.mjs.map +1 -0
  101. package/dist/stores.cjs +5 -0
  102. package/dist/stores.cjs.map +1 -0
  103. package/dist/stores.d.ts +101 -0
  104. package/dist/stores.mjs +167 -0
  105. package/dist/stores.mjs.map +1 -0
  106. package/dist/themes.cjs +5 -0
  107. package/dist/themes.cjs.map +1 -0
  108. package/dist/themes.d.ts +229 -0
  109. package/dist/themes.mjs +894 -0
  110. package/dist/themes.mjs.map +1 -0
  111. package/dist/types.cjs +2 -0
  112. package/dist/types.d.ts +147 -0
  113. package/dist/types.mjs +2 -0
  114. package/dist/utils.cjs +5 -0
  115. package/dist/utils.cjs.map +1 -0
  116. package/dist/utils.d.ts +374 -0
  117. package/dist/utils.mjs +293 -0
  118. package/dist/utils.mjs.map +1 -0
  119. package/package.json +196 -0
@@ -0,0 +1,1688 @@
1
+ (function(){try{if(typeof document<"u"){var e=document.createElement("style");e.appendChild(document.createTextNode(`.styles-module__loading___bgEAk{justify-content:center;align-items:center;display:inline-flex}.styles-module__loading___bgEAk svg polyline{fill:none;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.styles-module__loading___bgEAk svg polyline.styles-module__back___XLPvD{fill:none;stroke:var(--color-primary-alpha,#ff4d5033)}.styles-module__loading___bgEAk svg polyline.styles-module__front___hSxig{fill:none;stroke:var(--color-primary,#ff4d4f);stroke-dasharray:48 144;stroke-dashoffset:192px;animation:1.4s linear infinite styles-module__dash_682___AQzo6}@keyframes styles-module__dash_682___AQzo6{72.5%{opacity:0}to{stroke-dashoffset:0}}.styles-module__loader___E7OIM{justify-content:center;align-items:center;width:fit-content;height:fit-content;display:flex}.styles-module__truckWrapper___Sk4zX{flex-direction:column;justify-content:flex-end;align-items:center;width:100%;height:100%;display:flex;position:relative;overflow-x:hidden}.styles-module__truckBody___j7w2C{width:65%;height:fit-content;margin-bottom:6px;animation:1s linear infinite styles-module__motion___IiNlW}@keyframes styles-module__motion___IiNlW{0%{transform:translateY(0)}50%{transform:translateY(3px)}to{transform:translateY(0)}}.styles-module__truckTires___4ncTl{justify-content:space-between;align-items:center;width:65%;height:fit-content;padding:0 10px 0 15px;display:flex;position:absolute;bottom:0}.styles-module__tiresvg___IBQcN{width:24px}.styles-module__road___sxx-E{background-color:var(--color-fg-heading);border-radius:3px;align-self:flex-end;width:100%;height:1.5px;position:relative;bottom:0}.styles-module__road___sxx-E:before{content:"";background-color:var(--color-fg-heading);border-left:10px solid var(--color-bg);border-radius:3px;width:20px;height:100%;animation:1.4s linear infinite styles-module__roadAnimation___yvrHP;position:absolute;right:-50%}.styles-module__road___sxx-E:after{content:"";background-color:var(--color-fg-heading);border-left:4px solid var(--color-bg);border-radius:3px;width:10px;height:100%;animation:1.4s linear infinite styles-module__roadAnimation___yvrHP;position:absolute;right:-65%}.styles-module__lampPost___okcN5{height:45%;animation:1.4s linear infinite styles-module__roadAnimation___yvrHP;position:absolute;bottom:0;right:-90%}@keyframes styles-module__roadAnimation___yvrHP{0%{transform:translate(0)}to{transform:translate(-350px)}}.styles-module__loader___pFUzL{justify-content:center;align-items:center;display:inline-flex;position:relative}.styles-module__loader___pFUzL:before{content:"";background:var(--color-primary);opacity:.3;border-radius:50%;width:100%;height:5px;animation:.5s linear infinite styles-module__shadow324___sutUe;position:absolute;top:calc(100% + 12px);left:0}.styles-module__loader___pFUzL:after{content:"";background:var(--color-primary);width:100%;height:100%;position:absolute;top:0;left:0}.styles-module__square___GKjhm:after{border-radius:4px;animation:.5s linear infinite styles-module__jump7456Square___Z-D9b}.styles-module__circle___bUpSN:after{border-radius:50%;animation:.5s linear infinite styles-module__jump7456Circle___2AfF7}@keyframes styles-module__jump7456Square___Z-D9b{15%{border-bottom-right-radius:3px}25%{transform:translateY(9px)rotate(22.5deg)}50%{border-bottom-right-radius:40px;transform:translateY(18px)scaleY(.9)rotate(45deg)}75%{transform:translateY(9px)rotate(67.5deg)}to{transform:translateY(0)rotate(90deg)}}@keyframes styles-module__jump7456Circle___2AfF7{15%{border-bottom-right-radius:50%}25%{transform:translateY(9px)rotate(22.5deg)}50%{border-bottom-right-radius:40px;transform:translateY(18px)scaleY(.9)rotate(45deg)}75%{transform:translateY(9px)rotate(67.5deg)}to{transform:translateY(0)rotate(90deg)}}@keyframes styles-module__shadow324___sutUe{0%,to{transform:scale(1)}50%{transform:scaleX(1.2)}}.style-module__waves___oR3u7{width:100%;height:100%;margin:0;padding:0;position:absolute;top:0;left:0;overflow:hidden}.style-module__waves___oR3u7:before{content:"";width:.5rem;height:.5rem;transform:translate3d(calc(var(--x) - 50%), calc(var(--y) - 50%), 0);will-change:transform;background:#160000;border-radius:50%;position:absolute;top:0;left:0}.style-module__wavesCanvas___zkhTC{width:100%;height:100%;display:block}.style-module__squaresCanvas___22kMc{border:none;width:100%;height:100%;display:block}.style-module__container___HkxIe{background-color:#000;width:100%;height:100%;position:relative;overflow:hidden}.style-module__canvas___MR9JX{width:100%;height:100%;display:block}.style-module__outerVignette___i75nw{pointer-events:none;background:radial-gradient(circle,#0000 60%,#000 100%);width:100%;height:100%;position:absolute;top:0;left:0}.style-module__centerVignette___n9uVG{pointer-events:none;background:radial-gradient(circle,#000c 0%,#0000 60%);width:100%;height:100%;position:absolute;top:0;left:0}.style-module__container___Hh3-c{width:100%;height:100%;position:relative;overflow:hidden}.styles-module__button___RbliA{cursor:pointer;border:1px solid #0000;border-radius:.5rem;outline:none;justify-content:center;align-items:center;gap:.5rem;font-family:inherit;font-weight:500;transition:all .2s;display:inline-flex;position:relative}.styles-module__button___RbliA:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.styles-module__button___RbliA:disabled{cursor:not-allowed;opacity:.6}.styles-module__button___RbliA.styles-module__small___yK0Yp{min-height:2rem;padding:.5rem 1rem;font-size:.8125rem}.styles-module__button___RbliA.styles-module__medium___eBTch{min-height:2.5rem;padding:.75rem 1.5rem;font-size:.875rem}.styles-module__button___RbliA.styles-module__large___pIZkl{min-height:3rem;padding:1rem 2rem;font-size:1rem}.styles-module__button___RbliA.styles-module__primary___qsZpA{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-primary-fg,#fff)}.styles-module__button___RbliA.styles-module__primary___qsZpA:hover:not(:disabled){background:var(--color-primary-light);border-color:var(--color-primary-light);transform:translateY(-1px)}.styles-module__button___RbliA.styles-module__primary___qsZpA:active:not(:disabled){transform:translateY(0)}.styles-module__button___RbliA.styles-module__secondary___SCpPv{background:var(--color-bg-2);border-color:var(--color-border-4);color:var(--color-fg-text)}.styles-module__button___RbliA.styles-module__secondary___SCpPv:hover:not(:disabled){background:var(--color-bg-3);border-color:var(--color-primary)}.styles-module__button___RbliA.styles-module__outline___rrlk9{border-color:var(--color-border-4);color:var(--color-fg-text);background:0 0}.styles-module__button___RbliA.styles-module__outline___rrlk9:hover:not(:disabled){background:var(--color-bg-2);border-color:var(--color-primary)}.styles-module__button___RbliA.styles-module__ghost___QMoiH{color:var(--color-fg-text);background:0 0;border-color:#0000}.styles-module__button___RbliA.styles-module__ghost___QMoiH:hover:not(:disabled){background:var(--color-bg-2)}.styles-module__button___RbliA.styles-module__danger___MW-pg{background:var(--color-danger);border-color:var(--color-danger);color:#fff}.styles-module__button___RbliA.styles-module__danger___MW-pg:hover:not(:disabled){background:var(--color-danger-light);border-color:var(--color-danger-light);transform:translateY(-1px)}.styles-module__button___RbliA.styles-module__danger___MW-pg:active:not(:disabled){transform:translateY(0)}.styles-module__button___RbliA.styles-module__fullWidth___-dXBR{width:100%}.styles-module__button___RbliA.styles-module__loading___UWw6V{pointer-events:none}.styles-module__spinner___KpJ-L{border:2px solid;border-top-color:#0000;border-radius:50%;flex-shrink:0;width:1rem;height:1rem;animation:.6s linear infinite styles-module__spin___ntZKM}@keyframes styles-module__spin___ntZKM{to{transform:rotate(360deg)}}.styles-module__button___RbliA.styles-module__small___yK0Yp .styles-module__spinner___KpJ-L{border-width:1.5px;width:.875rem;height:.875rem}.styles-module__button___RbliA.styles-module__large___pIZkl .styles-module__spinner___KpJ-L{border-width:2.5px;width:1.25rem;height:1.25rem}.styles-module__content___oyZRO{align-items:center;display:flex}.styles-module__leftIcon___cDktv,.styles-module__rightIcon___1mpk0{flex-shrink:0;align-items:center;display:flex}.styles-module__leftIcon___cDktv{margin-right:-.25rem}.styles-module__rightIcon___1mpk0{margin-left:-.25rem}.styles-module__button___RbliA.styles-module__iconOnly___iOv-U{aspect-ratio:1;min-width:2.5rem;min-height:2.5rem;padding:0}.styles-module__button___RbliA.styles-module__iconOnly___iOv-U.styles-module__small___yK0Yp{min-width:2rem;min-height:2rem}.styles-module__button___RbliA.styles-module__iconOnly___iOv-U.styles-module__large___pIZkl{min-width:3rem;min-height:3rem}.styles-module__iconContainer___bwvE3{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.styles-module__layout___WaGy9{flex-direction:column;justify-content:center;align-items:center;gap:.25rem;width:100%;display:flex}.styles-module__horizontal___lKpGq{justify-content:center;align-items:center;gap:.5rem;width:100%;display:flex}.styles-module__topIcon___bzw6s,.styles-module__bottomIcon___suPfa{flex-shrink:0;justify-content:center;align-items:center;display:flex}.styles-module__iconOnly___iOv-U .styles-module__iconContainer___bwvE3 .styles-module__leftIcon___cDktv,.styles-module__iconOnly___iOv-U .styles-module__iconContainer___bwvE3 .styles-module__rightIcon___1mpk0{margin:0}.Dropdown-module__dropdown___c9wIp{width:100%;display:inline-block;position:relative}.Dropdown-module__dropdownButton___suNh-{border:1px solid var(--color-separator);cursor:pointer;text-align:left;background:var(--color-bg-2);width:100%;color:var(--color-fg-text);border-radius:8px;outline:none;justify-content:space-between;align-items:center;padding:.75rem 2.5rem .75rem 1rem;font-family:inherit;font-size:1rem;font-weight:400;line-height:1.5rem;transition:all .2s ease-in-out;display:flex;position:relative}.Dropdown-module__dropdownButton___suNh-:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-bg-1)}.Dropdown-module__dropdownButton___suNh-:focus{border-color:var(--color-primary);background:var(--color-bg-1);box-shadow:0 0 0 2px var(--color-primary-transparent)}.Dropdown-module__dropdownButton___suNh-.Dropdown-module__disabled___Rz0pX{cursor:not-allowed;opacity:.6;background:var(--color-bg-3)}.Dropdown-module__dropdownButton___suNh-.Dropdown-module__error___F7dDu{border-color:#ef4444}.Dropdown-module__buttonText___D2zxn{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.Dropdown-module__chevronIcon___uyawp{color:var(--color-fg-highlight);flex-shrink:0;transition:transform .15s;position:absolute;right:1rem}.Dropdown-module__chevronIcon___uyawp.Dropdown-module__open___APoXd{transform:rotate(180deg)}.Dropdown-module__dropdownMenu___WJ-QO{background:var(--color-bg);border:1px solid var(--color-border-4);z-index:1000;border-radius:8px;min-width:100%;animation:.15s ease-out Dropdown-module__slideDown___sRCmO;position:absolute;top:calc(100% + .5rem);left:0;right:0;overflow:hidden;box-shadow:0 .5rem 1rem #0000002d}@keyframes Dropdown-module__slideDown___sRCmO{0%{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:translateY(0)}}.Dropdown-module__optionsList___Be6RN{margin:0;padding:.5rem 0;list-style:none}.Dropdown-module__option___q-NgT{cursor:pointer;color:var(--color-fg-text);align-items:center;padding:.75rem 1rem;font-size:.875rem;transition:all .15s;display:flex}.Dropdown-module__option___q-NgT:hover{background-color:var(--color-bg-2)}.Dropdown-module__option___q-NgT.Dropdown-module__selected___-OTW-{background-color:var(--color-bg-3);color:var(--color-fg-highlight);font-weight:600}@media (width<=768px){.Dropdown-module__dropdownButton___suNh-{padding:.625rem 2.25rem .625rem .875rem;font-size:.875rem}.Dropdown-module__chevronIcon___uyawp{right:.875rem}.Dropdown-module__option___q-NgT{padding:.625rem .875rem;font-size:.8125rem}}.styles-module__wrapper___COeGm{flex-direction:column;gap:.5rem;display:flex}.styles-module__wrapper___COeGm.styles-module__fullWidth___lVU49{width:100%}.styles-module__label___gfOA7{color:var(--color-fg-heading);align-items:center;gap:.25rem;font-size:.875rem;font-weight:500;display:flex}.styles-module__required___-zOy5{color:var(--color-danger)}.styles-module__inputContainer___wXY53{align-items:center;width:100%;display:flex;position:relative}.styles-module__input___IZDc3{border:1px solid var(--color-border-4);background:var(--color-bg);width:100%;color:var(--color-fg-text);border-radius:.5rem;outline:none;font-family:inherit;font-size:.875rem;transition:all .2s}.styles-module__input___IZDc3[type=password]::-webkit-credentials-auto-fill-button{visibility:hidden!important;opacity:0!important;pointer-events:none!important;appearance:none!important;display:none!important;position:absolute!important;left:-9999px!important}.styles-module__input___IZDc3[type=password]::-webkit-strong-password-toggle-button{visibility:hidden!important;opacity:0!important;pointer-events:none!important;appearance:none!important;width:0!important;height:0!important;margin:0!important;padding:0!important;display:none!important;position:absolute!important;left:-9999px!important}.styles-module__input___IZDc3[type=password]::-ms-reveal{visibility:hidden!important;opacity:0!important;pointer-events:none!important;width:0!important;height:0!important;display:none!important;position:absolute!important;left:-9999px!important}.styles-module__input___IZDc3[type=password]::-ms-clear{visibility:hidden!important;opacity:0!important;pointer-events:none!important;width:0!important;height:0!important;display:none!important;position:absolute!important;left:-9999px!important}.styles-module__input___IZDc3:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb,102, 126, 234), .1)}.styles-module__input___IZDc3::placeholder{color:var(--color-fg-muted,var(--color-fg-text));opacity:.5}.styles-module__input___IZDc3.styles-module__small___cuGyE{padding:.5rem .75rem;font-size:.8125rem}.styles-module__input___IZDc3.styles-module__medium___JdDPu{padding:.75rem;font-size:.875rem}.styles-module__input___IZDc3.styles-module__large___fMmiG{padding:1rem;font-size:1rem}.styles-module__input___IZDc3.styles-module__default___-eZTG{background:var(--color-bg);border-color:var(--color-border-4)}.styles-module__input___IZDc3.styles-module__filled___EQ5PQ{background:var(--color-bg-2);border-color:var(--color-border-3)}.styles-module__inputContainer___wXY53.styles-module__withLeftIcon___NFn6- .styles-module__input___IZDc3{padding-left:2.5rem}.styles-module__inputContainer___wXY53.styles-module__withRightIcon___mz-hn .styles-module__input___IZDc3{padding-right:2.5rem}.styles-module__inputContainer___wXY53.styles-module__withLeftIcon___NFn6- .styles-module__input___IZDc3.styles-module__small___cuGyE{padding-left:2rem}.styles-module__inputContainer___wXY53.styles-module__withRightIcon___mz-hn .styles-module__input___IZDc3.styles-module__small___cuGyE{padding-right:2rem}.styles-module__inputContainer___wXY53.styles-module__withLeftIcon___NFn6- .styles-module__input___IZDc3.styles-module__large___fMmiG{padding-left:3rem}.styles-module__inputContainer___wXY53.styles-module__withRightIcon___mz-hn .styles-module__input___IZDc3.styles-module__large___fMmiG{padding-right:3rem}.styles-module__leftIcon___jEW5H,.styles-module__rightIcon___bA3Eo{color:var(--color-fg-muted,var(--color-fg-text));pointer-events:none;z-index:1;justify-content:center;align-items:center;display:flex;position:absolute}.styles-module__leftIcon___jEW5H{left:.75rem}.styles-module__rightIcon___bA3Eo{right:.75rem}.styles-module__rightIcon___bA3Eo.styles-module__rightIconInteractive___ccypw{pointer-events:auto}.styles-module__inputContainer___wXY53.styles-module__containerSmall___20ICq .styles-module__leftIcon___jEW5H{left:.5rem}.styles-module__inputContainer___wXY53.styles-module__containerSmall___20ICq .styles-module__rightIcon___bA3Eo{right:.5rem}.styles-module__inputContainer___wXY53.styles-module__containerLarge___IztuN .styles-module__leftIcon___jEW5H{left:1rem}.styles-module__inputContainer___wXY53.styles-module__containerLarge___IztuN .styles-module__rightIcon___bA3Eo{right:1rem}.styles-module__input___IZDc3.styles-module__error___946qV{border-color:var(--color-danger)}.styles-module__input___IZDc3.styles-module__error___946qV:focus{border-color:var(--color-danger);box-shadow:0 0 0 3px rgba(var(--color-danger-rgb,244, 67, 54), .1)}.styles-module__input___IZDc3.styles-module__disabled___sJvLd{background:var(--color-bg-3);border-color:var(--color-border-5);color:var(--color-fg-muted);cursor:not-allowed;opacity:.6}.styles-module__errorMessage___5Mn22{color:var(--color-danger);margin:0;font-size:.75rem}.styles-module__helperText___T2eui{color:var(--color-fg-muted);margin:0;font-size:.75rem}.styles-module__container___xeg8O{flex-direction:column;gap:1rem;display:flex}.styles-module__label___qhbKe{color:var(--color-fg-text);font-size:.875rem;font-weight:500}.styles-module__error___O-7AY{color:var(--color-error);font-size:.875rem}.styles-module__pairs___owGV3{flex-direction:column;gap:.75rem;display:flex}.styles-module__pair___G4WFY{grid-template-columns:1fr 2fr auto;align-items:start;gap:.75rem;display:grid}.styles-module__keyInput___wl1M1,.styles-module__valueInput___HiwJ5{flex:1}.styles-module__removeButton___4-X0b{min-width:auto;color:var(--color-error);padding:.5rem}.styles-module__removeButton___4-X0b:hover{background-color:var(--color-error);color:#fff}.styles-module__addButton___QFljt{align-self:flex-start}@media (width<=768px){.styles-module__pair___G4WFY{grid-template-columns:1fr}.styles-module__removeButton___4-X0b{align-self:flex-end}}.styles-module__searchContainer___86TGN{width:100%;max-width:400px;position:relative}.styles-module__searchIcon___ZInry{color:var(--color-fg-muted);pointer-events:none;position:absolute;top:50%;left:1rem;transform:translateY(-50%)}.styles-module__searchInput___SqZXQ{border:1px solid var(--color-border);width:100%;color:var(--color-fg-text);background:var(--color-bg-2);border-radius:.5rem;padding:.75rem 3rem;font-size:1rem;transition:all .2s}.styles-module__searchInput___SqZXQ:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-bg);outline:none}.styles-module__searchInput___SqZXQ::placeholder{color:var(--color-fg-muted)}.styles-module__clearBtn___7jExr{width:1.5rem;height:1.5rem;color:var(--color-fg-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:all .2s;display:flex;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.styles-module__clearBtn___7jExr:hover{color:var(--color-fg-text)}@media (width<=768px){.styles-module__searchContainer___86TGN{max-width:100%}}.styles-module__container___nGxdM{flex-direction:column;gap:.75rem;display:flex}.styles-module__toggleContainer___VrsKI{align-items:center;display:flex}.styles-module__toggleButton___IzD6Z{border:1px solid var(--color-border-4);background:var(--color-bg);color:var(--color-fg-muted);cursor:pointer;border-radius:.5rem;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;transition:all .2s;display:flex}.styles-module__toggleButton___IzD6Z:hover{background:var(--color-bg-2);border-color:var(--color-border-3)}.styles-module__toggleButton___IzD6Z.styles-module__enabled___cao0G{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.styles-module__toggleButton___IzD6Z.styles-module__enabled___cao0G:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.styles-module__optionsContainer___LOzlO{background:var(--color-bg-2);border:1px solid var(--color-border-4);border-radius:.5rem;gap:.5rem;padding:.5rem;display:flex}.styles-module__option___abhnC{border:1px solid var(--color-border-4);background:var(--color-bg);color:var(--color-fg);cursor:pointer;border-radius:.375rem;flex:1;justify-content:center;align-items:center;gap:.375rem;padding:.5rem .875rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.styles-module__option___abhnC:hover{background:var(--color-bg-3);border-color:var(--color-border-3)}.styles-module__option___abhnC.styles-module__active___pqmSi{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.styles-module__option___abhnC.styles-module__active___pqmSi:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.styles-module__nbSelect___KjxSc{font-family:inherit;font-size:.9375rem;font-weight:600;line-height:1.5rem;display:inline-block;position:relative}.styles-module__selectButton___AKZe4{cursor:pointer;text-align:left;width:100%;min-width:8rem;font-family:inherit;font-size:inherit;font-weight:inherit;line-height:inherit;appearance:none;border:1px solid;border-radius:.25rem;outline:none;justify-content:space-between;align-items:center;padding:.4375rem 2.2rem .4375rem 1.125rem;transition:all .15s ease-in-out;display:flex;position:relative}.styles-module__selectButton___AKZe4.styles-module__primary___HU36a{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-primary-fg)}.styles-module__selectButton___AKZe4.styles-module__primary___HU36a:hover:not(:disabled){background-color:var(--color-primary-light);border-color:var(--color-primary-light)}.styles-module__selectButton___AKZe4.styles-module__primary___HU36a:focus,.styles-module__selectButton___AKZe4.styles-module__primary___HU36a.styles-module__open___9AKMb{background-color:var(--color-primary-light);border-color:var(--color-primary-light);box-shadow:0 0 0 .125rem #8f9bb340}.styles-module__selectButton___AKZe4.styles-module__default___LedYP{background-color:var(--color-bg);border-color:var(--color-border-4);color:var(--color-fg-text)}.styles-module__selectButton___AKZe4.styles-module__default___LedYP:hover:not(:disabled){background-color:var(--color-bg-2);border-color:var(--color-primary)}.styles-module__selectButton___AKZe4.styles-module__default___LedYP:focus,.styles-module__selectButton___AKZe4.styles-module__default___LedYP.styles-module__open___9AKMb{background-color:var(--color-bg-2);border-color:var(--color-primary);box-shadow:0 0 0 .125rem #8f9bb340}.styles-module__selectButton___AKZe4:disabled{cursor:not-allowed;opacity:.6}.styles-module__buttonText___QSLO1{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.styles-module__chevronIcon___qAHaD{flex-shrink:0;width:1.5rem;height:1.5rem;transition:transform .15s;position:absolute;right:.41rem}.styles-module__selectButton___AKZe4.styles-module__primary___HU36a .styles-module__chevronIcon___qAHaD{color:var(--color-primary-fg)}.styles-module__selectButton___AKZe4.styles-module__default___LedYP .styles-module__chevronIcon___qAHaD{color:var(--color-fg)}.styles-module__chevronIcon___qAHaD.styles-module__open___9AKMb{transform:rotate(180deg)}.styles-module__optionsPanel___NWAp3{background-color:var(--color-bg);border:1px solid var(--color-border-4);z-index:1000;transform-origin:top;visibility:hidden;pointer-events:none;border-radius:.25rem;min-width:100%;position:absolute;top:calc(100% + .5rem);left:0;right:0;overflow:hidden;box-shadow:0 .5rem 1rem #00000026}.styles-module__optionsPanel___NWAp3.styles-module__open___9AKMb{visibility:visible;pointer-events:auto;animation:.25s ease-out styles-module__expandDown___eD4lh}.styles-module__optionsPanel___NWAp3.styles-module__closed___bez-q{visibility:hidden;pointer-events:none;animation:.25s ease-out styles-module__collapseUp___dt1E7}@keyframes styles-module__expandDown___eD4lh{0%{opacity:0;transform:scaleY(0)}to{opacity:1;transform:scaleY(1)}}@keyframes styles-module__collapseUp___dt1E7{0%{opacity:1;transform:scaleY(1)}to{opacity:0;transform:scaleY(0)}}.styles-module__optionsPanel___NWAp3.styles-module__primary___HU36a{border-color:var(--color-primary)}.styles-module__optionsPanel___NWAp3.styles-module__default___LedYP{border-color:var(--color-border-4)}.styles-module__optionsList___AxhVp{margin:0;padding:.5rem 0;list-style:none}.styles-module__option___t1SSw{cursor:pointer;color:var(--color-fg-text);justify-content:space-between;align-items:center;padding:.75rem 1.125rem;transition:all .15s;display:flex}.styles-module__option___t1SSw:hover{background-color:var(--color-bg-2)}.styles-module__option___t1SSw.styles-module__selected___azD4A{background-color:var(--color-primary);color:var(--color-primary-fg);font-weight:700}@media (prefers-color-scheme:dark){.styles-module__optionsPanel___NWAp3{box-shadow:0 .5rem 1rem #0000004d}}.styles-module__sliderContainer___lgpaD{flex-direction:column;gap:.5rem;display:flex}.styles-module__sliderContainer___lgpaD.styles-module__fullWidth___ZS8W5{width:100%}.styles-module__labelRow___dkVVM{justify-content:space-between;align-items:center;min-height:1.5rem;margin-bottom:.5rem;display:flex}.styles-module__label___bXGZs{color:var(--color-fg-text);font-size:.875rem;font-weight:500}.styles-module__required___FuyfE{color:var(--color-danger);margin-left:.25rem}.styles-module__sliderWrapper___1Wdti{touch-action:none;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:.75rem;width:100%;display:flex}.styles-module__sliderRoot___yzOjR{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;flex-grow:1;align-items:center;width:100%;padding:.75rem 0;display:flex;position:relative}.styles-module__sliderRoot___yzOjR:active{cursor:grabbing}.styles-module__sliderTrackWrapper___N72WQ{flex-grow:1;display:flex;position:relative}.styles-module__sliderTrack___AltcD{background-color:var(--color-bg-3);border-radius:9999px;width:100%;height:.375rem;position:relative;overflow:hidden}.styles-module__sliderRange___U3g0-{background-color:var(--color-primary);border-radius:9999px;height:100%;position:absolute}.styles-module__valueIndicator___aLf0I{color:var(--color-primary);text-align:center;flex-shrink:0;min-width:2rem;font-size:.875rem;font-weight:600;line-height:1}.styles-module__iconWrapper___wL-b8{flex-shrink:0;justify-content:center;align-items:center;display:flex}.styles-module__icon___vHsID{width:20px;height:20px;color:var(--color-fg-muted)}.styles-module__errorMessage___qFgGe{color:var(--color-danger);margin:0;font-size:.75rem}.styles-module__helperText___tgBGl{color:var(--color-fg-muted);margin:0;font-size:.75rem}.styles-module__loadingContainer___OMgwS{flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;min-height:60vh;display:flex}.styles-module__loadingText___KRZqR{color:var(--color-fg-muted);font-size:1rem}.styles-module__errorContainer___qhAg2{text-align:center;min-height:60vh;color:var(--color-fg-text);flex-direction:column;justify-content:center;align-items:center;gap:2rem;padding:3rem 2rem;display:flex}.styles-module__errorIconWrapper___IHZrN{background:linear-gradient(135deg, rgba(var(--color-error-rgb,239, 68, 68), .1), rgba(var(--color-error-rgb,239, 68, 68), .05));border:2px solid rgba(var(--color-error-rgb,239, 68, 68), .2);border-radius:50%;justify-content:center;align-items:center;width:120px;height:120px;animation:2s ease-in-out infinite styles-module__pulse___Lju-z;display:flex}@keyframes styles-module__pulse___Lju-z{0%,to{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.05)}}.styles-module__errorIcon___oGDIP{color:var(--color-error,#ef4444);stroke-width:1.5px}.styles-module__errorContent___F55rQ{flex-direction:column;align-items:center;gap:1rem;width:100%;max-width:600px;display:flex}.styles-module__errorTitle___hC8D-{color:var(--color-fg-heading);letter-spacing:-.02em;margin:0;font-size:1.75rem;font-weight:700;line-height:1.2}.styles-module__errorDescription___hZtuP{color:var(--color-fg-muted);max-width:480px;margin:0;font-size:1rem;line-height:1.6}.styles-module__errorDetailsWrapper___-sp8b{width:100%;max-width:600px;margin-top:.5rem}.styles-module__errorDetailsContainer___eywMo{text-align:left;border:1px solid var(--color-border,#0000001a);background:var(--color-bg-2,#00000005);border-radius:.75rem;width:100%;transition:all .2s;overflow:hidden}.styles-module__errorDetailsContainer___eywMo:hover{border-color:var(--color-border-hover,#00000026);background:var(--color-bg-3,#00000008)}.styles-module__errorDetailsSummary___hGEoD{cursor:pointer;color:var(--color-fg-muted);-webkit-user-select:none;user-select:none;padding:.875rem 1.25rem;font-size:.875rem;font-weight:500;list-style:none;transition:color .2s}.styles-module__errorDetailsSummary___hGEoD:hover{color:var(--color-fg-text)}.styles-module__errorDetailsSummary___hGEoD::-webkit-details-marker{display:none}.styles-module__errorDetailsSummary___hGEoD:before{content:"▶";margin-right:.5rem;font-size:.75rem;transition:transform .2s;display:inline-block}.styles-module__errorDetailsContainer___eywMo[open] .styles-module__errorDetailsSummary___hGEoD:before{transform:rotate(90deg)}.styles-module__errorDetails___tzCT-{background:var(--color-bg-3,#00000008);border-top:1px solid var(--color-border,#0000001a);max-width:100%;color:var(--color-fg-muted);white-space:pre-wrap;word-break:break-word;margin:0;padding:1rem 1.25rem;font-family:Monaco,Menlo,Ubuntu Mono,Consolas,source-code-pro,monospace;font-size:.8125rem;line-height:1.6;overflow-x:auto}.styles-module__errorActions___gtqYw{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;margin-top:1rem;display:flex}.styles-module__retryButton___TA4jm{background:var(--color-primary);color:var(--color-primary-fg);cursor:pointer;border:none;border-radius:.5rem;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 2rem;font-size:.9375rem;font-weight:500;transition:all .2s;display:inline-flex;box-shadow:0 2px 8px #00000014}.styles-module__retryButton___TA4jm:hover{background:var(--color-primary-hover,var(--color-primary));transform:translateY(-2px);box-shadow:0 4px 16px #0000001f}.styles-module__retryButton___TA4jm:active{transform:translateY(0);box-shadow:0 2px 8px #00000014}.styles-module__retryButtonIcon___vzfp-{font-size:1.125rem;line-height:1;transition:transform .3s;display:inline-block}.styles-module__retryButton___TA4jm:hover .styles-module__retryButtonIcon___vzfp-{transform:rotate(180deg)}.styles-module__clearLocalDataButton___T3B-K{color:var(--color-fg-muted);border:1px solid var(--color-border-4);cursor:pointer;background:0 0;border-radius:.5rem;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-size:.9375rem;font-weight:500;transition:all .2s;display:inline-flex}.styles-module__clearLocalDataButton___T3B-K:hover{color:var(--color-fg-text);border-color:var(--color-border-3);background:var(--color-bg-secondary)}.styles-module__wrapper___jXPV3{flex-direction:column;gap:.5rem;display:flex}.styles-module__wrapper___jXPV3.styles-module__fullWidth___eKyGB{width:100%}.styles-module__label___MyTeo{color:var(--color-fg-heading);align-items:center;gap:.25rem;font-size:.875rem;font-weight:500;display:flex}.styles-module__required___TV-m8{color:var(--color-danger)}.styles-module__inputContainer___VvGBl{align-items:flex-start;width:100%;display:flex;position:relative}.styles-module__textarea___AjX9N{border:1px solid var(--color-border-4);background:var(--color-bg);width:100%;color:var(--color-fg-text);resize:vertical;border-radius:.5rem;outline:none;min-height:4rem;font-family:inherit;font-size:.875rem;transition:all .2s}.styles-module__textarea___AjX9N:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb,102, 126, 234), .1)}.styles-module__textarea___AjX9N::placeholder{color:var(--color-fg-muted,var(--color-fg-text));opacity:.5}.styles-module__textarea___AjX9N.styles-module__small___zMx0G{min-height:3rem;padding:.5rem .75rem;font-size:.8125rem}.styles-module__textarea___AjX9N.styles-module__medium___tO2Lb{min-height:4rem;padding:.75rem;font-size:.875rem}.styles-module__textarea___AjX9N.styles-module__large___3eU2g{min-height:5rem;padding:1rem;font-size:1rem}.styles-module__textarea___AjX9N.styles-module__default___vsSxX{background:var(--color-bg);border-color:var(--color-border-4)}.styles-module__textarea___AjX9N.styles-module__filled___TPQgI{background:var(--color-bg-2);border-color:var(--color-border-3)}.styles-module__inputContainer___VvGBl .styles-module__leftIcon___FHp2R{color:var(--color-fg-muted,var(--color-fg-text));pointer-events:none;z-index:1;justify-content:center;align-items:center;display:flex;position:absolute;top:.75rem;left:.75rem}.styles-module__inputContainer___VvGBl .styles-module__rightIcon___dkyvP{color:var(--color-fg-muted,var(--color-fg-text));pointer-events:none;z-index:1;justify-content:center;align-items:center;display:flex;position:absolute;top:.75rem;right:.75rem}.styles-module__inputContainer___VvGBl .styles-module__textarea___AjX9N.styles-module__small___zMx0G+.styles-module__leftIcon___FHp2R,.styles-module__inputContainer___VvGBl .styles-module__textarea___AjX9N.styles-module__small___zMx0G+.styles-module__rightIcon___dkyvP{top:.5rem}.styles-module__inputContainer___VvGBl .styles-module__textarea___AjX9N.styles-module__large___3eU2g+.styles-module__leftIcon___FHp2R,.styles-module__inputContainer___VvGBl .styles-module__textarea___AjX9N.styles-module__large___3eU2g+.styles-module__rightIcon___dkyvP{top:1rem}.styles-module__textarea___AjX9N.styles-module__error___d8gLK{border-color:var(--color-danger)}.styles-module__textarea___AjX9N.styles-module__error___d8gLK:focus{border-color:var(--color-danger);box-shadow:0 0 0 3px rgba(var(--color-danger-rgb,244, 67, 54), .1)}.styles-module__textarea___AjX9N.styles-module__disabled___IzbfE{background:var(--color-bg-3);border-color:var(--color-border-5);color:var(--color-fg-muted);cursor:not-allowed;opacity:.6}.styles-module__errorText___Nom7x{color:var(--color-danger);margin:0;font-size:.75rem}.styles-module__helperText___97Def{color:var(--color-fg-muted);margin:0;font-size:.75rem}.styles-module__virtualList___pM6rN{contain:strict;width:100%;padding-bottom:300px;position:relative;overflow:auto}.styles-module__emptyContainer___rm938{height:100%;color:var(--color-fg-muted);justify-content:center;align-items:center;display:flex}.styles-module__virtualListInner___HxRzc{width:100%;position:relative}.styles-module__virtualListItems___p19-a{width:100%;position:absolute;top:0;left:0}.styles-module__loadingMore___zAdLM{color:var(--color-fg-muted);justify-content:center;align-items:center;gap:.75rem;padding:2rem 0;font-size:.875rem;display:flex}.styles-module__endOfList___5cYFh{color:var(--color-fg-muted);border-top:1px solid var(--color-border-3);justify-content:center;margin-top:1rem;padding:2rem 0;font-size:.875rem;display:flex}.styles-module__endOfList___5cYFh span{background-color:var(--color-bg-2);border-radius:.25rem;padding:.5rem 1rem}.styles-module__virtualList___xmj2v{width:100%;padding-bottom:300px;position:relative;overflow:visible}.styles-module__virtualListInner___quD74{width:100%;position:relative}.styles-module__virtualListItems___-Muml{width:100%;position:absolute;top:0;left:0}.styles-module__virtualListRow___h3pzX{width:100%}.styles-module__emptyContainer___LIy8r{color:var(--color-fg-muted);justify-content:center;align-items:center;padding:2rem 0;display:flex}.styles-module__loadingMore___Mzf-p{color:var(--color-fg-muted);justify-content:center;align-items:center;padding:1.5rem 0;display:flex}.styles-module__endOfList___g5G--{color:var(--color-fg-muted);border-top:1px solid var(--color-border-3);justify-content:center;padding:1.5rem 0;display:flex}.styles-module__sidebar___BMt0j{flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}.styles-module__sidebarContent___iAwiw{flex-direction:column;height:100%;min-height:0;padding-top:1rem;display:flex;overflow:hidden}.styles-module__menuWrapper___DKuEv{flex:1;min-height:0;overflow:hidden auto}.styles-module__sidebarContent___iAwiw::-webkit-scrollbar{width:0}.styles-module__sidebarContent___iAwiw::-webkit-scrollbar-track{background:0 0}.styles-module__sidebarContent___iAwiw::-webkit-scrollbar-thumb{background:0 0}.styles-module__sidebarContent___iAwiw::-webkit-scrollbar-thumb:hover{background:0 0}.styles-module__sidebar___BMt0j a{margin-left:0}.styles-module__sidebar___BMt0j .ps-sidebar-root{background-color:var(--color-bg-2)!important;border-right:1px solid var(--color-separator)!important;flex-direction:column!important;height:100%!important;min-height:0!important;display:flex!important;overflow:hidden!important}.styles-module__sidebar___BMt0j .ps-sidebar-container{background-color:var(--color-bg-2)!important;height:100%!important;min-height:0!important;color:var(--color-fg-text)!important;flex-direction:column!important;flex:1!important;display:flex!important;overflow:hidden!important}.styles-module__sidebar___BMt0j .ps-menu-button{color:var(--color-fg-text)!important;border-radius:.375rem!important;margin:.125rem .5rem!important;padding:.5rem .75rem!important;font-size:.875rem!important;transition:all .2s!important}.styles-module__sidebar___BMt0j .ps-menu-button:hover{background-color:var(--color-bg-3)!important;color:var(--color-fg-text)!important}.styles-module__sidebar___BMt0j .ps-menu-button.ps-active{background-color:var(--color-primary)!important;color:#fff!important}.styles-module__sidebar___BMt0j .ps-menu-button.ps-active *,.styles-module__sidebar___BMt0j .ps-menu-button.ps-active .ps-menu-icon,.styles-module__sidebar___BMt0j .ps-menu-button.ps-active .ps-menu-label{color:#fff!important}.styles-module__sidebar___BMt0j .ps-menu-icon{width:1.25rem!important;height:1.25rem!important;color:var(--color-fg-text)!important;margin-right:.5rem!important}.styles-module__sidebar___BMt0j .ps-submenu-content{background-color:var(--color-bg-3)!important;padding-left:.5rem!important;overflow:hidden!important}.styles-module__sidebar___BMt0j .ps-submenu-content .ps-menu-button{margin:.125rem .25rem!important;padding:.375rem .5rem!important;font-size:.8125rem!important;transition:all .2s!important}.styles-module__sidebar___BMt0j .ps-menu-label{color:var(--color-fg-text)!important;font-weight:500!important}.styles-module__sidebar___BMt0j .ps-menu-button.ps-active,.styles-module__sidebar___BMt0j .ps-menu-button.ps-active span,.styles-module__sidebar___BMt0j .ps-menu-button.ps-active div,.styles-module__sidebar___BMt0j .ps-menu-button.ps-active .ps-menu-icon,.styles-module__sidebar___BMt0j .ps-menu-button.ps-active .ps-menu-label{color:#fff!important}.styles-module__logoutContainer___7NwBL{border-top:1px solid var(--color-separator);writing-mode:horizontal-tb;text-orientation:mixed;flex-shrink:0;margin-top:auto;padding:.5rem}.styles-module__logoutButton___rfD6u{width:100%;color:var(--color-fg-text);cursor:pointer;white-space:nowrap;writing-mode:horizontal-tb;text-orientation:mixed;direction:ltr;background:0 0;border:none;border-radius:.375rem;justify-content:flex-start;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.875rem;transition:background-color .2s,color .2s;display:flex;overflow:hidden}.styles-module__logoutButton___rfD6u span{opacity:1;max-width:200px;transition:opacity .3s,max-width .3s;display:inline-block;writing-mode:horizontal-tb!important;text-orientation:mixed!important;direction:ltr!important;transform:none!important}.styles-module__logoutButton___rfD6u .styles-module__hiddenText___z183T{opacity:0;width:0;max-width:0;overflow:hidden}.styles-module__logoutButton___rfD6u .styles-module__visibleText___lfsv-{opacity:1;width:auto;max-width:200px}.styles-module__logoutButton___rfD6u:hover{background-color:var(--color-bg-3)}.styles-module__logoutButton___rfD6u:active{transform:scale(.98)}.styles-module__logoutButton___rfD6u svg{color:inherit;flex-shrink:0}.styles-module__footer___g-hY7{background:var(--color-bg-2);width:100%;padding:0 2rem}.styles-module__footerContent___Oen5n{justify-content:space-between;align-items:center;max-width:100%;margin:0 auto;display:flex}.styles-module__copyright___1R2o3{color:var(--color-fg-text);font-size:.875rem}.styles-module__links___dQyvB{gap:1.5rem;display:flex}.styles-module__link___UWfyK{color:var(--color-fg-text);font-size:.875rem;text-decoration:none;transition:color .3s}.styles-module__link___UWfyK:hover{color:var(--color-primary)}@media (width<=768px){.styles-module__footerContent___Oen5n{flex-direction:column;gap:1rem}.styles-module__links___dQyvB{gap:1rem}}.styles-module__header___4Uc8h{width:100%;padding:.5rem 2rem;display:flex}.styles-module__header___4Uc8h>:first-child{flex:1;justify-content:flex-start;align-items:center;display:flex}.styles-module__header___4Uc8h>:last-child{flex:1;justify-content:flex-end;align-items:center;display:flex}.styles-module__layout___ZQKU7{background:var(--color-bg);flex-direction:column;width:100%;height:100vh;display:flex;position:relative}.styles-module__header___XIaFb{z-index:100;background:var(--color-bg);width:100%;position:fixed;top:0;box-shadow:0 .125rem .25rem #2c33491a}.styles-module__footer___r8ASO{z-index:100;width:100%;position:fixed;bottom:0}.styles-module__mainWrapper___i4tEI{flex:1;display:flex;position:relative}.styles-module__sidebar___ij-8-{position:fixed;top:0}.styles-module__content___mTgUr{background:var(--color-bg);flex:1;min-height:calc(100vh - 10rem);margin:0;padding-top:0;padding-bottom:0;overflow:hidden auto}@media (width<=768px){.styles-module__content___mTgUr{width:100%}.styles-module__sidebar___ij-8-{z-index:999;height:100vh;position:fixed;top:0;left:0}}.styles-module__mainWrapper___AiTAw{flex-direction:row;flex:1;display:flex;position:relative}.styles-module__sidebarContainer___X4yj8{z-index:99;flex-direction:column;display:flex;position:fixed;left:0;overflow:hidden}.styles-module__sidebar___VQTlH{flex-shrink:0;top:0;left:0}.styles-module__content___htJlH{background:var(--color-bg);flex:1;margin:0;padding-top:0;padding-bottom:0;overflow:hidden auto}@media (width<=1024px){.styles-module__content___htJlH{padding:1.5rem}}@media (width<=768px){.styles-module__content___htJlH{width:100%}.styles-module__sidebar___VQTlH{z-index:999;height:100vh;position:fixed;top:0;left:0}}.styles-module__wavesWrapper___TK7DI{pointer-events:none;z-index:0;width:100vw;height:100vh;position:fixed;inset:0;overflow:hidden}.styles-module__wavesWrapper___TK7DI>*{pointer-events:auto}.styles-module__squaresWrapper___P25uF{pointer-events:none;z-index:0;width:100vw;height:100vh;position:fixed;inset:0;overflow:hidden}.styles-module__squaresWrapper___P25uF>*{pointer-events:auto}.styles-module__letterGlitchWrapper___KWtWU{pointer-events:none;z-index:0;width:100vw;height:100vh;position:fixed;inset:0;overflow:hidden}.styles-module__letterGlitchWrapper___KWtWU>*{pointer-events:auto}.styles-module__pixelBlastWrapper___YptHh{pointer-events:none;z-index:0;width:100vw;height:100vh;position:fixed;inset:0;overflow:hidden}.styles-module__pixelBlastWrapper___YptHh>*{pointer-events:auto}
2
+ /*$vite$:1*/`)),document.head.appendChild(e)}}catch(o){console.error("vite-plugin-css-injected-by-js",o)}})();
3
+ import { C as ge, S as ve, T as be, f as we, gt as Ne, m as Ce, nt as Ie, ot as Ee, p as $e, t as Le, tt as xe, vt as Se } from "./chunk-lucide-BhgnmTNo.mjs";
4
+ import { n as Me } from "./chunk-useTheme-oHcq3d0o.mjs";
5
+ import { n as Oe } from "./chunk-types-DNPBKfmx.mjs";
6
+ import { n as De } from "./chunk-useLayout-DPxlynT-.mjs";
7
+ import { n as ze, r as oe, t as Re } from "./chunk-BounceLoading-B54QEw0n.mjs";
8
+ import * as Q from "react";
9
+ import { Component as Te, Suspense as We, cloneElement as ke, forwardRef as ee, isValidElement as Ae, memo as R, useCallback as P, useEffect as H, useRef as te, useState as U } from "react";
10
+ import { Fragment as _e, jsx as r, jsxs as v } from "react/jsx-runtime";
11
+ import { animate as Be, motion as K, useMotionValue as ie, useMotionValueEvent as Ve, useTransform as X } from "motion/react";
12
+ import { QueryErrorResetBoundary as Fe } from "@tanstack/react-query";
13
+ import { flushSync as je } from "react-dom";
14
+ const qe = "styles-module__button___RbliA", Pe = "styles-module__small___yK0Yp", He = "styles-module__medium___eBTch", Ge = "styles-module__large___pIZkl", Ke = "styles-module__primary___qsZpA", Xe = "styles-module__secondary___SCpPv", Ue = "styles-module__outline___rrlk9", Ze = "styles-module__ghost___QMoiH", Ye = "styles-module__danger___MW-pg", Qe = "styles-module__fullWidth___-dXBR", Je = "styles-module__loading___UWw6V", et = "styles-module__spinner___KpJ-L", tt = "styles-module__spin___ntZKM", st = "styles-module__content___oyZRO", nt = "styles-module__leftIcon___cDktv", lt = "styles-module__rightIcon___1mpk0", rt = "styles-module__iconOnly___iOv-U", ot = "styles-module__iconContainer___bwvE3", it = "styles-module__layout___WaGy9", at = "styles-module__horizontal___lKpGq", ct = "styles-module__topIcon___bzw6s", dt = "styles-module__bottomIcon___suPfa";
15
+ var C = {
16
+ button: qe,
17
+ small: Pe,
18
+ medium: He,
19
+ large: Ge,
20
+ primary: Ke,
21
+ secondary: Xe,
22
+ outline: Ue,
23
+ ghost: Ze,
24
+ danger: Ye,
25
+ fullWidth: Qe,
26
+ loading: Je,
27
+ spinner: et,
28
+ spin: tt,
29
+ content: st,
30
+ leftIcon: nt,
31
+ rightIcon: lt,
32
+ iconOnly: rt,
33
+ iconContainer: ot,
34
+ layout: it,
35
+ horizontal: at,
36
+ topIcon: ct,
37
+ bottomIcon: dt
38
+ };
39
+ function B(l, t) {
40
+ return l ? t && Ae(l) && typeof l.type != "string" ? ke(l, {
41
+ ...l.props && typeof l.props == "object" ? l.props : {},
42
+ size: t
43
+ }) : l : null;
44
+ }
45
+ var se = ee(({ variant: l = "primary", size: t = "medium", fullWidth: e = !1, leftIcon: s, rightIcon: n, topIcon: i, bottomIcon: o, iconOnly: a = !1, iconSize: d, loading: c = !1, disabled: _, children: u, className: h = "", ...m }, y) => {
46
+ const I = s || n || i || o, b = !a && u, w = a && I && !b, g = i || o || w, f = [
47
+ C.button,
48
+ C[l],
49
+ C[t],
50
+ e && C.fullWidth,
51
+ c && C.loading,
52
+ w && C.iconOnly,
53
+ h
54
+ ].filter(Boolean).join(" ");
55
+ return w ? r("button", {
56
+ ref: y,
57
+ type: "button",
58
+ className: f,
59
+ disabled: _ || c,
60
+ ...m,
61
+ children: v("span", {
62
+ className: C.iconContainer,
63
+ children: [
64
+ i && r("span", {
65
+ className: C.topIcon,
66
+ children: B(i, d)
67
+ }),
68
+ s && r("span", {
69
+ className: C.leftIcon,
70
+ children: B(s, d)
71
+ }),
72
+ n && r("span", {
73
+ className: C.rightIcon,
74
+ children: B(n, d)
75
+ }),
76
+ o && r("span", {
77
+ className: C.bottomIcon,
78
+ children: B(o, d)
79
+ })
80
+ ]
81
+ })
82
+ }) : g ? v("button", {
83
+ ref: y,
84
+ type: "button",
85
+ className: f,
86
+ disabled: _ || c,
87
+ ...m,
88
+ children: [c && r("span", { className: C.spinner }), !c && v("span", {
89
+ className: C.layout,
90
+ children: [
91
+ i && r("span", {
92
+ className: C.topIcon,
93
+ children: B(i, d)
94
+ }),
95
+ v("span", {
96
+ className: C.horizontal,
97
+ children: [
98
+ s && r("span", {
99
+ className: C.leftIcon,
100
+ children: B(s, d)
101
+ }),
102
+ b && r("span", {
103
+ className: C.content,
104
+ children: u
105
+ }),
106
+ n && r("span", {
107
+ className: C.rightIcon,
108
+ children: B(n, d)
109
+ })
110
+ ]
111
+ }),
112
+ o && r("span", {
113
+ className: C.bottomIcon,
114
+ children: B(o, d)
115
+ })
116
+ ]
117
+ })]
118
+ }) : v("button", {
119
+ ref: y,
120
+ type: "button",
121
+ className: f,
122
+ disabled: _ || c,
123
+ ...m,
124
+ children: [
125
+ c && r("span", { className: C.spinner }),
126
+ s && !c && r("span", {
127
+ className: C.leftIcon,
128
+ children: B(s, d)
129
+ }),
130
+ u && r("span", {
131
+ className: C.content,
132
+ children: u
133
+ }),
134
+ n && !c && r("span", {
135
+ className: C.rightIcon,
136
+ children: B(n, d)
137
+ })
138
+ ]
139
+ });
140
+ });
141
+ se.displayName = "Button";
142
+ const ut = "Dropdown-module__dropdown___c9wIp", _t = "Dropdown-module__dropdownButton___suNh-", ht = "Dropdown-module__disabled___Rz0pX", mt = "Dropdown-module__error___F7dDu", pt = "Dropdown-module__buttonText___D2zxn", ft = "Dropdown-module__chevronIcon___uyawp", yt = "Dropdown-module__open___APoXd", gt = "Dropdown-module__dropdownMenu___WJ-QO", vt = "Dropdown-module__slideDown___sRCmO", bt = "Dropdown-module__optionsList___Be6RN", wt = "Dropdown-module__option___q-NgT", Nt = "Dropdown-module__selected___-OTW-";
143
+ var W = {
144
+ dropdown: ut,
145
+ dropdownButton: _t,
146
+ disabled: ht,
147
+ error: mt,
148
+ buttonText: pt,
149
+ chevronIcon: ft,
150
+ open: yt,
151
+ dropdownMenu: gt,
152
+ slideDown: vt,
153
+ optionsList: bt,
154
+ option: wt,
155
+ selected: Nt
156
+ }, Ct = R(({ options: l, value: t, onChange: e, placeholder: s = "Select an option", disabled: n = !1, error: i = !1, className: o = "" }) => {
157
+ const [a, d] = U(!1), c = te(null);
158
+ H(() => {
159
+ const m = (y) => {
160
+ c.current && !c.current.contains(y.target) && d(!1);
161
+ };
162
+ return document.addEventListener("mousedown", m), () => {
163
+ document.removeEventListener("mousedown", m);
164
+ };
165
+ }, []);
166
+ const _ = l.find((m) => m.value === t), u = _ ? _.label : s, h = (m) => {
167
+ e(m), d(!1);
168
+ };
169
+ return v("div", {
170
+ className: `${W.dropdown} ${o}`,
171
+ ref: c,
172
+ children: [v("button", {
173
+ type: "button",
174
+ className: `${W.dropdownButton} ${i ? W.error : ""} ${n ? W.disabled : ""}`,
175
+ onClick: () => !n && d(!a),
176
+ disabled: n,
177
+ "aria-expanded": a,
178
+ "aria-haspopup": "listbox",
179
+ children: [r("span", {
180
+ className: W.buttonText,
181
+ children: u
182
+ }), r(we, {
183
+ size: 16,
184
+ className: `${W.chevronIcon} ${a ? W.open : ""}`
185
+ })]
186
+ }), a && !n && r("div", {
187
+ className: W.dropdownMenu,
188
+ children: r("ul", {
189
+ className: W.optionsList,
190
+ role: "listbox",
191
+ children: l.map((m) => r("li", {
192
+ className: `${W.option} ${m.value === t ? W.selected : ""}`,
193
+ onClick: () => h(m.value),
194
+ role: "option",
195
+ "aria-selected": m.value === t,
196
+ children: m.label
197
+ }, m.value))
198
+ })
199
+ })]
200
+ });
201
+ });
202
+ Ct.displayName = "Dropdown";
203
+ var It = R(({ name: l, ...t }) => {
204
+ const e = Se[l];
205
+ return e ? r(e, { ...t }) : (console.warn(`Icon "${l}" not found in lucide-react`), null);
206
+ });
207
+ It.displayName = "Icon";
208
+ const Et = "styles-module__wrapper___COeGm", $t = "styles-module__fullWidth___lVU49", Lt = "styles-module__label___gfOA7", xt = "styles-module__required___-zOy5", St = "styles-module__inputContainer___wXY53", Mt = "styles-module__input___IZDc3", Ot = "styles-module__small___cuGyE", Dt = "styles-module__medium___JdDPu", zt = "styles-module__large___fMmiG", Rt = "styles-module__filled___EQ5PQ", Tt = "styles-module__withLeftIcon___NFn6-", Wt = "styles-module__withRightIcon___mz-hn", kt = "styles-module__leftIcon___jEW5H", At = "styles-module__rightIcon___bA3Eo", Bt = "styles-module__rightIconInteractive___ccypw", Vt = "styles-module__containerSmall___20ICq", Ft = "styles-module__containerLarge___IztuN", jt = "styles-module__error___946qV", qt = "styles-module__disabled___sJvLd", Pt = "styles-module__errorMessage___5Mn22", Ht = "styles-module__helperText___T2eui";
209
+ var L = {
210
+ wrapper: Et,
211
+ fullWidth: $t,
212
+ label: Lt,
213
+ required: xt,
214
+ inputContainer: St,
215
+ input: Mt,
216
+ small: Ot,
217
+ medium: Dt,
218
+ large: zt,
219
+ default: "styles-module__default___-eZTG",
220
+ filled: Rt,
221
+ withLeftIcon: Tt,
222
+ withRightIcon: Wt,
223
+ leftIcon: kt,
224
+ rightIcon: At,
225
+ rightIconInteractive: Bt,
226
+ containerSmall: Vt,
227
+ containerLarge: Ft,
228
+ error: jt,
229
+ disabled: qt,
230
+ errorMessage: Pt,
231
+ helperText: Ht
232
+ }, ne = ee(({ label: l, error: t, helperText: e, leftIcon: s, rightIcon: n, rightIconInteractive: i = !1, size: o = "medium", variant: a = "default", fullWidth: d = !1, className: c = "", disabled: _, ...u }, h) => {
233
+ const m = [
234
+ L.input,
235
+ L[o],
236
+ L[a],
237
+ t && L.error,
238
+ _ && L.disabled,
239
+ c
240
+ ].filter(Boolean).join(" "), y = [L.wrapper, d && L.fullWidth].filter(Boolean).join(" "), I = [
241
+ L.inputContainer,
242
+ s && L.withLeftIcon,
243
+ n && L.withRightIcon,
244
+ o && L[`container${o.charAt(0).toUpperCase() + o.slice(1)}`]
245
+ ].filter(Boolean).join(" ");
246
+ return v("div", {
247
+ className: y,
248
+ children: [
249
+ l && v("label", {
250
+ className: L.label,
251
+ children: [l, u.required && r("span", {
252
+ className: L.required,
253
+ children: "*"
254
+ })]
255
+ }),
256
+ v("div", {
257
+ className: I,
258
+ children: [
259
+ s && r("div", {
260
+ className: L.leftIcon,
261
+ children: s
262
+ }),
263
+ r("input", {
264
+ ref: h,
265
+ className: m,
266
+ disabled: _,
267
+ ...u
268
+ }),
269
+ n && r("div", {
270
+ className: `${L.rightIcon} ${i ? L.rightIconInteractive : ""}`,
271
+ children: n
272
+ })
273
+ ]
274
+ }),
275
+ t && r("p", {
276
+ className: L.errorMessage,
277
+ children: t
278
+ }),
279
+ e && !t && r("p", {
280
+ className: L.helperText,
281
+ children: e
282
+ })
283
+ ]
284
+ });
285
+ });
286
+ ne.displayName = "Input";
287
+ const Gt = "styles-module__container___xeg8O", Kt = "styles-module__label___qhbKe", Xt = "styles-module__error___O-7AY", Ut = "styles-module__pairs___owGV3", Zt = "styles-module__pair___G4WFY", Yt = "styles-module__keyInput___wl1M1", Qt = "styles-module__valueInput___HiwJ5", Jt = "styles-module__removeButton___4-X0b", es = "styles-module__addButton___QFljt";
288
+ var V = {
289
+ container: Gt,
290
+ label: Kt,
291
+ error: Xt,
292
+ pairs: Ut,
293
+ pair: Zt,
294
+ keyInput: Yt,
295
+ valueInput: Qt,
296
+ removeButton: Jt,
297
+ addButton: es
298
+ }, ts = R(({ label: l, pairs: t, onChange: e, valueType: s = "string", keyPlaceholder: n = "Key", valuePlaceholder: i = "Value", valueArrayPlaceholder: o = "Value (comma-separated)", removeAriaLabel: a = "Remove row", addLabel: d = "Add", error: c }) => {
299
+ const _ = s === "array" ? o : i, [u, h] = U(t);
300
+ H(() => {
301
+ h(t);
302
+ }, [t]);
303
+ const m = () => {
304
+ const g = [...u, {
305
+ key: "",
306
+ value: s === "array" ? [] : ""
307
+ }];
308
+ h(g), e(g);
309
+ }, y = (g) => {
310
+ const f = u.filter((p, E) => E !== g);
311
+ h(f), e(f);
312
+ }, I = (g, f) => {
313
+ const p = [...u];
314
+ p[g] = {
315
+ ...p[g],
316
+ key: f
317
+ }, h(p), e(p);
318
+ }, b = (g, f) => {
319
+ const p = [...u];
320
+ if (s === "array") {
321
+ const E = f.split(",").map((x) => x.trim()).filter((x) => x.length > 0);
322
+ p[g] = {
323
+ ...p[g],
324
+ value: E
325
+ };
326
+ } else p[g] = {
327
+ ...p[g],
328
+ value: f
329
+ };
330
+ h(p), e(p);
331
+ }, w = (g) => Array.isArray(g) ? g.join(", ") : g;
332
+ return v("div", {
333
+ className: V.container,
334
+ children: [
335
+ r("label", {
336
+ className: V.label,
337
+ children: l
338
+ }),
339
+ c && r("div", {
340
+ className: V.error,
341
+ children: c
342
+ }),
343
+ r("div", {
344
+ className: V.pairs,
345
+ children: u.map((g, f) => v("div", {
346
+ className: V.pair,
347
+ children: [
348
+ r(ne, {
349
+ placeholder: n,
350
+ value: g.key,
351
+ onChange: (p) => I(f, p.target.value),
352
+ className: V.keyInput
353
+ }),
354
+ r(ne, {
355
+ placeholder: _,
356
+ value: w(g.value),
357
+ onChange: (p) => b(f, p.target.value),
358
+ className: V.valueInput
359
+ }),
360
+ r(se, {
361
+ type: "button",
362
+ variant: "ghost",
363
+ onClick: () => y(f),
364
+ className: V.removeButton,
365
+ "aria-label": a,
366
+ children: r(Ee, { size: 16 })
367
+ })
368
+ ]
369
+ }, f))
370
+ }),
371
+ v(se, {
372
+ type: "button",
373
+ variant: "secondary",
374
+ onClick: m,
375
+ className: V.addButton,
376
+ children: [r(xe, { size: 16 }), d]
377
+ })
378
+ ]
379
+ });
380
+ });
381
+ ts.displayName = "KeyValueEditor";
382
+ const ss = "styles-module__searchContainer___86TGN", ns = "styles-module__searchIcon___ZInry", ls = "styles-module__searchInput___SqZXQ", rs = "styles-module__clearBtn___7jExr";
383
+ var Y = {
384
+ searchContainer: ss,
385
+ searchIcon: ns,
386
+ searchInput: ls,
387
+ clearBtn: rs
388
+ }, os = R(({ value: l, onChange: t, placeholder: e, clearButtonAriaLabel: s = "Clear search" }) => {
389
+ const n = () => t("");
390
+ return v("div", {
391
+ className: Y.searchContainer,
392
+ children: [
393
+ r(Ie, {
394
+ size: 18,
395
+ className: Y.searchIcon
396
+ }),
397
+ r("input", {
398
+ type: "text",
399
+ value: l,
400
+ onChange: (i) => t(i.target.value),
401
+ placeholder: e,
402
+ className: Y.searchInput
403
+ }),
404
+ l && r("button", {
405
+ onClick: n,
406
+ className: Y.clearBtn,
407
+ "aria-label": s,
408
+ children: r(Ne, { size: 16 })
409
+ })
410
+ ]
411
+ });
412
+ });
413
+ os.displayName = "SearchInput";
414
+ const is = "styles-module__container___nGxdM", as = "styles-module__toggleContainer___VrsKI", cs = "styles-module__toggleButton___IzD6Z", ds = "styles-module__enabled___cao0G", us = "styles-module__optionsContainer___LOzlO", _s = "styles-module__option___abhnC", hs = "styles-module__active___pqmSi";
415
+ var k = {
416
+ container: is,
417
+ toggleContainer: as,
418
+ toggleButton: cs,
419
+ enabled: ds,
420
+ optionsContainer: us,
421
+ option: _s,
422
+ active: hs
423
+ }, ms = R(({ value: l, onChange: t, filterEnabled: e = "Filter on", filterDisabled: s = "Filter", enableFilterAriaLabel: n = "Enable filter", disableFilterAriaLabel: i = "Disable filter", all: o = "All", show: a = "Show", hide: d = "Hide" }) => {
424
+ const c = () => {
425
+ t({
426
+ ...l,
427
+ enabled: !l.enabled
428
+ });
429
+ }, _ = (u) => {
430
+ t({
431
+ ...l,
432
+ value: u
433
+ });
434
+ };
435
+ return v("div", {
436
+ className: k.container,
437
+ children: [r("div", {
438
+ className: k.toggleContainer,
439
+ children: v("button", {
440
+ type: "button",
441
+ className: `${k.toggleButton} ${l.enabled ? k.enabled : ""}`,
442
+ onClick: c,
443
+ "aria-label": l.enabled ? i : n,
444
+ children: [r(be, { size: 16 }), r("span", { children: l.enabled ? e : s })]
445
+ })
446
+ }), l.enabled && v("div", {
447
+ className: k.optionsContainer,
448
+ children: [
449
+ r("button", {
450
+ type: "button",
451
+ className: `${k.option} ${l.value === null ? k.active : ""}`,
452
+ onClick: () => _(null),
453
+ children: o
454
+ }),
455
+ v("button", {
456
+ type: "button",
457
+ className: `${k.option} ${l.value === !0 ? k.active : ""}`,
458
+ onClick: () => _(!0),
459
+ children: [r(ve, { size: 16 }), r("span", { children: a })]
460
+ }),
461
+ v("button", {
462
+ type: "button",
463
+ className: `${k.option} ${l.value === !1 ? k.active : ""}`,
464
+ onClick: () => _(!1),
465
+ children: [r(ge, { size: 16 }), r("span", { children: d })]
466
+ })
467
+ ]
468
+ })]
469
+ });
470
+ });
471
+ ms.displayName = "ShowFilter";
472
+ const ps = "styles-module__nbSelect___KjxSc", fs = "styles-module__selectButton___AKZe4", ys = "styles-module__primary___HU36a", gs = "styles-module__open___9AKMb", vs = "styles-module__buttonText___QSLO1", bs = "styles-module__chevronIcon___qAHaD", ws = "styles-module__optionsPanel___NWAp3", Ns = "styles-module__expandDown___eD4lh", Cs = "styles-module__closed___bez-q", Is = "styles-module__collapseUp___dt1E7", Es = "styles-module__optionsList___AxhVp", $s = "styles-module__option___t1SSw", Ls = "styles-module__selected___azD4A";
473
+ var T = {
474
+ nbSelect: ps,
475
+ selectButton: fs,
476
+ primary: ys,
477
+ open: gs,
478
+ default: "styles-module__default___LedYP",
479
+ buttonText: vs,
480
+ chevronIcon: bs,
481
+ optionsPanel: ws,
482
+ expandDown: Ns,
483
+ closed: Cs,
484
+ collapseUp: Is,
485
+ optionsList: Es,
486
+ option: $s,
487
+ selected: Ls
488
+ }, xs = ({ value: l, options: t, getDisplayName: e, onChange: s, status: n = "primary" }) => {
489
+ const [i, o] = U(!1), a = te(null);
490
+ H(() => {
491
+ const c = (_) => {
492
+ a.current && !a.current.contains(_.target) && o(!1);
493
+ };
494
+ return document.addEventListener("mousedown", c), () => document.removeEventListener("mousedown", c);
495
+ }, []);
496
+ const d = (c) => {
497
+ s(c), o(!1);
498
+ };
499
+ return v("div", {
500
+ className: T.nbSelect,
501
+ ref: a,
502
+ children: [v("button", {
503
+ type: "button",
504
+ className: `${T.selectButton} ${T[n]}`,
505
+ onClick: () => o(!i),
506
+ "aria-expanded": i,
507
+ "aria-haspopup": "listbox",
508
+ children: [r("span", {
509
+ className: T.buttonText,
510
+ children: e(l)
511
+ }), r("svg", {
512
+ className: `${T.chevronIcon} ${i ? T.open : ""}`,
513
+ width: "16",
514
+ height: "16",
515
+ viewBox: "0 0 24 24",
516
+ fill: "none",
517
+ stroke: "currentColor",
518
+ strokeWidth: "2",
519
+ children: r("path", {
520
+ d: "m6 9 6 6 6-6",
521
+ strokeLinecap: "round",
522
+ strokeLinejoin: "round"
523
+ })
524
+ })]
525
+ }), r("div", {
526
+ className: `${T.optionsPanel} ${T[n]} ${i ? T.open : T.closed}`,
527
+ role: "listbox",
528
+ children: r("ul", {
529
+ className: T.optionsList,
530
+ children: t.map((c) => v("li", {
531
+ className: `${T.option} ${c === l ? T.selected : ""}`,
532
+ onClick: () => d(c),
533
+ role: "option",
534
+ "aria-selected": c === l,
535
+ children: [r("span", { children: e(c) }), c === l && r("svg", {
536
+ width: "16",
537
+ height: "16",
538
+ viewBox: "0 0 24 24",
539
+ fill: "none",
540
+ stroke: "currentColor",
541
+ strokeWidth: "2",
542
+ children: r("path", {
543
+ d: "M20 6L9 17l-5-5",
544
+ strokeLinecap: "round",
545
+ strokeLinejoin: "round"
546
+ })
547
+ })]
548
+ }, c))
549
+ })
550
+ })]
551
+ });
552
+ }, le = R(xs);
553
+ le.displayName = "SlideDownSwitcher";
554
+ var Ss = R(({ status: l = "primary", getThemeDisplayName: t, handleChangeTheme: e }) => {
555
+ const { themeName: s, setTheme: n, availableThemes: i } = Me();
556
+ return r(le, {
557
+ value: s,
558
+ options: i,
559
+ getDisplayName: t ?? ((d) => d),
560
+ onChange: (d) => {
561
+ n(d), e?.(d);
562
+ },
563
+ status: l
564
+ });
565
+ });
566
+ Ss.displayName = "ThemeSwitcher";
567
+ var Ms = R(({ status: l = "primary", getLayoutDisplayName: t, handleChangeLayoutMode: e }) => {
568
+ const { layoutMode: s, setLayoutMode: n } = De();
569
+ return r(le, {
570
+ value: s,
571
+ options: Oe,
572
+ getDisplayName: t ?? ((a) => a),
573
+ onChange: (a) => {
574
+ n(a), e?.(a);
575
+ },
576
+ status: l
577
+ });
578
+ });
579
+ Ms.displayName = "LayoutSwitcher";
580
+ const Os = "styles-module__sliderContainer___lgpaD", Ds = "styles-module__fullWidth___ZS8W5", zs = "styles-module__labelRow___dkVVM", Rs = "styles-module__label___bXGZs", Ts = "styles-module__required___FuyfE", Ws = "styles-module__sliderWrapper___1Wdti", ks = "styles-module__sliderRoot___yzOjR", As = "styles-module__sliderTrackWrapper___N72WQ", Bs = "styles-module__sliderTrack___AltcD", Vs = "styles-module__sliderRange___U3g0-", Fs = "styles-module__valueIndicator___aLf0I", js = "styles-module__iconWrapper___wL-b8", qs = "styles-module__icon___vHsID", Ps = "styles-module__errorMessage___qFgGe", Hs = "styles-module__helperText___tgBGl";
581
+ var M = {
582
+ sliderContainer: Os,
583
+ fullWidth: Ds,
584
+ labelRow: zs,
585
+ label: Rs,
586
+ required: Ts,
587
+ sliderWrapper: Ws,
588
+ sliderRoot: ks,
589
+ sliderTrackWrapper: As,
590
+ sliderTrack: Bs,
591
+ sliderRange: Vs,
592
+ valueIndicator: Fs,
593
+ iconWrapper: js,
594
+ icon: qs,
595
+ errorMessage: Ps,
596
+ helperText: Hs
597
+ }, ae = 50, Gs = R(ee(({ value: l, onChange: t, min: e = 0, max: s = 10, step: n = 1, showValue: i = !0, fullWidth: o = !1, label: a, error: d, helperText: c, required: _ = !1, className: u = "", ...h }, m) => {
598
+ const [y, I] = U(l), b = te(null), [w, g] = U("middle"), f = ie(0), p = ie(0);
599
+ H(() => {
600
+ I(l);
601
+ }, [l]), Ve(f, "change", (N) => {
602
+ if (b.current) {
603
+ const { left: $, right: O } = b.current.getBoundingClientRect();
604
+ let S;
605
+ N < $ ? (g("left"), S = $ - N) : N > O ? (g("right"), S = N - O) : (g("middle"), S = 0), p.jump(Ks(S, ae));
606
+ }
607
+ });
608
+ const E = (N) => {
609
+ if (N.buttons > 0 && b.current) {
610
+ const { left: $, width: O } = b.current.getBoundingClientRect();
611
+ let S = e + (N.clientX - $) / O * (s - e);
612
+ n > 0 && (S = Math.round(S / n) * n), S = Math.min(Math.max(S, e), s), I(S), t(S), f.jump(N.clientX);
613
+ }
614
+ }, x = (N) => {
615
+ E(N), N.currentTarget.setPointerCapture(N.pointerId);
616
+ }, A = () => {
617
+ Be(p, 0, {
618
+ type: "spring",
619
+ bounce: 0.5
620
+ });
621
+ }, G = () => {
622
+ const N = s - e;
623
+ return N === 0 ? 0 : (y - e) / N * 100;
624
+ };
625
+ return v("div", {
626
+ ref: m,
627
+ className: [
628
+ M.sliderContainer,
629
+ o && M.fullWidth,
630
+ u
631
+ ].filter(Boolean).join(" "),
632
+ ...h,
633
+ children: [
634
+ a && r("div", {
635
+ className: M.labelRow,
636
+ children: v("label", {
637
+ className: M.label,
638
+ children: [a, _ && r("span", {
639
+ className: M.required,
640
+ children: "*"
641
+ })]
642
+ })
643
+ }),
644
+ v(K.div, {
645
+ className: M.sliderWrapper,
646
+ children: [
647
+ r(K.div, {
648
+ animate: {
649
+ scale: w === "left" ? [
650
+ 1,
651
+ 1.4,
652
+ 1
653
+ ] : 1,
654
+ transition: { duration: 0.25 }
655
+ },
656
+ style: { x: X(() => w === "left" ? -p.get() : 0) },
657
+ className: M.iconWrapper,
658
+ children: r($e, {
659
+ size: 20,
660
+ className: M.icon
661
+ })
662
+ }),
663
+ r("div", {
664
+ ref: b,
665
+ className: M.sliderRoot,
666
+ onPointerMove: E,
667
+ onPointerDown: x,
668
+ onPointerUp: A,
669
+ children: r(K.div, {
670
+ style: {
671
+ scaleX: X(() => {
672
+ if (b.current) {
673
+ const { width: N } = b.current.getBoundingClientRect();
674
+ return 1 + p.get() / N;
675
+ }
676
+ return 1;
677
+ }),
678
+ scaleY: X(p, [0, ae], [1, 0.8]),
679
+ transformOrigin: X(() => {
680
+ if (b.current) {
681
+ const { left: N, width: $ } = b.current.getBoundingClientRect();
682
+ return f.get() < N + $ / 2 ? "right" : "left";
683
+ }
684
+ return "center";
685
+ })
686
+ },
687
+ className: M.sliderTrackWrapper,
688
+ children: r("div", {
689
+ className: M.sliderTrack,
690
+ children: r(K.div, {
691
+ className: M.sliderRange,
692
+ initial: !1,
693
+ animate: { width: `${G()}%` },
694
+ transition: {
695
+ type: "spring",
696
+ stiffness: 300,
697
+ damping: 30
698
+ }
699
+ })
700
+ })
701
+ })
702
+ }),
703
+ r(K.div, {
704
+ animate: {
705
+ scale: w === "right" ? [
706
+ 1,
707
+ 1.4,
708
+ 1
709
+ ] : 1,
710
+ transition: { duration: 0.25 }
711
+ },
712
+ style: { x: X(() => w === "right" ? p.get() : 0) },
713
+ className: M.iconWrapper,
714
+ children: r(Ce, {
715
+ size: 20,
716
+ className: M.icon
717
+ })
718
+ }),
719
+ i && !a && r("span", {
720
+ className: M.valueIndicator,
721
+ children: Math.round(y)
722
+ })
723
+ ]
724
+ }),
725
+ d && r("p", {
726
+ className: M.errorMessage,
727
+ children: d
728
+ }),
729
+ c && !d && r("p", {
730
+ className: M.helperText,
731
+ children: c
732
+ })
733
+ ]
734
+ });
735
+ }));
736
+ function Ks(l, t) {
737
+ if (t === 0) return 0;
738
+ const e = l / t;
739
+ return 2 * (1 / (1 + Math.exp(-e)) - 0.5) * t;
740
+ }
741
+ Gs.displayName = "Slider";
742
+ const Xs = "styles-module__loadingContainer___OMgwS", Us = "styles-module__loadingText___KRZqR", Zs = "styles-module__errorContainer___qhAg2", Ys = "styles-module__errorIconWrapper___IHZrN", Qs = "styles-module__pulse___Lju-z", Js = "styles-module__errorIcon___oGDIP", en = "styles-module__errorContent___F55rQ", tn = "styles-module__errorTitle___hC8D-", sn = "styles-module__errorDescription___hZtuP", nn = "styles-module__errorDetailsWrapper___-sp8b", ln = "styles-module__errorDetailsContainer___eywMo", rn = "styles-module__errorDetailsSummary___hGEoD", on = "styles-module__errorDetails___tzCT-", an = "styles-module__errorActions___gtqYw", cn = "styles-module__retryButton___TA4jm", dn = "styles-module__retryButtonIcon___vzfp-", un = "styles-module__clearLocalDataButton___T3B-K";
743
+ var D = {
744
+ loadingContainer: Xs,
745
+ loadingText: Us,
746
+ errorContainer: Zs,
747
+ errorIconWrapper: Ys,
748
+ pulse: Qs,
749
+ errorIcon: Js,
750
+ errorContent: en,
751
+ errorTitle: tn,
752
+ errorDescription: sn,
753
+ errorDetailsWrapper: nn,
754
+ errorDetailsContainer: ln,
755
+ errorDetailsSummary: rn,
756
+ errorDetails: on,
757
+ errorActions: an,
758
+ retryButton: cn,
759
+ retryButtonIcon: dn,
760
+ clearLocalDataButton: un
761
+ }, _n = class extends Te {
762
+ state = {
763
+ hasError: !1,
764
+ error: null
765
+ };
766
+ static getDerivedStateFromError(l) {
767
+ return {
768
+ hasError: !0,
769
+ error: l
770
+ };
771
+ }
772
+ componentDidCatch(l) {
773
+ }
774
+ handleReset = () => {
775
+ this.setState({
776
+ hasError: !1,
777
+ error: null
778
+ }, () => {
779
+ this.props.onReset?.();
780
+ });
781
+ };
782
+ render() {
783
+ return this.state.hasError ? this.props.fallbackRender({
784
+ error: this.state.error,
785
+ retry: this.handleReset
786
+ }) : this.props.children;
787
+ }
788
+ }, he = R(({ fallback: l, loadingType: t = "ecg", loadingShape: e = "square", loadingText: s = "Loading...", loadingSize: n = "medium", loadingContainerClassName: i, loadingTextClassName: o, loadingClassName: a }) => {
789
+ if (l) return r(_e, { children: l });
790
+ const d = () => {
791
+ switch (t) {
792
+ case "ecg":
793
+ return r(oe, {
794
+ size: n,
795
+ className: a
796
+ });
797
+ case "truck":
798
+ return r(ze, {
799
+ size: n,
800
+ className: a
801
+ });
802
+ case "bounce":
803
+ return r(Re, {
804
+ size: n,
805
+ shape: e,
806
+ className: a
807
+ });
808
+ default:
809
+ return r(oe, {
810
+ size: n,
811
+ className: a
812
+ });
813
+ }
814
+ };
815
+ return v("div", {
816
+ className: `${D.loadingContainer} ${i || ""}`,
817
+ children: [d(), r("p", {
818
+ className: `${D.loadingText} ${o || ""}`,
819
+ children: s
820
+ })]
821
+ });
822
+ });
823
+ he.displayName = "LoadingFallback";
824
+ var me = R(({ error: l, retry: t, errorFallback: e, errorTitle: s = "Error", errorDescription: n = "Something went wrong. Please try again.", retryText: i = "Retry", errorDetailsText: o = "Details", clearLocalDataText: a = "Clear local data", onClearLocalData: d, errorContainerClassName: c, errorDetailsClassName: _, showErrorDetails: u = !1 }) => {
825
+ const h = () => {
826
+ try {
827
+ sessionStorage.clear();
828
+ } catch {
829
+ } finally {
830
+ d?.();
831
+ }
832
+ };
833
+ return e ? r(_e, { children: e({
834
+ error: l,
835
+ retry: t
836
+ }) }) : v("div", {
837
+ className: `${D.errorContainer} ${c || ""}`,
838
+ children: [r("div", {
839
+ className: D.errorIconWrapper,
840
+ children: r(Le, {
841
+ className: D.errorIcon,
842
+ size: 64
843
+ })
844
+ }), v("div", {
845
+ className: D.errorContent,
846
+ children: [
847
+ r("h3", {
848
+ className: D.errorTitle,
849
+ children: s
850
+ }),
851
+ r("p", {
852
+ className: D.errorDescription,
853
+ children: n
854
+ }),
855
+ u && l && r("div", {
856
+ className: D.errorDetailsWrapper,
857
+ children: v("details", {
858
+ className: D.errorDetailsContainer,
859
+ children: [r("summary", {
860
+ className: D.errorDetailsSummary,
861
+ children: o
862
+ }), r("pre", {
863
+ className: `${D.errorDetails} ${_ || ""}`,
864
+ children: l.message
865
+ })]
866
+ })
867
+ }),
868
+ v("div", {
869
+ className: D.errorActions,
870
+ children: [v("button", {
871
+ type: "button",
872
+ className: D.retryButton,
873
+ onClick: t,
874
+ children: [r("span", {
875
+ className: D.retryButtonIcon,
876
+ children: "↻"
877
+ }), r("span", { children: i })]
878
+ }), r("button", {
879
+ type: "button",
880
+ className: D.clearLocalDataButton,
881
+ onClick: h,
882
+ children: r("span", { children: a })
883
+ })]
884
+ })
885
+ ]
886
+ })]
887
+ });
888
+ });
889
+ me.displayName = "ErrorFallback";
890
+ var hn = R(({ fallback: l, test: t, loadingType: e = "ecg", loadingShape: s = "square", loadingClassName: n, loadingText: i, loadingSize: o = "medium", loadingContainerClassName: a, loadingTextClassName: d, children: c, errorFallback: _, errorTitle: u, errorDescription: h, retryText: m, errorDetailsText: y, clearLocalDataText: I, onClearLocalData: b, errorContainerClassName: w, errorDetailsClassName: g, showErrorDetails: f = !1, ...p }) => r(Fe, {
891
+ ...p,
892
+ children: ({ reset: E }) => r(_n, {
893
+ onReset: E,
894
+ fallbackRender: ({ error: x, retry: A }) => r(me, {
895
+ error: x,
896
+ retry: A,
897
+ errorFallback: _,
898
+ errorTitle: u,
899
+ errorDescription: h,
900
+ retryText: m,
901
+ errorDetailsText: y,
902
+ clearLocalDataText: I,
903
+ onClearLocalData: b,
904
+ errorContainerClassName: w,
905
+ errorDetailsClassName: g,
906
+ showErrorDetails: f
907
+ }),
908
+ children: r(We, {
909
+ fallback: r(he, {
910
+ fallback: l,
911
+ loadingType: e,
912
+ loadingShape: s,
913
+ loadingText: i,
914
+ loadingSize: o,
915
+ loadingContainerClassName: a,
916
+ loadingTextClassName: d,
917
+ loadingClassName: n
918
+ }),
919
+ ...p,
920
+ children: t ? r(mn, {}) : c
921
+ })
922
+ })
923
+ }));
924
+ hn.displayName = "Suspense";
925
+ var mn = () => {
926
+ throw new Promise(() => {
927
+ });
928
+ };
929
+ const pn = "styles-module__wrapper___jXPV3", fn = "styles-module__fullWidth___eKyGB", yn = "styles-module__label___MyTeo", gn = "styles-module__required___TV-m8", vn = "styles-module__inputContainer___VvGBl", bn = "styles-module__textarea___AjX9N", wn = "styles-module__small___zMx0G", Nn = "styles-module__medium___tO2Lb", Cn = "styles-module__large___3eU2g", In = "styles-module__filled___TPQgI", En = "styles-module__leftIcon___FHp2R", $n = "styles-module__rightIcon___dkyvP", Ln = "styles-module__error___d8gLK", xn = "styles-module__disabled___IzbfE", Sn = "styles-module__errorText___Nom7x", Mn = "styles-module__helperText___97Def";
930
+ var z = {
931
+ wrapper: pn,
932
+ fullWidth: fn,
933
+ label: yn,
934
+ required: gn,
935
+ inputContainer: vn,
936
+ textarea: bn,
937
+ small: wn,
938
+ medium: Nn,
939
+ large: Cn,
940
+ default: "styles-module__default___vsSxX",
941
+ filled: In,
942
+ leftIcon: En,
943
+ rightIcon: $n,
944
+ error: Ln,
945
+ disabled: xn,
946
+ errorText: Sn,
947
+ helperText: Mn
948
+ }, On = ee(({ label: l, error: t, helperText: e, leftIcon: s, rightIcon: n, size: i = "medium", variant: o = "default", fullWidth: a = !1, className: d = "", disabled: c, ..._ }, u) => {
949
+ const h = [
950
+ z.textarea,
951
+ z[i],
952
+ z[o],
953
+ t && z.error,
954
+ c && z.disabled,
955
+ d
956
+ ].filter(Boolean).join(" ");
957
+ return v("div", {
958
+ className: [z.wrapper, a && z.fullWidth].filter(Boolean).join(" "),
959
+ children: [
960
+ l && v("label", {
961
+ className: z.label,
962
+ children: [l, _.required && r("span", {
963
+ className: z.required,
964
+ children: "*"
965
+ })]
966
+ }),
967
+ v("div", {
968
+ className: z.inputContainer,
969
+ children: [
970
+ s && r("div", {
971
+ className: z.leftIcon,
972
+ children: s
973
+ }),
974
+ r("textarea", {
975
+ ref: u,
976
+ className: h,
977
+ disabled: c,
978
+ ..._
979
+ }),
980
+ n && r("div", {
981
+ className: z.rightIcon,
982
+ children: n
983
+ })
984
+ ]
985
+ }),
986
+ t && r("span", {
987
+ className: z.errorText,
988
+ children: t
989
+ }),
990
+ e && !t && r("span", {
991
+ className: z.helperText,
992
+ children: e
993
+ })
994
+ ]
995
+ });
996
+ });
997
+ On.displayName = "Textarea";
998
+ function q(l, t, e) {
999
+ let s = e.initialDeps ?? [], n, i = !0;
1000
+ function o() {
1001
+ var a, d, c;
1002
+ let _;
1003
+ e.key && ((a = e.debug) != null && a.call(e)) && (_ = Date.now());
1004
+ const u = l();
1005
+ if (!(u.length !== s.length || u.some((m, y) => s[y] !== m))) return n;
1006
+ s = u;
1007
+ let h;
1008
+ if (e.key && ((d = e.debug) != null && d.call(e)) && (h = Date.now()), n = t(...u), e.key && ((c = e.debug) != null && c.call(e))) {
1009
+ const m = Math.round((Date.now() - _) * 100) / 100, y = Math.round((Date.now() - h) * 100) / 100, I = y / 16, b = (w, g) => {
1010
+ for (w = String(w); w.length < g; ) w = " " + w;
1011
+ return w;
1012
+ };
1013
+ console.info(`%c⏱ ${b(y, 5)} /${b(m, 5)} ms`, `
1014
+ font-size: .6rem;
1015
+ font-weight: bold;
1016
+ color: hsl(${Math.max(0, Math.min(120 - 120 * I, 120))}deg 100% 31%);`, e?.key);
1017
+ }
1018
+ return e?.onChange && !(i && e.skipInitialOnChange) && e.onChange(n), i = !1, n;
1019
+ }
1020
+ return o.updateDeps = (a) => {
1021
+ s = a;
1022
+ }, o;
1023
+ }
1024
+ function ce(l, t) {
1025
+ if (l === void 0) throw new Error(`Unexpected undefined${t ? `: ${t}` : ""}`);
1026
+ return l;
1027
+ }
1028
+ var Dn = (l, t) => Math.abs(l - t) < 1.01, pe = (l, t, e) => {
1029
+ let s;
1030
+ return function(...n) {
1031
+ l.clearTimeout(s), s = l.setTimeout(() => t.apply(this, n), e);
1032
+ };
1033
+ }, de = (l) => {
1034
+ const { offsetWidth: t, offsetHeight: e } = l;
1035
+ return {
1036
+ width: t,
1037
+ height: e
1038
+ };
1039
+ }, zn = (l) => l, Rn = (l) => {
1040
+ const t = Math.max(l.startIndex - l.overscan, 0), e = Math.min(l.endIndex + l.overscan, l.count - 1), s = [];
1041
+ for (let n = t; n <= e; n++) s.push(n);
1042
+ return s;
1043
+ }, Tn = (l, t) => {
1044
+ const e = l.scrollElement;
1045
+ if (!e) return;
1046
+ const s = l.targetWindow;
1047
+ if (!s) return;
1048
+ const n = (o) => {
1049
+ const { width: a, height: d } = o;
1050
+ t({
1051
+ width: Math.round(a),
1052
+ height: Math.round(d)
1053
+ });
1054
+ };
1055
+ if (n(de(e)), !s.ResizeObserver) return () => {
1056
+ };
1057
+ const i = new s.ResizeObserver((o) => {
1058
+ const a = () => {
1059
+ const d = o[0];
1060
+ if (d?.borderBoxSize) {
1061
+ const c = d.borderBoxSize[0];
1062
+ if (c) {
1063
+ n({
1064
+ width: c.inlineSize,
1065
+ height: c.blockSize
1066
+ });
1067
+ return;
1068
+ }
1069
+ }
1070
+ n(de(e));
1071
+ };
1072
+ l.options.useAnimationFrameWithResizeObserver ? requestAnimationFrame(a) : a();
1073
+ });
1074
+ return i.observe(e, { box: "border-box" }), () => {
1075
+ i.unobserve(e);
1076
+ };
1077
+ }, Z = { passive: !0 }, Wn = (l, t) => {
1078
+ const e = l.scrollElement;
1079
+ if (!e) return;
1080
+ const s = () => {
1081
+ t({
1082
+ width: e.innerWidth,
1083
+ height: e.innerHeight
1084
+ });
1085
+ };
1086
+ return s(), e.addEventListener("resize", s, Z), () => {
1087
+ e.removeEventListener("resize", s);
1088
+ };
1089
+ }, J = typeof window > "u" ? !0 : "onscrollend" in window, kn = (l, t) => {
1090
+ const e = l.scrollElement;
1091
+ if (!e) return;
1092
+ const s = l.targetWindow;
1093
+ if (!s) return;
1094
+ let n = 0;
1095
+ const i = l.options.useScrollendEvent && J ? () => {
1096
+ } : pe(s, () => {
1097
+ t(n, !1);
1098
+ }, l.options.isScrollingResetDelay), o = (_) => () => {
1099
+ const { horizontal: u, isRtl: h } = l.options;
1100
+ n = u ? e.scrollLeft * (h && -1 || 1) : e.scrollTop, i(), t(n, _);
1101
+ }, a = o(!0), d = o(!1);
1102
+ e.addEventListener("scroll", a, Z);
1103
+ const c = l.options.useScrollendEvent && J;
1104
+ return c && e.addEventListener("scrollend", d, Z), () => {
1105
+ e.removeEventListener("scroll", a), c && e.removeEventListener("scrollend", d);
1106
+ };
1107
+ }, An = (l, t) => {
1108
+ const e = l.scrollElement;
1109
+ if (!e) return;
1110
+ const s = l.targetWindow;
1111
+ if (!s) return;
1112
+ let n = 0;
1113
+ const i = l.options.useScrollendEvent && J ? () => {
1114
+ } : pe(s, () => {
1115
+ t(n, !1);
1116
+ }, l.options.isScrollingResetDelay), o = (_) => () => {
1117
+ n = e[l.options.horizontal ? "scrollX" : "scrollY"], i(), t(n, _);
1118
+ }, a = o(!0), d = o(!1);
1119
+ e.addEventListener("scroll", a, Z);
1120
+ const c = l.options.useScrollendEvent && J;
1121
+ return c && e.addEventListener("scrollend", d, Z), () => {
1122
+ e.removeEventListener("scroll", a), c && e.removeEventListener("scrollend", d);
1123
+ };
1124
+ }, Bn = (l, t, e) => {
1125
+ if (t?.borderBoxSize) {
1126
+ const s = t.borderBoxSize[0];
1127
+ if (s) return Math.round(s[e.options.horizontal ? "inlineSize" : "blockSize"]);
1128
+ }
1129
+ return l[e.options.horizontal ? "offsetWidth" : "offsetHeight"];
1130
+ }, Vn = (l, { adjustments: t = 0, behavior: e }, s) => {
1131
+ var n, i;
1132
+ const o = l + t;
1133
+ (i = (n = s.scrollElement) == null ? void 0 : n.scrollTo) == null || i.call(n, {
1134
+ [s.options.horizontal ? "left" : "top"]: o,
1135
+ behavior: e
1136
+ });
1137
+ }, Fn = (l, { adjustments: t = 0, behavior: e }, s) => {
1138
+ var n, i;
1139
+ const o = l + t;
1140
+ (i = (n = s.scrollElement) == null ? void 0 : n.scrollTo) == null || i.call(n, {
1141
+ [s.options.horizontal ? "left" : "top"]: o,
1142
+ behavior: e
1143
+ });
1144
+ }, jn = class {
1145
+ constructor(l) {
1146
+ this.unsubs = [], this.scrollElement = null, this.targetWindow = null, this.isScrolling = !1, this.currentScrollToIndex = null, this.measurementsCache = [], this.itemSizeCache = /* @__PURE__ */ new Map(), this.laneAssignments = /* @__PURE__ */ new Map(), this.pendingMeasuredCacheIndexes = [], this.prevLanes = void 0, this.lanesChangedFlag = !1, this.lanesSettling = !1, this.scrollRect = null, this.scrollOffset = null, this.scrollDirection = null, this.scrollAdjustments = 0, this.elementsCache = /* @__PURE__ */ new Map(), this.observer = /* @__PURE__ */ (() => {
1147
+ let t = null;
1148
+ const e = () => t || (!this.targetWindow || !this.targetWindow.ResizeObserver ? null : t = new this.targetWindow.ResizeObserver((s) => {
1149
+ s.forEach((n) => {
1150
+ const i = () => {
1151
+ this._measureElement(n.target, n);
1152
+ };
1153
+ this.options.useAnimationFrameWithResizeObserver ? requestAnimationFrame(i) : i();
1154
+ });
1155
+ }));
1156
+ return {
1157
+ disconnect: () => {
1158
+ var s;
1159
+ (s = e()) == null || s.disconnect(), t = null;
1160
+ },
1161
+ observe: (s) => {
1162
+ var n;
1163
+ return (n = e()) == null ? void 0 : n.observe(s, { box: "border-box" });
1164
+ },
1165
+ unobserve: (s) => {
1166
+ var n;
1167
+ return (n = e()) == null ? void 0 : n.unobserve(s);
1168
+ }
1169
+ };
1170
+ })(), this.range = null, this.setOptions = (t) => {
1171
+ Object.entries(t).forEach(([e, s]) => {
1172
+ typeof s > "u" && delete t[e];
1173
+ }), this.options = {
1174
+ debug: !1,
1175
+ initialOffset: 0,
1176
+ overscan: 1,
1177
+ paddingStart: 0,
1178
+ paddingEnd: 0,
1179
+ scrollPaddingStart: 0,
1180
+ scrollPaddingEnd: 0,
1181
+ horizontal: !1,
1182
+ getItemKey: zn,
1183
+ rangeExtractor: Rn,
1184
+ onChange: () => {
1185
+ },
1186
+ measureElement: Bn,
1187
+ initialRect: {
1188
+ width: 0,
1189
+ height: 0
1190
+ },
1191
+ scrollMargin: 0,
1192
+ gap: 0,
1193
+ indexAttribute: "data-index",
1194
+ initialMeasurementsCache: [],
1195
+ lanes: 1,
1196
+ isScrollingResetDelay: 150,
1197
+ enabled: !0,
1198
+ isRtl: !1,
1199
+ useScrollendEvent: !1,
1200
+ useAnimationFrameWithResizeObserver: !1,
1201
+ ...t
1202
+ };
1203
+ }, this.notify = (t) => {
1204
+ var e, s;
1205
+ (s = (e = this.options).onChange) == null || s.call(e, this, t);
1206
+ }, this.maybeNotify = q(() => (this.calculateRange(), [
1207
+ this.isScrolling,
1208
+ this.range ? this.range.startIndex : null,
1209
+ this.range ? this.range.endIndex : null
1210
+ ]), (t) => {
1211
+ this.notify(t);
1212
+ }, {
1213
+ key: process.env.NODE_ENV !== "production" && "maybeNotify",
1214
+ debug: () => this.options.debug,
1215
+ initialDeps: [
1216
+ this.isScrolling,
1217
+ this.range ? this.range.startIndex : null,
1218
+ this.range ? this.range.endIndex : null
1219
+ ]
1220
+ }), this.cleanup = () => {
1221
+ this.unsubs.filter(Boolean).forEach((t) => t()), this.unsubs = [], this.observer.disconnect(), this.scrollElement = null, this.targetWindow = null;
1222
+ }, this._didMount = () => () => {
1223
+ this.cleanup();
1224
+ }, this._willUpdate = () => {
1225
+ var t;
1226
+ const e = this.options.enabled ? this.options.getScrollElement() : null;
1227
+ if (this.scrollElement !== e) {
1228
+ if (this.cleanup(), !e) {
1229
+ this.maybeNotify();
1230
+ return;
1231
+ }
1232
+ this.scrollElement = e, this.scrollElement && "ownerDocument" in this.scrollElement ? this.targetWindow = this.scrollElement.ownerDocument.defaultView : this.targetWindow = ((t = this.scrollElement) == null ? void 0 : t.window) ?? null, this.elementsCache.forEach((s) => {
1233
+ this.observer.observe(s);
1234
+ }), this.unsubs.push(this.options.observeElementRect(this, (s) => {
1235
+ this.scrollRect = s, this.maybeNotify();
1236
+ })), this.unsubs.push(this.options.observeElementOffset(this, (s, n) => {
1237
+ this.scrollAdjustments = 0, this.scrollDirection = n ? this.getScrollOffset() < s ? "forward" : "backward" : null, this.scrollOffset = s, this.isScrolling = n, this.maybeNotify();
1238
+ })), this._scrollToOffset(this.getScrollOffset(), {
1239
+ adjustments: void 0,
1240
+ behavior: void 0
1241
+ });
1242
+ }
1243
+ }, this.getSize = () => this.options.enabled ? (this.scrollRect = this.scrollRect ?? this.options.initialRect, this.scrollRect[this.options.horizontal ? "width" : "height"]) : (this.scrollRect = null, 0), this.getScrollOffset = () => this.options.enabled ? (this.scrollOffset = this.scrollOffset ?? (typeof this.options.initialOffset == "function" ? this.options.initialOffset() : this.options.initialOffset), this.scrollOffset) : (this.scrollOffset = null, 0), this.getFurthestMeasurement = (t, e) => {
1244
+ const s = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map();
1245
+ for (let i = e - 1; i >= 0; i--) {
1246
+ const o = t[i];
1247
+ if (s.has(o.lane)) continue;
1248
+ const a = n.get(o.lane);
1249
+ if (a == null || o.end > a.end ? n.set(o.lane, o) : o.end < a.end && s.set(o.lane, !0), s.size === this.options.lanes) break;
1250
+ }
1251
+ return n.size === this.options.lanes ? Array.from(n.values()).sort((i, o) => i.end === o.end ? i.index - o.index : i.end - o.end)[0] : void 0;
1252
+ }, this.getMeasurementOptions = q(() => [
1253
+ this.options.count,
1254
+ this.options.paddingStart,
1255
+ this.options.scrollMargin,
1256
+ this.options.getItemKey,
1257
+ this.options.enabled,
1258
+ this.options.lanes
1259
+ ], (t, e, s, n, i, o) => (this.prevLanes !== void 0 && this.prevLanes !== o && (this.lanesChangedFlag = !0), this.prevLanes = o, this.pendingMeasuredCacheIndexes = [], {
1260
+ count: t,
1261
+ paddingStart: e,
1262
+ scrollMargin: s,
1263
+ getItemKey: n,
1264
+ enabled: i,
1265
+ lanes: o
1266
+ }), { key: !1 }), this.getMeasurements = q(() => [this.getMeasurementOptions(), this.itemSizeCache], ({ count: t, paddingStart: e, scrollMargin: s, getItemKey: n, enabled: i, lanes: o }, a) => {
1267
+ if (!i)
1268
+ return this.measurementsCache = [], this.itemSizeCache.clear(), this.laneAssignments.clear(), [];
1269
+ if (this.laneAssignments.size > t)
1270
+ for (const u of this.laneAssignments.keys()) u >= t && this.laneAssignments.delete(u);
1271
+ this.lanesChangedFlag && (this.lanesChangedFlag = !1, this.lanesSettling = !0, this.measurementsCache = [], this.itemSizeCache.clear(), this.laneAssignments.clear(), this.pendingMeasuredCacheIndexes = []), this.measurementsCache.length === 0 && !this.lanesSettling && (this.measurementsCache = this.options.initialMeasurementsCache, this.measurementsCache.forEach((u) => {
1272
+ this.itemSizeCache.set(u.key, u.size);
1273
+ }));
1274
+ const d = this.lanesSettling ? 0 : this.pendingMeasuredCacheIndexes.length > 0 ? Math.min(...this.pendingMeasuredCacheIndexes) : 0;
1275
+ this.pendingMeasuredCacheIndexes = [], this.lanesSettling && this.measurementsCache.length === t && (this.lanesSettling = !1);
1276
+ const c = this.measurementsCache.slice(0, d), _ = new Array(o).fill(void 0);
1277
+ for (let u = 0; u < d; u++) {
1278
+ const h = c[u];
1279
+ h && (_[h.lane] = u);
1280
+ }
1281
+ for (let u = d; u < t; u++) {
1282
+ const h = n(u), m = this.laneAssignments.get(u);
1283
+ let y, I;
1284
+ if (m !== void 0 && this.options.lanes > 1) {
1285
+ y = m;
1286
+ const f = _[y], p = f !== void 0 ? c[f] : void 0;
1287
+ I = p ? p.end + this.options.gap : e + s;
1288
+ } else {
1289
+ const f = this.options.lanes === 1 ? c[u - 1] : this.getFurthestMeasurement(c, u);
1290
+ I = f ? f.end + this.options.gap : e + s, y = f ? f.lane : u % this.options.lanes, this.options.lanes > 1 && this.laneAssignments.set(u, y);
1291
+ }
1292
+ const b = a.get(h), w = typeof b == "number" ? b : this.options.estimateSize(u), g = I + w;
1293
+ c[u] = {
1294
+ index: u,
1295
+ start: I,
1296
+ size: w,
1297
+ end: g,
1298
+ key: h,
1299
+ lane: y
1300
+ }, _[y] = u;
1301
+ }
1302
+ return this.measurementsCache = c, c;
1303
+ }, {
1304
+ key: process.env.NODE_ENV !== "production" && "getMeasurements",
1305
+ debug: () => this.options.debug
1306
+ }), this.calculateRange = q(() => [
1307
+ this.getMeasurements(),
1308
+ this.getSize(),
1309
+ this.getScrollOffset(),
1310
+ this.options.lanes
1311
+ ], (t, e, s, n) => this.range = t.length > 0 && e > 0 ? qn({
1312
+ measurements: t,
1313
+ outerSize: e,
1314
+ scrollOffset: s,
1315
+ lanes: n
1316
+ }) : null, {
1317
+ key: process.env.NODE_ENV !== "production" && "calculateRange",
1318
+ debug: () => this.options.debug
1319
+ }), this.getVirtualIndexes = q(() => {
1320
+ let t = null, e = null;
1321
+ const s = this.calculateRange();
1322
+ return s && (t = s.startIndex, e = s.endIndex), this.maybeNotify.updateDeps([
1323
+ this.isScrolling,
1324
+ t,
1325
+ e
1326
+ ]), [
1327
+ this.options.rangeExtractor,
1328
+ this.options.overscan,
1329
+ this.options.count,
1330
+ t,
1331
+ e
1332
+ ];
1333
+ }, (t, e, s, n, i) => n === null || i === null ? [] : t({
1334
+ startIndex: n,
1335
+ endIndex: i,
1336
+ overscan: e,
1337
+ count: s
1338
+ }), {
1339
+ key: process.env.NODE_ENV !== "production" && "getVirtualIndexes",
1340
+ debug: () => this.options.debug
1341
+ }), this.indexFromElement = (t) => {
1342
+ const e = this.options.indexAttribute, s = t.getAttribute(e);
1343
+ return s ? parseInt(s, 10) : (console.warn(`Missing attribute name '${e}={index}' on measured element.`), -1);
1344
+ }, this._measureElement = (t, e) => {
1345
+ const s = this.indexFromElement(t), n = this.measurementsCache[s];
1346
+ if (!n) return;
1347
+ const i = n.key, o = this.elementsCache.get(i);
1348
+ o !== t && (o && this.observer.unobserve(o), this.observer.observe(t), this.elementsCache.set(i, t)), t.isConnected && this.resizeItem(s, this.options.measureElement(t, e, this));
1349
+ }, this.resizeItem = (t, e) => {
1350
+ const s = this.measurementsCache[t];
1351
+ if (!s) return;
1352
+ const n = e - (this.itemSizeCache.get(s.key) ?? s.size);
1353
+ n !== 0 && ((this.shouldAdjustScrollPositionOnItemSizeChange !== void 0 ? this.shouldAdjustScrollPositionOnItemSizeChange(s, n, this) : s.start < this.getScrollOffset() + this.scrollAdjustments) && (process.env.NODE_ENV !== "production" && this.options.debug && console.info("correction", n), this._scrollToOffset(this.getScrollOffset(), {
1354
+ adjustments: this.scrollAdjustments += n,
1355
+ behavior: void 0
1356
+ })), this.pendingMeasuredCacheIndexes.push(s.index), this.itemSizeCache = new Map(this.itemSizeCache.set(s.key, e)), this.notify(!1));
1357
+ }, this.measureElement = (t) => {
1358
+ if (!t) {
1359
+ this.elementsCache.forEach((e, s) => {
1360
+ e.isConnected || (this.observer.unobserve(e), this.elementsCache.delete(s));
1361
+ });
1362
+ return;
1363
+ }
1364
+ this._measureElement(t, void 0);
1365
+ }, this.getVirtualItems = q(() => [this.getVirtualIndexes(), this.getMeasurements()], (t, e) => {
1366
+ const s = [];
1367
+ for (let n = 0, i = t.length; n < i; n++) {
1368
+ const o = e[t[n]];
1369
+ s.push(o);
1370
+ }
1371
+ return s;
1372
+ }, {
1373
+ key: process.env.NODE_ENV !== "production" && "getVirtualItems",
1374
+ debug: () => this.options.debug
1375
+ }), this.getVirtualItemForOffset = (t) => {
1376
+ const e = this.getMeasurements();
1377
+ if (e.length !== 0)
1378
+ return ce(e[fe(0, e.length - 1, (s) => ce(e[s]).start, t)]);
1379
+ }, this.getMaxScrollOffset = () => {
1380
+ if (!this.scrollElement) return 0;
1381
+ if ("scrollHeight" in this.scrollElement) return this.options.horizontal ? this.scrollElement.scrollWidth - this.scrollElement.clientWidth : this.scrollElement.scrollHeight - this.scrollElement.clientHeight;
1382
+ {
1383
+ const t = this.scrollElement.document.documentElement;
1384
+ return this.options.horizontal ? t.scrollWidth - this.scrollElement.innerWidth : t.scrollHeight - this.scrollElement.innerHeight;
1385
+ }
1386
+ }, this.getOffsetForAlignment = (t, e, s = 0) => {
1387
+ if (!this.scrollElement) return 0;
1388
+ const n = this.getSize(), i = this.getScrollOffset();
1389
+ e === "auto" && (e = t >= i + n ? "end" : "start"), e === "center" ? t += (s - n) / 2 : e === "end" && (t -= n);
1390
+ const o = this.getMaxScrollOffset();
1391
+ return Math.max(Math.min(o, t), 0);
1392
+ }, this.getOffsetForIndex = (t, e = "auto") => {
1393
+ t = Math.max(0, Math.min(t, this.options.count - 1));
1394
+ const s = this.measurementsCache[t];
1395
+ if (!s) return;
1396
+ const n = this.getSize(), i = this.getScrollOffset();
1397
+ if (e === "auto") if (s.end >= i + n - this.options.scrollPaddingEnd) e = "end";
1398
+ else if (s.start <= i + this.options.scrollPaddingStart) e = "start";
1399
+ else return [i, e];
1400
+ if (e === "end" && t === this.options.count - 1) return [this.getMaxScrollOffset(), e];
1401
+ const o = e === "end" ? s.end + this.options.scrollPaddingEnd : s.start - this.options.scrollPaddingStart;
1402
+ return [this.getOffsetForAlignment(o, e, s.size), e];
1403
+ }, this.isDynamicMode = () => this.elementsCache.size > 0, this.scrollToOffset = (t, { align: e = "start", behavior: s } = {}) => {
1404
+ s === "smooth" && this.isDynamicMode() && console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."), this._scrollToOffset(this.getOffsetForAlignment(t, e), {
1405
+ adjustments: void 0,
1406
+ behavior: s
1407
+ });
1408
+ }, this.scrollToIndex = (t, { align: e = "auto", behavior: s } = {}) => {
1409
+ s === "smooth" && this.isDynamicMode() && console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."), t = Math.max(0, Math.min(t, this.options.count - 1)), this.currentScrollToIndex = t;
1410
+ let n = 0;
1411
+ const i = 10, o = (d) => {
1412
+ if (!this.targetWindow) return;
1413
+ const c = this.getOffsetForIndex(t, d);
1414
+ if (!c) {
1415
+ console.warn("Failed to get offset for index:", t);
1416
+ return;
1417
+ }
1418
+ const [_, u] = c;
1419
+ this._scrollToOffset(_, {
1420
+ adjustments: void 0,
1421
+ behavior: s
1422
+ }), this.targetWindow.requestAnimationFrame(() => {
1423
+ if (!this.targetWindow) return;
1424
+ const h = () => {
1425
+ if (this.currentScrollToIndex !== t) return;
1426
+ const m = this.getScrollOffset(), y = this.getOffsetForIndex(t, u);
1427
+ if (!y) {
1428
+ console.warn("Failed to get offset for index:", t);
1429
+ return;
1430
+ }
1431
+ Dn(y[0], m) || a(u);
1432
+ };
1433
+ this.isDynamicMode() ? this.targetWindow.requestAnimationFrame(h) : h();
1434
+ });
1435
+ }, a = (d) => {
1436
+ this.targetWindow && this.currentScrollToIndex === t && (n++, n < i ? (process.env.NODE_ENV !== "production" && this.options.debug && console.info("Schedule retry", n, i), this.targetWindow.requestAnimationFrame(() => o(d))) : console.warn(`Failed to scroll to index ${t} after ${i} attempts.`));
1437
+ };
1438
+ o(e);
1439
+ }, this.scrollBy = (t, { behavior: e } = {}) => {
1440
+ e === "smooth" && this.isDynamicMode() && console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."), this._scrollToOffset(this.getScrollOffset() + t, {
1441
+ adjustments: void 0,
1442
+ behavior: e
1443
+ });
1444
+ }, this.getTotalSize = () => {
1445
+ var t;
1446
+ const e = this.getMeasurements();
1447
+ let s;
1448
+ if (e.length === 0) s = this.options.paddingStart;
1449
+ else if (this.options.lanes === 1) s = ((t = e[e.length - 1]) == null ? void 0 : t.end) ?? 0;
1450
+ else {
1451
+ const n = Array(this.options.lanes).fill(null);
1452
+ let i = e.length - 1;
1453
+ for (; i >= 0 && n.some((o) => o === null); ) {
1454
+ const o = e[i];
1455
+ n[o.lane] === null && (n[o.lane] = o.end), i--;
1456
+ }
1457
+ s = Math.max(...n.filter((o) => o !== null));
1458
+ }
1459
+ return Math.max(s - this.options.scrollMargin + this.options.paddingEnd, 0);
1460
+ }, this._scrollToOffset = (t, { adjustments: e, behavior: s }) => {
1461
+ this.options.scrollToFn(t, {
1462
+ behavior: s,
1463
+ adjustments: e
1464
+ }, this);
1465
+ }, this.measure = () => {
1466
+ this.itemSizeCache = /* @__PURE__ */ new Map(), this.laneAssignments = /* @__PURE__ */ new Map(), this.notify(!1);
1467
+ }, this.setOptions(l);
1468
+ }
1469
+ }, fe = (l, t, e, s) => {
1470
+ for (; l <= t; ) {
1471
+ const n = (l + t) / 2 | 0, i = e(n);
1472
+ if (i < s) l = n + 1;
1473
+ else if (i > s) t = n - 1;
1474
+ else return n;
1475
+ }
1476
+ return l > 0 ? l - 1 : 0;
1477
+ };
1478
+ function qn({ measurements: l, outerSize: t, scrollOffset: e, lanes: s }) {
1479
+ const n = l.length - 1, i = (d) => l[d].start;
1480
+ if (l.length <= s) return {
1481
+ startIndex: 0,
1482
+ endIndex: n
1483
+ };
1484
+ let o = fe(0, n, i, e), a = o;
1485
+ if (s === 1) for (; a < n && l[a].end < e + t; ) a++;
1486
+ else if (s > 1) {
1487
+ const d = Array(s).fill(0);
1488
+ for (; a < n && d.some((_) => _ < e + t); ) {
1489
+ const _ = l[a];
1490
+ d[_.lane] = _.end, a++;
1491
+ }
1492
+ const c = Array(s).fill(e + t);
1493
+ for (; o >= 0 && c.some((_) => _ >= e); ) {
1494
+ const _ = l[o];
1495
+ c[_.lane] = _.start, o--;
1496
+ }
1497
+ o = Math.max(0, o - o % s), a = Math.min(n, a + (s - 1 - a % s));
1498
+ }
1499
+ return {
1500
+ startIndex: o,
1501
+ endIndex: a
1502
+ };
1503
+ }
1504
+ var ue = typeof document < "u" ? Q.useLayoutEffect : Q.useEffect;
1505
+ function ye({ useFlushSync: l = !0, ...t }) {
1506
+ const e = Q.useReducer(() => ({}), {})[1], s = {
1507
+ ...t,
1508
+ onChange: (i, o) => {
1509
+ var a;
1510
+ l && o ? je(e) : e(), (a = t.onChange) == null || a.call(t, i, o);
1511
+ }
1512
+ }, [n] = Q.useState(() => new jn(s));
1513
+ return n.setOptions(s), ue(() => n._didMount(), []), ue(() => n._willUpdate()), n;
1514
+ }
1515
+ function Pn(l) {
1516
+ return ye({
1517
+ observeElementRect: Tn,
1518
+ observeElementOffset: kn,
1519
+ scrollToFn: Fn,
1520
+ ...l
1521
+ });
1522
+ }
1523
+ function Hn(l) {
1524
+ return ye({
1525
+ getScrollElement: () => typeof document < "u" ? window : null,
1526
+ observeElementRect: Wn,
1527
+ observeElementOffset: An,
1528
+ scrollToFn: Vn,
1529
+ initialOffset: () => typeof document < "u" ? window.scrollY : 0,
1530
+ ...l
1531
+ });
1532
+ }
1533
+ const Gn = "styles-module__virtualList___pM6rN", Kn = "styles-module__emptyContainer___rm938", Xn = "styles-module__virtualListInner___HxRzc", Un = "styles-module__virtualListItems___p19-a", Zn = "styles-module__loadingMore___zAdLM", Yn = "styles-module__endOfList___5cYFh";
1534
+ var F = {
1535
+ virtualList: Gn,
1536
+ emptyContainer: Kn,
1537
+ virtualListInner: Xn,
1538
+ virtualListItems: Un,
1539
+ loadingMore: Zn,
1540
+ endOfList: Yn
1541
+ };
1542
+ function Qn({ data: l, hasNextPage: t, isFetchingNextPage: e, fetchNextPage: s, renderItem: n, estimateSize: i = 200, overscan: o = 5, height: a = "600px", getItemKey: d, emptyState: c, loadingIndicator: _, endOfListIndicator: u, emptyText: h = "No data", loadingMoreText: m = "Loading more...", endOfListText: y = "No more items", flexClass: I, outerClass: b, innerClass: w, ...g }) {
1543
+ const f = te(null), p = Array.isArray(l) ? l : [], E = p.length, x = Pn({
1544
+ count: t ? E + 1 : E,
1545
+ getScrollElement: () => f.current,
1546
+ estimateSize: typeof i == "number" ? () => i : i,
1547
+ overscan: o,
1548
+ ...g
1549
+ }), A = x.getVirtualItems();
1550
+ H(() => {
1551
+ const [O] = [...A].reverse();
1552
+ O && O.index >= E - 1 && t && !e && s && s();
1553
+ }, [
1554
+ t,
1555
+ s,
1556
+ E,
1557
+ e,
1558
+ A
1559
+ ]);
1560
+ const G = P(() => r("div", {
1561
+ className: F.virtualList,
1562
+ style: { height: typeof a == "number" ? `${a}px` : a },
1563
+ children: c ?? r("div", {
1564
+ className: F.emptyContainer,
1565
+ children: r("span", { children: h })
1566
+ })
1567
+ }), [
1568
+ c,
1569
+ a,
1570
+ h
1571
+ ]), N = P(() => _ || r("div", {
1572
+ className: F.loadingMore,
1573
+ children: r("span", { children: m })
1574
+ }), [_, m]), $ = P(() => u || r("div", {
1575
+ className: F.endOfList,
1576
+ children: r("span", { children: y })
1577
+ }), [u, y]);
1578
+ return E === 0 ? G() : r("div", {
1579
+ ref: f,
1580
+ className: `${F.virtualList} ${b ?? ""}`,
1581
+ style: { height: typeof a == "number" ? `${a}px` : a },
1582
+ children: r("div", {
1583
+ className: `${F.virtualListInner} ${w ?? ""}`,
1584
+ style: { height: `${x.getTotalSize()}px` },
1585
+ children: r("div", {
1586
+ className: `${F.virtualListItems} ${I ?? ""}`,
1587
+ style: {
1588
+ transform: `translateY(${A[0]?.start ?? 0}px)`,
1589
+ paddingTop: "2px"
1590
+ },
1591
+ children: A.map((O) => {
1592
+ const S = O.index > E - 1, re = p[O.index];
1593
+ return r("div", {
1594
+ "data-index": O.index,
1595
+ ref: x.measureElement,
1596
+ children: S ? t ? N() : $() : r("div", { children: n(re, O.index) }, d(re, O.index))
1597
+ }, O.key);
1598
+ })
1599
+ })
1600
+ })
1601
+ });
1602
+ }
1603
+ var yl = R(Qn);
1604
+ const Jn = "styles-module__virtualList___xmj2v", el = "styles-module__virtualListInner___quD74", tl = "styles-module__virtualListItems___-Muml", sl = "styles-module__virtualListRow___h3pzX", nl = "styles-module__emptyContainer___LIy8r", ll = "styles-module__loadingMore___Mzf-p", rl = "styles-module__endOfList___g5G--";
1605
+ var j = {
1606
+ virtualList: Jn,
1607
+ virtualListInner: el,
1608
+ virtualListItems: tl,
1609
+ virtualListRow: sl,
1610
+ emptyContainer: nl,
1611
+ loadingMore: ll,
1612
+ endOfList: rl
1613
+ };
1614
+ function ol({ data: l, hasNextPage: t, isFetchingNextPage: e, fetchNextPage: s, renderItem: n, estimateSize: i = 200, overscan: o = 5, height: a, getItemKey: d, emptyState: c, loadingIndicator: _, endOfListIndicator: u, emptyText: h = "No data", loadingMoreText: m = "Loading more...", endOfListText: y = "No more items", flexClass: I, outerClass: b, innerClass: w, ...g }) {
1615
+ const f = Array.isArray(l) ? l : [], p = f.length, E = Hn({
1616
+ count: t ? p + 1 : p,
1617
+ estimateSize: typeof i == "number" ? () => i : i,
1618
+ overscan: o,
1619
+ ...g
1620
+ }), x = E.getVirtualItems();
1621
+ H(() => {
1622
+ const $ = x[x.length - 1];
1623
+ $ && $.index >= p && t && !e && s && s();
1624
+ }, [
1625
+ x,
1626
+ t,
1627
+ e,
1628
+ s,
1629
+ p
1630
+ ]);
1631
+ const A = P(() => r("div", {
1632
+ className: j.virtualList,
1633
+ style: { height: typeof a == "number" ? `${a}px` : a ?? "auto" },
1634
+ children: c ?? r("div", {
1635
+ className: j.emptyContainer,
1636
+ children: r("span", { children: h })
1637
+ })
1638
+ }), [
1639
+ c,
1640
+ a,
1641
+ h
1642
+ ]), G = P(() => _ ?? r("div", {
1643
+ className: j.loadingMore,
1644
+ children: r("span", { children: m })
1645
+ }), [_, m]), N = P(() => u ?? r("div", {
1646
+ className: j.endOfList,
1647
+ children: r("span", { children: y })
1648
+ }), [u, y]);
1649
+ return p === 0 ? A() : r("div", {
1650
+ className: `${j.virtualList} ${b ?? ""}`,
1651
+ children: r("div", {
1652
+ className: `${j.virtualListInner} ${w ?? ""}`,
1653
+ style: { height: E.getTotalSize() },
1654
+ children: r("div", {
1655
+ className: `${j.virtualListItems} ${I ?? ""}`,
1656
+ style: { transform: `translateY(${x[0]?.start ?? 0}px)` },
1657
+ children: x.map(($) => {
1658
+ const O = $.index >= p, S = f[$.index];
1659
+ return r("div", {
1660
+ "data-index": $.index,
1661
+ ref: E.measureElement,
1662
+ children: O ? t ? G() : N() : S == null ? r("div", {}, `missing-${$.index}`) : r("div", { children: n(S, $.index) }, d(S, $.index))
1663
+ }, $.key);
1664
+ })
1665
+ })
1666
+ })
1667
+ });
1668
+ }
1669
+ var gl = R(ol);
1670
+ export {
1671
+ se as Button,
1672
+ Ct as Dropdown,
1673
+ It as Icon,
1674
+ ne as Input,
1675
+ ts as KeyValueEditor,
1676
+ Ms as LayoutSwitcher,
1677
+ os as SearchInput,
1678
+ ms as ShowFilter,
1679
+ le as SlideDownSwitcher,
1680
+ Gs as Slider,
1681
+ hn as Suspense,
1682
+ On as Textarea,
1683
+ Ss as ThemeSwitcher,
1684
+ yl as VirtualList,
1685
+ gl as VirtualWindowList
1686
+ };
1687
+
1688
+ //# sourceMappingURL=components.mjs.map