@televet/kibble-ui 4.0.0-beta.21 → 4.0.0-beta.25

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 (439) hide show
  1. package/README.md +13 -35
  2. package/dist/chunks/IconLogo-BurrDDT6.js +62 -0
  3. package/dist/chunks/IconLogo-BurrDDT6.js.map +1 -0
  4. package/dist/chunks/IconLogo-Dd5mp5A_.js +2 -0
  5. package/dist/chunks/IconLogo-Dd5mp5A_.js.map +1 -0
  6. package/dist/chunks/alert.component-BSUteYep.js +2 -0
  7. package/dist/chunks/alert.component-BSUteYep.js.map +1 -0
  8. package/dist/chunks/alert.component-CJmYmkOs.js +182 -0
  9. package/dist/chunks/alert.component-CJmYmkOs.js.map +1 -0
  10. package/dist/chunks/alert.types-JdzSuSVO.js +5 -0
  11. package/dist/chunks/alert.types-JdzSuSVO.js.map +1 -0
  12. package/dist/chunks/alert.types-R_9yno9e.js +2 -0
  13. package/dist/chunks/alert.types-R_9yno9e.js.map +1 -0
  14. package/dist/chunks/{avatar.component-DLqm7tQt.js → avatar.component-Bq-iwROm.js} +16 -16
  15. package/dist/chunks/avatar.component-Bq-iwROm.js.map +1 -0
  16. package/dist/chunks/{avatar.component-B14bRpeL.js → avatar.component-DVcDtvDR.js} +2 -2
  17. package/dist/chunks/avatar.component-DVcDtvDR.js.map +1 -0
  18. package/dist/chunks/{avatarGroup.component-4kVezqP-.js → avatarGroup.component-CXilO0oZ.js} +2 -2
  19. package/dist/chunks/{avatarGroup.component-4kVezqP-.js.map → avatarGroup.component-CXilO0oZ.js.map} +1 -1
  20. package/dist/chunks/{avatarGroup.component-DIDIECGK.js → avatarGroup.component-DCfOKiyR.js} +16 -16
  21. package/dist/chunks/{avatarGroup.component-DIDIECGK.js.map → avatarGroup.component-DCfOKiyR.js.map} +1 -1
  22. package/dist/chunks/{button.component-CA9bIFbq.js → button.component-BZEZZa7D.js} +7 -7
  23. package/dist/chunks/{button.component-CA9bIFbq.js.map → button.component-BZEZZa7D.js.map} +1 -1
  24. package/dist/chunks/{button.component-DDjwI0xh.js → button.component-DnWrqGc4.js} +2 -2
  25. package/dist/chunks/{button.component-DDjwI0xh.js.map → button.component-DnWrqGc4.js.map} +1 -1
  26. package/dist/chunks/{buttonGroup.component-DKnPmFIM.js → buttonGroup.component-DQswSQ0l.js} +2 -2
  27. package/dist/chunks/{buttonGroup.component-DKnPmFIM.js.map → buttonGroup.component-DQswSQ0l.js.map} +1 -1
  28. package/dist/chunks/{buttonGroup.component-BLRJnRJW.js → buttonGroup.component-toHK3QbU.js} +12 -12
  29. package/dist/chunks/{buttonGroup.component-BLRJnRJW.js.map → buttonGroup.component-toHK3QbU.js.map} +1 -1
  30. package/dist/chunks/card.component-1JqO34tC.js +2 -0
  31. package/dist/chunks/card.component-1JqO34tC.js.map +1 -0
  32. package/dist/chunks/card.component-CI7pt6L8.js +59 -0
  33. package/dist/chunks/card.component-CI7pt6L8.js.map +1 -0
  34. package/dist/chunks/card.types-Cixp7ouC.js +5 -0
  35. package/dist/chunks/card.types-Cixp7ouC.js.map +1 -0
  36. package/dist/chunks/card.types-MvkQTTZF.js +2 -0
  37. package/dist/chunks/card.types-MvkQTTZF.js.map +1 -0
  38. package/dist/chunks/chakra-BHjfByoV.js +5 -0
  39. package/dist/chunks/chakra-BHjfByoV.js.map +1 -0
  40. package/dist/chunks/{chakra-BqBkjpvZ.js → chakra-DEgvQPwa.js} +4066 -2306
  41. package/dist/chunks/chakra-DEgvQPwa.js.map +1 -0
  42. package/dist/chunks/{characterCounter.component-BXxyn_IB.js → characterCounter.component-0-1clNqF.js} +2 -2
  43. package/dist/chunks/{characterCounter.component-BXxyn_IB.js.map → characterCounter.component-0-1clNqF.js.map} +1 -1
  44. package/dist/chunks/{characterCounter.component-DhiMcztY.js → characterCounter.component-BhtK0SKA.js} +9 -9
  45. package/dist/chunks/{characterCounter.component-DhiMcztY.js.map → characterCounter.component-BhtK0SKA.js.map} +1 -1
  46. package/dist/chunks/{checkbox.component-BnNl7j1h.js → checkbox.component-Kn48K9JS.js} +2 -2
  47. package/dist/chunks/{checkbox.component-BnNl7j1h.js.map → checkbox.component-Kn48K9JS.js.map} +1 -1
  48. package/dist/chunks/{checkbox.component-BN9GeeiB.js → checkbox.component-X_SD-4T8.js} +22 -22
  49. package/dist/chunks/{checkbox.component-BN9GeeiB.js.map → checkbox.component-X_SD-4T8.js.map} +1 -1
  50. package/dist/chunks/{checkboxGroup.component-DNwf69Ss.js → checkboxGroup.component-COD9t2JC.js} +16 -16
  51. package/dist/chunks/{checkboxGroup.component-DNwf69Ss.js.map → checkboxGroup.component-COD9t2JC.js.map} +1 -1
  52. package/dist/chunks/{checkboxGroup.component-CMSLo_U5.js → checkboxGroup.component-CYr1-Aci.js} +2 -2
  53. package/dist/chunks/{checkboxGroup.component-CMSLo_U5.js.map → checkboxGroup.component-CYr1-Aci.js.map} +1 -1
  54. package/dist/chunks/{conversationCard.component-CAKvEh_2.js → conversationCard.component-DjbHIWpM.js} +20 -20
  55. package/dist/chunks/conversationCard.component-DjbHIWpM.js.map +1 -0
  56. package/dist/chunks/{conversationCard.component-D56k22in.js → conversationCard.component-eWR68X0w.js} +2 -2
  57. package/dist/chunks/conversationCard.component-eWR68X0w.js.map +1 -0
  58. package/dist/chunks/{date-1NFv48Qu.js → date-CQ_hzmOK.js} +144 -144
  59. package/dist/chunks/date-CQ_hzmOK.js.map +1 -0
  60. package/dist/chunks/date-Dn1AgqaP.js +15 -0
  61. package/dist/chunks/date-Dn1AgqaP.js.map +1 -0
  62. package/dist/chunks/{datePicker.component-ZmMJoE3c.js → datePicker.component-C7TjBUEe.js} +2 -2
  63. package/dist/chunks/{datePicker.component-ZmMJoE3c.js.map → datePicker.component-C7TjBUEe.js.map} +1 -1
  64. package/dist/chunks/{datePicker.component-D1WtrZJd.js → datePicker.component-CLJT4YOv.js} +71 -71
  65. package/dist/chunks/{datePicker.component-D1WtrZJd.js.map → datePicker.component-CLJT4YOv.js.map} +1 -1
  66. package/dist/chunks/{dnd-DDR6viHX.js → dnd-B2xPQNV1.js} +2 -2
  67. package/dist/chunks/{dnd-DDR6viHX.js.map → dnd-B2xPQNV1.js.map} +1 -1
  68. package/dist/chunks/{dnd-4IMP_kRN.js → dnd-Whsk3gIz.js} +2 -2
  69. package/dist/chunks/{dnd-4IMP_kRN.js.map → dnd-Whsk3gIz.js.map} +1 -1
  70. package/dist/chunks/heading.component-BrXfTzEU.js +10 -0
  71. package/dist/chunks/{heading.component-B8niLTxz.js.map → heading.component-BrXfTzEU.js.map} +1 -1
  72. package/dist/chunks/{heading.component-CExbjSBi.js → heading.component-C92ZA4Md.js} +2 -2
  73. package/dist/chunks/{heading.component-CExbjSBi.js.map → heading.component-C92ZA4Md.js.map} +1 -1
  74. package/dist/chunks/{icon.component-w5bWbfVU.js → icon.component-DOan8Ddb.js} +6 -6
  75. package/dist/chunks/{icon.component-w5bWbfVU.js.map → icon.component-DOan8Ddb.js.map} +1 -1
  76. package/dist/chunks/{icon.component-CzjzLiO_.js → icon.component-Drw3LiG5.js} +2 -2
  77. package/dist/chunks/{icon.component-CzjzLiO_.js.map → icon.component-Drw3LiG5.js.map} +1 -1
  78. package/dist/chunks/{index-CloRZB5L.js → index-T4HRvnPT.js} +3 -3
  79. package/dist/chunks/{index-CloRZB5L.js.map → index-T4HRvnPT.js.map} +1 -1
  80. package/dist/chunks/{index-BlB7iuVg.js → index-tw4s2PIA.js} +2 -2
  81. package/dist/chunks/{index-BlB7iuVg.js.map → index-tw4s2PIA.js.map} +1 -1
  82. package/dist/chunks/{link.component-Cmdnhc-F.js → link.component-BV-T_tzT.js} +2 -2
  83. package/dist/chunks/{link.component-Cmdnhc-F.js.map → link.component-BV-T_tzT.js.map} +1 -1
  84. package/dist/chunks/{link.component-DGC1Xu5B.js → link.component-DbXsouSQ.js} +15 -15
  85. package/dist/chunks/{link.component-DGC1Xu5B.js.map → link.component-DbXsouSQ.js.map} +1 -1
  86. package/dist/chunks/logo.types-BRPr2KIZ.js +74 -0
  87. package/dist/chunks/logo.types-BRPr2KIZ.js.map +1 -0
  88. package/dist/chunks/logo.types-DPrISgm0.js +2 -0
  89. package/dist/chunks/logo.types-DPrISgm0.js.map +1 -0
  90. package/dist/chunks/{menu.component-BCRZgrRr.js → menu.component-BsNXuoLB.js} +2 -2
  91. package/dist/chunks/{menu.component-BCRZgrRr.js.map → menu.component-BsNXuoLB.js.map} +1 -1
  92. package/dist/chunks/{menu.component-Bscyjw7R.js → menu.component-xKsPT0Zc.js} +44 -44
  93. package/dist/chunks/{menu.component-Bscyjw7R.js.map → menu.component-xKsPT0Zc.js.map} +1 -1
  94. package/dist/chunks/{modal.types-CELCFObr.js → modal.types-Bhcd1P_H.js} +2 -2
  95. package/dist/chunks/{modal.types-CELCFObr.js.map → modal.types-Bhcd1P_H.js.map} +1 -1
  96. package/dist/chunks/{modal.types-BfXHtZ4i.js → modal.types-C7OrqSGs.js} +16 -16
  97. package/dist/chunks/{modal.types-BfXHtZ4i.js.map → modal.types-C7OrqSGs.js.map} +1 -1
  98. package/dist/chunks/{notificationCounter.component-BH6anjzq.js → notificationCounter.component-CIzFZpAS.js} +2 -2
  99. package/dist/chunks/{notificationCounter.component-BH6anjzq.js.map → notificationCounter.component-CIzFZpAS.js.map} +1 -1
  100. package/dist/chunks/{notificationCounter.component-CSuqzMTF.js → notificationCounter.component-COTswull.js} +3 -3
  101. package/dist/chunks/{notificationCounter.component-CSuqzMTF.js.map → notificationCounter.component-COTswull.js.map} +1 -1
  102. package/dist/chunks/pinInput.types-10zyeINr.js +64 -0
  103. package/dist/chunks/pinInput.types-10zyeINr.js.map +1 -0
  104. package/dist/chunks/pinInput.types-BFZZszU7.js +2 -0
  105. package/dist/chunks/pinInput.types-BFZZszU7.js.map +1 -0
  106. package/dist/chunks/{popover.component-CzKeBedr.js → popover.component-BnvmpVHq.js} +2 -2
  107. package/dist/chunks/{popover.component-CzKeBedr.js.map → popover.component-BnvmpVHq.js.map} +1 -1
  108. package/dist/chunks/{popover.component-CW5KsTYh.js → popover.component-GcAhSDeI.js} +19 -19
  109. package/dist/chunks/{popover.component-CW5KsTYh.js.map → popover.component-GcAhSDeI.js.map} +1 -1
  110. package/dist/chunks/{popover.recipe-Pfz3evii.js → popover.recipe-DDPfFy3l.js} +2 -2
  111. package/dist/chunks/{popover.recipe-Pfz3evii.js.map → popover.recipe-DDPfFy3l.js.map} +1 -1
  112. package/dist/chunks/{popover.recipe-DnCuZJd3.js → popover.recipe-E6-zKuvF.js} +2 -2
  113. package/dist/chunks/{popover.recipe-DnCuZJd3.js.map → popover.recipe-E6-zKuvF.js.map} +1 -1
  114. package/dist/chunks/{radioGroup.component-DP9JgY1J.js → radioGroup.component-BtxjtKro.js} +2 -2
  115. package/dist/chunks/{radioGroup.component-DP9JgY1J.js.map → radioGroup.component-BtxjtKro.js.map} +1 -1
  116. package/dist/chunks/{radioGroup.component-kn8czn3N.js → radioGroup.component-ByokG1ms.js} +18 -18
  117. package/dist/chunks/{radioGroup.component-kn8czn3N.js.map → radioGroup.component-ByokG1ms.js.map} +1 -1
  118. package/dist/chunks/{ratingDots.component-D0FX80wA.js → ratingDots.component-Bhh27z7J.js} +5 -5
  119. package/dist/chunks/{ratingDots.component-D0FX80wA.js.map → ratingDots.component-Bhh27z7J.js.map} +1 -1
  120. package/dist/chunks/{ratingDots.component-D5-xY2db.js → ratingDots.component-CBlKmrKG.js} +2 -2
  121. package/dist/chunks/{ratingDots.component-D5-xY2db.js.map → ratingDots.component-CBlKmrKG.js.map} +1 -1
  122. package/dist/chunks/{select.component-CQQ4z--7.js → select.component-CKo_vUjT.js} +2 -2
  123. package/dist/chunks/{select.component-CQQ4z--7.js.map → select.component-CKo_vUjT.js.map} +1 -1
  124. package/dist/chunks/{select.component-CqvAx7vP.js → select.component-vzYNxpKs.js} +41 -41
  125. package/dist/chunks/{select.component-CqvAx7vP.js.map → select.component-vzYNxpKs.js.map} +1 -1
  126. package/dist/chunks/{sortableList.component-DcjKdsDK.js → sortableList.component-C_kBtF5S.js} +2 -2
  127. package/dist/chunks/{sortableList.component-DcjKdsDK.js.map → sortableList.component-C_kBtF5S.js.map} +1 -1
  128. package/dist/chunks/{sortableList.component-_DXfCTac.js → sortableList.component-Cf0JaJ_t.js} +18 -18
  129. package/dist/chunks/{sortableList.component-_DXfCTac.js.map → sortableList.component-Cf0JaJ_t.js.map} +1 -1
  130. package/dist/chunks/{spinner.component-CUuidnSK.js → spinner.component-BSDKzlvm.js} +2 -2
  131. package/dist/chunks/{spinner.component-CUuidnSK.js.map → spinner.component-BSDKzlvm.js.map} +1 -1
  132. package/dist/chunks/{spinner.component-D5tkelNc.js → spinner.component-D3If6khz.js} +6 -6
  133. package/dist/chunks/{spinner.component-D5tkelNc.js.map → spinner.component-D3If6khz.js.map} +1 -1
  134. package/dist/chunks/{styledAvatar.types-ByQoyukM.js → styledAvatar.types-CpzTd2Jl.js} +3 -3
  135. package/dist/chunks/styledAvatar.types-CpzTd2Jl.js.map +1 -0
  136. package/dist/chunks/{styledAvatar.types-CpU5SOAS.js → styledAvatar.types-D8JOpljn.js} +2 -2
  137. package/dist/chunks/styledAvatar.types-D8JOpljn.js.map +1 -0
  138. package/dist/chunks/{switch.component-diomUHZW.js → switch.component-BkC3TpSW.js} +2 -2
  139. package/dist/chunks/{switch.component-diomUHZW.js.map → switch.component-BkC3TpSW.js.map} +1 -1
  140. package/dist/chunks/{switch.component-C9WMHurt.js → switch.component-D8hb9FSO.js} +6 -6
  141. package/dist/chunks/{switch.component-C9WMHurt.js.map → switch.component-D8hb9FSO.js.map} +1 -1
  142. package/dist/chunks/{tabs.component-Bp1Lu8Xb.js → tabs.component-BjyZZY1w.js} +6 -6
  143. package/dist/chunks/{tabs.component-Bp1Lu8Xb.js.map → tabs.component-BjyZZY1w.js.map} +1 -1
  144. package/dist/chunks/{tabs.component-D6QT597P.js → tabs.component-DF92o83d.js} +2 -2
  145. package/dist/chunks/{tabs.component-D6QT597P.js.map → tabs.component-DF92o83d.js.map} +1 -1
  146. package/dist/chunks/{tag.component-BjOfy3Bw.js → tag.component-CHwt3mTK.js} +2 -2
  147. package/dist/chunks/{tag.component-BjOfy3Bw.js.map → tag.component-CHwt3mTK.js.map} +1 -1
  148. package/dist/chunks/{tag.component-A__B03TA.js → tag.component-DRL_uBU8.js} +3 -3
  149. package/dist/chunks/{tag.component-A__B03TA.js.map → tag.component-DRL_uBU8.js.map} +1 -1
  150. package/dist/chunks/{tagBlock.component-BKnmbWil.js → tagBlock.component-S9-bfH87.js} +2 -2
  151. package/dist/chunks/tagBlock.component-S9-bfH87.js.map +1 -0
  152. package/dist/chunks/{tagBlock.component-B99Qzj2K.js → tagBlock.component-nox0ltrv.js} +9 -9
  153. package/dist/chunks/tagBlock.component-nox0ltrv.js.map +1 -0
  154. package/dist/chunks/text.component-B1g7jaUt.js +10 -0
  155. package/dist/chunks/{text.component-XYjOAc2s.js.map → text.component-B1g7jaUt.js.map} +1 -1
  156. package/dist/chunks/{text.component-CBa_saMP.js → text.component-MDGpqA76.js} +2 -2
  157. package/dist/chunks/{text.component-CBa_saMP.js.map → text.component-MDGpqA76.js.map} +1 -1
  158. package/dist/chunks/{textInput.component-K4f7h4pP.js → textInput.component-CeMv8ruX.js} +13 -13
  159. package/dist/chunks/{textInput.component-K4f7h4pP.js.map → textInput.component-CeMv8ruX.js.map} +1 -1
  160. package/dist/chunks/{textInput.component-BalBo9uP.js → textInput.component-DIc2KQit.js} +2 -2
  161. package/dist/chunks/{textInput.component-BalBo9uP.js.map → textInput.component-DIc2KQit.js.map} +1 -1
  162. package/dist/chunks/{textarea.component-Cmbax8lT.js → textarea.component-BxiOP655.js} +12 -12
  163. package/dist/chunks/{textarea.component-Cmbax8lT.js.map → textarea.component-BxiOP655.js.map} +1 -1
  164. package/dist/chunks/{textarea.component-8tjcO0T7.js → textarea.component-CvCJMMjE.js} +2 -2
  165. package/dist/chunks/{textarea.component-8tjcO0T7.js.map → textarea.component-CvCJMMjE.js.map} +1 -1
  166. package/dist/chunks/theme.provider-CDBx4ruC.js +24 -0
  167. package/dist/chunks/theme.provider-CDBx4ruC.js.map +1 -0
  168. package/dist/chunks/theme.provider-tNFKZLVb.js +2681 -0
  169. package/dist/chunks/theme.provider-tNFKZLVb.js.map +1 -0
  170. package/dist/chunks/{timePicker.component-BwYdnFmw.js → timePicker.component-C3BvCG9H.js} +2 -2
  171. package/dist/chunks/{timePicker.component-BwYdnFmw.js.map → timePicker.component-C3BvCG9H.js.map} +1 -1
  172. package/dist/chunks/{timePicker.component-DGKUi5P9.js → timePicker.component-R19FX4-n.js} +23 -23
  173. package/dist/chunks/{timePicker.component-DGKUi5P9.js.map → timePicker.component-R19FX4-n.js.map} +1 -1
  174. package/dist/chunks/{timeRange.component-BhDFpXK-.js → timeRange.component-BXHsAP2P.js} +2 -2
  175. package/dist/chunks/{timeRange.component-BhDFpXK-.js.map → timeRange.component-BXHsAP2P.js.map} +1 -1
  176. package/dist/chunks/timeRange.component-D5-0fc2e.js +17 -0
  177. package/dist/chunks/{timeRange.component-uYrO4YEs.js.map → timeRange.component-D5-0fc2e.js.map} +1 -1
  178. package/dist/chunks/{timestamp.component-D764INLm.js → timestamp.component-7z9zT8EN.js} +5 -5
  179. package/dist/chunks/timestamp.component-7z9zT8EN.js.map +1 -0
  180. package/dist/chunks/{timestamp.component-CuqY4euh.js → timestamp.component-X_D71fgZ.js} +2 -2
  181. package/dist/chunks/timestamp.component-X_D71fgZ.js.map +1 -0
  182. package/dist/chunks/toaster.records-Dm3AFmL1.js +2 -0
  183. package/dist/chunks/toaster.records-Dm3AFmL1.js.map +1 -0
  184. package/dist/chunks/toaster.records-GZYhSv5r.js +47 -0
  185. package/dist/chunks/toaster.records-GZYhSv5r.js.map +1 -0
  186. package/dist/chunks/{tooltip.component-qWFa28S5.js → tooltip.component-BoZP4UV7.js} +2 -2
  187. package/dist/chunks/{tooltip.component-qWFa28S5.js.map → tooltip.component-BoZP4UV7.js.map} +1 -1
  188. package/dist/chunks/{tooltip.component-C3v2m2T2.js → tooltip.component-ZBmhLLNH.js} +10 -10
  189. package/dist/chunks/{tooltip.component-C3v2m2T2.js.map → tooltip.component-ZBmhLLNH.js.map} +1 -1
  190. package/dist/chunks/vendor-CRIhG-7s.js +21518 -0
  191. package/dist/chunks/vendor-CRIhG-7s.js.map +1 -0
  192. package/dist/chunks/vendor-DcKGwQlH.js +64 -0
  193. package/dist/chunks/vendor-DcKGwQlH.js.map +1 -0
  194. package/dist/chunks/{withFormControl-CDQGc9aO.js → withFormControl-BCyb1yXC.js} +22 -22
  195. package/dist/chunks/{withFormControl-CDQGc9aO.js.map → withFormControl-BCyb1yXC.js.map} +1 -1
  196. package/dist/chunks/{withFormControl-BJSHfbF_.js → withFormControl-BJIa-ZxM.js} +2 -2
  197. package/dist/chunks/{withFormControl-BJSHfbF_.js.map → withFormControl-BJIa-ZxM.js.map} +1 -1
  198. package/dist/chunks/{withTruncation-C2xFKhgB.js → withTruncation-C4IBRfqV.js} +4 -4
  199. package/dist/chunks/{withTruncation-C2xFKhgB.js.map → withTruncation-C4IBRfqV.js.map} +1 -1
  200. package/dist/chunks/{withTruncation-BskZBBVs.js → withTruncation-DZqJYnSw.js} +2 -2
  201. package/dist/chunks/{withTruncation-BskZBBVs.js.map → withTruncation-DZqJYnSw.js.map} +1 -1
  202. package/dist/cjs/chakra.cjs +2 -0
  203. package/dist/cjs/chakra.cjs.map +1 -0
  204. package/dist/cjs/cli/postinstall.cjs +1 -1
  205. package/dist/cjs/cli/postinstall.cjs.map +1 -1
  206. package/dist/cjs/components/Alert.cjs +1 -1
  207. package/dist/cjs/components/Avatar.cjs +1 -1
  208. package/dist/cjs/components/AvatarGroup.cjs +1 -1
  209. package/dist/cjs/components/Button.cjs +1 -1
  210. package/dist/cjs/components/ButtonGroup.cjs +1 -1
  211. package/dist/cjs/components/Card.cjs +1 -1
  212. package/dist/cjs/components/Card.cjs.map +1 -1
  213. package/dist/cjs/components/CharacterCounter.cjs +1 -1
  214. package/dist/cjs/components/Checkbox.cjs +1 -1
  215. package/dist/cjs/components/CheckboxGroup.cjs +1 -1
  216. package/dist/cjs/{patterns → components}/ConversationCard.cjs +1 -1
  217. package/dist/cjs/components/DatePicker.cjs +1 -1
  218. package/dist/cjs/components/Divider.cjs +2 -0
  219. package/dist/cjs/components/Divider.cjs.map +1 -0
  220. package/dist/cjs/components/Heading.cjs +1 -1
  221. package/dist/cjs/components/Icon/generated.cjs +1 -1
  222. package/dist/cjs/components/Icon.cjs +1 -1
  223. package/dist/cjs/components/Link.cjs +1 -1
  224. package/dist/cjs/components/Logo/generated.cjs +2 -0
  225. package/dist/cjs/components/Logo/generated.cjs.map +1 -0
  226. package/dist/cjs/components/Logo.cjs +2 -0
  227. package/dist/cjs/components/Logo.cjs.map +1 -0
  228. package/dist/cjs/components/Menu.cjs +1 -1
  229. package/dist/cjs/components/Modal.cjs +1 -1
  230. package/dist/cjs/components/NotificationCounter.cjs +1 -1
  231. package/dist/cjs/components/Picture.cjs +1 -1
  232. package/dist/cjs/components/PinInput.cjs +2 -0
  233. package/dist/cjs/components/PinInput.cjs.map +1 -0
  234. package/dist/cjs/components/Popover.cjs +1 -1
  235. package/dist/cjs/components/RadioGroup.cjs +1 -1
  236. package/dist/cjs/components/RatingDots.cjs +1 -1
  237. package/dist/cjs/components/Select.cjs +1 -1
  238. package/dist/cjs/components/SortableList.cjs +1 -1
  239. package/dist/cjs/components/Spinner.cjs +1 -1
  240. package/dist/cjs/{patterns → components}/StyledAvatar.cjs +1 -1
  241. package/dist/cjs/components/Swatch.cjs +1 -1
  242. package/dist/cjs/components/Switch.cjs +1 -1
  243. package/dist/cjs/components/Tabs.cjs +1 -1
  244. package/dist/cjs/components/Tag.cjs +1 -1
  245. package/dist/cjs/{patterns → components}/TagBlock.cjs +1 -1
  246. package/dist/cjs/components/Text.cjs +1 -1
  247. package/dist/cjs/components/TextInput.cjs +1 -1
  248. package/dist/cjs/components/Textarea.cjs +1 -1
  249. package/dist/cjs/components/TimePicker.cjs +1 -1
  250. package/dist/cjs/components/TimeRange.cjs +1 -1
  251. package/dist/cjs/{patterns → components}/Timestamp.cjs +1 -1
  252. package/dist/cjs/components/Toast.cjs +2 -0
  253. package/dist/cjs/components/Toast.cjs.map +1 -0
  254. package/dist/cjs/components/Tooltip.cjs +1 -1
  255. package/dist/cjs/components.cjs +1 -1
  256. package/dist/cjs/hocs.cjs +1 -1
  257. package/dist/cjs/hooks.cjs +1 -1
  258. package/dist/cjs/index.cjs +1 -1
  259. package/dist/cjs/shared.cjs +2 -0
  260. package/dist/cjs/shared.cjs.map +1 -0
  261. package/dist/cjs/theme/tokens/blurs.cjs +1 -1
  262. package/dist/cjs/theme.cjs +1 -23
  263. package/dist/cjs/theme.cjs.map +1 -1
  264. package/dist/esm/chakra.js +69 -0
  265. package/dist/esm/chakra.js.map +1 -0
  266. package/dist/esm/cli/postinstall.js +6 -6
  267. package/dist/esm/cli/postinstall.js.map +1 -1
  268. package/dist/esm/components/Alert.js +4 -3
  269. package/dist/esm/components/Alert.js.map +1 -1
  270. package/dist/esm/components/Avatar.js +1 -1
  271. package/dist/esm/components/AvatarGroup.js +1 -1
  272. package/dist/esm/components/Button.js +1 -1
  273. package/dist/esm/components/ButtonGroup.js +1 -1
  274. package/dist/esm/components/Card.js +4 -4
  275. package/dist/esm/components/Card.js.map +1 -1
  276. package/dist/esm/components/CharacterCounter.js +1 -1
  277. package/dist/esm/components/Checkbox.js +1 -1
  278. package/dist/esm/components/CheckboxGroup.js +1 -1
  279. package/dist/esm/{patterns → components}/ConversationCard.js +1 -1
  280. package/dist/esm/components/DatePicker.js +1 -1
  281. package/dist/esm/components/Divider.js +27 -0
  282. package/dist/esm/components/Divider.js.map +1 -0
  283. package/dist/esm/components/Heading.js +1 -1
  284. package/dist/esm/components/Icon/generated.js +1 -1
  285. package/dist/esm/components/Icon.js +1 -1
  286. package/dist/esm/components/Link.js +1 -1
  287. package/dist/esm/components/Logo/generated.js +6 -0
  288. package/dist/esm/components/Logo/generated.js.map +1 -0
  289. package/dist/esm/components/Logo.js +7 -0
  290. package/dist/esm/components/Logo.js.map +1 -0
  291. package/dist/esm/components/Menu.js +1 -1
  292. package/dist/esm/components/Modal.js +1 -1
  293. package/dist/esm/components/NotificationCounter.js +1 -1
  294. package/dist/esm/components/Picture.js +3 -3
  295. package/dist/esm/components/PinInput.js +6 -0
  296. package/dist/esm/components/PinInput.js.map +1 -0
  297. package/dist/esm/components/Popover.js +1 -1
  298. package/dist/esm/components/RadioGroup.js +1 -1
  299. package/dist/esm/components/RatingDots.js +1 -1
  300. package/dist/esm/components/Select.js +1 -1
  301. package/dist/esm/components/SortableList.js +1 -1
  302. package/dist/esm/components/Spinner.js +1 -1
  303. package/dist/esm/{patterns → components}/StyledAvatar.js +1 -1
  304. package/dist/esm/components/Swatch.js +6 -6
  305. package/dist/esm/components/Switch.js +1 -1
  306. package/dist/esm/components/Tabs.js +1 -1
  307. package/dist/esm/components/Tag.js +1 -1
  308. package/dist/esm/{patterns → components}/TagBlock.js +1 -1
  309. package/dist/esm/components/Text.js +1 -1
  310. package/dist/esm/components/TextInput.js +1 -1
  311. package/dist/esm/components/Textarea.js +1 -1
  312. package/dist/esm/components/TimePicker.js +1 -1
  313. package/dist/esm/components/TimeRange.js +1 -1
  314. package/dist/esm/components/Timestamp.js +5 -0
  315. package/dist/esm/components/Toast.js +38 -0
  316. package/dist/esm/components/Toast.js.map +1 -0
  317. package/dist/esm/components/Tooltip.js +1 -1
  318. package/dist/esm/components.js +123 -98
  319. package/dist/esm/components.js.map +1 -1
  320. package/dist/esm/hocs.js +1 -1
  321. package/dist/esm/hooks.js +1 -1
  322. package/dist/esm/index.js +133 -118
  323. package/dist/esm/index.js.map +1 -1
  324. package/dist/esm/shared.js +9 -0
  325. package/dist/esm/shared.js.map +1 -0
  326. package/dist/esm/theme/tokens/blurs.js +2 -1
  327. package/dist/esm/theme/tokens/blurs.js.map +1 -1
  328. package/dist/esm/theme.js +3 -2608
  329. package/dist/esm/theme.js.map +1 -1
  330. package/dist/types/chakra/index.d.ts +52 -0
  331. package/dist/types/chakra.d.ts +2 -0
  332. package/dist/types/components/Alert/alert.component.d.ts +5 -13
  333. package/dist/types/components/Avatar/components/AvatarBadge/avatarBadge.component.d.ts +1 -1
  334. package/dist/types/components/Card/card.component.d.ts +1 -1
  335. package/dist/types/{patterns → components}/ConversationCard/components/ConversationCardButtons/conversationCardButtons.component.d.ts +1 -1
  336. package/dist/types/{patterns → components}/ConversationCard/components/ConversationCardContent/conversationCardContent.component.d.ts +1 -1
  337. package/dist/types/{patterns → components}/ConversationCard/components/ConversationCardFooter/conversationCardFooter.component.d.ts +2 -2
  338. package/dist/types/{patterns → components}/ConversationCard/components/ConversationCardTags/conversationCardTags.component.d.ts +1 -1
  339. package/dist/types/{patterns → components}/ConversationCard/conversationCard.component.d.ts +1 -1
  340. package/dist/types/components/Divider/divider.component.d.ts +4 -0
  341. package/dist/types/components/Divider/divider.types.d.ts +6 -0
  342. package/dist/types/components/Divider/index.d.ts +2 -0
  343. package/dist/types/components/Divider.d.ts +2 -0
  344. package/dist/types/components/Logo/generated/FullLogo.d.ts +10 -0
  345. package/dist/types/components/Logo/generated/IconLogo.d.ts +10 -0
  346. package/dist/types/components/Logo/generated/index.d.ts +4 -0
  347. package/dist/types/components/Logo/generated.d.ts +2 -0
  348. package/dist/types/components/Logo/index.d.ts +2 -0
  349. package/dist/types/components/Logo/logo.component.d.ts +10 -0
  350. package/dist/types/components/Logo/logo.recipe.d.ts +9 -0
  351. package/dist/types/components/Logo/logo.types.d.ts +4 -0
  352. package/dist/types/components/Logo.d.ts +2 -0
  353. package/dist/types/components/Modal/modal.recipe.d.ts +1 -1
  354. package/dist/types/components/PinInput/index.d.ts +2 -0
  355. package/dist/types/components/PinInput/pinInput.component.d.ts +10 -0
  356. package/dist/types/components/PinInput/pinInput.recipe.d.ts +21 -0
  357. package/dist/types/components/PinInput/pinInput.records.d.ts +1 -0
  358. package/dist/types/components/PinInput/pinInput.types.d.ts +2 -0
  359. package/dist/types/components/PinInput.d.ts +2 -0
  360. package/dist/types/{patterns → components}/StyledAvatar/styledAvatar.component.d.ts +1 -1
  361. package/dist/types/{patterns → components}/TagBlock/tagBlock.component.d.ts +1 -1
  362. package/dist/types/{patterns → components}/Timestamp/timestamp.component.d.ts +1 -1
  363. package/dist/types/components/Toast/components/Toaster/toaster.component.d.ts +7 -0
  364. package/dist/types/components/Toast/components/Toaster/toaster.records.d.ts +10 -0
  365. package/dist/types/components/Toast/components/Toaster/toaster.types.d.ts +12 -0
  366. package/dist/types/components/Toast/index.d.ts +2 -0
  367. package/dist/types/components/Toast/toast.component.d.ts +3 -0
  368. package/dist/types/components/Toast/toast.types.d.ts +19 -0
  369. package/dist/types/components/Toast.d.ts +2 -0
  370. package/dist/types/components/index.d.ts +9 -1
  371. package/dist/types/index.d.ts +1 -2
  372. package/dist/types/shared/index.d.ts +1 -0
  373. package/dist/types/shared.d.ts +2 -0
  374. package/dist/types/theme/semanticTokens/semanticTokens.config.d.ts +4 -0
  375. package/dist/types/theme/semanticTokens/semanticTokens.records.d.ts +8 -0
  376. package/package.json +58 -46
  377. package/dist/chunks/alert.types-CiHDB6qK.js +0 -2
  378. package/dist/chunks/alert.types-CiHDB6qK.js.map +0 -1
  379. package/dist/chunks/alert.types-CvARYqVc.js +0 -170
  380. package/dist/chunks/alert.types-CvARYqVc.js.map +0 -1
  381. package/dist/chunks/avatar.component-B14bRpeL.js.map +0 -1
  382. package/dist/chunks/avatar.component-DLqm7tQt.js.map +0 -1
  383. package/dist/chunks/card.component-HX-4Y0j7.js +0 -51
  384. package/dist/chunks/card.component-HX-4Y0j7.js.map +0 -1
  385. package/dist/chunks/card.component-ZIoJIWVV.js +0 -2
  386. package/dist/chunks/card.component-ZIoJIWVV.js.map +0 -1
  387. package/dist/chunks/chakra-BqBkjpvZ.js.map +0 -1
  388. package/dist/chunks/chakra-DmF8Cxqs.js +0 -5
  389. package/dist/chunks/chakra-DmF8Cxqs.js.map +0 -1
  390. package/dist/chunks/conversationCard.component-CAKvEh_2.js.map +0 -1
  391. package/dist/chunks/conversationCard.component-D56k22in.js.map +0 -1
  392. package/dist/chunks/date-1NFv48Qu.js.map +0 -1
  393. package/dist/chunks/date-Du64Exix.js +0 -15
  394. package/dist/chunks/date-Du64Exix.js.map +0 -1
  395. package/dist/chunks/heading.component-B8niLTxz.js +0 -10
  396. package/dist/chunks/styledAvatar.types-ByQoyukM.js.map +0 -1
  397. package/dist/chunks/styledAvatar.types-CpU5SOAS.js.map +0 -1
  398. package/dist/chunks/tagBlock.component-B99Qzj2K.js.map +0 -1
  399. package/dist/chunks/tagBlock.component-BKnmbWil.js.map +0 -1
  400. package/dist/chunks/text.component-XYjOAc2s.js +0 -10
  401. package/dist/chunks/timeRange.component-uYrO4YEs.js +0 -17
  402. package/dist/chunks/timestamp.component-CuqY4euh.js.map +0 -1
  403. package/dist/chunks/timestamp.component-D764INLm.js.map +0 -1
  404. package/dist/chunks/vendor-BBfll6i3.js +0 -11757
  405. package/dist/chunks/vendor-BBfll6i3.js.map +0 -1
  406. package/dist/chunks/vendor-D-x6W6ez.js +0 -57
  407. package/dist/chunks/vendor-D-x6W6ez.js.map +0 -1
  408. package/dist/cjs/cli/configure-paths.cjs +0 -3
  409. package/dist/cjs/cli/configure-paths.cjs.map +0 -1
  410. package/dist/cjs/patterns.cjs +0 -2
  411. package/dist/cjs/patterns.cjs.map +0 -1
  412. package/dist/esm/cli/configure-paths.js +0 -48
  413. package/dist/esm/cli/configure-paths.js.map +0 -1
  414. package/dist/esm/patterns/Timestamp.js +0 -5
  415. package/dist/esm/patterns.js +0 -13
  416. package/dist/esm/patterns.js.map +0 -1
  417. package/dist/types/cli/configure-paths.d.ts +0 -2
  418. package/dist/types/patterns/index.d.ts +0 -4
  419. package/dist/types/patterns.d.ts +0 -2
  420. /package/dist/cjs/{patterns → components}/ConversationCard.cjs.map +0 -0
  421. /package/dist/cjs/{patterns → components}/StyledAvatar.cjs.map +0 -0
  422. /package/dist/cjs/{patterns → components}/TagBlock.cjs.map +0 -0
  423. /package/dist/cjs/{patterns → components}/Timestamp.cjs.map +0 -0
  424. /package/dist/esm/{patterns → components}/ConversationCard.js.map +0 -0
  425. /package/dist/esm/{patterns → components}/StyledAvatar.js.map +0 -0
  426. /package/dist/esm/{patterns → components}/TagBlock.js.map +0 -0
  427. /package/dist/esm/{patterns → components}/Timestamp.js.map +0 -0
  428. /package/dist/types/{patterns → components}/ConversationCard/components/ConversationCardAvatarGroup/conversationCardAvatarGroup.component.d.ts +0 -0
  429. /package/dist/types/{patterns → components}/ConversationCard/components/ConversationCardHeader/conversationCardHeader.component.d.ts +0 -0
  430. /package/dist/types/{patterns → components}/ConversationCard/index.d.ts +0 -0
  431. /package/dist/types/{patterns → components}/ConversationCard.d.ts +0 -0
  432. /package/dist/types/{patterns → components}/StyledAvatar/index.d.ts +0 -0
  433. /package/dist/types/{patterns → components}/StyledAvatar/styledAvatar.types.d.ts +0 -0
  434. /package/dist/types/{patterns → components}/StyledAvatar.d.ts +0 -0
  435. /package/dist/types/{patterns → components}/TagBlock/index.d.ts +0 -0
  436. /package/dist/types/{patterns → components}/TagBlock/tagBlock.types.d.ts +0 -0
  437. /package/dist/types/{patterns → components}/TagBlock.d.ts +0 -0
  438. /package/dist/types/{patterns → components}/Timestamp/index.d.ts +0 -0
  439. /package/dist/types/{patterns → components}/Timestamp.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"datePicker.component-D1WtrZJd.js","sources":["../../src/components/DatePicker/datePicker.types.ts","../../src/components/DatePicker/context/datePicker.context.tsx","../../src/components/DatePicker/context/datePicker.provider.tsx","../../src/components/DatePicker/components/DatePickerInput/datePickerInput.utils.ts","../../src/components/DatePicker/components/DatePickerInput/datePickerInput.component.tsx","../../src/components/DatePicker/components/DatePickerFooter/datePickerFooter.component.tsx","../../src/components/DatePicker/datePicker.records.ts","../../src/components/DatePicker/components/DatePickerHeader/datePickerHeader.component.tsx","../../src/components/DatePicker/components/DatePickerDay/datePickerCalendarDay.recipe.ts","../../src/components/DatePicker/components/DatePickerDay/datePickerCalendarDay.component.tsx","../../src/components/DatePicker/components/DatePickerMonth/datePickerCalendarMonth.component.tsx","../../src/components/DatePicker/components/DatePickerCalendar/datePickerCalendar.component.tsx","../../src/components/DatePicker/datePicker.component.tsx"],"sourcesContent":["export enum DateFormats {\n \"ShortDate\" = \"MM/dd/yyyy\",\n \"LongDate\" = \"MMM dd yyyy\",\n \"DayOfWeekDayOfMonth\" = \"eeee, MMMM do\",\n}\n\nexport interface DateRange {\n startDate: Date | null;\n endDate?: Date | null;\n}\n","import { FirstDayOfWeek, MonthType } from \"@datepicker-react/hooks\";\nimport { useContext, createContext } from \"react\";\nimport { DateFormats, DateRange } from \"../datePicker.types\";\n\nexport enum FocusedInput {\n StartDate = \"startDate\",\n EndDate = \"endDate\",\n}\n\nexport interface IDatePickerContext {\n activeMonth?: MonthType;\n dateFormat: DateFormats | string;\n endDate: Date | null;\n focusedInput: FocusedInput | null;\n setFocusedInput: (focusedInput: FocusedInput | null) => void;\n withDateRange: boolean;\n maxDate?: Date;\n maxYear: number;\n minDate?: Date;\n minYear: number;\n onDateChange?: ({ startDate, endDate }: DateRange) => void;\n startDate: Date | null;\n onClose: () => void;\n clearDates: ({ open }: { open?: boolean }) => void;\n // The following are all values returned by the datepicker-react useDatePicker hook\n // Setting them here in our own context to be referenced in child components\n focusedDate: Date | null;\n firstDayOfWeek?: FirstDayOfWeek;\n activeMonths: MonthType[];\n isDateFocused: (date: Date) => boolean;\n isDateSelected: (date: Date) => boolean;\n isDateHovered: (date: Date) => boolean;\n isDateBlocked: (date: Date) => boolean;\n isFirstOrLastSelectedDate: (date: Date) => boolean;\n onDateFocus: (date: Date) => void;\n onDateHover: (date: Date | null) => void;\n onDateSelect: (date: Date) => void;\n goToPreviousMonths: () => void;\n goToNextMonths: () => void;\n goToDate: (date: Date) => void;\n}\n\nexport const today = new Date();\nexport const currentYear = today.getFullYear();\nexport const currentMonth = today.getMonth();\n\nexport const defaultFocusedDate = today;\nexport const defaultMinYear = currentYear - 100;\nexport const defaultMaxYear = currentYear + 5;\nexport const defaultDateFormat = DateFormats.ShortDate;\n\nconst initialDatePickerState: IDatePickerContext = {\n dateFormat: defaultDateFormat,\n endDate: null,\n focusedInput: null,\n withDateRange: false,\n maxYear: defaultMaxYear,\n minYear: defaultMinYear,\n startDate: null,\n onClose: (): void => {\n throw new Error(\"onClose(): boolean not implemented\");\n },\n setFocusedInput: (): void => {\n throw new Error(\"setFocusedInput(): boolean not implemented\");\n },\n focusedDate: today,\n firstDayOfWeek: undefined,\n activeMonths: [],\n isDateFocused: (): boolean => {\n throw new Error(\"isDateFocused(): boolean not implemented\");\n },\n isDateSelected: (): boolean => {\n throw new Error(\"isDateSelected(): boolean not implemented\");\n },\n isDateHovered: (): boolean => {\n throw new Error(\"isDateHovered(): boolean not implemented\");\n },\n isDateBlocked: (): boolean => {\n throw new Error(\"isDateBlocked(): boolean not implemented\");\n },\n isFirstOrLastSelectedDate: (): boolean => {\n throw new Error(\"isFirstOrLastSelectedDate(): boolean not implemented\");\n },\n onDateFocus: (): void => {\n throw new Error(\"onDateFocus(): boolean not implemented\");\n },\n onDateHover: (): void => {\n throw new Error(\"onDateHover(): boolean not implemented\");\n },\n onDateSelect: (): Date => {\n throw new Error(\"onDateSelect(): boolean not implemented\");\n },\n goToPreviousMonths: (): Date => {\n throw new Error(\"goToPreviousMonths(): boolean not implemented\");\n },\n goToNextMonths: (): Date => {\n throw new Error(\"goToNextMonths(): boolean not implemented\");\n },\n goToDate: (): Date => {\n throw new Error(\"goToDate(): boolean not implemented\");\n },\n clearDates: (): void => {\n throw new Error(\"clearDates(): boolean not implemented\");\n },\n};\n\nexport const DatePickerContext = createContext<IDatePickerContext>(\n initialDatePickerState,\n);\n\nexport const useDatePickerContext = (): IDatePickerContext =>\n useContext<IDatePickerContext>(DatePickerContext);\n","import React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { Popover as CPopover } from \"@chakra-ui/react/popover\";\nimport { DatePickerProps } from \"../datePicker.component\";\nimport { useDatepicker } from \"@datepicker-react/hooks\";\nimport {\n DatePickerContext,\n defaultDateFormat,\n defaultFocusedDate,\n defaultMaxYear,\n defaultMinYear,\n FocusedInput,\n today,\n} from \"./datePicker.context\";\nimport startOfDay from \"date-fns/startOfDay\";\nimport endOfDay from \"date-fns/endOfDay\";\nimport add from \"date-fns/add\";\nimport isAfter from \"date-fns/isAfter\";\n\ntype DatePickerProviderProps = DatePickerProps & {\n children: React.ReactNode;\n};\n\ninterface DatePickerInternalState {\n startDate: Date | null;\n endDate: Date | null;\n focusedInput: FocusedInput | null;\n}\n\nexport const DatePickerProvider = ({\n children,\n dateFormat = defaultDateFormat,\n endDate,\n inputProps,\n maxDate,\n maxDaysInRange,\n maxYear,\n minDate,\n minYear,\n onDateChange,\n placement = \"bottom\",\n startDate,\n withDateRange,\n}: DatePickerProviderProps): React.JSX.Element => {\n const [state, setState] = useState<DatePickerInternalState>({\n startDate,\n endDate: endDate || startDate,\n focusedInput: null,\n });\n\n /**\n * Calculates the max booking date based on the following criteria:\n * _maxDaysInRange_\n * * should only ever be used by date ranges\n * * should take precedence over the maxDate value\n * * should use it's value plus the start date of the range to calculate the max date\n * _maxDate_\n * * can be passed to either a single date input or a date range\n * * if provided it will be ignored if maxDaysInRange is passed\n * If neither of these values is specified return undefined\n */\n const getMaxBookingDate = useCallback(\n (startDate: Date | null) => {\n if (maxDaysInRange && startDate) {\n return add(startDate, { days: maxDaysInRange });\n } else if (maxDate) {\n return maxDate;\n }\n\n return;\n },\n [maxDate, maxDaysInRange],\n );\n\n const onDatesChange = (data: DatePickerInternalState): void => {\n if (!data) {\n return;\n }\n\n // Default the end date to the start date if no value is provided\n if (!data.endDate) {\n data.endDate = data.startDate;\n }\n\n // If end date exceeds new max booking date, reset the end date value\n const _maxBookingDate = getMaxBookingDate(data.startDate);\n if (\n data.endDate &&\n _maxBookingDate &&\n isAfter(data.endDate, _maxBookingDate)\n ) {\n data.endDate = null;\n }\n\n // Set the start date to start of day and end date to end of day to create a range\n data.startDate = data.startDate\n ? startOfDay(data.startDate)\n : data.startDate;\n data.endDate = data.endDate ? endOfDay(data.endDate) : data.endDate;\n\n setState({\n ...data,\n focusedInput: data.focusedInput || FocusedInput.StartDate,\n });\n if (!withDateRange && onDateChange) {\n onDateChange(data);\n }\n };\n\n const clearDates = useCallback(({ open }: { open?: boolean }) => {\n setState({\n startDate: null,\n endDate: null,\n focusedInput: open ? FocusedInput.StartDate : null,\n });\n }, []);\n\n const {\n activeMonths,\n firstDayOfWeek,\n focusedDate,\n goToDate,\n goToNextMonths,\n goToPreviousMonths,\n isDateBlocked,\n isDateFocused,\n isDateHovered,\n isDateSelected,\n isFirstOrLastSelectedDate,\n onDateFocus,\n onDateHover,\n onDateSelect,\n } = useDatepicker({\n endDate: state.endDate,\n focusedInput: state.focusedInput,\n initialVisibleMonth: state.startDate || today,\n // Only show max disabled dates for date range when focused on end date input\n maxBookingDate:\n withDateRange && state.focusedInput === FocusedInput.StartDate\n ? undefined\n : getMaxBookingDate(state.startDate),\n minBookingDate: minDate,\n minBookingDays: 1,\n numberOfMonths: 1,\n onDatesChange,\n startDate: state.startDate,\n ...(!withDateRange && { exactMinBookingDays: true }),\n });\n\n const navigateToFocusedInputDate = useCallback(\n (focusedInput: FocusedInput | null) => {\n if (focusedInput === FocusedInput.EndDate && state.endDate) {\n goToDate(state.endDate);\n } else if (state.startDate) {\n goToDate(state.startDate);\n }\n },\n [goToDate, state.endDate, state.startDate],\n );\n\n const setFocusedInput = useCallback(\n (focusedInput: FocusedInput | null): void => {\n setState((prevState) => ({ ...prevState, focusedInput }));\n navigateToFocusedInputDate(focusedInput);\n },\n [navigateToFocusedInputDate],\n );\n\n const handleOpen = (): void => {\n if (inputProps?.disabled) return;\n\n // Default to start date input on open if no start date value has been set\n if (!state.startDate || !withDateRange) {\n setFocusedInput(FocusedInput.StartDate);\n }\n };\n\n const handleClose = useCallback((): void => {\n setFocusedInput(null);\n\n if (withDateRange && onDateChange) {\n setTimeout(() => {\n onDateChange({ startDate: state.startDate, endDate: state.endDate });\n }, 200);\n }\n }, [\n withDateRange,\n onDateChange,\n setFocusedInput,\n state.endDate,\n state.startDate,\n ]);\n\n const activeMonth = useMemo(() => activeMonths[0], [activeMonths]);\n\n // Listen for external changes to start and end dates and update internal state\n useEffect(() => {\n setState((prevState) => ({\n ...prevState,\n startDate,\n endDate: endDate || startDate,\n }));\n }, [startDate, endDate]);\n\n return (\n <DatePickerContext.Provider\n value={{\n activeMonth,\n activeMonths,\n dateFormat: dateFormat || defaultDateFormat,\n endDate: state.endDate || null,\n firstDayOfWeek,\n focusedDate: focusedDate || defaultFocusedDate,\n focusedInput: state.focusedInput,\n goToDate,\n goToNextMonths,\n goToPreviousMonths,\n setFocusedInput,\n isDateBlocked,\n isDateFocused,\n isDateHovered,\n withDateRange: withDateRange || false,\n isDateSelected,\n isFirstOrLastSelectedDate,\n maxDate,\n maxYear: maxYear || defaultMaxYear,\n minDate,\n minYear: minYear || defaultMinYear,\n onDateChange,\n onDateFocus,\n onDateHover,\n onDateSelect,\n startDate: state.startDate,\n onClose: handleClose,\n clearDates,\n }}\n >\n <CPopover.Root\n onOpenChange={({ open }) => {\n if (open) {\n handleOpen();\n } else {\n setFocusedInput(null);\n }\n }}\n positioning={{ placement }}\n variant=\"default\"\n >\n {children}\n </CPopover.Root>\n </DatePickerContext.Provider>\n );\n};\n","import isAfter from \"date-fns/isAfter\";\nimport isBefore from \"date-fns/isBefore\";\n\nexport const isDateAfterMin = (date: Date, minDate?: Date): boolean =>\n minDate ? isAfter(date, minDate) : true;\nexport const isDateBeforeMax = (date: Date, maxDate?: Date): boolean =>\n maxDate ? isBefore(date, maxDate) : true;\n","import React, { ChangeEvent } from \"react\";\nimport { Flex } from \"@chakra-ui/react/flex\";\nimport { HStack } from \"@chakra-ui/react/stack\";\nimport {\n TextInput,\n TextInputProps,\n} from \"components/TextInput/textInput.component\";\nimport { Icon } from \"components/Icon/icon.component\";\nimport { Text } from \"components/Text/text.component\";\nimport isDate from \"date-fns/isDate\";\nimport { getInputValue, parseDate } from \"@datepicker-react/hooks\";\nimport { isDateAfterMin, isDateBeforeMax } from \"./datePickerInput.utils\";\nimport {\n FocusedInput,\n today,\n useDatePickerContext,\n} from \"../../context/datePicker.context\";\nimport format from \"date-fns/format\";\nimport { usePopoverContext } from \"@chakra-ui/react/popover\";\n\ninterface DatePickerInputProps {\n inputProps?: Omit<\n TextInputProps,\n \"onChange\" | \"value\" | \"isClearable\" | \"onClear\"\n >;\n}\n\nexport function DatePickerInput({\n inputProps,\n}: DatePickerInputProps): React.JSX.Element {\n const {\n setFocusedInput,\n startDate,\n endDate,\n focusedInput,\n dateFormat,\n withDateRange,\n minDate,\n maxDate,\n onDateChange,\n onDateSelect,\n onClose,\n } = useDatePickerContext();\n const { open, setOpen } = usePopoverContext();\n const iconSize = inputProps?.size || \"md\";\n\n const onKeyDown = (e: React.KeyboardEvent): void => {\n if (e.key === \"Enter\" && open) {\n setOpen(false);\n onClose();\n e.preventDefault();\n e.stopPropagation();\n }\n };\n\n const onInputChange = (e: ChangeEvent<HTMLInputElement>): void => {\n const dateValue = e.target.value;\n const parsedDate = parseDate(dateValue, dateFormat, today);\n\n if (\n dateValue.length === dateFormat.length &&\n isDate(parsedDate) &&\n isDateAfterMin(parsedDate, minDate) &&\n isDateBeforeMax(parsedDate, maxDate)\n ) {\n onDateSelect(parsedDate);\n }\n\n // Trigger change when input is empty\n if (!dateValue.length && onDateChange) {\n onDateChange({ startDate: null, endDate: null });\n }\n };\n\n return (\n <HStack\n w=\"100%\"\n className=\"DatePicker__Trigger\"\n data-testid=\"kibble-datepicker-trigger\"\n >\n <TextInput\n className=\"DatePicker__Input--Start\"\n data-testid=\"kibble-datepicker-input-start\"\n autoComplete=\"off\"\n rightElement={\n <Flex\n {...(!inputProps?.disabled && {\n onClick: (): void => setFocusedInput(FocusedInput.StartDate),\n })}\n h=\"100%\"\n align=\"center\"\n >\n <Icon name=\"calendarDate\" size={iconSize} />\n </Flex>\n }\n value={getInputValue(startDate, dateFormat, \"\")}\n onChange={onInputChange}\n onKeyDown={onKeyDown}\n {...(!inputProps?.disabled && {\n onFocus: (): void => {\n setFocusedInput(FocusedInput.StartDate);\n },\n })}\n placeholder={format(today, dateFormat).toString()}\n {...(focusedInput === FocusedInput.StartDate && {\n \"data-focus\": true,\n })}\n {...inputProps}\n />\n {withDateRange && (\n <>\n <Text> - </Text>\n <TextInput\n className=\"DatePicker__Input--End\"\n data-testid=\"kibble-datepicker-input-end\"\n rightElement={\n <Flex\n {...(!inputProps?.disabled && {\n onClick: (): void => setFocusedInput(FocusedInput.StartDate),\n })}\n h=\"100%\"\n align=\"center\"\n >\n <Icon name=\"calendarDate\" size={iconSize} />\n </Flex>\n }\n value={getInputValue(endDate, dateFormat, \"\")}\n onChange={onInputChange}\n {...(!inputProps?.disabled && {\n onFocus: (): void => setFocusedInput(FocusedInput.EndDate),\n })}\n onKeyDown={onKeyDown}\n placeholder={format(today, dateFormat).toString()}\n {...(focusedInput === FocusedInput.EndDate && {\n \"data-focus\": true,\n })}\n {...inputProps}\n />\n </>\n )}\n </HStack>\n );\n}\n","import React, { useCallback } from \"react\";\nimport { Button } from \"components/Button/button.component\";\nimport { HStack } from \"@chakra-ui/react/stack\";\nimport { DateRange } from \"../../datePicker.types\";\nimport { useDatePickerContext } from \"../../context/datePicker.context\";\nimport { usePopoverContext } from \"@chakra-ui/react/popover\";\n\nexport interface DatePickerFooterProps {\n buttonText?: string;\n onSubmit?: ({ startDate, endDate }: DateRange) => void;\n hideResetButton?: boolean;\n}\n\nexport function DatePickerFooter({\n buttonText = \"Apply\",\n onSubmit,\n hideResetButton,\n}: DatePickerFooterProps): React.JSX.Element {\n const { startDate, endDate, onClose, clearDates } = useDatePickerContext();\n const { open, setOpen } = usePopoverContext();\n\n const handleSubmit = useCallback((): void => {\n setOpen(false);\n onClose();\n\n if (onSubmit) {\n onSubmit({ startDate, endDate });\n }\n }, [setOpen, onClose, onSubmit, startDate, endDate]);\n\n return (\n <HStack\n w=\"100%\"\n justify={hideResetButton ? \"end\" : \"space-between\"}\n align=\"center\"\n borderTop=\"1px\"\n borderColor=\"border.default\"\n px={3}\n py={2}\n >\n {!hideResetButton && (\n <Button\n size=\"sm\"\n variant=\"ghostNeutral\"\n onClick={() => clearDates({ open })}\n >\n Clear Dates\n </Button>\n )}\n <Button size=\"sm\" onClick={handleSubmit}>\n {buttonText}\n </Button>\n </HStack>\n );\n}\n","export const monthNames = [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\",\n];\n","import React, { useMemo, useRef } from \"react\";\nimport { Menu, MenuItemProps } from \"components/Menu\";\nimport range from \"lodash-es/range\";\nimport { Button } from \"components/Button/button.component\";\nimport set from \"date-fns/set\";\nimport { today, useDatePickerContext } from \"../../context/datePicker.context\";\nimport { monthNames } from \"../../datePicker.records\";\nimport { HStack } from \"@chakra-ui/react/stack\";\nimport { Center } from \"@chakra-ui/react/center\";\n\nexport function DatePickerHeader(): React.JSX.Element {\n const selectedMonthRef = useRef<HTMLDivElement | null>(null);\n const selectedYearRef = useRef<HTMLDivElement | null>(null);\n\n const {\n focusedDate,\n activeMonth,\n minYear,\n maxYear,\n goToDate,\n goToNextMonths,\n goToPreviousMonths,\n } = useDatePickerContext();\n\n const monthMenuItems: MenuItemProps[] = useMemo(\n () =>\n monthNames.map((month, index) => ({\n label: month,\n value: String(index),\n selected: index === activeMonth?.month,\n })),\n [activeMonth?.month],\n );\n\n const yearMenuItems: MenuItemProps[] = useMemo(\n () =>\n range(minYear, maxYear + 1).map((year: number) => {\n const stringYear = String(year);\n const selected = year === activeMonth?.year;\n return {\n label: stringYear,\n value: stringYear,\n selected,\n ...(selected && { ref: selectedYearRef }),\n };\n }),\n [activeMonth?.year, maxYear, minYear],\n );\n\n const handleMonthChange = (selectedItem: string | undefined): void =>\n goToDate(\n set(focusedDate || today, {\n month: Number(selectedItem),\n year: activeMonth?.year,\n }),\n );\n\n const handleYearChange = (selectedItem: string | undefined): void =>\n goToDate(\n set(focusedDate || today, {\n month: activeMonth?.month,\n year: Number(selectedItem),\n }),\n );\n\n const scrollToSelectedItem = ({ type }: { type: \"month\" | \"year\" }): void => {\n setTimeout(() => {\n const selectedNode =\n type === \"year\" ? selectedYearRef?.current : selectedMonthRef?.current;\n if (selectedNode) {\n selectedNode.scrollIntoView({ block: \"center\" });\n }\n });\n };\n\n return (\n <HStack\n className=\"DatePicker__Header\"\n data-testid=\"kibble-datepicker-header\"\n w=\"100%\"\n justify=\"space-between\"\n borderBottom=\"1px\"\n borderColor=\"border.default\"\n py={2}\n px={3}\n >\n <Button\n iconName=\"chevronLeft\"\n onClick={goToPreviousMonths}\n variant=\"ghostNeutral\"\n size=\"sm\"\n />\n <Center gap={2} h=\"100%\">\n <Menu\n data-testid=\"kibble-datepicker-month-menu\"\n buttonProps={{\n variant: \"tertiary\",\n text: monthNames[activeMonth?.month || 0],\n size: \"sm\",\n }}\n listProps={{\n menuItems: monthMenuItems,\n onSelect: handleMonthChange,\n maxH: 250,\n }}\n onOpenChange={({ open }) => {\n if (open) scrollToSelectedItem({ type: \"month\" });\n }}\n />\n <Menu\n data-testid=\"kibble-datepicker-year-menu\"\n buttonProps={{\n variant: \"tertiary\",\n text: String(activeMonth?.year),\n size: \"sm\",\n }}\n listProps={{\n menuItems: yearMenuItems,\n onSelect: handleYearChange,\n maxH: 250,\n }}\n onOpenChange={({ open }) => {\n if (open) scrollToSelectedItem({ type: \"year\" });\n }}\n />\n </Center>\n <Button\n iconName=\"chevronRight\"\n onClick={goToNextMonths}\n variant=\"ghostNeutral\"\n size=\"sm\"\n />\n </HStack>\n );\n}\n","import {\n defineSlotRecipe,\n SystemStyleObject,\n} from \"@chakra-ui/react/styled-system\";\nimport { DayVariant } from \"./datePickerCalendarDay.types\";\n\ntype CalendarDaySlot = \"root\" | \"indicator\";\nconst calendarDaySlots: CalendarDaySlot[] = [\"root\", \"indicator\"] as const;\n\ntype CalendarDaySlotStyles = {\n [key in CalendarDaySlot]?: SystemStyleObject;\n};\n\nconst datePickerCalendarDayVariantStyles: Record<\n DayVariant,\n CalendarDaySlotStyles\n> = {\n default: {\n root: {\n borderColor: \"transparent\",\n _hover: {\n bg: \"background.secondaryAlpha.hover\",\n },\n },\n },\n disabled: {\n root: {\n bg: \"background.subtle\",\n borderColor: \"transparent\",\n cursor: \"not-allowed\",\n opacity: 0.4,\n },\n },\n inRange: {\n root: {\n bg: \"background.secondaryAlpha.hover\",\n borderColor: \"transparent\",\n borderRadius: \"none\",\n color: \"text.info\",\n },\n },\n selectedEnd: {\n root: {\n borderColor: \"border.focus\",\n color: \"text.info\",\n },\n },\n selectedStart: {\n root: {\n bg: \"background.secondary\",\n borderColor: \"border.focus\",\n color: \"text.contrast\",\n _hover: {\n bg: \"background.secondary\",\n },\n },\n },\n};\n\nexport const datePickerCalendarDayRecipe = defineSlotRecipe({\n slots: calendarDaySlots,\n base: {\n indicator: {\n position: \"absolute\",\n h: 6,\n right: -4,\n top: -4,\n transform: \"rotate(45deg)\",\n w: 6,\n },\n root: {\n border: \"2px\",\n borderRadius: \"4px\",\n color: \"text.subtle\",\n cursor: \"pointer\",\n fontSize: \"sm\",\n fontWeight: \"normal !important\",\n position: \"relative\",\n px: 3,\n py: 1,\n overflow: \"hidden\",\n },\n },\n variants: {\n variant: datePickerCalendarDayVariantStyles,\n isToday: {\n true: {\n indicator: {\n bg: \"background.secondary\",\n },\n },\n false: {},\n },\n withDateRange: {\n true: {},\n false: {},\n },\n },\n compoundVariants: [\n {\n variant: \"selectedStart\",\n isToday: true,\n css: {\n indicator: {\n bg: \"background\",\n },\n },\n },\n {\n withDateRange: true,\n variant: \"selectedStart\",\n css: {\n root: {\n borderRightRadius: 0,\n },\n },\n },\n {\n withDateRange: true,\n variant: \"selectedEnd\",\n css: {\n root: {\n borderLeftRadius: 0,\n },\n },\n },\n ],\n defaultVariants: {},\n});\n","import React, { useRef, useMemo } from \"react\";\nimport { useDay } from \"@datepicker-react/hooks\";\nimport { useDatePickerContext } from \"../../context/datePicker.context\";\nimport { Button } from \"components/Button/button.component\";\nimport format from \"date-fns/format\";\nimport { Box } from \"@chakra-ui/react/box\";\nimport { DayVariant } from \"./datePickerCalendarDay.types\";\nimport { useSlotRecipe } from \"@chakra-ui/react/styled-system\";\nimport { datePickerCalendarDayRecipe } from \"./datePickerCalendarDay.recipe\";\n\ninterface DayProps {\n dayLabel: string;\n date: Date;\n onDaySelected: () => void;\n}\n\nexport const DatePickerCalendarDay = ({\n dayLabel,\n date,\n onDaySelected,\n}: DayProps): React.JSX.Element => {\n const today = new Date();\n const dayRef = useRef<HTMLButtonElement>(null);\n const { startDate, endDate, dateFormat, withDateRange } =\n useDatePickerContext();\n const formattedDates = useMemo(\n () => ({\n currentDay: format(date, dateFormat),\n startDate: startDate && format(startDate, dateFormat),\n endDate: endDate && format(endDate, dateFormat),\n }),\n [date, dateFormat, endDate, startDate],\n );\n const isRangeStart = formattedDates.currentDay === formattedDates.startDate;\n const isRangeEnd = formattedDates.currentDay === formattedDates.endDate;\n const isToday = formattedDates.currentDay === format(today, dateFormat);\n\n const {\n focusedDate,\n isDateFocused,\n isDateSelected,\n isDateHovered,\n isDateBlocked,\n isFirstOrLastSelectedDate,\n onDateSelect,\n onDateFocus,\n onDateHover,\n } = useDatePickerContext();\n\n const {\n disabledDate,\n isSelected,\n onClick,\n onKeyDown,\n onMouseEnter,\n tabIndex,\n } = useDay({\n date,\n focusedDate,\n isDateFocused,\n isDateSelected,\n isDateHovered,\n isDateBlocked,\n isFirstOrLastSelectedDate,\n onDateFocus,\n onDateSelect,\n onDateHover,\n dayRef: dayRef as React.RefObject<HTMLButtonElement>,\n });\n\n const buttonVariant = useMemo((): DayVariant => {\n switch (true) {\n case disabledDate:\n return \"disabled\";\n case isRangeStart:\n return \"selectedStart\";\n case isRangeEnd:\n return \"selectedEnd\";\n case isSelected && !isRangeStart && !isRangeEnd:\n return \"inRange\";\n default:\n return \"default\";\n }\n }, [disabledDate, isRangeEnd, isRangeStart, isSelected]);\n\n const recipe = useSlotRecipe({ recipe: datePickerCalendarDayRecipe });\n const styles = recipe({ variant: buttonVariant, isToday, withDateRange });\n\n if (!dayLabel) {\n return <></>;\n }\n\n const onSelectDay = (): void => {\n if (buttonVariant === \"disabled\") {\n return;\n }\n\n onClick();\n onDaySelected();\n };\n\n return (\n <Button\n className=\"DatePicker__Day\"\n data-testid={`kibble-datepicker-day--${formattedDates.currentDay}`}\n onClick={onSelectDay}\n onKeyDown={onKeyDown}\n onMouseEnter={onMouseEnter}\n tabIndex={tabIndex}\n ref={dayRef}\n unstyled\n css={styles.root}\n >\n {isToday && <Box css={styles.indicator} />}\n {dayLabel}\n </Button>\n );\n};\n","import React, { useRef } from \"react\";\nimport { useMonth } from \"@datepicker-react/hooks\";\nimport { Text } from \"components/Text/text.component\";\nimport { Box } from \"@chakra-ui/react/box\";\nimport { Center } from \"@chakra-ui/react/center\";\nimport { Grid, GridItem } from \"@chakra-ui/react/grid\";\nimport { DatePickerCalendarDay } from \"../DatePickerDay/datePickerCalendarDay.component\";\nimport {\n currentMonth,\n currentYear,\n useDatePickerContext,\n} from \"../../context/datePicker.context\";\n\nexport interface MonthProps {\n onDaySelected: () => void;\n}\n\nexport const DatePickerCalendarMonth = ({\n onDaySelected,\n}: MonthProps): React.JSX.Element => {\n const ref = useRef<HTMLDivElement | null>(null);\n const { firstDayOfWeek, activeMonth } = useDatePickerContext();\n\n const { days, weekdayLabels } = useMonth({\n year: activeMonth?.year || currentYear,\n month: activeMonth?.month !== undefined ? activeMonth.month : currentMonth,\n firstDayOfWeek,\n });\n\n return (\n <Box\n ref={ref}\n className=\"DatePicker__Month\"\n data-testid=\"kibble-datepicker-month\"\n >\n <Grid templateColumns=\"repeat(7, 1fr)\" my={2}>\n {weekdayLabels.map((weekdayLabel: string) => (\n <GridItem key={weekdayLabel}>\n <Center>\n <Text size=\"xs\" variant=\"subtle\">\n {weekdayLabel}\n </Text>\n </Center>\n </GridItem>\n ))}\n </Grid>\n <Grid templateColumns=\"repeat(7, 1fr)\">\n {days.map((day, index) =>\n typeof day === \"object\" ? (\n <DatePickerCalendarDay\n key={day.date.toString()}\n date={day.date}\n dayLabel={day.dayLabel}\n onDaySelected={onDaySelected}\n />\n ) : (\n <div key={index} />\n ),\n )}\n </Grid>\n </Box>\n );\n};\n","import React from \"react\";\nimport { Grid } from \"@chakra-ui/react/grid\";\nimport { DatePickerCalendarMonth } from \"../DatePickerMonth/datePickerCalendarMonth.component\";\nimport { useDatePickerContext } from \"../../context/datePicker.context\";\nimport { usePopoverContext } from \"@chakra-ui/react/popover\";\n\nexport function DatePickerCalendar(): React.JSX.Element {\n const { withDateRange, activeMonths, onClose } = useDatePickerContext();\n const { setOpen } = usePopoverContext();\n\n const handleDaySelected = (): void => {\n if (!withDateRange) {\n setOpen(false);\n onClose();\n }\n };\n\n return (\n <Grid\n className=\"DatePicker__Calendar\"\n data-testid=\"kibble-datepicker-calendar\"\n gap=\"0 64px\"\n px={3}\n py={2}\n >\n {activeMonths.map((month) => (\n <DatePickerCalendarMonth\n key={`${month.year}-${month.month}`}\n onDaySelected={handleDaySelected}\n />\n ))}\n </Grid>\n );\n}\n","import React from \"react\";\nimport { DateFormats, DateRange } from \"./datePicker.types\";\nimport { TextInputProps } from \"components/TextInput/textInput.component\";\nimport { Placement } from \"shared/types/placement\";\nimport { DatePickerProvider } from \"./context/datePicker.provider\";\nimport { DatePickerInput } from \"./components/DatePickerInput/datePickerInput.component\";\nimport {\n DatePickerFooter,\n DatePickerFooterProps,\n} from \"./components/DatePickerFooter/datePickerFooter.component\";\nimport { DatePickerHeader } from \"./components/DatePickerHeader/datePickerHeader.component\";\nimport { DatePickerCalendar } from \"./components/DatePickerCalendar/datePickerCalendar.component\";\nimport { Popover as CPopover } from \"@chakra-ui/react/popover\";\nimport { Portal } from \"@chakra-ui/react/portal\";\n\nexport interface DatePickerProps {\n dateFormat?: string | DateFormats;\n endDate?: Date | null;\n footerProps?: DatePickerFooterProps;\n hideFooter?: boolean;\n inputProps?: Omit<\n TextInputProps,\n \"onChange\" | \"value\" | \"isClearable\" | \"onClear\"\n >;\n maxDate?: Date;\n maxYear?: number;\n maxDaysInRange?: number;\n minDate?: Date;\n minYear?: number;\n onDateChange?: ({ startDate, endDate }: DateRange) => void;\n placement?: Placement;\n startDate: Date | null;\n withDateRange?: boolean;\n}\n\nexport const DatePicker = (props: DatePickerProps): React.JSX.Element => {\n const {\n footerProps,\n hideFooter = false,\n inputProps,\n withDateRange = false,\n } = props;\n\n return (\n <DatePickerProvider {...props}>\n <CPopover.Trigger>\n <DatePickerInput inputProps={inputProps} />\n </CPopover.Trigger>\n <Portal>\n <CPopover.Positioner\n className=\"DatePicker\"\n data-testid=\"kibble-datepicker\"\n >\n <CPopover.Content\n className=\"DatePicker__Content\"\n data-testid=\"kibble-datepicker-content\"\n minW=\"340px\"\n >\n <CPopover.Arrow />\n <CPopover.Body p=\"0 !important\">\n <DatePickerHeader />\n <DatePickerCalendar />\n {withDateRange && !hideFooter && (\n <DatePickerFooter {...footerProps} />\n )}\n </CPopover.Body>\n </CPopover.Content>\n </CPopover.Positioner>\n </Portal>\n </DatePickerProvider>\n );\n};\n"],"names":["DateFormats","FocusedInput","today","currentYear","currentMonth","defaultFocusedDate","defaultMinYear","defaultMaxYear","defaultDateFormat","initialDatePickerState","DatePickerContext","createContext","useDatePickerContext","useContext","DatePickerProvider","children","dateFormat","endDate","inputProps","maxDate","maxDaysInRange","maxYear","minDate","minYear","onDateChange","placement","startDate","withDateRange","state","setState","useState","getMaxBookingDate","useCallback","add","onDatesChange","data","_maxBookingDate","isAfter","startOfDay","endOfDay","clearDates","open","activeMonths","firstDayOfWeek","focusedDate","goToDate","goToNextMonths","goToPreviousMonths","isDateBlocked","isDateFocused","isDateHovered","isDateSelected","isFirstOrLastSelectedDate","onDateFocus","onDateHover","onDateSelect","useDatepicker","navigateToFocusedInputDate","focusedInput","setFocusedInput","prevState","handleOpen","handleClose","activeMonth","useMemo","useEffect","jsx","CPopover.Root","isDateAfterMin","date","isDateBeforeMax","isBefore","DatePickerInput","onClose","setOpen","usePopoverContext","iconSize","onKeyDown","e","onInputChange","dateValue","parsedDate","parseDate","isDate","jsxs","HStack","TextInput","Flex","Icon","getInputValue","format","Fragment","Text","DatePickerFooter","buttonText","onSubmit","hideResetButton","handleSubmit","Button","monthNames","DatePickerHeader","selectedMonthRef","useRef","selectedYearRef","monthMenuItems","month","index","yearMenuItems","range","year","stringYear","selected","handleMonthChange","selectedItem","set","handleYearChange","scrollToSelectedItem","type","selectedNode","Center","Menu","calendarDaySlots","datePickerCalendarDayVariantStyles","datePickerCalendarDayRecipe","defineSlotRecipe","DatePickerCalendarDay","dayLabel","onDaySelected","dayRef","formattedDates","isRangeStart","isRangeEnd","isToday","disabledDate","isSelected","onClick","onMouseEnter","tabIndex","useDay","buttonVariant","styles","useSlotRecipe","onSelectDay","Box","DatePickerCalendarMonth","ref","days","weekdayLabels","useMonth","Grid","weekdayLabel","GridItem","day","DatePickerCalendar","handleDaySelected","DatePicker","props","footerProps","hideFooter","CPopover.Trigger","Portal","CPopover.Positioner","CPopover.Content","CPopover.Arrow","CPopover.Body"],"mappings":"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"}
