@coopdigital/react 0.49.0 → 0.50.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (299) hide show
  1. package/dist/components/Button/Button.js +2 -2
  2. package/dist/components/Button/index.js +5 -0
  3. package/dist/components/Card/Card.js +4 -4
  4. package/dist/components/Checkbox/Checkbox.d.ts +7 -1
  5. package/dist/components/Checkbox/Checkbox.js +4 -0
  6. package/dist/components/DatePicker/DatePicker.d.ts +61 -0
  7. package/dist/components/DatePicker/DatePicker.js +135 -0
  8. package/dist/components/DatePicker/datepicker-utils.d.ts +68 -0
  9. package/dist/components/DatePicker/datepicker-utils.js +215 -0
  10. package/dist/components/DatePicker/index.d.ts +4 -0
  11. package/dist/components/Field/Field.js +29 -26
  12. package/dist/components/Field/index.js +6 -0
  13. package/dist/components/Pill/Pill.js +2 -2
  14. package/dist/components/Popover/Popover.d.ts +74 -0
  15. package/dist/components/Popover/Popover.js +75 -0
  16. package/dist/components/Popover/index.d.ts +4 -0
  17. package/dist/components/Popover/index.js +5 -0
  18. package/dist/components/Radio/Radio.d.ts +7 -1
  19. package/dist/components/Radio/Radio.js +4 -0
  20. package/dist/components/Searchbox/Searchbox.js +4 -3
  21. package/dist/components/Select/Select.d.ts +3 -0
  22. package/dist/components/Select/Select.js +4 -1
  23. package/dist/components/Signpost/Signpost.js +2 -2
  24. package/dist/components/Tag/Tag.js +2 -2
  25. package/dist/components/TextInput/TextInput.d.ts +6 -1
  26. package/dist/components/TextInput/TextInput.js +3 -0
  27. package/dist/components/Textarea/Textarea.d.ts +8 -5
  28. package/dist/components/Textarea/Textarea.js +5 -4
  29. package/dist/hooks/useSlots.js +3 -3
  30. package/dist/index.d.ts +2 -0
  31. package/dist/index.js +2 -0
  32. package/dist/node_modules/@date-fns/tz/date/index.js +83 -0
  33. package/dist/node_modules/@date-fns/tz/date/mini.js +235 -0
  34. package/dist/node_modules/@date-fns/tz/tzName/index.js +39 -0
  35. package/dist/node_modules/@date-fns/tz/tzOffset/index.js +44 -0
  36. package/dist/node_modules/@floating-ui/core/dist/floating-ui.core.js +814 -0
  37. package/dist/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +751 -0
  38. package/dist/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js +350 -0
  39. package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +161 -0
  40. package/dist/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +137 -0
  41. package/dist/node_modules/@radix-ui/primitive/dist/index.js +11 -0
  42. package/dist/node_modules/@radix-ui/react-arrow/dist/index.js +25 -0
  43. package/dist/node_modules/@radix-ui/react-compose-refs/dist/index.js +39 -0
  44. package/dist/node_modules/@radix-ui/react-context/dist/index.js +63 -0
  45. package/dist/node_modules/@radix-ui/react-dismissable-layer/dist/index.js +213 -0
  46. package/dist/node_modules/@radix-ui/react-focus-guards/dist/index.js +31 -0
  47. package/dist/node_modules/@radix-ui/react-focus-scope/dist/index.js +209 -0
  48. package/dist/node_modules/@radix-ui/react-id/dist/index.js +15 -0
  49. package/dist/node_modules/@radix-ui/react-popover/dist/index.js +303 -0
  50. package/dist/node_modules/@radix-ui/react-popper/dist/index.js +285 -0
  51. package/dist/node_modules/@radix-ui/react-portal/dist/index.js +19 -0
  52. package/dist/node_modules/@radix-ui/react-presence/dist/index.js +132 -0
  53. package/dist/node_modules/@radix-ui/react-primitive/dist/index.js +43 -0
  54. package/dist/node_modules/@radix-ui/react-slot/dist/index.js +89 -0
  55. package/dist/node_modules/@radix-ui/react-use-callback-ref/dist/index.js +12 -0
  56. package/dist/node_modules/@radix-ui/react-use-controllable-state/dist/index.js +70 -0
  57. package/dist/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js +18 -0
  58. package/dist/node_modules/@radix-ui/react-use-layout-effect/dist/index.js +7 -0
  59. package/dist/node_modules/@radix-ui/react-use-size/dist/index.js +40 -0
  60. package/dist/node_modules/aria-hidden/dist/es2015/index.js +137 -0
  61. package/dist/node_modules/date-fns/_lib/addLeadingZeros.js +7 -0
  62. package/dist/node_modules/date-fns/_lib/defaultOptions.js +7 -0
  63. package/dist/node_modules/date-fns/_lib/format/formatters.js +775 -0
  64. package/dist/node_modules/date-fns/_lib/format/lightFormatters.js +94 -0
  65. package/dist/node_modules/date-fns/_lib/format/longFormatters.js +66 -0
  66. package/dist/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js +31 -0
  67. package/dist/node_modules/date-fns/_lib/normalizeDates.js +11 -0
  68. package/dist/node_modules/date-fns/_lib/normalizeInterval.js +8 -0
  69. package/dist/node_modules/date-fns/_lib/protectedTokens.js +25 -0
  70. package/dist/node_modules/date-fns/addDays.js +41 -0
  71. package/dist/node_modules/date-fns/addMonths.js +75 -0
  72. package/dist/node_modules/date-fns/addWeeks.js +33 -0
  73. package/dist/node_modules/date-fns/addYears.js +33 -0
  74. package/dist/node_modules/date-fns/constants.js +67 -0
  75. package/dist/node_modules/date-fns/constructFrom.js +49 -0
  76. package/dist/node_modules/date-fns/differenceInCalendarDays.js +62 -0
  77. package/dist/node_modules/date-fns/differenceInCalendarMonths.js +42 -0
  78. package/dist/node_modules/date-fns/eachMonthOfInterval.js +65 -0
  79. package/dist/node_modules/date-fns/eachYearOfInterval.js +65 -0
  80. package/dist/node_modules/date-fns/endOfISOWeek.js +35 -0
  81. package/dist/node_modules/date-fns/endOfMonth.js +37 -0
  82. package/dist/node_modules/date-fns/endOfWeek.js +53 -0
  83. package/dist/node_modules/date-fns/endOfYear.js +37 -0
  84. package/dist/node_modules/date-fns/format.js +423 -0
  85. package/dist/node_modules/date-fns/getDayOfYear.js +34 -0
  86. package/dist/node_modules/date-fns/getDaysInMonth.js +36 -0
  87. package/dist/node_modules/date-fns/getDefaultOptions.js +31 -0
  88. package/dist/node_modules/date-fns/getISODay.js +33 -0
  89. package/dist/node_modules/date-fns/getISOWeek.js +40 -0
  90. package/dist/node_modules/date-fns/getISOWeekYear.js +52 -0
  91. package/dist/node_modules/date-fns/getMonth.js +29 -0
  92. package/dist/node_modules/date-fns/getWeek.js +54 -0
  93. package/dist/node_modules/date-fns/getWeekYear.js +75 -0
  94. package/dist/node_modules/date-fns/getYear.js +29 -0
  95. package/dist/node_modules/date-fns/isAfter.js +25 -0
  96. package/dist/node_modules/date-fns/isBefore.js +25 -0
  97. package/dist/node_modules/date-fns/isDate.js +41 -0
  98. package/dist/node_modules/date-fns/isSameDay.js +46 -0
  99. package/dist/node_modules/date-fns/isSameMonth.js +43 -0
  100. package/dist/node_modules/date-fns/isSameYear.js +35 -0
  101. package/dist/node_modules/date-fns/isValid.js +39 -0
  102. package/dist/node_modules/date-fns/locale/_lib/buildFormatLongFn.js +10 -0
  103. package/dist/node_modules/date-fns/locale/_lib/buildLocalizeFn.js +64 -0
  104. package/dist/node_modules/date-fns/locale/_lib/buildMatchFn.js +59 -0
  105. package/dist/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js +22 -0
  106. package/dist/node_modules/date-fns/locale/en-US/_lib/formatDistance.js +103 -0
  107. package/dist/node_modules/date-fns/locale/en-US/_lib/formatLong.js +41 -0
  108. package/dist/node_modules/date-fns/locale/en-US/_lib/formatRelative.js +13 -0
  109. package/dist/node_modules/date-fns/locale/en-US/_lib/localize.js +189 -0
  110. package/dist/node_modules/date-fns/locale/en-US/_lib/match.js +134 -0
  111. package/dist/node_modules/date-fns/locale/en-US.js +28 -0
  112. package/dist/node_modules/date-fns/max.js +49 -0
  113. package/dist/node_modules/date-fns/min.js +49 -0
  114. package/dist/node_modules/date-fns/parse/_lib/Parser.js +27 -0
  115. package/dist/node_modules/date-fns/parse/_lib/Setter.js +59 -0
  116. package/dist/node_modules/date-fns/parse/_lib/constants.js +33 -0
  117. package/dist/node_modules/date-fns/parse/_lib/parsers/AMPMMidnightParser.js +55 -0
  118. package/dist/node_modules/date-fns/parse/_lib/parsers/AMPMParser.js +55 -0
  119. package/dist/node_modules/date-fns/parse/_lib/parsers/DateParser.js +59 -0
  120. package/dist/node_modules/date-fns/parse/_lib/parsers/DayOfYearParser.js +57 -0
  121. package/dist/node_modules/date-fns/parse/_lib/parsers/DayParser.js +64 -0
  122. package/dist/node_modules/date-fns/parse/_lib/parsers/DayPeriodParser.js +56 -0
  123. package/dist/node_modules/date-fns/parse/_lib/parsers/EraParser.js +41 -0
  124. package/dist/node_modules/date-fns/parse/_lib/parsers/ExtendedYearParser.js +24 -0
  125. package/dist/node_modules/date-fns/parse/_lib/parsers/FractionOfSecondParser.js +21 -0
  126. package/dist/node_modules/date-fns/parse/_lib/parsers/Hour0To11Parser.js +36 -0
  127. package/dist/node_modules/date-fns/parse/_lib/parsers/Hour0to23Parser.js +31 -0
  128. package/dist/node_modules/date-fns/parse/_lib/parsers/Hour1To24Parser.js +32 -0
  129. package/dist/node_modules/date-fns/parse/_lib/parsers/Hour1to12Parser.js +38 -0
  130. package/dist/node_modules/date-fns/parse/_lib/parsers/ISODayParser.js +118 -0
  131. package/dist/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneParser.js +47 -0
  132. package/dist/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneWithZParser.js +47 -0
  133. package/dist/node_modules/date-fns/parse/_lib/parsers/ISOWeekParser.js +48 -0
  134. package/dist/node_modules/date-fns/parse/_lib/parsers/ISOWeekYearParser.js +44 -0
  135. package/dist/node_modules/date-fns/parse/_lib/parsers/LocalDayParser.js +96 -0
  136. package/dist/node_modules/date-fns/parse/_lib/parsers/LocalWeekParser.js +47 -0
  137. package/dist/node_modules/date-fns/parse/_lib/parsers/LocalWeekYearParser.js +76 -0
  138. package/dist/node_modules/date-fns/parse/_lib/parsers/MinuteParser.js +31 -0
  139. package/dist/node_modules/date-fns/parse/_lib/parsers/MonthParser.js +86 -0
  140. package/dist/node_modules/date-fns/parse/_lib/parsers/QuarterParser.js +83 -0
  141. package/dist/node_modules/date-fns/parse/_lib/parsers/SecondParser.js +31 -0
  142. package/dist/node_modules/date-fns/parse/_lib/parsers/StandAloneLocalDayParser.js +97 -0
  143. package/dist/node_modules/date-fns/parse/_lib/parsers/StandAloneMonthParser.js +86 -0
  144. package/dist/node_modules/date-fns/parse/_lib/parsers/StandAloneQuarterParser.js +83 -0
  145. package/dist/node_modules/date-fns/parse/_lib/parsers/TimestampMillisecondsParser.js +19 -0
  146. package/dist/node_modules/date-fns/parse/_lib/parsers/TimestampSecondsParser.js +19 -0
  147. package/dist/node_modules/date-fns/parse/_lib/parsers/YearParser.js +62 -0
  148. package/dist/node_modules/date-fns/parse/_lib/parsers.js +110 -0
  149. package/dist/node_modules/date-fns/parse/_lib/utils.js +135 -0
  150. package/dist/node_modules/date-fns/parse.js +497 -0
  151. package/dist/node_modules/date-fns/setDay.js +59 -0
  152. package/dist/node_modules/date-fns/setISODay.js +40 -0
  153. package/dist/node_modules/date-fns/setISOWeek.js +39 -0
  154. package/dist/node_modules/date-fns/setMonth.js +46 -0
  155. package/dist/node_modules/date-fns/setWeek.js +53 -0
  156. package/dist/node_modules/date-fns/setYear.js +40 -0
  157. package/dist/node_modules/date-fns/startOfDay.js +35 -0
  158. package/dist/node_modules/date-fns/startOfISOWeek.js +35 -0
  159. package/dist/node_modules/date-fns/startOfISOWeekYear.js +42 -0
  160. package/dist/node_modules/date-fns/startOfMonth.js +37 -0
  161. package/dist/node_modules/date-fns/startOfWeek.js +53 -0
  162. package/dist/node_modules/date-fns/startOfWeekYear.js +64 -0
  163. package/dist/node_modules/date-fns/startOfYear.js +36 -0
  164. package/dist/node_modules/date-fns/toDate.js +46 -0
  165. package/dist/node_modules/date-fns/transpose.js +52 -0
  166. package/dist/node_modules/get-nonce/dist/es2015/index.js +8 -0
  167. package/dist/node_modules/react-day-picker/dist/esm/DayPicker.js +320 -0
  168. package/dist/node_modules/react-day-picker/dist/esm/UI.js +122 -0
  169. package/dist/node_modules/react-day-picker/dist/esm/classes/CalendarDay.js +33 -0
  170. package/dist/node_modules/react-day-picker/dist/esm/classes/CalendarMonth.js +14 -0
  171. package/dist/node_modules/react-day-picker/dist/esm/classes/CalendarWeek.js +13 -0
  172. package/dist/node_modules/react-day-picker/dist/esm/classes/DateLib.js +604 -0
  173. package/dist/node_modules/react-day-picker/dist/esm/components/Button.js +13 -0
  174. package/dist/node_modules/react-day-picker/dist/esm/components/CaptionLabel.js +13 -0
  175. package/dist/node_modules/react-day-picker/dist/esm/components/Chevron.js +20 -0
  176. package/dist/node_modules/react-day-picker/dist/esm/components/Day.js +18 -0
  177. package/dist/node_modules/react-day-picker/dist/esm/components/DayButton.js +19 -0
  178. package/dist/node_modules/react-day-picker/dist/esm/components/Dropdown.js +21 -0
  179. package/dist/node_modules/react-day-picker/dist/esm/components/DropdownNav.js +13 -0
  180. package/dist/node_modules/react-day-picker/dist/esm/components/Footer.js +13 -0
  181. package/dist/node_modules/react-day-picker/dist/esm/components/Month.js +15 -0
  182. package/dist/node_modules/react-day-picker/dist/esm/components/MonthCaption.js +14 -0
  183. package/dist/node_modules/react-day-picker/dist/esm/components/MonthGrid.js +13 -0
  184. package/dist/node_modules/react-day-picker/dist/esm/components/Months.js +13 -0
  185. package/dist/node_modules/react-day-picker/dist/esm/components/MonthsDropdown.js +15 -0
  186. package/dist/node_modules/react-day-picker/dist/esm/components/Nav.js +31 -0
  187. package/dist/node_modules/react-day-picker/dist/esm/components/NextMonthButton.js +15 -0
  188. package/dist/node_modules/react-day-picker/dist/esm/components/Option.js +13 -0
  189. package/dist/node_modules/react-day-picker/dist/esm/components/PreviousMonthButton.js +15 -0
  190. package/dist/node_modules/react-day-picker/dist/esm/components/Root.js +14 -0
  191. package/dist/node_modules/react-day-picker/dist/esm/components/Select.js +13 -0
  192. package/dist/node_modules/react-day-picker/dist/esm/components/Week.js +14 -0
  193. package/dist/node_modules/react-day-picker/dist/esm/components/WeekNumber.js +14 -0
  194. package/dist/node_modules/react-day-picker/dist/esm/components/WeekNumberHeader.js +13 -0
  195. package/dist/node_modules/react-day-picker/dist/esm/components/Weekday.js +13 -0
  196. package/dist/node_modules/react-day-picker/dist/esm/components/Weekdays.js +14 -0
  197. package/dist/node_modules/react-day-picker/dist/esm/components/Weeks.js +13 -0
  198. package/dist/node_modules/react-day-picker/dist/esm/components/YearsDropdown.js +15 -0
  199. package/dist/node_modules/react-day-picker/dist/esm/components/custom-components.js +26 -0
  200. package/dist/node_modules/react-day-picker/dist/esm/formatters/formatCaption.js +26 -0
  201. package/dist/node_modules/react-day-picker/dist/esm/formatters/formatDay.js +19 -0
  202. package/dist/node_modules/react-day-picker/dist/esm/formatters/formatMonthDropdown.js +18 -0
  203. package/dist/node_modules/react-day-picker/dist/esm/formatters/formatWeekNumber.js +21 -0
  204. package/dist/node_modules/react-day-picker/dist/esm/formatters/formatWeekNumberHeader.js +13 -0
  205. package/dist/node_modules/react-day-picker/dist/esm/formatters/formatWeekdayName.js +19 -0
  206. package/dist/node_modules/react-day-picker/dist/esm/formatters/formatYearDropdown.js +23 -0
  207. package/dist/node_modules/react-day-picker/dist/esm/formatters/index.js +7 -0
  208. package/dist/node_modules/react-day-picker/dist/esm/helpers/calculateFocusTarget.js +73 -0
  209. package/dist/node_modules/react-day-picker/dist/esm/helpers/createGetModifiers.js +95 -0
  210. package/dist/node_modules/react-day-picker/dist/esm/helpers/endOfBroadcastWeek.js +22 -0
  211. package/dist/node_modules/react-day-picker/dist/esm/helpers/getBroadcastWeeksInMonth.js +28 -0
  212. package/dist/node_modules/react-day-picker/dist/esm/helpers/getClassNamesForModifiers.js +33 -0
  213. package/dist/node_modules/react-day-picker/dist/esm/helpers/getComponents.js +20 -0
  214. package/dist/node_modules/react-day-picker/dist/esm/helpers/getDataAttributes.js +27 -0
  215. package/dist/node_modules/react-day-picker/dist/esm/helpers/getDates.js +59 -0
  216. package/dist/node_modules/react-day-picker/dist/esm/helpers/getDays.js +19 -0
  217. package/dist/node_modules/react-day-picker/dist/esm/helpers/getDefaultClassNames.js +33 -0
  218. package/dist/node_modules/react-day-picker/dist/esm/helpers/getDisplayMonths.js +24 -0
  219. package/dist/node_modules/react-day-picker/dist/esm/helpers/getFocusableDate.js +46 -0
  220. package/dist/node_modules/react-day-picker/dist/esm/helpers/getFormatters.js +24 -0
  221. package/dist/node_modules/react-day-picker/dist/esm/helpers/getInitialMonth.js +27 -0
  222. package/dist/node_modules/react-day-picker/dist/esm/helpers/getLabels.js +53 -0
  223. package/dist/node_modules/react-day-picker/dist/esm/helpers/getMonthOptions.js +33 -0
  224. package/dist/node_modules/react-day-picker/dist/esm/helpers/getMonths.js +69 -0
  225. package/dist/node_modules/react-day-picker/dist/esm/helpers/getNavMonth.js +51 -0
  226. package/dist/node_modules/react-day-picker/dist/esm/helpers/getNextFocus.js +40 -0
  227. package/dist/node_modules/react-day-picker/dist/esm/helpers/getNextMonth.js +36 -0
  228. package/dist/node_modules/react-day-picker/dist/esm/helpers/getPreviousMonth.js +37 -0
  229. package/dist/node_modules/react-day-picker/dist/esm/helpers/getStyleForModifiers.js +27 -0
  230. package/dist/node_modules/react-day-picker/dist/esm/helpers/getWeekdays.js +26 -0
  231. package/dist/node_modules/react-day-picker/dist/esm/helpers/getWeeks.js +14 -0
  232. package/dist/node_modules/react-day-picker/dist/esm/helpers/getYearOptions.js +36 -0
  233. package/dist/node_modules/react-day-picker/dist/esm/helpers/startOfBroadcastWeek.js +27 -0
  234. package/dist/node_modules/react-day-picker/dist/esm/helpers/useControlledValue.js +31 -0
  235. package/dist/node_modules/react-day-picker/dist/esm/labels/index.js +11 -0
  236. package/dist/node_modules/react-day-picker/dist/esm/labels/labelDayButton.js +32 -0
  237. package/dist/node_modules/react-day-picker/dist/esm/labels/labelGrid.js +25 -0
  238. package/dist/node_modules/react-day-picker/dist/esm/labels/labelGridcell.js +22 -0
  239. package/dist/node_modules/react-day-picker/dist/esm/labels/labelMonthDropdown.js +14 -0
  240. package/dist/node_modules/react-day-picker/dist/esm/labels/labelNav.js +13 -0
  241. package/dist/node_modules/react-day-picker/dist/esm/labels/labelNext.js +16 -0
  242. package/dist/node_modules/react-day-picker/dist/esm/labels/labelPrevious.js +15 -0
  243. package/dist/node_modules/react-day-picker/dist/esm/labels/labelWeekNumber.js +15 -0
  244. package/dist/node_modules/react-day-picker/dist/esm/labels/labelWeekNumberHeader.js +14 -0
  245. package/dist/node_modules/react-day-picker/dist/esm/labels/labelWeekday.js +18 -0
  246. package/dist/node_modules/react-day-picker/dist/esm/labels/labelYearDropdown.js +14 -0
  247. package/dist/node_modules/react-day-picker/dist/esm/locale/en-US.js +67 -0
  248. package/dist/node_modules/react-day-picker/dist/esm/selection/useMulti.js +57 -0
  249. package/dist/node_modules/react-day-picker/dist/esm/selection/useRange.js +45 -0
  250. package/dist/node_modules/react-day-picker/dist/esm/selection/useSingle.js +44 -0
  251. package/dist/node_modules/react-day-picker/dist/esm/useAnimation.js +174 -0
  252. package/dist/node_modules/react-day-picker/dist/esm/useCalendar.js +113 -0
  253. package/dist/node_modules/react-day-picker/dist/esm/useDayPicker.js +25 -0
  254. package/dist/node_modules/react-day-picker/dist/esm/useFocus.js +56 -0
  255. package/dist/node_modules/react-day-picker/dist/esm/useSelection.js +31 -0
  256. package/dist/node_modules/react-day-picker/dist/esm/utils/addToRange.js +95 -0
  257. package/dist/node_modules/react-day-picker/dist/esm/utils/convertMatchersToTimeZone.js +57 -0
  258. package/dist/node_modules/react-day-picker/dist/esm/utils/dateMatchModifiers.js +62 -0
  259. package/dist/node_modules/react-day-picker/dist/esm/utils/rangeContainsDayOfWeek.js +30 -0
  260. package/dist/node_modules/react-day-picker/dist/esm/utils/rangeContainsModifiers.js +74 -0
  261. package/dist/node_modules/react-day-picker/dist/esm/utils/rangeIncludesDate.js +35 -0
  262. package/dist/node_modules/react-day-picker/dist/esm/utils/rangeOverlaps.js +21 -0
  263. package/dist/node_modules/react-day-picker/dist/esm/utils/toTimeZone.js +16 -0
  264. package/dist/node_modules/react-day-picker/dist/esm/utils/typeguards.js +66 -0
  265. package/dist/node_modules/react-remove-scroll/dist/es2015/Combination.js +9 -0
  266. package/dist/node_modules/react-remove-scroll/dist/es2015/SideEffect.js +167 -0
  267. package/dist/node_modules/react-remove-scroll/dist/es2015/UI.js +38 -0
  268. package/dist/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js +21 -0
  269. package/dist/node_modules/react-remove-scroll/dist/es2015/handleScroll.js +110 -0
  270. package/dist/node_modules/react-remove-scroll/dist/es2015/medium.js +5 -0
  271. package/dist/node_modules/react-remove-scroll/dist/es2015/sidecar.js +7 -0
  272. package/dist/node_modules/react-remove-scroll-bar/dist/es2015/component.js +56 -0
  273. package/dist/node_modules/react-remove-scroll-bar/dist/es2015/constants.js +10 -0
  274. package/dist/node_modules/react-remove-scroll-bar/dist/es2015/utils.js +31 -0
  275. package/dist/node_modules/react-style-singleton/dist/es2015/component.js +19 -0
  276. package/dist/node_modules/react-style-singleton/dist/es2015/hook.js +25 -0
  277. package/dist/node_modules/react-style-singleton/dist/es2015/singleton.js +51 -0
  278. package/dist/node_modules/tslib/tslib.es6.js +56 -0
  279. package/dist/node_modules/use-callback-ref/dist/es2015/assignRef.js +24 -0
  280. package/dist/node_modules/use-callback-ref/dist/es2015/useMergeRef.js +48 -0
  281. package/dist/node_modules/use-callback-ref/dist/es2015/useRef.js +42 -0
  282. package/dist/node_modules/use-sidecar/dist/es2015/exports.js +21 -0
  283. package/dist/node_modules/use-sidecar/dist/es2015/medium.js +77 -0
  284. package/dist/types/index.d.ts +10 -0
  285. package/package.json +17 -13
  286. package/src/components/Checkbox/Checkbox.tsx +6 -1
  287. package/src/components/DatePicker/DatePicker.tsx +372 -0
  288. package/src/components/DatePicker/datepicker-utils.ts +269 -0
  289. package/src/components/DatePicker/index.ts +5 -0
  290. package/src/components/Field/Field.tsx +30 -28
  291. package/src/components/Popover/Popover.tsx +198 -0
  292. package/src/components/Popover/index.ts +5 -0
  293. package/src/components/Radio/Radio.tsx +6 -1
  294. package/src/components/Searchbox/Searchbox.tsx +4 -1
  295. package/src/components/Select/Select.tsx +7 -2
  296. package/src/components/TextInput/TextInput.tsx +5 -1
  297. package/src/components/Textarea/Textarea.tsx +9 -13
  298. package/src/index.ts +2 -0
  299. package/src/types/index.ts +15 -0
