@cognite/aura 0.3.4 → 1.46104.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (446) hide show
  1. package/CHANGELOG.md +264 -0
  2. package/DESIGN.md +638 -281
  3. package/LICENSE +21 -0
  4. package/README.md +48 -13
  5. package/dist/colors-deprecated.css +587 -0
  6. package/dist/colors.css +803 -830
  7. package/dist/components/index.d.ts +63 -57
  8. package/dist/components/index.js +62 -59
  9. package/dist/components/index.js.map +1 -0
  10. package/dist/components/ui/core/accordion/accordion.d.ts +19 -18
  11. package/dist/components/ui/core/accordion/accordion.js +99 -78
  12. package/dist/components/ui/core/accordion/accordion.js.map +1 -0
  13. package/dist/components/ui/core/action-toolbar/action-toolbar-motion.d.ts +8 -0
  14. package/dist/components/ui/core/action-toolbar/action-toolbar-motion.js +125 -0
  15. package/dist/components/ui/core/action-toolbar/action-toolbar-motion.js.map +1 -0
  16. package/dist/components/ui/core/action-toolbar/action-toolbar.d.ts +31 -31
  17. package/dist/components/ui/core/action-toolbar/action-toolbar.js +156 -106
  18. package/dist/components/ui/core/action-toolbar/action-toolbar.js.map +1 -0
  19. package/dist/components/ui/core/alert/alert.d.ts +25 -25
  20. package/dist/components/ui/core/alert/alert.js +181 -152
  21. package/dist/components/ui/core/alert/alert.js.map +1 -0
  22. package/dist/components/ui/core/avatar/avatar.d.ts +10 -9
  23. package/dist/components/ui/core/avatar/avatar.js +75 -65
  24. package/dist/components/ui/core/avatar/avatar.js.map +1 -0
  25. package/dist/components/ui/core/badge/badge.d.ts +13 -12
  26. package/dist/components/ui/core/badge/badge.js +88 -72
  27. package/dist/components/ui/core/badge/badge.js.map +1 -0
  28. package/dist/components/ui/core/banner/banner.d.ts +18 -18
  29. package/dist/components/ui/core/banner/banner.js +179 -142
  30. package/dist/components/ui/core/banner/banner.js.map +1 -0
  31. package/dist/components/ui/core/breadcrumb/breadcrumb.d.ts +12 -12
  32. package/dist/components/ui/core/breadcrumb/breadcrumb.js +139 -104
  33. package/dist/components/ui/core/breadcrumb/breadcrumb.js.map +1 -0
  34. package/dist/components/ui/core/button/button.d.ts +7 -7
  35. package/dist/components/ui/core/button/button.gallery.d.ts +2 -0
  36. package/dist/components/ui/core/button/button.gallery.js +76 -0
  37. package/dist/components/ui/core/button/button.gallery.js.map +1 -0
  38. package/dist/components/ui/core/button/button.js +57 -47
  39. package/dist/components/ui/core/button/button.js.map +1 -0
  40. package/dist/components/ui/core/button-group/button-group.d.ts +9 -9
  41. package/dist/components/ui/core/button-group/button-group.js +50 -40
  42. package/dist/components/ui/core/button-group/button-group.js.map +1 -0
  43. package/dist/components/ui/core/calendar/calendar-header.d.ts +7 -7
  44. package/dist/components/ui/core/calendar/calendar-header.js +102 -63
  45. package/dist/components/ui/core/calendar/calendar-header.js.map +1 -0
  46. package/dist/components/ui/core/calendar/calendar-utils.d.ts +30 -30
  47. package/dist/components/ui/core/calendar/calendar-utils.js +116 -39
  48. package/dist/components/ui/core/calendar/calendar-utils.js.map +1 -0
  49. package/dist/components/ui/core/calendar/calendar.d.ts +10 -10
  50. package/dist/components/ui/core/calendar/calendar.js +95 -66
  51. package/dist/components/ui/core/calendar/calendar.js.map +1 -0
  52. package/dist/components/ui/core/calendar/constants.js +3 -0
  53. package/dist/components/ui/core/calendar/constants.js.map +1 -0
  54. package/dist/components/ui/core/card/card.d.ts +20 -20
  55. package/dist/components/ui/core/card/card.js +133 -104
  56. package/dist/components/ui/core/card/card.js.map +1 -0
  57. package/dist/components/ui/core/chart/chart.d.ts +55 -53
  58. package/dist/components/ui/core/chart/chart.js +196 -116
  59. package/dist/components/ui/core/chart/chart.js.map +1 -0
  60. package/dist/components/ui/core/chart/index.d.ts +2 -2
  61. package/dist/components/ui/core/chart/index.js +3 -2
  62. package/dist/components/ui/core/chart/index.js.map +1 -0
  63. package/dist/components/ui/core/checkbox/checkbox.d.ts +9 -9
  64. package/dist/components/ui/core/checkbox/checkbox.js +88 -68
  65. package/dist/components/ui/core/checkbox/checkbox.js.map +1 -0
  66. package/dist/components/ui/core/checkbox/checkbox.metadata.d.ts +1 -1
  67. package/dist/components/ui/core/checkbox/checkbox.metadata.js +6 -7
  68. package/dist/components/ui/core/checkbox/checkbox.metadata.js.map +1 -0
  69. package/dist/components/ui/core/code-block/code-block.d.ts +19 -19
  70. package/dist/components/ui/core/code-block/code-block.js +259 -175
  71. package/dist/components/ui/core/code-block/code-block.js.map +1 -0
  72. package/dist/components/ui/core/collapsible/collapsible.d.ts +5 -5
  73. package/dist/components/ui/core/collapsible/collapsible.js +36 -30
  74. package/dist/components/ui/core/collapsible/collapsible.js.map +1 -0
  75. package/dist/components/ui/core/combobox/combobox.d.ts +13 -13
  76. package/dist/components/ui/core/combobox/combobox.js +89 -40
  77. package/dist/components/ui/core/combobox/combobox.js.map +1 -0
  78. package/dist/components/ui/core/command/command.d.ts +20 -18
  79. package/dist/components/ui/core/command/command.js +137 -85
  80. package/dist/components/ui/core/command/command.js.map +1 -0
  81. package/dist/components/ui/core/conversation/conversation.d.ts +14 -0
  82. package/dist/components/ui/core/conversation/conversation.js +51 -0
  83. package/dist/components/ui/core/conversation/conversation.js.map +1 -0
  84. package/dist/components/ui/core/count/count.d.ts +8 -6
  85. package/dist/components/ui/core/count/count.js +51 -21
  86. package/dist/components/ui/core/count/count.js.map +1 -0
  87. package/dist/components/ui/core/data-grid/data-grid-cell.d.ts +7 -7
  88. package/dist/components/ui/core/data-grid/data-grid-cell.js +23 -0
  89. package/dist/components/ui/core/data-grid/data-grid-cell.js.map +1 -0
  90. package/dist/components/ui/core/data-grid/data-grid-filter-clauses.d.ts +14 -0
  91. package/dist/components/ui/core/data-grid/data-grid-filter-clauses.js +36 -0
  92. package/dist/components/ui/core/data-grid/data-grid-filter-clauses.js.map +1 -0
  93. package/dist/components/ui/core/data-grid/data-grid-filter-panel.d.ts +41 -0
  94. package/dist/components/ui/core/data-grid/data-grid-filter-panel.js +273 -0
  95. package/dist/components/ui/core/data-grid/data-grid-filter-panel.js.map +1 -0
  96. package/dist/components/ui/core/data-grid/data-grid-footer.d.ts +6 -0
  97. package/dist/components/ui/core/data-grid/data-grid-footer.js +34 -0
  98. package/dist/components/ui/core/data-grid/data-grid-footer.js.map +1 -0
  99. package/dist/components/ui/core/data-grid/data-grid-header-row.d.ts +10 -10
  100. package/dist/components/ui/core/data-grid/data-grid-header-row.js +70 -0
  101. package/dist/components/ui/core/data-grid/data-grid-header-row.js.map +1 -0
  102. package/dist/components/ui/core/data-grid/data-grid-header.d.ts +11 -0
  103. package/dist/components/ui/core/data-grid/data-grid-header.js +67 -0
  104. package/dist/components/ui/core/data-grid/data-grid-header.js.map +1 -0
  105. package/dist/components/ui/core/data-grid/data-grid-row.d.ts +15 -15
  106. package/dist/components/ui/core/data-grid/data-grid-row.js +105 -0
  107. package/dist/components/ui/core/data-grid/data-grid-row.js.map +1 -0
  108. package/dist/components/ui/core/data-grid/data-grid.d.ts +85 -35
  109. package/dist/components/ui/core/data-grid/data-grid.fixtures.d.ts +7 -7
  110. package/dist/components/ui/core/data-grid/data-grid.fixtures.js +139 -0
  111. package/dist/components/ui/core/data-grid/data-grid.fixtures.js.map +1 -0
  112. package/dist/components/ui/core/data-grid/data-grid.js +404 -0
  113. package/dist/components/ui/core/data-grid/data-grid.js.map +1 -0
  114. package/dist/components/ui/core/data-grid/data-grid.utils.d.ts +3 -3
  115. package/dist/components/ui/core/data-grid/data-grid.utils.js +51 -0
  116. package/dist/components/ui/core/data-grid/data-grid.utils.js.map +1 -0
  117. package/dist/components/ui/core/data-grid/index.d.ts +4 -0
  118. package/dist/components/ui/core/data-grid/index.js +5 -0
  119. package/dist/components/ui/core/data-grid/index.js.map +1 -0
  120. package/dist/components/ui/core/date-time-pickers/date-picker/date-picker.d.ts +11 -13
  121. package/dist/components/ui/core/date-time-pickers/date-picker/date-picker.js +85 -61
  122. package/dist/components/ui/core/date-time-pickers/date-picker/date-picker.js.map +1 -0
  123. package/dist/components/ui/core/date-time-pickers/date-picker/index.d.ts +3 -3
  124. package/dist/components/ui/core/date-time-pickers/date-picker/index.js +3 -0
  125. package/dist/components/ui/core/date-time-pickers/date-picker/index.js.map +1 -0
  126. package/dist/components/ui/core/date-time-pickers/date-picker/types.d.ts +14 -14
  127. package/dist/components/ui/core/date-time-pickers/date-picker/types.js +3 -0
  128. package/dist/components/ui/core/date-time-pickers/date-picker/types.js.map +1 -0
  129. package/dist/components/ui/core/date-time-pickers/date-picker/use-date-picker.d.ts +2 -2
  130. package/dist/components/ui/core/date-time-pickers/date-picker/use-date-picker.js +51 -36
  131. package/dist/components/ui/core/date-time-pickers/date-picker/use-date-picker.js.map +1 -0
  132. package/dist/components/ui/core/date-time-pickers/date-range-picker/date-range-picker.d.ts +11 -13
  133. package/dist/components/ui/core/date-time-pickers/date-range-picker/date-range-picker.js +89 -64
  134. package/dist/components/ui/core/date-time-pickers/date-range-picker/date-range-picker.js.map +1 -0
  135. package/dist/components/ui/core/date-time-pickers/date-range-picker/index.d.ts +3 -3
  136. package/dist/components/ui/core/date-time-pickers/date-range-picker/index.js +3 -0
  137. package/dist/components/ui/core/date-time-pickers/date-range-picker/index.js.map +1 -0
  138. package/dist/components/ui/core/date-time-pickers/date-range-picker/types.d.ts +20 -20
  139. package/dist/components/ui/core/date-time-pickers/date-range-picker/types.js +3 -0
  140. package/dist/components/ui/core/date-time-pickers/date-range-picker/types.js.map +1 -0
  141. package/dist/components/ui/core/date-time-pickers/date-range-picker/use-date-range-picker.d.ts +4 -4
  142. package/dist/components/ui/core/date-time-pickers/date-range-picker/use-date-range-picker.js +95 -60
  143. package/dist/components/ui/core/date-time-pickers/date-range-picker/use-date-range-picker.js.map +1 -0
  144. package/dist/components/ui/core/date-time-pickers/date-time-picker/date-time-picker.d.ts +15 -0
  145. package/dist/components/ui/core/date-time-pickers/date-time-picker/date-time-picker.js +120 -0
  146. package/dist/components/ui/core/date-time-pickers/date-time-picker/date-time-picker.js.map +1 -0
  147. package/dist/components/ui/core/date-time-pickers/date-time-picker/index.d.ts +3 -1
  148. package/dist/components/ui/core/date-time-pickers/date-time-picker/index.js +3 -0
  149. package/dist/components/ui/core/date-time-pickers/date-time-picker/index.js.map +1 -0
  150. package/dist/components/ui/core/date-time-pickers/date-time-picker/types.d.ts +25 -32
  151. package/dist/components/ui/core/date-time-pickers/date-time-picker/types.js +3 -0
  152. package/dist/components/ui/core/date-time-pickers/date-time-picker/types.js.map +1 -0
  153. package/dist/components/ui/core/date-time-pickers/date-time-picker/use-date-time-picker.d.ts +2 -2
  154. package/dist/components/ui/core/date-time-pickers/date-time-picker/use-date-time-picker.js +78 -0
  155. package/dist/components/ui/core/date-time-pickers/date-time-picker/use-date-time-picker.js.map +1 -0
  156. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/date-time-range-picker.d.ts +13 -15
  157. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/date-time-range-picker.js +165 -119
  158. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/date-time-range-picker.js.map +1 -0
  159. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/index.d.ts +3 -3
  160. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/index.js +3 -0
  161. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/index.js.map +1 -0
  162. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/types.d.ts +37 -37
  163. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/types.js +3 -0
  164. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/types.js.map +1 -0
  165. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/use-date-time-range-picker.d.ts +3 -3
  166. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/use-date-time-range-picker.js +163 -104
  167. package/dist/components/ui/core/date-time-pickers/date-time-range-picker/use-date-time-range-picker.js.map +1 -0
  168. package/dist/components/ui/core/date-time-pickers/index.d.ts +17 -12
  169. package/dist/components/ui/core/date-time-pickers/index.js +10 -6
  170. package/dist/components/ui/core/date-time-pickers/index.js.map +1 -0
  171. package/dist/components/ui/core/date-time-pickers/shared/am-pm-scroll/am-pm-scroll.d.ts +5 -5
  172. package/dist/components/ui/core/date-time-pickers/shared/am-pm-scroll/am-pm-scroll.js +52 -42
  173. package/dist/components/ui/core/date-time-pickers/shared/am-pm-scroll/am-pm-scroll.js.map +1 -0
  174. package/dist/components/ui/core/date-time-pickers/shared/constants.d.ts +6 -1
  175. package/dist/components/ui/core/date-time-pickers/shared/constants.js +23 -0
  176. package/dist/components/ui/core/date-time-pickers/shared/constants.js.map +1 -0
  177. package/dist/components/ui/core/date-time-pickers/shared/date-time-input/date-time-input.d.ts +16 -15
  178. package/dist/components/ui/core/date-time-pickers/shared/date-time-input/date-time-input.js +87 -64
  179. package/dist/components/ui/core/date-time-pickers/shared/date-time-input/date-time-input.js.map +1 -0
  180. package/dist/components/ui/core/date-time-pickers/shared/date-time-input/range-input-display.d.ts +10 -9
  181. package/dist/components/ui/core/date-time-pickers/shared/date-time-input/range-input-display.js +89 -38
  182. package/dist/components/ui/core/date-time-pickers/shared/date-time-input/range-input-display.js.map +1 -0
  183. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-popover-state.d.ts +5 -5
  184. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-popover-state.js +34 -23
  185. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-popover-state.js.map +1 -0
  186. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-range-date-state.d.ts +23 -23
  187. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-range-date-state.js +95 -52
  188. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-range-date-state.js.map +1 -0
  189. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-range-step-manager.d.ts +5 -5
  190. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-range-step-manager.js +22 -18
  191. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-range-step-manager.js.map +1 -0
  192. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-single-date-state.d.ts +19 -19
  193. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-single-date-state.js +41 -24
  194. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-single-date-state.js.map +1 -0
  195. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-time-state.d.ts +13 -13
  196. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-time-state.js +33 -24
  197. package/dist/components/ui/core/date-time-pickers/shared/hooks/use-time-state.js.map +1 -0
  198. package/dist/components/ui/core/date-time-pickers/shared/scroll-cell-classes.d.ts +5 -5
  199. package/dist/components/ui/core/date-time-pickers/shared/scroll-cell-classes.js +9 -4
  200. package/dist/components/ui/core/date-time-pickers/shared/scroll-cell-classes.js.map +1 -0
  201. package/dist/components/ui/core/date-time-pickers/shared/shortcuts-panel/shortcuts-panel.d.ts +13 -9
  202. package/dist/components/ui/core/date-time-pickers/shared/shortcuts-panel/shortcuts-panel.js +22 -17
  203. package/dist/components/ui/core/date-time-pickers/shared/shortcuts-panel/shortcuts-panel.js.map +1 -0
  204. package/dist/components/ui/core/date-time-pickers/shared/time-picker-panel/index.d.ts +2 -2
  205. package/dist/components/ui/core/date-time-pickers/shared/time-picker-panel/index.js +3 -0
  206. package/dist/components/ui/core/date-time-pickers/shared/time-picker-panel/index.js.map +1 -0
  207. package/dist/components/ui/core/date-time-pickers/shared/time-picker-panel/time-picker-panel.d.ts +13 -13
  208. package/dist/components/ui/core/date-time-pickers/shared/time-picker-panel/time-picker-panel.js +49 -40
  209. package/dist/components/ui/core/date-time-pickers/shared/time-picker-panel/time-picker-panel.js.map +1 -0
  210. package/dist/components/ui/core/date-time-pickers/shared/time-picker-scroll/time-picker-scroll.d.ts +7 -7
  211. package/dist/components/ui/core/date-time-pickers/shared/time-picker-scroll/time-picker-scroll.js +41 -34
  212. package/dist/components/ui/core/date-time-pickers/shared/time-picker-scroll/time-picker-scroll.js.map +1 -0
  213. package/dist/components/ui/core/date-time-pickers/time-picker/index.d.ts +3 -3
  214. package/dist/components/ui/core/date-time-pickers/time-picker/index.js +3 -0
  215. package/dist/components/ui/core/date-time-pickers/time-picker/index.js.map +1 -0
  216. package/dist/components/ui/core/date-time-pickers/time-picker/time-picker.d.ts +12 -14
  217. package/dist/components/ui/core/date-time-pickers/time-picker/time-picker.js +99 -79
  218. package/dist/components/ui/core/date-time-pickers/time-picker/time-picker.js.map +1 -0
  219. package/dist/components/ui/core/date-time-pickers/time-picker/types.d.ts +20 -20
  220. package/dist/components/ui/core/date-time-pickers/time-picker/types.js +3 -0
  221. package/dist/components/ui/core/date-time-pickers/time-picker/types.js.map +1 -0
  222. package/dist/components/ui/core/date-time-pickers/time-picker/use-time-picker.d.ts +2 -2
  223. package/dist/components/ui/core/date-time-pickers/time-picker/use-time-picker.js +63 -41
  224. package/dist/components/ui/core/date-time-pickers/time-picker/use-time-picker.js.map +1 -0
  225. package/dist/components/ui/core/date-time-pickers/time-range-picker/index.d.ts +3 -1
  226. package/dist/components/ui/core/date-time-pickers/time-range-picker/index.js +3 -0
  227. package/dist/components/ui/core/date-time-pickers/time-range-picker/index.js.map +1 -0
  228. package/dist/components/ui/core/date-time-pickers/time-range-picker/time-range-picker.d.ts +14 -0
  229. package/dist/components/ui/core/date-time-pickers/time-range-picker/time-range-picker.js +115 -0
  230. package/dist/components/ui/core/date-time-pickers/time-range-picker/time-range-picker.js.map +1 -0
  231. package/dist/components/ui/core/date-time-pickers/time-range-picker/types.d.ts +30 -36
  232. package/dist/components/ui/core/date-time-pickers/time-range-picker/types.js +3 -0
  233. package/dist/components/ui/core/date-time-pickers/time-range-picker/types.js.map +1 -0
  234. package/dist/components/ui/core/date-time-pickers/time-range-picker/use-time-range-picker.d.ts +2 -2
  235. package/dist/components/ui/core/date-time-pickers/time-range-picker/use-time-range-picker.js +145 -0
  236. package/dist/components/ui/core/date-time-pickers/time-range-picker/use-time-range-picker.js.map +1 -0
  237. package/dist/components/ui/core/date-time-pickers/utils/date-input.d.ts +56 -0
  238. package/dist/components/ui/core/date-time-pickers/utils/date-input.js +67 -0
  239. package/dist/components/ui/core/date-time-pickers/utils/date-input.js.map +1 -0
  240. package/dist/components/ui/core/date-time-pickers/utils/date-range-utils.d.ts +18 -18
  241. package/dist/components/ui/core/date-time-pickers/utils/date-range-utils.js +42 -0
  242. package/dist/components/ui/core/date-time-pickers/utils/date-range-utils.js.map +1 -0
  243. package/dist/components/ui/core/date-time-pickers/utils/format-utils.d.ts +31 -29
  244. package/dist/components/ui/core/date-time-pickers/utils/format-utils.js +56 -0
  245. package/dist/components/ui/core/date-time-pickers/utils/format-utils.js.map +1 -0
  246. package/dist/components/ui/core/date-time-pickers/utils/segment-utils.d.ts +21 -21
  247. package/dist/components/ui/core/date-time-pickers/utils/segment-utils.js +170 -0
  248. package/dist/components/ui/core/date-time-pickers/utils/segment-utils.js.map +1 -0
  249. package/dist/components/ui/core/date-time-pickers/utils/time-utils.d.ts +28 -28
  250. package/dist/components/ui/core/date-time-pickers/utils/time-utils.js +88 -7
  251. package/dist/components/ui/core/date-time-pickers/utils/time-utils.js.map +1 -0
  252. package/dist/components/ui/core/date-time-pickers/utils/time-validation.d.ts +17 -17
  253. package/dist/components/ui/core/date-time-pickers/utils/time-validation.js +43 -0
  254. package/dist/components/ui/core/date-time-pickers/utils/time-validation.js.map +1 -0
  255. package/dist/components/ui/core/dialog/dialog.d.ts +12 -9
  256. package/dist/components/ui/core/dialog/dialog.js +90 -82
  257. package/dist/components/ui/core/dialog/dialog.js.map +1 -0
  258. package/dist/components/ui/core/dropdown-menu/dropdown-menu.d.ts +22 -19
  259. package/dist/components/ui/core/dropdown-menu/dropdown-menu.js +204 -149
  260. package/dist/components/ui/core/dropdown-menu/dropdown-menu.js.map +1 -0
  261. package/dist/components/ui/core/empty-state/empty-state.context.d.ts +4 -4
  262. package/dist/components/ui/core/empty-state/empty-state.context.js +8 -5
  263. package/dist/components/ui/core/empty-state/empty-state.context.js.map +1 -0
  264. package/dist/components/ui/core/empty-state/empty-state.d.ts +14 -14
  265. package/dist/components/ui/core/empty-state/empty-state.js +96 -82
  266. package/dist/components/ui/core/empty-state/empty-state.js.map +1 -0
  267. package/dist/components/ui/core/helper-text/helper-text.d.ts +7 -7
  268. package/dist/components/ui/core/helper-text/helper-text.js +55 -36
  269. package/dist/components/ui/core/helper-text/helper-text.js.map +1 -0
  270. package/dist/components/ui/core/hover-card/hover-card.d.ts +7 -6
  271. package/dist/components/ui/core/hover-card/hover-card.js +56 -52
  272. package/dist/components/ui/core/hover-card/hover-card.js.map +1 -0
  273. package/dist/components/ui/core/inline-citation/inline-citation.d.ts +26 -25
  274. package/dist/components/ui/core/inline-citation/inline-citation.js +121 -97
  275. package/dist/components/ui/core/inline-citation/inline-citation.js.map +1 -0
  276. package/dist/components/ui/core/input/input.d.ts +2 -2
  277. package/dist/components/ui/core/input/input.js +15 -13
  278. package/dist/components/ui/core/input/input.js.map +1 -0
  279. package/dist/components/ui/core/input-group/input-group.d.ts +25 -14
  280. package/dist/components/ui/core/input-group/input-group.js +149 -76
  281. package/dist/components/ui/core/input-group/input-group.js.map +1 -0
  282. package/dist/components/ui/core/item/item.d.ts +20 -0
  283. package/dist/components/ui/core/item/item.js +93 -0
  284. package/dist/components/ui/core/item/item.js.map +1 -0
  285. package/dist/components/ui/core/kbd/kbd.d.ts +3 -3
  286. package/dist/components/ui/core/kbd/kbd.js +24 -20
  287. package/dist/components/ui/core/kbd/kbd.js.map +1 -0
  288. package/dist/components/ui/core/label/label.d.ts +3 -3
  289. package/dist/components/ui/core/label/label.js +33 -26
  290. package/dist/components/ui/core/label/label.js.map +1 -0
  291. package/dist/components/ui/core/loader/loader.d.ts +6 -6
  292. package/dist/components/ui/core/loader/loader.js +97 -80
  293. package/dist/components/ui/core/loader/loader.js.map +1 -0
  294. package/dist/components/ui/core/message/message-response-default-streamdown-controls.d.ts +9 -9
  295. package/dist/components/ui/core/message/message-response-default-streamdown-controls.js +19 -12
  296. package/dist/components/ui/core/message/message-response-default-streamdown-controls.js.map +1 -0
  297. package/dist/components/ui/core/message/message-response-math-plugin.d.ts +3 -0
  298. package/dist/components/ui/core/message/message-response-math-plugin.js +6 -0
  299. package/dist/components/ui/core/message/message-response-math-plugin.js.map +1 -0
  300. package/dist/components/ui/core/message/message.d.ts +27 -23
  301. package/dist/components/ui/core/message/message.js +453 -316
  302. package/dist/components/ui/core/message/message.js.map +1 -0
  303. package/dist/components/ui/core/overflow-list/overflow-list.d.ts +21 -0
  304. package/dist/components/ui/core/overflow-list/overflow-list.js +197 -0
  305. package/dist/components/ui/core/overflow-list/overflow-list.js.map +1 -0
  306. package/dist/components/ui/core/overflow-list/overflow-list.utils.d.ts +37 -35
  307. package/dist/components/ui/core/overflow-list/overflow-list.utils.js +206 -0
  308. package/dist/components/ui/core/overflow-list/overflow-list.utils.js.map +1 -0
  309. package/dist/components/ui/core/pagination/pagination-size-context.d.ts +2 -2
  310. package/dist/components/ui/core/pagination/pagination-size-context.js +6 -5
  311. package/dist/components/ui/core/pagination/pagination-size-context.js.map +1 -0
  312. package/dist/components/ui/core/pagination/pagination-teleport.d.ts +9 -9
  313. package/dist/components/ui/core/pagination/pagination-teleport.js +127 -84
  314. package/dist/components/ui/core/pagination/pagination-teleport.js.map +1 -0
  315. package/dist/components/ui/core/pagination/pagination-teleport.utils.js +6 -6
  316. package/dist/components/ui/core/pagination/pagination-teleport.utils.js.map +1 -0
  317. package/dist/components/ui/core/pagination/pagination.d.ts +39 -39
  318. package/dist/components/ui/core/pagination/pagination.js +294 -234
  319. package/dist/components/ui/core/pagination/pagination.js.map +1 -0
  320. package/dist/components/ui/core/popover/popover.d.ts +12 -11
  321. package/dist/components/ui/core/popover/popover.js +104 -89
  322. package/dist/components/ui/core/popover/popover.js.map +1 -0
  323. package/dist/components/ui/core/progress/progress.d.ts +9 -8
  324. package/dist/components/ui/core/progress/progress.js +50 -35
  325. package/dist/components/ui/core/progress/progress.js.map +1 -0
  326. package/dist/components/ui/core/prompt-input/prompt-input.d.ts +27 -27
  327. package/dist/components/ui/core/prompt-input/prompt-input.js +342 -271
  328. package/dist/components/ui/core/prompt-input/prompt-input.js.map +1 -0
  329. package/dist/components/ui/core/radio-group/radio-group.d.ts +12 -12
  330. package/dist/components/ui/core/radio-group/radio-group.js +88 -58
  331. package/dist/components/ui/core/radio-group/radio-group.js.map +1 -0
  332. package/dist/components/ui/core/reasoning/reasoning.d.ts +7 -7
  333. package/dist/components/ui/core/reasoning/reasoning.js +68 -56
  334. package/dist/components/ui/core/reasoning/reasoning.js.map +1 -0
  335. package/dist/components/ui/core/scroll-area/scroll-area.d.ts +4 -4
  336. package/dist/components/ui/core/scroll-area/scroll-area.js +50 -40
  337. package/dist/components/ui/core/scroll-area/scroll-area.js.map +1 -0
  338. package/dist/components/ui/core/search/search.d.ts +8 -8
  339. package/dist/components/ui/core/search/search.js +122 -76
  340. package/dist/components/ui/core/search/search.js.map +1 -0
  341. package/dist/components/ui/core/segmented-control/segmented-control.d.ts +17 -11
  342. package/dist/components/ui/core/segmented-control/segmented-control.js +204 -108
  343. package/dist/components/ui/core/segmented-control/segmented-control.js.map +1 -0
  344. package/dist/components/ui/core/select/select.d.ts +27 -26
  345. package/dist/components/ui/core/select/select.js +213 -168
  346. package/dist/components/ui/core/select/select.js.map +1 -0
  347. package/dist/components/ui/core/separator/separator.d.ts +2 -2
  348. package/dist/components/ui/core/separator/separator.js +13 -13
  349. package/dist/components/ui/core/separator/separator.js.map +1 -0
  350. package/dist/components/ui/core/shimmer/shimmer.d.ts +8 -8
  351. package/dist/components/ui/core/shimmer/shimmer.js +64 -40
  352. package/dist/components/ui/core/shimmer/shimmer.js.map +1 -0
  353. package/dist/components/ui/core/skeleton/skeleton.d.ts +2 -2
  354. package/dist/components/ui/core/skeleton/skeleton.js +13 -13
  355. package/dist/components/ui/core/skeleton/skeleton.js.map +1 -0
  356. package/dist/components/ui/core/slider/slider.d.ts +7 -7
  357. package/dist/components/ui/core/slider/slider.js +51 -39
  358. package/dist/components/ui/core/slider/slider.js.map +1 -0
  359. package/dist/components/ui/core/sonner-toast/sonner-toast.d.ts +2 -2
  360. package/dist/components/ui/core/sonner-toast/sonner-toast.js +67 -54
  361. package/dist/components/ui/core/sonner-toast/sonner-toast.js.map +1 -0
  362. package/dist/components/ui/core/sources/sources.d.ts +12 -12
  363. package/dist/components/ui/core/sources/sources.js +87 -58
  364. package/dist/components/ui/core/sources/sources.js.map +1 -0
  365. package/dist/components/ui/core/switch/switch.d.ts +9 -9
  366. package/dist/components/ui/core/switch/switch.js +83 -61
  367. package/dist/components/ui/core/switch/switch.js.map +1 -0
  368. package/dist/components/ui/core/switch/switch.metadata.d.ts +1 -1
  369. package/dist/components/ui/core/switch/switch.metadata.js +8 -0
  370. package/dist/components/ui/core/switch/switch.metadata.js.map +1 -0
  371. package/dist/components/ui/core/tabs/tabs.d.ts +20 -18
  372. package/dist/components/ui/core/tabs/tabs.js +176 -147
  373. package/dist/components/ui/core/tabs/tabs.js.map +1 -0
  374. package/dist/components/ui/core/tabs/tabs.utils.d.ts +1 -1
  375. package/dist/components/ui/core/tabs/tabs.utils.js +10 -6
  376. package/dist/components/ui/core/tabs/tabs.utils.js.map +1 -0
  377. package/dist/components/ui/core/textarea/textarea.d.ts +2 -2
  378. package/dist/components/ui/core/textarea/textarea.js +13 -13
  379. package/dist/components/ui/core/textarea/textarea.js.map +1 -0
  380. package/dist/components/ui/core/toggle/toggle.d.ts +9 -9
  381. package/dist/components/ui/core/toggle/toggle.js +60 -54
  382. package/dist/components/ui/core/toggle/toggle.js.map +1 -0
  383. package/dist/components/ui/core/tool/tool.d.ts +18 -18
  384. package/dist/components/ui/core/tool/tool.js +167 -126
  385. package/dist/components/ui/core/tool/tool.js.map +1 -0
  386. package/dist/components/ui/core/toolbar/toolbar.d.ts +37 -0
  387. package/dist/components/ui/core/toolbar/toolbar.js +171 -0
  388. package/dist/components/ui/core/toolbar/toolbar.js.map +1 -0
  389. package/dist/components/ui/core/tooltip/tooltip.d.ts +8 -7
  390. package/dist/components/ui/core/tooltip/tooltip.js +53 -46
  391. package/dist/components/ui/core/tooltip/tooltip.js.map +1 -0
  392. package/dist/components/ui/core/topbar/topbar.d.ts +26 -26
  393. package/dist/components/ui/core/topbar/topbar.js +160 -105
  394. package/dist/components/ui/core/topbar/topbar.js.map +1 -0
  395. package/dist/components/ui/core/tree/tree.d.ts +20 -0
  396. package/dist/components/ui/core/tree/tree.js +100 -0
  397. package/dist/components/ui/core/tree/tree.js.map +1 -0
  398. package/dist/eslint/index.d.ts +5 -5
  399. package/dist/eslint/index.js +9 -5
  400. package/dist/eslint/index.js.map +1 -0
  401. package/dist/eslint/no-overriding-styles.d.ts +1 -1
  402. package/dist/eslint/no-overriding-styles.js +341 -201
  403. package/dist/eslint/no-overriding-styles.js.map +1 -0
  404. package/dist/icons/index.d.ts +1 -1
  405. package/dist/icons/index.js +2 -0
  406. package/dist/icons/index.js.map +1 -0
  407. package/dist/index.d.ts +1 -1
  408. package/dist/index.js +3 -0
  409. package/dist/index.js.map +1 -0
  410. package/dist/lib/ai/types.d.ts +43 -43
  411. package/dist/lib/ai/types.js +3 -0
  412. package/dist/lib/ai/types.js.map +1 -0
  413. package/dist/lib/decorative-variant-classes.d.ts +53 -0
  414. package/dist/lib/decorative-variant-classes.js +58 -0
  415. package/dist/lib/decorative-variant-classes.js.map +1 -0
  416. package/dist/lib/highlight-code.d.ts +11 -8
  417. package/dist/lib/highlight-code.js +58 -40
  418. package/dist/lib/highlight-code.js.map +1 -0
  419. package/dist/lib/portal-container-context.d.ts +1 -1
  420. package/dist/lib/portal-container-context.js +8 -8
  421. package/dist/lib/portal-container-context.js.map +1 -0
  422. package/dist/lib/shared-theme-from-url.d.ts +13 -0
  423. package/dist/lib/shared-theme-from-url.js +61 -0
  424. package/dist/lib/shared-theme-from-url.js.map +1 -0
  425. package/dist/lib/style-scope.d.ts +2 -2
  426. package/dist/lib/style-scope.js +6 -6
  427. package/dist/lib/style-scope.js.map +1 -0
  428. package/dist/lib/theme-share-url.d.ts +31 -0
  429. package/dist/lib/theme-share-url.js +116 -0
  430. package/dist/lib/theme-share-url.js.map +1 -0
  431. package/dist/lib/types.d.ts +39 -39
  432. package/dist/lib/types.js +3 -0
  433. package/dist/lib/types.js.map +1 -0
  434. package/dist/lib/use-controllable-state.d.ts +4 -7
  435. package/dist/lib/use-controllable-state.js +34 -21
  436. package/dist/lib/use-controllable-state.js.map +1 -0
  437. package/dist/lib/utils.d.ts +63 -34
  438. package/dist/lib/utils.js +134 -32
  439. package/dist/lib/utils.js.map +1 -0
  440. package/dist/styles.css +2 -1
  441. package/dist/styles.source.css +24 -12
  442. package/dist/utils/assign-ref.d.ts +3 -0
  443. package/dist/utils/assign-ref.js +13 -0
  444. package/dist/utils/assign-ref.js.map +1 -0
  445. package/package.json +50 -11
  446. package/src/components/ui/core/button/button.md +93 -0
