@acronis-platform/ui-react 0.55.0 → 0.56.1

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 (523) hide show
  1. package/README.md +1 -1
  2. package/dist/components/ui/app-shell-chat/app-shell-chat.js +344 -0
  3. package/dist/components/ui/app-shell-chat/app-shell-chat.js.map +1 -0
  4. package/dist/components/ui/avatar/avatar.js +15 -15
  5. package/dist/components/ui/avatar/avatar.js.map +1 -1
  6. package/dist/components/ui/breadcrumb/breadcrumb.js +24 -24
  7. package/dist/components/ui/breadcrumb/breadcrumb.js.map +1 -1
  8. package/dist/components/ui/button/button.js +25 -34
  9. package/dist/components/ui/button/button.js.map +1 -1
  10. package/dist/components/ui/button-icon/button-icon.js +1 -1
  11. package/dist/components/ui/button-icon/button-icon.js.map +1 -1
  12. package/dist/components/ui/calendar/calendar.js +204 -0
  13. package/dist/components/ui/calendar/calendar.js.map +1 -0
  14. package/dist/components/ui/checkbox/checkbox.js +1 -1
  15. package/dist/components/ui/checkbox/checkbox.js.map +1 -1
  16. package/dist/components/ui/data-table/data-table-column-header.js +3 -3
  17. package/dist/components/ui/data-table/data-table-column-header.js.map +1 -1
  18. package/dist/components/ui/data-table/data-table-expand-trigger.js +39 -0
  19. package/dist/components/ui/data-table/data-table-expand-trigger.js.map +1 -0
  20. package/dist/components/ui/data-table/data-table-toolbar.js +62 -27
  21. package/dist/components/ui/data-table/data-table-toolbar.js.map +1 -1
  22. package/dist/components/ui/data-table/data-table-view-options.js +21 -34
  23. package/dist/components/ui/data-table/data-table-view-options.js.map +1 -1
  24. package/dist/components/ui/data-table/data-table.js +198 -75
  25. package/dist/components/ui/data-table/data-table.js.map +1 -1
  26. package/dist/components/ui/date-range-picker/date-range-picker-utils.js +28 -0
  27. package/dist/components/ui/date-range-picker/date-range-picker-utils.js.map +1 -0
  28. package/dist/components/ui/date-range-picker/date-range-picker.js +151 -0
  29. package/dist/components/ui/date-range-picker/date-range-picker.js.map +1 -0
  30. package/dist/components/ui/dialog/dialog.js +15 -15
  31. package/dist/components/ui/dialog/dialog.js.map +1 -1
  32. package/dist/components/ui/dropdown-menu/dropdown-menu.js +77 -125
  33. package/dist/components/ui/dropdown-menu/dropdown-menu.js.map +1 -1
  34. package/dist/components/ui/filter-search/filter-search.js +152 -16
  35. package/dist/components/ui/filter-search/filter-search.js.map +1 -1
  36. package/dist/components/ui/input-date-picker/input-date-picker.js +1 -1
  37. package/dist/components/ui/input-date-picker/input-date-picker.js.map +1 -1
  38. package/dist/components/ui/input-select/input-select.js +225 -154
  39. package/dist/components/ui/input-select/input-select.js.map +1 -1
  40. package/dist/components/ui/resizable/resizable.js +27 -16
  41. package/dist/components/ui/resizable/resizable.js.map +1 -1
  42. package/dist/components/ui/sheet/sheet.js +56 -59
  43. package/dist/components/ui/sheet/sheet.js.map +1 -1
  44. package/dist/components/ui/sidebar-primary/sidebar-primary.js +227 -176
  45. package/dist/components/ui/sidebar-primary/sidebar-primary.js.map +1 -1
  46. package/dist/components/ui/sidebar-secondary/sidebar-secondary.js +343 -317
  47. package/dist/components/ui/sidebar-secondary/sidebar-secondary.js.map +1 -1
  48. package/dist/components/ui/table/table-pagination.js +99 -0
  49. package/dist/components/ui/table/table-pagination.js.map +1 -0
  50. package/dist/components/ui/table/table-view-options.js +41 -0
  51. package/dist/components/ui/table/table-view-options.js.map +1 -0
  52. package/dist/components/ui/table/table.js +49 -38
  53. package/dist/components/ui/table/table.js.map +1 -1
  54. package/dist/components/ui/tooltip/tooltip.js +22 -17
  55. package/dist/components/ui/tooltip/tooltip.js.map +1 -1
  56. package/dist/hooks/use-sort-state.js +35 -0
  57. package/dist/hooks/use-sort-state.js.map +1 -0
  58. package/dist/hooks/use-table-url-state.js +115 -0
  59. package/dist/hooks/use-table-url-state.js.map +1 -0
  60. package/dist/index.js +379 -350
  61. package/dist/index.js.map +1 -1
  62. package/dist/lib/breakpoints.js +11 -0
  63. package/dist/lib/breakpoints.js.map +1 -0
  64. package/dist/lib/deep-equal.js +23 -0
  65. package/dist/lib/deep-equal.js.map +1 -0
  66. package/dist/lib/use-doc-dir.js +12 -0
  67. package/dist/lib/use-doc-dir.js.map +1 -0
  68. package/dist/node_modules/.pnpm/@date-fns_tz@1.5.0/node_modules/@date-fns/tz/date/index.js +62 -0
  69. package/dist/node_modules/.pnpm/@date-fns_tz@1.5.0/node_modules/@date-fns/tz/date/index.js.map +1 -0
  70. package/dist/node_modules/.pnpm/@date-fns_tz@1.5.0/node_modules/@date-fns/tz/date/mini.js +91 -0
  71. package/dist/node_modules/.pnpm/@date-fns_tz@1.5.0/node_modules/@date-fns/tz/date/mini.js.map +1 -0
  72. package/dist/node_modules/.pnpm/@date-fns_tz@1.5.0/node_modules/@date-fns/tz/tzName/index.js +12 -0
  73. package/dist/node_modules/.pnpm/@date-fns_tz@1.5.0/node_modules/@date-fns/tz/tzName/index.js.map +1 -0
  74. package/dist/node_modules/.pnpm/@date-fns_tz@1.5.0/node_modules/@date-fns/tz/tzOffset/index.js +23 -0
  75. package/dist/node_modules/.pnpm/@date-fns_tz@1.5.0/node_modules/@date-fns/tz/tzOffset/index.js.map +1 -0
  76. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/_lib/addLeadingZeros.js +8 -0
  77. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/_lib/addLeadingZeros.js.map +1 -0
  78. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/_lib/defaultOptions.js +8 -0
  79. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/_lib/defaultOptions.js.map +1 -0
  80. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/_lib/format/formatters.js +584 -0
  81. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/_lib/format/formatters.js.map +1 -0
  82. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/_lib/format/lightFormatters.js +60 -0
  83. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/_lib/format/lightFormatters.js.map +1 -0
  84. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/_lib/format/longFormatters.js +53 -0
  85. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/_lib/format/longFormatters.js.map +1 -0
  86. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js +19 -0
  87. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js.map +1 -0
  88. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/_lib/normalizeDates.js +12 -0
  89. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/_lib/normalizeDates.js.map +1 -0
  90. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/_lib/normalizeInterval.js +9 -0
  91. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/_lib/normalizeInterval.js.map +1 -0
  92. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/_lib/protectedTokens.js +21 -0
  93. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/_lib/protectedTokens.js.map +1 -0
  94. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/addDays.js +10 -0
  95. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/addDays.js.map +1 -0
  96. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/addMonths.js +20 -0
  97. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/addMonths.js.map +1 -0
  98. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/addWeeks.js +8 -0
  99. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/addWeeks.js.map +1 -0
  100. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/addYears.js +8 -0
  101. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/addYears.js.map +1 -0
  102. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/constants.js +10 -0
  103. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/constants.js.map +1 -0
  104. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/constructFrom.js +8 -0
  105. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/constructFrom.js.map +1 -0
  106. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/differenceInCalendarDays.js +16 -0
  107. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/differenceInCalendarDays.js.map +1 -0
  108. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/differenceInCalendarMonths.js +13 -0
  109. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/differenceInCalendarMonths.js.map +1 -0
  110. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/eachMonthOfInterval.js +17 -0
  111. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/eachMonthOfInterval.js.map +1 -0
  112. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/eachYearOfInterval.js +17 -0
  113. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/eachYearOfInterval.js.map +1 -0
  114. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/endOfISOWeek.js +8 -0
  115. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/endOfISOWeek.js.map +1 -0
  116. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/endOfMonth.js +9 -0
  117. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/endOfMonth.js.map +1 -0
  118. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/endOfWeek.js +11 -0
  119. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/endOfWeek.js.map +1 -0
  120. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/endOfYear.js +9 -0
  121. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/endOfYear.js.map +1 -0
  122. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/format.js +59 -0
  123. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/format.js.map +1 -0
  124. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/getDayOfYear.js +11 -0
  125. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/getDayOfYear.js.map +1 -0
  126. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/getDaysInMonth.js +10 -0
  127. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/getDaysInMonth.js.map +1 -0
  128. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/getDefaultOptions.js +8 -0
  129. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/getDefaultOptions.js.map +1 -0
  130. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/getISODay.js +9 -0
  131. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/getISODay.js.map +1 -0
  132. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/getISOWeek.js +12 -0
  133. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/getISOWeek.js.map +1 -0
  134. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/getISOWeekYear.js +15 -0
  135. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/getISOWeekYear.js.map +1 -0
  136. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/getMonth.js +8 -0
  137. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/getMonth.js.map +1 -0
  138. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/getWeek.js +12 -0
  139. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/getWeek.js.map +1 -0
  140. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/getWeekYear.js +17 -0
  141. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/getWeekYear.js.map +1 -0
  142. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/getYear.js +8 -0
  143. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/getYear.js.map +1 -0
  144. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/isAfter.js +8 -0
  145. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/isAfter.js.map +1 -0
  146. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/isBefore.js +8 -0
  147. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/isBefore.js.map +1 -0
  148. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/isDate.js +7 -0
  149. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/isDate.js.map +1 -0
  150. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/isSameDay.js +14 -0
  151. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/isSameDay.js.map +1 -0
  152. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/isSameMonth.js +13 -0
  153. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/isSameMonth.js.map +1 -0
  154. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/isSameYear.js +13 -0
  155. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/isSameYear.js.map +1 -0
  156. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/isValid.js +9 -0
  157. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/isValid.js.map +1 -0
  158. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/locale/_lib/buildFormatLongFn.js +10 -0
  159. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/locale/_lib/buildFormatLongFn.js.map +1 -0
  160. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/locale/_lib/buildLocalizeFn.js +19 -0
  161. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/locale/_lib/buildLocalizeFn.js.map +1 -0
  162. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/locale/_lib/buildMatchFn.js +32 -0
  163. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/locale/_lib/buildMatchFn.js.map +1 -0
  164. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js +16 -0
  165. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js.map +1 -0
  166. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/locale/en-US/_lib/formatDistance.js +71 -0
  167. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/locale/en-US/_lib/formatDistance.js.map +1 -0
  168. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/locale/en-US/_lib/formatLong.js +34 -0
  169. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/locale/en-US/_lib/formatLong.js.map +1 -0
  170. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/locale/en-US/_lib/formatRelative.js +12 -0
  171. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/locale/en-US/_lib/formatRelative.js.map +1 -0
  172. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/locale/en-US/_lib/localize.js +156 -0
  173. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/locale/en-US/_lib/localize.js.map +1 -0
  174. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/locale/en-US/_lib/match.js +111 -0
  175. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/locale/en-US/_lib/match.js.map +1 -0
  176. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/locale/en-US.js +21 -0
  177. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/locale/en-US.js.map +1 -0
  178. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/max.js +14 -0
  179. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/max.js.map +1 -0
  180. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/min.js +14 -0
  181. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/min.js.map +1 -0
  182. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/Parser.js +23 -0
  183. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/Parser.js.map +1 -0
  184. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/Setter.js +42 -0
  185. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/Setter.js.map +1 -0
  186. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/constants.js +50 -0
  187. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/constants.js.map +1 -0
  188. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/AMPMMidnightParser.js +50 -0
  189. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/AMPMMidnightParser.js.map +1 -0
  190. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/AMPMParser.js +50 -0
  191. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/AMPMParser.js.map +1 -0
  192. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/DateParser.js +62 -0
  193. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/DateParser.js.map +1 -0
  194. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/DayOfYearParser.js +52 -0
  195. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/DayOfYearParser.js.map +1 -0
  196. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/DayParser.js +50 -0
  197. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/DayParser.js.map +1 -0
  198. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/DayPeriodParser.js +50 -0
  199. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/DayPeriodParser.js.map +1 -0
  200. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/EraParser.js +34 -0
  201. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/EraParser.js.map +1 -0
  202. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/ExtendedYearParser.js +22 -0
  203. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/ExtendedYearParser.js.map +1 -0
  204. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/FractionOfSecondParser.js +23 -0
  205. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/FractionOfSecondParser.js.map +1 -0
  206. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/Hour0To11Parser.js +33 -0
  207. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/Hour0To11Parser.js.map +1 -0
  208. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/Hour0to23Parser.js +33 -0
  209. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/Hour0to23Parser.js.map +1 -0
  210. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/Hour1To24Parser.js +34 -0
  211. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/Hour1To24Parser.js.map +1 -0
  212. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/Hour1to12Parser.js +34 -0
  213. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/Hour1to12Parser.js.map +1 -0
  214. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/ISODayParser.js +106 -0
  215. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/ISODayParser.js.map +1 -0
  216. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneParser.js +49 -0
  217. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneParser.js.map +1 -0
  218. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneWithZParser.js +49 -0
  219. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/ISOTimezoneWithZParser.js.map +1 -0
  220. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/ISOWeekParser.js +50 -0
  221. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/ISOWeekParser.js.map +1 -0
  222. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/ISOWeekYearParser.js +41 -0
  223. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/ISOWeekYearParser.js.map +1 -0
  224. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/LocalDayParser.js +81 -0
  225. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/LocalDayParser.js.map +1 -0
  226. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/LocalWeekParser.js +49 -0
  227. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/LocalWeekParser.js.map +1 -0
  228. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/LocalWeekYearParser.js +70 -0
  229. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/LocalWeekYearParser.js.map +1 -0
  230. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/MinuteParser.js +33 -0
  231. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/MinuteParser.js.map +1 -0
  232. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/MonthParser.js +78 -0
  233. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/MonthParser.js.map +1 -0
  234. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/QuarterParser.js +76 -0
  235. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/QuarterParser.js.map +1 -0
  236. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/SecondParser.js +33 -0
  237. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/SecondParser.js.map +1 -0
  238. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/StandAloneLocalDayParser.js +81 -0
  239. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/StandAloneLocalDayParser.js.map +1 -0
  240. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/StandAloneMonthParser.js +78 -0
  241. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/StandAloneMonthParser.js.map +1 -0
  242. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/StandAloneQuarterParser.js +76 -0
  243. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/StandAloneQuarterParser.js.map +1 -0
  244. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/TimestampMillisecondsParser.js +23 -0
  245. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/TimestampMillisecondsParser.js.map +1 -0
  246. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/TimestampSecondsParser.js +23 -0
  247. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/TimestampSecondsParser.js.map +1 -0
  248. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/YearParser.js +50 -0
  249. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers/YearParser.js.map +1 -0
  250. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers.js +68 -0
  251. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/parsers.js.map +1 -0
  252. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/utils.js +104 -0
  253. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse/_lib/utils.js.map +1 -0
  254. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse.js +86 -0
  255. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/parse.js.map +1 -0
  256. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/setDay.js +12 -0
  257. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/setDay.js.map +1 -0
  258. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/setISODay.js +11 -0
  259. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/setISODay.js.map +1 -0
  260. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/setISOWeek.js +10 -0
  261. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/setISOWeek.js.map +1 -0
  262. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/setMonth.js +13 -0
  263. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/setMonth.js.map +1 -0
  264. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/setWeek.js +10 -0
  265. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/setWeek.js.map +1 -0
  266. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/setYear.js +10 -0
  267. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/setYear.js.map +1 -0
  268. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/startOfDay.js +9 -0
  269. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/startOfDay.js.map +1 -0
  270. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/startOfISOWeek.js +8 -0
  271. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/startOfISOWeek.js.map +1 -0
  272. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/startOfISOWeekYear.js +11 -0
  273. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/startOfISOWeekYear.js.map +1 -0
  274. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/startOfMonth.js +9 -0
  275. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/startOfMonth.js.map +1 -0
  276. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/startOfWeek.js +11 -0
  277. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/startOfWeek.js.map +1 -0
  278. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/startOfWeekYear.js +13 -0
  279. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/startOfWeekYear.js.map +1 -0
  280. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/startOfYear.js +9 -0
  281. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/startOfYear.js.map +1 -0
  282. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/toDate.js +8 -0
  283. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/toDate.js.map +1 -0
  284. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/transpose.js +18 -0
  285. package/dist/node_modules/.pnpm/date-fns@4.3.0/node_modules/date-fns/transpose.js.map +1 -0
  286. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/DayPicker.js +247 -0
  287. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/DayPicker.js.map +1 -0
  288. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/UI.js +23 -0
  289. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/UI.js.map +1 -0
  290. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/classes/CalendarDay.js +20 -0
  291. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/classes/CalendarDay.js.map +1 -0
  292. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/classes/CalendarMonth.js +9 -0
  293. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/classes/CalendarMonth.js.map +1 -0
  294. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/classes/CalendarWeek.js +9 -0
  295. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/classes/CalendarWeek.js.map +1 -0
  296. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/classes/DateLib.js +259 -0
  297. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/classes/DateLib.js.map +1 -0
  298. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/CaptionLabel.js +8 -0
  299. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/CaptionLabel.js.map +1 -0
  300. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Chevron.js +16 -0
  301. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Chevron.js.map +1 -0
  302. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Day.js +9 -0
  303. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Day.js.map +1 -0
  304. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/DayButton.js +12 -0
  305. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/DayButton.js.map +1 -0
  306. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Dropdown.js +21 -0
  307. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Dropdown.js.map +1 -0
  308. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/DropdownNav.js +8 -0
  309. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/DropdownNav.js.map +1 -0
  310. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Footer.js +8 -0
  311. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Footer.js.map +1 -0
  312. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Month.js +9 -0
  313. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Month.js.map +1 -0
  314. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/MonthCaption.js +9 -0
  315. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/MonthCaption.js.map +1 -0
  316. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/MonthGrid.js +8 -0
  317. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/MonthGrid.js.map +1 -0
  318. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Months.js +8 -0
  319. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Months.js.map +1 -0
  320. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/MonthsDropdown.js +10 -0
  321. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/MonthsDropdown.js.map +1 -0
  322. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Nav.js +28 -0
  323. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Nav.js.map +1 -0
  324. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/NextMonthButton.js +8 -0
  325. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/NextMonthButton.js.map +1 -0
  326. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Option.js +8 -0
  327. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Option.js.map +1 -0
  328. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/PreviousMonthButton.js +8 -0
  329. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/PreviousMonthButton.js.map +1 -0
  330. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Root.js +9 -0
  331. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Root.js.map +1 -0
  332. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Select.js +8 -0
  333. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Select.js.map +1 -0
  334. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Week.js +9 -0
  335. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Week.js.map +1 -0
  336. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/WeekNumber.js +9 -0
  337. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/WeekNumber.js.map +1 -0
  338. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/WeekNumberHeader.js +8 -0
  339. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/WeekNumberHeader.js.map +1 -0
  340. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Weekday.js +8 -0
  341. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Weekday.js.map +1 -0
  342. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Weekdays.js +12 -0
  343. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Weekdays.js.map +1 -0
  344. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Weeks.js +8 -0
  345. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/Weeks.js.map +1 -0
  346. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/YearsDropdown.js +10 -0
  347. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/YearsDropdown.js.map +1 -0
  348. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/custom-components.js +53 -0
  349. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/components/custom-components.js.map +1 -0
  350. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/formatters/formatCaption.js +8 -0
  351. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/formatters/formatCaption.js.map +1 -0
  352. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/formatters/formatDay.js +8 -0
  353. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/formatters/formatDay.js.map +1 -0
  354. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/formatters/formatMonthDropdown.js +8 -0
  355. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/formatters/formatMonthDropdown.js.map +1 -0
  356. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/formatters/formatWeekNumber.js +8 -0
  357. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/formatters/formatWeekNumber.js.map +1 -0
  358. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/formatters/formatWeekNumberHeader.js +7 -0
  359. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/formatters/formatWeekNumberHeader.js.map +1 -0
  360. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/formatters/formatWeekdayName.js +8 -0
  361. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/formatters/formatWeekdayName.js.map +1 -0
  362. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/formatters/formatYearDropdown.js +8 -0
  363. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/formatters/formatYearDropdown.js.map +1 -0
  364. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/formatters/index.js +17 -0
  365. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/formatters/index.js.map +1 -0
  366. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/calculateFocusTarget.js +20 -0
  367. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/calculateFocusTarget.js.map +1 -0
  368. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/createGetModifiers.js +43 -0
  369. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/createGetModifiers.js.map +1 -0
  370. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/endOfBroadcastWeek.js +10 -0
  371. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/endOfBroadcastWeek.js.map +1 -0
  372. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getBroadcastWeeksInMonth.js +8 -0
  373. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getBroadcastWeeksInMonth.js.map +1 -0
  374. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getClassNamesForModifiers.js +8 -0
  375. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getClassNamesForModifiers.js.map +1 -0
  376. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getComponents.js +11 -0
  377. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getComponents.js.map +1 -0
  378. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getDataAttributes.js +17 -0
  379. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getDataAttributes.js.map +1 -0
  380. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getDates.js +20 -0
  381. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getDates.js.map +1 -0
  382. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getDays.js +11 -0
  383. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getDays.js.map +1 -0
  384. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getDefaultClassNames.js +17 -0
  385. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getDefaultClassNames.js.map +1 -0
  386. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getDisplayMonths.js +14 -0
  387. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getDisplayMonths.js.map +1 -0
  388. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getFocusableDate.js +16 -0
  389. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getFocusableDate.js.map +1 -0
  390. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getFormatters.js +11 -0
  391. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getFormatters.js.map +1 -0
  392. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getInitialMonth.js +14 -0
  393. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getInitialMonth.js.map +1 -0
  394. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getLabels.js +36 -0
  395. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getLabels.js.map +1 -0
  396. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getMonthOptions.js +14 -0
  397. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getMonthOptions.js.map +1 -0
  398. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getMonths.js +25 -0
  399. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getMonths.js.map +1 -0
  400. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getNavMonth.js +12 -0
  401. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getNavMonth.js.map +1 -0
  402. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getNextFocus.js +13 -0
  403. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getNextFocus.js.map +1 -0
  404. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getNextMonth.js +13 -0
  405. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getNextMonth.js.map +1 -0
  406. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getPreviousMonth.js +13 -0
  407. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getPreviousMonth.js.map +1 -0
  408. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getStyleForModifiers.js +14 -0
  409. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getStyleForModifiers.js.map +1 -0
  410. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getWeekdays.js +12 -0
  411. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getWeekdays.js.map +1 -0
  412. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getWeeks.js +8 -0
  413. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getWeeks.js.map +1 -0
  414. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getYearOptions.js +17 -0
  415. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/getYearOptions.js.map +1 -0
  416. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/startOfBroadcastWeek.js +8 -0
  417. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/startOfBroadcastWeek.js.map +1 -0
  418. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/useControlledValue.js +9 -0
  419. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/helpers/useControlledValue.js.map +1 -0
  420. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/index.js +25 -0
  421. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/index.js.map +1 -0
  422. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelDayButton.js +9 -0
  423. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelDayButton.js.map +1 -0
  424. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelGrid.js +8 -0
  425. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelGrid.js.map +1 -0
  426. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelGridcell.js +9 -0
  427. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelGridcell.js.map +1 -0
  428. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelMonthDropdown.js +7 -0
  429. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelMonthDropdown.js.map +1 -0
  430. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelNav.js +7 -0
  431. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelNav.js.map +1 -0
  432. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelNext.js +8 -0
  433. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelNext.js.map +1 -0
  434. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelPrevious.js +7 -0
  435. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelPrevious.js.map +1 -0
  436. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelWeekNumber.js +7 -0
  437. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelWeekNumber.js.map +1 -0
  438. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelWeekNumberHeader.js +7 -0
  439. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelWeekNumberHeader.js.map +1 -0
  440. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelWeekday.js +8 -0
  441. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelWeekday.js.map +1 -0
  442. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelYearDropdown.js +7 -0
  443. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/labels/labelYearDropdown.js.map +1 -0
  444. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/locale/en-US.js +38 -0
  445. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/locale/en-US.js.map +1 -0
  446. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/noonDateLib.js +107 -0
  447. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/noonDateLib.js.map +1 -0
  448. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/selection/useMulti.js +22 -0
  449. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/selection/useMulti.js.map +1 -0
  450. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/selection/useRange.js +24 -0
  451. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/selection/useRange.js.map +1 -0
  452. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/selection/useSingle.js +16 -0
  453. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/selection/useSingle.js.map +1 -0
  454. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/useAnimation.js +57 -0
  455. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/useAnimation.js.map +1 -0
  456. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/useCalendar.js +77 -0
  457. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/useCalendar.js.map +1 -0
  458. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/useDayPicker.js +13 -0
  459. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/useDayPicker.js.map +1 -0
  460. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/useFocus.js +24 -0
  461. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/useFocus.js.map +1 -0
  462. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/useSelection.js +20 -0
  463. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/useSelection.js.map +1 -0
  464. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/utils/addToRange.js +33 -0
  465. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/utils/addToRange.js.map +1 -0
  466. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/utils/convertMatchersToTimeZone.js +27 -0
  467. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/utils/convertMatchersToTimeZone.js.map +1 -0
  468. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/utils/dateMatchModifiers.js +27 -0
  469. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/utils/dateMatchModifiers.js.map +1 -0
  470. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/utils/rangeContainsDayOfWeek.js +16 -0
  471. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/utils/rangeContainsDayOfWeek.js.map +1 -0
  472. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/utils/rangeContainsModifiers.js +29 -0
  473. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/utils/rangeContainsModifiers.js.map +1 -0
  474. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/utils/rangeIncludesDate.js +10 -0
  475. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/utils/rangeIncludesDate.js.map +1 -0
  476. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/utils/rangeOverlaps.js +9 -0
  477. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/utils/rangeOverlaps.js.map +1 -0
  478. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/utils/toTimeZone.js +9 -0
  479. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/utils/toTimeZone.js.map +1 -0
  480. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/utils/typeguards.js +27 -0
  481. package/dist/node_modules/.pnpm/react-day-picker@10.0.1_@types_react@19.2.15_react@19.2.6/node_modules/react-day-picker/dist/esm/utils/typeguards.js.map +1 -0
  482. package/dist/react.js +379 -350
  483. package/dist/react.js.map +1 -1
  484. package/dist/src/components/ui/app-shell-chat/app-shell-chat.d.ts +147 -0
  485. package/dist/src/components/ui/app-shell-chat/index.d.ts +1 -0
  486. package/dist/src/components/ui/button/button.d.ts +1 -1
  487. package/dist/src/components/ui/calendar/calendar.d.ts +6 -0
  488. package/dist/src/components/ui/calendar/calendar.docs.d.ts +21 -0
  489. package/dist/src/components/ui/calendar/index.d.ts +1 -0
  490. package/dist/src/components/ui/data-table/data-table-expand-trigger.d.ts +10 -0
  491. package/dist/src/components/ui/data-table/data-table-toolbar.d.ts +19 -1
  492. package/dist/src/components/ui/data-table/data-table.d.ts +40 -2
  493. package/dist/src/components/ui/data-table/index.d.ts +1 -0
  494. package/dist/src/components/ui/date-range-picker/__tests__/date-range-picker-utils.test.d.ts +1 -0
  495. package/dist/src/components/ui/date-range-picker/date-range-picker-utils.d.ts +36 -0
  496. package/dist/src/components/ui/date-range-picker/date-range-picker.d.ts +27 -0
  497. package/dist/src/components/ui/date-range-picker/index.d.ts +1 -0
  498. package/dist/src/components/ui/dropdown-menu/dropdown-menu.d.ts +2 -9
  499. package/dist/src/components/ui/dropdown-menu/index.d.ts +1 -1
  500. package/dist/src/components/ui/filter-search/filter-search.d.ts +47 -1
  501. package/dist/src/components/ui/filter-search/index.d.ts +2 -2
  502. package/dist/src/components/ui/grid/grid.d.ts +1 -1
  503. package/dist/src/components/ui/input-select/index.d.ts +1 -1
  504. package/dist/src/components/ui/input-select/input-select.d.ts +54 -4
  505. package/dist/src/components/ui/sidebar-primary/sidebar-primary.d.ts +12 -4
  506. package/dist/src/components/ui/sidebar-secondary/sidebar-secondary.d.ts +1 -3
  507. package/dist/src/components/ui/table/index.d.ts +3 -1
  508. package/dist/src/components/ui/table/table-pagination.d.ts +21 -0
  509. package/dist/src/components/ui/table/table-view-options.d.ts +22 -0
  510. package/dist/src/components/ui/table/table.d.ts +13 -1
  511. package/dist/src/components/ui/tooltip/tooltip.d.ts +9 -1
  512. package/dist/src/hooks/index.d.ts +2 -0
  513. package/dist/src/hooks/use-sort-state.d.ts +46 -0
  514. package/dist/src/hooks/use-table-url-state.d.ts +85 -0
  515. package/dist/src/index.d.ts +4 -0
  516. package/dist/src/lib/__tests__/breakpoints.test.d.ts +1 -0
  517. package/dist/src/lib/__tests__/deep-equal.test.d.ts +1 -0
  518. package/dist/src/lib/__tests__/use-doc-dir.test.d.ts +1 -0
  519. package/dist/src/lib/breakpoints.d.ts +8 -0
  520. package/dist/src/lib/deep-equal.d.ts +2 -0
  521. package/dist/src/lib/use-doc-dir.d.ts +6 -0
  522. package/dist/ui-react.css +1 -1
  523. package/package.json +4 -2