@@ -0,0 +1,303 @@
1
+
2
+ "use client";
3
+ import * as React from 'react';
4
+ import { composeEventHandlers } from '../../primitive/dist/index.js';
5
+ import { useComposedRefs } from '../../react-compose-refs/dist/index.js';
6
+ import { createContextScope } from '../../react-context/dist/index.js';
7
+ import { DismissableLayer } from '../../react-dismissable-layer/dist/index.js';
8
+ import { useFocusGuards } from '../../react-focus-guards/dist/index.js';
9
+ import { FocusScope } from '../../react-focus-scope/dist/index.js';
10
+ import { useId } from '../../react-id/dist/index.js';
11
+ import { createPopperScope, Root as Root2$1, Anchor, Content, Arrow } from '../../react-popper/dist/index.js';
12
+ import { Portal as Portal$1 } from '../../react-portal/dist/index.js';
13
+ import { Presence } from '../../react-presence/dist/index.js';
14
+ import { Primitive } from '../../react-primitive/dist/index.js';
15
+ import { createSlot } from '../../react-slot/dist/index.js';
16
+ import { useControllableState } from '../../react-use-controllable-state/dist/index.js';
17
+ import { hideOthers } from '../../../aria-hidden/dist/es2015/index.js';
18
+ import ReactRemoveScroll from '../../../react-remove-scroll/dist/es2015/Combination.js';
19
+ import { jsx } from 'react/jsx-runtime';
20
+
21
+ var POPOVER_NAME = "Popover";
22
+ var [createPopoverContext] = createContextScope(POPOVER_NAME, [
23
+ createPopperScope
24
+ ]);
25
+ var usePopperScope = createPopperScope();
26
+ var [PopoverProvider, usePopoverContext] = createPopoverContext(POPOVER_NAME);
27
+ var Popover = (props) => {
28
+ const {
29
+ __scopePopover,
30
+ children,
31
+ open: openProp,
32
+ defaultOpen,
33
+ onOpenChange,
34
+ modal = false
35
+ } = props;
36
+ const popperScope = usePopperScope(__scopePopover);
37
+ const triggerRef = React.useRef(null);
38
+ const [hasCustomAnchor, setHasCustomAnchor] = React.useState(false);
39
+ const [open, setOpen] = useControllableState({
40
+ prop: openProp,
41
+ defaultProp: defaultOpen ?? false,
42
+ onChange: onOpenChange,
43
+ caller: POPOVER_NAME
44
+ });
45
+ return /* @__PURE__ */ jsx(Root2$1, { ...popperScope, children: /* @__PURE__ */ jsx(
46
+ PopoverProvider,
47
+ {
48
+ scope: __scopePopover,
49
+ contentId: useId(),
50
+ triggerRef,
51
+ open,
52
+ onOpenChange: setOpen,
53
+ onOpenToggle: React.useCallback(() => setOpen((prevOpen) => !prevOpen), [setOpen]),
54
+ hasCustomAnchor,
55
+ onCustomAnchorAdd: React.useCallback(() => setHasCustomAnchor(true), []),
56
+ onCustomAnchorRemove: React.useCallback(() => setHasCustomAnchor(false), []),
57
+ modal,
58
+ children
59
+ }
60
+ ) });
61
+ };
62
+ Popover.displayName = POPOVER_NAME;
63
+ var ANCHOR_NAME = "PopoverAnchor";
64
+ var PopoverAnchor = React.forwardRef(
65
+ (props, forwardedRef) => {
66
+ const { __scopePopover, ...anchorProps } = props;
67
+ const context = usePopoverContext(ANCHOR_NAME, __scopePopover);
68
+ const popperScope = usePopperScope(__scopePopover);
69
+ const { onCustomAnchorAdd, onCustomAnchorRemove } = context;
70
+ React.useEffect(() => {
71
+ onCustomAnchorAdd();
72
+ return () => onCustomAnchorRemove();
73
+ }, [onCustomAnchorAdd, onCustomAnchorRemove]);
74
+ return /* @__PURE__ */ jsx(Anchor, { ...popperScope, ...anchorProps, ref: forwardedRef });
75
+ }
76
+ );
77
+ PopoverAnchor.displayName = ANCHOR_NAME;
78
+ var TRIGGER_NAME = "PopoverTrigger";
79
+ var PopoverTrigger = React.forwardRef(
80
+ (props, forwardedRef) => {
81
+ const { __scopePopover, ...triggerProps } = props;
82
+ const context = usePopoverContext(TRIGGER_NAME, __scopePopover);
83
+ const popperScope = usePopperScope(__scopePopover);
84
+ const composedTriggerRef = useComposedRefs(forwardedRef, context.triggerRef);
85
+ const trigger = /* @__PURE__ */ jsx(
86
+ Primitive.button,
87
+ {
88
+ type: "button",
89
+ "aria-haspopup": "dialog",
90
+ "aria-expanded": context.open,
91
+ "aria-controls": context.contentId,
92
+ "data-state": getState(context.open),
93
+ ...triggerProps,
94
+ ref: composedTriggerRef,
95
+ onClick: composeEventHandlers(props.onClick, context.onOpenToggle)
96
+ }
97
+ );
98
+ return context.hasCustomAnchor ? trigger : /* @__PURE__ */ jsx(Anchor, { asChild: true, ...popperScope, children: trigger });
99
+ }
100
+ );
101
+ PopoverTrigger.displayName = TRIGGER_NAME;
102
+ var PORTAL_NAME = "PopoverPortal";
103
+ var [PortalProvider, usePortalContext] = createPopoverContext(PORTAL_NAME, {
104
+ forceMount: void 0
105
+ });
106
+ var PopoverPortal = (props) => {
107
+ const { __scopePopover, forceMount, children, container } = props;
108
+ const context = usePopoverContext(PORTAL_NAME, __scopePopover);
109
+ return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopePopover, forceMount, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(Portal$1, { asChild: true, container, children }) }) });
110
+ };
111
+ PopoverPortal.displayName = PORTAL_NAME;
112
+ var CONTENT_NAME = "PopoverContent";
113
+ var PopoverContent = React.forwardRef(
114
+ (props, forwardedRef) => {
115
+ const portalContext = usePortalContext(CONTENT_NAME, props.__scopePopover);
116
+ const { forceMount = portalContext.forceMount, ...contentProps } = props;
117
+ const context = usePopoverContext(CONTENT_NAME, props.__scopePopover);
118
+ return /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: context.modal ? /* @__PURE__ */ jsx(PopoverContentModal, { ...contentProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(PopoverContentNonModal, { ...contentProps, ref: forwardedRef }) });
119
+ }
120
+ );
121
+ PopoverContent.displayName = CONTENT_NAME;
122
+ var Slot = createSlot("PopoverContent.RemoveScroll");
123
+ var PopoverContentModal = React.forwardRef(
124
+ (props, forwardedRef) => {
125
+ const context = usePopoverContext(CONTENT_NAME, props.__scopePopover);
126
+ const contentRef = React.useRef(null);
127
+ const composedRefs = useComposedRefs(forwardedRef, contentRef);
128
+ const isRightClickOutsideRef = React.useRef(false);
129
+ React.useEffect(() => {
130
+ const content = contentRef.current;
131
+ if (content) return hideOthers(content);
132
+ }, []);
133
+ return /* @__PURE__ */ jsx(ReactRemoveScroll, { as: Slot, allowPinchZoom: true, children: /* @__PURE__ */ jsx(
134
+ PopoverContentImpl,
135
+ {
136
+ ...props,
137
+ ref: composedRefs,
138
+ trapFocus: context.open,
139
+ disableOutsidePointerEvents: true,
140
+ onCloseAutoFocus: composeEventHandlers(props.onCloseAutoFocus, (event) => {
141
+ event.preventDefault();
142
+ if (!isRightClickOutsideRef.current) context.triggerRef.current?.focus();
143
+ }),
144
+ onPointerDownOutside: composeEventHandlers(
145
+ props.onPointerDownOutside,
146
+ (event) => {
147
+ const originalEvent = event.detail.originalEvent;
148
+ const ctrlLeftClick = originalEvent.button === 0 && originalEvent.ctrlKey === true;
149
+ const isRightClick = originalEvent.button === 2 || ctrlLeftClick;
150
+ isRightClickOutsideRef.current = isRightClick;
151
+ },
152
+ { checkForDefaultPrevented: false }
153
+ ),
154
+ onFocusOutside: composeEventHandlers(
155
+ props.onFocusOutside,
156
+ (event) => event.preventDefault(),
157
+ { checkForDefaultPrevented: false }
158
+ )
159
+ }
160
+ ) });
161
+ }
162
+ );
163
+ var PopoverContentNonModal = React.forwardRef(
164
+ (props, forwardedRef) => {
165
+ const context = usePopoverContext(CONTENT_NAME, props.__scopePopover);
166
+ const hasInteractedOutsideRef = React.useRef(false);
167
+ const hasPointerDownOutsideRef = React.useRef(false);
168
+ return /* @__PURE__ */ jsx(
169
+ PopoverContentImpl,
170
+ {
171
+ ...props,
172
+ ref: forwardedRef,
173
+ trapFocus: false,
174
+ disableOutsidePointerEvents: false,
175
+ onCloseAutoFocus: (event) => {
176
+ props.onCloseAutoFocus?.(event);
177
+ if (!event.defaultPrevented) {
178
+ if (!hasInteractedOutsideRef.current) context.triggerRef.current?.focus();
179
+ event.preventDefault();
180
+ }
181
+ hasInteractedOutsideRef.current = false;
182
+ hasPointerDownOutsideRef.current = false;
183
+ },
184
+ onInteractOutside: (event) => {
185
+ props.onInteractOutside?.(event);
186
+ if (!event.defaultPrevented) {
187
+ hasInteractedOutsideRef.current = true;
188
+ if (event.detail.originalEvent.type === "pointerdown") {
189
+ hasPointerDownOutsideRef.current = true;
190
+ }
191
+ }
192
+ const target = event.target;
193
+ const targetIsTrigger = context.triggerRef.current?.contains(target);
194
+ if (targetIsTrigger) event.preventDefault();
195
+ if (event.detail.originalEvent.type === "focusin" && hasPointerDownOutsideRef.current) {
196
+ event.preventDefault();
197
+ }
198
+ }
199
+ }
200
+ );
201
+ }
202
+ );
203
+ var PopoverContentImpl = React.forwardRef(
204
+ (props, forwardedRef) => {
205
+ const {
206
+ __scopePopover,
207
+ trapFocus,
208
+ onOpenAutoFocus,
209
+ onCloseAutoFocus,
210
+ disableOutsidePointerEvents,
211
+ onEscapeKeyDown,
212
+ onPointerDownOutside,
213
+ onFocusOutside,
214
+ onInteractOutside,
215
+ ...contentProps
216
+ } = props;
217
+ const context = usePopoverContext(CONTENT_NAME, __scopePopover);
218
+ const popperScope = usePopperScope(__scopePopover);
219
+ useFocusGuards();
220
+ return /* @__PURE__ */ jsx(
221
+ FocusScope,
222
+ {
223
+ asChild: true,
224
+ loop: true,
225
+ trapped: trapFocus,
226
+ onMountAutoFocus: onOpenAutoFocus,
227
+ onUnmountAutoFocus: onCloseAutoFocus,
228
+ children: /* @__PURE__ */ jsx(
229
+ DismissableLayer,
230
+ {
231
+ asChild: true,
232
+ disableOutsidePointerEvents,
233
+ onInteractOutside,
234
+ onEscapeKeyDown,
235
+ onPointerDownOutside,
236
+ onFocusOutside,
237
+ onDismiss: () => context.onOpenChange(false),
238
+ children: /* @__PURE__ */ jsx(
239
+ Content,
240
+ {
241
+ "data-state": getState(context.open),
242
+ role: "dialog",
243
+ id: context.contentId,
244
+ ...popperScope,
245
+ ...contentProps,
246
+ ref: forwardedRef,
247
+ style: {
248
+ ...contentProps.style,
249
+ // re-namespace exposed content custom properties
250
+ ...{
251
+ "--radix-popover-content-transform-origin": "var(--radix-popper-transform-origin)",
252
+ "--radix-popover-content-available-width": "var(--radix-popper-available-width)",
253
+ "--radix-popover-content-available-height": "var(--radix-popper-available-height)",
254
+ "--radix-popover-trigger-width": "var(--radix-popper-anchor-width)",
255
+ "--radix-popover-trigger-height": "var(--radix-popper-anchor-height)"
256
+ }
257
+ }
258
+ }
259
+ )
260
+ }
261
+ )
262
+ }
263
+ );
264
+ }
265
+ );
266
+ var CLOSE_NAME = "PopoverClose";
267
+ var PopoverClose = React.forwardRef(
268
+ (props, forwardedRef) => {
269
+ const { __scopePopover, ...closeProps } = props;
270
+ const context = usePopoverContext(CLOSE_NAME, __scopePopover);
271
+ return /* @__PURE__ */ jsx(
272
+ Primitive.button,
273
+ {
274
+ type: "button",
275
+ ...closeProps,
276
+ ref: forwardedRef,
277
+ onClick: composeEventHandlers(props.onClick, () => context.onOpenChange(false))
278
+ }
279
+ );
280
+ }
281
+ );
282
+ PopoverClose.displayName = CLOSE_NAME;
283
+ var ARROW_NAME = "PopoverArrow";
284
+ var PopoverArrow = React.forwardRef(
285
+ (props, forwardedRef) => {
286
+ const { __scopePopover, ...arrowProps } = props;
287
+ const popperScope = usePopperScope(__scopePopover);
288
+ return /* @__PURE__ */ jsx(Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef });
289
+ }
290
+ );
291
+ PopoverArrow.displayName = ARROW_NAME;
292
+ function getState(open) {
293
+ return open ? "open" : "closed";
294
+ }
295
+ var Root2 = Popover;
296
+ var Anchor2 = PopoverAnchor;
297
+ var Trigger = PopoverTrigger;
298
+ var Portal = PopoverPortal;
299
+ var Content2 = PopoverContent;
300
+ var Close = PopoverClose;
301
+ var Arrow2 = PopoverArrow;
302
+
303
+ export { Anchor2 as Anchor, Arrow2 as Arrow, Close, Content2 as Content, Popover, PopoverAnchor, PopoverArrow, PopoverClose, PopoverContent, PopoverPortal, PopoverTrigger, Portal, Root2 as Root, Trigger };
@@ -0,0 +1,285 @@
1
+
2
+ "use client";
3
+ import * as React from 'react';
4
+ import { useFloating, offset, shift, flip, size, arrow, hide, limitShift } from '../../../@floating-ui/react-dom/dist/floating-ui.react-dom.js';
5
+ import { Root } from '../../react-arrow/dist/index.js';
6
+ import { useComposedRefs } from '../../react-compose-refs/dist/index.js';
7
+ import { createContextScope } from '../../react-context/dist/index.js';
8
+ import { Primitive } from '../../react-primitive/dist/index.js';
9
+ import { useCallbackRef } from '../../react-use-callback-ref/dist/index.js';
10
+ import { useLayoutEffect as useLayoutEffect2 } from '../../react-use-layout-effect/dist/index.js';
11
+ import { useSize } from '../../react-use-size/dist/index.js';
12
+ import { jsx } from 'react/jsx-runtime';
13
+ import { autoUpdate } from '../../../@floating-ui/dom/dist/floating-ui.dom.js';
14
+
15
+ var POPPER_NAME = "Popper";
16
+ var [createPopperContext, createPopperScope] = createContextScope(POPPER_NAME);
17
+ var [PopperProvider, usePopperContext] = createPopperContext(POPPER_NAME);
18
+ var Popper = (props) => {
19
+ const { __scopePopper, children } = props;
20
+ const [anchor, setAnchor] = React.useState(null);
21
+ return /* @__PURE__ */ jsx(PopperProvider, { scope: __scopePopper, anchor, onAnchorChange: setAnchor, children });
22
+ };
23
+ Popper.displayName = POPPER_NAME;
24
+ var ANCHOR_NAME = "PopperAnchor";
25
+ var PopperAnchor = React.forwardRef(
26
+ (props, forwardedRef) => {
27
+ const { __scopePopper, virtualRef, ...anchorProps } = props;
28
+ const context = usePopperContext(ANCHOR_NAME, __scopePopper);
29
+ const ref = React.useRef(null);
30
+ const composedRefs = useComposedRefs(forwardedRef, ref);
31
+ const anchorRef = React.useRef(null);
32
+ React.useEffect(() => {
33
+ const previousAnchor = anchorRef.current;
34
+ anchorRef.current = virtualRef?.current || ref.current;
35
+ if (previousAnchor !== anchorRef.current) {
36
+ context.onAnchorChange(anchorRef.current);
37
+ }
38
+ });
39
+ return virtualRef ? null : /* @__PURE__ */ jsx(Primitive.div, { ...anchorProps, ref: composedRefs });
40
+ }
41
+ );
42
+ PopperAnchor.displayName = ANCHOR_NAME;
43
+ var CONTENT_NAME = "PopperContent";
44
+ var [PopperContentProvider, useContentContext] = createPopperContext(CONTENT_NAME);
45
+ var PopperContent = React.forwardRef(
46
+ (props, forwardedRef) => {
47
+ const {
48
+ __scopePopper,
49
+ side = "bottom",
50
+ sideOffset = 0,
51
+ align = "center",
52
+ alignOffset = 0,
53
+ arrowPadding = 0,
54
+ avoidCollisions = true,
55
+ collisionBoundary = [],
56
+ collisionPadding: collisionPaddingProp = 0,
57
+ sticky = "partial",
58
+ hideWhenDetached = false,
59
+ updatePositionStrategy = "optimized",
60
+ onPlaced,
61
+ ...contentProps
62
+ } = props;
63
+ const context = usePopperContext(CONTENT_NAME, __scopePopper);
64
+ const [content, setContent] = React.useState(null);
65
+ const composedRefs = useComposedRefs(forwardedRef, (node) => setContent(node));
66
+ const [arrow$1, setArrow] = React.useState(null);
67
+ const arrowSize = useSize(arrow$1);
68
+ const arrowWidth = arrowSize?.width ?? 0;
69
+ const arrowHeight = arrowSize?.height ?? 0;
70
+ const desiredPlacement = side + (align !== "center" ? "-" + align : "");
71
+ const collisionPadding = typeof collisionPaddingProp === "number" ? collisionPaddingProp : { top: 0, right: 0, bottom: 0, left: 0, ...collisionPaddingProp };
72
+ const boundary = Array.isArray(collisionBoundary) ? collisionBoundary : [collisionBoundary];
73
+ const hasExplicitBoundaries = boundary.length > 0;
74
+ const detectOverflowOptions = {
75
+ padding: collisionPadding,
76
+ boundary: boundary.filter(isNotNull),
77
+ // with `strategy: 'fixed'`, this is the only way to get it to respect boundaries
78
+ altBoundary: hasExplicitBoundaries
79
+ };
80
+ const { refs, floatingStyles, placement, isPositioned, middlewareData } = useFloating({
81
+ // default to `fixed` strategy so users don't have to pick and we also avoid focus scroll issues
82
+ strategy: "fixed",
83
+ placement: desiredPlacement,
84
+ whileElementsMounted: (...args) => {
85
+ const cleanup = autoUpdate(...args, {
86
+ animationFrame: updatePositionStrategy === "always"
87
+ });
88
+ return cleanup;
89
+ },
90
+ elements: {
91
+ reference: context.anchor
92
+ },
93
+ middleware: [
94
+ offset({ mainAxis: sideOffset + arrowHeight, alignmentAxis: alignOffset }),
95
+ avoidCollisions && shift({
96
+ mainAxis: true,
97
+ crossAxis: false,
98
+ limiter: sticky === "partial" ? limitShift() : void 0,
99
+ ...detectOverflowOptions
100
+ }),
101
+ avoidCollisions && flip({ ...detectOverflowOptions }),
102
+ size({
103
+ ...detectOverflowOptions,
104
+ apply: ({ elements, rects, availableWidth, availableHeight }) => {
105
+ const { width: anchorWidth, height: anchorHeight } = rects.reference;
106
+ const contentStyle = elements.floating.style;
107
+ contentStyle.setProperty("--radix-popper-available-width", `${availableWidth}px`);
108
+ contentStyle.setProperty("--radix-popper-available-height", `${availableHeight}px`);
109
+ contentStyle.setProperty("--radix-popper-anchor-width", `${anchorWidth}px`);
110
+ contentStyle.setProperty("--radix-popper-anchor-height", `${anchorHeight}px`);
111
+ }
112
+ }),
113
+ arrow$1 && arrow({ element: arrow$1, padding: arrowPadding }),
114
+ transformOrigin({ arrowWidth, arrowHeight }),
115
+ hideWhenDetached && hide({ strategy: "referenceHidden", ...detectOverflowOptions })
116
+ ]
117
+ });
118
+ const [placedSide, placedAlign] = getSideAndAlignFromPlacement(placement);
119
+ const handlePlaced = useCallbackRef(onPlaced);
120
+ useLayoutEffect2(() => {
121
+ if (isPositioned) {
122
+ handlePlaced?.();
123
+ }
124
+ }, [isPositioned, handlePlaced]);
125
+ const arrowX = middlewareData.arrow?.x;
126
+ const arrowY = middlewareData.arrow?.y;
127
+ const cannotCenterArrow = middlewareData.arrow?.centerOffset !== 0;
128
+ const [contentZIndex, setContentZIndex] = React.useState();
129
+ useLayoutEffect2(() => {
130
+ if (content) setContentZIndex(window.getComputedStyle(content).zIndex);
131
+ }, [content]);
132
+ return /* @__PURE__ */ jsx(
133
+ "div",
134
+ {
135
+ ref: refs.setFloating,
136
+ "data-radix-popper-content-wrapper": "",
137
+ style: {
138
+ ...floatingStyles,
139
+ transform: isPositioned ? floatingStyles.transform : "translate(0, -200%)",
140
+ // keep off the page when measuring
141
+ minWidth: "max-content",
142
+ zIndex: contentZIndex,
143
+ ["--radix-popper-transform-origin"]: [
144
+ middlewareData.transformOrigin?.x,
145
+ middlewareData.transformOrigin?.y
146
+ ].join(" "),
147
+ // hide the content if using the hide middleware and should be hidden
148
+ // set visibility to hidden and disable pointer events so the UI behaves
149
+ // as if the PopperContent isn't there at all
150
+ ...middlewareData.hide?.referenceHidden && {
151
+ visibility: "hidden",
152
+ pointerEvents: "none"
153
+ }
154
+ },
155
+ dir: props.dir,
156
+ children: /* @__PURE__ */ jsx(
157
+ PopperContentProvider,
158
+ {
159
+ scope: __scopePopper,
160
+ placedSide,
161
+ onArrowChange: setArrow,
162
+ arrowX,
163
+ arrowY,
164
+ shouldHideArrow: cannotCenterArrow,
165
+ children: /* @__PURE__ */ jsx(
166
+ Primitive.div,
167
+ {
168
+ "data-side": placedSide,
169
+ "data-align": placedAlign,
170
+ ...contentProps,
171
+ ref: composedRefs,
172
+ style: {
173
+ ...contentProps.style,
174
+ // if the PopperContent hasn't been placed yet (not all measurements done)
175
+ // we prevent animations so that users's animation don't kick in too early referring wrong sides
176
+ animation: !isPositioned ? "none" : void 0
177
+ }
178
+ }
179
+ )
180
+ }
181
+ )
182
+ }
183
+ );
184
+ }
185
+ );
186
+ PopperContent.displayName = CONTENT_NAME;
187
+ var ARROW_NAME = "PopperArrow";
188
+ var OPPOSITE_SIDE = {
189
+ top: "bottom",
190
+ right: "left",
191
+ bottom: "top",
192
+ left: "right"
193
+ };
194
+ var PopperArrow = React.forwardRef(function PopperArrow2(props, forwardedRef) {
195
+ const { __scopePopper, ...arrowProps } = props;
196
+ const contentContext = useContentContext(ARROW_NAME, __scopePopper);
197
+ const baseSide = OPPOSITE_SIDE[contentContext.placedSide];
198
+ return (
199
+ // we have to use an extra wrapper because `ResizeObserver` (used by `useSize`)
200
+ // doesn't report size as we'd expect on SVG elements.
201
+ // it reports their bounding box which is effectively the largest path inside the SVG.
202
+ /* @__PURE__ */ jsx(
203
+ "span",
204
+ {
205
+ ref: contentContext.onArrowChange,
206
+ style: {
207
+ position: "absolute",
208
+ left: contentContext.arrowX,
209
+ top: contentContext.arrowY,
210
+ [baseSide]: 0,
211
+ transformOrigin: {
212
+ top: "",
213
+ right: "0 0",
214
+ bottom: "center 0",
215
+ left: "100% 0"
216
+ }[contentContext.placedSide],
217
+ transform: {
218
+ top: "translateY(100%)",
219
+ right: "translateY(50%) rotate(90deg) translateX(-50%)",
220
+ bottom: `rotate(180deg)`,
221
+ left: "translateY(50%) rotate(-90deg) translateX(50%)"
222
+ }[contentContext.placedSide],
223
+ visibility: contentContext.shouldHideArrow ? "hidden" : void 0
224
+ },
225
+ children: /* @__PURE__ */ jsx(
226
+ Root,
227
+ {
228
+ ...arrowProps,
229
+ ref: forwardedRef,
230
+ style: {
231
+ ...arrowProps.style,
232
+ // ensures the element can be measured correctly (mostly for if SVG)
233
+ display: "block"
234
+ }
235
+ }
236
+ )
237
+ }
238
+ )
239
+ );
240
+ });
241
+ PopperArrow.displayName = ARROW_NAME;
242
+ function isNotNull(value) {
243
+ return value !== null;
244
+ }
245
+ var transformOrigin = (options) => ({
246
+ name: "transformOrigin",
247
+ options,
248
+ fn(data) {
249
+ const { placement, rects, middlewareData } = data;
250
+ const cannotCenterArrow = middlewareData.arrow?.centerOffset !== 0;
251
+ const isArrowHidden = cannotCenterArrow;
252
+ const arrowWidth = isArrowHidden ? 0 : options.arrowWidth;
253
+ const arrowHeight = isArrowHidden ? 0 : options.arrowHeight;
254
+ const [placedSide, placedAlign] = getSideAndAlignFromPlacement(placement);
255
+ const noArrowAlign = { start: "0%", center: "50%", end: "100%" }[placedAlign];
256
+ const arrowXCenter = (middlewareData.arrow?.x ?? 0) + arrowWidth / 2;
257
+ const arrowYCenter = (middlewareData.arrow?.y ?? 0) + arrowHeight / 2;
258
+ let x = "";
259
+ let y = "";
260
+ if (placedSide === "bottom") {
261
+ x = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;
262
+ y = `${-arrowHeight}px`;
263
+ } else if (placedSide === "top") {
264
+ x = isArrowHidden ? noArrowAlign : `${arrowXCenter}px`;
265
+ y = `${rects.floating.height + arrowHeight}px`;
266
+ } else if (placedSide === "right") {
267
+ x = `${-arrowHeight}px`;
268
+ y = isArrowHidden ? noArrowAlign : `${arrowYCenter}px`;
269
+ } else if (placedSide === "left") {
270
+ x = `${rects.floating.width + arrowHeight}px`;
271
+ y = isArrowHidden ? noArrowAlign : `${arrowYCenter}px`;
272
+ }
273
+ return { data: { x, y } };
274
+ }
275
+ });
276
+ function getSideAndAlignFromPlacement(placement) {
277
+ const [side, align = "center"] = placement.split("-");
278
+ return [side, align];
279
+ }
280
+ var Root2 = Popper;
281
+ var Anchor = PopperAnchor;
282
+ var Content = PopperContent;
283
+ var Arrow = PopperArrow;
284
+
285
+ export { Anchor, Arrow, Content, Popper, PopperAnchor, PopperArrow, PopperContent, Root2 as Root, createPopperScope };
@@ -0,0 +1,19 @@
1
+
2
+ "use client";
3
+ import * as React from 'react';
4
+ import ReactDOM__default from 'react-dom';
5
+ import { Primitive } from '../../react-primitive/dist/index.js';
6
+ import { useLayoutEffect as useLayoutEffect2 } from '../../react-use-layout-effect/dist/index.js';
7
+ import { jsx } from 'react/jsx-runtime';
8
+
9
+ var PORTAL_NAME = "Portal";
10
+ var Portal = React.forwardRef((props, forwardedRef) => {
11
+ const { container: containerProp, ...portalProps } = props;
12
+ const [mounted, setMounted] = React.useState(false);
13
+ useLayoutEffect2(() => setMounted(true), []);
14
+ const container = containerProp || mounted && globalThis?.document?.body;
15
+ return container ? ReactDOM__default.createPortal(/* @__PURE__ */ jsx(Primitive.div, { ...portalProps, ref: forwardedRef }), container) : null;
16
+ });
17
+ Portal.displayName = PORTAL_NAME;
18
+
19
+ export { Portal };