@@ -1,36 +1,29 @@
1
- import { Dayjs } from 'dayjs';
2
- import { ShortcutItem, ShortcutValueDayjs } from '../shared/shortcuts-panel/shortcuts-panel';
3
- import { AmPm, TimeFormat } from '../utils/format-utils';
1
+ import type { Dayjs } from "dayjs";
2
+ import type { ShortcutValueDayjs } from "../shared/shortcuts-panel/shortcuts-panel";
3
+ import type { AmPm, TimeFormat } from "../utils/format-utils";
4
4
  export interface UseDateTimePickerProps {
5
- value: Dayjs | null;
6
- onChange: (datetime: Dayjs | null) => void;
7
- timeFormat?: TimeFormat;
8
- defaultDate?: Dayjs;
5
+ value: Dayjs | null;
6
+ onChange: (datetime: Dayjs | null) => void;
7
+ timeFormat?: TimeFormat;
8
+ defaultDate?: Dayjs;
9
9
  }
10
10
  export interface UseDateTimePickerReturn {
11
- isOpen: boolean;
12
- displayedMonth: Dayjs;
13
- tempDate: Dayjs | null;
14
- hour: number;
15
- minute: number;
16
- amPm: AmPm;
17
- displayValue: Dayjs | null;
18
- canApply: boolean;
19
- handleOpenChange: (open: boolean) => void;
20
- handleApply: () => void;
21
- handleDateClick: (date: Dayjs) => void;
22
- handleMonthChange: (month: Dayjs) => void;
23
- handleHourChange: (hour: number) => void;
24
- handleMinuteChange: (minute: number) => void;
25
- handleAmPmChange: (amPm: AmPm) => void;
26
- handleApplyShortcut: (shortcutValue: ShortcutValueDayjs) => void;
27
- inputRef: React.RefObject<HTMLDivElement>;
28
- popoverRef: React.RefObject<HTMLDivElement>;
29
- }
30
- export interface DateTimePickerProps extends UseDateTimePickerProps {
31
- format?: string;
32
- placeholder?: string;
33
- displayWeekNumber?: boolean;
34
- shortcuts?: ShortcutItem[];
35
- className?: string;
11
+ isOpen: boolean;
12
+ displayedMonth: Dayjs;
13
+ tempDate: Dayjs | null;
14
+ hour: number;
15
+ minute: number;
16
+ amPm: AmPm;
17
+ displayValue: Dayjs | null;
18
+ canApply: boolean;
19
+ handleOpenChange: (open: boolean) => void;
20
+ handleApply: () => void;
21
+ handleDateClick: (date: Dayjs) => void;
22
+ handleMonthChange: (month: Dayjs) => void;
23
+ handleHourChange: (hour: number) => void;
24
+ handleMinuteChange: (minute: number) => void;
25
+ handleAmPmChange: (amPm: AmPm) => void;
26
+ handleApplyShortcut: (shortcutValue: ShortcutValueDayjs) => void;
27
+ inputRef: React.RefObject<HTMLDivElement>;
28
+ popoverRef: React.RefObject<HTMLDivElement>;
36
29
  }