1
+ {"version":3,"file":"datePicker.component-CLJT4YOv.js","sources":["../../src/components/DatePicker/datePicker.types.ts","../../src/components/DatePicker/context/datePicker.context.tsx","../../src/components/DatePicker/context/datePicker.provider.tsx","../../src/components/DatePicker/components/DatePickerInput/datePickerInput.utils.ts","../../src/components/DatePicker/components/DatePickerInput/datePickerInput.component.tsx","../../src/components/DatePicker/components/DatePickerFooter/datePickerFooter.component.tsx","../../src/components/DatePicker/datePicker.records.ts","../../src/components/DatePicker/components/DatePickerHeader/datePickerHeader.component.tsx","../../src/components/DatePicker/components/DatePickerDay/datePickerCalendarDay.recipe.ts","../../src/components/DatePicker/components/DatePickerDay/datePickerCalendarDay.component.tsx","../../src/components/DatePicker/components/DatePickerMonth/datePickerCalendarMonth.component.tsx","../../src/components/DatePicker/components/DatePickerCalendar/datePickerCalendar.component.tsx","../../src/components/DatePicker/datePicker.component.tsx"],"sourcesContent":["export enum DateFormats {\n \"ShortDate\" = \"MM/dd/yyyy\",\n \"LongDate\" = \"MMM dd yyyy\",\n \"DayOfWeekDayOfMonth\" = \"eeee, MMMM do\",\n}\n\nexport interface DateRange {\n startDate: Date | null;\n endDate?: Date | null;\n}\n","import { FirstDayOfWeek, MonthType } from \"@datepicker-react/hooks\";\nimport { useContext, createContext } from \"react\";\nimport { DateFormats, DateRange } from \"../datePicker.types\";\n\nexport enum FocusedInput {\n StartDate = \"startDate\",\n EndDate = \"endDate\",\n}\n\nexport interface IDatePickerContext {\n activeMonth?: MonthType;\n dateFormat: DateFormats | string;\n endDate: Date | null;\n focusedInput: FocusedInput | null;\n setFocusedInput: (focusedInput: FocusedInput | null) => void;\n withDateRange: boolean;\n maxDate?: Date;\n maxYear: number;\n minDate?: Date;\n minYear: number;\n onDateChange?: ({ startDate, endDate }: DateRange) => void;\n startDate: Date | null;\n onClose: () => void;\n clearDates: ({ open }: { open?: boolean }) => void;\n // The following are all values returned by the datepicker-react useDatePicker hook\n // Setting them here in our own context to be referenced in child components\n focusedDate: Date | null;\n firstDayOfWeek?: FirstDayOfWeek;\n activeMonths: MonthType[];\n isDateFocused: (date: Date) => boolean;\n isDateSelected: (date: Date) => boolean;\n isDateHovered: (date: Date) => boolean;\n isDateBlocked: (date: Date) => boolean;\n isFirstOrLastSelectedDate: (date: Date) => boolean;\n onDateFocus: (date: Date) => void;\n onDateHover: (date: Date | null) => void;\n onDateSelect: (date: Date) => void;\n goToPreviousMonths: () => void;\n goToNextMonths: () => void;\n goToDate: (date: Date) => void;\n}\n\nexport const today = new Date();\nexport const currentYear = today.getFullYear();\nexport const currentMonth = today.getMonth();\n\nexport const defaultFocusedDate = today;\nexport const defaultMinYear = currentYear - 100;\nexport const defaultMaxYear = currentYear + 5;\nexport const defaultDateFormat = DateFormats.ShortDate;\n\nconst initialDatePickerState: IDatePickerContext = {\n dateFormat: defaultDateFormat,\n endDate: null,\n focusedInput: null,\n withDateRange: false,\n maxYear: defaultMaxYear,\n minYear: defaultMinYear,\n startDate: null,\n onClose: (): void => {\n throw new Error(\"onClose(): boolean not implemented\");\n },\n setFocusedInput: (): void => {\n throw new Error(\"setFocusedInput(): boolean not implemented\");\n },\n focusedDate: today,\n firstDayOfWeek: undefined,\n activeMonths: [],\n isDateFocused: (): boolean => {\n throw new Error(\"isDateFocused(): boolean not implemented\");\n },\n isDateSelected: (): boolean => {\n throw new Error(\"isDateSelected(): boolean not implemented\");\n },\n isDateHovered: (): boolean => {\n throw new Error(\"isDateHovered(): boolean not implemented\");\n },\n isDateBlocked: (): boolean => {\n throw new Error(\"isDateBlocked(): boolean not implemented\");\n },\n isFirstOrLastSelectedDate: (): boolean => {\n throw new Error(\"isFirstOrLastSelectedDate(): boolean not implemented\");\n },\n onDateFocus: (): void => {\n throw new Error(\"onDateFocus(): boolean not implemented\");\n },\n onDateHover: (): void => {\n throw new Error(\"onDateHover(): boolean not implemented\");\n },\n onDateSelect: (): Date => {\n throw new Error(\"onDateSelect(): boolean not implemented\");\n },\n goToPreviousMonths: (): Date => {\n throw new Error(\"goToPreviousMonths(): boolean not implemented\");\n },\n goToNextMonths: (): Date => {\n throw new Error(\"goToNextMonths(): boolean not implemented\");\n },\n goToDate: (): Date => {\n throw new Error(\"goToDate(): boolean not implemented\");\n },\n clearDates: (): void => {\n throw new Error(\"clearDates(): boolean not implemented\");\n },\n};\n\nexport const DatePickerContext = createContext<IDatePickerContext>(\n initialDatePickerState,\n);\n\nexport const useDatePickerContext = (): IDatePickerContext =>\n useContext<IDatePickerContext>(DatePickerContext);\n","import React, { useCallback, useEffect, useMemo, useState } from \"react\";\nimport { Popover as CPopover } from \"@chakra-ui/react/popover\";\nimport { DatePickerProps } from \"../datePicker.component\";\nimport { useDatepicker } from \"@datepicker-react/hooks\";\nimport {\n DatePickerContext,\n defaultDateFormat,\n defaultFocusedDate,\n defaultMaxYear,\n defaultMinYear,\n FocusedInput,\n today,\n} from \"./datePicker.context\";\nimport startOfDay from \"date-fns/startOfDay\";\nimport endOfDay from \"date-fns/endOfDay\";\nimport add from \"date-fns/add\";\nimport isAfter from \"date-fns/isAfter\";\n\ntype DatePickerProviderProps = DatePickerProps & {\n children: React.ReactNode;\n};\n\ninterface DatePickerInternalState {\n startDate: Date | null;\n endDate: Date | null;\n focusedInput: FocusedInput | null;\n}\n\nexport const DatePickerProvider = ({\n children,\n dateFormat = defaultDateFormat,\n endDate,\n inputProps,\n maxDate,\n maxDaysInRange,\n maxYear,\n minDate,\n minYear,\n onDateChange,\n placement = \"bottom\",\n startDate,\n withDateRange,\n}: DatePickerProviderProps): React.JSX.Element => {\n const [state, setState] = useState<DatePickerInternalState>({\n startDate,\n endDate: endDate || startDate,\n focusedInput: null,\n });\n\n /**\n * Calculates the max booking date based on the following criteria:\n * _maxDaysInRange_\n * * should only ever be used by date ranges\n * * should take precedence over the maxDate value\n * * should use it's value plus the start date of the range to calculate the max date\n * _maxDate_\n * * can be passed to either a single date input or a date range\n * * if provided it will be ignored if maxDaysInRange is passed\n * If neither of these values is specified return undefined\n */\n const getMaxBookingDate = useCallback(\n (startDate: Date | null) => {\n if (maxDaysInRange && startDate) {\n return add(startDate, { days: maxDaysInRange });\n } else if (maxDate) {\n return maxDate;\n }\n\n return;\n },\n [maxDate, maxDaysInRange],\n );\n\n const onDatesChange = (data: DatePickerInternalState): void => {\n if (!data) {\n return;\n }\n\n // Default the end date to the start date if no value is provided\n if (!data.endDate) {\n data.endDate = data.startDate;\n }\n\n // If end date exceeds new max booking date, reset the end date value\n const _maxBookingDate = getMaxBookingDate(data.startDate);\n if (\n data.endDate &&\n _maxBookingDate &&\n isAfter(data.endDate, _maxBookingDate)\n ) {\n data.endDate = null;\n }\n\n // Set the start date to start of day and end date to end of day to create a range\n data.startDate = data.startDate\n ? startOfDay(data.startDate)\n : data.startDate;\n data.endDate = data.endDate ? endOfDay(data.endDate) : data.endDate;\n\n setState({\n ...data,\n focusedInput: data.focusedInput || FocusedInput.StartDate,\n });\n if (!withDateRange && onDateChange) {\n onDateChange(data);\n }\n };\n\n const clearDates = useCallback(({ open }: { open?: boolean }) => {\n setState({\n startDate: null,\n endDate: null,\n focusedInput: open ? FocusedInput.StartDate : null,\n });\n }, []);\n\n const {\n activeMonths,\n firstDayOfWeek,\n focusedDate,\n goToDate,\n goToNextMonths,\n goToPreviousMonths,\n isDateBlocked,\n isDateFocused,\n isDateHovered,\n isDateSelected,\n isFirstOrLastSelectedDate,\n onDateFocus,\n onDateHover,\n onDateSelect,\n } = useDatepicker({\n endDate: state.endDate,\n focusedInput: state.focusedInput,\n initialVisibleMonth: state.startDate || today,\n // Only show max disabled dates for date range when focused on end date input\n maxBookingDate:\n withDateRange && state.focusedInput === FocusedInput.StartDate\n ? undefined\n : getMaxBookingDate(state.startDate),\n minBookingDate: minDate,\n minBookingDays: 1,\n numberOfMonths: 1,\n onDatesChange,\n startDate: state.startDate,\n ...(!withDateRange && { exactMinBookingDays: true }),\n });\n\n const navigateToFocusedInputDate = useCallback(\n (focusedInput: FocusedInput | null) => {\n if (focusedInput === FocusedInput.EndDate && state.endDate) {\n goToDate(state.endDate);\n } else if (state.startDate) {\n goToDate(state.startDate);\n }\n },\n [goToDate, state.endDate, state.startDate],\n );\n\n const setFocusedInput = useCallback(\n (focusedInput: FocusedInput | null): void => {\n setState((prevState) => ({ ...prevState, focusedInput }));\n navigateToFocusedInputDate(focusedInput);\n },\n [navigateToFocusedInputDate],\n );\n\n const handleOpen = (): void => {\n if (inputProps?.disabled) return;\n\n // Default to start date input on open if no start date value has been set\n if (!state.startDate || !withDateRange) {\n setFocusedInput(FocusedInput.StartDate);\n }\n };\n\n const handleClose = useCallback((): void => {\n setFocusedInput(null);\n\n if (withDateRange && onDateChange) {\n setTimeout(() => {\n onDateChange({ startDate: state.startDate, endDate: state.endDate });\n }, 200);\n }\n }, [\n withDateRange,\n onDateChange,\n setFocusedInput,\n state.endDate,\n state.startDate,\n ]);\n\n const activeMonth = useMemo(() => activeMonths[0], [activeMonths]);\n\n // Listen for external changes to start and end dates and update internal state\n useEffect(() => {\n setState((prevState) => ({\n ...prevState,\n startDate,\n endDate: endDate || startDate,\n }));\n }, [startDate, endDate]);\n\n return (\n <DatePickerContext.Provider\n value={{\n activeMonth,\n activeMonths,\n dateFormat: dateFormat || defaultDateFormat,\n endDate: state.endDate || null,\n firstDayOfWeek,\n focusedDate: focusedDate || defaultFocusedDate,\n focusedInput: state.focusedInput,\n goToDate,\n goToNextMonths,\n goToPreviousMonths,\n setFocusedInput,\n isDateBlocked,\n isDateFocused,\n isDateHovered,\n withDateRange: withDateRange || false,\n isDateSelected,\n isFirstOrLastSelectedDate,\n maxDate,\n maxYear: maxYear || defaultMaxYear,\n minDate,\n minYear: minYear || defaultMinYear,\n onDateChange,\n onDateFocus,\n onDateHover,\n onDateSelect,\n startDate: state.startDate,\n onClose: handleClose,\n clearDates,\n }}\n >\n <CPopover.Root\n onOpenChange={({ open }) => {\n if (open) {\n handleOpen();\n } else {\n setFocusedInput(null);\n }\n }}\n positioning={{ placement }}\n variant=\"default\"\n >\n {children}\n </CPopover.Root>\n </DatePickerContext.Provider>\n );\n};\n","import isAfter from \"date-fns/isAfter\";\nimport isBefore from \"date-fns/isBefore\";\n\nexport const isDateAfterMin = (date: Date, minDate?: Date): boolean =>\n minDate ? isAfter(date, minDate) : true;\nexport const isDateBeforeMax = (date: Date, maxDate?: Date): boolean =>\n maxDate ? isBefore(date, maxDate) : true;\n","import React, { ChangeEvent } from \"react\";\nimport { Flex } from \"@chakra-ui/react/flex\";\nimport { HStack } from \"@chakra-ui/react/stack\";\nimport {\n TextInput,\n TextInputProps,\n} from \"components/TextInput/textInput.component\";\nimport { Icon } from \"components/Icon/icon.component\";\nimport { Text } from \"components/Text/text.component\";\nimport isDate from \"date-fns/isDate\";\nimport { getInputValue, parseDate } from \"@datepicker-react/hooks\";\nimport { isDateAfterMin, isDateBeforeMax } from \"./datePickerInput.utils\";\nimport {\n FocusedInput,\n today,\n useDatePickerContext,\n} from \"../../context/datePicker.context\";\nimport format from \"date-fns/format\";\nimport { usePopoverContext } from \"@chakra-ui/react/popover\";\n\ninterface DatePickerInputProps {\n inputProps?: Omit<\n TextInputProps,\n \"onChange\" | \"value\" | \"isClearable\" | \"onClear\"\n >;\n}\n\nexport function DatePickerInput({\n inputProps,\n}: DatePickerInputProps): React.JSX.Element {\n const {\n setFocusedInput,\n startDate,\n endDate,\n focusedInput,\n dateFormat,\n withDateRange,\n minDate,\n maxDate,\n onDateChange,\n onDateSelect,\n onClose,\n } = useDatePickerContext();\n const { open, setOpen } = usePopoverContext();\n const iconSize = inputProps?.size || \"md\";\n\n const onKeyDown = (e: React.KeyboardEvent): void => {\n if (e.key === \"Enter\" && open) {\n setOpen(false);\n onClose();\n e.preventDefault();\n e.stopPropagation();\n }\n };\n\n const onInputChange = (e: ChangeEvent<HTMLInputElement>): void => {\n const dateValue = e.target.value;\n const parsedDate = parseDate(dateValue, dateFormat, today);\n\n if (\n dateValue.length === dateFormat.length &&\n isDate(parsedDate) &&\n isDateAfterMin(parsedDate, minDate) &&\n isDateBeforeMax(parsedDate, maxDate)\n ) {\n onDateSelect(parsedDate);\n }\n\n // Trigger change when input is empty\n if (!dateValue.length && onDateChange) {\n onDateChange({ startDate: null, endDate: null });\n }\n };\n\n return (\n <HStack\n w=\"100%\"\n className=\"DatePicker__Trigger\"\n data-testid=\"kibble-datepicker-trigger\"\n >\n <TextInput\n className=\"DatePicker__Input--Start\"\n data-testid=\"kibble-datepicker-input-start\"\n autoComplete=\"off\"\n rightElement={\n <Flex\n {...(!inputProps?.disabled && {\n onClick: (): void => setFocusedInput(FocusedInput.StartDate),\n })}\n h=\"100%\"\n align=\"center\"\n >\n <Icon name=\"calendarDate\" size={iconSize} />\n </Flex>\n }\n value={getInputValue(startDate, dateFormat, \"\")}\n onChange={onInputChange}\n onKeyDown={onKeyDown}\n {...(!inputProps?.disabled && {\n onFocus: (): void => {\n setFocusedInput(FocusedInput.StartDate);\n },\n })}\n placeholder={format(today, dateFormat).toString()}\n {...(focusedInput === FocusedInput.StartDate && {\n \"data-focus\": true,\n })}\n {...inputProps}\n />\n {withDateRange && (\n <>\n <Text> - </Text>\n <TextInput\n className=\"DatePicker__Input--End\"\n data-testid=\"kibble-datepicker-input-end\"\n rightElement={\n <Flex\n {...(!inputProps?.disabled && {\n onClick: (): void => setFocusedInput(FocusedInput.StartDate),\n })}\n h=\"100%\"\n align=\"center\"\n >\n <Icon name=\"calendarDate\" size={iconSize} />\n </Flex>\n }\n value={getInputValue(endDate, dateFormat, \"\")}\n onChange={onInputChange}\n {...(!inputProps?.disabled && {\n onFocus: (): void => setFocusedInput(FocusedInput.EndDate),\n })}\n onKeyDown={onKeyDown}\n placeholder={format(today, dateFormat).toString()}\n {...(focusedInput === FocusedInput.EndDate && {\n \"data-focus\": true,\n })}\n {...inputProps}\n />\n </>\n )}\n </HStack>\n );\n}\n","import React, { useCallback } from \"react\";\nimport { Button } from \"components/Button/button.component\";\nimport { HStack } from \"@chakra-ui/react/stack\";\nimport { DateRange } from \"../../datePicker.types\";\nimport { useDatePickerContext } from \"../../context/datePicker.context\";\nimport { usePopoverContext } from \"@chakra-ui/react/popover\";\n\nexport interface DatePickerFooterProps {\n buttonText?: string;\n onSubmit?: ({ startDate, endDate }: DateRange) => void;\n hideResetButton?: boolean;\n}\n\nexport function DatePickerFooter({\n buttonText = \"Apply\",\n onSubmit,\n hideResetButton,\n}: DatePickerFooterProps): React.JSX.Element {\n const { startDate, endDate, onClose, clearDates } = useDatePickerContext();\n const { open, setOpen } = usePopoverContext();\n\n const handleSubmit = useCallback((): void => {\n setOpen(false);\n onClose();\n\n if (onSubmit) {\n onSubmit({ startDate, endDate });\n }\n }, [setOpen, onClose, onSubmit, startDate, endDate]);\n\n return (\n <HStack\n w=\"100%\"\n justify={hideResetButton ? \"end\" : \"space-between\"}\n align=\"center\"\n borderTop=\"1px\"\n borderColor=\"border.default\"\n px={3}\n py={2}\n >\n {!hideResetButton && (\n <Button\n size=\"sm\"\n variant=\"ghostNeutral\"\n onClick={() => clearDates({ open })}\n >\n Clear Dates\n </Button>\n )}\n <Button size=\"sm\" onClick={handleSubmit}>\n {buttonText}\n </Button>\n </HStack>\n );\n}\n","export const monthNames = [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\",\n];\n","import React, { useMemo, useRef } from \"react\";\nimport { Menu, MenuItemProps } from \"components/Menu\";\nimport range from \"lodash-es/range\";\nimport { Button } from \"components/Button/button.component\";\nimport set from \"date-fns/set\";\nimport { today, useDatePickerContext } from \"../../context/datePicker.context\";\nimport { monthNames } from \"../../datePicker.records\";\nimport { HStack } from \"@chakra-ui/react/stack\";\nimport { Center } from \"@chakra-ui/react/center\";\n\nexport function DatePickerHeader(): React.JSX.Element {\n const selectedMonthRef = useRef<HTMLDivElement | null>(null);\n const selectedYearRef = useRef<HTMLDivElement | null>(null);\n\n const {\n focusedDate,\n activeMonth,\n minYear,\n maxYear,\n goToDate,\n goToNextMonths,\n goToPreviousMonths,\n } = useDatePickerContext();\n\n const monthMenuItems: MenuItemProps[] = useMemo(\n () =>\n monthNames.map((month, index) => ({\n label: month,\n value: String(index),\n selected: index === activeMonth?.month,\n })),\n [activeMonth?.month],\n );\n\n const yearMenuItems: MenuItemProps[] = useMemo(\n () =>\n range(minYear, maxYear + 1).map((year: number) => {\n const stringYear = String(year);\n const selected = year === activeMonth?.year;\n return {\n label: stringYear,\n value: stringYear,\n selected,\n ...(selected && { ref: selectedYearRef }),\n };\n }),\n [activeMonth?.year, maxYear, minYear],\n );\n\n const handleMonthChange = (selectedItem: string | undefined): void =>\n goToDate(\n set(focusedDate || today, {\n month: Number(selectedItem),\n year: activeMonth?.year,\n }),\n );\n\n const handleYearChange = (selectedItem: string | undefined): void =>\n goToDate(\n set(focusedDate || today, {\n month: activeMonth?.month,\n year: Number(selectedItem),\n }),\n );\n\n const scrollToSelectedItem = ({ type }: { type: \"month\" | \"year\" }): void => {\n setTimeout(() => {\n const selectedNode =\n type === \"year\" ? selectedYearRef?.current : selectedMonthRef?.current;\n if (selectedNode) {\n selectedNode.scrollIntoView({ block: \"center\" });\n }\n });\n };\n\n return (\n <HStack\n className=\"DatePicker__Header\"\n data-testid=\"kibble-datepicker-header\"\n w=\"100%\"\n justify=\"space-between\"\n borderBottom=\"1px\"\n borderColor=\"border.default\"\n py={2}\n px={3}\n >\n <Button\n iconName=\"chevronLeft\"\n onClick={goToPreviousMonths}\n variant=\"ghostNeutral\"\n size=\"sm\"\n />\n <Center gap={2} h=\"100%\">\n <Menu\n data-testid=\"kibble-datepicker-month-menu\"\n buttonProps={{\n variant: \"tertiary\",\n text: monthNames[activeMonth?.month || 0],\n size: \"sm\",\n }}\n listProps={{\n menuItems: monthMenuItems,\n onSelect: handleMonthChange,\n maxH: 250,\n }}\n onOpenChange={({ open }) => {\n if (open) scrollToSelectedItem({ type: \"month\" });\n }}\n />\n <Menu\n data-testid=\"kibble-datepicker-year-menu\"\n buttonProps={{\n variant: \"tertiary\",\n text: String(activeMonth?.year),\n size: \"sm\",\n }}\n listProps={{\n menuItems: yearMenuItems,\n onSelect: handleYearChange,\n maxH: 250,\n }}\n onOpenChange={({ open }) => {\n if (open) scrollToSelectedItem({ type: \"year\" });\n }}\n />\n </Center>\n <Button\n iconName=\"chevronRight\"\n onClick={goToNextMonths}\n variant=\"ghostNeutral\"\n size=\"sm\"\n />\n </HStack>\n );\n}\n","import {\n defineSlotRecipe,\n SystemStyleObject,\n} from \"@chakra-ui/react/styled-system\";\nimport { DayVariant } from \"./datePickerCalendarDay.types\";\n\ntype CalendarDaySlot = \"root\" | \"indicator\";\nconst calendarDaySlots: CalendarDaySlot[] = [\"root\", \"indicator\"] as const;\n\ntype CalendarDaySlotStyles = {\n [key in CalendarDaySlot]?: SystemStyleObject;\n};\n\nconst datePickerCalendarDayVariantStyles: Record<\n DayVariant,\n CalendarDaySlotStyles\n> = {\n default: {\n root: {\n borderColor: \"transparent\",\n _hover: {\n bg: \"background.secondaryAlpha.hover\",\n },\n },\n },\n disabled: {\n root: {\n bg: \"background.subtle\",\n borderColor: \"transparent\",\n cursor: \"not-allowed\",\n opacity: 0.4,\n },\n },\n inRange: {\n root: {\n bg: \"background.secondaryAlpha.hover\",\n borderColor: \"transparent\",\n borderRadius: \"none\",\n color: \"text.info\",\n },\n },\n selectedEnd: {\n root: {\n borderColor: \"border.focus\",\n color: \"text.info\",\n },\n },\n selectedStart: {\n root: {\n bg: \"background.secondary\",\n borderColor: \"border.focus\",\n color: \"text.contrast\",\n _hover: {\n bg: \"background.secondary\",\n },\n },\n },\n};\n\nexport const datePickerCalendarDayRecipe = defineSlotRecipe({\n slots: calendarDaySlots,\n base: {\n indicator: {\n position: \"absolute\",\n h: 6,\n right: -4,\n top: -4,\n transform: \"rotate(45deg)\",\n w: 6,\n },\n root: {\n border: \"2px\",\n borderRadius: \"4px\",\n color: \"text.subtle\",\n cursor: \"pointer\",\n fontSize: \"sm\",\n fontWeight: \"normal !important\",\n position: \"relative\",\n px: 3,\n py: 1,\n overflow: \"hidden\",\n },\n },\n variants: {\n variant: datePickerCalendarDayVariantStyles,\n isToday: {\n true: {\n indicator: {\n bg: \"background.secondary\",\n },\n },\n false: {},\n },\n withDateRange: {\n true: {},\n false: {},\n },\n },\n compoundVariants: [\n {\n variant: \"selectedStart\",\n isToday: true,\n css: {\n indicator: {\n bg: \"background\",\n },\n },\n },\n {\n withDateRange: true,\n variant: \"selectedStart\",\n css: {\n root: {\n borderRightRadius: 0,\n },\n },\n },\n {\n withDateRange: true,\n variant: \"selectedEnd\",\n css: {\n root: {\n borderLeftRadius: 0,\n },\n },\n },\n ],\n defaultVariants: {},\n});\n","import React, { useRef, useMemo } from \"react\";\nimport { useDay } from \"@datepicker-react/hooks\";\nimport { useDatePickerContext } from \"../../context/datePicker.context\";\nimport { Button } from \"components/Button/button.component\";\nimport format from \"date-fns/format\";\nimport { Box } from \"@chakra-ui/react/box\";\nimport { DayVariant } from \"./datePickerCalendarDay.types\";\nimport { useSlotRecipe } from \"@chakra-ui/react/styled-system\";\nimport { datePickerCalendarDayRecipe } from \"./datePickerCalendarDay.recipe\";\n\ninterface DayProps {\n dayLabel: string;\n date: Date;\n onDaySelected: () => void;\n}\n\nexport const DatePickerCalendarDay = ({\n dayLabel,\n date,\n onDaySelected,\n}: DayProps): React.JSX.Element => {\n const today = new Date();\n const dayRef = useRef<HTMLButtonElement>(null);\n const { startDate, endDate, dateFormat, withDateRange } =\n useDatePickerContext();\n const formattedDates = useMemo(\n () => ({\n currentDay: format(date, dateFormat),\n startDate: startDate && format(startDate, dateFormat),\n endDate: endDate && format(endDate, dateFormat),\n }),\n [date, dateFormat, endDate, startDate],\n );\n const isRangeStart = formattedDates.currentDay === formattedDates.startDate;\n const isRangeEnd = formattedDates.currentDay === formattedDates.endDate;\n const isToday = formattedDates.currentDay === format(today, dateFormat);\n\n const {\n focusedDate,\n isDateFocused,\n isDateSelected,\n isDateHovered,\n isDateBlocked,\n isFirstOrLastSelectedDate,\n onDateSelect,\n onDateFocus,\n onDateHover,\n } = useDatePickerContext();\n\n const {\n disabledDate,\n isSelected,\n onClick,\n onKeyDown,\n onMouseEnter,\n tabIndex,\n } = useDay({\n date,\n focusedDate,\n isDateFocused,\n isDateSelected,\n isDateHovered,\n isDateBlocked,\n isFirstOrLastSelectedDate,\n onDateFocus,\n onDateSelect,\n onDateHover,\n dayRef: dayRef as React.RefObject<HTMLButtonElement>,\n });\n\n const buttonVariant = useMemo((): DayVariant => {\n switch (true) {\n case disabledDate:\n return \"disabled\";\n case isRangeStart:\n return \"selectedStart\";\n case isRangeEnd:\n return \"selectedEnd\";\n case isSelected && !isRangeStart && !isRangeEnd:\n return \"inRange\";\n default:\n return \"default\";\n }\n }, [disabledDate, isRangeEnd, isRangeStart, isSelected]);\n\n const recipe = useSlotRecipe({ recipe: datePickerCalendarDayRecipe });\n const styles = recipe({ variant: buttonVariant, isToday, withDateRange });\n\n if (!dayLabel) {\n return <></>;\n }\n\n const onSelectDay = (): void => {\n if (buttonVariant === \"disabled\") {\n return;\n }\n\n onClick();\n onDaySelected();\n };\n\n return (\n <Button\n className=\"DatePicker__Day\"\n data-testid={`kibble-datepicker-day--${formattedDates.currentDay}`}\n onClick={onSelectDay}\n onKeyDown={onKeyDown}\n onMouseEnter={onMouseEnter}\n tabIndex={tabIndex}\n ref={dayRef}\n unstyled\n css={styles.root}\n >\n {isToday && <Box css={styles.indicator} />}\n {dayLabel}\n </Button>\n );\n};\n","import React, { useRef } from \"react\";\nimport { useMonth } from \"@datepicker-react/hooks\";\nimport { Text } from \"components/Text/text.component\";\nimport { Box } from \"@chakra-ui/react/box\";\nimport { Center } from \"@chakra-ui/react/center\";\nimport { Grid, GridItem } from \"@chakra-ui/react/grid\";\nimport { DatePickerCalendarDay } from \"../DatePickerDay/datePickerCalendarDay.component\";\nimport {\n currentMonth,\n currentYear,\n useDatePickerContext,\n} from \"../../context/datePicker.context\";\n\nexport interface MonthProps {\n onDaySelected: () => void;\n}\n\nexport const DatePickerCalendarMonth = ({\n onDaySelected,\n}: MonthProps): React.JSX.Element => {\n const ref = useRef<HTMLDivElement | null>(null);\n const { firstDayOfWeek, activeMonth } = useDatePickerContext();\n\n const { days, weekdayLabels } = useMonth({\n year: activeMonth?.year || currentYear,\n month: activeMonth?.month !== undefined ? activeMonth.month : currentMonth,\n firstDayOfWeek,\n });\n\n return (\n <Box\n ref={ref}\n className=\"DatePicker__Month\"\n data-testid=\"kibble-datepicker-month\"\n >\n <Grid templateColumns=\"repeat(7, 1fr)\" my={2}>\n {weekdayLabels.map((weekdayLabel: string) => (\n <GridItem key={weekdayLabel}>\n <Center>\n <Text size=\"xs\" variant=\"subtle\">\n {weekdayLabel}\n </Text>\n </Center>\n </GridItem>\n ))}\n </Grid>\n <Grid templateColumns=\"repeat(7, 1fr)\">\n {days.map((day, index) =>\n typeof day === \"object\" ? (\n <DatePickerCalendarDay\n key={day.date.toString()}\n date={day.date}\n dayLabel={day.dayLabel}\n onDaySelected={onDaySelected}\n />\n ) : (\n <div key={index} />\n ),\n )}\n </Grid>\n </Box>\n );\n};\n","import React from \"react\";\nimport { Grid } from \"@chakra-ui/react/grid\";\nimport { DatePickerCalendarMonth } from \"../DatePickerMonth/datePickerCalendarMonth.component\";\nimport { useDatePickerContext } from \"../../context/datePicker.context\";\nimport { usePopoverContext } from \"@chakra-ui/react/popover\";\n\nexport function DatePickerCalendar(): React.JSX.Element {\n const { withDateRange, activeMonths, onClose } = useDatePickerContext();\n const { setOpen } = usePopoverContext();\n\n const handleDaySelected = (): void => {\n if (!withDateRange) {\n setOpen(false);\n onClose();\n }\n };\n\n return (\n <Grid\n className=\"DatePicker__Calendar\"\n data-testid=\"kibble-datepicker-calendar\"\n gap=\"0 64px\"\n px={3}\n py={2}\n >\n {activeMonths.map((month) => (\n <DatePickerCalendarMonth\n key={`${month.year}-${month.month}`}\n onDaySelected={handleDaySelected}\n />\n ))}\n </Grid>\n );\n}\n","import React from \"react\";\nimport { DateFormats, DateRange } from \"./datePicker.types\";\nimport { TextInputProps } from \"components/TextInput/textInput.component\";\nimport { Placement } from \"shared/types/placement\";\nimport { DatePickerProvider } from \"./context/datePicker.provider\";\nimport { DatePickerInput } from \"./components/DatePickerInput/datePickerInput.component\";\nimport {\n DatePickerFooter,\n DatePickerFooterProps,\n} from \"./components/DatePickerFooter/datePickerFooter.component\";\nimport { DatePickerHeader } from \"./components/DatePickerHeader/datePickerHeader.component\";\nimport { DatePickerCalendar } from \"./components/DatePickerCalendar/datePickerCalendar.component\";\nimport { Popover as CPopover } from \"@chakra-ui/react/popover\";\nimport { Portal } from \"@chakra-ui/react/portal\";\n\nexport interface DatePickerProps {\n dateFormat?: string | DateFormats;\n endDate?: Date | null;\n footerProps?: DatePickerFooterProps;\n hideFooter?: boolean;\n inputProps?: Omit<\n TextInputProps,\n \"onChange\" | \"value\" | \"isClearable\" | \"onClear\"\n >;\n maxDate?: Date;\n maxYear?: number;\n maxDaysInRange?: number;\n minDate?: Date;\n minYear?: number;\n onDateChange?: ({ startDate, endDate }: DateRange) => void;\n placement?: Placement;\n startDate: Date | null;\n withDateRange?: boolean;\n}\n\nexport const DatePicker = (props: DatePickerProps): React.JSX.Element => {\n const {\n footerProps,\n hideFooter = false,\n inputProps,\n withDateRange = false,\n } = props;\n\n return (\n <DatePickerProvider {...props}>\n <CPopover.Trigger>\n <DatePickerInput inputProps={inputProps} />\n </CPopover.Trigger>\n <Portal>\n <CPopover.Positioner\n className=\"DatePicker\"\n data-testid=\"kibble-datepicker\"\n >\n <CPopover.Content\n className=\"DatePicker__Content\"\n data-testid=\"kibble-datepicker-content\"\n minW=\"340px\"\n >\n <CPopover.Arrow />\n <CPopover.Body p=\"0 !important\">\n <DatePickerHeader />\n <DatePickerCalendar />\n {withDateRange && !hideFooter && (\n <DatePickerFooter {...footerProps} />\n )}\n </CPopover.Body>\n </CPopover.Content>\n </CPopover.Positioner>\n </Portal>\n </DatePickerProvider>\n );\n};\n"],"names":["DateFormats","FocusedInput","today","currentYear","currentMonth","defaultFocusedDate","defaultMinYear","defaultMaxYear","defaultDateFormat","initialDatePickerState","DatePickerContext","createContext","useDatePickerContext","useContext","DatePickerProvider","children","dateFormat","endDate","inputProps","maxDate","maxDaysInRange","maxYear","minDate","minYear","onDateChange","placement","startDate","withDateRange","state","setState","useState","getMaxBookingDate","useCallback","add","onDatesChange","data","_maxBookingDate","isAfter","startOfDay","endOfDay","clearDates","open","activeMonths","firstDayOfWeek","focusedDate","goToDate","goToNextMonths","goToPreviousMonths","isDateBlocked","isDateFocused","isDateHovered","isDateSelected","isFirstOrLastSelectedDate","onDateFocus","onDateHover","onDateSelect","useDatepicker","navigateToFocusedInputDate","focusedInput","setFocusedInput","prevState","handleOpen","handleClose","activeMonth","useMemo","useEffect","jsx","CPopover.Root","isDateAfterMin","date","isDateBeforeMax","isBefore","DatePickerInput","onClose","setOpen","usePopoverContext","iconSize","onKeyDown","e","onInputChange","dateValue","parsedDate","parseDate","isDate","jsxs","HStack","TextInput","Flex","Icon","getInputValue","format","Fragment","Text","DatePickerFooter","buttonText","onSubmit","hideResetButton","handleSubmit","Button","monthNames","DatePickerHeader","selectedMonthRef","useRef","selectedYearRef","monthMenuItems","month","index","yearMenuItems","range","year","stringYear","selected","handleMonthChange","selectedItem","set","handleYearChange","scrollToSelectedItem","type","selectedNode","Center","Menu","calendarDaySlots","datePickerCalendarDayVariantStyles","datePickerCalendarDayRecipe","defineSlotRecipe","DatePickerCalendarDay","dayLabel","onDaySelected","dayRef","formattedDates","isRangeStart","isRangeEnd","isToday","disabledDate","isSelected","onClick","onMouseEnter","tabIndex","useDay","buttonVariant","styles","useSlotRecipe","onSelectDay","Box","DatePickerCalendarMonth","ref","days","weekdayLabels","useMonth","Grid","weekdayLabel","GridItem","day","DatePickerCalendar","handleDaySelected","DatePicker","props","footerProps","hideFooter","CPopover.Trigger","Portal","CPopover.Positioner","CPopover.Content","CPopover.Arrow","CPopover.Body"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import M, { useLayoutEffect as Ln, useEffect as I, useRef as T, useMemo as A, useCallback as F, useState as X, memo as Pn, useReducer as kn, createContext as Ke, useContext as ve, forwardRef as zn, cloneElement as Bn } from "react";
2
- import { bO as ze } from "./vendor-BBfll6i3.js";
2
+ import { ev as ze } from "./vendor-CRIhG-7s.js";
3
3
  function Fn() {
4
4
  for (var e = arguments.length, t = new Array(e), n = 0; n < e; n++)
5
5
  t[n] = arguments[n];
@@ -3233,4 +3233,4 @@ export {
3233
3233
  ko as s,
3234
3234
  mn as u
3235
3235
  };
3236
- //# sourceMappingURL=dnd-DDR6viHX.js.map
3236
+ //# sourceMappingURL=dnd-B2xPQNV1.js.map