@@ -1,6 +1,6 @@
1
- import { jsx as l, jsxs as b } from "react/jsx-runtime";
1
+ import { jsx as l, jsxs as n } from "react/jsx-runtime";
2
2
  import * as t from "react";
3
- import { ArrowUpIcon as n, ArrowDownIcon as m, ArrowsDownUpIcon as u } from "@acronis-platform/icons-react/stroke-mono";
3
+ import { ArrowUpIcon as m, ArrowDownIcon as p, ArrowsDownUpIcon as u } from "@acronis-platform/icons-react/stroke-mono";
4
4
  import { cn as r } from "../../../lib/utils.js";
5
5
  const f = t.forwardRef(({ className: a, ...e }, o) => /* @__PURE__ */ l("div", { className: "relative w-full overflow-auto", children: /* @__PURE__ */ l(
6
6
  "table",
@@ -14,9 +14,9 @@ const f = t.forwardRef(({ className: a, ...e }, o) => /* @__PURE__ */ l("div", {
14
14
  }
15
15
  ) }));
16
16
  f.displayName = "Table";
17
- const p = t.forwardRef(({ className: a, ...e }, o) => /* @__PURE__ */ l("thead", { ref: o, className: r(a), ...e }));
18
- p.displayName = "TableHeader";
19
- const v = t.forwardRef(({ className: a, ...e }, o) => /* @__PURE__ */ l(
17
+ const v = t.forwardRef(({ className: a, ...e }, o) => /* @__PURE__ */ l("thead", { ref: o, className: r(a), ...e }));
18
+ v.displayName = "TableHeader";
19
+ const h = t.forwardRef(({ className: a, ...e }, o) => /* @__PURE__ */ l(
20
20
  "tbody",
21
21
  {
22
22
  ref: o,
@@ -24,7 +24,7 @@ const v = t.forwardRef(({ className: a, ...e }, o) => /* @__PURE__ */ l(
24
24
  ...e
25
25
  }
26
26
  ));
27
- v.displayName = "TableBody";
27
+ h.displayName = "TableBody";
28
28
  const g = t.forwardRef(({ className: a, ...e }, o) => /* @__PURE__ */ l(
29
29
  "tfoot",
30
30
  {
@@ -37,7 +37,7 @@ const g = t.forwardRef(({ className: a, ...e }, o) => /* @__PURE__ */ l(
37
37
  }
38
38
  ));
39
39
  g.displayName = "TableFooter";
40
- const h = t.forwardRef(
40
+ const w = t.forwardRef(
41
41
  ({ className: a, selected: e, ...o }, s) => /* @__PURE__ */ l(
42
42
  "tr",
43
43
  {
@@ -51,29 +51,37 @@ const h = t.forwardRef(
51
51
  }
52
52
  )
53
53
  );
54
- h.displayName = "TableRow";
54
+ w.displayName = "TableRow";
55
55
  function x({ direction: a }) {
56
56
  const e = "size-[var(--ui-table-header-sort-icon-size)]";
57
- return a === "asc" ? /* @__PURE__ */ l(n, { className: r(e, "text-[var(--ui-table-header-sort-icon-color-active)]") }) : a === "desc" ? /* @__PURE__ */ l(m, { className: r(e, "text-[var(--ui-table-header-sort-icon-color-active)]") }) : /* @__PURE__ */ l(u, { className: r(e, "text-[var(--ui-table-header-sort-icon-color-inactive)]") });
57
+ return a === "asc" ? /* @__PURE__ */ l(m, { className: r(e, "text-[var(--ui-table-header-sort-icon-color-active)]") }) : a === "desc" ? /* @__PURE__ */ l(p, { className: r(e, "text-[var(--ui-table-header-sort-icon-color-active)]") }) : /* @__PURE__ */ l(u, { className: r(e, "text-[var(--ui-table-header-sort-icon-color-inactive)]") });
58
58
  }
59
- const w = t.forwardRef(
60
- ({ className: a, children: e, sortable: o, sortDirection: s = !1, onSort: i, ...c }, d) => /* @__PURE__ */ l(
59
+ const N = t.forwardRef(
60
+ ({
61
+ className: a,
62
+ children: e,
63
+ sortable: o,
64
+ sortDirection: s = !1,
65
+ onSort: i,
66
+ wrap: c,
67
+ ...d
68
+ }, b) => /* @__PURE__ */ l(
61
69
  "th",
62
70
  {
63
- ref: d,
71
+ ref: b,
64
72
  "aria-sort": s === "asc" ? "ascending" : s === "desc" ? "descending" : o ? "none" : void 0,
65
73
  className: r(
66
- "h-10 px-[var(--ui-table-header-cell-padding-x)] text-start align-middle text-sm font-semibold text-[var(--ui-table-header-label-color)] [&:has([role=checkbox])]:pe-0",
67
- o && "cursor-pointer transition-colors hover:bg-[var(--ui-table-header-cell-color-hover)]",
74
+ "px-[var(--ui-table-header-cell-padding-x)] text-start align-middle text-sm font-semibold text-[var(--ui-table-header-label-color)] [&:has([role=checkbox])]:pe-0",
75
+ c ? "whitespace-normal" : "h-10",
68
76
  a
69
77
  ),
70
- ...c,
71
- children: o ? /* @__PURE__ */ b(
78
+ ...d,
79
+ children: o ? /* @__PURE__ */ n(
72
80
  "button",
73
81
  {
74
82
  type: "button",
75
83
  onClick: i,
76
- className: "-mx-1 inline-flex items-center gap-[var(--ui-table-header-gap)] rounded-sm px-1 outline-none focus-visible:ring-2 focus-visible:ring-[var(--ui-focus-primary)]",
84
+ className: "-mx-1 inline-flex cursor-pointer items-center gap-[var(--ui-table-header-gap)] rounded-sm px-1 outline-none transition-colors hover:bg-[var(--ui-table-header-cell-color-hover)] focus-visible:ring-2 focus-visible:ring-[var(--ui-focus-primary)]",
77
85
  children: [
78
86
  e,
79
87
  /* @__PURE__ */ l(x, { direction: s })
@@ -83,20 +91,23 @@ const w = t.forwardRef(
83
91
  }
84
92
  )
85
93
  );
86
- w.displayName = "TableHead";
87
- const N = t.forwardRef(({ className: a, ...e }, o) => /* @__PURE__ */ l(
88
- "td",
89
- {
90
- ref: o,
91
- className: r(
92
- "h-10 px-[var(--ui-table-global-cell-padding-x)] py-[var(--ui-table-global-cell-padding-y)] align-middle text-sm [&:has([role=checkbox])]:pe-0",
93
- a
94
- ),
95
- ...e
96
- }
97
- ));
98
- N.displayName = "TableCell";
99
- const T = t.forwardRef(({ className: a, ...e }, o) => /* @__PURE__ */ l(
94
+ N.displayName = "TableHead";
95
+ const T = t.forwardRef(
96
+ ({ className: a, wrap: e, ...o }, s) => /* @__PURE__ */ l(
97
+ "td",
98
+ {
99
+ ref: s,
100
+ className: r(
101
+ "px-[var(--ui-table-global-cell-padding-x)] py-[var(--ui-table-global-cell-padding-y)] align-middle text-sm [&:has([role=checkbox])]:pe-0",
102
+ e ? "whitespace-normal" : "h-10",
103
+ a
104
+ ),
105
+ ...o
106
+ }
107
+ )
108
+ );
109
+ T.displayName = "TableCell";
110
+ const y = t.forwardRef(({ className: a, ...e }, o) => /* @__PURE__ */ l(
100
111
  "caption",
101
112
  {
102
113
  ref: o,
@@ -104,15 +115,15 @@ const T = t.forwardRef(({ className: a, ...e }, o) => /* @__PURE__ */ l(
104
115
  ...e
105
116
  }
106
117
  ));
107
- T.displayName = "TableCaption";
118
+ y.displayName = "TableCaption";
108
119
  export {
109
120
  f as Table,
110
- v as TableBody,
111
- T as TableCaption,
112
- N as TableCell,
121
+ h as TableBody,
122
+ y as TableCaption,
123
+ T as TableCell,
113
124
  g as TableFooter,
114
- w as TableHead,
115
- p as TableHeader,
116
- h as TableRow
125
+ N as TableHead,
126
+ v as TableHeader,
127
+ w as TableRow
117
128
  };
118
129
  //# sourceMappingURL=table.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"table.js","sources":["../../../../src/components/ui/table/table.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n ArrowDownIcon,\n ArrowUpIcon,\n ArrowsDownUpIcon,\n} from '@acronis-platform/icons-react/stroke-mono';\n\nimport { cn } from '@/lib/utils';\n\n// Composable table primitives ported from `@acronis-platform/shadcn-uikit`'s\n// `table` (packages/ui-legacy/src/components/ui/table.tsx) and informed by the\n// \"pre-release\" Table design in the shadcn-uikit Figma (node 2948-2416). Unlike\n// Card/Dialog, a `--ui-table-*` token tier already exists, so these parts theme\n// directly from it (imported in styles/index.css):\n// • cell -> --ui-table-global-cell-{border-color,padding-x,padding-y,min-height}\n// • row -> --ui-table-global-row-color-{idle,hover,active} (active = selected)\n// • header -> --ui-table-header-{label-color,cell-color-hover,cell-padding-x,gap}\n// • sort -> --ui-table-header-sort-icon-{color-active,color-inactive,size}\n// • data -> --ui-table-data-value-color-{idle,disabled}\n// The design's row checkboxes, tags, links and the column-settings button are\n// consumer composition (use Checkbox / Tag / Link / ButtonIcon in cells). A\n// TanStack-backed `DataTable` (sorting/selection logic over these primitives) is\n// a planned follow-up, mirroring legacy's separate `data-table`. Reconcile with\n// `/figma-component Table <url> --update` once the design is ready for dev.\n\nconst Table = React.forwardRef<\n HTMLTableElement,\n React.HTMLAttributes<HTMLTableElement>\n>(({ className, ...props }, ref) => (\n <div className=\"relative w-full overflow-auto\">\n <table\n ref={ref}\n className={cn(\n 'w-full caption-bottom border-collapse text-sm text-[var(--ui-table-data-value-color-idle)]',\n className\n )}\n {...props}\n />\n </div>\n));\nTable.displayName = 'Table';\n\nconst TableHeader = React.forwardRef<\n HTMLTableSectionElement,\n React.HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <thead ref={ref} className={cn(className)} {...props} />\n));\nTableHeader.displayName = 'TableHeader';\n\nconst TableBody = React.forwardRef<\n HTMLTableSectionElement,\n React.HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <tbody\n ref={ref}\n className={cn('[&_tr:last-child]:border-0', className)}\n {...props}\n />\n));\nTableBody.displayName = 'TableBody';\n\nconst TableFooter = React.forwardRef<\n HTMLTableSectionElement,\n React.HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <tfoot\n ref={ref}\n className={cn(\n 'border-t border-[color:var(--ui-table-global-cell-border-color)] font-medium [&>tr]:last:border-b-0',\n className\n )}\n {...props}\n />\n));\nTableFooter.displayName = 'TableFooter';\n\nexport interface TableRowProps\n extends React.HTMLAttributes<HTMLTableRowElement> {\n /** Mark the row as selected — applies the active row token + `data-state`. */\n selected?: boolean;\n}\n\nconst TableRow = React.forwardRef<HTMLTableRowElement, TableRowProps>(\n ({ className, selected, ...props }, ref) => (\n <tr\n ref={ref}\n data-state={selected ? 'selected' : undefined}\n className={cn(\n 'border-b border-[color:var(--ui-table-global-cell-border-color)] bg-[var(--ui-table-global-row-color-idle)] transition-colors hover:bg-[var(--ui-table-global-row-color-hover)] data-[state=selected]:bg-[var(--ui-table-global-row-color-active)]',\n className\n )}\n {...props}\n />\n )\n);\nTableRow.displayName = 'TableRow';\n\ntype SortDirection = 'asc' | 'desc' | false;\n\nexport interface TableHeadProps\n extends React.ThHTMLAttributes<HTMLTableCellElement> {\n /** Render the column as sortable — adds a sort affordance and `aria-sort`. */\n sortable?: boolean;\n /** Current sort direction for this column (`false` = sortable but unsorted). */\n sortDirection?: SortDirection;\n /** Invoked when the user activates a sortable header (click / Enter / Space). */\n onSort?: () => void;\n}\n\nfunction SortIcon({ direction }: { direction: SortDirection }) {\n const size = 'size-[var(--ui-table-header-sort-icon-size)]';\n if (direction === 'asc') {\n return <ArrowUpIcon className={cn(size, 'text-[var(--ui-table-header-sort-icon-color-active)]')} />;\n }\n if (direction === 'desc') {\n return <ArrowDownIcon className={cn(size, 'text-[var(--ui-table-header-sort-icon-color-active)]')} />;\n }\n return <ArrowsDownUpIcon className={cn(size, 'text-[var(--ui-table-header-sort-icon-color-inactive)]')} />;\n}\n\nconst TableHead = React.forwardRef<HTMLTableCellElement, TableHeadProps>(\n ({ className, children, sortable, sortDirection = false, onSort, ...props }, ref) => (\n <th\n ref={ref}\n aria-sort={\n sortDirection === 'asc'\n ? 'ascending'\n : sortDirection === 'desc'\n ? 'descending'\n : sortable\n ? 'none'\n : undefined\n }\n className={cn(\n 'h-10 px-[var(--ui-table-header-cell-padding-x)] text-start align-middle text-sm font-semibold text-[var(--ui-table-header-label-color)] [&:has([role=checkbox])]:pe-0',\n sortable &&\n 'cursor-pointer transition-colors hover:bg-[var(--ui-table-header-cell-color-hover)]',\n className\n )}\n {...props}\n >\n {sortable ? (\n <button\n type=\"button\"\n onClick={onSort}\n className=\"-mx-1 inline-flex items-center gap-[var(--ui-table-header-gap)] rounded-sm px-1 outline-none focus-visible:ring-2 focus-visible:ring-[var(--ui-focus-primary)]\"\n >\n {children}\n <SortIcon direction={sortDirection} />\n </button>\n ) : (\n children\n )}\n </th>\n )\n);\nTableHead.displayName = 'TableHead';\n\nconst TableCell = React.forwardRef<\n HTMLTableCellElement,\n React.TdHTMLAttributes<HTMLTableCellElement>\n>(({ className, ...props }, ref) => (\n <td\n ref={ref}\n className={cn(\n 'h-10 px-[var(--ui-table-global-cell-padding-x)] py-[var(--ui-table-global-cell-padding-y)] align-middle text-sm [&:has([role=checkbox])]:pe-0',\n className\n )}\n {...props}\n />\n));\nTableCell.displayName = 'TableCell';\n\nconst TableCaption = React.forwardRef<\n HTMLTableCaptionElement,\n React.HTMLAttributes<HTMLTableCaptionElement>\n>(({ className, ...props }, ref) => (\n <caption\n ref={ref}\n className={cn('mt-4 text-sm text-muted-foreground', className)}\n {...props}\n />\n));\nTableCaption.displayName = 'TableCaption';\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableFooter,\n TableHead,\n TableRow,\n TableCell,\n TableCaption,\n};\n"],"names":["Table","React","className","props","ref","jsx","cn","TableHeader","TableBody","TableFooter","TableRow","selected","SortIcon","direction","size","ArrowUpIcon","ArrowDownIcon","ArrowsDownUpIcon","TableHead","children","sortable","sortDirection","onSort","jsxs","TableCell","TableCaption"],"mappings":"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"}
1
+ {"version":3,"file":"table.js","sources":["../../../../src/components/ui/table/table.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n ArrowDownIcon,\n ArrowUpIcon,\n ArrowsDownUpIcon,\n} from '@acronis-platform/icons-react/stroke-mono';\n\nimport { cn } from '@/lib/utils';\n\n// Composable table primitives ported from `@acronis-platform/shadcn-uikit`'s\n// `table` (packages/ui-legacy/src/components/ui/table.tsx) and informed by the\n// \"pre-release\" Table design in the shadcn-uikit Figma (node 2948-2416). Unlike\n// Card/Dialog, a `--ui-table-*` token tier already exists, so these parts theme\n// directly from it (imported in styles/index.css):\n// • cell -> --ui-table-global-cell-{border-color,padding-x,padding-y,min-height}\n// • row -> --ui-table-global-row-color-{idle,hover,active} (active = selected)\n// • header -> --ui-table-header-{label-color,cell-color-hover,cell-padding-x,gap}\n// • sort -> --ui-table-header-sort-icon-{color-active,color-inactive,size}\n// • data -> --ui-table-data-value-color-{idle,disabled}\n// The design's row checkboxes, tags, links and the column-settings button are\n// consumer composition (use Checkbox / Tag / Link / ButtonIcon in cells). A\n// TanStack-backed `DataTable` (sorting/selection logic over these primitives) is\n// a planned follow-up, mirroring legacy's separate `data-table`. Reconcile with\n// `/figma-component Table <url> --update` once the design is ready for dev.\n\nconst Table = React.forwardRef<\n HTMLTableElement,\n React.HTMLAttributes<HTMLTableElement>\n>(({ className, ...props }, ref) => (\n <div className=\"relative w-full overflow-auto\">\n <table\n ref={ref}\n className={cn(\n 'w-full caption-bottom border-collapse text-sm text-[var(--ui-table-data-value-color-idle)]',\n className\n )}\n {...props}\n />\n </div>\n));\nTable.displayName = 'Table';\n\nconst TableHeader = React.forwardRef<\n HTMLTableSectionElement,\n React.HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <thead ref={ref} className={cn(className)} {...props} />\n));\nTableHeader.displayName = 'TableHeader';\n\nconst TableBody = React.forwardRef<\n HTMLTableSectionElement,\n React.HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <tbody\n ref={ref}\n className={cn('[&_tr:last-child]:border-0', className)}\n {...props}\n />\n));\nTableBody.displayName = 'TableBody';\n\nconst TableFooter = React.forwardRef<\n HTMLTableSectionElement,\n React.HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <tfoot\n ref={ref}\n className={cn(\n 'border-t border-[color:var(--ui-table-global-cell-border-color)] font-medium [&>tr]:last:border-b-0',\n className\n )}\n {...props}\n />\n));\nTableFooter.displayName = 'TableFooter';\n\nexport interface TableRowProps\n extends React.HTMLAttributes<HTMLTableRowElement> {\n /** Mark the row as selected — applies the active row token + `data-state`. */\n selected?: boolean;\n}\n\nconst TableRow = React.forwardRef<HTMLTableRowElement, TableRowProps>(\n ({ className, selected, ...props }, ref) => (\n <tr\n ref={ref}\n data-state={selected ? 'selected' : undefined}\n className={cn(\n 'border-b border-[color:var(--ui-table-global-cell-border-color)] bg-[var(--ui-table-global-row-color-idle)] transition-colors hover:bg-[var(--ui-table-global-row-color-hover)] data-[state=selected]:bg-[var(--ui-table-global-row-color-active)]',\n className\n )}\n {...props}\n />\n )\n);\nTableRow.displayName = 'TableRow';\n\ntype SortDirection = 'asc' | 'desc' | false;\n\nexport interface TableHeadProps\n extends React.ThHTMLAttributes<HTMLTableCellElement> {\n /** Render the column as sortable — adds a sort affordance and `aria-sort`. */\n sortable?: boolean;\n /** Current sort direction for this column (`false` = sortable but unsorted). */\n sortDirection?: SortDirection;\n /** Invoked when the user activates a sortable header (click / Enter / Space). */\n onSort?: () => void;\n /**\n * Allow the header to wrap onto multiple lines (`whitespace-normal`) and drop\n * the fixed row height so the cell grows to fit its content.\n */\n wrap?: boolean;\n}\n\nfunction SortIcon({ direction }: { direction: SortDirection }) {\n const size = 'size-[var(--ui-table-header-sort-icon-size)]';\n if (direction === 'asc') {\n return <ArrowUpIcon className={cn(size, 'text-[var(--ui-table-header-sort-icon-color-active)]')} />;\n }\n if (direction === 'desc') {\n return <ArrowDownIcon className={cn(size, 'text-[var(--ui-table-header-sort-icon-color-active)]')} />;\n }\n return <ArrowsDownUpIcon className={cn(size, 'text-[var(--ui-table-header-sort-icon-color-inactive)]')} />;\n}\n\nconst TableHead = React.forwardRef<HTMLTableCellElement, TableHeadProps>(\n (\n {\n className,\n children,\n sortable,\n sortDirection = false,\n onSort,\n wrap,\n ...props\n },\n ref\n ) => (\n <th\n ref={ref}\n aria-sort={\n sortDirection === 'asc'\n ? 'ascending'\n : sortDirection === 'desc'\n ? 'descending'\n : sortable\n ? 'none'\n : undefined\n }\n className={cn(\n 'px-[var(--ui-table-header-cell-padding-x)] text-start align-middle text-sm font-semibold text-[var(--ui-table-header-label-color)] [&:has([role=checkbox])]:pe-0',\n wrap ? 'whitespace-normal' : 'h-10',\n className\n )}\n {...props}\n >\n {sortable ? (\n <button\n type=\"button\"\n onClick={onSort}\n className=\"-mx-1 inline-flex cursor-pointer items-center gap-[var(--ui-table-header-gap)] rounded-sm px-1 outline-none transition-colors hover:bg-[var(--ui-table-header-cell-color-hover)] focus-visible:ring-2 focus-visible:ring-[var(--ui-focus-primary)]\"\n >\n {children}\n <SortIcon direction={sortDirection} />\n </button>\n ) : (\n children\n )}\n </th>\n )\n);\nTableHead.displayName = 'TableHead';\n\nexport interface TableCellProps\n extends React.TdHTMLAttributes<HTMLTableCellElement> {\n /**\n * Allow the cell to wrap onto multiple lines (`whitespace-normal`) and drop\n * the fixed row height so the row grows to fit its content.\n */\n wrap?: boolean;\n}\n\nconst TableCell = React.forwardRef<HTMLTableCellElement, TableCellProps>(\n ({ className, wrap, ...props }, ref) => (\n <td\n ref={ref}\n className={cn(\n 'px-[var(--ui-table-global-cell-padding-x)] py-[var(--ui-table-global-cell-padding-y)] align-middle text-sm [&:has([role=checkbox])]:pe-0',\n wrap ? 'whitespace-normal' : 'h-10',\n className\n )}\n {...props}\n />\n )\n);\nTableCell.displayName = 'TableCell';\n\nconst TableCaption = React.forwardRef<\n HTMLTableCaptionElement,\n React.HTMLAttributes<HTMLTableCaptionElement>\n>(({ className, ...props }, ref) => (\n <caption\n ref={ref}\n className={cn('mt-4 text-sm text-muted-foreground', className)}\n {...props}\n />\n));\nTableCaption.displayName = 'TableCaption';\n\nexport {\n Table,\n TableHeader,\n TableBody,\n TableFooter,\n TableHead,\n TableRow,\n TableCell,\n TableCaption,\n};\n"],"names":["Table","React","className","props","ref","jsx","cn","TableHeader","TableBody","TableFooter","TableRow","selected","SortIcon","direction","size","ArrowUpIcon","ArrowDownIcon","ArrowsDownUpIcon","TableHead","children","sortable","sortDirection","onSort","wrap","jsxs","TableCell","TableCaption"],"mappings":"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"}
@@ -1,23 +1,27 @@
1
1
  import { jsx as t } from "react/jsx-runtime";
2
- import * as s from "react";
2
+ import * as u from "react";
3
3
  import { Tooltip as o } from "@base-ui/react/tooltip";
4
- import { cn as u } from "../../../lib/utils.js";
5
- import { usePortalContainer as v } from "../../../lib/portal-container.js";
6
- const w = o.Provider, C = o.Root, h = o.Trigger, x = s.forwardRef(
4
+ import { cn as v } from "../../../lib/utils.js";
5
+ import { usePortalContainer as x } from "../../../lib/portal-container.js";
6
+ function C(i) {
7
+ return /* @__PURE__ */ t(o.Provider, { delay: 300, ...i });
8
+ }
9
+ const h = o.Root, y = o.Trigger, f = u.forwardRef(
7
10
  ({
8
11
  className: i,
9
12
  sideOffset: r = 6,
10
13
  side: n = "top",
11
14
  align: e = "center",
12
- portalContainer: a,
15
+ anchor: a,
16
+ portalContainer: l,
13
17
  keepMounted: p,
14
- ...l
15
- }, c) => {
16
- const d = v(), m = a ?? d;
18
+ ...c
19
+ }, d) => {
20
+ const m = x(), s = l ?? m;
17
21
  return /* @__PURE__ */ t(
18
22
  o.Portal,
19
23
  {
20
- container: m,
24
+ container: s,
21
25
  keepMounted: p,
22
26
  children: /* @__PURE__ */ t(
23
27
  o.Positioner,
@@ -25,16 +29,17 @@ const w = o.Provider, C = o.Root, h = o.Trigger, x = s.forwardRef(
25
29
  sideOffset: r,
26
30
  side: n,
27
31
  align: e,
32
+ anchor: a,
28
33
  className: "z-50",
29
34
  children: /* @__PURE__ */ t(
30
35
  o.Popup,
31
36
  {
32
- ref: c,
33
- className: u(
37
+ ref: d,
38
+ className: v(
34
39
  "max-w-[var(--ui-tooltip-container-width-max)] min-w-[var(--ui-tooltip-container-width-min)] rounded-[var(--ui-tooltip-container-border-radius)] bg-[var(--ui-tooltip-container-color)] px-[var(--ui-tooltip-container-padding-x)] py-[var(--ui-tooltip-container-padding-y)] text-xs font-medium leading-4 text-[var(--ui-tooltip-label-color)]",
35
40
  i
36
41
  ),
37
- ...l
42
+ ...c
38
43
  }
39
44
  )
40
45
  }
@@ -43,11 +48,11 @@ const w = o.Provider, C = o.Root, h = o.Trigger, x = s.forwardRef(
43
48
  );
44
49
  }
45
50
  );
46
- x.displayName = "TooltipContent";
51
+ f.displayName = "TooltipContent";
47
52
  export {
48
- C as Tooltip,
49
- x as TooltipContent,
50
- w as TooltipProvider,
51
- h as TooltipTrigger
53
+ h as Tooltip,
54
+ f as TooltipContent,
55
+ C as TooltipProvider,
56
+ y as TooltipTrigger
52
57
  };
53
58
  //# sourceMappingURL=tooltip.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip.js","sources":["../../../../src/components/ui/tooltip/tooltip.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Tooltip as TooltipPrimitive } from '@base-ui/react/tooltip';\n\nimport { cn } from '@/lib/utils';\nimport { usePortalContainer } from '@/lib/portal-container';\n\n// A contextual hint shown on hover/focus of its trigger. Wraps the Base UI\n// Tooltip primitive; the popup is themed with the `--ui-tooltip-*` token tier\n// (a dark, ~90%-opaque bubble with a light label, 12/8px padding, 4px radius,\n// 48–256px width). No arrow — matching the Figma design. Wrap the whole app (or\n// a region) in `TooltipProvider` to share open/close delays across tooltips.\n\nconst TooltipProvider = TooltipPrimitive.Provider;\n\nconst Tooltip = TooltipPrimitive.Root;\n\nconst TooltipTrigger = TooltipPrimitive.Trigger;\n\nconst TooltipContent = React.forwardRef<\n React.ElementRef<typeof TooltipPrimitive.Popup>,\n React.ComponentPropsWithoutRef<typeof TooltipPrimitive.Popup> & {\n sideOffset?: number;\n side?: TooltipPrimitive.Positioner.Props['side'];\n align?: TooltipPrimitive.Positioner.Props['align'];\n portalContainer?: TooltipPrimitive.Portal.Props['container'];\n keepMounted?: TooltipPrimitive.Portal.Props['keepMounted'];\n }\n>(\n (\n {\n className,\n sideOffset = 6,\n side = 'top',\n align = 'center',\n portalContainer,\n keepMounted,\n ...props\n },\n ref\n ) => {\n const ctxContainer = usePortalContainer();\n const resolvedContainer = portalContainer ?? ctxContainer;\n\n return (\n <TooltipPrimitive.Portal\n container={resolvedContainer}\n keepMounted={keepMounted}\n >\n <TooltipPrimitive.Positioner\n sideOffset={sideOffset}\n side={side}\n align={align}\n className=\"z-50\"\n >\n <TooltipPrimitive.Popup\n ref={ref}\n className={cn(\n 'max-w-[var(--ui-tooltip-container-width-max)] min-w-[var(--ui-tooltip-container-width-min)] rounded-[var(--ui-tooltip-container-border-radius)] bg-[var(--ui-tooltip-container-color)] px-[var(--ui-tooltip-container-padding-x)] py-[var(--ui-tooltip-container-padding-y)] text-xs font-medium leading-4 text-[var(--ui-tooltip-label-color)]',\n className\n )}\n {...props}\n />\n </TooltipPrimitive.Positioner>\n </TooltipPrimitive.Portal>\n );\n }\n);\nTooltipContent.displayName = 'TooltipContent';\n\nexport { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };\n"],"names":["TooltipProvider","TooltipPrimitive","Tooltip","TooltipTrigger","TooltipContent","React","className","sideOffset","side","align","portalContainer","keepMounted","props","ref","ctxContainer","usePortalContainer","resolvedContainer","jsx","cn"],"mappings":";;;;;AAYA,MAAMA,IAAkBC,EAAiB,UAEnCC,IAAUD,EAAiB,MAE3BE,IAAiBF,EAAiB,SAElCG,IAAiBC,EAAM;AAAA,EAU3B,CACE;AAAA,IACE,WAAAC;AAAA,IACA,YAAAC,IAAa;AAAA,IACb,MAAAC,IAAO;AAAA,IACP,OAAAC,IAAQ;AAAA,IACR,iBAAAC;AAAA,IACA,aAAAC;AAAA,IACA,GAAGC;AAAA,EAAA,GAELC,MACG;AACH,UAAMC,IAAeC,EAAA,GACfC,IAAoBN,KAAmBI;AAE7C,WACA,gBAAAG;AAAA,MAAChB,EAAiB;AAAA,MAAjB;AAAA,QACC,WAAWe;AAAA,QACX,aAAAL;AAAA,QAEA,UAAA,gBAAAM;AAAA,UAAChB,EAAiB;AAAA,UAAjB;AAAA,YACC,YAAAM;AAAA,YACA,MAAAC;AAAA,YACA,OAAAC;AAAA,YACA,WAAU;AAAA,YAEV,UAAA,gBAAAQ;AAAA,cAAChB,EAAiB;AAAA,cAAjB;AAAA,gBACC,KAAAY;AAAA,gBACA,WAAWK;AAAA,kBACT;AAAA,kBACAZ;AAAA,gBAAA;AAAA,gBAED,GAAGM;AAAA,cAAA;AAAA,YAAA;AAAA,UACN;AAAA,QAAA;AAAA,MACF;AAAA,IAAA;AAAA,EAGJ;AACF;AACAR,EAAe,cAAc;"}
1
+ {"version":3,"file":"tooltip.js","sources":["../../../../src/components/ui/tooltip/tooltip.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Tooltip as TooltipPrimitive } from '@base-ui/react/tooltip';\n\nimport { cn } from '@/lib/utils';\nimport { usePortalContainer } from '@/lib/portal-container';\n\n// A contextual hint shown on hover/focus of its trigger. Wraps the Base UI\n// Tooltip primitive; the popup is themed with the `--ui-tooltip-*` token tier\n// (a dark, ~90%-opaque bubble with a light label, 12/8px padding, 4px radius,\n// 48–256px width). No arrow — matching the Figma design. Wrap the whole app (or\n// a region) in `TooltipProvider` to share open/close delays across tooltips.\n\nfunction TooltipProvider(props: React.ComponentProps<typeof TooltipPrimitive.Provider>) {\n return <TooltipPrimitive.Provider delay={300} {...props} />;\n}\n\nconst Tooltip = TooltipPrimitive.Root;\n\nconst TooltipTrigger = TooltipPrimitive.Trigger;\n\nconst TooltipContent = React.forwardRef<\n React.ElementRef<typeof TooltipPrimitive.Popup>,\n React.ComponentPropsWithoutRef<typeof TooltipPrimitive.Popup> & {\n sideOffset?: number;\n side?: TooltipPrimitive.Positioner.Props['side'];\n align?: TooltipPrimitive.Positioner.Props['align'];\n /**\n * Override what the popup is positioned against — defaults to the\n * `TooltipTrigger` element. Useful when the hover/focus trigger is\n * narrower than the element the tooltip should visually align to (e.g. a\n * truncating label inside a full-width row, where the tooltip should\n * anchor to the row's edge, not the label's).\n */\n anchor?: TooltipPrimitive.Positioner.Props['anchor'];\n portalContainer?: TooltipPrimitive.Portal.Props['container'];\n keepMounted?: TooltipPrimitive.Portal.Props['keepMounted'];\n }\n>(\n (\n {\n className,\n sideOffset = 6,\n side = 'top',\n align = 'center',\n anchor,\n portalContainer,\n keepMounted,\n ...props\n },\n ref\n ) => {\n const ctxContainer = usePortalContainer();\n const resolvedContainer = portalContainer ?? ctxContainer;\n\n return (\n <TooltipPrimitive.Portal\n container={resolvedContainer}\n keepMounted={keepMounted}\n >\n <TooltipPrimitive.Positioner\n sideOffset={sideOffset}\n side={side}\n align={align}\n anchor={anchor}\n className=\"z-50\"\n >\n <TooltipPrimitive.Popup\n ref={ref}\n className={cn(\n 'max-w-[var(--ui-tooltip-container-width-max)] min-w-[var(--ui-tooltip-container-width-min)] rounded-[var(--ui-tooltip-container-border-radius)] bg-[var(--ui-tooltip-container-color)] px-[var(--ui-tooltip-container-padding-x)] py-[var(--ui-tooltip-container-padding-y)] text-xs font-medium leading-4 text-[var(--ui-tooltip-label-color)]',\n className\n )}\n {...props}\n />\n </TooltipPrimitive.Positioner>\n </TooltipPrimitive.Portal>\n );\n }\n);\nTooltipContent.displayName = 'TooltipContent';\n\nexport { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };\n"],"names":["TooltipProvider","props","TooltipPrimitive","Tooltip","TooltipTrigger","TooltipContent","React","className","sideOffset","side","align","anchor","portalContainer","keepMounted","ref","ctxContainer","usePortalContainer","resolvedContainer","jsx","cn"],"mappings":";;;;;AAYA,SAASA,EAAgBC,GAA+D;AACtF,2BAAQC,EAAiB,UAAjB,EAA0B,OAAO,KAAM,GAAGD,GAAO;AAC3D;AAEA,MAAME,IAAUD,EAAiB,MAE3BE,IAAiBF,EAAiB,SAElCG,IAAiBC,EAAM;AAAA,EAkB3B,CACE;AAAA,IACE,WAAAC;AAAA,IACA,YAAAC,IAAa;AAAA,IACb,MAAAC,IAAO;AAAA,IACP,OAAAC,IAAQ;AAAA,IACR,QAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,aAAAC;AAAA,IACA,GAAGZ;AAAA,EAAA,GAELa,MACG;AACH,UAAMC,IAAeC,EAAA,GACfC,IAAoBL,KAAmBG;AAE7C,WACA,gBAAAG;AAAA,MAAChB,EAAiB;AAAA,MAAjB;AAAA,QACC,WAAWe;AAAA,QACX,aAAAJ;AAAA,QAEA,UAAA,gBAAAK;AAAA,UAAChB,EAAiB;AAAA,UAAjB;AAAA,YACC,YAAAM;AAAA,YACA,MAAAC;AAAA,YACA,OAAAC;AAAA,YACA,QAAAC;AAAA,YACA,WAAU;AAAA,YAEV,UAAA,gBAAAO;AAAA,cAAChB,EAAiB;AAAA,cAAjB;AAAA,gBACC,KAAAY;AAAA,gBACA,WAAWK;AAAA,kBACT;AAAA,kBACAZ;AAAA,gBAAA;AAAA,gBAED,GAAGN;AAAA,cAAA;AAAA,YAAA;AAAA,UACN;AAAA,QAAA;AAAA,MACF;AAAA,IAAA;AAAA,EAGJ;AACF;AACAI,EAAe,cAAc;"}
@@ -0,0 +1,35 @@
1
+ import * as l from "react";
2
+ function p(e, r) {
3
+ return e == null && r == null ? 0 : e == null ? -1 : r == null ? 1 : typeof e == "number" && typeof r == "number" ? e - r : String(e).localeCompare(String(r), void 0, {
4
+ numeric: !0,
5
+ sensitivity: "base"
6
+ });
7
+ }
8
+ function g({
9
+ data: e,
10
+ initialSort: r = null,
11
+ comparators: s,
12
+ getValue: f = (t, c) => t[c]
13
+ }) {
14
+ const [t, c] = l.useState(r), m = l.useCallback((o) => {
15
+ c((i) => !i || i.columnId !== o ? { columnId: o, direction: "asc" } : i.direction === "asc" ? { columnId: o, direction: "desc" } : null);
16
+ }, []), S = l.useCallback(
17
+ (o) => t && t.columnId === o ? t.direction : !1,
18
+ [t]
19
+ );
20
+ return { sortedData: l.useMemo(() => {
21
+ if (!t) return e;
22
+ const i = (s == null ? void 0 : s[t.columnId]) ?? ((n, u) => p(
23
+ f(n, t.columnId),
24
+ f(u, t.columnId)
25
+ )), a = t.direction === "desc" ? -1 : 1;
26
+ return e.map((n, u) => ({ row: n, index: u })).sort((n, u) => {
27
+ const d = i(n.row, u.row);
28
+ return d !== 0 ? d * a : n.index - u.index;
29
+ }).map((n) => n.row);
30
+ }, [e, t, s, f]), sort: t, setSort: c, toggleSort: m, getSortDirection: S };
31
+ }
32
+ export {
33
+ g as useSortState
34
+ };
35
+ //# sourceMappingURL=use-sort-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-sort-state.js","sources":["../../src/hooks/use-sort-state.ts"],"sourcesContent":["import * as React from 'react';\n\nexport type SortDirection = 'asc' | 'desc' | false;\n\nexport interface SortState {\n columnId: string;\n direction: 'asc' | 'desc';\n}\n\n/**\n * Compares two rows for a column. Ascending order; the hook negates the result\n * for descending. Receives the full rows so a custom comparator has access to\n * every field.\n */\nexport type SortComparator<TData> = (a: TData, b: TData) => number;\n\nexport interface UseSortStateOptions<TData> {\n /** Rows to sort. */\n data: TData[];\n /** Initial sorted column + direction. */\n initialSort?: SortState | null;\n /**\n * Custom per-column comparators keyed by column id. When absent for a column,\n * the default alphanumeric comparator on `getValue(row, columnId)` is used.\n */\n comparators?: Record<string, SortComparator<TData>>;\n /**\n * How to read a column's value from a row for the default comparator.\n * Defaults to `row[columnId]`.\n */\n getValue?: (row: TData, columnId: string) => unknown;\n}\n\nexport interface UseSortStateResult<TData> {\n /** The rows sorted by the current sort state (unsorted `data` when none). */\n sortedData: TData[];\n /** The current sort, or `null` when unsorted. */\n sort: SortState | null;\n /** Directly set (or clear) the sort. */\n setSort: (sort: SortState | null) => void;\n /** Cycle a column's sort: none → asc → desc → none. */\n toggleSort: (columnId: string) => void;\n /** Direction for a column, shaped for `TableHead`'s `sortDirection` prop. */\n getSortDirection: (columnId: string) => SortDirection;\n}\n\n// Natural alphanumeric comparison: numbers numerically, everything else via a\n// locale-aware numeric string compare (so \"item2\" sorts before \"item10\").\n// null/undefined sort first.\nfunction defaultCompareValues(a: unknown, b: unknown): number {\n if (a == null && b == null) return 0;\n if (a == null) return -1;\n if (b == null) return 1;\n if (typeof a === 'number' && typeof b === 'number') return a - b;\n return String(a).localeCompare(String(b), undefined, {\n numeric: true,\n sensitivity: 'base',\n });\n}\n\n/**\n * Headless client-side sort state for the `Table` primitives (no TanStack\n * dependency). Drives `TableHead`'s `sortable`/`sortDirection`/`onSort` props\n * and returns the sorted rows. Default comparator is alphanumeric; pass\n * `comparators` to override per column.\n */\nexport function useSortState<TData>({\n data,\n initialSort = null,\n comparators,\n getValue = (row, columnId) => (row as Record<string, unknown>)[columnId],\n}: UseSortStateOptions<TData>): UseSortStateResult<TData> {\n const [sort, setSort] = React.useState<SortState | null>(initialSort);\n\n const toggleSort = React.useCallback((columnId: string) => {\n setSort((current) => {\n if (!current || current.columnId !== columnId) {\n return { columnId, direction: 'asc' };\n }\n if (current.direction === 'asc') {\n return { columnId, direction: 'desc' };\n }\n return null;\n });\n }, []);\n\n const getSortDirection = React.useCallback(\n (columnId: string): SortDirection =>\n sort && sort.columnId === columnId ? sort.direction : false,\n [sort]\n );\n\n const sortedData = React.useMemo(() => {\n if (!sort) return data;\n const custom = comparators?.[sort.columnId];\n const compare: SortComparator<TData> =\n custom ??\n ((a, b) =>\n defaultCompareValues(\n getValue(a, sort.columnId),\n getValue(b, sort.columnId)\n ));\n const factor = sort.direction === 'desc' ? -1 : 1;\n // Slice keeps the input array intact; index tiebreak keeps sort stable.\n return data\n .map((row, index) => ({ row, index }))\n .sort((a, b) => {\n const result = compare(a.row, b.row);\n return result !== 0 ? result * factor : a.index - b.index;\n })\n .map((entry) => entry.row);\n }, [data, sort, comparators, getValue]);\n\n return { sortedData, sort, setSort, toggleSort, getSortDirection };\n}\n"],"names":["defaultCompareValues","a","b","useSortState","data","initialSort","comparators","getValue","row","columnId","sort","setSort","React","toggleSort","current","getSortDirection","compare","factor","index","result","entry"],"mappings":";AAiDA,SAASA,EAAqBC,GAAYC,GAAoB;AAC5D,SAAID,KAAK,QAAQC,KAAK,OAAa,IAC/BD,KAAK,OAAa,KAClBC,KAAK,OAAa,IAClB,OAAOD,KAAM,YAAY,OAAOC,KAAM,WAAiBD,IAAIC,IACxD,OAAOD,CAAC,EAAE,cAAc,OAAOC,CAAC,GAAG,QAAW;AAAA,IACnD,SAAS;AAAA,IACT,aAAa;AAAA,EAAA,CACd;AACH;AAQO,SAASC,EAAoB;AAAA,EAClC,MAAAC;AAAA,EACA,aAAAC,IAAc;AAAA,EACd,aAAAC;AAAA,EACA,UAAAC,IAAW,CAACC,GAAKC,MAAcD,EAAgCC,CAAQ;AACzE,GAA0D;AACxD,QAAM,CAACC,GAAMC,CAAO,IAAIC,EAAM,SAA2BP,CAAW,GAE9DQ,IAAaD,EAAM,YAAY,CAACH,MAAqB;AACzD,IAAAE,EAAQ,CAACG,MACH,CAACA,KAAWA,EAAQ,aAAaL,IAC5B,EAAE,UAAAA,GAAU,WAAW,MAAA,IAE5BK,EAAQ,cAAc,QACjB,EAAE,UAAAL,GAAU,WAAW,OAAA,IAEzB,IACR;AAAA,EACH,GAAG,CAAA,CAAE,GAECM,IAAmBH,EAAM;AAAA,IAC7B,CAACH,MACCC,KAAQA,EAAK,aAAaD,IAAWC,EAAK,YAAY;AAAA,IACxD,CAACA,CAAI;AAAA,EAAA;AAwBP,SAAO,EAAE,YArBUE,EAAM,QAAQ,MAAM;AACrC,QAAI,CAACF,EAAM,QAAON;AAElB,UAAMY,KADSV,KAAA,gBAAAA,EAAcI,EAAK,eAG/B,CAACT,GAAGC,MACHF;AAAA,MACEO,EAASN,GAAGS,EAAK,QAAQ;AAAA,MACzBH,EAASL,GAAGQ,EAAK,QAAQ;AAAA,IAAA,IAEzBO,IAASP,EAAK,cAAc,SAAS,KAAK;AAEhD,WAAON,EACJ,IAAI,CAACI,GAAKU,OAAW,EAAE,KAAAV,GAAK,OAAAU,EAAA,EAAQ,EACpC,KAAK,CAACjB,GAAGC,MAAM;AACd,YAAMiB,IAASH,EAAQf,EAAE,KAAKC,EAAE,GAAG;AACnC,aAAOiB,MAAW,IAAIA,IAASF,IAAShB,EAAE,QAAQC,EAAE;AAAA,IACtD,CAAC,EACA,IAAI,CAACkB,MAAUA,EAAM,GAAG;AAAA,EAC7B,GAAG,CAAChB,GAAMM,GAAMJ,GAAaC,CAAQ,CAAC,GAEjB,MAAAG,GAAM,SAAAC,GAAS,YAAAE,GAAY,kBAAAE,EAAA;AAClD;"}
@@ -0,0 +1,115 @@
1
+ import * as u from "react";
2
+ const y = {
3
+ page: "tbl_page",
4
+ size: "tbl_size",
5
+ sort: "tbl_sort",
6
+ filter: "tbl_filter"
7
+ };
8
+ function b(e, r) {
9
+ return typeof e == "function" ? e(r) : e;
10
+ }
11
+ function z(e, {
12
+ defaultPageSize: r = 10,
13
+ paramKeys: i
14
+ } = {}) {
15
+ const a = i ?? y, o = new URLSearchParams(e), t = Number(o.get(a.page)), s = Number.isFinite(t) && t >= 1 ? Math.floor(t) - 1 : 0, c = Number(o.get(a.size)), S = Number.isFinite(c) && c >= 1 ? Math.floor(c) : r, g = o.get(a.sort), m = /* @__PURE__ */ new Map();
16
+ if (g)
17
+ for (const l of g.split(",")) {
18
+ const f = l.indexOf(":");
19
+ if (f === -1) continue;
20
+ const p = l.slice(0, f), h = l.slice(f + 1);
21
+ !p || h !== "asc" && h !== "desc" || m.set(p, { id: p, desc: h === "desc" });
22
+ }
23
+ const n = Array.from(m.values()), d = o.get(a.filter), w = d ? d.split(",").map((l) => {
24
+ const f = l.indexOf(":");
25
+ if (f === -1) return null;
26
+ const p = l.slice(0, f);
27
+ if (!p) return null;
28
+ try {
29
+ return { id: p, value: decodeURIComponent(l.slice(f + 1)) };
30
+ } catch {
31
+ return null;
32
+ }
33
+ }).filter((l) => l !== null) : [];
34
+ return { pagination: { pageIndex: s, pageSize: S }, sorting: n, columnFilters: w };
35
+ }
36
+ function P(e, r, {
37
+ defaultPageSize: i = 10,
38
+ paramKeys: a
39
+ } = {}) {
40
+ const o = a ?? y, t = new URLSearchParams(r);
41
+ for (const s of Object.values(o)) t.delete(s);
42
+ return e.pagination.pageIndex > 0 && t.set(o.page, String(e.pagination.pageIndex + 1)), e.pagination.pageSize !== i && t.set(o.size, String(e.pagination.pageSize)), e.sorting.length > 0 && t.set(
43
+ o.sort,
44
+ e.sorting.map((s) => `${s.id}:${s.desc ? "desc" : "asc"}`).join(",")
45
+ ), e.columnFilters.length > 0 && t.set(
46
+ o.filter,
47
+ e.columnFilters.map((s) => `${s.id}:${encodeURIComponent(s.value)}`).join(",")
48
+ ), t.toString();
49
+ }
50
+ function R(e, r) {
51
+ const i = typeof window < "u" ? window.location.search : "";
52
+ return z(i, { defaultPageSize: e, paramKeys: r });
53
+ }
54
+ function U(e = {}) {
55
+ const { defaultPageSize: r = 10 } = e, i = u.useMemo(
56
+ () => ({ ...y, ...e.paramKeys }),
57
+ [e.paramKeys]
58
+ ), [a, o] = u.useState(
59
+ () => R(r, i)
60
+ ), t = u.useRef(a);
61
+ t.current = a;
62
+ const s = u.useRef(!1);
63
+ u.useEffect(() => {
64
+ if (typeof window > "u") return;
65
+ const n = () => {
66
+ o(R(r, i));
67
+ };
68
+ return window.addEventListener("popstate", n), () => window.removeEventListener("popstate", n);
69
+ }, [r, i]);
70
+ const c = u.useCallback(
71
+ (n) => {
72
+ if (t.current = n, o(n), typeof window > "u") return;
73
+ const d = P(n, window.location.search, {
74
+ defaultPageSize: r,
75
+ paramKeys: i
76
+ }), w = `${window.location.pathname}${d ? `?${d}` : ""}${window.location.hash}`;
77
+ s.current ? window.history.replaceState(null, "", w) : (window.history.pushState(null, "", w), s.current = !0, queueMicrotask(() => {
78
+ s.current = !1;
79
+ }));
80
+ },
81
+ [r, i]
82
+ ), S = u.useCallback(
83
+ (n) => {
84
+ c({
85
+ ...t.current,
86
+ pagination: b(n, t.current.pagination)
87
+ });
88
+ },
89
+ [c]
90
+ ), g = u.useCallback(
91
+ (n) => {
92
+ c({
93
+ ...t.current,
94
+ sorting: b(n, t.current.sorting)
95
+ });
96
+ },
97
+ [c]
98
+ ), m = u.useCallback(
99
+ (n) => {
100
+ c({
101
+ ...t.current,
102
+ columnFilters: b(n, t.current.columnFilters)
103
+ });
104
+ },
105
+ [c]
106
+ );
107
+ return { state: a, setPagination: S, setSorting: g, setColumnFilters: m };
108
+ }
109
+ export {
110
+ y as DEFAULT_TABLE_URL_PARAM_KEYS,
111
+ z as parseTableUrlState,
112
+ P as serializeTableUrlState,
113
+ U as useTableUrlState
114
+ };
115
+ //# sourceMappingURL=use-table-url-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-table-url-state.js","sources":["../../src/hooks/use-table-url-state.ts"],"sourcesContent":["import * as React from 'react';\n\nexport interface TablePaginationState {\n /** Zero-based page index. */\n pageIndex: number;\n /** Rows per page. */\n pageSize: number;\n}\n\nexport interface TableSortingState {\n /** Column id. */\n id: string;\n /** `true` for descending. */\n desc: boolean;\n}\n\nexport interface TableColumnFilterState {\n /** Column id. */\n id: string;\n /** Filter value (string-encoded in the URL). */\n value: string;\n}\n\n/**\n * Controlled table state. The three fields mirror TanStack's `PaginationState`,\n * `SortingState`, and `ColumnFiltersState` shapes (filter value narrowed to\n * `string`) so they can wire straight into `onPaginationChange` /\n * `onSortingChange` / `onColumnFiltersChange`.\n */\nexport interface TableUrlState {\n pagination: TablePaginationState;\n sorting: TableSortingState[];\n columnFilters: TableColumnFilterState[];\n}\n\n/** Query-string keys. Namespaced (`tbl_*`) to avoid collisions with Storybook's\n * own `path`/`args`/`globals` params on a shared preview-iframe URL. */\nexport interface TableUrlParamKeys {\n page: string;\n size: string;\n sort: string;\n filter: string;\n}\n\nexport const DEFAULT_TABLE_URL_PARAM_KEYS: TableUrlParamKeys = {\n page: 'tbl_page',\n size: 'tbl_size',\n sort: 'tbl_sort',\n filter: 'tbl_filter',\n};\n\nexport interface UseTableUrlStateOptions {\n /** Default page size; omitted from the URL when the size matches it. */\n defaultPageSize?: number;\n /** Override the namespaced query-string keys. */\n paramKeys?: Partial<TableUrlParamKeys>;\n}\n\nexport type TableUrlUpdater<T> = T | ((old: T) => T);\n\nexport interface UseTableUrlStateResult {\n state: TableUrlState;\n /** Accepts a value or updater — shaped for TanStack's `onPaginationChange`. */\n setPagination: (updater: TableUrlUpdater<TablePaginationState>) => void;\n /** Accepts a value or updater — shaped for TanStack's `onSortingChange`. */\n setSorting: (updater: TableUrlUpdater<TableSortingState[]>) => void;\n /** Accepts a value or updater — shaped for TanStack's `onColumnFiltersChange`. */\n setColumnFilters: (\n updater: TableUrlUpdater<TableColumnFilterState[]>\n ) => void;\n}\n\nfunction applyUpdater<T>(updater: TableUrlUpdater<T>, old: T): T {\n return typeof updater === 'function'\n ? (updater as (old: T) => T)(old)\n : updater;\n}\n\n/**\n * Parses table state out of a query string. Pure — safe to reuse for seeding a\n * story or an SSR default. `search` may include or omit the leading `?`.\n *\n * Encoding: `tbl_page` is 1-based; `tbl_sort` is `id:asc|desc` pairs joined by\n * `,`; `tbl_filter` is `id:<encoded-value>` pairs joined by `,` (the value is\n * `encodeURIComponent`-escaped so it may contain `:`/`,`). Column ids must not\n * contain `:` or `,`.\n */\nexport function parseTableUrlState(\n search: string,\n {\n defaultPageSize = 10,\n paramKeys,\n }: { defaultPageSize?: number; paramKeys?: TableUrlParamKeys } = {}\n): TableUrlState {\n const keys = paramKeys ?? DEFAULT_TABLE_URL_PARAM_KEYS;\n const params = new URLSearchParams(search);\n\n const rawPage = Number(params.get(keys.page));\n const pageIndex =\n Number.isFinite(rawPage) && rawPage >= 1 ? Math.floor(rawPage) - 1 : 0;\n\n const rawSize = Number(params.get(keys.size));\n const pageSize =\n Number.isFinite(rawSize) && rawSize >= 1 ? Math.floor(rawSize) : defaultPageSize;\n\n const sortParam = params.get(keys.sort);\n const sortingById = new Map<string, TableSortingState>();\n if (sortParam) {\n for (const pair of sortParam.split(',')) {\n const separator = pair.indexOf(':');\n if (separator === -1) continue;\n const id = pair.slice(0, separator);\n const dir = pair.slice(separator + 1);\n if (!id || (dir !== 'asc' && dir !== 'desc')) continue;\n // Last occurrence wins on a duplicate id — matches URLSearchParams'\n // own semantics for a repeated key.\n sortingById.set(id, { id, desc: dir === 'desc' });\n }\n }\n const sorting: TableSortingState[] = Array.from(sortingById.values());\n\n const filterParam = params.get(keys.filter);\n const columnFilters: TableColumnFilterState[] = filterParam\n ? filterParam\n .split(',')\n .map((pair) => {\n const separator = pair.indexOf(':');\n if (separator === -1) return null;\n const id = pair.slice(0, separator);\n if (!id) return null;\n try {\n return { id, value: decodeURIComponent(pair.slice(separator + 1)) };\n } catch {\n return null;\n }\n })\n .filter((entry): entry is TableColumnFilterState => entry !== null)\n : [];\n\n return { pagination: { pageIndex, pageSize }, sorting, columnFilters };\n}\n\n/**\n * Serializes table state onto a query string, preserving any foreign params\n * already present in `search` (e.g. Storybook's `path`/`args`/`globals`).\n * Returns the query string without a leading `?` (empty string when no params).\n */\nexport function serializeTableUrlState(\n state: TableUrlState,\n search: string,\n {\n defaultPageSize = 10,\n paramKeys,\n }: { defaultPageSize?: number; paramKeys?: TableUrlParamKeys } = {}\n): string {\n const keys = paramKeys ?? DEFAULT_TABLE_URL_PARAM_KEYS;\n const params = new URLSearchParams(search);\n\n // Clear our namespaced keys before rewriting so a cleared field drops out.\n for (const key of Object.values(keys)) params.delete(key);\n\n if (state.pagination.pageIndex > 0) {\n params.set(keys.page, String(state.pagination.pageIndex + 1));\n }\n if (state.pagination.pageSize !== defaultPageSize) {\n params.set(keys.size, String(state.pagination.pageSize));\n }\n if (state.sorting.length > 0) {\n params.set(\n keys.sort,\n state.sorting\n .map((entry) => `${entry.id}:${entry.desc ? 'desc' : 'asc'}`)\n .join(',')\n );\n }\n if (state.columnFilters.length > 0) {\n params.set(\n keys.filter,\n state.columnFilters\n .map((entry) => `${entry.id}:${encodeURIComponent(entry.value)}`)\n .join(',')\n );\n }\n\n return params.toString();\n}\n\nfunction readCurrentState(\n defaultPageSize: number,\n paramKeys: TableUrlParamKeys\n): TableUrlState {\n const search = typeof window !== 'undefined' ? window.location.search : '';\n return parseTableUrlState(search, { defaultPageSize, paramKeys });\n}\n\n/**\n * Router-agnostic hook that syncs controlled table state (pagination / sorting\n * / column filters) to and from the URL query string via `history.pushState` +\n * `popstate`. Depends only on `window.location` / `window.history`, so it works\n * with any router (or none). Query keys are namespaced (`tbl_*`) so they never\n * collide with other params on the same URL. Reads initial state from the URL,\n * so a bookmarked link restores the table's view.\n */\nexport function useTableUrlState(\n options: UseTableUrlStateOptions = {}\n): UseTableUrlStateResult {\n const { defaultPageSize = 10 } = options;\n const paramKeys = React.useMemo<TableUrlParamKeys>(\n () => ({ ...DEFAULT_TABLE_URL_PARAM_KEYS, ...options.paramKeys }),\n [options.paramKeys]\n );\n\n const [state, setState] = React.useState<TableUrlState>(() =>\n readCurrentState(defaultPageSize, paramKeys)\n );\n\n // Keep a ref of the latest state so `popstate` and the setters can compute\n // the next URL/state without re-subscribing on every change.\n const stateRef = React.useRef(state);\n stateRef.current = state;\n\n // Coalesce multiple setters called synchronously in the same handler (e.g. a\n // filter change that also resets the page) into a single history entry: the\n // first commit in a tick pushes, later ones in the same tick replace. The\n // flag clears on a microtask so the next distinct user action pushes again.\n const hasPushedThisTickRef = React.useRef(false);\n\n React.useEffect(() => {\n if (typeof window === 'undefined') return;\n const onPopState = () => {\n setState(readCurrentState(defaultPageSize, paramKeys));\n };\n window.addEventListener('popstate', onPopState);\n return () => window.removeEventListener('popstate', onPopState);\n }, [defaultPageSize, paramKeys]);\n\n const commit = React.useCallback(\n (next: TableUrlState) => {\n // Refresh the ref here, not just in the render body — two setters\n // called synchronously in the same handler (before React re-renders)\n // must see each other's updates, not the pre-batch snapshot.\n stateRef.current = next;\n setState(next);\n if (typeof window === 'undefined') return;\n const query = serializeTableUrlState(next, window.location.search, {\n defaultPageSize,\n paramKeys,\n });\n const url = `${window.location.pathname}${query ? `?${query}` : ''}${window.location.hash}`;\n if (hasPushedThisTickRef.current) {\n window.history.replaceState(null, '', url);\n } else {\n window.history.pushState(null, '', url);\n hasPushedThisTickRef.current = true;\n queueMicrotask(() => {\n hasPushedThisTickRef.current = false;\n });\n }\n },\n [defaultPageSize, paramKeys]\n );\n\n const setPagination = React.useCallback(\n (updater: TableUrlUpdater<TablePaginationState>) => {\n commit({\n ...stateRef.current,\n pagination: applyUpdater(updater, stateRef.current.pagination),\n });\n },\n [commit]\n );\n\n const setSorting = React.useCallback(\n (updater: TableUrlUpdater<TableSortingState[]>) => {\n commit({\n ...stateRef.current,\n sorting: applyUpdater(updater, stateRef.current.sorting),\n });\n },\n [commit]\n );\n\n const setColumnFilters = React.useCallback(\n (updater: TableUrlUpdater<TableColumnFilterState[]>) => {\n commit({\n ...stateRef.current,\n columnFilters: applyUpdater(updater, stateRef.current.columnFilters),\n });\n },\n [commit]\n );\n\n return { state, setPagination, setSorting, setColumnFilters };\n}\n"],"names":["DEFAULT_TABLE_URL_PARAM_KEYS","applyUpdater","updater","old","parseTableUrlState","search","defaultPageSize","paramKeys","keys","params","rawPage","pageIndex","rawSize","pageSize","sortParam","sortingById","pair","separator","id","dir","sorting","filterParam","columnFilters","entry","serializeTableUrlState","state","key","readCurrentState","useTableUrlState","options","React","setState","stateRef","hasPushedThisTickRef","onPopState","commit","next","query","url","setPagination","setSorting","setColumnFilters"],"mappings":";AA4CO,MAAMA,IAAkD;AAAA,EAC7D,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,QAAQ;AACV;AAuBA,SAASC,EAAgBC,GAA6BC,GAAW;AAC/D,SAAO,OAAOD,KAAY,aACrBA,EAA0BC,CAAG,IAC9BD;AACN;AAWO,SAASE,EACdC,GACA;AAAA,EACE,iBAAAC,IAAkB;AAAA,EAClB,WAAAC;AACF,IAAiE,IAClD;AACf,QAAMC,IAAOD,KAAaP,GACpBS,IAAS,IAAI,gBAAgBJ,CAAM,GAEnCK,IAAU,OAAOD,EAAO,IAAID,EAAK,IAAI,CAAC,GACtCG,IACJ,OAAO,SAASD,CAAO,KAAKA,KAAW,IAAI,KAAK,MAAMA,CAAO,IAAI,IAAI,GAEjEE,IAAU,OAAOH,EAAO,IAAID,EAAK,IAAI,CAAC,GACtCK,IACJ,OAAO,SAASD,CAAO,KAAKA,KAAW,IAAI,KAAK,MAAMA,CAAO,IAAIN,GAE7DQ,IAAYL,EAAO,IAAID,EAAK,IAAI,GAChCO,wBAAkB,IAAA;AACxB,MAAID;AACF,eAAWE,KAAQF,EAAU,MAAM,GAAG,GAAG;AACvC,YAAMG,IAAYD,EAAK,QAAQ,GAAG;AAClC,UAAIC,MAAc,GAAI;AACtB,YAAMC,IAAKF,EAAK,MAAM,GAAGC,CAAS,GAC5BE,IAAMH,EAAK,MAAMC,IAAY,CAAC;AACpC,MAAI,CAACC,KAAOC,MAAQ,SAASA,MAAQ,UAGrCJ,EAAY,IAAIG,GAAI,EAAE,IAAAA,GAAI,MAAMC,MAAQ,QAAQ;AAAA,IAClD;AAEF,QAAMC,IAA+B,MAAM,KAAKL,EAAY,QAAQ,GAE9DM,IAAcZ,EAAO,IAAID,EAAK,MAAM,GACpCc,IAA0CD,IAC5CA,EACG,MAAM,GAAG,EACT,IAAI,CAACL,MAAS;AACb,UAAMC,IAAYD,EAAK,QAAQ,GAAG;AAClC,QAAIC,MAAc,GAAI,QAAO;AAC7B,UAAMC,IAAKF,EAAK,MAAM,GAAGC,CAAS;AAClC,QAAI,CAACC,EAAI,QAAO;AAChB,QAAI;AACF,aAAO,EAAE,IAAAA,GAAI,OAAO,mBAAmBF,EAAK,MAAMC,IAAY,CAAC,CAAC,EAAA;AAAA,IAClE,QAAQ;AACN,aAAO;AAAA,IACT;AAAA,EACF,CAAC,EACA,OAAO,CAACM,MAA2CA,MAAU,IAAI,IACpE,CAAA;AAEJ,SAAO,EAAE,YAAY,EAAE,WAAAZ,GAAW,UAAAE,EAAA,GAAY,SAAAO,GAAS,eAAAE,EAAA;AACzD;AAOO,SAASE,EACdC,GACApB,GACA;AAAA,EACE,iBAAAC,IAAkB;AAAA,EAClB,WAAAC;AACF,IAAiE,IACzD;AACR,QAAMC,IAAOD,KAAaP,GACpBS,IAAS,IAAI,gBAAgBJ,CAAM;AAGzC,aAAWqB,KAAO,OAAO,OAAOlB,CAAI,EAAG,CAAAC,EAAO,OAAOiB,CAAG;AAExD,SAAID,EAAM,WAAW,YAAY,KAC/BhB,EAAO,IAAID,EAAK,MAAM,OAAOiB,EAAM,WAAW,YAAY,CAAC,CAAC,GAE1DA,EAAM,WAAW,aAAanB,KAChCG,EAAO,IAAID,EAAK,MAAM,OAAOiB,EAAM,WAAW,QAAQ,CAAC,GAErDA,EAAM,QAAQ,SAAS,KACzBhB,EAAO;AAAA,IACLD,EAAK;AAAA,IACLiB,EAAM,QACH,IAAI,CAACF,MAAU,GAAGA,EAAM,EAAE,IAAIA,EAAM,OAAO,SAAS,KAAK,EAAE,EAC3D,KAAK,GAAG;AAAA,EAAA,GAGXE,EAAM,cAAc,SAAS,KAC/BhB,EAAO;AAAA,IACLD,EAAK;AAAA,IACLiB,EAAM,cACH,IAAI,CAACF,MAAU,GAAGA,EAAM,EAAE,IAAI,mBAAmBA,EAAM,KAAK,CAAC,EAAE,EAC/D,KAAK,GAAG;AAAA,EAAA,GAIRd,EAAO,SAAA;AAChB;AAEA,SAASkB,EACPrB,GACAC,GACe;AACf,QAAMF,IAAS,OAAO,SAAW,MAAc,OAAO,SAAS,SAAS;AACxE,SAAOD,EAAmBC,GAAQ,EAAE,iBAAAC,GAAiB,WAAAC,GAAW;AAClE;AAUO,SAASqB,EACdC,IAAmC,IACX;AACxB,QAAM,EAAE,iBAAAvB,IAAkB,GAAA,IAAOuB,GAC3BtB,IAAYuB,EAAM;AAAA,IACtB,OAAO,EAAE,GAAG9B,GAA8B,GAAG6B,EAAQ,UAAA;AAAA,IACrD,CAACA,EAAQ,SAAS;AAAA,EAAA,GAGd,CAACJ,GAAOM,CAAQ,IAAID,EAAM;AAAA,IAAwB,MACtDH,EAAiBrB,GAAiBC,CAAS;AAAA,EAAA,GAKvCyB,IAAWF,EAAM,OAAOL,CAAK;AACnC,EAAAO,EAAS,UAAUP;AAMnB,QAAMQ,IAAuBH,EAAM,OAAO,EAAK;AAE/C,EAAAA,EAAM,UAAU,MAAM;AACpB,QAAI,OAAO,SAAW,IAAa;AACnC,UAAMI,IAAa,MAAM;AACvB,MAAAH,EAASJ,EAAiBrB,GAAiBC,CAAS,CAAC;AAAA,IACvD;AACA,kBAAO,iBAAiB,YAAY2B,CAAU,GACvC,MAAM,OAAO,oBAAoB,YAAYA,CAAU;AAAA,EAChE,GAAG,CAAC5B,GAAiBC,CAAS,CAAC;AAE/B,QAAM4B,IAASL,EAAM;AAAA,IACnB,CAACM,MAAwB;AAMvB,UAFAJ,EAAS,UAAUI,GACnBL,EAASK,CAAI,GACT,OAAO,SAAW,IAAa;AACnC,YAAMC,IAAQb,EAAuBY,GAAM,OAAO,SAAS,QAAQ;AAAA,QACjE,iBAAA9B;AAAA,QACA,WAAAC;AAAA,MAAA,CACD,GACK+B,IAAM,GAAG,OAAO,SAAS,QAAQ,GAAGD,IAAQ,IAAIA,CAAK,KAAK,EAAE,GAAG,OAAO,SAAS,IAAI;AACzF,MAAIJ,EAAqB,UACvB,OAAO,QAAQ,aAAa,MAAM,IAAIK,CAAG,KAEzC,OAAO,QAAQ,UAAU,MAAM,IAAIA,CAAG,GACtCL,EAAqB,UAAU,IAC/B,eAAe,MAAM;AACnB,QAAAA,EAAqB,UAAU;AAAA,MACjC,CAAC;AAAA,IAEL;AAAA,IACA,CAAC3B,GAAiBC,CAAS;AAAA,EAAA,GAGvBgC,IAAgBT,EAAM;AAAA,IAC1B,CAAC5B,MAAmD;AAClD,MAAAiC,EAAO;AAAA,QACL,GAAGH,EAAS;AAAA,QACZ,YAAY/B,EAAaC,GAAS8B,EAAS,QAAQ,UAAU;AAAA,MAAA,CAC9D;AAAA,IACH;AAAA,IACA,CAACG,CAAM;AAAA,EAAA,GAGHK,IAAaV,EAAM;AAAA,IACvB,CAAC5B,MAAkD;AACjD,MAAAiC,EAAO;AAAA,QACL,GAAGH,EAAS;AAAA,QACZ,SAAS/B,EAAaC,GAAS8B,EAAS,QAAQ,OAAO;AAAA,MAAA,CACxD;AAAA,IACH;AAAA,IACA,CAACG,CAAM;AAAA,EAAA,GAGHM,IAAmBX,EAAM;AAAA,IAC7B,CAAC5B,MAAuD;AACtD,MAAAiC,EAAO;AAAA,QACL,GAAGH,EAAS;AAAA,QACZ,eAAe/B,EAAaC,GAAS8B,EAAS,QAAQ,aAAa;AAAA,MAAA,CACpE;AAAA,IACH;AAAA,IACA,CAACG,CAAM;AAAA,EAAA;AAGT,SAAO,EAAE,OAAAV,GAAO,eAAAc,GAAe,YAAAC,GAAY,kBAAAC,EAAA;AAC7C;"}