@@ -0,0 +1,3 @@
1
+ export { };
2
+
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../src/components/ui/core/date-time-pickers/date-time-picker/types.ts"],"sourcesContent":["import type { Dayjs } from 'dayjs';\n\nimport type { ShortcutValueDayjs } from '../shared/shortcuts-panel/shortcuts-panel';\nimport type { AmPm, TimeFormat } from '../utils/format-utils';\n\nexport interface UseDateTimePickerProps {\n value: Dayjs | null;\n onChange: (datetime: Dayjs | null) => void;\n timeFormat?: TimeFormat;\n defaultDate?: Dayjs;\n}\n\nexport interface UseDateTimePickerReturn {\n isOpen: boolean;\n displayedMonth: Dayjs;\n tempDate: Dayjs | null;\n hour: number;\n minute: number;\n amPm: AmPm;\n displayValue: Dayjs | null;\n canApply: boolean;\n handleOpenChange: (open: boolean) => void;\n handleApply: () => void;\n handleDateClick: (date: Dayjs) => void;\n handleMonthChange: (month: Dayjs) => void;\n handleHourChange: (hour: number) => void;\n handleMinuteChange: (minute: number) => void;\n handleAmPmChange: (amPm: AmPm) => void;\n handleApplyShortcut: (shortcutValue: ShortcutValueDayjs) => void;\n inputRef: React.RefObject<HTMLDivElement>;\n popoverRef: React.RefObject<HTMLDivElement>;\n}\n"],"names":[],"mappings":"AAYA,WAmBC"}
@@ -1,3 +1,3 @@
1
- import { UseDateTimePickerProps, UseDateTimePickerReturn } from './types';
1
+ import type { UseDateTimePickerProps, UseDateTimePickerReturn } from "./types";
2
2
  export type { UseDateTimePickerProps, UseDateTimePickerReturn };
