ivt 0.5.0 → 0.5.2

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 (245) hide show
  1. package/dist/accordion/index.mjs +15 -15
  2. package/dist/alert/index.mjs +2 -2
  3. package/dist/alert-dialog/index.mjs +17 -17
  4. package/dist/aspect-ratio/index.mjs +1 -1
  5. package/dist/aspect-ratio/index.mjs.map +1 -1
  6. package/dist/avatar/index.mjs +7 -7
  7. package/dist/badge/index.mjs +3 -3
  8. package/dist/base/index.d.ts +19 -2
  9. package/dist/base/index.mjs +46 -74
  10. package/dist/base/index.mjs.map +1 -1
  11. package/dist/breadcrumb/index.mjs +5 -5
  12. package/dist/button/index.mjs +3 -3
  13. package/dist/button-group/index.mjs +3 -3
  14. package/dist/calendar/index.mjs +9 -8
  15. package/dist/calendar/index.mjs.map +1 -1
  16. package/dist/card/index.mjs +4 -55
  17. package/dist/card/index.mjs.map +1 -1
  18. package/dist/carousel/index.mjs +4 -4
  19. package/dist/chart/index.mjs +15975 -15658
  20. package/dist/chart/index.mjs.map +1 -1
  21. package/dist/checkbox/index.mjs +16 -221
  22. package/dist/checkbox/index.mjs.map +1 -1
  23. package/dist/chunks/CalendarRange-cGKHXdiT.mjs +45 -0
  24. package/dist/chunks/CalendarRange-cGKHXdiT.mjs.map +1 -0
  25. package/dist/chunks/ComboboxField-BTKXl9y7.mjs +67 -0
  26. package/dist/chunks/ComboboxField-BTKXl9y7.mjs.map +1 -0
  27. package/dist/chunks/{Container-LlUz2Xf7.mjs → Container-BUT39dlc.mjs} +2 -2
  28. package/dist/chunks/{Container-LlUz2Xf7.mjs.map → Container-BUT39dlc.mjs.map} +1 -1
  29. package/dist/chunks/TooltipIndicator-EfXM1ogO.mjs +44 -0
  30. package/dist/chunks/TooltipIndicator-EfXM1ogO.mjs.map +1 -0
  31. package/dist/chunks/{_commonjsHelpers-CZIfjjiR.mjs → _commonjsHelpers-DCzDIER3.mjs} +1 -1
  32. package/dist/chunks/_commonjsHelpers-DCzDIER3.mjs.map +1 -0
  33. package/dist/chunks/{accordion-BBMhFkK5.mjs → accordion-BXurL6Pv.mjs} +11 -11
  34. package/dist/chunks/{accordion-BBMhFkK5.mjs.map → accordion-BXurL6Pv.mjs.map} +1 -1
  35. package/dist/chunks/{badge-CShT6Er8.mjs → badge-CpWQDnGV.mjs} +2 -2
  36. package/dist/chunks/{badge-CShT6Er8.mjs.map → badge-CpWQDnGV.mjs.map} +1 -1
  37. package/dist/chunks/{bundle-mjs-CXcNQyyo.mjs → bundle-mjs-C9OlPgmH.mjs} +1 -1
  38. package/dist/chunks/{bundle-mjs-CXcNQyyo.mjs.map → bundle-mjs-C9OlPgmH.mjs.map} +1 -1
  39. package/dist/chunks/{button-ay7E6KrE.mjs → button-BrmYbiY8.mjs} +2 -2
  40. package/dist/chunks/{button-ay7E6KrE.mjs.map → button-BrmYbiY8.mjs.map} +1 -1
  41. package/dist/chunks/{calendar-D98dWxWB.mjs → calendar-BQgywKTj.mjs} +8 -2641
  42. package/dist/chunks/calendar-BQgywKTj.mjs.map +1 -0
  43. package/dist/chunks/calendar-days-C_RzSweF.mjs +82 -0
  44. package/dist/chunks/calendar-days-C_RzSweF.mjs.map +1 -0
  45. package/dist/chunks/card-DeaeODxs.mjs +55 -0
  46. package/dist/chunks/card-DeaeODxs.mjs.map +1 -0
  47. package/dist/chunks/{check-M4AEcM3j.mjs → check-CP6BCwvU.mjs} +2 -2
  48. package/dist/chunks/{check-M4AEcM3j.mjs.map → check-CP6BCwvU.mjs.map} +1 -1
  49. package/dist/chunks/checkbox-BvnI-3Q6.mjs +219 -0
  50. package/dist/chunks/checkbox-BvnI-3Q6.mjs.map +1 -0
  51. package/dist/chunks/{chevron-down-BgIYlWhk.mjs → chevron-down-cCIwKwmA.mjs} +2 -2
  52. package/dist/chunks/{chevron-down-BgIYlWhk.mjs.map → chevron-down-cCIwKwmA.mjs.map} +1 -1
  53. package/dist/chunks/{chevron-left-wvVA3SWH.mjs → chevron-left-BPWGf-Mt.mjs} +2 -2
  54. package/dist/chunks/{chevron-left-wvVA3SWH.mjs.map → chevron-left-BPWGf-Mt.mjs.map} +1 -1
  55. package/dist/chunks/{chevron-right-aTufSnLl.mjs → chevron-right-Bk4Jys-R.mjs} +2 -2
  56. package/dist/chunks/{chevron-right-aTufSnLl.mjs.map → chevron-right-Bk4Jys-R.mjs.map} +1 -1
  57. package/dist/chunks/{chevrons-up-down-TytmUcIx.mjs → chevrons-up-down-BDmpiJmb.mjs} +2 -2
  58. package/dist/chunks/{chevrons-up-down-TytmUcIx.mjs.map → chevrons-up-down-BDmpiJmb.mjs.map} +1 -1
  59. package/dist/chunks/{command-OnnopJEP.mjs → command-CTTPLJSd.mjs} +54 -64
  60. package/dist/chunks/command-CTTPLJSd.mjs.map +1 -0
  61. package/dist/chunks/{createLucideIcon-DwD3HsEs.mjs → createLucideIcon-rdK7ReAV.mjs} +1 -1
  62. package/dist/chunks/{createLucideIcon-DwD3HsEs.mjs.map → createLucideIcon-rdK7ReAV.mjs.map} +1 -1
  63. package/dist/chunks/{pt-BR-on-YW6Ay.mjs → date-BF0VPeD6.mjs} +62 -97
  64. package/dist/chunks/date-BF0VPeD6.mjs.map +1 -0
  65. package/dist/chunks/{dialog-D-h9t9_b.mjs → dialog-BZ1Bem1X.mjs} +22 -21
  66. package/dist/chunks/dialog-BZ1Bem1X.mjs.map +1 -0
  67. package/dist/chunks/{ellipsis-x68Orkqp.mjs → ellipsis-CvvEpdNm.mjs} +2 -2
  68. package/dist/chunks/{ellipsis-x68Orkqp.mjs.map → ellipsis-CvvEpdNm.mjs.map} +1 -1
  69. package/dist/chunks/form-CLuajH9A.mjs +2223 -0
  70. package/dist/chunks/form-CLuajH9A.mjs.map +1 -0
  71. package/dist/chunks/format-DvB2IToG.mjs +2636 -0
  72. package/dist/chunks/format-DvB2IToG.mjs.map +1 -0
  73. package/dist/chunks/format-numbers-DtAwKNYo.mjs +55 -0
  74. package/dist/chunks/format-numbers-DtAwKNYo.mjs.map +1 -0
  75. package/dist/chunks/{hover-card-DXAGq71O.mjs → hover-card-Cwtai5wK.mjs} +11 -11
  76. package/dist/chunks/{hover-card-DXAGq71O.mjs.map → hover-card-Cwtai5wK.mjs.map} +1 -1
  77. package/dist/chunks/{index-BLAYpkjT.mjs → index-2wUt7vgM.mjs} +5 -5
  78. package/dist/chunks/{index-BLAYpkjT.mjs.map → index-2wUt7vgM.mjs.map} +1 -1
  79. package/dist/chunks/{index-DRdSNmMB.mjs → index-9Ejb37i6.mjs} +2 -2
  80. package/dist/chunks/{index-DRdSNmMB.mjs.map → index-9Ejb37i6.mjs.map} +1 -1
  81. package/dist/chunks/{index-B7kZbHfd.mjs → index-B0fljwsr.mjs} +1 -1
  82. package/dist/chunks/{index-B7kZbHfd.mjs.map → index-B0fljwsr.mjs.map} +1 -1
  83. package/dist/chunks/{index-BW3aCz7h.mjs → index-B1HovDby.mjs} +1 -1
  84. package/dist/chunks/{index-BW3aCz7h.mjs.map → index-B1HovDby.mjs.map} +1 -1
  85. package/dist/chunks/{index-BtRo1b5t.mjs → index-BpfkkunI.mjs} +3 -3
  86. package/dist/chunks/{index-BtRo1b5t.mjs.map → index-BpfkkunI.mjs.map} +1 -1
  87. package/dist/chunks/{index-DfjpL9Sk.mjs → index-C5dQnmlR.mjs} +9 -9
  88. package/dist/chunks/{index-DfjpL9Sk.mjs.map → index-C5dQnmlR.mjs.map} +1 -1
  89. package/dist/chunks/{index-C5cl9B-D.mjs → index-C7WDAsMc.mjs} +2 -2
  90. package/dist/chunks/{index-C5cl9B-D.mjs.map → index-C7WDAsMc.mjs.map} +1 -1
  91. package/dist/chunks/{index-BdYD9SA8.mjs → index-C8YG6ZVI.mjs} +1 -1
  92. package/dist/chunks/{index-BdYD9SA8.mjs.map → index-C8YG6ZVI.mjs.map} +1 -1
  93. package/dist/chunks/{index-BBONAxxm.mjs → index-CJIjOsdz.mjs} +1 -1
  94. package/dist/chunks/{index-BBONAxxm.mjs.map → index-CJIjOsdz.mjs.map} +1 -1
  95. package/dist/chunks/{index-DpqIXFxh.mjs → index-CN-1P6oe.mjs} +9 -9
  96. package/dist/chunks/{index-DpqIXFxh.mjs.map → index-CN-1P6oe.mjs.map} +1 -1
  97. package/dist/chunks/{index-C45e7-3X.mjs → index-CcfhA3fh.mjs} +11 -11
  98. package/dist/chunks/{index-C45e7-3X.mjs.map → index-CcfhA3fh.mjs.map} +1 -1
  99. package/dist/chunks/{index-CMbJ1I29.mjs → index-CdbLHZ-v.mjs} +2 -2
  100. package/dist/chunks/{index-CMbJ1I29.mjs.map → index-CdbLHZ-v.mjs.map} +1 -1
  101. package/dist/chunks/{index-BBC4sR1G.mjs → index-D4Y6_Jit.mjs} +5 -5
  102. package/dist/chunks/{index-BBC4sR1G.mjs.map → index-D4Y6_Jit.mjs.map} +1 -1
  103. package/dist/chunks/{index-Db1acFFW.mjs → index-DEFfOyUE.mjs} +1 -1
  104. package/dist/chunks/{index-Db1acFFW.mjs.map → index-DEFfOyUE.mjs.map} +1 -1
  105. package/dist/chunks/{index-Bs4nZmb7.mjs → index-DFMyqwc8.mjs} +2 -2
  106. package/dist/chunks/{index-Bs4nZmb7.mjs.map → index-DFMyqwc8.mjs.map} +1 -1
  107. package/dist/chunks/{index-D5pght6h.mjs → index-DNPAHxPV.mjs} +1 -1
  108. package/dist/chunks/{index-D5pght6h.mjs.map → index-DNPAHxPV.mjs.map} +1 -1
  109. package/dist/chunks/{index-qOZvnMSQ.mjs → index-DkhtbUNc.mjs} +1 -1
  110. package/dist/chunks/{index-qOZvnMSQ.mjs.map → index-DkhtbUNc.mjs.map} +1 -1
  111. package/dist/chunks/{index-DU7dxusa.mjs → index-Dpe5NTKJ.mjs} +7 -7
  112. package/dist/chunks/{index-DU7dxusa.mjs.map → index-Dpe5NTKJ.mjs.map} +1 -1
  113. package/dist/chunks/{index-CLb4rDzh.mjs → index-DymROPqb.mjs} +1 -1
  114. package/dist/chunks/{index-CLb4rDzh.mjs.map → index-DymROPqb.mjs.map} +1 -1
  115. package/dist/chunks/{index-BxaETqU9.mjs → index-LOIUbp1N.mjs} +3 -3
  116. package/dist/chunks/{index-BxaETqU9.mjs.map → index-LOIUbp1N.mjs.map} +1 -1
  117. package/dist/chunks/{index-C9twRC0t.mjs → index-N54PlKgO.mjs} +1 -1
  118. package/dist/chunks/{index-C9twRC0t.mjs.map → index-N54PlKgO.mjs.map} +1 -1
  119. package/dist/chunks/{index-BsVg0u5v.mjs → index-SHhYuecD.mjs} +1 -1
  120. package/dist/chunks/{index-BsVg0u5v.mjs.map → index-SHhYuecD.mjs.map} +1 -1
  121. package/dist/chunks/{index-CVGBR4nU.mjs → index-eIYpJRu_.mjs} +15 -15
  122. package/dist/chunks/{index-CVGBR4nU.mjs.map → index-eIYpJRu_.mjs.map} +1 -1
  123. package/dist/chunks/{input-CqipwgOY.mjs → input-BRRi8JbN.mjs} +2 -2
  124. package/dist/chunks/{input-CqipwgOY.mjs.map → input-BRRi8JbN.mjs.map} +1 -1
  125. package/dist/chunks/{label-Cx4XtbXv.mjs → label-DyMdyPfF.mjs} +3 -3
  126. package/dist/chunks/{label-Cx4XtbXv.mjs.map → label-DyMdyPfF.mjs.map} +1 -1
  127. package/dist/chunks/{loader-circle-CfhWFS-M.mjs → loader-circle-DlDf3jDF.mjs} +2 -2
  128. package/dist/chunks/{loader-circle-CfhWFS-M.mjs.map → loader-circle-DlDf3jDF.mjs.map} +1 -1
  129. package/dist/chunks/multi-select-BAp66njF.mjs +277 -0
  130. package/dist/chunks/multi-select-BAp66njF.mjs.map +1 -0
  131. package/dist/chunks/{pagination-CzDSUdbY.mjs → pagination-CoQF8H-y.mjs} +6 -6
  132. package/dist/chunks/{pagination-CzDSUdbY.mjs.map → pagination-CoQF8H-y.mjs.map} +1 -1
  133. package/dist/chunks/{popover-BFcKYAot.mjs → popover-Bx3Ak-qS.mjs} +13 -13
  134. package/dist/chunks/{popover-BFcKYAot.mjs.map → popover-Bx3Ak-qS.mjs.map} +1 -1
  135. package/dist/chunks/{progress-Cm71BOo_.mjs → progress-Unv1Ywou.mjs} +4 -4
  136. package/dist/chunks/{progress-Cm71BOo_.mjs.map → progress-Unv1Ywou.mjs.map} +1 -1
  137. package/dist/chunks/{scroll-area-B9cWImdG.mjs → scroll-area-Bu_eg6tq.mjs} +11 -11
  138. package/dist/chunks/{scroll-area-B9cWImdG.mjs.map → scroll-area-Bu_eg6tq.mjs.map} +1 -1
  139. package/dist/chunks/{select-CQBb4aB3.mjs → select-VgTkuC8i.mjs} +5 -5
  140. package/dist/chunks/{select-CQBb4aB3.mjs.map → select-VgTkuC8i.mjs.map} +1 -1
  141. package/dist/chunks/{separator-D6zbGj0R.mjs → separator-ChTsmHyH.mjs} +3 -3
  142. package/dist/chunks/{separator-D6zbGj0R.mjs.map → separator-ChTsmHyH.mjs.map} +1 -1
  143. package/dist/chunks/{sheet-C0AR_o6p.mjs → sheet-CX9dlZuk.mjs} +4 -4
  144. package/dist/chunks/{sheet-C0AR_o6p.mjs.map → sheet-CX9dlZuk.mjs.map} +1 -1
  145. package/dist/chunks/{skeleton-Bd9uEq1R.mjs → skeleton-TvPSLZ-7.mjs} +2 -2
  146. package/dist/chunks/{skeleton-Bd9uEq1R.mjs.map → skeleton-TvPSLZ-7.mjs.map} +1 -1
  147. package/dist/chunks/{sortable-CTcnqQX_.mjs → sortable-DQ0ESvYM.mjs} +3 -3
  148. package/dist/chunks/{sortable-CTcnqQX_.mjs.map → sortable-DQ0ESvYM.mjs.map} +1 -1
  149. package/dist/chunks/{table-C829r3Zv.mjs → table-5dae4DKj.mjs} +2 -2
  150. package/dist/chunks/{table-C829r3Zv.mjs.map → table-5dae4DKj.mjs.map} +1 -1
  151. package/dist/chunks/{textarea-CD6y9GNW.mjs → textarea-C6sc9FNI.mjs} +2 -2
  152. package/dist/chunks/{textarea-CD6y9GNW.mjs.map → textarea-C6sc9FNI.mjs.map} +1 -1
  153. package/dist/chunks/{toggle-C8fZP79W.mjs → toggle-SS3ISGud.mjs} +5 -5
  154. package/dist/chunks/{toggle-C8fZP79W.mjs.map → toggle-SS3ISGud.mjs.map} +1 -1
  155. package/dist/chunks/{tooltip-R49U1IPs.mjs → tooltip-WyVePJR7.mjs} +13 -13
  156. package/dist/chunks/{tooltip-R49U1IPs.mjs.map → tooltip-WyVePJR7.mjs.map} +1 -1
  157. package/dist/chunks/{trash-2-ZC16Df_k.mjs → trash-2-Dp8LY8vw.mjs} +2 -2
  158. package/dist/chunks/{trash-2-ZC16Df_k.mjs.map → trash-2-Dp8LY8vw.mjs.map} +1 -1
  159. package/dist/chunks/triangle-alert-CpLMma6K.mjs +29 -0
  160. package/dist/chunks/triangle-alert-CpLMma6K.mjs.map +1 -0
  161. package/dist/chunks/{tslib.es6-CnQYzBlA.mjs → tslib.es6-BgXxJBc3.mjs} +1 -1
  162. package/dist/chunks/{tslib.es6-CnQYzBlA.mjs.map → tslib.es6-BgXxJBc3.mjs.map} +1 -1
  163. package/dist/chunks/{utils-DwA_HfJw.mjs → utils-DfaTa-5f.mjs} +2 -2
  164. package/dist/chunks/{utils-DwA_HfJw.mjs.map → utils-DfaTa-5f.mjs.map} +1 -1
  165. package/dist/chunks/{x-BZdVnIMx.mjs → x-BtRqeVV7.mjs} +2 -2
  166. package/dist/chunks/{x-BZdVnIMx.mjs.map → x-BtRqeVV7.mjs.map} +1 -1
  167. package/dist/collapsible/index.mjs +9 -9
  168. package/dist/combobox/index.d.ts +8 -1
  169. package/dist/combobox/index.mjs +121 -39
  170. package/dist/combobox/index.mjs.map +1 -1
  171. package/dist/command/index.d.ts +79 -16
  172. package/dist/command/index.mjs +20 -20
  173. package/dist/context-menu/index.mjs +23 -23
  174. package/dist/dash/index.d.ts +49 -0
  175. package/dist/dash/index.mjs +105 -0
  176. package/dist/dash/index.mjs.map +1 -0
  177. package/dist/data-table/index.d.ts +9 -4
  178. package/dist/data-table/index.mjs +71 -60
  179. package/dist/data-table/index.mjs.map +1 -1
  180. package/dist/date-picker/index.mjs +27 -25
  181. package/dist/date-picker/index.mjs.map +1 -1
  182. package/dist/dialog/index.d.ts +13 -11
  183. package/dist/dialog/index.mjs +19 -19
  184. package/dist/drawer/index.mjs +16 -16
  185. package/dist/dropdown-menu/index.mjs +23 -23
  186. package/dist/dropzone/index.d.ts +6 -0
  187. package/dist/dropzone/index.mjs +40 -28
  188. package/dist/dropzone/index.mjs.map +1 -1
  189. package/dist/empty/index.mjs +2 -2
  190. package/dist/field/index.mjs +5 -5
  191. package/dist/form/index.mjs +7 -653
  192. package/dist/form/index.mjs.map +1 -1
  193. package/dist/form-fields/index.d.ts +13 -0
  194. package/dist/form-fields/index.mjs +34 -0
  195. package/dist/form-fields/index.mjs.map +1 -0
  196. package/dist/hover-card/index.mjs +15 -15
  197. package/dist/icon/index.mjs +1 -1
  198. package/dist/index.css +1 -1
  199. package/dist/input/index.mjs +3 -3
  200. package/dist/input-group/index.mjs +5 -5
  201. package/dist/input-otp/index.mjs +3 -3
  202. package/dist/item/index.mjs +4 -4
  203. package/dist/ivt.css +1 -1
  204. package/dist/kbd/index.mjs +2 -2
  205. package/dist/label/index.mjs +4 -4
  206. package/dist/layout/index.mjs +6 -30
  207. package/dist/layout/index.mjs.map +1 -1
  208. package/dist/menubar/index.mjs +23 -23
  209. package/dist/multi-select/index.mjs +33 -295
  210. package/dist/multi-select/index.mjs.map +1 -1
  211. package/dist/navigation-menu/index.mjs +17 -17
  212. package/dist/pagination/index.mjs +8 -8
  213. package/dist/popover/index.mjs +18 -18
  214. package/dist/progress/index.mjs +5 -5
  215. package/dist/radio-group/index.mjs +17 -17
  216. package/dist/resizable/index.mjs +3 -3
  217. package/dist/scroll-area/index.mjs +12 -12
  218. package/dist/select/index.mjs +6 -6
  219. package/dist/separator/index.mjs +4 -4
  220. package/dist/shared/index.mjs +5 -5
  221. package/dist/sheet/index.mjs +19 -19
  222. package/dist/sidebar/index.mjs +27 -27
  223. package/dist/skeleton/index.mjs +3 -3
  224. package/dist/skeleton-component/index.mjs +4 -4
  225. package/dist/slider/index.mjs +12 -12
  226. package/dist/slider/index.mjs.map +1 -1
  227. package/dist/sortable/index.mjs +4 -4
  228. package/dist/spinner/index.mjs +4 -4
  229. package/dist/switch/index.mjs +10 -10
  230. package/dist/table/index.mjs +3 -3
  231. package/dist/table-filter/index.d.ts +49 -0
  232. package/dist/table-filter/index.mjs +2068 -0
  233. package/dist/table-filter/index.mjs.map +1 -0
  234. package/dist/tabs/index.mjs +13 -13
  235. package/dist/textarea/index.mjs +3 -3
  236. package/dist/toast/index.mjs +15 -15
  237. package/dist/toggle/index.mjs +7 -7
  238. package/dist/toggle-group/index.mjs +13 -13
  239. package/dist/tooltip/index.mjs +17 -17
  240. package/package.json +15 -2
  241. package/dist/chunks/_commonjsHelpers-CZIfjjiR.mjs.map +0 -1
  242. package/dist/chunks/calendar-D98dWxWB.mjs.map +0 -1
  243. package/dist/chunks/command-OnnopJEP.mjs.map +0 -1
  244. package/dist/chunks/dialog-D-h9t9_b.mjs.map +0 -1
  245. package/dist/chunks/pt-BR-on-YW6Ay.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"hover-card-DXAGq71O.mjs","sources":["../../node_modules/@radix-ui/react-hover-card/dist/index.mjs","../../src/components/ui/hover-card/hover-card.tsx"],"sourcesContent":["\"use client\";\n\n// src/hover-card.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport * as PopperPrimitive from \"@radix-ui/react-popper\";\nimport { createPopperScope } from \"@radix-ui/react-popper\";\nimport { Portal as PortalPrimitive } from \"@radix-ui/react-portal\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\nimport { jsx } from \"react/jsx-runtime\";\nvar originalBodyUserSelect;\nvar HOVERCARD_NAME = \"HoverCard\";\nvar [createHoverCardContext, createHoverCardScope] = createContextScope(HOVERCARD_NAME, [\n createPopperScope\n]);\nvar usePopperScope = createPopperScope();\nvar [HoverCardProvider, useHoverCardContext] = createHoverCardContext(HOVERCARD_NAME);\nvar HoverCard = (props) => {\n const {\n __scopeHoverCard,\n children,\n open: openProp,\n defaultOpen,\n onOpenChange,\n openDelay = 700,\n closeDelay = 300\n } = props;\n const popperScope = usePopperScope(__scopeHoverCard);\n const openTimerRef = React.useRef(0);\n const closeTimerRef = React.useRef(0);\n const hasSelectionRef = React.useRef(false);\n const isPointerDownOnContentRef = React.useRef(false);\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: HOVERCARD_NAME\n });\n const handleOpen = React.useCallback(() => {\n clearTimeout(closeTimerRef.current);\n openTimerRef.current = window.setTimeout(() => setOpen(true), openDelay);\n }, [openDelay, setOpen]);\n const handleClose = React.useCallback(() => {\n clearTimeout(openTimerRef.current);\n if (!hasSelectionRef.current && !isPointerDownOnContentRef.current) {\n closeTimerRef.current = window.setTimeout(() => setOpen(false), closeDelay);\n }\n }, [closeDelay, setOpen]);\n const handleDismiss = React.useCallback(() => setOpen(false), [setOpen]);\n React.useEffect(() => {\n return () => {\n clearTimeout(openTimerRef.current);\n clearTimeout(closeTimerRef.current);\n };\n }, []);\n return /* @__PURE__ */ jsx(\n HoverCardProvider,\n {\n scope: __scopeHoverCard,\n open,\n onOpenChange: setOpen,\n onOpen: handleOpen,\n onClose: handleClose,\n onDismiss: handleDismiss,\n hasSelectionRef,\n isPointerDownOnContentRef,\n children: /* @__PURE__ */ jsx(PopperPrimitive.Root, { ...popperScope, children })\n }\n );\n};\nHoverCard.displayName = HOVERCARD_NAME;\nvar TRIGGER_NAME = \"HoverCardTrigger\";\nvar HoverCardTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeHoverCard, ...triggerProps } = props;\n const context = useHoverCardContext(TRIGGER_NAME, __scopeHoverCard);\n const popperScope = usePopperScope(__scopeHoverCard);\n return /* @__PURE__ */ jsx(PopperPrimitive.Anchor, { asChild: true, ...popperScope, children: /* @__PURE__ */ jsx(\n Primitive.a,\n {\n \"data-state\": context.open ? \"open\" : \"closed\",\n ...triggerProps,\n ref: forwardedRef,\n onPointerEnter: composeEventHandlers(props.onPointerEnter, excludeTouch(context.onOpen)),\n onPointerLeave: composeEventHandlers(props.onPointerLeave, excludeTouch(context.onClose)),\n onFocus: composeEventHandlers(props.onFocus, context.onOpen),\n onBlur: composeEventHandlers(props.onBlur, context.onClose),\n onTouchStart: composeEventHandlers(props.onTouchStart, (event) => event.preventDefault())\n }\n ) });\n }\n);\nHoverCardTrigger.displayName = TRIGGER_NAME;\nvar PORTAL_NAME = \"HoverCardPortal\";\nvar [PortalProvider, usePortalContext] = createHoverCardContext(PORTAL_NAME, {\n forceMount: void 0\n});\nvar HoverCardPortal = (props) => {\n const { __scopeHoverCard, forceMount, children, container } = props;\n const context = useHoverCardContext(PORTAL_NAME, __scopeHoverCard);\n return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopeHoverCard, forceMount, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(PortalPrimitive, { asChild: true, container, children }) }) });\n};\nHoverCardPortal.displayName = PORTAL_NAME;\nvar CONTENT_NAME = \"HoverCardContent\";\nvar HoverCardContent = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(CONTENT_NAME, props.__scopeHoverCard);\n const { forceMount = portalContext.forceMount, ...contentProps } = props;\n const context = useHoverCardContext(CONTENT_NAME, props.__scopeHoverCard);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(\n HoverCardContentImpl,\n {\n \"data-state\": context.open ? \"open\" : \"closed\",\n ...contentProps,\n onPointerEnter: composeEventHandlers(props.onPointerEnter, excludeTouch(context.onOpen)),\n onPointerLeave: composeEventHandlers(props.onPointerLeave, excludeTouch(context.onClose)),\n ref: forwardedRef\n }\n ) });\n }\n);\nHoverCardContent.displayName = CONTENT_NAME;\nvar HoverCardContentImpl = React.forwardRef((props, forwardedRef) => {\n const {\n __scopeHoverCard,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside,\n onInteractOutside,\n ...contentProps\n } = props;\n const context = useHoverCardContext(CONTENT_NAME, __scopeHoverCard);\n const popperScope = usePopperScope(__scopeHoverCard);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const [containSelection, setContainSelection] = React.useState(false);\n React.useEffect(() => {\n if (containSelection) {\n const body = document.body;\n originalBodyUserSelect = body.style.userSelect || body.style.webkitUserSelect;\n body.style.userSelect = \"none\";\n body.style.webkitUserSelect = \"none\";\n return () => {\n body.style.userSelect = originalBodyUserSelect;\n body.style.webkitUserSelect = originalBodyUserSelect;\n };\n }\n }, [containSelection]);\n React.useEffect(() => {\n if (ref.current) {\n const handlePointerUp = () => {\n setContainSelection(false);\n context.isPointerDownOnContentRef.current = false;\n setTimeout(() => {\n const hasSelection = document.getSelection()?.toString() !== \"\";\n if (hasSelection) context.hasSelectionRef.current = true;\n });\n };\n document.addEventListener(\"pointerup\", handlePointerUp);\n return () => {\n document.removeEventListener(\"pointerup\", handlePointerUp);\n context.hasSelectionRef.current = false;\n context.isPointerDownOnContentRef.current = false;\n };\n }\n }, [context.isPointerDownOnContentRef, context.hasSelectionRef]);\n React.useEffect(() => {\n if (ref.current) {\n const tabbables = getTabbableNodes(ref.current);\n tabbables.forEach((tabbable) => tabbable.setAttribute(\"tabindex\", \"-1\"));\n }\n });\n return /* @__PURE__ */ jsx(\n DismissableLayer,\n {\n asChild: true,\n disableOutsidePointerEvents: false,\n onInteractOutside,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside: composeEventHandlers(onFocusOutside, (event) => {\n event.preventDefault();\n }),\n onDismiss: context.onDismiss,\n children: /* @__PURE__ */ jsx(\n PopperPrimitive.Content,\n {\n ...popperScope,\n ...contentProps,\n onPointerDown: composeEventHandlers(contentProps.onPointerDown, (event) => {\n if (event.currentTarget.contains(event.target)) {\n setContainSelection(true);\n }\n context.hasSelectionRef.current = false;\n context.isPointerDownOnContentRef.current = true;\n }),\n ref: composedRefs,\n style: {\n ...contentProps.style,\n userSelect: containSelection ? \"text\" : void 0,\n // Safari requires prefix\n WebkitUserSelect: containSelection ? \"text\" : void 0,\n // re-namespace exposed content custom properties\n ...{\n \"--radix-hover-card-content-transform-origin\": \"var(--radix-popper-transform-origin)\",\n \"--radix-hover-card-content-available-width\": \"var(--radix-popper-available-width)\",\n \"--radix-hover-card-content-available-height\": \"var(--radix-popper-available-height)\",\n \"--radix-hover-card-trigger-width\": \"var(--radix-popper-anchor-width)\",\n \"--radix-hover-card-trigger-height\": \"var(--radix-popper-anchor-height)\"\n }\n }\n }\n )\n }\n );\n});\nvar ARROW_NAME = \"HoverCardArrow\";\nvar HoverCardArrow = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeHoverCard, ...arrowProps } = props;\n const popperScope = usePopperScope(__scopeHoverCard);\n return /* @__PURE__ */ jsx(PopperPrimitive.Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef });\n }\n);\nHoverCardArrow.displayName = ARROW_NAME;\nfunction excludeTouch(eventHandler) {\n return (event) => event.pointerType === \"touch\" ? void 0 : eventHandler();\n}\nfunction getTabbableNodes(container) {\n const nodes = [];\n const walker = document.createTreeWalker(container, NodeFilter.SHOW_ELEMENT, {\n acceptNode: (node) => {\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}\nvar Root2 = HoverCard;\nvar Trigger = HoverCardTrigger;\nvar Portal = HoverCardPortal;\nvar Content2 = HoverCardContent;\nvar Arrow2 = HoverCardArrow;\nexport {\n Arrow2 as Arrow,\n Content2 as Content,\n HoverCard,\n HoverCardArrow,\n HoverCardContent,\n HoverCardPortal,\n HoverCardTrigger,\n Portal,\n Root2 as Root,\n Trigger,\n createHoverCardScope\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\nimport * as HoverCardPrimitive from \"@radix-ui/react-hover-card\";\nimport React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction HoverCard({ ...props }: React.ComponentProps<typeof HoverCardPrimitive.Root>) {\n\treturn <HoverCardPrimitive.Root data-slot=\"hover-card\" {...props} />;\n}\n\nfunction HoverCardTrigger({ ...props }: React.ComponentProps<typeof HoverCardPrimitive.Trigger>) {\n\treturn <HoverCardPrimitive.Trigger data-slot=\"hover-card-trigger\" {...props} />;\n}\n\nfunction HoverCardContent({\n\tclassName,\n\talign = \"center\",\n\tsideOffset = 4,\n\t...props\n}: React.ComponentProps<typeof HoverCardPrimitive.Content>) {\n\treturn (\n\t\t<HoverCardPrimitive.Portal data-slot=\"hover-card-portal\">\n\t\t\t<HoverCardPrimitive.Content\n\t\t\t\tdata-slot=\"hover-card-content\"\n\t\t\t\talign={align}\n\t\t\t\tsideOffset={sideOffset}\n\t\t\t\tclassName={cn(\n\t\t\t\t\t\"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-64 rounded-md border p-4 shadow-md outline-hidden\",\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t/>\n\t\t</HoverCardPrimitive.Portal>\n\t);\n}\n\nexport { HoverCard, HoverCardTrigger, HoverCardContent };\n"],"names":["HoverCard","PopperPrimitive.Root","HoverCardTrigger","PopperPrimitive.Anchor","PortalPrimitive","HoverCardContent","PopperPrimitive.Content","PopperPrimitive.Arrow","Root","Content","props","React","HoverCardPrimitive","data-slot","className","align","sideOffset","cn"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"hover-card-Cwtai5wK.mjs","sources":["../../node_modules/@radix-ui/react-hover-card/dist/index.mjs","../../src/components/ui/hover-card/hover-card.tsx"],"sourcesContent":["\"use client\";\n\n// src/hover-card.tsx\nimport * as React from \"react\";\nimport { composeEventHandlers } from \"@radix-ui/primitive\";\nimport { createContextScope } from \"@radix-ui/react-context\";\nimport { useControllableState } from \"@radix-ui/react-use-controllable-state\";\nimport { useComposedRefs } from \"@radix-ui/react-compose-refs\";\nimport * as PopperPrimitive from \"@radix-ui/react-popper\";\nimport { createPopperScope } from \"@radix-ui/react-popper\";\nimport { Portal as PortalPrimitive } from \"@radix-ui/react-portal\";\nimport { Presence } from \"@radix-ui/react-presence\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { DismissableLayer } from \"@radix-ui/react-dismissable-layer\";\nimport { jsx } from \"react/jsx-runtime\";\nvar originalBodyUserSelect;\nvar HOVERCARD_NAME = \"HoverCard\";\nvar [createHoverCardContext, createHoverCardScope] = createContextScope(HOVERCARD_NAME, [\n createPopperScope\n]);\nvar usePopperScope = createPopperScope();\nvar [HoverCardProvider, useHoverCardContext] = createHoverCardContext(HOVERCARD_NAME);\nvar HoverCard = (props) => {\n const {\n __scopeHoverCard,\n children,\n open: openProp,\n defaultOpen,\n onOpenChange,\n openDelay = 700,\n closeDelay = 300\n } = props;\n const popperScope = usePopperScope(__scopeHoverCard);\n const openTimerRef = React.useRef(0);\n const closeTimerRef = React.useRef(0);\n const hasSelectionRef = React.useRef(false);\n const isPointerDownOnContentRef = React.useRef(false);\n const [open, setOpen] = useControllableState({\n prop: openProp,\n defaultProp: defaultOpen ?? false,\n onChange: onOpenChange,\n caller: HOVERCARD_NAME\n });\n const handleOpen = React.useCallback(() => {\n clearTimeout(closeTimerRef.current);\n openTimerRef.current = window.setTimeout(() => setOpen(true), openDelay);\n }, [openDelay, setOpen]);\n const handleClose = React.useCallback(() => {\n clearTimeout(openTimerRef.current);\n if (!hasSelectionRef.current && !isPointerDownOnContentRef.current) {\n closeTimerRef.current = window.setTimeout(() => setOpen(false), closeDelay);\n }\n }, [closeDelay, setOpen]);\n const handleDismiss = React.useCallback(() => setOpen(false), [setOpen]);\n React.useEffect(() => {\n return () => {\n clearTimeout(openTimerRef.current);\n clearTimeout(closeTimerRef.current);\n };\n }, []);\n return /* @__PURE__ */ jsx(\n HoverCardProvider,\n {\n scope: __scopeHoverCard,\n open,\n onOpenChange: setOpen,\n onOpen: handleOpen,\n onClose: handleClose,\n onDismiss: handleDismiss,\n hasSelectionRef,\n isPointerDownOnContentRef,\n children: /* @__PURE__ */ jsx(PopperPrimitive.Root, { ...popperScope, children })\n }\n );\n};\nHoverCard.displayName = HOVERCARD_NAME;\nvar TRIGGER_NAME = \"HoverCardTrigger\";\nvar HoverCardTrigger = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeHoverCard, ...triggerProps } = props;\n const context = useHoverCardContext(TRIGGER_NAME, __scopeHoverCard);\n const popperScope = usePopperScope(__scopeHoverCard);\n return /* @__PURE__ */ jsx(PopperPrimitive.Anchor, { asChild: true, ...popperScope, children: /* @__PURE__ */ jsx(\n Primitive.a,\n {\n \"data-state\": context.open ? \"open\" : \"closed\",\n ...triggerProps,\n ref: forwardedRef,\n onPointerEnter: composeEventHandlers(props.onPointerEnter, excludeTouch(context.onOpen)),\n onPointerLeave: composeEventHandlers(props.onPointerLeave, excludeTouch(context.onClose)),\n onFocus: composeEventHandlers(props.onFocus, context.onOpen),\n onBlur: composeEventHandlers(props.onBlur, context.onClose),\n onTouchStart: composeEventHandlers(props.onTouchStart, (event) => event.preventDefault())\n }\n ) });\n }\n);\nHoverCardTrigger.displayName = TRIGGER_NAME;\nvar PORTAL_NAME = \"HoverCardPortal\";\nvar [PortalProvider, usePortalContext] = createHoverCardContext(PORTAL_NAME, {\n forceMount: void 0\n});\nvar HoverCardPortal = (props) => {\n const { __scopeHoverCard, forceMount, children, container } = props;\n const context = useHoverCardContext(PORTAL_NAME, __scopeHoverCard);\n return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopeHoverCard, forceMount, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(PortalPrimitive, { asChild: true, container, children }) }) });\n};\nHoverCardPortal.displayName = PORTAL_NAME;\nvar CONTENT_NAME = \"HoverCardContent\";\nvar HoverCardContent = React.forwardRef(\n (props, forwardedRef) => {\n const portalContext = usePortalContext(CONTENT_NAME, props.__scopeHoverCard);\n const { forceMount = portalContext.forceMount, ...contentProps } = props;\n const context = useHoverCardContext(CONTENT_NAME, props.__scopeHoverCard);\n return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(\n HoverCardContentImpl,\n {\n \"data-state\": context.open ? \"open\" : \"closed\",\n ...contentProps,\n onPointerEnter: composeEventHandlers(props.onPointerEnter, excludeTouch(context.onOpen)),\n onPointerLeave: composeEventHandlers(props.onPointerLeave, excludeTouch(context.onClose)),\n ref: forwardedRef\n }\n ) });\n }\n);\nHoverCardContent.displayName = CONTENT_NAME;\nvar HoverCardContentImpl = React.forwardRef((props, forwardedRef) => {\n const {\n __scopeHoverCard,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside,\n onInteractOutside,\n ...contentProps\n } = props;\n const context = useHoverCardContext(CONTENT_NAME, __scopeHoverCard);\n const popperScope = usePopperScope(__scopeHoverCard);\n const ref = React.useRef(null);\n const composedRefs = useComposedRefs(forwardedRef, ref);\n const [containSelection, setContainSelection] = React.useState(false);\n React.useEffect(() => {\n if (containSelection) {\n const body = document.body;\n originalBodyUserSelect = body.style.userSelect || body.style.webkitUserSelect;\n body.style.userSelect = \"none\";\n body.style.webkitUserSelect = \"none\";\n return () => {\n body.style.userSelect = originalBodyUserSelect;\n body.style.webkitUserSelect = originalBodyUserSelect;\n };\n }\n }, [containSelection]);\n React.useEffect(() => {\n if (ref.current) {\n const handlePointerUp = () => {\n setContainSelection(false);\n context.isPointerDownOnContentRef.current = false;\n setTimeout(() => {\n const hasSelection = document.getSelection()?.toString() !== \"\";\n if (hasSelection) context.hasSelectionRef.current = true;\n });\n };\n document.addEventListener(\"pointerup\", handlePointerUp);\n return () => {\n document.removeEventListener(\"pointerup\", handlePointerUp);\n context.hasSelectionRef.current = false;\n context.isPointerDownOnContentRef.current = false;\n };\n }\n }, [context.isPointerDownOnContentRef, context.hasSelectionRef]);\n React.useEffect(() => {\n if (ref.current) {\n const tabbables = getTabbableNodes(ref.current);\n tabbables.forEach((tabbable) => tabbable.setAttribute(\"tabindex\", \"-1\"));\n }\n });\n return /* @__PURE__ */ jsx(\n DismissableLayer,\n {\n asChild: true,\n disableOutsidePointerEvents: false,\n onInteractOutside,\n onEscapeKeyDown,\n onPointerDownOutside,\n onFocusOutside: composeEventHandlers(onFocusOutside, (event) => {\n event.preventDefault();\n }),\n onDismiss: context.onDismiss,\n children: /* @__PURE__ */ jsx(\n PopperPrimitive.Content,\n {\n ...popperScope,\n ...contentProps,\n onPointerDown: composeEventHandlers(contentProps.onPointerDown, (event) => {\n if (event.currentTarget.contains(event.target)) {\n setContainSelection(true);\n }\n context.hasSelectionRef.current = false;\n context.isPointerDownOnContentRef.current = true;\n }),\n ref: composedRefs,\n style: {\n ...contentProps.style,\n userSelect: containSelection ? \"text\" : void 0,\n // Safari requires prefix\n WebkitUserSelect: containSelection ? \"text\" : void 0,\n // re-namespace exposed content custom properties\n ...{\n \"--radix-hover-card-content-transform-origin\": \"var(--radix-popper-transform-origin)\",\n \"--radix-hover-card-content-available-width\": \"var(--radix-popper-available-width)\",\n \"--radix-hover-card-content-available-height\": \"var(--radix-popper-available-height)\",\n \"--radix-hover-card-trigger-width\": \"var(--radix-popper-anchor-width)\",\n \"--radix-hover-card-trigger-height\": \"var(--radix-popper-anchor-height)\"\n }\n }\n }\n )\n }\n );\n});\nvar ARROW_NAME = \"HoverCardArrow\";\nvar HoverCardArrow = React.forwardRef(\n (props, forwardedRef) => {\n const { __scopeHoverCard, ...arrowProps } = props;\n const popperScope = usePopperScope(__scopeHoverCard);\n return /* @__PURE__ */ jsx(PopperPrimitive.Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef });\n }\n);\nHoverCardArrow.displayName = ARROW_NAME;\nfunction excludeTouch(eventHandler) {\n return (event) => event.pointerType === \"touch\" ? void 0 : eventHandler();\n}\nfunction getTabbableNodes(container) {\n const nodes = [];\n const walker = document.createTreeWalker(container, NodeFilter.SHOW_ELEMENT, {\n acceptNode: (node) => {\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}\nvar Root2 = HoverCard;\nvar Trigger = HoverCardTrigger;\nvar Portal = HoverCardPortal;\nvar Content2 = HoverCardContent;\nvar Arrow2 = HoverCardArrow;\nexport {\n Arrow2 as Arrow,\n Content2 as Content,\n HoverCard,\n HoverCardArrow,\n HoverCardContent,\n HoverCardPortal,\n HoverCardTrigger,\n Portal,\n Root2 as Root,\n Trigger,\n createHoverCardScope\n};\n//# sourceMappingURL=index.mjs.map\n","\"use client\";\n\nimport * as HoverCardPrimitive from \"@radix-ui/react-hover-card\";\nimport React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction HoverCard({ ...props }: React.ComponentProps<typeof HoverCardPrimitive.Root>) {\n\treturn <HoverCardPrimitive.Root data-slot=\"hover-card\" {...props} />;\n}\n\nfunction HoverCardTrigger({ ...props }: React.ComponentProps<typeof HoverCardPrimitive.Trigger>) {\n\treturn <HoverCardPrimitive.Trigger data-slot=\"hover-card-trigger\" {...props} />;\n}\n\nfunction HoverCardContent({\n\tclassName,\n\talign = \"center\",\n\tsideOffset = 4,\n\t...props\n}: React.ComponentProps<typeof HoverCardPrimitive.Content>) {\n\treturn (\n\t\t<HoverCardPrimitive.Portal data-slot=\"hover-card-portal\">\n\t\t\t<HoverCardPrimitive.Content\n\t\t\t\tdata-slot=\"hover-card-content\"\n\t\t\t\talign={align}\n\t\t\t\tsideOffset={sideOffset}\n\t\t\t\tclassName={cn(\n\t\t\t\t\t\"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-64 rounded-md border p-4 shadow-md outline-hidden\",\n\t\t\t\t\tclassName,\n\t\t\t\t)}\n\t\t\t\t{...props}\n\t\t\t/>\n\t\t</HoverCardPrimitive.Portal>\n\t);\n}\n\nexport { HoverCard, HoverCardTrigger, HoverCardContent };\n"],"names":["HoverCard","PopperPrimitive.Root","HoverCardTrigger","PopperPrimitive.Anchor","PortalPrimitive","HoverCardContent","PopperPrimitive.Content","PopperPrimitive.Arrow","Root","Content","props","React","HoverCardPrimitive","data-slot","className","align","sideOffset","cn"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,10 +1,10 @@
1
1
  import * as React from 'react';
2
2
  import { useState } from 'react';
3
- import { u as useComposedRefs } from './index-BsVg0u5v.mjs';
4
- import { P as Primitive } from './index-B7kZbHfd.mjs';
5
- import { u as useCallbackRef$1 } from './index-D5pght6h.mjs';
3
+ import { u as useComposedRefs } from './index-SHhYuecD.mjs';
4
+ import { P as Primitive } from './index-B0fljwsr.mjs';
5
+ import { u as useCallbackRef$1 } from './index-DNPAHxPV.mjs';
6
6
  import { jsx } from 'react/jsx-runtime';
7
- import { _ as __assign, a as __rest, b as __spreadArray } from './tslib.es6-CnQYzBlA.mjs';
7
+ import { _ as __assign, a as __rest, b as __spreadArray } from './tslib.es6-BgXxJBc3.mjs';
8
8
 
9
9
  var AUTOFOCUS_ON_MOUNT = "focusScope.autoFocusOnMount";
10
10
  var AUTOFOCUS_ON_UNMOUNT = "focusScope.autoFocusOnUnmount";
@@ -1207,4 +1207,4 @@ var correctTargets = function(parent, targets) {
1207
1207
  };
1208
1208
 
1209
1209
  export { FocusScope as F, ReactRemoveScroll as R, hideOthers as h, useFocusGuards as u };
1210
- //# sourceMappingURL=index-BLAYpkjT.mjs.map
1210
+ //# sourceMappingURL=index-2wUt7vgM.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index-BLAYpkjT.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/useRef.js","../../node_modules/use-callback-ref/dist/es2015/useMergeRef.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/get-nonce/dist/es2015/index.js","../../node_modules/react-style-singleton/dist/es2015/singleton.js","../../node_modules/react-style-singleton/dist/es2015/hook.js","../../node_modules/react-style-singleton/dist/es2015/component.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// 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}\nexport {\n FocusGuards,\n FocusGuards as 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 { 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 * 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 { __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","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 { 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","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","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","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":["useCallbackRef","handleFocusIn","handleFocusOut","handleMutations","container","zeroRightClassName","fullWidthClassName","noScrollbarsClassName","removedBarSizeVariable","assignRef","ref","value","current","initialValue","callback","useState","facade","last","useIsomorphicLayoutEffect","window","React","useLayoutEffect","useEffect","currentValues","WeakMap","useMergeRefs","refs","defaultValue","callbackRef","newValue","forEach","oldValue","get","prevRefs_1","Set","nextRefs_1","current_1","has","set","ItoI","a","innerCreateMedium","defaults","middleware","buffer","assigned","medium","read","Error","length","useMedium","data","item","push","filter","x","assignSyncMedium","cb","cbs","assignMedium","pendingQueue","executeQueue","cycle","Promise","resolve","then","createSidecarMedium","options","__assign","async","ssr","SideCar","_a","sideCar","rest","__rest","Target","createElement","isSideCarExport","exportSidecar","exported","effectCar","nothing","RemoveScroll","forwardRef","props","parentRef","useRef","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","getNonce","__webpack_nonce__","undefined","makeStyleTag","document","tag","type","nonce","setAttribute","injectStyles","css","styleSheet","cssText","appendChild","createTextNode","insertStyleTag","head","getElementsByTagName","stylesheetSingleton","counter","stylesheet","add","style","remove","parentNode","removeChild","styleHookSingleton","sheet","styles","isDynamic","styleSingleton","useStyle","Sheet","dynamic","zeroGap","left","top","right","gap","parse","parseInt","getOffset","cs","getComputedStyle","body","getGapWidth","offsets","documentWidth","documentElement","clientWidth","windowWidth","innerWidth","Math","max","Style","lockAttribute","getStyles","allowRelative","important","concat","Boolean","join","getCurrentUseCounter","getAttribute","isFinite","useLockAttribute","toString","newCounter","removeAttribute","RemoveScrollBar","noImportant","useMemo","passiveSupported","Object","defineProperty","addEventListener","removeEventListener","err","nonPassive","passive","alwaysContainsScroll","node","tagName","elementCanBeScrolled","overflow","Element","overflowY","overflowX","elementCouldBeVScrolled","elementCouldBeHScrolled","locationCouldBeScrolled","axis","ownerDocument","ShadowRoot","host","isScrollable","elementCouldBeScrolled","getScrollVariables","scrollHeight","clientHeight","getVScrollVariables","scrollTop","getHScrollVariables","scrollLeft","scrollWidth","getDirectionFactor","direction","handleScroll","endTarget","event","sourceDelta","noOverscroll","directionFactor","delta","target","targetInLock","contains","shouldCancelScroll","isDeltaPositive","availableScroll","availableScrollTop","position","scroll_1","capacity","elementScroll","parent_1","nodeType","Node","DOCUMENT_FRAGMENT_NODE","abs","getTouchXY","changedTouches","clientX","clientY","getDeltaXY","deltaX","deltaY","extractRef","deltaCompare","y","generateStyle","id","idCounter","lockStack","RemoveScrollSideCar","shouldPreventQueue","touchStartRef","activeAxis","lastProps","classList","allow_1","__spreadArray","map","el","shouldCancelEvent","useCallback","parent","touches","ctrlKey","touch","touchStart","currentAxis","moveDirection","canBeScrolledInMainDirection","cancelingAxis","shouldPrevent","_event","sourceEvent","e","name","shadowParent","should","cancelable","preventDefault","shardNodes","shouldStop","shouldCancel","getOutermostShadowParent","setTimeout","scrollTouchStart","scrollWheel","scrollTouchMove","inst","ReactRemoveScroll","getDefaultParent","originalTarget","sampleTarget","Array","isArray","counterMap","uncontrolledNodes","markerMap","lockCount","unwrapHost","correctTargets","targets","correctedTarget","console","error","applyAttributeToOthers","markerName","controlAttribute","markerCounter","hiddenNodes","elementsToKeep","elementsToStop","keep","deep","prototype","call","attr","alreadyHidden","counterValue","markerValue","clear","delete","hideOthers","from","activeParentNode","apply","querySelectorAll"],"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
+ {"version":3,"file":"index-2wUt7vgM.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/useRef.js","../../node_modules/use-callback-ref/dist/es2015/useMergeRef.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/get-nonce/dist/es2015/index.js","../../node_modules/react-style-singleton/dist/es2015/singleton.js","../../node_modules/react-style-singleton/dist/es2015/hook.js","../../node_modules/react-style-singleton/dist/es2015/component.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// 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}\nexport {\n FocusGuards,\n FocusGuards as 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 { 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 * 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 { __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","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 { 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","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","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","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":["useCallbackRef","handleFocusIn","handleFocusOut","handleMutations","container","zeroRightClassName","fullWidthClassName","noScrollbarsClassName","removedBarSizeVariable","assignRef","ref","value","current","initialValue","callback","useState","facade","last","useIsomorphicLayoutEffect","window","React","useLayoutEffect","useEffect","currentValues","WeakMap","useMergeRefs","refs","defaultValue","callbackRef","newValue","forEach","oldValue","get","prevRefs_1","Set","nextRefs_1","current_1","has","set","ItoI","a","innerCreateMedium","defaults","middleware","buffer","assigned","medium","read","Error","length","useMedium","data","item","push","filter","x","assignSyncMedium","cb","cbs","assignMedium","pendingQueue","executeQueue","cycle","Promise","resolve","then","createSidecarMedium","options","__assign","async","ssr","SideCar","_a","sideCar","rest","__rest","Target","createElement","isSideCarExport","exportSidecar","exported","effectCar","nothing","RemoveScroll","forwardRef","props","parentRef","useRef","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","getNonce","__webpack_nonce__","undefined","makeStyleTag","document","tag","type","nonce","setAttribute","injectStyles","css","styleSheet","cssText","appendChild","createTextNode","insertStyleTag","head","getElementsByTagName","stylesheetSingleton","counter","stylesheet","add","style","remove","parentNode","removeChild","styleHookSingleton","sheet","styles","isDynamic","styleSingleton","useStyle","Sheet","dynamic","zeroGap","left","top","right","gap","parse","parseInt","getOffset","cs","getComputedStyle","body","getGapWidth","offsets","documentWidth","documentElement","clientWidth","windowWidth","innerWidth","Math","max","Style","lockAttribute","getStyles","allowRelative","important","concat","Boolean","join","getCurrentUseCounter","getAttribute","isFinite","useLockAttribute","toString","newCounter","removeAttribute","RemoveScrollBar","noImportant","useMemo","passiveSupported","Object","defineProperty","addEventListener","removeEventListener","err","nonPassive","passive","alwaysContainsScroll","node","tagName","elementCanBeScrolled","overflow","Element","overflowY","overflowX","elementCouldBeVScrolled","elementCouldBeHScrolled","locationCouldBeScrolled","axis","ownerDocument","ShadowRoot","host","isScrollable","elementCouldBeScrolled","getScrollVariables","scrollHeight","clientHeight","getVScrollVariables","scrollTop","getHScrollVariables","scrollLeft","scrollWidth","getDirectionFactor","direction","handleScroll","endTarget","event","sourceDelta","noOverscroll","directionFactor","delta","target","targetInLock","contains","shouldCancelScroll","isDeltaPositive","availableScroll","availableScrollTop","position","scroll_1","capacity","elementScroll","parent_1","nodeType","Node","DOCUMENT_FRAGMENT_NODE","abs","getTouchXY","changedTouches","clientX","clientY","getDeltaXY","deltaX","deltaY","extractRef","deltaCompare","y","generateStyle","id","idCounter","lockStack","RemoveScrollSideCar","shouldPreventQueue","touchStartRef","activeAxis","lastProps","classList","allow_1","__spreadArray","map","el","shouldCancelEvent","useCallback","parent","touches","ctrlKey","touch","touchStart","currentAxis","moveDirection","canBeScrolledInMainDirection","cancelingAxis","shouldPrevent","_event","sourceEvent","e","name","shadowParent","should","cancelable","preventDefault","shardNodes","shouldStop","shouldCancel","getOutermostShadowParent","setTimeout","scrollTouchStart","scrollWheel","scrollTouchMove","inst","ReactRemoveScroll","getDefaultParent","originalTarget","sampleTarget","Array","isArray","counterMap","uncontrolledNodes","markerMap","lockCount","unwrapHost","correctTargets","targets","correctedTarget","console","error","applyAttributeToOthers","markerName","controlAttribute","markerCounter","hiddenNodes","elementsToKeep","elementsToStop","keep","deep","prototype","call","attr","alreadyHidden","counterValue","markerValue","clear","delete","hideOthers","from","activeParentNode","apply","querySelectorAll"],"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]}