ivt 0.3.3 → 0.3.5

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 (257) hide show
  1. package/dist/accordion/index.mjs +19 -1
  2. package/dist/accordion/index.mjs.map +1 -1
  3. package/dist/alert/index.mjs +43 -1
  4. package/dist/alert/index.mjs.map +1 -1
  5. package/dist/alert-dialog/index.mjs +260 -1
  6. package/dist/alert-dialog/index.mjs.map +1 -1
  7. package/dist/avatar/index.mjs +164 -1
  8. package/dist/avatar/index.mjs.map +1 -1
  9. package/dist/badge/index.mjs +6 -1
  10. package/dist/badge/index.mjs.map +1 -1
  11. package/dist/base/index.mjs +760 -1
  12. package/dist/base/index.mjs.map +1 -1
  13. package/dist/button/index.mjs +6 -1
  14. package/dist/button/index.mjs.map +1 -1
  15. package/dist/calendar/index.mjs +11 -1
  16. package/dist/calendar/index.mjs.map +1 -1
  17. package/dist/card/index.mjs +55 -1
  18. package/dist/card/index.mjs.map +1 -1
  19. package/dist/chart/index.mjs +16696 -1
  20. package/dist/chart/index.mjs.map +1 -1
  21. package/dist/checkbox/index.mjs +223 -1
  22. package/dist/checkbox/index.mjs.map +1 -1
  23. package/dist/chunks/_commonjsHelpers-DKISyIRi.mjs +6 -0
  24. package/dist/chunks/_commonjsHelpers-DKISyIRi.mjs.map +1 -0
  25. package/dist/chunks/accordion-CK9Ucbko.mjs +455 -0
  26. package/dist/chunks/{accordion-CdshDFZC.mjs.map → accordion-CK9Ucbko.mjs.map} +1 -1
  27. package/dist/chunks/badge-CT_hmjd2.mjs +57 -0
  28. package/dist/chunks/{badge-BYqshEmA.mjs.map → badge-CT_hmjd2.mjs.map} +1 -1
  29. package/dist/chunks/bundle-mjs-CS-QKnOm.mjs +4491 -0
  30. package/dist/chunks/{bundle-mjs-9BXytT_r.mjs.map → bundle-mjs-CS-QKnOm.mjs.map} +1 -1
  31. package/dist/chunks/button-BHeYV17S.mjs +47 -0
  32. package/dist/chunks/{button-DrFZXJ7z.mjs.map → button-BHeYV17S.mjs.map} +1 -1
  33. package/dist/chunks/calendar-CU6HdJET.mjs +7106 -0
  34. package/dist/chunks/calendar-CU6HdJET.mjs.map +1 -0
  35. package/dist/chunks/check-B3pXhibW.mjs +15 -0
  36. package/dist/chunks/{check-CimnOyD7.mjs.map → check-B3pXhibW.mjs.map} +1 -1
  37. package/dist/chunks/chevron-down-BV5gvmUW.mjs +15 -0
  38. package/dist/chunks/{chevron-down-D3fvbjxE.mjs.map → chevron-down-BV5gvmUW.mjs.map} +1 -1
  39. package/dist/chunks/chevron-left-BjGcH2KQ.mjs +15 -0
  40. package/dist/chunks/{chevron-left-CrN7DlXg.mjs.map → chevron-left-BjGcH2KQ.mjs.map} +1 -1
  41. package/dist/chunks/chevron-right-DmZu0xvo.mjs +15 -0
  42. package/dist/chunks/{chevron-right-BMSCuDGK.mjs.map → chevron-right-DmZu0xvo.mjs.map} +1 -1
  43. package/dist/chunks/chevrons-up-down-COuCmfU7.mjs +22 -0
  44. package/dist/chunks/{chevrons-up-down-DBgvRkZm.mjs.map → chevrons-up-down-COuCmfU7.mjs.map} +1 -1
  45. package/dist/chunks/circle-BKsPjIbw.mjs +17 -0
  46. package/dist/chunks/{circle-CGqt18Bd.mjs.map → circle-BKsPjIbw.mjs.map} +1 -1
  47. package/dist/chunks/command-CUWr3X1X.mjs +611 -0
  48. package/dist/chunks/command-CUWr3X1X.mjs.map +1 -0
  49. package/dist/chunks/createLucideIcon-BSP_Jxu-.mjs +60 -0
  50. package/dist/chunks/{createLucideIcon-L-tld2uc.mjs.map → createLucideIcon-BSP_Jxu-.mjs.map} +1 -1
  51. package/dist/chunks/dialog-zZCazow7.mjs +80 -0
  52. package/dist/chunks/{dialog-36eqHzT3.mjs.map → dialog-zZCazow7.mjs.map} +1 -1
  53. package/dist/chunks/hover-card-C6WPsacG.mjs +274 -0
  54. package/dist/chunks/{hover-card-Cnd58du6.mjs.map → hover-card-C6WPsacG.mjs.map} +1 -1
  55. package/dist/chunks/index-3XcV7C7l.mjs +324 -0
  56. package/dist/chunks/{index-DUNcuWJE.mjs.map → index-3XcV7C7l.mjs.map} +1 -1
  57. package/dist/chunks/index-B1VVz0MP.mjs +266 -0
  58. package/dist/chunks/index-B1VVz0MP.mjs.map +1 -0
  59. package/dist/chunks/index-BFDafXar.mjs +2370 -0
  60. package/dist/chunks/index-BFDafXar.mjs.map +1 -0
  61. package/dist/chunks/index-BF_TaONY.mjs +859 -0
  62. package/dist/chunks/{index-DZHMFdr0.mjs.map → index-BF_TaONY.mjs.map} +1 -1
  63. package/dist/chunks/index-BOOPeiVs.mjs +34 -0
  64. package/dist/chunks/{index-D2sZp5OP.mjs.map → index-BOOPeiVs.mjs.map} +1 -1
  65. package/dist/chunks/index-BYijxgZz.mjs +12 -0
  66. package/dist/chunks/index-BYijxgZz.mjs.map +1 -0
  67. package/dist/chunks/index-BZyzz9k8.mjs +40 -0
  68. package/dist/chunks/index-BZyzz9k8.mjs.map +1 -0
  69. package/dist/chunks/index-Bgiaprdv.mjs +7 -0
  70. package/dist/chunks/{index-CLtWFQL5.mjs.map → index-Bgiaprdv.mjs.map} +1 -1
  71. package/dist/chunks/index-Bl6nVRXe.mjs +110 -0
  72. package/dist/chunks/{index-CCcl327A.mjs.map → index-Bl6nVRXe.mjs.map} +1 -1
  73. package/dist/chunks/index-BwQDLVf8.mjs +151 -0
  74. package/dist/chunks/index-BwQDLVf8.mjs.map +1 -0
  75. package/dist/chunks/index-CHyZo-Tj.mjs +1210 -0
  76. package/dist/chunks/index-CHyZo-Tj.mjs.map +1 -0
  77. package/dist/chunks/index-CZ7Wntp7.mjs +21 -0
  78. package/dist/chunks/index-CZ7Wntp7.mjs.map +1 -0
  79. package/dist/chunks/index-D1yPZAOL.mjs +13 -0
  80. package/dist/chunks/{index-CXszXOf_.mjs.map → index-D1yPZAOL.mjs.map} +1 -1
  81. package/dist/chunks/index-DIBl7n6R.mjs +145 -0
  82. package/dist/chunks/index-DIBl7n6R.mjs.map +1 -0
  83. package/dist/chunks/index-DRk0bB4A.mjs +216 -0
  84. package/dist/chunks/{index-LvOFIVGz.mjs.map → index-DRk0bB4A.mjs.map} +1 -1
  85. package/dist/chunks/index-DUFr75Kc.mjs +77 -0
  86. package/dist/chunks/{index-CybgQKpz.mjs.map → index-DUFr75Kc.mjs.map} +1 -1
  87. package/dist/chunks/index-DrnQ43fz.mjs +18 -0
  88. package/dist/chunks/{index-CRxQlsb9.mjs.map → index-DrnQ43fz.mjs.map} +1 -1
  89. package/dist/chunks/index-Dulm0stf.mjs +12 -0
  90. package/dist/chunks/{index-CU_y1XAz.mjs.map → index-Dulm0stf.mjs.map} +1 -1
  91. package/dist/chunks/index-fWnSEyU5.mjs +50 -0
  92. package/dist/chunks/{index-w9bxia3O.mjs.map → index-fWnSEyU5.mjs.map} +1 -1
  93. package/dist/chunks/index-tNc5GmLL.mjs +51 -0
  94. package/dist/chunks/{index-vmPXTidH.mjs.map → index-tNc5GmLL.mjs.map} +1 -1
  95. package/dist/chunks/input-D9-FhnGc.mjs +14 -0
  96. package/dist/chunks/{input-85UFztMJ.mjs.map → input-D9-FhnGc.mjs.map} +1 -1
  97. package/dist/chunks/label-CiJcd2F9.mjs +32 -0
  98. package/dist/chunks/{label-CICFzZIt.mjs.map → label-CiJcd2F9.mjs.map} +1 -1
  99. package/dist/chunks/pagination-SOhqOW7I.mjs +106 -0
  100. package/dist/chunks/{pagination-CReDQes6.mjs.map → pagination-SOhqOW7I.mjs.map} +1 -1
  101. package/dist/chunks/popover-WlYXFyUl.mjs +308 -0
  102. package/dist/chunks/{popover-Cn2ZTvKd.mjs.map → popover-WlYXFyUl.mjs.map} +1 -1
  103. package/dist/chunks/progress-DdBZJTQG.mjs +99 -0
  104. package/dist/chunks/{progress-CSxQH6-f.mjs.map → progress-DdBZJTQG.mjs.map} +1 -1
  105. package/dist/chunks/scroll-area-B2wNbBRR.mjs +791 -0
  106. package/dist/chunks/scroll-area-B2wNbBRR.mjs.map +1 -0
  107. package/dist/chunks/select-COGYOg3A.mjs +104 -0
  108. package/dist/chunks/{select-BR6_N_Yo.mjs.map → select-COGYOg3A.mjs.map} +1 -1
  109. package/dist/chunks/separator-D6Y96f4g.mjs +48 -0
  110. package/dist/chunks/{separator-BB6-E9Z1.mjs.map → separator-D6Y96f4g.mjs.map} +1 -1
  111. package/dist/chunks/skeleton-CRfBAk8U.mjs +13 -0
  112. package/dist/chunks/{skeleton-XPWWiaac.mjs.map → skeleton-CRfBAk8U.mjs.map} +1 -1
  113. package/dist/chunks/sortable-tiuZWf3S.mjs +4221 -0
  114. package/dist/chunks/sortable-tiuZWf3S.mjs.map +1 -0
  115. package/dist/chunks/table-BlTF56Yn.mjs +62 -0
  116. package/dist/chunks/{table-LQIHzPHi.mjs.map → table-BlTF56Yn.mjs.map} +1 -1
  117. package/dist/chunks/toggle-D5tCYA7L.mjs +65 -0
  118. package/dist/chunks/{toggle-Co72WXGd.mjs.map → toggle-D5tCYA7L.mjs.map} +1 -1
  119. package/dist/chunks/tooltip-BpTMPR5Q.mjs +596 -0
  120. package/dist/chunks/{tooltip-qX2HjdJP.mjs.map → tooltip-BpTMPR5Q.mjs.map} +1 -1
  121. package/dist/chunks/tslib.es6-O3UsmxNe.mjs +61 -0
  122. package/dist/chunks/{tslib.es6-cMGqxriw.mjs.map → tslib.es6-O3UsmxNe.mjs.map} +1 -1
  123. package/dist/chunks/utils-tbIgc9YG.mjs +42 -0
  124. package/dist/chunks/utils-tbIgc9YG.mjs.map +1 -0
  125. package/dist/chunks/x-5oL4uC6I.mjs +22 -0
  126. package/dist/chunks/{x-BNLl0E-E.mjs.map → x-5oL4uC6I.mjs.map} +1 -1
  127. package/dist/combobox/index.mjs +65 -1
  128. package/dist/combobox/index.mjs.map +1 -1
  129. package/dist/command/index.mjs +23 -1
  130. package/dist/command/index.mjs.map +1 -1
  131. package/dist/data-table/index.mjs +673 -1
  132. package/dist/data-table/index.mjs.map +1 -1
  133. package/dist/dialog/index.mjs +22 -1
  134. package/dist/dialog/index.mjs.map +1 -1
  135. package/dist/dropdown-menu/index.mjs +438 -1
  136. package/dist/dropdown-menu/index.mjs.map +1 -1
  137. package/dist/dropzone/index.mjs +7839 -1
  138. package/dist/dropzone/index.mjs.map +1 -1
  139. package/dist/form/index.mjs +649 -1
  140. package/dist/form/index.mjs.map +1 -1
  141. package/dist/hover-card/index.mjs +18 -1
  142. package/dist/hover-card/index.mjs.map +1 -1
  143. package/dist/icon/index.mjs +317 -1
  144. package/dist/icon/index.mjs.map +1 -1
  145. package/dist/index.css +1 -1
  146. package/dist/input/index.mjs +4 -1
  147. package/dist/input/index.mjs.map +1 -1
  148. package/dist/ivt.css +1 -1
  149. package/dist/label/index.mjs +8 -1
  150. package/dist/label/index.mjs.map +1 -1
  151. package/dist/menubar/index.mjs +583 -1
  152. package/dist/menubar/index.mjs.map +1 -1
  153. package/dist/multi-select/index.mjs +297 -1
  154. package/dist/multi-select/index.mjs.map +1 -1
  155. package/dist/pagination/index.mjs +10 -1
  156. package/dist/pagination/index.mjs.map +1 -1
  157. package/dist/popover/index.mjs +21 -1
  158. package/dist/popover/index.mjs.map +1 -1
  159. package/dist/progress/index.mjs +9 -1
  160. package/dist/progress/index.mjs.map +1 -1
  161. package/dist/radio-group/index.mjs +267 -1
  162. package/dist/radio-group/index.mjs.map +1 -1
  163. package/dist/scroll-area/index.mjs +15 -1
  164. package/dist/scroll-area/index.mjs.map +1 -1
  165. package/dist/select/index.mjs +8 -1
  166. package/dist/select/index.mjs.map +1 -1
  167. package/dist/separator/index.mjs +8 -1
  168. package/dist/separator/index.mjs.map +1 -1
  169. package/dist/sheet/index.mjs +96 -1
  170. package/dist/sheet/index.mjs.map +1 -1
  171. package/dist/skeleton/index.mjs +4 -1
  172. package/dist/skeleton/index.mjs.map +1 -1
  173. package/dist/sonner/index.mjs +1140 -1
  174. package/dist/sonner/index.mjs.map +1 -1
  175. package/dist/sortable/index.mjs +8 -1
  176. package/dist/sortable/index.mjs.map +1 -1
  177. package/dist/table/index.mjs +4 -1
  178. package/dist/table/index.mjs.map +1 -1
  179. package/dist/tabs/index.mjs +193 -1
  180. package/dist/tabs/index.mjs.map +1 -1
  181. package/dist/textarea/index.mjs +13 -1
  182. package/dist/textarea/index.mjs.map +1 -1
  183. package/dist/toast/index.mjs +705 -1
  184. package/dist/toast/index.mjs.map +1 -1
  185. package/dist/toggle/index.mjs +12 -1
  186. package/dist/toggle/index.mjs.map +1 -1
  187. package/dist/toggle-group/index.mjs +219 -1
  188. package/dist/toggle-group/index.mjs.map +1 -1
  189. package/dist/tooltip/index.mjs +20 -1
  190. package/dist/tooltip/index.mjs.map +1 -1
  191. package/package.json +6 -5
  192. package/dist/chunks/_commonjsHelpers-6qLFzZa5.mjs +0 -2
  193. package/dist/chunks/_commonjsHelpers-6qLFzZa5.mjs.map +0 -1
  194. package/dist/chunks/accordion-CdshDFZC.mjs +0 -2
  195. package/dist/chunks/badge-BYqshEmA.mjs +0 -2
  196. package/dist/chunks/bundle-mjs-9BXytT_r.mjs +0 -2
  197. package/dist/chunks/button-DrFZXJ7z.mjs +0 -2
  198. package/dist/chunks/calendar-BY6t8wdJ.mjs +0 -2
  199. package/dist/chunks/calendar-BY6t8wdJ.mjs.map +0 -1
  200. package/dist/chunks/check-CimnOyD7.mjs +0 -2
  201. package/dist/chunks/chevron-down-D3fvbjxE.mjs +0 -2
  202. package/dist/chunks/chevron-left-CrN7DlXg.mjs +0 -2
  203. package/dist/chunks/chevron-right-BMSCuDGK.mjs +0 -2
  204. package/dist/chunks/chevrons-up-down-DBgvRkZm.mjs +0 -2
  205. package/dist/chunks/circle-CGqt18Bd.mjs +0 -2
  206. package/dist/chunks/command-C6ON-ciq.mjs +0 -2
  207. package/dist/chunks/command-C6ON-ciq.mjs.map +0 -1
  208. package/dist/chunks/createLucideIcon-L-tld2uc.mjs +0 -2
  209. package/dist/chunks/dialog-36eqHzT3.mjs +0 -2
  210. package/dist/chunks/hover-card-Cnd58du6.mjs +0 -2
  211. package/dist/chunks/index-B4QsDzeM.mjs +0 -2
  212. package/dist/chunks/index-B4QsDzeM.mjs.map +0 -1
  213. package/dist/chunks/index-BdpYc58_.mjs +0 -2
  214. package/dist/chunks/index-BdpYc58_.mjs.map +0 -1
  215. package/dist/chunks/index-CCcl327A.mjs +0 -2
  216. package/dist/chunks/index-CLtWFQL5.mjs +0 -2
  217. package/dist/chunks/index-COvW87ew.mjs +0 -2
  218. package/dist/chunks/index-COvW87ew.mjs.map +0 -1
  219. package/dist/chunks/index-CRxQlsb9.mjs +0 -2
  220. package/dist/chunks/index-CU_y1XAz.mjs +0 -2
  221. package/dist/chunks/index-CXszXOf_.mjs +0 -2
  222. package/dist/chunks/index-CdJCOoFA.mjs +0 -2
  223. package/dist/chunks/index-CdJCOoFA.mjs.map +0 -1
  224. package/dist/chunks/index-Cpq7N5Ej.mjs +0 -2
  225. package/dist/chunks/index-Cpq7N5Ej.mjs.map +0 -1
  226. package/dist/chunks/index-CybgQKpz.mjs +0 -2
  227. package/dist/chunks/index-D2sZp5OP.mjs +0 -2
  228. package/dist/chunks/index-DOyt-JEx.mjs +0 -2
  229. package/dist/chunks/index-DOyt-JEx.mjs.map +0 -1
  230. package/dist/chunks/index-DUNcuWJE.mjs +0 -2
  231. package/dist/chunks/index-DZHMFdr0.mjs +0 -2
  232. package/dist/chunks/index-LvOFIVGz.mjs +0 -2
  233. package/dist/chunks/index-lvPXnk5F.mjs +0 -2
  234. package/dist/chunks/index-lvPXnk5F.mjs.map +0 -1
  235. package/dist/chunks/index-vmPXTidH.mjs +0 -2
  236. package/dist/chunks/index-w9bxia3O.mjs +0 -2
  237. package/dist/chunks/index-xew3kygQ.mjs +0 -2
  238. package/dist/chunks/index-xew3kygQ.mjs.map +0 -1
  239. package/dist/chunks/input-85UFztMJ.mjs +0 -2
  240. package/dist/chunks/label-CICFzZIt.mjs +0 -2
  241. package/dist/chunks/pagination-CReDQes6.mjs +0 -2
  242. package/dist/chunks/popover-Cn2ZTvKd.mjs +0 -2
  243. package/dist/chunks/progress-CSxQH6-f.mjs +0 -2
  244. package/dist/chunks/scroll-area-CvCz7cL_.mjs +0 -2
  245. package/dist/chunks/scroll-area-CvCz7cL_.mjs.map +0 -1
  246. package/dist/chunks/select-BR6_N_Yo.mjs +0 -2
  247. package/dist/chunks/separator-BB6-E9Z1.mjs +0 -2
  248. package/dist/chunks/skeleton-XPWWiaac.mjs +0 -2
  249. package/dist/chunks/sortable-CqPFGn8Q.mjs +0 -2
  250. package/dist/chunks/sortable-CqPFGn8Q.mjs.map +0 -1
  251. package/dist/chunks/table-LQIHzPHi.mjs +0 -2
  252. package/dist/chunks/toggle-Co72WXGd.mjs +0 -2
  253. package/dist/chunks/tooltip-qX2HjdJP.mjs +0 -2
  254. package/dist/chunks/tslib.es6-cMGqxriw.mjs +0 -2
  255. package/dist/chunks/utils-BctauAA9.mjs +0 -2
  256. package/dist/chunks/utils-BctauAA9.mjs.map +0 -1
  257. package/dist/chunks/x-BNLl0E-E.mjs +0 -2
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-lvPXnk5F.mjs","sources":["../../node_modules/@radix-ui/react-focus-scope/dist/index.mjs","../../node_modules/@radix-ui/react-focus-guards/dist/index.mjs","../../node_modules/react-remove-scroll-bar/dist/es2015/constants.js","../../node_modules/use-callback-ref/dist/es2015/assignRef.js","../../node_modules/use-callback-ref/dist/es2015/useMergeRef.js","../../node_modules/use-callback-ref/dist/es2015/useRef.js","../../node_modules/use-sidecar/dist/es2015/medium.js","../../node_modules/use-sidecar/dist/es2015/exports.js","../../node_modules/react-remove-scroll/dist/es2015/medium.js","../../node_modules/react-remove-scroll/dist/es2015/UI.js","../../node_modules/react-style-singleton/dist/es2015/singleton.js","../../node_modules/get-nonce/dist/es2015/index.js","../../node_modules/react-style-singleton/dist/es2015/component.js","../../node_modules/react-style-singleton/dist/es2015/hook.js","../../node_modules/react-remove-scroll-bar/dist/es2015/utils.js","../../node_modules/react-remove-scroll-bar/dist/es2015/component.js","../../node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js","../../node_modules/react-remove-scroll/dist/es2015/handleScroll.js","../../node_modules/react-remove-scroll/dist/es2015/SideEffect.js","../../node_modules/react-remove-scroll/dist/es2015/sidecar.js","../../node_modules/react-remove-scroll/dist/es2015/Combination.js","../../node_modules/aria-hidden/dist/es2015/index.js"],"sourcesContent":["\"use client\";\n\n// src/focus-scope.tsx\nimport * as React from \"react\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { jsx } from \"react/jsx-runtime\";\nvar AUTOFOCUS_ON_MOUNT = \"focusScope.autoFocusOnMount\";\nvar AUTOFOCUS_ON_UNMOUNT = \"focusScope.autoFocusOnUnmount\";\nvar EVENT_OPTIONS = { bubbles: false, cancelable: true };\nvar FOCUS_SCOPE_NAME = \"FocusScope\";\nvar FocusScope = React.forwardRef((props, forwardedRef) => {\n const {\n loop = false,\n trapped = false,\n onMountAutoFocus: onMountAutoFocusProp,\n onUnmountAutoFocus: onUnmountAutoFocusProp,\n ...scopeProps\n } = props;\n const [container, setContainer] = React.useState(null);\n const onMountAutoFocus = useCallbackRef(onMountAutoFocusProp);\n const onUnmountAutoFocus = useCallbackRef(onUnmountAutoFocusProp);\n const lastFocusedElementRef = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setContainer(node));\n const focusScope = React.useRef({\n paused: false,\n pause() {\n this.paused = true;\n },\n resume() {\n this.paused = false;\n }\n }).current;\n React.useEffect(() => {\n if (trapped) {\n let handleFocusIn2 = function(event) {\n if (focusScope.paused || !container) return;\n const target = event.target;\n if (container.contains(target)) {\n lastFocusedElementRef.current = target;\n } else {\n focus(lastFocusedElementRef.current, { select: true });\n }\n }, handleFocusOut2 = function(event) {\n if (focusScope.paused || !container) return;\n const relatedTarget = event.relatedTarget;\n if (relatedTarget === null) return;\n if (!container.contains(relatedTarget)) {\n focus(lastFocusedElementRef.current, { select: true });\n }\n }, handleMutations2 = function(mutations) {\n const focusedElement = document.activeElement;\n if (focusedElement !== document.body) return;\n for (const mutation of mutations) {\n if (mutation.removedNodes.length > 0) focus(container);\n }\n };\n var handleFocusIn = handleFocusIn2, handleFocusOut = handleFocusOut2, handleMutations = handleMutations2;\n document.addEventListener(\"focusin\", handleFocusIn2);\n document.addEventListener(\"focusout\", handleFocusOut2);\n const mutationObserver = new MutationObserver(handleMutations2);\n if (container) mutationObserver.observe(container, { childList: true, subtree: true });\n return () => {\n document.removeEventListener(\"focusin\", handleFocusIn2);\n document.removeEventListener(\"focusout\", handleFocusOut2);\n mutationObserver.disconnect();\n };\n }\n }, [trapped, container, focusScope.paused]);\n React.useEffect(() => {\n if (container) {\n focusScopesStack.add(focusScope);\n const previouslyFocusedElement = document.activeElement;\n const hasFocusedCandidate = container.contains(previouslyFocusedElement);\n if (!hasFocusedCandidate) {\n const mountEvent = new CustomEvent(AUTOFOCUS_ON_MOUNT, EVENT_OPTIONS);\n container.addEventListener(AUTOFOCUS_ON_MOUNT, onMountAutoFocus);\n container.dispatchEvent(mountEvent);\n if (!mountEvent.defaultPrevented) {\n focusFirst(removeLinks(getTabbableCandidates(container)), { select: true });\n if (document.activeElement === previouslyFocusedElement) {\n focus(container);\n }\n }\n }\n return () => {\n container.removeEventListener(AUTOFOCUS_ON_MOUNT, onMountAutoFocus);\n setTimeout(() => {\n const unmountEvent = new CustomEvent(AUTOFOCUS_ON_UNMOUNT, EVENT_OPTIONS);\n container.addEventListener(AUTOFOCUS_ON_UNMOUNT, onUnmountAutoFocus);\n container.dispatchEvent(unmountEvent);\n if (!unmountEvent.defaultPrevented) {\n focus(previouslyFocusedElement ?? document.body, { select: true });\n }\n container.removeEventListener(AUTOFOCUS_ON_UNMOUNT, onUnmountAutoFocus);\n focusScopesStack.remove(focusScope);\n }, 0);\n };\n }\n }, [container, onMountAutoFocus, onUnmountAutoFocus, focusScope]);\n const handleKeyDown = React.useCallback(\n (event) => {\n if (!loop && !trapped) return;\n if (focusScope.paused) return;\n const isTabKey = event.key === \"Tab\" && !event.altKey && !event.ctrlKey && !event.metaKey;\n const focusedElement = document.activeElement;\n if (isTabKey && focusedElement) {\n const container2 = event.currentTarget;\n const [first, last] = getTabbableEdges(container2);\n const hasTabbableElementsInside = first && last;\n if (!hasTabbableElementsInside) {\n if (focusedElement === container2) event.preventDefault();\n } else {\n if (!event.shiftKey && focusedElement === last) {\n event.preventDefault();\n if (loop) focus(first, { select: true });\n } else if (event.shiftKey && focusedElement === first) {\n event.preventDefault();\n if (loop) focus(last, { select: true });\n }\n }\n }\n },\n [loop, trapped, focusScope.paused]\n );\n return /* @__PURE__ */ jsx(Primitive.div, { tabIndex: -1, ...scopeProps, ref: composedRefs, onKeyDown: handleKeyDown });\n});\nFocusScope.displayName = FOCUS_SCOPE_NAME;\nfunction focusFirst(candidates, { select = false } = {}) {\n const previouslyFocusedElement = document.activeElement;\n for (const candidate of candidates) {\n focus(candidate, { select });\n if (document.activeElement !== previouslyFocusedElement) return;\n }\n}\nfunction getTabbableEdges(container) {\n const candidates = getTabbableCandidates(container);\n const first = findVisible(candidates, container);\n const last = findVisible(candidates.reverse(), container);\n return [first, last];\n}\nfunction getTabbableCandidates(container) {\n const nodes = [];\n const walker = document.createTreeWalker(container, NodeFilter.SHOW_ELEMENT, {\n acceptNode: (node) => {\n const isHiddenInput = node.tagName === \"INPUT\" && node.type === \"hidden\";\n if (node.disabled || node.hidden || isHiddenInput) return NodeFilter.FILTER_SKIP;\n return node.tabIndex >= 0 ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_SKIP;\n }\n });\n while (walker.nextNode()) nodes.push(walker.currentNode);\n return nodes;\n}\nfunction findVisible(elements, container) {\n for (const element of elements) {\n if (!isHidden(element, { upTo: container })) return element;\n }\n}\nfunction isHidden(node, { upTo }) {\n if (getComputedStyle(node).visibility === \"hidden\") return true;\n while (node) {\n if (upTo !== void 0 && node === upTo) return false;\n if (getComputedStyle(node).display === \"none\") return true;\n node = node.parentElement;\n }\n return false;\n}\nfunction isSelectableInput(element) {\n return element instanceof HTMLInputElement && \"select\" in element;\n}\nfunction focus(element, { select = false } = {}) {\n if (element && element.focus) {\n const previouslyFocusedElement = document.activeElement;\n element.focus({ preventScroll: true });\n if (element !== previouslyFocusedElement && isSelectableInput(element) && select)\n element.select();\n }\n}\nvar focusScopesStack = createFocusScopesStack();\nfunction createFocusScopesStack() {\n let stack = [];\n return {\n add(focusScope) {\n const activeFocusScope = stack[0];\n if (focusScope !== activeFocusScope) {\n activeFocusScope?.pause();\n }\n stack = arrayRemove(stack, focusScope);\n stack.unshift(focusScope);\n },\n remove(focusScope) {\n stack = arrayRemove(stack, focusScope);\n stack[0]?.resume();\n }\n };\n}\nfunction arrayRemove(array, item) {\n const updatedArray = [...array];\n const index = updatedArray.indexOf(item);\n if (index !== -1) {\n updatedArray.splice(index, 1);\n }\n return updatedArray;\n}\nfunction removeLinks(items) {\n return items.filter((item) => item.tagName !== \"A\");\n}\nvar Root = FocusScope;\nexport {\n FocusScope,\n Root\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// packages/react/focus-guards/src/focus-guards.tsx\nimport * as React from \"react\";\nvar count = 0;\nfunction FocusGuards(props) {\n useFocusGuards();\n return props.children;\n}\nfunction useFocusGuards() {\n React.useEffect(() => {\n const edgeGuards = document.querySelectorAll(\"[data-radix-focus-guard]\");\n document.body.insertAdjacentElement(\"afterbegin\", edgeGuards[0] ?? createFocusGuard());\n document.body.insertAdjacentElement(\"beforeend\", edgeGuards[1] ?? createFocusGuard());\n count++;\n return () => {\n if (count === 1) {\n document.querySelectorAll(\"[data-radix-focus-guard]\").forEach((node) => node.remove());\n }\n count--;\n };\n }, []);\n}\nfunction createFocusGuard() {\n const element = document.createElement(\"span\");\n element.setAttribute(\"data-radix-focus-guard\", \"\");\n element.tabIndex = 0;\n element.style.outline = \"none\";\n element.style.opacity = \"0\";\n element.style.position = \"fixed\";\n element.style.pointerEvents = \"none\";\n return element;\n}\nvar Root = FocusGuards;\nexport {\n FocusGuards,\n Root,\n useFocusGuards\n};\n//# sourceMappingURL=index.mjs.map\n","export var zeroRightClassName = 'right-scroll-bar-position';\nexport var fullWidthClassName = 'width-before-scroll-bar';\nexport var noScrollbarsClassName = 'with-scroll-bars-hidden';\n/**\n * Name of a CSS variable containing the amount of \"hidden\" scrollbar\n * ! might be undefined ! use will fallback!\n */\nexport var removedBarSizeVariable = '--removed-body-scroll-bar-size';\n","/**\n * Assigns a value for a given ref, no matter of the ref format\n * @param {RefObject} ref - a callback function or ref object\n * @param value - a new value\n *\n * @see https://github.com/theKashey/use-callback-ref#assignref\n * @example\n * const refObject = useRef();\n * const refFn = (ref) => {....}\n *\n * assignRef(refObject, \"refValue\");\n * assignRef(refFn, \"refValue\");\n */\nexport function assignRef(ref, value) {\n if (typeof ref === 'function') {\n ref(value);\n }\n else if (ref) {\n ref.current = value;\n }\n return ref;\n}\n","import * as React from 'react';\nimport { assignRef } from './assignRef';\nimport { useCallbackRef } from './useRef';\nvar useIsomorphicLayoutEffect = typeof window !== 'undefined' ? React.useLayoutEffect : React.useEffect;\nvar currentValues = new WeakMap();\n/**\n * Merges two or more refs together providing a single interface to set their value\n * @param {RefObject|Ref} refs\n * @returns {MutableRefObject} - a new ref, which translates all changes to {refs}\n *\n * @see {@link mergeRefs} a version without buit-in memoization\n * @see https://github.com/theKashey/use-callback-ref#usemergerefs\n * @example\n * const Component = React.forwardRef((props, ref) => {\n * const ownRef = useRef();\n * const domRef = useMergeRefs([ref, ownRef]); // 👈 merge together\n * return <div ref={domRef}>...</div>\n * }\n */\nexport function useMergeRefs(refs, defaultValue) {\n var callbackRef = useCallbackRef(defaultValue || null, function (newValue) {\n return refs.forEach(function (ref) { return assignRef(ref, newValue); });\n });\n // handle refs changes - added or removed\n useIsomorphicLayoutEffect(function () {\n var oldValue = currentValues.get(callbackRef);\n if (oldValue) {\n var prevRefs_1 = new Set(oldValue);\n var nextRefs_1 = new Set(refs);\n var current_1 = callbackRef.current;\n prevRefs_1.forEach(function (ref) {\n if (!nextRefs_1.has(ref)) {\n assignRef(ref, null);\n }\n });\n nextRefs_1.forEach(function (ref) {\n if (!prevRefs_1.has(ref)) {\n assignRef(ref, current_1);\n }\n });\n }\n currentValues.set(callbackRef, refs);\n }, [refs]);\n return callbackRef;\n}\n","import { useState } from 'react';\n/**\n * creates a MutableRef with ref change callback\n * @param initialValue - initial ref value\n * @param {Function} callback - a callback to run when value changes\n *\n * @example\n * const ref = useCallbackRef(0, (newValue, oldValue) => console.log(oldValue, '->', newValue);\n * ref.current = 1;\n * // prints 0 -> 1\n *\n * @see https://reactjs.org/docs/hooks-reference.html#useref\n * @see https://github.com/theKashey/use-callback-ref#usecallbackref---to-replace-reactuseref\n * @returns {MutableRefObject}\n */\nexport function useCallbackRef(initialValue, callback) {\n var ref = useState(function () { return ({\n // value\n value: initialValue,\n // last callback\n callback: callback,\n // \"memoized\" public interface\n facade: {\n get current() {\n return ref.value;\n },\n set current(value) {\n var last = ref.value;\n if (last !== value) {\n ref.value = value;\n ref.callback(value, last);\n }\n },\n },\n }); })[0];\n // update callback\n ref.callback = callback;\n return ref.facade;\n}\n","import { __assign } from \"tslib\";\nfunction ItoI(a) {\n return a;\n}\nfunction innerCreateMedium(defaults, middleware) {\n if (middleware === void 0) { middleware = ItoI; }\n var buffer = [];\n var assigned = false;\n var medium = {\n read: function () {\n if (assigned) {\n throw new Error('Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.');\n }\n if (buffer.length) {\n return buffer[buffer.length - 1];\n }\n return defaults;\n },\n useMedium: function (data) {\n var item = middleware(data, assigned);\n buffer.push(item);\n return function () {\n buffer = buffer.filter(function (x) { return x !== item; });\n };\n },\n assignSyncMedium: function (cb) {\n assigned = true;\n while (buffer.length) {\n var cbs = buffer;\n buffer = [];\n cbs.forEach(cb);\n }\n buffer = {\n push: function (x) { return cb(x); },\n filter: function () { return buffer; },\n };\n },\n assignMedium: function (cb) {\n assigned = true;\n var pendingQueue = [];\n if (buffer.length) {\n var cbs = buffer;\n buffer = [];\n cbs.forEach(cb);\n pendingQueue = buffer;\n }\n var executeQueue = function () {\n var cbs = pendingQueue;\n pendingQueue = [];\n cbs.forEach(cb);\n };\n var cycle = function () { return Promise.resolve().then(executeQueue); };\n cycle();\n buffer = {\n push: function (x) {\n pendingQueue.push(x);\n cycle();\n },\n filter: function (filter) {\n pendingQueue = pendingQueue.filter(filter);\n return buffer;\n },\n };\n },\n };\n return medium;\n}\nexport function createMedium(defaults, middleware) {\n if (middleware === void 0) { middleware = ItoI; }\n return innerCreateMedium(defaults, middleware);\n}\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function createSidecarMedium(options) {\n if (options === void 0) { options = {}; }\n var medium = innerCreateMedium(null);\n medium.options = __assign({ async: true, ssr: false }, options);\n return medium;\n}\n","import { __assign, __rest } from \"tslib\";\nimport * as React from 'react';\nvar SideCar = function (_a) {\n var sideCar = _a.sideCar, rest = __rest(_a, [\"sideCar\"]);\n if (!sideCar) {\n throw new Error('Sidecar: please provide `sideCar` property to import the right car');\n }\n var Target = sideCar.read();\n if (!Target) {\n throw new Error('Sidecar medium not found');\n }\n return React.createElement(Target, __assign({}, rest));\n};\nSideCar.isSideCarExport = true;\nexport function exportSidecar(medium, exported) {\n medium.useMedium(exported);\n return SideCar;\n}\n","import { createSidecarMedium } from 'use-sidecar';\nexport var effectCar = createSidecarMedium();\n","import { __assign, __rest } from \"tslib\";\nimport * as React from 'react';\nimport { fullWidthClassName, zeroRightClassName } from 'react-remove-scroll-bar/constants';\nimport { useMergeRefs } from 'use-callback-ref';\nimport { effectCar } from './medium';\nvar nothing = function () {\n return;\n};\n/**\n * Removes scrollbar from the page and contain the scroll within the Lock\n */\nvar RemoveScroll = React.forwardRef(function (props, parentRef) {\n var ref = React.useRef(null);\n var _a = React.useState({\n onScrollCapture: nothing,\n onWheelCapture: nothing,\n onTouchMoveCapture: nothing,\n }), callbacks = _a[0], setCallbacks = _a[1];\n var forwardProps = props.forwardProps, children = props.children, className = props.className, removeScrollBar = props.removeScrollBar, enabled = props.enabled, shards = props.shards, sideCar = props.sideCar, noRelative = props.noRelative, noIsolation = props.noIsolation, inert = props.inert, allowPinchZoom = props.allowPinchZoom, _b = props.as, Container = _b === void 0 ? 'div' : _b, gapMode = props.gapMode, rest = __rest(props, [\"forwardProps\", \"children\", \"className\", \"removeScrollBar\", \"enabled\", \"shards\", \"sideCar\", \"noRelative\", \"noIsolation\", \"inert\", \"allowPinchZoom\", \"as\", \"gapMode\"]);\n var SideCar = sideCar;\n var containerRef = useMergeRefs([ref, parentRef]);\n var containerProps = __assign(__assign({}, rest), callbacks);\n return (React.createElement(React.Fragment, null,\n enabled && (React.createElement(SideCar, { sideCar: effectCar, removeScrollBar: removeScrollBar, shards: shards, noRelative: noRelative, noIsolation: noIsolation, inert: inert, setCallbacks: setCallbacks, allowPinchZoom: !!allowPinchZoom, lockRef: ref, gapMode: gapMode })),\n forwardProps ? (React.cloneElement(React.Children.only(children), __assign(__assign({}, containerProps), { ref: containerRef }))) : (React.createElement(Container, __assign({}, containerProps, { className: className, ref: containerRef }), children))));\n});\nRemoveScroll.defaultProps = {\n enabled: true,\n removeScrollBar: true,\n inert: false,\n};\nRemoveScroll.classNames = {\n fullWidth: fullWidthClassName,\n zeroRight: zeroRightClassName,\n};\nexport { RemoveScroll };\n","import { getNonce } from 'get-nonce';\nfunction makeStyleTag() {\n if (!document)\n return null;\n var tag = document.createElement('style');\n tag.type = 'text/css';\n var nonce = getNonce();\n if (nonce) {\n tag.setAttribute('nonce', nonce);\n }\n return tag;\n}\nfunction injectStyles(tag, css) {\n // @ts-ignore\n if (tag.styleSheet) {\n // @ts-ignore\n tag.styleSheet.cssText = css;\n }\n else {\n tag.appendChild(document.createTextNode(css));\n }\n}\nfunction insertStyleTag(tag) {\n var head = document.head || document.getElementsByTagName('head')[0];\n head.appendChild(tag);\n}\nexport var stylesheetSingleton = function () {\n var counter = 0;\n var stylesheet = null;\n return {\n add: function (style) {\n if (counter == 0) {\n if ((stylesheet = makeStyleTag())) {\n injectStyles(stylesheet, style);\n insertStyleTag(stylesheet);\n }\n }\n counter++;\n },\n remove: function () {\n counter--;\n if (!counter && stylesheet) {\n stylesheet.parentNode && stylesheet.parentNode.removeChild(stylesheet);\n stylesheet = null;\n }\n },\n };\n};\n","var currentNonce;\nexport var setNonce = function (nonce) {\n currentNonce = nonce;\n};\nexport var getNonce = function () {\n if (currentNonce) {\n return currentNonce;\n }\n if (typeof __webpack_nonce__ !== 'undefined') {\n return __webpack_nonce__;\n }\n return undefined;\n};\n","import { styleHookSingleton } from './hook';\n/**\n * create a Component to add styles on demand\n * - styles are added when first instance is mounted\n * - styles are removed when the last instance is unmounted\n * - changing styles in runtime does nothing unless dynamic is set. But with multiple components that can lead to the undefined behavior\n */\nexport var styleSingleton = function () {\n var useStyle = styleHookSingleton();\n var Sheet = function (_a) {\n var styles = _a.styles, dynamic = _a.dynamic;\n useStyle(styles, dynamic);\n return null;\n };\n return Sheet;\n};\n","import * as React from 'react';\nimport { stylesheetSingleton } from './singleton';\n/**\n * creates a hook to control style singleton\n * @see {@link styleSingleton} for a safer component version\n * @example\n * ```tsx\n * const useStyle = styleHookSingleton();\n * ///\n * useStyle('body { overflow: hidden}');\n */\nexport var styleHookSingleton = function () {\n var sheet = stylesheetSingleton();\n return function (styles, isDynamic) {\n React.useEffect(function () {\n sheet.add(styles);\n return function () {\n sheet.remove();\n };\n }, [styles && isDynamic]);\n };\n};\n","export var zeroGap = {\n left: 0,\n top: 0,\n right: 0,\n gap: 0,\n};\nvar parse = function (x) { return parseInt(x || '', 10) || 0; };\nvar getOffset = function (gapMode) {\n var cs = window.getComputedStyle(document.body);\n var left = cs[gapMode === 'padding' ? 'paddingLeft' : 'marginLeft'];\n var top = cs[gapMode === 'padding' ? 'paddingTop' : 'marginTop'];\n var right = cs[gapMode === 'padding' ? 'paddingRight' : 'marginRight'];\n return [parse(left), parse(top), parse(right)];\n};\nexport var getGapWidth = function (gapMode) {\n if (gapMode === void 0) { gapMode = 'margin'; }\n if (typeof window === 'undefined') {\n return zeroGap;\n }\n var offsets = getOffset(gapMode);\n var documentWidth = document.documentElement.clientWidth;\n var windowWidth = window.innerWidth;\n return {\n left: offsets[0],\n top: offsets[1],\n right: offsets[2],\n gap: Math.max(0, windowWidth - documentWidth + offsets[2] - offsets[0]),\n };\n};\n","import * as React from 'react';\nimport { styleSingleton } from 'react-style-singleton';\nimport { fullWidthClassName, zeroRightClassName, noScrollbarsClassName, removedBarSizeVariable } from './constants';\nimport { getGapWidth } from './utils';\nvar Style = styleSingleton();\nexport var lockAttribute = 'data-scroll-locked';\n// important tip - once we measure scrollBar width and remove them\n// we could not repeat this operation\n// thus we are using style-singleton - only the first \"yet correct\" style will be applied.\nvar getStyles = function (_a, allowRelative, gapMode, important) {\n var left = _a.left, top = _a.top, right = _a.right, gap = _a.gap;\n if (gapMode === void 0) { gapMode = 'margin'; }\n return \"\\n .\".concat(noScrollbarsClassName, \" {\\n overflow: hidden \").concat(important, \";\\n padding-right: \").concat(gap, \"px \").concat(important, \";\\n }\\n body[\").concat(lockAttribute, \"] {\\n overflow: hidden \").concat(important, \";\\n overscroll-behavior: contain;\\n \").concat([\n allowRelative && \"position: relative \".concat(important, \";\"),\n gapMode === 'margin' &&\n \"\\n padding-left: \".concat(left, \"px;\\n padding-top: \").concat(top, \"px;\\n padding-right: \").concat(right, \"px;\\n margin-left:0;\\n margin-top:0;\\n margin-right: \").concat(gap, \"px \").concat(important, \";\\n \"),\n gapMode === 'padding' && \"padding-right: \".concat(gap, \"px \").concat(important, \";\"),\n ]\n .filter(Boolean)\n .join(''), \"\\n }\\n \\n .\").concat(zeroRightClassName, \" {\\n right: \").concat(gap, \"px \").concat(important, \";\\n }\\n \\n .\").concat(fullWidthClassName, \" {\\n margin-right: \").concat(gap, \"px \").concat(important, \";\\n }\\n \\n .\").concat(zeroRightClassName, \" .\").concat(zeroRightClassName, \" {\\n right: 0 \").concat(important, \";\\n }\\n \\n .\").concat(fullWidthClassName, \" .\").concat(fullWidthClassName, \" {\\n margin-right: 0 \").concat(important, \";\\n }\\n \\n body[\").concat(lockAttribute, \"] {\\n \").concat(removedBarSizeVariable, \": \").concat(gap, \"px;\\n }\\n\");\n};\nvar getCurrentUseCounter = function () {\n var counter = parseInt(document.body.getAttribute(lockAttribute) || '0', 10);\n return isFinite(counter) ? counter : 0;\n};\nexport var useLockAttribute = function () {\n React.useEffect(function () {\n document.body.setAttribute(lockAttribute, (getCurrentUseCounter() + 1).toString());\n return function () {\n var newCounter = getCurrentUseCounter() - 1;\n if (newCounter <= 0) {\n document.body.removeAttribute(lockAttribute);\n }\n else {\n document.body.setAttribute(lockAttribute, newCounter.toString());\n }\n };\n }, []);\n};\n/**\n * Removes page scrollbar and blocks page scroll when mounted\n */\nexport var RemoveScrollBar = function (_a) {\n var noRelative = _a.noRelative, noImportant = _a.noImportant, _b = _a.gapMode, gapMode = _b === void 0 ? 'margin' : _b;\n useLockAttribute();\n /*\n gap will be measured on every component mount\n however it will be used only by the \"first\" invocation\n due to singleton nature of <Style\n */\n var gap = React.useMemo(function () { return getGapWidth(gapMode); }, [gapMode]);\n return React.createElement(Style, { styles: getStyles(gap, !noRelative, gapMode, !noImportant ? '!important' : '') });\n};\n","var passiveSupported = false;\nif (typeof window !== 'undefined') {\n try {\n var options = Object.defineProperty({}, 'passive', {\n get: function () {\n passiveSupported = true;\n return true;\n },\n });\n // @ts-ignore\n window.addEventListener('test', options, options);\n // @ts-ignore\n window.removeEventListener('test', options, options);\n }\n catch (err) {\n passiveSupported = false;\n }\n}\nexport var nonPassive = passiveSupported ? { passive: false } : false;\n","var alwaysContainsScroll = function (node) {\n // textarea will always _contain_ scroll inside self. It only can be hidden\n return node.tagName === 'TEXTAREA';\n};\nvar elementCanBeScrolled = function (node, overflow) {\n if (!(node instanceof Element)) {\n return false;\n }\n var styles = window.getComputedStyle(node);\n return (\n // not-not-scrollable\n styles[overflow] !== 'hidden' &&\n // contains scroll inside self\n !(styles.overflowY === styles.overflowX && !alwaysContainsScroll(node) && styles[overflow] === 'visible'));\n};\nvar elementCouldBeVScrolled = function (node) { return elementCanBeScrolled(node, 'overflowY'); };\nvar elementCouldBeHScrolled = function (node) { return elementCanBeScrolled(node, 'overflowX'); };\nexport var locationCouldBeScrolled = function (axis, node) {\n var ownerDocument = node.ownerDocument;\n var current = node;\n do {\n // Skip over shadow root\n if (typeof ShadowRoot !== 'undefined' && current instanceof ShadowRoot) {\n current = current.host;\n }\n var isScrollable = elementCouldBeScrolled(axis, current);\n if (isScrollable) {\n var _a = getScrollVariables(axis, current), scrollHeight = _a[1], clientHeight = _a[2];\n if (scrollHeight > clientHeight) {\n return true;\n }\n }\n current = current.parentNode;\n } while (current && current !== ownerDocument.body);\n return false;\n};\nvar getVScrollVariables = function (_a) {\n var scrollTop = _a.scrollTop, scrollHeight = _a.scrollHeight, clientHeight = _a.clientHeight;\n return [\n scrollTop,\n scrollHeight,\n clientHeight,\n ];\n};\nvar getHScrollVariables = function (_a) {\n var scrollLeft = _a.scrollLeft, scrollWidth = _a.scrollWidth, clientWidth = _a.clientWidth;\n return [\n scrollLeft,\n scrollWidth,\n clientWidth,\n ];\n};\nvar elementCouldBeScrolled = function (axis, node) {\n return axis === 'v' ? elementCouldBeVScrolled(node) : elementCouldBeHScrolled(node);\n};\nvar getScrollVariables = function (axis, node) {\n return axis === 'v' ? getVScrollVariables(node) : getHScrollVariables(node);\n};\nvar getDirectionFactor = function (axis, direction) {\n /**\n * If the element's direction is rtl (right-to-left), then scrollLeft is 0 when the scrollbar is at its rightmost position,\n * and then increasingly negative as you scroll towards the end of the content.\n * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollLeft\n */\n return axis === 'h' && direction === 'rtl' ? -1 : 1;\n};\nexport var handleScroll = function (axis, endTarget, event, sourceDelta, noOverscroll) {\n var directionFactor = getDirectionFactor(axis, window.getComputedStyle(endTarget).direction);\n var delta = directionFactor * sourceDelta;\n // find scrollable target\n var target = event.target;\n var targetInLock = endTarget.contains(target);\n var shouldCancelScroll = false;\n var isDeltaPositive = delta > 0;\n var availableScroll = 0;\n var availableScrollTop = 0;\n do {\n if (!target) {\n break;\n }\n var _a = getScrollVariables(axis, target), position = _a[0], scroll_1 = _a[1], capacity = _a[2];\n var elementScroll = scroll_1 - capacity - directionFactor * position;\n if (position || elementScroll) {\n if (elementCouldBeScrolled(axis, target)) {\n availableScroll += elementScroll;\n availableScrollTop += position;\n }\n }\n var parent_1 = target.parentNode;\n // we will \"bubble\" from ShadowDom in case we are, or just to the parent in normal case\n // this is the same logic used in focus-lock\n target = (parent_1 && parent_1.nodeType === Node.DOCUMENT_FRAGMENT_NODE ? parent_1.host : parent_1);\n } while (\n // portaled content\n (!targetInLock && target !== document.body) ||\n // self content\n (targetInLock && (endTarget.contains(target) || endTarget === target)));\n // handle epsilon around 0 (non standard zoom levels)\n if (isDeltaPositive &&\n ((noOverscroll && Math.abs(availableScroll) < 1) || (!noOverscroll && delta > availableScroll))) {\n shouldCancelScroll = true;\n }\n else if (!isDeltaPositive &&\n ((noOverscroll && Math.abs(availableScrollTop) < 1) || (!noOverscroll && -delta > availableScrollTop))) {\n shouldCancelScroll = true;\n }\n return shouldCancelScroll;\n};\n","import { __spreadArray } from \"tslib\";\nimport * as React from 'react';\nimport { RemoveScrollBar } from 'react-remove-scroll-bar';\nimport { styleSingleton } from 'react-style-singleton';\nimport { nonPassive } from './aggresiveCapture';\nimport { handleScroll, locationCouldBeScrolled } from './handleScroll';\nexport var getTouchXY = function (event) {\n return 'changedTouches' in event ? [event.changedTouches[0].clientX, event.changedTouches[0].clientY] : [0, 0];\n};\nexport var getDeltaXY = function (event) { return [event.deltaX, event.deltaY]; };\nvar extractRef = function (ref) {\n return ref && 'current' in ref ? ref.current : ref;\n};\nvar deltaCompare = function (x, y) { return x[0] === y[0] && x[1] === y[1]; };\nvar generateStyle = function (id) { return \"\\n .block-interactivity-\".concat(id, \" {pointer-events: none;}\\n .allow-interactivity-\").concat(id, \" {pointer-events: all;}\\n\"); };\nvar idCounter = 0;\nvar lockStack = [];\nexport function RemoveScrollSideCar(props) {\n var shouldPreventQueue = React.useRef([]);\n var touchStartRef = React.useRef([0, 0]);\n var activeAxis = React.useRef();\n var id = React.useState(idCounter++)[0];\n var Style = React.useState(styleSingleton)[0];\n var lastProps = React.useRef(props);\n React.useEffect(function () {\n lastProps.current = props;\n }, [props]);\n React.useEffect(function () {\n if (props.inert) {\n document.body.classList.add(\"block-interactivity-\".concat(id));\n var allow_1 = __spreadArray([props.lockRef.current], (props.shards || []).map(extractRef), true).filter(Boolean);\n allow_1.forEach(function (el) { return el.classList.add(\"allow-interactivity-\".concat(id)); });\n return function () {\n document.body.classList.remove(\"block-interactivity-\".concat(id));\n allow_1.forEach(function (el) { return el.classList.remove(\"allow-interactivity-\".concat(id)); });\n };\n }\n return;\n }, [props.inert, props.lockRef.current, props.shards]);\n var shouldCancelEvent = React.useCallback(function (event, parent) {\n if (('touches' in event && event.touches.length === 2) || (event.type === 'wheel' && event.ctrlKey)) {\n return !lastProps.current.allowPinchZoom;\n }\n var touch = getTouchXY(event);\n var touchStart = touchStartRef.current;\n var deltaX = 'deltaX' in event ? event.deltaX : touchStart[0] - touch[0];\n var deltaY = 'deltaY' in event ? event.deltaY : touchStart[1] - touch[1];\n var currentAxis;\n var target = event.target;\n var moveDirection = Math.abs(deltaX) > Math.abs(deltaY) ? 'h' : 'v';\n // allow horizontal touch move on Range inputs. They will not cause any scroll\n if ('touches' in event && moveDirection === 'h' && target.type === 'range') {\n return false;\n }\n var canBeScrolledInMainDirection = locationCouldBeScrolled(moveDirection, target);\n if (!canBeScrolledInMainDirection) {\n return true;\n }\n if (canBeScrolledInMainDirection) {\n currentAxis = moveDirection;\n }\n else {\n currentAxis = moveDirection === 'v' ? 'h' : 'v';\n canBeScrolledInMainDirection = locationCouldBeScrolled(moveDirection, target);\n // other axis might be not scrollable\n }\n if (!canBeScrolledInMainDirection) {\n return false;\n }\n if (!activeAxis.current && 'changedTouches' in event && (deltaX || deltaY)) {\n activeAxis.current = currentAxis;\n }\n if (!currentAxis) {\n return true;\n }\n var cancelingAxis = activeAxis.current || currentAxis;\n return handleScroll(cancelingAxis, parent, event, cancelingAxis === 'h' ? deltaX : deltaY, true);\n }, []);\n var shouldPrevent = React.useCallback(function (_event) {\n var event = _event;\n if (!lockStack.length || lockStack[lockStack.length - 1] !== Style) {\n // not the last active\n return;\n }\n var delta = 'deltaY' in event ? getDeltaXY(event) : getTouchXY(event);\n var sourceEvent = shouldPreventQueue.current.filter(function (e) { return e.name === event.type && (e.target === event.target || event.target === e.shadowParent) && deltaCompare(e.delta, delta); })[0];\n // self event, and should be canceled\n if (sourceEvent && sourceEvent.should) {\n if (event.cancelable) {\n event.preventDefault();\n }\n return;\n }\n // outside or shard event\n if (!sourceEvent) {\n var shardNodes = (lastProps.current.shards || [])\n .map(extractRef)\n .filter(Boolean)\n .filter(function (node) { return node.contains(event.target); });\n var shouldStop = shardNodes.length > 0 ? shouldCancelEvent(event, shardNodes[0]) : !lastProps.current.noIsolation;\n if (shouldStop) {\n if (event.cancelable) {\n event.preventDefault();\n }\n }\n }\n }, []);\n var shouldCancel = React.useCallback(function (name, delta, target, should) {\n var event = { name: name, delta: delta, target: target, should: should, shadowParent: getOutermostShadowParent(target) };\n shouldPreventQueue.current.push(event);\n setTimeout(function () {\n shouldPreventQueue.current = shouldPreventQueue.current.filter(function (e) { return e !== event; });\n }, 1);\n }, []);\n var scrollTouchStart = React.useCallback(function (event) {\n touchStartRef.current = getTouchXY(event);\n activeAxis.current = undefined;\n }, []);\n var scrollWheel = React.useCallback(function (event) {\n shouldCancel(event.type, getDeltaXY(event), event.target, shouldCancelEvent(event, props.lockRef.current));\n }, []);\n var scrollTouchMove = React.useCallback(function (event) {\n shouldCancel(event.type, getTouchXY(event), event.target, shouldCancelEvent(event, props.lockRef.current));\n }, []);\n React.useEffect(function () {\n lockStack.push(Style);\n props.setCallbacks({\n onScrollCapture: scrollWheel,\n onWheelCapture: scrollWheel,\n onTouchMoveCapture: scrollTouchMove,\n });\n document.addEventListener('wheel', shouldPrevent, nonPassive);\n document.addEventListener('touchmove', shouldPrevent, nonPassive);\n document.addEventListener('touchstart', scrollTouchStart, nonPassive);\n return function () {\n lockStack = lockStack.filter(function (inst) { return inst !== Style; });\n document.removeEventListener('wheel', shouldPrevent, nonPassive);\n document.removeEventListener('touchmove', shouldPrevent, nonPassive);\n document.removeEventListener('touchstart', scrollTouchStart, nonPassive);\n };\n }, []);\n var removeScrollBar = props.removeScrollBar, inert = props.inert;\n return (React.createElement(React.Fragment, null,\n inert ? React.createElement(Style, { styles: generateStyle(id) }) : null,\n removeScrollBar ? React.createElement(RemoveScrollBar, { noRelative: props.noRelative, gapMode: props.gapMode }) : null));\n}\nfunction getOutermostShadowParent(node) {\n var shadowParent = null;\n while (node !== null) {\n if (node instanceof ShadowRoot) {\n shadowParent = node.host;\n node = node.host;\n }\n node = node.parentNode;\n }\n return shadowParent;\n}\n","import { exportSidecar } from 'use-sidecar';\nimport { RemoveScrollSideCar } from './SideEffect';\nimport { effectCar } from './medium';\nexport default exportSidecar(effectCar, RemoveScrollSideCar);\n","import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { RemoveScroll } from './UI';\nimport SideCar from './sidecar';\nvar ReactRemoveScroll = React.forwardRef(function (props, ref) { return (React.createElement(RemoveScroll, __assign({}, props, { ref: ref, sideCar: SideCar }))); });\nReactRemoveScroll.classNames = RemoveScroll.classNames;\nexport default ReactRemoveScroll;\n","var getDefaultParent = function (originalTarget) {\n if (typeof document === 'undefined') {\n return null;\n }\n var sampleTarget = Array.isArray(originalTarget) ? originalTarget[0] : originalTarget;\n return sampleTarget.ownerDocument.body;\n};\nvar counterMap = new WeakMap();\nvar uncontrolledNodes = new WeakMap();\nvar markerMap = {};\nvar lockCount = 0;\nvar unwrapHost = function (node) {\n return node && (node.host || unwrapHost(node.parentNode));\n};\nvar correctTargets = function (parent, targets) {\n return targets\n .map(function (target) {\n if (parent.contains(target)) {\n return target;\n }\n var correctedTarget = unwrapHost(target);\n if (correctedTarget && parent.contains(correctedTarget)) {\n return correctedTarget;\n }\n console.error('aria-hidden', target, 'in not contained inside', parent, '. Doing nothing');\n return null;\n })\n .filter(function (x) { return Boolean(x); });\n};\n/**\n * Marks everything except given node(or nodes) as aria-hidden\n * @param {Element | Element[]} originalTarget - elements to keep on the page\n * @param [parentNode] - top element, defaults to document.body\n * @param {String} [markerName] - a special attribute to mark every node\n * @param {String} [controlAttribute] - html Attribute to control\n * @return {Undo} undo command\n */\nvar applyAttributeToOthers = function (originalTarget, parentNode, markerName, controlAttribute) {\n var targets = correctTargets(parentNode, Array.isArray(originalTarget) ? originalTarget : [originalTarget]);\n if (!markerMap[markerName]) {\n markerMap[markerName] = new WeakMap();\n }\n var markerCounter = markerMap[markerName];\n var hiddenNodes = [];\n var elementsToKeep = new Set();\n var elementsToStop = new Set(targets);\n var keep = function (el) {\n if (!el || elementsToKeep.has(el)) {\n return;\n }\n elementsToKeep.add(el);\n keep(el.parentNode);\n };\n targets.forEach(keep);\n var deep = function (parent) {\n if (!parent || elementsToStop.has(parent)) {\n return;\n }\n Array.prototype.forEach.call(parent.children, function (node) {\n if (elementsToKeep.has(node)) {\n deep(node);\n }\n else {\n try {\n var attr = node.getAttribute(controlAttribute);\n var alreadyHidden = attr !== null && attr !== 'false';\n var counterValue = (counterMap.get(node) || 0) + 1;\n var markerValue = (markerCounter.get(node) || 0) + 1;\n counterMap.set(node, counterValue);\n markerCounter.set(node, markerValue);\n hiddenNodes.push(node);\n if (counterValue === 1 && alreadyHidden) {\n uncontrolledNodes.set(node, true);\n }\n if (markerValue === 1) {\n node.setAttribute(markerName, 'true');\n }\n if (!alreadyHidden) {\n node.setAttribute(controlAttribute, 'true');\n }\n }\n catch (e) {\n console.error('aria-hidden: cannot operate on ', node, e);\n }\n }\n });\n };\n deep(parentNode);\n elementsToKeep.clear();\n lockCount++;\n return function () {\n hiddenNodes.forEach(function (node) {\n var counterValue = counterMap.get(node) - 1;\n var markerValue = markerCounter.get(node) - 1;\n counterMap.set(node, counterValue);\n markerCounter.set(node, markerValue);\n if (!counterValue) {\n if (!uncontrolledNodes.has(node)) {\n node.removeAttribute(controlAttribute);\n }\n uncontrolledNodes.delete(node);\n }\n if (!markerValue) {\n node.removeAttribute(markerName);\n }\n });\n lockCount--;\n if (!lockCount) {\n // clear\n counterMap = new WeakMap();\n counterMap = new WeakMap();\n uncontrolledNodes = new WeakMap();\n markerMap = {};\n }\n };\n};\n/**\n * Marks everything except given node(or nodes) as aria-hidden\n * @param {Element | Element[]} originalTarget - elements to keep on the page\n * @param [parentNode] - top element, defaults to document.body\n * @param {String} [markerName] - a special attribute to mark every node\n * @return {Undo} undo command\n */\nexport var hideOthers = function (originalTarget, parentNode, markerName) {\n if (markerName === void 0) { markerName = 'data-aria-hidden'; }\n var targets = Array.from(Array.isArray(originalTarget) ? originalTarget : [originalTarget]);\n var activeParentNode = parentNode || getDefaultParent(originalTarget);\n if (!activeParentNode) {\n return function () { return null; };\n }\n // we should not hide aria-live elements - https://github.com/theKashey/aria-hidden/issues/10\n // and script elements, as they have no impact on accessibility.\n targets.push.apply(targets, Array.from(activeParentNode.querySelectorAll('[aria-live], script')));\n return applyAttributeToOthers(targets, activeParentNode, markerName, 'aria-hidden');\n};\n/**\n * Marks everything except given node(or nodes) as inert\n * @param {Element | Element[]} originalTarget - elements to keep on the page\n * @param [parentNode] - top element, defaults to document.body\n * @param {String} [markerName] - a special attribute to mark every node\n * @return {Undo} undo command\n */\nexport var inertOthers = function (originalTarget, parentNode, markerName) {\n if (markerName === void 0) { markerName = 'data-inert-ed'; }\n var activeParentNode = parentNode || getDefaultParent(originalTarget);\n if (!activeParentNode) {\n return function () { return null; };\n }\n return applyAttributeToOthers(originalTarget, activeParentNode, markerName, 'inert');\n};\n/**\n * @returns if current browser supports inert\n */\nexport var supportsInert = function () {\n return typeof HTMLElement !== 'undefined' && HTMLElement.prototype.hasOwnProperty('inert');\n};\n/**\n * Automatic function to \"suppress\" DOM elements - _hide_ or _inert_ in the best possible way\n * @param {Element | Element[]} originalTarget - elements to keep on the page\n * @param [parentNode] - top element, defaults to document.body\n * @param {String} [markerName] - a special attribute to mark every node\n * @return {Undo} undo command\n */\nexport var suppressOthers = function (originalTarget, parentNode, markerName) {\n if (markerName === void 0) { markerName = 'data-suppressed'; }\n return (supportsInert() ? inertOthers : hideOthers)(originalTarget, parentNode, markerName);\n};\n"],"names":["AUTOFOCUS_ON_MOUNT","AUTOFOCUS_ON_UNMOUNT","EVENT_OPTIONS","bubbles","cancelable","FocusScope","React","forwardRef","props","forwardedRef","loop","trapped","onMountAutoFocus","onMountAutoFocusProp","onUnmountAutoFocus","onUnmountAutoFocusProp","scopeProps","container","setContainer","useState","useCallbackRef","lastFocusedElementRef","useRef","composedRefs","useComposedRefs","node","focusScope","paused","pause","this","resume","current","useEffect","handleFocusIn","event","target","contains","focus","select","handleFocusOut","relatedTarget","handleMutations","mutations","document","activeElement","body","mutation","removedNodes","length","addEventListener","mutationObserver","MutationObserver","observe","childList","subtree","removeEventListener","disconnect","focusScopesStack","add","previouslyFocusedElement","mountEvent","CustomEvent","dispatchEvent","defaultPrevented","candidates","candidate","focusFirst","items","getTabbableCandidates","filter","item","tagName","setTimeout","unmountEvent","remove","handleKeyDown","useCallback","isTabKey","key","altKey","ctrlKey","metaKey","focusedElement","currentTarget","first","last","findVisible","reverse","getTabbableEdges","shiftKey","preventDefault","jsx","Primitive","div","tabIndex","ref","onKeyDown","nodes","walker","createTreeWalker","NodeFilter","SHOW_ELEMENT","acceptNode","isHiddenInput","type","disabled","hidden","FILTER_SKIP","FILTER_ACCEPT","nextNode","push","currentNode","elements","element","isHidden","upTo","getComputedStyle","visibility","display","parentElement","preventScroll","HTMLInputElement","isSelectableInput","displayName","stack","activeFocusScope","arrayRemove","unshift","createFocusScopesStack","array","updatedArray","index","indexOf","splice","count","useFocusGuards","edgeGuards","querySelectorAll","insertAdjacentElement","createFocusGuard","forEach","createElement","setAttribute","style","outline","opacity","position","pointerEvents","zeroRightClassName","fullWidthClassName","assignRef","value","useIsomorphicLayoutEffect","window","useLayoutEffect","currentValues","WeakMap","useMergeRefs","refs","defaultValue","initialValue","callback","callbackRef","newValue","facade","oldValue","get","prevRefs_1","Set","nextRefs_1","current_1","has","set","ItoI","a","SideCar","_a","sideCar","rest","__rest","Error","Target","read","__assign","isSideCarExport","effectCar","options","medium","defaults","middleware","buffer","assigned","useMedium","data","x","assignSyncMedium","cb","cbs","assignMedium","pendingQueue","executeQueue","cycle","Promise","resolve","then","innerCreateMedium","async","ssr","createSidecarMedium","nothing","RemoveScroll","parentRef","onScrollCapture","onWheelCapture","onTouchMoveCapture","callbacks","setCallbacks","forwardProps","children","className","removeScrollBar","enabled","shards","noRelative","noIsolation","inert","allowPinchZoom","_b","as","Container","gapMode","containerRef","containerProps","Fragment","lockRef","cloneElement","Children","only","defaultProps","classNames","fullWidth","zeroRight","makeStyleTag","tag","nonce","__webpack_nonce__","getNonce","stylesheetSingleton","counter","stylesheet","css","styleSheet","cssText","appendChild","createTextNode","head","getElementsByTagName","insertStyleTag","parentNode","removeChild","styleSingleton","sheet","useStyle","styles","isDynamic","dynamic","zeroGap","left","top","right","gap","parse","parseInt","getGapWidth","offsets","cs","getOffset","documentWidth","documentElement","clientWidth","windowWidth","innerWidth","Math","max","Style","lockAttribute","getStyles","allowRelative","important","concat","Boolean","join","getCurrentUseCounter","getAttribute","isFinite","RemoveScrollBar","noImportant","toString","newCounter","removeAttribute","useMemo","passiveSupported","Object","defineProperty","err","nonPassive","passive","elementCanBeScrolled","overflow","Element","overflowY","overflowX","alwaysContainsScroll","locationCouldBeScrolled","axis","ownerDocument","ShadowRoot","host","elementCouldBeScrolled","getScrollVariables","elementCouldBeVScrolled","elementCouldBeHScrolled","scrollTop","scrollHeight","clientHeight","scrollLeft","scrollWidth","getHScrollVariables","getTouchXY","changedTouches","clientX","clientY","getDeltaXY","deltaX","deltaY","extractRef","generateStyle","id","idCounter","lockStack","getOutermostShadowParent","shadowParent","exported","shouldPreventQueue","touchStartRef","activeAxis","lastProps","classList","allow_1","__spreadArray","map","el","shouldCancelEvent","parent","touches","currentAxis","touch","touchStart","moveDirection","abs","canBeScrolledInMainDirection","cancelingAxis","endTarget","sourceDelta","directionFactor","direction","getDirectionFactor","delta","targetInLock","shouldCancelScroll","isDeltaPositive","availableScroll","availableScrollTop","elementScroll","parent_1","nodeType","Node","DOCUMENT_FRAGMENT_NODE","handleScroll","shouldPrevent","_event","sourceEvent","e","name","y","should","shardNodes","shouldCancel","scrollTouchStart","undefined","scrollWheel","scrollTouchMove","inst","ReactRemoveScroll","counterMap","uncontrolledNodes","markerMap","lockCount","unwrapHost","applyAttributeToOthers","originalTarget","markerName","controlAttribute","targets","correctedTarget","correctTargets","Array","isArray","markerCounter","hiddenNodes","elementsToKeep","elementsToStop","keep","deep","prototype","call","attr","alreadyHidden","counterValue","markerValue","clear","delete","hideOthers","from","activeParentNode","getDefaultParent","apply"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21]}
@@ -1,2 +0,0 @@
1
- import*as e from"react";import{u as r}from"./index-CLtWFQL5.mjs";function t(t){const[i,o]=e.useState(void 0);return r(()=>{if(t){o({width:t.offsetWidth,height:t.offsetHeight});const e=new ResizeObserver(e=>{if(!Array.isArray(e))return;if(!e.length)return;const r=e[0];let i,s;if("borderBoxSize"in r){const e=r.borderBoxSize,t=Array.isArray(e)?e[0]:e;i=t.inlineSize,s=t.blockSize}else i=t.offsetWidth,s=t.offsetHeight;o({width:i,height:s})});return e.observe(t,{box:"border-box"}),()=>e.unobserve(t)}o(void 0)},[t]),i}export{t as u};
2
- //# sourceMappingURL=index-vmPXTidH.mjs.map
@@ -1,2 +0,0 @@
1
- import*as r from"react";import*as i from"react-dom";import{createSlot as t}from"@radix-ui/react-slot";import{jsx as o}from"react/jsx-runtime";var e=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"].reduce((i,e)=>{const a=t(`Primitive.${e}`),n=r.forwardRef((r,i)=>{const{asChild:t,...n}=r,m=t?a:e;return"undefined"!=typeof window&&(window[Symbol.for("radix-ui")]=!0),o(m,{...n,ref:i})});return n.displayName=`Primitive.${e}`,{...i,[e]:n}},{});function a(r,t){r&&i.flushSync(()=>r.dispatchEvent(t))}export{e as P,a as d};
2
- //# sourceMappingURL=index-w9bxia3O.mjs.map
@@ -1,2 +0,0 @@
1
- import*as e from"react";import{c as t}from"./index-CdJCOoFA.mjs";import{P as n,d as r}from"./index-w9bxia3O.mjs";import{u as s}from"./index-COvW87ew.mjs";import{u as o}from"./index-CXszXOf_.mjs";import{jsx as i}from"react/jsx-runtime";import a from"react-dom";import{u}from"./index-CLtWFQL5.mjs";var c,d="dismissableLayer.update",l="dismissableLayer.pointerDownOutside",f="dismissableLayer.focusOutside",m=e.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),v=e.forwardRef((r,a)=>{const{disableOutsidePointerEvents:u=!1,onEscapeKeyDown:v,onPointerDownOutside:p,onFocusOutside:b,onInteractOutside:w,onDismiss:h,...D}=r,P=e.useContext(m),[L,C]=e.useState(null),O=L?.ownerDocument??globalThis?.document,[,g]=e.useState({}),x=s(a,e=>C(e)),R=Array.from(P.layers),[T]=[...P.layersWithOutsidePointerEventsDisabled].slice(-1),k=R.indexOf(T),W=L?R.indexOf(L):-1,j=P.layersWithOutsidePointerEventsDisabled.size>0,B=W>=k,S=function(t,n=globalThis?.document){const r=o(t),s=e.useRef(!1),i=e.useRef(()=>{});return e.useEffect(()=>{const e=e=>{if(e.target&&!s.current){let t=function(){y(l,r,s,{discrete:!0})};const s={originalEvent:e};"touch"===e.pointerType?(n.removeEventListener("click",i.current),i.current=t,n.addEventListener("click",i.current,{once:!0})):t()}else n.removeEventListener("click",i.current);s.current=!1},t=window.setTimeout(()=>{n.addEventListener("pointerdown",e)},0);return()=>{window.clearTimeout(t),n.removeEventListener("pointerdown",e),n.removeEventListener("click",i.current)}},[n,r]),{onPointerDownCapture:()=>s.current=!0}}(e=>{const t=e.target,n=[...P.branches].some(e=>e.contains(t));B&&!n&&(p?.(e),w?.(e),e.defaultPrevented||h?.())},O),F=function(t,n=globalThis?.document){const r=o(t),s=e.useRef(!1);return e.useEffect(()=>{const e=e=>{if(e.target&&!s.current){y(f,r,{originalEvent:e},{discrete:!1})}};return n.addEventListener("focusin",e),()=>n.removeEventListener("focusin",e)},[n,r]),{onFocusCapture:()=>s.current=!0,onBlurCapture:()=>s.current=!1}}(e=>{const t=e.target;[...P.branches].some(e=>e.contains(t))||(b?.(e),w?.(e),e.defaultPrevented||h?.())},O);return function(t,n=globalThis?.document){const r=o(t);e.useEffect(()=>{const e=e=>{"Escape"===e.key&&r(e)};return n.addEventListener("keydown",e,{capture:!0}),()=>n.removeEventListener("keydown",e,{capture:!0})},[r,n])}(e=>{W===P.layers.size-1&&(v?.(e),!e.defaultPrevented&&h&&(e.preventDefault(),h()))},O),e.useEffect(()=>{if(L)return u&&(0===P.layersWithOutsidePointerEventsDisabled.size&&(c=O.body.style.pointerEvents,O.body.style.pointerEvents="none"),P.layersWithOutsidePointerEventsDisabled.add(L)),P.layers.add(L),E(),()=>{u&&1===P.layersWithOutsidePointerEventsDisabled.size&&(O.body.style.pointerEvents=c)}},[L,O,u,P]),e.useEffect(()=>()=>{L&&(P.layers.delete(L),P.layersWithOutsidePointerEventsDisabled.delete(L),E())},[L,P]),e.useEffect(()=>{const e=()=>g({});return document.addEventListener(d,e),()=>document.removeEventListener(d,e)},[]),i(n.div,{...D,ref:x,style:{pointerEvents:j?B?"auto":"none":void 0,...r.style},onFocusCapture:t(r.onFocusCapture,F.onFocusCapture),onBlurCapture:t(r.onBlurCapture,F.onBlurCapture),onPointerDownCapture:t(r.onPointerDownCapture,S.onPointerDownCapture)})});v.displayName="DismissableLayer";var p=e.forwardRef((t,r)=>{const o=e.useContext(m),a=e.useRef(null),u=s(r,a);return e.useEffect(()=>{const e=a.current;if(e)return o.branches.add(e),()=>{o.branches.delete(e)}},[o.branches]),i(n.div,{...t,ref:u})});function E(){const e=new CustomEvent(d);document.dispatchEvent(e)}function y(e,t,n,{discrete:s}){const o=n.originalEvent.target,i=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&o.addEventListener(e,t,{once:!0}),s?r(o,i):o.dispatchEvent(i)}p.displayName="DismissableLayerBranch";var b=v,w=p,h=e.forwardRef((t,r)=>{const{container:s,...o}=t,[c,d]=e.useState(!1);u(()=>d(!0),[]);const l=s||c&&globalThis?.document?.body;return l?a.createPortal(i(n.div,{...o,ref:r}),l):null});h.displayName="Portal";export{w as B,v as D,h as P,b as R};
2
- //# sourceMappingURL=index-xew3kygQ.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index-xew3kygQ.mjs","sources":["../../node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs","../../node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs","../../node_modules/@radix-ui/react-portal/dist/index.mjs"],"sourcesContent":["\"use client\";\n\n// src/dismissable-layer.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { Primitive, dispatchDiscreteCustomEvent } from \"@radix-ui/react-primitive\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useEscapeKeydown } from \"@radix-ui/react-use-escape-keydown\";\nimport { jsx } from \"react/jsx-runtime\";\nvar DISMISSABLE_LAYER_NAME = \"DismissableLayer\";\nvar CONTEXT_UPDATE = \"dismissableLayer.update\";\nvar POINTER_DOWN_OUTSIDE = \"dismissableLayer.pointerDownOutside\";\nvar FOCUS_OUTSIDE = \"dismissableLayer.focusOutside\";\nvar originalBodyPointerEvents;\nvar DismissableLayerContext = React.createContext({\n layers: /* @__PURE__ */ new Set(),\n layersWithOutsidePointerEventsDisabled: /* @__PURE__ */ new Set(),\n branches: /* @__PURE__ */ new Set()\n});\nvar DismissableLayer = React.forwardRef(\n (props, forwardedRef) => {\n const {\n disableOutsidePointerEvents = false,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside,\n onInteractOutside,\n onDismiss,\n ...layerProps\n } = props;\n const context = React.useContext(DismissableLayerContext);\n const [node, setNode] = React.useState(null);\n const ownerDocument = node?.ownerDocument ?? globalThis?.document;\n const [, force] = React.useState({});\n const composedRefs = useComposedRefs(forwardedRef, (node2) => setNode(node2));\n const layers = Array.from(context.layers);\n const [highestLayerWithOutsidePointerEventsDisabled] = [...context.layersWithOutsidePointerEventsDisabled].slice(-1);\n const highestLayerWithOutsidePointerEventsDisabledIndex = layers.indexOf(highestLayerWithOutsidePointerEventsDisabled);\n const index = node ? layers.indexOf(node) : -1;\n const isBodyPointerEventsDisabled = context.layersWithOutsidePointerEventsDisabled.size > 0;\n const isPointerEventsEnabled = index >= highestLayerWithOutsidePointerEventsDisabledIndex;\n const pointerDownOutside = usePointerDownOutside((event) => {\n const target = event.target;\n const isPointerDownOnBranch = [...context.branches].some((branch) => branch.contains(target));\n if (!isPointerEventsEnabled || isPointerDownOnBranch) return;\n onPointerDownOutside?.(event);\n onInteractOutside?.(event);\n if (!event.defaultPrevented) onDismiss?.();\n }, ownerDocument);\n const focusOutside = useFocusOutside((event) => {\n const target = event.target;\n const isFocusInBranch = [...context.branches].some((branch) => branch.contains(target));\n if (isFocusInBranch) return;\n onFocusOutside?.(event);\n onInteractOutside?.(event);\n if (!event.defaultPrevented) onDismiss?.();\n }, ownerDocument);\n useEscapeKeydown((event) => {\n const isHighestLayer = index === context.layers.size - 1;\n if (!isHighestLayer) return;\n onEscapeKeyDown?.(event);\n if (!event.defaultPrevented && onDismiss) {\n event.preventDefault();\n onDismiss();\n }\n }, ownerDocument);\n React.useEffect(() => {\n if (!node) return;\n if (disableOutsidePointerEvents) {\n if (context.layersWithOutsidePointerEventsDisabled.size === 0) {\n originalBodyPointerEvents = ownerDocument.body.style.pointerEvents;\n ownerDocument.body.style.pointerEvents = \"none\";\n }\n context.layersWithOutsidePointerEventsDisabled.add(node);\n }\n context.layers.add(node);\n dispatchUpdate();\n return () => {\n if (disableOutsidePointerEvents && context.layersWithOutsidePointerEventsDisabled.size === 1) {\n ownerDocument.body.style.pointerEvents = originalBodyPointerEvents;\n }\n };\n }, [node, ownerDocument, disableOutsidePointerEvents, context]);\n React.useEffect(() => {\n return () => {\n if (!node) return;\n context.layers.delete(node);\n context.layersWithOutsidePointerEventsDisabled.delete(node);\n dispatchUpdate();\n };\n }, [node, context]);\n React.useEffect(() => {\n const handleUpdate = () => force({});\n document.addEventListener(CONTEXT_UPDATE, handleUpdate);\n return () => document.removeEventListener(CONTEXT_UPDATE, handleUpdate);\n }, []);\n return /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...layerProps,\n ref: composedRefs,\n style: {\n pointerEvents: isBodyPointerEventsDisabled ? isPointerEventsEnabled ? \"auto\" : \"none\" : void 0,\n ...props.style\n },\n onFocusCapture: composeEventHandlers(props.onFocusCapture, focusOutside.onFocusCapture),\n onBlurCapture: composeEventHandlers(props.onBlurCapture, focusOutside.onBlurCapture),\n onPointerDownCapture: composeEventHandlers(\n props.onPointerDownCapture,\n pointerDownOutside.onPointerDownCapture\n )\n }\n );\n }\n);\nDismissableLayer.displayName = DISMISSABLE_LAYER_NAME;\nvar BRANCH_NAME = \"DismissableLayerBranch\";\nvar DismissableLayerBranch = React.forwardRef((props, forwardedRef) => {\n const context = React.useContext(DismissableLayerContext);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n React.useEffect(() => {\n const node = ref.current;\n if (node) {\n context.branches.add(node);\n return () => {\n context.branches.delete(node);\n };\n }\n }, [context.branches]);\n return /* @__PURE__ */ jsx(Primitive.div, { ...props, ref: composedRefs });\n});\nDismissableLayerBranch.displayName = BRANCH_NAME;\nfunction usePointerDownOutside(onPointerDownOutside, ownerDocument = globalThis?.document) {\n const handlePointerDownOutside = useCallbackRef(onPointerDownOutside);\n const isPointerInsideReactTreeRef = React.useRef(false);\n const handleClickRef = React.useRef(() => {\n });\n React.useEffect(() => {\n const handlePointerDown = (event) => {\n if (event.target && !isPointerInsideReactTreeRef.current) {\n let handleAndDispatchPointerDownOutsideEvent2 = function() {\n handleAndDispatchCustomEvent(\n POINTER_DOWN_OUTSIDE,\n handlePointerDownOutside,\n eventDetail,\n { discrete: true }\n );\n };\n var handleAndDispatchPointerDownOutsideEvent = handleAndDispatchPointerDownOutsideEvent2;\n const eventDetail = { originalEvent: event };\n if (event.pointerType === \"touch\") {\n ownerDocument.removeEventListener(\"click\", handleClickRef.current);\n handleClickRef.current = handleAndDispatchPointerDownOutsideEvent2;\n ownerDocument.addEventListener(\"click\", handleClickRef.current, { once: true });\n } else {\n handleAndDispatchPointerDownOutsideEvent2();\n }\n } else {\n ownerDocument.removeEventListener(\"click\", handleClickRef.current);\n }\n isPointerInsideReactTreeRef.current = false;\n };\n const timerId = window.setTimeout(() => {\n ownerDocument.addEventListener(\"pointerdown\", handlePointerDown);\n }, 0);\n return () => {\n window.clearTimeout(timerId);\n ownerDocument.removeEventListener(\"pointerdown\", handlePointerDown);\n ownerDocument.removeEventListener(\"click\", handleClickRef.current);\n };\n }, [ownerDocument, handlePointerDownOutside]);\n return {\n // ensures we check React component tree (not just DOM tree)\n onPointerDownCapture: () => isPointerInsideReactTreeRef.current = true\n };\n}\nfunction useFocusOutside(onFocusOutside, ownerDocument = globalThis?.document) {\n const handleFocusOutside = useCallbackRef(onFocusOutside);\n const isFocusInsideReactTreeRef = React.useRef(false);\n React.useEffect(() => {\n const handleFocus = (event) => {\n if (event.target && !isFocusInsideReactTreeRef.current) {\n const eventDetail = { originalEvent: event };\n handleAndDispatchCustomEvent(FOCUS_OUTSIDE, handleFocusOutside, eventDetail, {\n discrete: false\n });\n }\n };\n ownerDocument.addEventListener(\"focusin\", handleFocus);\n return () => ownerDocument.removeEventListener(\"focusin\", handleFocus);\n }, [ownerDocument, handleFocusOutside]);\n return {\n onFocusCapture: () => isFocusInsideReactTreeRef.current = true,\n onBlurCapture: () => isFocusInsideReactTreeRef.current = false\n };\n}\nfunction dispatchUpdate() {\n const event = new CustomEvent(CONTEXT_UPDATE);\n document.dispatchEvent(event);\n}\nfunction handleAndDispatchCustomEvent(name, handler, detail, { discrete }) {\n const target = detail.originalEvent.target;\n const event = new CustomEvent(name, { bubbles: false, cancelable: true, detail });\n if (handler) target.addEventListener(name, handler, { once: true });\n if (discrete) {\n dispatchDiscreteCustomEvent(target, event);\n } else {\n target.dispatchEvent(event);\n }\n}\nvar Root = DismissableLayer;\nvar Branch = DismissableLayerBranch;\nexport {\n Branch,\n DismissableLayer,\n DismissableLayerBranch,\n Root\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/react/use-escape-keydown/src/use-escape-keydown.tsx\nimport * as React from \"react\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nfunction useEscapeKeydown(onEscapeKeyDownProp, ownerDocument = globalThis?.document) {\n const onEscapeKeyDown = useCallbackRef(onEscapeKeyDownProp);\n React.useEffect(() => {\n const handleKeyDown = (event) => {\n if (event.key === \"Escape\") {\n onEscapeKeyDown(event);\n }\n };\n ownerDocument.addEventListener(\"keydown\", handleKeyDown, { capture: true });\n return () => ownerDocument.removeEventListener(\"keydown\", handleKeyDown, { capture: true });\n }, [onEscapeKeyDown, ownerDocument]);\n}\nexport {\n useEscapeKeydown\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\n// src/portal.tsx\nimport * as React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nimport { jsx } from \"react/jsx-runtime\";\nvar PORTAL_NAME = \"Portal\";\nvar Portal = React.forwardRef((props, forwardedRef) => {\n const { container: containerProp, ...portalProps } = props;\n const [mounted, setMounted] = React.useState(false);\n useLayoutEffect(() => setMounted(true), []);\n const container = containerProp || mounted && globalThis?.document?.body;\n return container ? ReactDOM.createPortal(/* @__PURE__ */ jsx(Primitive.div, { ...portalProps, ref: forwardedRef }), container) : null;\n});\nPortal.displayName = PORTAL_NAME;\nvar Root = Portal;\nexport {\n Portal,\n Root\n};\n//# sourceMappingURL=index.mjs.map\n"],"names":["originalBodyPointerEvents","CONTEXT_UPDATE","POINTER_DOWN_OUTSIDE","FOCUS_OUTSIDE","DismissableLayerContext","React","createContext","layers","Set","layersWithOutsidePointerEventsDisabled","branches","DismissableLayer","forwardRef","props","forwardedRef","disableOutsidePointerEvents","onEscapeKeyDown","onPointerDownOutside","onFocusOutside","onInteractOutside","onDismiss","layerProps","context","useContext","node","setNode","useState","ownerDocument","globalThis","document","force","composedRefs","useComposedRefs","Array","from","highestLayerWithOutsidePointerEventsDisabled","slice","highestLayerWithOutsidePointerEventsDisabledIndex","indexOf","index","isBodyPointerEventsDisabled","size","isPointerEventsEnabled","pointerDownOutside","handlePointerDownOutside","useCallbackRef","isPointerInsideReactTreeRef","useRef","handleClickRef","useEffect","handlePointerDown","event","target","current","handleAndDispatchPointerDownOutsideEvent","handleAndDispatchCustomEvent","eventDetail","discrete","originalEvent","pointerType","removeEventListener","addEventListener","once","timerId","window","setTimeout","clearTimeout","onPointerDownCapture","usePointerDownOutside","isPointerDownOnBranch","some","branch","contains","defaultPrevented","focusOutside","handleFocusOutside","isFocusInsideReactTreeRef","handleFocus","onFocusCapture","onBlurCapture","useFocusOutside","onEscapeKeyDownProp","handleKeyDown","key","capture","useEscapeKeydown","preventDefault","body","style","pointerEvents","add","dispatchUpdate","delete","handleUpdate","jsx","Primitive","div","ref","composeEventHandlers","displayName","DismissableLayerBranch","CustomEvent","dispatchEvent","name","handler","detail","bubbles","cancelable","dispatchDiscreteCustomEvent","Root","Branch","Portal","container","containerProp","portalProps","mounted","setMounted","useLayoutEffect","ReactDOM","createPortal"],"mappings":"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","x_google_ignoreList":[0,1,2]}
@@ -1,2 +0,0 @@
1
- import{c as e}from"./utils-BctauAA9.mjs";import t from"react";function r({className:r,type:o,...i}){return t.createElement("input",{type:o,"data-slot":"input",className:e("border-input file:text-foreground placeholder:text-muted-foreground focus-visible:ring-ring flex h-10 w-full rounded-md border bg-transparent px-3 py-1 text-base shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium focus-visible:ring-1 focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",r),...i})}export{r as I};
2
- //# sourceMappingURL=input-85UFztMJ.mjs.map
@@ -1,2 +0,0 @@
1
- import{c as e}from"./utils-BctauAA9.mjs";import*as t from"react";import a from"react";import{P as r}from"./index-w9bxia3O.mjs";import{jsx as o}from"react/jsx-runtime";var s=t.forwardRef((e,t)=>o(r.label,{...e,ref:t,onMouseDown:t=>{t.target.closest("button, input, select, textarea")||(e.onMouseDown?.(t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));s.displayName="Label";var n=s;function l({className:t,...r}){return a.createElement(n,{"data-slot":"label",className:e("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",t),...r})}export{l as L};
2
- //# sourceMappingURL=label-CICFzZIt.mjs.map
@@ -1,2 +0,0 @@
1
- import{c as e}from"./utils-BctauAA9.mjs";import a from"react";import{C as t}from"./chevron-left-CrN7DlXg.mjs";import{C as s}from"./chevron-right-BMSCuDGK.mjs";import{c as n}from"./createLucideIcon-L-tld2uc.mjs";import{b as c}from"./button-DrFZXJ7z.mjs";const l=n("Ellipsis",[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"19",cy:"12",r:"1",key:"1wjl8i"}],["circle",{cx:"5",cy:"12",r:"1",key:"1pcz8c"}]]);function r({className:t,...s}){return a.createElement("nav",{"aria-label":"pagination","data-slot":"pagination",className:e("mx-auto flex w-full justify-center",t),...s})}function i({className:t,...s}){return a.createElement("ul",{"data-slot":"pagination-content",className:e("flex flex-row items-center gap-1",t),...s})}function m({...e}){return a.createElement("li",{"data-slot":"pagination-item",...e})}function o({className:t,isActive:s,size:n="icon",...l}){return a.createElement("a",{"aria-current":s?"page":void 0,"data-slot":"pagination-link","data-active":s,className:e(c({variant:s?"outline":"ghost",size:n}),t),...l})}function p({className:s,...n}){return a.createElement(o,{"aria-label":"Go to previous page",size:"default",className:e("gap-1 px-2.5 sm:pl-2.5",s),...n},a.createElement(t,null),a.createElement("span",{className:"hidden sm:block"},"Previous"))}function u({className:t,...n}){return a.createElement(o,{"aria-label":"Go to next page",size:"default",className:e("gap-1 px-2.5 sm:pr-2.5",t),...n},a.createElement("span",{className:"hidden sm:block"},"Next"),a.createElement(s,null))}function f({className:t,...s}){return a.createElement("span",{"aria-hidden":!0,"data-slot":"pagination-ellipsis",className:e("flex size-9 items-center justify-center",t),...s},a.createElement(l,{className:"size-4"}),a.createElement("span",{className:"sr-only"},"More pages"))}export{r as P,i as a,o as b,m as c,p as d,u as e,f};
2
- //# sourceMappingURL=pagination-CReDQes6.mjs.map
@@ -1,2 +0,0 @@
1
- import{c as e}from"./utils-BctauAA9.mjs";import*as o from"react";import r from"react";import{c as t}from"./index-CdJCOoFA.mjs";import{u as n}from"./index-COvW87ew.mjs";import{c as a}from"./index-CCcl327A.mjs";import{P as s,D as i}from"./index-xew3kygQ.mjs";import{h as c,R as d,u as p,F as u}from"./index-lvPXnk5F.mjs";import{u as l}from"./index-CRxQlsb9.mjs";import{c as f,R as m,A as v,C as h,a as g}from"./index-DOyt-JEx.mjs";import{P}from"./index-BdpYc58_.mjs";import{P as C}from"./index-w9bxia3O.mjs";import{createSlot as O}from"@radix-ui/react-slot";import{u as x}from"./index-CybgQKpz.mjs";import{jsx as w}from"react/jsx-runtime";var b="Popover",[R,_]=a(b,[f]),A=f(),[F,y]=R(b),E=e=>{const{__scopePopover:r,children:t,open:n,defaultOpen:a,onOpenChange:s,modal:i=!1}=e,c=A(r),d=o.useRef(null),[p,u]=o.useState(!1),[f,v]=x({prop:n,defaultProp:a??!1,onChange:s,caller:b});return w(m,{...c,children:w(F,{scope:r,contentId:l(),triggerRef:d,open:f,onOpenChange:v,onOpenToggle:o.useCallback(()=>v(e=>!e),[v]),hasCustomAnchor:p,onCustomAnchorAdd:o.useCallback(()=>u(!0),[]),onCustomAnchorRemove:o.useCallback(()=>u(!1),[]),modal:i,children:t})})};E.displayName=b;var D="PopoverAnchor",j=o.forwardRef((e,r)=>{const{__scopePopover:t,...n}=e,a=y(D,t),s=A(t),{onCustomAnchorAdd:i,onCustomAnchorRemove:c}=a;return o.useEffect(()=>(i(),()=>c()),[i,c]),w(v,{...s,...n,ref:r})});j.displayName=D;var k="PopoverTrigger",N=o.forwardRef((e,o)=>{const{__scopePopover:r,...a}=e,s=y(k,r),i=A(r),c=n(o,s.triggerRef),d=w(C.button,{type:"button","aria-haspopup":"dialog","aria-expanded":s.open,"aria-controls":s.contentId,"data-state":H(s.open),...a,ref:c,onClick:t(e.onClick,s.onOpenToggle)});return s.hasCustomAnchor?d:w(v,{asChild:!0,...i,children:d})});N.displayName=k;var I="PopoverPortal",[M,z]=R(I,{forceMount:void 0}),K=e=>{const{__scopePopover:o,forceMount:r,children:t,container:n}=e,a=y(I,o);return w(M,{scope:o,forceMount:r,children:w(P,{present:r||a.open,children:w(s,{asChild:!0,container:n,children:t})})})};K.displayName=I;var T="PopoverContent",S=o.forwardRef((e,o)=>{const r=z(T,e.__scopePopover),{forceMount:t=r.forceMount,...n}=e,a=y(T,e.__scopePopover);return w(P,{present:t||a.open,children:a.modal?w(Z,{...n,ref:o}):w(q,{...n,ref:o})})});S.displayName=T;var U=O("PopoverContent.RemoveScroll"),Z=o.forwardRef((e,r)=>{const a=y(T,e.__scopePopover),s=o.useRef(null),i=n(r,s),p=o.useRef(!1);return o.useEffect(()=>{const e=s.current;if(e)return c(e)},[]),w(d,{as:U,allowPinchZoom:!0,children:w(B,{...e,ref:i,trapFocus:a.open,disableOutsidePointerEvents:!0,onCloseAutoFocus:t(e.onCloseAutoFocus,e=>{e.preventDefault(),p.current||a.triggerRef.current?.focus()}),onPointerDownOutside:t(e.onPointerDownOutside,e=>{const o=e.detail.originalEvent,r=0===o.button&&!0===o.ctrlKey,t=2===o.button||r;p.current=t},{checkForDefaultPrevented:!1}),onFocusOutside:t(e.onFocusOutside,e=>e.preventDefault(),{checkForDefaultPrevented:!1})})})}),q=o.forwardRef((e,r)=>{const t=y(T,e.__scopePopover),n=o.useRef(!1),a=o.useRef(!1);return w(B,{...e,ref:r,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:o=>{e.onCloseAutoFocus?.(o),o.defaultPrevented||(n.current||t.triggerRef.current?.focus(),o.preventDefault()),n.current=!1,a.current=!1},onInteractOutside:o=>{e.onInteractOutside?.(o),o.defaultPrevented||(n.current=!0,"pointerdown"===o.detail.originalEvent.type&&(a.current=!0));const r=o.target,s=t.triggerRef.current?.contains(r);s&&o.preventDefault(),"focusin"===o.detail.originalEvent.type&&a.current&&o.preventDefault()}})}),B=o.forwardRef((e,o)=>{const{__scopePopover:r,trapFocus:t,onOpenAutoFocus:n,onCloseAutoFocus:a,disableOutsidePointerEvents:s,onEscapeKeyDown:c,onPointerDownOutside:d,onFocusOutside:l,onInteractOutside:f,...m}=e,v=y(T,r),g=A(r);return p(),w(u,{asChild:!0,loop:!0,trapped:t,onMountAutoFocus:n,onUnmountAutoFocus:a,children:w(i,{asChild:!0,disableOutsidePointerEvents:s,onInteractOutside:f,onEscapeKeyDown:c,onPointerDownOutside:d,onFocusOutside:l,onDismiss:()=>v.onOpenChange(!1),children:w(h,{"data-state":H(v.open),role:"dialog",id:v.contentId,...g,...m,ref:o,style:{...m.style,"--radix-popover-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-popover-content-available-width":"var(--radix-popper-available-width)","--radix-popover-content-available-height":"var(--radix-popper-available-height)","--radix-popover-trigger-width":"var(--radix-popper-anchor-width)","--radix-popover-trigger-height":"var(--radix-popper-anchor-height)"}})})})}),G="PopoverClose";o.forwardRef((e,o)=>{const{__scopePopover:r,...n}=e,a=y(G,r);return w(C.button,{type:"button",...n,ref:o,onClick:t(e.onClick,()=>a.onOpenChange(!1))})}).displayName=G;function H(e){return e?"open":"closed"}o.forwardRef((e,o)=>{const{__scopePopover:r,...t}=e,n=A(r);return w(g,{...n,...t,ref:o})}).displayName="PopoverArrow";var J=E,L=j,Q=N,V=K,W=S;function X({...e}){return r.createElement(J,{"data-slot":"popover",...e})}function Y({...e}){return r.createElement(Q,{"data-slot":"popover-trigger",...e})}function $({className:o,align:t="center",sideOffset:n=4,...a}){return r.createElement(V,null,r.createElement(W,{"data-slot":"popover-content",align:t,sideOffset:n,className:e("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-72 cursor-pointer rounded-md border p-4 shadow-md outline-none",o),...a}))}function ee({...e}){return r.createElement(L,{"data-slot":"popover-anchor",...e})}export{X as P,Y as a,$ as b,ee as c};
2
- //# sourceMappingURL=popover-Cn2ZTvKd.mjs.map
@@ -1,2 +0,0 @@
1
- import{c as a}from"./utils-BctauAA9.mjs";import*as r from"react";import e from"react";import{c as t}from"./index-CCcl327A.mjs";import{P as o}from"./index-w9bxia3O.mjs";import{jsx as l}from"react/jsx-runtime";var n="Progress",[s,i]=t(n),[u,m]=s(n),d=r.forwardRef((a,r)=>{const{__scopeProgress:e,value:t=null,max:n,getValueLabel:s=v,...i}=a;(n||0===n)&&g(n);const m=g(n)?n:100;null!==t&&N(t,m);const d=N(t,m)?t:null,c=x(d)?s(d,m):void 0;return l(u,{scope:e,value:d,max:m,children:l(o.div,{"aria-valuemax":m,"aria-valuemin":0,"aria-valuenow":x(d)?d:void 0,"aria-valuetext":c,role:"progressbar","data-state":p(d,m),"data-value":d??void 0,"data-max":m,...i,ref:r})})});d.displayName=n;var c="ProgressIndicator",f=r.forwardRef((a,r)=>{const{__scopeProgress:e,...t}=a,n=m(c,e);return l(o.div,{"data-state":p(n.value,n.max),"data-value":n.value??void 0,"data-max":n.max,...t,ref:r})});function v(a,r){return`${Math.round(a/r*100)}%`}function p(a,r){return null==a?"indeterminate":a===r?"complete":"loading"}function x(a){return"number"==typeof a}function g(a){return x(a)&&!isNaN(a)&&a>0}function N(a,r){return x(a)&&!isNaN(a)&&a<=r&&a>=0}f.displayName=c;var w=d,y=f;function P({className:r,value:t,...o}){return e.createElement(w,{"data-slot":"progress",className:a("bg-primary/20 relative h-2 w-full overflow-hidden rounded-full",r),...o},e.createElement(y,{"data-slot":"progress-indicator",className:"bg-primary h-full w-full flex-1 transition-all",style:{transform:`translateX(-${100-(t||0)}%)`}}))}export{P};
2
- //# sourceMappingURL=progress-CSxQH6-f.mjs.map
@@ -1,2 +0,0 @@
1
- import{c as e}from"./utils-BctauAA9.mjs";import*as r from"react";import t from"react";import{P as o}from"./index-w9bxia3O.mjs";import{P as n}from"./index-BdpYc58_.mjs";import{c as l}from"./index-CCcl327A.mjs";import{u as i}from"./index-COvW87ew.mjs";import{u as a}from"./index-CXszXOf_.mjs";import{u as s}from"./index-CU_y1XAz.mjs";import{u as c}from"./index-CLtWFQL5.mjs";import{c as d}from"./index-CdJCOoFA.mjs";import{jsx as u,jsxs as p,Fragment as f}from"react/jsx-runtime";var h="ScrollArea",[v,w]=l(h),[m,b]=v(h),g=r.forwardRef((e,t)=>{const{__scopeScrollArea:n,type:l="hover",dir:a,scrollHideDelay:c=600,...d}=e,[p,f]=r.useState(null),[h,v]=r.useState(null),[w,b]=r.useState(null),[g,S]=r.useState(null),[E,y]=r.useState(null),[T,C]=r.useState(0),[R,P]=r.useState(0),[x,_]=r.useState(!1),[L,D]=r.useState(!1),A=i(t,e=>f(e)),z=s(a);return u(m,{scope:n,type:l,dir:z,scrollHideDelay:c,scrollArea:p,viewport:h,onViewportChange:v,content:w,onContentChange:b,scrollbarX:g,onScrollbarXChange:S,scrollbarXEnabled:x,onScrollbarXEnabledChange:_,scrollbarY:E,onScrollbarYChange:y,scrollbarYEnabled:L,onScrollbarYEnabledChange:D,onCornerWidthChange:C,onCornerHeightChange:P,children:u(o.div,{dir:z,...d,ref:A,style:{position:"relative","--radix-scroll-area-corner-width":T+"px","--radix-scroll-area-corner-height":R+"px",...e.style}})})});g.displayName=h;var S="ScrollAreaViewport",E=r.forwardRef((e,t)=>{const{__scopeScrollArea:n,children:l,nonce:a,...s}=e,c=b(S,n),d=r.useRef(null),h=i(t,d,c.onViewportChange);return p(f,{children:[u("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:a}),u(o.div,{"data-radix-scroll-area-viewport":"",...s,ref:h,style:{overflowX:c.scrollbarXEnabled?"scroll":"hidden",overflowY:c.scrollbarYEnabled?"scroll":"hidden",...e.style},children:u("div",{ref:c.onContentChange,style:{minWidth:"100%",display:"table"},children:l})})]})});E.displayName=S;var y="ScrollAreaScrollbar",T=r.forwardRef((e,t)=>{const{forceMount:o,...n}=e,l=b(y,e.__scopeScrollArea),{onScrollbarXEnabledChange:i,onScrollbarYEnabledChange:a}=l,s="horizontal"===e.orientation;return r.useEffect(()=>(s?i(!0):a(!0),()=>{s?i(!1):a(!1)}),[s,i,a]),"hover"===l.type?u(C,{...n,ref:t,forceMount:o}):"scroll"===l.type?u(R,{...n,ref:t,forceMount:o}):"auto"===l.type?u(P,{...n,ref:t,forceMount:o}):"always"===l.type?u(x,{...n,ref:t}):null});T.displayName=y;var C=r.forwardRef((e,t)=>{const{forceMount:o,...l}=e,i=b(y,e.__scopeScrollArea),[a,s]=r.useState(!1);return r.useEffect(()=>{const e=i.scrollArea;let r=0;if(e){const t=()=>{window.clearTimeout(r),s(!0)},o=()=>{r=window.setTimeout(()=>s(!1),i.scrollHideDelay)};return e.addEventListener("pointerenter",t),e.addEventListener("pointerleave",o),()=>{window.clearTimeout(r),e.removeEventListener("pointerenter",t),e.removeEventListener("pointerleave",o)}}},[i.scrollArea,i.scrollHideDelay]),u(n,{present:o||a,children:u(P,{"data-state":a?"visible":"hidden",...l,ref:t})})}),R=r.forwardRef((e,t)=>{const{forceMount:o,...l}=e,i=b(y,e.__scopeScrollArea),a="horizontal"===e.orientation,s=V(()=>p("SCROLL_END"),100),[c,p]=(f="hidden",h={hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}},r.useReducer((e,r)=>h[e][r]??e,f));var f,h;return r.useEffect(()=>{if("idle"===c){const e=window.setTimeout(()=>p("HIDE"),i.scrollHideDelay);return()=>window.clearTimeout(e)}},[c,i.scrollHideDelay,p]),r.useEffect(()=>{const e=i.viewport,r=a?"scrollLeft":"scrollTop";if(e){let t=e[r];const o=()=>{const o=e[r];t!==o&&(p("SCROLL"),s()),t=o};return e.addEventListener("scroll",o),()=>e.removeEventListener("scroll",o)}},[i.viewport,a,p,s]),u(n,{present:o||"hidden"!==c,children:u(x,{"data-state":"hidden"===c?"hidden":"visible",...l,ref:t,onPointerEnter:d(e.onPointerEnter,()=>p("POINTER_ENTER")),onPointerLeave:d(e.onPointerLeave,()=>p("POINTER_LEAVE"))})})}),P=r.forwardRef((e,t)=>{const o=b(y,e.__scopeScrollArea),{forceMount:l,...i}=e,[a,s]=r.useState(!1),c="horizontal"===e.orientation,d=V(()=>{if(o.viewport){const e=o.viewport.offsetWidth<o.viewport.scrollWidth,r=o.viewport.offsetHeight<o.viewport.scrollHeight;s(c?e:r)}},10);return q(o.viewport,d),q(o.content,d),u(n,{present:l||a,children:u(x,{"data-state":a?"visible":"hidden",...i,ref:t})})}),x=r.forwardRef((e,t)=>{const{orientation:o="vertical",...n}=e,l=b(y,e.__scopeScrollArea),i=r.useRef(null),a=r.useRef(0),[s,c]=r.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),d=O(s.viewport,s.content),p={...n,sizes:s,onSizesChange:c,hasThumb:Boolean(d>0&&d<1),onThumbChange:e=>i.current=e,onThumbPointerUp:()=>a.current=0,onThumbPointerDown:e=>a.current=e};function f(e,r){return function(e,r,t,o="ltr"){const n=U(t),l=n/2,i=r||l,a=n-i,s=t.scrollbar.paddingStart+i,c=t.scrollbar.size-t.scrollbar.paddingEnd-a,d=t.content-t.viewport,u="ltr"===o?[0,d]:[-1*d,0];return k([s,c],u)(e)}(e,a.current,s,r)}return"horizontal"===o?u(_,{...p,ref:t,onThumbPositionChange:()=>{if(l.viewport&&i.current){const e=j(l.viewport.scrollLeft,s,l.dir);i.current.style.transform=`translate3d(${e}px, 0, 0)`}},onWheelScroll:e=>{l.viewport&&(l.viewport.scrollLeft=e)},onDragScroll:e=>{l.viewport&&(l.viewport.scrollLeft=f(e,l.dir))}}):"vertical"===o?u(L,{...p,ref:t,onThumbPositionChange:()=>{if(l.viewport&&i.current){const e=j(l.viewport.scrollTop,s);i.current.style.transform=`translate3d(0, ${e}px, 0)`}},onWheelScroll:e=>{l.viewport&&(l.viewport.scrollTop=e)},onDragScroll:e=>{l.viewport&&(l.viewport.scrollTop=f(e))}}):null}),_=r.forwardRef((e,t)=>{const{sizes:o,onSizesChange:n,...l}=e,a=b(y,e.__scopeScrollArea),[s,c]=r.useState(),d=r.useRef(null),p=i(t,d,a.onScrollbarXChange);return r.useEffect(()=>{d.current&&c(getComputedStyle(d.current))},[d]),u(z,{"data-orientation":"horizontal",...l,ref:p,sizes:o,style:{bottom:0,left:"rtl"===a.dir?"var(--radix-scroll-area-corner-width)":0,right:"ltr"===a.dir?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":U(o)+"px",...e.style},onThumbPointerDown:r=>e.onThumbPointerDown(r.x),onDragScroll:r=>e.onDragScroll(r.x),onWheelScroll:(r,t)=>{if(a.viewport){const o=a.viewport.scrollLeft+r.deltaX;e.onWheelScroll(o),B(o,t)&&r.preventDefault()}},onResize:()=>{d.current&&a.viewport&&s&&n({content:a.viewport.scrollWidth,viewport:a.viewport.offsetWidth,scrollbar:{size:d.current.clientWidth,paddingStart:I(s.paddingLeft),paddingEnd:I(s.paddingRight)}})}})}),L=r.forwardRef((e,t)=>{const{sizes:o,onSizesChange:n,...l}=e,a=b(y,e.__scopeScrollArea),[s,c]=r.useState(),d=r.useRef(null),p=i(t,d,a.onScrollbarYChange);return r.useEffect(()=>{d.current&&c(getComputedStyle(d.current))},[d]),u(z,{"data-orientation":"vertical",...l,ref:p,sizes:o,style:{top:0,right:"ltr"===a.dir?0:void 0,left:"rtl"===a.dir?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":U(o)+"px",...e.style},onThumbPointerDown:r=>e.onThumbPointerDown(r.y),onDragScroll:r=>e.onDragScroll(r.y),onWheelScroll:(r,t)=>{if(a.viewport){const o=a.viewport.scrollTop+r.deltaY;e.onWheelScroll(o),B(o,t)&&r.preventDefault()}},onResize:()=>{d.current&&a.viewport&&s&&n({content:a.viewport.scrollHeight,viewport:a.viewport.offsetHeight,scrollbar:{size:d.current.clientHeight,paddingStart:I(s.paddingTop),paddingEnd:I(s.paddingBottom)}})}})}),[D,A]=v(y),z=r.forwardRef((e,t)=>{const{__scopeScrollArea:n,sizes:l,hasThumb:s,onThumbChange:c,onThumbPointerUp:p,onThumbPointerDown:f,onThumbPositionChange:h,onDragScroll:v,onWheelScroll:w,onResize:m,...g}=e,S=b(y,n),[E,T]=r.useState(null),C=i(t,e=>T(e)),R=r.useRef(null),P=r.useRef(""),x=S.viewport,_=l.content-l.viewport,L=a(w),A=a(h),z=V(m,10);function N(e){if(R.current){const r=e.clientX-R.current.left,t=e.clientY-R.current.top;v({x:r,y:t})}}return r.useEffect(()=>{const e=e=>{const r=e.target,t=E?.contains(r);t&&L(e,_)};return document.addEventListener("wheel",e,{passive:!1}),()=>document.removeEventListener("wheel",e,{passive:!1})},[x,E,_,L]),r.useEffect(A,[l,A]),q(E,z),q(S.content,z),u(D,{scope:n,scrollbar:E,hasThumb:s,onThumbChange:a(c),onThumbPointerUp:a(p),onThumbPositionChange:A,onThumbPointerDown:a(f),children:u(o.div,{...g,ref:C,style:{position:"absolute",...g.style},onPointerDown:d(e.onPointerDown,e=>{if(0===e.button){e.target.setPointerCapture(e.pointerId),R.current=E.getBoundingClientRect(),P.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",S.viewport&&(S.viewport.style.scrollBehavior="auto"),N(e)}}),onPointerMove:d(e.onPointerMove,N),onPointerUp:d(e.onPointerUp,e=>{const r=e.target;r.hasPointerCapture(e.pointerId)&&r.releasePointerCapture(e.pointerId),document.body.style.webkitUserSelect=P.current,S.viewport&&(S.viewport.style.scrollBehavior=""),R.current=null})})})}),N="ScrollAreaThumb",H=r.forwardRef((e,r)=>{const{forceMount:t,...o}=e,l=A(N,e.__scopeScrollArea);return u(n,{present:t||l.hasThumb,children:u(W,{ref:r,...o})})}),W=r.forwardRef((e,t)=>{const{__scopeScrollArea:n,style:l,...a}=e,s=b(N,n),c=A(N,n),{onThumbPositionChange:p}=c,f=i(t,e=>c.onThumbChange(e)),h=r.useRef(void 0),v=V(()=>{h.current&&(h.current(),h.current=void 0)},100);return r.useEffect(()=>{const e=s.viewport;if(e){const r=()=>{if(v(),!h.current){const r=F(e,p);h.current=r,p()}};return p(),e.addEventListener("scroll",r),()=>e.removeEventListener("scroll",r)}},[s.viewport,v,p]),u(o.div,{"data-state":c.hasThumb?"visible":"hidden",...a,ref:f,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...l},onPointerDownCapture:d(e.onPointerDownCapture,e=>{const r=e.target.getBoundingClientRect(),t=e.clientX-r.left,o=e.clientY-r.top;c.onThumbPointerDown({x:t,y:o})}),onPointerUp:d(e.onPointerUp,c.onThumbPointerUp)})});H.displayName=N;var M="ScrollAreaCorner",X=r.forwardRef((e,r)=>{const t=b(M,e.__scopeScrollArea),o=Boolean(t.scrollbarX&&t.scrollbarY);return"scroll"!==t.type&&o?u(Y,{...e,ref:r}):null});X.displayName=M;var Y=r.forwardRef((e,t)=>{const{__scopeScrollArea:n,...l}=e,i=b(M,n),[a,s]=r.useState(0),[c,d]=r.useState(0),p=Boolean(a&&c);return q(i.scrollbarX,()=>{const e=i.scrollbarX?.offsetHeight||0;i.onCornerHeightChange(e),d(e)}),q(i.scrollbarY,()=>{const e=i.scrollbarY?.offsetWidth||0;i.onCornerWidthChange(e),s(e)}),p?u(o.div,{...l,ref:t,style:{width:a,height:c,position:"absolute",right:"ltr"===i.dir?0:void 0,left:"rtl"===i.dir?0:void 0,bottom:0,...e.style}}):null});function I(e){return e?parseInt(e,10):0}function O(e,r){const t=e/r;return isNaN(t)?0:t}function U(e){const r=O(e.viewport,e.content),t=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,o=(e.scrollbar.size-t)*r;return Math.max(o,18)}function j(e,r,t="ltr"){const o=U(r),n=r.scrollbar.paddingStart+r.scrollbar.paddingEnd,l=r.scrollbar.size-n,i=r.content-r.viewport,a=l-o,s=function(e,[r,t]){return Math.min(t,Math.max(r,e))}(e,"ltr"===t?[0,i]:[-1*i,0]);return k([0,i],[0,a])(s)}function k(e,r){return t=>{if(e[0]===e[1]||r[0]===r[1])return r[0];const o=(r[1]-r[0])/(e[1]-e[0]);return r[0]+o*(t-e[0])}}function B(e,r){return e>0&&e<r}var F=(e,r=()=>{})=>{let t={left:e.scrollLeft,top:e.scrollTop},o=0;return function n(){const l={left:e.scrollLeft,top:e.scrollTop},i=t.left!==l.left,a=t.top!==l.top;(i||a)&&r(),t=l,o=window.requestAnimationFrame(n)}(),()=>window.cancelAnimationFrame(o)};function V(e,t){const o=a(e),n=r.useRef(0);return r.useEffect(()=>()=>window.clearTimeout(n.current),[]),r.useCallback(()=>{window.clearTimeout(n.current),n.current=window.setTimeout(o,t)},[o,t])}function q(e,r){const t=a(r);c(()=>{let r=0;if(e){const o=new ResizeObserver(()=>{cancelAnimationFrame(r),r=window.requestAnimationFrame(t)});return o.observe(e),()=>{window.cancelAnimationFrame(r),o.unobserve(e)}}},[e,t])}var $=g,G=E,J=X;function K({className:r,children:o,...n}){return t.createElement($,{"data-slot":"scroll-area",className:e("relative",r),...n},t.createElement(G,{"data-slot":"scroll-area-viewport",className:"ring-ring/10 dark:ring-ring/20 dark:outline-ring/40 outline-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] focus-visible:ring-4 focus-visible:outline-1"},o),t.createElement(Q,null),t.createElement(J,null))}function Q({className:r,orientation:o="vertical",...n}){return t.createElement(T,{"data-slot":"scroll-area-scrollbar",orientation:o,className:e("flex touch-none p-px transition-colors select-none","vertical"===o&&"h-full w-2.5 border-l border-l-transparent","horizontal"===o&&"h-2.5 flex-col border-t border-t-transparent",r),...n},t.createElement(H,{"data-slot":"scroll-area-thumb",className:"bg-border relative flex-1 rounded-full"}))}export{K as S,Q as a};
2
- //# sourceMappingURL=scroll-area-CvCz7cL_.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scroll-area-CvCz7cL_.mjs","sources":["../../node_modules/@radix-ui/react-scroll-area/dist/index.mjs","../../node_modules/@radix-ui/number/dist/index.mjs","../../src/components/ui/scroll-area/scroll-area.tsx"],"sourcesContent":["\"use client\";\n\n// src/scroll-area.tsx\nimport * as React2 from \"react\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport { useCallbackRef } from \"@radix-ui/react-use-callback-ref\";\nimport { useDirection } from \"@radix-ui/react-direction\";\nimport { useLayoutEffect } from \"@radix-ui/react-use-layout-effect\";\nimport { clamp } from \"@radix-ui/number\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\n\n// src/use-state-machine.ts\nimport * as React from \"react\";\nfunction useStateMachine(initialState, machine) {\n return React.useReducer((state, event) => {\n const nextState = machine[state][event];\n return nextState ?? state;\n }, initialState);\n}\n\n// src/scroll-area.tsx\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nvar SCROLL_AREA_NAME = \"ScrollArea\";\nvar [createScrollAreaContext, createScrollAreaScope] = createContextScope(SCROLL_AREA_NAME);\nvar [ScrollAreaProvider, useScrollAreaContext] = createScrollAreaContext(SCROLL_AREA_NAME);\nvar ScrollArea = React2.forwardRef(\n (props, forwardedRef) => {\n const {\n __scopeScrollArea,\n type = \"hover\",\n dir,\n scrollHideDelay = 600,\n ...scrollAreaProps\n } = props;\n const [scrollArea, setScrollArea] = React2.useState(null);\n const [viewport, setViewport] = React2.useState(null);\n const [content, setContent] = React2.useState(null);\n const [scrollbarX, setScrollbarX] = React2.useState(null);\n const [scrollbarY, setScrollbarY] = React2.useState(null);\n const [cornerWidth, setCornerWidth] = React2.useState(0);\n const [cornerHeight, setCornerHeight] = React2.useState(0);\n const [scrollbarXEnabled, setScrollbarXEnabled] = React2.useState(false);\n const [scrollbarYEnabled, setScrollbarYEnabled] = React2.useState(false);\n const composedRefs = useComposedRefs(forwardedRef, (node) => setScrollArea(node));\n const direction = useDirection(dir);\n return /* @__PURE__ */ jsx(\n ScrollAreaProvider,\n {\n scope: __scopeScrollArea,\n type,\n dir: direction,\n scrollHideDelay,\n scrollArea,\n viewport,\n onViewportChange: setViewport,\n content,\n onContentChange: setContent,\n scrollbarX,\n onScrollbarXChange: setScrollbarX,\n scrollbarXEnabled,\n onScrollbarXEnabledChange: setScrollbarXEnabled,\n scrollbarY,\n onScrollbarYChange: setScrollbarY,\n scrollbarYEnabled,\n onScrollbarYEnabledChange: setScrollbarYEnabled,\n onCornerWidthChange: setCornerWidth,\n onCornerHeightChange: setCornerHeight,\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n dir: direction,\n ...scrollAreaProps,\n ref: composedRefs,\n style: {\n position: \"relative\",\n // Pass corner sizes as CSS vars to reduce re-renders of context consumers\n [\"--radix-scroll-area-corner-width\"]: cornerWidth + \"px\",\n [\"--radix-scroll-area-corner-height\"]: cornerHeight + \"px\",\n ...props.style\n }\n }\n )\n }\n );\n }\n);\nScrollArea.displayName = SCROLL_AREA_NAME;\nvar VIEWPORT_NAME = \"ScrollAreaViewport\";\nvar ScrollAreaViewport = React2.forwardRef(\n (props, forwardedRef) => {\n const { __scopeScrollArea, children, nonce, ...viewportProps } = props;\n const context = useScrollAreaContext(VIEWPORT_NAME, __scopeScrollArea);\n const ref = React2.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref, context.onViewportChange);\n return /* @__PURE__ */ jsxs(Fragment, { children: [\n /* @__PURE__ */ jsx(\n \"style\",\n {\n dangerouslySetInnerHTML: {\n __html: `[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}`\n },\n nonce\n }\n ),\n /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-radix-scroll-area-viewport\": \"\",\n ...viewportProps,\n ref: composedRefs,\n style: {\n /**\n * We don't support `visible` because the intention is to have at least one scrollbar\n * if this component is used and `visible` will behave like `auto` in that case\n * https://developer.mozilla.org/en-US/docs/Web/CSS/overflow#description\n *\n * We don't handle `auto` because the intention is for the native implementation\n * to be hidden if using this component. We just want to ensure the node is scrollable\n * so could have used either `scroll` or `auto` here. We picked `scroll` to prevent\n * the browser from having to work out whether to render native scrollbars or not,\n * we tell it to with the intention of hiding them in CSS.\n */\n overflowX: context.scrollbarXEnabled ? \"scroll\" : \"hidden\",\n overflowY: context.scrollbarYEnabled ? \"scroll\" : \"hidden\",\n ...props.style\n },\n children: /* @__PURE__ */ jsx(\"div\", { ref: context.onContentChange, style: { minWidth: \"100%\", display: \"table\" }, children })\n }\n )\n ] });\n }\n);\nScrollAreaViewport.displayName = VIEWPORT_NAME;\nvar SCROLLBAR_NAME = \"ScrollAreaScrollbar\";\nvar ScrollAreaScrollbar = React2.forwardRef(\n (props, forwardedRef) => {\n const { forceMount, ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const { onScrollbarXEnabledChange, onScrollbarYEnabledChange } = context;\n const isHorizontal = props.orientation === \"horizontal\";\n React2.useEffect(() => {\n isHorizontal ? onScrollbarXEnabledChange(true) : onScrollbarYEnabledChange(true);\n return () => {\n isHorizontal ? onScrollbarXEnabledChange(false) : onScrollbarYEnabledChange(false);\n };\n }, [isHorizontal, onScrollbarXEnabledChange, onScrollbarYEnabledChange]);\n return context.type === \"hover\" ? /* @__PURE__ */ jsx(ScrollAreaScrollbarHover, { ...scrollbarProps, ref: forwardedRef, forceMount }) : context.type === \"scroll\" ? /* @__PURE__ */ jsx(ScrollAreaScrollbarScroll, { ...scrollbarProps, ref: forwardedRef, forceMount }) : context.type === \"auto\" ? /* @__PURE__ */ jsx(ScrollAreaScrollbarAuto, { ...scrollbarProps, ref: forwardedRef, forceMount }) : context.type === \"always\" ? /* @__PURE__ */ jsx(ScrollAreaScrollbarVisible, { ...scrollbarProps, ref: forwardedRef }) : null;\n }\n);\nScrollAreaScrollbar.displayName = SCROLLBAR_NAME;\nvar ScrollAreaScrollbarHover = React2.forwardRef((props, forwardedRef) => {\n const { forceMount, ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const [visible, setVisible] = React2.useState(false);\n React2.useEffect(() => {\n const scrollArea = context.scrollArea;\n let hideTimer = 0;\n if (scrollArea) {\n const handlePointerEnter = () => {\n window.clearTimeout(hideTimer);\n setVisible(true);\n };\n const handlePointerLeave = () => {\n hideTimer = window.setTimeout(() => setVisible(false), context.scrollHideDelay);\n };\n scrollArea.addEventListener(\"pointerenter\", handlePointerEnter);\n scrollArea.addEventListener(\"pointerleave\", handlePointerLeave);\n return () => {\n window.clearTimeout(hideTimer);\n scrollArea.removeEventListener(\"pointerenter\", handlePointerEnter);\n scrollArea.removeEventListener(\"pointerleave\", handlePointerLeave);\n };\n }\n }, [context.scrollArea, context.scrollHideDelay]);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || visible, children: /* @__PURE__ */ jsx(\n ScrollAreaScrollbarAuto,\n {\n \"data-state\": visible ? \"visible\" : \"hidden\",\n ...scrollbarProps,\n ref: forwardedRef\n }\n ) });\n});\nvar ScrollAreaScrollbarScroll = React2.forwardRef((props, forwardedRef) => {\n const { forceMount, ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const isHorizontal = props.orientation === \"horizontal\";\n const debounceScrollEnd = useDebounceCallback(() => send(\"SCROLL_END\"), 100);\n const [state, send] = useStateMachine(\"hidden\", {\n hidden: {\n SCROLL: \"scrolling\"\n },\n scrolling: {\n SCROLL_END: \"idle\",\n POINTER_ENTER: \"interacting\"\n },\n interacting: {\n SCROLL: \"interacting\",\n POINTER_LEAVE: \"idle\"\n },\n idle: {\n HIDE: \"hidden\",\n SCROLL: \"scrolling\",\n POINTER_ENTER: \"interacting\"\n }\n });\n React2.useEffect(() => {\n if (state === \"idle\") {\n const hideTimer = window.setTimeout(() => send(\"HIDE\"), context.scrollHideDelay);\n return () => window.clearTimeout(hideTimer);\n }\n }, [state, context.scrollHideDelay, send]);\n React2.useEffect(() => {\n const viewport = context.viewport;\n const scrollDirection = isHorizontal ? \"scrollLeft\" : \"scrollTop\";\n if (viewport) {\n let prevScrollPos = viewport[scrollDirection];\n const handleScroll = () => {\n const scrollPos = viewport[scrollDirection];\n const hasScrollInDirectionChanged = prevScrollPos !== scrollPos;\n if (hasScrollInDirectionChanged) {\n send(\"SCROLL\");\n debounceScrollEnd();\n }\n prevScrollPos = scrollPos;\n };\n viewport.addEventListener(\"scroll\", handleScroll);\n return () => viewport.removeEventListener(\"scroll\", handleScroll);\n }\n }, [context.viewport, isHorizontal, send, debounceScrollEnd]);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || state !== \"hidden\", children: /* @__PURE__ */ jsx(\n ScrollAreaScrollbarVisible,\n {\n \"data-state\": state === \"hidden\" ? \"hidden\" : \"visible\",\n ...scrollbarProps,\n ref: forwardedRef,\n onPointerEnter: composeEventHandlers(props.onPointerEnter, () => send(\"POINTER_ENTER\")),\n onPointerLeave: composeEventHandlers(props.onPointerLeave, () => send(\"POINTER_LEAVE\"))\n }\n ) });\n});\nvar ScrollAreaScrollbarAuto = React2.forwardRef((props, forwardedRef) => {\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const { forceMount, ...scrollbarProps } = props;\n const [visible, setVisible] = React2.useState(false);\n const isHorizontal = props.orientation === \"horizontal\";\n const handleResize = useDebounceCallback(() => {\n if (context.viewport) {\n const isOverflowX = context.viewport.offsetWidth < context.viewport.scrollWidth;\n const isOverflowY = context.viewport.offsetHeight < context.viewport.scrollHeight;\n setVisible(isHorizontal ? isOverflowX : isOverflowY);\n }\n }, 10);\n useResizeObserver(context.viewport, handleResize);\n useResizeObserver(context.content, handleResize);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || visible, children: /* @__PURE__ */ jsx(\n ScrollAreaScrollbarVisible,\n {\n \"data-state\": visible ? \"visible\" : \"hidden\",\n ...scrollbarProps,\n ref: forwardedRef\n }\n ) });\n});\nvar ScrollAreaScrollbarVisible = React2.forwardRef((props, forwardedRef) => {\n const { orientation = \"vertical\", ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const thumbRef = React2.useRef(null);\n const pointerOffsetRef = React2.useRef(0);\n const [sizes, setSizes] = React2.useState({\n content: 0,\n viewport: 0,\n scrollbar: { size: 0, paddingStart: 0, paddingEnd: 0 }\n });\n const thumbRatio = getThumbRatio(sizes.viewport, sizes.content);\n const commonProps = {\n ...scrollbarProps,\n sizes,\n onSizesChange: setSizes,\n hasThumb: Boolean(thumbRatio > 0 && thumbRatio < 1),\n onThumbChange: (thumb) => thumbRef.current = thumb,\n onThumbPointerUp: () => pointerOffsetRef.current = 0,\n onThumbPointerDown: (pointerPos) => pointerOffsetRef.current = pointerPos\n };\n function getScrollPosition(pointerPos, dir) {\n return getScrollPositionFromPointer(pointerPos, pointerOffsetRef.current, sizes, dir);\n }\n if (orientation === \"horizontal\") {\n return /* @__PURE__ */ jsx(\n ScrollAreaScrollbarX,\n {\n ...commonProps,\n ref: forwardedRef,\n onThumbPositionChange: () => {\n if (context.viewport && thumbRef.current) {\n const scrollPos = context.viewport.scrollLeft;\n const offset = getThumbOffsetFromScroll(scrollPos, sizes, context.dir);\n thumbRef.current.style.transform = `translate3d(${offset}px, 0, 0)`;\n }\n },\n onWheelScroll: (scrollPos) => {\n if (context.viewport) context.viewport.scrollLeft = scrollPos;\n },\n onDragScroll: (pointerPos) => {\n if (context.viewport) {\n context.viewport.scrollLeft = getScrollPosition(pointerPos, context.dir);\n }\n }\n }\n );\n }\n if (orientation === \"vertical\") {\n return /* @__PURE__ */ jsx(\n ScrollAreaScrollbarY,\n {\n ...commonProps,\n ref: forwardedRef,\n onThumbPositionChange: () => {\n if (context.viewport && thumbRef.current) {\n const scrollPos = context.viewport.scrollTop;\n const offset = getThumbOffsetFromScroll(scrollPos, sizes);\n thumbRef.current.style.transform = `translate3d(0, ${offset}px, 0)`;\n }\n },\n onWheelScroll: (scrollPos) => {\n if (context.viewport) context.viewport.scrollTop = scrollPos;\n },\n onDragScroll: (pointerPos) => {\n if (context.viewport) context.viewport.scrollTop = getScrollPosition(pointerPos);\n }\n }\n );\n }\n return null;\n});\nvar ScrollAreaScrollbarX = React2.forwardRef((props, forwardedRef) => {\n const { sizes, onSizesChange, ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const [computedStyle, setComputedStyle] = React2.useState();\n const ref = React2.useRef(null);\n const composeRefs = useComposedRefs(forwardedRef, ref, context.onScrollbarXChange);\n React2.useEffect(() => {\n if (ref.current) setComputedStyle(getComputedStyle(ref.current));\n }, [ref]);\n return /* @__PURE__ */ jsx(\n ScrollAreaScrollbarImpl,\n {\n \"data-orientation\": \"horizontal\",\n ...scrollbarProps,\n ref: composeRefs,\n sizes,\n style: {\n bottom: 0,\n left: context.dir === \"rtl\" ? \"var(--radix-scroll-area-corner-width)\" : 0,\n right: context.dir === \"ltr\" ? \"var(--radix-scroll-area-corner-width)\" : 0,\n [\"--radix-scroll-area-thumb-width\"]: getThumbSize(sizes) + \"px\",\n ...props.style\n },\n onThumbPointerDown: (pointerPos) => props.onThumbPointerDown(pointerPos.x),\n onDragScroll: (pointerPos) => props.onDragScroll(pointerPos.x),\n onWheelScroll: (event, maxScrollPos) => {\n if (context.viewport) {\n const scrollPos = context.viewport.scrollLeft + event.deltaX;\n props.onWheelScroll(scrollPos);\n if (isScrollingWithinScrollbarBounds(scrollPos, maxScrollPos)) {\n event.preventDefault();\n }\n }\n },\n onResize: () => {\n if (ref.current && context.viewport && computedStyle) {\n onSizesChange({\n content: context.viewport.scrollWidth,\n viewport: context.viewport.offsetWidth,\n scrollbar: {\n size: ref.current.clientWidth,\n paddingStart: toInt(computedStyle.paddingLeft),\n paddingEnd: toInt(computedStyle.paddingRight)\n }\n });\n }\n }\n }\n );\n});\nvar ScrollAreaScrollbarY = React2.forwardRef((props, forwardedRef) => {\n const { sizes, onSizesChange, ...scrollbarProps } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, props.__scopeScrollArea);\n const [computedStyle, setComputedStyle] = React2.useState();\n const ref = React2.useRef(null);\n const composeRefs = useComposedRefs(forwardedRef, ref, context.onScrollbarYChange);\n React2.useEffect(() => {\n if (ref.current) setComputedStyle(getComputedStyle(ref.current));\n }, [ref]);\n return /* @__PURE__ */ jsx(\n ScrollAreaScrollbarImpl,\n {\n \"data-orientation\": \"vertical\",\n ...scrollbarProps,\n ref: composeRefs,\n sizes,\n style: {\n top: 0,\n right: context.dir === \"ltr\" ? 0 : void 0,\n left: context.dir === \"rtl\" ? 0 : void 0,\n bottom: \"var(--radix-scroll-area-corner-height)\",\n [\"--radix-scroll-area-thumb-height\"]: getThumbSize(sizes) + \"px\",\n ...props.style\n },\n onThumbPointerDown: (pointerPos) => props.onThumbPointerDown(pointerPos.y),\n onDragScroll: (pointerPos) => props.onDragScroll(pointerPos.y),\n onWheelScroll: (event, maxScrollPos) => {\n if (context.viewport) {\n const scrollPos = context.viewport.scrollTop + event.deltaY;\n props.onWheelScroll(scrollPos);\n if (isScrollingWithinScrollbarBounds(scrollPos, maxScrollPos)) {\n event.preventDefault();\n }\n }\n },\n onResize: () => {\n if (ref.current && context.viewport && computedStyle) {\n onSizesChange({\n content: context.viewport.scrollHeight,\n viewport: context.viewport.offsetHeight,\n scrollbar: {\n size: ref.current.clientHeight,\n paddingStart: toInt(computedStyle.paddingTop),\n paddingEnd: toInt(computedStyle.paddingBottom)\n }\n });\n }\n }\n }\n );\n});\nvar [ScrollbarProvider, useScrollbarContext] = createScrollAreaContext(SCROLLBAR_NAME);\nvar ScrollAreaScrollbarImpl = React2.forwardRef((props, forwardedRef) => {\n const {\n __scopeScrollArea,\n sizes,\n hasThumb,\n onThumbChange,\n onThumbPointerUp,\n onThumbPointerDown,\n onThumbPositionChange,\n onDragScroll,\n onWheelScroll,\n onResize,\n ...scrollbarProps\n } = props;\n const context = useScrollAreaContext(SCROLLBAR_NAME, __scopeScrollArea);\n const [scrollbar, setScrollbar] = React2.useState(null);\n const composeRefs = useComposedRefs(forwardedRef, (node) => setScrollbar(node));\n const rectRef = React2.useRef(null);\n const prevWebkitUserSelectRef = React2.useRef(\"\");\n const viewport = context.viewport;\n const maxScrollPos = sizes.content - sizes.viewport;\n const handleWheelScroll = useCallbackRef(onWheelScroll);\n const handleThumbPositionChange = useCallbackRef(onThumbPositionChange);\n const handleResize = useDebounceCallback(onResize, 10);\n function handleDragScroll(event) {\n if (rectRef.current) {\n const x = event.clientX - rectRef.current.left;\n const y = event.clientY - rectRef.current.top;\n onDragScroll({ x, y });\n }\n }\n React2.useEffect(() => {\n const handleWheel = (event) => {\n const element = event.target;\n const isScrollbarWheel = scrollbar?.contains(element);\n if (isScrollbarWheel) handleWheelScroll(event, maxScrollPos);\n };\n document.addEventListener(\"wheel\", handleWheel, { passive: false });\n return () => document.removeEventListener(\"wheel\", handleWheel, { passive: false });\n }, [viewport, scrollbar, maxScrollPos, handleWheelScroll]);\n React2.useEffect(handleThumbPositionChange, [sizes, handleThumbPositionChange]);\n useResizeObserver(scrollbar, handleResize);\n useResizeObserver(context.content, handleResize);\n return /* @__PURE__ */ jsx(\n ScrollbarProvider,\n {\n scope: __scopeScrollArea,\n scrollbar,\n hasThumb,\n onThumbChange: useCallbackRef(onThumbChange),\n onThumbPointerUp: useCallbackRef(onThumbPointerUp),\n onThumbPositionChange: handleThumbPositionChange,\n onThumbPointerDown: useCallbackRef(onThumbPointerDown),\n children: /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...scrollbarProps,\n ref: composeRefs,\n style: { position: \"absolute\", ...scrollbarProps.style },\n onPointerDown: composeEventHandlers(props.onPointerDown, (event) => {\n const mainPointer = 0;\n if (event.button === mainPointer) {\n const element = event.target;\n element.setPointerCapture(event.pointerId);\n rectRef.current = scrollbar.getBoundingClientRect();\n prevWebkitUserSelectRef.current = document.body.style.webkitUserSelect;\n document.body.style.webkitUserSelect = \"none\";\n if (context.viewport) context.viewport.style.scrollBehavior = \"auto\";\n handleDragScroll(event);\n }\n }),\n onPointerMove: composeEventHandlers(props.onPointerMove, handleDragScroll),\n onPointerUp: composeEventHandlers(props.onPointerUp, (event) => {\n const element = event.target;\n if (element.hasPointerCapture(event.pointerId)) {\n element.releasePointerCapture(event.pointerId);\n }\n document.body.style.webkitUserSelect = prevWebkitUserSelectRef.current;\n if (context.viewport) context.viewport.style.scrollBehavior = \"\";\n rectRef.current = null;\n })\n }\n )\n }\n );\n});\nvar THUMB_NAME = \"ScrollAreaThumb\";\nvar ScrollAreaThumb = React2.forwardRef(\n (props, forwardedRef) => {\n const { forceMount, ...thumbProps } = props;\n const scrollbarContext = useScrollbarContext(THUMB_NAME, props.__scopeScrollArea);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || scrollbarContext.hasThumb, children: /* @__PURE__ */ jsx(ScrollAreaThumbImpl, { ref: forwardedRef, ...thumbProps }) });\n }\n);\nvar ScrollAreaThumbImpl = React2.forwardRef(\n (props, forwardedRef) => {\n const { __scopeScrollArea, style, ...thumbProps } = props;\n const scrollAreaContext = useScrollAreaContext(THUMB_NAME, __scopeScrollArea);\n const scrollbarContext = useScrollbarContext(THUMB_NAME, __scopeScrollArea);\n const { onThumbPositionChange } = scrollbarContext;\n const composedRef = useComposedRefs(\n forwardedRef,\n (node) => scrollbarContext.onThumbChange(node)\n );\n const removeUnlinkedScrollListenerRef = React2.useRef(void 0);\n const debounceScrollEnd = useDebounceCallback(() => {\n if (removeUnlinkedScrollListenerRef.current) {\n removeUnlinkedScrollListenerRef.current();\n removeUnlinkedScrollListenerRef.current = void 0;\n }\n }, 100);\n React2.useEffect(() => {\n const viewport = scrollAreaContext.viewport;\n if (viewport) {\n const handleScroll = () => {\n debounceScrollEnd();\n if (!removeUnlinkedScrollListenerRef.current) {\n const listener = addUnlinkedScrollListener(viewport, onThumbPositionChange);\n removeUnlinkedScrollListenerRef.current = listener;\n onThumbPositionChange();\n }\n };\n onThumbPositionChange();\n viewport.addEventListener(\"scroll\", handleScroll);\n return () => viewport.removeEventListener(\"scroll\", handleScroll);\n }\n }, [scrollAreaContext.viewport, debounceScrollEnd, onThumbPositionChange]);\n return /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-state\": scrollbarContext.hasThumb ? \"visible\" : \"hidden\",\n ...thumbProps,\n ref: composedRef,\n style: {\n width: \"var(--radix-scroll-area-thumb-width)\",\n height: \"var(--radix-scroll-area-thumb-height)\",\n ...style\n },\n onPointerDownCapture: composeEventHandlers(props.onPointerDownCapture, (event) => {\n const thumb = event.target;\n const thumbRect = thumb.getBoundingClientRect();\n const x = event.clientX - thumbRect.left;\n const y = event.clientY - thumbRect.top;\n scrollbarContext.onThumbPointerDown({ x, y });\n }),\n onPointerUp: composeEventHandlers(props.onPointerUp, scrollbarContext.onThumbPointerUp)\n }\n );\n }\n);\nScrollAreaThumb.displayName = THUMB_NAME;\nvar CORNER_NAME = \"ScrollAreaCorner\";\nvar ScrollAreaCorner = React2.forwardRef(\n (props, forwardedRef) => {\n const context = useScrollAreaContext(CORNER_NAME, props.__scopeScrollArea);\n const hasBothScrollbarsVisible = Boolean(context.scrollbarX && context.scrollbarY);\n const hasCorner = context.type !== \"scroll\" && hasBothScrollbarsVisible;\n return hasCorner ? /* @__PURE__ */ jsx(ScrollAreaCornerImpl, { ...props, ref: forwardedRef }) : null;\n }\n);\nScrollAreaCorner.displayName = CORNER_NAME;\nvar ScrollAreaCornerImpl = React2.forwardRef((props, forwardedRef) => {\n const { __scopeScrollArea, ...cornerProps } = props;\n const context = useScrollAreaContext(CORNER_NAME, __scopeScrollArea);\n const [width, setWidth] = React2.useState(0);\n const [height, setHeight] = React2.useState(0);\n const hasSize = Boolean(width && height);\n useResizeObserver(context.scrollbarX, () => {\n const height2 = context.scrollbarX?.offsetHeight || 0;\n context.onCornerHeightChange(height2);\n setHeight(height2);\n });\n useResizeObserver(context.scrollbarY, () => {\n const width2 = context.scrollbarY?.offsetWidth || 0;\n context.onCornerWidthChange(width2);\n setWidth(width2);\n });\n return hasSize ? /* @__PURE__ */ jsx(\n Primitive.div,\n {\n ...cornerProps,\n ref: forwardedRef,\n style: {\n width,\n height,\n position: \"absolute\",\n right: context.dir === \"ltr\" ? 0 : void 0,\n left: context.dir === \"rtl\" ? 0 : void 0,\n bottom: 0,\n ...props.style\n }\n }\n ) : null;\n});\nfunction toInt(value) {\n return value ? parseInt(value, 10) : 0;\n}\nfunction getThumbRatio(viewportSize, contentSize) {\n const ratio = viewportSize / contentSize;\n return isNaN(ratio) ? 0 : ratio;\n}\nfunction getThumbSize(sizes) {\n const ratio = getThumbRatio(sizes.viewport, sizes.content);\n const scrollbarPadding = sizes.scrollbar.paddingStart + sizes.scrollbar.paddingEnd;\n const thumbSize = (sizes.scrollbar.size - scrollbarPadding) * ratio;\n return Math.max(thumbSize, 18);\n}\nfunction getScrollPositionFromPointer(pointerPos, pointerOffset, sizes, dir = \"ltr\") {\n const thumbSizePx = getThumbSize(sizes);\n const thumbCenter = thumbSizePx / 2;\n const offset = pointerOffset || thumbCenter;\n const thumbOffsetFromEnd = thumbSizePx - offset;\n const minPointerPos = sizes.scrollbar.paddingStart + offset;\n const maxPointerPos = sizes.scrollbar.size - sizes.scrollbar.paddingEnd - thumbOffsetFromEnd;\n const maxScrollPos = sizes.content - sizes.viewport;\n const scrollRange = dir === \"ltr\" ? [0, maxScrollPos] : [maxScrollPos * -1, 0];\n const interpolate = linearScale([minPointerPos, maxPointerPos], scrollRange);\n return interpolate(pointerPos);\n}\nfunction getThumbOffsetFromScroll(scrollPos, sizes, dir = \"ltr\") {\n const thumbSizePx = getThumbSize(sizes);\n const scrollbarPadding = sizes.scrollbar.paddingStart + sizes.scrollbar.paddingEnd;\n const scrollbar = sizes.scrollbar.size - scrollbarPadding;\n const maxScrollPos = sizes.content - sizes.viewport;\n const maxThumbPos = scrollbar - thumbSizePx;\n const scrollClampRange = dir === \"ltr\" ? [0, maxScrollPos] : [maxScrollPos * -1, 0];\n const scrollWithoutMomentum = clamp(scrollPos, scrollClampRange);\n const interpolate = linearScale([0, maxScrollPos], [0, maxThumbPos]);\n return interpolate(scrollWithoutMomentum);\n}\nfunction linearScale(input, output) {\n return (value) => {\n if (input[0] === input[1] || output[0] === output[1]) return output[0];\n const ratio = (output[1] - output[0]) / (input[1] - input[0]);\n return output[0] + ratio * (value - input[0]);\n };\n}\nfunction isScrollingWithinScrollbarBounds(scrollPos, maxScrollPos) {\n return scrollPos > 0 && scrollPos < maxScrollPos;\n}\nvar addUnlinkedScrollListener = (node, handler = () => {\n}) => {\n let prevPosition = { left: node.scrollLeft, top: node.scrollTop };\n let rAF = 0;\n (function loop() {\n const position = { left: node.scrollLeft, top: node.scrollTop };\n const isHorizontalScroll = prevPosition.left !== position.left;\n const isVerticalScroll = prevPosition.top !== position.top;\n if (isHorizontalScroll || isVerticalScroll) handler();\n prevPosition = position;\n rAF = window.requestAnimationFrame(loop);\n })();\n return () => window.cancelAnimationFrame(rAF);\n};\nfunction useDebounceCallback(callback, delay) {\n const handleCallback = useCallbackRef(callback);\n const debounceTimerRef = React2.useRef(0);\n React2.useEffect(() => () => window.clearTimeout(debounceTimerRef.current), []);\n return React2.useCallback(() => {\n window.clearTimeout(debounceTimerRef.current);\n debounceTimerRef.current = window.setTimeout(handleCallback, delay);\n }, [handleCallback, delay]);\n}\nfunction useResizeObserver(element, onResize) {\n const handleResize = useCallbackRef(onResize);\n useLayoutEffect(() => {\n let rAF = 0;\n if (element) {\n const resizeObserver = new ResizeObserver(() => {\n cancelAnimationFrame(rAF);\n rAF = window.requestAnimationFrame(handleResize);\n });\n resizeObserver.observe(element);\n return () => {\n window.cancelAnimationFrame(rAF);\n resizeObserver.unobserve(element);\n };\n }\n }, [element, handleResize]);\n}\nvar Root = ScrollArea;\nvar Viewport = ScrollAreaViewport;\nvar Scrollbar = ScrollAreaScrollbar;\nvar Thumb = ScrollAreaThumb;\nvar Corner = ScrollAreaCorner;\nexport {\n Corner,\n Root,\n ScrollArea,\n ScrollAreaCorner,\n ScrollAreaScrollbar,\n ScrollAreaThumb,\n ScrollAreaViewport,\n Scrollbar,\n Thumb,\n Viewport,\n createScrollAreaScope\n};\n//# sourceMappingURL=index.mjs.map\n","// packages/core/number/src/number.ts\nfunction clamp(value, [min, max]) {\n return Math.min(max, Math.max(min, value));\n}\nexport {\n clamp\n};\n//# sourceMappingURL=index.mjs.map\n","import { cn } from \"@/lib/utils\";\nimport * as ScrollAreaPrimitive from \"@radix-ui/react-scroll-area\";\nimport React from \"react\";\n\nfunction ScrollArea({\n\tclassName,\n\tchildren,\n\t...props\n}: React.ComponentProps<typeof ScrollAreaPrimitive.Root>) {\n\treturn (\n\t\t<ScrollAreaPrimitive.Root\n\t\t\tdata-slot=\"scroll-area\"\n\t\t\tclassName={cn(\"relative\", className)}\n\t\t\t{...props}\n\t\t>\n\t\t\t<ScrollAreaPrimitive.Viewport\n\t\t\t\tdata-slot=\"scroll-area-viewport\"\n\t\t\t\tclassName=\"ring-ring/10 dark:ring-ring/20 dark:outline-ring/40 outline-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] focus-visible:ring-4 focus-visible:outline-1\"\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</ScrollAreaPrimitive.Viewport>\n\t\t\t<ScrollBar />\n\t\t\t<ScrollAreaPrimitive.Corner />\n\t\t</ScrollAreaPrimitive.Root>\n\t);\n}\n\nfunction ScrollBar({\n\tclassName,\n\torientation = \"vertical\",\n\t...props\n}: React.ComponentProps<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>) {\n\treturn (\n\t\t<ScrollAreaPrimitive.ScrollAreaScrollbar\n\t\t\tdata-slot=\"scroll-area-scrollbar\"\n\t\t\torientation={orientation}\n\t\t\tclassName={cn(\n\t\t\t\t\"flex touch-none p-px transition-colors select-none\",\n\t\t\t\torientation === \"vertical\" && \"h-full w-2.5 border-l border-l-transparent\",\n\t\t\t\torientation === \"horizontal\" && \"h-2.5 flex-col border-t border-t-transparent\",\n\t\t\t\tclassName,\n\t\t\t)}\n\t\t\t{...props}\n\t\t>\n\t\t\t<ScrollAreaPrimitive.ScrollAreaThumb\n\t\t\t\tdata-slot=\"scroll-area-thumb\"\n\t\t\t\tclassName=\"bg-border relative flex-1 rounded-full\"\n\t\t\t/>\n\t\t</ScrollAreaPrimitive.ScrollAreaScrollbar>\n\t);\n}\n\nexport { ScrollArea, ScrollBar };\n"],"names":["SCROLL_AREA_NAME","createScrollAreaContext","createScrollAreaScope","createContextScope","ScrollAreaProvider","useScrollAreaContext","ScrollArea","React2","forwardRef","props","forwardedRef","__scopeScrollArea","type","dir","scrollHideDelay","scrollAreaProps","scrollArea","setScrollArea","useState","viewport","setViewport","content","setContent","scrollbarX","setScrollbarX","scrollbarY","setScrollbarY","cornerWidth","setCornerWidth","cornerHeight","setCornerHeight","scrollbarXEnabled","setScrollbarXEnabled","scrollbarYEnabled","setScrollbarYEnabled","composedRefs","useComposedRefs","node","direction","useDirection","jsx","scope","onViewportChange","onContentChange","onScrollbarXChange","onScrollbarXEnabledChange","onScrollbarYChange","onScrollbarYEnabledChange","onCornerWidthChange","onCornerHeightChange","children","Primitive","div","ref","style","position","displayName","VIEWPORT_NAME","ScrollAreaViewport","nonce","viewportProps","context","useRef","jsxs","Fragment","dangerouslySetInnerHTML","__html","overflowX","overflowY","minWidth","display","SCROLLBAR_NAME","ScrollAreaScrollbar","forceMount","scrollbarProps","isHorizontal","orientation","useEffect","ScrollAreaScrollbarHover","ScrollAreaScrollbarScroll","ScrollAreaScrollbarAuto","ScrollAreaScrollbarVisible","visible","setVisible","hideTimer","handlePointerEnter","window","clearTimeout","handlePointerLeave","setTimeout","addEventListener","removeEventListener","Presence","present","debounceScrollEnd","useDebounceCallback","send","state","hidden","SCROLL","scrolling","SCROLL_END","POINTER_ENTER","interacting","POINTER_LEAVE","idle","HIDE","scrollDirection","prevScrollPos","handleScroll","scrollPos","onPointerEnter","composeEventHandlers","onPointerLeave","handleResize","isOverflowX","offsetWidth","scrollWidth","isOverflowY","offsetHeight","scrollHeight","useResizeObserver","thumbRef","pointerOffsetRef","sizes","setSizes","scrollbar","size","paddingStart","paddingEnd","thumbRatio","getThumbRatio","commonProps","onSizesChange","hasThumb","Boolean","onThumbChange","thumb","current","onThumbPointerUp","onThumbPointerDown","pointerPos","getScrollPosition","pointerOffset","thumbSizePx","getThumbSize","thumbCenter","offset","thumbOffsetFromEnd","minPointerPos","maxPointerPos","maxScrollPos","scrollRange","linearScale","interpolate","getScrollPositionFromPointer","ScrollAreaScrollbarX","onThumbPositionChange","getThumbOffsetFromScroll","scrollLeft","transform","onWheelScroll","onDragScroll","ScrollAreaScrollbarY","scrollTop","computedStyle","setComputedStyle","composeRefs","getComputedStyle","ScrollAreaScrollbarImpl","bottom","left","right","x","event","deltaX","isScrollingWithinScrollbarBounds","preventDefault","onResize","clientWidth","toInt","paddingLeft","paddingRight","top","y","deltaY","clientHeight","paddingTop","paddingBottom","ScrollbarProvider","useScrollbarContext","setScrollbar","rectRef","prevWebkitUserSelectRef","handleWheelScroll","useCallbackRef","handleThumbPositionChange","handleDragScroll","clientX","clientY","handleWheel","element","target","isScrollbarWheel","contains","document","passive","onPointerDown","button","setPointerCapture","pointerId","getBoundingClientRect","body","webkitUserSelect","scrollBehavior","onPointerMove","onPointerUp","hasPointerCapture","releasePointerCapture","THUMB_NAME","ScrollAreaThumb","thumbProps","scrollbarContext","ScrollAreaThumbImpl","scrollAreaContext","composedRef","removeUnlinkedScrollListenerRef","listener","addUnlinkedScrollListener","width","height","onPointerDownCapture","thumbRect","CORNER_NAME","ScrollAreaCorner","hasBothScrollbarsVisible","ScrollAreaCornerImpl","cornerProps","setWidth","setHeight","hasSize","value","parseInt","viewportSize","contentSize","ratio","isNaN","scrollbarPadding","thumbSize","Math","max","maxThumbPos","scrollWithoutMomentum","min","clamp","input","output","handler","prevPosition","rAF","loop","isHorizontalScroll","isVerticalScroll","requestAnimationFrame","cancelAnimationFrame","callback","delay","handleCallback","debounceTimerRef","useCallback","useLayoutEffect","resizeObserver","ResizeObserver","observe","unobserve","Root","Viewport","Corner","className","React","createElement","ScrollAreaPrimitive","data-slot","cn","ScrollBar"],"mappings":"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","x_google_ignoreList":[0,1]}
@@ -1,2 +0,0 @@
1
- import*as e from"@radix-ui/react-select";import*as t from"react";import{c as a}from"./utils-BctauAA9.mjs";import{C as s}from"./check-CimnOyD7.mjs";import{C as r}from"./chevron-down-D3fvbjxE.mjs";import{c as n}from"./createLucideIcon-L-tld2uc.mjs";const l=n("ChevronUp",[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]]);function o({...a}){return t.createElement(e.Root,{"data-slot":"select",...a})}function i({...a}){return t.createElement(e.Group,{"data-slot":"select-group",...a})}function c({...a}){return t.createElement(e.Value,{"data-slot":"select-value",...a})}function d({className:s,size:n="default",children:l,...o}){return t.createElement(e.Trigger,{"data-slot":"select-trigger","data-size":n,className:a("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",s),...o},l,t.createElement(e.Icon,{asChild:!0},t.createElement(r,{className:"size-4 opacity-50"})))}function m({className:s,children:r,position:n="popper",...l}){return t.createElement(e.Portal,null,t.createElement(e.Content,{"data-slot":"select-content",className:a("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md","popper"===n&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",s),position:n,...l},t.createElement(g,null),t.createElement(e.Viewport,{className:a("p-1","popper"===n&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1")},r),t.createElement(v,null)))}function u({className:s,...r}){return t.createElement(e.Label,{"data-slot":"select-label",className:a("text-muted-foreground px-2 py-1.5 text-xs",s),...r})}function p({className:r,children:n,...l}){return t.createElement(e.Item,{"data-slot":"select-item",className:a("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",r),...l},t.createElement("span",{className:"absolute right-2 flex size-3.5 items-center justify-center"},t.createElement(e.ItemIndicator,null,t.createElement(s,{className:"size-4"}))),t.createElement(e.ItemText,null,n))}function f({className:s,...r}){return t.createElement(e.Separator,{"data-slot":"select-separator",className:a("bg-border pointer-events-none -mx-1 my-1 h-px",s),...r})}function g({className:s,...r}){return t.createElement(e.ScrollUpButton,{"data-slot":"select-scroll-up-button",className:a("flex cursor-default items-center justify-center py-1",s),...r},t.createElement(l,{className:"size-4"}))}function v({className:s,...n}){return t.createElement(e.ScrollDownButton,{"data-slot":"select-scroll-down-button",className:a("flex cursor-default items-center justify-center py-1",s),...n},t.createElement(r,{className:"size-4"}))}export{o as S,m as a,i as b,p as c,u as d,v as e,g as f,f as g,d as h,c as i};
2
- //# sourceMappingURL=select-BR6_N_Yo.mjs.map
@@ -1,2 +0,0 @@
1
- import{c as r}from"./utils-BctauAA9.mjs";import*as t from"react";import a from"react";import{P as o}from"./index-w9bxia3O.mjs";import{jsx as i}from"react/jsx-runtime";var e="horizontal",n=["horizontal","vertical"],l=t.forwardRef((r,t)=>{const{decorative:a,orientation:l=e,...s}=r,c=function(r){return n.includes(r)}(l)?l:e,m=a?{role:"none"}:{"aria-orientation":"vertical"===c?c:void 0,role:"separator"};return i(o.div,{"data-orientation":c,...m,...s,ref:t})});l.displayName="Separator";var s=l;function c({className:t,orientation:o="horizontal",decorative:i=!0,...e}){return a.createElement(s,{"data-slot":"separator-root",decorative:i,orientation:o,className:r("bg-border shrink-0 data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",t),...e})}export{c as S};
2
- //# sourceMappingURL=separator-BB6-E9Z1.mjs.map
@@ -1,2 +0,0 @@
1
- import{c as e}from"./utils-BctauAA9.mjs";import t from"react";function a({className:a,...m}){return t.createElement("div",{"data-slot":"skeleton",className:e("bg-muted animate-pulse rounded-md",a),...m})}export{a as S};
2
- //# sourceMappingURL=skeleton-XPWWiaac.mjs.map