3
- export declare const useDateTimePicker: ({ value, onChange, timeFormat, defaultDate, }: UseDateTimePickerProps) => UseDateTimePickerReturn;
3
+ export declare const useDateTimePicker: ({ value, onChange, timeFormat, defaultDate }: UseDateTimePickerProps) => UseDateTimePickerReturn;
@@ -0,0 +1,78 @@
1
+ import { useEffect, useRef } from "react";
2
+ import dayjs from "dayjs";
3
+ import { DEFAULT_MINUTE, DEFAULT_START_HOUR } from "../shared/constants.js";
4
+ import { usePopoverState } from "../shared/hooks/use-popover-state.js";
5
+ import { useSingleDateState } from "../shared/hooks/use-single-date-state.js";
6
+ import { useTimeState } from "../shared/hooks/use-time-state.js";
7
+ export const useDateTimePicker = ({ value, onChange, timeFormat = '24h', defaultDate = dayjs() })=>{
8
+ const onBackspaceRef = useRef(()=>{});
9
+ const { isOpen, setIsOpen, popoverRef, inputRef } = usePopoverState({
10
+ onBackspace: ()=>onBackspaceRef.current()
11
+ });
12
+ const dateState = useSingleDateState({
13
+ value,
14
+ defaultDate
15
+ });
16
+ const { tempDate, displayedMonth, stateRef, handleDateClick, handleMonthChange, clearDate, resetDate } = dateState;
17
+ const timeState = useTimeState({
18
+ initialHour: value?.hour() ?? DEFAULT_START_HOUR,
19
+ initialMinute: value?.minute() ?? DEFAULT_MINUTE,
20
+ timeFormat
21
+ });
22
+ const { hour, minute, amPm, hour24, handleHourChange, handleMinuteChange, handleAmPmChange, resetTime } = timeState;
23
+ const anchor = value ?? defaultDate;
24
+ const buildDateTime = (date)=>date.hour(hour24).minute(minute).second(0).millisecond(0);
25
+ const displayValue = isOpen ? buildDateTime(tempDate ?? anchor) : value;
26
+ const canApply = tempDate !== null;
27
+ const resetAll = ()=>{
28
+ resetDate(value);
29
+ resetTime(value?.hour() ?? DEFAULT_START_HOUR, value?.minute() ?? DEFAULT_MINUTE);
30
+ };
31
+ const handleBackspace = ()=>{
32
+ if (clearDate()) {
33
+ onChange(null);
34
+ }
35
+ };
36
+ useEffect(()=>{
37
+ onBackspaceRef.current = handleBackspace;
38
+ });
39
+ const handleOpenChange = (open)=>{
40
+ resetAll();
41
+ setIsOpen(open);
42
+ };
43
+ const handleApply = ()=>{
44
+ const { tempDate: selected } = stateRef.current;
45
+ if (!selected) {
46
+ return;
47
+ }
48
+ onChange(buildDateTime(selected));
49
+ setIsOpen(false);
50
+ };
51
+ const handleApplyShortcut = (shortcutValue)=>{
52
+ const datetime = Array.isArray(shortcutValue) ? shortcutValue[0] : shortcutValue;
53
+ onChange(datetime == null ? null : datetime.second(0).millisecond(0));
54
+ setIsOpen(false);
55
+ };
56
+ return {
57
+ isOpen,
58
+ displayedMonth,
59
+ tempDate,
60
+ hour,
61
+ minute,
62
+ amPm,
63
+ displayValue,
64
+ canApply,
65
+ handleOpenChange,
66
+ handleApply,
67
+ handleDateClick,
68
+ handleMonthChange,
69
+ handleHourChange,
70
+ handleMinuteChange,
71
+ handleAmPmChange,
72
+ handleApplyShortcut,
73
+ inputRef,
74
+ popoverRef
75
+ };
76
+ };
77
+
78
+ //# sourceMappingURL=use-date-time-picker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../src/components/ui/core/date-time-pickers/date-time-picker/use-date-time-picker.ts"],"sourcesContent":["import { useEffect, useRef } from 'react';\n\nimport type { Dayjs } from 'dayjs';\nimport dayjs from 'dayjs';\n\nimport { DEFAULT_MINUTE, DEFAULT_START_HOUR } from '../shared/constants';\nimport { usePopoverState } from '../shared/hooks/use-popover-state';\nimport { useSingleDateState } from '../shared/hooks/use-single-date-state';\nimport { useTimeState } from '../shared/hooks/use-time-state';\nimport type { ShortcutValueDayjs } from '../shared/shortcuts-panel/shortcuts-panel';\n\nimport type { UseDateTimePickerProps, UseDateTimePickerReturn } from './types';\n\nexport type { UseDateTimePickerProps, UseDateTimePickerReturn };\n\nexport const useDateTimePicker = ({\n value,\n onChange,\n timeFormat = '24h',\n defaultDate = dayjs(),\n}: UseDateTimePickerProps): UseDateTimePickerReturn => {\n const onBackspaceRef = useRef<() => void>(() => {});\n\n const { isOpen, setIsOpen, popoverRef, inputRef } = usePopoverState({\n onBackspace: () => onBackspaceRef.current(),\n });\n\n const dateState = useSingleDateState({\n value,\n defaultDate,\n });\n const {\n tempDate,\n displayedMonth,\n stateRef,\n handleDateClick,\n handleMonthChange,\n clearDate,\n resetDate,\n } = dateState;\n\n const timeState = useTimeState({\n initialHour: value?.hour() ?? DEFAULT_START_HOUR,\n initialMinute: value?.minute() ?? DEFAULT_MINUTE,\n timeFormat,\n });\n const {\n hour,\n minute,\n amPm,\n hour24,\n handleHourChange,\n handleMinuteChange,\n handleAmPmChange,\n resetTime,\n } = timeState;\n\n const anchor = value ?? defaultDate;\n\n const buildDateTime = (date: Dayjs): Dayjs =>\n date.hour(hour24).minute(minute).second(0).millisecond(0);\n\n const displayValue = isOpen ? buildDateTime(tempDate ?? anchor) : value;\n\n const canApply = tempDate !== null;\n\n const resetAll = () => {\n resetDate(value);\n resetTime(\n value?.hour() ?? DEFAULT_START_HOUR,\n value?.minute() ?? DEFAULT_MINUTE\n );\n };\n\n const handleBackspace = () => {\n if (clearDate()) {\n onChange(null);\n }\n };\n\n useEffect(() => {\n onBackspaceRef.current = handleBackspace;\n });\n\n const handleOpenChange = (open: boolean) => {\n resetAll();\n setIsOpen(open);\n };\n\n const handleApply = () => {\n const { tempDate: selected } = stateRef.current;\n if (!selected) {\n return;\n }\n onChange(buildDateTime(selected));\n setIsOpen(false);\n };\n\n const handleApplyShortcut = (shortcutValue: ShortcutValueDayjs) => {\n const datetime: Dayjs | null = Array.isArray(shortcutValue)\n ? shortcutValue[0]\n : shortcutValue;\n onChange(datetime == null ? null : datetime.second(0).millisecond(0));\n setIsOpen(false);\n };\n\n return {\n isOpen,\n displayedMonth,\n tempDate,\n hour,\n minute,\n amPm,\n displayValue,\n canApply,\n handleOpenChange,\n handleApply,\n handleDateClick,\n handleMonthChange,\n handleHourChange,\n handleMinuteChange,\n handleAmPmChange,\n handleApplyShortcut,\n inputRef,\n popoverRef,\n };\n};\n"],"names":["useEffect","useRef","dayjs","DEFAULT_MINUTE","DEFAULT_START_HOUR","usePopoverState","useSingleDateState","useTimeState","useDateTimePicker","value","onChange","timeFormat","defaultDate","onBackspaceRef","isOpen","setIsOpen","popoverRef","inputRef","onBackspace","current","dateState","tempDate","displayedMonth","stateRef","handleDateClick","handleMonthChange","clearDate","resetDate","timeState","initialHour","hour","initialMinute","minute","amPm","hour24","handleHourChange","handleMinuteChange","handleAmPmChange","resetTime","anchor","buildDateTime","date","second","millisecond","displayValue","canApply","resetAll","handleBackspace","handleOpenChange","open","handleApply","selected","handleApplyShortcut","shortcutValue","datetime","Array","isArray"],"mappings":"AAAA,SAASA,SAAS,EAAEC,MAAM,QAAQ,QAAQ;AAG1C,OAAOC,WAAW,QAAQ;AAE1B,SAASC,cAAc,EAAEC,kBAAkB,QAAQ,yBAAsB;AACzE,SAASC,eAAe,QAAQ,uCAAoC;AACpE,SAASC,kBAAkB,QAAQ,2CAAwC;AAC3E,SAASC,YAAY,QAAQ,oCAAiC;AAO9D,OAAO,MAAMC,oBAAoB,CAAC,EAChCC,KAAK,EACLC,QAAQ,EACRC,aAAa,KAAK,EAClBC,cAAcV,OAAO,EACE;IACvB,MAAMW,iBAAiBZ,OAAmB,KAAO;IAEjD,MAAM,EAAEa,MAAM,EAAEC,SAAS,EAAEC,UAAU,EAAEC,QAAQ,EAAE,GAAGZ,gBAAgB;QAClEa,aAAa,IAAML,eAAeM,OAAO;IAC3C;IAEA,MAAMC,YAAYd,mBAAmB;QACnCG;QACAG;IACF;IACA,MAAM,EACJS,QAAQ,EACRC,cAAc,EACdC,QAAQ,EACRC,eAAe,EACfC,iBAAiB,EACjBC,SAAS,EACTC,SAAS,EACV,GAAGP;IAEJ,MAAMQ,YAAYrB,aAAa;QAC7BsB,aAAapB,OAAOqB,UAAU1B;QAC9B2B,eAAetB,OAAOuB,YAAY7B;QAClCQ;IACF;IACA,MAAM,EACJmB,IAAI,EACJE,MAAM,EACNC,IAAI,EACJC,MAAM,EACNC,gBAAgB,EAChBC,kBAAkB,EAClBC,gBAAgB,EAChBC,SAAS,EACV,GAAGV;IAEJ,MAAMW,SAAS9B,SAASG;IAExB,MAAM4B,gBAAgB,CAACC,OACrBA,KAAKX,IAAI,CAACI,QAAQF,MAAM,CAACA,QAAQU,MAAM,CAAC,GAAGC,WAAW,CAAC;IAEzD,MAAMC,eAAe9B,SAAS0B,cAAcnB,YAAYkB,UAAU9B;IAElE,MAAMoC,WAAWxB,aAAa;IAE9B,MAAMyB,WAAW;QACfnB,UAAUlB;QACV6B,UACE7B,OAAOqB,UAAU1B,oBACjBK,OAAOuB,YAAY7B;IAEvB;IAEA,MAAM4C,kBAAkB;QACtB,IAAIrB,aAAa;YACfhB,SAAS;QACX;IACF;IAEAV,UAAU;QACRa,eAAeM,OAAO,GAAG4B;IAC3B;IAEA,MAAMC,mBAAmB,CAACC;QACxBH;QACA/B,UAAUkC;IACZ;IAEA,MAAMC,cAAc;QAClB,MAAM,EAAE7B,UAAU8B,QAAQ,EAAE,GAAG5B,SAASJ,OAAO;QAC/C,IAAI,CAACgC,UAAU;YACb;QACF;QACAzC,SAAS8B,cAAcW;QACvBpC,UAAU;IACZ;IAEA,MAAMqC,sBAAsB,CAACC;QAC3B,MAAMC,WAAyBC,MAAMC,OAAO,CAACH,iBACzCA,aAAa,CAAC,EAAE,GAChBA;QACJ3C,SAAS4C,YAAY,OAAO,OAAOA,SAASZ,MAAM,CAAC,GAAGC,WAAW,CAAC;QAClE5B,UAAU;IACZ;IAEA,OAAO;QACLD;QACAQ;QACAD;QACAS;QACAE;QACAC;QACAW;QACAC;QACAG;QACAE;QACA1B;QACAC;QACAU;QACAC;QACAC;QACAe;QACAnC;QACAD;IACF;AACF,EAAE"}
@@ -1,17 +1,15 @@
1
- import { FC } from 'react';
2
- import { Dayjs } from 'dayjs';
3
- import { ShortcutItem } from '../shared/shortcuts-panel/shortcuts-panel';
4
- import { TimeFormat } from '../utils/format-utils';
1
+ import type { JSX } from "react";
2
+ import type { Dayjs } from "dayjs";
3
+ import type { ShortcutItem } from "../shared/shortcuts-panel/shortcuts-panel";
4
+ import { type DateInput, type DateRangeValueProps } from "../utils/date-input";
5
+ import type { TimeFormat } from "../utils/format-utils";
5
6
  export type { ShortcutItem };
6
- export interface DateTimeRangePickerProps {
7
- value: [Dayjs | null, Dayjs | null];
8
- onChange: (range: [Dayjs | null, Dayjs | null]) => void;
9
- format?: string;
10
- placeholder?: string;
11
- displayWeekNumber?: boolean;
12
- shortcuts?: ShortcutItem[];
13
- timeFormat?: TimeFormat;
14
- defaultDate?: Dayjs;
15
- className?: string;
7
+ export interface DateTimeRangePickerProps<T extends DateInput = Dayjs> extends DateRangeValueProps<T> {
8
+ format?: string;
9
+ placeholder?: string;
10
+ displayWeekNumber?: boolean;
11
+ shortcuts?: ShortcutItem[];
12
+ timeFormat?: TimeFormat;
13
+ className?: string;
16
14
  }
17
- export declare const DateTimeRangePicker: FC<DateTimeRangePickerProps>;
15
+ export declare function DateTimeRangePicker<T extends DateInput = Dayjs>({ value, onChange, format, placeholder, displayWeekNumber, shortcuts, timeFormat, defaultDate, valueType, className }: DateTimeRangePickerProps<T>): JSX.Element;
@@ -1,119 +1,165 @@
1
- import { cn as e } from "../../../../../lib/utils.js";
2
- import { Button as t } from "../../button/button.js";
3
- import { Popover as ee, PopoverContent as te, PopoverTrigger as n } from "../../popover/popover.js";
4
- import { Calendar as r } from "../../calendar/calendar.js";
5
- import { DateTimeInput as i } from "../shared/date-time-input/date-time-input.js";
6
- import { ShortcutsPanel as a } from "../shared/shortcuts-panel/shortcuts-panel.js";
7
- import { convert12HourTo24Hour as o } from "../utils/time-utils.js";
8
- import { TimePickerPanel as s } from "../shared/time-picker-panel/time-picker-panel.js";
9
- import { useDateTimeRangePicker as c } from "./use-date-time-range-picker.js";
10
- import { useMemo as l } from "react";
11
- import { jsx as u, jsxs as d } from "react/jsx-runtime";
12
- //#region libs/aura/src/components/ui/core/date-time-pickers/date-time-range-picker/date-time-range-picker.tsx
13
- var f = ({ value: f, onChange: p, format: m = "DD/MM/YYYY HH:mm", placeholder: h, displayWeekNumber: g = !1, shortcuts: _, timeFormat: v = "24h", defaultDate: ne, className: re }) => {
14
- let { isOpen: y, step: b, displayedMonth: x, tempStart: S, tempEnd: C, hoverDate: w, tempStartHour: T, tempStartMinute: E, tempEndHour: D, tempEndMinute: O, startAmPm: k, endAmPm: A, handleOpenChange: j, handleSetStep: M, handleDateClick: N, handleMonthChange: P, handleDateHover: F, handleStartHourChange: ie, handleStartMinuteChange: I, handleEndHourChange: L, handleEndMinuteChange: R, handleStartAmPmChange: z, handleEndAmPmChange: B, handleNext: V, handleApply: H, handleBack: U, handleApplyShortcut: W, popoverRef: G, inputRef: K } = c({
15
- value: f,
16
- onChange: p,
17
- timeFormat: v,
18
- defaultDate: ne
19
- }), q = b === "start" ? S !== null : C !== null, J = b === "start" ? "Next" : "Apply", Y = b === "start" ? V : H, X = b === "start" ? T : D, Z = b === "start" ? E : O, ae = b === "start" ? k : A, Q = b === "start" ? ie : L, $ = b === "start" ? I : R, oe = b === "start" ? z : B, se = l(() => [S ? S.hour(v === "12h" ? o(T, k) : T).minute(E) : null, C ? C.hour(v === "12h" ? o(D, A) : D).minute(O) : null], [
20
- S,
21
- C,
22
- T,
23
- E,
24
- D,
25
- O,
26
- k,
27
- A,
28
- v
29
- ]);
30
- return /* @__PURE__ */ u("div", {
31
- "data-slot": "date-time-range-picker",
32
- className: e("relative w-full", re),
33
- children: /* @__PURE__ */ d(ee, {
34
- open: y,
35
- onOpenChange: j,
36
- children: [/* @__PURE__ */ u(n, {
37
- render: /* @__PURE__ */ u("div", {
38
- ref: K,
39
- className: "w-full"
40
- }),
41
- children: /* @__PURE__ */ u(i, {
42
- value: se,
43
- format: m,
44
- placeholder: h,
45
- isOpen: y,
46
- variant: "datetime",
47
- activeRangePart: y ? b : void 0,
48
- onRangePartClick: y ? M : void 0
49
- })
50
- }), /* @__PURE__ */ u(te, {
51
- ref: G,
52
- className: "rounded-xl w-auto p-0",
53
- side: "bottom",
54
- align: "start",
55
- children: /* @__PURE__ */ d("div", {
56
- "data-slot": "date-time-range-picker-content",
57
- className: "flex flex-col",
58
- children: [/* @__PURE__ */ d("div", {
59
- className: "flex flex-row",
60
- children: [
61
- _ && _.length > 0 && /* @__PURE__ */ u(a, {
62
- shortcuts: _,
63
- onShortcutClick: W
64
- }),
65
- /* @__PURE__ */ u("div", {
66
- className: "p-3 border-r border-border",
67
- children: /* @__PURE__ */ u(r, {
68
- displayedMonth: x,
69
- selectedRange: [S, C],
70
- hoverDate: b === "end" ? w : null,
71
- displayWeekNumber: g,
72
- onDateClick: N,
73
- onMonthChange: P,
74
- onDateHover: F
75
- })
76
- }),
77
- v === "12h" ? /* @__PURE__ */ u(s, {
78
- hour: X,
79
- minute: Z,
80
- amPm: ae,
81
- timeFormat: "12h",
82
- onHourChange: Q,
83
- onMinuteChange: $,
84
- onAmPmChange: oe
85
- }) : /* @__PURE__ */ u(s, {
86
- hour: X,
87
- minute: Z,
88
- timeFormat: "24h",
89
- onHourChange: Q,
90
- onMinuteChange: $
91
- })
92
- ]
93
- }), /* @__PURE__ */ d("div", {
94
- className: "flex p-2 justify-between items-center self-stretch border-t border-border",
95
- children: [/* @__PURE__ */ u(t, {
96
- variant: "ghost",
97
- onClick: () => j(!1),
98
- children: "Cancel"
99
- }), /* @__PURE__ */ d("div", {
100
- className: "flex gap-2",
101
- children: [b === "end" && /* @__PURE__ */ u(t, {
102
- variant: "ghost",
103
- onClick: U,
104
- children: "Back"
105
- }), /* @__PURE__ */ u(t, {
106
- variant: "secondary",
107
- onClick: Y,
108
- disabled: !q,
109
- children: J
110
- })]
111
- })]
112
- })]
113
- })
114
- })]
115
- })
116
- });
117
- };
118
- //#endregion
119
- export { f as DateTimeRangePicker };
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useMemo } from "react";
3
+ import { cn } from "../../../../../lib/utils.js";
4
+ import { Button } from "../../button/button.js";
5
+ import { Calendar } from "../../calendar/calendar.js";
6
+ import { Popover, PopoverContent, PopoverTrigger } from "../../popover/popover.js";
7
+ import { DateTimeInput } from "../shared/date-time-input/date-time-input.js";
8
+ import { ShortcutsPanel } from "../shared/shortcuts-panel/shortcuts-panel.js";
9
+ import { TimePickerPanel } from "../shared/time-picker-panel/time-picker-panel.js";
10
+ import { normalizeIn, normalizeOutRange, normalizeShortcutValue, resolveValueType } from "../utils/date-input.js";
11
+ import { convert12HourTo24Hour } from "../utils/time-utils.js";
12
+ import { useDateTimeRangePicker } from "./use-date-time-range-picker.js";
13
+ export function DateTimeRangePicker({ value, onChange, format, placeholder, displayWeekNumber = false, shortcuts, timeFormat = '24h', defaultDate, valueType, className }) {
14
+ const resolvedType = resolveValueType(value[0] ?? value[1], defaultDate, valueType);
15
+ const djValue = [
16
+ normalizeIn(value[0]),
17
+ normalizeIn(value[1])
18
+ ];
19
+ const djDefault = defaultDate != null ? normalizeIn(defaultDate) ?? undefined : undefined;
20
+ const handleChange = (range)=>{
21
+ onChange(normalizeOutRange(range, resolvedType));
22
+ };
23
+ const djShortcuts = shortcuts?.map((shortcut)=>({
24
+ ...shortcut,
25
+ getValue: ()=>normalizeShortcutValue(shortcut.getValue())
26
+ }));
27
+ const { isOpen, step, displayedMonth, tempStart, tempEnd, hoverDate, tempStartHour, tempStartMinute, tempEndHour, tempEndMinute, startAmPm, endAmPm, handleOpenChange, handleSetStep, handleDateClick, handleMonthChange, handleDateHover, handleStartHourChange, handleStartMinuteChange, handleEndHourChange, handleEndMinuteChange, handleStartAmPmChange, handleEndAmPmChange, handleNext, handleApply, handleBack, handleApplyShortcut, popoverRef, inputRef } = useDateTimeRangePicker({
28
+ value: djValue,
29
+ onChange: handleChange,
30
+ timeFormat,
31
+ defaultDate: djDefault
32
+ });
33
+ const displayFormat = format ?? (timeFormat === '12h' ? 'DD/MM/YYYY h:mm A' : 'DD/MM/YYYY HH:mm');
34
+ const canProceed = step === 'start' ? tempStart !== null : tempEnd !== null;
35
+ const buttonLabel = step === 'start' ? 'Next' : 'Apply';
36
+ const buttonAction = step === 'start' ? handleNext : handleApply;
37
+ const currentHour = step === 'start' ? tempStartHour : tempEndHour;
38
+ const currentMinute = step === 'start' ? tempStartMinute : tempEndMinute;
39
+ const currentAmPm = step === 'start' ? startAmPm : endAmPm;
40
+ const onHourChange = step === 'start' ? handleStartHourChange : handleEndHourChange;
41
+ const onMinuteChange = step === 'start' ? handleStartMinuteChange : handleEndMinuteChange;
42
+ const onAmPmChange = step === 'start' ? handleStartAmPmChange : handleEndAmPmChange;
43
+ const displayValue = useMemo(()=>{
44
+ const startWithTime = tempStart ? tempStart.hour(timeFormat === '12h' ? convert12HourTo24Hour(tempStartHour, startAmPm) : tempStartHour).minute(tempStartMinute) : null;
45
+ const endWithTime = tempEnd ? tempEnd.hour(timeFormat === '12h' ? convert12HourTo24Hour(tempEndHour, endAmPm) : tempEndHour).minute(tempEndMinute) : null;
46
+ return [
47
+ startWithTime,
48
+ endWithTime
49
+ ];
50
+ }, [
51
+ tempStart,
52
+ tempEnd,
53
+ tempStartHour,
54
+ tempStartMinute,
55
+ tempEndHour,
56
+ tempEndMinute,
57
+ startAmPm,
58
+ endAmPm,
59
+ timeFormat
60
+ ]);
61
+ return /*#__PURE__*/ _jsx("div", {
62
+ "data-slot": "date-time-range-picker",
63
+ className: cn('relative w-full', className),
64
+ children: /*#__PURE__*/ _jsxs(Popover, {
65
+ open: isOpen,
66
+ onOpenChange: handleOpenChange,
67
+ children: [
68
+ /*#__PURE__*/ _jsx(PopoverTrigger, {
69
+ render: /*#__PURE__*/ _jsx("div", {
70
+ ref: inputRef,
71
+ className: "w-full"
72
+ }),
73
+ children: /*#__PURE__*/ _jsx(DateTimeInput, {
74
+ value: displayValue,
75
+ format: displayFormat,
76
+ placeholder: placeholder,
77
+ isOpen: isOpen,
78
+ variant: "datetime",
79
+ activeRangePart: isOpen ? step : undefined,
80
+ onRangePartClick: isOpen ? handleSetStep : undefined
81
+ })
82
+ }),
83
+ /*#__PURE__*/ _jsx(PopoverContent, {
84
+ ref: popoverRef,
85
+ className: "rounded-xl w-auto p-0",
86
+ side: "bottom",
87
+ align: "start",
88
+ children: /*#__PURE__*/ _jsxs("div", {
89
+ "data-slot": "date-time-range-picker-content",
90
+ className: "flex flex-col",
91
+ children: [
92
+ /*#__PURE__*/ _jsxs("div", {
93
+ className: "flex flex-row",
94
+ children: [
95
+ djShortcuts && djShortcuts.length > 0 && /*#__PURE__*/ _jsx(ShortcutsPanel, {
96
+ shortcuts: djShortcuts,
97
+ onShortcutClick: handleApplyShortcut
98
+ }),
99
+ /*#__PURE__*/ _jsx("div", {
100
+ className: "p-3 border-r border-default",
101
+ children: /*#__PURE__*/ _jsx(Calendar, {
102
+ displayedMonth: displayedMonth,
103
+ selectedRange: [
104
+ tempStart,
105
+ tempEnd
106
+ ],
107
+ hoverDate: step === 'end' ? hoverDate : null,
108
+ displayWeekNumber: displayWeekNumber,
109
+ onDateClick: handleDateClick,
110
+ onMonthChange: handleMonthChange,
111
+ onDateHover: handleDateHover
112
+ })
113
+ }),
114
+ timeFormat === '12h' ? /*#__PURE__*/ _jsx(TimePickerPanel, {
115
+ hour: currentHour,
116
+ minute: currentMinute,
117
+ amPm: currentAmPm,
118
+ timeFormat: "12h",
119
+ onHourChange: onHourChange,
120
+ onMinuteChange: onMinuteChange,
121
+ onAmPmChange: onAmPmChange
122
+ }) : /*#__PURE__*/ _jsx(TimePickerPanel, {
123
+ hour: currentHour,
124
+ minute: currentMinute,
125
+ timeFormat: "24h",
126
+ onHourChange: onHourChange,
127
+ onMinuteChange: onMinuteChange
128
+ })
129
+ ]
130
+ }),
131
+ /*#__PURE__*/ _jsxs("div", {
132
+ className: "flex p-2 justify-between items-center self-stretch border-t border-default",
133
+ children: [
134
+ /*#__PURE__*/ _jsx(Button, {
135
+ variant: "ghost",
136
+ onClick: ()=>handleOpenChange(false),
137
+ children: "Cancel"
138
+ }),
139
+ /*#__PURE__*/ _jsxs("div", {
140
+ className: "flex gap-2",
141
+ children: [
142
+ step === 'end' && /*#__PURE__*/ _jsx(Button, {
143
+ variant: "ghost",
144
+ onClick: handleBack,
145
+ children: "Back"
146
+ }),
147
+ /*#__PURE__*/ _jsx(Button, {
148
+ variant: "secondary",
149
+ onClick: buttonAction,
150
+ disabled: !canProceed,
151
+ children: buttonLabel
152
+ })
153
+ ]
154
+ })
155
+ ]
156
+ })
157
+ ]
158
+ })
159
+ })
160
+ ]
161
+ })
162
+ });
163
+ }
164
+
165
+ //# sourceMappingURL=date-time-range-picker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../src/components/ui/core/date-time-pickers/date-time-range-picker/date-time-range-picker.tsx"],"sourcesContent":["import type { JSX } from 'react';\nimport { useMemo } from 'react';\n\nimport type { Dayjs } from 'dayjs';\n\nimport { cn } from '../../../../../lib/utils';\nimport { Button } from '../../button/button';\nimport { Calendar } from '../../calendar/calendar';\nimport { Popover, PopoverContent, PopoverTrigger } from '../../popover/popover';\nimport { DateTimeInput } from '../shared/date-time-input/date-time-input';\nimport { ShortcutsPanel } from '../shared/shortcuts-panel/shortcuts-panel';\nimport type { ShortcutItem } from '../shared/shortcuts-panel/shortcuts-panel';\nimport { TimePickerPanel } from '../shared/time-picker-panel/time-picker-panel';\nimport {\n type DateInput,\n type DateRangeValueProps,\n normalizeIn,\n normalizeOutRange,\n normalizeShortcutValue,\n resolveValueType,\n} from '../utils/date-input';\nimport type { TimeFormat } from '../utils/format-utils';\nimport { convert12HourTo24Hour } from '../utils/time-utils';\n\nimport { useDateTimeRangePicker } from './use-date-time-range-picker';\n\nexport type { ShortcutItem };\n\nexport interface DateTimeRangePickerProps<\n T extends DateInput = Dayjs,\n> extends DateRangeValueProps<T> {\n format?: string;\n placeholder?: string;\n displayWeekNumber?: boolean;\n shortcuts?: ShortcutItem[];\n timeFormat?: TimeFormat;\n className?: string;\n}\n\nexport function DateTimeRangePicker<T extends DateInput = Dayjs>({\n value,\n onChange,\n format,\n placeholder,\n displayWeekNumber = false,\n shortcuts,\n timeFormat = '24h',\n defaultDate,\n valueType,\n className,\n}: DateTimeRangePickerProps<T>): JSX.Element {\n const resolvedType = resolveValueType(\n value[0] ?? value[1],\n defaultDate,\n valueType\n );\n const djValue: [Dayjs | null, Dayjs | null] = [\n normalizeIn(value[0]),\n normalizeIn(value[1]),\n ];\n const djDefault =\n defaultDate != null ? (normalizeIn(defaultDate) ?? undefined) : undefined;\n\n const handleChange = (range: [Dayjs | null, Dayjs | null]) => {\n onChange(normalizeOutRange<T>(range, resolvedType));\n };\n\n const djShortcuts = shortcuts?.map((shortcut) => ({\n ...shortcut,\n getValue: () => normalizeShortcutValue(shortcut.getValue()),\n }));\n\n const {\n isOpen,\n step,\n displayedMonth,\n tempStart,\n tempEnd,\n hoverDate,\n tempStartHour,\n tempStartMinute,\n tempEndHour,\n tempEndMinute,\n startAmPm,\n endAmPm,\n handleOpenChange,\n handleSetStep,\n handleDateClick,\n handleMonthChange,\n handleDateHover,\n handleStartHourChange,\n handleStartMinuteChange,\n handleEndHourChange,\n handleEndMinuteChange,\n handleStartAmPmChange,\n handleEndAmPmChange,\n handleNext,\n handleApply,\n handleBack,\n handleApplyShortcut,\n popoverRef,\n inputRef,\n } = useDateTimeRangePicker({\n value: djValue,\n onChange: handleChange,\n timeFormat,\n defaultDate: djDefault,\n });\n\n const displayFormat =\n format ?? (timeFormat === '12h' ? 'DD/MM/YYYY h:mm A' : 'DD/MM/YYYY HH:mm');\n\n const canProceed = step === 'start' ? tempStart !== null : tempEnd !== null;\n const buttonLabel = step === 'start' ? 'Next' : 'Apply';\n const buttonAction = step === 'start' ? handleNext : handleApply;\n const currentHour = step === 'start' ? tempStartHour : tempEndHour;\n const currentMinute = step === 'start' ? tempStartMinute : tempEndMinute;\n const currentAmPm = step === 'start' ? startAmPm : endAmPm;\n const onHourChange =\n step === 'start' ? handleStartHourChange : handleEndHourChange;\n const onMinuteChange =\n step === 'start' ? handleStartMinuteChange : handleEndMinuteChange;\n const onAmPmChange =\n step === 'start' ? handleStartAmPmChange : handleEndAmPmChange;\n\n const displayValue: [Dayjs | null, Dayjs | null] = useMemo(() => {\n const startWithTime = tempStart\n ? tempStart\n .hour(\n timeFormat === '12h'\n ? convert12HourTo24Hour(tempStartHour, startAmPm)\n : tempStartHour\n )\n .minute(tempStartMinute)\n : null;\n const endWithTime = tempEnd\n ? tempEnd\n .hour(\n timeFormat === '12h'\n ? convert12HourTo24Hour(tempEndHour, endAmPm)\n : tempEndHour\n )\n .minute(tempEndMinute)\n : null;\n return [startWithTime, endWithTime];\n }, [\n tempStart,\n tempEnd,\n tempStartHour,\n tempStartMinute,\n tempEndHour,\n tempEndMinute,\n startAmPm,\n endAmPm,\n timeFormat,\n ]);\n\n return (\n <div\n data-slot=\"date-time-range-picker\"\n className={cn('relative w-full', className)}\n >\n <Popover open={isOpen} onOpenChange={handleOpenChange}>\n <PopoverTrigger render={<div ref={inputRef} className=\"w-full\" />}>\n <DateTimeInput\n value={displayValue}\n format={displayFormat}\n placeholder={placeholder}\n isOpen={isOpen}\n variant=\"datetime\"\n activeRangePart={isOpen ? step : undefined}\n onRangePartClick={isOpen ? handleSetStep : undefined}\n />\n </PopoverTrigger>\n <PopoverContent\n ref={popoverRef}\n className=\"rounded-xl w-auto p-0\"\n side=\"bottom\"\n align=\"start\"\n >\n <div\n data-slot=\"date-time-range-picker-content\"\n className=\"flex flex-col\"\n >\n <div className=\"flex flex-row\">\n {djShortcuts && djShortcuts.length > 0 && (\n <ShortcutsPanel\n shortcuts={djShortcuts}\n onShortcutClick={handleApplyShortcut}\n />\n )}\n\n {/* Calendar */}\n <div className=\"p-3 border-r border-default\">\n <Calendar\n displayedMonth={displayedMonth}\n selectedRange={[tempStart, tempEnd]}\n hoverDate={step === 'end' ? hoverDate : null}\n displayWeekNumber={displayWeekNumber}\n onDateClick={handleDateClick}\n onMonthChange={handleMonthChange}\n onDateHover={handleDateHover}\n />\n </div>\n\n {timeFormat === '12h' ? (\n <TimePickerPanel\n hour={currentHour}\n minute={currentMinute}\n amPm={currentAmPm}\n timeFormat=\"12h\"\n onHourChange={onHourChange}\n onMinuteChange={onMinuteChange}\n onAmPmChange={onAmPmChange}\n />\n ) : (\n <TimePickerPanel\n hour={currentHour}\n minute={currentMinute}\n timeFormat=\"24h\"\n onHourChange={onHourChange}\n onMinuteChange={onMinuteChange}\n />\n )}\n </div>\n\n {/* Action bar */}\n <div className=\"flex p-2 justify-between items-center self-stretch border-t border-default\">\n <Button variant=\"ghost\" onClick={() => handleOpenChange(false)}>\n Cancel\n </Button>\n <div className=\"flex gap-2\">\n {step === 'end' && (\n <Button variant=\"ghost\" onClick={handleBack}>\n Back\n </Button>\n )}\n <Button\n variant=\"secondary\"\n onClick={buttonAction}\n disabled={!canProceed}\n >\n {buttonLabel}\n </Button>\n </div>\n </div>\n </div>\n </PopoverContent>\n </Popover>\n </div>\n );\n}\n"],"names":["useMemo","cn","Button","Calendar","Popover","PopoverContent","PopoverTrigger","DateTimeInput","ShortcutsPanel","TimePickerPanel","normalizeIn","normalizeOutRange","normalizeShortcutValue","resolveValueType","convert12HourTo24Hour","useDateTimeRangePicker","DateTimeRangePicker","value","onChange","format","placeholder","displayWeekNumber","shortcuts","timeFormat","defaultDate","valueType","className","resolvedType","djValue","djDefault","undefined","handleChange","range","djShortcuts","map","shortcut","getValue","isOpen","step","displayedMonth","tempStart","tempEnd","hoverDate","tempStartHour","tempStartMinute","tempEndHour","tempEndMinute","startAmPm","endAmPm","handleOpenChange","handleSetStep","handleDateClick","handleMonthChange","handleDateHover","handleStartHourChange","handleStartMinuteChange","handleEndHourChange","handleEndMinuteChange","handleStartAmPmChange","handleEndAmPmChange","handleNext","handleApply","handleBack","handleApplyShortcut","popoverRef","inputRef","displayFormat","canProceed","buttonLabel","buttonAction","currentHour","currentMinute","currentAmPm","onHourChange","onMinuteChange","onAmPmChange","displayValue","startWithTime","hour","minute","endWithTime","div","data-slot","open","onOpenChange","render","ref","variant","activeRangePart","onRangePartClick","side","align","length","onShortcutClick","selectedRange","onDateClick","onMonthChange","onDateHover","amPm","onClick","disabled"],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- export { DateTimeRangePicker } from './date-time-range-picker';
2
- export type { DateTimeRangePickerProps } from './date-time-range-picker';
3
- export type { ShortcutItem } from './date-time-range-picker';
1
+ export { DateTimeRangePicker } from "./date-time-range-picker";
2
+ export type { DateTimeRangePickerProps } from "./date-time-range-picker";
3
+ export type { ShortcutItem } from "./date-time-range-picker";
@@ -0,0 +1,3 @@
1
+ export { DateTimeRangePicker } from "./date-time-range-picker.js";
2
+
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../src/components/ui/core/date-time-pickers/date-time-range-picker/index.ts"],"sourcesContent":["export { DateTimeRangePicker } from './date-time-range-picker';\nexport type { DateTimeRangePickerProps } from './date-time-range-picker';\nexport type { ShortcutItem } from './date-time-range-picker';\n"],"names":["DateTimeRangePicker"],"mappings":"AAAA,SAASA,mBAAmB,QAAQ,8BAA2B"}